Difference between revisions of "Castlevania II - Belmont's Revenge:ROM map"

From Data Crystal
Jump to navigation Jump to search
(Created page with "{{rommap|game=Castlevania II - Belmont's Revenge}} Format for PRG-ROM is Bank:RAM address. (r:symbol) marks the start of a callable subroutine. 6:461B (r:input_A_pressed)...")
 
Line 5: Line 5:
 
(r:symbol) marks the start of a callable subroutine.
 
(r:symbol) marks the start of a callable subroutine.
  
 +
0:01D9 (r:mbc_bankswap) loads swappable bank according to the value in ($7FFF)
 +
0:35A9 (r:mbc_bankswap_1) loads swappable bank 1.
 +
0:35AF (r:mbc_bankswap_2) loads swappable bank 2.
 +
0:35B5 (r:mbc_bankswap_6) loads swappable bank 6.
 +
0:35BB (r:mbc_bankswap_7) loads swappable bank 7.
 +
0:35C1 (r:mbc_bankswap_3) loads swappable bank 3.
 
  6:461B (r:input_A_pressed) A gets zero or 10 depending on if the A button was pressed this frame. Status flags set
 
  6:461B (r:input_A_pressed) A gets zero or 10 depending on if the A button was pressed this frame. Status flags set
 
  6:4621 (r:input_up_down_held) A and status flags
 
  6:4621 (r:input_up_down_held) A and status flags
Line 13: Line 19:
 
  6:464B (r:input_up_held) A and status flags
 
  6:464B (r:input_up_held) A and status flags
 
  6:4651 (r:input_any_held) A and status flags
 
  6:4651 (r:input_any_held) A and status flags
 +
 +
Bank swap routines:
 +
- All are in bank 0, and all write to $2180 to change the bank. For some reason, bank 5 is always swapped inline rather than by function call.

Revision as of 16:57, 11 July 2022

Format for PRG-ROM is Bank:RAM address.

(r:symbol) marks the start of a callable subroutine.

0:01D9 (r:mbc_bankswap) loads swappable bank according to the value in ($7FFF)
0:35A9 (r:mbc_bankswap_1) loads swappable bank 1.
0:35AF (r:mbc_bankswap_2) loads swappable bank 2.
0:35B5 (r:mbc_bankswap_6) loads swappable bank 6.
0:35BB (r:mbc_bankswap_7) loads swappable bank 7.
0:35C1 (r:mbc_bankswap_3) loads swappable bank 3.
6:461B (r:input_A_pressed) A gets zero or 10 depending on if the A button was pressed this frame. Status flags set
6:4621 (r:input_up_down_held) A and status flags
6:4627 (r:input_left_right_held) A and status flags
6:462D (r:input_B_pressed) A and status flags
6:4633 (r:input_B_held) A and status flags
6:4639 (r:input_down_held) A and status flags
6:464B (r:input_up_held) A and status flags
6:4651 (r:input_any_held) A and status flags

Bank swap routines:

- All are in bank 0, and all write to $2180 to change the bank. For some reason, bank 5 is always swapped inline rather than by function call.