open close type description rev user
08/19/13 08/29/13 done comp should correct to nearest tetrachord tone instead of nearest scale tone 1.0.00.000  
08/19/13 09/01/13 done wrap system MIDI API to avoid leaks 1.0.00.000  
08/19/13 09/01/13 done support Unicode just in case 1.0.00.000  
08/19/13 09/12/13 done refactor Robogonzi.cpp into engine 1.0.00.001  
08/19/13 09/14/13 done make settings persistent 1.0.00.005  
08/31/13 09/14/13 done handle multiple MIDI ports 1.0.00.016  
09/14/13 09/16/13 done property page scroll bars 1.0.00.016  
09/12/13 09/17/13 done open/save patch file 1.0.00.020  
09/12/13 09/17/13 done stop engine during song read 1.0.00.020  
09/18/13 09/19/13 done dynamically generate spin controls 1.0.00.024  
09/18/13 09/19/13 done show voicing names in start case 1.0.00.025  
09/12/13 10/03/13 done insert/delete part 1.0.00.039  
09/12/13 10/03/13 done part properties 1.0.00.039  
09/12/13 10/03/13 done parts list 1.0.00.039  
09/18/13 10/03/13 done clipboard; part cut/copy/paste 1.0.00.039  
09/18/13 10/03/13 done rename parts 1.0.00.039  
09/18/13 10/03/13 done next/previous pane via F6/Shift+F6 1.0.00.040  
09/18/13 10/03/13 done part list context menu 1.0.00.040  
09/20/13 10/03/13 done persistence of selected page in properties and parts bars 1.0.00.040  
09/19/13 10/04/13 done drag reorder parts 1.0.00.042  
09/19/13 10/04/13 done enable parts via parts list checkbox 1.0.00.043  
09/23/13 10/04/13 done previous comp state must be stored per part; engine needs a part state array 1.0.00.043  
09/18/13 10/05/13 done part patch number, volume 1.0.00.044  
09/20/13 10/05/13 done only open devices actually in use, to avoid needlessly slowing engine run/stop 1.0.00.044  
09/20/13 10/05/13 done handle device change message 1.0.00.044  
10/06/13 10/06/13 done midiOutReset is too slow; silence mapped notes instead 1.0.00.046  
09/12/13 10/10/13 done undo 1.0.00.049  
09/18/13 10/10/13 done patch doc modify flag; related to undo 1.0.00.049  
10/10/13 10/10/13 done in .NET, SerializeElements not specialized for CPart; template<> is required 1.0.00.049  
10/10/13 10/10/13 done 64-bit version; passes undo test 1.0.00.049  
08/19/13 10/12/13 done GUI 1.0.00.050  
09/18/13 10/12/13 done show chord chart in view and indicate current position; update on transpose 1.0.00.050  
09/18/13 10/12/13 done start playing at specified chart position 1.0.00.050  
10/12/13 10/12/13 done chart should use highlight color only when view has focus 1.0.00.050  
10/11/13 10/13/13 done constrain PPQ to multiples of 24; use combo instead of edit 1.0.00.051  
10/12/13 10/13/13 done options dialog for non-engine settings 1.0.00.051  
09/17/13 10/14/13 done make song looping optional 1.0.00.051  
09/18/13 10/14/13 done pause/resume/rewind 1.0.00.051  
10/12/13 10/15/13 done song meter denominator 1.0.00.052  
10/15/13 10/15/13 done chart font antialiasing 1.0.00.052  
09/19/13 10/17/13 done duration control 1.0.00.053  
09/19/13 10/17/13 done per-part harmonic anticipation 1.0.00.053  
08/31/13 10/18/13 done arpeggiated comp 1.0.00.054  
10/14/13 10/18/13 done in comp, add setting to control alternation behavior: A only, B only, A to B, B to A 1.0.00.054  
10/14/13 10/18/13 done in comp, add checkbox for chord change resets alternation 1.0.00.054  
10/18/13 10/18/13 done arpeggiation order: default, ascending, descending, random 1.0.00.054  
10/18/13 10/18/13 done optionally repeat arpeggio while key held 1.0.00.054  
09/18/13 10/19/13 done sustain pedal 1.0.00.054  
09/18/13 10/19/13 done local off 1.0.00.054  
09/18/13 10/19/13 done part velocity offset 1.0.00.054  
10/18/13 10/19/13 done check for duplicate chord type names when loading dictionary 1.0.00.054  
10/06/13 10/21/13 done layering; play multiple parts with one input instrument (port/channel) 1.0.00.055  
10/19/13 10/21/13 done if two parts have same input port/channel, early out in OnNoteOff causes stuck notes 1.0.00.055  
10/20/13 10/21/13 done if keyboard is split between two parts, sustain pedal only affects first one 1.0.00.055  
10/19/13 10/22/13 done prevent system from sleeping while playing, via SetThreadExecutionState 1.0.00.056  
10/26/13 10/26/13 done on PPQ change, compensate clock to maintain position 1.0.00.057  
10/12/13 10/28/13 done show song meter, key, and position in status bar 1.0.00.057  
09/18/13 11/09/13 done device bar 1.0.00.059  
10/21/13 11/09/13 done store device identifiers in patch; report missing devices and update ports if devices move 1.0.00.059  
11/12/13 11/14/13 done algorithm combo doesn't generate undo notification 1.0.00.059  
11/10/13 11/15/13 done enforce bass lowest note by raising output note up an octave if needed 1.0.00.059  
11/16/13 11/16/13 done in chart, repeated measure of multiple chords shows duplicate repeat symbols 1.0.00.059  
11/16/13 11/17/13 done bass octave is incorrect if lowest note is in range [Gb..B] 1.0.00.060  
10/18/13 11/18/13 done in chord dictionary, support null chord name, to allow major triad 1.0.00.061  
11/16/13 11/18/13 done in song file, missing durations cause song truncation instead of error 1.0.00.061  
11/17/13 11/18/13 done use Tokenize for symbol parsing 1.0.00.061  
11/17/13 11/18/13 done include line number in song error messages 1.0.00.061  
09/18/13 11/21/13 done assign any MIDI controller to any target parameter 1.0.00.062  
09/18/13 11/21/13 done allow multiple targets per MIDI controller 1.0.00.062  
09/20/13 11/21/13 done persistence of parts list column widths and parts bar splitter position 1.0.00.063  
11/20/13 11/21/13 done optionally chase MIDI target events 1.0.00.063  
11/21/13 11/21/13 done list MIDI assignments; sortable report 1.0.00.063  
09/18/13 11/22/13 done edit song 1.0.00.063  
10/06/13 11/22/13 done canceling part name edit via escape key doesn't work; fix in CDragVirtualListCtrl 1.0.00.063  
11/17/13 11/24/13 done navigation via editing keys in chart view 1.0.00.064  
11/24/13 11/24/13 done next/prev pane must skip hidden windows 1.0.00.064  
10/12/13 11/25/13 done auto-scroll chart while playing to keep current position visible 1.0.00.064  
11/25/13 11/25/13 done app maximize corrupts main frame normal size; aux doc must no-op InitialUpdateFrame 1.0.00.064  
11/25/13 11/26/13 done updating status bar song position flickers in Common Controls 6.0; use double-buffering 1.0.00.065  
11/25/13 11/26/13 done threads dialog showing dynamic list of process threads including priority and CPU usage 1.0.00.065  
10/15/13 11/27/13 done in chart, unevenly split measures cause improper spacing 1.0.00.065  
10/24/13 11/27/13 done Shift shortcuts don't work if edit control has focus 1.0.00.065  
11/27/13 11/28/13 done edited song is corrupted during reloading 1.0.00.065  
11/27/13 11/28/13 done make threads dialog modeless 1.0.00.065  
11/27/13 11/28/13 done in chart, don't draw unused measures on last line 1.0.00.065  
10/20/13 11/30/13 done select quantized arpeggio periods via MIDI 1.0.00.066  
11/27/13 11/30/13 done auto comp should support arpeggiation, variation, etc. 1.0.00.066  
11/30/13 11/30/13 done refactor auto play to be a part page 1.0.00.066  
12/01/13 12/01/13 done if comp/lead split, auto comp gets cut off by lead note offs; block channel mode messages 1.0.00.066  
12/01/13 12/01/13 done MIDI assignment list causes crash due to incorrect device names 1.0.00.066  
09/18/13 12/02/13 done held note correction should be configurable per part 1.0.00.066  
10/19/13 12/02/13 done panic button; empty note map, reset all notes 1.0.00.066  
10/27/13 12/02/13 done if song is empty, set default harmony so engine can still run 1.0.00.066  
11/22/13 12/02/13 done undo song edit 1.0.00.066  
12/01/13 12/02/13 done arpeggiation should work even when song isn't playing; timer thread always runs 1.0.00.067  
12/03/13 12/04/13 done stop sometimes rewinds to 1:00:001 instead of 1:00:000; Play must cycle timer thread 1.0.00.068  
12/03/13 12/04/13 done arpeggiated auto-comp sticks if fixing held notes and engine restarts during anticipation 1.0.00.068  
12/03/13 12/04/13 done tempo is broken; changing it has no effect 1.0.00.068  
10/27/13 12/06/13 done display MIDI input events 1.0.00.069  
09/18/13 12/08/13 done learn MIDI assignments 1.0.00.069  
08/31/13 12/15/13 done triads; chord info only allows tetrachords 1.0.00.069  
10/18/13 12/15/13 done comp chord voicings must support variable number of notes to allow triads 1.0.00.069  
12/09/13 12/15/13 done MIDI input dialog needs filters 1.0.00.069  
10/15/13 12/16/13 done print chart 1.0.00.070  
12/15/13 12/16/13 done MIDI input dialog should be modeless 1.0.00.070  
12/16/13 12/21/13 done printed chart should have appropriately scaled font and reasonable margins 1.0.00.070  
12/21/13 12/22/13 done multi-page printed chart 1.0.00.070  
10/27/13 12/23/13 done tempo multiplier, ranging from half time to double time 1.0.00.070  
11/20/13 12/23/13 done alternate arpeggio style that toggles between ascending and descending 1.0.00.070  
12/23/13 12/23/13 done allow metronome accent to output a different MIDI note 1.0.00.070  
12/24/13 12/24/13 done harmonizer option to omit melody, allowing harmony via different instrument 1.0.00.070  
09/19/13 01/07/14 done harmonizer option for static harmony within specified interval range 1.0.00.071  
01/07/14 01/18/14 done in MIDI row, use ellipses style for caption; add SS_ENDELLIPSIS to static style in .rc 1.0.00.072  
01/17/14 01/18/14 done metronome accent occurs every other measure in 8/8 1.0.00.072  
09/18/13 01/30/14 done bass approach mode; shift scale so C is root of subsequent chord 1.0.00.072  
12/09/13 01/30/14 done handle pitch bend, patch change, channel aftertouch 1.0.00.072  
01/26/14 01/30/14 done chord format must allow bass note, and esp. triad with bass note 1.0.00.072  
01/30/14 01/30/14 done harmonizer should work for bass 1.0.00.072  
01/30/14 02/03/14 done allow slash chord bass note to be outside of chord scale 1.0.00.073  
02/08/14 02/08/14 done transport commands via MIDI 1.0.00.074  
02/10/14 02/10/14 done positive transpose causes spurious slash chords in chart 1.0.00.074  
10/27/13 02/19/14 done optionally specify tempo and/or key in song file 1.0.00.075  
02/19/14 02/21/14 done status bar should show actual tempo (with multiplier applied) 1.0.00.076  
10/12/13 03/09/14 done record output to a MIDI file 1.0.00.077  
03/06/14 03/13/14 done display MIDI events should be a dockable bar 1.0.00.078  
03/13/14 03/13/14 done in MIDI event dialog, horizontal scrolling doesn't update header 1.0.00.078  
03/15/14 03/15/14 done in MIDI file export, sort tracks by port and channel 1.0.00.079  
03/09/14 03/16/14 done save recording to binary file that preserves original timestamps 1.0.00.079  
12/15/13 03/20/14 done display MIDI output events 1.0.00.080  
03/20/14 03/20/14 done docked bars should show captions 1.0.00.080  
03/21/14 03/21/14 done splash screen 1.0.00.081  
03/21/14 03/26/14 done record options 1.0.00.082  
01/30/14 04/04/14 done trigger bass approach via MIDI 1.0.00.083  
04/05/14 04/05/14 done wheel affects targets it wasn't assigned to; UpdateMidiTarget must check event type 1.0.00.084  
04/01/14 04/08/14 done in MIDI event filters, device and port should stay in sync 1.0.00.085  
04/05/14 04/08/14 done during MIDI learn, highlight selected target 1.0.00.085  
04/05/14 04/08/14 done during MIDI learn, left-clicking on target name should select row 1.0.00.085  
04/12/14 04/12/14 done make installer and portable version 1.0.00.086  
09/18/13 04/13/14 done advance to next section on command or control change 1.0.00.086  
09/18/13 04/13/14 done song sections w/ repeat 1.0.00.086  
04/12/14 04/13/14 done show device name on part input and output pages 1.0.01.000  
04/12/14 04/13/14 done patch INI file must be in app data folder, else users need admin privileges 1.0.01.000  
04/12/14 04/13/14 done make check for updates optional 1.0.01.000  
04/13/14 04/13/14 done status bar record indicator should be red 1.0.01.000  
04/13/14 04/13/14 done Ctrl+L should be MIDI Learn 1.0.01.000  
04/13/14 04/14/14 done allow comments in song 1.0.01.000  
04/13/14 04/15/14 done section repeat causes bass approach to get stuck; need a monotonically increasing clock 1.0.02.000  
04/13/14 04/15/14 done allow song sections be named 1.0.02.000  
04/13/14 04/16/14 done harmonic anticipation and bass approach cause wrong notes near end of repeating section 1.0.02.000  
04/15/14 04/16/14 done after editing song while playing, if first chord is invalid, app crashes 1.0.02.000  
04/15/14 04/17/14 done next section button; should stay pressed during last pass through section 1.0.02.000  
04/15/14 04/17/14 done chart should indicate sections 1.0.02.000  
03/13/14 04/22/14 done clear MIDI event history via context menu 1.0.02.001  
04/15/14 04/22/14 done virtual piano; play notes via mouse or computer's keyboard 1.0.02.001  
04/19/14 04/22/14 done on showing MIDI assignments dialog, items aren't correctly sorted 1.0.02.001  
04/05/14 04/23/14 done MIDI learn should accept placing cursor on target name 1.0.02.001  
04/12/14 04/23/14 done advance to next chord via MIDI while stopped, allowing rubato 1.0.02.001  
04/14/14 04/23/14 done tooltips for patch and part controls 1.0.02.001  
04/23/14 04/23/14 done set song position via MIDI 1.0.02.001  
04/21/14 04/25/14 done show note mapping(s) in piano dialog 1.0.02.001  
04/26/14 04/26/14 done input transposition can cause out of range notes, crashing app 1.0.02.001  
04/26/14 04/26/14 done output notes shown on piano not accounting for input transposition 1.0.02.001  
04/26/14 04/26/14 done commands for rewind, next section, next/prev chord, all need triggers to avoid bounce 1.0.02.001  
04/26/14 04/27/14 done piano dialog should show notes played on external instrument 1.0.02.001  
10/27/13 04/28/14 done device bar should indicate which devices are open 1.0.03.000  
04/26/14 04/28/14 done always do lead-in if specified, regardless of song position 1.0.03.000  
04/28/14 04/28/14 done with repeat off, app doesn't stop at end of song; introduced during section refactor 1.0.03.000  
04/28/14 04/28/14 done change song file extension from .txt to .ces to avoid conflicts 1.0.03.000  
04/29/14 04/29/14 done MIDI note mappings dialog 1.0.03.000  
04/29/14 04/29/14 done add data folder path to options dialog 1.0.03.000  
04/29/14 04/29/14 done optionally show chord tones on piano keys 1.0.03.000  
04/30/14 04/30/14 done dragging patch file from Explorer fails; passing patch file via command line also fails 1.0.04.000  
04/30/14 04/30/14 done installer should register patch file type 1.0.04.000  
12/02/13 05/02/14 done can't undo song edits after opening patch; song and patch need separate undo histories 1.0.04.000  
05/02/14 05/04/14 done disallow zero tempo 1.0.04.000  
05/03/14 05/05/14 done show scale tones on piano keys 1.0.04.000  
04/14/14 05/14/14 done chart view should allow editing 1.0.04.000  
05/12/14 05/15/14 done replace bass chromatic checkbox with non-diatonic notes combo 1.0.05.000  
05/16/14 05/16/14 done dragging all chords out of a section fails 1.0.05.000  
05/16/14 05/16/14 done patch document has incorrect icon 1.0.05.000  
05/02/14 05/18/14 done output notes bar 1.0.05.000  
05/12/14 05/19/14 done continuous controller for input note 1.0.05.000  
03/21/14 05/23/14 done event dialog should optionally show controller names 1.0.06.000  
05/23/14 05/23/14 done Shift+F10 doesn't show context menu in some sizing bars 1.0.06.000  
05/23/14 05/23/14 done MIDI input/output event dialogs don't update device names on device change 1.0.06.000  
05/23/14 05/23/14 done input note controller doesn't work if its device and/or channel differs from part's 1.0.06.000  
04/26/14 05/24/14 done changing song position manually (via next chord and similar) should fix held notes 1.0.06.000  
04/26/14 05/25/14 done make auto-rewind optional 1.0.06.000  
05/22/14 05/25/14 done add controller target for input note velocity 1.0.06.000  
05/02/14 05/26/14 done chart editing removes comments from song file 1.0.06.000  
05/02/14 05/26/14 done song properties should allow editing of comments 1.0.06.000  
04/12/14 05/27/14 done record while stopped 1.0.06.000  
05/28/14 05/30/14 done auto-record uses incorrect title; must store title when auto-record starts 1.0.06.000  
05/23/14 05/31/14 done player for MIDI recordings; must handle multiple output devices 1.0.06.000  
06/02/14 06/02/14 done undocking control bar crashes app if song is empty; negative chord index in SetCurChord 1.0.06.001  
06/08/14 06/02/14 done setting bass approach target crashes app if song is empty 1.0.07.000  
06/04/14 06/04/14 done double-clicking patch file in explorer starts app but doesn't load patch 1.0.07.000  
06/05/14 06/10/14 done MIDI learn should work for part's input port/channel 1.0.07.000  
06/07/14 06/10/14 done MIDI learn directly from page control(s) associated with target parameter 1.0.07.000  
06/10/14 06/10/14 done in chart view, renaming repeated measure or multi-chord selection should insert chord 1.0.07.000  
06/11/14 06/12/14 done don't merge duplicate chords if they're in different sections 1.0.07.000  
06/11/14 06/12/14 done record player's list control should disable drag 1.0.07.000  
06/11/14 06/12/14 done refactor MIDI target dialog to use grid control instead of row view 1.0.07.000  
06/10/14 06/13/14 done MIDI learn via page control should select corresponding row in MIDI target dialog 1.0.07.000  
06/10/14 06/14/14 done MIDI target dialog should show controller value 1.0.07.000  
06/01/14 06/15/14 done list control tool tips are incorrectly positioned 1.0.07.000  
06/17/14 06/20/14 done chord dictionary should support aliases 1.0.08.000  
06/17/14 06/20/14 done IDC_PART_MIDI_ROW is unused 1.0.08.000  
06/27/14 06/28/14 done local off isn't sent until a song is loaded; must update patches after initially starting engine 1.0.08.000  
06/17/14 07/01/14 done add support for Impro-Visor lead sheet files 1.0.08.000  
07/06/14 07/07/14 done showing events dialog resets device/port filter 1.0.08.000  
07/06/14 07/07/14 done add reset filters command to events dialog 1.0.08.000  
07/08/14 07/08/14 done folder dialogs should set initial directory 1.0.08.000  
07/08/14 07/08/14 done status bar initially doesn't display current position after song is opened 1.0.08.000  
07/09/14 07/09/14 done show device names in output notes bar's port popup menu 1.0.08.000  
07/22/14 07/23/14 done add go to command; jump to specified song position 1.0.08.000  
07/22/14 07/23/14 done in section properties dialog, allow editing of start and length 1.0.08.000  
08/03/14 08/04/14 done chart view not updated after loading patch that changes global tranposition 1.0.08.000  
08/07/14 08/07/14 done add bass approach trigger button 1.0.08.000  
08/12/14 08/12/14 done pasting part leaks memory; LoadFromBuffer must detach CMemFile from buffer and delete buffer 1.0.08.000  
08/12/14 08/12/14 done only enable parts list editing if list has focus 1.0.08.000  
04/13/14 08/26/14 done context-sensitive help 1.0.08.000  
09/07/14 09/17/14 done use default memberwise copy where possible 1.0.09.000  
09/17/14 09/18/14 done transpose selected chords 1.0.09.001  
09/17/14 09/18/14 done change length of selected chords 1.0.09.001  
05/14/14 09/20/14 done changing time signature should update chord durations 1.0.09.001  
09/17/14 09/20/14 done time signature pane in status bar is too narrow 1.0.09.001  
08/29/14 09/24/14 done find and replace in editor dialog; CEditView is a mess, roll your own 1.0.09.001  
11/12/13 09/25/14 done in Vista/7/8, MIDI input callback thread has normal priority, increasing latency; boost priority 1.0.09.001  
09/26/14 09/26/14 done threads dialog shows stale data; list only updates on thread count change 1.0.09.001  
09/30/14 09/30/14 done bass trigger button isn't highlighted in learn mode; button must specify notify style 1.0.09.001  
09/18/13 10/07/14 done sync to external MIDI clocks 1.0.09.002  
09/18/13 10/07/14 done output MIDI clocks 1.0.09.002  
10/01/14 10/07/14 done metronome page should show output device 1.0.09.002  
10/11/14 10/13/14 done mapping function that outputs scale notes in cycle of thirds order 1.0.09.002  
07/14/14 11/11/14 done prompt when assigning MIDI controller that's already assigned to other targets 1.0.10.000  
07/14/14 11/11/14 done MIDI assignments dialog should indicate shared controllers 1.0.10.000  
11/02/14 11/15/14 done custom output piano sizes 1.0.10.000  
11/11/14 11/17/14 done if grid control isn't already editing, pressing tab should edit first field on current row 1.0.10.000  
12/14/14 12/15/14 done record player seek fails for positions above ~11 minutes due to 32-bit integer wraparound 1.0.10.000  
12/22/14 12/22/14 done if help window and piano dialog are visible and piano dialog has focus, exiting app causes crash 1.0.10.000  
11/02/14 12/23/14 done exposed enumerations cause backwards compatability issues; add range checks as needed 1.0.10.000  
11/11/14 12/23/14 done pressing tab in parts list causes list to lose focus 1.0.10.000  
12/17/14 12/23/14 done in record player slider, left/right arrows change position by a millisecond, too little to be useful 1.0.10.000  
01/11/15 01/11/15 done tempo shown in status bar isn’t scaled by tempo multiple anymore, as of 1.0.09 1.0.10.000  
02/14/15 03/05/15 done if arpeggio ends prematurely, all of its notes are turned off even if they weren't actually on 1.0.11.000  
09/18/13 03/08/15 done dynamic looping AKA tags: tag length, tag repeat count, and start tag. 1.0.11.000  
03/15/15 03/15/15 done any part edit followed by deselecting all parts and then undoing causes crash 1.0.11.000  
03/16/15 03/16/15 done ending a part MIDI target edit by selecting a different part applies the edit to the wrong part 1.0.11.000  
12/21/14 03/20/15 done arpeggios that span chord changes can produce wrong notes; optionally prevent this (adaptive) 1.0.11.000  
04/13/14 03/21/15 done tap tempo; set tempo via tapping 1.0.11.000  
03/21/15 03/21/15 done Ctrl+Enter and Ctrl+Backspace shortcuts don't work if an edit control has focus 1.0.11.000  
03/23/15 03/23/15 done MIDI chase should show target page even if target parameter didn't change 1.0.11.000  
03/23/15 03/23/15 done MIDI assignments dialog should show current value of each controller 1.0.11.000  
03/24/15 03/24/15 done MIDI target dialog's column widths don't persist; introduced in 1.0.07 1.0.11.000  
01/01/15 04/01/15 done optionally fix duplicate notes in recording's output MIDI file, by deferring note offs 1.0.11.000  
04/01/15 04/01/15 done Alt+A mnemonic doesn't work correctly in property pages; caused by hidden Apply button 1.0.11.000  
09/12/13 04/05/15 done if dictionary loaded after song, reread song 1.0.11.000  
02/03/14 04/05/15 done edit chord dictionary; custom editing dialog 1.0.11.000  
04/08/15 04/08/15 done allow comp chord sizes other than triads and tetrachords 1.0.11.000  
05/29/15 06/08/15 done disabling always record option after playing with no song open causes unamed file error 1.0.12.000  
06/02/15 06/08/15 done in SetChord, replace MakeHarmony (for all chords) with GetHarmony for specified chord 1.0.12.000  
06/10/15 06/10/15 done deleting all chord types from chord dictionary can cause access violation 1.0.12.000  
06/11/15 06/11/15 done missing MIDI targets for Bass/Lowest Note, Comp/Chord Resets Alternation 1.0.12.000  
06/11/15 06/11/15 done tap tempo button fails to show MIDI learn; change button's extended style to notify parent window 1.0.12.000  
06/11/15 06/11/15 done chart view should support navigation via Tab and Shift+Tab 1.0.12.000  
09/01/14 06/12/15 done change current chord type and root dynamically via MIDI while stopped 1.0.12.000  
06/02/15 06/12/15 done add chord bar, with combos and MIDI targets for current chord's root, type, bass, scale and mode 1.0.12.000  
06/10/15 06/15/15 done editing chord dictionary silently reverts all song edits, without updating chart view 1.0.12.000  
06/11/15 06/15/15 done after reordering chord dictionary, undoing song edit scrambles song's chord types 1.0.12.000  
06/11/15 06/15/15 done after reordering chord dictionary, song chord(s) on clipboard are invalid and pasting them may crash 1.0.12.000  
06/11/15 06/15/15 done in chord dictionary dialog, changes should take effect immediately; remove apply button 1.0.12.000  
06/02/15 06/17/15 done show and edit properties of multiple MIDI assignments at once; same for note mappings 1.0.12.000  
10/15/13 06/18/15 done print preview horizontally squashes each chord symbol; worsens as font size increases 1.0.12.000  
10/15/13 06/18/15 done chart's grid lines are too narrow to be visible in printed output; scale line width with font 1.0.12.000  
06/18/15 06/19/15 done when printing chart, horizontally center it on page 1.0.12.000  
06/14/15 06/27/15 done chord substitution; switch between compatible chord dictionaries 1.0.12.000  
06/27/15 07/01/15 done on Win7 laptop, chord bar drop lists clip text due to larger font 1.0.12.000  
07/05/15 07/11/15 done next/previous chord commands should respect sections and support tagging 1.0.12.000  
07/24/15 07/24/15 done pressing Alt key steals focus from child dialogs 1.0.12.000  
07/24/15 07/24/15 done dockbar controls retain focus after bar is hidden 1.0.12.000  
08/10/15 08/11/15 done access note mapping properties dialog from parts list's context menu or Alt+Enter shortcut 1.0.13.000  
08/10/15 08/11/15 done add part enable to note mapping properties dialog 1.0.13.000  
08/10/15 08/11/15 done note mapping properties dialog shows port incorrectly if selected parts differ in terms of port 1.0.13.000  
06/10/14 08/21/15 done add grouping of harmony parts to prevent static harmony collisions 1.0.13.000  
08/24/15 08/23/15 done previous pane (Shift+F6) gets stuck on chord bar 1.0.13.000  
08/21/15 08/25/15 done optionally color keys to show note velocities in piano dialog and output notes bar 1.0.13.000  
08/21/15 08/25/15 done optionally show numeric input note velocities on piano dialog's key labels 1.0.13.000  
08/23/15 08/26/15 done optionally send bank change in addition to sending patch change 1.0.13.000  
04/26/14 08/28/15 done showing piano dialog via main menu mnemonic resets note with P shortcut, if any 1.0.13.000  
05/18/14 08/28/15 done piano dialog inconsistently shows auto play notes 1.0.13.000  
06/26/15 08/28/15 done optionally color piano dialog keys to show chord tones and tensions; also in cycle of thirds order 1.0.13.000  
08/28/15 08/28/15 done in piano dialog, selecting context menu item via mnemonic resets note with corresponding shortcut 1.0.13.000  
08/28/15 08/28/15 done showing piano dialog highlights all active notes regardless of whether port and channel match 1.0.13.000  
08/30/15 08/30/15 done incorrect key count bounds test in Output Notes bar's AddEvent 1.0.13.000  
09/19/13 08/31/15 done optionally constrain harmonizer to nearest chord tone 1.0.13.000  
11/26/15 12/17/15 done harmony chord constraint behaves unexpectedly with octaves 1.0.13.000  
12/19/15 12/19/15 done static harmony can cross melody; make crossing optional 1.0.13.000  
12/21/15 12/23/15 done MIDI devices aren't found if they're present but swapped (plugged into different ports) 1.0.13.000  
12/21/15 12/23/15 done MIDI devices with multiple input or output ports are incorrectly mapped when patch is reloaded 1.0.13.000  
12/21/15 12/23/15 done missing MIDI devices dialog should specify which devices are missing and allow retries 1.0.13.000  
12/19/15 01/03/16 done fix held notes should handle harmony group specially to avoid dropping voices 1.0.13.000  
12/21/15 01/17/16 done adaptive arpeggios should support repeat 1.0.13.000  
01/17/16 01/17/16 done transpose input note before passing to GetCompChord; eliminates need for bogus octave shift 1.0.13.000  
01/19/16 01/19/16 done after copying chords to clipboard, restarting app, and pasting into new song, playback is too fast 1.0.13.000  
02/29/16 03/01/16 done in output notes bar, add key label options for intervals and scale tones 1.0.13.000  
02/29/16 03/01/16 done output notes bar's rotate labels setting is forced on during startup, regardless of persistent value 1.0.13.000  
03/01/16 03/02/16 done UI elements lag behind chord changes due to timer-driven updating; add chord change notification 1.0.13.000  
10/05/13 03/20/16 done add mapping function for numbers system 1.0.14.000  
08/21/15 03/20/16 done give harmonizer its own page 1.0.14.000  
03/26/16 03/26/16 done if CreateEngine displays message box, chord bar's drop lists are blank 1.0.14.000  
02/06/16 02/06/17 done chord bar's root and bass drop lists behave erratically if song is transposed 1.0.14.000  
02/06/16 02/07/17 done chord editing doesn't account for song transposition; untransposed root and bass notes are shown 1.0.14.000  
02/06/17 02/08/17 done chord bar's bass drop list fails to update when bass note is changed via view or MIDI controller 1.0.14.000  
02/06/17 02/08/17 done show key-appropriate accidentals in chord bar, view context menus, and insert chord dialog 1.0.14.000  
02/08/17 02/09/17 done changing chord bar target via MIDI needlessly updates patch bar 1.0.14.000  
02/08/17 02/10/17 done changing scale or mode via MIDI doesn't update chord dictionary dialog 1.0.14.000  
02/10/17 02/11/17 done sorting chord dictionary doesn't preserve selection correctly 1.0.14.000  
08/19/13   hold MIDI output stream interface with queues, tempo and adjustable latency    
08/29/13   hold optionally don't auto-correct black keys; why?    
09/18/13   hold improve auto comp and auto bass; band-in-a-box stuff    
09/18/13   hold drum patterns    
09/19/13   hold drag reorder parts without cycling engine; good luck with that    
09/19/13   hold harmonic pitch bend for intervals and/or harmonized notes; requires multiple channels    
09/19/13   hold harmonizer ideas: random, delayed by N notes, static with delay, alternate intervals    
09/19/13   hold harmonic pitch bend; normalize pitch bend range to one or more scale degrees    
10/06/13   hold mouse wheel doesn't work in part function combo box    
10/11/13   hold time signature changes    
10/15/13   hold rhythmic anticipation and swing    
10/18/13   hold in comp, black keys could shift from chord tones to tensions; not sure about this    
10/18/13   hold secondary chord variant should be optional in dictionary    
10/18/13   hold arpeggio timing should be absolute instead of relative to input note's time; partly solved by auto    
10/27/13   hold device bar should show reference counts    
12/01/13   hold on port/channel change, remove previous port/channel from note map to avoid stuck notes    
12/09/13   hold disabling part doesn't stop repeating auto-arp until next chord change; bug or feature?    
01/07/14   hold in row view, header double-click for static column should fit column to text; fussy    
01/18/14   hold fractional durations in song format; incompatible with beat map?    
01/30/14   hold optionally disable bass octaving, so that output notes are out of order but jump less    
02/08/14   hold swap ports; what is this?    
03/13/14   hold in MIDI event dialog, if list has many events, filter resizing lags behind list header resizing    
03/21/14   hold with common controls 6.0, combos ignore drop height w/o no integral height style; CB_SETMINVISIBLE    
03/21/14   hold event dialog filters should allow conditionals; fancy    
04/07/14   hold for dialog-based panes, switching panes via F6 resets focus to first control    
04/13/14   hold author tag in song; tag value can't contain spaces    
04/22/14   hold add modulation and pitch sliders to piano dialog; problems with MIDI mapping if no target device    
05/02/14   hold pentatonic mode (play on black keys)?    
05/02/14   hold editing song should focus chart view?    
05/14/14   hold chart view's drag reorder feedback is confusing when dragging forward    
05/15/14   hold extreme part transpose and/or harmonizer settings can output invalid MIDI notes    
05/26/14   hold MIDI targets should support toggle and momentary methods for non-configurable controllers    
06/10/14   hold resizing status bar shows artifacts if bar is too short; due to compositing?    
07/14/14   hold make MIDI controller sharing optional?    
07/29/14   hold triad voicings: drop 2, drop 3, drop 2 3    
08/01/14   hold option for black keys to all generate non-duplicate notes, so all twelve notes are available    
08/01/14   hold learn zone high and zone low and other note settings from note input    
09/02/14   hold handle power broadcast message and restart engine on resume? Is it necessary?    
09/07/14   hold programmable song generator, random or otherwise   EMF
09/07/14   hold parameter tweening and/or parameter automation   EMF
09/07/14   hold stagger harmony voices, similar to arpeggiation   EMF
09/07/14   hold assign note to MIDI target(s); should handle toggles as well as triggers   EMF
10/11/14   hold switch between compatible patches without restarting engine, in response to patch change message    
12/17/14   hold in record player, takes are hard to find in long recordings; add next/prev take buttons?    
12/19/14   hold cycle of thirds non-diatonic rule only produces thirds if input transposition is zero or multiple of 12    
01/03/15   hold dynamically change arpeggio length; similar to repeat but limited to a specified number of notes    
05/15/15   hold permutations of note groups; alternate with vocabulary    
06/11/15   hold in chart view, undoing single chord edit doesn't restore position; might be a feature    
06/16/15   hold in chart view, Alt+Enter should open file properties dialog; not sure    
06/17/15   hold parts bar pages should be able to show multiple selected parts; requires indeterminate state    
08/30/15   hold optionally show dots on pressed piano keys    
11/19/15   hold in harmony group, specify interval between each voice rather than interval relative to melody    
12/19/15   hold in harmony group, optionally ignore collisions or resolve them by dropping notes    
03/13/16   hold meter changes during song, both spontaneous and prearranged via sections    
08/31/13   punt running status; driver-dependent, M-Audio 24/96 does it for closely-spaced messages, but Uno not    
09/18/13   punt indicate MIDI input activity; MIDI input/output bars and piano views make this redundant    
09/20/13   punt include in/out port/chan in note map, so OnNoteOff doesn't depend on part array; no need    
10/19/13   punt intelligent dynamic split that detects hand positions and computes safe split point; hard problem    
01/30/14   punt part output transpose; confusing, and easily doable with most MIDI instruments so no need    
03/17/14   punt if MIDI event list is empty, resizing docked bar makes header flicker badly in Win7    
03/20/14   punt event dialog flickers if events are added quickly; due to scrolling to end of list? double buffer?    
03/21/14   punt hiding and reshowing two bars that share a dock gives unexpected sizes; affects all apps    
04/05/14   punt parts bar MIDI target row view initially doesn't show scroll bars until resized; can't reproduce it    
07/09/14   punt chord type popup menu is inconveniently long; replace with popup drop list? (use chord bar instead)    
11/11/14   punt if part MIDI target edit is ended by selecting different part in parts list, wrong part is updated    
02/09/17   punt chord bar should indicate MIDI learn mode; changing selected item color requires owner-draw, ugh    
08/31/13   todo vocabulary with user supplying rhythym    
08/31/13   todo continuous vocabulary while key pressed    
09/18/13   todo view showing map of keyboard and which are or will be good and/or common tones    
09/18/13   todo endings    
11/17/13   todo correct held notes at fraction of their original velocity, proportional to decay    
11/29/13   todo auto play should respect harmonic anticipation    
12/07/13   todo auto play hold; create static harmony via held note corrector    
12/16/13   todo detect chromatic runs and substitute chromatic scale    
02/08/14   todo playlist    
04/12/14   todo user-defined scales, in addition to built-in ones    
04/12/14   todo manually arpeggiated comp    
04/13/14   todo in flat keys, B should be Cb, and in sharp keys, Db should be C#    
04/13/14   todo scale shifts by a whole step when key changes from B to Gb or similar cases    
04/13/14   todo MIDI setup wizard    
04/28/14   todo time bar showing current song position (or elapsed time) in big font    
06/01/14   todo hi-res icons    
11/19/15   todo fixed bass approach should skip chords with durations less than approach length    
01/19/16   todo editing song resets software synth to default patches    
03/20/16   todo triggered bass approach doesn't handle sections    
02/13/17   todo arpeggio output note velocities should optionally decay or have random variation