Zelda II: The Adventure of Link/RAM map: Difference between revisions

From Data Crystal
Jump to navigation Jump to search
(added some RAM addresses)
 
(Add music and SFX trigger info)
 
(24 intermediate revisions by 13 users not shown)
Line 1: Line 1:
<div id="catlinks">[[Image:Chip_tiny.png]]The following article is a [[RAM map]] for [[{{{game}}}]].</div>
{{rammap|game=Zelda II: The Adventure of Link}}
{{clear}}
<pre>
<includeonly>[[Category:RAM maps]][[Category:{{{game}}}|RAM map]]</includeonly>
$0012 - frame counter


$0029 - Player's Current Y position
$0013 - set to 8 and The Player is a fairy, set to 0 and The Player is Link


$0019 - draw Link's sprite?


$0026 - ?Movement Tally - Increases as you walk in overworld.


$00C2 - Enemy 6's HP


$00C3 - Enemy 5's HP
$0029 - Player's Current Y position
 
$00C4 - Enemy 4's HP


$00C5 - Enemy 3's HP
$002A - Enemy 6's current Y position
$002B - Enemy 5's
$002C - Enemy 4's
$002D - Enemy 3's  
$002E - Enemy 2's
$002F - Enemy 1's


$00C6 - Enemy 2's HP
$0030 - Projectile Y
$0031 - Projectile
$0032 - Projectile
$0033 - Projectile
$0034 - Projectile
$0035 - Projectile


$00C7 - Enemy 1's HP
$0036 - Sword Projectile Y On Screen


$003B - Player's current map page


$003C - Enemy 6's current map page
$003D - Enemy 5's
$003E - Enemy 4's
$003F - Enemy 3's
$0040 - Enemy 2's
$0041 - Enemy 1's


$004D - Player's Current X position
$0042 - Projectile Map Page
$0043 - Projectile
$0044 - Projectile
$0045 - Projectile
$0046 - Projectile
$0047 - Projectile


$004D - Player's Current X position LSB


$0073 - Y position on map (not visually)
$004E - Enemy 6's current X position LSB
$004F - Enemy 5's
$0050 - Enemy 4's
$0051 - Enemy 3's
$0052 - Enemy 2's
$0053 - Enemy 1's


$0074 - X position on map (not visually)
$0054 - Projectile X
$0055 - Projectile
$0056 - Projectile
$0057 - Projectile
$0058 - Projectile
$0059 - Projectile


$005F - side scroll exit side: 2 = exited left, 1 = exited right


$0060 - Enemy 6's current facing direction
$0061 - Enemy 5's
$0062 - Enemy 4's
$0063 - Enemy 3's
$0064 - Enemy 2's
$0065 - Enemy 1's


$00A1 - Enemy 6's ID
$0066 - Projectile facing direction
$0067 - Projectile
$0068 - Projectile
$0069 - Projectile
$006A - Projectile
$006B - Projectile


$00A2 - Enemy 5's ID
$0070 - Link's X speed
$0071 to $0076 Enemy's speed


$00A3 - Enemy 4's ID
$0073 - Y position on map (not visually)
 
$0074 - X position on map (not visually)
$00A4 - Enemy 3's ID


$00A5 - Enemy 2's ID
$0077 - Projectile speed
$0078 - Projectile
$0079 - Projectile
$007A - Projectile
$007B - Projectile
$007C - Projectile


$00A6 - Enemy 1's ID
$0080 - Link's sprite index
    0-3: Walking
    4: Standing wind up
    5: Standing stab
    6: Crouching
    7: Crouching stab
    8: Up stab
    9: Down stab


$0086-0089 -  Overworld random monster type (00 - None, 01 - Small, 02 - Big, )


$0087 - Projectile ID/type
$0088 - Projectile
$0089 - Projectile
$008A - Projectile
$008B - Projectile
$008C - Projectile


$00C2 - Current amount of health enemy 6 has
$008D - Projectile Flag (00 - Inactive, 01 - Active, F2-FF - Disintegrating)


$00C3 - Current amount of health enemy 5 has
$009F - Player's Facing Direction (side-scroll)


$00C4 - Current amount of health enemy 4 has
$00A1 - Enemy 6's ID / type
$00A2 - Enemy 5's
$00A3 - Enemy 4's
$00A4 - Enemy 3's
$00A5 - Enemy 2's
$00A6 - Enemy 1's


$00C5 - Current amount of health enemy 3 has
$00A7 - Solids hit detection bits, 0000dcba, a = left, b = right, c = down, d = up.


$00C6 - Current amount of health enemy 2 has
$00AF - Enemy 6's current-item-ID OR something else(AI?)
$00B0 - Enemy 5's
$00B1 - Enemy 4's
$00B2 - Enemy 3's
$00B3 - Enemy 2's
$00B4 - Enemy 1's
$00B4 - timer for healer lady in shield-town leaves door open


$00C7 - Current amount of health enemy 1 has
$00B5
2 will make link die in lava
3 move right like when win game at dark link


$00B6 - Enemy 6 exists
      - set to 10 will make link fall down
$00B7 - Enemy 5
$00B8 - Enemy 4
$00B9 - Enemy 3
$00BA - Enemy 2
$00BB - Enemy 1


$00BC - Enemy 6's ?sram Y index (LDY BC,X  ; then LDA ($D6),Y  if bit7 is set it means monster killed?)
$00BD - Enemy 5's
$00BE - Enemy 4's
$00BF - Enemy 3's
$00C0 - Enemy 2's
$00C1 - Enemy 1's


$00F5 - Controller 1 button pressed
$00C2 - Enemy 6's HP
$00C3 - Enemy 5's HP
$00C4 - Enemy 4's HP
$00C5 - Enemy 3's HP
$00C6 - Enemy 2's HP
$00C7 - Enemy 1's HP


$00F6 - Controller 2 button pressed
$00CC - Link's X on screen - 8 ($4d - $72c)


$00F7 - Controller 1 button held
$00CD to $00D3 - Monster X on screen ($4e - $72c)


$00F8 - Contorller 2 button held
$00DE - ?set to 1 to prevent moving, 0 to allow??


$00A1 - Enemy 6's ID
$00A2 - Enemy 5's ID
$00A3 - Enemy 4's ID
$00A4 - Enemy 3's ID
$00A5 - Enemy 2's ID
$00A6 - Enemy 1's ID


$05DF - Current number of enemies killed for magic/exp. bag
$00C2 - Current amount of health enemy 6 has
$00C3 - Current amount of health enemy 5 has
$00C4 - Current amount of health enemy 4 has
$00C5 - Current amount of health enemy 3 has
$00C6 - Current amount of health enemy 2 has
$00C7 - Current amount of health enemy 1 has


$00CC - ?Player X On Screen?


$00D1 - maximum number of map pages for this scene


---------------(Maybe uses bits?)---------------------
$00E0-EF - Music variables (behaves different for title screen vs. normal game)


Title Screen:
$00EA - Music to play
    1: Title theme
$00EB - Sound effect to play
    $01: Letter entry sound
    $02: Select different letter sound
    $04: Select different menu item sound
    $08: Elimination sound


Normal Game:
$00E9 - DMC sound effect to play?
$00EA - Pause music if non-zero
$00EB - Music track to play. Set of tracks differs based on world ($707).
    World ($707 = 0):
        $01: Overworld
        $02: Overworld Loop
        $04: Battle
        $08: Mutant Battle
        $10: Item Acquired (restart previous music afterward)
    Town ($707 = 1/2):
        $01: Town
        $02: Town Loop
        $04: Mutant House
        $08: House
        $10: Learn Technique (restarts previous)
    Palace ($707 = 3/4):
        $01: Palace
        $02: Palace Loop
        $04: Mutant Palace Loop
        $08: Boss Theme
        $10: Item Acquired
        $20: Silence
        $40: Crystal Placed (does NOT restart previous)
        $80: Silence
    Great Palace and Ending / Zelda Awakens ($707 = 5/6):
        $01: Great Palace
        $02: Great Palace Loop
        $04: Zelda Awakens / Ending (both are used in their different zones but are the same)
        $08: Credits
        $10: Item Acquired
        $20: Game Complete (does NOT restart previous)
        $40: Dark Link Battle
        $80: Silence
$00EC - Complex sound effect to play
    $01: Death (stops music)
$00ED - Triangle/noise sound effect to play
$00EE - Square 2 sound effect to play
    $01: Falling (stops music)
    $02: Enemy Encounter (starts battle music)
    $04: Exiting side-scrolling (stops music)
$00EF - Square 1 sound effect to play


$0608 - Heart Containter #2 will appear (FF - yes : FB - no)
$00F5 - Controller 1 button pressed
$00F6 - Controller 2 button pressed
$00F7 - Controller 1 button held
$00F8 - Controller 2 button held


$00FE - ?changes brightness sorta?


$0100 - NMI handler behavior: ng-- ----
    n: Do gameplay. If clear, only update sound during NMI.
    g: In game. If clear, do title screen NMI handling.


$0610 - Trophey will appear (FF - yes : F7 - no)
$0100 states:
    $80 at title screen
    $c0 when loading game
    $40 when entering game (after displaying number of lives)
    $c0 in game


$0301 - Used when writing text to screen
$0302 - Used when writing text to screen
$0303 - Letter position when writing to screen
$0304 - Text memory offset?
$0305 - Empty Row Space Character
$0306 - Letter Written to Screen
$0307 - Text memory offset?


$03D6 - Player's X Subpixel
$03D7 - Enemy 6's X Subpixel
$03D8 - Enemy 5's
$03D9 - Enemy 4's
$03DA - Enemy 3's
$03DB - Enemy 2's
$03DC - Enemy 1's


$0613 - Heart Container #1 (S of Parapa Palace) will appear (FF - yes : DF - no)
$040E - Enemy 6's stun-delay-when-hit timer
$040F - Enemy 5's
$0410 - Enemy 4's
$0411 - Enemy 3's
$0412 - Enemy 2's
$0413 - Enemy 1's


$0488 - selection index for MENU (continue/save)


$0489 - Text Column
$048A - Text Row
$048B - Conversation Pointer


$0615 - Exp. Bag (NE of Castle) will appear (FF - yes : FD - no)
$048E - Enemy 6's item-ID in the future
$048F - Enemy 5's
$0490 - Enemy 4's
$0491 - Enemy 3's
$0492 - Enemy 2's
$0493 - Enemy 1's


$0500 - Invincibility after stun counter (counts down, nonzero = invincible)


$050A - ?Attack Delays
$0518 - ?Invulnerable Timeout (01-02 - Blinking, 03+ - Not Blinking)


$0616 - Magic Container #1 (S of Castle) will appear (FF - yes : FE - no)
$0524 - menu control / state


$0617 - Exp. Bag  (E of Saria) will appear (FF - yes : DF - no)
$0561 - Current scene/map index


$0562 - Player's Facing Direction (overworld map)


$0562 - ?Controller 1 Last Poll


$061C - Extra Life (W of Cemetary Palace) will appear (FF - yes : FD - no)
$0563 - Terrain type under Link in overworld
    0: Town
    1: Cave
    2: Palace (includes North Palace)
    3: Bridge/raft tile
    4: Desert
    5: Grass
    6: Forest
    7: Swamp
    8: Graveyard
    9: Road
    a: Lava
    b: Mountain
    c: Impassable water
    d: Passable water
    e: Destructible boulder
    f: River devil


$0564 - ?Magic Points - Display
$0565 - ?Hit Points - Display


$0569 - used for counting text when displaying talk text
$056B - involved with Life Town's Bagu Bridge, when $56B=2 and $796=1 then Bagu Bridge will be built
$056B - Town Code
$056C - Palace index on continent ($748 - #$34)


$0624 - Red magic jar (Death MT #1) will appear (FF - yes : FB - no)
$057D - Player Y speed


$057E - Enemy 6's stun-delay-when-hit timer
$057F - Enemy 5's
$0580 - Enemy 4's
$0581 - Enemy 3's
$0582 - Enemy 2's
$0583 - Enemy 1's


$05CA - Sword Projectile Timeout


$0626 - Red magic jar (Death MT #2) will appear (FF - yes : F7 - no)
$05DF - count of easy monster killed for item drop
$05E0 - count of hard monster killed for item drop


$05EB - Experience an enemy takes away


---------------(Uses bits?)---------------------


$0629 - Red magic jar (Death MT #3) will appear (FF - yes : DF - no)
$0608 bits
- Heart Container #2 taken FB (1111 1011)
$0610 bits
- Trophy taken F7 (1111 0111)
$0613 bits
- Heart Container #1 (S of Parapa Palace) taken DF (1101 1111)
$0615 bits
- Exp. Bag (NE of Castle) taken FD (1111 1101)
$0616 bits
- Magic Container #1 (S of Castle) taken FE (1111 1110)
$0617 bits
- Exp. Bag  (E of Saria) taken DF (1101 1111)
$061C bits
- Extra Life (W of Cemetery Palace) taken FD (1111 1101)
$0624 bits
- Red magic jar (Death MT #1) taken FB (1111 1011)
$0626 bits
- Red magic jar (Death MT #2) taken F7 (1111 0111)
$0629 bits
- Red magic jar (Death MT #3) taken DF (1101 1111)
$062A bits
- Hammer taken FE (1111 1110)
$062D bits
- Magic Container #2 (Death MT) taken BF (1011 1111)
$0643 bits
- Heart Container #3 (N of Island Palace) taken FB (1111 1011)
$0657 bits
- Heart Container #4 (E of Seaside Palace) taken BF (1011 1111)
$0680 bits
- Parapa Desert Key #2 will appear (FB - yes : FA - no)
$0681 - Parapa Desert Key #1 will appear (FF - yes : F7 - no)


$062A - Hammer will appear (FF - yes : FE - no)
$0684 - bits
- Candle taken 7F (0111 1111)
- Parapa Desert Lock to Candle unlocked BF (1011 1111)
- Bag on top of Elevator down taken DF (1101 1111)
- Left side of bridge exp. bag taken FB (1111 1011)
- Right side of bridge exp. bag taken FD (1111 1101)


$0700 - Current number of lives
$0701 - start this side of screen: 0=left, 1=right
$0704 - (Elevator) 0=start bottom of screen, 1=start at top of screen


$0706 - Overworld index
    0: West
    1: Death Mountain / Maze Island
    2: East
$0707 - "World"
    0: Overworld and all other areas not listed
    1: West towns, Bagu's cabin, King's Tomb
    2: East towns
    3: Palaces 1, 2, 5
    4: Palaces 3, 4, 6
    5: Great Palace and ending
    6: Zelda awakens scene


$062D - Magic Container #2 (Death MT) will appear (FF - yes : BF - no)
$0709 - involved in returning to the over-world while in side-scroll?
$070A - Overworld index for overworld when in side-scrolling
$070B - Graphics Bank for Palaces


$070C - add this value to link's MP slowly (old lady magic restore)
$070D - add this value to link's HP slowly (healing lady)


$070E - setting to 1 will make link sink (duck into the chimney)


$0643 - Heart Container #3 (N of Island Palace) will appear (FF - yes : FB - no)
$0728 - setting to 1 will freeze screen, prevent from exiting left/right (like during a boss battle)


$072A - Leftmost pixel of screen X scroll MSB
$072B - Rightmost pixel of screen X scroll MSB
$072C - Leftmost pixel of screen X scroll LSB
$072D - Rightmost pixel of screen X scroll LSB


$0736 - game mode/current state
    side-scroll: set $769,$706,$707,$56B,$56C,$561, and set $736 to 0 (to load any scene anywhere)
$769 $706 $707 $56B $56C $561
rauru 03 00 01 00 F8
nabooru 03 02 02 04 F8
palaces 1 04 00 03 04 00 00
palaces 2 04 00 03 04 01 0E
palaces 3 04 00 04 05 02 00
palaces 4 04 01 04 08 00 0F
palaces 5 04 02 03 08 00 23
palaces 6 04 02 04 08 01 24
GP 05 02 05 09 02 00
    side-scroll: set $709 to 1, set $736 to 0 (to go outside/return to over-world map)
    side-scroll: set $709 to 1, set $748 and $706 to target destination, set $736 to 0 (to go outside/return to over-world map) (also $707, $70A and $70B may need to be set to 0??)
    ?side-scroll: set $561 to target scene/map index, set $736 to 0,8,C (to load scene)
    Over-world: set $736 to 6 or 0 (enter map position u are at) 
    over-world: set $73 and $74 , then set $736 to 2 (update screen with position)


$0657 - Heart Container #4 (E of Seaside Palace) will appear (FF - yes : BF - no)
$0743 - elevator was moving up or down: 8=up, 4=down


$0748 - True area location index. When transitioning to side-scrolling this will temporarily be overworld location index before translation to true area index.


$0749 - Current position of the selector on Magic


$0680 - Parapa Desert Key #2 will appear (FB - yes : FA - no)
$074B - this value causes two different flashing effect of magic
 
$0681 - Parapa Desert Key #1 will appear (FF - yes : F7 - no)
 
 
 
$0684 - Parapa Desert Lock to Candle (FD - yes : BD - no : 7D - Candle gone : )
 
 
$0700 - Current number of lives


$0755 - add this value to link's exp slowly (add 255 for every value)
$0756 - add this value to link's exp slowly


$075A - Current enemy encounter type in side-scrolling
    0: Either fairy or fixed encounter (overworld location)
    1: Small enemy
    2: Big enemy


$0749 - Current position of the selector on Magic
$075C - Start this map page


$0768 - ?changes brightness sorta?
$0769 - Bank to switch back to after changing banks in NMI handler
$076C - Game state, can also be written to initiate a special routine
    0: Entering game (restart from North Palace with 3 lives)
    1: In game
    2: Dying (die)
    3: Ending (wake up Zelda)
    4: Credit (roll credits),
    5: ??
    6: Beginning a life (show the lives then restart the scene)


$076F - A fairy if 08
$076F - A fairy if 08
 
      - 0=beam projectile only full hp 10=flame projectile
$0770 - Exp. needed for Next Level (add 255 for every value)
$0770 - Exp. needed for Next Level (add 255 for every value)
$0771 - Exp. needed for Next Level (000 - 255)
$0771 - Exp. needed for Next Level (000 - 255)


$0773 - Current Magic left in meter
$0773 - Current Magic left in meter
$0774 - Current Life left in meter
$0774 - Current Life left in meter
 
$0775 - Experience MSB
$0775 - Second digit of exp. (add 255 for every value)
$0776 - Experience LSB
 
$0776 - First digit of exp. (000 - 255)
 
 


$0777 - Attack Power
$0777 - Attack Power
$0778 - Magic Power
$0778 - Magic Power
$0779 - Life Power
$0779 - Life Power


$077B - Have Shield magic
$077B - Have Shield magic
$077C - Have Jump magic
$077C - Have Jump magic
$077D - Have Life magic
$077D - Have Life magic
$077E - Have Fairy magic
$077E - Have Fairy magic
$077F - Have Fire magic
$077F - Have Fire magic
$0780 - Have Reflect magic
$0780 - Have Reflect magic
$0781 - Have Spell magic
$0781 - Have Spell magic
$0782 - Have Thunder magic
$0782 - Have Thunder magic
$0783 - Current number of Magic Containers
$0783 - Current number of Magic Containers
$0784 - Current number of Heart Containers
$0784 - Current number of Heart Containers
$0785 - Have Candle
$0785 - Have Candle
$0786 - Have Glove
$0786 - Have Glove
$0787 - Have Raft
$0787 - Have Raft
$0788 - Have Boots
$0788 - Have Boots
$0789 - Have Flute
$0789 - Have Flute
$078A - Have Cross
$078A - Have Cross
$078B - Have Hammer
$078B - Have Hammer
$078C - Have Magic Key
$078C - Have Magic Key


$0793 - Current number of keys
$0793 - Current number of keys
$0794 - Number of Crystals left for grand palace
$0794 - Number of Crystals left for grand palace
$0796 - Have (Downward Thrust 10) (Upward Thrust 04) (Both 14)
$0796 - Have (Downward Thrust 10) (Upward Thrust 04) (Both 14)
$0798 - Have collected (Trophey B6 - yes) (Medicine 43 - yes)
$0798 - Have collected (Trophey B6 - yes) (Medicine 43 - yes)
$0799 - Have collected the Mirror (01 - yes)
$0799 - Have collected the Mirror (01 - yes)
$079A - Have collected note from Baju (08 - yes)
$079A - Have collected note from Baju (08 - yes)
$079B - Have collected some water (01 - yes)
$079B - Have collected some water (01 - yes)
$079C - Have collected lost child (20 -yes)
$079C - Have collected lost child (20 -yes)
 
$079F - Number of times died
 


$07E8 - Noise
$07E8 - Noise
$07E9 - Triangle
$07E9 - Triangle
$07EA - Pulse 2
$07EA - Pulse 2
$07EB - Pulse 1
$07EB - Pulse 1
$07FB - ???MUSIC???
$07FB - ???MUSIC???


$0FA0 - Player name value #1
$0FA0 - Player name value #1
$0FA1 - Player name value #2
$0FA1 - Player name value #2
$0FA2 - Player name value #3
$0FA2 - Player name value #3
$0FA3 - Player name value #4
$0FA3 - Player name value #4
$0FA4 - Player name value #5
$0FA4 - Player name value #5
$0FA5 - Player name value #6
$0FA5 - Player name value #6
$0FA6 - Player name value #7
$0FA6 - Player name value #7
$0FA7 - Player name value #8
$0FA7 - Player name value #8


$6000 to $633F - current sidescroll data
MapPage RamLocation
0 6000-60CF
1 60D0-619F
2 61A0-626F
3 6270-633F
95 is a grave tile
51 is a bridge tile


$6340 to $6957 - unused?
$69E0 to $69FF - unused?


$6D27 - HP for Magic Stealing Skulls
$6A00 - Overworld location table, indexed by $748. The last entry is overworld enemy encounter and dynamically updated.
    6A00-6A3E Byte 0: wyyy yyyy
        w: Area changes world (707 value) and overworld (706 value).
        y: Y coordinate on overworld.
    6A3F-6A7D Byte 1: EExx xxxx
        E: Entrance number of area (0-3). Subtract from table index to get true area number.
        x: X coordinate on overworld.
    6A7E-6ABC Byte 2: ppmm mmmm
        p: Map page number to start at (0-3, 75c value). Even pages enter from the left, odd from right.
        m: Map number (561 value).
    6ABD-6AFB Byte 3: hsrw wwCC
        h: Entrance is a hole to fall into.
        s: Single-tile area that has 2 exit points.
        r: Enters from right regardless of initial map page number.
        w: Area world number (707 value). Ignored unless byte 0 w is set.
        C: Area overworld number (706 value). Ignored unless byte 0 w is set.


$6AFC - table of room connectivity data (6AFE can be P0 right exit )


$6C58 to $6CFF - unused?


$740E - Beginning number of Magic Containers for new game
$6D27 - HP for Magic Stealing Skulls
$6D41 - HP for Horsehead


$740F - Beginning number of Heart Containers for new game
$6FA1 to $6FFF - unused?


Save File Data Locations:


    File 1      File 2      File 3
    6002-6033  6034-6065  6066-6097  File part 1 copy (used during saving)
    6098-6177  6178-6257  6258-6337  File part 2 copy (used during saving)
    7400-7401  7498-7499  773a-773b  File header
    7402-7433  7434-7465  7466-7497  File part 1, saves $777-$7a8 ($32 bytes)
    749a-7579  757a-7659  765a-7739  File part 2, saves $600-$6df ($e0 bytes)


$DD4C - Beginning of graphics shown for experience (part 1)
Save file header byte 0 values determine how to handle save file at power-on:
    5a: Save was interrupted and main file has most recent valid save. Revert to main file.
    69: File copy has most recent save. Copy file copy to main file and use it.
    a5: Main file has most recent save.
    Anything else: Save file is invalid and must be reinitialized.


---- Save File 1 ----
   
    $7402 ($777) - Attack Level
    $7403 ($778) - Magic Level
    $7404 ($779) - Health Level
    $740E ($783) - Number of Magic Containers
    $740F ($784) - Number of Heart Containers
    $742A ($79F) - Death counter (max 255)
    $742B ($7A0) - 'Second Quest' - nonzero if player has beaten the game on this file (triforce will be shown in menu)
    $742C ($7A1) - Player name (8 chars)


$773C to $77FF - unused?
$79F9 to $7BFF - unused?


$DD5C - Beginning of graphics shown for experience (part 2)
$7C00 to $7F7F - RLE compressed overworld map
 


$7FA6 TO $7FFF - unused?


$DD4C - Beginning of graphics shown for experience (part 1)
$DD5C - Beginning of graphics shown for experience (part 2)
$DDC0 - Beginning of experience gained for enemies
$DDC0 - Beginning of experience gained for enemies
</pre>
{{Internal Data|game=Zelda II: The Adventure of Link}}

Latest revision as of 01:08, 31 January 2025

Chip tiny.png The following article is a RAM map for Zelda II: The Adventure of Link.

$0012 - frame counter

$0013 - set to 8 and The Player is a fairy, set to 0 and The Player is Link 

$0019 - draw Link's sprite?

$0026 - ?Movement Tally - Increases as you walk in overworld.


$0029 - Player's Current Y position

$002A - Enemy 6's current Y position
$002B - Enemy 5's 
$002C - Enemy 4's 
$002D - Enemy 3's 
$002E - Enemy 2's 
$002F - Enemy 1's 

$0030 - Projectile Y
$0031 - Projectile
$0032 - Projectile
$0033 - Projectile
$0034 - Projectile
$0035 - Projectile

$0036 - Sword Projectile Y On Screen

$003B - Player's current map page

$003C - Enemy 6's current map page
$003D - Enemy 5's 
$003E - Enemy 4's 
$003F - Enemy 3's 
$0040 - Enemy 2's 
$0041 - Enemy 1's 

$0042 - Projectile Map Page
$0043 - Projectile
$0044 - Projectile
$0045 - Projectile
$0046 - Projectile
$0047 - Projectile

$004D - Player's Current X position LSB

$004E - Enemy 6's current X position LSB
$004F - Enemy 5's 
$0050 - Enemy 4's 
$0051 - Enemy 3's 
$0052 - Enemy 2's 
$0053 - Enemy 1's 

$0054 - Projectile X
$0055 - Projectile
$0056 - Projectile
$0057 - Projectile
$0058 - Projectile
$0059 - Projectile

$005F - side scroll exit side: 2 = exited left, 1 = exited right

$0060 - Enemy 6's current facing direction
$0061 - Enemy 5's 
$0062 - Enemy 4's 
$0063 - Enemy 3's 
$0064 - Enemy 2's 
$0065 - Enemy 1's 

$0066 - Projectile facing direction
$0067 - Projectile
$0068 - Projectile
$0069 - Projectile
$006A - Projectile
$006B - Projectile

$0070 - Link's X speed
$0071 to $0076 Enemy's speed

$0073 - Y position on map (not visually)
$0074 - X position on map (not visually)

$0077 - Projectile speed
$0078 - Projectile
$0079 - Projectile
$007A - Projectile
$007B - Projectile
$007C - Projectile

$0080 - Link's sprite index
    0-3: Walking
    4: Standing wind up
    5: Standing stab
    6: Crouching
    7: Crouching stab
    8: Up stab
    9: Down stab

$0086-0089 -  Overworld random monster type (00 - None, 01 - Small, 02 - Big, )

$0087 - Projectile ID/type
$0088 - Projectile
$0089 - Projectile
$008A - Projectile
$008B - Projectile
$008C - Projectile

$008D - Projectile Flag (00 - Inactive, 01 - Active, F2-FF - Disintegrating)

$009F - Player's Facing Direction (side-scroll)

$00A1 - Enemy 6's ID / type
$00A2 - Enemy 5's 
$00A3 - Enemy 4's 
$00A4 - Enemy 3's 
$00A5 - Enemy 2's 
$00A6 - Enemy 1's 

$00A7 - Solids hit detection bits, 0000dcba, a = left, b = right, c = down, d = up.

$00AF - Enemy 6's current-item-ID OR something else(AI?)
$00B0 - Enemy 5's 
$00B1 - Enemy 4's 
$00B2 - Enemy 3's 
$00B3 - Enemy 2's 
$00B4 - Enemy 1's 
$00B4 - timer for healer lady in shield-town leaves door open

$00B5 
	 2 will make link die in lava
	 3 move right like when win game at dark link

$00B6 - Enemy 6 exists
      - set to 10 will make link fall down 
$00B7 - Enemy 5 
$00B8 - Enemy 4 
$00B9 - Enemy 3 
$00BA - Enemy 2 
$00BB - Enemy 1 

$00BC - Enemy 6's ?sram Y index (LDY BC,X  ; then LDA ($D6),Y   if bit7 is set it means monster killed?)
$00BD - Enemy 5's 
$00BE - Enemy 4's 
$00BF - Enemy 3's 
$00C0 - Enemy 2's 
$00C1 - Enemy 1's 

$00C2 - Enemy 6's HP
$00C3 - Enemy 5's HP
$00C4 - Enemy 4's HP
$00C5 - Enemy 3's HP
$00C6 - Enemy 2's HP
$00C7 - Enemy 1's HP

$00CC - Link's X on screen - 8 ($4d - $72c)

$00CD to $00D3 - Monster X on screen ($4e - $72c)

$00DE - ?set to 1 to prevent moving, 0 to allow??

$00A1 - Enemy 6's ID
$00A2 - Enemy 5's ID
$00A3 - Enemy 4's ID
$00A4 - Enemy 3's ID
$00A5 - Enemy 2's ID
$00A6 - Enemy 1's ID

$00C2 - Current amount of health enemy 6 has
$00C3 - Current amount of health enemy 5 has
$00C4 - Current amount of health enemy 4 has
$00C5 - Current amount of health enemy 3 has
$00C6 - Current amount of health enemy 2 has
$00C7 - Current amount of health enemy 1 has

$00CC - ?Player X On Screen?

$00D1 - maximum number of map pages for this scene

$00E0-EF - Music variables (behaves different for title screen vs. normal game)

Title Screen:
$00EA - Music to play
    1: Title theme
$00EB - Sound effect to play
    $01: Letter entry sound
    $02: Select different letter sound
    $04: Select different menu item sound
    $08: Elimination sound

Normal Game:
$00E9 - DMC sound effect to play?
$00EA - Pause music if non-zero
$00EB - Music track to play. Set of tracks differs based on world ($707).
    World ($707 = 0):
        $01: Overworld
        $02: Overworld Loop
        $04: Battle
        $08: Mutant Battle
        $10: Item Acquired (restart previous music afterward)
    Town ($707 = 1/2):
        $01: Town
        $02: Town Loop
        $04: Mutant House
        $08: House
        $10: Learn Technique (restarts previous)
    Palace ($707 = 3/4):
        $01: Palace
        $02: Palace Loop
        $04: Mutant Palace Loop
        $08: Boss Theme
        $10: Item Acquired
        $20: Silence
        $40: Crystal Placed (does NOT restart previous)
        $80: Silence
    Great Palace and Ending / Zelda Awakens ($707 = 5/6):
        $01: Great Palace
        $02: Great Palace Loop
        $04: Zelda Awakens / Ending (both are used in their different zones but are the same)
        $08: Credits
        $10: Item Acquired
        $20: Game Complete (does NOT restart previous)
        $40: Dark Link Battle
        $80: Silence
$00EC - Complex sound effect to play
    $01: Death (stops music)
$00ED - Triangle/noise sound effect to play
$00EE - Square 2 sound effect to play
    $01: Falling (stops music)
    $02: Enemy Encounter (starts battle music)
    $04: Exiting side-scrolling (stops music)
$00EF - Square 1 sound effect to play

$00F5 - Controller 1 button pressed
$00F6 - Controller 2 button pressed
$00F7 - Controller 1 button held
$00F8 - Controller 2 button held

$00FE - ?changes brightness sorta?

$0100 - NMI handler behavior: ng-- ----
    n: Do gameplay. If clear, only update sound during NMI.
    g: In game. If clear, do title screen NMI handling.

$0100 states:
    $80 at title screen
    $c0 when loading game
    $40 when entering game (after displaying number of lives)
    $c0 in game

$0301 - Used when writing text to screen
$0302 - Used when writing text to screen
$0303 - Letter position when writing to screen
$0304 - Text memory offset?
$0305 - Empty Row Space Character
$0306 - Letter Written to Screen
$0307 - Text memory offset?

$03D6 - Player's X Subpixel
$03D7 - Enemy 6's X Subpixel
$03D8 - Enemy 5's 
$03D9 - Enemy 4's 
$03DA - Enemy 3's 
$03DB - Enemy 2's 
$03DC - Enemy 1's 

$040E - Enemy 6's stun-delay-when-hit timer
$040F - Enemy 5's 
$0410 - Enemy 4's 
$0411 - Enemy 3's 
$0412 - Enemy 2's 
$0413 - Enemy 1's 

$0488 - selection index for MENU (continue/save)

$0489 - Text Column
$048A - Text Row
$048B - Conversation Pointer

$048E - Enemy 6's item-ID in the future
$048F - Enemy 5's 
$0490 - Enemy 4's 
$0491 - Enemy 3's 
$0492 - Enemy 2's 
$0493 - Enemy 1's 

$0500 - Invincibility after stun counter (counts down, nonzero = invincible)

$050A - ?Attack Delays
$0518 - ?Invulnerable Timeout (01-02 - Blinking, 03+ - Not Blinking)

$0524 - menu control / state 

$0561 - Current scene/map index 

$0562 - Player's Facing Direction (overworld map)

$0562 - ?Controller 1 Last Poll

$0563 - Terrain type under Link in overworld
    0: Town
    1: Cave
    2: Palace (includes North Palace)
    3: Bridge/raft tile
    4: Desert
    5: Grass
    6: Forest
    7: Swamp
    8: Graveyard
    9: Road
    a: Lava
    b: Mountain
    c: Impassable water
    d: Passable water
    e: Destructible boulder
    f: River devil

$0564 - ?Magic Points - Display
$0565 - ?Hit Points - Display

$0569 - used for counting text when displaying talk text
$056B - involved with Life Town's Bagu Bridge, when $56B=2 and $796=1 then Bagu Bridge will be built
$056B - Town Code
$056C - Palace index on continent ($748 - #$34)

$057D - Player Y speed

$057E - Enemy 6's stun-delay-when-hit timer
$057F - Enemy 5's 
$0580 - Enemy 4's 
$0581 - Enemy 3's 
$0582 - Enemy 2's 
$0583 - Enemy 1's 

$05CA - Sword Projectile Timeout

$05DF - count of easy monster killed for item drop
$05E0 - count of hard monster killed for item drop

$05EB - Experience an enemy takes away

---------------(Uses bits?)---------------------

$0608 bits
 - Heart Container #2 taken FB (1111 1011)
$0610 bits
 - Trophy taken F7 (1111 0111)
$0613 bits
 - Heart Container #1 (S of Parapa Palace) taken DF (1101 1111)
$0615 bits
 - Exp. Bag (NE of Castle) taken FD (1111 1101)
$0616 bits
 - Magic Container #1 (S of Castle) taken FE (1111 1110)
$0617 bits
 - Exp. Bag  (E of Saria) taken DF (1101 1111)
$061C bits
 - Extra Life (W of Cemetery Palace) taken FD (1111 1101)
$0624 bits
 - Red magic jar (Death MT #1) taken FB (1111 1011)
$0626 bits
 - Red magic jar (Death MT #2) taken F7 (1111 0111)
$0629 bits
 - Red magic jar (Death MT #3) taken DF (1101 1111)
$062A bits
 - Hammer taken FE (1111 1110)
$062D bits
 - Magic Container #2 (Death MT) taken BF (1011 1111)
$0643 bits
 - Heart Container #3 (N of Island Palace) taken FB (1111 1011)
$0657 bits
 - Heart Container #4 (E of Seaside Palace) taken BF (1011 1111)
$0680 bits
 - Parapa Desert Key #2 will appear (FB - yes : FA - no)
$0681 - Parapa Desert Key #1 will appear (FF - yes : F7 - no)

$0684 - bits
 - Candle taken 7F (0111 1111)
 - Parapa Desert Lock to Candle unlocked BF (1011 1111)
 - Bag on top of Elevator down taken DF (1101 1111)
 - Left side of bridge exp. bag taken FB (1111 1011)
 - Right side of bridge exp. bag taken FD (1111 1101)

$0700 - Current number of lives
$0701 - start this side of screen: 0=left, 1=right
$0704 - (Elevator) 0=start bottom of screen, 1=start at top of screen

$0706 - Overworld index
    0: West
    1: Death Mountain / Maze Island
    2: East
$0707 - "World"
    0: Overworld and all other areas not listed
    1: West towns, Bagu's cabin, King's Tomb
    2: East towns
    3: Palaces 1, 2, 5
    4: Palaces 3, 4, 6
    5: Great Palace and ending
    6: Zelda awakens scene

$0709 - involved in returning to the over-world while in side-scroll?
$070A - Overworld index for overworld when in side-scrolling
$070B - Graphics Bank for Palaces

$070C - add this value to link's MP slowly (old lady magic restore)
$070D - add this value to link's HP slowly (healing lady)

$070E - setting to 1 will make link sink (duck into the chimney)

$0728 - setting to 1 will freeze screen, prevent from exiting left/right (like during a boss battle)

$072A - Leftmost pixel of screen X scroll MSB
$072B - Rightmost pixel of screen X scroll MSB
$072C - Leftmost pixel of screen X scroll LSB
$072D - Rightmost pixel of screen X scroll LSB

$0736 - game mode/current state
    side-scroll: set $769,$706,$707,$56B,$56C,$561, and set $736 to 0 (to load any scene anywhere)
		$769	$706	$707	$56B	$56C	$561
rauru		03	00	01	00	F8	
nabooru		03	02	02	04	F8	
palaces 1	04	00	03	04	00	00
palaces 2	04	00	03	04	01	0E
palaces 3	04	00	04	05	02	00
palaces 4	04	01	04	08	00	0F
palaces 5	04	02	03	08	00	23
palaces 6	04	02	04	08	01	24
GP		05	02	05	09	02	00
		
    side-scroll: set $709 to 1, set $736 to 0 (to go outside/return to over-world map)
    side-scroll: set $709 to 1, set $748 and $706 to target destination, set $736 to 0 (to go outside/return to over-world map) (also $707, $70A and $70B may need to be set to 0??)
    ?side-scroll: set $561 to target scene/map index, set $736 to 0,8,C (to load scene)
    Over-world: set $736 to 6 or 0 (enter map position u are at)  
    over-world: set $73 and $74 , then set $736 to 2 (update screen with position)

$0743 - elevator was moving up or down: 8=up, 4=down

$0748 - True area location index. When transitioning to side-scrolling this will temporarily be overworld location index before translation to true area index.

$0749 - Current position of the selector on Magic

$074B - this value causes two different flashing effect of magic

$0755 - add this value to link's exp slowly (add 255 for every value)
$0756 - add this value to link's exp slowly

$075A - Current enemy encounter type in side-scrolling
    0: Either fairy or fixed encounter (overworld location)
    1: Small enemy
    2: Big enemy

$075C - Start this map page

$0768 - ?changes brightness sorta?
$0769 - Bank to switch back to after changing banks in NMI handler
$076C - Game state, can also be written to initiate a special routine
    0: Entering game (restart from North Palace with 3 lives)
    1: In game
    2: Dying (die)
    3: Ending (wake up Zelda)
    4: Credit (roll credits), 
    5: ??
    6: Beginning a life (show the lives then restart the scene)

$076F - A fairy if 08
      - 0=beam projectile only full hp	10=flame projectile
$0770 - Exp. needed for Next Level (add 255 for every value)
$0771 - Exp. needed for Next Level (000 - 255)

$0773 - Current Magic left in meter
$0774 - Current Life left in meter
$0775 - Experience MSB
$0776 - Experience LSB

$0777 - Attack Power
$0778 - Magic Power
$0779 - Life Power

$077B - Have Shield magic
$077C - Have Jump magic
$077D - Have Life magic
$077E - Have Fairy magic
$077F - Have Fire magic
$0780 - Have Reflect magic
$0781 - Have Spell magic
$0782 - Have Thunder magic
$0783 - Current number of Magic Containers
$0784 - Current number of Heart Containers
$0785 - Have Candle
$0786 - Have Glove
$0787 - Have Raft
$0788 - Have Boots
$0789 - Have Flute
$078A - Have Cross
$078B - Have Hammer
$078C - Have Magic Key

$0793 - Current number of keys
$0794 - Number of Crystals left for grand palace
$0796 - Have (Downward Thrust 10) (Upward Thrust 04) (Both 14)
$0798 - Have collected (Trophey B6 - yes) (Medicine 43 - yes)
$0799 - Have collected the Mirror (01 - yes)
$079A - Have collected note from Baju (08 - yes)
$079B - Have collected some water (01 - yes)
$079C - Have collected lost child (20 -yes)
$079F - Number of times died

$07E8 - Noise
$07E9 - Triangle
$07EA - Pulse 2
$07EB - Pulse 1
$07FB - ???MUSIC???

$0FA0 - Player name value #1
$0FA1 - Player name value #2
$0FA2 - Player name value #3
$0FA3 - Player name value #4
$0FA4 - Player name value #5
$0FA5 - Player name value #6
$0FA6 - Player name value #7
$0FA7 - Player name value #8

$6000 to $633F - current sidescroll data
MapPage	RamLocation
0	6000-60CF
1	60D0-619F
2	61A0-626F
3	6270-633F
	95 is a grave tile
	51 is a bridge tile

$6340 to $6957 - unused?
$69E0 to $69FF - unused?

$6A00 - Overworld location table, indexed by $748. The last entry is overworld enemy encounter and dynamically updated.
    6A00-6A3E Byte 0: wyyy yyyy
        w: Area changes world (707 value) and overworld (706 value).
        y: Y coordinate on overworld.
    6A3F-6A7D Byte 1: EExx xxxx
        E: Entrance number of area (0-3). Subtract from table index to get true area number.
        x: X coordinate on overworld.
    6A7E-6ABC Byte 2: ppmm mmmm
        p: Map page number to start at (0-3, 75c value). Even pages enter from the left, odd from right.
        m: Map number (561 value).
    6ABD-6AFB Byte 3: hsrw wwCC
        h: Entrance is a hole to fall into.
        s: Single-tile area that has 2 exit points.
        r: Enters from right regardless of initial map page number.
        w: Area world number (707 value). Ignored unless byte 0 w is set.
        C: Area overworld number (706 value). Ignored unless byte 0 w is set.

$6AFC - table of room connectivity data (6AFE can be P0 right exit )

$6C58 to $6CFF - unused?

$6D27 - HP for Magic Stealing Skulls
$6D41 - HP for Horsehead

$6FA1 to $6FFF - unused?

Save File Data Locations:

    File 1      File 2      File 3
    6002-6033   6034-6065   6066-6097   File part 1 copy (used during saving)
    6098-6177   6178-6257   6258-6337   File part 2 copy (used during saving)
    7400-7401   7498-7499   773a-773b   File header
    7402-7433   7434-7465   7466-7497   File part 1, saves $777-$7a8 ($32 bytes)
    749a-7579   757a-7659   765a-7739   File part 2, saves $600-$6df ($e0 bytes)

Save file header byte 0 values determine how to handle save file at power-on:
    5a: Save was interrupted and main file has most recent valid save. Revert to main file.
    69: File copy has most recent save. Copy file copy to main file and use it.
    a5: Main file has most recent save.
    Anything else: Save file is invalid and must be reinitialized.

---- Save File 1 ----
    
    $7402 ($777) - Attack Level
    $7403 ($778) - Magic Level
    $7404 ($779) - Health Level
    $740E ($783) - Number of Magic Containers
    $740F ($784) - Number of Heart Containers
    $742A ($79F) - Death counter (max 255)
    $742B ($7A0) - 'Second Quest' - nonzero if player has beaten the game on this file (triforce will be shown in menu)
    $742C ($7A1) - Player name (8 chars)

$773C to $77FF - unused?
$79F9 to $7BFF - unused?

$7C00 to $7F7F - RLE compressed overworld map

$7FA6 TO $7FFF - unused?

$DD4C - Beginning of graphics shown for experience (part 1)
$DD5C - Beginning of graphics shown for experience (part 2)
$DDC0 - Beginning of experience gained for enemies