MIDIplay v2
jpcima opened this issue · 0 comments
jpcima commented
Let's keep track of some implementation notes for a reengineered MIDI core, improved and compatible with permissive licensing. (feel free to add ideas)
Feature
- 4-op channel dynamic switching and allocation
- allow introducing support for more channel types than FM
- support keying notes multiple times
Model
- try breaking down big structures as possible
- reduce the nesting level of structures
- make the header more lightweight
Implementation
- active notes are arrays[128] of linked-lists of note records
- suggestion of providing RT memory alloc substitution by pools. (for note records / linked list, remove complication of static allocating, maintain a free-list in just one place)
Unused things removal
- audio tick handler
[etc...]