From: Maarten t. H. <ma...@tr...> - 2003-07-07 21:25:39
|
On Sunday 06 July 2003 22:45, Joost Yervante Damad wrote: > I'm currently working on LADSPA plugins based on the audio devices of > openMSX. Cool! Would this be usable to create replayers for MSX formats later? > Currently I have SCC working (single channel, since polyphony is done by > the LADSPA-host). In order to test it in a > more fun way then the simple Sine I coded, I'm looking for someone/where > who made a collection of SCC samples with a name. If I can't find such a > thing, I'll patch openMSX to dump SCC samples for me :) I never looked into them, but I would expect SCC music editors such as SCC Musixx and SCC Blaster to include a instrument library. Or at least the ability to rip instruments from existing songs. But since dumping from openMSX is easy, why not do that as well? You could write a console command for it. On real MSX, you can reset the MSX and then look inside the instrument memory areas to rip the instruments. I had a quick peek in the code, but openMSX doesn't seem to support this yet. Don't use a monitor program by the way, since reading one of the higher addresses in that 256-byte area will trigger the wave form rotate/distortion feature. I always used good old BASIC. You could also take a hex editor and look in some Konami ROM files. The wave forms are typically in a table one after another. They can be spotted if you have an eye for patterns. In later games Konami seems to have a standard format for their "music page": at the 0x2000 (8K) boundary at which the page starts, there are three JPs in a row (C3 ll hh), with addresses in [0x6000..0x8000). If my memory is correct, there is a start song/effect, stop and the interrupt routine (not sure which order). In that same page you can find the instrument data. Some tables I found: Nemesis 2: 0x0000:8080 Nemesis 3: 0x0001:5B44 King's Valley 2 MSX2: 0x0000:92A0 Quarth: 0x0000:98DC The page starting at offset 0x0000:8000 seems to be popular, for the 128K ROMs at least. And usually the instrument table is directly after a pointer table, which are easy to recognise because most of them are sorted, meaning a lot of equal high bytes in a row. Bye, Maarten |