Vagrant Story/RAM map

From Data Crystal
Jump to navigation Jump to search

Chip tiny.png The following article is a RAM map for Vagrant Story.

This is a list of VRAM addresses from the US version of the game (SLUS-010.40).
This is how memory is organised when in game. A different memory layout is used when the opening
sequence and title screen are being displayed. The RAM map is split into two parts the first deals
with data while the second part deals with code, each part is independantly listed sequentially
though the data and code are actually interweaved.
Warping to Rooms:
      800F1AB0 = Zone ID (Rooms List)
      800F1AB1 = Room ID
      800F1A48 = Trigger Load Room(when this = 0x02 then the game loads the new room)
Data: 8004B9DC: 256 x skills ($34 bytes each)
      8005FFD8: 64-bytes of 1-bit Map Tracking flags
      80060F68: Gadget Bag Misc Items ($100 Bytes)
      80061958: 64 x 1-byte Chest Tracking flags
      800E8508: 64-bytes of 1-bit Map Tracking flags bit-masks
      800E8660: SHP LBA Sector Offsets (Relative to LBA 00.SHP 0x00017318)
      800E9C30: 256 x 1 Byte Containing Script Opcode Lengths (Length includes the opcode byte)
      800EB5C8: MENUX.PRG LBA Sector address and Number of sectors
      800EB608: GIM LBA Sector address and Number of sectors
      800E9D30: 256 x 4 Byte Script Opcode Function Pointers
      8011F9F0: Actor data list pointer
      8011FA10: Ashley Riot Character Data
                8011FA10: CurrentMode (NormalMode=0, BattleMode=1)
                8011FA15: EquippedWeaponCategoryID
                8011FA2C: ptrName
                8011FA34: ptr00ShpHdr
                8011FA38: ptrWeaponWEPHdr
                8011FA3C: ptr00ShpData
                8011FA40: CharacterName $18str "Ashley Riot"
                8011FA58: CurrentHP
                8011FA5A: MaxHP
                8011FA5C: CurrentMP
                8011FA5E: MaxMP
                8011FA60: RISK
                8011FA62: EquippedSTR
                8011FA64: OriginalSTR
                8011FA66: EquippedINT
                8011FA68: OriginalINT
                8011FA6A: EquippedAGL
                8011FA6C: OriginalAGL
                8011FA71: WalkingSpeedWhenCarryingBoxes
                8011FA73: RunningSpeed
                8011FA78: range
                8011FA98: WeaponType
                801203C0: X coordinate
                801203C2: Z coordinate (jump height)
                801203C4: Y coordinate
      8011FA7C: Equipped Weapon Name $18str
      8011FA94: Equipped Weapon Blade equip data
      8011FAC4: Equipped Weapon Grip equip data
      8011FAF4: Equipped Weapon Gem Slot 1 equip data
      8011FB24: Equipped Weapon Gem Slot 2 equip data
      8011FB54: Equipped Weapon Gem Slot 3 equip data
      8011FC2C: Equipped Shield equip data
      8011FC5C: Equipped Shield Gem Slot 1 equip data
      8011FC8C: Equipped Shield Gem Slot 2 equip data
      8011FCBC: Equipped Shield Gem Slot 3 equip data
      8011FD78: Equipped Accessory equip data
      8011FDF8: Equipped Right Arm equip data
      8011FED4: Equipped Left Arm equip data
      8011FFB0: Equipped Helm equip data
      8012008C: Equipped Breastplate equip data
      80120168: Equipped Leggings equip data
      801203A4: 00.SHP Header file
      80120A08: Table of LBA addresses for Ashleys SEQ files
Code: 80011AD4-8002F52F (01DA5C Bytes)
      8004261C: CDROM Read File
      80043EC4: Generic : Converts file offsets to RAM pointers
      800490B0: Generic : Loads section of a file to RAM
      8006B57C: Battle Engine : AddBladeToDropList
      8006B6AC: Battle Engine : AddGripToDropList
      8006B728: Battle Engine : AddGemToDropList
      8006B7BC: Battle Engine : AddArmourToDropList (Also adds Shields and Accessories)
      8006B8C0: Battle Engine : ListWeapon
      8006B9E0: Battle Engine : ListShield
      8006BAA8: Battle Engine : ListArmour
      8006BADC: Battle Engine : ListAccessory
      8006BB0C: Battle Engine : DropWeapon
      8006BBEC: Battle Engine : DropShield
      8006BCB0: Battle Engine : DropArmour
      8006BD14: Battle Engine : DropAccesory
      8006BDA0: Battle Engine : DropItemAlways
      8006BDF0: Battle Engine : DropItemRandom
      8006BE64: Battle Engine : Main Drop Routine
      8006C1CC: Battle Engine : KillCharacter
      8006E158: Battle Engine : CameraControl
      8007357C: Battle Engine : EnterMenu
      800735F8: Battle Engine : ExitMenu
      80076784: Battle Engine : ResetCharacterNewGame
      80078248: Battle Engine : Target Sphere Routine
      800784AC: Battle Engine : Launch Attack
      80078748: Battle Engine : Use Item
      800787F0: Battle Engine : Cast Spell
      80079AB4: Battle Engine : Chain Attack Timing Check
      80079030: Battle Engine : Chain Attack Timing Succeeded
      80079050: Battle Engine : Chain Attack Timing Failed
      800790BC: Battle Engine : Final Chain Attack
      800793C0: Battle Engine : Eventually calls Main Item Drop
      800797BC: Battle Engine : Item Drop Screen
      8007980C: Battle Engine : Master Spell Or Break Art Display Yellow Magic Effect
      8007983C: Battle Engine : Master Spell Or Break Art Displays Message
      800798A4: Battle Engine : Main Battle Engine
      8007A4D8: Battle Engine : Main Switch Statement
      80088554: Battle Engine : Replenish HP, MP and RISK
      80088D40: Battle Engine : ZndMapEnemyDataToRAM
      80088EF0: Battle Engine : LoadZndFile
      80089DC0: Battle Engine : LoadMpdFileMain
      8008A908: Battle Engine : LoadMpdFile
      8009AC84: Battle Engine : OpenShpFile
      8009B240: 3D Model Loader : Main SHP File Loader
      800A0204: Battle Engine : AnimateCharacter(r4_idCharacter, r5_idAnim, r7_timer)
      800A48CC: Battle Engine : JumpAnimateCharacter
      800AFE00: 3D Model Loader : Animation SEQ Frame Loader
      800AD008: Battle Engine : LoadAnimation(r4_ptrShpHeader, r7_ptrAnimationHeaders)
      800B66A8: Script Engine : Scipt Opcode Functions
      800B76A8: Script Engine : ScriptAnimateCharacter(r4_ptrScriptOpcode)
      800BE98C: Script Engine : LoadMpdScript
      800BFBB8: Script Engine : Script Opcode Decoder
      800C0218: Render Engine : ShowDialogBalloonText
      800C0990: Render Engine : ShowTargetSphere
      800C1DC4: Render Engine : ShowTargetBodyPart
      800C97BC: Menu Engine : ExecMenuRoutine
      800CA2DC: Render Engine : ShowHeadsUpDisplay
      800CB66C: Menu Engine : ExitMenuRoutine
      800CB83C: Render Engine : ShowInformationText
      800CD3A0: Rander Engine : ShowDialogBalloonTail
      800CD3E4: Render Engine : ShowDialogBalloon