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: The Adventure/ROM map: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
Line 15: | Line 15: | ||
0x1833 Belmont's state jumptable | 0x1833 Belmont's state jumptable | ||
0x3505-350C Stage data definition pointer table (4 pointers, one per stage). | 0x3505-350C Stage screen data definition pointer table (4 pointers, one per stage). | ||
0x350D-3526 Stage 1 pointer table (8 pointers, one for each sublevel, starting from left). | 0x350D-3526 Stage 1 pointer table (8 pointers, one for each sublevel, starting from left). | ||
0x3527-351C Stage 2 pointer table | 0x3527-351C Stage 2 pointer table | ||
0x351D-3546 Stage 3 pointer table | 0x351D-3546 Stage 3 pointer table | ||
0x3547-3567 Stage 4 pointer table | 0x3547-3567 Stage 4 pointer table | ||
0x35B0-35C8 Stage 1 sublevel 1 screen 1 definition (25 bytes | 0x357B-3582 Sublevel length (in metatiles) pointer table (4 pointers, one per stage) | ||
0x3583-0x358F Stage 1 sublevel lengths | |||
0x35B0-35C8 Stage 1 sublevel 1 screen 1 definition (1 screen requires 25 bytes = 5 rows of 5 metatiles) | |||
0x35C9-35E1 Stage 1 sublevel 1 screen 2 definition | 0x35C9-35E1 Stage 1 sublevel 1 screen 2 definition | ||
... | ... | ||
0x3614-362C Stage 1 sublevel 1 screen 5 definition | 0x3614-362C Stage 1 sublevel 1 screen 5 definition | ||
0x41FE-4205 Pointer table (4 pointers, one per stage) | |||
0x4206-420D Stage sublevel transitions pointer table. | 0x4206-420D Stage sublevel transitions pointer table. | ||
Ropes at the extremities of sublevels serve as sublevel transitions. | Ropes at the extremities of sublevels serve as sublevel transitions. |
Revision as of 13:53, 27 May 2023
The following article is a ROM map for Castlevania: The Adventure.
(r:symbol) marks the start of a callable subroutine. (RSTxy:symbol) marks a callable subroutine which can be called with the special quick-access RST commands.
Address Description ---------------------------- 0x0000 (RST0:jumptable) jumptable following RST0 call by register A. 0x09AA-09B1 Timer data pointer table (4 pointers, one per stage) 0x09B2-09B7 Stage 1 timer data (2 bytes for each clear point) 0x09B8-09BF Stage 2 timer data 0x09C0-09B5 Stage 3 timer data 0x09B6-09BC Stage 4 timer data
0x1833 Belmont's state jumptable
0x3505-350C Stage screen data definition pointer table (4 pointers, one per stage). 0x350D-3526 Stage 1 pointer table (8 pointers, one for each sublevel, starting from left). 0x3527-351C Stage 2 pointer table 0x351D-3546 Stage 3 pointer table 0x3547-3567 Stage 4 pointer table 0x357B-3582 Sublevel length (in metatiles) pointer table (4 pointers, one per stage) 0x3583-0x358F Stage 1 sublevel lengths 0x35B0-35C8 Stage 1 sublevel 1 screen 1 definition (1 screen requires 25 bytes = 5 rows of 5 metatiles) 0x35C9-35E1 Stage 1 sublevel 1 screen 2 definition ... 0x3614-362C Stage 1 sublevel 1 screen 5 definition
0x41FE-4205 Pointer table (4 pointers, one per stage) 0x4206-420D Stage sublevel transitions pointer table. Ropes at the extremities of sublevels serve as sublevel transitions. They have a hit box that locks the player to the rope, allowing to climb up/down to the next sublevel. This data is read each time the player jumps, to see if he is in the hitbox. 0x420E-421D Stage 1 pointer table 0x421E-4227 Stage 2 pointer table 0x4228-4247 Stage 3 pointer table 0x4248-4267 Stage 4 pointer table 0x4268-426E Stage 1 sublevel 1 to sublevel 2 data Data in chunks of 7 bytes: 1 & 2 = hitbox Xpos / 3 & 4 = Ypos of hitbox / 5 = sublevel transitionID / 6 & 7 = unclear, but another Xpos) 0x44A7-4548 Spawn position pointer table 0x4549-46D8? Spawn position data (5 bytes: sublevel / X metatile offset / Xpos 1 and 2 / Ypos) 0x46D9-477E Player sprite animation pointer table 0x477F-4BBD Player sprite animation data
0x7BB9-7C1A Enemy data pointer table (first 4 pointers for stages, the others for their sublevels) 0x7C1B-7FA7 Enemy data (in chunks of 5 bytes, with terminal x00 xE0) 1&2 = enemy Xpos / 3 = Ypos / 4 = enemyID (3=bird/9=bat/B=stage1 boss/1A&1B = rolling eyeballs, etc.) / 5 = enemyNumber) 0xA63F-A6A1 Candle data pointer table (first 4 pointers for the stages, the others for their sublevels) 0xA342-AA31 Candle data (in chunks of 5 bytes) 1&2 = candle Xpos / 3 = Ypos / 4 = itemID (0=ball/1=invincibility/2=heart/3=blinking heart/4=1UP/5=coin/6=boss orb) / 5 = candleNumber)