[Logo] Release Notes



Getting Started


Main Menu





SysEx Librarian



MIDI Reference

Release Notes

Back to the main Table of Contents.
If you love something, set it free. If it leaves, hunt it down and kill it.

- Anonymous

Release Notes

This help is slowly shaping up. It was originally written for an earlier version of KeyMaster.

Some editor windows are still very primitive. For example, most MIDI data (except for note names and controller numbers) can only be entered by typing in a number. Even worse, these values can only be entered in decimal and not in hex or binary. Some MIDI data fields respond to incoming MIDI, though.

I haven't yet done any MIDI stress testing to see if large, complex patches slow down the MIDI data any.

Large chunks of functionality don't exist yet:

  • Move Triggers
  • Program Change number substitution
  • Sysex Librarian
  • Program Change names
  • Programmable Goto Keys
  • Any of the new features described on the KeyMaster Web page
  • KeyMaster uses Jon Watte's libprefs library.

Known Bugs

This is a list of some of the known bugs. I'm working on 'em.

  • 38 - Implement undo. Everywhere. (Easier said than done.)
  • 120 - HelpPopUps don't always go to the right spot.
  • 129 - ZEListView doesn't know how to paste itself. ZoneEditor also has PASTE menu item commented out.
  • 138 - Delete output from patch 0, then save and quit. Will blow up in ~MIDI_IO() part of ~MIDIInput(). (Is this MIDI_IO related or just ~PatchElement() behavior?
  • ================ START OF AA:DR AND PR BUGS ================
  • 148 - Handle default menu shortcut values in MovementPrefs.cpp. Should probably move default shortcut values from MovementKeyEditor.cpp. Note: prefs now rely on a particular menu's existance. Problem is, it doesn't really exist. Possible solution: use the DocWindow's movement menu, not some non-existent KMApp menu.
  • 169 - Reinstate clipboard cut/copy/paste.
  • 170 - Reinstate movement keys editor.
  • 172 - Add last-seen-dir pref.
  • 173 - Pasting doesn't work. Copy song from all songs list and try to paste it into a chain.
  • 174 - Replace my_find_instantiation_func() and my_instantiate_object() with the real thing.
  • 175 - Use BRefFilter to find KM files and HTML files.
  • 177 - Fix up about box icons: do some antialiasing.
  • 185 - Movement menu pref shortcuts need to be shoved in to each movement menu, but when? At mainMenuBeginning() time? Probably too often. Perhaps, after changing shortcut prefs, step through each registered window, looking for movement menu and updating shortcuts then.
  • 200 - Need way to use MIDI file as input. Instrument "port"? Trigger? If trigger, then triggers must be inputs as well as outputs.
  • 204 - Select multiple songs in all songs window. Delete. Crash.
  • 205 - ListBox doesn't yet handle multiple selections for all commands.
  • 208 - Make Trigger send MIDI messages. NOTE: this would obviate the need for patch entry/exit messages. Probably don't want to get rid of them, though.
  • 217 - AllSongWindow: If any chain is open with a song in it when you delete a song, that window will not be updated.
  • 218 - Code in AllSongBox to make first song current does not work. [This *is* necessary after use deletes all songs then creates a new one.]
  • 220 - Playing sounds in TriggerSoundFile is not implemented.
  • 222 - Make new message. Open editor. Edit message name. Message name not updated in open list-of-messages window. (Works for other list windows like instruments window). Perhaps notify list window during putValuesIntoFields(), but how get handle to list window?
  • 224 - When delete last song in all songs, the doc window is not updated to not-show-any-song.
  • 230 - Separate instruments into separate help page from edit.html.
  • 231 - When close trigger editor then re-open, views not populated with correct values. Perhaps put code in view creation routines (if type of trigger/action is correct).
  • 232 - In trigger editor, if anything but "patch" is selected, don't display song and patch text items.
  • 233 - Drag midi input. Delete output. Replace output with trigger. (Do something?) Quit app. Patch window hangs, and is empty. Probably related problem: do same but close patch window (and editors) before quitting app. App hangs.

Legal stuff

Jim Menard provides KeyMaster as is, without any warranty. Jim Menard disclaims any liability of any kind for any damages whatsoever resulting from the use of KeyMaster including, without limitation, incidental, consequential, indirect, or special damages of any kind, even if Jim Menard is aware of the possibility of such damages. Jim Menard makes no warranties, expressed or implied, with respect to the program or the source code, including but not limited to warranties of merchantability or fitness for a particular purpose.

Ahem. Sorry about that.

This version of KeyMaster is freeware. You may copy KeyMaster and distribute it, as long as you

  • Copy and distribute the whole thing including the documentation and this notice, and
  • Make no profit without asking for my permission first.

Back to the main Table of Contents.
Contents © 1995 - 2000 by Jim Menard; All Rights Reserved.