# a task breakdown in possibly absurd detail because adhd - [ ] drums - [ ] turn on the drums - [ ] open midi-keys - [ ] hit some drums - [ ] open a text file `drum_mapping.md` - [ ] write in text file which midi notes are which drums - [ ] write the encode/decode function for drums - [ ] print to console what the letters are in base-2 - [ ] save the notes into `notes_cheat_sheet.md` - [ ] write the drum hot loop - [x] wind synth - [x] add min length of note - [x] take into account velocity - [x] change `decode` and `encode` to both be the new alt variant - [x] add punctuation to decode/encode - [x] refactor the hot loop - [x] fix the output of cheat sheet to be correct with new variant - [x] print to console what the letters are in base-7 / notes - [x] save the notes into `notes_cheat_sheet.md` - [x] experiment with mode where shift and caps lock are keys I can press - [ ] composing - [ ] open musescore - [ ] create a new score with 3 parts (wind synth, keyboard synth, drum set) - [ ] enter the wind synth notes for "hello" as straight quarternotes - [ ] experiment with rhythms on the wind synth notes - [ ] ui - [ ] make default size larger - [ ] fix disconnect/reconnect bug - [ ] recreate disconnect/reconnect bug - [ ] add print statements into some of the queue receives - [ ] debug the bug - [ ] make display of typing state - [ ] expose typing state to the UI - [ ] show current bytes in buffer (raw) - [ ] show current bytes as note names - [ ] show remaining partials as: next note, list of things you can type from there (in alphanum order) - [ ] improvements - [ ] swap out printlns for logging