LADX-Disassembly
→ View on GitHubAI Summary: LADX-Disassembly is a comprehensive disassembly project for the Game Boy Color game “The Legend of Zelda: Link’s Awakening DX,” enabling developers to build multiple ROM versions in various languages (Japanese, English, German, French) along with their debug symbols. It features tools and documentation for reverse engineering the game engine and understanding data formats, providing a wiki for navigation and contributions. The project also invites community participation to improve its code and documentation.
README
Links Awakening DX Disassembly
Disassembly of one of my favorite games. Taking it easy for now.
It builds the following ROMs:
- azlj.gbc (Japanese, v1.0)
md5: f75874e3654360094fc2b09bd1fed7e8 - azlj-r1.gbc (Japanese, v1.1)
md5: 6d8f9cd72201caabdfd0455a819af9ce - azlj-r2.gbc (Japanese, v1.2)
md5: 2e2596c008d47df901394d28f5bd66ec - azle.gbc (English, v1.0)
md5: 07c211479386825042efb4ad31bb525f - azle-r1.gbc (English, v1.1)
md5: ccbb56212e3dbaa9007d389a17e9d075 - azle-r2.gbc (English, v1.2)
md5: 7351daa3c0a91d8f6fe2fbcca6182478 - azlg.gbc (German, v1.0)
md5: e91fd46e7092d32ca264f21853f09539 - azlg-r1.gbc (German, v1.1)
md5: b0080c2f1919a4bb0ea73b788f4a6786 - azlf.gbc (French, v1.0)
md5: 1043fd167d0ed9c4094e3c9d8e757f1e - azlf-r1.gbc (French, v1.1)
md5: 68242187b65166b5f8225b20e2021659
Additionally, a wiki includes a high-level overview of the game engine, and technical informations on the data formats used throughout the game.
Usage
- Install Python 3 and rgbds (version >= 1.0.0 required);
make all.
This will build both the games and their debug symbols. Once built, use BGB to load the debug symbols into the debugger.
How to contribute
- Fork this repository;
- Find a little piece of code to improve:
- Maybe a typo, a missing constant, an obvious label that could be renamed;
- Or start following a thread (Link’s animations? The island fade-out special effect? Trading items constants?) and document some details along your read;
- You can also look at the known improvements – especially good first issues;
- Submit a pull request.
Having questions, or do you need help? Join the discussion on Discord. You can also read disassembling How-Tos in the Wiki, for some infos about the tools and disassembling processes.
Resources
- Artemis251’s Link’s Awakening Cache: ROM map, maps data format
- Xkeeper’s Link’s Awakening depot: maps tilesets and save format infos
- LALE: level editor, notes on maps data format
- The Legend of Zelda Link’s Awakening /DX Speedrunning Wiki : infos on wrong warps and map data format
- Zelda III Disassembly (archive): good source on Zelda SNES source code, which has many similarities to LADX
- Disassembling Link’s Awakening: a series of blog posts and progress reports
- Discord: LADX
Contributors
Thanks to these people for contributing:
- mojobojo - https://github.com/mojobojo
- kemenaran - https://github.com/kemenaran
- Drenn1 - https://github.com/Drenn1
- Sanqui - https://github.com/Sanqui
- Kyle McGuffin - https://github.com/kcmcg
- Marijn van der Werf - https://github.com/marijnvdwerf
- samuel-flynn - https://github.com/samuel-flynn
- Xkeeper - https://github.com/Xkeeper0
- Vextrove - https://github.com/Vextrove
- daid - https://github.com/daid
- stephaneseng - https://github.com/stephaneseng
- zelosos - https://gitlab.com/zelosos
- tobiasvl - https://github.com/tobiasvl