Gimmick! Sound Driver Format

Discuss NSF files, FamiTracker, MML tools, or anything else related to NES music.

Moderator: Moderators

Post Reply
User avatar
UD2
Posts: 2
Joined: Fri Jan 15, 2021 9:02 pm

Gimmick! Sound Driver Format

Post by UD2 » Fri Jan 15, 2021 10:43 pm

Hi all,
Over the last few weeks, I've reverse engineered the sound driver used in the Japanese release of "Gimmick!" and compiled a document describing the format of the music data. The driver's code is contained entirely in a single bank and quite powerful, so it could be fun to play with in homebrew software.

Of note is the fact that the driver contains full support for 5B noise and envelope despite the game not using either.

I hope this guide can be helpful to someone. If anyone needs clarification on something or spots an error, please let me know!

I've also written a C program which implements a parser for the game's music data and can play back the various music and sound effects by generating register writes and feeding them through Nes_Snd_Emu. It's pretty ugly code ported directly from the original 6502 ASM with some modifications to better match the semantics of C (without changing the behavior of the code). I'd like to clean it up and share it eventually, but if anyone wants to read through it to clarify behaviors now, I'd be happy to provide a copy of the source.

Thanks!
Attachments
sound_driver_format.txt
(20.44 KiB) Downloaded 70 times

Pokun
Posts: 1746
Joined: Tue May 28, 2013 5:49 am
Location: Hokkaido, Japan

Re: Gimmick! Sound Driver Format

Post by Pokun » Sat Jan 23, 2021 3:31 pm

Thank you for sharing your work! I'm always interested in disassembles and reverse engineering, especially for unique things like this. I'm going to to dive into this later.

Post Reply