Welcome to Data Crystal's new home! Data Crystal is now part of the TCRF family (sort of).
The wiki has recently moved; please report any issues in Discord. Pardon the dust.
The wiki has recently moved; please report any issues in Discord. Pardon the dust.
Zelda II: The Adventure of Link/RAM map: Difference between revisions
Jump to navigation
Jump to search
(Added some music RAM info.) |
m (Changed explanation for $00A7 which is the hit detection bits for solids.) |
||
Line 111: | Line 111: | ||
$00A6 - Enemy 1's | $00A6 - Enemy 1's | ||
$00A7 - | $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?) | $00AF - Enemy 6's current-item-ID OR something else(AI?) |
Revision as of 00:07, 30 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
| |
---|---|