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.
Magical Vacation/RAM map: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
m (Xkeeper moved page Magical Vacation:RAM map to Magical Vacation/RAM map: normalize subpages and titles) |
||
(33 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
{{rammap|game=Magical Vacation}} | |||
$020000D0-$02000107 - Gets values from $080C5590 at $08001724 / Data from here is exchanged with data at $0203BB68 (see $080BDFD0, for example) | |||
$02000108 - Loaded at $08008E98 | |||
$02000330-$02000331 - Table Number Entry where the Main Loop Jumps next | $02000330-$02000331 - Table Number Entry where the Main Loop Jumps next | ||
$02000340 - Loaded at $08008E98 | |||
$02000360 - Loaded at $08008E98 | |||
$02000EF0 - Loaded at $0805C2C8, seems to contain datasets in $38 bytes size | |||
$020010B0 - Loaded at $0805C2C8 | |||
$02001190 - Loaded at $0805C2C8 | |||
$02001191 - Contains a value between #$00 and #$06 (always even number), index for registers $02001192-$02001199 (see $0805BEAC) | $02001191 - Contains a value between #$00 and #$06 (always even number), index for registers $02001192-$02001199 (see $0805BEAC) | ||
$02001192-$02001199 - Storage for doublebyte values (see $0805BEAC) | $02001192-$02001199 - Storage for doublebyte values (see $0805BEAC), these are Load Indexes for a address table in the subroutine at $0805C2C8. (Sound Effect(!) Related) | ||
$0202DE34-$0202DE37 - Contains the address of the | $0200119C-$0200119F - Address of the next Data for Sound A | ||
$020011A0-$020011A3 - Compare-Address for Sound A | |||
$020011A4-$020011A7 - Jump Back Address(!?!) for Sound A | |||
$020111A8-$020011AB - Note Duration(!?!) for Sound A | |||
$020011BC-$020011BD - Buffer for $04000080/1 (SOUNDCNT - Control Stereo/Volume/Enable Stereo/Volume/Enable) | |||
$020011D0 - Loaded at $0805C2C8 | |||
$02008678 - Loaded at $08008E98 | |||
$020096B0 - Loaded at $08008E98 | |||
$02029CB0 - Loaded at $08008E98 | |||
$0202DA08-$0202DA09 - (Random Number?) | |||
$0202DE30-$0202DE33 - Set to #$0203BBA0 in Intro - Contains the address of the graphics settings | |||
$0202DE34-$0202DE37 - Set to #$0203CAD0 in Intro - Contains the address of the graphics buffer offset | |||
$0202DE38-$0202DE3B - Set to #$0203CAC0 in Intro | |||
$0202DE3C-$0202DE3F - Set to #$0203BBF0 in Intro | |||
$0202DE40-$0202DE43 - Set to #$0203BC10 in Intro | |||
$0202DE54-$0202DE57 - Seems to be related to the character portrait rotation in the Intro (found via testing) | |||
$0202DE5C - In Intro, this contains the X-offset for the text in the Storybook/Character Presentation segments (found via testing) | |||
$0202DE5E - In Intro, this contains the Y-offset for the text in the Storybook/Character Presentation segments (found via testing) | |||
$0202DE60-$0202DE61 - A Intro Frame Counter for each Storybook pic / character presentation (found via testing) | |||
$0202DEAC-$0202DEAF - Something like a Global Frame Counter for the Intro (stops after leaving). Just counts upward. 32-bit size! (found via testing) | |||
$0202DEB0-$0202DEB1 - A Frame Counter for certain segments of the Intro (like: how long the whole storybook or character pres. segment goes on) (found via testing) | |||
$0202DEB4-$0202DEB5 - A Frame Counter for certain segments of the Intro (copy of $0202DEB0/1, no apparent differences) (found via testing) | |||
$0202DEBC-$0202DEBD - Number of how many pixels the Tilescreen tilemap has scrolled down (found via testing) | |||
$0202DEBE-$0202DEBF - Number of how many rows the Tilescreen tilemap has scrolled down (at $0809878C) (Maybe Number of which Intro Story graphic comes next, too) | |||
$0202DF01 - Decides at $080BE1F0 if a subroutine gets started | |||
$0202DF58 - Decides at $080BE1F0 if a subroutine gets started | |||
$0202FD31 - Flag register? (see $08097CB4) | $0202FD31 - Flag register? (see $08097CB4) | ||
$020326BC - Used at $0809B620 | |||
$020326BE - Used at $0809B620 | |||
$020326CC - Set to #$1E at $08099C18. | |||
$020326CD - Set to #$00 at $08099C18. | |||
$020326CE - Set to #$3F at $08099C18. | |||
$020326CF - Set to #$00 at $08099C18. | |||
$020326D0 - Jump Table Entry number for $080977CC; decides about Video Mode. | |||
$020326D1 - Contains the number of the Jump Table Entry where $0800052E jumps to. Is loaded at the end of the subroutine at $080972B4 | $020326D1 - Contains the number of the Jump Table Entry where $0800052E jumps to. Is loaded at the end of the subroutine at $080972B4 | ||
$020326D2 - ? | $020326D2 - ? | ||
$020326D3 - | $020326D3 - Counter for the Intro Sequence with the Still Frames and story, which picture has to be loaded (#$00 - #$03) | ||
$020326D4 - Flag Register; decides at $0809878C which Intro Graphics get loaded | $020326D4 - Flag Register; decides at $0809878C which Intro Graphics get loaded | ||
- Bit 0: If clear, the subroutine at $080975CC does nothing | |||
- Bit 3: If set, the subroutine at $0809878C loads an Intro Story graphic | |||
- Bit 4: If set, the subroutine at $0809878C loads the Title Screen Tilemap data | |||
- Bit 5: If set, the subroutine at $0809878C loads the Title Screen Graphic data | |||
- Bit 6: If set, the Title Screen is in the stadium that it scrolls down | |||
$020326D5 - Flag Register; decides at $0809878C which Intro Graphics get loaded | $020326D5 - Flag Register; decides at $0809878C which Intro Graphics get loaded | ||
$02032704-$02032707 - (Storage for the Offset of the Tilemap buffers?) | $02032704-$02032707 - (Storage for the Offset of the Tilemap buffers?) | ||
$02036120-$0203612F - Set to #$FFFF at $080A9318 | |||
$02036130-$0203613F - Set to #$0001 at $080A9318 | |||
$02036140-$02036147 - Set to #$0000 at $080A9318 | |||
$02036156 - Set to #$00 at $080A9318 | |||
$02036157 - Set to #$00 at $080A9318 | |||
$02036158 - Bits 4-6 serve as a Jump Table Index at $080A93BC, a set Bit 7 can make that the Jump Table segment is left out | |||
- Set to #$00 at $080A9318 | |||
$02036159 - Bit 0 cleared at $080A9318 | |||
$0203642C-$0203652F?- Space for $14-byte sized entries, set to what seems like standard values at $0809EB6C | |||
$02036530-$02036531 - Set to #$0068 at $0809EB6C | |||
$02036532-$02036533 - Set to #$0038 at $0809EB6C | |||
$02036534-$02036535 - Set to #$003C at $0809EB6C | |||
$02036538-$0203653B - Set to #$00000000 at $0809EB6C | |||
$0203653C-$0203653F - Set to #$00000000 at $0809EB6C | |||
$02036540-$02036543 - Set to #$00000000 at $0809EB6C | |||
$02036544-$02036545 - Set to #$FFFF at $0809EB6C | |||
$02036546 - Bit 0 set and Bits 1-4 cleared at $0809EB6C | |||
$020365EC - At $080A0800, it decides about if the OAM is updated by CpuFastSet (= #$01) or DMA (<> #$01) | |||
$0203B6D0-$0203B7D8?- Storage for addresses, see $080BD320 | $0203B6D0-$0203B7D8?- Storage for addresses, see $080BD320 | ||
$0203BB48 - Relevant for Jump Table at $080A6DD4, (loaded at $080A6F28, too) | |||
$0203BB4E - (see $080A6F28) | |||
$0203BB4F-$0203BB50 - Flags (see $080A08C8) | $0203BB4F-$0203BB50 - Flags (see $080A08C8) | ||
$0203BB51 - (see $080A7AFC) | |||
$0203BB60-$0203BB63 - Address (see 080A7CFE onwards) | |||
$0203BB68-$0203BB9F - Data from here is exchanged with data at $020000D0 (see $080BDFD0, for example) | |||
$0203BBA0-$0203BBA1 - Buffer for $04000050 (BLDCNT - Color Special Effects Selection) | $0203BBA0-$0203BBA1 - Buffer for $04000050 (BLDCNT - Color Special Effects Selection) | ||
$0203BBA2-$0203BBA3 - Buffer for $04000052 (BLDALPHA - Alpha Blending Coefficients) | $0203BBA2-$0203BBA3 - Buffer for $04000052 (BLDALPHA - Alpha Blending Coefficients) | ||
Line 50: | Line 154: | ||
$0203BBDC-$0203BBDF - Buffer for $04000038/A (BG3X - BG3 Reference Point X-Coordinate) | $0203BBDC-$0203BBDF - Buffer for $04000038/A (BG3X - BG3 Reference Point X-Coordinate) | ||
$0203BBE0-$0203BBE3 - Buffer for $0400003C/E (BG3Y - BG3 Reference Point Y-Coordinate) | $0203BBE0-$0203BBE3 - Buffer for $0400003C/E (BG3Y - BG3 Reference Point Y-Coordinate) | ||
$0203BC00 - Big Timer (incremented each time the Small Timer runs out) | |||
$0203BC01 - Big Timer Goal value | |||
$0203BC02 - Small Timer (decremented each Loop) | |||
$0203BC03 - Small Timer restore value | |||
$0203BC10-$0203CAA3 - Space cleared (and used?) at $080B6970 | |||
$0203DD90-$0203E18F - OAM buffer | $0203DD90-$0203E18F - OAM buffer | ||
Line 57: | Line 168: | ||
$0203E9D0-$0203E9D3 - Flag registers, worked off at $080988E0 | $0203E9D0-$0203E9D3 - Flag registers, worked off at $080988E0 | ||
$0203F3CC- | $0203E9E0-$0203F39F - (Random Number Table?) Set up in $080BF278 | ||
$0203F3A0-$0203F3A3 - (Random Number Index?) Some load index / controller for $0203E9E0-$0203F39F, see $080BF2E0 | |||
$0203F3AC - Contains a Timer's Number (#$00-#$03), see $080BFB30 | |||
$0203F3B4-$0203F3B7 - Contains a Timer's Reload/Counter register's address (#$04000100, #$04000104...), see $080BFB30 | |||
$0203F3CC-$0203F3CF - Contains an address (see $080B7628) | |||
$03000280-$03000A7F - Data gets transferred here (see $080BDFD0, for example) | |||
$03007FF8-$03007FF9 - Buffer for $04000208/9 (Interrupt Master Enable register) at $08098530 | |||
$03007FFC-$03007FFF - Contains the Address of the Data that got transferred to $03000280 (see $080BDFD0, for example) | |||
{{Internal Data|game=Magical Vacation}} |
Latest revision as of 02:42, 24 January 2024
The following article is a RAM map for Magical Vacation.
$020000D0-$02000107 - Gets values from $080C5590 at $08001724 / Data from here is exchanged with data at $0203BB68 (see $080BDFD0, for example) $02000108 - Loaded at $08008E98 $02000330-$02000331 - Table Number Entry where the Main Loop Jumps next $02000340 - Loaded at $08008E98 $02000360 - Loaded at $08008E98 $02000EF0 - Loaded at $0805C2C8, seems to contain datasets in $38 bytes size $020010B0 - Loaded at $0805C2C8 $02001190 - Loaded at $0805C2C8 $02001191 - Contains a value between #$00 and #$06 (always even number), index for registers $02001192-$02001199 (see $0805BEAC) $02001192-$02001199 - Storage for doublebyte values (see $0805BEAC), these are Load Indexes for a address table in the subroutine at $0805C2C8. (Sound Effect(!) Related) $0200119C-$0200119F - Address of the next Data for Sound A $020011A0-$020011A3 - Compare-Address for Sound A $020011A4-$020011A7 - Jump Back Address(!?!) for Sound A $020111A8-$020011AB - Note Duration(!?!) for Sound A $020011BC-$020011BD - Buffer for $04000080/1 (SOUNDCNT - Control Stereo/Volume/Enable Stereo/Volume/Enable) $020011D0 - Loaded at $0805C2C8 $02008678 - Loaded at $08008E98 $020096B0 - Loaded at $08008E98
$02029CB0 - Loaded at $08008E98 $0202DA08-$0202DA09 - (Random Number?) $0202DE30-$0202DE33 - Set to #$0203BBA0 in Intro - Contains the address of the graphics settings $0202DE34-$0202DE37 - Set to #$0203CAD0 in Intro - Contains the address of the graphics buffer offset $0202DE38-$0202DE3B - Set to #$0203CAC0 in Intro $0202DE3C-$0202DE3F - Set to #$0203BBF0 in Intro $0202DE40-$0202DE43 - Set to #$0203BC10 in Intro $0202DE54-$0202DE57 - Seems to be related to the character portrait rotation in the Intro (found via testing) $0202DE5C - In Intro, this contains the X-offset for the text in the Storybook/Character Presentation segments (found via testing) $0202DE5E - In Intro, this contains the Y-offset for the text in the Storybook/Character Presentation segments (found via testing) $0202DE60-$0202DE61 - A Intro Frame Counter for each Storybook pic / character presentation (found via testing) $0202DEAC-$0202DEAF - Something like a Global Frame Counter for the Intro (stops after leaving). Just counts upward. 32-bit size! (found via testing) $0202DEB0-$0202DEB1 - A Frame Counter for certain segments of the Intro (like: how long the whole storybook or character pres. segment goes on) (found via testing) $0202DEB4-$0202DEB5 - A Frame Counter for certain segments of the Intro (copy of $0202DEB0/1, no apparent differences) (found via testing) $0202DEBC-$0202DEBD - Number of how many pixels the Tilescreen tilemap has scrolled down (found via testing) $0202DEBE-$0202DEBF - Number of how many rows the Tilescreen tilemap has scrolled down (at $0809878C) (Maybe Number of which Intro Story graphic comes next, too) $0202DF01 - Decides at $080BE1F0 if a subroutine gets started $0202DF58 - Decides at $080BE1F0 if a subroutine gets started $0202FD31 - Flag register? (see $08097CB4)
$020326BC - Used at $0809B620 $020326BE - Used at $0809B620 $020326CC - Set to #$1E at $08099C18. $020326CD - Set to #$00 at $08099C18. $020326CE - Set to #$3F at $08099C18. $020326CF - Set to #$00 at $08099C18. $020326D0 - Jump Table Entry number for $080977CC; decides about Video Mode. $020326D1 - Contains the number of the Jump Table Entry where $0800052E jumps to. Is loaded at the end of the subroutine at $080972B4 $020326D2 - ? $020326D3 - Counter for the Intro Sequence with the Still Frames and story, which picture has to be loaded (#$00 - #$03) $020326D4 - Flag Register; decides at $0809878C which Intro Graphics get loaded - Bit 0: If clear, the subroutine at $080975CC does nothing - Bit 3: If set, the subroutine at $0809878C loads an Intro Story graphic - Bit 4: If set, the subroutine at $0809878C loads the Title Screen Tilemap data - Bit 5: If set, the subroutine at $0809878C loads the Title Screen Graphic data - Bit 6: If set, the Title Screen is in the stadium that it scrolls down $020326D5 - Flag Register; decides at $0809878C which Intro Graphics get loaded $02032704-$02032707 - (Storage for the Offset of the Tilemap buffers?) $02036120-$0203612F - Set to #$FFFF at $080A9318 $02036130-$0203613F - Set to #$0001 at $080A9318 $02036140-$02036147 - Set to #$0000 at $080A9318 $02036156 - Set to #$00 at $080A9318 $02036157 - Set to #$00 at $080A9318 $02036158 - Bits 4-6 serve as a Jump Table Index at $080A93BC, a set Bit 7 can make that the Jump Table segment is left out - Set to #$00 at $080A9318 $02036159 - Bit 0 cleared at $080A9318 $0203642C-$0203652F?- Space for $14-byte sized entries, set to what seems like standard values at $0809EB6C $02036530-$02036531 - Set to #$0068 at $0809EB6C $02036532-$02036533 - Set to #$0038 at $0809EB6C $02036534-$02036535 - Set to #$003C at $0809EB6C $02036538-$0203653B - Set to #$00000000 at $0809EB6C $0203653C-$0203653F - Set to #$00000000 at $0809EB6C $02036540-$02036543 - Set to #$00000000 at $0809EB6C $02036544-$02036545 - Set to #$FFFF at $0809EB6C $02036546 - Bit 0 set and Bits 1-4 cleared at $0809EB6C $020365EC - At $080A0800, it decides about if the OAM is updated by CpuFastSet (= #$01) or DMA (<> #$01) $0203B6D0-$0203B7D8?- Storage for addresses, see $080BD320 $0203BB48 - Relevant for Jump Table at $080A6DD4, (loaded at $080A6F28, too) $0203BB4E - (see $080A6F28) $0203BB4F-$0203BB50 - Flags (see $080A08C8) $0203BB51 - (see $080A7AFC) $0203BB60-$0203BB63 - Address (see 080A7CFE onwards) $0203BB68-$0203BB9F - Data from here is exchanged with data at $020000D0 (see $080BDFD0, for example) $0203BBA0-$0203BBA1 - Buffer for $04000050 (BLDCNT - Color Special Effects Selection) $0203BBA2-$0203BBA3 - Buffer for $04000052 (BLDALPHA - Alpha Blending Coefficients) $0203BBA4-$0203BBA5 - Buffer for $04000054 (BLDY - Brightness (Fade-In/Out) Coefficient) $0203BBA8-$0203BBA9 - Buffer for $04000000 (DISPCNT - LCD Control) $0203BBAA-$0203BBAB - Buffer for $04000008 (BG0CNT - BG0 Control) $0203BBAC-$0203BBAD - Buffer for $0400000A (BG1CNT - BG1 Control) $0203BBAE-$0203BBAF - Buffer for $0400000C (BG2CNT - BG2 Control) $0203BBB0-$0203BBB1 - Buffer for $0400000E (BG3CNT - BG3 Control) $0203BBB2-$0203BBB3 - Buffer for $04000010 (BG0HOFS - BG0 X-Offset) $0203BBB4-$0203BBB5 - Buffer for $04000012 (BG0VOFS - BG0 Y-Offset) $0203BBB6-$0203BBB7 - Buffer for $04000014 (BG1HOFS - BG1 X-Offset) $0203BBB8-$0203BBB9 - Buffer for $04000016 (BG1VOFS - BG1 Y-Offset) $0203BBBA-$0203BBBB - Buffer for $04000018 (BG2HOFS - BG2 X-Offset) $0203BBBC-$0203BBBD - Buffer for $0400001A (BG2VOFS - BG2 Y-Offset) $0203BBBE-$0203BBBF - Buffer for $0400001C (BG3HOFS - BG3 X-Offset) $0203BBC0-$0203BBC1 - Buffer for $0400001E (BG3VOFS - BG3 Y-Offset) $0203BBC2-$0203BBC3 - Buffer for $04000020 (BG2PA - BG2 Rotation/Scaling Parameter A (alias dx)) $0203BBC4-$0203BBC5 - Buffer for $04000022 (BG2PB - BG2 Rotation/Scaling Parameter B (alias dmx)) $0203BBC6-$0203BBC7 - Buffer for $04000024 (BG2PC - BG2 Rotation/Scaling Parameter C (alias dy)) $0203BBC8-$0203BBC9 - Buffer for $04000026 (BG2PD - BG2 Rotation/Scaling Parameter D (alias dmy)) $0203BBCA-$0203BBCB - Buffer for $04000030 (BG3PA - BG3 Rotation/Scaling Parameter A (alias dx)) $0203BBCC-$0203BBCD - Buffer for $04000032 (BG3PB - BG3 Rotation/Scaling Parameter B (alias dmx)) $0203BBCE-$0203BBCF - Buffer for $04000034 (BG3PC - BG3 Rotation/Scaling Parameter C (alias dy)) $0203BBD0-$0203BBD1 - Buffer for $04000036 (BG3PD - BG3 Rotation/Scaling Parameter D (alias dmy)) $0203BBD4-$0203BBD7 - Buffer for $04000028/A (BG2X - BG2 Reference Point X-Coordinate) $0203BBD8-$0203BBDB - Buffer for $0400002C/E (BG2Y - BG2 Reference Point Y-Coordinate) $0203BBDC-$0203BBDF - Buffer for $04000038/A (BG3X - BG3 Reference Point X-Coordinate) $0203BBE0-$0203BBE3 - Buffer for $0400003C/E (BG3Y - BG3 Reference Point Y-Coordinate) $0203BC00 - Big Timer (incremented each time the Small Timer runs out) $0203BC01 - Big Timer Goal value $0203BC02 - Small Timer (decremented each Loop) $0203BC03 - Small Timer restore value $0203BC10-$0203CAA3 - Space cleared (and used?) at $080B6970 $0203DD90-$0203E18F - OAM buffer $0203E490-$0203E68F - BG/OBJ Palette buffer $0203E9D0-$0203E9D3 - Flag registers, worked off at $080988E0 $0203E9E0-$0203F39F - (Random Number Table?) Set up in $080BF278 $0203F3A0-$0203F3A3 - (Random Number Index?) Some load index / controller for $0203E9E0-$0203F39F, see $080BF2E0 $0203F3AC - Contains a Timer's Number (#$00-#$03), see $080BFB30 $0203F3B4-$0203F3B7 - Contains a Timer's Reload/Counter register's address (#$04000100, #$04000104...), see $080BFB30 $0203F3CC-$0203F3CF - Contains an address (see $080B7628)
$03000280-$03000A7F - Data gets transferred here (see $080BDFD0, for example) $03007FF8-$03007FF9 - Buffer for $04000208/9 (Interrupt Master Enable register) at $08098530 $03007FFC-$03007FFF - Contains the Address of the Data that got transferred to $03000280 (see $080BDFD0, for example)
Internal Data for Magical Vacation
| |
---|---|