
Fixed in MFPLAY 1.2 beta 6 and 7:

- MINIMAL and OMNI options in .dev files were not being processed.

- Fixed some bugs in the update command ("U").

- Made config file option to control whether MFPLAY reduces the volume
  on unselected channels.

- Removed debug messages that would appear when the update command was used.

- The text cursor did not work correctly on monochrome/Hercules cards.

- No song progress bar was displayed in non-VGA screen modes.

- Added capability to simulate the soft pedal by reducing note velocities.
  This is useful on solenoid piano systems that aren't equipped to 
  activate the soft pedal.

---------------------------------------------------------------------------

Fixed in MFPLAY 1.2 beta 5:

- Added command line option "find [string]" where string is one or more
  words separated by underscores (_).  Up to 5 "find" options may be
  specified per filespec.  Only files matching ANY of the find options
  are added to the playlist.  ie. to play all of your Scott Joplin
  and Fats Waller files, you'd do:

         mfplay find Scott_Joplin find Fats_Waller *.mid

  MFPLAY looks for matches in the meta-text and meta-trackname events
  in the first track of the file.  If you use MFPLAY's "label" command
  to add information to MIDI files, the labels will be in the right
  place for "find" to locate them.

- Added option SKIP_SILENCE in MFPLAY.CFG.  When set to Y, any
  silence at the beginning of MIDI files (except following SYSEXes)
  will be skipped.

- MFPLAY still sent device-specific reset sequences to MIDI devices
  even if NORESET was specified on the command line.  Now it doesn't.

- Worked on fixing many problems related to the way patch changes 
  are handled when "updating" files.  Not sure if all the bugs are
  gone yet, but things should be working much better.
  
- When you change a patch early in the file, you now have the option  
  to have subsequent patches that were the same as the original ones
  on each port/channel automatically updated as well.
  (see PATCH_CHG_ALL option in MFPLAY.CFG)

- Fixed bug that caused some karaoke files to start out of sync.
  Tweaked linesplitting heuristics of karaoke routines.
  Karaoke title/copyright info is now shown during first 10 seconds
  of introduction.

- MFPLAY was reversing bank numbers and patch numbers when displaying
  patches set using GS SYSEX messages.

- Added "fail" option to disk I/O hardware error handler so that user
  has the choice of resuming MFPLAY in the event of an error.

- The displayed time was inaccurate when using the J and B commnds,
  and J and B sometimes did odd things.

---------------------------------------------------------------------------
Fixed in MFPLAY 1.2 beta 4:

- Fixed a bug that caused MIDI thru to occasionally lose data.

- MFPLAY would do ugly things when .SYX files were specified on the
  command line.

- Muted channels are stripped away when updating the file with the "U"
  command.  This is the correct behavior, but it was only working for
  the channels of port 0.  Now it works for all ports.
  Also, drum channels were getting transposed when files were updated
  while transposition was enabled.  This is fixed.

- Added a warning and documented the feature that muted channels 
  will be stripped away when files are updated with the "U" command.

- MPU401 code would send port selection commands to MPU401 interfaces
  that had only one port.  This caused some soundcards to hang (e.g.
  Ensoniq Soundscape).  This has been fixed.

- If a MIDI interface could not be found/initialized, MFPLAY would 
  usually lock up.  This is fixed.

- Added "MUTE" command line parameter.  Run MFPLAY with no options or
  see the documentation for details.

- The currently-playing file now blinks in the file selection screen
  (having it just yellow was hard to see on monochrome laptop displays).

- Added "PAUSE0" command line option.  This makes MFPLAY pause before
  playing each song AFTER sending all events at tick 0 of the file
  (useful in live performance).

- While paused, MFPLAY now continuously shows the current song title/filename
  on an external Sound Canvas display (useful in live performance).

- There was a bug when selecting channels with the ctrl-up and ctrl-down
  when only one output port was enabled.

---------------------------------------------------------------------------
Fixed in MFPLAY 1.2 beta 3:

- Original date and time now preserved when moving files.
  (Current date and time still assigned to copy when copying files;
  this is logical, right?)

- The "O" command will now restore original patches.
  (Some MFPLAY patch functions won't work properly when patches are set
  using SYSEX messages.  But this method is not a good idea anyway;
  should we do anything about it?)

- When using the "J" and "S" keys to seek in the MIDI file, you
  can now press the keys while seeking to seek in larger increments
  without waiting for the previous seek to finish.

- Changed the way MIDI thru works:
  If a channel is selected, MIDI thru will be routed to the selected
  port and channel.  If not, MIDI thru will be routed to a particular
  port, but the channels of the events will be left intact.  Added
  command line option "THRUPORT n" to select the output port for this
  case (default port is 0).
 
- Channel selection is now done with Ctrl-Up and Ctrl-Down instead of "S"
  (Ctrl-Up and Ctrl-Down used to control the volume in large increments,
  which was not all that useful.)

- Added "NOSORT" command line option to disable the default playlist sort
  specified in the config file.

- Illegible stylized ampersand character now looks like standard
  ASCII "&".

- Improved help screens.

---------------------------------------------------------------------------
Fixed in MFPLAY 1.2 beta 2:

Thanks to Daniel Pustka for the following bug reports and suggestions!

- When selecting SHUFFLE by external control, the file list would
  get displayed too.  Fixed.

- Muting function did not work properly.  Notes seemed to be getting through
  even with all channels muted... should be fixed now (a chain of short-
  circuit Boolean evaluations was out of order).

- When in music roll display mode, keyboard shows only the selected channel
  if one is selected.  When in note/channel mode, the keyboard would show
  all parts at all times.  Now it shows only the selected part just like
  in the music roll mode.

- The CTRL_PGUP and CTRL_PGDN external controls did not work--
  probably because there wasn't even any code for them in the program!
  (They were just tags in the config file that I'd PLANNED to implement!)
  Now they work.

- In the list of directories for the Move file command ("M"), the 
  directory numbers did not line up with the directory names, and the
  screen title was printed in the wrong position.  Fixed.

- MT32-emulation patches on GS devices are now displayed with a "#"
  beside them as they were in GSPLAY.

- MIDI thru events from an external keyboard are now displayed on the
  onscreen displays (notes, patch changes, and pedal events).
  (Note events will not appear on the music roll though; no way to
  anticipate what the user will play!)

- There were some bugs in how running status and realtime events from
  an external controller were handled.  Things should be fixed now.
  
