Difference between revisions of "Zelda II: The Adventure of Link:RAM map"
Jump to navigation
Jump to search
(added some RAM addresses) |
m (Changed explanation for $00A7 which is the hit detection bits for solids.) |
||
(15 intermediate revisions by 9 users not shown) | |||
Line 1: | Line 1: | ||
− | + | {{rammap|game=Zelda II: The Adventure of Link}} | |
− | + | <pre> | |
− | + | $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 | $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 |
− | $ | + | $004E - Enemy 6's current X position |
+ | $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 - this value will move Link (The Player) left and right | ||
+ | $0071 to $0076 Enemy's | ||
$0073 - Y position on map (not visually) | $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? | ||
+ | |||
+ | $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 | ||
+ | $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 | $00C2 - Current amount of health enemy 6 has | ||
− | |||
$00C3 - Current amount of health enemy 5 has | $00C3 - Current amount of health enemy 5 has | ||
− | |||
$00C4 - Current amount of health enemy 4 has | $00C4 - Current amount of health enemy 4 has | ||
− | |||
$00C5 - Current amount of health enemy 3 has | $00C5 - Current amount of health enemy 3 has | ||
− | |||
$00C6 - Current amount of health enemy 2 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: | ||
+ | $00EB - Sound effect flags (auto-clears when starts playing) | ||
+ | bit 0 ($01): Letter entry sound | ||
+ | bit 1 ($02): Select different letter sound | ||
+ | bit 2 ($04): Select different menu item sound | ||
+ | bit 3 ($08): Elimination sound | ||
+ | Normal Game: | ||
+ | $00EA - Non-zero value written pauses music, zero resumes | ||
+ | $00EB - Music command | ||
+ | Note: Seems that bit 2 makes music quieter when set. | ||
+ | These are values in the overworld. In a town is different. | ||
+ | $00: Value cleared to $00 once acknowledged by music engine | ||
+ | $01: Start overworld music with intro | ||
+ | $02: Start overworld music without intro | ||
+ | $03: Same as $01 | ||
+ | $04: Start Battle music | ||
+ | $10: Get Item | ||
+ | $80: Something to do with switching to a different selection of songs. Does this when entering a town. | ||
+ | $00EC-EF - Sound Effect bitfields. Set bits to play sound effects | ||
$00F5 - Controller 1 button pressed | $00F5 - Controller 1 button pressed | ||
− | |||
$00F6 - Controller 2 button pressed | $00F6 - Controller 2 button pressed | ||
− | |||
$00F7 - Controller 1 button held | $00F7 - Controller 1 button held | ||
+ | $00F8 - Controller 2 button held | ||
− | $ | + | $00FE - ?changes brightness sorta? |
+ | $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? | ||
− | $ | + | $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 |
+ | $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 Code | ||
+ | $057D - ?Player Y Delta | ||
− | $ | + | $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 hyrule, 1=death mtn/maze island, 2=east hyrule) | ||
+ | $0707 - "world" (0=caves, enemy encounters...; 1=west hyrule towns; 2=east hyrule towns; 3=palace 1,2,5 ; 4=palace 3,4,6 ; 5=great palace) | ||
+ | $0709 - involved in returning to the over-world while in side-scroll? | ||
+ | $070A - Previous Region ? | ||
+ | $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) | ||
− | $ | + | $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 - area location index (the index of the spot on the overworld that pulled you into the sideview) | ||
− | $ | + | $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 | ||
+ | $075C - Start this map page | ||
− | $ | + | $0768 - ?changes brightness sorta? |
− | + | $0769 - Bank to switch to (other than 0 or 7) | |
+ | $076C - begin a special routine. Changing this value has the most 'automation' | ||
+ | (00=restart from zelda's castle with 3 lives, 01=no routine, 02=die, 03=wake up zelda, 04=roll credits, 06=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 - Second digit of exp. (add 255 for every value) | $0775 - Second digit of exp. (add 255 for every value) | ||
− | |||
$0776 - First digit of exp. (000 - 255) | $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 | ||
+ | $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 $694f - unused? |
+ | $6A00 - Overworld destinations table (copied from ROM) | ||
+ | 6A00 and 6AFB Overworld Area Data Table | ||
+ | 6A00-6A3E Area Byte 0 (Y Position) | ||
+ | 6A3F-6A7D Area Byte 1 (X Position) | ||
+ | 6A7E-6ABC Area Byte 2 (Map Number) | ||
+ | 6ABD-6AFB Area Byte 3 (Region/World Code) | ||
+ | Take byte 2, keep bits 0-5, and you've got your Map Number. | ||
+ | $748 is index to use in these tables. | ||
+ | $6AFC - table of room connectivity data (6AFE can be P0 right exit ) | ||
$6D27 - HP for Magic Stealing Skulls | $6D27 - HP for Magic Stealing Skulls | ||
+ | $6D41 - HP for Horsehead | ||
+ | ---- Save File 1 ---- | ||
+ | |||
+ | (this might just be copied directly to/from $0777 area of RAM) | ||
+ | $7402 - Attack Level | ||
+ | $7403 - Magic Level | ||
+ | $7404 - Health Level | ||
+ | $742A - Death counter (max 255) | ||
+ | $742B - 'Second Quest' - nonzero if player has beaten the game on this file (triforce will be shown in menu) | ||
+ | $742C - Player name (8 chars) | ||
+ | --------------------- | ||
$740E - Beginning number of Magic Containers for new game | $740E - Beginning number of Magic Containers for new game | ||
− | |||
$740F - Beginning number of Heart Containers for new game | $740F - Beginning number of Heart Containers for new game | ||
+ | $7A00 to $7BFF - unused? | ||
+ | $7C00 to $7FFF? - Copy of overworld map in RAM. | ||
$DD4C - Beginning of graphics shown for experience (part 1) | $DD4C - Beginning of graphics shown for experience (part 1) | ||
− | |||
− | |||
− | |||
$DD5C - Beginning of graphics shown for experience (part 2) | $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 20:07, 29 October 2020
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 $004E - Enemy 6's current X position $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 - this value will move Link (The Player) left and right $0071 to $0076 Enemy's $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? $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 $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: $00EB - Sound effect flags (auto-clears when starts playing) bit 0 ($01): Letter entry sound bit 1 ($02): Select different letter sound bit 2 ($04): Select different menu item sound bit 3 ($08): Elimination sound Normal Game: $00EA - Non-zero value written pauses music, zero resumes $00EB - Music command Note: Seems that bit 2 makes music quieter when set. These are values in the overworld. In a town is different. $00: Value cleared to $00 once acknowledged by music engine $01: Start overworld music with intro $02: Start overworld music without intro $03: Same as $01 $04: Start Battle music $10: Get Item $80: Something to do with switching to a different selection of songs. Does this when entering a town. $00EC-EF - Sound Effect bitfields. Set bits to play sound effects $00F5 - Controller 1 button pressed $00F6 - Controller 2 button pressed $00F7 - Controller 1 button held $00F8 - Controller 2 button held $00FE - ?changes brightness sorta? $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? $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 $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 Code $057D - ?Player Y Delta $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 hyrule, 1=death mtn/maze island, 2=east hyrule) $0707 - "world" (0=caves, enemy encounters...; 1=west hyrule towns; 2=east hyrule towns; 3=palace 1,2,5 ; 4=palace 3,4,6 ; 5=great palace) $0709 - involved in returning to the over-world while in side-scroll? $070A - Previous Region ? $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) $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 - area location index (the index of the spot on the overworld that pulled you into the sideview) $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 $075C - Start this map page $0768 - ?changes brightness sorta? $0769 - Bank to switch to (other than 0 or 7) $076C - begin a special routine. Changing this value has the most 'automation' (00=restart from zelda's castle with 3 lives, 01=no routine, 02=die, 03=wake up zelda, 04=roll credits, 06=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 - Second digit of exp. (add 255 for every value) $0776 - First digit of exp. (000 - 255) $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 $694f - unused? $6A00 - Overworld destinations table (copied from ROM) 6A00 and 6AFB Overworld Area Data Table 6A00-6A3E Area Byte 0 (Y Position) 6A3F-6A7D Area Byte 1 (X Position) 6A7E-6ABC Area Byte 2 (Map Number) 6ABD-6AFB Area Byte 3 (Region/World Code) Take byte 2, keep bits 0-5, and you've got your Map Number. $748 is index to use in these tables. $6AFC - table of room connectivity data (6AFE can be P0 right exit ) $6D27 - HP for Magic Stealing Skulls $6D41 - HP for Horsehead ---- Save File 1 ---- (this might just be copied directly to/from $0777 area of RAM) $7402 - Attack Level $7403 - Magic Level $7404 - Health Level $742A - Death counter (max 255) $742B - 'Second Quest' - nonzero if player has beaten the game on this file (triforce will be shown in menu) $742C - Player name (8 chars) --------------------- $740E - Beginning number of Magic Containers for new game $740F - Beginning number of Heart Containers for new game $7A00 to $7BFF - unused? $7C00 to $7FFF? - Copy of overworld map in RAM. $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
Internal Data for Zelda II: The Adventure of Link |
---|
ROM Map • RAM Map • Text Table • Notes • Tutorials |