summaryrefslogtreecommitdiff
path: root/INSTALL.md
diff options
context:
space:
mode:
Diffstat (limited to 'INSTALL.md')
-rw-r--r--INSTALL.md172
1 files changed, 172 insertions, 0 deletions
diff --git a/INSTALL.md b/INSTALL.md
new file mode 100644
index 000000000..d2cf8a767
--- /dev/null
+++ b/INSTALL.md
@@ -0,0 +1,172 @@
+# Linux
+
+```bash
+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)
+
+ 8. `vim` (optional, a simple terminal text editor)
+
+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:
+
+```bash
+# list files in current directory
+ls
+
+# show current directory
+pwd
+
+# change directory
+cd /away/we/go
+```
+
+The next step is building `rgbds`, the GB compiler. Type:
+
+```bash
+# 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:
+
+```bash
+# 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:
+
+```bash
+cd ~
+wget http://peak.telecommunity.com/dist/ez_setup.py
+easy_install unittest2
+```
+
+Now you should be able to build `pokecrystal` for the first time:
+
+```bash
+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:
+
+```bash
+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:
+
+```bash
+make clean; make
+```
+
+Feel free to ask us on nucleus.kafuka.org #skeetendo if something goes wrong
+(remember to tell where)!
+
+# 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](https://help.github.com/articles/generating-ssh-keys). Then go to [the pokecrystal repo](https://github.com/kanzure/pokecrystal) 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).