Cyberstorm 2 (ADPCM) - how to decode? by The Fifth Horseman at 4:32 PM EDT on July 30, 2010
Long story short, I've been trying to extract music and sound effects from the 1998 Sierra game "Cyberstorm 2". (note: I mean the BGM sequences which are not using audio tracks on the game disc)
First, the digitized sound files - along with other data - were stored in RBX container files. These can be extracted pretty easily -> http://realmofthehorseman.w.interia.pl/derbxer.rar contains an extractor (Windows binary together with C++ source).
After that, I ended up with a bunch of files - eventually finding out that the digitized sound is stored in the files using the .WAX extension.
Those appeared to have some form of headers. This utlity -> http://realmofthehorseman.w.interia.pl/waxscanner.rar (Windows binary and C++ source) reads the headers of any WAX files in the current directory and outputs them to a CSV file, converted to a human-readable format. A full output of all headers from the files is here -> http://realmofthehorseman.w.interia.pl/log.rar
The first dword value after the header appears to dictate the compression format - a value of 1 relates to uncompressed 8-bit PCM data, whereas a 4 means some kind of ADPCM implementation.
An associate of mine had the idea to try opening them as VOX files - this produced distorted but more or less legible output (the volume was off in more than a few places, though).
Digging through the main game executable, I found exact copies of the IMA ADPCM standard index and step tables. The nibble order appears to be top nibble, then bottom nibble (same as with VOX).
So far, I've been unable to create a decoder for this format; any help in the matter of decoding this format through other means would be appreciated.
I've uploaded several of the WAX files here for testing purposes: http://www.mediafire.com/?e0g2igc9443lv8j