The current URL is datacrystal.tcrf.net.
The Legend of Zelda: Oracle of Seasons/RAM map: Difference between revisions
(Started to describe sound RAM) |
(→Dungeons: Room of Rites; $C662 - $C67F complete.) |
||
(21 intermediate revisions by the same user not shown) | |||
Line 12: | Line 12: | ||
==Sound== | ==Sound== | ||
{| border="3" cellpadding="7" style="width: 75%;" | {| border="3" cellpadding="7" style="width: 75%; margin: 0 0 1em 1em; border-color: #8888cc;" | ||
|- style="background: #ccccff; font-size: 1.5em;" | |||
! style="width: 100px;" | '''Address''' | |||
! style="width: 75px;" | '''Length''' | ! style="width: 75px;" | '''Length''' | ||
! style="width: 300px;" | '''Purpose''' | ! style="width: 300px;" | '''Purpose''' | ||
! ''' | ! '''Info''' | ||
|- | |- | ||
|'''$C024''' || 1 Byte || Sound Volume || | |'''$C024''' || 1 Byte || Sound Volume || | ||
<center> | <center> | ||
{| class="wikitable" style="width: 100%; text-align: center; border: 2px solid black;" | {| class="wikitable" style="width: 100%; text-align: center; border: 2px solid black;" | ||
! colspan="8" style="height: 35px; font-size: 1. | ! colspan="8" style="height: 35px; font-size: 1.3em;" | Bits | ||
|- style="border-top: 2px solid black; border-bottom: 2px solid black; font-size: 1.2em;" | | |- style="border-top: 2px solid black; border-bottom: 2px solid black; font-size: 1.2em;" | | ||
! 0 | ! 0 | ||
Line 35: | Line 36: | ||
| Right Speaker | | Right Speaker | ||
| Right Speaker | | Right Speaker | ||
|rowspan="2"| <font color=" | |rowspan="2" bgcolor="red" | <font color="white">'''UNUSED'''</font> | ||
| Left Speaker | | Left Speaker | ||
| Left Speaker | | Left Speaker | ||
| Left Speaker | | Left Speaker | ||
|rowspan="2"| <font color=" | |rowspan="2" bgcolor="red" | <font color="white">'''UNUSED'''</font> | ||
|} | |} | ||
</center> | </center> | ||
Line 49: | Line 50: | ||
<center> | <center> | ||
{| class="wikitable" style="width: 100%; text-align: center; border: 2px solid black;" | {| class="wikitable" style="width: 100%; text-align: center; border: 2px solid black;" | ||
! colspan="9" style="height: 35px; font-size: 1. | ! colspan="9" style="height: 35px; font-size: 1.3em;" | Volume Levels | ||
|- style="border-top: 2px solid black; border-bottom: 2px solid black; font-size: 1.2em;" | | |- style="border-top: 2px solid black; border-bottom: 2px solid black; font-size: 1.2em;" | | ||
! style= | ! {{Diagonal split header | Speaker | Level | style=border-right: 2px solid black; width: 15%;}} | ||
! 0 | ! 0 | ||
! 1 | ! 1 | ||
Line 94: | Line 95: | ||
==TBD== | ==TBD== | ||
{| border="3" cellpadding="7" style="width: 75%;" | {| border="3" cellpadding="7" style="width: 75%; margin: 0 0 1em 1em; border-color: #8888cc;" | ||
! style="text-align: center; width: 100px;" | ''' | |- style="background: #ccccff; font-size: 1.5em;" | ||
! style="text-align: center; width: 100px;" | '''Address''' | |||
! style="width: 75px;" | '''Length''' | ! style="width: 75px;" | '''Length''' | ||
! style="width: 300px;" | '''Purpose''' | ! style="width: 300px;" | '''Purpose''' | ||
! ''' | ! '''Info''' | ||
|- | |- | ||
|'''$C5C0''' - '''$C5FF''' || 64 Bytes || Unappraised Rings || | |'''$C2EF''' || 1 Byte || Cutscene Index || | ||
When this value is changed, the corresponding cutscene is played. | |||
<center> | |||
{| class="mw-collapsible mw-collapsed wikitable" style="width: 100%; text-align: center; border: 2px solid black;" | |||
! colspan="3" style="height: 35px; font-size: 1.3em;" | Cutscenes | |||
|- style="border-top: 2px solid black; border-bottom: 2px solid black; font-size: 1.2em;" | | |||
! {{Diagonal split header | Value | Info | style=border-right: 2px solid black; width: 10%;}} | |||
! Cutscene<br />Description | |||
! Notes | |||
|- | |||
! style="border-right: 2px solid black;" | 0x00 | |||
| Loading Room | |||
| This is used when the screen is transitioning to another screen.<!-- | |||
It is required for some things to properly load during a transition such as screen tile data when a Gale Seed warp is selected.--> | |||
|- | |||
! style="border-right: 2px solid black;" | 0x01 | |||
| In Game | |||
| This is the default state when Link is controllable on a screen. | |||
|- | |||
! style="border-right: 2px solid black;" | 0x02 | |||
| colspan="2" bgcolor="red" | <font color="white">'''UNUSED'''</font> | |||
|- | |||
! style="border-right: 2px solid black;" | 0x03 | |||
| ??? | |||
| | |||
|- | |||
! style="border-right: 2px solid black;" | 0x04 | |||
| ??? | |||
| | |||
|- | |||
! style="border-right: 2px solid black;" | 0x05 | |||
| ??? | |||
| | |||
|- | |||
! style="border-right: 2px solid black;" | 0x06 | |||
| Din Dancing | |||
| | |||
|- | |||
! style="border-right: 2px solid black;" | 0x07 | |||
| Din Imprisoned | |||
| Onox seals Din in a crystal. | |||
|- | |||
! style="border-right: 2px solid black;" | 0x08 | |||
| Temple Sinking | |||
| The Temple of Seasons is sinking. | |||
|- | |||
! style="border-right: 2px solid black;" | 0x09 | |||
| Din Crystal Descending | |||
| Din appears after beating Onox. | |||
|- | |||
! style="border-right: 2px solid black;" | 0x0A | |||
| Credits | |||
| | |||
|- | |||
! style="border-right: 2px solid black;" | 0x0B | |||
| Volcano Erupting | |||
| | |||
|- | |||
! style="border-right: 2px solid black;" | 0x0C | |||
| Pirates Depart | |||
| | |||
|- | |||
! style="border-right: 2px solid black;" | 0x0D | |||
| Pre-Game Intro | |||
| "Accept our quest, hero!" | |||
|- | |||
! style="border-right: 2px solid black;" | 0x0E | |||
| Onox Taunting | |||
| Triggers after getting the Maku Seed. | |||
|- | |||
! style="border-right: 2px solid black;" | 0x0F | |||
| Room of Rites Collapse | |||
| | |||
|- | |||
! style="border-right: 2px solid black;" | 0x10 | |||
| Flame of Destruction | |||
| The flame is lit after beating Onox. | |||
|- | |||
! style="border-right: 2px solid black;" | 0x11 | |||
| Zelda Villagers (Linked) | |||
| Zelda encourages the villagers. | |||
|- | |||
! style="border-right: 2px solid black;" | 0x12 | |||
| Zelda Kidnapped | |||
| Zelda is kidnapped by Twinrova. | |||
|- | |||
! style="border-right: 2px solid black;" | 0x13 | |||
| Onox Final Form | |||
| | |||
|- | |||
! style="border-right: 2px solid black;" | 0x14 | |||
| Onox Castle Force | |||
| Link cannot enter Onox castle area. | |||
|- | |||
! style="border-right: 2px solid black;" | 0x15 | |||
| ??? | |||
| | |||
|- | |||
! style="border-right: 2px solid black;" | 0x16 | |||
| In Gale Seed Menu | |||
| | |||
|- | |||
! style="border-right: 2px solid black;" | 0x17 | |||
| Warp to Twinrova Fight | |||
| Triggers after approaching Zelda. | |||
|- | |||
! style="border-right: 2px solid black;" | 0x18 | |||
| Flames Flickering | |||
| The flames burn blue before the Twinrova fight. | |||
|- | |||
! style="border-right: 2px solid black;" | 0x19 | |||
| Twinrova Sacrifice | |||
| | |||
|- | |||
! style="border-right: 2px solid black;" | 0x1A<br />-<br />0xFF | |||
| colspan="2" bgcolor="red" | <font color="white">'''UNUSED'''</font> | |||
|} | |||
</center> | |||
|} | |||
==TBD== | |||
{| border="3" cellpadding="7" style="width: 75%; margin: 0 0 1em 1em; border-color: #8888cc;" | |||
|- style="background: #ccccff; font-size: 1.5em;" | |||
! style="text-align: center; width: 100px;" | '''Address''' | |||
! style="width: 75px;" | '''Length''' | |||
! style="width: 300px;" | '''Purpose''' | |||
! '''Info''' | |||
|- | |||
|'''$C5C0''' - '''$C5FF''' || 64 Bytes || Unappraised Rings || Todo: Map possible ring values. | |||
|- | |- | ||
|'''$C602''' - '''$C607''' || 6 Bytes || Player Name || | |'''$C602''' - '''$C607''' || 6 Bytes || Player Name || | ||
<center> | <center> | ||
{| class="wikitable" style="width: 100%; text-align: center; border: 2px solid black;" | {| class="wikitable" style="width: 100%; text-align: center; border: 2px solid black;" | ||
! colspan="6" style="height: 35px; font-size: 1. | ! colspan="6" style="height: 35px; font-size: 1.3em;" | Bytes | ||
|- style="border-top: 2px solid black; border-bottom: 2px solid black; font-size: 1.2em;" | | |- style="border-top: 2px solid black; border-bottom: 2px solid black; font-size: 1.2em;" | | ||
! '''$C602''' | ! '''$C602''' | ||
Line 119: | Line 260: | ||
| Fourth Letter | | Fourth Letter | ||
| Fifth Letter | | Fifth Letter | ||
| Null Terminator<br /><br />This is always expected to be <code>0x00</code><br /> | | Null Terminator<br /><br />This is always expected to be <code>0x00</code><br /><br />If the player name is 5 characters long, anything other than <code>0x00</code> will cause the game to softlock with either garbled graphics, or on a screen stating "This game can be played only on Game Boy® Color" | ||
|} | |} | ||
</center> | </center> | ||
See the [[The_Legend_of_Zelda:_Oracle_of_Seasons/TBL|Text Map]] for a list of valid characters (though not all can be selected on file creation). | |||
|- | |- | ||
|'''$C616''' - '''$C61D''' || 8 Bytes || Rings Owned || Todo: Map which bits correspond to which rings. | |'''$C616''' - '''$C61D''' || 8 Bytes || Rings Owned || Todo: Map which bits correspond to which rings. | ||
|} | |} | ||
==Totals Since File Creation== | ==Totals Since File Creation== | ||
{| border="3" cellpadding="7" style="width: 75%;" | {| border="3" cellpadding="7" style="width: 75%; margin: 0 0 1em 1em; border-color: #8888cc;" | ||
! style="text-align: center; width: 100px;" | ''' | |- style="background: #ccccff; font-size: 1.5em;" | ||
! style="text-align: center; width: 100px;" | '''Address''' | |||
! style="width: 75px;" | '''Length''' | ! style="width: 75px;" | '''Length''' | ||
! style="width: 300px;" | '''Purpose''' | ! style="width: 300px;" | '''Purpose''' | ||
! ''' | ! '''Info''' | ||
|- | |- | ||
|'''$C61E''' - '''$C61F''' || 2 Bytes || Deaths || <u>'''Value is represented in decimal'''</u> | |'''$C61E''' - '''$C61F''' || 2 Bytes || Deaths || <u>'''Value is represented in decimal'''</u> | ||
Line 149: | Line 289: | ||
|'''$C622''' - '''$C625''' || 4 Bytes || Time Passed (in frames) || | |'''$C622''' - '''$C625''' || 4 Bytes || Time Passed (in frames) || | ||
|- | |- | ||
|'''$C626''' || 1 Byte || Signs Destroyed || | |'''$C626''' || 1 Byte || Signs Destroyed || TODO: Explain. | ||
|- | |- | ||
|'''$C627''' - '''$C628''' || 2 Bytes || Rupees Collected || <u>'''Value is represented in decimal'''</u>.<br /><br />'''Example''': If the total earned rupee count is 8,473, the hexadecimal representation will be <code>0x8473</code>.<br /><br />When a rupee gain pushes the value over <code>0x9999</code>, the value is then set to 0x6363, the value will no longer change, and <code>$C6CA</code> is then incremented by <code>0x02</code> so that Vasu will give the Rupee Ring the next time he is spoken with. | |'''$C627''' - '''$C628''' || 2 Bytes || Rupees Collected || <u>'''Value is represented in decimal'''</u>.<br /><br />'''Example''': If the total earned rupee count is 8,473, the hexadecimal representation will be <code>0x8473</code>.<br /><br />When a rupee gain pushes the value over <code>0x9999</code>, the value is then set to 0x6363, the value will no longer change, and <code>$C6CA</code> is then incremented by <code>0x02</code> so that Vasu will give the Rupee Ring the next time he is spoken with. | ||
|} | |} | ||
==TBD== | ==TBD== | ||
{| border="3" cellpadding="7" style="width: 75%;" | {| border="3" cellpadding="7" style="width: 75%; margin: 0 0 1em 1em; border-color: #8888cc;" | ||
! style="text-align: center; width: 100px;" | ''' | |- style="background: #ccccff; font-size: 1.5em;" | ||
! style="text-align: center; width: 100px;" | '''Address''' | |||
! style="width: 75px;" | '''Length''' | ! style="width: 75px;" | '''Length''' | ||
! style="width: 300px;" | '''Purpose''' | ! style="width: 300px;" | '''Purpose''' | ||
! ''' | ! '''Info''' | ||
|- | |- | ||
|'''$C629''' || 1 Byte || Message Speed || <code>0x00 - 0x04</code><br /><br />Some higher values yield hilarious results such as a letter appearing once per few seconds. | |'''$C629''' || 1 Byte || Message Speed || <code>0x00 - 0x04</code><br /><br />Some higher values yield hilarious results such as a letter appearing once per few seconds. | ||
|- | |- | ||
|'''$C63A''' || 1 Byte || Current Level Bank || | |'''$C63A''' || 1 Byte || Current Level Bank || TODO: Explain. | ||
|- | |- | ||
|'''$C63B''' || 1 Byte || Current | |'''$C63B''' || 1 Byte || Current Absolute Map Position || On the overworld, all 256 map tiles are represented in order; left to right, top to bottom, <code>0x00 - 0xFF</code>.<!--<br /><br /><br />Inside a dungeon, only map tiles that are valid rooms are represented while empty map tiles are not counted; the only empty map tiles that are counted are the ones leading up to the first valid room in order, then from there, the value only increases with each valid room. <span style="float: right;">[[File:Zelda OoS RAM C63B 01.png|200px]]</span>--> | ||
|- | |- | ||
|'''$C63C''' || 1 Byte || Current | |'''$C63C''' || 1 Byte || Current Dungeon Map Position || All tiles on the current floor of the dungeon map, including ones that do not represent a valid room, are counted in order; left to right, top to bottom, <code>0x00 - 0xFF</code>.<span style="float: right;">[[File:Zelda OoS RAM C63C 01.png|200px]]</span> | ||
|- | |- | ||
|'''$C63D''' || 1 Byte || Current Dungeon Floor || | |'''$C63D''' || 1 Byte || Current Dungeon Floor || TODO: Explain. | ||
|} | |} | ||
==Maple: Part 2== | ==Maple: Part 2== | ||
{| border="3" cellpadding="7" style="width: 75%;" | {| border="3" cellpadding="7" style="width: 75%; margin: 0 0 1em 1em; border-color: #8888cc;" | ||
! style="text-align: center; width: 100px;" | ''' | |- style="background: #ccccff; font-size: 1.5em;" | ||
! style="text-align: center; width: 100px;" | '''Address''' | |||
! style="width: 75px;" | '''Length''' | ! style="width: 75px;" | '''Length''' | ||
! style="width: 300px;" | '''Purpose''' | ! style="width: 300px;" | '''Purpose''' | ||
! ''' | ! '''Info''' | ||
|- | |- | ||
|'''$C63E''' || 1 Byte || Last Maple Encounter || Maple appears at the first available opportunity when this reaches <code>0x1E</code> (greater than or equal to <code>0x0F</code> when wearing Maple's Ring), then it resets to <code>0x00</code>. | |'''$C63E''' || 1 Byte || Last Maple Encounter || Maple appears at the first available opportunity when this reaches <code>0x1E</code> (greater than or equal to <code>0x0F</code> when wearing Maple's Ring), then it resets to <code>0x00</code>. | ||
Line 195: | Line 329: | ||
==Gasha== | ==Gasha== | ||
{| border="3" cellpadding="7" style="width: 75%;" | {| border="3" cellpadding="7" style="width: 75%; margin: 0 0 1em 1em; border-color: #8888cc;" | ||
! style="text-align: center; width: 100px;" | ''' | |- style="background: #ccccff; font-size: 1.5em;" | ||
! style="text-align: center; width: 100px;" | '''Address''' | |||
! style="width: 75px;" | '''Length''' | ! style="width: 75px;" | '''Length''' | ||
! style="width: 300px;" | '''Purpose''' | ! style="width: 300px;" | '''Purpose''' | ||
! ''' | ! '''Info''' | ||
|- | |- | ||
|'''$C64C''' || 1 Byte || Gasha Seed Planted at | |'''$C64C''' || 1 Byte || Gasha Seed Planted at B-16 || TODO: Explain. | ||
|- | |- | ||
|'''$C64D''' || 1 Byte || Gasha Seed Planted at | |'''$C64D''' || 1 Byte || Gasha Seed Planted at C-3 || TODO: Explain. | ||
|- | |- | ||
|'''$C64E''' || 1 Byte || Gasha Seed Planted at | |'''$C64E''' || 1 Byte || Gasha Seed Planted at D-9 || TODO: Explain. | ||
|- | |- | ||
|'''$C64F''' || 1 Byte || Gasha Seed Planted at | |'''$C64F''' || 1 Byte || Gasha Seed Planted at D-12 || TODO: Explain. | ||
|- | |- | ||
|'''$C650''' || 1 Byte || Gasha Seed Planted at | |'''$C650''' || 1 Byte || Gasha Seed Planted at E-5 || TODO: Explain. | ||
|- | |- | ||
|'''$C651''' || 1 Byte || Gasha Seed Planted at | |'''$C651''' || 1 Byte || Gasha Seed Planted at D-16 || TODO: Explain. | ||
|- | |- | ||
|'''$C652''' || 1 Byte || Gasha Seed Planted at | |'''$C652''' || 1 Byte || Gasha Seed Planted at H-6 || TODO: Explain. | ||
|- | |- | ||
|'''$C653''' || 1 Byte || Gasha Seed Planted at | |'''$C653''' || 1 Byte || Gasha Seed Planted at I-1 || TODO: Explain. | ||
|- | |- | ||
|'''$C654''' || 1 Byte || Gasha Seed Planted at | |'''$C654''' || 1 Byte || Gasha Seed Planted at I-10 || TODO: Explain. | ||
|- | |- | ||
|'''$C655''' || 1 Byte || Gasha Seed Planted at | |'''$C655''' || 1 Byte || Gasha Seed Planted at J-6 || TODO: Explain. | ||
|- | |- | ||
|'''$C656''' || 1 Byte || Gasha Seed Planted at | |'''$C656''' || 1 Byte || Gasha Seed Planted at K-7 || TODO: Explain. | ||
|- | |- | ||
|'''$C657''' || 1 Byte || Gasha Seed Planted at | |'''$C657''' || 1 Byte || Gasha Seed Planted at K-13 || TODO: Explain. | ||
|- | |- | ||
|'''$C658''' || 1 Byte || Gasha Seed Planted at | |'''$C658''' || 1 Byte || Gasha Seed Planted at M-1 || TODO: Explain. | ||
|- | |- | ||
|'''$C659''' || 1 Byte || Gasha Seed Planted at | |'''$C659''' || 1 Byte || Gasha Seed Planted at O-16 || TODO: Explain. | ||
|- | |- | ||
|'''$C65A''' || 1 Byte || Gasha Seed Planted at | |'''$C65A''' || 1 Byte || Gasha Seed Planted at P-1 || TODO: Explain. | ||
|- | |- | ||
|'''$C65B''' || 1 Byte || Gasha Seed Planted at | |'''$C65B''' || 1 Byte || Gasha Seed Planted at M-9 || TODO: Explain. | ||
|- | |- | ||
| '''$C65C''' - '''$C65D'''|| 2 Bytes || Gasha Prize Quality || | | '''$C65C''' - '''$C65D'''|| 2 Bytes || Gasha Prize Quality || | ||
Line 262: | Line 397: | ||
|} | |} | ||
==Dungeons== | |||
{| border="3" cellpadding="7" style="width: 75%; margin-left: 1em; border-color: #8888cc;" | |||
|- style="background: #ccccff; font-size: 1.5em;" | |||
! style="text-align: center; width: 100px;" | '''Address''' | |||
! style="width: 75px;" | '''Length''' | |||
! style="width: 300px;" | '''Purpose''' | |||
! '''Info''' | |||
|- | |||
| '''$C662''' || 1 Byte || Visited Floors of <u>Hero's Cave</u> || | |||
<center> | |||
{| class="wikitable" style="width: 100%; text-align: center; border: 2px solid black;" | |||
! colspan="9" style="height: 35px; font-size: 1.3em;" | Bits | |||
|- style="border-top: 2px solid black; border-bottom: 2px solid black; font-size: 1.2em;" | | |||
! style="background-color: black; border-right: 2px solid black; width: auto;" | | |||
! 0 | |||
! 1 | |||
! 2 | |||
! 3 | |||
! 4 | |||
! 5 | |||
! 6 | |||
! 7 | |||
|- | |||
! scope="row" style="border-right: 2px solid black; width: 12%;" | Floor | |||
| 1 | |||
| colspan="7" bgcolor="red" | <font color="white">'''UNUSED'''</font> | |||
|} | |||
</center> | |||
|- | |||
| '''$C663''' || 1 Byte || Visited Floors of <u>Level 1: Gnarled Root Dungeon</u> || | |||
<center> | |||
{| class="wikitable" style="width: 100%; text-align: center; border: 2px solid black;" | |||
! colspan="9" style="height: 35px; font-size: 1.3em;" | Bits | |||
|- style="border-top: 2px solid black; border-bottom: 2px solid black; font-size: 1.2em;" | | |||
! style="background-color: black; border-right: 2px solid black; width: auto;" | | |||
! 0 | |||
! 1 | |||
! 2 | |||
! 3 | |||
! 4 | |||
! 5 | |||
! 6 | |||
! 7 | |||
|- | |||
! scope="row" style="border-right: 2px solid black; width: 12%;" | Floor | |||
| 1 | |||
| colspan="7" bgcolor="red" | <font color="white">'''UNUSED'''</font> | |||
|} | |||
</center> | |||
|- | |- | ||
|'''$ | | '''$C664''' || 1 Byte || Visited Floors of <u>Level 2: Snake's Remains</u> || | ||
<center> | |||
{| class="wikitable" style="width: 100%; text-align: center; border: 2px solid black;" | |||
! colspan="9" style="height: 35px; font-size: 1.3em;" | Bits | |||
|- style="border-top: 2px solid black; border-bottom: 2px solid black; font-size: 1.2em;" | | |||
! style="background-color: black; border-right: 2px solid black; width: auto;" | | |||
! 0 | |||
! 1 | |||
! 2 | |||
! 3 | |||
! 4 | |||
! 5 | |||
! 6 | |||
! 7 | |||
|- | |- | ||
|''' | ! scope="row" style="border-right: 2px solid black; width: 12%;" | Floor | ||
| 1 | |||
| colspan="7" bgcolor="red" | <font color="white">'''UNUSED'''</font> | |||
|} | |||
</center> | |||
|- | |- | ||
|'''$ | | '''$C665''' || 1 Byte || Visited Floors of <u>Level 3: Poison Moth's Lair</u> || | ||
<center> | |||
{| class="wikitable" style="width: 100%; text-align: center; border: 2px solid black;" | |||
! colspan="9" style="height: 35px; font-size: 1.3em;" | Bits | |||
|- style="border-top: 2px solid black; border-bottom: 2px solid black; font-size: 1.2em;" | | |||
! style="background-color: black; border-right: 2px solid black; width: auto;" | | |||
! 0 | |||
! 1 | |||
! 2 | |||
! 3 | |||
! 4 | |||
! 5 | |||
! 6 | |||
! 7 | |||
|- | |- | ||
|''' | ! scope="row" style="border-right: 2px solid black; width: 12%;" | Floor | ||
| B1 | |||
| 1 | |||
| colspan="6" bgcolor="red" | <font color="white">'''UNUSED'''</font> | |||
|} | |||
</center> | |||
|- | |- | ||
|'''$C666''' || 1 Byte || | | '''$C666''' || 1 Byte || Visited Floors of <u>Level 4: Dancing Dragon Dungeon</u> || | ||
<center> | |||
{| class="wikitable" style="width: 100%; text-align: center; border: 2px solid black;" | |||
! colspan="9" style="height: 35px; font-size: 1.3em;" | Bits | |||
|- style="border-top: 2px solid black; border-bottom: 2px solid black; font-size: 1.2em;" | | |||
! style="background-color: black; border-right: 2px solid black; width: auto;" | | |||
! 0 | |||
! 1 | |||
! 2 | |||
! 3 | |||
! 4 | |||
! 5 | |||
! 6 | |||
! 7 | |||
|- | |- | ||
|''' | ! scope="row" style="border-right: 2px solid black; width: 12%;" | Floor | ||
| B1 | |||
| 1 | |||
| 2 | |||
| colspan="5" bgcolor="red" | <font color="white">'''UNUSED'''</font> | |||
|} | |||
</center> | |||
|- | |- | ||
|'''$ | | '''$C667''' || 1 Byte || Visited Floors of <u>Level 5: Unicorn's Cave</u> || | ||
<center> | |||
{| class="wikitable" style="width: 100%; text-align: center; border: 2px solid black;" | |||
! colspan="9" style="height: 35px; font-size: 1.3em;" | Bits | |||
|- style="border-top: 2px solid black; border-bottom: 2px solid black; font-size: 1.2em;" | | |||
! style="background-color: black; border-right: 2px solid black; width: auto;" | | |||
! 0 | |||
! 1 | |||
! 2 | |||
! 3 | |||
! 4 | |||
! 5 | |||
! 6 | |||
! 7 | |||
|- | |- | ||
|'''$ | ! scope="row" style="border-right: 2px solid black; width: 12%;" | Floor | ||
| 1 | |||
| colspan="7" bgcolor="red" | <font color="white">'''UNUSED'''</font> | |||
|} | |||
</center> | |||
|- | |||
| '''$C668''' || 1 Byte || Visited Floors of <u>Level 6: Ancient Ruins</u> || | |||
<center> | |||
{| class="wikitable" style="width: 100%; text-align: center; border: 2px solid black;" | |||
! colspan="9" style="height: 35px; font-size: 1.3em;" | Bits | |||
|- style="border-top: 2px solid black; border-bottom: 2px solid black; font-size: 1.2em;" | | |||
! style="background-color: black; border-right: 2px solid black; width: auto;" | | |||
! 0 | |||
! 1 | |||
! 2 | |||
! 3 | |||
! 4 | |||
! 5 | |||
! 6 | |||
! 7 | |||
|- | |- | ||
|''' | ! scope="row" style="border-right: 2px solid black; width: 12%;" | Floor | ||
| 1 | |||
| 2 | |||
| 3 | |||
| 4 | |||
| 5 | |||
| colspan="3" bgcolor="red" | <font color="white">'''UNUSED'''</font> | |||
|} | |} | ||
</center> | |||
|- | |- | ||
| '''$C669''' || 1 Byte || Visited Floors of <u>Level 7: Explorer's Crypt</u> || | |||
<center> | |||
{| class="wikitable" style="width: 100%; text-align: center; border: 2px solid black;" | |||
! colspan="9" style="height: 35px; font-size: 1.3em;" | Bits | |||
|- style="border-top: 2px solid black; border-bottom: 2px solid black; font-size: 1.2em;" | | |||
! style="background-color: black; border-right: 2px solid black; width: auto;" | | |||
! 0 | |||
! 1 | |||
! 2 | |||
! 3 | |||
! 4 | |||
! 5 | |||
! 6 | |||
! 7 | |||
|- | |- | ||
| ''' | ! scope="row" style="border-right: 2px solid black; width: 12%;" | Floor | ||
| B2 | |||
| B1 | |||
| 1 | |||
| colspan="5" bgcolor="red" | <font color="white">'''UNUSED'''</font> | |||
|} | |||
</center> | |||
|- | |- | ||
| '''$ | | '''$C66A''' || 1 Byte || Visited Floors of <u>Level 8: Sword & Shield Maze</u> || | ||
<center> | |||
{| class="wikitable" style="width: 100%; text-align: center; border: 2px solid black;" | |||
! colspan="9" style="height: 35px; font-size: 1.3em;" | Bits | |||
|- style="border-top: 2px solid black; border-bottom: 2px solid black; font-size: 1.2em;" | | |||
! style="background-color: black; border-right: 2px solid black; width: auto;" | | |||
! 0 | |||
! 1 | |||
! 2 | |||
! 3 | |||
! 4 | |||
! 5 | |||
! 6 | |||
! 7 | |||
|- | |- | ||
| ''' | ! scope="row" style="border-right: 2px solid black; width: 12%;" | Floor | ||
| B1 | |||
| 1 | |||
| colspan="6" bgcolor="red" | <font color="white">'''UNUSED'''</font> | |||
|} | |||
</center> | |||
|- | |- | ||
| '''$ | | '''$C66B''' || 1 Byte || Visited Floors of <u>Onox's Castle</u> || | ||
<center> | |||
{| class="wikitable" style="width: 100%; text-align: center; border: 2px solid black;" | |||
! colspan="9" style="height: 35px; font-size: 1.3em;" | Bits | |||
|- style="border-top: 2px solid black; border-bottom: 2px solid black; font-size: 1.2em;" | | |||
! style="background-color: black; border-right: 2px solid black; width: auto;" | | |||
! 0 | |||
! 1 | |||
! 2 | |||
! 3 | |||
! 4 | |||
! 5 | |||
! 6 | |||
! 7 | |||
|- | |- | ||
| ''' | ! scope="row" style="border-right: 2px solid black; width: 12%;" | Floor | ||
| 1 | |||
| colspan="7" bgcolor="red" | <font color="white">'''UNUSED'''</font> | |||
|} | |||
</center> | |||
|- | |- | ||
| '''$ | | '''$C66C''' || 1 Byte || Visited Floors of <u>Room of Rites</u> || | ||
<center> | |||
{| class="wikitable" style="width: 100%; text-align: center; border: 2px solid black;" | |||
! colspan="9" style="height: 35px; font-size: 1.3em;" | Bits | |||
|- style="border-top: 2px solid black; border-bottom: 2px solid black; font-size: 1.2em;" | | |||
! style="background-color: black; border-right: 2px solid black; width: auto;" | | |||
! 0 | |||
! 1 | |||
! 2 | |||
! 3 | |||
! 4 | |||
! 5 | |||
! 6 | |||
! 7 | |||
|- | |- | ||
| | ! scope="row" style="border-right: 2px solid black; width: 12%;" | Floor | ||
| 1 | |||
| ''' | | colspan="7" bgcolor="red" | <font color="white">'''UNUSED'''</font> | ||
|} | |} | ||
</center> | |||
|- | |- | ||
| '''$C66D''' || 1 Byte || Visited Floors of <u>Linked Hero's Cave</u> || | |||
<center> | |||
{| class="wikitable" style="width: 100%; text-align: center; border: 2px solid black;" | |||
! colspan="9" style="height: 35px; font-size: 1.3em;" | Bits | |||
|- style="border-top: 2px solid black; border-bottom: 2px solid black; font-size: 1.2em;" | | |||
! style="background-color: black; border-right: 2px solid black; width: auto;" | | |||
! 0 | |||
! 1 | |||
! 2 | |||
! 3 | |||
! 4 | |||
! 5 | |||
! 6 | |||
! 7 | |||
|- | |- | ||
| ''' | ! scope="row" style="border-right: 2px solid black; width: 12%;" | Floor | ||
| 1 | |||
| colspan="7" bgcolor="red" | <font color="white">'''UNUSED'''</font> | |||
|} | |} | ||
</center> | |||
|- | |||
| '''$C66E''' || 1 Byte || Small Keys — <u>Hero's Cave</u> || rowspan="12" | Any value from <code>0x00</code> - <code>0xFF</code> is valid in these addresses, but graphics no longer work properly above <code>0x09</code>. | |||
|- | |||
| '''$C66F''' || 1 Byte || Small Keys — <u>Level 1: Gnarled Root Dungeon</u> | |||
|- | |||
| '''$C670''' || 1 Byte || Small Keys — <u>Level 2: Snake's Remains</u> | |||
|- | |||
| '''$C671''' || 1 Byte || Small Keys — <u>Level 3: Poison Moth's Lair</u> | |||
|- | |||
| '''$C672''' || 1 Byte || Small Keys — <u>Level 4: Dancing Dragon Dungeon</u> | |||
|- | |||
| '''$C673''' || 1 Byte || Small Keys — <u>Level 5: Unicorn's Cave</u> | |||
|- | |||
| '''$C674''' || 1 Byte || Small Keys — <u>Level 6: Ancient Ruins</u> | |||
|- | |||
| '''$C675''' || 1 Byte || Small Keys — <u>Level 7: Explorer's Crypt</u> | |||
|- | |||
| '''$C676''' || 1 Byte || Small Keys — <u>Level 8: Sword & Shield Maze</u> | |||
|- | |||
| '''$C677''' || 1 Byte || Small Keys — <u>Onox's Castle</u> | |||
|- | |||
| '''$C678''' || 1 Byte || Small Keys — <u>Room of Rites</u> | |||
|- | |||
| '''$C679''' || 1 Byte || Small Keys — <u>Linked Hero's Cave</u> | |||
|- | |||
| '''$C67A - $C67B''' || 2 Bytes || Big Keys || rowspan="3" | | |||
<center> | |||
{| class="wikitable" style="width: 100%; text-align: center; border: 2px solid black;" | |||
! colspan="9" style="height: 35px; font-size: 1.3em;" | Bits | |||
|- style="border-top: 2px solid black; border-bottom: 2px solid black; font-size: 1.2em;" | | |||
! style="background-color: black; border-right: 2px solid black; width: auto;" | | |||
! 0 | |||
! 1 | |||
! 2 | |||
! 3 | |||
! 4 | |||
! 5 | |||
! 6 | |||
! 7 | |||
|- | |||
! scope="row" style="border-right: 2px solid black;" | Dungeon | |||
| <u>Hero's Cave</u> | |||
| <u>Level 1: Gnarled Root Dungeon</u> | |||
| <u>Level 2: Snake's Remains</u> | |||
| <u>Level 3: Poison Moth's Lair</u> | |||
| <u>Level 4: Dancing Dragon Dungeon</u> | |||
| <u>Level 5: Unicorn's Cave</u> | |||
| <u>Level 6: Ancient Ruins</u> | |||
| <u>Level 7: Explorer's Crypt</u> | |||
|} | |||
</center> | |||
<center> | |||
{| class="wikitable" style="width: 100%; text-align: center; border: 2px solid black;" | |||
! colspan="9" style="height: 35px; font-size: 1.3em;" | Bits | |||
|- style="border-top: 2px solid black; border-bottom: 2px solid black; font-size: 1.2em;" | | |||
! style="background-color: black; border-right: 2px solid black; width: auto;" | | |||
! 8 | |||
! 9 | |||
! 10 | |||
! 11 | |||
! 12 | |||
! 13 | |||
! 14 | |||
! 15 | |||
|- | |||
! scope="row" style="border-right: 2px solid black; width: 12%;" | Dungeon | |||
| <u>Level 8: Sword and Shield Maze</u> | |||
| <u>Onox's Castle</u> | |||
| <u>Room of Rites</u> | |||
| <u>Linked Hero's Cave</u> | |||
| colspan="4" bgcolor="red" | <font color="white">'''UNUSED'''</font> | |||
|} | |||
</center> | |||
|- | |||
| '''$C67C - $C67D''' || 2 Bytes || Compasses | |||
|- | |||
| '''$C67E - $C67F''' || 2 Bytes || Dungeon Maps | |||
|} | |||
==Items== | ==Items== | ||
{| border="3" cellpadding="7" style="width: 75%;" | {| border="3" cellpadding="7" style="width: 75%; margin: 0 0 1em 1em; border-color: #8888cc;" | ||
! style="text-align: center; width: 100px;" | ''' | |- style="background: #ccccff; font-size: 1.5em;" | ||
! style="text-align: center; width: 100px;" | '''Address''' | |||
! style="width: 75px;" | '''Length''' | ! style="width: 75px;" | '''Length''' | ||
! style="width: 300px;" | '''Purpose''' | ! style="width: 300px;" | '''Purpose''' | ||
! ''' | ! '''Info''' | ||
|- | |- | ||
|'''$C680''' || 1 Byte || Item on '''B''' Button || | |'''$C680''' || 1 Byte || Item on '''B''' Button || | ||
Line 345: | Line 789: | ||
{| border="3" cellpadding="7" style="width: 75%;" | {| border="3" cellpadding="7" style="width: 75%; margin: 0 0 1em 1em; border-color: #8888cc;" | ||
! style="text-align: center; width: 100px;" | ''' | |- style="background: #ccccff; font-size: 1.5em;" | ||
! style="text-align: center; width: 100px;" | '''Address''' | |||
! style="width: 75px;" | '''Length''' | ! style="width: 75px;" | '''Length''' | ||
! style="width: 300px;" | '''Purpose''' | ! style="width: 300px;" | '''Purpose''' | ||
! ''' | ! '''Info''' | ||
|- | |- | ||
|'''$C6A2''' || 1 Byte || Current Hearts || This represents the current number of quarter-hearts the player has (each full heart is equal to <code>0x04</code>). | |'''$C6A2''' || 1 Byte || Current Hearts || This represents the current number of quarter-hearts the player has (each full heart is equal to <code>0x04</code>). | ||
Line 400: | Line 845: | ||
<center> | <center> | ||
{| class="wikitable" style="width: 100%; text-align: center; border: 2px solid black;" | {| class="wikitable" style="width: 100%; text-align: center; border: 2px solid black;" | ||
! colspan=" | ! colspan="9" style="height: 35px; font-size: 1.3em;" | Bits | ||
|- style="border-top: 2px solid black; border-bottom: 2px solid black; font-size: 1.2em;" | | |- style="border-top: 2px solid black; border-bottom: 2px solid black; font-size: 1.2em;" | | ||
! {{Diagonal split header | State | Bit | style=border-right: 2px solid black; width: 10%;}} | |||
! 0 | ! 0 | ||
! 1 | ! 1 | ||
Line 411: | Line 857: | ||
! 7 | ! 7 | ||
|- | |- | ||
| 0 | ! style="border-right: 2px solid black;" | 0 | ||
| | | South | ||
| | | bgcolor="#d1d966" | Default Flute Icon | ||
| bgcolor="#d1d966" | Dimitri Flute Icon | |||
| rowspan="2" colspan="5" bgcolor="red" | <font color="white">'''UNUSED'''</font> | |||
|rowspan="2" | |||
|- | |- | ||
| 1 | ! style="border-right: 2px solid black;" | 1 | ||
| | | North | ||
| | | bgcolor="#d1d966" | Ricky Flute Icon | ||
| bgcolor="#d1d966" | Moosh Flute Icon | |||
|} | |} | ||
</center> | </center> | ||
Line 445: | Line 889: | ||
<center> | <center> | ||
{| class="wikitable" style="width: 100%; text-align: center; border: 2px solid black;" | {| class="wikitable" style="width: 100%; text-align: center; border: 2px solid black;" | ||
! colspan=" | ! colspan="9" style="height: 35px; font-size: 1.3em;" | Bits | ||
|- style="border-top: 2px solid black; border-bottom: 2px solid black; font-size: 1.2em;" | | |- style="border-top: 2px solid black; border-bottom: 2px solid black; font-size: 1.2em;" | | ||
! 0 | ! 0 | ||
Line 456: | Line 900: | ||
! 7 | ! 7 | ||
|- | |- | ||
| | | Fertile Soil || Gift of Time || Bright Sun || Soothing Rain || Nurturing Warmth || Blowing Wind || Seed of Life || Changing Seasons | ||
|} | |} | ||
</center> | </center> | ||
Line 463: | Line 907: | ||
Each bit corresponds to an essence. The value of this address will be the sum of all the essences collected up to <code>0xFF</code>. | Each bit corresponds to an essence. The value of this address will be the sum of all the essences collected up to <code>0xFF</code>. | ||
'''Example''': If the value of this address is <code>0x1F</code>, bits 1 - 5 are set, and the collected essences will be < | '''Example''': If the value of this address is <code>0x1F</code>, bits 1 - 5 are set, and the collected essences will be <code>Fertile Soil</code>, <code>Gift of Time</code>, <code>Bright Sun</code>, <code>Soothing Rain</code>, and <code>Nurturing Warmth</code>. | ||
Line 477: | Line 921: | ||
<center> | <center> | ||
{| class="wikitable" style="width: 100%; text-align: center; border: 2px solid black;" | {| class="wikitable" style="width: 100%; text-align: center; border: 2px solid black;" | ||
! colspan="8" style="height: 35px; font-size: 1. | ! colspan="8" style="height: 35px; font-size: 1.3em;" | Bits | ||
|- style="border-top: 2px solid black; border-bottom: 2px solid black; font-size: 1.2em;" | | |- style="border-top: 2px solid black; border-bottom: 2px solid black; font-size: 1.2em;" | | ||
! 0 | ! 0 | ||
Line 488: | Line 932: | ||
! 7 | ! 7 | ||
|- | |- | ||
| | | Slayed 1,000 Monsters | ||
| Collected 10,000 Rupees | |||
| Saved the World | |||
| rowspan="2" bgcolor="red" | <font color="white">'''UNUSED'''</font> | |||
| Slayer's Ring | |||
| Rupee Ring | |||
| Victory Ring | |||
| rowspan="2" bgcolor="red" | <font color="white">'''UNUSED'''</font> | |||
|} | |} | ||
</center> | </center> | ||
Line 511: | Line 962: | ||
==TBD== | ==TBD== | ||
{| border="3" cellpadding="7" style=" | {| border="3" cellpadding="7" style="width: 75%; margin: 0 0 1em 1em; border-color: #8888cc;" | ||
! style="text-align: center; min-width: 100px;" | ''' | |- style="background: #ccccff; font-size: 1.5em;" | ||
! style="text-align: center; min-width: 100px;" | '''Address''' | |||
! style="min-width: 75px;" | '''Length''' | ! style="min-width: 75px;" | '''Length''' | ||
! style="min-width: 300px;" | '''Purpose''' | ! style="min-width: 300px;" | '''Purpose''' | ||
! ''' | ! '''Info''' | ||
|- | |- | ||
|'''$C700''' - '''$C7FF''' || 256 Bytes || Overworld Screen Flags (used to track events and map exploration) || Todo: Specify which each address tracks. | |'''$C700''' - '''$C7FF''' || 256 Bytes || Overworld Screen Flags (used to track events and map exploration) || Todo: Specify which each address tracks. | ||
Line 531: | Line 983: | ||
==Unmapped== | ==Unmapped== | ||
{| border="3" cellpadding="7" style="max-width: 75%;" | {| border="3" cellpadding="7" style="max-width: 75%; margin: 0 0 1em 1em; border-color: #8888cc;" | ||
! style="text-align: center;" | ''' | |- style="background: #ccccff; font-size: 1.5em;" | ||
! ''' | ! style="text-align: center;" | '''Address''' | ||
! '''Info''' | |||
|- | |- | ||
|'''$C000''' - '''$C5BF''' || | |'''$C000''' - '''$C023''' || | ||
|- | |||
|'''$C025''' - '''$C2EE''' || | |||
|- | |||
|'''$C2F0''' - '''$C5BF''' || | |||
|- | |- | ||
|'''$C600''' - '''$C601''' || | |'''$C600''' - '''$C601''' || | ||
Line 562: | Line 1,019: | ||
|- | |- | ||
|'''$C65E''' - '''$C661''' || | |'''$C65E''' - '''$C661''' || | ||
|- | |- | ||
|'''$C692''' - '''$C6A1''' || | |'''$C692''' - '''$C6A1''' || | ||
Line 588: | Line 1,035: | ||
|} | |} | ||
<div style="margin: 50px 0 100px;"> | <div style="margin: 50px 0 100px;"> | ||
=External Links= | =External Links= | ||
* [https://github.com/Stewmath/oracles-disasm/blob/master/include/wram.s Stewmath's Oracles Disassembly WRAM] | * [https://github.com/Stewmath/oracles-disasm/blob/master/include/wram.s Stewmath's Oracles Disassembly WRAM] | ||
</div> | </div> | ||
{{Internal Data}} | {{Internal Data}} |
Latest revision as of 07:13, 15 July 2024
The following article is a RAM map for The Legend of Zelda: Oracle of Seasons.
Note: All values in tables are hexadecimal unless noted otherwise.
Bank 0 ($C000 - $CFFF)
This map is a work in progress.
Sound
Address | Length | Purpose | Info | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
$C024 | 1 Byte | Sound Volume |
Note: A value of 0 for either speaker does NOT turn the sound for that speaker off, it is instead the lowest volume level. |
TBD
Address | Length | Purpose | Info | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
$C2EF | 1 Byte | Cutscene Index |
|
TBD
Address | Length | Purpose | Info | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
$C5C0 - $C5FF | 64 Bytes | Unappraised Rings | Todo: Map possible ring values. | ||||||||||||||||||
$C602 - $C607 | 6 Bytes | Player Name |
| ||||||||||||||||||
$C616 - $C61D | 8 Bytes | Rings Owned | Todo: Map which bits correspond to which rings. |
Totals Since File Creation
Address | Length | Purpose | Info |
---|---|---|---|
$C61E - $C61F | 2 Bytes | Deaths | Value is represented in decimal
|
$C620 - $C621 | 2 Bytes | Enemies Killed | When total killed enemies reaches 0x03E8 , 0x01 is added to $C6CA to set a flag for Vasu to give the Slayer's Ring, and this no longer increments when killing enemies.
|
$C622 - $C625 | 4 Bytes | Time Passed (in frames) | |
$C626 | 1 Byte | Signs Destroyed | TODO: Explain. |
$C627 - $C628 | 2 Bytes | Rupees Collected | Value is represented in decimal. Example: If the total earned rupee count is 8,473, the hexadecimal representation will be 0x8473 .When a rupee gain pushes the value over 0x9999 , the value is then set to 0x6363, the value will no longer change, and $C6CA is then incremented by 0x02 so that Vasu will give the Rupee Ring the next time he is spoken with.
|
TBD
Maple: Part 2
Address | Length | Purpose | Info |
---|---|---|---|
$C63E | 1 Byte | Last Maple Encounter | Maple appears at the first available opportunity when this reaches 0x1E (greater than or equal to 0x0F when wearing Maple's Ring), then it resets to 0x00 .
|
Gasha
Address | Length | Purpose | Info | |||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
$C64C | 1 Byte | Gasha Seed Planted at B-16 | TODO: Explain. | |||||||||||||||||||||||||||
$C64D | 1 Byte | Gasha Seed Planted at C-3 | TODO: Explain. | |||||||||||||||||||||||||||
$C64E | 1 Byte | Gasha Seed Planted at D-9 | TODO: Explain. | |||||||||||||||||||||||||||
$C64F | 1 Byte | Gasha Seed Planted at D-12 | TODO: Explain. | |||||||||||||||||||||||||||
$C650 | 1 Byte | Gasha Seed Planted at E-5 | TODO: Explain. | |||||||||||||||||||||||||||
$C651 | 1 Byte | Gasha Seed Planted at D-16 | TODO: Explain. | |||||||||||||||||||||||||||
$C652 | 1 Byte | Gasha Seed Planted at H-6 | TODO: Explain. | |||||||||||||||||||||||||||
$C653 | 1 Byte | Gasha Seed Planted at I-1 | TODO: Explain. | |||||||||||||||||||||||||||
$C654 | 1 Byte | Gasha Seed Planted at I-10 | TODO: Explain. | |||||||||||||||||||||||||||
$C655 | 1 Byte | Gasha Seed Planted at J-6 | TODO: Explain. | |||||||||||||||||||||||||||
$C656 | 1 Byte | Gasha Seed Planted at K-7 | TODO: Explain. | |||||||||||||||||||||||||||
$C657 | 1 Byte | Gasha Seed Planted at K-13 | TODO: Explain. | |||||||||||||||||||||||||||
$C658 | 1 Byte | Gasha Seed Planted at M-1 | TODO: Explain. | |||||||||||||||||||||||||||
$C659 | 1 Byte | Gasha Seed Planted at O-16 | TODO: Explain. | |||||||||||||||||||||||||||
$C65A | 1 Byte | Gasha Seed Planted at P-1 | TODO: Explain. | |||||||||||||||||||||||||||
$C65B | 1 Byte | Gasha Seed Planted at M-9 | TODO: Explain. | |||||||||||||||||||||||||||
$C65C - $C65D | 2 Bytes | Gasha Prize Quality |
|
Dungeons
Address | Length | Purpose | Info | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
$C662 | 1 Byte | Visited Floors of Hero's Cave |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||
$C663 | 1 Byte | Visited Floors of Level 1: Gnarled Root Dungeon |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||
$C664 | 1 Byte | Visited Floors of Level 2: Snake's Remains |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||
$C665 | 1 Byte | Visited Floors of Level 3: Poison Moth's Lair |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||
$C666 | 1 Byte | Visited Floors of Level 4: Dancing Dragon Dungeon |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||
$C667 | 1 Byte | Visited Floors of Level 5: Unicorn's Cave |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||
$C668 | 1 Byte | Visited Floors of Level 6: Ancient Ruins |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||
$C669 | 1 Byte | Visited Floors of Level 7: Explorer's Crypt |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||
$C66A | 1 Byte | Visited Floors of Level 8: Sword & Shield Maze |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||
$C66B | 1 Byte | Visited Floors of Onox's Castle |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||
$C66C | 1 Byte | Visited Floors of Room of Rites |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||
$C66D | 1 Byte | Visited Floors of Linked Hero's Cave |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||
$C66E | 1 Byte | Small Keys — Hero's Cave | Any value from 0x00 - 0xFF is valid in these addresses, but graphics no longer work properly above 0x09 .
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||
$C66F | 1 Byte | Small Keys — Level 1: Gnarled Root Dungeon | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
$C670 | 1 Byte | Small Keys — Level 2: Snake's Remains | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
$C671 | 1 Byte | Small Keys — Level 3: Poison Moth's Lair | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
$C672 | 1 Byte | Small Keys — Level 4: Dancing Dragon Dungeon | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
$C673 | 1 Byte | Small Keys — Level 5: Unicorn's Cave | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
$C674 | 1 Byte | Small Keys — Level 6: Ancient Ruins | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
$C675 | 1 Byte | Small Keys — Level 7: Explorer's Crypt | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
$C676 | 1 Byte | Small Keys — Level 8: Sword & Shield Maze | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
$C677 | 1 Byte | Small Keys — Onox's Castle | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
$C678 | 1 Byte | Small Keys — Room of Rites | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
$C679 | 1 Byte | Small Keys — Linked Hero's Cave | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
$C67A - $C67B | 2 Bytes | Big Keys |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||
$C67C - $C67D | 2 Bytes | Compasses | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
$C67E - $C67F | 2 Bytes | Dungeon Maps |
Items
Address | Length | Purpose | Info |
---|---|---|---|
$C680 | 1 Byte | Item on B Button | |
$C681 | 1 Byte | Item on A Button | |
$C682 - $C691 | 16 Bytes | Inventory Storage | Todo: Map possible items. |
Address | Length | Purpose | Info | |||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
$C6A2 | 1 Byte | Current Hearts | This represents the current number of quarter-hearts the player has (each full heart is equal to 0x04 ).
| |||||||||||||||||||||||||||||||
$C6A3 | 1 Byte | Max Hearts | This represents the maximum number of quarter-hearts the player can have (each full heart is equal to 0x04 ).
| |||||||||||||||||||||||||||||||
$C6A4 | 1 Byte | Number of Heart Pieces | Valid values are 0x00 - 0x03 .
| |||||||||||||||||||||||||||||||
$C6A5 - $C6A6 | 2 Bytes | Rupees | Value is represented in decimal.
| |||||||||||||||||||||||||||||||
$C6A7 - $C6A8 | 2 Bytes | Ore Chunks | ||||||||||||||||||||||||||||||||
$C6A9 | 1 Byte | Shield level | ||||||||||||||||||||||||||||||||
$C6AA | 1 Byte | Current Bombs | Value is represented in decimal. | |||||||||||||||||||||||||||||||
$C6AB | 1 Byte | Max bombs | Value is represented in decimal. | |||||||||||||||||||||||||||||||
$C6AC | 1 Byte | Sword level | ||||||||||||||||||||||||||||||||
$C6AD | 1 Byte | Current Bombchus | ||||||||||||||||||||||||||||||||
$C6AE | 1 Byte | Seed Satchel Level | Determines satchel capacity. | |||||||||||||||||||||||||||||||
$C6AF | 1 Byte | Flute Icon | This will determine which song plays and what icon appears on the flute, but not which companion Link actually currently has. | |||||||||||||||||||||||||||||||
$C6B0 | 1 Byte | Obtained Seasons | ||||||||||||||||||||||||||||||||
$C6B1 | 1 Byte | Boomerang level | ||||||||||||||||||||||||||||||||
$C6B2 | 1 Byte | Magnetic Gloves Polarity |
| |||||||||||||||||||||||||||||||
$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 |
Example: If the value of this address is
Any value in this address is valid, but many of them will not normally be used unless essences are collected out of sequence. Assuming all essences are collected in sequence, the value will progress setting each bit in sequence, as follows:
0x00 -> 0x01 -> 0x03 -> 0x07 -> 0x0F -> 0x1F -> 0x3F -> 0x7F -> 0xFF
| |||||||||||||||||||||||||||||||
$C6CA | 1 Byte | Vasu Ring Flags |
Example: If the value is
| |||||||||||||||||||||||||||||||
$C6C6 | 1 Byte | Ring Box level |
TBD
Address | Length | Purpose | Info |
---|---|---|---|
$C700 - $C7FF | 256 Bytes | Overworld Screen Flags (used to track events and map exploration) | Todo: Specify which each address tracks. |
$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
Address | Info |
---|---|
$C000 - $C023 | |
$C025 - $C2EE | |
$C2F0 - $C5BF | |
$C600 - $C601 | |
$C608 - $C615 | |
$C620 - $C621 | |
$C628 - $C639 | |
$C63F | Shop 1 item flags? |
$C640 | Shop 2 item flags? |
$C641 | Maple flags? |
$C642 | Subrosian shop item flags? |
$C643 | Ricky flags? |
$C644 | Dimitri flags? |
$C645 | Moosh flags? |
$C646 - $C64B | |
$C65E - $C661 | |
$C692 - $C6A1 | |
$C6BC - $C6C5 | |
$C6C7 - $C6FF | |
$C800 - $CC2F | |
$CC31 - $CDFF | |
$CEB0 - $CEFF | |
$CFB0 - $CFFF |
External Links
Internal Data for The Legend of Zelda: Oracle of Seasons
| |
---|---|