Castlevania III: Dracula's Curse/RAM map

From Data Crystal
Jump to navigation Jump to search

Chip tiny.png The following article is a RAM map for Castlevania III: Dracula's Curse.

Address    Size    Description
--------   ----    -----------
  $19              Menu Mode (meaning depends on menu, i.e. title screen, password entry, game over, etc)
  $26              Controller 1 Pressed
  $28              Controller 1
  $32              Timer
  $35              Lives   
  $36              Score 0000xx    
  $37              Score 00xx00    
  $38              Score xx0000  
  $39              Player   00 = None; 01 = Syfa; 02 = Grant; 03 = Alucard
  $3A              Partner  00 = None; 01 = Syfa; 02 = Grant; 03 = Alucard
  $3C              Energy  
  $68              Menu selection (Start/Password or Continue/Password)
  $84              Hearts
  $F8              Controller 1 Pressed (same as 26?)
  $FA              Controller 1         (same as 28?)
  $7E              Time 00xx   
  $7F              Time xx00   

$0200      $100    OAM (sprites)

$05D8              Timer before crouch-landing (starts at 07 (when a jump starts), augments +1/frame until player starts falling and then decreases -1/frame until 00)

$0790       $10    Password data (populated during password entry)
$07A0       $10    Password data (for display on game over)
$07F8        $8    Player name


Chip tiny.png The following article is a RAM map for Castlevania III: Dracula's Curse.

Address    Size    Description
--------   ----    -----------
$0018              System State
                            00 = Title; 02 = New Game; 03 = In-game Transition; 04 = In-Game;
                            05 = Game Over Transition; 06 = Game Over; 07 = Stage Select Debug;
                            08 = Map Screen; 09 = Prayer Scene; 0a = Name Entry; 0b = Password Entry;
                            0c = Epilogue; 0d = Credit Roll; 0e = Respawn; 0f = Sound Test Debug
$0019              System Substate
$001B              System Step Counter
$001D              Blackout Delay
$0020              Randomizer
$0021              PPU Bank (write to $B003)
$0028         2    Controller Buttons Pressed
                            01 = right; 02 = left; 04 = down; 08 = up;
                            10 = start; 20 = select; 40 = B; 80 = A
$002A         2    Controller Buttons Held
$002C              Game State
$002D              User Paused (toggled by Start button)
$002E              Stage Clear 
$0030              Checkpoint (used for Password Entry)
$0031              Grant Defeated 
$0032         2    System Effect Timer
$0034              Stage
$0035              Block
$0036              Room
$0037              Lives
$0038         8    CHR Banks
$0040              IRQ Control
$0041         2    IRQ Latch
$0043              Default Drawing State (write to $006A)
$0044         3    Score (little endian)
$0048              Partner   
                            00 = Trevor; 01 = Syfa; 02 = Grant; 03 = Alucard; ff = None
$0049              Partner Active (bool)
$004A              Player's Health
                            40 = full
$004B              Boss Health 
$0053         2    View Position (little endian) 
$0055              View Subpixel Position
$0056              Left Spawn Area
$0057              Right Spawn Area
$005A         2    Tile Assembly Pointer
$005C         2    Pallet Map Pointer
$005E         2    Nametable Write Address
$0060              Tile Assembly ID
$0061              Transition Timer
$0062              Player Direction
                            00 = left; 01 = right; 02 = still
$0063              View Refreshed Position
$0064              Update View
$0065              Room Orientation
                            00 = horizontal; 80 or 81 = vertical; 82 = scroll up;
                            83 = scroll down; 84 = collapse up; 85 = collapse down
$0066         2    Stair Map Address
$0068              Player Animation State (for transitions)
$0069              Current Instance (saves X register)
$006A              Drawing State
$006B              View Speed
$006C         2    PPU Write Position
$006E              Room Size
$006F              CHR Write Mode
                            00 or 03 = all CHR banks; 01 = status bar banks;  02 = clear NPC banks
$0070              Previous Room Orientation
$0071              Music Loaded
$0072              Transition Nametable (nametable to use after door closes)
$0073              Horizontal Spawner Block
$0074              Leftmost Spawner Block
$0075              Boss Scroll Lock
$0076              Vertical Spawner Block
$0077              Vertical Spawner Previous (?)
$0078              Spawner Count
$007A              Room Type
                            10 = Stormclouds; 20 = Autowalk; 30 = River; 40 = Clockwork;
                            50 and 60 = Watery Grave; 70 = Flood Zone; 80 = Collapsing Bridge
$007b         2    Time (little endian)
$0081              Hearts
$0082              Trevor Weapon
                            00 = none; 01 = axe; 02 = boomerang; 03 = knife/book; 04 = holy water; 05 = fireball; 
                            06 = freeze; 07 = orb; 08 = axe; 09 = boomerang; 0a = knife/book ;0b = clock
$0083              Partner Weapon
  $84              Weapon Multiplier   00 = none; 01 = [II]; 02 = [III]
  $85              Partner Weapon Multiplier
  $8b              Whip   00 = short; 01 = medium; 02 = long