view README @ 620:1b52b14868d3 tip

merge.
author rlm <rlm@aurellem.org>
date Sun, 07 Feb 2016 23:16:04 -0800
parents b90c645dac33
children
line wrap: on
line source
1 This is vba-clojure, by Robert McIntyre (rlm@mit.edu).
3 It is three things:
5 - vba-rerecording (http://code.google.com/p/vba-rerecording/),
6 modified compile on GNU/Linux, as well as JNI bindings.
8 - A functional clojure interface to the emulator supported by JNI
9 bindings.
11 - The "Pokemon Yellow Total Control Hack" code
12 (http://aurellem.org/vba-clojure/html/total-control.html), which
13 uses the clojure bindings.
16 * License
18 vba-rerecording is licensed under the GPL version 2, and I also
19 release all the code I have written relating to this project under the
20 GPL version 2.
22 NOTE that the images under the /font directory and the mid files in
23 the /music directory were taken from http://www.zophar.net/ and
24 http://www.everyponysings.com/ respectively and are the only things in
25 this repository that are not under the GPL.
28 * How to Compile
30 ** Long version
32 Compilation follows 5 steps:
34 1. Get java libraries
35 2. Generate java JNI header and bindings
36 3. generate autotools scripts
37 4. configure
38 5. make
40 First, run the dl-libs.sh script to download the tritonus jars (or
41 otherwise obtain them), which are used in processing sound from the
42 gameboy. You must have wget installed for the dl-libs.sh to work.
44 Second, you must generate the java JNI header and bindigs. cd to the
45 "java" directory and run `ant` to do this.
47 Third, generate the autotools scripts which the project requires by
48 running `autoreconf -i`. I use autoreconf version 2.69.
50 Fourth, run the "configure" script that was just produced to check for
51 dependencies and proper environment variables. Be sure to have the
52 environment variables JAVA_INCLUDE_PATH and JAVA_INCLUDE_PATH2
53 properly defined. "jni.h" should be in the directory referenced by
54 JAVA_INCLUDE_PATH, and "jni_md.h" should be in the directory
55 referenced by JAVA_INCLUDE_PATH2. On my system,
56 JAVA_INCLUDE_PATH=/usr/include and
57 JAVA_INCLUDE_PATH2=/usr/include/linux.
59 finally, run `make` to build the library. You may optionally install
60 the library using `make install`.
62 ** Short Version
64 ./dl-libs.sh
65 cd java
66 ant
67 cd ..
68 autoreconf -i
69 ./configure
70 make
71 make install
73 To fine tune the installation, pass different flags to the configure
74 script, in particular the --prefix flag. run `./configure --help` to
75 see available options and defaults.
77 * Using the clojure code.
79 If you're interested in hacking on the clojure code, then once you've
80 completed the compilation instructions above, you will need to launch
81 clojure (however you do it) and include the following things on your
82 classpath (all directories are relative to project root).
84 /clojure --- the clojure source files
85 /java/dist/* --- JNI bindings
86 /java/lib/* --- tritonus libs
88 You will also need to put the compiled library file produced from the
89 "How to Compile" section in a place where it can be loaded as a
90 dynamic library. You can do this by running `make install` where you
91 had previously configured the package to install in a system
92 directory, or you can use the LD_LIBRARY_PATH to point your system to
93 the directory containing the library file.
96 * Bugs
98 Please let me know if you find any bugs, or have any comments, at
99 rlm@mit.edu.