Kirby's Adventure:RAM map

From Data Crystal
Revision as of 10:26, 8 May 2007 by Kapow (talk | contribs)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
  • 0042 = PPU sprite banks 0-1
  • 0043 = PPU sprite banks 2-3
  • 0044 = PPU background bank 0
  • 0045 = PPU background bank 1
  • 0046 = PPU background bank 2
  • 0047 = PPU background bank 3
  • 0593 - 0595 (0003) = score (1 per 10 points)
  • 0596 = health (max) (count by 8)
  • 0597 = health (current) (count by 8)
  • 0598 = power (for mike, crash, light)
    • only used for display, except mike
  • 0599 = lives
    • max of 63 (99 decimal)
  • 059D = lives display
    • 00 = lives only
    • 01 = power & lives
    • 02-FF = [GLITCH]
  • 05E2 = power of eaten enemy
  • 05E3 = current power (see Notes)
    • NOTE: bytes for actually being able to use power are VERY COMPLICATED (627F 6291 62A3 / 62D9 62EB 62FD)
  • 058C = background graphics cycle - current
  • 058D = background graphics cycle - countdown
  • 058E = background graphics cycle - type
  • 62C7 = kirby state (see Notes)

Tileset Data Format

Tileset data is decompressed to 67EE - 6D2D (0540), then decoded to 7A00 - 7FFF (0600)

Original format:

  • 67EE - 6BED (0400) = tileset - sets of PPU tiles (4 bytes per full tile)
  • 6BEE - 6C2D (0040) = tileset - palettes (2 bits per tile)
  • 6C2E - 6D2D (0100) = tileset - attributes

Decoded format:

  • 7A00 - 7AFF (0100) = tileset - top-left PPU tile
  • 7B00 - 7BFF (0100) = tileset - top-right PPU tile
  • 7C00 - 7CFF (0100) = tileset - bottom-left PPU tile
  • 7D00 - 7DFF (0100) = tileset - bottom-right PPU tile
  • 7E00 - 7EFF (0100) = tileset - palette
  • 7F00 - 7FFF (0100) = tileset - attribute (see Notes)

Map Data Format

After the tileset data is decoded, the map data is decompressed (no decoding necessary)

  • 67EE - 74C7 (0CDA) = decompressed map output
    • 67EE - 68C7 (00DA) = header
      • 67EE = map width
      • 67EF = map height
      • 67F0 = PPU background banks (see ROM 0x0B428)
      • 67F1 = PPU background palettes (see Background Palettes)
      • 67F2 = PPU sprite banks
      • 67F3 = PPU sprite palettes (see ROM 0x24E65)
      • 67F4 = music
      • 67F5 = background animation delay (00 = off)
      • 67F6 - 68C7 (0010) = map screen order (from top, by rows)
    • 68C8 - 6987 (00C0) = map screen 1
    • 6988 - 6A47 (00C0) = map screen 2
    • 6A48 - 6B07 (00C0) = map screen 3
    • 6B08 - 6BC7 (00C0) = map screen 4
    • 6BC8 - 6C87 (00C0) = map screen 5
    • 6C88 - 6D47 (00C0) = map screen 6
    • 6D48 - 6E07 (00C0) = map screen 7
    • 6E08 - 6EC7 (00C0) = map screen 8
    • 6EC8 - 6F87 (00C0) = map screen 9
    • 6F88 - 7047 (00C0) = map screen 10
    • 7048 - 7107 (00C0) = map screen 11
    • 7108 - 71C7 (00C0) = map screen 12
    • 71C8 - 7287 (00C0) = map screen 13
    • 7288 - 7347 (00C0) = map screen 14
    • 7348 - 7407 (00C0) = map screen 15
    • 7408 - 74C7 (00C0) = map screen 16