The Complete Guide to Phantasy Star III

ROM Hacking



Note: This is a very unfinished section. I started it then decided to instead write a ROM editor and never came back around to documenting everything here.

If you're interested in hacking a Phantasy Star III ROM you have three options:

1) Read this guide, download a hex editor, and give yourself eye strain looking at raw game data.

2) Learn 68000 assembly and use this (quite excellent) disassembly of the ROM: https://github.com/lory90/ps3disasm - the documentation there is also better than what I have here

3) Download Aridia:

Aridia

Everything documented here can be edited in Aridia.


ROM Map

The table below is a map of the Phantasy Star III ROM. The goal is to identify where everything is stored, the "?" sections are blocks of unidentified data so there's obviously a lot to uncover yet. The "Empty space (FF)" are just that, blocks of empty space.

Starting Address Ending Address Description
00000 000FF ?
000F0 001FF ROM header - see https://en.wikibooks.org/wiki/Genesis_Programming#ROM_header for detailed information about Genesis ROM headers
00200 1E033 ?
1E032 1E4BD Character data
1E4BE 1E575 ?
1E575 1F561 Level (XP) tables
1F562 1F6CE ?
1F6CF 1F9DF Dialog text
1F9E0 25F0D ?
25F0E 31133 Game script
31134 31155 ?
31156 33996 Palettes
33997 3876F ?
38770 387E0 Item data
387E1 387EF ?
387F0 39186 Weapon & armor data
39187 39241 ?
39242 398AD Item, weapon, armor names
398B0 39A29 Technique names & data
39A30 3A5F0 Palettes
3A5F1 3BE13 Enemy data
3BE14 3C367 Enemy names
3C368 3D909 ?
3D90A 3DACF Battle messages
3DAD0 3DD89 ?
3DD8A 3E57D Shop & save/load messages
3E57E 3EEBD ?
3EEBE 3EF81 Shop data
3EF82 3FFFF ?
40000 401E2 Save/load messages (from title screen)
401E3 41BB1 ?
41BB2 41FFF Empty space (FF)
42000 49423 ?
49424 49FFF Empty space (FF)
4A000 4A5EA ?
4A5EB 4AFFF Empty space (FF)
4B000 4B133 ?
4B134 4B3FF Empty space (FF)
4B400 4BFCB ?
4BFCC 4BFFF Empty space (FF)
4C000 4CC6F Landen map data
4CC70 4DFFF Empty space (FF)
4D000 4D86B Aridia map data
4D86C 4DFFF Empty space (FF)
4E000 4E96F Aquatica map data
4E970 4EFFF Empty space (FF)
4F000 4F99B Draconia map data
4F99C 4FFFF Empty space (FF)
50000 50ADE Terminus map data
50ADF 50FFF Empty space (FF)
51000 51AE6 Frigidia map data
51AE7 51FFF Empty space (FF)
52000 52BA3 Elysium map data
52BA4 57FFF Empty space (FF)
58000 5947B ?
5947C 59FFF Empty space (FF)
5A000 5A677 ?
5A678 5AFFF Empty space (FF)
5B000 5B357 ?
5B358 5B3FF Empty space (FF)
5B400 5BD77 ?
5BD78 5BFFF Empty space (FF)
5C000 5C457 ?
5C458 5CFFF Empty space (FF)
5D000 5DC93 ?
5DC94 5DFFF Empty space (FF)
5E000 5E853 ?
5E854 5EFFF Empty space (FF)
5F000 5F1FF ?
5F200 5F7FF Empty space (FF)
5F800 5FC0F ?
5FC10 5FFFF Empty space (FF)
60000 62963 ?
62964 629FF Empty space (FF)
62A00 65D47 ?
65D48 65FFF Empty space (FF)
66000 66019 ? (All zeros)
66020 66F5F Font tiles
66F60 671FF ?
67200 672A1 Status screen font tiles
672A2 672BF ?
672C0 673FF Border tiles
67400 6773F Credit font tiles
67740 67FFF ?
68000 68BFF "Generations of Doom" logo tiles
68C00 6FFFF Empty space (FF)
70000 77159 ?
7715A 77FFF Empty space (FF)
78000 78C0D ?
78C0E 78FFF Empty space (FF)
79000 7C379 ?
7C37A 7FFFF Empty space (FF)
80000 97563 ?
97564 9774B Empty space (FF)
9774C A581F ?
A5820 A5B8F Empty space (FF)
A5B90 BF857 ?
BF858 BFC6F Empty space (FF)
BFC70 BFFFF ?


Credits

Massive thanks to mr2 and TheKomrade for their research into Phantasy Star III ROM hacking.



Related

>