changeset 311:8fa0f36140b4

began writing out my notes on the ROM in an org file.
author Dylan Holmes <ocsenave@gmail.com>
date Sun, 01 Apr 2012 03:20:33 -0500
parents 3d4f60b4a4af
children 2060219691fa
files org/rom.org
diffstat 1 files changed, 24 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/org/rom.org	Sun Apr 01 03:20:33 2012 -0500
     1.3 @@ -0,0 +1,24 @@
     1.4 +#+title: Notes on Deconstructing Pokemon Yellow
     1.5 +#+author: Dylan Holmes
     1.6 +#+email: rlm@mit.edu
     1.7 +#+description:
     1.8 +#+keywords: simulated hearing, openal, clojure, jMonkeyEngine3, LWJGL, AI
     1.9 +#+SETUPFILE: ../../aurellem/org/setup.org
    1.10 +#+INCLUDE: ../../aurellem/org/level-0.org
    1.11 +#+BABEL: :exports both :noweb yes :cache no :mkdirp yes
    1.12 +
    1.13 +* Mapping the ROM
    1.14 +
    1.15 +| ROM address (hex) | Description     | Format          | Example         |
    1.16 +|-------------------+-----------------+-----------------+-----------------|
    1.17 +|                   | <15>            | <15>            | <15>            |
    1.18 +| 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. |
    1.19 +| 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#... |
    1.20 +| 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. |
    1.21 +| 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#... |
    1.22 +| 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. |                 |
    1.23 +| 39462-            | The Pok\eacute{}mon cry data. | Fixed-length (3 byte) descriptions of cries. |                 |
    1.24 +| 40687-            | Species data from the Pok\eacute{}dex: species name, height, weight, etc. | Fixed-length sequences of bytes. See below for specifics. |                 |
    1.25 +| 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♂#... |
    1.26 +|                   |                 |                 |                 |
    1.27 +|                   |                 |                 |                 |