Release 1.2.2a (94/05/22)

The speaker icon in the CD Info popup is now made of two panel items, one
for the "None" message and one for the pictures.  That should eliminate a
problem with the XView 3.0 library on Linux systems (and possibly others.)

Moved the window initialization code below the option parsing code.  This
should make "workman -s" a lot faster.

Unknown status codes from the generic SCSI-2 module now cause the tool to
think the CD is ejected.

Merged in the FreeBSD port by Todd Pfaff <todd@flex.eng.mcmaster.ca>.

Merged in a preliminary OSF/1 port by R.J. Edwards <rje@escact.ksc.nasa.gov>.


Release 1.2.1 (94/02/24)

The vendor and model fields of the wm_drive structure were supposed to be
arrays, not pointers.  This caused buffer overruns and segmentation faults,
and required the -fwritable-strings flag to be used when compiling with gcc.
Oops!

Added some code to scsi.c to handle a wider range of status codes from
drives, which should make the program more robust on HP-UX and SVR4 systems.
Also added similar code to plat_sun.c.

Added a note to the ANSWERS file about where to get the latest version.


Release 1.2 (94/01/29)

Completely revamped the organization of system-dependent code, previously
in hardware.c.  Now there is a low level platform module for each supported
machine type, and there can be drive modules for drives that don't respond
to generic SCSI codes.  This should make the program much more portable and
enable it to support nonstandard drives.  These changes should not affect
things from the user's point of view at all (though they make user-visible
changes possible, such as the next items.)  See PORTING for more info.

WorkMan now determines the current volume and balance settings at startup
on the Sun CD drive.  This renders the workman.initialVolume resource much
less necessary, though it is still supported.

The Toshiba XM3301 and XM3401 drives are supported directly.  Mainly this
means that the volume knob on Sun systems will alter the volume on those
drives, and that volume control is now supported under HP-UX.

Merged in BSD/386 port by John T. Kohl <jtk@kolvir.blrc.ma.us>.  Part of the
port was making cur_cdmode an enumerated type rather than an int, which
will hopefully make the code more readable.

Merged in SVR4 4.0 port by Baruch Cochavy <bcochavy@iil.intel.com>.

Made special note of the XView "-scale" command-line argument in the manpage.

Added the workman.autoPlay resource.  If it's set to "always", WorkMan will
always play CDs when they're inserted.  If it's "never", WorkMan will never
autoplay a cd, regardless of settings in the .workmanrc file.  The default
setting is "normal", which uses .workmanrc to determine whether or not to
autoplay.

If there was a big enough hole at the start of the .workmanrc file, after
the global settings, and the Play Unknown CDs mode was selected, new entries
weren't being written to .workmanrc.

On Suns, the status indicators would stop updating sometimes.  This was due
to a workaround for a volume manager problem.  The workaround is more careful
now and the status indicators shouldn't stop any more.


Release 1.1 (93/11/24)

Added small icons for the main panel controls (stop, play, etc.), which
looks much better with -scale small, and better with -scale normal.  The
big icons are used with -scale large and -scale extra_large.  This is
determined by font size and controlled by a resource as described below.

WorkMan now reads X resources (finally!) to control certain behavior.  The
resources are as follows:
    workman.smallButtons
	If true, use small (16x16) icons for the main panel buttons.  If false,
	use the old 32x16 icons.  If undefined, the program will try to use the
	right size depending on how big the rest of the window is.
    workman.db.personal
    workman.db.shared
	These are just like the WORKMANRC and WORKMANDB environment variables,
	respectively; the resources override the variables.  Use these to set
	database locations if you're using the Solaris 2.2 volume manager to
	start WorkMan.
    workman.initialVolume
	A percentage value indicating how high the volume should be set when
	WorkMan starts up.

New -D option allows specification of shared database location(s) on the
command line.  Overrides environment variable and resource settings.

Merged in Sony NEWS-OS port by Tatsuo Nagamatsu (nagamatu@sm.sony.co.jp).

The -c option now works even if find_cdrom() doesn't (mainly affects ULTRIX)

Database files can't be directories or devices or pipes.

The track listing in the CD Info popup should be lined up properly when using
monospaced fonts now.  Alexander Dupuy (dupuy@tiemann.cs.columbia.edu)

New -C option forces the CD device to be closed after each eject, mostly for
my flaky Sun CD drive which needs power cycling every so often.

Split the HPUX SCSI definitions into a separate headerfile, and made some
other changes, to make hardware.c a little more readable.

Moved some code around in workman_stubs.c to make it more readable.

Fixed a bug that caused WorkMan to crash if you used "@//" in a track title
when the previous track didn't have the artist redefined.

Some tweaks to database.c for use in the repository server.

hardware.c was missing an include file on Solbourne machines.

Changed the binary search algorithm in unscale_volume() so it can reach
full volume no matter what the maximum value is.

The program now has minimal functionality under ULTRIX 4.3.  Further support
may be added in a future release (and patches are, of course, welcome.)

Changes to workman_stubs.c and hardware.c for Linux compatibility.


Release 1.0.2 (93/06/12)

Fixed a database-writing bug.  WorkMan didn't always fill up available holes
with entries that were small enough.

Added three new signals to control WorkMan from the command line.  SIGTTIN
goes back one track, SIGTTOU goes forward one track, and SIGEMT ejects the CD.

Added a "-s" option to send signals to a running WorkMan.  Valid parameters
are back, play (or "go"), fwd, pause (or "mute"), stop, and eject.  The first
letter of a command may be used (except pause and play, which require two
letters.)

Added support for the Solaris 2.2 volume manager.  The program will now locate
and use the correct device on Sun systems (it tries /vol/dev/aliases/cdrom0,
/dev/rdsk/c0t6d0s2, and /dev/rsr0, in that order) regardless of which OS
version it was compiled under.  You should be able to share a SunOS 4.x
binary with Solaris 2.x systems without worrying about device names.  If the
"eject" program is used to eject the CD, the volume manager will spit out
a message about loading an unnamed CD into the drive; there's nothing WorkMan
can do about the message, as far as I can tell.  This change shouldn't affect
systems other than Suns, although some code was reorganized slightly.

Eliminated Solaris 2.x compiler warnings in hardware.c and display.c.

Eliminated compiler warnings resulting from returning NULL from an int function.
Patch supplied by lingy@rpi.edu.


Release 1.0.1 (93/03/04)

Support for Linux systems added.


Release 1.0 (92/12/24)

Rearranged the manual page to make it more useful.

<pre-1.0 history deleted -- mail me if you want to see it>
