ocsenave@311
|
1 #+title: Notes on Deconstructing Pokemon Yellow
|
ocsenave@311
|
2 #+author: Dylan Holmes
|
ocsenave@311
|
3 #+email: rlm@mit.edu
|
ocsenave@311
|
4 #+description:
|
ocsenave@311
|
5 #+keywords: simulated hearing, openal, clojure, jMonkeyEngine3, LWJGL, AI
|
ocsenave@311
|
6 #+SETUPFILE: ../../aurellem/org/setup.org
|
ocsenave@311
|
7 #+INCLUDE: ../../aurellem/org/level-0.org
|
ocsenave@311
|
8 #+BABEL: :exports both :noweb yes :cache no :mkdirp yes
|
ocsenave@311
|
9
|
ocsenave@311
|
10 * Mapping the ROM
|
ocsenave@311
|
11
|
ocsenave@311
|
12 | ROM address (hex) | Description | Format | Example |
|
ocsenave@311
|
13 |-------------------+-----------------+-----------------+-----------------|
|
ocsenave@311
|
14 | | <15> | <15> | <15> |
|
ocsenave@311
|
15 | 04495- | Prices of items. | Each price is two bytes of binary-coded decimal. Prices are separated by zeroes. Priceless items[fn::Like the Pok\eacute{}dex and other unsellable items.] are given a price of zero. | The cost of lemonade is 0x03 0x80, which translates to a price of ₱350. |
|
ocsenave@311
|
16 | 045B7-0491E | Names of the items in memory. | Variable-length item names (strings of character codes). Names are separated by a single 0x80 character. | MASTER BALL#ULTRA BALL#... |
|
ocsenave@311
|
17 | 05EDB. | Which Pok\eacute{}mon to show during Prof. Oak's introduction. | A single byte, the Pok\eacute{}mon's internal id. | In Pok\eacute{}mon Yellow, it shows Pikachu during the introduction; Pikachu's internal id is 0x54. |
|
ocsenave@311
|
18 | 27D99-27DFF | Names of the Pok\eacute{}mon types. | Variable-length type names (strings of character codes). Names are separated by a single 0x80 character. | NORMAL#FIGHTING#... |
|
ocsenave@311
|
19 | 38000- | The basic properties and effects of moves. | Fixed-length (6 byte) continguous descriptions (no separating character): move-index, move-effect, power, move-type, accuracy, pp. | |
|
ocsenave@311
|
20 | 39462- | The Pok\eacute{}mon cry data. | Fixed-length (3 byte) descriptions of cries. | |
|
ocsenave@311
|
21 | 40687- | Species data from the Pok\eacute{}dex: species name, height, weight, etc. | Fixed-length sequences of bytes. See below for specifics. | |
|
ocsenave@311
|
22 | E8000-E876C | Names of the \ldquo{}190\rdquo{} species of Pok\eacute{}mon in memory. | Fixed length (10-letter) Pok\eacute{}mon names. Any extra space is padded with the character 0x80. The names are in \ldquo{}internal order\rdquo{}. | RHYDON####KANGASKHANNIDORAN♂#... |
|
ocsenave@311
|
23 | | | | |
|
ocsenave@311
|
24 | | | | |
|