A collection of Python tools for reverse engineering Pokémon Red and Crystal, including disassemblers, map editors, and graphics converters.
pokemontools is a Python library of reverse engineering utilities for the Pokémon Red and Pokémon Crystal Game Boy games. It provides tools to disassemble game code, edit maps, convert graphics, and extract data from ROMs, enabling analysis and modification of these classic titles. The project was foundational for the early Pokémon disassembly community.
Reverse engineers, ROM hackers, and hobbyists interested in modifying or analyzing the code and data of first and second generation Pokémon games.
It offers a comprehensive, modular toolkit specifically tailored for Pokémon ROMs, with components for disassembly, data parsing, and graphics conversion that were essential before modern tooling existed.
Tools for building and disassembling Pokémon Red and Pokémon Crystal
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
It was instrumental in early disassembly communities, enabling extraction and analysis of Pokémon ROM data, as noted in the README's 2022 note about its role.
Includes a ROM disassembler, map editor, graphics converter, and data parser, covering multiple reverse engineering aspects for Generation 1 and 2 games.
Provides Python interfaces for interacting with games in emulators like vba-linux, allowing for custom scripting and deep ROM investigation.
Generates assembly that can be recompiled with the RGBDS toolchain, facilitating ROM modification and testing, as shown in the crystal.py examples.
The repository is archived with no updates, and tools are written in Python2 with a lazy Python3 port, making it unreliable for current use.
Some scripts don't run at all due to poor porting, and the README admits key tools like gbz80disasm.py have been replaced by modern alternatives.
The README explicitly recommends mgbdis for disassembly and pokecrystal/tools for graphics, indicating this toolkit is obsolete for practical purposes.
Only a few tools were released under an open-source license, which could pose risks for derivative works or commercial projects.