Jun 29, 2006 at 6:29 AM
Join Date: Jun 18, 2006
Location: Montreal, Canada
Posts: 581
Age: 39
So I just stumbled on sounds.
Code
0x0008F940 is where sound is loaded. A CALL is made to a function which loads sounds and a few parameters are pushed on the stack. Each call pushes (in order) the sound ID, the length (multiplied by 0x70; this is usually 1 or 2), and the offset in the executable where to load the sound from.
Data
Tracing the offset back to its source, we find neat little blocks of data 0x70 and 0xE0 bytes in length. I'm not sure what format they're in, but a bit of poking around can turn up some interesting findings. They always start by the same 4-byte header, then the rest, I dunno. Seems like simple PCM sound.
I've managed to give my new weapon a sizzling after-sound. Knock yourselves out. I'm gonna give the function CALLed by 8F940 a look and see what it does. Might give some insight on what's what...
Code
0x0008F940 is where sound is loaded. A CALL is made to a function which loads sounds and a few parameters are pushed on the stack. Each call pushes (in order) the sound ID, the length (multiplied by 0x70; this is usually 1 or 2), and the offset in the executable where to load the sound from.
Data
Tracing the offset back to its source, we find neat little blocks of data 0x70 and 0xE0 bytes in length. I'm not sure what format they're in, but a bit of poking around can turn up some interesting findings. They always start by the same 4-byte header, then the rest, I dunno. Seems like simple PCM sound.
I've managed to give my new weapon a sizzling after-sound. Knock yourselves out. I'm gonna give the function CALLed by 8F940 a look and see what it does. Might give some insight on what's what...