Castlevania II: Simon's Quest/RAM map: Difference between revisions

From Data Crystal
Jump to navigation Jump to search
No edit summary
mNo edit summary
 
(11 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{rammap|game=Castlevania II}}
{{subpage}}
{{rammap|game=Castlevania II: Simon's Quest}}
<br>
<br>
{| border="1" cellpadding="1"
{| border="1" cellpadding="1"
|'''RAM'''  || '''Function''' || '''Detail'''
|'''RAM'''  || '''Function''' || '''Detail'''
|-
|-
|0x0031 || Lives || 1 byte signed
|0x0005 || Pause Menu Displayed || 12h (hexadecimal) = no, 00h = yes
|-
|-
|0x0034 || Is Dead Flag ||
|0x0018 || Game Mode || 00h = reset, 01h = title screen, 02h = something title?, 03h = title starts game, 04h = lives display, 05h = game, 06h = trigger life loss, 07h = game over, 08h = title menu, 09h = trigger ending (load mode), 0Ah = ending, 0Bh = trigger ???, 0Ch = trigger load ending graphics and then trigger 09h?, 0Dh = trigger 0Ch?, 0Eh = ending complete? back to title screen, 0Fh = GAME START fade-out
|-
|-
|0x0046 || Experience 00xx || Two digits 0-9
|0x0019 || Game Sub-Mode ||
|-
|-
|0x0047 || Experience xx00 || Two digits 0-9
|0x0022 || Black Screen Timer || 0 = no black screen, not 0 = black screen and counts down to 0
|-
|-
|0x0048 || Hearts 00xx || Two digits 0-9
|0x0023 || Title Menu Option || 0 = GAME START, 1 = PASSWORD
|-
|-
|0x0049 || Hearts xx00 || Two digits 0-9
|0x0026 || Pause || 0 = not paused, 1 = start pause, 2 = select pause
|-
|-
|0x004a || Weapons || Each weapon one bit
|0x002A || Game Mode Timer ||  
|-
|-
|0x004c || Laurels Count || Two digits 0-9
|0x002C || Transition Type || 00h = trigger lives display, 01h = lives display, 02h = loading, 03h = no transition, 04h = day/night change dialog, 05h = fade out, 06h = black screen, 07h = fade back in, 08h = horizontal room transition, 09h = vertical room transition, 0Ah = horizontal region transition, 0Bh = vertical region transition
|-
|-
|0x004d || Garlic Count || Two digits 0-9
|0x0030 || Region || 00h = town, 01h = mansion, 02h = woods, 03h = graveyard, 04h = mountains, 05h = castlevania's ruins
|-
|-
|0x004f || Equipped Item ||
|0x0031 || Lives ||
|-
|-
|0x0080 || Energy || Initial values is 30h (hexadecimal)
|0x0034 || Is Dead Flag || 0 = no, not 0 = yes
|-
|0x0035 || Death Timer ||
|-
|0x0046-47 || Experience || Four digits 0-9
|-
|0x0048-49 || Hearts || Four digits 0-9
|-
|0x004A || Acquired Sub-Weapons || Each sub-weapon one bit (01h = dagger, 02h = silver knife, 04h = gold knife, 08h = holy water, 10h = diamond, 20h = sacred flame, 40h = oak stake, 80h = nothing)
|-
|0x004C || Laurels Count || Two digits 0-9
|-
|0x004D || Garlic Count || Two digits 0-9
|-
|0x004F || Equipped Item ||
|-
|0x0053-54 || Simon X position in room (pixels) ||
|-
|0x006C-6D || Simon X speed (sub-pixels and pixels) ||
|-
|0x0077 || Dialog Box Letter Y Tile (in nametable) ||
|-
|0x0078 || Dialog Box Letter X Tile ||
|-
|0x007B || Dialog Box Letter Timer ||
|-
|0x007C || Dialog Box Letter ID ||
|-
|0x007D || Dialog Box Line Starting X Tile & Merchant Dialog Box Refuse Timer ||
|-
|0x007E || Dialog Box Choice || 0 = "NO", 1 = "YES"
|-
|0x0080 || Energy || Starts at 30h
|-
|-
|0x0081 || Max Energy ||
|0x0081 || Max Energy ||
|-
|-
|0x0083 || Time xx:00:00:00 || Days
|0x0082 || Day or Night Flag || 0 = Day, 1 = Night
|-
|0x0083 || Time xx:00:00.00 || Days
|-
|-
|0x0084 || Time 00:00:00:xx || Seconds
|0x0084 || Time 00:00:00.xx || Frames (not displayed in-game, 15 frames per minute (0x00 to 0x0E inclusive))
|-
|-
|0x0085 || Time 00:00:xx:00 || Minutes
|0x0085 || Time 00:00:xx.00 || Minutes
|-
|-
|0x0086 || Time 00:xx:00:00 || Hours
|0x0086 || Time 00:xx:00.00 || Hours
|-
|-
|0x008B || Level ||
|0x008B || Level ||
|-
|-
|0x0090 || Equipped Weapon ||
|0x0090 || Equipped Sub-Weapon || (0 for nothing and 1 to 7 in the same order as in the in-game menu)
|-
|-
|0x0091 || Items || Each item one bit (red gem = white + blue)
|0x0091 || Acquired Items || Each item one bit (01h = rib, 02h = heart, 04h = eye, 08h = nail, 10h = ring, 20h = white gem, 40h = blue gem, 20h+40h = red gem, 80h = nothing)
|-
|-
|0x0092 || More Items || Each item one bit (silk bag, magic cross, laurels, garlic)
|0x0092 || More Acquired Items || Each item one bit (01h = silk bag, 02h = magic cross, 04h = laurels, 08h = garlic)
|-
|-
|0x0434 || Current Whip ||
|0x00A1-A2 || Noise/DPCM Note Pointer ||  
|-
|-
|0x04C8 || Boss Health ||
|0x00AB || Pulse 1 Note Time Left ||
|-
|0x00AC || Pulse 2 Note Time Left ||
|-
|0x00AD || Triangle Note Time Left ||
|-
|0x00AF || Noise active || 0 = no, 1 = yes
|-
|0x00BB || Noise Period and Volume || probably pointer to a table
|-
|0x00BC || Noise/DPCM Note Pointer (copy of 0x00A1?) ||
|-
|0x00F1 || Controller Held ||
|-
|0x00F3 || Controller Tapped ||
|-
|0x00FC || Y Screen Scroll (pixels) ||
|-
|0x00FD || X Screen Scroll (pixels) ||
|-
|0x0124 || Pulse 1 Volume ||
|-
|0x0125 || Pulse 2 Volume ||
|-
|0x0150 || Pulse 1 Frame Of Volume Envelope ||
|-
|0x0151 || Pulse 2 Frame Of Volume Envelope ||
|-
|0x0300-509? || Objects Table || let i be the index of an object and j be a property of that object, that property is at address (0x300 + j*18 + i).
List of Objects
{| border="1" cellpadding="1"
|'''i (in decimal)'''  || '''Object'''
|-
|0 || Simon
|-
|1 || Simon whip
|-
|2 || Simon whip tip
|-
|3-5 || Simon sub-weapons
|-
|6-14 at least || NPCs/Enemies/Collectibles
|-
|}
List of Properties
{| border="1" cellpadding="1"
|'''j (in decimal)'''  || '''Property'''
|-
|0 || Absolute Animation Frame
|-
|2 || Y position in camera (pixels)
|-
|3 || Y position in camera (sub-pixels)
|-
|4 || X position in camera (pixels)
|-
|5 || X position in camera (sub-pixels)
|-
|6 || Y speed (signed pixels)
|-
|7 || Y speed (sub-pixels)
|-
|8 || X speed (signed pixels)
|-
|9 || X speed (sub-pixels)
|-
|10 || AI
|-
|11 || Disappear during pause (0 = no, 4 = yes)
|-
|12 || State (possible values for Simon: 00h = standing, 01h = walking, 02h = jumping, 03h = crouching, 04h = attacking, 05h = fall from ledge, 06h = hurt, 07h = auto-align with stairs, 08h = start stairs, 09h = stand on stairs, 0Ah = walk on stairs, 80h = start death, 81h = death hurt, 82h = dead on the floor, FFh = dead to lives display)
|-
|13 || Timer until next Animation Frame
|-
|14 || Animation Frame of Current Animation
|-
|16 || Direction faced (0 = left, 1 = right)
|-
|18 || Sub-State
|-
|25 || Health
|-
|28 || I-Frames
|-
|}
|-
|0x0434 || Current Whip || 00h = leather, 01h = thorn, 02h = chain, 03h = morning star, 04h = flame
|-
|0x0446 || Simon jump is rising || 0 = no, 1 = yes
|-
|0x050A?-6FF? || Block Clipdata? ||
|-
|-
|}
|}
<br>
 
{{stub}}
{{Internal Data|game=Castlevania II: Simon's Quest}}

Latest revision as of 07:10, 24 January 2024

This is a sub-page of Castlevania II: Simon's Quest.

Chip tiny.png The following article is a RAM map for Castlevania II: Simon's Quest.


RAM Function Detail
0x0005 Pause Menu Displayed 12h (hexadecimal) = no, 00h = yes
0x0018 Game Mode 00h = reset, 01h = title screen, 02h = something title?, 03h = title starts game, 04h = lives display, 05h = game, 06h = trigger life loss, 07h = game over, 08h = title menu, 09h = trigger ending (load mode), 0Ah = ending, 0Bh = trigger ???, 0Ch = trigger load ending graphics and then trigger 09h?, 0Dh = trigger 0Ch?, 0Eh = ending complete? back to title screen, 0Fh = GAME START fade-out
0x0019 Game Sub-Mode
0x0022 Black Screen Timer 0 = no black screen, not 0 = black screen and counts down to 0
0x0023 Title Menu Option 0 = GAME START, 1 = PASSWORD
0x0026 Pause 0 = not paused, 1 = start pause, 2 = select pause
0x002A Game Mode Timer
0x002C Transition Type 00h = trigger lives display, 01h = lives display, 02h = loading, 03h = no transition, 04h = day/night change dialog, 05h = fade out, 06h = black screen, 07h = fade back in, 08h = horizontal room transition, 09h = vertical room transition, 0Ah = horizontal region transition, 0Bh = vertical region transition
0x0030 Region 00h = town, 01h = mansion, 02h = woods, 03h = graveyard, 04h = mountains, 05h = castlevania's ruins
0x0031 Lives
0x0034 Is Dead Flag 0 = no, not 0 = yes
0x0035 Death Timer
0x0046-47 Experience Four digits 0-9
0x0048-49 Hearts Four digits 0-9
0x004A Acquired Sub-Weapons Each sub-weapon one bit (01h = dagger, 02h = silver knife, 04h = gold knife, 08h = holy water, 10h = diamond, 20h = sacred flame, 40h = oak stake, 80h = nothing)
0x004C Laurels Count Two digits 0-9
0x004D Garlic Count Two digits 0-9
0x004F Equipped Item
0x0053-54 Simon X position in room (pixels)
0x006C-6D Simon X speed (sub-pixels and pixels)
0x0077 Dialog Box Letter Y Tile (in nametable)
0x0078 Dialog Box Letter X Tile
0x007B Dialog Box Letter Timer
0x007C Dialog Box Letter ID
0x007D Dialog Box Line Starting X Tile & Merchant Dialog Box Refuse Timer
0x007E Dialog Box Choice 0 = "NO", 1 = "YES"
0x0080 Energy Starts at 30h
0x0081 Max Energy
0x0082 Day or Night Flag 0 = Day, 1 = Night
0x0083 Time xx:00:00.00 Days
0x0084 Time 00:00:00.xx Frames (not displayed in-game, 15 frames per minute (0x00 to 0x0E inclusive))
0x0085 Time 00:00:xx.00 Minutes
0x0086 Time 00:xx:00.00 Hours
0x008B Level
0x0090 Equipped Sub-Weapon (0 for nothing and 1 to 7 in the same order as in the in-game menu)
0x0091 Acquired Items Each item one bit (01h = rib, 02h = heart, 04h = eye, 08h = nail, 10h = ring, 20h = white gem, 40h = blue gem, 20h+40h = red gem, 80h = nothing)
0x0092 More Acquired Items Each item one bit (01h = silk bag, 02h = magic cross, 04h = laurels, 08h = garlic)
0x00A1-A2 Noise/DPCM Note Pointer
0x00AB Pulse 1 Note Time Left
0x00AC Pulse 2 Note Time Left
0x00AD Triangle Note Time Left
0x00AF Noise active 0 = no, 1 = yes
0x00BB Noise Period and Volume probably pointer to a table
0x00BC Noise/DPCM Note Pointer (copy of 0x00A1?)
0x00F1 Controller Held
0x00F3 Controller Tapped
0x00FC Y Screen Scroll (pixels)
0x00FD X Screen Scroll (pixels)
0x0124 Pulse 1 Volume
0x0125 Pulse 2 Volume
0x0150 Pulse 1 Frame Of Volume Envelope
0x0151 Pulse 2 Frame Of Volume Envelope
0x0300-509? Objects Table let i be the index of an object and j be a property of that object, that property is at address (0x300 + j*18 + i).

List of Objects

i (in decimal) Object
0 Simon
1 Simon whip
2 Simon whip tip
3-5 Simon sub-weapons
6-14 at least NPCs/Enemies/Collectibles

List of Properties

j (in decimal) Property
0 Absolute Animation Frame
2 Y position in camera (pixels)
3 Y position in camera (sub-pixels)
4 X position in camera (pixels)
5 X position in camera (sub-pixels)
6 Y speed (signed pixels)
7 Y speed (sub-pixels)
8 X speed (signed pixels)
9 X speed (sub-pixels)
10 AI
11 Disappear during pause (0 = no, 4 = yes)
12 State (possible values for Simon: 00h = standing, 01h = walking, 02h = jumping, 03h = crouching, 04h = attacking, 05h = fall from ledge, 06h = hurt, 07h = auto-align with stairs, 08h = start stairs, 09h = stand on stairs, 0Ah = walk on stairs, 80h = start death, 81h = death hurt, 82h = dead on the floor, FFh = dead to lives display)
13 Timer until next Animation Frame
14 Animation Frame of Current Animation
16 Direction faced (0 = left, 1 = right)
18 Sub-State
25 Health
28 I-Frames
0x0434 Current Whip 00h = leather, 01h = thorn, 02h = chain, 03h = morning star, 04h = flame
0x0446 Simon jump is rising 0 = no, 1 = yes
0x050A?-6FF? Block Clipdata?