prodatum changelog


* fix preset editing on Command Stations (and possibly p2500)
  not working
* fix open loop download on Command Stations not working


* changed theme so that its less 'noisy'


* windows version got an icon
* updated mac/linux icons
* arp editor could crash. fixed.
* some updates to the arp editor
* redesigned sliders
* fresh default colors
* added two command line options -ti and -i:
  -ti [title] allows you to set the window title
  -i will start prodatum minimized
  the -ti option should be especially interesting for people
  who are using prodatum with multiple devices


* fix some patchcord names
* give patchcords widgets a bit more space
* fix preset patchcord sources
* better support A2K modules
* show preset/setup dumps in timeouts


* use different labelcolors for labels drawn on background
  and labels drawn on alternative background color.


* use timeout instead of sleep for delayed preset requests:
  makes channel and preset selection feedback instant
  (feels snappier and makes a huge difference to me)
* preferences: you can now select the colors used for knob
* fixed some MIDI mode related issues. for example, it was
  possible to (apparently) select a different preset even
  when "MIDI enable" was disabled (which makes preset selection
  impossible as it's using MIDI CC). (ticket #12 might be
  related). This seems to be a very old bug (I have tested v1.0
  which was buggy too). RIP, bitch! :D


* fix message/sync log not resizing properly (linux/windows)
* mix-out buttons could be disabled everywhere (in layer strips
  and in the channel setup area). fixed.
* added preprocessor definition for sync log (use -DSYNCLOG to
  compile with synchronization logging)


* fixed sleep macro (linux/osx)
* added visual feedback when using portable configuration
* Piano drawing tweaks
* fixed color of some menu entries
* new knobs (made of steel)
* right mouse button on minipiano would also change shortcut
  note. fixed.
* fix weird double click behaviour for patchcord amount values
* fix potentially weird double click behaviour in browsers
* disable "all notes off" menu entries when in omni mode
* save a lot of memory through de-duplicating patchcord/arp-step
  tooltips and name strings


* some nonfunctional improvements
* first try to deal with devices becoming mute for unknown reasons
  when synchronizing RIFF names


* save sync files right away so that, if later ROM's time-out
  we have at least the flash and previous ROM data (related:
  ticket #11)
* also make sure to re-up users multisetup when sync times out
  (ticket #9)
* added some more help buttons to the open dialog
* added a "Bugs and feature requests..." menu entry to the help menu
* (updated the online manual, check help menu if you're interested)


* portable configuration option: if there is a directory called "prodatum-
  config" in the same directory where prodatum is launched from, prodatum
  will load and save it's configuration files from/to that directory.
* fixed sync code bug: make sure replies from name type requests do not
  interfere with the next name type requests and, vice versa :o timewarp
  (adds 2s/ROM to sync time)
* make sure to clean up when switching devices and when re-syncing
  (previously the browsers wouldn't update their contents when doing a
  re-sync for example)
* disable master riff selection if superbeats mode is not set to master
* disable SUPERBEATS group for Audity 2000 devices
* upload user multisetup when sync got cancelled by user


* sliders also autofocus now (not really needed but feels more consistent
  with knob behaviour)
* slightly changed widget colors here and there so that everything is more
* fixed issue with default config not loading on startup


* changed a few things so that more color combinations will play nice


* envelope editor got tooltips (!!!)
* when volume envelope is set to "Factory" prevent editing to avoid
  confusion when changes made have no effect (happened to me)
  even though technically you can edit the envelope 'offline', avoiding
  confusion has priority
* draw envelope values at cursor instead of box (better eye-hand coordination)
* removed unused variables, made code C11 compliant, -Wall -W cleanup
* minipiano got tooltip
* keyboard got tooltips
* slightly increased saturation for some of the default colors
* changed filter knob labels (Cutoff > Freq. and Res > Q) to be more
  general valid for all the different filter types


* a new drug was developed: the arp editor got a xxxx seperate window.
* arp editor: root note selector added, so offset note values show relative
  to a note of your choice
* minipianos: middle click a key to set the note and velocity that is being
  played back when pressing 'B' (default is A 3). middle click on the case
  to just set the velocity
  NOTE: this only works with the minipianos since the big keyboard uses the
  middle-mouse button to set the layer transpose value.
* ask for confirmation when about to change the multisetup and there are
  unsaved changes


* autofocus knobs when hovered.
* minipianos: mousewheel can shift keyrange (octave)
* when saving a preset, update the internal clone too
* tuned range of the ultra cool scope.
* fixed status display


* channel selection doesn't work properly (rc9 regression). fixed.
* mixer flickers when changing preset/channel/edit all. fixed.
* master volume saved with config (default lvl: 80).
  will be applied on startup.
* pressing escape while in the arp editor, closes the arp editor, not prodatum


* program arp "COPY FROM": ROM selector would not update preset brwosa. fixed.
* slightly compressed preferences dialog
* synchronization got a turbo (***):
  v2.0rc8: 2m 09s
  v1.0.0:  1m 13s
  v2.0rc9: 1m 1s
* "Delay" effect on synchronizing (***):
  0ms:   1m 1s (check your browsers, may result in missing names)
  10ms:  1m 3s (safe option for me)
  40ms:  1m 9s (comfortable starts here)
  90ms:  1m 19s
  160ms: 1m 33s (still fast compared to v2.0rc8)
*** (all times measured for a complete sync with 1 ROM (linux+xmidi2x2))


* make sure value numbers in envelope editor play nicely with background color
* fixed menu not behaving (since rc7)
* focus channel selection on startup (no point to focus the name)
* removed global "ESC to quit" shortcut so ESC can be used to close
  subwindows again. Oops
* pressing B will play an A now
* changed channel and preset selection callbacks from "when released" to
  "when changed"
* all widgets now believe in Drag'n'Drop. Basically the whole
  main window is now Drag'n'Drop area.


* removed loading window. felt it was too - disturbing haha! no.
* drag.n.drop could crash prodatum. fixed.
* nicer envelope editor buttons
* fixed some open dialog oddities
* some UI restyling
* slightly changed default color palette
* enabled closed loop downloads by default
* scopes don't resize, hide 'em when window != max


* envelope editor could segfault, fixed
* added MIDI I/O scopes (for scientific looks and to appeal to the masses)


* move knob labels on top of knobs (like in every other widget)
* copy/save window is no longer modal (just leave it open if u want)
* new open device, about and pref dialogs
* grabbing windows in OSX will no longer block internal data flow


* slightly changed knob design
* changed default colors
* sync code tweaks/
* more sensible sysex delay options (including 0ms)
* handle WAIT commands correctly
* even better window handling
* fixed sync deadlock in OSX
* increased max logsize (1mb)


* Linux/OSX: fixed excessive use of CPU (ticket #6)
* threadless initialization (new init code again, similar to the previous
  version but threadless)
  * commandline config file loading is back (by popular demand)
  * fixed sysex packet delay being all weird n stuff :-)


* new: init log. should help with fixing initialization issues
* better window placement
* fixed ticked #4
* some nonfunctional improvements


* import browser: too ugly for life. got shot in the face. Import via drag'n'drop!
* support loading different configurations from UI
* new, clean look and more/better color options
* lot's of non-functional, internal  improvements (eg, new initialization code)
* lot's of bugs fixed
* possibly lot's of new bugs added


* import browser: callback is no longer called when the selection
  did not change (fixes "double-click an item would crash prodatum")
* copying or saving presets while holding SHIFT will automatically
  end copy or save mode (or close the window if the window is used).
* message log: added line wrap (with resize auto-adjustment)
* message log: clear button added
* updated about
* updated open device
* startup: upload setup only when we were initializing
* made right-click behaviour consistent for all widgets (callback on button-
* CTRL+E: focus value input
* CTRL+N: focus name instead of category
* integrated Controller Assignments into the 'Main' view


* show ui before scanning available MIDI ports (makes ui appear
  quick on startup)
* buffers are no longer configurable, hopefully current size fits all ;)
* import: presets with a device ID different from current ID wouldn't upload
  with closed loops enabled. fixed.
* open dialog: you can no longer use the broadcast ID and the default ID is 0.
* open dialog: generally improved + better tooltips
* open dialog: added auto-scan button to detect device ID
* fixed erroneous overflow warnings


* increased internal temporary buffer once again
* improved MIDI handler (probably to perfection)


* increase internal buffer sizes (overoptimized in v0.99.1) so that
  773 byte setup dumps fit in again
  this bug rendered prodatum useless on devices with setup dumps
  bigger than 768 bytes


* fixed browser event handler (old one was completely whack!)
* ui: new default color theme
* ui: slightly changed knob drawing and some colors here and there
* use -Os instead of -O3 as we don't need all that speed


* fixed a right-click on button-group issue
* cleaned up messy PD::widget_callback()
* reset piano keys when we switch a channel off
* fixed a bug that wouldn't let you hover keys in the upper right minipiano


* fixed a 'array index out of bounds' bug in the pianos
* fixed even more minor drawing issues for both pianos (big and mini)
* piano: fixed link2 keyrange not showing actual range


* MIDI: don't forward anything but voice messages from the controller
  to the UI
* MIDI: only automap messages that are voice messages
* MIDI: improved/fixed incoming sysex filter
* MIDI: improved/fixed handling of truncated messages
* MIDI: removed all goto's from the midi processor


We are approaching v1.00 fast now. No new features, only bug fixing
until then!

* piano: make sure we always draw the transpose key
* piano: don't erase key highlight states when the piano window was
  closed vie ESC or the close button
* piano: don't draw keys on top of velocity or crossfade curve when
  an "All Whatever Off" command is used
* piano: fixed some other minor drawing issues
* made all enumerations upper case
* wait for closed loop uploads to finish before we trigger audition
  on import


* gave the keyboard (the big, old one) some love
* all pianos now draw more efficient. previously prodatum did just
  redraw the whole keyboard whenever a key was hovered or pushed.
  now it only redraws those keys that (de)activate.
* updated MULTISETUP load/save section to use a browser (aah,
  much better!)
* many small ui fixes and changes (as usual)


* "Reset ..." item added to the edit menu: allows you to delete
  a selection of files created by prodatum.
* mac: the menu moved into the system menu (top-)bar
* make some *n??s*!
  the filters for the browsers learned about some special characters
  like '?' (matches any single character) and '*' (matches any sequence
  of 0 or more characters), their tooltip knows more
* inputs won't focus next widget after enter was pressed on them (good
  for forms but not for prodatum)
* all sound/note/controller off commands will also reset (mini)piano
  keys and constrollers
* you can now also drag left and right outside of the minipiano while
  the note keeps playing (not just above and below)
* unified and new slider design
* slightly changed default colors
* changed "gleam" slightly: no more white dots in the box corners;
  reduced shiny
* made "Shiny knobs" more shiny :>


* fix: prodatum would accept broadcast ID devices only (regression
  from previous version)
* new icon (mac .app and in dialogs)
* removed thread and image support from fltk lib. we don't use it


* show the open dialog if we didn't receive a response from the
  device ot startup with autoconnect enabled
* fix a problem with initialization randomly getting stuck
* ignore some bogus sysex that my device sends sometimes (nested sysex
  messages and data that made no sense. not sure if the reason is
  the device or portmidi. nothing is really missing if we just drop
  the bogus messages so it's aye. nice unexpected side effect:
  initialization on the mac is as fast as on linux/mac now)
* slightly improved the envelope editor to work better with different
  color combinations (also removed the shiny from it)
* envelope editor: fix the bug that would only allow you to select the
  first and last dragbox of a dragbox stack


* full serialization of first setup and following name requests to
  prevent the possibility that sending the setup is making
  the device ignore the pioneers of the following name requests :o
* fixed the issue with the browsers taking key events even when they
  are not focused.
* added some MIDI note/sound killswitches to the help menu
* reworked the edit menu slightly
* double clicking a patchcord amount toggles between zero and its
  previous value
* re-added close buttons to the layer-copy and preset-copy window


* make sure all queued sysex messages will be sent when we delete
  the MIDI object (ensures that we always leave the device
  in it's original state, even if we cancel initialization while the setups
  where copied around)
* more error checking in the MIDI handler
* propagate errors in the MIDI handler to he UI
* more status messages like wether we are throttling uploads
* smaller default, min and max MIDI buffers
* better tooltips for the effects and uses of changing the buffers
* new, improved "import with audition" callback


* prodatum will cache the currently selected setup at initialization
  and reload it into the device once initialization has finished.
  this should return the state of the device to where it was before
  prodatum initialized (background: to get the setup names we have to
  shuffle the setups on the device. a side effect of that is losing
  current settings)
* preset browser can now execute copy and save operations (no extra
  window needed but save/copy windows are still available. they have
  been updated tho'.)
  check the tooltips of the COPY and SAVE buttons and the browsers.
* new shortcut: CTRL+'n' will focus the name input field
* fix: import with audition enabled: the program would only be
  shown in the editor if closed loop uploads were used


* fixed a focus issue with the name inputs
* remove blanks in name inputs
* fixed name input odds
* copy window doesn't close when you click copy
* copy layer doesn't close on double click copy
* fixed an issue with menu window selection when the arp editor is active
* audit sysex files! while you browse for a program to import, prodatum
  will optionally program your device in the background and trigger audit
  so you can hear what the import sounds like.
* brought back the envelope title


* regression fix: preset selection wouldn't deactivate if channel's
  program change was disabled
* status message bar added to the menu bar. used in place of popup windows
  for communicating successful file operations
  also used to show value change request sysex messages
* added some more shortcuts and underlined the shortcuts of the button
* update the display on the device when the name changes because
  it's a waste of bandwidth and we love to waste!
* regression fix: prevent drags on the value in/output widget when
  the preset browser or channel selection is selected
* using the arrow keys in the preset browser will request a preset only
  on key release. this allows for quickly scrolling through the list (without
  requesting a bunch of preset dumps on the way)
* after 3s. the loading window will automatically close even when the requested
  data didn't arrive
* make sure that there is a widget connected to the value in/out widget at startup
* drag release is enabled by default as this is a more expected behaviour for
  value input fields (you enter a value, hit enter and you're set).
* slightly better minipiano drawing (optimized for resizing)
* fix: prodatum could not distinguish between randomized presets and "rnd"
  user presets


* added preset selection to the main view
  the fx section can now be toggled to sidplay either the fx controls
  or the preset browser via a button in the "tab-bar".
  the "P/FX" titled toggle button also signals fx bypass state by changing
  it's color (actually the color is being forced on it :)
* shortcut 'f' toggles P/FX
* arp buttons signal arp active state via color
* instead of disabling and re-enabling widgets when we download a preset
  a small modal window is shown. this effectively prevents all accidental
* switching the view via the menu or via shortcuts inside the arp editor
  will directly go to that window, skipping the "previous selection"
  logic so you always end up in the windows you selected
* toggling tooltips from the menu will no longer hide the preset name
* some UI refinements as usual
* knobs can be operated via the arrow keys (up/down: +1/-1)
* fixed volume sliders not responding to arrow keys
* on knobs and volume sliders:
  shift+up/down: set to 0
  shift+left: set to min value
  shift+right: set to max value


* added an "Export directory" option that is used by quick exports
  and also serves as the start location for all im-/export browsers.
  by default it is set to $HOME on mac/linux and %USERPROFILE% on
* fix: imported programs didn't set the preset name in the menu bar


* program import and export from/to disk (first implementation!
  please consider it beta status and report any issues)
  note: import will load the program into the edit buffer so you'll
  have to save it seperately
  you can either use the file menu to import a program or use drag and drop
  a file on the navigation/menu (top of the window)
* quickexport [CTRL+x]: dump edit buffer into current directory
  (that is the directory you started prodatum in)
  filename will be the preset name with .syx extension
* quicksave [CTRL+SHIFT+s] will save the edit buffer into the currently
  selected preset slot, bypassing the save dialog
* you can rename the preset from the menu bar:
  the upper right preset name display let's you change the preset name.
  this is great together with the new quicksave and and quickexport feature
* fix: the highlight of the lower envelope buttons wasn't visible in the
  default theme
* rescan will automatically select previously used ports


* saving is now always enabled (not only when the data has been changed)
  this allows one to copy a preset under a new name or to
  rename a preset
* saving a preset will not reload the preset from the device
  nor will prodatum change to the slot selected for the save.
  i think this is a more expected behaviour.
* the mac version now responses to incoming midi data in realtime
  due to the use of an filedescriptor for IPC in the midi listener
  (same has always been true for the linux version)
* fix: "startover" didn't reset the edit buffer when channel 0
  was selected (because we "switched" from ch 0 to ch 0)
* edit all and startover finally behave as they should -
  they did work but you could edit a preset in edit all mode,
  switch channels and prodatum wouldn't ask for confirmation
* changed the patchcord menus a bit
* reworked the initialization procedure: use the watchdog only for
  name downloads where the quantity is unknown (arp and riffs)


* fix bpm counter not large-stepping (regression from v0.42.7)
  this bug was introduced like this: i was looking at the code
  searching for the bug that wouldn't let me use the value widget
  for the bpm counter correctly. i saw "lstep(10);" and i was
  like wtf is that and why is it "10"? let's make it "1"!
  it didn't fix the bug and i forgot to change it back. meh.
* "gleam" patch by Colin Jones has been applied to fltk and
  is used by prodatum! awesome!
* knobs can have focus
* new knob design
* new MiniPiano design


* fix a bug that would crash prodatum on first startup when the cfg
  directory doesn't exist yet (regression from v0.42.7)
* fix a bug that prevented you from editing bpm value via value widget
* fixed "click knob to show value" being not perfect yet
* new preference option to change knob display (shiny/dark)
* load the edit buffer by default, and only the edit buffer, always!
* added copy to the edit menu [ctrl+c] (copies preset)
* changed most of the shortcuts and [ctrl+s] will no longer behave weird
* check if some essential sysex was requested and drop unrequested messages
  this for example won't crash prodatum if you by accident start a second instance
  on the same midi in/out
* default knob job is now horitontally as many of the other widgets work that
  way while dragging


* improvements to the envelope editor
  - if the envelope is tempo based the rate values will show note lengths
  - better drag-zoom
  - buttons to copy an envelope inside of that voice (eg volume to filter)
  - shape buttons to apply some generalized envelope shapes
    percussion, string, organ and plucked shapes are available for now
* removed restrictions on color ranges
* simplified the cfg parser to speed up the startup (your config will reset)
  before: 560 LOC now: 160 LOC
* new MiniPiano widget
  a small 25 key piano with octave shift that can hide behind
  the value in/out widget
* window selection menu (and keys) work in the arp editor
* "edit arp pattern" button added to the prgram/channel area
  this button will load the arp pattern editor with the pattern
  assigned to the active arp mode (global/master or preset)
* optimized the preference dialog for the new color options


* the main window is now resizable


* improved color handling for some widgets and some cosmetic changes


* reordered the layer patchchords to be in line with the preset patchchords
* some more, smaller UI enhancements
* fix: value of "Tempo offset" wouldn't show it's value
* knobs no longer send redundant sysex when you click them (see change in 0.42.1)
* added an option to color the background instead of the selection


* added an option to use "All" MIDI channels for the control port (doh!)
* channel filtering for the sysex in-port (events get only through on the selected channel)
* better looking logic (:o) for inactive widgets
* updated arp editor to fit new theme engine
* there was a problem that could cause a crash when the previously used midi port was not available at startup
* added a rescan button to the open dialog (scans for (newly) connected midi ports).


* you can now mix your own colors with prodatum! :o
* the envelope and piano widget adapt to color changes (maintain contrast)
* control port channel selection (portmidi channel filtering)
* filter all those MIDI messages that we don't process anyway


* fix keyboard not showing layer-keyrange-sliders when disabling "Edit All"
  while keyboard is shown
* new "Knob job" preference: radial, horizontal or vertical knob editing
* better knob behaviour: clicking a knob does not change its value. instead it's current
  value is shown in the in/output widget.


* updated fltk (1.1.10) and portmidi (207)
* better color theme selection (and new colors)
* fixed a bug that could cause a crash when using "Start over" from the
  edit menu
* fix: switching "Edit All" no longer disables menu and save items when data
  has been changed before
* fix: "Edit All" now gets disabled when "Start over" is being used


* fixed a quite serious bug that caused some setup/master changes not being saved correctly (locally)
  for example: changes made for the "Mix" in the CHANNEL section were not being saved correctly (reason: only the LSB was updated)
* submenus for patchcords; cumbersome menuscrolling is no more :o
* submenus for filter type (Lowpass, Highpass, ..)
* fixed the arp rom selections for roms with no arps (needs validation)
  previously prodatum simply did not add those roms to the rom choices that do not have arpeggios.
  but this mixed up the indizes for the other roms.
  new behavior is to add those entries but hide them if that rom has no apreggios.
* to load a multisetup you have to press the newly added Load button.
  the previous behaviour was to just load the selected entry, which is not expected.


* fixed "Mix" selection:
	- disable send selection group in voice strips (1,2,3,4) when "P" (preset) is not selected, as it means that everything (all voices) of this MIDI channel will be routed to the selected FX send bus
	- disable "Mix" channel selection when MIDI mode is not Multi (in omni or poly mode, "P" is forced by the device (which makes sense))
* removed the "classic" part of the name as everyone seem to prefer just "prodatum" (including me)
* some smaller UI changes
* switched default color scheme again :-)
* Drag RLS defaults to off


* further cleanups (removed dump test routines, no longer needed, yay)
* new cli option '-c' allows to load a different config file (useful for use with multiple devices)
* stop riff loading when we receive an 'ff' riff name
* some ROMs don't have arpeggios; we don't want those to show up in the ROM selectors (needs testing, please report problems)
* "force controls to selected channels" enabled by default
* "Confirm Exit" defaults to off
* changed default color scheme
* Mac version compiled on Snow Leopard (v0.38 was SL compatible already, Tiger and PPC platforms still supported)


* code cleanups
* knobs show different scales, depending on value range
* updated colors and color selection code
* disabled writing of debuglog.txt
* moved config files to $APPDATA/prodatum on windows and $HOME/.prodatum on OSX/Linux


* fixed a bug that caused a crash when the channel mix out was set to send4
* audity 2k id mapping
* hide arp_post_delay knob on audity devices
* each fx type comes with default values for decay and damp (fxa) and feedback, lfo-rate and delay (fxb). update knobs accordingly.
* fx section always shows the fx settings of the selected preset or the master fx settings


* fixed audity 2k not initializing at all
* reinitialize patchcord sources when we connect to a new device so that availability of MNOP controller sources gets updated
* display note information for offset in the arp pattern editor
* added labels to rows in arp pattern editor
* wait a bit longer for the final setup copy operation to finish on init
* arp editor was showing up when we hit cancel on init. fixed


* royce fixed the beat:ticks calculation
* when the initital controller amount value is -1 we shall not touch the CC slider. ok
* further ui tuning (like themed tootltips)
* command stations *should* work now (testing needed)
* added M, N, O, P patchcord controller sources for devices that support those
* press (and hold) "C" to play a C (for quick audition)


* ui: fix cursors not visible in input fields
* ui: some other cosmetic changes
* fixed redo: push only once on undo stack
* fixed copy layers: reversed parameter id order so instrument rom gets copied before the instrument (if the rom is switched the device auto-selects the first entry. this is true for all rom related parameters with the exception of presets)
* fixed channel strip mute/solo buttons not resetting when switching channel/program while solo/mute was active
* arp pattern editor: "flipmode" for step operation: pushing current op again, selects previous op
* arp pattern editor: beat:ticks calculation for the arp pattern editor (idea and code by Royce :)


* PROGRAM and MAIN buttons switched places
* fixed arp offset slider getting stuck at top position
* fixed arp offset slider sending out sysex when "Key" is not selected
* moved arp key velocity directly above offset
* arp pattern editor is now part of the main window
* arp step widget right click support
* button to reset the arp pattern
* double-clicking a pattern in the arp browser opens the pattern in the arp pattern editor


* un-mute all voices on exit
* new sliders
* optimized envelope editor a bit (colors, drawing)
* arp editor


* key shortcuts work globally now
* fixes for new "edit-all" code: reset value in-/output, choose "all layers" on unsolo
* fix for the logbuffer: always append text


* edit all layers functionality
* envelope editor: when two (or more) values overlap the mousewheel can now be used to choose the desired value


* undo/redo added
* some doxygen comments added
* mute/solo buttons copied to the layer strip


* some FX issues have been fixed:
 - when the channel was changed while "Master FX" was selected, the fx section deactivated. fixed
 - when in multimode and fx channel was switched, switching back to the current channel didn't show the edited fx settings. fixed
* key shortcuts sometimes did not work after startup. fixed
* the main window has been made slightly bigger to "air" the UI up a bit
* knobs always show their cursor so we can always read the fx settings, even when the fx section is inactive
* some fonts have been changed to get a more consistent look


* menu structure updated to make more sense
* "views" (like voice 1,..) selectable by menuitems
* shortcuts for "views" switch views by a single keypress
* shortcuts for solo (shift+a,..) and mute (alt+a,..) buttons
* shortcuts for audit (v) and fx bypass (x)
* multisetup selection has been embedded into the master settings
* fix: the preset_copy (that is internally used for right-click actions) is only updated when we dont request the edit buffer, so that a right click on a parameter will always revert to the presets default value
* an prodatum icon has been added here and there ;)
* the "COPY" button for the arpeggiator settings is now called "COPY FROM" to reflect its new behaviour: it will copy the arpeggiator settings from another preset to the current preset (before: copy current settings to another preset) which is much more usable
* you can copy arp pattern for now (volatile)


* shouldn't crash on command stations
* worked the randomizer to only seed once
* worked initialization once again
* added "-" "+" knobs to the Coarse tune to quickly tune down/up one octave
* added the preset name to the menubar so you can always see what you are working on


* preset links
* added missing preset parameter "Tempo Offset"
* re-located a few buttons that change the main-window contents
* some smaller internal changes to minimize context switches in the midi receiver


* fixed deactivated voices not being activated on copy operation
* serialized setup and rom name downloads on initialization (addresses some possible initialization problems)
* fixed cancel not cancelling the new serialized init process
* added an option to set the debuglevel
* added "Hints" to the help menu


* layer transpose added to the keyboard (i missed it so much..)
* hide and show "save" and "start over" items from the menu instead of  
(de)activating them as the deactivation state wasn't visible
* the dismiss dialog could be triggered twice in some situations (fixed)
* channel Mix out didnt work (fixed)
* a few more bound checks (small steps to get prodatum initialize on  
command stations)


* fix: right click on the channel selection crashed prodatum
* fix: footswitch CC mappings did not update when you changed  
footswitch assignemnts
* right click anywhere in the channel selection to (re-)load the edit  
buffer (useful in some rare cases) (doesn't switch channel)
* unused voices are now disabled in the mixer
* when filter is "Off", filter controls are disabled
* when LFO's is tempo based, "Variation" is disabled
* midi timer interval lowered from 10ms to 1ms (higher resolution)
* patchcord amounts show semitone values in the formatted value output  
(useful for all things pitch-modulation)


* new name download validation code (missing names should be history  
* new, simple MIDI port "Speed" selection: choose one from fast,  
normal, slow and creep. slow and creep also set a positive "sysex  
packet delay" on the device.
* manual inputs into the universal value input field are now clamped  
to min/max values
* all parameters can be edited via the universal input except rom  
choices and cc controller
* new "DRLS" option for the universal value input


* fixes a few smaller issues (setup names not being saved between module switching
* a MIDI port check on autoconnect has been added
* features a new portmidi version (131, previous was 82)


just a few compiler flag updates (linux + windows versions) and new compiler (gcc 4.4.0) for the windows version


* default controller mode is "PLAY" (i was always switching to it...so  
i thought it might be smart to make it the default, comments?)
* the pitchwheel and modwheel, the footswitches and the channel volume/ 
pan knobs update on MIDI events
* optionally force the controls of the external controller to the  
channel selected in prodatum (useful if you use a keyboard or synth  
that can only send on one channel or if you dont feel like switching  
channels on your controller all the time)
* syncview setting is saved to the config
* more colors and the option to swap the foreground and background  
colors (nice if you prefer dark backgrounds)
* more detailed log target selection: sysex-in/out and events-in/out
* log-target selections are saved to the config (enables you to  
disable logging alltogether, once and forever, if you dont need it)


* all editing is being made inside the edit buffer
* you can copy layers, envelopes etc, no matter if its a User or ROM  
* even randomizing uses the edit buffer
* have prodatum your way: you can select from 4 colors for each, the  
background, selection and controller color
* improved "syncview" for the envelopes
* new "Start Over" menuitem to quickly reset the edit buffer
* mute and solo buttons always visible
* tooltip for filter type shows filter information
* the "Copy Layer" dialog has been improved: double click a  
destination to quickly copy a voice and close the dialog. using the  
"Copy" button will keep the dialog open so you can make copy multiple  
copies in one go (think 4x unison)
* we wrote the setup name file even when the data was incomplete. fixed.


* loading and saving of multisetups added


* "Compare" button for the envelope editor: when you push it, current  
zoomlevel, envelope type and overlay mode will be distributed to the  
other voices
* disable randomize option for ROM presets
* new "Dismiss" option in the file menu: revert all changes made to  
the program
* a bug has been fixed that occured on devices with 4 ROMs only
* blindly (because there is no other choice) try something to get  
complete preset dumps on command stations which send odd sized preset  
data chunks


* lots of bound checks added


* you can save ROM presets
* copy presets
* rename presets
* color scheme switches when you edit a ROM preset
* the keyboard got a pitchwheel, modwheel, 3 footswitches and a ALL  
NOTES OFF button
  (use the right mousebutton on the "pitchwheel" to hold it)


* fix: arp or preset names did not get saved
* exit confirmation dialog
* option to disable exit conformation dialog
* option to disable randomize conformation dialog
* message log window (logs incoming/outgoing sysex and midi events in  
* copy lfo's, envelopes or patchcords between layers
* patchcord "matrix" tweaked for better readability
* browsing with the keyboard should now be more intuitive as widgets  
have been sorted
* you can select voice-panels via 'a', 's', 'd', 'f', preset-panel via  
'q' and main-panel via 'w' shortcuts
* minimized windows will show up when their shortcut is used now
* disabled preset selection when "channel program change" is disabled
* new, more simple shortcuts (k = keyboard, l = log, m = midi  
options, ..)


* fix: init thread did continue even when we hit cancel
* fix: incomplete name files have been saved causing the browsers showing  
"half-empty" listings of instruments, prestes etc...


* improved midi options / connect dialog: should be less confusing (i  
would like to get some comments on it as many felt like it wasnt quite  
* arpeggiator settings (preset + master)
* new channel settings: arp mode, channel-enable, receive program  
change, mix out
* the value out/input is always visible now
* i colored the patchcords widgets a bit so they are easier to browse/ 
* master settings are integrated into the main window (no extra master  
* "reset-to-inital" (right-click) support for all browsers
* fix: some names missing when a device was changed or the init process was  
* fix: device switching in the midi options didnt work quite right

pre v0.10 (no version information available)

* command stations will hopefully initialize now (the dumps need  
testing, please run the test in the file menu, if you get that far :-)
* preset selection (yay!)
* layer editor with instrument selection, envelope editor (improved),  
lfo setup, and patchcords
* some bugs have been fixed (thanks for the reports! :)

* not all instrument names are downloaded. fixed.
* when a new preset is selected the fx sextion does not update when in poly or omni mode or when the selected fx channel is the same as the selected channel. fixed

* cubic layer volume sliders (much better control over volume levels!)
* open loop up/downloads are now the default as they are significantly faster
* much smaller default read/write buffers (i finally got the threading done)
* some new controls and a master options window
* oh, and a new look (a few colors can change so much!)
* improved "right-click to reset value" functionality
* controllers can be used to set initial controller values or as CC controllers (they even jump around on incomung cc events, lots of fun ^^)
* the formatted value output learned about a lot new parameter values :)