DoDonPachi Arrange

First, you must generate the modified romset using the utility provided. You
must unzip a ddonpach romset and a ddonpachj romset into the same folder.
System-dependent steps (provided below) must be performed for patching. After the
ddonpachj folder is modified, just move it back to your MAME folder (and optionally
re-archive it), and you are good to go. If for any reason you wish to revert the
romset, you can simply delete the modified files in the folder and rename
[filename].bak to the original filename.

Apparently if you re-compress the folder, you will have to move the .bak
file out of the folder, or MAME will just load the original DoDonPachi ROMs.

Windows:
You have two options: You can either compile from source, or drag your ddonpachj folder
over the ddpa.exe application in the win folder.

Mac OS X:
You have two options: You can either compile from source, or drag your ddonpachj folder
over the DDPA.app application in the osx folder.

Source compile (for UNIX-based):

cd src
make
./ddpa [ddonpachjfolder]

Hashes

ROM

CRC

SHA1

u27.bin

44b899ae

798ec437d861b94fcd90c99a7015dd420887c788

u26.bin

727a09a8

91876386855f19e8a3d8d1df71dfe9b3d98e9ea9

u51.bin

0f3e5148

3016f4d075940feae691389606cd2aa7ac53849e

u62.bin

42e4c6c5

4d282f7592f5fc5e11839c57f39cae20b8422aa1

eeprom-ddonpach.bin

2df16438

4881b70589a97e2420feb6d6e6737273beeff303

Developers Notes

I developed this arrange over the course of approximately one week, and it's what
I spent the majority of my time that week doing. The day before release, I told
myself I wasn't sleeping until I had a build worthy of release. I cracked open
a few cans of Dr. Pepper, and even one of those 5 Hour Energy things, and I dug
into the remaining issues and managed to fix them all in time for me to get a
decent nap that afternoon.

Anyhow, you might be curious about how I actually went about developing this.
Seeing as I'm not a CAVE employee, I don't actually have the source code. Instead,
I relied on my competancy as a reverse engineer to find all of the things I needed
to change in order to make the game mechanics how I want. Now, you might assume
I used a compiler, or even an assembler. You'd be dead wrong! I wrote out the
assembly code I wanted to insert, then I referred to the M68000 User Manual to
manually assemble every instruction. After a while, I actually learned a few
opcodes (the machine-code representation of the human-readable code) by heart,
so I mostly didn't need the manual for the last half or so of development.

For actual reverse engineering, I used the fantastic IDA Pro, in combination with
the debugger in MAME (utilizing both the cheat functionality to find essential
memory addresses, as well as breakpoints and watchpoints). To insert my code, I
used a plain ol' hex editor (0xED, for those who care).

A couple friends on IRC joked around at the possibility of this arrange being
bootlegged onto a real DoDonPachi board. If you ever actually do this, please
let me know about it! I would love to hear such a flattery. If you manage to find
one in an arcade, then please let me know; not so I can take action, but
because that would be amazing!

The development of this arrange was by far one of the most fun and rewarding things
I've done in a long time, and I hope to try my hand at arranging another game in
the future. Let me know if you have any ideas!