Donkey Kong Land/RAM map: Difference between revisions

From Data Crystal
Jump to navigation Jump to search
(Created page with '{{rammap|game=Donkey Kong Land}} * <tt>0xC64E</tt> - Current Character ** <tt>00</tt> - Donkey Kong ** <tt>01</tt> - Diddy Kong * <tt>0xC66D</tt> - Lives * <tt>0xC29A</tt> - Loca…')
 
m (Xkeeper moved page Donkey Kong Land:RAM map to Donkey Kong Land/RAM map: normalize subpages and titles)
 
(6 intermediate revisions by one other user not shown)
Line 1: Line 1:
{{rammap|game=Donkey Kong Land}}
{{rammap|game=Donkey Kong Land}}
* <tt>0xC64E</tt> - Current Character
* <tt>C64E</tt> = Current Character
** <tt>00</tt> - Donkey Kong
** <tt>00</tt> = Donkey Kong
** <tt>01</tt> - Diddy Kong
** <tt>01</tt> = Diddy Kong
* <tt>0xC66D</tt> - Lives
* <tt>C66D</tt> = Lives
* <tt>0xC29A</tt> - Location
* <tt>C29A</tt> = Location
** A list of values can be found [[Donkey Kong Land:Notes#Map_IDs|here]].
* <tt>CAAC</tt> = Bonus exit destination
** A list of values can be found [[Donkey Kong Land:Notes#Map_IDs|here]]. Note that you should add this value by <tt>0x01</tt> to get the proper value in the list. Also, this value is <tt>0x00</tt> while not in a bonus stage.
* <tt>CA05</tt> = Current music tempo
* <tt>A000-A4B6</tt> = Music data of current level
 
* <tt>CA01</tt> = Most recent buttons pressed
* <tt>CA03</tt> = Current buttons pressed (Down, Up, Left, Right, Start, Select, B, A)
 
== Saved data ==
* <tt>AA00-AA3F</tt> = File 1
* <tt>AA40-AA7F</tt> = File 2
* <tt>AA80-AABF</tt> = File 3
{| border="1" style="border-collapse:collapse;"
|-
! File 1 !! File 2 !! File 3 !! Description
|-
| <tt>AA00-AA05</tt>
| <tt>AA40-AA45</tt>
| <tt>AA80-AA85</tt>
| "<tt>PFLOYD</tt>" ASCII string header
|-
| <tt>AA3E</tt>
| <tt>AA7E</tt>
| <tt>AABE</tt>
| 8-bit addition-based checksum of initial <tt>3E</tt> bytes of file (e.g. <tt>AA00-AA3D</tt> for File 1)
|-
| <tt>AA3F</tt>
| <tt>AA7F</tt>
| <tt>AABF</tt>
| 8-bit XOR-based checksum of initial <tt>3E</tt> bytes of file (e.g. <tt>AA00-AA3D</tt> for File 1)
|}
 
For a file to be considered valid, the following conditions must pass:
* The "<tt>PFLOYD</tt>" ASCII string must be present at the beginning of the file. (This string is compared with the string found at ROM offset <tt>6F7A</tt>.)
* The addition-based checksum must pass.
* The XOR-based checksum must pass.
 
If any of these conditions fail, the file is erased. Unlike the sequels, backup files do not exist in this game in any form.
 
{{Internal Data|game=Donkey Kong Land}}

Latest revision as of 02:41, 24 January 2024

Chip tiny.png The following article is a RAM map for Donkey Kong Land.

  • C64E = Current Character
    • 00 = Donkey Kong
    • 01 = Diddy Kong
  • C66D = Lives
  • C29A = Location
    • A list of values can be found here.
  • CAAC = Bonus exit destination
    • A list of values can be found here. Note that you should add this value by 0x01 to get the proper value in the list. Also, this value is 0x00 while not in a bonus stage.
  • CA05 = Current music tempo
  • A000-A4B6 = Music data of current level
  • CA01 = Most recent buttons pressed
  • CA03 = Current buttons pressed (Down, Up, Left, Right, Start, Select, B, A)

Saved data

  • AA00-AA3F = File 1
  • AA40-AA7F = File 2
  • AA80-AABF = File 3
File 1 File 2 File 3 Description
AA00-AA05 AA40-AA45 AA80-AA85 "PFLOYD" ASCII string header
AA3E AA7E AABE 8-bit addition-based checksum of initial 3E bytes of file (e.g. AA00-AA3D for File 1)
AA3F AA7F AABF 8-bit XOR-based checksum of initial 3E bytes of file (e.g. AA00-AA3D for File 1)

For a file to be considered valid, the following conditions must pass:

  • The "PFLOYD" ASCII string must be present at the beginning of the file. (This string is compared with the string found at ROM offset 6F7A.)
  • The addition-based checksum must pass.
  • The XOR-based checksum must pass.

If any of these conditions fail, the file is erased. Unlike the sequels, backup files do not exist in this game in any form.