Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
tree: e124090961
Fetching contributors…

Cannot retrieve contributors at this time

173 lines (116 sloc) 4.1 kb

Linux

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

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

# 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

make clean; make

Windows

Follow these instructions to install pokecrystal on Microsoft Windows. Once installed, you can run make to compile main.asm into a ROM.

Installing cygwin

Cygwin provides a virtual linux environment on Windows systems. Just get setup.exe: http://cygwin.com/install.html

During the install:

  1. Keep the defaults.

  2. It shouldn't matter which mirror you choose, but http://mirrors.kernel.org seems to work.

  3. Select the packages listed below.

You'll be presented with a package selection screen. Select the following packages (hint: there's a search box).

  1. python (installed by default)

  2. gcc and gcc-core (under devel)

  3. byacc (under devel)

  4. make (under devel)

  5. wget (under web)

  6. git (under devel)

  7. mercurial (optional, if you wish to work with pokered as well)

Let cygwin finish the install. Might take a sec while all packages are downloading.

Installing other requirements

Launch cygwin (bash). Maybe you know your way around the linux terminal. If not, a crash course:

# list files in current directory
ls

# show current directory
pwd

# change directory
cd /away/we/go

The next step is building rgbds, the GB assembler. Type:

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

# compile rgbds
cd rgbds
YACC=byacc make

# make rgbds accessible for all time
export PATH=$PATH:`pwd`
echo "export PATH=$PATH:`pwd`" >> ~/.bashrc

# check if rgbasm is installed now
which rgbasm

If that fails (it shouldn't), you can download binaries like so:

# download rgbds binaries
wget http://diyhpl.us/~bryan/irc/pokered/rgbds/rgbds.zip --output-document=rgbds.zip

# unzip
unzip rgbds.zip

# make rgbds accessible for all time
export PATH=$PATH:`pwd`/rgbds
echo "export PATH=$PATH:`pwd`/rgbds" >> ~/.bashrc

# clean up that zip file
rm rgbds.zip

The next step is to install unittest2, unless you installed python2.7 earlier:

cd ~
wget http://peak.telecommunity.com/dist/ez_setup.py
python ez_setup.py
easy_install unittest2

Now you should be able to build pokecrystal for the first time:

cd ~
git clone https://github.com/kanzure/pokecrystal.git
cd pokecrystal

The final requirement is downloading a certain Pokemon Crystal ROM:

Pokemon - Crystal Version (UE) (V1.0) [C][!].gbc
md5: 9f2922b235a5eeb78d65594e82ef5dde

Save it as C:\cygwin\home\(your username)\pokecrystal\baserom.gbc. You can check the md5 of a file by typing md5sum baserom.gbc.

To compile the ROM from ASM source, type:

make

That will take between 3 and 15 seconds, depending on your computer. If you see cmp baserom.gbc pokecrystal.gbc as the last line, the build was successful! Rejoice!

Now you may try messing around with main.asm, or just do whatever you wanted to.

To build again, you should use the following command:

make clean; make

Feel free to ask us on nucleus.kafuka.org #skeetendo if something goes wrong (remember to tell where)! Don't know how to use IRC? Try mibbit or something.

Contributing changes

Setting up a public git repo

For those uninitiated with git-based collaboration, and who do not want to setup a server to host git repositories, use GitHub. Register on GitHub and follow this tutorial to setup ssh keys. Then go to the pokecrystal repo and click the giant "fork" button. This will bring you to a page with some instructions regarding git remote (follow these steps in your pokecrystal folder).

Jump to Line
Something went wrong with that request. Please try again.