Difference between revisions of "User:Buddha^/GSoC2007-ProjectDiary"

Jump to navigation Jump to search
Added some comments on stuff done on 2007-08-19.
(Added comment about getting enveloping to work better.)
(Added some comments on stuff done on 2007-08-19.)
Line 1,179: Line 1,179:
values, not 16-bit big endian as I had assumed before, the enveloping started
values, not 16-bit big endian as I had assumed before, the enveloping started
to sound more authentic like.
to sound more authentic like.
== 2007-08-19 (Sunday) - Some more Apple IIGS MIDI hacking ==
Seems like King's Quest II's starting song (Greensleeves, sound resource 0)
isn't parsed right. Here's its start:
<pre>
00000000          02 -- 02 00 means that it's an Apple IIGS midi sequence
00000001 00 00 c0 16 -- Then some program changes (command 0xC?)
00000005 00 c8 20 00 -- ...
00000009 c2 14 00 c3 -- ...
0000000d 22 00 c4 22 -- ...
00000011 00 c5 22 00 -- ...
00000015 c6 2a 00 c7 -- ...
00000019 26 00 c1 14 -- ...
0000001d 01 b0 07 69 -- Delta-time 01: controller 7, chan 0, val 0x69
00000021 00 b8 07 76 -- Delta-time 00: controller 7, chan 8, val 0x76
00000025 00 b2 07 6d -- Delta-time 00: controller 7, chan 2, val 0x6d
00000029 00 b3 07 7c -- Delta-time 00: controller 7, chan 3, val 0x7c
0000002d 00 b4 07 7c -- Delta-time 00: controller 7, chan 4, val 0x7c
00000031 00 b5 07 7c -- Delta-time 00: controller 7, chan 5, val 0x7c
00000035 00 b6 07 76 -- Delta-time 00: controller 7, chan 6, val 0x76
00000039 00 b7 07 76 -- Delta-time 00: controller 7, chan 7, val 0x76
0000003d 00 b1 07 6a -- Delta-time 00: controller 7, chan 1, val 0x6a
00000041 85 90 40 26 -- BUT HERE IT BREAKS DOWN at 0x41 with byte 0x85
00000045 00 93 4c 26 -- Here are really note on commands (Parsed as controller commands)!
</pre>
So at 0x41 with byte 0x85 it's taken as a first byte of a variable
length quantity (Delta-time here) that's more than one byte long because
the value is over 0x80! After that the data is parsed as controller
commands which it really isn't, it's note on and note off commands.
Why is this this way? What to do? Some bandaid fixing maybe?-)
We'll see...
417

edits

Navigation menu