Disassembly of Pokémon Crystal
Go to file
yenatch a24b45ff89 Add constants for hardware registers 2013-02-22 20:02:10 -05:00
audio Dump cry headers 2013-02-11 04:13:31 -05:00
battle Split magikarp length calcs out 2013-02-18 20:14:25 -05:00
extras Export any detected palettes to png by default 2013-02-12 03:40:41 -05:00
gfx Move fonts into gfx/misc 2013-02-22 19:53:14 -05:00
items Split item names and descriptions from main.asm 2013-02-17 02:42:29 -05:00
maps Split map scripts, text, events from main.asm 2013-02-17 01:59:06 -05:00
stats Create individual pokedex entry files 2013-02-05 19:29:20 -05:00
text Split common text out of main.asm 2013-02-17 02:19:49 -05:00
trainers Saner file distribution 2013-02-05 03:56:27 -05:00
.gitignore add swap~ files to .gitignore 2013-02-07 20:11:09 -06:00
INSTALL.md use pypng as a dependency 2013-02-07 20:39:25 -06:00
Makefile Split common text out of main.asm 2013-02-17 02:19:49 -05:00
README.md use pypng as a dependency 2013-02-07 20:39:25 -06:00
bittable2.asm Saner file distribution 2013-02-05 03:56:27 -05:00
compare.sh make compare.sh overwrite the previous hexdump 2012-05-16 13:49:50 -05:00
constants.asm Split out joypad 2013-02-22 20:02:03 -05:00
gbhw.asm Add constants for hardware registers 2013-02-22 20:02:10 -05:00
joypad.asm Split out joypad 2013-02-22 20:02:03 -05:00
landmarks.asm Split landmarks out 2013-02-17 02:56:50 -05:00
main.asm Split out joypad 2013-02-22 20:02:03 -05:00
pokecrystal.asm Add constants for hardware registers 2013-02-22 20:02:10 -05:00
preprocessor.py clean up the preprocessor macro list 2013-01-27 17:45:23 -06:00
requirement.txt use pypng as a dependency 2013-02-07 20:39:25 -06:00
vblank.asm Move VBlank function to a file 2013-02-05 15:40:25 -05:00
wram.asm Split magikarp length calcs out 2013-02-18 20:14:25 -05:00

README.md

Pokémon Crystal

This is a hand-crafted disassembly of Pokémon Crystal.

The source code in this project successfully converts back into a ROM image. All source code is meticulously commented.

Base ROM

The following ROM is required for compiling:

Pokemon - Crystal Version (UE) (V1.0) [C][!].gbc

md5: 9f2922b235a5eeb78d65594e82ef5dde

Eventually this will not be necessary.

Installing

Simple.

sudo apt-get install make gcc bison git python python-setuptools 

# unittest2 is required if using python2.6
sudo easy_install unittest2
sudo easy_install pip

# download rgbds source code
git clone git://github.com/bentley/rgbds.git

# compile rgbds
cd rgbds
make
sudo make install

# check if rgbasm is installed now
which rgbasm

# download pokecrystal
git clone https://github.com/kanzure/pokecrystal.git
cd pokecrystal

pip install -r requirements.txt

make clean && make

Also, there are Windows installation instructions.

Assembling

  • To assemble, first install RGBDS and put it in your path. The version of RGBDS needed is rgbds-linux.

  • Next, copy the Pokémon ROM to this directory as "baserom.gbc".

  • Then run "make" in your shell.

  • This will output a file named "pokecrystal.gbc".

See also

Contributing