Final Fantasy - Mystic Quest

ROM Map

The ROM Map describes various offsets, some could be broken down further and just haven't been expanded up on, but data structures are provided for those linked to.

Offset Category Description
007140 - 0071BC Pointer / Map Sprite Build Pointers
007ACF - 007DBF Pointer / More Sprite Builders (Monsters?)
007DCF - Pointer / Monster Sprite Map Pointers
007E4F - 007FBF Unused / Free Space / 未使用領域
007FC0 - 007FD5 Header / Game's Title
013A55 - 013BFF Unused / Free Space / 未使用領域
014275 - 0146FE Monster / Enemy Stat Offsets
0146FF Unused / Free Space / 未使用領域
017ED2 - 017FFF Unused / Free Space / 未使用領域
018BF5 Text / Shop Text
0195D9 Text / "New Game"
01953A Text / "Save Completed"
0196A4 Text / "Empty!"
019A65 Text / Status Screen
019D3F Text / Custom Screen
01A003 Text / "Give Up?"
01A336 Text / Name Selection and stuff
01A412 - 01A431 Unused / Free Space / 未使用領域
01AB0C Text / Menu Text
01B10E Text / Battle Menu
01B80D - 01BA85 Text / Credits
01BC85 - 01CD84 Text / Text Block 1
01CE8D - 01CF36 Text / Text Block 2
01D0B7 - 01D2BC Text / Text Block 3
01D2D2 - 01D635 Text / Battle Script
01D73A - 01FC50 Text / Text Block
020000 - 0217FF Graphic / Items
021800 - 02183F Pointer / Item Tile Pointers (Palette)
0210C0 - 027FFF Graphic / Sprite Bank 1
028000 - 028C7F Palette / Palette for Sprite Bank 2
028C80 - 02F280 Graphic / Sprite Bank 2
02F360 - 02F72A Pointer / Palette Pointers for Bank 2
02FED5 - 02FFFF Unused / Free Space / 未使用領域
030000 - 033FC0 Graphic / Something to do with world map data
033FC1 - 037BC0 Graphic / Spell Animations
037BC1 - 037CD4 Graphic / Spell Movement Animation? / Pointers?
037CD5 - 037FFF Unused / Free Space / 未使用領域
038000 - 03802F Palette / Text and Menu Palettes Four Colors each
03D7F4 - 03DDC3 Palette / Sprite Palettes (8 colors)
03DDC4 - 03EB43 Graphic / World Map Sprites (FIREBURG)
03F837 - 03FFFF Unused / Free Space / 未使用領域
040000 Pointer / World Map Tile Config?
041408 - 0415ED Pointer / Hill of Destiny Tile Configuration?
047DBE - 047FFF Unused / Free Space / 未使用領域
048000 - 04845F Palette / Monster & Background Palettes
048460 - 0485F4 Pointer / Enemy Sprite Pointers
0485F5 - 04FFA4 Monster / Enemy Battle Sprites and damage #'s
050618 - 057FF7 Monster / Boss Sprite Bank 1
05971C - 05EB4B Monster / Boss Sprite Bank 2
060EDA - 060F11 Text / Title Screen Text
060F14 Pointer / VRAM Title Screen Pointers
062A4C - 0636EB Graphic / Title Screen Tiles
0636EC - 06372B Palette / Title Screen Palettes?
063ED0 - 06411F Text / Map Locations
064120 - 06441F Text / Item Names
064420 - 064B9F Text / Attack Names
064BA0 - 0650BF Monster / Enemy Names
06BDAE Audio / SPC Pointers
06BDFF Audio / BRR Pointers
06BEA1 - 06C1E1 Audio / Instrument Sample Indexes Instrument List
06C201 Audio / BRR Samples
0750FD Audio / SPC Sequences Silence
078573 Audio / SPC Sequences Battle 1
078B68 Audio / SPC Sequences Battle 2
079320 Audio / SPC Sequences Battle 3
079B73 Audio / SPC Sequences Victory!
079E0A Audio / SPC Sequences World
079F87 Audio / SPC Sequences Fossil Labyrinth
07A29A Audio / SPC Sequences Dungeon of Ice
07A84E Audio / SPC Sequences Lava Dome
07AE4E Audio / SPC Sequences Mountain Range of Whirlwinds
07B20B Audio / SPC Sequences Dungeon and Waterfall
07B504 Audio / SPC Sequences Middle Tower
07B779 Audio / SPC Sequences Last Castle
07BF2E Audio / SPC Sequences Beautiful Forest
07C2F8 Audio / SPC Sequences Shrine of Light
07C743 Audio / SPC Sequences City of Earth ~ Foresta
07CC41 Audio / SPC Sequences City of Ice ~ Aquaria
07D151 Audio / SPC Sequences City of Fire ~ Fireburg
07DA03 Audio / SPC Sequences City of Wind ~ Windaria
07DF42 Audio / SPC Sequences Rock 'n' Roll
07E410 Audio / SPC Sequences Rock Theme
07E810 Audio / SPC Sequences Fanfare of Friendship
07E8C2 Audio / SPC Sequences Mystic Ballad
07EAAB Audio / SPC Sequences Hill of Fate
07EEDD Audio / SPC Sequences Mystic Quest
07F473 Audio / SPC Sequences Ending
07FBD3 Audio / SPC Sequences The Crystal
                                                                                                              |

Data Tables

Monsters

Below are the pointers to each monsters data, each en

Value Monster Name
14475 Brownie
14483 MintMint
14491 Red Cap
1449F Mad Plant
144AD Plant Man
144BB Live Oak
144C9 Slime
144D7 Jelly
144E5 Ooze
144F3 Poison Toad
14501 Giant Toad
1450F Mad toad
1451D Basilisk
1452B Flazzard
14539 Salamand
14547 Sand Worm
14555 Land Worm
14563 Leech
14571 Skeleton
1457F Red Bone
1458D Skulder
1459B Roc
145A9 Sparna
145B7 Garuda
145C5 Zombie
145D3 Mummy
145E1 Desert Hag
145EF Water Hag
145FD Ninja
1460B Shadow
14619 Sphinx
14627 Manticor
14635 Centaur
14643 NiteMare
14651 Stooney Roost
1465F Hot Wings
1466D Ghost
1467B Spector
14689 Gather
14697 Beholder
146A5 Fangpire
146B3 Vampire
146C1 Mage
146CF Sorcerer
146DD Land Turtle
146EB Adamant Turtle
146F9 Scorpion
14707 Snipion
14715 Werewolf
14723 Cerberus
14731 EdgeHog
1473F Sting Rat
1474D Lamia
1475B Naga
14769 Avizzard
14777 Gargoyle
14785 Gorgun
14793 Minotaur Zombie
147A1 Phanquid
147AF Freezer Crab
147BD Iflyte
147CB Stheno
147D9 Chimera
147E7 Thanatos
147F5 Stone Golem
14803 Skullerus Rex
14811 Behemoth
1481F Minotaur
1482D Squidite
1483B Snow Crab
14849 Jinn
14857 Medusa
14865 Gidrah
14873 Dullihan
14881 Flameosaurus Rex
1488F Ice Golem
1489D Dual Headed Hydra
148AB Twin Headed Hydra
148B9 Pazuzu
148C7 Zuh
148D5 Dark King

Data Structures

Monster Structure

The monster structure is 14 bytes long.

00 - 01  HP
02       Strength
03       Defense
04       Speed
05       Magic
06       Strength Element
07       Strength Element
08       (Unknown)
09       (Unknown)
10       (Unknown)
11       (Unknown)
12       Weak Element
13       Counter %

Text

Text Compression

The premise is simple. 8x8 tiles programmed in binary, with 0 representing transparent and 1 representing white.

for example, 53= 01010011. This repeats itself 8 times vertically to create a tile.

There will be two value for each row. The transparent, and the shown. Simple rule: Both must add up to FF. If you see a tile where something adds up to more than that, then it isn't a tile.
To see the tiles, use a hex editor of some kind. Set the row width to 64 in decimal, or 40h. The values for a tile will then line up vertically.

I will list the starting values for said tiles. A tile, lined up with width as told, will look like this:

t1v1
t2v2
t3v3
t4v4
t5v5
t6v6
t7v7
t8v8

t = transparent, v = visible

Here are the starting bytes to each tile found so far in said format.
Compressed Tiles (For use in bottom spot of screen):

$384a4: Auto (Two Tiles)
$384a8: Manual (Three Tiles)
$38630: Top Left Corner
$38632: Bot Left Corner
$38634: Top Right Corner
$38636: Bot Right Corner
$38638: Vertical Line
$3863a: Horizontal Line
$3863c: Horizontal to right of name (One pixel less on left side)
$3863e: End (Three Tiles)
$3864a: Compressed L
$3863c: Compressed E
$3863e: Compressed V

The following only work in talking text:

$38830: g
$38832: j
$38834: p
$38836: q
$38838: y
$3883A: h

The tiles for shrunk (see: level on bottom) numbers begin at $38A30 and goes from 0 to 9.
Tiles $38A44 - $38A4E are unknown usage.
Tiles $38A50 are full sized, from 0-9 and then A-F (F = $38A6E).
Tiles starting from $38C30 - $38C6E are G-Z (Z = $38C56), followed by a-l (l = $38C6E).
Tiles starting with $38E30 - $38E4A are tiles for m-z. For the $38Exx group:

4c = !
4E = ?
50 = ,
52 = '
54 = .
56 & 58 = "

The others will be decoded soon, but should be punctuation, probably running through $38E6E.

Audio

Sample Index

Value Instrument
00 Nothing
01 Guitar
02 Kick Drum
03 Brass Section
04 Distortion Guitar
05 Synth Bass
06 Flute 1
07 Hihat
08 Flute 2
09 Rock Organ
0A Electric Bass
0B Snare Drum (Loop)
0C Strings
0D Conga Drum
0E Trumpet
0F Xylophone
10 Cymbal Crash
11 Timpani
12 Wood Block

SPC Sequence Samples

Value Instrument
00 Triangle Waveform
01 Triangle Waveform (Synth Church Organ)
02 Square Waveform
03 Saw Waveform (Overdrive)
04 Saw Waveform (Synth Trumpet)
05 Square Waveform (Overdrive)
06 Saw Waveform (?)
07 Triangle Waveform (Bell)
08 Triangle Wwaveform (Overdrive)
09 Saw Waveform (Overdrive)
0A Saw Waveform (Synth Bass)
0B Sine Waveform (Flute)
0C-3F Nothing

SPC Commands

D2 xx      change instrument volume to xx
D4 xx      Pan= 00-7F Left, 80-FF Right

E2               
E3         
E4 xx      Change instrument octave to xx
EA xx      Change instrument to xx
EB xx      
EC xx yy   
ED xx      
EE xx      

F1
F2      
F3 xx      Set tempo to xx (slower?)
F4 xx      Set tempo to xx (faster?)
F5 xx      Set echo to xx
F6 xx
F7 xx yy
F8 xx      Set global sequence volume to xx
F9
FA
FB
FC
FD xx

BRR Pointers

Pointer Description
01C20D
21C80D
2ECC0D
08E80D
FFF50D
5DFA0D
FB000E
300D0E
16140E
4E140E
06220E
65310E
A24D0E
84550E
C45C0E
6E690E
4A770E
F3810E

Information described by JCE3000GT.