If you are still using the old URL (datacrystal.romhacking.net), please update your bookmarks! The old URL may stop working soon.
The current URL is datacrystal.tcrf.net.
The current URL is datacrystal.tcrf.net.
Castlevania Chronicles/RAM map: Difference between revisions
Jump to navigation
Jump to search
mNo edit summary |
mNo edit summary |
||
(3 intermediate revisions by the same user not shown) | |||
Line 15: | Line 15: | ||
Address Function Details | Address Function Details | ||
-------- ------------------ ---------------------------- | -------- ------------------ ---------------------------- | ||
90CB-D1 "NOMIS" (!!) "SIMON" backwards, | 90CB-D1 "NOMIS" (!!) "SIMON" backwards, unknown purpose | ||
90F0-12A Names & health meters "PLAYER", "ENEMY", pointers for both meters' tile graphics | 90F0-12A Names & health meters "PLAYER", "ENEMY", pointers for both meters' tile graphics | ||
911B-12A Heart and life counts Heart icon, "P-", pointers for both counts tile graphics | 911B-12A Heart and life counts Heart icon, "P-", pointers for both counts tile graphics | ||
9248-9 Camera sector coords (!!) See $800592D4-5, unknown why information is duplicated in RAM | 9248-9 Camera sector coords (!!) See $800592D4-5, unknown why information is duplicated in RAM | ||
9270 | 9270 Input detection 1 Left nybble for face buttons, right for back triggers | ||
9271 | 9271 Input detection 2 Left nybble for directional inputs, right for start and select | ||
9290-1 Timer value (!!) First byte is calculated in usual hex (e.g. FF = 255) and is subtracted from by one, second seems to be multiplied by 256, both are somehow used together to calculate the timer's value (00 02 = 512, FF 00 = 255) | 9274 "PRESS START" demo flag The "PRESS START" that flashes over the enemy healthbar/name in the HUD during idle demos, 00 is off, any | ||
other value is on, can flash even during normal gameplay | |||
9290-1 Timer value (!!) First byte is calculated in usual hex (e.g. FF = 255) and is subtracted from by one, second seems to be | |||
multiplied by 256, both are somehow used together to calculate the timer's value (00 02 = 512, FF 00 = 255) | |||
9292 Life count | 9292 Life count | ||
92C4 Block number Acts like an instant level select, goes up to 07 (Dracula's block), does not change the stage value | 92C4 Block number Acts like an instant level select, goes up to 07 (Dracula's block), does not change the stage value | ||
92D0 Stage number (!!) Each block's separated rooms have numbers dedicated to them, exiting a room adds one to this value, game crashes if the block has no room dedicated to an incremented value of the byte, tiles are corrupted when the room byte doesn't match up to the loaded room's given byte | 92D0 Stage number (!!) Each block's separated rooms have numbers dedicated to them, exiting a room adds one to this value, game | ||
92D4 Camera x-position (!!) Based on 255-units long sectors of stages which are pieced together to create levels, not much more is known on sectors | crashes if the block has no room dedicated to an incremented value of the byte, tiles are corrupted when the | ||
room byte doesn't match up to the loaded room's given byte | |||
92D4 Camera x-position (!!) Based on 255-units long sectors of stages which are pieced together to create levels, not much more is known | |||
on sectors | |||
92D5 Room sector number (!!) Self-explanatory, coupled with byte above | 92D5 Room sector number (!!) Self-explanatory, coupled with byte above | ||
92DC-F Score value | 92DC-F Score value | ||
92E8 Entity | 92E8 Entity y-axis floor (!!) Value for entities' floor collision | ||
930D Camera movement type (!!) 00 results in an instant death, 01 and 02 lock vertical scrolling (any open drops are death pits), 03+ moves with Simon aside from level edges | 930D Camera movement type (!!) 00 results in an instant death, 01 and 02 lock vertical scrolling (any open drops are death pits), 03+ moves | ||
with Simon aside from level edges | |||
A822 Player health value Byte starts at 10 (visually full) | A822 Player health value Byte starts at 10 (visually full) | ||
A823 Unknown (!!) Changing this value to anything other than 00 changes Simon's palette to be gray | A823 Unknown (!!) Changing this value to anything other than 00 changes Simon's palette to be gray | ||
A834 | A834 Simon airtime in frames Byte adding stops at 28, where Simon begins dropping like a brick (if dropping without jumping, very quickly | ||
A835 State of Simon whipping 00 if not whipping, 01 if whipping forward, 02 if whipping directly downward in air, 03 if whipping diagonally downward in air | incremented to 28) | ||
A835 State of Simon whipping 00 if not whipping, 01 if whipping forward, 02 if whipping directly downward in air, 03 if whipping diagonally | |||
downward in air | |||
A836 Whip level/sprites 00 for leather whip, 01 for chain whip, 02 for Morning Star, beyond results in glitched sprites | A836 Whip level/sprites 00 for leather whip, 01 for chain whip, 02 for Morning Star, beyond results in glitched sprites | ||
A837 Whip state counter When the whip button is pressed, counts up to 14, returns to 00 during the last couple frames of the whipping action, can be interrupted, where it will stay at the value it was up to before being interrupted, but will return to 01 and count up to 14 again when a whip button is pressed | A837 Whip state counter When the whip button is pressed, counts up to 14, returns to 00 during the last couple frames of the whipping | ||
A838 Hearts value Maximum is FF (255), | action, can be interrupted, where it will stay at the value it was up to before being interrupted, but will | ||
A839 Stairs flag (!!) Byte is set to 01 if Simon is on stairs, if set to 01 when not on stairs, Simon slides forward facing one direction involuntarily until the jump button is pressed | return to 01 and count up to 14 again when a whip button is pressed | ||
A838 Hearts value Maximum is FF (255), overflows back to 00 when added to at max | |||
A839 Stairs flag (!!) Byte is set to 01 if Simon is on stairs, if set to 01 when not on stairs, Simon slides forward facing one | |||
direction involuntarily until the jump button is pressed | |||
==$8010...== | ==$8010...== | ||
Address Function | Address Function Details | ||
-------- ------------------ | -------- ------------------ ---------------------------- | ||
02D0-2F0 Sound test menu display (!!) | 02D0-2F0 Sound test menu display (!!) Does not include song names or song visualization* (*visualization might be in/near the range but | ||
requires further investigation) | |||
0318-39F Save select menu display | 0318-39F Save select menu display | ||
03A0-3D6 Time attack menu display | 03A0-3D6 Time attack menu display | ||
03D7-3DE Somewhat unknown (!!) | 03D7-3DE Somewhat unknown (!!) Says "L1" and "R1" both separated by bytes of 00 (likely connected to the secret sound module menu) | ||
03DF-412 Ranking menu display (!!) | 03DF-412 Ranking menu display (!!) (Address range might be off) | ||
04A7-4CB Game over display | 04A7-4CB Game over display | ||
068F-69C Unknown (!!) | 068F-69C Unknown (!!) Arranged to make "PRESS BUTTON" | ||
06CF-724 Secret "Extra Mode" menu display | 06CF-724 Secret "Extra Mode" menu display | ||
0877-8E0 Options menu display | 0877-8E0 Options menu display | ||
08F7-93E Arrange option menu display (!!) | 08F7-93E Arrange option menu display (!!) Strangely, "ON" and "OFF" are not found in the RAM for the Time Limit option | ||
093F-96A Adjust display menu display | 093F-96A Adjust display menu display | ||
F5D7-794 Sound test menu song names | F5D7-794 Sound test menu song names |
Latest revision as of 21:51, 1 July 2024
The following article is a RAM map for Castlevania Chronicles.
Note:
|
$80010...
Address Function Details ------- ------------------ ---------------------------- 3A8-C7 Top row of the HUD Contains score, timer and stage counts 3C8-D3 "PRESS START" Flashes over enemy health meter during idle demos
$8005...
Address Function Details -------- ------------------ ---------------------------- 90CB-D1 "NOMIS" (!!) "SIMON" backwards, unknown purpose 90F0-12A Names & health meters "PLAYER", "ENEMY", pointers for both meters' tile graphics 911B-12A Heart and life counts Heart icon, "P-", pointers for both counts tile graphics 9248-9 Camera sector coords (!!) See $800592D4-5, unknown why information is duplicated in RAM 9270 Input detection 1 Left nybble for face buttons, right for back triggers 9271 Input detection 2 Left nybble for directional inputs, right for start and select 9274 "PRESS START" demo flag The "PRESS START" that flashes over the enemy healthbar/name in the HUD during idle demos, 00 is off, any other value is on, can flash even during normal gameplay 9290-1 Timer value (!!) First byte is calculated in usual hex (e.g. FF = 255) and is subtracted from by one, second seems to be multiplied by 256, both are somehow used together to calculate the timer's value (00 02 = 512, FF 00 = 255) 9292 Life count 92C4 Block number Acts like an instant level select, goes up to 07 (Dracula's block), does not change the stage value 92D0 Stage number (!!) Each block's separated rooms have numbers dedicated to them, exiting a room adds one to this value, game crashes if the block has no room dedicated to an incremented value of the byte, tiles are corrupted when the room byte doesn't match up to the loaded room's given byte 92D4 Camera x-position (!!) Based on 255-units long sectors of stages which are pieced together to create levels, not much more is known on sectors 92D5 Room sector number (!!) Self-explanatory, coupled with byte above 92DC-F Score value 92E8 Entity y-axis floor (!!) Value for entities' floor collision 930D Camera movement type (!!) 00 results in an instant death, 01 and 02 lock vertical scrolling (any open drops are death pits), 03+ moves with Simon aside from level edges A822 Player health value Byte starts at 10 (visually full) A823 Unknown (!!) Changing this value to anything other than 00 changes Simon's palette to be gray A834 Simon airtime in frames Byte adding stops at 28, where Simon begins dropping like a brick (if dropping without jumping, very quickly incremented to 28) A835 State of Simon whipping 00 if not whipping, 01 if whipping forward, 02 if whipping directly downward in air, 03 if whipping diagonally downward in air A836 Whip level/sprites 00 for leather whip, 01 for chain whip, 02 for Morning Star, beyond results in glitched sprites A837 Whip state counter When the whip button is pressed, counts up to 14, returns to 00 during the last couple frames of the whipping action, can be interrupted, where it will stay at the value it was up to before being interrupted, but will return to 01 and count up to 14 again when a whip button is pressed A838 Hearts value Maximum is FF (255), overflows back to 00 when added to at max A839 Stairs flag (!!) Byte is set to 01 if Simon is on stairs, if set to 01 when not on stairs, Simon slides forward facing one direction involuntarily until the jump button is pressed
$8010...
Address Function Details -------- ------------------ ---------------------------- 02D0-2F0 Sound test menu display (!!) Does not include song names or song visualization* (*visualization might be in/near the range but requires further investigation) 0318-39F Save select menu display 03A0-3D6 Time attack menu display 03D7-3DE Somewhat unknown (!!) Says "L1" and "R1" both separated by bytes of 00 (likely connected to the secret sound module menu) 03DF-412 Ranking menu display (!!) (Address range might be off) 04A7-4CB Game over display 068F-69C Unknown (!!) Arranged to make "PRESS BUTTON" 06CF-724 Secret "Extra Mode" menu display 0877-8E0 Options menu display 08F7-93E Arrange option menu display (!!) Strangely, "ON" and "OFF" are not found in the RAM for the Time Limit option 093F-96A Adjust display menu display F5D7-794 Sound test menu song names