Dragon Warrior III (Game Boy Color)/ROM map

From Data Crystal
Jump to navigation Jump to search

Chip tiny.png The following article is a ROM map for Dragon Warrior III (Game Boy Color).

(Assume every BANK:ADDRESS pair is in hex)

  • Graphics
    • 01:4A2F - Several symbols and characters (N, /, H, M, P, Lv, etc...), compressed
    • 01:4AD1 - Several tiles related to drawing numbers and text borders, compressed
    • 01:5000 - Normal characters in 2bpp format, 176 tiles
    • 01:6000 - Double-height characters in 2bpp format, 352 (176 * 2) tiles
    • 02:5000 - Kanji in 2bpp format, left over from Japanese version presumably, 256 tiles
    • 02:6000 - Double-height Kanji in 2bpp format, same as above, 512 tiles
    • 09:7609 - 'G' and asterisk in 2bpp format, loaded when the Gold or Menu is brought up, 2 tiles

Every bank except for banks 0x42 to 0x49 has its bank stored at 0x4000.

There are 0x18 text banks, specified in a table at 02:4083. Each text bank has a text loading routine that starts at 0x4001. Text is split up into smaller groups of pointers (this is a bit redundant, as the groups could be skipped altogether). Text starts right after the text pointers.

  • Text
    • 0x60 - 0x0E group pointers starting at 0x4fc7, text pointers start at 0x4fe5, contains items and other list items like spells
    • 0x61 - 0x06 group pointers starting at 0x4039, text pointers start at 0x4045
    • 0x62 - 0x15 group pointers starting at 0x4039, text pointers start at 0x4063
    • 0x63 - 0x17 group pointers starting at 0x4039, text pointers start at 0x4067
    • 0x64 - 0x04 group pointers starting at 0x4039, text pointers start at 0x4041
    • 0x65 - 0x0A group pointers starting at 0x4039, text pointers start at 0x404D
    • 0x66
    • 0x67
    • 0x68
    • 0x69
    • 0x6A
    • 0x6B
    • 0x6C
    • 0x6D
    • 0x6E
    • 0x6F
    • 0x78
    • 0x79
    • 0x2A
    • 0x1D
    • 0x1F
    • 0x2F
    • 0x2E (yes 2E is specified after 2F)
    • 0x04
    • 0x29