Wohlstand/libADLMIDI

MIDIplay v2

jpcima opened this issue · 0 comments

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...]