⚠️ This project is not completed and still under active development
This is a work in progress matching decompilation of Sonic Advance 2
It so far builds the following ROMs:
- sa2.gba
sha1: 7bcd6a07af7c894746fa28073fe0c0e34408022d
(USA) (En,Ja,Fr,De,Es,It) - sa2_europe.gba
sha1: b0f64bdca097f2de8f05ac4c8caea2b80c5faeb1
(Europe) (En,Ja,Fr,De,Es,It) - 🚧 sa2_japan.gba
sha1: dffd0188fc78154b42b401398a224ae0713edf23
(Japan) (En,Ja,Fr,De,Es,It) (Work in Progress)
It can also build:
- sa2.sdl
make sdl
(Linux/MacOS SDL 64bit port) - sa2.sdl_win32.exe
make sdl_win32
(Windows SDL 32bit port) - 🚧 sa2.win32.exe
make win32
(Win32 native port, not functional)
- 🎉 The build is 100% from C files with ~80 functions which currently don't match
- All assembly code extracted, disassembled, and decompiled by hand to their C equivilent
- All songs have been extracted, and documented as matching MIDI files
- All sprite animation frames have been extracted to PNGs and are used to build the matching rom
- All tilemaps (backgrounds) have been documented and had their tiles extracted
- The game compiles to a widescreen port (426x240) for multiple platforms
- The "sub games" (Chao Garden and Collect The Rings) have been disassembled but not yet decompiled
Please see follow these instructions
Join us on discord to get started in helping out
- The Kirby & The Amazing Mirror decompilation uses a very similar codebase, as it was written by the same dev team (Dimps)
- https://decomp.me is a great resource for helping to create matching functions
ldscript.txt
tells the linker the order which files should be linked- For more info, see the FAQs section of TMC
-
JaceCear for his dedication to understanding the internals of the graphics engine, writing tools to extract this data, as well as massive effort in contributing towards the decompilation process, and setting up the PC ports
-
Shout out to @froggestspirit for the drive to set this project up
-
Special thanks to @normmatt for the initial repo setup and sounds decompilation
-
Pokemon Reverse Engineering Tools community for their help with the project, and tooling for GBA decompilations
-
Kermalis for their tool which was used to dump the game midis
-
琪姬 for their exellent work documenting all the quirks of matching midis