6 Commits

Author SHA1 Message Date
e911a20775 midi: improve dump example 2024-09-15 19:45:26 -05:00
86d12c37ed midi: add generator
This adds both a midi generator and a midi type 1 simulator.

While I would have preferred to use an existing tool for this, I found
that timidity++ does not emit pitch wheel events correctly, and I
don't know of another widely-distributed tool that does midi-to-midi
format conversion.

The c++ and python versions were co-developed. I wrote one to test the
other. There is more cleanup to do, but `roundtrip.cpp` produces a
valid type 0 midi file given a type 1 or type 0 midi file as input.
2023-07-01 00:15:53 +00:00
0c34b0634a midi: slow down TIMA interval
This also fixes the ordering of slot reference and slot_ix
deinitialization when turning off notes.
2023-06-27 21:28:20 +00:00
9b57987717 midi: add basic polyphony
Timing is still broken/inconsistent between emulators and I don't yet
understand why.
2023-06-27 18:32:55 +00:00
778138971f midi: play c major scale
TIMA occurs at half the speed predicted in the SCSP manual in
mednafen, but at the correct speed in Kronos. I don't know which is
correct.
2023-06-27 10:15:14 +00:00
c26bdd2630 scsp: incomplete midi example 2023-06-26 01:47:37 +00:00