Version 1.01:
1) Vertical scaling for non-zero-symmetrical data now keeps vertical mean at
	same position for easier zooming in and out.
2) Horizontal scales no longer display secondary ticks when in integer mode
	and primary ticks are successive integers.
3) Fixed bugs in "Set edit region" command that caused it to compain about
	selecting entire file, and then not cancelling.
4) Highlighted selected region now expands and contracts correctly when
	starting point < ending point (cursor dragged to right of start).
5) All frame-style selection redone to allow selecting frame n - frame n as
	width of 1, and frames read from 0 to (nframes - 1), as they should.
6) Highlighted selected region now shifts right and left correctly, as in (4).
7) Added "collapse" command which sets insert point to edge of region.
8) Added first two of several planned pvoc analysis file editing commands.
9) Added curve generating commands to new Envelope special menu.
10) Fixed hourglass cursor so it shows in all windows when program is busy.
11) Added frame- vs. channel-view option for all multichannel data types.
12) Added crossfade command.

Version 1.02:
13) Improved frame-view display to show pos and neg signals, plus correct
	obscuring of grid by waveform, and vice versa.
14) Cut memory usage of graph objects by almost half.
15) Fixed bug in LPC formant filter that was causing clicks.
16) Fixed memory leak in controller selection loop.
17) Added decibel display to frame view window.
18) Fixed signal catching for converter routines.
19) Fixed "bar" graph mode so that sound graphs display correctly.
20) Added optional filtering into sample rate conversion command.
21) Added optional filtering into transpose command.
22) Fixed bug in framing algorithm affecting FFT, LPC, and Pitch Tracking.
23) Fixed "bug" causing abort when reading zero-length files.
24) Added phase vocoder command (currently for analysis only).

Version 1.03:
25) Many changes to Sparc converter code.
26) Addition of converter code for several new platforms, including SGI.
27) Fixed bug in splicing code for mu-law file type.
28) Fixed bug in sample rate conversion for sound files.
29) Fixed bug in default directory code (when SFDIR not set).
30) Enabled automatic sound format conversion before playing (if SRs match).
31) Fixed file comment window so that comment text is visible (still not
    editable, though).
32) Fixed horiz scale and edit labels to update when sr or length changes.
33) Added rec/play level and audio port output menu commands.

Version 1.04:
34) Fancied up menus a bit, added enable/disable.
35) Got stop command to work for both record and play operations.
36) Added "set default dir" command to allow resetting of dirs.
37) Modified C++ code to make it Cfront-compatible.
38) Fixed FormantFilter bug:  non-lpc-file types rejected in all cases now.
39) Fixed bug in dialog panels:  ^G now indicates Cancel whenever there is
    a choice of responses.
40) Closing window from WM now invokes proper close() method (i.e., asks for
    confirmation if file not saved).
41) Added raw file reading capability (sounds, lpcfiles).
42) Now can be started without filenames (will open temp soundfile).
43) Added continuous-update option for insert point (control key down).
44) Added frame value display to above option.
45) Added samp-rate check to crossfade option (check for mismatch).
46) Improved and debugged SGI converter code.
47) Many code changes to make AT&T compatible.
48) Numerous memory leaks found and patched.
49) Iconified windows now deiconify when displaying messages.
50) Added global resource for browser to remember each new path.
51) Fixed bug in "New view of selection" command.

Version 1.05:
52) Added file error checking to Header read and write routines (more complete).
53) Failed open commands no longer pop up blank window.
54) Added data dump command (dump to file).
55) Added raw file reading for FFT and envelope files.
56) Fixed bug in button text "boldification" which was causing random bold
    text in panels.
57) Added header comment reading and writing to SGI AIFF code.
58) Fixed minor bug in key command recognition (XR5 vs. XR6).
59) Added error checking for raw header entry values.
60) Rewrote comment editing so that it now works.
61) Fixed more bugs in header code.
62) Added New Type menu to allow creation of other file types.
63) Fixed RMS amplitude code in envelope extractor.
64) Fixed floating point conversion on SGI platform.
65) Added LPC resynthesis to new Synthesis Sound submenu.
66) Added AIF-C format reading on non-SGI platforms.
67) Added SND format reading on SGI platforms.
68) Data saved back to its original on-disk file will preserve the header type.
69) Fixed bug in file browser which made it impossible to load root-level files.
70) Fixed serious bug in phasevocoder data modifier code.
71) Many memory leaks plugged.
72) Cleaned up code quite a bit.
73) Simplified QueryItem class.
74) Fixed edit status delegate to update edit panel items.

Version 1.06:
75) Added Pvoc resynthesis command, and rewrote PVanalysis command.
76) Data no longer scans for peak in newly created file, or when inserting 
	space (zero samples) or when extending file length.
77) Now can read phase vocoder files generated by Csound's pvanal program.
78) Added support for unsigned char (8 bit linear) sound format.
79) Default sound sample rate, format, and suffix are now set correctly.
80) Moved more editor method functionality into separate classes.
81) Fixed Selector so that when using the "set insert point" and "set edit
    region" commands, the screen quantization is bypassed, allowing any sample
	or range to be selected.
82) Added support for 8-bit linear soundfiles.
83) Completed addition of inskip and duration specifiers for files.
84) Added useful message when attempting to "revert" in-memory-only files.
85) Fixed copy and replace routines so that automatic scaling and conversion
    takes place when two different data types interact.
86) Added WAVE sound header i/o, including byte-swapping when necessary.
87) Headers now check for invariants both after reading and before writing.
88) Added Sound and LPC options menu for setting default parameters.
89) Finished Save As... command -- now user may select header type when saving
	to a new (nonexistent) sound file.
90) Fixed bug in error checking for transposition by ratio.
91) Added ugly pre-template hacks back in for stupid SGI CC compiler.
92) Fixed bug in AIF-C header that caused crash.
93) Added SMPTE time scale display.
94) Fixed Aifc header:  float format disallowed.
95) Sound file suffix now changed rather than appended to when data type is
    changed.
96) Worked on AIFC header code to make it more robust.
97) Dialog boxes are now popup windows, and are not affected by the WM.  This
	prevents the problem of hiding or iconifying the dialog box during popup.
	This also allows them to appear before any other windows appear.
98) Status bar no longer Sync's the DISPLAY.  This speeds up processes that
	were waiting for a visual status bar update, esp. via remote connection.

V 1.06 Patches:

01:  Fixed save-to bug:  when invoked automatically from the save: command, it
	 was not displaying the sound-specific panel.
	 Fixed bug in snd/au header writing code -- was failing silently when
	 trying to write zero-length comment.

02:  Fixed bug in SPARC converter code:  close() was called on 0 fd, causing
	 close of stdin, and subsequent open() calls returned 0, causing failure.
	 Reworked SPARC converter code for better SPARC20 compatibility.  Fixed
	 bug in non-SGI AIFF header code which produced "illegal format" error for
	 8-bit linear samples.  Fixed several other SPARC converter code problems.
	 Added converter destructor code for exit condition.  Fixed bug in file
	 option for saving last opened dir name.

03:  Fixed bug in raw lpc file read.
	 Cleaned up and expanded dialogbox creation code.
	 Started addition of slider-controlled text entry items.
	 Fixed bugs in pitch scaling command for lpc datafiles.
	 Added byte swapping choice to raw soundfile read panel.
	 Fixed bug that disallowed inskip and duration settings for non-sound-
	 	files, and serious bug in inskip for multi-channel soundfiles.
	 Fixed .wav header reading code to correctly set the data size and only 
		warn if file truncated.
 	 Frame value display (control-leftmouse) now correctly displays values that
		are less than .001.
	 Splice-out now gives clear error message when attempting to splice out 
		entire file.
	 Fixed VoxWare (Linux) converter bug introduced in PL 02.
	 Fixed key-command workaround for IV 3.1 (didnt work!).
	 Changed ConverterDevice::stop() to close device before calling record-done
		action (to avoid leaving device open during update).
	 Alert beep level now settable as global option.
	 Added gain adjustment in interpolation to avoid short int overflow.
	 Changed VOXWARE macro to VOXWARE_DACS to avoid conflict with sound.h.
	 File segments (opened with inskip or duration values) are now renamed to
	    avoid accidental overwriting of the entire original file.

04:	 Fixed bug in key-command workaround fix!

V 1.07 Patches:

00:	 Fixed bug in little-endian AIFF-header read code.
     Added swapped-file detection for all sound types including Snd/Au.
	 Changed Hybrid and Snd/Au header format to be consistant on all platforms,
	     i.e., all will be 28 bytes with 4-byte char buff at end (plus remaining
		 bytes for Hybrid).
	 Fixed minor bug that caused stereo files to be played at 1/2 speed when
	     only one channel showed (due to implicit selection of one chan only).
		 Now play and record commands auto-select all sound channels.
	 Added File Option to ignore invisible files in browsers.
	 Fixed minor bug so that LPC/Pitch track command does not continue when LPC
	     fails or is cancelled.
	 Fixed bad bug in Pitch Track analysis datafile header code -- it was
	     writing a 4-byte "comment" to the beginning of the file, causing the
		 frames to be reversed!
	 Added comment-writing code for LPC, FFT, and Envelope headers.
	 Fixed serious bug in data allocation -- memory failures were producing an
		 error message, but nothing checked for the results!
	 Formant synthesis fixed -- upper and lower bounds for pitched/unpitched
	 	 now work as expected.
	 Added Memory Options including upper bounds on total and single
	 	 allocations, plus new SmartMemory class for implementing this.
	 Analysis functions (LPC, Pvoc, etc.) no longer abort at first frame 
		 failure; all successfully analyzed frames will be displayed.
	 Pitch tracking greatly improved via (optional) use of a sharp bandpass
		 filter to pre-process data.
	 Fixed bug in WAV header reading -- format check was missing.
	 Added raw file reading code for pvoc files.
	 Added header-type override switch when saving to existing files.
	 Added support for new IRCAM-style header format.
01:
	 Fixed bug in SGI code for displaying unsigned char files.
	 Fixed newly-introduced bug in soundheader reading code.
02:
	 Added check for infinite range to scale code to avoid hanging.
	 Added calculated LPC frame interpolation to format filters.
	 Added frame warping to formant filters.

Version 1.1:
	Added code to handle MPEG files on SGI.
	Changes to channel display code when edit region includes more than
		diplayed region.
	Rearranged menus to conform (more) to GUI standards.
	Now allow arbitrary number of soundfile channels for new sound file.
	Fixed bug:  allow non-swap on littleendian version for raw files.
	Fixed problems in Linux converter class code.

Version 1.2:
	Added completely new SGI converter code to handle ADAT interface.
	Fixed bug in edit region start point code -- was shifting when
		off-screen.
	Fixed bug in data dump command -- was not storing the selected
		filename and so was failing to dump.
	Added CDDA frame display option.
	Revert-to-saved now allows re-read of unedited file, and will re-query
		for raw file params (was failing on reread before).

Versions 1.21
	Fixed bug: reset channel selection to orig value after record or play.
	Fixed bug: unsigned char WAVE files' waveforms displayed wrong.
	Partially implemented .mxvrc option entries.
	Increased allowable ranges for single and total memory allocations.
	SGI version now allows playback of odd-channel-count files (which are
		padded out to nearest legal count).

Version 1.22
	Fixed several significant memory leaks.
	Made all processing operations use buffering to increase efficiency.
	Added edge-value-detection to envelope creation code.
	Added parameter "memory" to many dialog panels.
	LPC datafile writes/reads now work between little- and big-endian.
	Added "swap bytes" command.
	Raw envelope datafile writes now work (before it always wrote header).
	Added ability to save LPC and Envelope files as either big- or
	    little-endian files via Options commands.

Version 1.23
	Added support for ulaw AIFF-C files for non-SGI platforms.
	Added panel for accessing mixer functions (volume, input device)
	    on Linux machines.
	Added options for default sample format, rate, and channels for
 	    headerless soundfiles.
	Updated Linux menu to show "OSS" rather than "Voxware".
	Added small fixes for Linux/OSS input select buttons.
	Added "save selection as temp file" command.

Patch 01 and 02:
	Fixed raw file read/write to perform correct swapping on BE and LE
	    machines.
	Fixed transpose command window to remember correct format for
	    transposition factor (ratio vs. Octave Pt.)

Patch 03:
	Adjusted buffering parameters for OSS audio driver.

Patch 04:
	Fixed harmonic shift command for pvoc to not overlap with stretch/shrink
        command.

Version 1.24
	Fixed OSS converter so last buffer does not get cut off while playing.
	Insert point no longer dissappears after playing a sound.
	User can set resources "*OSSAudioDevice", "*OSSMixerDevice", and
		"*OSSBufferTime" to alternate OSS devices.
	Added Sound Playback Options command for interactively setting these.
	Menu command labels are now all capitalized.
	Added commands for re-reading and writing .mxvrc file.
	Added transpose option to LPC resynthesis.
	Changed default Linux/OSS sound format to 44.1k short integer.

Version 1.25
	Fixed data types so large memory requests do not wrap to negative numbers.
	Added check for requests which exceed max builtin datasize.
	Added auto-correlate command to to allow removal of glitches.
	Fixed bug in AIFC header writer which wrote garbage after the compression
		name pstring.

Version 1.26
	Changed "save selection to temp file" to "save selection to file" and have
		it query user for where to save.

Version 1.27
	Added gain param to pv synthesizer command window.
	Improved OSS playback code to handle arbitrary sized buffers without
		cutting off the ends.
	Fixed bug in "raw" reads of WAV files.
	Added code to recognize floating point WAV files.
	Added more features to formant synthesis (amp thresh, voiced mute).

Version 1.28
	Updated source to allow build under newer versions of Gnu.
	Added Fade In and Fade Out commands.
	Added audition command for LPC datafiles.
	Fixed bug: saved floating point WAV files now have correct format tag.
	Horizontal time scale now displayed in H:M:S format.
	Added Help menu with commands for displaying mxv man html and home page.

	PL 01:	Added missing Help menu to frame display window (i.e., FFTs).
			Fixed crash bug when attempting to audition lpcfiles.

Version 1.29
	Modernized old c++lib code.  Made changes to allow compile on Mac OSX.
	Added moving cursor during playback/record.
	Fixed bugs in .mxvrc file write.
	Added popup progress bar for most processing commands.

Version 1.30
	Fixed bug in "save" command (after opening file from command line).
	Full undo/redo command history control.
	Added read/write of RTcmix peakamp strings in header comments.
	Improved progress bar action.
	Added audition command for PVoc datafiles.
	Extended Fade In/Out command for all data types.
	Fixed bugs in several commands.
	Full menu command enable/disable depending on edit state.

	PL 01:
	Fixed smart memory to properly report total limit overflow, and have it
		reset the limit when user replies yes.
	Insert cursor now returns to position after playback.
	Displayed region's scale does not change after playback.
	Undo of "delay" command fixed.
	Fixed bug in menu state update.
	Fixed bug in wave header write -- forgot unsigned char case.

Version 1.31
	Added support for ALSA Linux sound driver.
	Added support for float and double AIFC files.
	Added rescale option to data format conversion.
	Updated code to compile under Gnu 3.X compiler.

Version 1.32
	All time entry and display in MM:SS.FF format.
	Added silence detection command for sounds.
