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  
08/19/13 09/01/13 done wrap system MIDI API to avoid leaks  
08/19/13 09/01/13 done support Unicode just in case  
08/19/13 09/12/13 done refactor Robogonzi.cpp into engine  
08/19/13 09/14/13 done make settings persistent  
08/31/13 09/14/13 done handle multiple MIDI ports  
09/14/13 09/16/13 done property page scroll bars  
09/12/13 09/17/13 done open/save patch file  
09/12/13 09/17/13 done stop engine during song read  
09/18/13 09/19/13 done dynamically generate spin controls  
09/18/13 09/19/13 done show voicing names in start case  
09/12/13 10/03/13 done insert/delete part  
09/12/13 10/03/13 done part properties  
09/12/13 10/03/13 done parts list  
09/18/13 10/03/13 done clipboard; part cut/copy/paste  
09/18/13 10/03/13 done rename parts  
09/18/13 10/03/13 done next/previous pane via F6/Shift+F6  
09/18/13 10/03/13 done part list context menu  
09/20/13 10/03/13 done persistence of selected page in properties and parts bars  
09/19/13 10/04/13 done drag reorder parts  
09/19/13 10/04/13 done enable parts via parts list checkbox  
09/23/13 10/04/13 done previous comp state must be stored per part; engine needs a part state array  
09/18/13 10/05/13 done part patch number, volume  
09/20/13 10/05/13 done only open devices actually in use, to avoid needlessly slowing engine run/stop  
09/20/13 10/05/13 done handle device change message  
10/06/13 10/06/13 done midiOutReset is too slow; silence mapped notes instead  
09/12/13 10/10/13 done undo  
09/18/13 10/10/13 done patch doc modify flag; related to undo  
10/10/13 10/10/13 done in .NET, SerializeElements not specialized for CPart; template<> is required  
10/10/13 10/10/13 done 64-bit version; passes undo test  
08/19/13 10/12/13 done GUI  
09/18/13 10/12/13 done show chord chart in view and indicate current position; update on transpose  
09/18/13 10/12/13 done start playing at specified chart position  
10/12/13 10/12/13 done chart should use highlight color only when view has focus  
10/11/13 10/13/13 done constrain PPQ to multiples of 24; use combo instead of edit  
10/12/13 10/13/13 done options dialog for non-engine settings  
09/17/13 10/14/13 done make song looping optional  
09/18/13 10/14/13 done pause/resume/rewind  
10/12/13 10/15/13 done song meter denominator  
10/15/13 10/15/13 done chart font antialiasing  
09/19/13 10/17/13 done duration control  
09/19/13 10/17/13 done per-part harmonic anticipation  
08/31/13 10/18/13 done arpeggiated comp  
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  
10/14/13 10/18/13 done in comp, add checkbox for chord change resets alternation  
10/18/13 10/18/13 done arpeggiation order: default, ascending, descending, random  
10/18/13 10/18/13 done optionally repeat arpeggio while key held  
09/18/13 10/19/13 done sustain pedal  
09/18/13 10/19/13 done local off  
09/18/13 10/19/13 done part velocity offset  
10/18/13 10/19/13 done check for duplicate chord type names when loading dictionary  
10/06/13 10/21/13 done layering; play multiple parts with one input instrument (port/channel)  
10/19/13 10/21/13 done if two parts have same input port/channel, early out in OnNoteOff causes stuck notes  
10/20/13 10/21/13 done if keyboard is split between two parts, sustain pedal only affects first one  
10/19/13 10/22/13 done prevent system from sleeping while playing, via SetThreadExecutionState  
10/26/13 10/26/13 done on PPQ change, compensate clock to maintain position  
10/12/13 10/28/13 done show song meter, key, and position in status bar  
09/18/13 11/09/13 done device bar  
10/21/13 11/09/13 done store device identifiers in patch; report missing devices and update ports if devices move  
11/12/13 11/14/13 done algorithm combo doesn't generate undo notification  
11/10/13 11/15/13 done enforce bass lowest note by raising output note up an octave if needed  
11/16/13 11/16/13 done in chart, repeated measure of multiple chords shows duplicate repeat symbols  
11/16/13 11/17/13 done bass octave is incorrect if lowest note is in range [Gb..B]  
10/18/13 11/18/13 done in chord dictionary, support null chord name, to allow major triad  
11/16/13 11/18/13 done in song file, missing durations cause song truncation instead of error  
11/17/13 11/18/13 done use Tokenize for symbol parsing  
11/17/13 11/18/13 done include line number in song error messages  
09/18/13 11/21/13 done assign any MIDI controller to any target parameter  
09/18/13 11/21/13 done allow multiple targets per MIDI controller  
09/20/13 11/21/13 done persistence of parts list column widths and parts bar splitter position  
11/20/13 11/21/13 done optionally chase MIDI target events  
11/21/13 11/21/13 done list MIDI assignments; sortable report  
09/18/13 11/22/13 done edit song  
10/06/13 11/22/13 done canceling part name edit via escape key doesn't work; fix in CDragVirtualListCtrl  
11/17/13 11/24/13 done navigation via editing keys in chart view  
11/24/13 11/24/13 done next/prev pane must skip hidden windows  
10/12/13 11/25/13 done auto-scroll chart while playing to keep current position visible  
11/25/13 11/25/13 done app maximize corrupts main frame normal size; aux doc must no-op InitialUpdateFrame  
11/25/13 11/26/13 done updating status bar song position flickers in Common Controls 6.0; use double-buffering  
11/25/13 11/26/13 done threads dialog showing dynamic list of process threads including priority and CPU usage  
10/15/13 11/27/13 done in chart, unevenly split measures cause improper spacing  
10/24/13 11/27/13 done Shift shortcuts don't work if edit control has focus  
11/27/13 11/28/13 done edited song is corrupted during reloading  
11/27/13 11/28/13 done make threads dialog modeless  
11/27/13 11/28/13 done in chart, don't draw unused measures on last line  
10/20/13 11/30/13 done select quantized arpeggio periods via MIDI  
11/27/13 11/30/13 done auto comp should support arpeggiation, variation, etc.  
11/30/13 11/30/13 done refactor auto play to be a part page  
12/01/13 12/01/13 done if comp/lead split, auto comp gets cut off by lead note offs; block channel mode messages  
12/01/13 12/01/13 done MIDI assignment list causes crash due to incorrect device names  
09/18/13 12/02/13 done held note correction should be configurable per part  
10/19/13 12/02/13 done panic button; empty note map, reset all notes  
10/27/13 12/02/13 done if song is empty, set default harmony so engine can still run  
11/22/13 12/02/13 done undo song edit  
12/01/13 12/02/13 done arpeggiation should work even when song isn't playing; timer thread always runs  
12/03/13 12/04/13 done stop sometimes rewinds to 1:00:001 instead of 1:00:000; Play must cycle timer thread  
12/03/13 12/04/13 done arpeggiated auto-comp sticks if fixing held notes and engine restarts during anticipation  
12/03/13 12/04/13 done tempo is broken; changing it has no effect  
10/27/13 12/06/13 done display MIDI input events  
09/18/13 12/08/13 done learn MIDI assignments  
08/31/13 12/15/13 done triads; chord info only allows tetrachords  
10/18/13 12/15/13 done comp chord voicings must support variable number of notes to allow triads  
12/09/13 12/15/13 done MIDI input dialog needs filters  
10/15/13 12/16/13 done print chart  
12/15/13 12/16/13 done MIDI input dialog should be modeless  
12/16/13 12/21/13 done printed chart should have appropriately scaled font and reasonable margins  
12/21/13 12/22/13 done multi-page printed chart  
10/27/13 12/23/13 done tempo multiplier, ranging from half time to double time  
11/20/13 12/23/13 done alternate arpeggio style that toggles between ascending and descending  
12/23/13 12/23/13 done allow metronome accent to output a different MIDI note  
12/24/13 12/24/13 done harmonizer option to omit melody, allowing harmony via different instrument  
09/19/13 01/07/14 done harmonizer option for static harmony within specified interval range  
01/07/14 01/18/14 done in MIDI row, use ellipses style for caption; add SS_ENDELLIPSIS to static style in .rc  
01/17/14 01/18/14 done metronome accent occurs every other measure in 8/8  
09/18/13 01/30/14 done bass approach mode; shift scale so C is root of subsequent chord  
12/09/13 01/30/14 done handle pitch bend, patch change, channel aftertouch  
01/26/14 01/30/14 done chord format must allow bass note, and esp. triad with bass note  
01/30/14 01/30/14 done harmonizer should work for bass  
01/30/14 02/03/14 done allow slash chord bass note to be outside of chord scale  
02/08/14 02/08/14 done transport commands via MIDI  
02/10/14 02/10/14 done positive transpose causes spurious slash chords in chart  
10/27/13 02/19/14 done optionally specify tempo and/or key in song file  
02/19/14 02/21/14 done status bar should show actual tempo (with multiplier applied)  
10/12/13 03/09/14 done record output to a MIDI file  
03/06/14 03/13/14 done display MIDI events should be a dockable bar  
03/13/14 03/13/14 done in MIDI event dialog, horizontal scrolling doesn't update header  
03/15/14 03/15/14 done in MIDI file export, sort tracks by port and channel  
03/09/14 03/16/14 done save recording to binary file that preserves original timestamps  
12/15/13 03/20/14 done display MIDI output events  
03/20/14 03/20/14 done docked bars should show captions  
03/21/14 03/21/14 done splash screen  
03/21/14 03/26/14 done record options  
01/30/14 04/04/14 done trigger bass approach via MIDI  
04/05/14 04/05/14 done wheel affects targets it wasn't assigned to; UpdateMidiTarget must check event type  
04/01/14 04/08/14 done in MIDI event filters, device and port should stay in sync  
04/05/14 04/08/14 done during MIDI learn, highlight selected target  
04/05/14 04/08/14 done during MIDI learn, left-clicking on target name should select row  
04/12/14 04/12/14 done make installer and portable version  
09/18/13 04/13/14 done advance to next section on command or control change  
09/18/13 04/13/14 done song sections w/ repeat  
04/12/14 04/13/14 done show device name on part input and output pages  
04/12/14 04/13/14 done patch INI file must be in app data folder, else users need admin privileges  
04/12/14 04/13/14 done make check for updates optional  
04/13/14 04/13/14 done status bar record indicator should be red  
04/13/14 04/13/14 done Ctrl+L should be MIDI Learn  
04/13/14 04/14/14 done allow comments in song  
04/13/14 04/15/14 done section repeat causes bass approach to get stuck; need a monotonically increasing clock  
04/13/14 04/15/14 done allow song sections be named  
04/13/14 04/16/14 done harmonic anticipation and bass approach cause wrong notes near end of repeating section  
04/15/14 04/16/14 done after editing song while playing, if first chord is invalid, app crashes  
04/15/14 04/17/14 done next section button; should stay pressed during last pass through section  
04/15/14 04/17/14 done chart should indicate sections  
03/13/14 04/22/14 done clear MIDI event history via context menu  
04/15/14 04/22/14 done virtual piano; play notes via mouse or computer's keyboard  
04/19/14 04/22/14 done on showing MIDI assignments dialog, items aren't correctly sorted  
04/05/14 04/23/14 done MIDI learn should accept placing cursor on target name  
04/12/14 04/23/14 done advance to next chord via MIDI while stopped, allowing rubato  
04/14/14 04/23/14 done tooltips for patch and part controls  
04/23/14 04/23/14 done set song position via MIDI  
04/21/14 04/25/14 done show note mapping(s) in piano dialog  
04/26/14 04/26/14 done input transposition can cause out of range notes, crashing app  
04/26/14 04/26/14 done output notes shown on piano not accounting for input transposition  
04/26/14 04/26/14 done commands for rewind, next section, next/prev chord, all need triggers to avoid bounce  
04/26/14 04/27/14 done piano dialog should show notes played on external instrument  
10/27/13 04/28/14 done device bar should indicate which devices are open  
04/26/14 04/28/14 done always do lead-in if specified, regardless of song position  
04/28/14 04/28/14 done with repeat off, app doesn't stop at end of song; introduced during section refactor  
04/28/14 04/28/14 done change song file extension from .txt to .ces to avoid conflicts  
04/29/14 04/29/14 done MIDI note mappings dialog  
04/29/14 04/29/14 done add data folder path to options dialog  
04/29/14 04/29/14 done optionally show chord tones on piano keys  
04/30/14 04/30/14 done dragging patch file from Explorer fails; passing patch file via command line also fails  
04/30/14 04/30/14 done installer should register patch file type  
12/02/13 05/02/14 done can't undo song edits after opening patch; song and patch need separate undo histories  
05/02/14 05/04/14 done disallow zero tempo  
05/03/14 05/05/14 done show scale tones on piano keys  
04/14/14 05/14/14 done chart view should allow editing  
05/12/14 05/15/14 done replace bass chromatic checkbox with non-diatonic notes combo  
05/16/14 05/16/14 done dragging all chords out of a section fails  
05/16/14 05/16/14 done patch document has incorrect icon  
05/02/14 05/18/14 done output notes bar  
05/12/14 05/19/14 done continuous controller for input note  
03/21/14 05/23/14 done event dialog should optionally show controller names  
05/23/14 05/23/14 done Shift+F10 doesn't show context menu in some sizing bars  
05/23/14 05/23/14 done MIDI input/output event dialogs don't update device names on device change  
05/23/14 05/23/14 done input note controller doesn't work if its device and/or channel differs from part's  
04/26/14 05/24/14 done changing song position manually (via next chord and similar) should fix held notes  
04/26/14 05/25/14 done make auto-rewind optional  
05/22/14 05/25/14 done add controller target for input note velocity  
05/02/14 05/26/14 done chart editing removes comments from song file  
05/02/14 05/26/14 done song properties should allow editing of comments  
04/12/14 05/27/14 done record while stopped  
05/28/14 05/30/14 done auto-record uses incorrect title; must store title when auto-record starts  
05/23/14 05/31/14 done player for MIDI recordings; must handle multiple output devices  
06/02/14 06/02/14 done undocking control bar crashes app if song is empty; negative chord index in SetCurChord  
06/08/14 06/02/14 done setting bass approach target crashes app if song is empty  
06/04/14 06/04/14 done double-clicking patch file in explorer starts app but doesn't load patch  
06/05/14 06/10/14 done MIDI learn should work for part's input port/channel  
06/07/14 06/10/14 done MIDI learn directly from page control(s) associated with target parameter  
06/10/14 06/10/14 done in chart view, renaming repeated measure or multi-chord selection should insert chord  
06/11/14 06/12/14 done don't merge duplicate chords if they're in different sections  
06/11/14 06/12/14 done record player's list control should disable drag  
06/11/14 06/12/14 done refactor MIDI target dialog to use grid control instead of row view  
06/10/14 06/13/14 done MIDI learn via page control should select corresponding row in MIDI target dialog  
06/10/14 06/14/14 done MIDI target dialog should show controller value  
06/01/14 06/15/14 done list control tool tips are incorrectly positioned  
06/17/14 06/20/14 done chord dictionary should support aliases  
06/17/14 06/20/14 done IDC_PART_MIDI_ROW is unused  
06/27/14 06/28/14 done local off isn't sent until a song is loaded; must update patches after initially starting engine  
06/17/14 07/01/14 done add support for Impro-Visor lead sheet files  
07/06/14 07/07/14 done showing events dialog resets device/port filter  
07/06/14 07/07/14 done add reset filters command to events dialog  
07/08/14 07/08/14 done folder dialogs should set initial directory  
07/08/14 07/08/14 done status bar initially doesn't display current position after song is opened  
07/09/14 07/09/14 done show device names in output notes bar's port popup menu  
07/22/14 07/23/14 done add go to command; jump to specified song position  
07/22/14 07/23/14 done in section properties dialog, allow editing of start and length  
08/03/14 08/04/14 done chart view not updated after loading patch that changes global tranposition  
08/07/14 08/07/14 done add bass approach trigger button  
08/12/14 08/12/14 done pasting part leaks memory; LoadFromBuffer must detach CMemFile from buffer and delete buffer  
08/12/14 08/12/14 done only enable parts list editing if list has focus  
04/13/14 08/26/14 done context-sensitive help  
09/07/14 09/17/14 done use default memberwise copy where possible  
09/17/14 09/18/14 done transpose selected chords  
09/17/14 09/18/14 done change length of selected chords  
05/14/14 09/20/14 done changing time signature should update chord durations  
09/17/14 09/20/14 done time signature pane in status bar is too narrow  
08/29/14 09/24/14 done find and replace in editor dialog; CEditView is a mess, roll your own  
11/12/13 09/25/14 done in Vista/7/8, MIDI input callback thread has normal priority, increasing latency; boost priority  
09/26/14 09/26/14 done threads dialog shows stale data; list only updates on thread count change  
09/30/14 09/30/14 done bass trigger button isn't highlighted in learn mode; button must specify notify style  
09/18/13 10/07/14 done sync to external MIDI clocks  
09/18/13 10/07/14 done output MIDI clocks  
10/01/14 10/07/14 done metronome page should show output device  
10/11/14 10/13/14 done mapping function that outputs scale notes in cycle of thirds order  
07/14/14 11/11/14 done prompt when assigning MIDI controller that's already assigned to other targets  
07/14/14 11/11/14 done MIDI assignments dialog should indicate shared controllers  
11/02/14 11/15/14 done custom output piano sizes  
11/11/14 11/17/14 done if grid control isn't already editing, pressing tab should edit first field on current row  
12/14/14 12/15/14 done record player seek fails for positions above ~11 minutes due to 32-bit integer wraparound  
12/22/14 12/22/14 done if help window and piano dialog are visible and piano dialog has focus, exiting app causes crash  
11/02/14 12/23/14 done exposed enumerations cause backwards compatability issues; add range checks as needed  
11/11/14 12/23/14 done pressing tab in parts list causes list to lose focus  
12/17/14 12/23/14 done in record player slider, left/right arrows change position by a millisecond, too little to be useful  
01/11/15 01/11/15 done tempo shown in status bar isnít scaled by tempo multiple anymore, as of 1.0.09  
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  
09/18/13 03/08/15 done dynamic looping AKA tags: tag length, tag repeat count, and start tag.  
03/15/15 03/15/15 done any part edit followed by deselecting all parts and then undoing causes crash  
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  
12/21/14 03/20/15 done arpeggios that span chord changes can produce wrong notes; optionally prevent this (adaptive)  
04/13/14 03/21/15 done tap tempo; set tempo via tapping  
03/21/15 03/21/15 done Ctrl+Enter and Ctrl+Backspace shortcuts don't work if an edit control has focus  
03/23/15 03/23/15 done MIDI chase should show target page even if target parameter didn't change  
03/23/15 03/23/15 done MIDI assignments dialog should show current value of each controller  
03/24/15 03/24/15 done MIDI target dialog's column widths don't persist; introduced in 1.0.07  
01/01/15 04/01/15 done optionally fix duplicate notes in recording's output MIDI file, by deferring note offs  
04/01/15 04/01/15 done Alt+A mnemonic doesn't work correctly in property pages; caused by hidden Apply button  
09/12/13 04/05/15 done if dictionary loaded after song, reread song  
02/03/14 04/05/15 done edit chord dictionary; custom editing dialog  
04/08/15 04/08/15 done allow comp chord sizes other than triads and tetrachords  
05/29/15 06/08/15 done disabling always record option after playing with no song open causes unamed file error  
06/02/15 06/08/15 done in SetChord, replace MakeHarmony (for all chords) with GetHarmony for specified chord  
06/10/15 06/10/15 done deleting all chord types from chord dictionary can cause access violation  
06/11/15 06/11/15 done missing MIDI targets for Bass/Lowest Note, Comp/Chord Resets Alternation  
06/11/15 06/11/15 done tap tempo button fails to show MIDI learn; change button's extended style to notify parent window  
06/11/15 06/11/15 done chart view should support navigation via Tab and Shift+Tab  
09/01/14 06/12/15 done change current chord type and root dynamically via MIDI while stopped  
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  
06/10/15 06/15/15 done editing chord dictionary silently reverts all song edits, without updating chart view  
06/11/15 06/15/15 done after reordering chord dictionary, undoing song edit scrambles song's chord types  
06/11/15 06/15/15 done after reordering chord dictionary, song chord(s) on clipboard are invalid and pasting them may crash  
06/11/15 06/15/15 done in chord dictionary dialog, changes should take effect immediately; remove apply button  
06/02/15 06/17/15 done show and edit properties of multiple MIDI assignments at once; same for note mappings  
10/15/13 06/18/15 done print preview horizontally squashes each chord symbol; worsens as font size increases  
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  
06/18/15 06/19/15 done when printing chart, horizontally center it on page  
06/14/15 06/27/15 done chord substitution; switch between compatible chord dictionaries  
06/27/15 07/01/15 done on Win7 laptop, chord bar drop lists clip text due to larger font  
07/05/15 07/11/15 done next/previous chord commands should respect sections and support tagging  
07/24/15 07/24/15 done pressing Alt key steals focus from child dialogs  
07/24/15 07/24/15 done dockbar controls retain focus after bar is hidden  
08/10/15 08/11/15 done access note mapping properties dialog from parts list's context menu or Alt+Enter shortcut  
08/10/15 08/11/15 done add part enable to note mapping properties dialog  
08/10/15 08/11/15 done note mapping properties dialog shows port incorrectly if selected parts differ in terms of port  
06/10/14 08/21/15 done add grouping of harmony parts to prevent static harmony collisions  
08/24/15 08/23/15 done previous pane (Shift+F6) gets stuck on chord bar  
08/21/15 08/25/15 done optionally color keys to show note velocities in piano dialog and output notes bar  
08/21/15 08/25/15 done optionally show numeric input note velocities on piano dialog's key labels  
08/23/15 08/26/15 done optionally send bank change in addition to sending patch change  
04/26/14 08/28/15 done showing piano dialog via main menu mnemonic resets note with P shortcut, if any  
05/18/14 08/28/15 done piano dialog inconsistently shows auto play notes  
06/26/15 08/28/15 done optionally color piano dialog keys to show chord tones and tensions; also in cycle of thirds order  
08/28/15 08/28/15 done in piano dialog, selecting context menu item via mnemonic resets note with corresponding shortcut  
08/28/15 08/28/15 done showing piano dialog highlights all active notes regardless of whether port and channel match  
08/30/15 08/30/15 done incorrect key count bounds test in Output Notes bar's AddEvent  
09/19/13 08/31/15 done optionally constrain harmonizer to nearest chord tone  
11/26/15 12/17/15 done harmony chord constraint behaves unexpectedly with octaves  
12/19/15 12/19/15 done static harmony can cross melody; make crossing optional  
12/21/15 12/23/15 done MIDI devices aren't found if they're present but swapped (plugged into different ports)  
12/21/15 12/23/15 done MIDI devices with multiple input or output ports are incorrectly mapped when patch is reloaded  
12/21/15 12/23/15 done missing MIDI devices dialog should specify which devices are missing and allow retries  
12/19/15 01/03/16 done fix held notes should handle harmony group specially to avoid dropping voices  
12/21/15 01/17/16 done adaptive arpeggios should support repeat  
01/17/16 01/17/16 done transpose input note before passing to GetCompChord; eliminates need for bogus octave shift  
01/19/16 01/19/16 done after copying chords to clipboard, restarting app, and pasting into new song, playback is too fast  
02/29/16 03/01/16 done in output notes bar, add key label options for intervals and scale tones  
02/29/16 03/01/16 done output notes bar's rotate labels setting is forced on during startup, regardless of persistent value  
03/01/16 03/02/16 done UI elements lag behind chord changes due to timer-driven updating; add chord change notification  
10/05/13 03/20/16 done add mapping function for numbers system  
08/21/15 03/20/16 done give harmonizer its own page  
03/26/16 03/26/16 done if CreateEngine displays message box, chord bar's drop lists are blank  
02/06/16 02/06/17 done chord bar's root and bass drop lists behave erratically if song is transposed  
02/06/16 02/07/17 done chord editing doesn't account for song transposition; untransposed root and bass notes are shown  
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  
02/06/17 02/08/17 done show key-appropriate accidentals in chord bar, view context menus, and insert chord dialog  
02/08/17 02/09/17 done changing chord bar target via MIDI needlessly updates patch bar  
02/08/17 02/10/17 done changing scale or mode via MIDI doesn't update chord dictionary dialog  
02/10/17 02/11/17 done sorting chord dictionary doesn't preserve selection correctly  
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