Major number changes hardly ever occur. Minor number changes when libraries change. Subminor number changes frequently. 2.0.1 -> 2.0.2: in bemmel, if a "line segment" is actually a point, different .fig code must be generated. This is corrected now. in include/config.h added # elif hpux # define ... # define ... for hp700. (August 5, 1994) simmel should ignore START messages from bemmel (Dec. 1, 1994) connel error in command.c/help() fixed to print ALL commands (Dec 1, 1994) connel error in moving.c/move_robot(): error on line 126, changed if (dq == NULL_MOVE || NULL_MOVE) to if (dq == NULL_MOVE || ddq == NULL_MOVE) (Feb 23, 1995) simmel/main.c: added basename-like function for extracting the name. It looks for the last "/" in the name, and takes the string after that---just like basename does (that doesn't always give the right name, though!) (Feb 24, 1995) simmel/communication.c, function decode_joints() (line 608) if (check_end_effector(joint_homo[NR_LINKS-1][3], joint_homo[NR_LINKS-1][7], joint_homo[NR_LINKS-1][11])) changed to if (check_end_effector(joint_homo[NR_LINKS][3], joint_homo[NR_LINKS][7], joint_homo[NR_LINKS][11])) (March 27, 1995 ) 2.0 -> 2.0.1: (March 17, 1994) Added #elif linux # define HAVE_SIGNBIT 0 # define HAVE_IEEE_INCLUDES 0 # define HAVE_GETDTABLESIZE 1 in include/config.h. Thanks to Scott Heavner who again tried to install Simderella under Linux. Since this is so important, I decided to make it into a new release immediately... 1.1 -> 2.0: - New Feature: Imakefiles. Simplifies installation. The libraries "communication.a" and "matrix.a" have been renamed to "libcommunication.a" and "libmatrix.a"! The include/config.h needs no change anymore, if I'm not mistaken. If you need to change some defines, please let me know. - runs on DEC Alpha (implemented by Conor Doherty): o simmel/communication.c: send_end_effector() call to encode() must be augmented with dummy 0.0's o bemmel/datastruct.c in convert(): repair for the case when #elements passed to calloc is zero o entry in config.h for Alpha, - NR_LINKS is now defined in the right place, i.e., global.h - added "case BEMMEL" in simmel/main.c, as a possible return value from select_receive_next_command(). (October 14, 1993). Accepts also "HALT". - changed "#include " to "#include " in bemmel/input.c. The calls to index() are replaced by the SYSV call to strchr(). - in simmel, the matrices for bemmel are not computed anymore when no bemmels are connected. - compiles now also under Solaris on a SUN. This required some adaptations in, mainly, the communication.a library. To compile for Solaris, first do a make clear, then a make depend, and finally a make. - bemmel has been updated: o when holding the left mouse button depressed in the window, the incoming homogeneous matrices (in fact, all messages from simmel) will be blocked. The robot can now be moved by moving the mouse pointer. o resize works correctly now w.r.t. positioning of the robot o the "o" (origin) command follows resizes. Try resizing the robot, move it around, and press "o": it retains its size and position after the resize. - includes a new program in stand-alone-bemmel/ for drawing 3D geometrical figures. Version 1.0.2 -> 1.1 (October 1993): - added "make depend" to makefiles - simmel now computes the apparent velocity and acceleration of the object relative to the hand, due to the motion of the hand itself. A new message "GET_POSITION_AND_D" is introduced which requests the (x, x' x", y, y', y", z, z', z") of the object in the hand coordinate frame. Notice that the fact that the object may be moving is not included; this extension is trivial, however. See relative_object_motion() in kinematic.c. - WAIT and CONTINUE signals now must match! Sending a WAIT signal to simmel increments the wait variable, CONTINUE decrements it. Only when at least as many CONTINUE signals are sent as WAIT signals, the robot will continue moving. - a new command interpreter in connel, now word-based instead of character-based. - no more "version numbers" since I never updated them anyway. Version 1.0.1 -> 1.0.2 (March 11, 1993): Suggested by sdh@falstaff.MAE.cwru.edu (Scott Heavner), corrections for compilation under (POSIX and) Linux. Basically, rewriting the signbit() and iszero() routines, since fp_class.h is not available under Linux. Version 1.0 -> 1.0.1: A new file "include/config.h" has been created which is included in each and every .h and .c file. Most notably, this file has a flag to set for compilation on SGI. Documentation has changed accordingly. Files are now compiled with "gcc -O2" instead of "gcc -g".