Welcome to Data Crystal's new home! Data Crystal is now part of the TCRF family (sort of).
The wiki has recently moved; please report any issues in Discord. Pardon the dust.

The Legend of Zelda: Oracle of Seasons/RAM map: Difference between revisions

From Data Crystal
Jump to navigation Jump to search
m (C000 - C5BF + "Undocumented" -> "Unmapped")
m (New addresses + Keeping track of how many byte each unmapped chunk occupies got old quickly.)
Line 23: Line 23:
|C63A || 1 Byte || Current level bank
|C63A || 1 Byte || Current level bank
|-
|-
|C63B || 1 Byte || Current Overworld Screen
|C63B || 1 Byte || Current ''Absolute'' Overworld Screen<br />'''OR'''<br />Current ''Relative'' Dungeon Screen
|-
|-
 
|C63C || 1 Byte || Current ''Absolute'' Dungeon Screen
|}
|}


Line 97: Line 97:
! '''Size'''
! '''Size'''
! '''Purpose'''
! '''Purpose'''
|-
|C66F || 1 Byte || Small Keys
|-
|C67A || 1 Byte || Has Boss Key<br />(if value ends in '''2''', '''3''', '''6''', '''7''', '''A''', '''B''', '''E''', or '''F''')
|-
|C67C || 1 Byte || Has Compass<br />(if value ends in '''2''', '''3''', '''6''', '''7''', '''A''', '''B''', '''E''', or '''F''')
|-
|C67E || 1 Byte || Has Dungeon Map<br />(if value ends in '''2''', '''3''', '''6''', '''7''', '''A''', '''B''', '''E''', or '''F''')
|-
|-
|C680 - C691 ||  || Items
|C680 - C691 ||  || Items
Line 157: Line 165:
{| border="3" cellpadding="7"
{| border="3" cellpadding="7"
! style="text-align: center;" | '''RAM'''
! style="text-align: center;" | '''RAM'''
! '''Size'''
|-
|-
|C000 - C5BF || 1472 Bytes
|C000 - C5BF
|-
|C600 - C601
|-
|C607 - C615
|-
|C620 - C621
|-
|C626 - C639
|-
|-
|C600 - C601 || 2 Bytes
|C63D
|-
|-
|C607 - C615 || 15 Bytes
|C63F - C64B
|-
|-
|C620 - C621 || 2 Bytes
|C65E - C66E
|-
|-
|C626 - C639 || 20 Bytes
|C670 - C679
|-
|-
|C63C - C63D || 2 Bytes
|C67B
|-
|-
|C63F - C64B || 13 Bytes
|C67D
|-
|-
|C65E - C67F || 34 Bytes
|C67F
|-
|-
|C692 - C6A1 || 16 Bytes
|C692 - C6A1
|-
|-
|C6A4 || 1 Byte
|C6A4
|-
|-
|C6AB || 1 Byte
|C6AB
|-
|-
|C6AD - C6B0 || 4 Bytes
|C6AD - C6B0
|-
|-
|C6B2 || 1 Byte
|C6B2
|-
|-
|C6BC - C6C5 || 10 Bytes
|C6BC - C6C5
|-
|-
|C6C7 - C6FF || 57 Bytes
|C6C7 - C6FF
|-
|-
|C800 - CC2F || 1072 Bytes
|C800 - CC2F
|-
|-
|CC31 - CDFF || 463 Bytes
|CC31 - CDFF
|-
|-
|CEB0 - CEFF || 80 Bytes
|CEB0 - CEFF
|-
|-
|CFB0 - CFFF || 80 Bytes
|CFB0 - CFFF
|}
|}

Revision as of 00:51, 24 April 2023

NOTE: All values in Tables are Hexadecimal unless noted otherwise.

Chip tiny.png The following article is a RAM map for The Legend of Zelda: Oracle of Seasons.

Bank 0 (C000 - CFFF)


TBD

RAM Size Purpose
C5C0 - C5FF Unappraised rings carried
C602 - C606 Player name
C616 - C61D Rings owned
C61E - C61F 2 Bytes Deaths
C622 - C625 4 Bytes Time passed since start of game
C63A 1 Byte Current level bank
C63B 1 Byte Current Absolute Overworld Screen
OR
Current Relative Dungeon Screen
C63C 1 Byte Current Absolute Dungeon Screen


Enemies killed since...

RAM Size Purpose
C63E 1 Byte Enemies killed since last Maple encounter
C64C 1 Byte Enemies killed since Gasha Seed planted at ??
C64D 1 Byte Enemies killed since Gasha Seed planted at ??
C64E 1 Byte Enemies killed since Gasha Seed planted at ??
C64F 1 Byte Enemies killed since Gasha Seed planted at ??
C650 1 Byte Enemies killed since Gasha Seed planted at ??
C651 1 Byte Enemies killed since Gasha Seed planted at ??
C652 1 Byte Enemies killed since Gasha Seed planted at ??
C653 1 Byte Enemies killed since Gasha Seed planted at ??
C654 1 Byte Enemies killed since Gasha Seed planted at ??
C655 1 Byte Enemies killed since Gasha Seed planted at ??
C656 1 Byte Enemies killed since Gasha Seed planted at K7
C657 1 Byte Enemies killed since Gasha Seed planted at ??
C658 1 Byte Enemies killed since Gasha Seed planted at ??
C659 1 Byte Enemies killed since Gasha Seed planted at ??
C65A 1 Byte Enemies killed since Gasha Seed planted at ??
C65B 1 Byte Enemies killed since Gasha Seed planted at M9


Mysterious Counter

C65C - C65D A counter for ??? for which various actions increment
Action Incrementation
Great Fairy Heal 0x40
Bomb a Wall 0x32
Collect a Fairy 0x18
Screen Transition (excluding entering and exiting structures) 0x05
Collecting a Heart 0x04
Slaying an Enemy 0x03


Items/Collectables

RAM Size Purpose
C66F 1 Byte Small Keys
C67A 1 Byte Has Boss Key
(if value ends in 2, 3, 6, 7, A, B, E, or F)
C67C 1 Byte Has Compass
(if value ends in 2, 3, 6, 7, A, B, E, or F)
C67E 1 Byte Has Dungeon Map
(if value ends in 2, 3, 6, 7, A, B, E, or F)
C680 - C691 Items
C6A2 1 Byte Current Hearts
C6A3 1 Byte Max Hearts
C6A5 - C6A6 2 Bytes Rupees
C6A7 - C6A8 2 Bytes Ore Chunks
C6A9 1 Byte Shield level
C6AA 1 Byte Current Bombs
C6AC 1 Byte Sword level
C6B1 1 Byte Boomerang level
C6B3 1 Byte Slingshot level
C6B4 1 Byte Roc's feather level
C6B5 1 Byte Ember Seeds
C6B6 1 Byte Scent Seeds
C6B7 1 Byte Pegasus Seeds
C6B8 1 Byte Gale Seeds
C6B9 1 Byte Mystery Seeds
C6BA 1 Byte Gasha Seeds
C6BB 1 Byte Essences
C6C6 1 Byte Ring Box level


TBD

RAM Size Purpose
C700 - C7FF Overworld Screen Flags (used to track events and map exploration)
CC30 1 Byte Enemies left on screen
CE00 - CEAF Current Screen Collision Data (dynamically generated from the screen tile data. this space is also used as a temporary store for compressed level data read from ROM)
CF00 - CFAF Current Screen Tile Data


Unmapped

RAM
C000 - C5BF
C600 - C601
C607 - C615
C620 - C621
C626 - C639
C63D
C63F - C64B
C65E - C66E
C670 - C679
C67B
C67D
C67F
C692 - C6A1
C6A4
C6AB
C6AD - C6B0
C6B2
C6BC - C6C5
C6C7 - C6FF
C800 - CC2F
CC31 - CDFF
CEB0 - CEFF
CFB0 - CFFF