From 8afa6bd527c36e4c13664472933465e559113587 Mon Sep 17 00:00:00 2001 From: Connor Olding Date: Thu, 26 Mar 2015 06:56:27 -0700 Subject: [PATCH] more common addresses --- Lua/addrs/M JP10.lua | 42 ++++++++++-------------------- Lua/addrs/M JP11.lua | 39 +++++++++++++++++++++++++++- Lua/addrs/M US10.lua | 46 -------------------------------- Lua/addrs/M common.lua | 59 ++++++++++++++++++++++++++++++++++++++++++ Lua/addrs/init.lua | 9 ++++++- Lua/oneshot.lua | 1 + 6 files changed, 119 insertions(+), 77 deletions(-) diff --git a/Lua/addrs/M JP10.lua b/Lua/addrs/M JP10.lua index 1fd7471..00a246a 100755 --- a/Lua/addrs/M JP10.lua +++ b/Lua/addrs/M JP10.lua @@ -1,12 +1,12 @@ return { checksum = AL(0x138E, 2), - --disable_pause = AL(, 1), - --hookshot_ba = AL(, 1), - --disable_c_buttons_2 = AL(, 1), - --disable_items = AL(, 1), - --rock_sirloin = AL(, 1), - --sword_disabler = AL(, 1), - --bubble_timer = AL(, 2), + disable_pause = nil, + hookshot_ba = nil, + disable_c_buttons_2 = nil, + disable_items = nil, + rock_sirloin = AL(0x3F55, 1), + sword_disabler = nil, + bubble_timer = AL(0x3F58, 2), rupee_accumulator = AL(0x4078, 2), spring_water_timers = AL(0x41D8, 0xC0), spring_water_time_1 = AL(0x41F8, 0x20), @@ -17,7 +17,7 @@ return { spring_water_time_6 = AL(0x4298, 0x20), pictograph_picture = AL(0x1390, 0x2BC0), title_screen_mod = AL(0x3F5C, 4), - --entrance_mod = AL(, 4), + entrance_mod = AL(0x3F60, 4), timer_crap = AL(0x408C, 4), timer_x = AL(0x41B8, 2), timer_y = AL(0x41C6, 2), @@ -25,30 +25,14 @@ return { magic_modifier = AL(0x42AC, 4), magic_max = AL(0x42B2, 2), weird_a_graphic = AL(0x42CE, 1), - --target_style = AL(, 1), - --music_mod = AL(, 2), - --entrance_mod_setter = AL(, 2), + target_style = AL(0x42D1, 1), + music_mod = nil, + entrance_mod_setter = nil, title_screen_thing = AL(0x42D8, 1), - --transition_mod = AL(, 2), + transition_mod = nil, suns_song_effect = AL(0x42E4, 2), health_mod = AL(0x42E6, 2), screen_scale_enable = AL(0x42EC, 1), screen_scale = AL(0x42F0, 'f'), - --scene_flags_ingame = AL(, 0x960), - - --random = A(, 4), - --visibility = A(, 2), - stored_epona = A(0x1B892F, 1), - stored_song = A(0x1C18ED, 1), - --buttons_3 = A(, 2), - --buttons_4 = A(, 2), - - --text_open = A(, 1), - --text_status = A(, 1), - room_number = A(0x3FF3B0, 1), - room_ptr = A(0x3FF3BC, 4), - --actor_disable = A(, 2), - --warp_begin = A(, 1), - --screen_dim = A(, 1), - --warp_destination = A(, 2), + scene_flags_ingame = AL(0x42F4, 0x960), } diff --git a/Lua/addrs/M JP11.lua b/Lua/addrs/M JP11.lua index a564707..00a246a 100755 --- a/Lua/addrs/M JP11.lua +++ b/Lua/addrs/M JP11.lua @@ -1 +1,38 @@ -return {} +return { + checksum = AL(0x138E, 2), + disable_pause = nil, + hookshot_ba = nil, + disable_c_buttons_2 = nil, + disable_items = nil, + rock_sirloin = AL(0x3F55, 1), + sword_disabler = nil, + bubble_timer = AL(0x3F58, 2), + rupee_accumulator = AL(0x4078, 2), + spring_water_timers = AL(0x41D8, 0xC0), + spring_water_time_1 = AL(0x41F8, 0x20), + spring_water_time_2 = AL(0x4218, 0x20), + spring_water_time_3 = AL(0x4238, 0x20), + spring_water_time_4 = AL(0x4258, 0x20), + spring_water_time_5 = AL(0x4278, 0x20), + spring_water_time_6 = AL(0x4298, 0x20), + pictograph_picture = AL(0x1390, 0x2BC0), + title_screen_mod = AL(0x3F5C, 4), + entrance_mod = AL(0x3F60, 4), + timer_crap = AL(0x408C, 4), + timer_x = AL(0x41B8, 2), + timer_y = AL(0x41C6, 2), + buttons_enabled = AL(0x429C, 4), + magic_modifier = AL(0x42AC, 4), + magic_max = AL(0x42B2, 2), + weird_a_graphic = AL(0x42CE, 1), + target_style = AL(0x42D1, 1), + music_mod = nil, + entrance_mod_setter = nil, + title_screen_thing = AL(0x42D8, 1), + transition_mod = nil, + suns_song_effect = AL(0x42E4, 2), + health_mod = AL(0x42E6, 2), + screen_scale_enable = AL(0x42EC, 1), + screen_scale = AL(0x42F0, 'f'), + scene_flags_ingame = AL(0x42F4, 0x960), +} diff --git a/Lua/addrs/M US10.lua b/Lua/addrs/M US10.lua index b2f6e2e..b9da1a5 100755 --- a/Lua/addrs/M US10.lua +++ b/Lua/addrs/M US10.lua @@ -1,54 +1,8 @@ return { - checksum = AL(0x100A, 2), - disable_pause = AL(0x100D, 1), - hookshot_ba = AL(0x100E, 1), - disable_c_buttons_2 = AL(0x100F, 1), - disable_items = AL(0x1010, 1), - rock_sirloin = AL(0x1014, 1), - sword_disabler = AL(0x1015, 1), - bubble_timer = AL(0x1016, 2), - rupee_accumulator = AL(0x1018, 2), - spring_water_timers = AL(0x1020, 0xC0), - spring_water_time_1 = AL(0x1020, 0x20), - spring_water_time_2 = AL(0x1040, 0x20), - spring_water_time_3 = AL(0x1060, 0x20), - spring_water_time_4 = AL(0x1080, 0x20), - spring_water_time_5 = AL(0x10A0, 0x20), - spring_water_time_6 = AL(0x10C0, 0x20), - pictograph_picture = AL(0x10E0, 0x2BC0), - title_screen_mod = AL(0x3CA8, 4), - entrance_mod = AL(0x3CAC, 4), - timer_crap = AL(0x3DD0, 4), - timer_x = AL(0x3EFA, 2), - timer_y = AL(0x3F08, 2), - buttons_enabled = AL(0x3F18, 4), - magic_modifier = AL(0x3F28, 4), - magic_max = AL(0x3F2E, 2), - weird_a_graphic = AL(0x3F42, 1), - target_style = AL(0x3F45, 1), - music_mod = AL(0x3F46, 2), - entrance_mod_setter = AL(0x3F4A, 2), - title_screen_thing = AL(0x3F4C, 1), - transition_mod = AL(0x3F55, 2), - suns_song_effect = AL(0x3F58, 2), - health_mod = AL(0x3F5A, 2), - screen_scale_enable = AL(0x3F60, 1), - screen_scale = AL(0x3F64, 'f'), - scene_flags_ingame = AL(0x3F68, 0x960), - random = A(0x097530, 4), visibility = A(0x166118, 2), stored_epona = A(0x1BDA9F, 1), stored_song = A(0x1C6A7D, 1), buttons_3 = A(0x1FB870, 2), buttons_4 = A(0x1FB876, 2), - - text_open = A(0x3FD33B, 1), - text_status = A(0x3FD34A, 1), - room_number = A(0x3FF200, 1), - room_ptr = A(0x3FF20C, 4), - actor_disable = A(0x3FF366, 2), - warp_begin = A(0x3FF395, 1), - screen_dim = A(0x3FF397, 1), - warp_destination = A(0x3FF39A, 2), } diff --git a/Lua/addrs/M common.lua b/Lua/addrs/M common.lua index 368c1ec..a6c8557 100755 --- a/Lua/addrs/M common.lua +++ b/Lua/addrs/M common.lua @@ -117,6 +117,44 @@ return { bombers_code_4 = AL(0xFFE, 1), bombers_code_5 = AL(0xFFF, 1), + -- note: these addresses are invalid for JP10, JP11. + checksum = AL(0x100A, 2), + disable_pause = AL(0x100D, 1), + hookshot_ba = AL(0x100E, 1), + disable_c_buttons_2 = AL(0x100F, 1), + disable_items = AL(0x1010, 1), + rock_sirloin = AL(0x1014, 1), + sword_disabler = AL(0x1015, 1), + bubble_timer = AL(0x1016, 2), + rupee_accumulator = AL(0x1018, 2), + spring_water_timers = AL(0x1020, 0xC0), + spring_water_time_1 = AL(0x1020, 0x20), + spring_water_time_2 = AL(0x1040, 0x20), + spring_water_time_3 = AL(0x1060, 0x20), + spring_water_time_4 = AL(0x1080, 0x20), + spring_water_time_5 = AL(0x10A0, 0x20), + spring_water_time_6 = AL(0x10C0, 0x20), + pictograph_picture = AL(0x10E0, 0x2BC0), + title_screen_mod = AL(0x3CA8, 4), + entrance_mod = AL(0x3CAC, 4), + timer_crap = AL(0x3DD0, 4), + timer_x = AL(0x3EFA, 2), + timer_y = AL(0x3F08, 2), + buttons_enabled = AL(0x3F18, 4), + magic_modifier = AL(0x3F28, 4), + magic_max = AL(0x3F2E, 2), + weird_a_graphic = AL(0x3F42, 1), + target_style = AL(0x3F45, 1), + music_mod = AL(0x3F46, 2), + entrance_mod_setter = AL(0x3F4A, 2), + title_screen_thing = AL(0x3F4C, 1), + transition_mod = AL(0x3F55, 2), + suns_song_effect = AL(0x3F58, 2), + health_mod = AL(0x3F5A, 2), + screen_scale_enable = AL(0x3F60, 1), + screen_scale = AL(0x3F64, 'f'), + scene_flags_ingame = AL(0x3F68, 0x960), + inventory = { b_button_item = AL(0x4C, 1), c_left_item = AL(0x4D, 1), @@ -194,6 +232,11 @@ return { buttons_1 = AG(0x1A, 1), buttons_2 = AG(0x1B, 1), framerate_limiter = AG(0xA2, 1), + scene_number = AG(0xA4, 2), + screen_T = AG(0xC0, 4), + screen_B = AG(0xC4, 4), + screen_L = AG(0xC8, 4), + screen_R = AG(0xCC, 4), camera_target = AG(0x2B0, 4), actor_count = AG(0x1CAE, 1), @@ -234,6 +277,22 @@ return { current_scene_flags_1 = AG(0x1E68, 4), current_scene_flags_4 = AG(0x1E6C, 4), current_scene_flags_5 = AG(0x1E74, 4), + text_active = AG(0x1681B, 1), + text_status = AG(0x1682A, 1), + + -- offset by -0x20 on JP10/JP11 + wind_x = AG(0x170B0, 2), + wind_y = AG(0x170B2, 2), + wind_z = AG(0x170B4, 2), + wind_power = AG(0x170B8, 'f'), + room_number = AG(0x186E0, 1), + room_pointer = AG(0x186EC, 4), + frames_in_scene = AG(0x18840, 4), + actor_disable = AG(0x18846, 2), + warp_begin = AG(0x18875, 1), + screen_dim = AG(0x18877, 1), + warp_destination = AG(0x1887A, 2), + entrance_entered = AG(0x18B48, 1), --[[ FIXME link_actor = merge(Actor(AA(0,0).addr), { diff --git a/Lua/addrs/init.lua b/Lua/addrs/init.lua index 15adbd0..e318dd1 100755 --- a/Lua/addrs/init.lua +++ b/Lua/addrs/init.lua @@ -192,7 +192,14 @@ local rv = same[version] or version local b = basics[rv] function AL(a, s) return A(b.link + a, s) end -function AG(a, s) return A(b.global + a, s) end +function AG(a, s) + if rv == 'M JP10' or rv == 'M JP11' then + if a >= 0x17000 then -- approximate + a = a - 0x20 + end + end + return A(b.global + a, s) +end function AA(a, s) return A(b.actor + a, s) end addrs = require(here..rv) diff --git a/Lua/oneshot.lua b/Lua/oneshot.lua index df73f57..0580d11 100755 --- a/Lua/oneshot.lua +++ b/Lua/oneshot.lua @@ -35,6 +35,7 @@ a.hearts (16*20) a.max_hearts (16*20) a.doubled_hearts(20) a.magic (0x60) +set(a.magic_max, 0x60) a.rupees (500) -- nuts, sticks, bombs, wallet, Scale, gauntlets, Bullets, quiver