summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcus Huderle <huderlem@gmail.com>2017-11-11 13:20:03 -0800
committerMarcus Huderle <huderlem@gmail.com>2017-11-11 13:20:03 -0800
commit92fda2cc0d5afa76e94927cb72ceac9700f54c1b (patch)
tree24a7840f1c49602a6ad033ea6cc1cb27b7e12be4
parent955c5a8e90c9afba35114c583628f74f849a0da4 (diff)
parent999c4d59793e761ca71ab7b27272de46d78de138 (diff)
Merge remote-tracking branch 'upstream/master' into pokenav
-rw-r--r--Makefile2
-rw-r--r--asm-de/contest_link_80C2020.s184
-rw-r--r--asm-de/contest_link_80C857C.s40
-rw-r--r--asm-de/easy_chat.s266
-rw-r--r--asm/battle_1.s16
-rw-r--r--asm/battle_2.s148
-rw-r--r--asm/battle_9.s70
-rw-r--r--asm/battle_anim_80CA710.s230
-rw-r--r--asm/battle_anim_81258BC.s12
-rw-r--r--asm/battle_anim_812C144.s82
-rw-r--r--asm/battle_anim_813F0F4.s78
-rw-r--r--asm/cable_car.s42
-rw-r--r--asm/contest.s702
-rw-r--r--asm/contest_ai.s582
-rw-r--r--asm/contest_effect.s266
-rw-r--r--asm/contest_link_80C2020.s184
-rw-r--r--asm/contest_link_80C857C.s36
-rw-r--r--asm/easy_chat.s266
-rw-r--r--asm/field_weather.s5252
-rw-r--r--asm/libagbsyscall.s2
-rw-r--r--asm/pokedex_area_screen.s124
-rw-r--r--asm/pokedex_cry_screen.s78
-rw-r--r--asm/pokemon_item_effect.s4
-rw-r--r--asm/pokemon_storage_system.s384
-rw-r--r--asm/pokemon_summary_screen.s448
-rw-r--r--asm/roulette.s524
-rw-r--r--asm/slot_machine.s660
-rwxr-xr-x[-rw-r--r--]asmdiff.sh0
-rw-r--r--data-de/text/credits.inc975
-rw-r--r--data/battle_scripts_1.s814
-rw-r--r--data/battle_scripts_2.s10
-rw-r--r--data/contest.s8
-rw-r--r--data/credits.s159
-rw-r--r--data/data2a.s32
-rw-r--r--data/data2b.s8
-rw-r--r--data/easy_chat.s18
-rw-r--r--data/field_weather.s34
-rw-r--r--data/mail.s2
-rw-r--r--data/pokedex_area_screen.s4
-rw-r--r--data/pokedex_cry_screen.s2
-rw-r--r--data/pokemon_storage_system.s6
-rw-r--r--data/pokenav.s2
-rw-r--r--data/roulette.s26
-rw-r--r--data/scripts/maps/BattleTower_BattleRoom.inc2
-rw-r--r--data/scripts/maps/MossdeepCity_GameCorner_B1F.inc2
-rw-r--r--data/slot_machine.s70
-rw-r--r--data/text/credits.inc1011
-rw-r--r--include/battle.h102
-rw-r--r--include/battle_ai.h5
-rw-r--r--include/battle_anim.h13
-rw-r--r--include/battle_party_menu.h3
-rw-r--r--include/decoration.h3
-rw-r--r--include/dewford_trend.h3
-rwxr-xr-xinclude/ewram.h258
-rw-r--r--include/field_map_obj.h2
-rw-r--r--include/field_weather.h7
-rw-r--r--include/gba/defines.h9
-rw-r--r--include/gba/flash_internal.h10
-rw-r--r--include/global.h18
-rw-r--r--include/party_menu.h6
-rw-r--r--include/player_pc.h1
-rw-r--r--include/pokemon.h6
-rw-r--r--include/rom3.h8
-rw-r--r--include/save.h2
-rw-r--r--include/script_pokemon_80F9.h2
-rw-r--r--include/songs.h20
-rw-r--r--include/sprite.h2
-rw-r--r--include/string_util.h2
-rw-r--r--ld_script.txt4
-rw-r--r--shared_syms.txt43
-rw-r--r--src/battle/battle_2.c223
-rw-r--r--src/battle/battle_3.c30
-rw-r--r--src/battle/battle_4.c903
-rw-r--r--src/battle/battle_7.c67
-rw-r--r--src/battle/battle_ai.c213
-rw-r--r--src/battle/battle_anim.c220
-rw-r--r--src/battle/battle_anim_807B69C.c3
-rw-r--r--src/battle/battle_anim_80A7E7C.c4
-rw-r--r--src/battle/battle_controller_linkopponent.c66
-rw-r--r--src/battle/battle_controller_linkpartner.c65
-rw-r--r--src/battle/battle_controller_opponent.c82
-rw-r--r--src/battle/battle_controller_player.c93
-rw-r--r--src/battle/battle_controller_safari.c3
-rw-r--r--src/battle/battle_controller_wally.c115
-rw-r--r--src/battle/battle_interface.c93
-rw-r--r--src/battle/battle_message.c3
-rw-r--r--src/battle/battle_party_menu.c6
-rw-r--r--src/battle/battle_records.c2
-rw-r--r--src/battle/battle_setup.c23
-rw-r--r--src/battle/battle_transition.c7
-rw-r--r--src/battle/calculate_base_damage.c4
-rw-r--r--src/battle/pokeball.c1
-rw-r--r--src/battle/reshow_battle_screen.c4
-rwxr-xr-xsrc/data/credits_de.h624
-rwxr-xr-xsrc/data/credits_en.h654
-rw-r--r--src/de_rom_8040FE0.c9
-rw-r--r--src/debug/matsuda_debug_menu.c48
-rw-r--r--src/engine/decompress.c3
-rw-r--r--src/engine/link.c9
-rw-r--r--src/engine/main.c1
-rw-r--r--src/engine/main_menu.c7
-rw-r--r--src/engine/mystery_event_menu.c7
-rw-r--r--src/engine/naming_screen.c5
-rw-r--r--src/engine/record_mixing.c41
-rw-r--r--src/engine/save.c28
-rw-r--r--src/engine/save_failed_screen.c7
-rw-r--r--src/engine/sprite.c11
-rw-r--r--src/engine/string_util.c34
-rw-r--r--src/engine/text.c230
-rw-r--r--src/engine/tileset_anim.c46
-rw-r--r--src/engine/trade.c104
-rw-r--r--src/engine/trainer_card.c244
-rw-r--r--src/field/battle_tower.c12
-rw-r--r--src/field/berry_tag_screen.c22
-rw-r--r--src/field/choose_party.c3
-rw-r--r--src/field/daycare.c10
-rw-r--r--src/field/decoration.c5
-rw-r--r--src/field/decoration_inventory.c2
-rw-r--r--src/field/dewford_trend.c3
-rw-r--r--src/field/easy_chat.c2
-rw-r--r--src/field/field_effect.c4
-rw-r--r--src/field/field_ground_effect.c38
-rw-r--r--src/field/field_map_obj.c18
-rw-r--r--src/field/field_map_obj_helpers.c2
-rw-r--r--src/field/field_poison.c2
-rw-r--r--src/field/field_region_map.c26
-rw-r--r--src/field/field_specials.c10
-rw-r--r--src/field/field_tasks.c4
-rw-r--r--src/field/field_weather.c1859
-rw-r--r--src/field/fldeff_cut.c11
-rw-r--r--src/field/fldeff_softboiled.c7
-rw-r--r--src/field/item_menu.c8
-rw-r--r--src/field/party_menu.c36
-rw-r--r--src/field/player_pc.c73
-rw-r--r--src/field/pokeblock.c24
-rw-r--r--src/field/region_map.c53
-rw-r--r--src/field/roamer.c14
-rw-r--r--src/field/shop.c9
-rw-r--r--src/field/slot_machine.c19
-rw-r--r--src/field/trainer_see.c2
-rw-r--r--src/field/tv.c4
-rw-r--r--src/field/use_pokeblock.c6
-rw-r--r--src/libs/agb_flash.c12
-rw-r--r--src/libs/agb_flash_mx.c2
-rw-r--r--src/pokemon/learn_move.c6
-rw-r--r--src/pokemon/mail.c112
-rw-r--r--src/pokemon/pokeblock_feed.c47
-rw-r--r--src/pokemon/pokedex.c159
-rw-r--r--src/pokemon/pokedex_cry_screen.c7
-rw-r--r--src/pokemon/pokemon_1.c104
-rw-r--r--src/pokemon/pokemon_2.c29
-rw-r--r--src/pokemon/pokemon_3.c17
-rw-r--r--src/pokemon/pokemon_icon.c7
-rw-r--r--src/pokemon/pokemon_menu.c2
-rw-r--r--src/pokemon/pokemon_storage_system.c8
-rw-r--r--src/pokemon/pokemon_summary_screen.c5
-rw-r--r--src/pokenav_before.c973
-rw-r--r--src/rom3.c66
-rw-r--r--src/rom_800D42C.c1
-rw-r--r--src/rom_8077ABC.c113
-rw-r--r--src/scene/berry_blender.c26
-rw-r--r--src/scene/contest_painting.c22
-rw-r--r--src/scene/credits.c233
-rw-r--r--src/scene/egg_hatch.c10
-rw-r--r--src/scene/evolution_scene.c234
-rw-r--r--src/scene/hall_of_fame.c102
-rw-r--r--src/scene/intro.c17
-rw-r--r--src/script_pokemon_util_80C4BF0.c1
-rw-r--r--src/script_pokemon_util_80F99CC.c3
169 files changed, 9579 insertions, 13765 deletions
diff --git a/Makefile b/Makefile
index f471a1626..a42a06898 100644
--- a/Makefile
+++ b/Makefile
@@ -161,7 +161,7 @@ build/$1/ld_script.ld: ld_script.txt build/$1/sym_bss.ld build/$1/sym_common.ld
cd build/$1 && sed -f ../../ld_script.sed ../../ld_script.txt | sed "s#tools/#../../tools/#g" | sed "s#sound/#../../sound/#g" >ld_script.ld
poke$1.elf: build/$1/ld_script.ld $$($1_OBJS)
- cd build/$1 && $$(LD) -T ld_script.ld -T ../../shared_syms.txt -Map ../../poke$1.map -o ../../$$@ $$($1_OBJS_REL) ../../$$(LIBGCC)
+ cd build/$1 && $$(LD) -T ld_script.ld -Map ../../poke$1.map -o ../../$$@ $$($1_OBJS_REL) ../../$$(LIBGCC)
poke$1.gba: %.gba: %.elf
$$(OBJCOPY) -O binary --gap-fill 0xFF --pad-to 0x9000000 $$< $$@
diff --git a/asm-de/contest_link_80C2020.s b/asm-de/contest_link_80C2020.s
index 65bbf0f22..9f914bbd1 100644
--- a/asm-de/contest_link_80C2020.s
+++ b/asm-de/contest_link_80C2020.s
@@ -408,7 +408,7 @@ sub_80C2358: @ 80C2358
movs r1, 0x1
bl sub_80C30D4
bl sub_80C2340
- ldr r4, _080C2410 @ =0x02018000
+ ldr r4, _080C2410 @ =gSharedMem + 0x18000
adds r0, r4, 0
movs r1, 0
movs r2, 0x18
@@ -458,7 +458,7 @@ sub_80C2358: @ 80C2358
bx r0
.align 2, 0
_080C240C: .4byte gPaletteFade
-_080C2410: .4byte 0x02018000
+_080C2410: .4byte gSharedMem + 0x18000
_080C2414: .4byte sub_80C24F4
_080C2418: .4byte sub_80C2430
_080C241C: .4byte gUnknown_03004200
@@ -665,7 +665,7 @@ sub_80C25C0: @ 80C25C0
adds r0, r4, 0
bl DestroyTask
ldr r2, _080C25F4 @ =gTasks
- ldr r0, _080C25F8 @ =0x02018000
+ ldr r0, _080C25F8 @ =gSharedMem + 0x18000
ldrb r1, [r0, 0x2]
lsls r0, r1, 2
adds r0, r1
@@ -680,7 +680,7 @@ _080C25EC:
bx r0
.align 2, 0
_080C25F4: .4byte gTasks
-_080C25F8: .4byte 0x02018000
+_080C25F8: .4byte gSharedMem + 0x18000
_080C25FC: .4byte sub_80C2600
thumb_func_end sub_80C25C0
@@ -703,7 +703,7 @@ sub_80C2600: @ 80C2600
movs r1, 0x14
bl CreateTask
ldr r4, _080C264C @ =gContestText_AnnounceResults
- ldr r0, _080C2650 @ =0x02018000
+ ldr r0, _080C2650 @ =gSharedMem + 0x18000
ldrb r1, [r0]
adds r0, r4, 0
bl sub_80C3158
@@ -720,17 +720,17 @@ sub_80C2600: @ 80C2600
_080C2644: .4byte gTasks
_080C2648: .4byte sub_80C2F64
_080C264C: .4byte gContestText_AnnounceResults
-_080C2650: .4byte 0x02018000
+_080C2650: .4byte gSharedMem + 0x18000
_080C2654:
cmp r0, 0x1
bne _080C2668
- ldr r0, _080C2664 @ =0x02018000
+ ldr r0, _080C2664 @ =gSharedMem + 0x18000
ldrb r0, [r0, 0x4]
cmp r0, 0
bne _080C26D4
b _080C267C
.align 2, 0
-_080C2664: .4byte 0x02018000
+_080C2664: .4byte gSharedMem + 0x18000
_080C2668:
cmp r0, 0x2
bne _080C2684
@@ -751,7 +751,7 @@ _080C2684:
cmp r0, 0x3
bne _080C26C0
ldr r4, _080C26B4 @ =gContestText_PreliminaryResults
- ldr r0, _080C26B8 @ =0x02018000
+ ldr r0, _080C26B8 @ =gSharedMem + 0x18000
ldrb r1, [r0]
adds r0, r4, 0
bl sub_80C3158
@@ -771,12 +771,12 @@ _080C26A6:
b _080C26D4
.align 2, 0
_080C26B4: .4byte gContestText_PreliminaryResults
-_080C26B8: .4byte 0x02018000
+_080C26B8: .4byte gSharedMem + 0x18000
_080C26BC: .4byte 0x0000ffff
_080C26C0:
cmp r0, 0x4
bne _080C26D4
- ldr r0, _080C26DC @ =0x02018000
+ ldr r0, _080C26DC @ =gSharedMem + 0x18000
ldrb r0, [r0, 0x4]
cmp r0, 0x2
bne _080C26D4
@@ -789,7 +789,7 @@ _080C26D4:
pop {r0}
bx r0
.align 2, 0
-_080C26DC: .4byte 0x02018000
+_080C26DC: .4byte gSharedMem + 0x18000
_080C26E0: .4byte sub_80C26E4
thumb_func_end sub_80C2600
@@ -819,7 +819,7 @@ _080C270C:
beq _080C2754
b _080C2766
_080C2712:
- ldr r5, _080C2738 @ =0x02018000
+ ldr r5, _080C2738 @ =gSharedMem + 0x18000
ldrb r0, [r5, 0xA]
cmp r0, 0
bne _080C2766
@@ -837,21 +837,21 @@ _080C2712:
strh r0, [r4, 0x8]
b _080C2766
.align 2, 0
-_080C2738: .4byte 0x02018000
+_080C2738: .4byte gSharedMem + 0x18000
_080C273C:
ldrh r0, [r4, 0x8]
adds r0, 0x1
strh r0, [r4, 0x8]
b _080C2766
_080C2744:
- ldr r0, _080C2750 @ =0x02018000
+ ldr r0, _080C2750 @ =gSharedMem + 0x18000
ldrb r0, [r0, 0x14]
cmp r0, 0
bne _080C2766
strh r0, [r4, 0x8]
b _080C2766
.align 2, 0
-_080C2750: .4byte 0x02018000
+_080C2750: .4byte gSharedMem + 0x18000
_080C2754:
movs r0, 0x88
lsls r0, 3
@@ -875,7 +875,7 @@ sub_80C2770: @ 80C2770
lsls r0, 24
lsrs r2, r0, 24
adds r4, r2, 0
- ldr r5, _080C27BC @ =0x02018000
+ ldr r5, _080C27BC @ =gSharedMem + 0x18000
ldrb r3, [r5, 0x4]
cmp r3, 0
bne _080C27CC
@@ -907,7 +907,7 @@ sub_80C2770: @ 80C2770
bl sub_80C34CC
b _080C27DE
.align 2, 0
-_080C27BC: .4byte 0x02018000
+_080C27BC: .4byte gSharedMem + 0x18000
_080C27C0: .4byte gTasks
_080C27C4: .4byte gContestText_Round2Results
_080C27C8: .4byte 0x0000ffff
@@ -956,7 +956,7 @@ _080C2814:
beq _080C285C
b _080C286C
_080C281A:
- ldr r5, _080C2840 @ =0x02018000
+ ldr r5, _080C2840 @ =gSharedMem + 0x18000
ldrb r0, [r5, 0xA]
cmp r0, 0
bne _080C286C
@@ -974,21 +974,21 @@ _080C281A:
strh r0, [r4, 0x8]
b _080C286C
.align 2, 0
-_080C2840: .4byte 0x02018000
+_080C2840: .4byte gSharedMem + 0x18000
_080C2844:
ldrh r0, [r4, 0x8]
adds r0, 0x1
strh r0, [r4, 0x8]
b _080C286C
_080C284C:
- ldr r0, _080C2858 @ =0x02018000
+ ldr r0, _080C2858 @ =gSharedMem + 0x18000
ldrb r0, [r0, 0x14]
cmp r0, 0
bne _080C286C
strh r0, [r4, 0x8]
b _080C286C
.align 2, 0
-_080C2858: .4byte 0x02018000
+_080C2858: .4byte gSharedMem + 0x18000
_080C285C:
movs r0, 0x88
lsls r0, 3
@@ -1040,7 +1040,7 @@ _080C28A8:
.4byte _080C299C
.4byte _080C2A70
_080C28C0:
- ldr r0, _080C28DC @ =0x02018000
+ ldr r0, _080C28DC @ =gSharedMem + 0x18000
ldrb r0, [r0, 0x4]
cmp r0, 0
beq _080C28CA
@@ -1055,7 +1055,7 @@ _080C28CA:
strh r1, [r0, 0x8]
b _080C2A80
.align 2, 0
-_080C28DC: .4byte 0x02018000
+_080C28DC: .4byte gSharedMem + 0x18000
_080C28E0:
lsls r0, r5, 2
adds r0, r5
@@ -1101,7 +1101,7 @@ _080C292C: .4byte gTasks
_080C2930: .4byte sub_80C3A5C
_080C2934: .4byte gUnknown_02038690
_080C2938:
- ldr r0, _080C2990 @ =0x02018000
+ ldr r0, _080C2990 @ =gSharedMem + 0x18000
ldrb r0, [r0, 0x5]
cmp r0, 0x4
beq _080C2942
@@ -1148,7 +1148,7 @@ _080C2984:
bl sub_80C3E60
b _080C2A80
.align 2, 0
-_080C2990: .4byte 0x02018000
+_080C2990: .4byte gSharedMem + 0x18000
_080C2994: .4byte sub_80C3B30
_080C2998: .4byte gUnknown_02038690
_080C299C:
@@ -1215,7 +1215,7 @@ _080C2A10:
ldr r1, _080C2A60 @ =gContestText_PokeWon
mov r0, sp
bl StringExpandPlaceholders
- ldr r0, _080C2A64 @ =0x02018000
+ ldr r0, _080C2A64 @ =gSharedMem + 0x18000
ldrb r1, [r0]
mov r0, sp
bl sub_80C3158
@@ -1243,7 +1243,7 @@ _080C2A54: .4byte gUnknown_0203857D
_080C2A58: .4byte gStringVar2
_080C2A5C: .4byte gContestMons + 0x2
_080C2A60: .4byte gContestText_PokeWon
-_080C2A64: .4byte 0x02018000
+_080C2A64: .4byte gSharedMem + 0x18000
_080C2A68: .4byte 0x0000ffff
_080C2A6C: .4byte gTasks
_080C2A70:
@@ -1356,7 +1356,7 @@ _080C2B14:
str r3, [sp]
str r6, [sp, 0x4]
str r4, [sp, 0x8]
- ldr r3, _080C2BE4 @ =0x02000000
+ ldr r3, _080C2BE4 @ =gSharedMem
bl HandleLoadSpecialPokePic
adds r0, r6, 0
ldr r1, [sp, 0xC]
@@ -1392,7 +1392,7 @@ _080C2B14:
adds r2, r5
ldr r1, _080C2BF0 @ =sub_80C3C44
str r1, [r2]
- ldr r2, _080C2BE4 @ =0x02000000
+ ldr r2, _080C2BE4 @ =gSharedMem
movs r3, 0xC0
lsls r3, 9
adds r1, r2, r3
@@ -1422,7 +1422,7 @@ _080C2BD4: .4byte gContestMons
_080C2BD8: .4byte gMonFrontPicTable
_080C2BDC: .4byte gMonFrontPicCoords
_080C2BE0: .4byte gUnknown_081FAF4C
-_080C2BE4: .4byte 0x02000000
+_080C2BE4: .4byte gSharedMem
_080C2BE8: .4byte gUnknown_02024E8C
_080C2BEC: .4byte gSprites
_080C2BF0: .4byte sub_80C3C44
@@ -1472,13 +1472,13 @@ _080C2C30:
.align 2, 0
_080C2C50: .4byte gUnknown_03004240
_080C2C54:
- ldr r0, _080C2C60 @ =0x02018000
+ ldr r0, _080C2C60 @ =gSharedMem + 0x18000
ldrb r0, [r0, 0x6]
cmp r0, 0x1
bne _080C2D04
b _080C2CD0
.align 2, 0
-_080C2C60: .4byte 0x02018000
+_080C2C60: .4byte gSharedMem + 0x18000
_080C2C64:
lsls r0, r7, 2
adds r0, r7
@@ -1494,7 +1494,7 @@ _080C2C64:
movs r0, 0
strh r0, [r3, 0xA]
ldr r2, _080C2C9C @ =gSprites
- ldr r0, _080C2CA0 @ =0x02018000
+ ldr r0, _080C2CA0 @ =gSharedMem + 0x18000
ldrb r1, [r0, 0x8]
lsls r0, r1, 4
adds r0, r1
@@ -1509,10 +1509,10 @@ _080C2C64:
b _080C2D04
.align 2, 0
_080C2C9C: .4byte gSprites
-_080C2CA0: .4byte 0x02018000
+_080C2CA0: .4byte gSharedMem + 0x18000
_080C2CA4: .4byte sub_80C3CB8
_080C2CA8:
- ldr r0, _080C2CE0 @ =0x02018000
+ ldr r0, _080C2CE0 @ =gSharedMem + 0x18000
ldrb r0, [r0, 0x6]
cmp r0, 0x2
bne _080C2D04
@@ -1543,10 +1543,10 @@ _080C2CD0:
strh r1, [r0, 0x8]
b _080C2D04
.align 2, 0
-_080C2CE0: .4byte 0x02018000
+_080C2CE0: .4byte gSharedMem + 0x18000
_080C2CE4: .4byte gUnknown_03004240
_080C2CE8:
- ldr r2, _080C2D14 @ =0x02018000
+ ldr r2, _080C2D14 @ =gSharedMem + 0x18000
ldrb r0, [r2, 0x6]
cmp r0, 0x2
bne _080C2D04
@@ -1570,7 +1570,7 @@ _080C2D04:
pop {r0}
bx r0
.align 2, 0
-_080C2D14: .4byte 0x02018000
+_080C2D14: .4byte gSharedMem + 0x18000
_080C2D18: .4byte sub_80C2D1C
thumb_func_end sub_80C2A8C
@@ -1719,7 +1719,7 @@ sub_80C2E14: @ 80C2E14
bl sub_80B2A7C
movs r0, 0xFE
bl sub_80B2A7C
- ldr r4, _080C2E8C @ =0x02000000
+ ldr r4, _080C2E8C @ =gSharedMem
ldr r0, _080C2E90 @ =0x00015ddf
adds r1, r4, r0
movs r6, 0
@@ -1752,7 +1752,7 @@ sub_80C2E14: @ 80C2E14
_080C2E80: .4byte gUnknown_02038690
_080C2E84: .4byte gContestPlayerMonIndex
_080C2E88: .4byte gScriptContestRank
-_080C2E8C: .4byte 0x02000000
+_080C2E8C: .4byte gSharedMem
_080C2E90: .4byte 0x00015ddf
_080C2E94: .4byte 0x00015dde
_080C2E98: .4byte gTasks
@@ -1782,7 +1782,7 @@ sub_80C2EA0: @ 80C2EA0
ldrsh r0, [r4, r1]
cmp r0, 0
bne _080C2EE8
- ldr r0, _080C2EE0 @ =0x02018000
+ ldr r0, _080C2EE0 @ =gSharedMem + 0x18000
ldrb r0, [r0, 0x3]
bl DestroyTask
ldr r0, _080C2EE4 @ =0x0000ffff
@@ -1790,7 +1790,7 @@ sub_80C2EA0: @ 80C2EA0
.align 2, 0
_080C2ED8: .4byte gPaletteFade
_080C2EDC: .4byte gTasks
-_080C2EE0: .4byte 0x02018000
+_080C2EE0: .4byte gSharedMem + 0x18000
_080C2EE4: .4byte 0x0000ffff
_080C2EE8:
cmp r0, 0x1
@@ -1938,7 +1938,7 @@ _080C2FE6:
ldrsh r4, [r0, r3]
cmp r4, 0
bne _080C3014
- ldr r0, _080C3010 @ =0x02018000
+ ldr r0, _080C3010 @ =gSharedMem + 0x18000
strb r4, [r0, 0xA]
b _080C301A
.align 2, 0
@@ -1946,9 +1946,9 @@ _080C3000: .4byte gTasks
_080C3004: .4byte 0x00002ede
_080C3008: .4byte 0x00007fff
_080C300C: .4byte 0x000077be
-_080C3010: .4byte 0x02018000
+_080C3010: .4byte gSharedMem + 0x18000
_080C3014:
- ldr r1, _080C3020 @ =0x02018000
+ ldr r1, _080C3020 @ =gSharedMem + 0x18000
movs r0, 0x1
strb r0, [r1, 0xA]
_080C301A:
@@ -1956,7 +1956,7 @@ _080C301A:
pop {r0}
bx r0
.align 2, 0
-_080C3020: .4byte 0x02018000
+_080C3020: .4byte gSharedMem + 0x18000
thumb_func_end sub_80C2F64
thumb_func_start sub_80C3024
@@ -2235,7 +2235,7 @@ _080C3218:
strb r5, [r2, 0x2]
movs r0, 0xFF
strb r0, [r2, 0x3]
- ldr r0, _080C32DC @ =0x02018068
+ ldr r0, _080C32DC @ =gSharedMem + 0x18068
mov r10, r0
ldr r1, _080C32D4 @ =gDisplayedStringBattle
bl sub_80034D4
@@ -2303,7 +2303,7 @@ _080C32CC: .4byte 0x040000d4
_080C32D0: .4byte 0x85000100
_080C32D4: .4byte gDisplayedStringBattle
_080C32D8: .4byte gUnknown_083D17E2
-_080C32DC: .4byte 0x02018068
+_080C32DC: .4byte gSharedMem + 0x18068
_080C32E0: .4byte gUnknown_083D1624
_080C32E4: .4byte REG_BG0CNT
_080C32E8: .4byte 0x06010100
@@ -2501,7 +2501,7 @@ _080C340A:
adds r0, r2
ldrb r1, [r5, 0x7]
strh r1, [r0, 0x32]
- ldr r1, _080C34A8 @ =0x02018000
+ ldr r1, _080C34A8 @ =gSharedMem + 0x18000
ldrb r0, [r5]
strb r0, [r1]
strb r3, [r1, 0x4]
@@ -2517,7 +2517,7 @@ _080C3498: .4byte gSpriteTemplate_83D174C
_080C349C: .4byte gUnknown_083D1764
_080C34A0: .4byte gUnknown_083D17A4
_080C34A4: .4byte gSprites
-_080C34A8: .4byte 0x02018000
+_080C34A8: .4byte gSharedMem + 0x18000
thumb_func_end sub_80C33DC
thumb_func_start sub_80C34AC
@@ -2543,7 +2543,7 @@ sub_80C34CC: @ 80C34CC
push {r4-r6,lr}
mov r6, r8
push {r6}
- ldr r4, _080C3514 @ =0x02018000
+ ldr r4, _080C3514 @ =gSharedMem + 0x18000
mov r8, r4
ldrb r5, [r4]
lsls r4, r5, 4
@@ -2576,7 +2576,7 @@ sub_80C34CC: @ 80C34CC
pop {r0}
bx r0
.align 2, 0
-_080C3514: .4byte 0x02018000
+_080C3514: .4byte gSharedMem + 0x18000
_080C3518: .4byte gSprites
_080C351C: .4byte sub_80C3588
thumb_func_end sub_80C34CC
@@ -2584,7 +2584,7 @@ _080C351C: .4byte sub_80C3588
thumb_func_start sub_80C3520
sub_80C3520: @ 80C3520
push {r4,r5,lr}
- ldr r4, _080C3558 @ =0x02018000
+ ldr r4, _080C3558 @ =gSharedMem + 0x18000
ldrb r2, [r4]
lsls r1, r2, 4
adds r1, r2
@@ -2612,7 +2612,7 @@ sub_80C3520: @ 80C3520
pop {r0}
bx r0
.align 2, 0
-_080C3558: .4byte 0x02018000
+_080C3558: .4byte gSharedMem + 0x18000
_080C355C: .4byte gSprites
_080C3560: .4byte sub_80C3630
thumb_func_end sub_80C3520
@@ -2630,12 +2630,12 @@ sub_80C3564: @ 80C3564
strh r2, [r0, 0x24]
ldr r1, _080C3580 @ =SpriteCallbackDummy
str r1, [r0, 0x1C]
- ldr r0, _080C3584 @ =0x02018000
+ ldr r0, _080C3584 @ =gSharedMem + 0x18000
strb r3, [r0, 0x4]
bx lr
.align 2, 0
_080C3580: .4byte SpriteCallbackDummy
-_080C3584: .4byte 0x02018000
+_080C3584: .4byte gSharedMem + 0x18000
thumb_func_end sub_80C3564
thumb_func_start sub_80C3588
@@ -2705,7 +2705,7 @@ _080C35F8: .4byte sub_80C35FC
sub_80C35FC: @ 80C35FC
push {lr}
adds r2, r0, 0
- ldr r0, _080C3628 @ =0x02018000
+ ldr r0, _080C3628 @ =gSharedMem + 0x18000
movs r1, 0x2
strb r1, [r0, 0x4]
ldrh r3, [r2, 0x38]
@@ -2726,7 +2726,7 @@ _080C3624:
pop {r0}
bx r0
.align 2, 0
-_080C3628: .4byte 0x02018000
+_080C3628: .4byte gSharedMem + 0x18000
_080C362C: .4byte 0xffff0000
thumb_func_end sub_80C35FC
@@ -2790,7 +2790,7 @@ _080C3694: .4byte gSprites
sub_80C3698: @ 80C3698
push {r4-r7,lr}
adds r4, r0, 0
- ldr r5, _080C374C @ =0x02018000
+ ldr r5, _080C374C @ =gSharedMem + 0x18000
ldrb r1, [r5, 0x1]
bl sub_80C3158
adds r0, r4, 0
@@ -2877,7 +2877,7 @@ _080C36DA:
pop {r0}
bx r0
.align 2, 0
-_080C374C: .4byte 0x02018000
+_080C374C: .4byte gSharedMem + 0x18000
_080C3750: .4byte gSprites
_080C3754: .4byte gUnknown_030042C4
_080C3758: .4byte gUnknown_03004240
@@ -2888,7 +2888,7 @@ _080C3760: .4byte 0x00003f3e
thumb_func_start sub_80C3764
sub_80C3764: @ 80C3764
push {r4-r7,lr}
- ldr r0, _080C37C8 @ =0x02018000
+ ldr r0, _080C37C8 @ =gSharedMem + 0x18000
ldrb r0, [r0, 0x1]
lsls r2, r0, 4
adds r2, r0
@@ -2939,7 +2939,7 @@ _080C3790:
pop {r0}
bx r0
.align 2, 0
-_080C37C8: .4byte 0x02018000
+_080C37C8: .4byte gSharedMem + 0x18000
_080C37CC: .4byte gSprites
_080C37D0: .4byte gUnknown_030042C4
_080C37D4: .4byte gUnknown_03004240
@@ -3413,7 +3413,7 @@ _080C3A94:
adds r0, r1
adds r2, 0x11
strh r2, [r0]
- ldr r1, _080C3B2C @ =0x02018000
+ ldr r1, _080C3B2C @ =gSharedMem + 0x18000
ldrb r0, [r1, 0x5]
adds r0, 0x1
strb r0, [r1, 0x5]
@@ -3431,7 +3431,7 @@ _080C3B1C: .4byte 0x0600e142
_080C3B20: .4byte 0x0600e144
_080C3B24: .4byte 0x0600e182
_080C3B28: .4byte 0x0600e184
-_080C3B2C: .4byte 0x02018000
+_080C3B2C: .4byte gSharedMem + 0x18000
thumb_func_end sub_80C3A5C
thumb_func_start sub_80C3B30
@@ -3503,7 +3503,7 @@ _080C3B82:
ldr r2, _080C3BD0 @ =sub_80C3BD8
str r2, [r0]
mov r1, r12
- ldr r0, _080C3BD4 @ =0x02018000
+ ldr r0, _080C3BD4 @ =gSharedMem + 0x18000
strb r1, [r0, 0x3]
pop {r3-r5}
mov r8, r3
@@ -3518,7 +3518,7 @@ _080C3BC4: .4byte gTasks
_080C3BC8: .4byte 0x00000fff
_080C3BCC: .4byte 0x0600e100
_080C3BD0: .4byte sub_80C3BD8
-_080C3BD4: .4byte 0x02018000
+_080C3BD4: .4byte gSharedMem + 0x18000
thumb_func_end sub_80C3B30
thumb_func_start sub_80C3BD8
@@ -3628,7 +3628,7 @@ _080C3C92:
str r0, [r4, 0x1C]
movs r0, 0
strh r0, [r4, 0x30]
- ldr r1, _080C3CB4 @ =0x02018000
+ ldr r1, _080C3CB4 @ =gSharedMem + 0x18000
movs r0, 0x1
strb r0, [r1, 0x6]
_080C3CA8:
@@ -3637,7 +3637,7 @@ _080C3CA8:
bx r0
.align 2, 0
_080C3CB0: .4byte SpriteCallbackDummy
-_080C3CB4: .4byte 0x02018000
+_080C3CB4: .4byte gSharedMem + 0x18000
thumb_func_end sub_80C3C44
thumb_func_start sub_80C3CB8
@@ -3671,7 +3671,7 @@ sub_80C3CB8: @ 80C3CB8
movs r1, 0x4
orrs r0, r1
strb r0, [r2]
- ldr r1, _080C3D00 @ =0x02018000
+ ldr r1, _080C3D00 @ =gSharedMem + 0x18000
movs r0, 0x2
strb r0, [r1, 0x6]
_080C3CF8:
@@ -3679,7 +3679,7 @@ _080C3CF8:
bx r0
.align 2, 0
_080C3CFC: .4byte SpriteCallbackDummy
-_080C3D00: .4byte 0x02018000
+_080C3D00: .4byte gSharedMem + 0x18000
thumb_func_end sub_80C3CB8
thumb_func_start sub_80C3D04
@@ -3703,7 +3703,7 @@ sub_80C3D04: @ 80C3D04
bne _080C3DBE
movs r0, 0
strh r0, [r1, 0x8]
- ldr r0, _080C3DDC @ =0x02018000
+ ldr r0, _080C3DDC @ =gSharedMem + 0x18000
mov r8, r0
ldrb r0, [r0, 0x7]
cmp r0, 0x27
@@ -3769,7 +3769,7 @@ sub_80C3D04: @ 80C3D04
adds r0, 0x1
strb r0, [r1, 0x7]
_080C3DBE:
- ldr r0, _080C3DDC @ =0x02018000
+ ldr r0, _080C3DDC @ =gSharedMem + 0x18000
ldrb r0, [r0, 0x9]
cmp r0, 0
beq _080C3DCC
@@ -3783,7 +3783,7 @@ _080C3DCC:
bx r0
.align 2, 0
_080C3DD8: .4byte gTasks
-_080C3DDC: .4byte 0x02018000
+_080C3DDC: .4byte gSharedMem + 0x18000
_080C3DE0: .4byte gSpriteTemplate_83D17B4
_080C3DE4: .4byte gSprites
_080C3DE8: .4byte 0x000003ff
@@ -3818,7 +3818,7 @@ sub_80C3DF0: @ 80C3DF0
ldrh r0, [r4, 0x22]
adds r0, 0x1
strh r0, [r4, 0x22]
- ldr r5, _080C3E5C @ =0x02018000
+ ldr r5, _080C3E5C @ =gSharedMem + 0x18000
ldrb r0, [r5, 0x9]
cmp r0, 0
beq _080C3E3A
@@ -3848,7 +3848,7 @@ _080C3E56:
pop {r0}
bx r0
.align 2, 0
-_080C3E5C: .4byte 0x02018000
+_080C3E5C: .4byte gSharedMem + 0x18000
thumb_func_end sub_80C3DF0
thumb_func_start sub_80C3E60
@@ -4020,7 +4020,7 @@ _080C3F8A:
ble _080C3F9C
adds r4, 0xA
_080C3F9C:
- ldr r0, _080C40A0 @ =0x02018018
+ ldr r0, _080C40A0 @ =gSharedMem + 0x18018
mov r1, r10
adds r5, r1, r0
adds r0, r4, 0
@@ -4149,7 +4149,7 @@ _080C4080:
.align 2, 0
_080C4098: .4byte gUnknown_02038678
_080C409C: .4byte gUnknown_02038670
-_080C40A0: .4byte 0x02018018
+_080C40A0: .4byte gSharedMem + 0x18018
_080C40A4: .4byte gUnknown_02038688
_080C40A8: .4byte gUnknown_02038690
_080C40AC:
@@ -4194,7 +4194,7 @@ sub_80C40D4: @ 80C40D4
cmp r0, 0
bne _080C4198
mov r8, r2
- ldr r0, _080C417C @ =0x02018018
+ ldr r0, _080C417C @ =gSharedMem + 0x18018
subs r1, 0x18
adds r1, r0
mov r9, r1
@@ -4263,7 +4263,7 @@ _080C416A:
ble _080C4102
b _080C4292
.align 2, 0
-_080C417C: .4byte 0x02018018
+_080C417C: .4byte gSharedMem + 0x18018
_080C4180: .4byte 0x0600bffe
_080C4184: .4byte 0x000060b3
_080C4188: .4byte sub_80C42C0
@@ -4273,7 +4273,7 @@ _080C4194: .4byte gTasks
_080C4198:
movs r2, 0
mov r8, r2
- ldr r0, _080C4220 @ =0x02018018
+ ldr r0, _080C4220 @ =gSharedMem + 0x18018
mov r12, r0
mov r9, r2
movs r1, 0xC0
@@ -4341,7 +4341,7 @@ _080C41FA:
str r0, [sp]
b _080C4246
.align 2, 0
-_080C4220: .4byte 0x02018018
+_080C4220: .4byte gSharedMem + 0x18018
_080C4224: .4byte 0x000060a3
_080C4228: .4byte 0x0600bffe
_080C422C: .4byte sub_80C42C0
@@ -4355,7 +4355,7 @@ _080C423C:
lsrs r0, 24
mov r10, r0
_080C4246:
- ldr r0, _080C4264 @ =0x02018018
+ ldr r0, _080C4264 @ =gSharedMem + 0x18018
mov r1, r9
adds r4, r1, r0
ldrb r1, [r4, 0x10]
@@ -4370,7 +4370,7 @@ _080C4246:
subs r1, r2
b _080C4274
.align 2, 0
-_080C4264: .4byte 0x02018018
+_080C4264: .4byte gSharedMem + 0x18018
_080C4268:
adds r0, r2, r5
lsls r0, 3
@@ -4380,7 +4380,7 @@ _080C4268:
adds r1, r2
_080C4274:
strh r1, [r0, 0xA]
- ldr r1, _080C42BC @ =0x02018000
+ ldr r1, _080C42BC @ =gSharedMem + 0x18000
ldrb r0, [r1, 0x14]
adds r0, 0x1
strb r0, [r1, 0x14]
@@ -4417,7 +4417,7 @@ _080C42AA:
pop {r0}
bx r0
.align 2, 0
-_080C42BC: .4byte 0x02018000
+_080C42BC: .4byte gSharedMem + 0x18000
thumb_func_end sub_80C40D4
thumb_func_start sub_80C42C0
@@ -4445,7 +4445,7 @@ sub_80C42C0: @ 80C42C0
ldrsh r0, [r0, r2]
cmp r0, 0
beq _080C4310
- ldr r1, _080C430C @ =0x02018000
+ ldr r1, _080C430C @ =gSharedMem + 0x18000
lsls r2, r5, 1
adds r0, r1, 0
adds r0, 0xC
@@ -4459,9 +4459,9 @@ sub_80C42C0: @ 80C42C0
b _080C4326
.align 2, 0
_080C4308: .4byte gTasks
-_080C430C: .4byte 0x02018000
+_080C430C: .4byte gSharedMem + 0x18000
_080C4310:
- ldr r1, _080C4350 @ =0x02018000
+ ldr r1, _080C4350 @ =gSharedMem + 0x18000
lsls r2, r5, 1
adds r0, r1, 0
adds r0, 0xC
@@ -4496,7 +4496,7 @@ _080C4340:
strh r7, [r3]
b _080C4362
.align 2, 0
-_080C4350: .4byte 0x02018000
+_080C4350: .4byte gSharedMem + 0x18000
_080C4354:
mov r1, r8
cmp r1, 0
@@ -4514,7 +4514,7 @@ _080C4362:
cmp r2, 0
bne _080C43CE
movs r2, 0
- ldr r0, _080C4388 @ =0x0201800c
+ ldr r0, _080C4388 @ =gSharedMem + 0x1800C
adds r6, r4, r0
adds r0, r4, r5
lsls r5, r0, 5
@@ -4529,7 +4529,7 @@ _080C4376:
movs r0, 0x8
b _080C43A8
.align 2, 0
-_080C4388: .4byte 0x0201800c
+_080C4388: .4byte gSharedMem + 0x1800C
_080C438C:
lsls r0, r2, 3
cmp r3, r0
diff --git a/asm-de/contest_link_80C857C.s b/asm-de/contest_link_80C857C.s
index f898f177f..19feb8b40 100644
--- a/asm-de/contest_link_80C857C.s
+++ b/asm-de/contest_link_80C857C.s
@@ -12,7 +12,7 @@ sub_80C857C: @ 80C857C
adds r2, r0, 0
lsls r4, r1, 16
lsrs r4, 16
- ldr r5, _080C85A8 @ =0x0201e000
+ ldr r5, _080C85A8 @ =gSharedMem + 0x1E000
adds r0, r5, 0
adds r1, r2, 0
adds r2, r4, 0
@@ -27,7 +27,7 @@ sub_80C857C: @ 80C857C
pop {r0}
bx r0
.align 2, 0
-_080C85A8: .4byte 0x0201e000
+_080C85A8: .4byte gSharedMem + 0x1E000
thumb_func_end sub_80C857C
thumb_func_start sub_80C85AC
@@ -352,7 +352,7 @@ _080C881C:
mov r0, r10
movs r2, 0x40
bl memcpy
- ldr r1, _080C8858 @ =0x02038572
+ ldr r1, _080C8858 @ =gContestMons + 0x2
adds r4, r6, r1
ldrh r0, [r7, 0x1A]
cmp r0, 0x1
@@ -369,7 +369,7 @@ _080C881C:
_080C884C: .4byte gContestMons
_080C8850: .4byte gLinkPlayers
_080C8854: .4byte gBlockRecvBuffer
-_080C8858: .4byte 0x02038572
+_080C8858: .4byte gContestMons + 0x2
_080C885C:
ldrb r0, [r4, 0xA]
cmp r0, 0xFC
@@ -729,7 +729,7 @@ _080C8A64:
lsls r0, r1, 3
subs r0, r1
lsls r0, 2
- ldr r1, _080C8A90 @ =0x02019266
+ ldr r1, _080C8A90 @ =gSharedMem + 0x19266
adds r0, r1
movs r1, 0x2
bl sub_80C857C
@@ -739,14 +739,14 @@ _080C8A64:
b _080C8AC2
.align 2, 0
_080C8A8C: .4byte gContestPlayerMonIndex
-_080C8A90: .4byte 0x02019266
+_080C8A90: .4byte gSharedMem + 0x19266
_080C8A94:
bl sub_80C85D8
lsls r0, 24
cmp r0, 0
beq _080C8AC2
ldr r1, _080C8AC8 @ =gBlockRecvBuffer
- ldr r3, _080C8ACC @ =0x02019266
+ ldr r3, _080C8ACC @ =gSharedMem + 0x19266
movs r4, 0x80
lsls r4, 1
movs r2, 0x3
@@ -770,7 +770,7 @@ _080C8AC2:
bx r0
.align 2, 0
_080C8AC8: .4byte gBlockRecvBuffer
-_080C8ACC: .4byte 0x02019266
+_080C8ACC: .4byte gSharedMem + 0x19266
thumb_func_end sub_80C8A38
thumb_func_start sub_80C8AD0
@@ -1017,12 +1017,12 @@ _080C8CE0:
bne _080C8CEC
b _080C8E16
_080C8CEC:
- ldr r0, _080C8CF8 @ =0x02019260
+ ldr r0, _080C8CF8 @ =gSharedMem + 0x19260
movs r1, 0x70
bl sub_80C857C
b _080C8DE8
.align 2, 0
-_080C8CF8: .4byte 0x02019260
+_080C8CF8: .4byte gSharedMem + 0x19260
_080C8CFC:
bl sub_80C85D8
lsls r0, 24
@@ -1030,7 +1030,7 @@ _080C8CFC:
bne _080C8D08
b _080C8E16
_080C8D08:
- ldr r0, _080C8D18 @ =0x02019260
+ ldr r0, _080C8D18 @ =gSharedMem + 0x19260
ldr r1, _080C8D1C @ =gUnknown_0203869B
ldrb r1, [r1]
lsls r1, 8
@@ -1039,7 +1039,7 @@ _080C8D08:
movs r2, 0x70
b _080C8DE4
.align 2, 0
-_080C8D18: .4byte 0x02019260
+_080C8D18: .4byte gSharedMem + 0x19260
_080C8D1C: .4byte gUnknown_0203869B
_080C8D20: .4byte gBlockRecvBuffer
_080C8D24:
@@ -1065,18 +1065,18 @@ _080C8D46:
lsls r0, 24
cmp r0, 0
beq _080C8E16
- ldr r0, _080C8D5C @ =0x020192d0
+ ldr r0, _080C8D5C @ =gSharedMem + 0x192D0
movs r1, 0x14
bl sub_80C857C
b _080C8DE8
.align 2, 0
-_080C8D5C: .4byte 0x020192d0
+_080C8D5C: .4byte gSharedMem + 0x192D0
_080C8D60:
bl sub_80C85D8
lsls r0, 24
cmp r0, 0
beq _080C8E16
- ldr r0, _080C8D7C @ =0x020192d0
+ ldr r0, _080C8D7C @ =gSharedMem + 0x192D0
ldr r1, _080C8D80 @ =gUnknown_0203869B
ldrb r1, [r1]
lsls r1, 8
@@ -1085,7 +1085,7 @@ _080C8D60:
movs r2, 0x14
b _080C8DE4
.align 2, 0
-_080C8D7C: .4byte 0x020192d0
+_080C8D7C: .4byte gSharedMem + 0x192D0
_080C8D80: .4byte gUnknown_0203869B
_080C8D84: .4byte gBlockRecvBuffer
_080C8D88:
@@ -1093,21 +1093,21 @@ _080C8D88:
lsls r0, 24
cmp r0, 0
beq _080C8E16
- ldr r0, _080C8D9C @ =0x02019328
+ ldr r0, _080C8D9C @ =gSharedMem + 0x19328
movs r1, 0x4
bl sub_80C857C
b _080C8DE8
.align 2, 0
-_080C8D9C: .4byte 0x02019328
+_080C8D9C: .4byte gSharedMem + 0x19328
_080C8DA0:
bl sub_80C85D8
lsls r0, 24
cmp r0, 0
beq _080C8E16
- ldr r0, _080C8DB0 @ =0x02019328
+ ldr r0, _080C8DB0 @ =gSharedMem + 0x19328
b _080C8DD8
.align 2, 0
-_080C8DB0: .4byte 0x02019328
+_080C8DB0: .4byte gSharedMem + 0x19328
_080C8DB4:
bl sub_8007ECC
lsls r0, 24
diff --git a/asm-de/easy_chat.s b/asm-de/easy_chat.s
index 1d93e36b4..c87996dbb 100644
--- a/asm-de/easy_chat.s
+++ b/asm-de/easy_chat.s
@@ -192,7 +192,7 @@ _080E6254: .4byte gSpecialVar_0x8005
_080E6258: .4byte gSaveBlock1 + 0x2750
_080E625C: .4byte sub_80546B8
_080E6260:
- ldr r1, _080E628C @ =0x02001000
+ ldr r1, _080E628C @ =gSharedMem + 0x1000
ldr r0, _080E6290 @ =0x00009fa8
adds r2, r1, r0
ldr r0, _080E6294 @ =0x0000ffff
@@ -216,7 +216,7 @@ _080E6284:
pop {r0}
bx r0
.align 2, 0
-_080E628C: .4byte 0x02001000
+_080E628C: .4byte gSharedMem + 0x1000
_080E6290: .4byte 0x00009fa8
_080E6294: .4byte 0x0000ffff
_080E6298: .4byte 0x00009faa
@@ -228,7 +228,7 @@ sub_80E62A0: @ 80E62A0
push {r4,lr}
lsls r0, 24
lsrs r0, 24
- ldr r4, _080E62DC @ =0x02001000
+ ldr r4, _080E62DC @ =gSharedMem + 0x1000
str r2, [r4]
str r1, [r4, 0x4]
strb r0, [r4, 0x8]
@@ -256,7 +256,7 @@ _080E62D0:
pop {r0}
bx r0
.align 2, 0
-_080E62DC: .4byte 0x02001000
+_080E62DC: .4byte gSharedMem + 0x1000
_080E62E0: .4byte 0x00009fa8
_080E62E4: .4byte gSaveBlock1
_080E62E8: .4byte 0x00002dd8
@@ -393,7 +393,7 @@ _080E6420: .4byte 0x0000043c
thumb_func_start sub_80E6424
sub_80E6424: @ 80E6424
push {lr}
- ldr r2, _080E6444 @ =0x02001000
+ ldr r2, _080E6444 @ =gSharedMem + 0x1000
ldr r0, _080E6448 @ =gUnknown_083DB6A4
ldrb r1, [r2, 0x8]
adds r1, r0
@@ -409,7 +409,7 @@ sub_80E6424: @ 80E6424
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_080E6444: .4byte 0x02001000
+_080E6444: .4byte gSharedMem + 0x1000
_080E6448: .4byte gUnknown_083DB6A4
_080E644C: .4byte _080E6450
.align 2, 0
@@ -550,11 +550,11 @@ sub_80E6554: @ 80E6554
sub sp, 0x4
movs r4, 0
movs r7, 0
- ldr r0, _080E6564 @ =0x02001000
+ ldr r0, _080E6564 @ =gSharedMem + 0x1000
mov r12, r0
b _080E656E
.align 2, 0
-_080E6564: .4byte 0x02001000
+_080E6564: .4byte gSharedMem + 0x1000
_080E6568:
adds r0, r7, 0x1
lsls r0, 16
@@ -640,7 +640,7 @@ _080E65FC:
subs r0, 0x11
adds r0, r2
strb r1, [r0]
- ldr r0, _080E662C @ =0x02001000
+ ldr r0, _080E662C @ =gSharedMem + 0x1000
mov r12, r0
_080E6608:
adds r0, r4, 0x1
@@ -662,7 +662,7 @@ _080E6612:
pop {r0}
bx r0
.align 2, 0
-_080E662C: .4byte 0x02001000
+_080E662C: .4byte gSharedMem + 0x1000
thumb_func_end sub_80E6554
thumb_func_start sub_80E6630
@@ -683,7 +683,7 @@ _080E6638:
lsls r0, r1, 3
subs r0, r1
lsls r4, r0, 1
- ldr r6, _080E6668 @ =0x02001040
+ ldr r6, _080E6668 @ =gSharedMem + 0x1040
_080E6650:
adds r0, r5, r3
ldrb r1, [r0]
@@ -697,7 +697,7 @@ _080E6650:
b _080E6672
.align 2, 0
_080E6664: .4byte gUnknown_083DB6B2
-_080E6668: .4byte 0x02001040
+_080E6668: .4byte gSharedMem + 0x1040
_080E666C:
adds r0, r3, r4
adds r0, r6
@@ -733,7 +733,7 @@ sub_80E6690: @ 80E6690
movs r5, 0
ldr r6, _080E66E4 @ =gUnknown_083DB7C0
_080E66A4:
- ldr r0, _080E66E8 @ =0x02001000
+ ldr r0, _080E66E8 @ =gSharedMem + 0x1000
ldrb r0, [r0, 0x8]
lsls r0, 1
adds r0, r5, r0
@@ -764,7 +764,7 @@ _080E66A4:
.align 2, 0
_080E66E0: .4byte gUnknown_083DB7DC
_080E66E4: .4byte gUnknown_083DB7C0
-_080E66E8: .4byte 0x02001000
+_080E66E8: .4byte gSharedMem + 0x1000
_080E66EC: .4byte gUnknown_083DB6F4
_080E66F0:
strb r0, [r3]
@@ -786,7 +786,7 @@ _080E670A:
cmp r5, 0x1
bls _080E66A4
movs r5, 0
- ldr r3, _080E6758 @ =0x02001000
+ ldr r3, _080E6758 @ =gSharedMem + 0x1000
ldr r0, _080E675C @ =0x0000a0d0
adds r2, r3, r0
movs r1, 0
@@ -820,7 +820,7 @@ _080E671E:
pop {r0}
bx r0
.align 2, 0
-_080E6758: .4byte 0x02001000
+_080E6758: .4byte gSharedMem + 0x1000
_080E675C: .4byte 0x0000a0d0
_080E6760: .4byte 0x0000a29a
thumb_func_end sub_80E6690
@@ -930,19 +930,19 @@ _080E6828: .4byte gSaveBlock1 + 0x2D8C
thumb_func_start sub_80E682C
sub_80E682C: @ 80E682C
- ldr r1, _080E6838 @ =0x02001000
+ ldr r1, _080E6838 @ =gSharedMem + 0x1000
str r0, [r1, 0x20]
movs r0, 0
strh r0, [r1, 0x24]
bx lr
.align 2, 0
-_080E6838: .4byte 0x02001000
+_080E6838: .4byte gSharedMem + 0x1000
thumb_func_end sub_80E682C
thumb_func_start sub_80E683C
sub_80E683C: @ 80E683C
push {r4,r5,lr}
- ldr r1, _080E6890 @ =0x02001000
+ ldr r1, _080E6890 @ =gSharedMem + 0x1000
adds r0, r1, 0
adds r0, 0x26
ldrb r0, [r0]
@@ -985,7 +985,7 @@ _080E6876:
strb r0, [r3]
b _080E68B8
.align 2, 0
-_080E6890: .4byte 0x02001000
+_080E6890: .4byte gSharedMem + 0x1000
_080E6894: .4byte 0x000001a9
_080E6898:
movs r3, 0xD5
@@ -1032,7 +1032,7 @@ _080E68E4: .4byte 0x000001a9
sub_80E68E8: @ 80E68E8
push {r4-r6,lr}
bl sub_80EB0B0
- ldr r3, _080E694C @ =0x02001000
+ ldr r3, _080E694C @ =gSharedMem + 0x1000
adds r0, r3, 0
adds r0, 0x26
ldrb r0, [r0]
@@ -1082,7 +1082,7 @@ _080E693A:
ldr r3, _080E6950 @ =0x000044a2
b _080E69AC
.align 2, 0
-_080E694C: .4byte 0x02001000
+_080E694C: .4byte gSharedMem + 0x1000
_080E6950: .4byte 0x000044a2
_080E6954: .4byte 0x00009d54
_080E6958: .4byte 0x00009cd2
@@ -1167,7 +1167,7 @@ _080E69F4: .4byte 0x00009d55
thumb_func_start sub_80E69F8
sub_80E69F8: @ 80E69F8
push {r4,lr}
- ldr r0, _080E6A10 @ =0x02001000
+ ldr r0, _080E6A10 @ =gSharedMem + 0x1000
ldrb r1, [r0, 0x8]
adds r4, r0, 0
cmp r1, 0xD
@@ -1178,7 +1178,7 @@ sub_80E69F8: @ 80E69F8
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_080E6A10: .4byte 0x02001000
+_080E6A10: .4byte gSharedMem + 0x1000
_080E6A14: .4byte _080E6A18
.align 2, 0
_080E6A18:
@@ -1227,7 +1227,7 @@ sub_80E6A6C: @ 80E6A6C
thumb_func_start sub_80E6A88
sub_80E6A88: @ 80E6A88
push {lr}
- ldr r0, _080E6AA4 @ =0x02001000
+ ldr r0, _080E6AA4 @ =gSharedMem + 0x1000
ldr r0, [r0, 0x20]
bl _call_via_r0
bl AnimateSprites
@@ -1236,7 +1236,7 @@ sub_80E6A88: @ 80E6A88
pop {r0}
bx r0
.align 2, 0
-_080E6AA4: .4byte 0x02001000
+_080E6AA4: .4byte gSharedMem + 0x1000
thumb_func_end sub_80E6A88
thumb_func_start sub_80E6AA8
@@ -1275,7 +1275,7 @@ _080E6AE0: .4byte sub_80E6AE4
sub_80E6AE4: @ 80E6AE4
push {r4,r5,lr}
bl sub_80E75D8
- ldr r4, _080E6B44 @ =0x02001000
+ ldr r4, _080E6B44 @ =gSharedMem + 0x1000
adds r1, r4, 0
adds r1, 0x87
strb r0, [r1]
@@ -1320,7 +1320,7 @@ _080E6AFE:
beq _080E6B52
b _080E6BA4
.align 2, 0
-_080E6B44: .4byte 0x02001000
+_080E6B44: .4byte gSharedMem + 0x1000
_080E6B48: .4byte gMain
_080E6B4C:
cmp r0, 0x2
@@ -1383,7 +1383,7 @@ _080E6BBC: .4byte sub_80E6C84
thumb_func_start sub_80E6BC0
sub_80E6BC0: @ 80E6BC0
push {r4,lr}
- ldr r4, _080E6BD4 @ =0x02001000
+ ldr r4, _080E6BD4 @ =gSharedMem + 0x1000
ldrh r0, [r4, 0x24]
cmp r0, 0x1
beq _080E6C12
@@ -1393,7 +1393,7 @@ sub_80E6BC0: @ 80E6BC0
beq _080E6BE2
b _080E6C76
.align 2, 0
-_080E6BD4: .4byte 0x02001000
+_080E6BD4: .4byte gSharedMem + 0x1000
_080E6BD8:
cmp r0, 0x2
beq _080E6C54
@@ -1448,13 +1448,13 @@ _080E6C3E:
strh r0, [r4, 0x24]
b _080E6C76
_080E6C46:
- ldr r1, _080E6C50 @ =0x02001000
+ ldr r1, _080E6C50 @ =gSharedMem + 0x1000
ldrh r0, [r1, 0x24]
adds r0, 0x1
strh r0, [r1, 0x24]
b _080E6C76
.align 2, 0
-_080E6C50: .4byte 0x02001000
+_080E6C50: .4byte gSharedMem + 0x1000
_080E6C54:
bl sub_80E81FC
ldr r0, _080E6C60 @ =sub_80E6AC4
@@ -1483,7 +1483,7 @@ _080E6C80: .4byte sub_80E6AC4
thumb_func_start sub_80E6C84
sub_80E6C84: @ 80E6C84
push {r4,lr}
- ldr r4, _080E6C98 @ =0x02001000
+ ldr r4, _080E6C98 @ =gSharedMem + 0x1000
ldrh r0, [r4, 0x24]
cmp r0, 0x1
beq _080E6CF4
@@ -1493,7 +1493,7 @@ sub_80E6C84: @ 80E6C84
beq _080E6CA6
b _080E6D72
.align 2, 0
-_080E6C98: .4byte 0x02001000
+_080E6C98: .4byte gSharedMem + 0x1000
_080E6C9C:
cmp r0, 0x2
beq _080E6D24
@@ -1531,12 +1531,12 @@ _080E6CA6:
cmp r0, 0xD
bne _080E6D1C
_080E6CE8:
- ldr r1, _080E6CF0 @ =0x02001000
+ ldr r1, _080E6CF0 @ =gSharedMem + 0x1000
movs r0, 0x2
strh r0, [r1, 0x24]
b _080E6D72
.align 2, 0
-_080E6CF0: .4byte 0x02001000
+_080E6CF0: .4byte gSharedMem + 0x1000
_080E6CF4:
bl ProcessMenuInputNoWrap_
lsls r0, 24
@@ -1588,12 +1588,12 @@ _080E6D44:
_080E6D50: .4byte gScriptResult
_080E6D54: .4byte sub_80E752C
_080E6D58:
- ldr r1, _080E6D60 @ =0x02001000
+ ldr r1, _080E6D60 @ =gSharedMem + 0x1000
movs r0, 0xFF
strh r0, [r1, 0x24]
b _080E6D72
.align 2, 0
-_080E6D60: .4byte 0x02001000
+_080E6D60: .4byte gSharedMem + 0x1000
_080E6D64:
bl HandleDestroyMenuCursors
bl sub_80E81FC
@@ -1610,7 +1610,7 @@ _080E6D78: .4byte sub_80E6AC4
thumb_func_start sub_80E6D7C
sub_80E6D7C: @ 80E6D7C
push {r4-r7,lr}
- ldr r5, _080E6D98 @ =0x02001000
+ ldr r5, _080E6D98 @ =gSharedMem + 0x1000
ldrh r0, [r5, 0x24]
cmp r0, 0xA
bne _080E6D88
@@ -1624,7 +1624,7 @@ _080E6D88:
beq _080E6E3C
b _080E6F5E
.align 2, 0
-_080E6D98: .4byte 0x02001000
+_080E6D98: .4byte gSharedMem + 0x1000
_080E6D9C:
cmp r0, 0x65
bne _080E6DA2
@@ -1680,7 +1680,7 @@ _080E6DEE:
.align 2, 0
_080E6DF8: .4byte 0x0000ffff
_080E6DFC:
- ldr r0, _080E6E18 @ =0x02001000
+ ldr r0, _080E6E18 @ =gSharedMem + 0x1000
ldrb r0, [r0, 0x8]
cmp r0, 0x4
bne _080E6E20
@@ -1692,7 +1692,7 @@ _080E6DFC:
bl sub_80E682C
b _080E6F5E
.align 2, 0
-_080E6E18: .4byte 0x02001000
+_080E6E18: .4byte gSharedMem + 0x1000
_080E6E1C: .4byte sub_80E6C84
_080E6E20:
movs r0, 0x1
@@ -1783,7 +1783,7 @@ _080E6ED8: .4byte sub_80E752C
_080E6EDC:
bl HandleDestroyMenuCursors
bl sub_80E81FC
- ldr r4, _080E6EFC @ =0x02001000
+ ldr r4, _080E6EFC @ =gSharedMem + 0x1000
ldrb r0, [r4, 0x8]
cmp r0, 0x6
bne _080E6F00
@@ -1795,7 +1795,7 @@ _080E6EDC:
strh r0, [r4, 0x24]
b _080E6F5E
.align 2, 0
-_080E6EFC: .4byte 0x02001000
+_080E6EFC: .4byte gSharedMem + 0x1000
_080E6F00:
bl sub_80E95A4
b _080E6F12
@@ -1827,14 +1827,14 @@ _080E6F30:
cmp r0, 0
beq _080E6F5E
_080E6F3C:
- ldr r1, _080E6F4C @ =0x02001000
+ ldr r1, _080E6F4C @ =gSharedMem + 0x1000
ldrh r0, [r1, 0x24]
adds r0, 0x1
strh r0, [r1, 0x24]
b _080E6F5E
.align 2, 0
_080E6F48: .4byte gMain
-_080E6F4C: .4byte 0x02001000
+_080E6F4C: .4byte gSharedMem + 0x1000
_080E6F50:
bl sub_80E7E50
bl sub_80E95A4
@@ -1851,7 +1851,7 @@ _080E6F64: .4byte sub_80E6AC4
thumb_func_start sub_80E6F68
sub_80E6F68: @ 80E6F68
push {r4,lr}
- ldr r4, _080E6F78 @ =0x02001000
+ ldr r4, _080E6F78 @ =gSharedMem + 0x1000
ldrh r0, [r4, 0x24]
cmp r0, 0
beq _080E6F7C
@@ -1859,7 +1859,7 @@ sub_80E6F68: @ 80E6F68
beq _080E6F9C
b _080E6FBC
.align 2, 0
-_080E6F78: .4byte 0x02001000
+_080E6F78: .4byte gSharedMem + 0x1000
_080E6F7C:
movs r0, 0x1
bl sub_80E8398
@@ -1897,7 +1897,7 @@ sub_80E6FC8: @ 80E6FC8
push {r4,lr}
bl sub_80E77C8
adds r1, r0, 0
- ldr r4, _080E7000 @ =0x02001000
+ ldr r4, _080E7000 @ =gSharedMem + 0x1000
adds r0, r4, 0
adds r0, 0x96
strb r1, [r0]
@@ -1920,7 +1920,7 @@ sub_80E6FC8: @ 80E6FC8
bl sub_80E682C
b _080E710A
.align 2, 0
-_080E7000: .4byte 0x02001000
+_080E7000: .4byte gSharedMem + 0x1000
_080E7004: .4byte sub_80E6FC8
_080E7008: .4byte sub_80E7458
_080E700C:
@@ -2055,7 +2055,7 @@ _080E7110: .4byte sub_80E718C
thumb_func_start sub_80E7114
sub_80E7114: @ 80E7114
push {lr}
- ldr r0, _080E712C @ =0x02001000
+ ldr r0, _080E712C @ =gSharedMem + 0x1000
ldrh r1, [r0, 0x24]
adds r2, r0, 0
cmp r1, 0x4
@@ -2066,7 +2066,7 @@ sub_80E7114: @ 80E7114
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_080E712C: .4byte 0x02001000
+_080E712C: .4byte gSharedMem + 0x1000
_080E7130: .4byte _080E7134
.align 2, 0
_080E7134:
@@ -2093,13 +2093,13 @@ _080E7164:
cmp r0, 0
beq _080E7182
_080E716E:
- ldr r1, _080E7178 @ =0x02001000
+ ldr r1, _080E7178 @ =gSharedMem + 0x1000
ldrh r0, [r1, 0x24]
adds r0, 0x1
strh r0, [r1, 0x24]
b _080E7182
.align 2, 0
-_080E7178: .4byte 0x02001000
+_080E7178: .4byte gSharedMem + 0x1000
_080E717C:
ldr r0, _080E7188 @ =sub_80E6AC4
bl sub_80E682C
@@ -2113,7 +2113,7 @@ _080E7188: .4byte sub_80E6AC4
thumb_func_start sub_80E718C
sub_80E718C: @ 80E718C
push {r4,lr}
- ldr r0, _080E71A4 @ =0x02001000
+ ldr r0, _080E71A4 @ =gSharedMem + 0x1000
ldrh r1, [r0, 0x24]
adds r4, r0, 0
cmp r1, 0x1
@@ -2124,7 +2124,7 @@ sub_80E718C: @ 80E718C
beq _080E71AE
b _080E71EC
.align 2, 0
-_080E71A4: .4byte 0x02001000
+_080E71A4: .4byte gSharedMem + 0x1000
_080E71A8:
cmp r1, 0x8
beq _080E71F4
@@ -2181,7 +2181,7 @@ _080E7214: .4byte sub_80E6FC8
thumb_func_start sub_80E7218
sub_80E7218: @ 80E7218
push {r4,lr}
- ldr r4, _080E7230 @ =0x02001000
+ ldr r4, _080E7230 @ =gSharedMem + 0x1000
ldrh r0, [r4, 0x24]
adds r1, r4, 0
cmp r0, 0x9
@@ -2192,7 +2192,7 @@ sub_80E7218: @ 80E7218
beq _080E7244
b _080E723C
.align 2, 0
-_080E7230: .4byte 0x02001000
+_080E7230: .4byte gSharedMem + 0x1000
_080E7234:
cmp r0, 0xA
beq _080E7276
@@ -2243,7 +2243,7 @@ sub_80E7294: @ 80E7294
push {r4,lr}
bl sub_80E7B40
adds r1, r0, 0
- ldr r4, _080E72CC @ =0x02001000
+ ldr r4, _080E72CC @ =gSharedMem + 0x1000
ldr r2, _080E72D0 @ =0x000001b9
adds r0, r4, r2
strb r1, [r0]
@@ -2265,7 +2265,7 @@ sub_80E7294: @ 80E7294
bl sub_80E682C
b _080E731A
.align 2, 0
-_080E72CC: .4byte 0x02001000
+_080E72CC: .4byte gSharedMem + 0x1000
_080E72D0: .4byte 0x000001b9
_080E72D4: .4byte sub_80E7294
_080E72D8: .4byte sub_80E7458
@@ -2308,7 +2308,7 @@ _080E7320: .4byte sub_80E73D0
thumb_func_start sub_80E7324
sub_80E7324: @ 80E7324
push {lr}
- ldr r0, _080E733C @ =0x02001000
+ ldr r0, _080E733C @ =gSharedMem + 0x1000
ldrh r1, [r0, 0x24]
adds r2, r0, 0
cmp r1, 0x4
@@ -2319,7 +2319,7 @@ sub_80E7324: @ 80E7324
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_080E733C: .4byte 0x02001000
+_080E733C: .4byte gSharedMem + 0x1000
_080E7340: .4byte _080E7344
.align 2, 0
_080E7344:
@@ -2357,13 +2357,13 @@ _080E738A:
cmp r0, 0
beq _080E73C6
_080E7394:
- ldr r1, _080E73A0 @ =0x02001000
+ ldr r1, _080E73A0 @ =gSharedMem + 0x1000
ldrh r0, [r1, 0x24]
adds r0, 0x1
strh r0, [r1, 0x24]
b _080E73C6
.align 2, 0
-_080E73A0: .4byte 0x02001000
+_080E73A0: .4byte gSharedMem + 0x1000
_080E73A4:
ldrb r0, [r2, 0x8]
cmp r0, 0x6
@@ -2390,7 +2390,7 @@ _080E73CC: .4byte sub_80E6AC4
thumb_func_start sub_80E73D0
sub_80E73D0: @ 80E73D0
push {lr}
- ldr r0, _080E73E4 @ =0x02001000
+ ldr r0, _080E73E4 @ =gSharedMem + 0x1000
ldrh r0, [r0, 0x24]
cmp r0, 0x4
bhi _080E744E
@@ -2400,7 +2400,7 @@ sub_80E73D0: @ 80E73D0
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_080E73E4: .4byte 0x02001000
+_080E73E4: .4byte gSharedMem + 0x1000
_080E73E8: .4byte _080E73EC
.align 2, 0
_080E73EC:
@@ -2432,13 +2432,13 @@ _080E742C:
movs r0, 0
bl sub_80E8958
_080E7436:
- ldr r1, _080E7440 @ =0x02001000
+ ldr r1, _080E7440 @ =gSharedMem + 0x1000
ldrh r0, [r1, 0x24]
adds r0, 0x1
strh r0, [r1, 0x24]
b _080E744E
.align 2, 0
-_080E7440: .4byte 0x02001000
+_080E7440: .4byte gSharedMem + 0x1000
_080E7444:
bl sub_80E9974
ldr r0, _080E7454 @ =sub_80E6FC8
@@ -2453,7 +2453,7 @@ _080E7454: .4byte sub_80E6FC8
thumb_func_start sub_80E7458
sub_80E7458: @ 80E7458
push {r4,r5,lr}
- ldr r4, _080E7468 @ =0x02001000
+ ldr r4, _080E7468 @ =gSharedMem + 0x1000
ldrh r5, [r4, 0x24]
cmp r5, 0
beq _080E746C
@@ -2461,7 +2461,7 @@ sub_80E7458: @ 80E7458
beq _080E74A4
b _080E7518
.align 2, 0
-_080E7468: .4byte 0x02001000
+_080E7468: .4byte gSharedMem + 0x1000
_080E746C:
movs r1, 0xE2
lsls r1, 1
@@ -2477,7 +2477,7 @@ _080E7480: .4byte sub_80E6FC8
_080E7484:
bl sub_80E9D00
_080E7488:
- ldr r4, _080E74A0 @ =0x02001000
+ ldr r4, _080E74A0 @ =gSharedMem + 0x1000
movs r2, 0xDF
lsls r2, 1
adds r0, r4, r2
@@ -2488,7 +2488,7 @@ _080E7488:
strh r0, [r4, 0x24]
b _080E7518
.align 2, 0
-_080E74A0: .4byte 0x02001000
+_080E74A0: .4byte gSharedMem + 0x1000
_080E74A4:
bl sub_80E9E54
lsls r0, 24
@@ -2532,7 +2532,7 @@ _080E74E4:
adds r0, r4, r1
_080E74FE:
strb r5, [r0]
- ldr r1, _080E7528 @ =0x02001000
+ ldr r1, _080E7528 @ =gSharedMem + 0x1000
movs r0, 0xDF
lsls r0, 1
adds r2, r1, r0
@@ -2550,14 +2550,14 @@ _080E7518:
.align 2, 0
_080E7520: .4byte 0x00009d55
_080E7524: .4byte 0x000001b9
-_080E7528: .4byte 0x02001000
+_080E7528: .4byte gSharedMem + 0x1000
thumb_func_end sub_80E7458
thumb_func_start sub_80E752C
sub_80E752C: @ 80E752C
push {r4,lr}
sub sp, 0x4
- ldr r4, _080E7540 @ =0x02001000
+ ldr r4, _080E7540 @ =gSharedMem + 0x1000
ldrh r1, [r4, 0x24]
cmp r1, 0
beq _080E7544
@@ -2565,7 +2565,7 @@ sub_80E752C: @ 80E752C
beq _080E755C
b _080E756C
.align 2, 0
-_080E7540: .4byte 0x02001000
+_080E7540: .4byte gSharedMem + 0x1000
_080E7544:
movs r0, 0x1
negs r0, r0
@@ -2595,7 +2595,7 @@ _080E756C:
thumb_func_start sub_80E7574
sub_80E7574: @ 80E7574
push {r4,r5,lr}
- ldr r4, _080E75B8 @ =0x02001000
+ ldr r4, _080E75B8 @ =gSharedMem + 0x1000
ldrb r5, [r4, 0x8]
cmp r5, 0x1
bne _080E75BC
@@ -2628,9 +2628,9 @@ sub_80E7574: @ 80E7574
adds r1, r4, 0
b _080E75C6
.align 2, 0
-_080E75B8: .4byte 0x02001000
+_080E75B8: .4byte gSharedMem + 0x1000
_080E75BC:
- ldr r1, _080E75D4 @ =0x02001000
+ ldr r1, _080E75D4 @ =gSharedMem + 0x1000
adds r2, r1, 0
adds r2, 0x7D
movs r0, 0
@@ -2643,7 +2643,7 @@ _080E75C6:
pop {r0}
bx r0
.align 2, 0
-_080E75D4: .4byte 0x02001000
+_080E75D4: .4byte gSharedMem + 0x1000
thumb_func_end sub_80E7574
thumb_func_start sub_80E75D8
@@ -2656,7 +2656,7 @@ sub_80E75D8: @ 80E75D8
ands r0, r1
cmp r0, 0
beq _080E7604
- ldr r1, _080E7600 @ =0x02001000
+ ldr r1, _080E7600 @ =gSharedMem + 0x1000
adds r0, r1, 0
adds r0, 0x84
ldrb r0, [r0]
@@ -2668,14 +2668,14 @@ sub_80E75D8: @ 80E75D8
b _080E768E
.align 2, 0
_080E75FC: .4byte gMain
-_080E7600: .4byte 0x02001000
+_080E7600: .4byte gSharedMem + 0x1000
_080E7604:
ldrh r1, [r2, 0x30]
movs r0, 0x40
ands r0, r1
cmp r0, 0
beq _080E7630
- ldr r2, _080E762C @ =0x02001000
+ ldr r2, _080E762C @ =gSharedMem + 0x1000
adds r1, r2, 0
adds r1, 0x86
ldrb r0, [r1]
@@ -2690,13 +2690,13 @@ _080E7604:
strb r0, [r1]
b _080E765C
.align 2, 0
-_080E762C: .4byte 0x02001000
+_080E762C: .4byte gSharedMem + 0x1000
_080E7630:
movs r0, 0x80
ands r0, r1
cmp r0, 0
beq _080E7658
- ldr r0, _080E7684 @ =0x02001000
+ ldr r0, _080E7684 @ =gSharedMem + 0x1000
adds r3, r0, 0
adds r3, 0x86
ldrb r1, [r3]
@@ -2717,7 +2717,7 @@ _080E7658:
cmp r4, 0
beq _080E76EA
_080E765C:
- ldr r2, _080E7684 @ =0x02001000
+ ldr r2, _080E7684 @ =gSharedMem + 0x1000
ldrb r3, [r2, 0x9]
cmp r3, 0x2
bne _080E7692
@@ -2738,7 +2738,7 @@ _080E765C:
strb r3, [r0]
b _080E77BC
.align 2, 0
-_080E7684: .4byte 0x02001000
+_080E7684: .4byte gSharedMem + 0x1000
_080E7688:
adds r1, r2, 0
adds r1, 0x85
@@ -2800,7 +2800,7 @@ _080E76EA:
lsrs r4, r0, 16
cmp r4, 0
beq _080E7744
- ldr r2, _080E7728 @ =0x02001000
+ ldr r2, _080E7728 @ =gSharedMem + 0x1000
adds r3, r2, 0
adds r3, 0x85
ldrb r0, [r3]
@@ -2825,7 +2825,7 @@ _080E76EA:
movs r0, 0x2
b _080E77BA
.align 2, 0
-_080E7728: .4byte 0x02001000
+_080E7728: .4byte gSharedMem + 0x1000
_080E772C:
adds r0, r2, 0
adds r0, 0x83
@@ -2844,7 +2844,7 @@ _080E7744:
ands r0, r2
cmp r0, 0
beq _080E77C0
- ldr r2, _080E777C @ =0x02001000
+ ldr r2, _080E777C @ =gSharedMem + 0x1000
adds r5, r2, 0
adds r5, 0x86
adds r0, r2, 0
@@ -2868,7 +2868,7 @@ _080E7744:
strb r4, [r1]
b _080E77BC
.align 2, 0
-_080E777C: .4byte 0x02001000
+_080E777C: .4byte gSharedMem + 0x1000
_080E7780:
adds r3, r2, 0
adds r3, 0x85
@@ -2921,7 +2921,7 @@ sub_80E77C8: @ 80E77C8
mov r6, r8
push {r6,r7}
movs r7, 0
- ldr r1, _080E780C @ =0x02001000
+ ldr r1, _080E780C @ =gSharedMem + 0x1000
ldr r2, _080E7810 @ =0x000001b7
adds r0, r1, r2
ldrb r0, [r0]
@@ -2952,7 +2952,7 @@ _080E7806:
strb r0, [r1]
b _080E7948
.align 2, 0
-_080E780C: .4byte 0x02001000
+_080E780C: .4byte gSharedMem + 0x1000
_080E7810: .4byte 0x000001b7
_080E7814: .4byte gMain
_080E7818:
@@ -3301,7 +3301,7 @@ _080E7A8A:
thumb_func_start sub_80E7A98
sub_80E7A98: @ 80E7A98
push {lr}
- ldr r1, _080E7ACC @ =0x02001000
+ ldr r1, _080E7ACC @ =gSharedMem + 0x1000
ldr r0, _080E7AD0 @ =0x000001a9
adds r3, r1, r0
movs r2, 0xD4
@@ -3327,14 +3327,14 @@ _080E7AC6:
pop {r0}
bx r0
.align 2, 0
-_080E7ACC: .4byte 0x02001000
+_080E7ACC: .4byte gSharedMem + 0x1000
_080E7AD0: .4byte 0x000001a9
thumb_func_end sub_80E7A98
thumb_func_start sub_80E7AD4
sub_80E7AD4: @ 80E7AD4
push {lr}
- ldr r3, _080E7B08 @ =0x02001000
+ ldr r3, _080E7B08 @ =gSharedMem + 0x1000
adds r0, r3, 0
adds r0, 0x26
ldrb r0, [r0]
@@ -3359,7 +3359,7 @@ sub_80E7AD4: @ 80E7AD4
adds r2, 0x10
b _080E7B34
.align 2, 0
-_080E7B08: .4byte 0x02001000
+_080E7B08: .4byte gSharedMem + 0x1000
_080E7B0C: .4byte 0x000001a9
_080E7B10:
ldr r1, _080E7B3C @ =0x000001a9
@@ -3393,7 +3393,7 @@ _080E7B3C: .4byte 0x000001a9
sub_80E7B40: @ 80E7B40
push {r4-r7,lr}
movs r5, 0
- ldr r2, _080E7B8C @ =0x02001000
+ ldr r2, _080E7B8C @ =gSharedMem + 0x1000
movs r0, 0xE0
lsls r0, 1
adds r6, r2, r0
@@ -3430,7 +3430,7 @@ _080E7B6E:
strb r0, [r6]
b _080E7D1A
.align 2, 0
-_080E7B8C: .4byte 0x02001000
+_080E7B8C: .4byte gSharedMem + 0x1000
_080E7B90: .4byte gMain
_080E7B94: .4byte 0x00009cd0
_080E7B98: .4byte 0x00009d55
@@ -3646,7 +3646,7 @@ _080E7D2C: .4byte 0x00009cd0
thumb_func_start sub_80E7D30
sub_80E7D30: @ 80E7D30
push {r4,lr}
- ldr r0, _080E7D60 @ =0x02001000
+ ldr r0, _080E7D60 @ =gSharedMem + 0x1000
ldr r1, _080E7D64 @ =0x00009cd1
adds r4, r0, r1
ldr r2, _080E7D68 @ =0x00009cd0
@@ -3671,7 +3671,7 @@ _080E7D5A:
pop {r0}
bx r0
.align 2, 0
-_080E7D60: .4byte 0x02001000
+_080E7D60: .4byte gSharedMem + 0x1000
_080E7D64: .4byte 0x00009cd1
_080E7D68: .4byte 0x00009cd0
thumb_func_end sub_80E7D30
@@ -3680,7 +3680,7 @@ _080E7D68: .4byte 0x00009cd0
sub_80E7D6C: @ 80E7D6C
push {r4,r5,lr}
movs r4, 0
- ldr r0, _080E7D94 @ =0x02001000
+ ldr r0, _080E7D94 @ =gSharedMem + 0x1000
ldrb r1, [r0, 0xA]
cmp r4, r1
bcs _080E7D8E
@@ -3700,7 +3700,7 @@ _080E7D8E:
pop {r0}
bx r0
.align 2, 0
-_080E7D94: .4byte 0x02001000
+_080E7D94: .4byte gSharedMem + 0x1000
_080E7D98: .4byte 0x0000ffff
thumb_func_end sub_80E7D6C
@@ -3708,7 +3708,7 @@ _080E7D98: .4byte 0x0000ffff
sub_80E7D9C: @ 80E7D9C
push {r4,r5,lr}
movs r2, 0
- ldr r0, _080E7DCC @ =0x02001000
+ ldr r0, _080E7DCC @ =gSharedMem + 0x1000
ldrb r1, [r0, 0xA]
cmp r2, r1
bcs _080E7DC6
@@ -3733,13 +3733,13 @@ _080E7DC6:
pop {r0}
bx r0
.align 2, 0
-_080E7DCC: .4byte 0x02001000
+_080E7DCC: .4byte gSharedMem + 0x1000
thumb_func_end sub_80E7D9C
thumb_func_start sub_80E7DD0
sub_80E7DD0: @ 80E7DD0
push {r4,lr}
- ldr r2, _080E7E28 @ =0x02001000
+ ldr r2, _080E7E28 @ =gSharedMem + 0x1000
ldr r1, _080E7E2C @ =0x00009cd1
adds r0, r2, r1
movs r1, 0
@@ -3781,11 +3781,11 @@ sub_80E7DD0: @ 80E7DD0
movs r0, 0
b _080E7E46
.align 2, 0
-_080E7E28: .4byte 0x02001000
+_080E7E28: .4byte gSharedMem + 0x1000
_080E7E2C: .4byte 0x00009cd1
_080E7E30: .4byte 0x00009cd0
_080E7E34:
- ldr r0, _080E7E4C @ =0x02001000
+ ldr r0, _080E7E4C @ =gSharedMem + 0x1000
adds r0, 0x27
ldrb r0, [r0]
adds r1, r4, 0
@@ -3797,7 +3797,7 @@ _080E7E46:
pop {r1}
bx r1
.align 2, 0
-_080E7E4C: .4byte 0x02001000
+_080E7E4C: .4byte gSharedMem + 0x1000
thumb_func_end sub_80E7DD0
thumb_func_start sub_80E7E50
@@ -3810,7 +3810,7 @@ sub_80E7E50: @ 80E7E50
sub sp, 0x8
movs r5, 0
movs r2, 0
- ldr r1, _080E7EF0 @ =0x02001000
+ ldr r1, _080E7EF0 @ =gSharedMem + 0x1000
adds r3, r1, 0
adds r3, 0x84
movs r0, 0
@@ -3827,7 +3827,7 @@ _080E7E74:
movs r1, 0
strb r1, [r0]
movs r3, 0
- ldr r6, _080E7EF4 @ =0x02001083
+ ldr r6, _080E7EF4 @ =gSharedMem + 0x1083
movs r0, 0
ldrsb r0, [r6, r0]
adds r1, r2, 0x1
@@ -3838,9 +3838,9 @@ _080E7E74:
mov r12, r6
movs r0, 0
mov r10, r0
- ldr r1, _080E7EF4 @ =0x02001083
+ ldr r1, _080E7EF4 @ =gSharedMem + 0x1083
mov r9, r1
- ldr r7, _080E7EF8 @ =0x0200100c
+ ldr r7, _080E7EF8 @ =gSharedMem + 0x100C
lsls r4, r2, 1
_080E7E9E:
lsls r1, r5, 1
@@ -3871,7 +3871,7 @@ _080E7ECE:
ldr r1, [sp, 0x4]
lsls r0, r1, 16
lsrs r2, r0, 16
- ldr r6, _080E7EFC @ =0x02001084
+ ldr r6, _080E7EFC @ =gSharedMem + 0x1084
movs r0, 0
ldrsb r0, [r6, r0]
cmp r2, r0
@@ -3886,10 +3886,10 @@ _080E7EDE:
pop {r0}
bx r0
.align 2, 0
-_080E7EF0: .4byte 0x02001000
-_080E7EF4: .4byte 0x02001083
-_080E7EF8: .4byte 0x0200100c
-_080E7EFC: .4byte 0x02001084
+_080E7EF0: .4byte gSharedMem + 0x1000
+_080E7EF4: .4byte gSharedMem + 0x1083
+_080E7EF8: .4byte gSharedMem + 0x100C
+_080E7EFC: .4byte gSharedMem + 0x1084
thumb_func_end sub_80E7E50
thumb_func_start sub_80E7F00
@@ -3903,7 +3903,7 @@ sub_80E7F00: @ 80E7F00
lsls r1, 16
lsrs r1, 16
mov r9, r1
- ldr r7, _080E7F68 @ =0x02001000
+ ldr r7, _080E7F68 @ =gSharedMem + 0x1000
adds r0, r7, 0
adds r0, 0x83
movs r4, 0
@@ -3943,7 +3943,7 @@ sub_80E7F00: @ 80E7F00
subs r0, 0x1
b _080E7F7A
.align 2, 0
-_080E7F68: .4byte 0x02001000
+_080E7F68: .4byte gSharedMem + 0x1000
_080E7F6C:
cmp r3, 0x7
bne _080E7F7C
@@ -3956,7 +3956,7 @@ _080E7F7A:
strb r0, [r1]
_080E7F7C:
movs r3, 0
- ldr r2, _080E7FA4 @ =0x02001000
+ ldr r2, _080E7FA4 @ =gSharedMem + 0x1000
lsls r0, r5, 1
add r0, r8
adds r1, r2, 0
@@ -3975,7 +3975,7 @@ _080E7F7C:
pop {r0}
bx r0
.align 2, 0
-_080E7FA4: .4byte 0x02001000
+_080E7FA4: .4byte gSharedMem + 0x1000
thumb_func_end sub_80E7F00
thumb_func_start sub_80E7FA8
@@ -3987,7 +3987,7 @@ sub_80E7FA8: @ 80E7FA8
movs r0, 0
mov r8, r0
movs r5, 0
- ldr r0, _080E8040 @ =0x02001000
+ ldr r0, _080E8040 @ =gSharedMem + 0x1000
ldrb r1, [r0, 0xA]
cmp r8, r1
bcs _080E802E
@@ -4043,7 +4043,7 @@ _080E8018:
lsls r0, 16
lsrs r0, 16
mov r8, r0
- ldr r3, _080E8040 @ =0x02001000
+ ldr r3, _080E8040 @ =gSharedMem + 0x1000
_080E8024:
lsls r0, r4, 16
lsrs r5, r0, 16
@@ -4061,7 +4061,7 @@ _080E802E:
pop {r1}
bx r1
.align 2, 0
-_080E8040: .4byte 0x02001000
+_080E8040: .4byte gSharedMem + 0x1000
_080E8044: .4byte 0x0000a140
_080E8048: .4byte 0x0000a16d
_080E804C: .4byte 0xffff5ec0
@@ -4072,7 +4072,7 @@ _080E8050: .4byte 0xffff5ecc
sub_80E8054: @ 80E8054
push {r4,lr}
movs r1, 0
- ldr r2, _080E8078 @ =0x02001000
+ ldr r2, _080E8078 @ =gSharedMem + 0x1000
ldrb r0, [r2, 0xA]
cmp r1, r0
bcs _080E808A
@@ -4089,7 +4089,7 @@ _080E8068:
movs r0, 0
b _080E808C
.align 2, 0
-_080E8078: .4byte 0x02001000
+_080E8078: .4byte gSharedMem + 0x1000
_080E807C: .4byte 0x0000ffff
_080E8080:
adds r0, r1, 0x1
@@ -4109,7 +4109,7 @@ _080E808C:
sub_80E8094: @ 80E8094
push {r4-r7,lr}
movs r5, 0
- ldr r6, _080E80C4 @ =0x0200b140
+ ldr r6, _080E80C4 @ =gSharedMem + 0xB140
adds r7, r6, 0
adds r7, 0x2D
_080E809E:
@@ -4131,7 +4131,7 @@ _080E809E:
adds r4, r7, 0
b _080E80D8
.align 2, 0
-_080E80C4: .4byte 0x0200b140
+_080E80C4: .4byte gSharedMem + 0xB140
_080E80C8: .4byte 0xffff5ecc
_080E80CC: .4byte gMysteryEventPhrase
_080E80D0:
@@ -4179,7 +4179,7 @@ sub_80E810C: @ 80E810C
mov r5, r8
push {r5-r7}
movs r5, 0
- ldr r6, _080E8198 @ =0x0200b19a
+ ldr r6, _080E8198 @ =gSharedMem + 0xB19A
ldr r0, _080E819C @ =0xffff5e66
adds r0, r6
mov r9, r0
@@ -4243,7 +4243,7 @@ _080E818A:
lsrs r0, 24
b _080E81B2
.align 2, 0
-_080E8198: .4byte 0x0200b19a
+_080E8198: .4byte gSharedMem + 0xB19A
_080E819C: .4byte 0xffff5e66
_080E81A0: .4byte gBerryMasterWifePhrases
_080E81A4: .4byte gBerryMasterWifePhrases + 0x2
@@ -4267,7 +4267,7 @@ _080E81B2:
sub_80E81C0: @ 80E81C0
push {r4,lr}
ldr r0, _080E81EC @ =gStringVar2
- ldr r4, _080E81F0 @ =0x02001000
+ ldr r4, _080E81F0 @ =gSharedMem + 0x1000
ldr r2, _080E81F4 @ =0x00009fa8
adds r1, r4, r2
ldrh r1, [r1]
@@ -4286,7 +4286,7 @@ sub_80E81C0: @ 80E81C0
bx r0
.align 2, 0
_080E81EC: .4byte gStringVar2
-_080E81F0: .4byte 0x02001000
+_080E81F0: .4byte gSharedMem + 0x1000
_080E81F4: .4byte 0x00009fa8
_080E81F8: .4byte 0x00009faa
thumb_func_end sub_80E81C0
diff --git a/asm/battle_1.s b/asm/battle_1.s
index 44d0b245f..a0db27bf5 100644
--- a/asm/battle_1.s
+++ b/asm/battle_1.s
@@ -928,7 +928,7 @@ _0800DB8E:
.align 2, 0
_0800DBB0: .4byte 0x00006001
_0800DBB4:
- ldr r0, _0800DBD0 @ =0x02000000
+ ldr r0, _0800DBD0 @ =gSharedMem
ldr r1, _0800DBD4 @ =0x000160cb
adds r0, r1
ldrb r0, [r0]
@@ -942,7 +942,7 @@ _0800DBB4:
ldrh r4, [r0, 0xE]
b _0800DBE8
.align 2, 0
-_0800DBD0: .4byte 0x02000000
+_0800DBD0: .4byte gSharedMem
_0800DBD4: .4byte 0x000160cb
_0800DBD8: .4byte gTasks
_0800DBDC:
@@ -1075,7 +1075,7 @@ _0800DED4: .4byte gLinkPlayers
_0800DED8: .4byte gUnknown_081F9680
_0800DEDC: .4byte gUnknown_081F9680 + 0x8
_0800DEE0:
- ldr r0, _0800DF84 @ =0x02000000
+ ldr r0, _0800DF84 @ =gSharedMem
ldr r5, _0800DF88 @ =0x000160cb
adds r0, r5
ldrb r7, [r0]
@@ -1153,7 +1153,7 @@ _0800DF70:
strh r0, [r1, 0x8]
b _0800E212
.align 2, 0
-_0800DF84: .4byte 0x02000000
+_0800DF84: .4byte gSharedMem
_0800DF88: .4byte 0x000160cb
_0800DF8C: .4byte gLinkPlayers
_0800DF90: .4byte gUnknown_081F9680
@@ -1178,7 +1178,7 @@ _0800DF9C:
movs r2, 0x50
movs r3, 0
bl CreateSprite
- ldr r4, _0800E028 @ =0x02000000
+ ldr r4, _0800E028 @ =gSharedMem
ldr r2, _0800E02C @ =0x0001608a
adds r7, r4, r2
strb r0, [r7]
@@ -1221,7 +1221,7 @@ _0800E018: .4byte 0x0000021e
_0800E01C: .4byte gPlttBufferFaded
_0800E020: .4byte 0x00007fff
_0800E024: .4byte gSpriteTemplate_81F9574
-_0800E028: .4byte 0x02000000
+_0800E028: .4byte gSharedMem
_0800E02C: .4byte 0x0001608a
_0800E030: .4byte gSpriteTemplate_81F958C
_0800E034: .4byte 0x0001608b
@@ -1365,7 +1365,7 @@ _0800E154:
mov r0, r9
bl DestroyTask
ldr r4, _0800E224 @ =gSprites
- ldr r0, _0800E228 @ =0x02000000
+ ldr r0, _0800E228 @ =gSharedMem
mov r8, r0
ldr r1, _0800E22C @ =0x0001608a
add r1, r8
@@ -1464,7 +1464,7 @@ _0800E212:
bx r0
.align 2, 0
_0800E224: .4byte gSprites
-_0800E228: .4byte 0x02000000
+_0800E228: .4byte gSharedMem
_0800E22C: .4byte 0x0001608a
_0800E230: .4byte 0x0001608b
_0800E234: .4byte 0x000003ff
diff --git a/asm/battle_2.s b/asm/battle_2.s
index f252e5716..d15bc6826 100644
--- a/asm/battle_2.s
+++ b/asm/battle_2.s
@@ -58,7 +58,7 @@ _08012380:
.4byte _08012E94
.4byte _08012F38
_0801239C:
- ldr r4, _08012434 @ =0x02000000
+ ldr r4, _08012434 @ =gSharedMem
ldr r0, _08012438 @ =gActiveBank
ldrb r0, [r0]
ldr r1, _0801243C @ =0x00016068
@@ -102,7 +102,7 @@ _0801239C:
beq _080123F8
bl _08012F66
_080123F8:
- ldr r0, _08012434 @ =0x02000000
+ ldr r0, _08012434 @ =gSharedMem
ldr r3, _08012444 @ =0x000160a6
adds r0, r3
ldrb r3, [r0]
@@ -132,7 +132,7 @@ _080123F8:
strb r0, [r1]
bl _08012F66
.align 2, 0
-_08012434: .4byte 0x02000000
+_08012434: .4byte gSharedMem
_08012438: .4byte gActiveBank
_0801243C: .4byte 0x00016068
_08012440: .4byte gBattleTypeFlags
@@ -273,7 +273,7 @@ _0801256C:
movs r4, 0
movs r0, 0x5
strb r0, [r1]
- ldr r3, _080125BC @ =0x02000000
+ ldr r3, _080125BC @ =gSharedMem
ldrb r0, [r2]
ldr r1, _080125C0 @ =0x00016060
adds r0, r1
@@ -299,7 +299,7 @@ _0801256C:
.align 2, 0
_080125B4: .4byte gBattleCommunication
_080125B8: .4byte gActiveBank
-_080125BC: .4byte 0x02000000
+_080125BC: .4byte gSharedMem
_080125C0: .4byte 0x00016060
_080125C4: .4byte 0x00016094
_080125C8: .4byte 0x00016010
@@ -435,7 +435,7 @@ _080126D4: .4byte 0x00000902
_080126D8: .4byte gUnknown_02024C1C
_080126DC: .4byte gUnknown_081D9B29
_080126E0:
- ldr r3, _08012738 @ =0x02000000
+ ldr r3, _08012738 @ =gSharedMem
ldr r5, _0801273C @ =gActiveBank
ldrb r0, [r5]
ldr r4, _08012740 @ =0x00016064
@@ -480,7 +480,7 @@ _08012722:
movs r2, 0x6
b _0801286C
.align 2, 0
-_08012738: .4byte 0x02000000
+_08012738: .4byte gSharedMem
_0801273C: .4byte gActiveBank
_08012740: .4byte 0x00016064
_08012744: .4byte gBattlePartyID
@@ -568,7 +568,7 @@ _080127E0:
ldrb r2, [r0]
lsls r0, r2, 1
adds r0, r2
- ldr r2, _08012814 @ =0x0201606c
+ ldr r2, _08012814 @ =gSharedMem + 0x1606C
adds r0, r2
str r0, [sp]
movs r0, 0
@@ -579,7 +579,7 @@ _080127E0:
_08012808: .4byte gActiveBank
_0801280C: .4byte gBattleMons
_08012810: .4byte gLastUsedAbility
-_08012814: .4byte 0x0201606c
+_08012814: .4byte gSharedMem + 0x1606C
_08012818:
ldr r0, _08012830 @ =gActiveBank
ldrb r1, [r0]
@@ -590,13 +590,13 @@ _08012818:
ldrb r0, [r0]
cmp r0, 0x2
bne _08012840
- ldr r3, _08012838 @ =0x02000000
+ ldr r3, _08012838 @ =gSharedMem
ldr r4, _0801283C @ =0x00016068
b _08012854
.align 2, 0
_08012830: .4byte gActiveBank
_08012834: .4byte gActionForBanks
-_08012838: .4byte 0x02000000
+_08012838: .4byte gSharedMem
_0801283C: .4byte 0x00016068
_08012840:
mov r2, r8
@@ -607,7 +607,7 @@ _08012840:
ldrb r0, [r0, 0x1]
cmp r0, 0x2
bne _08012884
- ldr r3, _08012878 @ =0x02000000
+ ldr r3, _08012878 @ =gSharedMem
ldr r4, _0801287C @ =0x00016069
_08012854:
adds r0, r3, r4
@@ -628,7 +628,7 @@ _0801286C:
b _0801289E
.align 2, 0
_08012874: .4byte gActionForBanks
-_08012878: .4byte 0x02000000
+_08012878: .4byte gSharedMem
_0801287C: .4byte 0x00016069
_08012880: .4byte 0x0001606c
_08012884:
@@ -636,7 +636,7 @@ _08012884:
ldrb r1, [r0]
lsls r0, r1, 1
adds r0, r1
- ldr r1, _080128AC @ =0x0201606c
+ ldr r1, _080128AC @ =gSharedMem + 0x1606C
adds r0, r1
str r0, [sp]
movs r0, 0
@@ -651,7 +651,7 @@ _0801289E:
b _08012968
.align 2, 0
_080128A8: .4byte gActiveBank
-_080128AC: .4byte 0x0201606c
+_080128AC: .4byte gSharedMem + 0x1606C
_080128B0:
bl PlayerPartyAndPokemonStorageFull
lsls r0, 24
@@ -670,7 +670,7 @@ _080128B0:
movs r3, 0
movs r0, 0x5
strb r0, [r1]
- ldr r1, _080128FC @ =0x02000000
+ ldr r1, _080128FC @ =gSharedMem
ldrb r0, [r2]
ldr r4, _08012900 @ =0x00016060
adds r0, r4
@@ -687,7 +687,7 @@ _080128EC: .4byte gUnknown_02024C1C
_080128F0: .4byte gActiveBank
_080128F4: .4byte gUnknown_081D8E4A
_080128F8: .4byte gBattleCommunication
-_080128FC: .4byte 0x02000000
+_080128FC: .4byte gSharedMem
_08012900: .4byte 0x00016060
_08012904: .4byte 0x00016094
_08012908:
@@ -695,7 +695,7 @@ _08012908:
ldrb r0, [r4]
lsls r1, r0, 1
adds r1, r0
- ldr r0, _08012928 @ =0x0201606c
+ ldr r0, _08012928 @ =gSharedMem + 0x1606C
adds r1, r0
movs r0, 0
bl EmitOpenBag
@@ -704,7 +704,7 @@ _08012908:
b _08012968
.align 2, 0
_08012924: .4byte gActiveBank
-_08012928: .4byte 0x0201606c
+_08012928: .4byte gSharedMem + 0x1606C
_0801292C:
ldr r4, _08012964 @ =gBattleCommunication
mov r3, r8
@@ -786,7 +786,7 @@ _080129CC:
movs r2, 0
movs r0, 0x5
strb r0, [r1]
- ldr r1, _08012A08 @ =0x02000000
+ ldr r1, _08012A08 @ =gSharedMem
ldrb r0, [r3]
ldr r4, _08012A0C @ =0x00016060
adds r0, r4
@@ -804,7 +804,7 @@ _080129F8: .4byte gActiveBank
_080129FC: .4byte gUnknown_02024C1C
_08012A00: .4byte gUnknown_081D8E44
_08012A04: .4byte gBattleCommunication
-_08012A08: .4byte 0x02000000
+_08012A08: .4byte gSharedMem
_08012A0C: .4byte 0x00016060
_08012A10: .4byte 0x00016094
_08012A14:
@@ -923,7 +923,7 @@ _08012AFC:
movs r2, 0
movs r0, 0x5
strb r0, [r1]
- ldr r3, _08012B3C @ =0x02000000
+ ldr r3, _08012B3C @ =gSharedMem
ldrb r0, [r5]
ldr r4, _08012B40 @ =0x00016060
adds r0, r4
@@ -943,11 +943,11 @@ _08012AFC:
b _08012F90
.align 2, 0
_08012B38: .4byte gBattleCommunication
-_08012B3C: .4byte 0x02000000
+_08012B3C: .4byte gSharedMem
_08012B40: .4byte 0x00016060
_08012B44: .4byte 0x00016094
_08012B48:
- ldr r6, _08012B98 @ =0x02000000
+ ldr r6, _08012B98 @ =gSharedMem
mov r2, r8
ldrb r0, [r2]
ldr r2, _08012B9C @ =0x0001608c
@@ -988,7 +988,7 @@ _08012B48:
ldrb r1, [r3]
b _08012E3C
.align 2, 0
-_08012B98: .4byte 0x02000000
+_08012B98: .4byte gSharedMem
_08012B9C: .4byte 0x0001608c
_08012BA0: .4byte gChosenMovesByBanks
_08012BA4: .4byte gBattleMons
@@ -1042,7 +1042,7 @@ _08012C04: .4byte gBattleBufferB
_08012C08: .4byte gActiveBank
_08012C0C: .4byte gBattleCommunication
_08012C10:
- ldr r0, _08012CC4 @ =0x02000000
+ ldr r0, _08012CC4 @ =gSharedMem
mov r12, r0
ldr r3, _08012CC8 @ =0x00016068
adds r0, r2, r3
@@ -1134,7 +1134,7 @@ _08012CBE:
ldrb r1, [r7]
b _08012E3C
.align 2, 0
-_08012CC4: .4byte 0x02000000
+_08012CC4: .4byte gSharedMem
_08012CC8: .4byte 0x00016068
_08012CCC: .4byte gBattleTypeFlags
_08012CD0: .4byte 0x0001606c
@@ -1270,7 +1270,7 @@ _08012DD2:
adds r0, r5, 0
eors r0, r1
bl GetBankByPlayerAI
- ldr r1, _08012E20 @ =0x02000000
+ ldr r1, _08012E20 @ =gSharedMem
ldr r2, _08012E24 @ =0x000160a6
adds r1, r2
ldrb r1, [r1]
@@ -1291,7 +1291,7 @@ _08012E10: .4byte gBattleExecBuffer
_08012E14: .4byte gBitTable
_08012E18: .4byte gActiveBank
_08012E1C: .4byte gBattleTypeFlags
-_08012E20: .4byte 0x02000000
+_08012E20: .4byte gSharedMem
_08012E24: .4byte 0x000160a6
_08012E28:
movs r0, 0
@@ -1346,7 +1346,7 @@ _08012E88: .4byte gBitTable
_08012E8C: .4byte gActiveBank
_08012E90: .4byte gBattleCommunication
_08012E94:
- ldr r2, _08012EB8 @ =0x02000000
+ ldr r2, _08012EB8 @ =gSharedMem
ldr r5, _08012EBC @ =gActiveBank
ldrb r1, [r5]
ldr r3, _08012EC0 @ =0x00016060
@@ -1364,7 +1364,7 @@ _08012E94:
strb r1, [r0]
b _08012F66
.align 2, 0
-_08012EB8: .4byte 0x02000000
+_08012EB8: .4byte gSharedMem
_08012EBC: .4byte gActiveBank
_08012EC0: .4byte 0x00016060
_08012EC4: .4byte gBattleCommunication
@@ -1863,7 +1863,7 @@ _08013290:
_080132B0: .4byte gActionForBanks
_080132B4: .4byte gProtectStructs
_080132B8:
- ldr r1, _080132D8 @ =0x02000000
+ ldr r1, _080132D8 @ =gSharedMem
ldr r0, _080132DC @ =0x0001608c
add r0, r9
adds r0, r1
@@ -1880,7 +1880,7 @@ _080132B8:
ldrh r3, [r0]
b _080132E6
.align 2, 0
-_080132D8: .4byte 0x02000000
+_080132D8: .4byte gSharedMem
_080132DC: .4byte 0x0001608c
_080132E0: .4byte gBattleMons
_080132E4:
@@ -1903,7 +1903,7 @@ _080132E6:
.align 2, 0
_08013304: .4byte gProtectStructs
_08013308:
- ldr r1, _08013328 @ =0x02000000
+ ldr r1, _08013328 @ =gSharedMem
ldr r0, _0801332C @ =0x0001608c
add r0, r10
adds r0, r1
@@ -1920,7 +1920,7 @@ _08013308:
ldrh r2, [r0]
b _08013336
.align 2, 0
-_08013328: .4byte 0x02000000
+_08013328: .4byte gSharedMem
_0801332C: .4byte 0x0001608c
_08013330: .4byte gBattleMons
_08013334:
@@ -2127,7 +2127,7 @@ _08013494:
mov r9, r7
ldr r0, _08013510 @ =bc_80154A0
mov r12, r0
- ldr r1, _08013514 @ =0x02000000
+ ldr r1, _08013514 @ =gSharedMem
mov r10, r1
ldr r7, _08013518 @ =gNoOfAllBanks
ldrb r7, [r7]
@@ -2170,7 +2170,7 @@ _08013504: .4byte gUnknown_02024A76
_08013508: .4byte gTurnOrder
_0801350C: .4byte gBattleMainFunc
_08013510: .4byte bc_80154A0
-_08013514: .4byte 0x02000000
+_08013514: .4byte gSharedMem
_08013518: .4byte gNoOfAllBanks
_0801351C: .4byte 0x0001601d
_08013520:
@@ -2312,7 +2312,7 @@ _08013622:
ldr r1, _0801364C @ =gBattleMainFunc
ldr r0, _08013650 @ =bc_80154A0
str r0, [r1]
- ldr r0, _08013654 @ =0x02000000
+ ldr r0, _08013654 @ =gSharedMem
ldr r7, _08013658 @ =0x0001601d
adds r0, r7
movs r1, 0
@@ -2331,7 +2331,7 @@ _08013644: .4byte gTurnOrder
_08013648: .4byte gNoOfAllBanks
_0801364C: .4byte gBattleMainFunc
_08013650: .4byte bc_80154A0
-_08013654: .4byte 0x02000000
+_08013654: .4byte gSharedMem
_08013658: .4byte 0x0001601d
thumb_func_end sub_80133C8
@@ -2536,7 +2536,7 @@ bc_80154A0: @ 80137CC
ands r0, r1
cmp r0, 0
bne _08013884
- ldr r0, _08013854 @ =0x02000000
+ ldr r0, _08013854 @ =gSharedMem
ldr r1, _08013858 @ =0x0001601d
adds r2, r0, r1
ldr r0, _0801385C @ =gNoOfAllBanks
@@ -2596,7 +2596,7 @@ _080137FA:
b _080138BE
.align 2, 0
_08013850: .4byte gHitMarker
-_08013854: .4byte 0x02000000
+_08013854: .4byte gSharedMem
_08013858: .4byte 0x0001601d
_0801385C: .4byte gNoOfAllBanks
_08013860: .4byte gActiveBank
@@ -2624,7 +2624,7 @@ _08013884:
ldr r0, _080138D0 @ =gDynamicBasePower
movs r3, 0
strh r2, [r0]
- ldr r1, _080138D4 @ =0x02000000
+ ldr r1, _080138D4 @ =gSharedMem
ldr r2, _080138D8 @ =0x0001601c
adds r0, r1, r2
strb r3, [r0]
@@ -2649,7 +2649,7 @@ _080138C4: .4byte gCurrentMoveTurn
_080138C8: .4byte gFightStateTracker
_080138CC: .4byte gUnknown_02024A76
_080138D0: .4byte gDynamicBasePower
-_080138D4: .4byte 0x02000000
+_080138D4: .4byte gSharedMem
_080138D8: .4byte 0x0001601c
_080138DC: .4byte gBattleMainFunc
_080138E0: .4byte sub_80138F0
@@ -2669,7 +2669,7 @@ sub_80138F0: @ 80138F0
movs r0, 0xC
strb r0, [r2]
_08013900:
- ldr r1, _0801394C @ =0x02000000
+ ldr r1, _0801394C @ =gSharedMem
ldr r4, _08013950 @ =gCurrentMoveTurn
ldrb r0, [r4]
ldr r3, _08013954 @ =0x00016057
@@ -2704,7 +2704,7 @@ _08013900:
.align 2, 0
_08013944: .4byte gBattleOutcome
_08013948: .4byte gFightStateTracker
-_0801394C: .4byte 0x02000000
+_0801394C: .4byte gSharedMem
_08013950: .4byte gCurrentMoveTurn
_08013954: .4byte 0x00016057
_08013958: .4byte gUnknown_081FA640
@@ -3398,7 +3398,7 @@ sub_8013F54: @ 8013F54
lsrs r0, 24
cmp r0, 0x1
bhi _08013F90
- ldr r2, _08013F88 @ =0x02017140
+ ldr r2, _08013F88 @ =gSharedMem + 0x17140
adds r1, r2, 0
adds r1, 0x20
ldrb r0, [r1]
@@ -3416,7 +3416,7 @@ _08013F74:
b _08013FAA
.align 2, 0
_08013F84: .4byte gFightStateTracker
-_08013F88: .4byte 0x02017140
+_08013F88: .4byte gSharedMem + 0x17140
_08013F8C: .4byte gBattleMainFunc
_08013F90:
ldr r0, _08013FB0 @ =gBattleExecBuffer
@@ -3481,7 +3481,7 @@ sub_8013FE8: @ 8013FE8
adds r0, r1
ldrb r0, [r0]
strb r0, [r7]
- ldr r1, _08014034 @ =0x02000000
+ ldr r1, _08014034 @ =gSharedMem
mov r10, r1
ldr r0, _08014038 @ =0x000160a6
add r0, r10
@@ -3501,7 +3501,7 @@ sub_8013FE8: @ 8013FE8
_08014028: .4byte gBankAttacker
_0801402C: .4byte gTurnOrder
_08014030: .4byte gCurrentMoveTurn
-_08014034: .4byte 0x02000000
+_08014034: .4byte gSharedMem
_08014038: .4byte 0x000160a6
_0801403C: .4byte gBitTable
_08014040: .4byte gFightStateTracker
@@ -3741,7 +3741,7 @@ _08014218:
ldrh r0, [r1]
movs r1, 0
bl GetMoveTarget
- ldr r2, _08014270 @ =0x02000000
+ ldr r2, _08014270 @ =gSharedMem
ldrb r1, [r4]
ldr r3, _08014274 @ =0x00016010
adds r1, r3
@@ -3754,7 +3754,7 @@ _08014260: .4byte gBattleMons
_08014264: .4byte gChosenMovesByBanks
_08014268: .4byte gCurrentMove
_0801426C: .4byte gUnknown_02024BE8
-_08014270: .4byte 0x02000000
+_08014270: .4byte gSharedMem
_08014274: .4byte 0x00016010
_08014278:
ldr r1, _08014298 @ =gCurrentMove
@@ -3875,7 +3875,7 @@ _08014354:
b _08014570
_08014370:
ldr r3, _08014468 @ =gBattleMons
- ldr r0, _0801446C @ =0x02000000
+ ldr r0, _0801446C @ =gSharedMem
mov r8, r0
ldr r2, _08014458 @ =gBankAttacker
ldrb r5, [r2]
@@ -3995,7 +3995,7 @@ _0801445C: .4byte gSideTimer
_08014460: .4byte gBattleMoves
_08014464: .4byte gCurrentMove
_08014468: .4byte gBattleMons
-_0801446C: .4byte 0x02000000
+_0801446C: .4byte gSharedMem
_08014470: .4byte 0x00016010
_08014474: .4byte gActiveBank
_08014478: .4byte gNoOfAllBanks
@@ -4022,7 +4022,7 @@ _08014496:
_080144A0: .4byte gBankTarget
_080144A4:
ldr r2, _080144EC @ =gBankTarget
- ldr r1, _080144F0 @ =0x02000000
+ ldr r1, _080144F0 @ =gSharedMem
ldr r0, _080144F4 @ =gBankAttacker
ldrb r0, [r0]
ldr r4, _080144F8 @ =0x00016010
@@ -4059,7 +4059,7 @@ _080144D0:
b _0801469A
.align 2, 0
_080144EC: .4byte gBankTarget
-_080144F0: .4byte 0x02000000
+_080144F0: .4byte gSharedMem
_080144F4: .4byte gBankAttacker
_080144F8: .4byte 0x00016010
_080144FC: .4byte gAbsentBankFlags
@@ -4195,7 +4195,7 @@ _08014614: .4byte gBitTable
_08014618: .4byte gBankAttacker
_0801461C:
ldr r5, _08014660 @ =gBankTarget
- ldr r1, _08014664 @ =0x02000000
+ ldr r1, _08014664 @ =gSharedMem
adds r2, r3, 0
ldrb r0, [r2]
ldr r4, _08014668 @ =0x00016010
@@ -4228,7 +4228,7 @@ _0801461C:
b _0801469A
.align 2, 0
_08014660: .4byte gBankTarget
-_08014664: .4byte 0x02000000
+_08014664: .4byte gSharedMem
_08014668: .4byte 0x00016010
_0801466C: .4byte gAbsentBankFlags
_08014670: .4byte gBitTable
@@ -4324,7 +4324,7 @@ sub_80146F4: @ 80146F4
strb r0, [r2, 0x1]
ldrb r4, [r3]
strb r4, [r2, 0x2]
- ldr r1, _08014784 @ =0x02000000
+ ldr r1, _08014784 @ =gSharedMem
ldrb r0, [r3]
ldr r3, _08014788 @ =0x00016064
adds r0, r3
@@ -4361,7 +4361,7 @@ _08014774: .4byte gUnknown_030042A0
_08014778: .4byte gActionSelectionCursor
_0801477C: .4byte gMoveSelectionCursor
_08014780: .4byte gBattleTextBuff1
-_08014784: .4byte 0x02000000
+_08014784: .4byte gSharedMem
_08014788: .4byte 0x00016064
_0801478C: .4byte 0x00016003
_08014790: .4byte gBattlescriptCurrInstr
@@ -4462,7 +4462,7 @@ _0801485C:
_08014864: .4byte gBattlescriptCurrInstr
_08014868: .4byte gUnknown_081D9E7C
_0801486C:
- ldr r2, _080148A0 @ =0x02000000
+ ldr r2, _080148A0 @ =gSharedMem
ldrb r0, [r4]
ldr r3, _080148A4 @ =0x00016003
adds r1, r2, r3
@@ -4490,7 +4490,7 @@ _08014896:
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_080148A0: .4byte 0x02000000
+_080148A0: .4byte gSharedMem
_080148A4: .4byte 0x00016003
_080148A8: .4byte 0x000160d8
_080148AC: .4byte gBattlescriptCurrInstr
@@ -4842,7 +4842,7 @@ _08014B68:
ldrh r1, [r2, 0x6]
bl __divsi3
adds r4, r0, 0
- ldr r0, _08014BE0 @ =0x02000000
+ ldr r0, _08014BE0 @ =gSharedMem
ldr r1, _08014BE4 @ =0x00016078
adds r0, r1
ldrb r1, [r0]
@@ -4862,7 +4862,7 @@ _08014BB0:
lsls r0, 24
lsrs r5, r0, 24
_08014BB6:
- ldr r1, _08014BE0 @ =0x02000000
+ ldr r1, _08014BE0 @ =gSharedMem
ldr r0, _08014BE4 @ =0x00016078
adds r1, r0
ldrb r0, [r1]
@@ -4885,7 +4885,7 @@ _08014BD4:
bx r1
.align 2, 0
_08014BDC: .4byte gBattleTypeFlags
-_08014BE0: .4byte 0x02000000
+_08014BE0: .4byte gSharedMem
_08014BE4: .4byte 0x00016078
_08014BE8: .4byte gCurrentMoveTurn
_08014BEC: .4byte gNoOfAllBanks
@@ -5162,7 +5162,7 @@ sub_8014DF8: @ 8014DF8
adds r0, r2
ldrb r0, [r0]
strh r0, [r1]
- ldr r2, _08014E88 @ =0x02000000
+ ldr r2, _08014E88 @ =gSharedMem
ldr r0, _08014E8C @ =0x00016087
adds r1, r2, r0
ldrb r0, [r1]
@@ -5198,7 +5198,7 @@ _08014E78: .4byte gUnknown_030042A0
_08014E7C: .4byte gBattleCommunication
_08014E80: .4byte gBattleBufferB
_08014E84: .4byte gLastUsedItem
-_08014E88: .4byte 0x02000000
+_08014E88: .4byte gSharedMem
_08014E8C: .4byte 0x00016087
_08014E90: .4byte 0x00016088
_08014E94: .4byte gUnknown_081FA70C
@@ -5238,7 +5238,7 @@ sub_8014EBC: @ 8014EBC
strh r5, [r0]
ldr r0, _08014F38 @ =gUnknown_030042A0
strh r5, [r0]
- ldr r3, _08014F3C @ =0x02000000
+ ldr r3, _08014F3C @ =gSharedMem
ldr r0, _08014F40 @ =0x00016089
adds r2, r3, r0
ldr r1, _08014F44 @ =gUnknown_081FA71B
@@ -5287,7 +5287,7 @@ _08014F2C: .4byte gTurnOrder
_08014F30: .4byte gCurrentMoveTurn
_08014F34: .4byte gUnknown_030042A4
_08014F38: .4byte gUnknown_030042A0
-_08014F3C: .4byte 0x02000000
+_08014F3C: .4byte gSharedMem
_08014F40: .4byte 0x00016089
_08014F44: .4byte gUnknown_081FA71B
_08014F48: .4byte 0x00016088
@@ -5405,7 +5405,7 @@ bsB_exit_by_move: @ 8015034
lsrs r1, r0, 24
cmp r1, 0
bne _08015050
- ldr r0, _08015054 @ =0x02000000
+ ldr r0, _08015054 @ =gSharedMem
ldr r2, _08015058 @ =0x00016059
adds r0, r2
strb r1, [r0]
@@ -5416,7 +5416,7 @@ _08015050:
pop {r0}
bx r0
.align 2, 0
-_08015054: .4byte 0x02000000
+_08015054: .4byte gSharedMem
_08015058: .4byte 0x00016059
_0801505C: .4byte gFightStateTracker
thumb_func_end bsB_exit_by_move
@@ -5469,7 +5469,7 @@ bsC_8016D70: @ 8015094
ldr r0, _08015120 @ =gBattleMoveDamage
movs r4, 0
str r4, [r0]
- ldr r1, _08015124 @ =0x02000000
+ ldr r1, _08015124 @ =gSharedMem
ldr r2, _08015128 @ =0x00016002
adds r0, r1, r2
strb r4, [r0]
@@ -5515,7 +5515,7 @@ _08015114: .4byte gUnknown_02024A76
_08015118: .4byte gHitMarker
_0801511C: .4byte 0xf1e892af
_08015120: .4byte gBattleMoveDamage
-_08015124: .4byte 0x02000000
+_08015124: .4byte gSharedMem
_08015128: .4byte 0x00016002
_0801512C: .4byte 0x000160a1
_08015130: .4byte gMoveHitWith
@@ -5575,12 +5575,12 @@ _080151B0:
movs r2, 0
b _080151C8
_080151B4:
- ldr r0, _080151BC @ =0x02000000
+ ldr r0, _080151BC @ =gSharedMem
ldr r1, _080151C0 @ =0x00016003
adds r0, r1
b _080151C6
.align 2, 0
-_080151BC: .4byte 0x02000000
+_080151BC: .4byte gSharedMem
_080151C0: .4byte 0x00016003
_080151C4:
ldr r0, _080151D0 @ =gBank1
diff --git a/asm/battle_9.s b/asm/battle_9.s
index e92c2db33..8d59770f0 100644
--- a/asm/battle_9.s
+++ b/asm/battle_9.s
@@ -30,7 +30,7 @@ AI_SwitchIfPerishSong: @ 8035FEC
bne _0803604C
adds r0, r2, 0
bl GetBankIdentity
- ldr r1, _08036044 @ =0x02000000
+ ldr r1, _08036044 @ =gSharedMem
lsls r0, 24
lsrs r0, 25
ldr r2, _08036048 @ =0x000160c8
@@ -48,7 +48,7 @@ AI_SwitchIfPerishSong: @ 8035FEC
_08036038: .4byte gStatuses3
_0803603C: .4byte gActiveBank
_08036040: .4byte gDisableStructs
-_08036044: .4byte 0x02000000
+_08036044: .4byte gSharedMem
_08036048: .4byte 0x000160c8
_0803604C:
movs r0, 0
@@ -76,7 +76,7 @@ _08036070:
ldr r0, _08036094 @ =gActiveBank
ldrb r0, [r0]
bl GetBankIdentity
- ldr r1, _08036098 @ =0x02000000
+ ldr r1, _08036098 @ =gSharedMem
lsls r0, 24
lsrs r0, 25
ldr r2, _0803609C @ =0x000160c8
@@ -91,7 +91,7 @@ _08036070:
b _080361CA
.align 2, 0
_08036094: .4byte gActiveBank
-_08036098: .4byte 0x02000000
+_08036098: .4byte gSharedMem
_0803609C: .4byte 0x000160c8
_080360A0:
ldr r4, _080361D8 @ =gBattleMons
@@ -400,7 +400,7 @@ _0803630C:
ldr r0, _08036330 @ =gActiveBank
ldrb r0, [r0]
bl GetBankIdentity
- ldr r1, _08036334 @ =0x02000000
+ ldr r1, _08036334 @ =gSharedMem
lsls r0, 24
lsrs r0, 25
ldr r2, _08036338 @ =0x000160c8
@@ -415,7 +415,7 @@ _0803630C:
b _08036402
.align 2, 0
_08036330: .4byte gActiveBank
-_08036334: .4byte 0x02000000
+_08036334: .4byte gSharedMem
_08036338: .4byte 0x000160c8
_0803633C:
movs r6, 0
@@ -456,7 +456,7 @@ _08036342:
ldrh r0, [r0]
cmp r6, r0
beq _080363FA
- ldr r1, _080363D8 @ =0x02000000
+ ldr r1, _080363D8 @ =gSharedMem
ldr r0, _080363DC @ =0x00016068
add r0, r8
adds r0, r1
@@ -489,7 +489,7 @@ _08036342:
_080363CC: .4byte gBaseStats
_080363D0: .4byte gEnemyParty
_080363D4: .4byte gBattlePartyID
-_080363D8: .4byte 0x02000000
+_080363D8: .4byte gSharedMem
_080363DC: .4byte 0x00016068
_080363E0:
lsls r0, r4, 3
@@ -623,7 +623,7 @@ _080364DC:
ldrb r0, [r0]
_080364E0:
bl GetBankIdentity
- ldr r1, _0803650C @ =0x02000000
+ ldr r1, _0803650C @ =gSharedMem
lsls r0, 24
lsrs r0, 25
ldr r2, _08036510 @ =0x000160c8
@@ -643,7 +643,7 @@ _08036500:
bx r1
.align 2, 0
_08036508: .4byte gActiveBank
-_0803650C: .4byte 0x02000000
+_0803650C: .4byte gSharedMem
_08036510: .4byte 0x000160c8
thumb_func_end AI_SwitchIfNaturalCure
@@ -948,7 +948,7 @@ _08036768:
ldr r0, _0803678C @ =gActiveBank
ldrb r0, [r0]
bl GetBankIdentity
- ldr r1, _08036790 @ =0x02000000
+ ldr r1, _08036790 @ =gSharedMem
lsls r0, 24
lsrs r0, 25
ldr r2, _08036794 @ =0x000160c8
@@ -963,7 +963,7 @@ _08036768:
b _080368DA
.align 2, 0
_0803678C: .4byte gActiveBank
-_08036790: .4byte 0x02000000
+_08036790: .4byte gSharedMem
_08036794: .4byte 0x000160c8
_08036798:
mov r9, r3
@@ -1010,7 +1010,7 @@ _080367C4:
ldrh r0, [r0]
cmp r6, r0
beq _080368D0
- ldr r1, _08036838 @ =0x02000000
+ ldr r1, _08036838 @ =gSharedMem
ldr r0, _0803683C @ =0x00016068
add r0, r9
adds r0, r1
@@ -1043,7 +1043,7 @@ _080367C4:
.align 2, 0
_08036830: .4byte gEnemyParty
_08036834: .4byte gBattlePartyID
-_08036838: .4byte 0x02000000
+_08036838: .4byte gSharedMem
_0803683C: .4byte 0x00016068
_08036840: .4byte gBaseStats
_08036844:
@@ -1310,7 +1310,7 @@ _08036A1A:
ldrh r0, [r0]
cmp r5, r0
beq _08036A7E
- ldr r1, _08036AF4 @ =0x02000000
+ ldr r1, _08036AF4 @ =gSharedMem
ldr r2, _08036AF8 @ =0x00016068
adds r0, r7, r2
adds r0, r1
@@ -1375,7 +1375,7 @@ _08036AE4:
_08036AE8: .4byte gActiveBank
_08036AEC: .4byte gEnemyParty
_08036AF0: .4byte gBattlePartyID
-_08036AF4: .4byte 0x02000000
+_08036AF4: .4byte gSharedMem
_08036AF8: .4byte 0x00016068
_08036AFC:
movs r0, 0
@@ -1405,7 +1405,7 @@ _08036B1C:
bne _08036B28
b _08036C24
_08036B28:
- ldr r4, _08036B6C @ =0x02000000
+ ldr r4, _08036B6C @ =gSharedMem
ldr r0, _08036B70 @ =gActiveBank
ldrb r0, [r0]
bl GetBankIdentity
@@ -1435,7 +1435,7 @@ _08036B28:
b _08036B8C
.align 2, 0
_08036B68: .4byte gBattleTypeFlags
-_08036B6C: .4byte 0x02000000
+_08036B6C: .4byte gSharedMem
_08036B70: .4byte gActiveBank
_08036B74: .4byte 0x000160c8
_08036B78:
@@ -1469,7 +1469,7 @@ _08036B8E:
ldrh r0, [r0]
cmp r4, r0
beq _08036BCE
- ldr r1, _08036C14 @ =0x02000000
+ ldr r1, _08036C14 @ =gSharedMem
ldr r2, _08036C18 @ =0x00016068
adds r0, r6, r2
adds r0, r1
@@ -1489,7 +1489,7 @@ _08036BD4:
ldr r0, _08036C1C @ =gActiveBank
ldrb r0, [r0]
bl GetBankIdentity
- ldr r1, _08036C14 @ =0x02000000
+ ldr r1, _08036C14 @ =gSharedMem
lsls r0, 24
lsrs r0, 25
ldr r3, _08036C20 @ =0x000160c8
@@ -1500,7 +1500,7 @@ _08036BEA:
ldr r4, _08036C1C @ =gActiveBank
ldrb r0, [r4]
bl GetBankIdentity
- ldr r2, _08036C14 @ =0x02000000
+ ldr r2, _08036C14 @ =gSharedMem
ldrb r1, [r4]
ldr r3, _08036C18 @ =0x00016068
adds r1, r3
@@ -1516,7 +1516,7 @@ _08036BEA:
.align 2, 0
_08036C0C: .4byte gEnemyParty
_08036C10: .4byte gBattlePartyID
-_08036C14: .4byte 0x02000000
+_08036C14: .4byte gSharedMem
_08036C18: .4byte 0x00016068
_08036C1C: .4byte gActiveBank
_08036C20: .4byte 0x000160c8
@@ -1751,7 +1751,7 @@ _08036DA2:
ldrh r0, [r0]
cmp r0, r7
beq _08036E7C
- ldr r1, _08036E6C @ =0x02000000
+ ldr r1, _08036E6C @ =gSharedMem
ldr r2, _08036E70 @ =0x00016068
adds r0, r3, r2
adds r0, r1
@@ -1808,7 +1808,7 @@ _08036E5C: .4byte gActiveBank
_08036E60: .4byte gBitTable
_08036E64: .4byte gEnemyParty
_08036E68: .4byte gBattlePartyID
-_08036E6C: .4byte 0x02000000
+_08036E6C: .4byte gSharedMem
_08036E70: .4byte 0x00016068
_08036E74: .4byte gBaseStats
_08036E78: .4byte gBattleMons
@@ -1887,7 +1887,7 @@ _08036F04:
ldr r0, _08037000 @ =gDynamicBasePower
movs r2, 0
strh r2, [r0]
- ldr r0, _08037004 @ =0x02000000
+ ldr r0, _08037004 @ =gSharedMem
ldr r3, _08037008 @ =0x0001601c
adds r1, r0, r3
strb r2, [r1]
@@ -1936,7 +1936,7 @@ _08036F2C:
ldrh r0, [r0]
cmp r0, r7
beq _08036FE8
- ldr r1, _08037004 @ =0x02000000
+ ldr r1, _08037004 @ =gSharedMem
ldr r3, _08037020 @ =0x00016068
adds r0, r4, r3
adds r0, r1
@@ -2013,7 +2013,7 @@ _08036FEE:
bx r1
.align 2, 0
_08037000: .4byte gDynamicBasePower
-_08037004: .4byte 0x02000000
+_08037004: .4byte gSharedMem
_08037008: .4byte 0x0001601c
_0803700C: .4byte 0x0001601f
_08037010: .4byte gBattleMoveFlags
@@ -2132,7 +2132,7 @@ _080370DC:
movs r3, 0
mov r9, r3
_080370EA:
- ldr r4, _08037174 @ =0x02016a00
+ ldr r4, _08037174 @ =gSharedMem + 0x16A00
mov r0, r9
cmp r0, 0
beq _08037106
@@ -2205,7 +2205,7 @@ _08037166:
mov pc, r0
.align 2, 0
_08037170: .4byte gEnemyParty
-_08037174: .4byte 0x02016a00
+_08037174: .4byte gSharedMem + 0x16A00
_08037178: .4byte gItemEffectTable
_0803717C: .4byte gSaveBlock1 + 0x3676
_08037180: .4byte 0xfffe9600
@@ -2283,7 +2283,7 @@ _08037210:
_08037214: .4byte gBattleMons
_08037218: .4byte gActiveBank
_0803721C:
- ldr r2, _08037378 @ =0x02000000
+ ldr r2, _08037378 @ =gSharedMem
ldr r3, _0803737C @ =gActiveBank
ldrb r0, [r3]
lsrs r0, 1
@@ -2465,12 +2465,12 @@ _08037362:
mov r8, r2
b _080374AE
.align 2, 0
-_08037378: .4byte 0x02000000
+_08037378: .4byte gSharedMem
_0803737C: .4byte gActiveBank
_08037380: .4byte 0x000160da
_08037384: .4byte gBattleMons
_08037388:
- ldr r6, _08037458 @ =0x02000000
+ ldr r6, _08037458 @ =gSharedMem
ldr r4, _0803745C @ =gActiveBank
ldrb r0, [r4]
lsrs r0, 1
@@ -2580,7 +2580,7 @@ _08037450:
mov r8, r3
b _080374AE
.align 2, 0
-_08037458: .4byte 0x02000000
+_08037458: .4byte gSharedMem
_0803745C: .4byte gActiveBank
_08037460: .4byte 0x000160da
_08037464: .4byte gDisableStructs
@@ -2624,7 +2624,7 @@ _080374AE:
movs r1, 0x1
movs r2, 0
bl Emitcmd33
- ldr r1, _080374DC @ =0x02000000
+ ldr r1, _080374DC @ =gSharedMem
ldr r0, _080374E0 @ =gActiveBank
ldrb r0, [r0]
lsrs r0, 1
@@ -2643,7 +2643,7 @@ _080374AE:
mov r0, r8
b _080374FA
.align 2, 0
-_080374DC: .4byte 0x02000000
+_080374DC: .4byte gSharedMem
_080374E0: .4byte gActiveBank
_080374E4: .4byte 0x000160d4
_080374E8: .4byte 0x00016a24
diff --git a/asm/battle_anim_80CA710.s b/asm/battle_anim_80CA710.s
index 7b506ac24..1ff3e9681 100644
--- a/asm/battle_anim_80CA710.s
+++ b/asm/battle_anim_80CA710.s
@@ -757,7 +757,7 @@ sub_80CACEC: @ 80CACEC
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080CAD06
@@ -1329,7 +1329,7 @@ _080CB13C:
sub_80CB144: @ 80CB144
push {r4,lr}
adds r4, r0, 0
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080CB170
@@ -2521,7 +2521,7 @@ _080CBA6C:
adds r0, r6, 0
adds r0, 0xA
strh r0, [r5, 0x3C]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080CBA84
@@ -2721,7 +2721,7 @@ sub_80CBBF0: @ 80CBBF0
ldrsh r0, [r4, r1]
cmp r0, 0
bne _080CBC84
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080CBC18
@@ -2917,7 +2917,7 @@ _080CBD44:
movs r1, 0xFF
ands r0, r1
strh r0, [r4, 0x30]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080CBD92
@@ -4233,7 +4233,7 @@ _080CC74C:
bl sub_80790F0
lsls r0, 16
lsrs r4, r0, 16
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080CC7AE
@@ -4968,7 +4968,7 @@ _080CCD1C:
sub_80CCD24: @ 80CCD24
push {r4-r6,lr}
adds r5, r0, 0
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080CCD3A
@@ -5000,7 +5000,7 @@ _080CCD3A:
lsls r0, 24
cmp r0, 0
beq _080CCD78
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080CCDA0
@@ -7569,7 +7569,7 @@ sub_80CE09C: @ 80CE09C
ldrh r5, [r5, 0x2]
adds r0, r5
strh r0, [r6, 0x22]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080CE0E0
@@ -7872,7 +7872,7 @@ _080CE308: .4byte gNoOfAllBanks
sub_80CE30C: @ 80CE30C
push {r4,lr}
adds r4, r0, 0
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080CE322
@@ -8359,7 +8359,7 @@ _080CE68E:
ldrh r1, [r5, 0x20]
strh r1, [r5, 0x3A]
strh r0, [r5, 0x3C]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080CE700
@@ -8953,7 +8953,7 @@ _080CEB48:
strh r1, [r5, 0x32]
ldrh r0, [r4, 0x4]
strh r0, [r5, 0x34]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080CEB6C
@@ -10477,7 +10477,7 @@ sub_80CF6DC: @ 80CF6DC
push {r7}
sub sp, 0x4
adds r5, r0, 0
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080CF700
@@ -10550,7 +10550,7 @@ _080CF722:
lsls r1, 24
adds r0, r1
lsrs r4, r0, 16
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080CF794
@@ -11031,7 +11031,7 @@ sub_80CFB04: @ 80CFB04
mov r4, sp
adds r4, 0x2
strh r1, [r4]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
mov r10, r4
cmp r0, 0
@@ -15162,9 +15162,9 @@ _080D1AF4:
cmp r5, 0x4
ble _080D1AF4
ldr r4, _080D1B3C @ =gBattleAnimSpritePalette_206
- bl IsContest
+ bl NotInBattle
lsls r0, 24
- ldr r1, _080D1B40 @ =0x02018000
+ ldr r1, _080D1B40 @ =gSharedMem + 0x18000
cmp r0, 0
beq _080D1B1C
ldr r0, _080D1B44 @ =0xffffc800
@@ -15175,21 +15175,21 @@ _080D1B1C:
movs r5, 0
_080D1B24:
lsls r4, r5, 5
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080D1B4C
- ldr r0, _080D1B48 @ =0x02014800
+ ldr r0, _080D1B48 @ =gSharedMem + 0x14800
b _080D1B4E
.align 2, 0
_080D1B34: .4byte 0x000027de
_080D1B38: .4byte 0x00002710
_080D1B3C: .4byte gBattleAnimSpritePalette_206
-_080D1B40: .4byte 0x02018000
+_080D1B40: .4byte gSharedMem + 0x18000
_080D1B44: .4byte 0xffffc800
-_080D1B48: .4byte 0x02014800
+_080D1B48: .4byte gSharedMem + 0x14800
_080D1B4C:
- ldr r0, _080D1B7C @ =0x02018000
+ ldr r0, _080D1B7C @ =gSharedMem + 0x18000
_080D1B4E:
adds r2, r4, r0
mov r1, sp
@@ -15213,7 +15213,7 @@ _080D1B4E:
pop {r0}
bx r0
.align 2, 0
-_080D1B7C: .4byte 0x02018000
+_080D1B7C: .4byte gSharedMem + 0x18000
thumb_func_end sub_80D1ADC
thumb_func_start sub_80D1B80
@@ -15390,7 +15390,7 @@ sub_80D1CD0: @ 80D1CD0
push {r4,r5,lr}
lsls r0, 24
lsrs r4, r0, 24
- bl IsContest
+ bl NotInBattle
lsls r0, 24
movs r2, 0xF0
cmp r0, 0
@@ -15943,7 +15943,7 @@ sub_80D2100: @ 80D2100
movs r0, 0x3F
ands r0, r1
strb r0, [r4, 0x1]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080D2144
@@ -15987,7 +15987,7 @@ _080D2144:
lsls r1, 4
movs r2, 0x20
bl LoadCompressedPalette
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080D21A4
@@ -16200,7 +16200,7 @@ _080D230E:
ldr r1, _080D23A4 @ =0x85000200
str r1, [r0, 0x8]
ldr r0, [r0, 0x8]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080D235C
@@ -16280,7 +16280,7 @@ sub_80D23B4: @ 80D23B4
movs r0, 0x3F
ands r0, r1
strb r0, [r4, 0x1]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080D23FE
@@ -16313,7 +16313,7 @@ _080D23FE:
ldr r0, _080D2454 @ =0x85000400
str r0, [r1, 0x8]
ldr r0, [r1, 0x8]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080D245C
@@ -16359,7 +16359,7 @@ _080D2488:
lsls r1, 4
movs r2, 0x20
bl LoadCompressedPalette
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080D24B6
@@ -16564,7 +16564,7 @@ _080D25FE:
ldr r1, _080D2694 @ =0x85000200
str r1, [r0, 0x8]
ldr r0, [r0, 0x8]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080D264C
@@ -18730,7 +18730,7 @@ sub_80D3698: @ 80D3698
bl sub_8079E90
lsls r0, 24
lsrs r5, r0, 24
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080D36F2
@@ -19068,7 +19068,7 @@ _080D3920:
ldr r1, _080D399C @ =0x85000400
str r1, [r0, 0x8]
ldr r0, [r0, 0x8]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080D39B8
@@ -19174,7 +19174,7 @@ _080D3A0E:
lsls r0, 5
strh r0, [r7, 0xA]
strh r0, [r7, 0xC]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
lsrs r4, r0, 24
cmp r4, 0
@@ -19502,7 +19502,7 @@ _080D3CAA:
ldr r1, _080D3D58 @ =0x85000400
str r1, [r0, 0x8]
ldr r0, [r0, 0x8]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080D3D02
@@ -21104,7 +21104,7 @@ sub_80D48F4: @ 80D48F4
movs r1, 0x1
_080D4938:
strh r1, [r5, 0x16]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080D494C
@@ -28400,7 +28400,7 @@ sub_80D80E0: @ 80D80E0
movs r0, 0x3F
ands r0, r1
strb r0, [r4, 0x1]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080D812A
@@ -28448,7 +28448,7 @@ _080D812A:
lsls r1, 4
movs r2, 0x20
bl LoadPalette
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080D8190
@@ -28679,7 +28679,7 @@ _080D832A:
ldr r1, _080D83C8 @ =0x85000200
str r1, [r0, 0x8]
ldr r0, [r0, 0x8]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080D8378
@@ -28792,7 +28792,7 @@ sub_80D8414: @ 80D8414
movs r0, 0x3F
ands r0, r1
strb r0, [r4, 0x1]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080D845E
@@ -28840,7 +28840,7 @@ _080D845E:
lsls r1, 4
movs r2, 0x20
bl LoadPalette
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080D84C4
@@ -29061,7 +29061,7 @@ _080D864A:
ldr r1, _080D86E8 @ =0x85000200
str r1, [r0, 0x8]
ldr r0, [r0, 0x8]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080D8698
@@ -29274,7 +29274,7 @@ _080D8824:
ldrh r1, [r5, 0x3C]
orrs r0, r1
strh r0, [r5, 0x3C]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080D8858
@@ -30348,7 +30348,7 @@ _080D9074: .4byte gBattleAnimBankAttacker
sub_80D9078: @ 80D9078
push {r4,lr}
adds r4, r0, 0
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080D9094
@@ -31652,7 +31652,7 @@ _080D9A82:
ands r0, r2
orrs r0, r1
strb r0, [r5, 0x5]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080D9ABC
@@ -31828,7 +31828,7 @@ _080D9BF0:
movs r1, 0
bl sub_8078764
_080D9BF8:
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080D9C0C
@@ -32631,7 +32631,7 @@ sub_80DA208: @ 80DA208
negs r0, r0
strh r0, [r1, 0x6]
_080DA234:
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080DA24C
@@ -35427,7 +35427,7 @@ sub_80DB74C: @ 80DB74C
lsls r0, 24
cmp r0, 0
beq _080DB768
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080DB77E
@@ -35444,7 +35444,7 @@ _080DB768:
movs r0, 0xC8
strb r0, [r1]
_080DB77E:
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080DB7DA
@@ -35485,7 +35485,7 @@ _080DB7BC:
adds r1, r5, 0
bl sub_8076034
_080DB7DA:
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080DB810
@@ -35540,7 +35540,7 @@ _080DB826:
adds r0, r4
_080DB84A:
strh r0, [r6, 0x22]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080DB85C
@@ -35679,7 +35679,7 @@ sub_80DB92C: @ 80DB92C
negs r1, r1
cmp r0, r1
bne _080DB9CC
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080DB9BC
@@ -35754,7 +35754,7 @@ _080DB9E0: .4byte sub_80DB9E4
sub_80DB9E4: @ 80DB9E4
push {r4-r6,lr}
adds r6, r0, 0
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080DBA3C
@@ -35816,7 +35816,7 @@ sub_80DBA4C: @ 80DBA4C
bne _080DBA66
movs r6, 0x1
_080DBA66:
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080DBAAE
@@ -36651,7 +36651,7 @@ sub_80DC0B0: @ 80DC0B0
lsls r1, 3
ldr r0, _080DC10C @ =gTasks
adds r5, r1, r0
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080DC154
@@ -37474,7 +37474,7 @@ _080DC720:
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x22]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080DC74E
@@ -37594,7 +37594,7 @@ _080DC820: .4byte REG_BLDCNT
sub_80DC824: @ 80DC824
push {r4-r6,lr}
adds r6, r0, 0
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080DC850
@@ -37690,7 +37690,7 @@ _080DC8F0: .4byte move_anim_8072740
sub_80DC8F4: @ 80DC8F4
push {r4-r6,lr}
adds r6, r0, 0
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080DC918
@@ -37770,7 +37770,7 @@ _080DC99C: .4byte move_anim_8072740
sub_80DC9A0: @ 80DC9A0
push {r4,r5,lr}
adds r5, r0, 0
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080DC9BC
@@ -38063,7 +38063,7 @@ sub_80DCBCC: @ 80DCBCC
push {r4-r7,lr}
sub sp, 0x4
adds r7, r0, 0
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080DCBEC
@@ -38092,7 +38092,7 @@ _080DCBEC:
negs r0, r0
strh r0, [r1, 0x6]
_080DCC0E:
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080DCC5E
@@ -38668,7 +38668,7 @@ do_boulder_dust: @ 80DD078
movs r0, 0x3F
ands r0, r1
strb r0, [r4, 0x1]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080DD0C4
@@ -38710,7 +38710,7 @@ _080DD0C4:
lsls r1, 4
movs r2, 0x20
bl LoadCompressedPalette
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080DD120
@@ -38972,7 +38972,7 @@ _080DD2F6:
ldr r1, _080DD394 @ =0x85000200
str r1, [r0, 0x8]
ldr r0, [r0, 0x8]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080DD344
@@ -41857,7 +41857,7 @@ sub_80DE918: @ 80DE918
lsls r0, 16
lsrs r0, 16
str r0, [sp, 0x8]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080DE988
@@ -42296,7 +42296,7 @@ sub_80DECB0: @ 80DECB0
lsls r0, 24
cmp r0, 0
bne _080DECF4
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080DED0C
@@ -44938,7 +44938,7 @@ _080E015E:
ldr r0, _080E01BC @ =REG_BG1VOFS
str r0, [sp]
movs r7, 0x2
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080E01F4
@@ -44967,7 +44967,7 @@ _080E01C4:
ldr r0, _080E0284 @ =REG_BG2VOFS
str r0, [sp]
movs r7, 0x4
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080E01F4
@@ -45235,7 +45235,7 @@ _080E03EC:
.4byte _080E053C
.4byte _080E05A4
_080E0400:
- bl IsContest
+ bl NotInBattle
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -46092,7 +46092,7 @@ sub_80E0A4C: @ 80E0A4C
movs r0, 0x3F
ands r0, r1
strb r0, [r5, 0x1]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080E0AC4
@@ -46108,7 +46108,7 @@ _080E0AC4:
lsls r0, 24
cmp r0, 0
beq _080E0B40
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080E0B40
@@ -46163,11 +46163,11 @@ _080E0AF4:
strb r0, [r5]
movs r7, 0x1
_080E0B40:
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080E0B84
- ldr r0, _080E0B80 @ =0x02019348
+ ldr r0, _080E0B80 @ =gSharedMem + 0x19348
ldrh r5, [r0]
b _080E0BCC
.align 2, 0
@@ -46183,7 +46183,7 @@ _080E0B70: .4byte REG_BG1CNT
_080E0B74: .4byte gBattleAnimBankAttacker
_080E0B78: .4byte gSprites
_080E0B7C: .4byte gObjectBankIDs
-_080E0B80: .4byte 0x02019348
+_080E0B80: .4byte gSharedMem + 0x19348
_080E0B84:
ldr r4, _080E0BA4 @ =gBattleAnimBankAttacker
ldrb r0, [r4]
@@ -46379,7 +46379,7 @@ sub_80E0CD0: @ 80E0CD0
strh r1, [r0]
adds r0, 0x2
strh r1, [r0]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080E0D40
@@ -49932,7 +49932,7 @@ sub_80E2838: @ 80E2838
lsls r0, 24
cmp r0, 0
beq _080E285C
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080E285C
@@ -50880,7 +50880,7 @@ sub_80E2F2C: @ 80E2F2C
movs r1, 0x20
orrs r0, r1
strb r0, [r4, 0x1]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080E2FAC
@@ -50896,7 +50896,7 @@ _080E2FAC:
lsls r0, 24
cmp r0, 0
beq _080E3028
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080E3028
@@ -50951,11 +50951,11 @@ _080E2FDC:
strb r0, [r4]
movs r7, 0x1
_080E3028:
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080E306C
- ldr r0, _080E3068 @ =0x02019348
+ ldr r0, _080E3068 @ =gSharedMem + 0x19348
ldrh r4, [r0]
b _080E30B4
.align 2, 0
@@ -50971,7 +50971,7 @@ _080E3058: .4byte REG_BG1CNT
_080E305C: .4byte gBattleAnimBankAttacker
_080E3060: .4byte gSprites
_080E3064: .4byte gObjectBankIDs
-_080E3068: .4byte 0x02019348
+_080E3068: .4byte gSharedMem + 0x19348
_080E306C:
ldr r4, _080E308C @ =gBattleAnimBankAttacker
ldrb r0, [r4]
@@ -51033,7 +51033,7 @@ _080E30B4:
ldr r0, [r2, 0x8]
ldr r0, _080E3174 @ =gUnknown_08D20A30
bl LZDecompressVram
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080E3106
@@ -51150,7 +51150,7 @@ sub_80E3194: @ 80E3194
strh r1, [r0]
adds r0, 0x2
strh r1, [r0]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080E3208
@@ -51358,7 +51358,7 @@ _080E3392:
mov r2, r8
eors r2, r0
mov r8, r2
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080E33BC
@@ -51420,7 +51420,7 @@ _080E33C0:
movs r1, 0x20
orrs r0, r1
strb r0, [r4, 0x1]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080E3432
@@ -51487,11 +51487,11 @@ _080E345E:
movs r2, 0x1
str r2, [sp, 0x20]
_080E34A4:
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080E34E4
- ldr r0, _080E34E0 @ =0x02019348
+ ldr r0, _080E34E0 @ =gSharedMem + 0x19348
ldrh r4, [r0]
b _080E3522
.align 2, 0
@@ -51506,7 +51506,7 @@ _080E34D0: .4byte 0x00003f42
_080E34D4: .4byte REG_BG1CNT
_080E34D8: .4byte gSprites
_080E34DC: .4byte gObjectBankIDs
-_080E34E0: .4byte 0x02019348
+_080E34E0: .4byte gSharedMem + 0x19348
_080E34E4:
adds r0, r5, 0
bl GetBankSide
@@ -51581,7 +51581,7 @@ _080E3578:
ldr r1, [sp, 0x4]
bl LZDecompressVram
_080E3580:
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080E3598
@@ -51884,7 +51884,7 @@ _080E378E:
strh r1, [r0]
adds r0, 0x2
strh r1, [r0]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080E37E8
@@ -52505,7 +52505,7 @@ sub_80E3C4C: @ 80E3C4C
movs r0, 0x2
adds r6, r7, 0
eors r6, r0
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080E3CAE
@@ -52565,7 +52565,7 @@ _080E3CB2:
movs r1, 0x20
orrs r0, r1
strb r0, [r4, 0x1]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080E3D22
@@ -52577,11 +52577,11 @@ _080E3CB2:
orrs r1, r0
strb r1, [r4]
_080E3D22:
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080E3D58
- ldr r0, _080E3D54 @ =0x02019348
+ ldr r0, _080E3D54 @ =gSharedMem + 0x19348
ldrh r4, [r0]
b _080E3D96
.align 2, 0
@@ -52593,7 +52593,7 @@ _080E3D44: .4byte 0x00003f3d
_080E3D48: .4byte REG_BLDCNT
_080E3D4C: .4byte 0x00003f42
_080E3D50: .4byte REG_BG1CNT
-_080E3D54: .4byte 0x02019348
+_080E3D54: .4byte gSharedMem + 0x19348
_080E3D58:
adds r0, r7, 0
bl GetBankSide
@@ -52651,7 +52651,7 @@ _080E3DC0:
ldr r1, [sp, 0x4]
ldr r0, [sp, 0x50]
bl LZDecompressVram
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080E3DE6
@@ -52865,7 +52865,7 @@ _080E3F32:
strh r1, [r0]
adds r0, 0x2
strh r1, [r0]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _080E3F90
@@ -53003,18 +53003,18 @@ _080E4084:
movs r1, 0x2
ldrsh r0, [r0, r1]
lsls r5, r0, 5
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080E40A8
- ldr r0, _080E40A4 @ =0x02014800
+ ldr r0, _080E40A4 @ =gSharedMem + 0x14800
b _080E40AA
.align 2, 0
_080E409C: .4byte gBattleAnimBankTarget
_080E40A0: .4byte gBattleAnimArgs
-_080E40A4: .4byte 0x02014800
+_080E40A4: .4byte gSharedMem + 0x14800
_080E40A8:
- ldr r0, _080E40C8 @ =0x02018000
+ ldr r0, _080E40C8 @ =gSharedMem + 0x18000
_080E40AA:
adds r2, r5, r0
lsls r1, r4, 5
@@ -53030,7 +53030,7 @@ _080E40AA:
pop {r0}
bx r0
.align 2, 0
-_080E40C8: .4byte 0x02018000
+_080E40C8: .4byte gSharedMem + 0x18000
_080E40CC: .4byte gPlttBufferUnfaded
thumb_func_end sub_80E4028
@@ -53093,19 +53093,19 @@ _080E412C:
movs r1, 0x2
ldrsh r0, [r0, r1]
lsls r4, r0, 5
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080E4158
- ldr r0, _080E4154 @ =0x02014800
+ ldr r0, _080E4154 @ =gSharedMem + 0x14800
b _080E415A
.align 2, 0
_080E4148: .4byte gBattleAnimBankTarget
_080E414C: .4byte gPlttBufferUnfaded
_080E4150: .4byte gBattleAnimArgs
-_080E4154: .4byte 0x02014800
+_080E4154: .4byte gSharedMem + 0x14800
_080E4158:
- ldr r0, _080E4174 @ =0x02018000
+ ldr r0, _080E4174 @ =gSharedMem + 0x18000
_080E415A:
adds r1, r4, r0
adds r0, r5, 0
@@ -53118,7 +53118,7 @@ _080E415A:
pop {r0}
bx r0
.align 2, 0
-_080E4174: .4byte 0x02018000
+_080E4174: .4byte gSharedMem + 0x18000
thumb_func_end sub_80E40D0
thumb_func_start sub_80E4178
@@ -53197,7 +53197,7 @@ sub_80E4200: @ 80E4200
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
- bl IsContest
+ bl NotInBattle
lsls r0, 24
lsrs r1, r0, 24
cmp r1, 0
@@ -53326,7 +53326,7 @@ sub_80E4300: @ 80E4300
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _080E4318
@@ -53342,7 +53342,7 @@ _080E4318:
ldr r1, _080E4358 @ =gBattleAnimBankAttacker
ldrb r0, [r1]
lsls r0, 2
- ldr r2, _080E435C @ =0x02017800
+ ldr r2, _080E435C @ =gSharedMem + 0x17800
adds r0, r2
ldr r0, [r0]
lsls r0, 31
@@ -53368,7 +53368,7 @@ _080E434E:
.align 2, 0
_080E4354: .4byte gTasks
_080E4358: .4byte gBattleAnimBankAttacker
-_080E435C: .4byte 0x02017800
+_080E435C: .4byte gSharedMem + 0x17800
_080E4360: .4byte sub_80E4368
_080E4364: .4byte gAnimVisualTaskCount
thumb_func_end sub_80E4300
@@ -53388,7 +53388,7 @@ sub_80E4368: @ 80E4368
ldr r0, _080E43B4 @ =gBattleAnimBankAttacker
ldrb r3, [r0]
lsls r3, 2
- ldr r0, _080E43B8 @ =0x02017800
+ ldr r0, _080E43B8 @ =gSharedMem + 0x17800
adds r3, r0
ldr r1, _080E43BC @ =gTasks
lsls r0, r4, 2
@@ -53413,7 +53413,7 @@ _080E43A8:
.align 2, 0
_080E43B0: .4byte gBattleAnimArgs
_080E43B4: .4byte gBattleAnimBankAttacker
-_080E43B8: .4byte 0x02017800
+_080E43B8: .4byte gSharedMem + 0x17800
_080E43BC: .4byte gTasks
thumb_func_end sub_80E4368
@@ -54615,7 +54615,7 @@ _080E4D1C:
adds r0, 0x1
strh r0, [r1, 0x8]
ldr r5, _080E4D8C @ =gSprites
- ldr r4, _080E4D90 @ =0x02000000
+ ldr r4, _080E4D90 @ =gSharedMem
ldr r3, _080E4D94 @ =0x0001608a
adds r6, r4, r3
ldrb r0, [r6]
@@ -54668,7 +54668,7 @@ _080E4D1C:
b _080E4E94
.align 2, 0
_080E4D8C: .4byte gSprites
-_080E4D90: .4byte 0x02000000
+_080E4D90: .4byte gSharedMem
_080E4D94: .4byte 0x0001608a
_080E4D98: .4byte sub_800FE20
_080E4D9C: .4byte 0x0001608b
diff --git a/asm/battle_anim_81258BC.s b/asm/battle_anim_81258BC.s
index 69b95b703..d59c2f1ca 100644
--- a/asm/battle_anim_81258BC.s
+++ b/asm/battle_anim_81258BC.s
@@ -377,7 +377,7 @@ sub_812B18C: @ 812B18C
bl sub_8076F98
lsls r0, 24
lsrs r6, r0, 24
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _0812B1CC
@@ -386,12 +386,12 @@ sub_812B18C: @ 812B18C
ldrsh r0, [r0, r1]
cmp r0, 0
bne _0812B1C4
- ldr r0, _0812B1C0 @ =0x02019348
+ ldr r0, _0812B1C0 @ =gSharedMem + 0x19348
ldrh r4, [r0]
b _0812B272
.align 2, 0
_0812B1BC: .4byte gBattleAnimArgs
-_0812B1C0: .4byte 0x02019348
+_0812B1C0: .4byte gSharedMem + 0x19348
_0812B1C4:
adds r0, r5, 0
bl DestroyAnimVisualTask
@@ -524,14 +524,14 @@ sub_812B2B8: @ 812B2B8
bl sub_8076F98
lsls r0, 24
lsrs r4, r0, 24
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _0812B2DC
- ldr r0, _0812B2D8 @ =0x02019348
+ ldr r0, _0812B2D8 @ =gSharedMem + 0x19348
b _0812B2E6
.align 2, 0
-_0812B2D8: .4byte 0x02019348
+_0812B2D8: .4byte gSharedMem + 0x19348
_0812B2DC:
ldr r1, _0812B304 @ =gUnknown_0202F7CA
ldr r0, _0812B308 @ =gBattleAnimBankAttacker
diff --git a/asm/battle_anim_812C144.s b/asm/battle_anim_812C144.s
index 4562ad2f5..cdf70f483 100644
--- a/asm/battle_anim_812C144.s
+++ b/asm/battle_anim_812C144.s
@@ -241,7 +241,7 @@ sub_812C2BC: @ 812C2BC
lsls r1, 23
adds r0, r1
lsrs r4, r0, 16
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _0812C31A
@@ -954,7 +954,7 @@ sub_812C848: @ 812C848
ldrsh r1, [r5, r2]
adds r0, r4, 0
bl sub_807867C
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _0812C89C
@@ -1473,7 +1473,7 @@ sub_812CC44: @ 812CC44
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _0812CC7A
@@ -1518,7 +1518,7 @@ sub_812CCA8: @ 812CCA8
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _0812CCCA
@@ -3125,7 +3125,7 @@ _0812D8C4:
ldrb r1, [r5]
mov r0, sp
bl sub_8078954
- bl IsContest
+ bl NotInBattle
lsls r0, 24
mov r9, r4
cmp r0, 0
@@ -3159,11 +3159,11 @@ _0812D906:
ldr r1, _0812D9DC @ =0x84000200
str r1, [r0, 0x8]
ldr r0, [r0, 0x8]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _0812DA20
- ldr r5, _0812D9E0 @ =0x02019348
+ ldr r5, _0812D9E0 @ =gSharedMem + 0x19348
ldrh r0, [r5]
bl sub_80AEB1C
adds r4, r0, 0
@@ -3221,7 +3221,7 @@ _0812D98E:
cmp r5, 0x7
ble _0812D986
_0812D9A2:
- ldr r0, _0812D9E0 @ =0x02019348
+ ldr r0, _0812D9E0 @ =gSharedMem + 0x19348
ldrh r0, [r0, 0x2]
bl sub_80AEB1C
lsls r0, 24
@@ -3247,7 +3247,7 @@ _0812D9D0: .4byte gBattleMonForms
_0812D9D4: .4byte gBattleAnimBankAttacker
_0812D9D8: .4byte 0x040000d4
_0812D9DC: .4byte 0x84000200
-_0812D9E0: .4byte 0x02019348
+_0812D9E0: .4byte gSharedMem + 0x19348
_0812D9E4: .4byte gSprites
_0812D9E8: .4byte gObjectBankIDs
_0812D9EC: .4byte gSpriteAffineAnimTable_81E7C18
@@ -3350,7 +3350,7 @@ _0812DAAE:
negs r0, r0
ands r0, r1
strb r0, [r2]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _0812DAF4
@@ -3373,7 +3373,7 @@ _0812DAAE:
bne _0812DAF4
ldrb r0, [r4]
lsls r1, r0, 2
- ldr r2, _0812DB14 @ =0x02017800
+ ldr r2, _0812DB14 @ =gSharedMem + 0x17800
adds r1, r2
ldrh r1, [r1, 0x2]
bl sub_8032984
@@ -3392,7 +3392,7 @@ _0812DAFA:
_0812DB08: .4byte REG_BG2CNT
_0812DB0C: .4byte gBattleAnimBankAttacker
_0812DB10: .4byte gTasks
-_0812DB14: .4byte 0x02017800
+_0812DB14: .4byte gSharedMem + 0x17800
thumb_func_end sub_812D7E8
thumb_func_start c3_80DFBE4
@@ -3507,7 +3507,7 @@ _0812DBD0:
movs r1, 0x1
orrs r0, r1
strb r0, [r4]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _0812DC12
@@ -3542,7 +3542,7 @@ _0812DC12:
lsls r1, 4
movs r2, 0x20
bl LoadCompressedPalette
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _0812DC9C
@@ -3786,7 +3786,7 @@ _0812DE0C:
ldr r1, _0812DE98 @ =0x85000200
str r1, [r0, 0x8]
ldr r0, [r0, 0x8]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _0812DE5A
@@ -4226,7 +4226,7 @@ _0812E194:
movs r1, 0x1
orrs r0, r1
strb r0, [r4]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _0812E1D4
@@ -4261,7 +4261,7 @@ _0812E1D4:
lsls r1, 4
movs r2, 0x20
bl LoadCompressedPalette
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _0812E260
@@ -4529,7 +4529,7 @@ _0812E420:
ldr r0, _0812E484 @ =0x85000200
str r0, [r1, 0x8]
ldr r0, [r1, 0x8]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _0812E450
@@ -5513,7 +5513,7 @@ _0812EBC2:
bl obj_id_set_rotscale
adds r0, r5, 0
bl sub_8079A64
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _0812EBE8
@@ -6047,13 +6047,13 @@ sub_812EFC8: @ 812EFC8
str r0, [sp, 0x10]
movs r0, 0
bl GetAnimBankSpriteId
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _0812F004
movs r0, 0x1
str r0, [sp, 0x14]
- ldr r0, _0812F000 @ =0x02019348
+ ldr r0, _0812F000 @ =gSharedMem + 0x19348
ldr r1, [r0, 0x10]
mov r9, r1
ldr r2, [r0, 0xC]
@@ -6062,7 +6062,7 @@ sub_812EFC8: @ 812EFC8
movs r3, 0x14
b _0812F13C
.align 2, 0
-_0812F000: .4byte 0x02019348
+_0812F000: .4byte gSharedMem + 0x19348
_0812F004:
ldr r0, _0812F070 @ =gBattleAnimBankAttacker
ldrb r0, [r0]
@@ -6096,7 +6096,7 @@ _0812F004:
mov r8, r0
ldrb r2, [r4]
lsls r1, r2, 2
- ldr r0, _0812F080 @ =0x02017800
+ ldr r0, _0812F080 @ =gSharedMem + 0x17800
adds r1, r0
ldrh r0, [r1, 0x2]
cmp r0, 0
@@ -6118,7 +6118,7 @@ _0812F070: .4byte gBattleAnimBankAttacker
_0812F074: .4byte gBattlePartyID
_0812F078: .4byte gBattleAnimBankTarget
_0812F07C: .4byte gPlayerParty
-_0812F080: .4byte 0x02017800
+_0812F080: .4byte gSharedMem + 0x17800
_0812F084:
ldrb r0, [r4]
lsls r0, 1
@@ -6168,7 +6168,7 @@ _0812F0AC:
mov r8, r0
ldrb r2, [r4]
lsls r1, r2, 2
- ldr r0, _0812F118 @ =0x02017800
+ ldr r0, _0812F118 @ =gSharedMem + 0x17800
adds r1, r0
ldrh r0, [r1, 0x2]
cmp r0, 0
@@ -6190,7 +6190,7 @@ _0812F0AC:
_0812F10C: .4byte gBattlePartyID
_0812F110: .4byte gBattleAnimBankTarget
_0812F114: .4byte gEnemyParty
-_0812F118: .4byte 0x02017800
+_0812F118: .4byte gSharedMem + 0x17800
_0812F11C: .4byte gPlayerParty
_0812F120:
ldrb r0, [r4]
@@ -8382,7 +8382,7 @@ sub_81301EC: @ 81301EC
lsls r1, 3
ldr r0, _08130218 @ =gTasks
adds r6, r1, r0
- bl IsContest
+ bl NotInBattle
lsls r0, 24
lsrs r1, r0, 24
cmp r1, 0
@@ -9863,7 +9863,7 @@ sub_8130D20: @ 8130D20
lsls r0, 24
lsrs r0, 24
strh r0, [r6, 0x26]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _08130DA8
@@ -10557,7 +10557,7 @@ sub_8131264: @ 8131264
lsls r0, 24
cmp r0, 0
beq _08131290
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _081312A8
@@ -10690,7 +10690,7 @@ _08131384:
ldrb r0, [r4]
movs r1, 0
bl refresh_graphics_maybe
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _081313C6
@@ -11140,7 +11140,7 @@ sub_81316F8: @ 81316F8
lsls r0, 24
lsrs r4, r0, 24
mov r10, r4
- bl IsContest
+ bl NotInBattle
lsls r0, 24
lsrs r5, r0, 24
cmp r5, 0
@@ -11560,11 +11560,11 @@ _08131A2E:
_08131A3C: .4byte gSprites
_08131A40: .4byte gTasks
_08131A44:
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
beq _08131A74
- ldr r0, _08131A6C @ =0x02019348
+ ldr r0, _08131A6C @ =gSharedMem + 0x19348
ldr r2, [r0, 0x8]
mov r10, r2
ldr r3, [r0, 0xC]
@@ -11578,7 +11578,7 @@ _08131A44:
movs r7, 0
b _08131B92
.align 2, 0
-_08131A6C: .4byte 0x02019348
+_08131A6C: .4byte gSharedMem + 0x19348
_08131A70: .4byte gBattleAnimBankAttacker
_08131A74:
ldr r4, _08131AD4 @ =gBattleAnimBankAttacker
@@ -11610,7 +11610,7 @@ _08131A74:
mov r9, r0
ldrb r2, [r4]
lsls r1, r2, 2
- ldr r0, _08131AE0 @ =0x02017800
+ ldr r0, _08131AE0 @ =gSharedMem + 0x17800
adds r1, r0
ldrh r0, [r1, 0x2]
cmp r0, 0
@@ -11629,7 +11629,7 @@ _08131A74:
_08131AD4: .4byte gBattleAnimBankAttacker
_08131AD8: .4byte gBattlePartyID
_08131ADC: .4byte gPlayerParty
-_08131AE0: .4byte 0x02017800
+_08131AE0: .4byte gSharedMem + 0x17800
_08131AE4:
ldrh r5, [r1, 0x2]
_08131AE6:
@@ -11677,7 +11677,7 @@ _08131B10:
mov r9, r0
ldrb r2, [r4]
lsls r1, r2, 2
- ldr r0, _08131B6C @ =0x02017800
+ ldr r0, _08131B6C @ =gSharedMem + 0x17800
adds r1, r0
ldrh r0, [r1, 0x2]
cmp r0, 0
@@ -11695,7 +11695,7 @@ _08131B10:
.align 2, 0
_08131B64: .4byte gBattlePartyID
_08131B68: .4byte gEnemyParty
-_08131B6C: .4byte 0x02017800
+_08131B6C: .4byte gSharedMem + 0x17800
_08131B70:
ldrh r5, [r1, 0x2]
_08131B72:
@@ -11740,7 +11740,7 @@ _08131B94:
ldr r0, _08131C10 @ =gBattleAnimBankAttacker
ldrb r0, [r0]
lsls r0, 2
- ldr r1, _08131C14 @ =0x02017800
+ ldr r1, _08131C14 @ =gSharedMem + 0x17800
adds r0, r1
ldrh r0, [r0, 0x2]
cmp r0, 0
@@ -11775,7 +11775,7 @@ _08131C04: .4byte gSprites
_08131C08: .4byte 0x0000ffe0
_08131C0C: .4byte gBattleAnimBankTarget
_08131C10: .4byte gBattleAnimBankAttacker
-_08131C14: .4byte 0x02017800
+_08131C14: .4byte gSharedMem + 0x17800
_08131C18: .4byte 0x00007fff
_08131C1C: .4byte gTasks
_08131C20:
@@ -12151,7 +12151,7 @@ _08131ECA:
lsrs r0, 24
cmp r0, 0x1
bne _08131FF4
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _08131FF4
diff --git a/asm/battle_anim_813F0F4.s b/asm/battle_anim_813F0F4.s
index ab8a222df..ef30b0458 100644
--- a/asm/battle_anim_813F0F4.s
+++ b/asm/battle_anim_813F0F4.s
@@ -368,7 +368,7 @@ _0813F3AC:
strh r1, [r0]
adds r0, 0x2
strh r1, [r0]
- bl IsContest
+ bl NotInBattle
lsls r0, 24
cmp r0, 0
bne _0813F406
@@ -1105,7 +1105,7 @@ sub_813F9E0: @ 813F9E0
push {lr}
lsls r0, 24
lsrs r2, r0, 24
- ldr r0, _0813F9F4 @ =0x02017840
+ ldr r0, _0813F9F4 @ =gSharedMem + 0x17840
ldrb r0, [r0, 0x8]
cmp r0, 0x5
bne _0813FA00
@@ -1113,7 +1113,7 @@ sub_813F9E0: @ 813F9E0
ldr r0, _0813F9FC @ =0x0000ffff
b _0813FA04
.align 2, 0
-_0813F9F4: .4byte 0x02017840
+_0813F9F4: .4byte gSharedMem + 0x17840
_0813F9F8: .4byte gBattleAnimArgs
_0813F9FC: .4byte 0x0000ffff
_0813FA00:
@@ -1256,7 +1256,7 @@ sub_813FA94: @ 813FA94
adds r4, r0
ldr r0, _0813FB68 @ =sub_813FD90
str r0, [r4]
- ldr r3, _0813FB6C @ =0x02017840
+ ldr r3, _0813FB6C @ =gSharedMem + 0x17840
ldr r1, _0813FB70 @ =gObjectBankIDs
mov r2, r8
ldrb r0, [r2]
@@ -1299,7 +1299,7 @@ _0813FB5C: .4byte gBallSpriteTemplates
_0813FB60: .4byte gSprites
_0813FB64: .4byte gBattleAnimBankTarget
_0813FB68: .4byte sub_813FD90
-_0813FB6C: .4byte 0x02017840
+_0813FB6C: .4byte gSharedMem + 0x17840
_0813FB70: .4byte gObjectBankIDs
_0813FB74: .4byte gTasks
_0813FB78: .4byte sub_813FB7C
@@ -1593,7 +1593,7 @@ sub_813FDC0: @ 813FDC0
lsls r0, 24
cmp r0, 0
beq _0813FE5A
- ldr r0, _0813FDE0 @ =0x02017840
+ ldr r0, _0813FDE0 @ =gSharedMem + 0x17840
ldrb r0, [r0, 0x8]
cmp r0, 0x5
bne _0813FDE8
@@ -1601,7 +1601,7 @@ sub_813FDC0: @ 813FDC0
str r0, [r4, 0x1C]
b _0813FE5A
.align 2, 0
-_0813FDE0: .4byte 0x02017840
+_0813FDE0: .4byte gSharedMem + 0x17840
_0813FDE4: .4byte sub_81407B8
_0813FDE8:
adds r0, r4, 0
@@ -2018,7 +2018,7 @@ _0814010E:
adds r0, r1
strh r0, [r4, 0x22]
strh r5, [r4, 0x26]
- ldr r0, _0814013C @ =0x02017840
+ ldr r0, _0814013C @ =gSharedMem + 0x17840
ldrb r0, [r0, 0x8]
cmp r0, 0
bne _08140144
@@ -2028,7 +2028,7 @@ _0814010E:
b _0814014E
.align 2, 0
_08140138: .4byte 0xffffff00
-_0814013C: .4byte 0x02017840
+_0814013C: .4byte gSharedMem + 0x17840
_08140140: .4byte sub_8140410
_08140144:
ldr r0, _08140154 @ =sub_8140158
@@ -2066,7 +2066,7 @@ sub_8140158: @ 8140158
adds r0, r4, 0
movs r1, 0x1
bl StartSpriteAffineAnim
- ldr r0, _08140198 @ =0x02017840
+ ldr r0, _08140198 @ =gSharedMem + 0x17840
strh r5, [r0, 0xC]
ldr r0, _0814019C @ =sub_81401A0
str r0, [r4, 0x1C]
@@ -2077,7 +2077,7 @@ _08140190:
pop {r0}
bx r0
.align 2, 0
-_08140198: .4byte 0x02017840
+_08140198: .4byte gSharedMem + 0x17840
_0814019C: .4byte sub_81401A0
thumb_func_end sub_8140158
@@ -2109,7 +2109,7 @@ _081401C0:
.4byte _08140368
.4byte _081403C4
_081401DC:
- ldr r0, _081401F8 @ =0x02017840
+ ldr r0, _081401F8 @ =gSharedMem + 0x17840
ldrh r2, [r0, 0xC]
movs r3, 0xC
ldrsh r1, [r0, r3]
@@ -2124,7 +2124,7 @@ _081401DC:
ands r0, r2
b _08140200
.align 2, 0
-_081401F8: .4byte 0x02017840
+_081401F8: .4byte gSharedMem + 0x17840
_081401FC:
adds r0, r2, 0
adds r0, 0xB0
@@ -2185,7 +2185,7 @@ _08140262:
bl ChangeSpriteAffineAnim
b _0814040A
_0814026C:
- ldr r0, _08140288 @ =0x02017840
+ ldr r0, _08140288 @ =gSharedMem + 0x17840
ldrh r2, [r0, 0xC]
movs r3, 0xC
ldrsh r1, [r0, r3]
@@ -2200,7 +2200,7 @@ _0814026C:
ands r0, r2
b _08140290
.align 2, 0
-_08140288: .4byte 0x02017840
+_08140288: .4byte gSharedMem + 0x17840
_0814028C:
adds r0, r2, 0
adds r0, 0xB0
@@ -2273,7 +2273,7 @@ _08140308:
movs r1, 0x1
bl ChangeSpriteAffineAnim
_08140310:
- ldr r0, _0814032C @ =0x02017840
+ ldr r0, _0814032C @ =gSharedMem + 0x17840
ldrh r2, [r0, 0xC]
movs r3, 0xC
ldrsh r1, [r0, r3]
@@ -2288,7 +2288,7 @@ _08140310:
ands r0, r2
b _08140334
.align 2, 0
-_0814032C: .4byte 0x02017840
+_0814032C: .4byte gSharedMem + 0x17840
_08140330:
adds r0, r2, 0
adds r0, 0xB0
@@ -2328,7 +2328,7 @@ _08140368:
strh r0, [r4, 0x34]
lsls r0, 16
asrs r1, r0, 24
- ldr r0, _08140394 @ =0x02017840
+ ldr r0, _08140394 @ =gSharedMem + 0x17840
ldrb r0, [r0, 0x8]
cmp r1, r0
bne _0814039C
@@ -2342,7 +2342,7 @@ _08140368:
str r0, [r4, 0x1C]
b _0814040A
.align 2, 0
-_08140394: .4byte 0x02017840
+_08140394: .4byte gSharedMem + 0x17840
_08140398: .4byte sub_8140410
_0814039C:
cmp r0, 0x4
@@ -2842,7 +2842,7 @@ _08140734:
adds r2, r0
lsls r2, 2
adds r2, r4
- ldr r0, _081407AC @ =0x02017840
+ ldr r0, _081407AC @ =gSharedMem + 0x17840
ldrb r1, [r0, 0x9]
lsls r1, 30
adds r2, 0x3E
@@ -2870,7 +2870,7 @@ _0814079C: .4byte 0xfffffee0
_081407A0: .4byte gSprites
_081407A4: .4byte gObjectBankIDs
_081407A8: .4byte gBattleAnimBankTarget
-_081407AC: .4byte 0x02017840
+_081407AC: .4byte gSharedMem + 0x17840
_081407B0: .4byte sub_81405C8
_081407B4: .4byte gDoingBattleAnim
thumb_func_end sub_81406BC
@@ -3041,7 +3041,7 @@ _081408B6:
ands r0, r1
cmp r0, 0
beq _08140900
- ldr r1, _0814092C @ =0x02017840
+ ldr r1, _0814092C @ =gSharedMem + 0x17840
ldrb r0, [r1, 0xA]
adds r0, 0x1
strb r0, [r1, 0xA]
@@ -3062,7 +3062,7 @@ _0814091C: .4byte gUnknown_0840B384
_08140920: .4byte gTasks
_08140924: .4byte gMain
_08140928: .4byte 0x0000043d
-_0814092C: .4byte 0x02017840
+_0814092C: .4byte gSharedMem + 0x17840
thumb_func_end sub_814086C
thumb_func_start sub_8140930
@@ -4275,7 +4275,7 @@ _081412C0:
ldrsh r0, [r5, r1]
cmp r0, 0x1
bne _08141308
- ldr r1, _081412FC @ =0x02017840
+ ldr r1, _081412FC @ =gSharedMem + 0x17840
ldrb r0, [r1, 0xA]
subs r0, 0x1
strb r0, [r1, 0xA]
@@ -4300,7 +4300,7 @@ _081412F2:
bl DestroySprite
b _0814130E
.align 2, 0
-_081412FC: .4byte 0x02017840
+_081412FC: .4byte gSharedMem + 0x17840
_08141300: .4byte gUnknown_0840B258
_08141304: .4byte gUnknown_0840B2B8
_08141308:
@@ -4934,7 +4934,7 @@ sub_81417D8: @ 81417D8
ldr r1, _08141800 @ =gBattleAnimBankAttacker
ldrb r1, [r1]
lsls r1, 2
- ldr r2, _08141804 @ =0x02017800
+ ldr r2, _08141804 @ =gSharedMem + 0x17800
adds r1, r2
ldr r1, [r1]
lsls r1, 29
@@ -4946,7 +4946,7 @@ sub_81417D8: @ 81417D8
.align 2, 0
_081417FC: .4byte gBattleAnimArgs
_08141800: .4byte gBattleAnimBankAttacker
-_08141804: .4byte 0x02017800
+_08141804: .4byte gSharedMem + 0x17800
thumb_func_end sub_81417D8
thumb_func_start sub_8141808
@@ -4979,7 +4979,7 @@ sub_8141828: @ 8141828
lsls r0, r6, 1
adds r0, r6
lsls r0, 2
- ldr r1, _081418E0 @ =0x02017810
+ ldr r1, _081418E0 @ =gSharedMem + 0x17810
adds r0, r1
ldrb r1, [r0]
movs r2, 0x80
@@ -5054,7 +5054,7 @@ _081418A2:
strh r0, [r1, 0xA]
b _0814190E
.align 2, 0
-_081418E0: .4byte 0x02017810
+_081418E0: .4byte gSharedMem + 0x17810
_081418E4: .4byte 0x0000ffff
_081418E8: .4byte 0x000027f9
_081418EC: .4byte gBattleAnimPicTable + (233 * 8)
@@ -5065,7 +5065,7 @@ _081418FC:
lsls r0, r6, 1
adds r0, r6
lsls r0, 2
- ldr r1, _08141918 @ =0x02017810
+ ldr r1, _08141918 @ =gSharedMem + 0x17810
adds r0, r1
ldrb r1, [r0, 0x1]
movs r2, 0x1
@@ -5078,7 +5078,7 @@ _0814190E:
pop {r0}
bx r0
.align 2, 0
-_08141918: .4byte 0x02017810
+_08141918: .4byte gSharedMem + 0x17810
thumb_func_end sub_8141828
thumb_func_start sub_814191C
@@ -5105,7 +5105,7 @@ sub_814191C: @ 814191C
.align 2, 0
_08141944: .4byte gTasks
_08141948:
- ldr r0, _08141998 @ =0x02017840
+ ldr r0, _08141998 @ =gSharedMem + 0x17840
ldrb r0, [r0, 0xA]
cmp r0, 0
beq _08141952
@@ -5145,7 +5145,7 @@ _08141966:
lsrs r5, r0, 24
b _08141A02
.align 2, 0
-_08141998: .4byte 0x02017840
+_08141998: .4byte gSharedMem + 0x17840
_0814199C: .4byte gBattleAnimSpriteTemplate_84024E8
_081419A0:
cmp r0, 0
@@ -5320,7 +5320,7 @@ sub_8141AD8: @ 8141AD8
lsls r0, r1, 1
adds r0, r1
lsls r0, 2
- ldr r1, _08141B1C @ =0x02017810
+ ldr r1, _08141B1C @ =gSharedMem + 0x17810
adds r0, r1
ldrb r1, [r0, 0x1]
movs r2, 0x1
@@ -5334,7 +5334,7 @@ _08141B14:
bx r0
.align 2, 0
_08141B18: .4byte gTasks
-_08141B1C: .4byte 0x02017810
+_08141B1C: .4byte gSharedMem + 0x17810
thumb_func_end sub_8141AD8
thumb_func_start sub_8141B20
@@ -5667,7 +5667,7 @@ sub_8141DAC: @ 8141DAC
push {lr}
lsls r0, 24
lsrs r2, r0, 24
- ldr r0, _08141DC0 @ =0x02017840
+ ldr r0, _08141DC0 @ =gSharedMem + 0x17840
ldrh r1, [r0]
cmp r1, 0x53
bne _08141DC8
@@ -5675,7 +5675,7 @@ sub_8141DAC: @ 8141DAC
movs r0, 0x1
b _08141E00
.align 2, 0
-_08141DC0: .4byte 0x02017840
+_08141DC0: .4byte gSharedMem + 0x17840
_08141DC4: .4byte gBattleAnimArgs
_08141DC8:
cmp r1, 0xFA
@@ -5722,7 +5722,7 @@ sub_8141E10: @ 8141E10
lsls r0, 24
lsrs r0, 24
ldr r2, _08141E2C @ =gBattleAnimBankAttacker
- ldr r1, _08141E30 @ =0x02017840
+ ldr r1, _08141E30 @ =gSharedMem + 0x17840
ldrh r1, [r1]
strb r1, [r2]
ldr r2, _08141E34 @ =gBattleAnimBankTarget
@@ -5733,7 +5733,7 @@ sub_8141E10: @ 8141E10
bx r0
.align 2, 0
_08141E2C: .4byte gBattleAnimBankAttacker
-_08141E30: .4byte 0x02017840
+_08141E30: .4byte gSharedMem + 0x17840
_08141E34: .4byte gBattleAnimBankTarget
thumb_func_end sub_8141E10
diff --git a/asm/cable_car.s b/asm/cable_car.s
index 385cd404d..8283a58aa 100644
--- a/asm/cable_car.s
+++ b/asm/cable_car.s
@@ -154,7 +154,7 @@ _081232C0:
str r3, [r2, 0x8]
ldr r0, [r2, 0x8]
ldr r1, _08123370 @ =gUnknown_02039274
- ldr r0, _08123374 @ =0x02017000
+ ldr r0, _08123374 @ =gSharedMem + 0x17000
str r0, [r1]
adds r3, r0, 0
ldr r5, _08123378 @ =0x000010fc
@@ -195,7 +195,7 @@ _08123338:
_08123368: .4byte 0x040000d4
_0812336C: .4byte 0x81000800
_08123370: .4byte gUnknown_02039274
-_08123374: .4byte 0x02017000
+_08123374: .4byte gSharedMem + 0x17000
_08123378: .4byte 0x000010fc
_0812337C: .4byte gMain
_08123380: .4byte 0x0000043c
@@ -254,7 +254,7 @@ _081233EC:
ldr r0, _08123458 @ =gUnknown_08401D18
bl LoadSpritePalettes
ldr r0, _0812345C @ =gCableCarMtChimneyTilemap
- ldr r4, _08123460 @ =0x02019000
+ ldr r4, _08123460 @ =gSharedMem + 0x19000
adds r1, r4, 0
bl LZDecompressWram
ldr r0, _08123464 @ =gCableCarTreeTilemap
@@ -290,7 +290,7 @@ _081233EC:
_08123454: .4byte gUnknown_08401CF8
_08123458: .4byte gUnknown_08401D18
_0812345C: .4byte gCableCarMtChimneyTilemap
-_08123460: .4byte 0x02019000
+_08123460: .4byte gSharedMem + 0x19000
_08123464: .4byte gCableCarTreeTilemap
_08123468: .4byte gCableCarMountainTilemap
_0812346C: .4byte gCableCarPylonStemTilemap
@@ -365,7 +365,7 @@ _081234FC: .4byte gUnknown_08396FC4
_08123500: .4byte 0x0000043c
_08123504:
ldr r0, _08123578 @ =0x0600e800
- ldr r5, _0812357C @ =0x02019168
+ ldr r5, _0812357C @ =gSharedMem + 0x19168
movs r1, 0x20
str r1, [sp]
movs r1, 0xF
@@ -420,7 +420,7 @@ _08123504:
b _0812370C
.align 2, 0
_08123578: .4byte 0x0600e800
-_0812357C: .4byte 0x02019168
+_0812357C: .4byte gSharedMem + 0x19168
_08123580: .4byte 0x0600f000
_08123584: .4byte gUnknown_02039274
_08123588: .4byte 0x000008fc
@@ -435,7 +435,7 @@ _08123598:
mov r8, r0
ldr r0, [r0]
adds r0, 0xFC
- ldr r4, _0812366C @ =0x02019090
+ ldr r4, _0812366C @ =gSharedMem + 0x19090
movs r6, 0xC
str r6, [sp]
movs r5, 0x3
@@ -523,7 +523,7 @@ _08123598:
.align 2, 0
_08123664: .4byte gSpecialVar_0x8004
_08123668: .4byte gUnknown_02039274
-_0812366C: .4byte 0x02019090
+_0812366C: .4byte gSharedMem + 0x19090
_08123670: .4byte gMain
_08123674: .4byte 0x0000043c
_08123678:
@@ -647,7 +647,7 @@ _08123766:
bl ResetTasks
bl ResetSpriteData
bl ResetPaletteFade
- ldr r2, _0812385C @ =0x02000000
+ ldr r2, _0812385C @ =gSharedMem
movs r3, 0x80
lsls r3, 10
movs r5, 0
@@ -755,7 +755,7 @@ _081237E0:
.align 2, 0
_08123854: .4byte gSpriteCoordOffsetX
_08123858: .4byte gUnknown_08396FC4
-_0812385C: .4byte 0x02000000
+_0812385C: .4byte gSharedMem
_08123860: .4byte 0x040000d4
_08123864: .4byte 0x85000400
_08123868: .4byte gUnknown_02039274
@@ -1059,7 +1059,7 @@ _08123A90:
bl sub_8124F08
ldr r0, [r6]
adds r0, r5
- ldr r1, _08123AF0 @ =0x020199d8
+ ldr r1, _08123AF0 @ =gSharedMem + 0x199D8
str r4, [sp]
movs r2, 0x1E
str r2, [sp, 0x4]
@@ -1092,7 +1092,7 @@ _08123AD6:
.align 2, 0
_08123AE8: .4byte 0x000008fc
_08123AEC: .4byte gCableCarPylonHookTilemapEntries
-_08123AF0: .4byte 0x020199d8
+_08123AF0: .4byte gSharedMem + 0x199D8
_08123AF4: .4byte gSpriteCoordOffsetX
thumb_func_end sub_81239E4
@@ -1150,7 +1150,7 @@ _08123B50:
bne _08123BEE
ldr r1, _08123B70 @ =0x000008fc
adds r0, r3, r1
- ldr r1, _08123B74 @ =0x020199d8
+ ldr r1, _08123B74 @ =gSharedMem + 0x199D8
movs r2, 0x2
str r2, [sp]
movs r2, 0x1E
@@ -1161,7 +1161,7 @@ _08123B50:
b _08123BEE
.align 2, 0
_08123B70: .4byte 0x000008fc
-_08123B74: .4byte 0x020199d8
+_08123B74: .4byte gSharedMem + 0x199D8
_08123B78:
ldr r5, _08123BAC @ =0x000008fc
adds r0, r3, r5
@@ -2014,7 +2014,7 @@ _08124258:
ldr r7, _081243EC @ =gUnknown_02039274
ldr r0, [r7]
adds r0, 0xFC
- ldr r1, _081243F0 @ =0x02019048
+ ldr r1, _081243F0 @ =gSharedMem + 0x19048
movs r2, 0xC
str r2, [sp]
movs r2, 0x3
@@ -2210,7 +2210,7 @@ _08124322:
b _08124428
.align 2, 0
_081243EC: .4byte gUnknown_02039274
-_081243F0: .4byte 0x02019048
+_081243F0: .4byte gSharedMem + 0x19048
_081243F4: .4byte gSaveBlock2
_081243F8: .4byte sub_8123D98
_081243FC: .4byte gSprites
@@ -2322,7 +2322,7 @@ _081244B0:
lsrs r0, 24
mov r12, r0
lsls r1, 1
- ldr r7, _08124534 @ =0x02019000
+ ldr r7, _08124534 @ =gSharedMem + 0x19000
adds r1, r7
ldrh r0, [r1]
strh r0, [r2]
@@ -2331,14 +2331,14 @@ _081244B0:
adds r1, r4, r1
mov r7, r9
lsls r2, r7, 1
- ldr r7, _08124534 @ =0x02019000
+ ldr r7, _08124534 @ =gSharedMem + 0x19000
adds r0, r2, r7
ldrh r0, [r0]
strh r0, [r1]
ldr r0, [sp, 0x4]
adds r3, r0
adds r4, r3
- ldr r1, _08124538 @ =0x02019048
+ ldr r1, _08124538 @ =gSharedMem + 0x19048
adds r2, r1
ldrh r0, [r2]
strh r0, [r4]
@@ -2372,8 +2372,8 @@ _081244B0:
bx r0
.align 2, 0
_08124530: .4byte gUnknown_02039274
-_08124534: .4byte 0x02019000
-_08124538: .4byte 0x02019048
+_08124534: .4byte gSharedMem + 0x19000
+_08124538: .4byte gSharedMem + 0x19048
thumb_func_end sub_812446C
thumb_func_start sub_812453C
diff --git a/asm/contest.s b/asm/contest.s
index c5dfe3e2e..ad3b4fba9 100644
--- a/asm/contest.s
+++ b/asm/contest.s
@@ -148,7 +148,7 @@ sub_80AB2AC: @ 80AB2AC
movs r4, 0
movs r5, 0xA0
_080AB2DC:
- ldr r0, _080AB318 @ =0x02018004
+ ldr r0, _080AB318 @ =gSharedMem + 0x18004
adds r0, r5, r0
ldr r1, _080AB31C @ =gUnknown_02038696
adds r1, r4, r1
@@ -171,7 +171,7 @@ _080AB308: .4byte 0x06002000
_080AB30C: .4byte gUnknown_08D1725C
_080AB310: .4byte 0x0600d000
_080AB314: .4byte gUnknown_08D17144
-_080AB318: .4byte 0x02018004
+_080AB318: .4byte gSharedMem + 0x18004
_080AB31C: .4byte gUnknown_02038696
thumb_func_end sub_80AB2AC
@@ -234,7 +234,7 @@ _080AB394: .4byte 0x00007e3f
thumb_func_start sub_80AB398
sub_80AB398: @ 80AB398
push {r4-r6,lr}
- ldr r4, _080AB468 @ =0x02019204
+ ldr r4, _080AB468 @ =gSharedMem + 0x19204
adds r0, r4, 0
movs r1, 0
movs r2, 0x5C
@@ -250,7 +250,7 @@ _080AB3AC:
adds r5, 0x1
cmp r5, 0x3
ble _080AB3AC
- ldr r4, _080AB46C @ =0x02019260
+ ldr r4, _080AB46C @ =gSharedMem + 0x19260
movs r5, 0x3
_080AB3BE:
adds r0, r4, 0
@@ -261,7 +261,7 @@ _080AB3BE:
subs r5, 0x1
cmp r5, 0
bge _080AB3BE
- ldr r4, _080AB470 @ =0x020192d0
+ ldr r4, _080AB470 @ =gSharedMem + 0x192D0
movs r6, 0x4
negs r6, r6
movs r3, 0xFF
@@ -335,9 +335,9 @@ _080AB448:
pop {r0}
bx r0
.align 2, 0
-_080AB468: .4byte 0x02019204
-_080AB46C: .4byte 0x02019260
-_080AB470: .4byte 0x020192d0
+_080AB468: .4byte gSharedMem + 0x19204
+_080AB46C: .4byte gSharedMem + 0x19260
+_080AB470: .4byte gSharedMem + 0x192D0
_080AB474: .4byte gIsLinkContest
_080AB478: .4byte gUnknown_02038696
thumb_func_end sub_80AB398
@@ -414,7 +414,7 @@ _080AB4E0:
ldr r1, _080AB544 @ =gReservedSpritePaletteCount
movs r0, 0x4
strb r0, [r1]
- ldr r0, _080AB548 @ =0x02000000
+ ldr r0, _080AB548 @ =gSharedMem
movs r1, 0xC0
lsls r1, 9
adds r0, r1
@@ -434,14 +434,14 @@ _080AB538: .4byte gPaletteFade
_080AB53C: .4byte 0x040000d4
_080AB540: .4byte 0x85000400
_080AB544: .4byte gReservedSpritePaletteCount
-_080AB548: .4byte 0x02000000
+_080AB548: .4byte gSharedMem
_080AB54C: .4byte gMain
_080AB550: .4byte 0x0000043c
_080AB554:
bl sub_80AB350
b _080AB56C
_080AB55A:
- ldr r5, _080AB574 @ =0x0201925d
+ ldr r5, _080AB574 @ =gSharedMem + 0x1925D
adds r0, r5, 0
bl sub_80AB70C
lsls r0, 24
@@ -455,7 +455,7 @@ _080AB56C:
strb r0, [r4]
b _080AB5AE
.align 2, 0
-_080AB574: .4byte 0x0201925d
+_080AB574: .4byte gSharedMem + 0x1925D
_080AB578:
bl sub_80B2184
ldr r0, _080AB5B8 @ =gUnknown_030042C0
@@ -475,7 +475,7 @@ _080AB578:
ldr r0, _080AB5C8 @ =sub_80AB5D4
movs r1, 0xA
bl CreateTask
- ldr r1, _080AB5CC @ =0x02019204
+ ldr r1, _080AB5CC @ =gSharedMem + 0x19204
strb r0, [r1, 0x8]
ldr r0, _080AB5D0 @ =sub_80ABAAC
bl SetMainCallback2
@@ -490,7 +490,7 @@ _080AB5BC: .4byte gUnknown_030041B4
_080AB5C0: .4byte gPaletteFade
_080AB5C4: .4byte sub_80ABAC4
_080AB5C8: .4byte sub_80AB5D4
-_080AB5CC: .4byte 0x02019204
+_080AB5CC: .4byte gSharedMem + 0x19204
_080AB5D0: .4byte sub_80ABAAC
thumb_func_end sub_80AB47C
@@ -630,7 +630,7 @@ sub_80AB6B4: @ 80AB6B4
bl GetMultiplayerId
adds r0, r4, 0
bl DestroyTask
- ldr r0, _080AB6FC @ =0x02019204
+ ldr r0, _080AB6FC @ =gSharedMem + 0x19204
ldrb r1, [r0, 0x8]
lsls r0, r1, 2
adds r0, r1
@@ -648,7 +648,7 @@ _080AB6F2:
bx r0
.align 2, 0
_080AB6F8: .4byte gTasks
-_080AB6FC: .4byte 0x02019204
+_080AB6FC: .4byte gSharedMem + 0x19204
_080AB700: .4byte sub_80AB960
_080AB704: .4byte gRngValue
_080AB708: .4byte gUnknown_03005D28
@@ -739,7 +739,7 @@ _080AB7B0:
ldr r4, _080AB7F0 @ =0x06002000
adds r1, r4, 0
bl LZDecompressVram
- ldr r3, _080AB7F4 @ =0x02015800
+ ldr r3, _080AB7F4 @ =gSharedMem + 0x15800
movs r5, 0x80
lsls r5, 6
ldr r1, _080AB7F8 @ =0x040000d4
@@ -769,7 +769,7 @@ _080AB7E6:
.align 2, 0
_080AB7EC: .4byte gContestAudienceGfx
_080AB7F0: .4byte 0x06002000
-_080AB7F4: .4byte 0x02015800
+_080AB7F4: .4byte gSharedMem + 0x15800
_080AB7F8: .4byte 0x040000d4
_080AB7FC: .4byte 0x84000400
_080AB800:
@@ -785,7 +785,7 @@ _080AB814:
ldr r4, _080AB834 @ =0x0600e000
adds r1, r4, 0
bl LZDecompressVram
- ldr r1, _080AB838 @ =0x02018a04
+ ldr r1, _080AB838 @ =gSharedMem + 0x18A04
ldr r0, _080AB83C @ =0x040000d4
str r4, [r0]
str r1, [r0, 0x4]
@@ -796,7 +796,7 @@ _080AB814:
.align 2, 0
_080AB830: .4byte gUnknown_08D17424
_080AB834: .4byte 0x0600e000
-_080AB838: .4byte 0x02018a04
+_080AB838: .4byte gSharedMem + 0x18A04
_080AB83C: .4byte 0x040000d4
_080AB840: .4byte 0x84000200
_080AB844:
@@ -836,7 +836,7 @@ _080AB844:
mov r0, sp
adds r2, r6, 0
bl CpuSet
- ldr r1, _080AB8C0 @ =0x02018004
+ ldr r1, _080AB8C0 @ =gSharedMem + 0x18004
ldr r0, _080AB8C4 @ =0x040000d4
mov r2, r8
str r2, [r0]
@@ -852,7 +852,7 @@ _080AB8B0: .4byte gPlttBufferUnfaded + 0x100
_080AB8B4: .4byte REG_BG0CNT
_080AB8B8: .4byte gContestPlayerMonIndex
_080AB8BC: .4byte 0xffffff00
-_080AB8C0: .4byte 0x02018004
+_080AB8C0: .4byte gSharedMem + 0x18004
_080AB8C4: .4byte 0x040000d4
_080AB8C8: .4byte 0x84000080
_080AB8CC:
@@ -860,7 +860,7 @@ _080AB8CC:
bl sub_80AFA5C
bl sub_80AEB30
bl sub_80AE8B4
- ldr r1, _080AB924 @ =0x02019204
+ ldr r1, _080AB924 @ =gSharedMem + 0x19204
movs r4, 0
strb r0, [r1, 0x12]
bl sub_80AFE30
@@ -890,7 +890,7 @@ _080AB8CC:
bl sub_80B292C
b _080AB946
.align 2, 0
-_080AB924: .4byte 0x02019204
+_080AB924: .4byte gSharedMem + 0x19204
_080AB928: .4byte gBanksBySide
_080AB92C: .4byte gBattleTypeFlags
_080AB930: .4byte gBankAttacker
@@ -1062,7 +1062,7 @@ _080ABA70: .4byte REG_BG0CNT
_080ABA74: .4byte REG_BG2CNT
_080ABA78: .4byte gTasks
_080ABA7C:
- ldr r0, _080ABAA4 @ =0x02019204
+ ldr r0, _080ABAA4 @ =gSharedMem + 0x19204
ldrb r1, [r0, 0x6]
movs r0, 0x40
ands r0, r1
@@ -1083,7 +1083,7 @@ _080ABA9C:
pop {r0}
bx r0
.align 2, 0
-_080ABAA4: .4byte 0x02019204
+_080ABAA4: .4byte gSharedMem + 0x19204
_080ABAA8: .4byte sub_80ABB70
thumb_func_end sub_80AB9A0
@@ -1184,7 +1184,7 @@ sub_80ABB70: @ 80ABB70
strh r1, [r0]
bl sub_80B0D7C
ldr r1, _080ABBB8 @ =gPlttBufferUnfaded
- ldr r2, _080ABBBC @ =0x02018204
+ ldr r2, _080ABBBC @ =gSharedMem + 0x18204
ldr r0, _080ABBC0 @ =0x040000d4
str r1, [r0]
str r2, [r0, 0x4]
@@ -1205,7 +1205,7 @@ sub_80ABB70: @ 80ABB70
_080ABBB0: .4byte gUnknown_030042A0
_080ABBB4: .4byte gUnknown_03004280
_080ABBB8: .4byte gPlttBufferUnfaded
-_080ABBBC: .4byte 0x02018204
+_080ABBBC: .4byte gSharedMem + 0x18204
_080ABBC0: .4byte 0x040000d4
_080ABBC4: .4byte 0x84000100
_080ABBC8: .4byte gContestPlayerMonIndex
@@ -1217,7 +1217,7 @@ _080ABBD4:
bl StringCopy
_080ABBDC:
ldr r5, _080ABC20 @ =gDisplayedStringBattle
- ldr r0, _080ABC28 @ =0x02019204
+ ldr r0, _080ABC28 @ =gSharedMem + 0x19204
ldrb r1, [r0, 0x1]
adds r1, 0x1
adds r0, r5, 0
@@ -1249,7 +1249,7 @@ _080ABBDC:
.align 2, 0
_080ABC20: .4byte gDisplayedStringBattle
_080ABC24: .4byte gUnknown_083CAFAE
-_080ABC28: .4byte 0x02019204
+_080ABC28: .4byte gSharedMem + 0x19204
_080ABC2C: .4byte gStringVar4
_080ABC30: .4byte gMenuWindow
_080ABC34: .4byte gTasks
@@ -1369,7 +1369,7 @@ sub_80ABCDC: @ 80ABCDC
movs r6, 0
ldr r0, _080ABD90 @ =gContestPlayerMonIndex
mov r8, r0
- ldr r7, _080ABD94 @ =0x02019260
+ ldr r7, _080ABD94 @ =gSharedMem + 0x19260
mov r9, r5
mov r10, r4
_080ABD1C:
@@ -1426,7 +1426,7 @@ _080ABD84: .4byte gUnknown_03004280
_080ABD88: .4byte gUnknown_03004210
_080ABD8C: .4byte gUnknown_083CA340
_080ABD90: .4byte gContestPlayerMonIndex
-_080ABD94: .4byte 0x02019260
+_080ABD94: .4byte gSharedMem + 0x19260
_080ABD98: .4byte gUnknown_0203858E
_080ABD9C: .4byte gUnknownText_UnknownFormatting2
_080ABDA0:
@@ -1500,7 +1500,7 @@ _080ABE20:
movs r0, 0
movs r2, 0xC
bl sub_814A5C0
- ldr r4, _080ABE8C @ =0x02019204
+ ldr r4, _080ABE8C @ =gSharedMem + 0x19204
movs r0, 0
ldrsb r0, [r4, r0]
bl sub_80AC0AC
@@ -1538,7 +1538,7 @@ _080ABE7C: .4byte gMoveNames
_080ABE80: .4byte gUnknown_083CA340 + 0x1
_080ABE84: .4byte 0x0000ffff
_080ABE88: .4byte 0x00002d9f
-_080ABE8C: .4byte 0x02019204
+_080ABE8C: .4byte gSharedMem + 0x19204
_080ABE90: .4byte gContestMons
_080ABE94: .4byte gContestPlayerMonIndex
_080ABE98: .4byte gTasks
@@ -1651,7 +1651,7 @@ _080ABF78:
bl StringCopy
_080ABF80:
ldr r5, _080ABFC8 @ =gDisplayedStringBattle
- ldr r0, _080ABFD0 @ =0x02019204
+ ldr r0, _080ABFD0 @ =gSharedMem + 0x19204
ldrb r1, [r0, 0x1]
adds r1, 0x1
adds r0, r5, 0
@@ -1685,7 +1685,7 @@ _080ABF80:
.align 2, 0
_080ABFC8: .4byte gDisplayedStringBattle
_080ABFCC: .4byte gUnknown_083CAFAE
-_080ABFD0: .4byte 0x02019204
+_080ABFD0: .4byte gSharedMem + 0x19204
_080ABFD4: .4byte gStringVar4
_080ABFD8: .4byte gMenuWindow
_080ABFDC: .4byte gUnknown_030042A0
@@ -1693,7 +1693,7 @@ _080ABFE0: .4byte gUnknown_03004280
_080ABFE4: .4byte gTasks
_080ABFE8: .4byte sub_80ABC70
_080ABFEC:
- ldr r4, _080AC000 @ =0x02019204
+ ldr r4, _080AC000 @ =gSharedMem + 0x19204
movs r0, 0
ldrsb r0, [r4, r0]
bl nullsub_17
@@ -1703,12 +1703,12 @@ _080ABFEC:
subs r0, r6, 0x1
b _080AC006
.align 2, 0
-_080AC000: .4byte 0x02019204
+_080AC000: .4byte gSharedMem + 0x19204
_080AC004:
subs r0, 0x1
_080AC006:
strb r0, [r4]
- ldr r4, _080AC03C @ =0x02019204
+ ldr r4, _080AC03C @ =gSharedMem + 0x19204
movs r0, 0
ldrsb r0, [r4, r0]
bl sub_80AC0AC
@@ -1730,11 +1730,11 @@ _080AC006:
bl PlaySE
b _080AC098
.align 2, 0
-_080AC03C: .4byte 0x02019204
+_080AC03C: .4byte gSharedMem + 0x19204
_080AC040: .4byte gContestMons
_080AC044: .4byte gContestPlayerMonIndex
_080AC048:
- ldr r4, _080AC060 @ =0x02019204
+ ldr r4, _080AC060 @ =gSharedMem + 0x19204
movs r0, 0
ldrsb r0, [r4, r0]
bl nullsub_17
@@ -1745,12 +1745,12 @@ _080AC048:
strb r5, [r4]
b _080AC068
.align 2, 0
-_080AC060: .4byte 0x02019204
+_080AC060: .4byte gSharedMem + 0x19204
_080AC064:
adds r0, r1, 0x1
strb r0, [r4]
_080AC068:
- ldr r4, _080AC0A0 @ =0x02019204
+ ldr r4, _080AC0A0 @ =gSharedMem + 0x19204
movs r0, 0
ldrsb r0, [r4, r0]
bl sub_80AC0AC
@@ -1776,7 +1776,7 @@ _080AC098:
pop {r0}
bx r0
.align 2, 0
-_080AC0A0: .4byte 0x02019204
+_080AC0A0: .4byte gSharedMem + 0x19204
_080AC0A4: .4byte gContestMons
_080AC0A8: .4byte gContestPlayerMonIndex
thumb_func_end sub_80ABEA0
@@ -1819,7 +1819,7 @@ sub_80AC0C8: @ 80AC0C8
lsls r1, r2, 3
subs r1, r2
lsls r1, 2
- ldr r2, _080AC128 @ =0x02019260
+ ldr r2, _080AC128 @ =gSharedMem + 0x19260
adds r1, r2
strh r0, [r1, 0x6]
ldr r4, _080AC12C @ =sub_80C8A38
@@ -1845,7 +1845,7 @@ sub_80AC0C8: @ 80AC0C8
.align 2, 0
_080AC120: .4byte gIsLinkContest
_080AC124: .4byte gContestPlayerMonIndex
-_080AC128: .4byte 0x02019260
+_080AC128: .4byte gSharedMem + 0x19260
_080AC12C: .4byte sub_80C8A38
_080AC130: .4byte sub_80AC15C
_080AC134: .4byte gTasks
@@ -1875,7 +1875,7 @@ sub_80AC15C: @ 80AC15C
lsrs r0, 24
bl DestroyTask
ldr r2, _080AC17C @ =gTasks
- ldr r0, _080AC180 @ =0x02019204
+ ldr r0, _080AC180 @ =gSharedMem + 0x19204
ldrb r1, [r0, 0x8]
lsls r0, r1, 2
adds r0, r1
@@ -1887,7 +1887,7 @@ sub_80AC15C: @ 80AC15C
bx r0
.align 2, 0
_080AC17C: .4byte gTasks
-_080AC180: .4byte 0x02019204
+_080AC180: .4byte gSharedMem + 0x19204
_080AC184: .4byte sub_80AC188
thumb_func_end sub_80AC15C
@@ -1906,7 +1906,7 @@ sub_80AC188: @ 80AC188
movs r0, 0
bl sub_80AFFE0
ldr r1, _080AC1EC @ =gPlttBufferFaded
- ldr r0, _080AC1F0 @ =0x02018604
+ ldr r0, _080AC1F0 @ =gSharedMem + 0x18604
movs r2, 0x80
lsls r2, 3
ldr r4, _080AC1F4 @ =0x040000d4
@@ -1939,7 +1939,7 @@ sub_80AC188: @ 80AC188
_080AC1E4: .4byte gUnknown_030042A0
_080AC1E8: .4byte gUnknown_03004280
_080AC1EC: .4byte gPlttBufferFaded
-_080AC1F0: .4byte 0x02018604
+_080AC1F0: .4byte gSharedMem + 0x18604
_080AC1F4: .4byte 0x040000d4
_080AC1F8: .4byte 0xfffffc00
_080AC1FC: .4byte gTasks
@@ -1991,7 +1991,7 @@ sub_80AC250: @ 80AC250
push {lr}
lsls r0, 24
lsrs r2, r0, 24
- ldr r0, _080AC278 @ =0x02019204
+ ldr r0, _080AC278 @ =gSharedMem + 0x19204
ldrh r1, [r0, 0x6]
movs r0, 0x90
lsls r0, 2
@@ -2009,7 +2009,7 @@ _080AC272:
pop {r0}
bx r0
.align 2, 0
-_080AC278: .4byte 0x02019204
+_080AC278: .4byte gSharedMem + 0x19204
_080AC27C: .4byte gTasks
_080AC280: .4byte sub_80AC284
thumb_func_end sub_80AC250
@@ -2031,7 +2031,7 @@ sub_80AC284: @ 80AC284
asrs r0, 16
cmp r0, 0x13
ble _080AC2B6
- ldr r1, _080AC2C0 @ =0x02019204
+ ldr r1, _080AC2C0 @ =gSharedMem + 0x19204
movs r0, 0
strb r0, [r1, 0x10]
ldr r0, _080AC2C4 @ =gRngValue
@@ -2046,7 +2046,7 @@ _080AC2B6:
bx r0
.align 2, 0
_080AC2BC: .4byte gTasks
-_080AC2C0: .4byte 0x02019204
+_080AC2C0: .4byte gSharedMem + 0x19204
_080AC2C4: .4byte gRngValue
_080AC2C8: .4byte sub_80AC2CC
thumb_func_end sub_80AC284
@@ -2062,7 +2062,7 @@ sub_80AC2CC: @ 80AC2CC
lsls r0, 24
lsrs r0, 24
mov r8, r0
- ldr r2, _080AC308 @ =0x02019204
+ ldr r2, _080AC308 @ =gSharedMem + 0x19204
ldrb r7, [r2, 0x11]
ldr r1, _080AC30C @ =gTasks
lsls r0, 2
@@ -2083,7 +2083,7 @@ _080AC2FC:
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_080AC308: .4byte 0x02019204
+_080AC308: .4byte gSharedMem + 0x19204
_080AC30C: .4byte gTasks
_080AC310: .4byte _080AC314
.align 2, 0
@@ -2151,7 +2151,7 @@ _080AC314:
_080AC404:
bl sub_80B0D7C
movs r6, 0
- ldr r0, _080AC484 @ =0x02019204
+ ldr r0, _080AC484 @ =gSharedMem + 0x19204
adds r1, r0, 0
adds r1, 0xCC
ldrb r0, [r0, 0x10]
@@ -2170,7 +2170,7 @@ _080AC422:
cmp r1, r0
bne _080AC422
_080AC42C:
- ldr r4, _080AC484 @ =0x02019204
+ ldr r4, _080AC484 @ =gSharedMem + 0x19204
strb r6, [r4, 0x11]
ldrb r7, [r4, 0x11]
ldr r0, _080AC488 @ =gIsLinkContest
@@ -2209,7 +2209,7 @@ _080AC458:
strh r5, [r0, 0x8]
bl _080AD8CA
.align 2, 0
-_080AC484: .4byte 0x02019204
+_080AC484: .4byte gSharedMem + 0x19204
_080AC488: .4byte gIsLinkContest
_080AC48C: .4byte sub_80C8C80
_080AC490: .4byte sub_80AD8DC
@@ -2247,7 +2247,7 @@ _080AC4D4:
lsls r0, r7, 3
subs r0, r7
lsls r0, 2
- ldr r1, _080AC508 @ =0x02019260
+ ldr r1, _080AC508 @ =gSharedMem + 0x19260
adds r2, r0, r1
ldrb r1, [r2, 0xC]
movs r0, 0x6
@@ -2271,7 +2271,7 @@ _080AC4F6:
strh r1, [r0, 0x8]
bl _080AD8CA
.align 2, 0
-_080AC508: .4byte 0x02019260
+_080AC508: .4byte gSharedMem + 0x19260
_080AC50C:
bl sub_80AF138
adds r0, r7, 0
@@ -2293,7 +2293,7 @@ _080AC534:
mov r4, r8
lsls r4, 2
mov r9, r4
- ldr r4, _080AC5C4 @ =0x02019348
+ ldr r4, _080AC5C4 @ =gSharedMem + 0x19348
ldr r1, _080AC5C8 @ =gBattleMonForms
movs r2, 0
adds r0, r1, 0x3
@@ -2357,7 +2357,7 @@ _080AC542:
strh r6, [r4, 0x8]
bl _080AD8CA
.align 2, 0
-_080AC5C4: .4byte 0x02019348
+_080AC5C4: .4byte gSharedMem + 0x19348
_080AC5C8: .4byte gBattleMonForms
_080AC5CC: .4byte 0xfffffebc
_080AC5D0: .4byte gContestMons
@@ -2387,7 +2387,7 @@ _080AC5E8:
bl _080AD8CA
_080AC60E:
lsls r0, r7, 2
- ldr r1, _080AC634 @ =0x02019338
+ ldr r1, _080AC634 @ =gSharedMem + 0x19338
adds r0, r1
ldrb r1, [r0, 0x2]
movs r0, 0x2
@@ -2402,12 +2402,12 @@ _080AC622:
.align 2, 0
_080AC62C: .4byte gSprites
_080AC630: .4byte SpriteCallbackDummy
-_080AC634: .4byte 0x02019338
+_080AC634: .4byte gSharedMem + 0x19338
_080AC638:
lsls r0, r7, 3
subs r0, r7
lsls r0, 2
- ldr r1, _080AC660 @ =0x02019260
+ ldr r1, _080AC660 @ =gSharedMem + 0x19260
adds r5, r0, r1
ldrb r1, [r5, 0xC]
movs r0, 0x1
@@ -2423,7 +2423,7 @@ _080AC638:
strh r1, [r0, 0x8]
bl _080AD8CA
.align 2, 0
-_080AC660: .4byte 0x02019260
+_080AC660: .4byte gSharedMem + 0x19260
_080AC664:
bl sub_80AF138
ldr r0, _080AC690 @ =gStringVar1
@@ -2494,7 +2494,7 @@ _080AC6F8:
bne _080AC708
bl _080AD8CA
_080AC708:
- ldr r0, _080AC728 @ =0x02019204
+ ldr r0, _080AC728 @ =gSharedMem + 0x19204
adds r0, 0x5A
movs r1, 0
strb r1, [r0]
@@ -2509,7 +2509,7 @@ _080AC708:
bl _080AD8CA
.align 2, 0
_080AC724: .4byte gMenuWindow
-_080AC728: .4byte 0x02019204
+_080AC728: .4byte gSharedMem + 0x19204
_080AC72C: .4byte gTasks
_080AC730:
ldrb r1, [r6, 0x11]
@@ -2555,7 +2555,7 @@ _080AC77C:
_080AC790:
adds r0, r7, 0
bl sub_80B28CC
- ldr r1, _080AC7C0 @ =0x02019204
+ ldr r1, _080AC7C0 @ =gSharedMem + 0x19204
adds r0, r1, 0
adds r0, 0x5A
ldrb r0, [r0]
@@ -2574,7 +2574,7 @@ _080AC790:
.align 2, 0
_080AC7B8: .4byte gAnimScriptCallback
_080AC7BC: .4byte gAnimScriptActive
-_080AC7C0: .4byte 0x02019204
+_080AC7C0: .4byte gSharedMem + 0x19204
_080AC7C4: .4byte gTasks
_080AC7C8:
lsls r0, r7, 3
@@ -2630,7 +2630,7 @@ _080AC81E:
lsls r2, r7, 3
subs r0, r2, r7
lsls r0, 2
- ldr r1, _080AC858 @ =0x02019260
+ ldr r1, _080AC858 @ =gSharedMem + 0x19260
adds r6, r0, r1
ldrb r0, [r6, 0x13]
mov r9, r3
@@ -2647,7 +2647,7 @@ _080AC81E:
strh r0, [r4, 0x8]
bl _080AD8CA
.align 2, 0
-_080AC858: .4byte 0x02019260
+_080AC858: .4byte gSharedMem + 0x19260
_080AC85C:
ldrb r0, [r6, 0x14]
cmp r0, 0xFF
@@ -2730,7 +2730,7 @@ _080AC8F8:
lsls r0, r7, 3
subs r0, r7
lsls r0, 2
- ldr r1, _080AC914 @ =0x02019260
+ ldr r1, _080AC914 @ =gSharedMem + 0x19260
adds r0, r1
ldrb r0, [r0, 0x11]
movs r3, 0x3
@@ -2741,7 +2741,7 @@ _080AC8F8:
bl sub_80B1710
b _080AC934
.align 2, 0
-_080AC914: .4byte 0x02019260
+_080AC914: .4byte gSharedMem + 0x19260
_080AC918:
cmp r3, 0x2
bne _080AC924
@@ -2804,7 +2804,7 @@ _080AC98C:
lsls r0, r7, 3
subs r0, r7
lsls r0, 2
- ldr r1, _080AC9B8 @ =0x02019260
+ ldr r1, _080AC9B8 @ =gSharedMem + 0x19260
adds r0, r1
movs r3, 0x2
ldrsh r1, [r0, r3]
@@ -2821,7 +2821,7 @@ _080AC98C:
strh r1, [r0, 0x8]
bl _080AD8CA
.align 2, 0
-_080AC9B8: .4byte 0x02019260
+_080AC9B8: .4byte gSharedMem + 0x19260
_080AC9BC: .4byte gTasks
_080AC9C0:
ldrb r0, [r6, 0x11]
@@ -2849,7 +2849,7 @@ _080AC9EC:
lsls r0, r7, 3
subs r0, r7
lsls r0, 2
- ldr r1, _080ACA1C @ =0x02019260
+ ldr r1, _080ACA1C @ =gSharedMem + 0x19260
adds r0, r1
ldrb r1, [r0, 0x10]
movs r0, 0x30
@@ -2869,7 +2869,7 @@ _080ACA06:
strh r0, [r1, 0x8]
bl _080AD8CA
.align 2, 0
-_080ACA1C: .4byte 0x02019260
+_080ACA1C: .4byte gSharedMem + 0x19260
_080ACA20: .4byte gTasks
_080ACA24:
ldrb r1, [r6, 0x6]
@@ -2984,7 +2984,7 @@ _080ACAEE:
cmp r6, 0x3
bgt _080ACB58
ldr r3, _080ACB24 @ =gUnknown_02038696
- ldr r1, _080ACB28 @ =0x02019260
+ ldr r1, _080ACB28 @ =gSharedMem + 0x19260
_080ACB0A:
movs r4, 0
movs r2, 0
@@ -3000,7 +3000,7 @@ _080ACB0A:
b _080ACB60
.align 2, 0
_080ACB24: .4byte gUnknown_02038696
-_080ACB28: .4byte 0x02019260
+_080ACB28: .4byte gSharedMem + 0x19260
_080ACB2C:
adds r2, 0x1
cmp r2, 0x3
@@ -3044,7 +3044,7 @@ _080ACB60:
lsls r4, r2, 3
subs r4, r2
lsls r4, 2
- ldr r1, _080ACB94 @ =0x02019260
+ ldr r1, _080ACB94 @ =gSharedMem + 0x19260
adds r4, r1
ldrb r1, [r4, 0x13]
bl sub_80B146C
@@ -3055,7 +3055,7 @@ _080ACB60:
bl _080AD8CA
.align 2, 0
_080ACB90: .4byte gUnknown_02038696
-_080ACB94: .4byte 0x02019260
+_080ACB94: .4byte gSharedMem + 0x19260
_080ACB98:
mov r0, r9
add r0, r8
@@ -3098,7 +3098,7 @@ _080ACBDC:
ldrsh r2, [r1, r3]
ldr r1, _080ACC38 @ =gUnknown_02038696
mov r9, r0
- ldr r3, _080ACC3C @ =0x02019260
+ ldr r3, _080ACC3C @ =gSharedMem + 0x19260
adds r5, r1, 0
ldrb r4, [r5]
cmp r2, r4
@@ -3135,7 +3135,7 @@ _080ACC08:
bl _080AD8CA
.align 2, 0
_080ACC38: .4byte gUnknown_02038696
-_080ACC3C: .4byte 0x02019260
+_080ACC3C: .4byte gSharedMem + 0x19260
_080ACC40: .4byte gTasks
_080ACC44:
movs r6, 0
@@ -3148,7 +3148,7 @@ _080ACC44:
ldrsh r3, [r1, r2]
ldr r1, _080ACC90 @ =gUnknown_02038696
mov r9, r0
- ldr r2, _080ACC94 @ =0x02019338
+ ldr r2, _080ACC94 @ =gSharedMem + 0x19338
adds r5, r1, 0
ldrb r4, [r5]
cmp r3, r4
@@ -3178,7 +3178,7 @@ _080ACC7E:
bl _080AD8CA
.align 2, 0
_080ACC90: .4byte gUnknown_02038696
-_080ACC94: .4byte 0x02019338
+_080ACC94: .4byte gSharedMem + 0x19338
_080ACC98:
movs r6, 0
mov r5, r8
@@ -3302,7 +3302,7 @@ _080ACD82:
lsls r0, r6, 3
subs r0, r6
lsls r0, 2
- ldr r1, _080ACDC0 @ =0x02019260
+ ldr r1, _080ACDC0 @ =gSharedMem + 0x19260
adds r4, r0, r1
ldrb r1, [r4, 0x15]
movs r0, 0x20
@@ -3329,7 +3329,7 @@ _080ACDA6:
strh r0, [r1, 0x8]
bl _080AD8CA
.align 2, 0
-_080ACDC0: .4byte 0x02019260
+_080ACDC0: .4byte gSharedMem + 0x19260
_080ACDC4: .4byte gTasks
_080ACDC8:
mov r5, r8
@@ -3353,7 +3353,7 @@ _080ACDE8:
lsls r0, r7, 3
subs r0, r7
lsls r0, 2
- ldr r1, _080ACE48 @ =0x02019260
+ ldr r1, _080ACE48 @ =gSharedMem + 0x19260
adds r2, r0, r1
ldrb r1, [r2, 0xC]
movs r0, 0x6
@@ -3394,7 +3394,7 @@ _080ACE36:
strh r0, [r1, 0x8]
bl _080AD8CA
.align 2, 0
-_080ACE48: .4byte 0x02019260
+_080ACE48: .4byte gSharedMem + 0x19260
_080ACE4C: .4byte gStringVar1
_080ACE50: .4byte gContestMons + 0x2
_080ACE54: .4byte gStringVar4
@@ -3412,7 +3412,7 @@ _080ACE74:
lsls r0, r7, 3
subs r0, r7
lsls r0, 2
- ldr r1, _080ACEA0 @ =0x02019260
+ ldr r1, _080ACEA0 @ =gSharedMem + 0x19260
adds r0, r1
ldrb r1, [r0, 0x15]
movs r0, 0x40
@@ -3430,7 +3430,7 @@ _080ACE74:
bl _080AD8CA
.align 2, 0
_080ACE9C: .4byte gMenuWindow
-_080ACEA0: .4byte 0x02019260
+_080ACEA0: .4byte gSharedMem + 0x19260
_080ACEA4: .4byte gTasks
_080ACEA8:
ldr r0, _080ACEBC @ =gTasks
@@ -3448,7 +3448,7 @@ _080ACEC0:
lsls r0, r7, 3
subs r0, r7
lsls r0, 2
- ldr r1, _080ACEE4 @ =0x02019260
+ ldr r1, _080ACEE4 @ =gSharedMem + 0x19260
adds r0, r1
ldrb r4, [r0, 0x16]
lsls r4, 24
@@ -3463,7 +3463,7 @@ _080ACEC0:
ldr r1, _080ACEEC @ =gUnknown_083CBD79
b _080ACEF8
.align 2, 0
-_080ACEE4: .4byte 0x02019260
+_080ACEE4: .4byte gSharedMem + 0x19260
_080ACEE8: .4byte gMenuWindow
_080ACEEC: .4byte gUnknown_083CBD79
_080ACEF0:
@@ -3593,7 +3593,7 @@ _080AD002:
lsls r0, r7, 3
subs r0, r7
lsls r0, 2
- ldr r1, _080AD03C @ =0x02019260
+ ldr r1, _080AD03C @ =gSharedMem + 0x19260
adds r6, r0, r1
ldrb r1, [r6, 0x15]
movs r5, 0x10
@@ -3616,10 +3616,10 @@ _080AD02C:
.align 2, 0
_080AD034: .4byte gMenuWindow
_080AD038: .4byte gTasks
-_080AD03C: .4byte 0x02019260
+_080AD03C: .4byte gSharedMem + 0x19260
_080AD040:
lsls r0, r7, 2
- ldr r1, _080AD06C @ =0x02019338
+ ldr r1, _080AD06C @ =gSharedMem + 0x19338
adds r0, r1
ldrb r1, [r0, 0x2]
movs r0, 0x4
@@ -3640,12 +3640,12 @@ _080AD058:
strh r1, [r0, 0x8]
bl _080AD8CA
.align 2, 0
-_080AD06C: .4byte 0x02019338
+_080AD06C: .4byte gSharedMem + 0x19338
_080AD070:
lsls r0, r7, 3
subs r0, r7
lsls r0, 2
- ldr r1, _080AD0CC @ =0x02019260
+ ldr r1, _080AD0CC @ =gSharedMem + 0x19260
adds r0, r1
ldrb r1, [r0, 0x15]
movs r0, 0x1
@@ -3683,7 +3683,7 @@ _080AD070:
strh r0, [r4, 0x8]
bl _080AD8CA
.align 2, 0
-_080AD0CC: .4byte 0x02019260
+_080AD0CC: .4byte gSharedMem + 0x19260
_080AD0D0: .4byte gStringVar1
_080AD0D4: .4byte gContestMons + 0x2
_080AD0D8: .4byte gStringVar4
@@ -3726,7 +3726,7 @@ _080AD12A:
lsls r4, r7, 3
subs r4, r7
lsls r4, 2
- ldr r0, _080AD160 @ =0x02019260
+ ldr r0, _080AD160 @ =gSharedMem + 0x19260
adds r4, r0
movs r3, 0x2
ldrsh r0, [r4, r3]
@@ -3749,12 +3749,12 @@ _080AD12A:
b _080AD8CA
.align 2, 0
_080AD15C: .4byte gMenuWindow
-_080AD160: .4byte 0x02019260
+_080AD160: .4byte gSharedMem + 0x19260
_080AD164: .4byte gTasks
_080AD168:
bl sub_80B0D7C
lsls r0, r7, 2
- ldr r1, _080AD19C @ =0x02019338
+ ldr r1, _080AD19C @ =gSharedMem + 0x19338
adds r0, r1
ldrb r1, [r0, 0x2]
movs r0, 0x4
@@ -3777,10 +3777,10 @@ _080AD182:
strh r0, [r4, 0x8]
b _080AD8CA
.align 2, 0
-_080AD19C: .4byte 0x02019338
+_080AD19C: .4byte gSharedMem + 0x19338
_080AD1A0: .4byte gTasks
_080AD1A4:
- ldr r2, _080AD1CC @ =0x02019328
+ ldr r2, _080AD1CC @ =gSharedMem + 0x19328
ldrb r1, [r2, 0x1]
movs r0, 0x1
ands r0, r1
@@ -3801,7 +3801,7 @@ _080AD1A4:
strh r1, [r0, 0x8]
b _080AD8CA
.align 2, 0
-_080AD1CC: .4byte 0x02019328
+_080AD1CC: .4byte gSharedMem + 0x19328
_080AD1D0:
ldrb r4, [r1]
lsls r2, r7, 3
@@ -3847,7 +3847,7 @@ _080AD21E:
mov r2, r10
subs r0, r2, r7
lsls r0, 2
- ldr r1, _080AD27C @ =0x02019260
+ ldr r1, _080AD27C @ =gSharedMem + 0x19260
adds r0, r1
ldrb r1, [r0, 0x15]
movs r0, 0x1
@@ -3862,7 +3862,7 @@ _080AD23A:
ldr r2, _080AD284 @ =gContestMons + 0x2
adds r1, r2
bl StringCopy
- ldr r3, _080AD288 @ =0x02019204
+ ldr r3, _080AD288 @ =gSharedMem + 0x19204
ldrb r0, [r3, 0x13]
lsls r1, r4, 24
asrs r2, r1, 24
@@ -3885,10 +3885,10 @@ _080AD262:
_080AD270: .4byte gStringVar3
_080AD274: .4byte gUnknown_083CC2D8
_080AD278: .4byte gContestMoves
-_080AD27C: .4byte 0x02019260
+_080AD27C: .4byte gSharedMem + 0x19260
_080AD280: .4byte gStringVar1
_080AD284: .4byte gContestMons + 0x2
-_080AD288: .4byte 0x02019204
+_080AD288: .4byte gSharedMem + 0x19204
_080AD28C: .4byte gTasks
_080AD290:
cmp r2, 0
@@ -4156,7 +4156,7 @@ _080AD468:
b _080AD8CA
_080AD4A0:
lsls r0, r7, 2
- ldr r2, _080AD4E0 @ =0x02019338
+ ldr r2, _080AD4E0 @ =gSharedMem + 0x19338
adds r0, r2
ldrb r1, [r0, 0x2]
movs r0, 0x4
@@ -4190,7 +4190,7 @@ _080AD4CC:
strh r0, [r1, 0x1C]
b _080AD8CA
.align 2, 0
-_080AD4E0: .4byte 0x02019338
+_080AD4E0: .4byte gSharedMem + 0x19338
_080AD4E4: .4byte 0xfffffecc
_080AD4E8: .4byte gTasks
_080AD4EC:
@@ -4217,7 +4217,7 @@ _080AD4FE:
_080AD510: .4byte gPaletteFade
_080AD514:
lsls r0, r7, 2
- ldr r1, _080AD534 @ =0x02019338
+ ldr r1, _080AD534 @ =gSharedMem + 0x19338
adds r0, r1
ldrb r1, [r0, 0x2]
movs r0, 0x4
@@ -4232,12 +4232,12 @@ _080AD526:
lsls r1, r4, 2
b _080AD6EC
.align 2, 0
-_080AD534: .4byte 0x02019338
+_080AD534: .4byte gSharedMem + 0x19338
_080AD538: .4byte gTasks
_080AD53C:
bl sub_80AF138
ldr r0, _080AD5A8 @ =gStringVar3
- ldr r4, _080AD5AC @ =0x02019328
+ ldr r4, _080AD5AC @ =gSharedMem + 0x19328
ldr r1, [r4]
lsls r1, 20
lsrs r1, 29
@@ -4284,7 +4284,7 @@ _080AD53C:
b _080AD8CA
.align 2, 0
_080AD5A8: .4byte gStringVar3
-_080AD5AC: .4byte 0x02019328
+_080AD5AC: .4byte gSharedMem + 0x19328
_080AD5B0: .4byte gContestMons + 0x2
_080AD5B4: .4byte gStringVar1
_080AD5B8: .4byte gStringVar2
@@ -4349,7 +4349,7 @@ _080AD648:
lsls r0, r7, 3
subs r0, r7
lsls r0, 2
- ldr r1, _080AD6B4 @ =0x02019260
+ ldr r1, _080AD6B4 @ =gSharedMem + 0x19260
adds r4, r0, r1
ldrb r1, [r4, 0x15]
movs r0, 0x10
@@ -4397,7 +4397,7 @@ _080AD664:
strh r1, [r0, 0x8]
b _080AD8CA
.align 2, 0
-_080AD6B4: .4byte 0x02019260
+_080AD6B4: .4byte gSharedMem + 0x19260
_080AD6B8: .4byte gStringVar1
_080AD6BC: .4byte gContestMons + 0x2
_080AD6C0: .4byte gStringVar2
@@ -4664,7 +4664,7 @@ sub_80AD8DC: @ 80AD8DC
push {lr}
lsls r0, 24
lsrs r0, 24
- ldr r3, _080AD8F8 @ =0x02019204
+ ldr r3, _080AD8F8 @ =gSharedMem + 0x19204
ldrb r2, [r3, 0x7]
movs r1, 0x5
negs r1, r1
@@ -4674,7 +4674,7 @@ sub_80AD8DC: @ 80AD8DC
pop {r0}
bx r0
.align 2, 0
-_080AD8F8: .4byte 0x02019204
+_080AD8F8: .4byte gSharedMem + 0x19204
thumb_func_end sub_80AD8DC
thumb_func_start sub_80AD8FC
@@ -4770,7 +4770,7 @@ _080AD98E:
ands r0, r1
cmp r0, 0
beq _080AD9E8
- ldr r2, _080AD9DC @ =0x02019204
+ ldr r2, _080AD9DC @ =gSharedMem + 0x19204
ldrb r0, [r2, 0x7]
movs r1, 0x4
orrs r0, r1
@@ -4796,7 +4796,7 @@ _080AD9B8:
b _080ADA10
.align 2, 0
_080AD9D8: .4byte gIsLinkContest
-_080AD9DC: .4byte 0x02019204
+_080AD9DC: .4byte gSharedMem + 0x19204
_080AD9E0: .4byte sub_80C8C80
_080AD9E4: .4byte sub_80AD8DC
_080AD9E8:
@@ -4804,7 +4804,7 @@ _080AD9E8:
bl sub_80AF3C0
b _080AD9FE
_080AD9F2:
- ldr r0, _080ADA04 @ =0x02019204
+ ldr r0, _080ADA04 @ =gSharedMem + 0x19204
ldrb r1, [r0, 0x7]
movs r0, 0x4
ands r0, r1
@@ -4815,7 +4815,7 @@ _080AD9FE:
strh r0, [r5, 0x8]
b _080ADA10
.align 2, 0
-_080ADA04: .4byte 0x02019204
+_080ADA04: .4byte gSharedMem + 0x19204
_080ADA08:
movs r0, 0
strh r0, [r5, 0x8]
@@ -4893,7 +4893,7 @@ _080ADA7A:
strh r5, [r4, 0xA]
b _080ADAB2
_080ADA92:
- ldr r0, _080ADABC @ =0x02019204
+ ldr r0, _080ADABC @ =gSharedMem + 0x19204
ldrb r1, [r0, 0x7]
movs r0, 0x2
ands r0, r1
@@ -4915,7 +4915,7 @@ _080ADAB2:
strh r0, [r4, 0x8]
b _080ADACE
.align 2, 0
-_080ADABC: .4byte 0x02019204
+_080ADABC: .4byte gSharedMem + 0x19204
_080ADAC0:
bl sub_80AFF10
movs r0, 0
@@ -4960,7 +4960,7 @@ _080ADB00: .4byte sub_80ADB04
sub_80ADB04: @ 80ADB04
lsls r0, 24
lsrs r0, 24
- ldr r2, _080ADB30 @ =0x02018204
+ ldr r2, _080ADB30 @ =gSharedMem + 0x18204
ldr r3, _080ADB34 @ =gPlttBufferUnfaded
ldr r1, _080ADB38 @ =0x040000d4
str r2, [r1]
@@ -4981,7 +4981,7 @@ sub_80ADB04: @ 80ADB04
str r0, [r1]
bx lr
.align 2, 0
-_080ADB30: .4byte 0x02018204
+_080ADB30: .4byte gSharedMem + 0x18204
_080ADB34: .4byte gPlttBufferUnfaded
_080ADB38: .4byte 0x040000d4
_080ADB3C: .4byte 0x84000100
@@ -5036,7 +5036,7 @@ sub_80ADB88: @ 80ADB88
lsls r0, r1, 3
subs r0, r1
lsls r0, 2
- ldr r1, _080ADBF0 @ =0x02019260
+ ldr r1, _080ADBF0 @ =gSharedMem + 0x19260
adds r0, r1
ldrb r4, [r0, 0x1A]
bl sub_80AF138
@@ -5074,7 +5074,7 @@ sub_80ADB88: @ 80ADB88
bx r0
.align 2, 0
_080ADBEC: .4byte gContestPlayerMonIndex
-_080ADBF0: .4byte 0x02019260
+_080ADBF0: .4byte gSharedMem + 0x19260
_080ADBF4: .4byte gStringVar1
_080ADBF8: .4byte gContestMons + 0x2
_080ADBFC: .4byte gStringVar4
@@ -5233,7 +5233,7 @@ sub_80ADD04: @ 80ADD04
ldrb r0, [r2]
ands r1, r0
strb r1, [r2]
- ldr r1, _080ADD48 @ =0x02019204
+ ldr r1, _080ADD48 @ =gSharedMem + 0x19204
ldrb r0, [r1, 0x1]
adds r0, 0x1
strb r0, [r1, 0x1]
@@ -5251,7 +5251,7 @@ sub_80ADD04: @ 80ADD04
.align 2, 0
_080ADD40: .4byte REG_BG0CNT
_080ADD44: .4byte REG_BG2CNT
-_080ADD48: .4byte 0x02019204
+_080ADD48: .4byte gSharedMem + 0x19204
_080ADD4C: .4byte gTasks
_080ADD50: .4byte sub_80ADDA4
_080ADD54:
@@ -5277,7 +5277,7 @@ sub_80ADD74: @ 80ADD74
push {lr}
lsls r0, 24
lsrs r2, r0, 24
- ldr r0, _080ADD98 @ =0x02019204
+ ldr r0, _080ADD98 @ =gSharedMem + 0x19204
ldrb r1, [r0, 0x6]
movs r0, 0x40
ands r0, r1
@@ -5294,7 +5294,7 @@ _080ADD94:
pop {r0}
bx r0
.align 2, 0
-_080ADD98: .4byte 0x02019204
+_080ADD98: .4byte gSharedMem + 0x19204
_080ADD9C: .4byte gTasks
_080ADDA0: .4byte sub_80ABB70
thumb_func_end sub_80ADD74
@@ -5310,7 +5310,7 @@ sub_80ADDA4: @ 80ADDA4
strh r1, [r0]
ldr r0, _080ADE28 @ =gUnknown_03004280
strh r1, [r0]
- ldr r3, _080ADE2C @ =0x02019260
+ ldr r3, _080ADE2C @ =gSharedMem + 0x19260
ldr r2, _080ADE30 @ =gUnknown_02038680
movs r1, 0x3
_080ADDBC:
@@ -5329,7 +5329,7 @@ _080ADDBC:
lsls r0, r1, 3
subs r0, r1
lsls r0, 2
- ldr r1, _080ADE2C @ =0x02019260
+ ldr r1, _080ADE2C @ =gSharedMem + 0x19260
adds r0, r1
ldrh r0, [r0, 0x8]
bl sub_80BE23C
@@ -5364,7 +5364,7 @@ _080ADDBC:
.align 2, 0
_080ADE24: .4byte gUnknown_030042A0
_080ADE28: .4byte gUnknown_03004280
-_080ADE2C: .4byte 0x02019260
+_080ADE2C: .4byte gSharedMem + 0x19260
_080ADE30: .4byte gUnknown_02038680
_080ADE34: .4byte gContestPlayerMonIndex
_080ADE38: .4byte gUnknown_03005D28
@@ -5555,7 +5555,7 @@ sub_80ADF98: @ 80ADF98
movs r3, 0x10
bl BeginNormalPaletteFade
ldr r2, _080ADFCC @ =gTasks
- ldr r0, _080ADFD0 @ =0x02019204
+ ldr r0, _080ADFD0 @ =gSharedMem + 0x19204
ldrb r1, [r0, 0x8]
lsls r0, r1, 2
adds r0, r1
@@ -5568,7 +5568,7 @@ sub_80ADF98: @ 80ADF98
bx r0
.align 2, 0
_080ADFCC: .4byte gTasks
-_080ADFD0: .4byte 0x02019204
+_080ADFD0: .4byte gSharedMem + 0x19204
_080ADFD4: .4byte sub_80ADFD8
thumb_func_end sub_80ADF98
@@ -7401,7 +7401,7 @@ _080AEE24:
lsls r0, r4, 3
subs r0, r4
lsls r0, 2
- ldr r1, _080AEE48 @ =0x02019260
+ ldr r1, _080AEE48 @ =gSharedMem + 0x19260
adds r0, r1
ldrh r0, [r0, 0x6]
adds r1, r4, 0
@@ -7415,7 +7415,7 @@ _080AEE24:
pop {r0}
bx r0
.align 2, 0
-_080AEE48: .4byte 0x02019260
+_080AEE48: .4byte gSharedMem + 0x19260
thumb_func_end unref_sub_80AEE20
thumb_func_start sub_80AEE4C
@@ -7442,7 +7442,7 @@ sub_80AEE54: @ 80AEE54
lsls r5, r7, 3
subs r0, r5, r7
lsls r0, 2
- ldr r1, _080AEE84 @ =0x02019260
+ ldr r1, _080AEE84 @ =gSharedMem + 0x19260
adds r0, r1
ldrb r0, [r0, 0x10]
movs r2, 0x30
@@ -7453,7 +7453,7 @@ sub_80AEE54: @ 80AEE54
movs r0, 0
b _080AEF3C
.align 2, 0
-_080AEE84: .4byte 0x02019260
+_080AEE84: .4byte gSharedMem + 0x19260
_080AEE88:
ldr r0, _080AEEB0 @ =gUnknown_02038696
adds r0, r7, r0
@@ -7488,7 +7488,7 @@ _080AEEB4:
_080AEEC4:
subs r0, r6, r7
lsls r0, 2
- ldr r1, _080AEEEC @ =0x02019260
+ ldr r1, _080AEEEC @ =gSharedMem + 0x19260
adds r5, r0, r1
movs r0, 0xD
ldrsb r0, [r5, r0]
@@ -7505,7 +7505,7 @@ _080AEEC4:
b _080AEF2C
.align 2, 0
_080AEEE8: .4byte 0x0600c026
-_080AEEEC: .4byte 0x02019260
+_080AEEEC: .4byte gSharedMem + 0x19260
_080AEEF0:
movs r1, 0
mov r8, r1
@@ -7599,7 +7599,7 @@ _080AEF84:
_080AEF92:
subs r0, r7, r5
lsls r0, 2
- ldr r1, _080AEFE4 @ =0x02019260
+ ldr r1, _080AEFE4 @ =gSharedMem + 0x19260
adds r0, r1
ldrb r0, [r0, 0xD]
lsls r0, 24
@@ -7639,7 +7639,7 @@ _080AEFCE:
bx r0
.align 2, 0
_080AEFE0: .4byte 0x0600c026
-_080AEFE4: .4byte 0x02019260
+_080AEFE4: .4byte gSharedMem + 0x19260
thumb_func_end sub_80AEF50
thumb_func_start sub_80AEFE8
@@ -7706,7 +7706,7 @@ sub_80AF038: @ 80AF038
lsls r0, r3, 3
subs r0, r3
lsls r0, 2
- ldr r1, _080AF078 @ =0x02019260
+ ldr r1, _080AF078 @ =gSharedMem + 0x19260
adds r2, r0, r1
ldr r0, [r2, 0x10]
ldr r1, _080AF07C @ =0x00ff0003
@@ -7722,7 +7722,7 @@ _080AF06C:
b _080AF0A6
.align 2, 0
_080AF074: .4byte gUnknown_02038696
-_080AF078: .4byte 0x02019260
+_080AF078: .4byte gSharedMem + 0x19260
_080AF07C: .4byte 0x00ff0003
_080AF080:
ldrb r1, [r2, 0xC]
@@ -7873,7 +7873,7 @@ _080AF190: .4byte gContestPlayerMonIndex
_080AF194: .4byte gContestMons
_080AF198:
ldr r2, _080AF1B0 @ =gContestMons
- ldr r0, _080AF1B4 @ =0x02019204
+ ldr r0, _080AF1B4 @ =gSharedMem + 0x19204
ldrb r0, [r0]
lsls r0, 1
lsls r1, r5, 6
@@ -7888,7 +7888,7 @@ _080AF1AA:
bx r1
.align 2, 0
_080AF1B0: .4byte gContestMons
-_080AF1B4: .4byte 0x02019204
+_080AF1B4: .4byte gSharedMem + 0x19204
thumb_func_end sub_80AF15C
thumb_func_start sub_80AF1B8
@@ -7901,7 +7901,7 @@ _080AF1BC:
lsls r1, r4, 3
subs r1, r4
lsls r1, 2
- ldr r2, _080AF1E0 @ =0x02019260
+ ldr r2, _080AF1E0 @ =gSharedMem + 0x19260
adds r1, r2
strh r0, [r1, 0x6]
adds r0, r4, 0x1
@@ -7913,7 +7913,7 @@ _080AF1BC:
pop {r0}
bx r0
.align 2, 0
-_080AF1E0: .4byte 0x02019260
+_080AF1E0: .4byte gSharedMem + 0x19260
thumb_func_end sub_80AF1B8
thumb_func_start sub_80AF1E4
@@ -7936,7 +7936,7 @@ _080AF1FE:
lsls r0, r5, 3
subs r0, r5
lsls r0, 2
- ldr r1, _080AF21C @ =0x02019260
+ ldr r1, _080AF21C @ =gSharedMem + 0x19260
adds r1, r0, r1
ldrh r0, [r1, 0x6]
cmp r0, 0
@@ -7947,7 +7947,7 @@ _080AF1FE:
bl sub_80AE598
b _080AF23A
.align 2, 0
-_080AF21C: .4byte 0x02019260
+_080AF21C: .4byte gSharedMem + 0x19260
_080AF220: .4byte gDisplayedStringBattle
_080AF224: .4byte gUnknownText_MissedTurn
_080AF228:
@@ -8066,7 +8066,7 @@ sub_80AF2FC: @ 80AF2FC
push {r4-r7,lr}
sub sp, 0x8
movs r4, 0
- ldr r2, _080AF398 @ =0x02019260
+ ldr r2, _080AF398 @ =gSharedMem + 0x19260
_080AF304:
lsls r0, r4, 3
subs r0, r4
@@ -8118,7 +8118,7 @@ _080AF354:
cmp r4, 0x2
bls _080AF326
movs r4, 0
- ldr r0, _080AF398 @ =0x02019260
+ ldr r0, _080AF398 @ =gSharedMem + 0x19260
mov r12, r0
movs r7, 0x4
negs r7, r7
@@ -8148,7 +8148,7 @@ _080AF37C:
strb r0, [r3, 0xB]
b _080AF3A6
.align 2, 0
-_080AF398: .4byte 0x02019260
+_080AF398: .4byte gSharedMem + 0x19260
_080AF39C:
adds r0, r2, 0x1
lsls r0, 24
@@ -8172,7 +8172,7 @@ _080AF3A6:
thumb_func_start sub_80AF3C0
sub_80AF3C0: @ 80AF3C0
push {lr}
- ldr r2, _080AF3D0 @ =0x02019260
+ ldr r2, _080AF3D0 @ =gSharedMem + 0x19260
adds r3, r2, 0
_080AF3C6:
ldrh r0, [r2, 0x6]
@@ -8181,7 +8181,7 @@ _080AF3C6:
movs r1, 0x5
b _080AF3F2
.align 2, 0
-_080AF3D0: .4byte 0x02019260
+_080AF3D0: .4byte gSharedMem + 0x19260
_080AF3D4:
movs r1, 0x2
ldrsh r0, [r2, r1]
@@ -8217,7 +8217,7 @@ sub_80AF404: @ 80AF404
lsls r1, r0, 3
subs r1, r0
lsls r1, 2
- ldr r0, _080AF42C @ =0x02019260
+ ldr r0, _080AF42C @ =gSharedMem + 0x19260
adds r2, r1, r0
ldrb r1, [r2, 0xC]
movs r0, 0x6
@@ -8233,7 +8233,7 @@ _080AF428:
movs r0, 0
b _080AF432
.align 2, 0
-_080AF42C: .4byte 0x02019260
+_080AF42C: .4byte gSharedMem + 0x19260
_080AF430:
movs r0, 0x1
_080AF432:
@@ -8249,7 +8249,7 @@ sub_80AF438: @ 80AF438
mov r5, r8
push {r5-r7}
movs r5, 0
- ldr r0, _080AF594 @ =0x02019260
+ ldr r0, _080AF594 @ =gSharedMem + 0x19260
mov r10, r0
movs r1, 0
mov r12, r1
@@ -8407,7 +8407,7 @@ _080AF53E:
lsrs r5, r0, 24
cmp r5, 0x3
bls _080AF53E
- ldr r2, _080AF598 @ =0x02019328
+ ldr r2, _080AF598 @ =gSharedMem + 0x19328
ldrb r1, [r2, 0x1]
movs r0, 0x2
negs r0, r0
@@ -8421,8 +8421,8 @@ _080AF53E:
pop {r0}
bx r0
.align 2, 0
-_080AF594: .4byte 0x02019260
-_080AF598: .4byte 0x02019328
+_080AF594: .4byte gSharedMem + 0x19260
+_080AF598: .4byte gSharedMem + 0x19328
thumb_func_end sub_80AF438
thumb_func_start sub_80AF59C
@@ -8433,7 +8433,7 @@ sub_80AF59C: @ 80AF59C
lsls r1, r0, 3
subs r1, r0
lsls r1, 2
- ldr r0, _080AF5C4 @ =0x02019260
+ ldr r0, _080AF5C4 @ =gSharedMem + 0x19260
adds r2, r1, r0
ldrb r1, [r2, 0xC]
movs r0, 0x6
@@ -8449,7 +8449,7 @@ _080AF5C0:
movs r0, 0x1
b _080AF5CA
.align 2, 0
-_080AF5C4: .4byte 0x02019260
+_080AF5C4: .4byte gSharedMem + 0x19260
_080AF5C8:
movs r0, 0
_080AF5CA:
@@ -8489,7 +8489,7 @@ _080AF5FC:
b _080AF5E2
_080AF600:
movs r0, 0
- ldr r4, _080AF62C @ =0x02019204
+ ldr r4, _080AF62C @ =gSharedMem + 0x19204
adds r5, r4, 0x2
_080AF606:
cmp r3, 0x3
@@ -8513,7 +8513,7 @@ _080AF626:
pop {r1}
bx r1
.align 2, 0
-_080AF62C: .4byte 0x02019204
+_080AF62C: .4byte gSharedMem + 0x19204
thumb_func_end unref_sub_80AF5D0
thumb_func_start sub_80AF630
@@ -8865,7 +8865,7 @@ unref_sub_80AF89C: @ 80AF89C
lsrs r3, 24
mov r9, r3
lsls r2, r3, 2
- ldr r0, _080AF940 @ =0x02019338
+ ldr r0, _080AF940 @ =gSharedMem + 0x19338
adds r2, r0
ldrb r0, [r2, 0x2]
movs r1, 0x4
@@ -8925,7 +8925,7 @@ _080AF932:
pop {r1}
bx r1
.align 2, 0
-_080AF940: .4byte 0x02019338
+_080AF940: .4byte gSharedMem + 0x19338
_080AF944: .4byte sub_80AF94C
_080AF948: .4byte gTasks
thumb_func_end unref_sub_80AF89C
@@ -8951,7 +8951,7 @@ sub_80AF94C: @ 80AF94C
adds r0, r4, 0
bl DestroyTask
lsls r1, r5, 2
- ldr r0, _080AF98C @ =0x02019338
+ ldr r0, _080AF98C @ =gSharedMem + 0x19338
adds r1, r0
ldrb r2, [r1, 0x2]
movs r0, 0x5
@@ -8961,7 +8961,7 @@ sub_80AF94C: @ 80AF94C
b _080AFA56
.align 2, 0
_080AF988: .4byte gTasks
-_080AF98C: .4byte 0x02019338
+_080AF98C: .4byte gSharedMem + 0x19338
_080AF990:
ldrh r0, [r2, 0x1C]
adds r0, 0x1
@@ -9250,7 +9250,7 @@ sub_80AFBA0: @ 80AFBA0
lsls r2, 24
lsrs r7, r2, 24
lsls r2, r7, 2
- ldr r0, _080AFC30 @ =0x02019338
+ ldr r0, _080AFC30 @ =gSharedMem + 0x19338
adds r2, r0
ldrb r0, [r2, 0x2]
movs r1, 0x4
@@ -9308,7 +9308,7 @@ _080AFC28:
strh r0, [r1, 0xC]
b _080AFC4A
.align 2, 0
-_080AFC30: .4byte 0x02019338
+_080AFC30: .4byte gSharedMem + 0x19338
_080AFC34: .4byte sub_80AFC74
_080AFC38: .4byte gTasks
_080AFC3C:
@@ -9382,7 +9382,7 @@ _080AFCA6:
mov r0, r8
bl DestroyTask
lsls r1, r7, 2
- ldr r0, _080AFCD8 @ =0x02019338
+ ldr r0, _080AFCD8 @ =gSharedMem + 0x19338
adds r1, r0
ldrb r2, [r1, 0x2]
movs r0, 0x5
@@ -9392,7 +9392,7 @@ _080AFCA6:
b _080AFE1C
.align 2, 0
_080AFCD4: .4byte gTasks
-_080AFCD8: .4byte 0x02019338
+_080AFCD8: .4byte gSharedMem + 0x19338
_080AFCDC:
cmp r3, 0
bne _080AFD28
@@ -9582,7 +9582,7 @@ _080AFE3C:
movs r3, 0x1
bl CreateSprite
lsls r1, r4, 2
- ldr r2, _080AFE74 @ =0x02019338
+ ldr r2, _080AFE74 @ =gSharedMem + 0x19338
adds r1, r2
strb r0, [r1]
adds r4, 0x1
@@ -9596,7 +9596,7 @@ _080AFE64: .4byte gUnknown_083CA350
_080AFE68: .4byte gUnknown_083CA338
_080AFE6C: .4byte gUnknown_02038696
_080AFE70: .4byte gSpriteTemplate_83CA3AC
-_080AFE74: .4byte 0x02019338
+_080AFE74: .4byte gSharedMem + 0x19338
thumb_func_end sub_80AFE30
thumb_func_start sub_80AFE78
@@ -9605,7 +9605,7 @@ sub_80AFE78: @ 80AFE78
lsls r0, 24
lsrs r6, r0, 24
lsls r2, r6, 2
- ldr r3, _080AFEB0 @ =0x02019338
+ ldr r3, _080AFEB0 @ =gSharedMem + 0x19338
adds r2, r3
ldrb r0, [r2, 0x2]
movs r1, 0x1
@@ -9629,7 +9629,7 @@ sub_80AFE78: @ 80AFE78
movs r5, 0x38
b _080AFEBA
.align 2, 0
-_080AFEB0: .4byte 0x02019338
+_080AFEB0: .4byte gSharedMem + 0x19338
_080AFEB4:
cmp r0, 0
bge _080AFEBA
@@ -9700,7 +9700,7 @@ _080AFF14:
sub_80AFF28: @ 80AFF28
push {r4,lr}
movs r3, 0
- ldr r2, _080AFF54 @ =0x02019338
+ ldr r2, _080AFF54 @ =gSharedMem + 0x19338
ldrb r1, [r2, 0x2]
movs r0, 0x1
ands r0, r1
@@ -9723,7 +9723,7 @@ _080AFF4C:
movs r0, 0
b _080AFF5A
.align 2, 0
-_080AFF54: .4byte 0x02019338
+_080AFF54: .4byte gSharedMem + 0x19338
_080AFF58:
movs r0, 0x1
_080AFF5A:
@@ -9746,7 +9746,7 @@ sub_80AFF60: @ 80AFF60
movs r0, 0x2E
ldrsh r1, [r3, r0]
lsls r1, 2
- ldr r0, _080AFF8C @ =0x02019338
+ ldr r0, _080AFF8C @ =gSharedMem + 0x19338
adds r1, r0
ldrb r2, [r1, 0x2]
movs r0, 0x2
@@ -9757,7 +9757,7 @@ sub_80AFF60: @ 80AFF60
str r0, [r3, 0x1C]
b _080AFF9A
.align 2, 0
-_080AFF8C: .4byte 0x02019338
+_080AFF8C: .4byte gSharedMem + 0x19338
_080AFF90: .4byte SpriteCallbackDummy
_080AFF94:
ldrh r0, [r3, 0x32]
@@ -9775,7 +9775,7 @@ sub_80AFFA0: @ 80AFFA0
movs r2, 0
ldr r6, _080AFFD0 @ =gSprites
ldr r5, _080AFFD4 @ =gUnknown_083CA338
- ldr r3, _080AFFD8 @ =0x02019338
+ ldr r3, _080AFFD8 @ =gSharedMem + 0x19338
ldr r4, _080AFFDC @ =gUnknown_02038696
_080AFFAC:
ldrb r0, [r3]
@@ -9798,7 +9798,7 @@ _080AFFAC:
.align 2, 0
_080AFFD0: .4byte gSprites
_080AFFD4: .4byte gUnknown_083CA338
-_080AFFD8: .4byte 0x02019338
+_080AFFD8: .4byte gSharedMem + 0x19338
_080AFFDC: .4byte gUnknown_02038696
thumb_func_end sub_80AFFA0
@@ -9810,7 +9810,7 @@ sub_80AFFE0: @ 80AFFE0
movs r3, 0
ldr r6, _080B0008 @ =gUnknown_02038696
ldr r4, _080B000C @ =gSprites
- ldr r2, _080B0010 @ =0x02019338
+ ldr r2, _080B0010 @ =gSharedMem + 0x19338
_080AFFEE:
adds r0, r3, r6
ldrb r0, [r0]
@@ -9828,7 +9828,7 @@ _080AFFEE:
.align 2, 0
_080B0008: .4byte gUnknown_02038696
_080B000C: .4byte gSprites
-_080B0010: .4byte 0x02019338
+_080B0010: .4byte gSharedMem + 0x19338
_080B0014:
ldrb r0, [r2]
lsls r1, r0, 4
@@ -9877,7 +9877,7 @@ _080B004A:
movs r3, 0
bl CreateSprite
lsls r4, r5, 2
- ldr r1, _080B00C0 @ =0x02019338
+ ldr r1, _080B00C0 @ =gSharedMem + 0x19338
adds r4, r1
strb r0, [r4, 0x1]
ldrb r1, [r4, 0x1]
@@ -9913,7 +9913,7 @@ _080B00B0: .4byte gSprites
_080B00B4: .4byte gUnknown_083CA3C4
_080B00B8: .4byte gSpriteTemplate_83CA3F4
_080B00BC: .4byte gUnknown_02038696
-_080B00C0: .4byte 0x02019338
+_080B00C0: .4byte gSharedMem + 0x19338
_080B00C4: .4byte gSubspriteTables_83CA464
thumb_func_end sub_80B0034
@@ -9941,7 +9941,7 @@ sub_80B00C8: @ 80B00C8
movs r3, 0x4
orrs r2, r3
strb r2, [r1]
- ldr r1, _080B0114 @ =0x02019204
+ ldr r1, _080B0114 @ =gSharedMem + 0x19204
adds r1, 0x58
strb r0, [r1]
pop {r0}
@@ -9951,7 +9951,7 @@ _080B0104: .4byte gUnknown_083CA46C
_080B0108: .4byte gUnknown_083CA474
_080B010C: .4byte gSpriteTemplate_83CA484
_080B0110: .4byte gSprites
-_080B0114: .4byte 0x02019204
+_080B0114: .4byte gSharedMem + 0x19204
thumb_func_end sub_80B00C8
thumb_func_start nullsub_18
@@ -9982,7 +9982,7 @@ _080B012C:
adds r0, r5, 0x1
mov r8, r0
ldr r7, _080B01A4 @ =gSprites
- ldr r6, _080B01A8 @ =0x0201920d
+ ldr r6, _080B01A8 @ =gSharedMem + 0x1920D
_080B014A:
lsls r2, r4, 1
adds r0, r2, r4
@@ -10027,7 +10027,7 @@ _080B0198: .4byte gUnknown_083CC3AC
_080B019C: .4byte gUnknown_083CC3B4
_080B01A0: .4byte gUnknown_083CA330
_080B01A4: .4byte gSprites
-_080B01A8: .4byte 0x0201920d
+_080B01A8: .4byte gSharedMem + 0x1920D
_080B01AC: .4byte gSpriteTemplate_83CC454
thumb_func_end unref_sub_80B011C
@@ -10035,7 +10035,7 @@ _080B01AC: .4byte gSpriteTemplate_83CC454
unref_sub_80B01B0: @ 80B01B0
push {r4,r5,lr}
movs r2, 0
- ldr r5, _080B01D4 @ =0x0201920d
+ ldr r5, _080B01D4 @ =gSharedMem + 0x1920D
ldr r4, _080B01D8 @ =gSprites + 0x1C
ldr r3, _080B01DC @ =sub_80B0238
_080B01BA:
@@ -10053,7 +10053,7 @@ _080B01BA:
pop {r0}
bx r0
.align 2, 0
-_080B01D4: .4byte 0x0201920d
+_080B01D4: .4byte gSharedMem + 0x1920D
_080B01D8: .4byte gSprites + 0x1C
_080B01DC: .4byte sub_80B0238
thumb_func_end unref_sub_80B01B0
@@ -10063,7 +10063,7 @@ unref_sub_80B01E0: @ 80B01E0
push {r4,r5,lr}
movs r3, 0
ldr r2, _080B0224 @ =gSprites
- ldr r4, _080B0228 @ =0x02019204
+ ldr r4, _080B0228 @ =gSharedMem + 0x19204
ldrb r1, [r4, 0x9]
lsls r0, r1, 4
adds r0, r1
@@ -10097,7 +10097,7 @@ _080B021A:
b _080B0232
.align 2, 0
_080B0224: .4byte gSprites
-_080B0228: .4byte 0x02019204
+_080B0228: .4byte gSharedMem + 0x19204
_080B022C: .4byte SpriteCallbackDummy
_080B0230:
movs r0, 0x1
@@ -10186,7 +10186,7 @@ sub_80B02A8: @ 80B02A8
lsls r0, r1, 3
subs r0, r1
lsls r0, 2
- ldr r1, _080B02EC @ =0x02019260
+ ldr r1, _080B02EC @ =gSharedMem + 0x19260
adds r0, r1
ldrb r1, [r0, 0xB]
lsls r1, 30
@@ -10204,7 +10204,7 @@ sub_80B02A8: @ 80B02A8
pop {r0}
bx r0
.align 2, 0
-_080B02EC: .4byte 0x02019260
+_080B02EC: .4byte gSharedMem + 0x19260
_080B02F0: .4byte sub_80B02F4
thumb_func_end sub_80B02A8
@@ -10243,7 +10243,7 @@ sub_80B0324: @ 80B0324
bl CreateTask
lsls r0, 24
lsrs r0, 24
- ldr r1, _080B0360 @ =0x02019204
+ ldr r1, _080B0360 @ =gSharedMem + 0x19204
strb r0, [r1, 0xD]
movs r2, 0
lsls r1, r0, 2
@@ -10266,7 +10266,7 @@ _080B0342:
bx r0
.align 2, 0
_080B035C: .4byte sub_80B0458
-_080B0360: .4byte 0x02019204
+_080B0360: .4byte gSharedMem + 0x19204
_080B0364: .4byte gTasks + 0x8
thumb_func_end sub_80B0324
@@ -10276,7 +10276,7 @@ sub_80B0368: @ 80B0368
lsls r0, 24
lsrs r0, 24
ldr r3, _080B03A0 @ =gTasks
- ldr r5, _080B03A4 @ =0x02019204
+ ldr r5, _080B03A4 @ =gSharedMem + 0x19204
ldrb r2, [r5, 0xD]
lsls r1, r2, 2
adds r1, r2
@@ -10301,7 +10301,7 @@ sub_80B0368: @ 80B0368
bx r0
.align 2, 0
_080B03A0: .4byte gTasks
-_080B03A4: .4byte 0x02019204
+_080B03A4: .4byte gSharedMem + 0x19204
thumb_func_end sub_80B0368
thumb_func_start sub_80B03A8
@@ -10342,7 +10342,7 @@ sub_80B03D8: @ 80B03D8
adds r0, r2
ldrb r0, [r0, 0x8]
adds r4, r0, 0
- ldr r6, _080B0450 @ =0x02019204
+ ldr r6, _080B0450 @ =gSharedMem + 0x19204
ldrb r1, [r6, 0xD]
lsls r0, r1, 2
adds r0, r1
@@ -10390,7 +10390,7 @@ _080B0444:
bx r0
.align 2, 0
_080B044C: .4byte gTasks
-_080B0450: .4byte 0x02019204
+_080B0450: .4byte gSharedMem + 0x19204
_080B0454: .4byte 0x00004bff
thumb_func_end sub_80B03D8
@@ -10466,7 +10466,7 @@ _080B04CC:
eors r1, r2
strh r1, [r0]
_080B04DA:
- ldr r0, _080B0510 @ =0x02019204
+ ldr r0, _080B0510 @ =gSharedMem + 0x19204
adds r0, 0x14
adds r0, r6, r0
ldrb r0, [r0]
@@ -10493,7 +10493,7 @@ _080B04F6:
pop {r0}
bx r0
.align 2, 0
-_080B0510: .4byte 0x02019204
+_080B0510: .4byte gSharedMem + 0x19204
_080B0514: .4byte 0x00004bff
thumb_func_end sub_80B0458
@@ -10503,7 +10503,7 @@ sub_80B0518: @ 80B0518
ldr r0, _080B0540 @ =sub_80B05FC
movs r1, 0x1E
bl CreateTask
- ldr r1, _080B0544 @ =0x02019204
+ ldr r1, _080B0544 @ =gSharedMem + 0x19204
strb r0, [r1, 0xE]
movs r4, 0
_080B0528:
@@ -10519,7 +10519,7 @@ _080B0528:
bx r0
.align 2, 0
_080B0540: .4byte sub_80B05FC
-_080B0544: .4byte 0x02019204
+_080B0544: .4byte gSharedMem + 0x19204
thumb_func_end sub_80B0518
thumb_func_start sub_80B0548
@@ -10528,7 +10528,7 @@ sub_80B0548: @ 80B0548
lsls r0, 24
lsrs r0, 24
ldr r3, _080B0580 @ =gTasks
- ldr r4, _080B0584 @ =0x02019204
+ ldr r4, _080B0584 @ =gSharedMem + 0x19204
ldrb r2, [r4, 0xE]
lsls r1, r2, 2
adds r1, r2
@@ -10554,7 +10554,7 @@ sub_80B0548: @ 80B0548
bx r0
.align 2, 0
_080B0580: .4byte gTasks
-_080B0584: .4byte 0x02019204
+_080B0584: .4byte gSharedMem + 0x19204
thumb_func_end sub_80B0548
thumb_func_start sub_80B0588
@@ -10757,7 +10757,7 @@ unref_sub_80B06E0: @ 80B06E0
lsls r6, r0, 3
ldr r0, _080B0740 @ =gTasks + 0x8
mov r8, r0
- ldr r1, _080B0744 @ =0x02019338
+ ldr r1, _080B0744 @ =gSharedMem + 0x19338
mov r12, r1
_080B0704:
lsls r4, r3, 2
@@ -10792,7 +10792,7 @@ _080B0726:
.align 2, 0
_080B073C: .4byte sub_80B0748
_080B0740: .4byte gTasks + 0x8
-_080B0744: .4byte 0x02019338
+_080B0744: .4byte gSharedMem + 0x19338
thumb_func_end unref_sub_80B06E0
thumb_func_start sub_80B0748
@@ -11067,7 +11067,7 @@ _080B0958:
cmp r4, 0x4
bne _080B0980
movs r4, 0
- ldr r3, _080B0990 @ =0x02019338
+ ldr r3, _080B0990 @ =gSharedMem + 0x19338
movs r5, 0x3
negs r5, r5
_080B0964:
@@ -11094,7 +11094,7 @@ _080B0980:
pop {r0}
bx r0
.align 2, 0
-_080B0990: .4byte 0x02019338
+_080B0990: .4byte gSharedMem + 0x19338
thumb_func_end sub_80B0748
thumb_func_start unref_sub_80B0994
@@ -11103,7 +11103,7 @@ unref_sub_80B0994: @ 80B0994
lsls r0, 24
cmp r0, 0
beq _080B09A6
- ldr r0, _080B09AC @ =0x02019204
+ ldr r0, _080B09AC @ =gSharedMem + 0x19204
ldrb r1, [r0, 0x6]
movs r2, 0x4
orrs r1, r2
@@ -11112,7 +11112,7 @@ _080B09A6:
pop {r0}
bx r0
.align 2, 0
-_080B09AC: .4byte 0x02019204
+_080B09AC: .4byte gSharedMem + 0x19204
thumb_func_end unref_sub_80B0994
thumb_func_start sub_80B09B0
@@ -11123,7 +11123,7 @@ sub_80B09B0: @ 80B09B0
lsls r0, r2, 3
subs r0, r2
lsls r0, 2
- ldr r1, _080B09D4 @ =0x02019260
+ ldr r1, _080B09D4 @ =gSharedMem + 0x19260
adds r0, r1
ldrb r1, [r0, 0x15]
movs r0, 0x10
@@ -11134,7 +11134,7 @@ sub_80B09B0: @ 80B09B0
bl sub_80B0368
b _080B09DE
.align 2, 0
-_080B09D4: .4byte 0x02019260
+_080B09D4: .4byte gSharedMem + 0x19260
_080B09D8:
adds r0, r2, 0
bl sub_80B03A8
@@ -11401,7 +11401,7 @@ sub_80B0BC4: @ 80B0BC4
movs r1, 0x30
ldrsh r2, [r0, r1]
lsls r2, 2
- ldr r1, _080B0C3C @ =0x02019338
+ ldr r1, _080B0C3C @ =gSharedMem + 0x19338
adds r2, r1
ldrb r1, [r2, 0x2]
movs r3, 0x2
@@ -11435,7 +11435,7 @@ sub_80B0BC4: @ 80B0BC4
b _080B0C4E
.align 2, 0
_080B0C38: .4byte gSprites
-_080B0C3C: .4byte 0x02019338
+_080B0C3C: .4byte gSharedMem + 0x19338
_080B0C40: .4byte sub_80B0C5C
_080B0C44: .4byte SpriteCallbackDummy
_080B0C48:
@@ -11502,7 +11502,7 @@ sub_80B0CB0: @ 80B0CB0
movs r1, 0x30
ldrsh r2, [r0, r1]
lsls r2, 2
- ldr r1, _080B0CD8 @ =0x02019338
+ ldr r1, _080B0CD8 @ =gSharedMem + 0x19338
adds r2, r1
ldrb r3, [r2, 0x2]
movs r1, 0x3
@@ -11517,14 +11517,14 @@ sub_80B0CB0: @ 80B0CB0
pop {r0}
bx r0
.align 2, 0
-_080B0CD8: .4byte 0x02019338
+_080B0CD8: .4byte gSharedMem + 0x19338
thumb_func_end sub_80B0CB0
thumb_func_start sub_80B0CDC
sub_80B0CDC: @ 80B0CDC
lsls r0, 24
lsrs r0, 22
- ldr r1, _080B0CF0 @ =0x02019338
+ ldr r1, _080B0CF0 @ =gSharedMem + 0x19338
adds r0, r1
ldrb r2, [r0, 0x2]
movs r1, 0x3
@@ -11533,7 +11533,7 @@ sub_80B0CDC: @ 80B0CDC
strb r1, [r0, 0x2]
bx lr
.align 2, 0
-_080B0CF0: .4byte 0x02019338
+_080B0CF0: .4byte gSharedMem + 0x19338
thumb_func_end sub_80B0CDC
thumb_func_start unref_sub_80B0CF4
@@ -11542,7 +11542,7 @@ unref_sub_80B0CF4: @ 80B0CF4
mov r7, r8
push {r7}
sub sp, 0x8
- ldr r0, _080B0D5C @ =0x02000000
+ ldr r0, _080B0D5C @ =gSharedMem
movs r1, 0xC0
lsls r1, 9
adds r0, r1
@@ -11589,7 +11589,7 @@ _080B0D1C:
bl sub_80AEB30
b _080B0D70
.align 2, 0
-_080B0D5C: .4byte 0x02000000
+_080B0D5C: .4byte gSharedMem
_080B0D60: .4byte gUnknown_083CA308
_080B0D64: .4byte gUnknown_083CA310
_080B0D68: .4byte gUnknown_03004210
@@ -11612,7 +11612,7 @@ sub_80B0D7C: @ 80B0D7C
push {r6,r7}
sub sp, 0x10
movs r5, 0
- ldr r0, _080B0ED0 @ =0x02000000
+ ldr r0, _080B0ED0 @ =gSharedMem
movs r1, 0xC0
lsls r1, 9
adds r0, r1
@@ -11662,7 +11662,7 @@ _080B0DE2:
lsls r0, r4, 3
subs r0, r4
lsls r0, 2
- ldr r1, _080B0EE0 @ =0x02019260
+ ldr r1, _080B0EE0 @ =gSharedMem + 0x19260
adds r0, r1
ldrh r2, [r0, 0x4]
movs r1, 0x4
@@ -11718,7 +11718,7 @@ _080B0E52:
lsls r0, r4, 3
subs r0, r4
lsls r0, 2
- ldr r1, _080B0EE0 @ =0x02019260
+ ldr r1, _080B0EE0 @ =gSharedMem + 0x19260
adds r0, r1
ldrh r2, [r0, 0x2]
movs r1, 0x2
@@ -11778,11 +11778,11 @@ _080B0EC2:
pop {r0}
bx r0
.align 2, 0
-_080B0ED0: .4byte 0x02000000
+_080B0ED0: .4byte gSharedMem
_080B0ED4: .4byte gUnknown_083CA308
_080B0ED8: .4byte gUnknown_083CA310
_080B0EDC: .4byte gUnknown_03004210
-_080B0EE0: .4byte 0x02019260
+_080B0EE0: .4byte gSharedMem + 0x19260
_080B0EE4: .4byte gUnknown_02038696
thumb_func_end sub_80B0D7C
@@ -11993,7 +11993,7 @@ _080B1050:
ldr r3, _080B1070 @ =gUnknown_02038696
movs r6, 0
_080B1060:
- ldr r0, _080B1074 @ =0x02019260
+ ldr r0, _080B1074 @ =gSharedMem + 0x19260
adds r0, r6, r0
ldrb r0, [r0, 0xB]
lsls r0, 30
@@ -12003,7 +12003,7 @@ _080B1060:
b _080B1082
.align 2, 0
_080B1070: .4byte gUnknown_02038696
-_080B1074: .4byte 0x02019260
+_080B1074: .4byte gSharedMem + 0x19260
_080B1078:
adds r0, r2, 0x1
lsls r0, 24
@@ -12037,10 +12037,10 @@ _080B10AC:
lsls r0, r4, 3
subs r0, r4
lsls r0, 2
- ldr r6, _080B1110 @ =0x02019244
+ ldr r6, _080B1110 @ =gSharedMem + 0x19244
adds r1, r0, r6
ldrb r2, [r1, 0xB]
- ldr r7, _080B1114 @ =0x02019260
+ ldr r7, _080B1114 @ =gSharedMem + 0x19260
adds r0, r7
ldrb r3, [r0, 0xB]
mov r1, r9
@@ -12087,8 +12087,8 @@ _080B10FC:
bx r0
.align 2, 0
_080B110C: .4byte gUnknown_02038696
-_080B1110: .4byte 0x02019244
-_080B1114: .4byte 0x02019260
+_080B1110: .4byte gSharedMem + 0x19244
+_080B1114: .4byte gSharedMem + 0x19260
thumb_func_end sub_80B0F28
thumb_func_start sub_80B1118
@@ -12097,7 +12097,7 @@ sub_80B1118: @ 80B1118
movs r4, 0
movs r5, 0xA0
_080B111E:
- ldr r0, _080B1144 @ =0x02018004
+ ldr r0, _080B1144 @ =gSharedMem + 0x18004
adds r0, r5, r0
ldr r1, _080B1148 @ =gUnknown_02038696
adds r1, r4, r1
@@ -12115,7 +12115,7 @@ _080B111E:
pop {r0}
bx r0
.align 2, 0
-_080B1144: .4byte 0x02018004
+_080B1144: .4byte gSharedMem + 0x18004
_080B1148: .4byte gUnknown_02038696
thumb_func_end sub_80B1118
@@ -12129,7 +12129,7 @@ sub_80B114C: @ 80B114C
lsls r7, r6, 3
subs r0, r7, r6
lsls r0, 2
- ldr r4, _080B11B8 @ =0x02019260
+ ldr r4, _080B11B8 @ =gSharedMem + 0x19260
adds r5, r0, r4
movs r0, 0
strh r0, [r5, 0x2]
@@ -12176,13 +12176,13 @@ _080B1176:
strb r0, [r5, 0xB]
b _080B11D8
.align 2, 0
-_080B11B8: .4byte 0x02019260
+_080B11B8: .4byte gSharedMem + 0x19260
_080B11BC: .4byte gContestMoves
_080B11C0:
lsls r4, r6, 3
subs r1, r4, r6
lsls r1, 2
- ldr r3, _080B1264 @ =0x02019260
+ ldr r3, _080B1264 @ =gSharedMem + 0x19260
adds r1, r3
ldrb r2, [r1, 0xB]
movs r0, 0x71
@@ -12224,7 +12224,7 @@ _080B1204:
ble _080B1204
subs r0, r7, r6
lsls r0, 2
- ldr r1, _080B1264 @ =0x02019260
+ ldr r1, _080B1264 @ =gSharedMem + 0x19260
adds r5, r0, r1
ldrb r1, [r5, 0x15]
movs r0, 0x10
@@ -12249,7 +12249,7 @@ _080B123C:
bl _call_via_r0
subs r0, r7, r6
lsls r0, 2
- ldr r1, _080B1264 @ =0x02019260
+ ldr r1, _080B1264 @ =gSharedMem + 0x19260
adds r2, r0, r1
ldrb r1, [r2, 0x10]
movs r0, 0x30
@@ -12262,7 +12262,7 @@ _080B123C:
ldrsb r0, [r2, r0]
b _080B128A
.align 2, 0
-_080B1264: .4byte 0x02019260
+_080B1264: .4byte gSharedMem + 0x19260
_080B1268: .4byte gContestEffects
_080B126C: .4byte gContestEffectFuncs
_080B1270:
@@ -12286,7 +12286,7 @@ _080B128A:
strh r0, [r2, 0x2]
subs r0, r7, r6
lsls r0, 2
- ldr r1, _080B12E8 @ =0x02019260
+ ldr r1, _080B12E8 @ =gSharedMem + 0x19260
adds r4, r0, r1
movs r0, 0
strb r0, [r4, 0x16]
@@ -12327,12 +12327,12 @@ _080B128A:
strb r1, [r4, 0x15]
b _080B1322
.align 2, 0
-_080B12E8: .4byte 0x02019260
+_080B12E8: .4byte gSharedMem + 0x19260
_080B12EC:
ldr r2, _080B1310 @ =gContestMoves
subs r0, r7, r6
lsls r0, 2
- ldr r1, _080B1314 @ =0x02019260
+ ldr r1, _080B1314 @ =gSharedMem + 0x19260
adds r3, r0, r1
ldrh r0, [r3, 0x6]
lsls r0, 3
@@ -12348,7 +12348,7 @@ _080B12EC:
b _080B1320
.align 2, 0
_080B1310: .4byte gContestMoves
-_080B1314: .4byte 0x02019260
+_080B1314: .4byte gSharedMem + 0x19260
_080B1318:
ldrb r1, [r3, 0x15]
movs r0, 0x11
@@ -12359,7 +12359,7 @@ _080B1320:
_080B1322:
subs r0, r7, r6
lsls r0, 2
- ldr r1, _080B139C @ =0x02019260
+ ldr r1, _080B139C @ =gSharedMem + 0x19260
mov r8, r1
adds r4, r0, r1
ldrb r1, [r4, 0x15]
@@ -12420,7 +12420,7 @@ _080B137A:
movs r0, 0x3C
b _080B13A6
.align 2, 0
-_080B139C: .4byte 0x02019260
+_080B139C: .4byte gSharedMem + 0x19260
_080B13A0:
movs r0, 0xA
b _080B13A6
@@ -12453,7 +12453,7 @@ _080B13CA:
_080B13D2:
subs r0, r7, r6
lsls r0, 2
- ldr r1, _080B13E8 @ =0x02019260
+ ldr r1, _080B13E8 @ =gSharedMem + 0x19260
adds r0, r1
strb r2, [r0, 0x1B]
_080B13DC:
@@ -12463,7 +12463,7 @@ _080B13DC:
pop {r0}
bx r0
.align 2, 0
-_080B13E8: .4byte 0x02019260
+_080B13E8: .4byte gSharedMem + 0x19260
thumb_func_end sub_80B114C
thumb_func_start sub_80B13EC
@@ -12473,12 +12473,12 @@ sub_80B13EC: @ 80B13EC
lsls r2, r0, 3
subs r2, r0
lsls r2, 2
- ldr r0, _080B1400 @ =0x02019260
+ ldr r0, _080B1400 @ =gSharedMem + 0x19260
adds r2, r0
strb r1, [r2, 0x13]
bx lr
.align 2, 0
-_080B1400: .4byte 0x02019260
+_080B1400: .4byte gSharedMem + 0x19260
thumb_func_end sub_80B13EC
thumb_func_start sub_80B1404
@@ -12488,12 +12488,12 @@ sub_80B1404: @ 80B1404
lsls r2, r0, 3
subs r2, r0
lsls r2, 2
- ldr r0, _080B1418 @ =0x02019260
+ ldr r0, _080B1418 @ =gSharedMem + 0x19260
adds r2, r0
strb r1, [r2, 0x14]
bx lr
.align 2, 0
-_080B1418: .4byte 0x02019260
+_080B1418: .4byte gSharedMem + 0x19260
thumb_func_end sub_80B1404
thumb_func_start sub_80B141C
@@ -12557,7 +12557,7 @@ sub_80B146C: @ 80B146C
lsls r1, r4, 3
subs r1, r4
lsls r1, 2
- ldr r4, _080B14D4 @ =0x02019260
+ ldr r4, _080B14D4 @ =gSharedMem + 0x19260
adds r1, r4
ldrh r2, [r1, 0x6]
movs r1, 0xD
@@ -12588,7 +12588,7 @@ sub_80B146C: @ 80B146C
_080B14C8: .4byte gStringVar1
_080B14CC: .4byte gContestMons + 0x2
_080B14D0: .4byte gStringVar2
-_080B14D4: .4byte 0x02019260
+_080B14D4: .4byte gSharedMem + 0x19260
_080B14D8: .4byte gMoveNames
_080B14DC: .4byte gContestMoves
_080B14E0: .4byte gStringVar3
@@ -12666,7 +12666,7 @@ sub_80B157C: @ 80B157C
lsls r1, r0, 3
subs r1, r0
lsls r1, 2
- ldr r0, _080B1598 @ =0x02019260
+ ldr r0, _080B1598 @ =gSharedMem + 0x19260
adds r1, r0
ldrb r0, [r1, 0xC]
movs r2, 0x1
@@ -12676,7 +12676,7 @@ sub_80B157C: @ 80B157C
strh r0, [r1, 0x6]
bx lr
.align 2, 0
-_080B1598: .4byte 0x02019260
+_080B1598: .4byte gSharedMem + 0x19260
thumb_func_end sub_80B157C
thumb_func_start sub_80B159C
@@ -12707,7 +12707,7 @@ _080B15B8:
cmp r4, 0x3
ble _080B15B8
movs r4, 0
- ldr r7, _080B1604 @ =0x02019260
+ ldr r7, _080B1604 @ =gSharedMem + 0x19260
adds r5, r2, 0
movs r1, 0x1
mov r8, r1
@@ -12737,7 +12737,7 @@ _080B15E8:
b _080B163A
.align 2, 0
_080B1600: .4byte gUnknown_02038696
-_080B1604: .4byte 0x02019260
+_080B1604: .4byte gSharedMem + 0x19260
_080B1608:
mov r1, sp
adds r0, r1, r2
@@ -12809,7 +12809,7 @@ _080B1680:
cmp r4, 0x3
ble _080B15D6
movs r4, 0
- ldr r5, _080B16CC @ =0x020192d0
+ ldr r5, _080B16CC @ =gSharedMem + 0x192D0
adds r3, r5, 0
subs r3, 0x60
movs r6, 0xFF
@@ -12844,7 +12844,7 @@ _080B1692:
bx r0
.align 2, 0
_080B16C8: .4byte gUnknown_02038696
-_080B16CC: .4byte 0x020192d0
+_080B16CC: .4byte gSharedMem + 0x192D0
thumb_func_end sub_80B159C
thumb_func_start sub_80B16D0
@@ -12868,7 +12868,7 @@ sub_80B16D0: @ 80B16D0
strb r0, [r3]
ldr r0, _080B1708 @ =SpriteCallbackDummy
str r0, [r2, 0x1C]
- ldr r2, _080B170C @ =0x02019204
+ ldr r2, _080B170C @ =gSharedMem + 0x19204
ldrb r1, [r2, 0x6]
movs r0, 0x11
negs r0, r0
@@ -12879,7 +12879,7 @@ _080B1702:
bx r0
.align 2, 0
_080B1708: .4byte SpriteCallbackDummy
-_080B170C: .4byte 0x02019204
+_080B170C: .4byte gSharedMem + 0x19204
thumb_func_end sub_80B16D0
thumb_func_start sub_80B1710
@@ -12887,7 +12887,7 @@ sub_80B1710: @ 80B1710
push {r4,r5,lr}
lsls r0, 24
lsrs r1, r0, 24
- ldr r0, _080B172C @ =0x02019204
+ ldr r0, _080B172C @ =gSharedMem + 0x19204
ldrb r5, [r0, 0x12]
cmp r1, 0x8
bls _080B1720
@@ -12899,7 +12899,7 @@ _080B1720:
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_080B172C: .4byte 0x02019204
+_080B172C: .4byte gSharedMem + 0x19204
_080B1730: .4byte _080B1734
.align 2, 0
_080B1734:
@@ -13106,7 +13106,7 @@ _080B18E4:
adds r2, r4
ldr r0, _080B1920 @ =sub_80B16D0
str r0, [r2]
- ldr r2, _080B1924 @ =0x02019204
+ ldr r2, _080B1924 @ =gSharedMem + 0x19204
ldrb r0, [r2, 0x6]
movs r1, 0x10
orrs r0, r1
@@ -13119,7 +13119,7 @@ _080B1914: .4byte gSprites
_080B1918: .4byte 0x000003ff
_080B191C: .4byte 0xfffffc00
_080B1920: .4byte sub_80B16D0
-_080B1924: .4byte 0x02019204
+_080B1924: .4byte gSharedMem + 0x19204
thumb_func_end sub_80B1710
thumb_func_start sub_80B1928
@@ -13130,7 +13130,7 @@ sub_80B1928: @ 80B1928
mov r5, r8
push {r5-r7}
movs r5, 0
- ldr r6, _080B19BC @ =0x02019204
+ ldr r6, _080B19BC @ =gSharedMem + 0x19204
ldr r0, _080B19C0 @ =gSprites
mov r10, r0
movs r1, 0x58
@@ -13199,7 +13199,7 @@ _080B19A8:
pop {r0}
bx r0
.align 2, 0
-_080B19BC: .4byte 0x02019204
+_080B19BC: .4byte gSharedMem + 0x19204
_080B19C0: .4byte gSprites
_080B19C4: .4byte 0x06010000
_080B19C8: .4byte REG_BG0CNT
@@ -13346,7 +13346,7 @@ _080B1AD6:
movs r1, 0x1
eors r0, r1
strh r0, [r4, 0xE]
- ldr r0, _080B1B10 @ =0x02019204
+ ldr r0, _080B1B10 @ =gSharedMem + 0x19204
ldrb r0, [r0, 0x13]
lsls r0, 24
asrs r0, 24
@@ -13370,7 +13370,7 @@ _080B1B06:
bx r0
.align 2, 0
_080B1B0C: .4byte 0x00007fff
-_080B1B10: .4byte 0x02019204
+_080B1B10: .4byte gSharedMem + 0x19204
thumb_func_end c3_08130B10
thumb_func_start sub_80B1B14
@@ -13380,7 +13380,7 @@ sub_80B1B14: @ 80B1B14
movs r1, 0xA
bl CreateTask
ldr r4, _080B1B5C @ =gSprites
- ldr r3, _080B1B60 @ =0x02019204
+ ldr r3, _080B1B60 @ =gSharedMem + 0x19204
adds r2, r3, 0
adds r2, 0x58
ldrb r1, [r2]
@@ -13411,7 +13411,7 @@ sub_80B1B14: @ 80B1B14
.align 2, 0
_080B1B58: .4byte sub_80B1B68
_080B1B5C: .4byte gSprites
-_080B1B60: .4byte 0x02019204
+_080B1B60: .4byte gSharedMem + 0x19204
_080B1B64: .4byte 0x0000ffba
thumb_func_end sub_80B1B14
@@ -13421,7 +13421,7 @@ sub_80B1B68: @ 80B1B68
lsls r0, 24
lsrs r0, 24
adds r3, r0, 0
- ldr r4, _080B1BD0 @ =0x02019204
+ ldr r4, _080B1BD0 @ =gSharedMem + 0x19204
adds r0, r4, 0
adds r0, 0x58
ldrb r1, [r0]
@@ -13471,7 +13471,7 @@ _080B1BCA:
pop {r0}
bx r0
.align 2, 0
-_080B1BD0: .4byte 0x02019204
+_080B1BD0: .4byte gSharedMem + 0x19204
_080B1BD4: .4byte gSprites
_080B1BD8: .4byte gTasks
thumb_func_end sub_80B1B68
@@ -13480,7 +13480,7 @@ _080B1BD8: .4byte gTasks
sub_80B1BDC: @ 80B1BDC
push {r4-r6,lr}
ldr r6, _080B1C04 @ =gSprites
- ldr r4, _080B1C08 @ =0x02019204
+ ldr r4, _080B1C08 @ =gSharedMem + 0x19204
adds r5, r4, 0
adds r5, 0x58
ldrb r0, [r5]
@@ -13500,7 +13500,7 @@ sub_80B1BDC: @ 80B1BDC
b _080B1C28
.align 2, 0
_080B1C04: .4byte gSprites
-_080B1C08: .4byte 0x02019204
+_080B1C08: .4byte gSharedMem + 0x19204
_080B1C0C:
ldr r0, _080B1C30 @ =sub_80B1C34
movs r1, 0xA
@@ -13530,7 +13530,7 @@ sub_80B1C34: @ 80B1C34
lsls r0, 24
lsrs r0, 24
adds r4, r0, 0
- ldr r5, _080B1CAC @ =0x02019204
+ ldr r5, _080B1CAC @ =gSharedMem + 0x19204
adds r0, r5, 0
adds r0, 0x58
ldrb r1, [r0]
@@ -13588,7 +13588,7 @@ _080B1CA6:
pop {r0}
bx r0
.align 2, 0
-_080B1CAC: .4byte 0x02019204
+_080B1CAC: .4byte gSharedMem + 0x19204
_080B1CB0: .4byte gSprites
_080B1CB4: .4byte gTasks
_080B1CB8: .4byte 0x0000ffba
@@ -13613,7 +13613,7 @@ sub_80B1CBC: @ 80B1CBC
lsls r4, 24
asrs r4, 24
strh r4, [r1, 0x8]
- ldr r2, _080B1CF8 @ =0x02019204
+ ldr r2, _080B1CF8 @ =gSharedMem + 0x19204
ldrb r0, [r2, 0x6]
movs r1, 0x20
orrs r0, r1
@@ -13624,7 +13624,7 @@ sub_80B1CBC: @ 80B1CBC
.align 2, 0
_080B1CF0: .4byte sub_80B1CFC
_080B1CF4: .4byte gTasks
-_080B1CF8: .4byte 0x02019204
+_080B1CF8: .4byte gSharedMem + 0x19204
thumb_func_end sub_80B1CBC
thumb_func_start sub_80B1CFC
@@ -13656,7 +13656,7 @@ _080B1D2A:
bl sub_80B1B14
b _080B1D44
_080B1D30:
- ldr r0, _080B1D4C @ =0x02019204
+ ldr r0, _080B1D4C @ =gSharedMem + 0x19204
ldrb r1, [r0, 0x6]
movs r0, 0x40
ands r0, r1
@@ -13671,7 +13671,7 @@ _080B1D44:
strh r0, [r4, 0x1C]
b _080B1D78
.align 2, 0
-_080B1D4C: .4byte 0x02019204
+_080B1D4C: .4byte gSharedMem + 0x19204
_080B1D50:
ldrh r0, [r4, 0x1E]
adds r1, r0, 0x1
@@ -13683,7 +13683,7 @@ _080B1D50:
movs r0, 0
strh r0, [r4, 0x1E]
bl sub_80B1928
- ldr r2, _080B1D80 @ =0x02019204
+ ldr r2, _080B1D80 @ =gSharedMem + 0x19204
ldrb r1, [r2, 0x6]
movs r0, 0x21
negs r0, r0
@@ -13696,13 +13696,13 @@ _080B1D78:
pop {r0}
bx r0
.align 2, 0
-_080B1D80: .4byte 0x02019204
+_080B1D80: .4byte gSharedMem + 0x19204
thumb_func_end sub_80B1CFC
thumb_func_start unref_sub_80B1D84
unref_sub_80B1D84: @ 80B1D84
ldr r3, _080B1DB0 @ =gSprites
- ldr r2, _080B1DB4 @ =0x02019204
+ ldr r2, _080B1DB4 @ =gSharedMem + 0x19204
adds r2, 0x58
ldrb r1, [r2]
lsls r0, r1, 4
@@ -13725,13 +13725,13 @@ unref_sub_80B1D84: @ 80B1D84
bx lr
.align 2, 0
_080B1DB0: .4byte gSprites
-_080B1DB4: .4byte 0x02019204
+_080B1DB4: .4byte gSharedMem + 0x19204
thumb_func_end unref_sub_80B1D84
thumb_func_start unref_sub_80B1DB8
unref_sub_80B1DB8: @ 80B1DB8
ldr r2, _080B1DD4 @ =gSprites
- ldr r0, _080B1DD8 @ =0x02019204
+ ldr r0, _080B1DD8 @ =gSharedMem + 0x19204
adds r0, 0x58
ldrb r1, [r0]
lsls r0, r1, 4
@@ -13746,7 +13746,7 @@ unref_sub_80B1DB8: @ 80B1DB8
bx lr
.align 2, 0
_080B1DD4: .4byte gSprites
-_080B1DD8: .4byte 0x02019204
+_080B1DD8: .4byte gSharedMem + 0x19204
thumb_func_end unref_sub_80B1DB8
thumb_func_start sub_80B1DDC
@@ -13755,7 +13755,7 @@ sub_80B1DDC: @ 80B1DDC
ldr r0, _080B1DF4 @ =sub_80B1DFC
movs r1, 0xF
bl CreateTask
- ldr r2, _080B1DF8 @ =0x02019204
+ ldr r2, _080B1DF8 @ =gSharedMem + 0x19204
ldrb r0, [r2, 0x6]
movs r1, 0x80
orrs r0, r1
@@ -13764,7 +13764,7 @@ sub_80B1DDC: @ 80B1DDC
bx r0
.align 2, 0
_080B1DF4: .4byte sub_80B1DFC
-_080B1DF8: .4byte 0x02019204
+_080B1DF8: .4byte gSharedMem + 0x19204
thumb_func_end sub_80B1DDC
thumb_func_start sub_80B1DFC
@@ -13791,7 +13791,7 @@ sub_80B1DFC: @ 80B1DFC
ldrsh r0, [r3, r1]
cmp r0, 0
bne _080B1E50
- ldr r1, _080B1E40 @ =0x02016800
+ ldr r1, _080B1E40 @ =gSharedMem + 0x16800
ldr r2, _080B1E44 @ =0x06002000
ldr r0, _080B1E48 @ =0x040000d4
str r1, [r0]
@@ -13802,12 +13802,12 @@ sub_80B1DFC: @ 80B1DFC
b _080B1E66
.align 2, 0
_080B1E3C: .4byte gTasks
-_080B1E40: .4byte 0x02016800
+_080B1E40: .4byte gSharedMem + 0x16800
_080B1E44: .4byte 0x06002000
_080B1E48: .4byte 0x040000d4
_080B1E4C: .4byte 0x84000400
_080B1E50:
- ldr r1, _080B1E94 @ =0x02015800
+ ldr r1, _080B1E94 @ =gSharedMem + 0x15800
ldr r2, _080B1E98 @ =0x06002000
ldr r0, _080B1E9C @ =0x040000d4
str r1, [r0]
@@ -13831,7 +13831,7 @@ _080B1E66:
ldrsh r0, [r0, r1]
cmp r0, 0x9
bne _080B1E8E
- ldr r2, _080B1EA4 @ =0x02019204
+ ldr r2, _080B1EA4 @ =gSharedMem + 0x19204
ldrb r1, [r2, 0x6]
movs r0, 0x7F
ands r0, r1
@@ -13843,11 +13843,11 @@ _080B1E8E:
pop {r0}
bx r0
.align 2, 0
-_080B1E94: .4byte 0x02015800
+_080B1E94: .4byte gSharedMem + 0x15800
_080B1E98: .4byte 0x06002000
_080B1E9C: .4byte 0x040000d4
_080B1EA0: .4byte 0x84000400
-_080B1EA4: .4byte 0x02019204
+_080B1EA4: .4byte gSharedMem + 0x19204
thumb_func_end sub_80B1DFC
thumb_func_start sub_80B1EA8
@@ -13872,7 +13872,7 @@ sub_80B1EA8: @ 80B1EA8
cmp r4, 0
ble _080B1EF0
movs r5, 0
- ldr r2, _080B1EEC @ =0x02019204
+ ldr r2, _080B1EEC @ =gSharedMem + 0x19204
movs r1, 0x13
ldrsb r1, [r2, r1]
lsls r0, r1, 1
@@ -13883,9 +13883,9 @@ sub_80B1EA8: @ 80B1EA8
.align 2, 0
_080B1EE4: .4byte sub_80B1F4C
_080B1EE8: .4byte 0x0000237e
-_080B1EEC: .4byte 0x02019204
+_080B1EEC: .4byte gSharedMem + 0x19204
_080B1EF0:
- ldr r2, _080B1F04 @ =0x02019204
+ ldr r2, _080B1F04 @ =gSharedMem + 0x19204
movs r1, 0x13
ldrsb r1, [r2, r1]
lsls r0, r1, 1
@@ -13895,7 +13895,7 @@ _080B1EF0:
movs r3, 0
b _080B1F1E
.align 2, 0
-_080B1F04: .4byte 0x02019204
+_080B1F04: .4byte gSharedMem + 0x19204
_080B1F08:
movs r7, 0
lsls r0, r5, 24
@@ -13909,7 +13909,7 @@ _080B1F18:
movs r5, 0xC
movs r3, 0
_080B1F1C:
- ldr r2, _080B1F44 @ =0x02019204
+ ldr r2, _080B1F44 @ =gSharedMem + 0x19204
_080B1F1E:
ldr r1, _080B1F48 @ =gTasks
lsls r0, r6, 2
@@ -13930,7 +13930,7 @@ _080B1F1E:
pop {r0}
bx r0
.align 2, 0
-_080B1F44: .4byte 0x02019204
+_080B1F44: .4byte gSharedMem + 0x19204
_080B1F48: .4byte gTasks
thumb_func_end sub_80B1EA8
@@ -13988,7 +13988,7 @@ _080B1F84:
bne _080B1FC4
adds r0, r5, 0
bl DestroyTask
- ldr r2, _080B1FCC @ =0x02019204
+ ldr r2, _080B1FCC @ =gSharedMem + 0x19204
ldrb r1, [r2, 0x7]
movs r0, 0x2
negs r0, r0
@@ -13999,7 +13999,7 @@ _080B1FC4:
pop {r0}
bx r0
.align 2, 0
-_080B1FCC: .4byte 0x02019204
+_080B1FCC: .4byte gSharedMem + 0x19204
thumb_func_end sub_80B1F4C
thumb_func_start sub_80B1FD0
@@ -14011,7 +14011,7 @@ sub_80B1FD0: @ 80B1FD0
lsrs r0, 24
mov r8, r0
movs r5, 0
- ldr r0, _080B204C @ =0x02019260
+ ldr r0, _080B204C @ =gSharedMem + 0x19260
ldr r6, _080B2050 @ =gSprites
adds r4, r0, 0
adds r4, 0xD8
@@ -14065,7 +14065,7 @@ _080B1FE8:
ands r1, r2
b _080B2076
.align 2, 0
-_080B204C: .4byte 0x02019260
+_080B204C: .4byte gSharedMem + 0x19260
_080B2050: .4byte gSprites
_080B2054: .4byte 0x060100a0
_080B2058: .4byte REG_BG0HOFS
@@ -14103,7 +14103,7 @@ sub_80B208C: @ 80B208C
lsls r1, r0, 3
subs r1, r0
lsls r1, 2
- ldr r0, _080B20B0 @ =0x02019260
+ ldr r0, _080B20B0 @ =gSharedMem + 0x19260
adds r2, r1, r0
ldrb r1, [r2, 0x10]
movs r0, 0xC0
@@ -14116,7 +14116,7 @@ sub_80B208C: @ 80B208C
adds r0, r1
b _080B20BA
.align 2, 0
-_080B20B0: .4byte 0x02019260
+_080B20B0: .4byte gSharedMem + 0x19260
_080B20B4: .4byte gContestNextTurnNumbersGfx
_080B20B8:
ldr r0, _080B20C0 @ =gContestNextTurnRandomGfx
@@ -14131,7 +14131,7 @@ _080B20C0: .4byte gContestNextTurnRandomGfx
sub_80B20C4: @ 80B20C4
push {r4-r7,lr}
movs r6, 0
- ldr r7, _080B2134 @ =0x020192dd
+ ldr r7, _080B2134 @ =gSharedMem + 0x192DD
_080B20CA:
adds r0, r6, r7
ldrb r0, [r0]
@@ -14184,7 +14184,7 @@ _080B2126:
pop {r0}
bx r0
.align 2, 0
-_080B2134: .4byte 0x020192dd
+_080B2134: .4byte gSharedMem + 0x192DD
_080B2138: .4byte gUnknown_02038696
_080B213C: .4byte 0x0600c028
_080B2140: .4byte 0x0600c02a
@@ -14200,7 +14200,7 @@ sub_80B214C: @ 80B214C
lsls r1, r0, 3
subs r1, r0
lsls r1, 2
- ldr r0, _080B2178 @ =0x02019260
+ ldr r0, _080B2178 @ =gSharedMem + 0x19260
adds r2, r1, r0
ldrb r1, [r2, 0x15]
movs r3, 0x1
@@ -14217,7 +14217,7 @@ _080B2172:
movs r0, 0
b _080B217E
.align 2, 0
-_080B2178: .4byte 0x02019260
+_080B2178: .4byte gSharedMem + 0x19260
_080B217C:
movs r0, 0x1
_080B217E:
@@ -14278,7 +14278,7 @@ sub_80B2184: @ 80B2184
ldr r6, _080B2270 @ =gSprites
adds r7, r2, 0
movs r5, 0x4
- ldr r3, _080B2274 @ =0x02019338
+ ldr r3, _080B2274 @ =gSharedMem + 0x19338
_080B21EE:
ldrb r0, [r3]
lsls r1, r0, 4
@@ -14339,7 +14339,7 @@ _080B2264: .4byte 0x040000d4
_080B2268: .4byte 0x85000400
_080B226C: .4byte gUnknown_08D17C3C
_080B2270: .4byte gSprites
-_080B2274: .4byte 0x02019338
+_080B2274: .4byte gSharedMem + 0x19338
_080B2278: .4byte REG_BG2CNT
_080B227C: .4byte REG_BG0CNT
thumb_func_end sub_80B2184
@@ -14425,7 +14425,7 @@ _080B22A4:
movs r4, 0
ldr r5, _080B2374 @ =gSprites
adds r6, r3, 0
- ldr r3, _080B2378 @ =0x02019338
+ ldr r3, _080B2378 @ =gSharedMem + 0x19338
_080B231E:
ldrb r0, [r3]
lsls r1, r0, 4
@@ -14464,7 +14464,7 @@ _080B2368: .4byte 0x85000400
_080B236C: .4byte 0x0600f000
_080B2370: .4byte REG_BG1CNT
_080B2374: .4byte gSprites
-_080B2378: .4byte 0x02019338
+_080B2378: .4byte gSharedMem + 0x19338
thumb_func_end sub_80B2280
thumb_func_start sub_80B237C
@@ -14566,7 +14566,7 @@ _080B2428:
_080B2432:
movs r2, 0
adds r6, r3, 0
- ldr r5, _080B2470 @ =0x02019218
+ ldr r5, _080B2470 @ =gSharedMem + 0x19218
ldr r3, _080B2474 @ =gUnknown_02038696
_080B243A:
adds r0, r2, r5
@@ -14591,7 +14591,7 @@ _080B243A:
strh r0, [r1, 0x8]
b _080B24FC
.align 2, 0
-_080B2470: .4byte 0x02019218
+_080B2470: .4byte gSharedMem + 0x19218
_080B2474: .4byte gUnknown_02038696
_080B2478: .4byte gTasks
_080B247C:
@@ -14600,7 +14600,7 @@ _080B247C:
ands r1, r0
cmp r1, 0
beq _080B24D0
- ldr r2, _080B24C4 @ =0x02019204
+ ldr r2, _080B24C4 @ =gSharedMem + 0x19204
ldrb r0, [r2, 0x7]
movs r1, 0x4
orrs r0, r1
@@ -14626,14 +14626,14 @@ _080B249E:
b _080B24FC
.align 2, 0
_080B24C0: .4byte gIsLinkContest
-_080B24C4: .4byte 0x02019204
+_080B24C4: .4byte gSharedMem + 0x19204
_080B24C8: .4byte sub_80C8C80
_080B24CC: .4byte sub_80AD8DC
_080B24D0:
bl sub_80AF438
b _080B24E2
_080B24D6:
- ldr r0, _080B24E8 @ =0x02019204
+ ldr r0, _080B24E8 @ =gSharedMem + 0x19204
ldrb r1, [r0, 0x7]
movs r0, 0x4
ands r0, r1
@@ -14644,7 +14644,7 @@ _080B24E2:
strh r0, [r5, 0x8]
b _080B24FC
.align 2, 0
-_080B24E8: .4byte 0x02019204
+_080B24E8: .4byte gSharedMem + 0x19204
_080B24EC:
bl sub_80AF120
bl sub_80AEB30
@@ -14799,7 +14799,7 @@ sub_80B25E4: @ 80B25E4
_080B25F6:
bl AllocOamMatrix
lsls r1, r6, 2
- ldr r2, _080B26B8 @ =0x02019338
+ ldr r2, _080B26B8 @ =gSharedMem + 0x19338
mov r8, r2
adds r4, r1, r2
ldrb r1, [r4]
@@ -14890,7 +14890,7 @@ _080B267A:
bx r0
.align 2, 0
_080B26B4: .4byte gSprites
-_080B26B8: .4byte 0x02019338
+_080B26B8: .4byte gSharedMem + 0x19338
_080B26BC: .4byte sub_80B26C8
_080B26C0: .4byte gTasks
_080B26C4: .4byte 0xfffffecc
@@ -14902,7 +14902,7 @@ sub_80B26C8: @ 80B26C8
lsls r0, 24
lsrs r6, r0, 24
ldr r2, _080B2750 @ =gSprites
- ldr r4, _080B2754 @ =0x02019338
+ ldr r4, _080B2754 @ =gSharedMem + 0x19338
ldrb r1, [r4]
lsls r0, r1, 4
adds r0, r1
@@ -14943,7 +14943,7 @@ _080B2718:
movs r4, 0
_080B271A:
lsls r0, r4, 2
- ldr r5, _080B2754 @ =0x02019338
+ ldr r5, _080B2754 @ =gSharedMem + 0x19338
adds r0, r5
ldrb r1, [r0]
lsls r0, r1, 4
@@ -14970,7 +14970,7 @@ _080B274A:
bx r0
.align 2, 0
_080B2750: .4byte gSprites
-_080B2754: .4byte 0x02019338
+_080B2754: .4byte gSharedMem + 0x19338
_080B2758: .4byte gTasks
_080B275C: .4byte 0xfffffecc
thumb_func_end sub_80B26C8
@@ -15016,7 +15016,7 @@ sub_80B2790: @ 80B2790
lsls r0, r6, 3
subs r0, r6
lsls r0, 2
- ldr r4, _080B27F0 @ =0x02019260
+ ldr r4, _080B27F0 @ =gSharedMem + 0x19260
adds r0, r4
ldrh r0, [r0, 0x6]
bl sub_80B2760
@@ -15055,7 +15055,7 @@ _080B27D0:
beq _080B2898
b _080B28BE
.align 2, 0
-_080B27F0: .4byte 0x02019260
+_080B27F0: .4byte gSharedMem + 0x19260
_080B27F4: .4byte gContestMons
_080B27F8: .4byte gBattleMonForms
_080B27FC:
@@ -15103,7 +15103,7 @@ _080B2848:
lsls r0, r6, 3
subs r0, r6
lsls r0, 2
- ldr r4, _080B2878 @ =0x02019260
+ ldr r4, _080B2878 @ =gSharedMem + 0x19260
adds r0, r4
ldrb r5, [r0, 0x1B]
ldr r6, _080B287C @ =gContestMons
@@ -15123,7 +15123,7 @@ _080B2848:
strb r0, [r4, 0x4]
b _080B28BE
.align 2, 0
-_080B2878: .4byte 0x02019260
+_080B2878: .4byte gSharedMem + 0x19260
_080B287C: .4byte gContestMons
_080B2880:
ldr r1, _080B2888 @ =gHappinessMoveAnim
@@ -15138,7 +15138,7 @@ _080B288C:
.align 2, 0
_080B2894: .4byte gHappinessMoveAnim
_080B2898:
- ldr r0, _080B28B0 @ =0x02019204
+ ldr r0, _080B28B0 @ =gSharedMem + 0x19204
adds r2, r0, 0
adds r2, 0x5A
ldrb r1, [r2]
@@ -15150,7 +15150,7 @@ _080B2898:
strb r1, [r0]
b _080B28BE
.align 2, 0
-_080B28B0: .4byte 0x02019204
+_080B28B0: .4byte gSharedMem + 0x19204
_080B28B4: .4byte gUnknown_0202F7C4
_080B28B8:
ldr r1, _080B28C8 @ =gUnknown_0202F7C4
@@ -15169,7 +15169,7 @@ _080B28C8: .4byte gUnknown_0202F7C4
thumb_func_start sub_80B28CC
sub_80B28CC: @ 80B28CC
push {r4,lr}
- ldr r4, _080B28EC @ =0x02019348
+ ldr r4, _080B28EC @ =gSharedMem + 0x19348
adds r0, r4, 0
movs r1, 0
movs r2, 0x14
@@ -15185,7 +15185,7 @@ _080B28E6:
pop {r0}
bx r0
.align 2, 0
-_080B28EC: .4byte 0x02019348
+_080B28EC: .4byte gSharedMem + 0x19348
thumb_func_end sub_80B28CC
thumb_func_start sub_80B28F0
@@ -15194,7 +15194,7 @@ sub_80B28F0: @ 80B28F0
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
- ldr r6, _080B2924 @ =0x02019348
+ ldr r6, _080B2924 @ =gSharedMem + 0x19348
strb r4, [r6, 0x5]
ldr r5, _080B2928 @ =gContestMons
lsls r4, 6
@@ -15215,7 +15215,7 @@ sub_80B28F0: @ 80B28F0
pop {r0}
bx r0
.align 2, 0
-_080B2924: .4byte 0x02019348
+_080B2924: .4byte gSharedMem + 0x19348
_080B2928: .4byte gContestMons
thumb_func_end sub_80B28F0
@@ -15515,7 +15515,7 @@ _080B2BB8:
.align 2, 0
_080B2BC0: .4byte 0x00002e06
_080B2BC4:
- ldr r5, _080B2C14 @ =0x02015de0
+ ldr r5, _080B2C14 @ =gSharedMem + 0x15DE0
ldr r2, _080B2C18 @ =gContestMons
lsls r4, r6, 6
adds r0, r2, 0
@@ -15554,7 +15554,7 @@ _080B2BC4:
bl StringCopy
b _080B2C32
.align 2, 0
-_080B2C14: .4byte 0x02015de0
+_080B2C14: .4byte gSharedMem + 0x15DE0
_080B2C18: .4byte gContestMons
_080B2C1C: .4byte gIsLinkContest
_080B2C20: .4byte gLinkPlayers + 0x8
@@ -15566,7 +15566,7 @@ _080B2C24:
adds r1, r4, r1
bl StringCopy
_080B2C32:
- ldr r0, _080B2C48 @ =0x02015de0
+ ldr r0, _080B2C48 @ =gSharedMem + 0x15DE0
strb r7, [r0, 0xA]
_080B2C36:
movs r0, 0x1
@@ -15579,7 +15579,7 @@ _080B2C38:
pop {r1}
bx r1
.align 2, 0
-_080B2C48: .4byte 0x02015de0
+_080B2C48: .4byte gSharedMem + 0x15DE0
thumb_func_end sub_80B2A7C
thumb_func_start sub_80B2C4C
diff --git a/asm/contest_ai.s b/asm/contest_ai.s
index c7a67fed9..ae5d8c03e 100644
--- a/asm/contest_ai.s
+++ b/asm/contest_ai.s
@@ -11,7 +11,7 @@ sub_81288F4: @ 81288F4
push {r4,r5,lr}
lsls r0, 24
lsrs r5, r0, 24
- ldr r4, _0812893C @ =0x020192e4
+ ldr r4, _0812893C @ =gSharedMem + 0x192E4
adds r0, r4, 0
movs r1, 0
movs r2, 0x44
@@ -45,14 +45,14 @@ _08128910:
pop {r0}
bx r0
.align 2, 0
-_0812893C: .4byte 0x020192e4
+_0812893C: .4byte gSharedMem + 0x192E4
_08128940: .4byte gContestMons
thumb_func_end sub_81288F4
thumb_func_start sub_8128944
sub_8128944: @ 8128944
push {r4-r6,lr}
- ldr r1, _081289A8 @ =0x020192e4
+ ldr r1, _081289A8 @ =gSharedMem + 0x192E4
ldr r0, [r1, 0x14]
cmp r0, 0
beq _08128974
@@ -78,7 +78,7 @@ _08128962:
bne _08128952
_08128974:
movs r6, 0x3
- ldr r5, _081289A8 @ =0x020192e4
+ ldr r5, _081289A8 @ =gSharedMem + 0x192E4
_08128978:
bl Random
adds r4, r0, 0
@@ -106,13 +106,13 @@ _0812899C:
pop {r1}
bx r1
.align 2, 0
-_081289A8: .4byte 0x020192e4
+_081289A8: .4byte gSharedMem + 0x192E4
thumb_func_end sub_8128944
thumb_func_start sub_81289AC
sub_81289AC: @ 81289AC
push {r4-r6,lr}
- ldr r1, _081289F4 @ =0x020192e4
+ ldr r1, _081289F4 @ =gSharedMem + 0x192E4
ldrb r0, [r1]
adds r2, r1, 0
cmp r0, 0x2
@@ -149,7 +149,7 @@ _081289BE:
strh r0, [r4, 0x2]
b _08128A06
.align 2, 0
-_081289F4: .4byte 0x020192e4
+_081289F4: .4byte gSharedMem + 0x192E4
_081289F8: .4byte gAIScriptPtr
_081289FC: .4byte gUnknown_0203858E
_08128A00: .4byte gContestAIs
@@ -184,7 +184,7 @@ _08128A2C:
orrs r0, r1
strb r0, [r4, 0x9]
_08128A3C:
- ldr r2, _08128A5C @ =0x020192e4
+ ldr r2, _08128A5C @ =gSharedMem + 0x192E4
ldrb r1, [r2, 0x9]
movs r0, 0x1
ands r0, r1
@@ -201,7 +201,7 @@ _08128A3C:
strb r1, [r2]
b _08128A66
.align 2, 0
-_08128A5C: .4byte 0x020192e4
+_08128A5C: .4byte gSharedMem + 0x192E4
_08128A60:
ldrb r0, [r2]
adds r0, 0x1
@@ -228,7 +228,7 @@ sub_8128A7C: @ 8128A7C
lsls r0, 24
lsrs r2, r0, 24
movs r1, 0
- ldr r3, _08128AA4 @ =0x020192d0
+ ldr r3, _08128AA4 @ =gSharedMem + 0x192D0
ldrb r0, [r3]
cmp r0, r2
beq _08128A9A
@@ -246,13 +246,13 @@ _08128A9A:
pop {r1}
bx r1
.align 2, 0
-_08128AA4: .4byte 0x020192d0
+_08128AA4: .4byte gSharedMem + 0x192D0
thumb_func_end sub_8128A7C
thumb_func_start ContestAICmd_unk_00
ContestAICmd_unk_00: @ 8128AA8
push {lr}
- ldr r2, _08128AD0 @ =0x020192e4
+ ldr r2, _08128AD0 @ =gSharedMem + 0x192E4
adds r1, r2, 0x5
ldrb r0, [r2, 0x4]
adds r1, r0
@@ -271,7 +271,7 @@ ContestAICmd_unk_00: @ 8128AA8
movs r1, 0xFF
b _08128ADE
.align 2, 0
-_08128AD0: .4byte 0x020192e4
+_08128AD0: .4byte gSharedMem + 0x192E4
_08128AD4: .4byte gAIScriptPtr
_08128AD8:
cmp r0, 0
@@ -291,7 +291,7 @@ _08128ADE:
thumb_func_start ContestAICmd_get_turn
ContestAICmd_get_turn: @ 8128AF0
- ldr r1, _08128B04 @ =0x020192e4
+ ldr r1, _08128B04 @ =gSharedMem + 0x192E4
adds r0, r1, 0
subs r0, 0xE0
ldrb r0, [r0, 0x1]
@@ -302,7 +302,7 @@ ContestAICmd_get_turn: @ 8128AF0
str r0, [r1]
bx lr
.align 2, 0
-_08128B04: .4byte 0x020192e4
+_08128B04: .4byte gSharedMem + 0x192E4
_08128B08: .4byte gAIScriptPtr
thumb_func_end ContestAICmd_get_turn
@@ -310,7 +310,7 @@ _08128B08: .4byte gAIScriptPtr
ContestAICmd_unk_02: @ 8128B0C
push {lr}
bl ContestAICmd_get_turn
- ldr r0, _08128B3C @ =0x020192e4
+ ldr r0, _08128B3C @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _08128B40 @ =gAIScriptPtr
@@ -331,7 +331,7 @@ ContestAICmd_unk_02: @ 8128B0C
str r1, [r3]
b _08128B48
.align 2, 0
-_08128B3C: .4byte 0x020192e4
+_08128B3C: .4byte gSharedMem + 0x192E4
_08128B40: .4byte gAIScriptPtr
_08128B44:
adds r0, r2, 0x5
@@ -345,7 +345,7 @@ _08128B48:
ContestAICmd_unk_03: @ 8128B4C
push {lr}
bl ContestAICmd_get_turn
- ldr r0, _08128B7C @ =0x020192e4
+ ldr r0, _08128B7C @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _08128B80 @ =gAIScriptPtr
@@ -366,7 +366,7 @@ ContestAICmd_unk_03: @ 8128B4C
str r1, [r3]
b _08128B88
.align 2, 0
-_08128B7C: .4byte 0x020192e4
+_08128B7C: .4byte gSharedMem + 0x192E4
_08128B80: .4byte gAIScriptPtr
_08128B84:
adds r0, r2, 0x5
@@ -380,7 +380,7 @@ _08128B88:
ContestAICmd_unk_04: @ 8128B8C
push {lr}
bl ContestAICmd_get_turn
- ldr r0, _08128BBC @ =0x020192e4
+ ldr r0, _08128BBC @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _08128BC0 @ =gAIScriptPtr
@@ -401,7 +401,7 @@ ContestAICmd_unk_04: @ 8128B8C
str r1, [r3]
b _08128BC8
.align 2, 0
-_08128BBC: .4byte 0x020192e4
+_08128BBC: .4byte gSharedMem + 0x192E4
_08128BC0: .4byte gAIScriptPtr
_08128BC4:
adds r0, r2, 0x5
@@ -415,7 +415,7 @@ _08128BC8:
ContestAICmd_unk_05: @ 8128BCC
push {lr}
bl ContestAICmd_get_turn
- ldr r0, _08128BFC @ =0x020192e4
+ ldr r0, _08128BFC @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _08128C00 @ =gAIScriptPtr
@@ -436,7 +436,7 @@ ContestAICmd_unk_05: @ 8128BCC
str r1, [r3]
b _08128C08
.align 2, 0
-_08128BFC: .4byte 0x020192e4
+_08128BFC: .4byte gSharedMem + 0x192E4
_08128C00: .4byte gAIScriptPtr
_08128C04:
adds r0, r2, 0x5
@@ -448,7 +448,7 @@ _08128C08:
thumb_func_start ContestAICmd_get_excitement
ContestAICmd_get_excitement: @ 8128C0C
- ldr r1, _08128C24 @ =0x020192e4
+ ldr r1, _08128C24 @ =gSharedMem + 0x192E4
adds r0, r1, 0
subs r0, 0xE0
ldrb r0, [r0, 0x13]
@@ -461,7 +461,7 @@ ContestAICmd_get_excitement: @ 8128C0C
str r0, [r1]
bx lr
.align 2, 0
-_08128C24: .4byte 0x020192e4
+_08128C24: .4byte gSharedMem + 0x192E4
_08128C28: .4byte gAIScriptPtr
thumb_func_end ContestAICmd_get_excitement
@@ -469,7 +469,7 @@ _08128C28: .4byte gAIScriptPtr
ContestAICmd_unk_07: @ 8128C2C
push {lr}
bl ContestAICmd_get_excitement
- ldr r0, _08128C5C @ =0x020192e4
+ ldr r0, _08128C5C @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _08128C60 @ =gAIScriptPtr
@@ -490,7 +490,7 @@ ContestAICmd_unk_07: @ 8128C2C
str r1, [r3]
b _08128C68
.align 2, 0
-_08128C5C: .4byte 0x020192e4
+_08128C5C: .4byte gSharedMem + 0x192E4
_08128C60: .4byte gAIScriptPtr
_08128C64:
adds r0, r2, 0x5
@@ -504,7 +504,7 @@ _08128C68:
ContestAICmd_unk_08: @ 8128C6C
push {lr}
bl ContestAICmd_get_excitement
- ldr r0, _08128C9C @ =0x020192e4
+ ldr r0, _08128C9C @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _08128CA0 @ =gAIScriptPtr
@@ -525,7 +525,7 @@ ContestAICmd_unk_08: @ 8128C6C
str r1, [r3]
b _08128CA8
.align 2, 0
-_08128C9C: .4byte 0x020192e4
+_08128C9C: .4byte gSharedMem + 0x192E4
_08128CA0: .4byte gAIScriptPtr
_08128CA4:
adds r0, r2, 0x5
@@ -539,7 +539,7 @@ _08128CA8:
ContestAICmd_unk_09: @ 8128CAC
push {lr}
bl ContestAICmd_get_excitement
- ldr r0, _08128CDC @ =0x020192e4
+ ldr r0, _08128CDC @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _08128CE0 @ =gAIScriptPtr
@@ -560,7 +560,7 @@ ContestAICmd_unk_09: @ 8128CAC
str r1, [r3]
b _08128CE8
.align 2, 0
-_08128CDC: .4byte 0x020192e4
+_08128CDC: .4byte gSharedMem + 0x192E4
_08128CE0: .4byte gAIScriptPtr
_08128CE4:
adds r0, r2, 0x5
@@ -574,7 +574,7 @@ _08128CE8:
ContestAICmd_unk_0A: @ 8128CEC
push {lr}
bl ContestAICmd_get_excitement
- ldr r0, _08128D1C @ =0x020192e4
+ ldr r0, _08128D1C @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _08128D20 @ =gAIScriptPtr
@@ -595,7 +595,7 @@ ContestAICmd_unk_0A: @ 8128CEC
str r1, [r3]
b _08128D28
.align 2, 0
-_08128D1C: .4byte 0x020192e4
+_08128D1C: .4byte gSharedMem + 0x192E4
_08128D20: .4byte gAIScriptPtr
_08128D24:
adds r0, r2, 0x5
@@ -607,7 +607,7 @@ _08128D28:
thumb_func_start ContestAICmd_get_user_order
ContestAICmd_get_user_order: @ 8128D2C
- ldr r1, _08128D48 @ =0x020192e4
+ ldr r1, _08128D48 @ =gSharedMem + 0x192E4
adds r2, r1, 0
adds r2, 0x41
adds r0, r1, 0
@@ -622,7 +622,7 @@ ContestAICmd_get_user_order: @ 8128D2C
str r0, [r1]
bx lr
.align 2, 0
-_08128D48: .4byte 0x020192e4
+_08128D48: .4byte gSharedMem + 0x192E4
_08128D4C: .4byte gAIScriptPtr
thumb_func_end ContestAICmd_get_user_order
@@ -630,7 +630,7 @@ _08128D4C: .4byte gAIScriptPtr
ContestAICmd_unk_0C: @ 8128D50
push {lr}
bl ContestAICmd_get_user_order
- ldr r0, _08128D80 @ =0x020192e4
+ ldr r0, _08128D80 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _08128D84 @ =gAIScriptPtr
@@ -651,7 +651,7 @@ ContestAICmd_unk_0C: @ 8128D50
str r1, [r3]
b _08128D8C
.align 2, 0
-_08128D80: .4byte 0x020192e4
+_08128D80: .4byte gSharedMem + 0x192E4
_08128D84: .4byte gAIScriptPtr
_08128D88:
adds r0, r2, 0x5
@@ -665,7 +665,7 @@ _08128D8C:
ContestAICmd_unk_0D: @ 8128D90
push {lr}
bl ContestAICmd_get_user_order
- ldr r0, _08128DC0 @ =0x020192e4
+ ldr r0, _08128DC0 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _08128DC4 @ =gAIScriptPtr
@@ -686,7 +686,7 @@ ContestAICmd_unk_0D: @ 8128D90
str r1, [r3]
b _08128DCC
.align 2, 0
-_08128DC0: .4byte 0x020192e4
+_08128DC0: .4byte gSharedMem + 0x192E4
_08128DC4: .4byte gAIScriptPtr
_08128DC8:
adds r0, r2, 0x5
@@ -700,7 +700,7 @@ _08128DCC:
ContestAICmd_unk_0E: @ 8128DD0
push {lr}
bl ContestAICmd_get_user_order
- ldr r0, _08128E00 @ =0x020192e4
+ ldr r0, _08128E00 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _08128E04 @ =gAIScriptPtr
@@ -721,7 +721,7 @@ ContestAICmd_unk_0E: @ 8128DD0
str r1, [r3]
b _08128E0C
.align 2, 0
-_08128E00: .4byte 0x020192e4
+_08128E00: .4byte gSharedMem + 0x192E4
_08128E04: .4byte gAIScriptPtr
_08128E08:
adds r0, r2, 0x5
@@ -735,7 +735,7 @@ _08128E0C:
ContestAICmd_unk_0F: @ 8128E10
push {lr}
bl ContestAICmd_get_user_order
- ldr r0, _08128E40 @ =0x020192e4
+ ldr r0, _08128E40 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _08128E44 @ =gAIScriptPtr
@@ -756,7 +756,7 @@ ContestAICmd_unk_0F: @ 8128E10
str r1, [r3]
b _08128E4C
.align 2, 0
-_08128E40: .4byte 0x020192e4
+_08128E40: .4byte gSharedMem + 0x192E4
_08128E44: .4byte gAIScriptPtr
_08128E48:
adds r0, r2, 0x5
@@ -769,7 +769,7 @@ _08128E4C:
thumb_func_start ContestAICmd_get_user_condition_maybe
ContestAICmd_get_user_condition_maybe: @ 8128E50
push {r4,lr}
- ldr r4, _08128E88 @ =0x020192e4
+ ldr r4, _08128E88 @ =gSharedMem + 0x192E4
adds r0, r4, 0
adds r0, 0x41
ldrb r1, [r0]
@@ -795,7 +795,7 @@ ContestAICmd_get_user_condition_maybe: @ 8128E50
pop {r0}
bx r0
.align 2, 0
-_08128E88: .4byte 0x020192e4
+_08128E88: .4byte gSharedMem + 0x192E4
_08128E8C: .4byte gAIScriptPtr
thumb_func_end ContestAICmd_get_user_condition_maybe
@@ -803,7 +803,7 @@ _08128E8C: .4byte gAIScriptPtr
ContestAICmd_unk_11: @ 8128E90
push {lr}
bl ContestAICmd_get_user_condition_maybe
- ldr r0, _08128EC0 @ =0x020192e4
+ ldr r0, _08128EC0 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _08128EC4 @ =gAIScriptPtr
@@ -824,7 +824,7 @@ ContestAICmd_unk_11: @ 8128E90
str r1, [r3]
b _08128ECC
.align 2, 0
-_08128EC0: .4byte 0x020192e4
+_08128EC0: .4byte gSharedMem + 0x192E4
_08128EC4: .4byte gAIScriptPtr
_08128EC8:
adds r0, r2, 0x5
@@ -838,7 +838,7 @@ _08128ECC:
ContestAICmd_unk_12: @ 8128ED0
push {lr}
bl ContestAICmd_get_user_condition_maybe
- ldr r0, _08128F00 @ =0x020192e4
+ ldr r0, _08128F00 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _08128F04 @ =gAIScriptPtr
@@ -859,7 +859,7 @@ ContestAICmd_unk_12: @ 8128ED0
str r1, [r3]
b _08128F0C
.align 2, 0
-_08128F00: .4byte 0x020192e4
+_08128F00: .4byte gSharedMem + 0x192E4
_08128F04: .4byte gAIScriptPtr
_08128F08:
adds r0, r2, 0x5
@@ -873,7 +873,7 @@ _08128F0C:
ContestAICmd_unk_13: @ 8128F10
push {lr}
bl ContestAICmd_get_user_condition_maybe
- ldr r0, _08128F40 @ =0x020192e4
+ ldr r0, _08128F40 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _08128F44 @ =gAIScriptPtr
@@ -894,7 +894,7 @@ ContestAICmd_unk_13: @ 8128F10
str r1, [r3]
b _08128F4C
.align 2, 0
-_08128F40: .4byte 0x020192e4
+_08128F40: .4byte gSharedMem + 0x192E4
_08128F44: .4byte gAIScriptPtr
_08128F48:
adds r0, r2, 0x5
@@ -908,7 +908,7 @@ _08128F4C:
ContestAICmd_unk_14: @ 8128F50
push {lr}
bl ContestAICmd_get_user_condition_maybe
- ldr r0, _08128F80 @ =0x020192e4
+ ldr r0, _08128F80 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _08128F84 @ =gAIScriptPtr
@@ -929,7 +929,7 @@ ContestAICmd_unk_14: @ 8128F50
str r1, [r3]
b _08128F8C
.align 2, 0
-_08128F80: .4byte 0x020192e4
+_08128F80: .4byte gSharedMem + 0x192E4
_08128F84: .4byte gAIScriptPtr
_08128F88:
adds r0, r2, 0x5
@@ -941,7 +941,7 @@ _08128F8C:
thumb_func_start ContestAICmd_unk_15
ContestAICmd_unk_15: @ 8128F90
- ldr r2, _08128FB4 @ =0x020192e4
+ ldr r2, _08128FB4 @ =gSharedMem + 0x192E4
adds r0, r2, 0
adds r0, 0x41
ldrb r1, [r0]
@@ -959,7 +959,7 @@ ContestAICmd_unk_15: @ 8128F90
str r0, [r1]
bx lr
.align 2, 0
-_08128FB4: .4byte 0x020192e4
+_08128FB4: .4byte gSharedMem + 0x192E4
_08128FB8: .4byte gAIScriptPtr
thumb_func_end ContestAICmd_unk_15
@@ -967,7 +967,7 @@ _08128FB8: .4byte gAIScriptPtr
ContestAICmd_unk_16: @ 8128FBC
push {r4,r5,lr}
bl ContestAICmd_unk_15
- ldr r2, _08128FF4 @ =0x020192e4
+ ldr r2, _08128FF4 @ =gSharedMem + 0x192E4
ldr r4, _08128FF8 @ =gAIScriptPtr
ldr r3, [r4]
ldrb r1, [r3]
@@ -993,7 +993,7 @@ ContestAICmd_unk_16: @ 8128FBC
str r1, [r4]
b _08129000
.align 2, 0
-_08128FF4: .4byte 0x020192e4
+_08128FF4: .4byte gSharedMem + 0x192E4
_08128FF8: .4byte gAIScriptPtr
_08128FFC:
adds r0, r3, 0x6
@@ -1008,7 +1008,7 @@ _08129000:
ContestAICmd_unk_17: @ 8129008
push {r4,r5,lr}
bl ContestAICmd_unk_15
- ldr r2, _08129040 @ =0x020192e4
+ ldr r2, _08129040 @ =gSharedMem + 0x192E4
ldr r4, _08129044 @ =gAIScriptPtr
ldr r3, [r4]
ldrb r1, [r3]
@@ -1034,7 +1034,7 @@ ContestAICmd_unk_17: @ 8129008
str r1, [r4]
b _0812904C
.align 2, 0
-_08129040: .4byte 0x020192e4
+_08129040: .4byte gSharedMem + 0x192E4
_08129044: .4byte gAIScriptPtr
_08129048:
adds r0, r3, 0x6
@@ -1049,7 +1049,7 @@ _0812904C:
ContestAICmd_unk_18: @ 8129054
push {r4,r5,lr}
bl ContestAICmd_unk_15
- ldr r2, _0812908C @ =0x020192e4
+ ldr r2, _0812908C @ =gSharedMem + 0x192E4
ldr r4, _08129090 @ =gAIScriptPtr
ldr r3, [r4]
ldrb r1, [r3]
@@ -1075,7 +1075,7 @@ ContestAICmd_unk_18: @ 8129054
str r1, [r4]
b _08129098
.align 2, 0
-_0812908C: .4byte 0x020192e4
+_0812908C: .4byte gSharedMem + 0x192E4
_08129090: .4byte gAIScriptPtr
_08129094:
adds r0, r3, 0x6
@@ -1090,7 +1090,7 @@ _08129098:
ContestAICmd_unk_19: @ 81290A0
push {r4,r5,lr}
bl ContestAICmd_unk_15
- ldr r2, _081290D8 @ =0x020192e4
+ ldr r2, _081290D8 @ =gSharedMem + 0x192E4
ldr r4, _081290DC @ =gAIScriptPtr
ldr r3, [r4]
ldrb r1, [r3]
@@ -1116,7 +1116,7 @@ ContestAICmd_unk_19: @ 81290A0
str r1, [r4]
b _081290E4
.align 2, 0
-_081290D8: .4byte 0x020192e4
+_081290D8: .4byte gSharedMem + 0x192E4
_081290DC: .4byte gAIScriptPtr
_081290E0:
adds r0, r3, 0x6
@@ -1129,7 +1129,7 @@ _081290E4:
thumb_func_start ContestAICmd_unk_1A
ContestAICmd_unk_1A: @ 81290EC
- ldr r2, _08129108 @ =0x020192e4
+ ldr r2, _08129108 @ =gSharedMem + 0x192E4
ldr r1, _0812910C @ =gUnknown_02038670
adds r0, r2, 0
adds r0, 0x41
@@ -1144,7 +1144,7 @@ ContestAICmd_unk_1A: @ 81290EC
str r0, [r1]
bx lr
.align 2, 0
-_08129108: .4byte 0x020192e4
+_08129108: .4byte gSharedMem + 0x192E4
_0812910C: .4byte gUnknown_02038670
_08129110: .4byte gAIScriptPtr
thumb_func_end ContestAICmd_unk_1A
@@ -1153,7 +1153,7 @@ _08129110: .4byte gAIScriptPtr
ContestAICmd_unk_1B: @ 8129114
push {r4,r5,lr}
bl ContestAICmd_unk_1A
- ldr r2, _0812914C @ =0x020192e4
+ ldr r2, _0812914C @ =gSharedMem + 0x192E4
ldr r4, _08129150 @ =gAIScriptPtr
ldr r3, [r4]
ldrb r1, [r3]
@@ -1179,7 +1179,7 @@ ContestAICmd_unk_1B: @ 8129114
str r1, [r4]
b _08129158
.align 2, 0
-_0812914C: .4byte 0x020192e4
+_0812914C: .4byte gSharedMem + 0x192E4
_08129150: .4byte gAIScriptPtr
_08129154:
adds r0, r3, 0x6
@@ -1194,7 +1194,7 @@ _08129158:
ContestAICmd_unk_1C: @ 8129160
push {r4,r5,lr}
bl ContestAICmd_unk_1A
- ldr r2, _08129198 @ =0x020192e4
+ ldr r2, _08129198 @ =gSharedMem + 0x192E4
ldr r4, _0812919C @ =gAIScriptPtr
ldr r3, [r4]
ldrb r1, [r3]
@@ -1220,7 +1220,7 @@ ContestAICmd_unk_1C: @ 8129160
str r1, [r4]
b _081291A4
.align 2, 0
-_08129198: .4byte 0x020192e4
+_08129198: .4byte gSharedMem + 0x192E4
_0812919C: .4byte gAIScriptPtr
_081291A0:
adds r0, r3, 0x6
@@ -1235,7 +1235,7 @@ _081291A4:
ContestAICmd_unk_1D: @ 81291AC
push {r4,r5,lr}
bl ContestAICmd_unk_1A
- ldr r2, _081291E4 @ =0x020192e4
+ ldr r2, _081291E4 @ =gSharedMem + 0x192E4
ldr r4, _081291E8 @ =gAIScriptPtr
ldr r3, [r4]
ldrb r1, [r3]
@@ -1261,7 +1261,7 @@ ContestAICmd_unk_1D: @ 81291AC
str r1, [r4]
b _081291F0
.align 2, 0
-_081291E4: .4byte 0x020192e4
+_081291E4: .4byte gSharedMem + 0x192E4
_081291E8: .4byte gAIScriptPtr
_081291EC:
adds r0, r3, 0x6
@@ -1276,7 +1276,7 @@ _081291F0:
ContestAICmd_unk_1E: @ 81291F8
push {r4,r5,lr}
bl ContestAICmd_unk_1A
- ldr r2, _08129230 @ =0x020192e4
+ ldr r2, _08129230 @ =gSharedMem + 0x192E4
ldr r4, _08129234 @ =gAIScriptPtr
ldr r3, [r4]
ldrb r1, [r3]
@@ -1302,7 +1302,7 @@ ContestAICmd_unk_1E: @ 81291F8
str r1, [r4]
b _0812923C
.align 2, 0
-_08129230: .4byte 0x020192e4
+_08129230: .4byte gSharedMem + 0x192E4
_08129234: .4byte gAIScriptPtr
_08129238:
adds r0, r3, 0x6
@@ -1315,7 +1315,7 @@ _0812923C:
thumb_func_start ContestAICmd_get_contest_type
ContestAICmd_get_contest_type: @ 8129244
- ldr r1, _08129258 @ =0x020192e4
+ ldr r1, _08129258 @ =gSharedMem + 0x192E4
ldr r0, _0812925C @ =gScriptContestCategory
ldrh r0, [r0]
strh r0, [r1, 0x18]
@@ -1325,7 +1325,7 @@ ContestAICmd_get_contest_type: @ 8129244
str r0, [r1]
bx lr
.align 2, 0
-_08129258: .4byte 0x020192e4
+_08129258: .4byte gSharedMem + 0x192E4
_0812925C: .4byte gScriptContestCategory
_08129260: .4byte gAIScriptPtr
thumb_func_end ContestAICmd_get_contest_type
@@ -1334,7 +1334,7 @@ _08129260: .4byte gAIScriptPtr
ContestAICmd_unk_20: @ 8129264
push {lr}
bl ContestAICmd_get_contest_type
- ldr r0, _08129294 @ =0x020192e4
+ ldr r0, _08129294 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _08129298 @ =gAIScriptPtr
@@ -1355,7 +1355,7 @@ ContestAICmd_unk_20: @ 8129264
str r1, [r3]
b _081292A0
.align 2, 0
-_08129294: .4byte 0x020192e4
+_08129294: .4byte gSharedMem + 0x192E4
_08129298: .4byte gAIScriptPtr
_0812929C:
adds r0, r2, 0x5
@@ -1369,7 +1369,7 @@ _081292A0:
ContestAICmd_unk_21: @ 81292A4
push {lr}
bl ContestAICmd_get_contest_type
- ldr r0, _081292D4 @ =0x020192e4
+ ldr r0, _081292D4 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _081292D8 @ =gAIScriptPtr
@@ -1390,7 +1390,7 @@ ContestAICmd_unk_21: @ 81292A4
str r1, [r3]
b _081292E0
.align 2, 0
-_081292D4: .4byte 0x020192e4
+_081292D4: .4byte gSharedMem + 0x192E4
_081292D8: .4byte gAIScriptPtr
_081292DC:
adds r0, r2, 0x5
@@ -1404,7 +1404,7 @@ _081292E0:
ContestAICmd_get_move_excitement: @ 81292E4
push {r4,lr}
ldr r2, _08129318 @ =gContestMons
- ldr r4, _0812931C @ =0x020192e4
+ ldr r4, _0812931C @ =gSharedMem + 0x192E4
ldrb r1, [r4, 0x4]
lsls r1, 1
adds r0, r4, 0
@@ -1428,7 +1428,7 @@ ContestAICmd_get_move_excitement: @ 81292E4
bx r0
.align 2, 0
_08129318: .4byte gContestMons
-_0812931C: .4byte 0x020192e4
+_0812931C: .4byte gSharedMem + 0x192E4
_08129320: .4byte gAIScriptPtr
thumb_func_end ContestAICmd_get_move_excitement
@@ -1436,7 +1436,7 @@ _08129320: .4byte gAIScriptPtr
ContestAICmd_unk_23: @ 8129324
push {r4,lr}
bl ContestAICmd_get_move_excitement
- ldr r0, _08129354 @ =0x020192e4
+ ldr r0, _08129354 @ =gSharedMem + 0x192E4
ldr r3, _08129358 @ =gAIScriptPtr
ldr r2, [r3]
movs r4, 0x18
@@ -1458,7 +1458,7 @@ ContestAICmd_unk_23: @ 8129324
str r1, [r3]
b _08129360
.align 2, 0
-_08129354: .4byte 0x020192e4
+_08129354: .4byte gSharedMem + 0x192E4
_08129358: .4byte gAIScriptPtr
_0812935C:
adds r0, r2, 0x5
@@ -1473,7 +1473,7 @@ _08129360:
ContestAICmd_unk_24: @ 8129368
push {r4,lr}
bl ContestAICmd_get_move_excitement
- ldr r0, _08129398 @ =0x020192e4
+ ldr r0, _08129398 @ =gSharedMem + 0x192E4
ldr r3, _0812939C @ =gAIScriptPtr
ldr r2, [r3]
movs r4, 0x18
@@ -1495,7 +1495,7 @@ ContestAICmd_unk_24: @ 8129368
str r1, [r3]
b _081293A4
.align 2, 0
-_08129398: .4byte 0x020192e4
+_08129398: .4byte gSharedMem + 0x192E4
_0812939C: .4byte gAIScriptPtr
_081293A0:
adds r0, r2, 0x5
@@ -1510,7 +1510,7 @@ _081293A4:
ContestAICmd_unk_25: @ 81293AC
push {r4,lr}
bl ContestAICmd_get_move_excitement
- ldr r0, _081293DC @ =0x020192e4
+ ldr r0, _081293DC @ =gSharedMem + 0x192E4
ldr r3, _081293E0 @ =gAIScriptPtr
ldr r2, [r3]
movs r4, 0x18
@@ -1532,7 +1532,7 @@ ContestAICmd_unk_25: @ 81293AC
str r1, [r3]
b _081293E8
.align 2, 0
-_081293DC: .4byte 0x020192e4
+_081293DC: .4byte gSharedMem + 0x192E4
_081293E0: .4byte gAIScriptPtr
_081293E4:
adds r0, r2, 0x5
@@ -1547,7 +1547,7 @@ _081293E8:
ContestAICmd_unk_26: @ 81293F0
push {r4,lr}
bl ContestAICmd_get_move_excitement
- ldr r0, _08129420 @ =0x020192e4
+ ldr r0, _08129420 @ =gSharedMem + 0x192E4
ldr r3, _08129424 @ =gAIScriptPtr
ldr r2, [r3]
movs r4, 0x18
@@ -1569,7 +1569,7 @@ ContestAICmd_unk_26: @ 81293F0
str r1, [r3]
b _0812942C
.align 2, 0
-_08129420: .4byte 0x020192e4
+_08129420: .4byte gSharedMem + 0x192E4
_08129424: .4byte gAIScriptPtr
_08129428:
adds r0, r2, 0x5
@@ -1583,7 +1583,7 @@ _0812942C:
thumb_func_start ContestAICmd_get_move_effect
ContestAICmd_get_move_effect: @ 8129434
ldr r2, _08129460 @ =gContestMons
- ldr r3, _08129464 @ =0x020192e4
+ ldr r3, _08129464 @ =gSharedMem + 0x192E4
ldrb r1, [r3, 0x4]
lsls r1, 1
adds r0, r3, 0
@@ -1606,7 +1606,7 @@ ContestAICmd_get_move_effect: @ 8129434
bx lr
.align 2, 0
_08129460: .4byte gContestMons
-_08129464: .4byte 0x020192e4
+_08129464: .4byte gSharedMem + 0x192E4
_08129468: .4byte gContestMoves
_0812946C: .4byte gAIScriptPtr
thumb_func_end ContestAICmd_get_move_effect
@@ -1615,7 +1615,7 @@ _0812946C: .4byte gAIScriptPtr
ContestAICmd_unk_28: @ 8129470
push {lr}
bl ContestAICmd_get_move_effect
- ldr r0, _081294A0 @ =0x020192e4
+ ldr r0, _081294A0 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _081294A4 @ =gAIScriptPtr
@@ -1636,7 +1636,7 @@ ContestAICmd_unk_28: @ 8129470
str r1, [r3]
b _081294AC
.align 2, 0
-_081294A0: .4byte 0x020192e4
+_081294A0: .4byte gSharedMem + 0x192E4
_081294A4: .4byte gAIScriptPtr
_081294A8:
adds r0, r2, 0x5
@@ -1650,7 +1650,7 @@ _081294AC:
ContestAICmd_unk_29: @ 81294B0
push {lr}
bl ContestAICmd_get_move_effect
- ldr r0, _081294E0 @ =0x020192e4
+ ldr r0, _081294E0 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _081294E4 @ =gAIScriptPtr
@@ -1671,7 +1671,7 @@ ContestAICmd_unk_29: @ 81294B0
str r1, [r3]
b _081294EC
.align 2, 0
-_081294E0: .4byte 0x020192e4
+_081294E0: .4byte gSharedMem + 0x192E4
_081294E4: .4byte gAIScriptPtr
_081294E8:
adds r0, r2, 0x5
@@ -1684,7 +1684,7 @@ _081294EC:
thumb_func_start ContestAICmd_get_move_effect_type
ContestAICmd_get_move_effect_type: @ 81294F0
ldr r2, _08129524 @ =gContestMons
- ldr r3, _08129528 @ =0x020192e4
+ ldr r3, _08129528 @ =gSharedMem + 0x192E4
ldrb r1, [r3, 0x4]
lsls r1, 1
adds r0, r3, 0
@@ -1711,7 +1711,7 @@ ContestAICmd_get_move_effect_type: @ 81294F0
bx lr
.align 2, 0
_08129524: .4byte gContestMons
-_08129528: .4byte 0x020192e4
+_08129528: .4byte gSharedMem + 0x192E4
_0812952C: .4byte gContestEffects
_08129530: .4byte gContestMoves
_08129534: .4byte gAIScriptPtr
@@ -1721,7 +1721,7 @@ _08129534: .4byte gAIScriptPtr
ContestAICmd_unk_2B: @ 8129538
push {lr}
bl ContestAICmd_get_move_effect_type
- ldr r0, _08129568 @ =0x020192e4
+ ldr r0, _08129568 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _0812956C @ =gAIScriptPtr
@@ -1742,7 +1742,7 @@ ContestAICmd_unk_2B: @ 8129538
str r1, [r3]
b _08129574
.align 2, 0
-_08129568: .4byte 0x020192e4
+_08129568: .4byte gSharedMem + 0x192E4
_0812956C: .4byte gAIScriptPtr
_08129570:
adds r0, r2, 0x5
@@ -1756,7 +1756,7 @@ _08129574:
ContestAICmd_unk_2C: @ 8129578
push {lr}
bl ContestAICmd_get_move_effect_type
- ldr r0, _081295A8 @ =0x020192e4
+ ldr r0, _081295A8 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _081295AC @ =gAIScriptPtr
@@ -1777,7 +1777,7 @@ ContestAICmd_unk_2C: @ 8129578
str r1, [r3]
b _081295B4
.align 2, 0
-_081295A8: .4byte 0x020192e4
+_081295A8: .4byte gSharedMem + 0x192E4
_081295AC: .4byte gAIScriptPtr
_081295B0:
adds r0, r2, 0x5
@@ -1791,7 +1791,7 @@ _081295B4:
ContestAICmd_check_move_has_highest_appeal: @ 81295B8
push {r4-r7,lr}
ldr r2, _08129610 @ =gContestMons
- ldr r3, _08129614 @ =0x020192e4
+ ldr r3, _08129614 @ =gSharedMem + 0x192E4
ldrb r0, [r3, 0x4]
lsls r0, 1
adds r1, r3, 0
@@ -1838,7 +1838,7 @@ _08129608:
b _08129626
.align 2, 0
_08129610: .4byte gContestMons
-_08129614: .4byte 0x020192e4
+_08129614: .4byte gSharedMem + 0x192E4
_08129618: .4byte gContestEffects
_0812961C: .4byte gContestMoves
_08129620: .4byte gAIScriptPtr
@@ -1859,7 +1859,7 @@ _08129626:
ContestAICmd_unk_2E: @ 8129638
push {lr}
bl ContestAICmd_check_move_has_highest_appeal
- ldr r0, _08129664 @ =0x020192e4
+ ldr r0, _08129664 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
cmp r0, 0
@@ -1879,7 +1879,7 @@ ContestAICmd_unk_2E: @ 8129638
str r1, [r3]
b _08129674
.align 2, 0
-_08129664: .4byte 0x020192e4
+_08129664: .4byte gSharedMem + 0x192E4
_08129668: .4byte gAIScriptPtr
_0812966C:
ldr r1, _08129678 @ =gAIScriptPtr
@@ -1897,7 +1897,7 @@ _08129678: .4byte gAIScriptPtr
ContestAICmd_unk_2F: @ 812967C
push {r4-r7,lr}
ldr r2, _081296D4 @ =gContestMons
- ldr r3, _081296D8 @ =0x020192e4
+ ldr r3, _081296D8 @ =gSharedMem + 0x192E4
ldrb r0, [r3, 0x4]
lsls r0, 1
adds r1, r3, 0
@@ -1944,7 +1944,7 @@ _081296CC:
b _081296EA
.align 2, 0
_081296D4: .4byte gContestMons
-_081296D8: .4byte 0x020192e4
+_081296D8: .4byte gSharedMem + 0x192E4
_081296DC: .4byte gContestEffects
_081296E0: .4byte gContestMoves
_081296E4: .4byte gAIScriptPtr
@@ -1965,7 +1965,7 @@ _081296EA:
ContestAICmd_unk_30: @ 81296FC
push {lr}
bl ContestAICmd_unk_2F
- ldr r0, _08129728 @ =0x020192e4
+ ldr r0, _08129728 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
cmp r0, 0
@@ -1985,7 +1985,7 @@ ContestAICmd_unk_30: @ 81296FC
str r1, [r3]
b _08129738
.align 2, 0
-_08129728: .4byte 0x020192e4
+_08129728: .4byte gSharedMem + 0x192E4
_0812972C: .4byte gAIScriptPtr
_08129730:
ldr r1, _0812973C @ =gAIScriptPtr
@@ -2003,7 +2003,7 @@ _0812973C: .4byte gAIScriptPtr
ContestAICmd_unk_31: @ 8129740
push {r4,lr}
ldr r2, _08129784 @ =gContestMons
- ldr r4, _08129788 @ =0x020192e4
+ ldr r4, _08129788 @ =gSharedMem + 0x192E4
ldrb r1, [r4, 0x4]
lsls r1, 1
adds r0, r4, 0
@@ -2036,7 +2036,7 @@ ContestAICmd_unk_31: @ 8129740
bx r0
.align 2, 0
_08129784: .4byte gContestMons
-_08129788: .4byte 0x020192e4
+_08129788: .4byte gSharedMem + 0x192E4
_0812978C: .4byte gContestEffects
_08129790: .4byte gContestMoves
_08129794: .4byte gAIScriptPtr
@@ -2046,7 +2046,7 @@ _08129794: .4byte gAIScriptPtr
ContestAICmd_unk_32: @ 8129798
push {lr}
bl ContestAICmd_unk_31
- ldr r0, _081297C8 @ =0x020192e4
+ ldr r0, _081297C8 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _081297CC @ =gAIScriptPtr
@@ -2067,7 +2067,7 @@ ContestAICmd_unk_32: @ 8129798
str r1, [r3]
b _081297D4
.align 2, 0
-_081297C8: .4byte 0x020192e4
+_081297C8: .4byte gSharedMem + 0x192E4
_081297CC: .4byte gAIScriptPtr
_081297D0:
adds r0, r2, 0x5
@@ -2081,7 +2081,7 @@ _081297D4:
ContestAICmd_unk_33: @ 81297D8
push {lr}
bl ContestAICmd_unk_31
- ldr r0, _08129808 @ =0x020192e4
+ ldr r0, _08129808 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _0812980C @ =gAIScriptPtr
@@ -2102,7 +2102,7 @@ ContestAICmd_unk_33: @ 81297D8
str r1, [r3]
b _08129814
.align 2, 0
-_08129808: .4byte 0x020192e4
+_08129808: .4byte gSharedMem + 0x192E4
_0812980C: .4byte gAIScriptPtr
_08129810:
adds r0, r2, 0x5
@@ -2116,7 +2116,7 @@ _08129814:
ContestAICmd_unk_34: @ 8129818
push {lr}
bl ContestAICmd_unk_31
- ldr r0, _08129848 @ =0x020192e4
+ ldr r0, _08129848 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _0812984C @ =gAIScriptPtr
@@ -2137,7 +2137,7 @@ ContestAICmd_unk_34: @ 8129818
str r1, [r3]
b _08129854
.align 2, 0
-_08129848: .4byte 0x020192e4
+_08129848: .4byte gSharedMem + 0x192E4
_0812984C: .4byte gAIScriptPtr
_08129850:
adds r0, r2, 0x5
@@ -2151,7 +2151,7 @@ _08129854:
ContestAICmd_unk_35: @ 8129858
push {lr}
bl ContestAICmd_unk_31
- ldr r0, _08129888 @ =0x020192e4
+ ldr r0, _08129888 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _0812988C @ =gAIScriptPtr
@@ -2172,7 +2172,7 @@ ContestAICmd_unk_35: @ 8129858
str r1, [r3]
b _08129894
.align 2, 0
-_08129888: .4byte 0x020192e4
+_08129888: .4byte gSharedMem + 0x192E4
_0812988C: .4byte gAIScriptPtr
_08129890:
adds r0, r2, 0x5
@@ -2186,7 +2186,7 @@ _08129894:
ContestAICmd_unk_36: @ 8129898
push {r4,lr}
ldr r2, _081298DC @ =gContestMons
- ldr r4, _081298E0 @ =0x020192e4
+ ldr r4, _081298E0 @ =gSharedMem + 0x192E4
ldrb r1, [r4, 0x4]
lsls r1, 1
adds r0, r4, 0
@@ -2219,7 +2219,7 @@ ContestAICmd_unk_36: @ 8129898
bx r0
.align 2, 0
_081298DC: .4byte gContestMons
-_081298E0: .4byte 0x020192e4
+_081298E0: .4byte gSharedMem + 0x192E4
_081298E4: .4byte gContestEffects
_081298E8: .4byte gContestMoves
_081298EC: .4byte gAIScriptPtr
@@ -2229,7 +2229,7 @@ _081298EC: .4byte gAIScriptPtr
ContestAICmd_unk_37: @ 81298F0
push {lr}
bl ContestAICmd_unk_36
- ldr r0, _08129920 @ =0x020192e4
+ ldr r0, _08129920 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _08129924 @ =gAIScriptPtr
@@ -2250,7 +2250,7 @@ ContestAICmd_unk_37: @ 81298F0
str r1, [r3]
b _0812992C
.align 2, 0
-_08129920: .4byte 0x020192e4
+_08129920: .4byte gSharedMem + 0x192E4
_08129924: .4byte gAIScriptPtr
_08129928:
adds r0, r2, 0x5
@@ -2264,7 +2264,7 @@ _0812992C:
ContestAICmd_unk_38: @ 8129930
push {lr}
bl ContestAICmd_unk_36
- ldr r0, _08129960 @ =0x020192e4
+ ldr r0, _08129960 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _08129964 @ =gAIScriptPtr
@@ -2285,7 +2285,7 @@ ContestAICmd_unk_38: @ 8129930
str r1, [r3]
b _0812996C
.align 2, 0
-_08129960: .4byte 0x020192e4
+_08129960: .4byte gSharedMem + 0x192E4
_08129964: .4byte gAIScriptPtr
_08129968:
adds r0, r2, 0x5
@@ -2299,7 +2299,7 @@ _0812996C:
ContestAICmd_unk_39: @ 8129970
push {lr}
bl ContestAICmd_unk_36
- ldr r0, _081299A0 @ =0x020192e4
+ ldr r0, _081299A0 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _081299A4 @ =gAIScriptPtr
@@ -2320,7 +2320,7 @@ ContestAICmd_unk_39: @ 8129970
str r1, [r3]
b _081299AC
.align 2, 0
-_081299A0: .4byte 0x020192e4
+_081299A0: .4byte gSharedMem + 0x192E4
_081299A4: .4byte gAIScriptPtr
_081299A8:
adds r0, r2, 0x5
@@ -2334,7 +2334,7 @@ _081299AC:
ContestAICmd_unk_3A: @ 81299B0
push {lr}
bl ContestAICmd_unk_36
- ldr r0, _081299E0 @ =0x020192e4
+ ldr r0, _081299E0 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _081299E4 @ =gAIScriptPtr
@@ -2355,7 +2355,7 @@ ContestAICmd_unk_3A: @ 81299B0
str r1, [r3]
b _081299EC
.align 2, 0
-_081299E0: .4byte 0x020192e4
+_081299E0: .4byte gSharedMem + 0x192E4
_081299E4: .4byte gAIScriptPtr
_081299E8:
adds r0, r2, 0x5
@@ -2369,7 +2369,7 @@ _081299EC:
ContestAICmd_get_move_used_count: @ 81299F0
push {r4,lr}
ldr r3, _08129A20 @ =gContestMons
- ldr r4, _08129A24 @ =0x020192e4
+ ldr r4, _08129A24 @ =gSharedMem + 0x192E4
ldrb r0, [r4, 0x4]
lsls r0, 1
adds r1, r4, 0
@@ -2393,7 +2393,7 @@ ContestAICmd_get_move_used_count: @ 81299F0
b _08129A30
.align 2, 0
_08129A20: .4byte gContestMons
-_08129A24: .4byte 0x020192e4
+_08129A24: .4byte gSharedMem + 0x192E4
_08129A28:
ldrb r0, [r0, 0xB]
lsls r0, 25
@@ -2416,7 +2416,7 @@ _08129A40: .4byte gAIScriptPtr
ContestAICmd_unk_3C: @ 8129A44
push {lr}
bl ContestAICmd_get_move_used_count
- ldr r0, _08129A74 @ =0x020192e4
+ ldr r0, _08129A74 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _08129A78 @ =gAIScriptPtr
@@ -2437,7 +2437,7 @@ ContestAICmd_unk_3C: @ 8129A44
str r1, [r3]
b _08129A80
.align 2, 0
-_08129A74: .4byte 0x020192e4
+_08129A74: .4byte gSharedMem + 0x192E4
_08129A78: .4byte gAIScriptPtr
_08129A7C:
adds r0, r2, 0x5
@@ -2451,7 +2451,7 @@ _08129A80:
ContestAICmd_unk_3D: @ 8129A84
push {lr}
bl ContestAICmd_get_move_used_count
- ldr r0, _08129AB4 @ =0x020192e4
+ ldr r0, _08129AB4 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _08129AB8 @ =gAIScriptPtr
@@ -2472,7 +2472,7 @@ ContestAICmd_unk_3D: @ 8129A84
str r1, [r3]
b _08129AC0
.align 2, 0
-_08129AB4: .4byte 0x020192e4
+_08129AB4: .4byte gSharedMem + 0x192E4
_08129AB8: .4byte gAIScriptPtr
_08129ABC:
adds r0, r2, 0x5
@@ -2486,7 +2486,7 @@ _08129AC0:
ContestAICmd_unk_3E: @ 8129AC4
push {lr}
bl ContestAICmd_get_move_used_count
- ldr r0, _08129AF4 @ =0x020192e4
+ ldr r0, _08129AF4 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _08129AF8 @ =gAIScriptPtr
@@ -2507,7 +2507,7 @@ ContestAICmd_unk_3E: @ 8129AC4
str r1, [r3]
b _08129B00
.align 2, 0
-_08129AF4: .4byte 0x020192e4
+_08129AF4: .4byte gSharedMem + 0x192E4
_08129AF8: .4byte gAIScriptPtr
_08129AFC:
adds r0, r2, 0x5
@@ -2521,7 +2521,7 @@ _08129B00:
ContestAICmd_unk_3F: @ 8129B04
push {lr}
bl ContestAICmd_get_move_used_count
- ldr r0, _08129B34 @ =0x020192e4
+ ldr r0, _08129B34 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _08129B38 @ =gAIScriptPtr
@@ -2542,7 +2542,7 @@ ContestAICmd_unk_3F: @ 8129B04
str r1, [r3]
b _08129B40
.align 2, 0
-_08129B34: .4byte 0x020192e4
+_08129B34: .4byte gSharedMem + 0x192E4
_08129B38: .4byte gAIScriptPtr
_08129B3C:
adds r0, r2, 0x5
@@ -2559,7 +2559,7 @@ ContestAICmd_check_combo_starter: @ 8129B44
push {r7}
movs r5, 0
ldr r3, _08129BAC @ =gContestMons
- ldr r2, _08129BB0 @ =0x020192e4
+ ldr r2, _08129BB0 @ =gSharedMem + 0x192E4
ldrb r1, [r2, 0x4]
lsls r1, 1
adds r2, 0x41
@@ -2598,7 +2598,7 @@ _08129B8A:
_08129B94:
movs r5, 0x1
_08129B96:
- ldr r0, _08129BB0 @ =0x020192e4
+ ldr r0, _08129BB0 @ =gSharedMem + 0x192E4
strh r5, [r0, 0x18]
ldr r1, _08129BB4 @ =gAIScriptPtr
ldr r0, [r1]
@@ -2611,7 +2611,7 @@ _08129B96:
bx r0
.align 2, 0
_08129BAC: .4byte gContestMons
-_08129BB0: .4byte 0x020192e4
+_08129BB0: .4byte gSharedMem + 0x192E4
_08129BB4: .4byte gAIScriptPtr
thumb_func_end ContestAICmd_check_combo_starter
@@ -2619,7 +2619,7 @@ _08129BB4: .4byte gAIScriptPtr
ContestAICmd_unk_41: @ 8129BB8
push {lr}
bl ContestAICmd_check_combo_starter
- ldr r0, _08129BE4 @ =0x020192e4
+ ldr r0, _08129BE4 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
cmp r0, 0
@@ -2639,7 +2639,7 @@ ContestAICmd_unk_41: @ 8129BB8
str r1, [r3]
b _08129BF4
.align 2, 0
-_08129BE4: .4byte 0x020192e4
+_08129BE4: .4byte gSharedMem + 0x192E4
_08129BE8: .4byte gAIScriptPtr
_08129BEC:
ldr r1, _08129BF8 @ =gAIScriptPtr
@@ -2657,7 +2657,7 @@ _08129BF8: .4byte gAIScriptPtr
ContestAICmd_unk_42: @ 8129BFC
push {lr}
bl ContestAICmd_check_combo_starter
- ldr r0, _08129C28 @ =0x020192e4
+ ldr r0, _08129C28 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
cmp r0, 0
@@ -2677,7 +2677,7 @@ ContestAICmd_unk_42: @ 8129BFC
str r1, [r3]
b _08129C38
.align 2, 0
-_08129C28: .4byte 0x020192e4
+_08129C28: .4byte gSharedMem + 0x192E4
_08129C2C: .4byte gAIScriptPtr
_08129C30:
ldr r1, _08129C3C @ =gAIScriptPtr
@@ -2698,7 +2698,7 @@ ContestAICmd_check_combo_finisher: @ 8129C40
push {r7}
movs r5, 0
ldr r3, _08129CA8 @ =gContestMons
- ldr r2, _08129CAC @ =0x020192e4
+ ldr r2, _08129CAC @ =gSharedMem + 0x192E4
ldrb r1, [r2, 0x4]
lsls r1, 1
adds r2, 0x41
@@ -2736,7 +2736,7 @@ _08129C84:
_08129C8E:
movs r5, 0x1
_08129C90:
- ldr r0, _08129CAC @ =0x020192e4
+ ldr r0, _08129CAC @ =gSharedMem + 0x192E4
strh r5, [r0, 0x18]
ldr r1, _08129CB0 @ =gAIScriptPtr
ldr r0, [r1]
@@ -2749,7 +2749,7 @@ _08129C90:
bx r0
.align 2, 0
_08129CA8: .4byte gContestMons
-_08129CAC: .4byte 0x020192e4
+_08129CAC: .4byte gSharedMem + 0x192E4
_08129CB0: .4byte gAIScriptPtr
thumb_func_end ContestAICmd_check_combo_finisher
@@ -2757,7 +2757,7 @@ _08129CB0: .4byte gAIScriptPtr
ContestAICmd_unk_44: @ 8129CB4
push {lr}
bl ContestAICmd_check_combo_finisher
- ldr r0, _08129CE0 @ =0x020192e4
+ ldr r0, _08129CE0 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
cmp r0, 0
@@ -2777,7 +2777,7 @@ ContestAICmd_unk_44: @ 8129CB4
str r1, [r3]
b _08129CF0
.align 2, 0
-_08129CE0: .4byte 0x020192e4
+_08129CE0: .4byte gSharedMem + 0x192E4
_08129CE4: .4byte gAIScriptPtr
_08129CE8:
ldr r1, _08129CF4 @ =gAIScriptPtr
@@ -2795,7 +2795,7 @@ _08129CF4: .4byte gAIScriptPtr
ContestAICmd_unk_45: @ 8129CF8
push {lr}
bl ContestAICmd_check_combo_finisher
- ldr r0, _08129D24 @ =0x020192e4
+ ldr r0, _08129D24 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
cmp r0, 0
@@ -2815,7 +2815,7 @@ ContestAICmd_unk_45: @ 8129CF8
str r1, [r3]
b _08129D34
.align 2, 0
-_08129D24: .4byte 0x020192e4
+_08129D24: .4byte gSharedMem + 0x192E4
_08129D28: .4byte gAIScriptPtr
_08129D2C:
ldr r1, _08129D38 @ =gAIScriptPtr
@@ -2834,7 +2834,7 @@ ContestAICmd_check_would_finish_combo: @ 8129D3C
push {r4,r5,lr}
movs r5, 0
ldr r3, _08129D8C @ =gContestMons
- ldr r4, _08129D90 @ =0x020192e4
+ ldr r4, _08129D90 @ =gSharedMem + 0x192E4
ldrb r0, [r4, 0x4]
lsls r0, 1
adds r1, r4, 0
@@ -2873,7 +2873,7 @@ _08129D7A:
bx r0
.align 2, 0
_08129D8C: .4byte gContestMons
-_08129D90: .4byte 0x020192e4
+_08129D90: .4byte gSharedMem + 0x192E4
_08129D94: .4byte gAIScriptPtr
thumb_func_end ContestAICmd_check_would_finish_combo
@@ -2881,7 +2881,7 @@ _08129D94: .4byte gAIScriptPtr
ContestAICmd_unk_47: @ 8129D98
push {lr}
bl ContestAICmd_check_would_finish_combo
- ldr r0, _08129DC4 @ =0x020192e4
+ ldr r0, _08129DC4 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
cmp r0, 0
@@ -2901,7 +2901,7 @@ ContestAICmd_unk_47: @ 8129D98
str r1, [r3]
b _08129DD4
.align 2, 0
-_08129DC4: .4byte 0x020192e4
+_08129DC4: .4byte gSharedMem + 0x192E4
_08129DC8: .4byte gAIScriptPtr
_08129DCC:
ldr r1, _08129DD8 @ =gAIScriptPtr
@@ -2919,7 +2919,7 @@ _08129DD8: .4byte gAIScriptPtr
ContestAICmd_unk_48: @ 8129DDC
push {lr}
bl ContestAICmd_check_would_finish_combo
- ldr r0, _08129E08 @ =0x020192e4
+ ldr r0, _08129E08 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
cmp r0, 0
@@ -2939,7 +2939,7 @@ ContestAICmd_unk_48: @ 8129DDC
str r1, [r3]
b _08129E18
.align 2, 0
-_08129E08: .4byte 0x020192e4
+_08129E08: .4byte gSharedMem + 0x192E4
_08129E0C: .4byte gAIScriptPtr
_08129E10:
ldr r1, _08129E1C @ =gAIScriptPtr
@@ -2962,7 +2962,7 @@ ContestAICmd_get_condition: @ 8129E20
bl sub_8128A7C
lsls r0, 24
lsrs r0, 24
- ldr r5, _08129E60 @ =0x020192e4
+ ldr r5, _08129E60 @ =gSharedMem + 0x192E4
lsls r1, r0, 3
subs r1, r0
lsls r1, 2
@@ -2984,14 +2984,14 @@ ContestAICmd_get_condition: @ 8129E20
bx r0
.align 2, 0
_08129E5C: .4byte gAIScriptPtr
-_08129E60: .4byte 0x020192e4
+_08129E60: .4byte gSharedMem + 0x192E4
thumb_func_end ContestAICmd_get_condition
thumb_func_start ContestAICmd_unk_4A
ContestAICmd_unk_4A: @ 8129E64
push {lr}
bl ContestAICmd_get_condition
- ldr r0, _08129E94 @ =0x020192e4
+ ldr r0, _08129E94 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _08129E98 @ =gAIScriptPtr
@@ -3012,7 +3012,7 @@ ContestAICmd_unk_4A: @ 8129E64
str r1, [r3]
b _08129EA0
.align 2, 0
-_08129E94: .4byte 0x020192e4
+_08129E94: .4byte gSharedMem + 0x192E4
_08129E98: .4byte gAIScriptPtr
_08129E9C:
adds r0, r2, 0x5
@@ -3026,7 +3026,7 @@ _08129EA0:
ContestAICmd_unk_4B: @ 8129EA4
push {lr}
bl ContestAICmd_get_condition
- ldr r0, _08129ED4 @ =0x020192e4
+ ldr r0, _08129ED4 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _08129ED8 @ =gAIScriptPtr
@@ -3047,7 +3047,7 @@ ContestAICmd_unk_4B: @ 8129EA4
str r1, [r3]
b _08129EE0
.align 2, 0
-_08129ED4: .4byte 0x020192e4
+_08129ED4: .4byte gSharedMem + 0x192E4
_08129ED8: .4byte gAIScriptPtr
_08129EDC:
adds r0, r2, 0x5
@@ -3061,7 +3061,7 @@ _08129EE0:
ContestAICmd_unk_4C: @ 8129EE4
push {lr}
bl ContestAICmd_get_condition
- ldr r0, _08129F14 @ =0x020192e4
+ ldr r0, _08129F14 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _08129F18 @ =gAIScriptPtr
@@ -3082,7 +3082,7 @@ ContestAICmd_unk_4C: @ 8129EE4
str r1, [r3]
b _08129F20
.align 2, 0
-_08129F14: .4byte 0x020192e4
+_08129F14: .4byte gSharedMem + 0x192E4
_08129F18: .4byte gAIScriptPtr
_08129F1C:
adds r0, r2, 0x5
@@ -3096,7 +3096,7 @@ _08129F20:
ContestAICmd_unk_4D: @ 8129F24
push {lr}
bl ContestAICmd_get_condition
- ldr r0, _08129F54 @ =0x020192e4
+ ldr r0, _08129F54 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _08129F58 @ =gAIScriptPtr
@@ -3117,7 +3117,7 @@ ContestAICmd_unk_4D: @ 8129F24
str r1, [r3]
b _08129F60
.align 2, 0
-_08129F54: .4byte 0x020192e4
+_08129F54: .4byte gSharedMem + 0x192E4
_08129F58: .4byte gAIScriptPtr
_08129F5C:
adds r0, r2, 0x5
@@ -3146,7 +3146,7 @@ ContestAICmd_get_used_combo_starter: @ 8129F64
lsls r0, r4, 3
subs r0, r4
lsls r0, 2
- ldr r1, _08129FB4 @ =0x02019260
+ ldr r1, _08129FB4 @ =gSharedMem + 0x19260
adds r0, r1
ldrh r0, [r0, 0x8]
lsls r0, 3
@@ -3156,7 +3156,7 @@ ContestAICmd_get_used_combo_starter: @ 8129F64
orrs r0, r1
lsrs r6, r0, 31
_08129F9C:
- ldr r0, _08129FB8 @ =0x020192e4
+ ldr r0, _08129FB8 @ =gSharedMem + 0x192E4
strh r6, [r0, 0x18]
ldr r0, [r5]
adds r0, 0x2
@@ -3167,15 +3167,15 @@ _08129F9C:
.align 2, 0
_08129FAC: .4byte gAIScriptPtr
_08129FB0: .4byte gContestMoves
-_08129FB4: .4byte 0x02019260
-_08129FB8: .4byte 0x020192e4
+_08129FB4: .4byte gSharedMem + 0x19260
+_08129FB8: .4byte gSharedMem + 0x192E4
thumb_func_end ContestAICmd_get_used_combo_starter
thumb_func_start ContestAICmd_unk_4F
ContestAICmd_unk_4F: @ 8129FBC
push {lr}
bl ContestAICmd_get_used_combo_starter
- ldr r0, _08129FEC @ =0x020192e4
+ ldr r0, _08129FEC @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _08129FF0 @ =gAIScriptPtr
@@ -3196,7 +3196,7 @@ ContestAICmd_unk_4F: @ 8129FBC
str r1, [r3]
b _08129FF8
.align 2, 0
-_08129FEC: .4byte 0x020192e4
+_08129FEC: .4byte gSharedMem + 0x192E4
_08129FF0: .4byte gAIScriptPtr
_08129FF4:
adds r0, r2, 0x5
@@ -3210,7 +3210,7 @@ _08129FF8:
ContestAICmd_unk_50: @ 8129FFC
push {lr}
bl ContestAICmd_get_used_combo_starter
- ldr r0, _0812A02C @ =0x020192e4
+ ldr r0, _0812A02C @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _0812A030 @ =gAIScriptPtr
@@ -3231,7 +3231,7 @@ ContestAICmd_unk_50: @ 8129FFC
str r1, [r3]
b _0812A038
.align 2, 0
-_0812A02C: .4byte 0x020192e4
+_0812A02C: .4byte gSharedMem + 0x192E4
_0812A030: .4byte gAIScriptPtr
_0812A034:
adds r0, r2, 0x5
@@ -3245,7 +3245,7 @@ _0812A038:
ContestAICmd_unk_51: @ 812A03C
push {lr}
bl ContestAICmd_get_used_combo_starter
- ldr r0, _0812A06C @ =0x020192e4
+ ldr r0, _0812A06C @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _0812A070 @ =gAIScriptPtr
@@ -3266,7 +3266,7 @@ ContestAICmd_unk_51: @ 812A03C
str r1, [r3]
b _0812A078
.align 2, 0
-_0812A06C: .4byte 0x020192e4
+_0812A06C: .4byte gSharedMem + 0x192E4
_0812A070: .4byte gAIScriptPtr
_0812A074:
adds r0, r2, 0x5
@@ -3280,7 +3280,7 @@ _0812A078:
ContestAICmd_unk_52: @ 812A07C
push {lr}
bl ContestAICmd_get_used_combo_starter
- ldr r0, _0812A0AC @ =0x020192e4
+ ldr r0, _0812A0AC @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _0812A0B0 @ =gAIScriptPtr
@@ -3301,7 +3301,7 @@ ContestAICmd_unk_52: @ 812A07C
str r1, [r3]
b _0812A0B8
.align 2, 0
-_0812A0AC: .4byte 0x020192e4
+_0812A0AC: .4byte gSharedMem + 0x192E4
_0812A0B0: .4byte gAIScriptPtr
_0812A0B4:
adds r0, r2, 0x5
@@ -3324,14 +3324,14 @@ ContestAICmd_check_can_participate: @ 812A0BC
lsls r0, 24
cmp r0, 0
beq _0812A0E4
- ldr r1, _0812A0E0 @ =0x020192e4
+ ldr r1, _0812A0E0 @ =gSharedMem + 0x192E4
movs r0, 0
b _0812A0E8
.align 2, 0
_0812A0DC: .4byte gAIScriptPtr
-_0812A0E0: .4byte 0x020192e4
+_0812A0E0: .4byte gSharedMem + 0x192E4
_0812A0E4:
- ldr r1, _0812A0F8 @ =0x020192e4
+ ldr r1, _0812A0F8 @ =gSharedMem + 0x192E4
movs r0, 0x1
_0812A0E8:
strh r0, [r1, 0x18]
@@ -3342,7 +3342,7 @@ _0812A0E8:
pop {r0}
bx r0
.align 2, 0
-_0812A0F8: .4byte 0x020192e4
+_0812A0F8: .4byte gSharedMem + 0x192E4
_0812A0FC: .4byte gAIScriptPtr
thumb_func_end ContestAICmd_check_can_participate
@@ -3350,7 +3350,7 @@ _0812A0FC: .4byte gAIScriptPtr
ContestAICmd_unk_54: @ 812A100
push {lr}
bl ContestAICmd_check_can_participate
- ldr r0, _0812A12C @ =0x020192e4
+ ldr r0, _0812A12C @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
cmp r0, 0
@@ -3370,7 +3370,7 @@ ContestAICmd_unk_54: @ 812A100
str r1, [r3]
b _0812A13C
.align 2, 0
-_0812A12C: .4byte 0x020192e4
+_0812A12C: .4byte gSharedMem + 0x192E4
_0812A130: .4byte gAIScriptPtr
_0812A134:
ldr r1, _0812A140 @ =gAIScriptPtr
@@ -3388,7 +3388,7 @@ _0812A140: .4byte gAIScriptPtr
ContestAICmd_unk_55: @ 812A144
push {lr}
bl ContestAICmd_check_can_participate
- ldr r0, _0812A170 @ =0x020192e4
+ ldr r0, _0812A170 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
cmp r0, 0
@@ -3408,7 +3408,7 @@ ContestAICmd_unk_55: @ 812A144
str r1, [r3]
b _0812A180
.align 2, 0
-_0812A170: .4byte 0x020192e4
+_0812A170: .4byte gSharedMem + 0x192E4
_0812A174: .4byte gAIScriptPtr
_0812A178:
ldr r1, _0812A184 @ =gAIScriptPtr
@@ -3431,7 +3431,7 @@ ContestAICmd_get_val_812A188: @ 812A188
bl sub_8128A7C
lsls r0, 24
lsrs r0, 24
- ldr r2, _0812A1C0 @ =0x020192e4
+ ldr r2, _0812A1C0 @ =gSharedMem + 0x192E4
lsls r1, r0, 3
subs r1, r0
lsls r1, 2
@@ -3450,14 +3450,14 @@ ContestAICmd_get_val_812A188: @ 812A188
bx r0
.align 2, 0
_0812A1BC: .4byte gAIScriptPtr
-_0812A1C0: .4byte 0x020192e4
+_0812A1C0: .4byte gSharedMem + 0x192E4
thumb_func_end ContestAICmd_get_val_812A188
thumb_func_start ContestAICmd_unk_57
ContestAICmd_unk_57: @ 812A1C4
push {lr}
bl ContestAICmd_get_val_812A188
- ldr r0, _0812A1F0 @ =0x020192e4
+ ldr r0, _0812A1F0 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
cmp r0, 0
@@ -3477,7 +3477,7 @@ ContestAICmd_unk_57: @ 812A1C4
str r1, [r3]
b _0812A200
.align 2, 0
-_0812A1F0: .4byte 0x020192e4
+_0812A1F0: .4byte gSharedMem + 0x192E4
_0812A1F4: .4byte gAIScriptPtr
_0812A1F8:
ldr r1, _0812A204 @ =gAIScriptPtr
@@ -3495,7 +3495,7 @@ _0812A204: .4byte gAIScriptPtr
ContestAICmd_unk_58: @ 812A208
push {lr}
bl ContestAICmd_get_val_812A188
- ldr r0, _0812A234 @ =0x020192e4
+ ldr r0, _0812A234 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
cmp r0, 0
@@ -3515,7 +3515,7 @@ ContestAICmd_unk_58: @ 812A208
str r1, [r3]
b _0812A244
.align 2, 0
-_0812A234: .4byte 0x020192e4
+_0812A234: .4byte gSharedMem + 0x192E4
_0812A238: .4byte gAIScriptPtr
_0812A23C:
ldr r1, _0812A248 @ =gAIScriptPtr
@@ -3538,7 +3538,7 @@ ContestAICmd_unk_59: @ 812A24C
bl sub_8128A7C
lsls r0, 24
lsrs r0, 24
- ldr r3, _0812A290 @ =0x020192e4
+ ldr r3, _0812A290 @ =gSharedMem + 0x192E4
lsls r1, r0, 3
subs r1, r0
lsls r1, 2
@@ -3564,14 +3564,14 @@ ContestAICmd_unk_59: @ 812A24C
bx r0
.align 2, 0
_0812A28C: .4byte gAIScriptPtr
-_0812A290: .4byte 0x020192e4
+_0812A290: .4byte gSharedMem + 0x192E4
thumb_func_end ContestAICmd_unk_59
thumb_func_start ContestAICmd_unk_5A
ContestAICmd_unk_5A: @ 812A294
push {lr}
bl ContestAICmd_unk_59
- ldr r0, _0812A2C0 @ =0x020192e4
+ ldr r0, _0812A2C0 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
cmp r0, 0
@@ -3591,7 +3591,7 @@ ContestAICmd_unk_5A: @ 812A294
str r1, [r3]
b _0812A2D0
.align 2, 0
-_0812A2C0: .4byte 0x020192e4
+_0812A2C0: .4byte gSharedMem + 0x192E4
_0812A2C4: .4byte gAIScriptPtr
_0812A2C8:
ldr r1, _0812A2D4 @ =gAIScriptPtr
@@ -3609,7 +3609,7 @@ _0812A2D4: .4byte gAIScriptPtr
ContestAICmd_unk_5B: @ 812A2D8
push {lr}
bl ContestAICmd_unk_59
- ldr r0, _0812A304 @ =0x020192e4
+ ldr r0, _0812A304 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
cmp r0, 0
@@ -3629,7 +3629,7 @@ ContestAICmd_unk_5B: @ 812A2D8
str r1, [r3]
b _0812A314
.align 2, 0
-_0812A304: .4byte 0x020192e4
+_0812A304: .4byte gSharedMem + 0x192E4
_0812A308: .4byte gAIScriptPtr
_0812A30C:
ldr r1, _0812A318 @ =gAIScriptPtr
@@ -3647,7 +3647,7 @@ _0812A318: .4byte gAIScriptPtr
ContestAICmd_unk_5C: @ 812A31C
push {lr}
bl ContestAICmd_unk_59
- ldr r0, _0812A348 @ =0x020192e4
+ ldr r0, _0812A348 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
cmp r0, 0
@@ -3667,7 +3667,7 @@ ContestAICmd_unk_5C: @ 812A31C
str r1, [r3]
b _0812A358
.align 2, 0
-_0812A348: .4byte 0x020192e4
+_0812A348: .4byte gSharedMem + 0x192E4
_0812A34C: .4byte gAIScriptPtr
_0812A350:
ldr r1, _0812A35C @ =gAIScriptPtr
@@ -3685,7 +3685,7 @@ _0812A35C: .4byte gAIScriptPtr
ContestAICmd_unk_5D: @ 812A360
push {lr}
bl ContestAICmd_unk_59
- ldr r0, _0812A38C @ =0x020192e4
+ ldr r0, _0812A38C @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
cmp r0, 0
@@ -3705,7 +3705,7 @@ ContestAICmd_unk_5D: @ 812A360
str r1, [r3]
b _0812A39C
.align 2, 0
-_0812A38C: .4byte 0x020192e4
+_0812A38C: .4byte gSharedMem + 0x192E4
_0812A390: .4byte gAIScriptPtr
_0812A394:
ldr r1, _0812A3A0 @ =gAIScriptPtr
@@ -3727,7 +3727,7 @@ ContestAICmd_unk_5E: @ 812A3A4
ldrb r0, [r0, 0x1]
bl sub_8128A7C
lsls r0, 24
- ldr r3, _0812A3DC @ =0x020192e4
+ ldr r3, _0812A3DC @ =gSharedMem + 0x192E4
ldr r2, _0812A3E0 @ =gUnknown_02038670
lsrs r0, 23
adds r0, r2
@@ -3748,7 +3748,7 @@ ContestAICmd_unk_5E: @ 812A3A4
bx r0
.align 2, 0
_0812A3D8: .4byte gAIScriptPtr
-_0812A3DC: .4byte 0x020192e4
+_0812A3DC: .4byte gSharedMem + 0x192E4
_0812A3E0: .4byte gUnknown_02038670
thumb_func_end ContestAICmd_unk_5E
@@ -3756,7 +3756,7 @@ _0812A3E0: .4byte gUnknown_02038670
ContestAICmd_unk_5F: @ 812A3E4
push {lr}
bl ContestAICmd_unk_5E
- ldr r0, _0812A410 @ =0x020192e4
+ ldr r0, _0812A410 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
cmp r0, 0
@@ -3776,7 +3776,7 @@ ContestAICmd_unk_5F: @ 812A3E4
str r1, [r3]
b _0812A420
.align 2, 0
-_0812A410: .4byte 0x020192e4
+_0812A410: .4byte gSharedMem + 0x192E4
_0812A414: .4byte gAIScriptPtr
_0812A418:
ldr r1, _0812A424 @ =gAIScriptPtr
@@ -3794,7 +3794,7 @@ _0812A424: .4byte gAIScriptPtr
ContestAICmd_unk_60: @ 812A428
push {lr}
bl ContestAICmd_unk_5E
- ldr r0, _0812A454 @ =0x020192e4
+ ldr r0, _0812A454 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
cmp r0, 0
@@ -3814,7 +3814,7 @@ ContestAICmd_unk_60: @ 812A428
str r1, [r3]
b _0812A464
.align 2, 0
-_0812A454: .4byte 0x020192e4
+_0812A454: .4byte gSharedMem + 0x192E4
_0812A458: .4byte gAIScriptPtr
_0812A45C:
ldr r1, _0812A468 @ =gAIScriptPtr
@@ -3832,7 +3832,7 @@ _0812A468: .4byte gAIScriptPtr
ContestAICmd_unk_61: @ 812A46C
push {lr}
bl ContestAICmd_unk_5E
- ldr r0, _0812A498 @ =0x020192e4
+ ldr r0, _0812A498 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
cmp r0, 0
@@ -3852,7 +3852,7 @@ ContestAICmd_unk_61: @ 812A46C
str r1, [r3]
b _0812A4A8
.align 2, 0
-_0812A498: .4byte 0x020192e4
+_0812A498: .4byte gSharedMem + 0x192E4
_0812A49C: .4byte gAIScriptPtr
_0812A4A0:
ldr r1, _0812A4AC @ =gAIScriptPtr
@@ -3870,7 +3870,7 @@ _0812A4AC: .4byte gAIScriptPtr
ContestAICmd_unk_62: @ 812A4B0
push {lr}
bl ContestAICmd_unk_5E
- ldr r0, _0812A4DC @ =0x020192e4
+ ldr r0, _0812A4DC @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
cmp r0, 0
@@ -3890,7 +3890,7 @@ ContestAICmd_unk_62: @ 812A4B0
str r1, [r3]
b _0812A4EC
.align 2, 0
-_0812A4DC: .4byte 0x020192e4
+_0812A4DC: .4byte gSharedMem + 0x192E4
_0812A4E0: .4byte gAIScriptPtr
_0812A4E4:
ldr r1, _0812A4F0 @ =gAIScriptPtr
@@ -3914,7 +3914,7 @@ ContestAICmd_unk_63: @ 812A4F4
lsls r0, 24
ldr r3, [r4]
ldrb r1, [r3, 0x2]
- ldr r2, _0812A530 @ =0x02019204
+ ldr r2, _0812A530 @ =gSharedMem + 0x19204
lsrs r0, 23
lsls r1, 3
adds r0, r1
@@ -3935,7 +3935,7 @@ ContestAICmd_unk_63: @ 812A4F4
bx r0
.align 2, 0
_0812A52C: .4byte gAIScriptPtr
-_0812A530: .4byte 0x02019204
+_0812A530: .4byte gSharedMem + 0x19204
_0812A534: .4byte gContestMoves
thumb_func_end ContestAICmd_unk_63
@@ -3943,7 +3943,7 @@ _0812A534: .4byte gContestMoves
ContestAICmd_unk_64: @ 812A538
push {lr}
bl ContestAICmd_unk_63
- ldr r0, _0812A568 @ =0x020192e4
+ ldr r0, _0812A568 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _0812A56C @ =gAIScriptPtr
@@ -3964,7 +3964,7 @@ ContestAICmd_unk_64: @ 812A538
str r1, [r3]
b _0812A574
.align 2, 0
-_0812A568: .4byte 0x020192e4
+_0812A568: .4byte gSharedMem + 0x192E4
_0812A56C: .4byte gAIScriptPtr
_0812A570:
adds r0, r2, 0x5
@@ -3978,7 +3978,7 @@ _0812A574:
ContestAICmd_unk_65: @ 812A578
push {lr}
bl ContestAICmd_unk_63
- ldr r0, _0812A5A8 @ =0x020192e4
+ ldr r0, _0812A5A8 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _0812A5AC @ =gAIScriptPtr
@@ -3999,7 +3999,7 @@ ContestAICmd_unk_65: @ 812A578
str r1, [r3]
b _0812A5B4
.align 2, 0
-_0812A5A8: .4byte 0x020192e4
+_0812A5A8: .4byte gSharedMem + 0x192E4
_0812A5AC: .4byte gAIScriptPtr
_0812A5B0:
adds r0, r2, 0x5
@@ -4013,7 +4013,7 @@ _0812A5B4:
ContestAICmd_unk_66: @ 812A5B8
push {lr}
bl ContestAICmd_unk_63
- ldr r0, _0812A5E8 @ =0x020192e4
+ ldr r0, _0812A5E8 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _0812A5EC @ =gAIScriptPtr
@@ -4034,7 +4034,7 @@ ContestAICmd_unk_66: @ 812A5B8
str r1, [r3]
b _0812A5F4
.align 2, 0
-_0812A5E8: .4byte 0x020192e4
+_0812A5E8: .4byte gSharedMem + 0x192E4
_0812A5EC: .4byte gAIScriptPtr
_0812A5F0:
adds r0, r2, 0x5
@@ -4048,7 +4048,7 @@ _0812A5F4:
ContestAICmd_unk_67: @ 812A5F8
push {lr}
bl ContestAICmd_unk_63
- ldr r0, _0812A628 @ =0x020192e4
+ ldr r0, _0812A628 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _0812A62C @ =gAIScriptPtr
@@ -4069,7 +4069,7 @@ ContestAICmd_unk_67: @ 812A5F8
str r1, [r3]
b _0812A634
.align 2, 0
-_0812A628: .4byte 0x020192e4
+_0812A628: .4byte gSharedMem + 0x192E4
_0812A62C: .4byte gAIScriptPtr
_0812A630:
adds r0, r2, 0x5
@@ -4090,7 +4090,7 @@ ContestAICmd_unk_68: @ 812A638
lsrs r0, 24
ldr r3, [r4]
ldrb r1, [r3, 0x2]
- ldr r2, _0812A670 @ =0x02019204
+ ldr r2, _0812A670 @ =gSharedMem + 0x19204
lsls r1, 2
adds r0, r1
adds r1, r2, 0
@@ -4108,14 +4108,14 @@ ContestAICmd_unk_68: @ 812A638
bx r0
.align 2, 0
_0812A66C: .4byte gAIScriptPtr
-_0812A670: .4byte 0x02019204
+_0812A670: .4byte gSharedMem + 0x19204
thumb_func_end ContestAICmd_unk_68
thumb_func_start ContestAICmd_unk_69
ContestAICmd_unk_69: @ 812A674
push {lr}
bl ContestAICmd_unk_68
- ldr r0, _0812A6A4 @ =0x020192e4
+ ldr r0, _0812A6A4 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _0812A6A8 @ =gAIScriptPtr
@@ -4136,7 +4136,7 @@ ContestAICmd_unk_69: @ 812A674
str r1, [r3]
b _0812A6B0
.align 2, 0
-_0812A6A4: .4byte 0x020192e4
+_0812A6A4: .4byte gSharedMem + 0x192E4
_0812A6A8: .4byte gAIScriptPtr
_0812A6AC:
adds r0, r2, 0x5
@@ -4150,7 +4150,7 @@ _0812A6B0:
ContestAICmd_unk_6A: @ 812A6B4
push {lr}
bl ContestAICmd_unk_68
- ldr r0, _0812A6E4 @ =0x020192e4
+ ldr r0, _0812A6E4 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _0812A6E8 @ =gAIScriptPtr
@@ -4171,7 +4171,7 @@ ContestAICmd_unk_6A: @ 812A6B4
str r1, [r3]
b _0812A6F0
.align 2, 0
-_0812A6E4: .4byte 0x020192e4
+_0812A6E4: .4byte gSharedMem + 0x192E4
_0812A6E8: .4byte gAIScriptPtr
_0812A6EC:
adds r0, r2, 0x5
@@ -4185,7 +4185,7 @@ _0812A6F0:
ContestAICmd_unk_6B: @ 812A6F4
push {lr}
bl ContestAICmd_unk_68
- ldr r0, _0812A724 @ =0x020192e4
+ ldr r0, _0812A724 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _0812A728 @ =gAIScriptPtr
@@ -4206,7 +4206,7 @@ ContestAICmd_unk_6B: @ 812A6F4
str r1, [r3]
b _0812A730
.align 2, 0
-_0812A724: .4byte 0x020192e4
+_0812A724: .4byte gSharedMem + 0x192E4
_0812A728: .4byte gAIScriptPtr
_0812A72C:
adds r0, r2, 0x5
@@ -4220,7 +4220,7 @@ _0812A730:
ContestAICmd_unk_6C: @ 812A734
push {lr}
bl ContestAICmd_unk_68
- ldr r0, _0812A764 @ =0x020192e4
+ ldr r0, _0812A764 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _0812A768 @ =gAIScriptPtr
@@ -4241,7 +4241,7 @@ ContestAICmd_unk_6C: @ 812A734
str r1, [r3]
b _0812A770
.align 2, 0
-_0812A764: .4byte 0x020192e4
+_0812A764: .4byte gSharedMem + 0x192E4
_0812A768: .4byte gAIScriptPtr
_0812A76C:
adds r0, r2, 0x5
@@ -4261,7 +4261,7 @@ ContestAICmd_unk_6D: @ 812A774
lsls r0, 24
ldr r3, [r5]
ldrb r1, [r3, 0x2]
- ldr r2, _0812A7B8 @ =0x02019204
+ ldr r2, _0812A7B8 @ =gSharedMem + 0x19204
lsrs r0, 23
lsls r1, 3
adds r0, r1
@@ -4286,7 +4286,7 @@ ContestAICmd_unk_6D: @ 812A774
bx r0
.align 2, 0
_0812A7B4: .4byte gAIScriptPtr
-_0812A7B8: .4byte 0x02019204
+_0812A7B8: .4byte gSharedMem + 0x19204
_0812A7BC: .4byte gContestEffects
_0812A7C0: .4byte gContestMoves
thumb_func_end ContestAICmd_unk_6D
@@ -4295,7 +4295,7 @@ _0812A7C0: .4byte gContestMoves
ContestAICmd_unk_6E: @ 812A7C4
push {lr}
bl ContestAICmd_unk_6D
- ldr r0, _0812A7F4 @ =0x020192e4
+ ldr r0, _0812A7F4 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _0812A7F8 @ =gAIScriptPtr
@@ -4316,7 +4316,7 @@ ContestAICmd_unk_6E: @ 812A7C4
str r1, [r3]
b _0812A800
.align 2, 0
-_0812A7F4: .4byte 0x020192e4
+_0812A7F4: .4byte gSharedMem + 0x192E4
_0812A7F8: .4byte gAIScriptPtr
_0812A7FC:
adds r0, r2, 0x5
@@ -4330,7 +4330,7 @@ _0812A800:
ContestAICmd_unk_6F: @ 812A804
push {lr}
bl ContestAICmd_unk_6D
- ldr r0, _0812A834 @ =0x020192e4
+ ldr r0, _0812A834 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
ldr r3, _0812A838 @ =gAIScriptPtr
@@ -4351,7 +4351,7 @@ ContestAICmd_unk_6F: @ 812A804
str r1, [r3]
b _0812A840
.align 2, 0
-_0812A834: .4byte 0x020192e4
+_0812A834: .4byte gSharedMem + 0x192E4
_0812A838: .4byte gAIScriptPtr
_0812A83C:
adds r0, r2, 0x5
@@ -4364,7 +4364,7 @@ _0812A840:
thumb_func_start ContestAICmd_unk_70
ContestAICmd_unk_70: @ 812A844
push {r4,lr}
- ldr r3, _0812A864 @ =0x020192e4
+ ldr r3, _0812A864 @ =gSharedMem + 0x192E4
ldr r4, _0812A868 @ =gAIScriptPtr
ldr r2, [r4]
ldrb r0, [r2, 0x1]
@@ -4380,14 +4380,14 @@ ContestAICmd_unk_70: @ 812A844
pop {r0}
bx r0
.align 2, 0
-_0812A864: .4byte 0x020192e4
+_0812A864: .4byte gSharedMem + 0x192E4
_0812A868: .4byte gAIScriptPtr
thumb_func_end ContestAICmd_unk_70
thumb_func_start ContestAICmd_unk_71
ContestAICmd_unk_71: @ 812A86C
push {r4,lr}
- ldr r0, _0812A890 @ =0x020192e4
+ ldr r0, _0812A890 @ =gSharedMem + 0x192E4
ldr r4, _0812A894 @ =gAIScriptPtr
ldr r3, [r4]
ldrb r2, [r3, 0x1]
@@ -4405,14 +4405,14 @@ ContestAICmd_unk_71: @ 812A86C
pop {r0}
bx r0
.align 2, 0
-_0812A890: .4byte 0x020192e4
+_0812A890: .4byte gSharedMem + 0x192E4
_0812A894: .4byte gAIScriptPtr
thumb_func_end ContestAICmd_unk_71
thumb_func_start ContestAICmd_unk_72
ContestAICmd_unk_72: @ 812A898
push {r4,lr}
- ldr r0, _0812A8C4 @ =0x020192e4
+ ldr r0, _0812A8C4 @ =gSharedMem + 0x192E4
ldr r4, _0812A8C8 @ =gAIScriptPtr
ldr r3, [r4]
ldrb r2, [r3, 0x1]
@@ -4433,14 +4433,14 @@ ContestAICmd_unk_72: @ 812A898
pop {r0}
bx r0
.align 2, 0
-_0812A8C4: .4byte 0x020192e4
+_0812A8C4: .4byte gSharedMem + 0x192E4
_0812A8C8: .4byte gAIScriptPtr
thumb_func_end ContestAICmd_unk_72
thumb_func_start ContestAICmd_unk_73
ContestAICmd_unk_73: @ 812A8CC
push {r4,lr}
- ldr r2, _0812A8F4 @ =0x020192e4
+ ldr r2, _0812A8F4 @ =gSharedMem + 0x192E4
ldr r4, _0812A8F8 @ =gAIScriptPtr
ldr r3, [r4]
ldrb r1, [r3, 0x1]
@@ -4460,14 +4460,14 @@ ContestAICmd_unk_73: @ 812A8CC
pop {r0}
bx r0
.align 2, 0
-_0812A8F4: .4byte 0x020192e4
+_0812A8F4: .4byte gSharedMem + 0x192E4
_0812A8F8: .4byte gAIScriptPtr
thumb_func_end ContestAICmd_unk_73
thumb_func_start ContestAICmd_unk_74
ContestAICmd_unk_74: @ 812A8FC
push {r4,lr}
- ldr r2, _0812A924 @ =0x020192e4
+ ldr r2, _0812A924 @ =gSharedMem + 0x192E4
ldr r4, _0812A928 @ =gAIScriptPtr
ldr r3, [r4]
ldrb r1, [r3, 0x1]
@@ -4487,14 +4487,14 @@ ContestAICmd_unk_74: @ 812A8FC
pop {r0}
bx r0
.align 2, 0
-_0812A924: .4byte 0x020192e4
+_0812A924: .4byte gSharedMem + 0x192E4
_0812A928: .4byte gAIScriptPtr
thumb_func_end ContestAICmd_unk_74
thumb_func_start ContestAICmd_unk_75
ContestAICmd_unk_75: @ 812A92C
push {r4,lr}
- ldr r1, _0812A964 @ =0x020192e4
+ ldr r1, _0812A964 @ =gSharedMem + 0x192E4
ldr r4, _0812A968 @ =gAIScriptPtr
ldr r3, [r4]
ldrb r0, [r3, 0x1]
@@ -4522,7 +4522,7 @@ ContestAICmd_unk_75: @ 812A92C
str r1, [r4]
b _0812A972
.align 2, 0
-_0812A964: .4byte 0x020192e4
+_0812A964: .4byte gSharedMem + 0x192E4
_0812A968: .4byte gAIScriptPtr
_0812A96C:
adds r0, r3, 0
@@ -4537,7 +4537,7 @@ _0812A972:
thumb_func_start ContestAICmd_unk_76
ContestAICmd_unk_76: @ 812A978
push {r4,lr}
- ldr r1, _0812A9B0 @ =0x020192e4
+ ldr r1, _0812A9B0 @ =gSharedMem + 0x192E4
ldr r4, _0812A9B4 @ =gAIScriptPtr
ldr r3, [r4]
ldrb r0, [r3, 0x1]
@@ -4565,7 +4565,7 @@ ContestAICmd_unk_76: @ 812A978
str r1, [r4]
b _0812A9BE
.align 2, 0
-_0812A9B0: .4byte 0x020192e4
+_0812A9B0: .4byte gSharedMem + 0x192E4
_0812A9B4: .4byte gAIScriptPtr
_0812A9B8:
adds r0, r3, 0
@@ -4580,7 +4580,7 @@ _0812A9BE:
thumb_func_start ContestAICmd_unk_77
ContestAICmd_unk_77: @ 812A9C4
push {r4,lr}
- ldr r1, _0812A9FC @ =0x020192e4
+ ldr r1, _0812A9FC @ =gSharedMem + 0x192E4
ldr r4, _0812AA00 @ =gAIScriptPtr
ldr r3, [r4]
ldrb r0, [r3, 0x1]
@@ -4608,7 +4608,7 @@ ContestAICmd_unk_77: @ 812A9C4
str r1, [r4]
b _0812AA0A
.align 2, 0
-_0812A9FC: .4byte 0x020192e4
+_0812A9FC: .4byte gSharedMem + 0x192E4
_0812AA00: .4byte gAIScriptPtr
_0812AA04:
adds r0, r3, 0
@@ -4623,7 +4623,7 @@ _0812AA0A:
thumb_func_start ContestAICmd_unk_78
ContestAICmd_unk_78: @ 812AA10
push {r4,lr}
- ldr r1, _0812AA48 @ =0x020192e4
+ ldr r1, _0812AA48 @ =gSharedMem + 0x192E4
ldr r4, _0812AA4C @ =gAIScriptPtr
ldr r3, [r4]
ldrb r0, [r3, 0x1]
@@ -4651,7 +4651,7 @@ ContestAICmd_unk_78: @ 812AA10
str r1, [r4]
b _0812AA56
.align 2, 0
-_0812AA48: .4byte 0x020192e4
+_0812AA48: .4byte gSharedMem + 0x192E4
_0812AA4C: .4byte gAIScriptPtr
_0812AA50:
adds r0, r3, 0
@@ -4666,7 +4666,7 @@ _0812AA56:
thumb_func_start ContestAICmd_unk_79
ContestAICmd_unk_79: @ 812AA5C
push {r4,lr}
- ldr r2, _0812AA98 @ =0x020192e4
+ ldr r2, _0812AA98 @ =gSharedMem + 0x192E4
ldr r4, _0812AA9C @ =gAIScriptPtr
ldr r3, [r4]
ldrb r1, [r3, 0x1]
@@ -4695,7 +4695,7 @@ ContestAICmd_unk_79: @ 812AA5C
str r1, [r4]
b _0812AAA4
.align 2, 0
-_0812AA98: .4byte 0x020192e4
+_0812AA98: .4byte gSharedMem + 0x192E4
_0812AA9C: .4byte gAIScriptPtr
_0812AAA0:
adds r0, r3, 0x7
@@ -4709,7 +4709,7 @@ _0812AAA4:
thumb_func_start ContestAICmd_unk_7A
ContestAICmd_unk_7A: @ 812AAAC
push {r4,lr}
- ldr r2, _0812AAE8 @ =0x020192e4
+ ldr r2, _0812AAE8 @ =gSharedMem + 0x192E4
ldr r4, _0812AAEC @ =gAIScriptPtr
ldr r3, [r4]
ldrb r1, [r3, 0x1]
@@ -4738,7 +4738,7 @@ ContestAICmd_unk_7A: @ 812AAAC
str r1, [r4]
b _0812AAF4
.align 2, 0
-_0812AAE8: .4byte 0x020192e4
+_0812AAE8: .4byte gSharedMem + 0x192E4
_0812AAEC: .4byte gAIScriptPtr
_0812AAF0:
adds r0, r3, 0x7
@@ -4752,7 +4752,7 @@ _0812AAF4:
thumb_func_start ContestAICmd_unk_7B
ContestAICmd_unk_7B: @ 812AAFC
push {r4,lr}
- ldr r2, _0812AB38 @ =0x020192e4
+ ldr r2, _0812AB38 @ =gSharedMem + 0x192E4
ldr r4, _0812AB3C @ =gAIScriptPtr
ldr r3, [r4]
ldrb r1, [r3, 0x1]
@@ -4781,7 +4781,7 @@ ContestAICmd_unk_7B: @ 812AAFC
str r1, [r4]
b _0812AB44
.align 2, 0
-_0812AB38: .4byte 0x020192e4
+_0812AB38: .4byte gSharedMem + 0x192E4
_0812AB3C: .4byte gAIScriptPtr
_0812AB40:
adds r0, r3, 0x7
@@ -4795,7 +4795,7 @@ _0812AB44:
thumb_func_start ContestAICmd_unk_7C
ContestAICmd_unk_7C: @ 812AB4C
push {r4,lr}
- ldr r2, _0812AB88 @ =0x020192e4
+ ldr r2, _0812AB88 @ =gSharedMem + 0x192E4
ldr r4, _0812AB8C @ =gAIScriptPtr
ldr r3, [r4]
ldrb r1, [r3, 0x1]
@@ -4824,7 +4824,7 @@ ContestAICmd_unk_7C: @ 812AB4C
str r1, [r4]
b _0812AB94
.align 2, 0
-_0812AB88: .4byte 0x020192e4
+_0812AB88: .4byte gSharedMem + 0x192E4
_0812AB8C: .4byte gAIScriptPtr
_0812AB90:
adds r0, r3, 0x7
@@ -4841,7 +4841,7 @@ ContestAICmd_unk_7D: @ 812AB9C
bl Random
movs r2, 0xFF
ands r2, r0
- ldr r1, _0812ABD4 @ =0x020192e4
+ ldr r1, _0812ABD4 @ =gSharedMem + 0x192E4
ldr r4, _0812ABD8 @ =gAIScriptPtr
ldr r3, [r4]
ldrb r0, [r3, 0x1]
@@ -4865,7 +4865,7 @@ ContestAICmd_unk_7D: @ 812AB9C
str r1, [r4]
b _0812ABE0
.align 2, 0
-_0812ABD4: .4byte 0x020192e4
+_0812ABD4: .4byte gSharedMem + 0x192E4
_0812ABD8: .4byte gAIScriptPtr
_0812ABDC:
adds r0, r3, 0x6
@@ -4882,7 +4882,7 @@ ContestAICmd_unk_7E: @ 812ABE8
bl Random
movs r2, 0xFF
ands r2, r0
- ldr r1, _0812AC20 @ =0x020192e4
+ ldr r1, _0812AC20 @ =gSharedMem + 0x192E4
ldr r4, _0812AC24 @ =gAIScriptPtr
ldr r3, [r4]
ldrb r0, [r3, 0x1]
@@ -4906,7 +4906,7 @@ ContestAICmd_unk_7E: @ 812ABE8
str r1, [r4]
b _0812AC2C
.align 2, 0
-_0812AC20: .4byte 0x020192e4
+_0812AC20: .4byte gSharedMem + 0x192E4
_0812AC24: .4byte gAIScriptPtr
_0812AC28:
adds r0, r3, 0x6
@@ -4970,7 +4970,7 @@ ContestAICmd_unk_81: @ 812AC84
lsls r0, 24
cmp r0, 0
bne _0812AC9A
- ldr r2, _0812ACA0 @ =0x020192e4
+ ldr r2, _0812ACA0 @ =gSharedMem + 0x192E4
ldrb r1, [r2, 0x9]
movs r0, 0x1
orrs r0, r1
@@ -4979,13 +4979,13 @@ _0812AC9A:
pop {r0}
bx r0
.align 2, 0
-_0812ACA0: .4byte 0x020192e4
+_0812ACA0: .4byte gSharedMem + 0x192E4
thumb_func_end ContestAICmd_unk_81
thumb_func_start sub_812ACA4
sub_812ACA4: @ 812ACA4
push {r4,lr}
- ldr r3, _0812ACC4 @ =0x020192e4
+ ldr r3, _0812ACC4 @ =gSharedMem + 0x192E4
adds r4, r3, 0
adds r4, 0x40
ldrb r1, [r4]
@@ -5000,13 +5000,13 @@ sub_812ACA4: @ 812ACA4
pop {r0}
bx r0
.align 2, 0
-_0812ACC4: .4byte 0x020192e4
+_0812ACC4: .4byte gSharedMem + 0x192E4
thumb_func_end sub_812ACA4
thumb_func_start sub_812ACC8
sub_812ACC8: @ 812ACC8
push {lr}
- ldr r1, _0812ACDC @ =0x020192e4
+ ldr r1, _0812ACDC @ =gSharedMem + 0x192E4
adds r3, r1, 0
adds r3, 0x40
ldrb r0, [r3]
@@ -5015,7 +5015,7 @@ sub_812ACC8: @ 812ACC8
movs r0, 0
b _0812ACF4
.align 2, 0
-_0812ACDC: .4byte 0x020192e4
+_0812ACDC: .4byte gSharedMem + 0x192E4
_0812ACE0:
subs r0, 0x1
strb r0, [r3]
@@ -5039,7 +5039,7 @@ ContestAICmd_check_for_exciting_move: @ 812ACFC
push {r4-r7,lr}
movs r5, 0
movs r4, 0
- ldr r7, _0812AD28 @ =0x02019325
+ ldr r7, _0812AD28 @ =gSharedMem + 0x19325
ldr r6, _0812AD2C @ =gUnknown_0203858E
_0812AD06:
lsls r0, r4, 1
@@ -5058,14 +5058,14 @@ _0812AD06:
movs r5, 0x1
b _0812AD36
.align 2, 0
-_0812AD28: .4byte 0x02019325
+_0812AD28: .4byte gSharedMem + 0x19325
_0812AD2C: .4byte gUnknown_0203858E
_0812AD30:
adds r4, 0x1
cmp r4, 0x3
ble _0812AD06
_0812AD36:
- ldr r0, _0812AD48 @ =0x020192e4
+ ldr r0, _0812AD48 @ =gSharedMem + 0x192E4
strh r5, [r0, 0x18]
ldr r1, _0812AD4C @ =gAIScriptPtr
ldr r0, [r1]
@@ -5075,7 +5075,7 @@ _0812AD36:
pop {r0}
bx r0
.align 2, 0
-_0812AD48: .4byte 0x020192e4
+_0812AD48: .4byte gSharedMem + 0x192E4
_0812AD4C: .4byte gAIScriptPtr
thumb_func_end ContestAICmd_check_for_exciting_move
@@ -5083,7 +5083,7 @@ _0812AD4C: .4byte gAIScriptPtr
ContestAICmd_unk_83: @ 812AD50
push {lr}
bl ContestAICmd_check_for_exciting_move
- ldr r0, _0812AD7C @ =0x020192e4
+ ldr r0, _0812AD7C @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
cmp r0, 0
@@ -5103,7 +5103,7 @@ ContestAICmd_unk_83: @ 812AD50
str r1, [r3]
b _0812AD8C
.align 2, 0
-_0812AD7C: .4byte 0x020192e4
+_0812AD7C: .4byte gSharedMem + 0x192E4
_0812AD80: .4byte gAIScriptPtr
_0812AD84:
ldr r1, _0812AD90 @ =gAIScriptPtr
@@ -5121,7 +5121,7 @@ _0812AD90: .4byte gAIScriptPtr
ContestAICmd_unk_84: @ 812AD94
push {lr}
bl ContestAICmd_check_for_exciting_move
- ldr r0, _0812ADC0 @ =0x020192e4
+ ldr r0, _0812ADC0 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
cmp r0, 0
@@ -5141,7 +5141,7 @@ ContestAICmd_unk_84: @ 812AD94
str r1, [r3]
b _0812ADD0
.align 2, 0
-_0812ADC0: .4byte 0x020192e4
+_0812ADC0: .4byte gSharedMem + 0x192E4
_0812ADC4: .4byte gAIScriptPtr
_0812ADC8:
ldr r1, _0812ADD4 @ =gAIScriptPtr
@@ -5168,7 +5168,7 @@ ContestAICmd_unk_85: @ 812ADD8
movs r3, 0
ldr r0, _0812AE0C @ =gContestMons
mov r12, r0
- ldr r5, _0812AE10 @ =0x020192e4
+ ldr r5, _0812AE10 @ =gSharedMem + 0x192E4
adds r0, r5, 0
adds r0, 0x41
ldrb r0, [r0]
@@ -5184,7 +5184,7 @@ ContestAICmd_unk_85: @ 812ADD8
.align 2, 0
_0812AE08: .4byte gAIScriptPtr
_0812AE0C: .4byte gContestMons
-_0812AE10: .4byte 0x020192e4
+_0812AE10: .4byte gSharedMem + 0x192E4
_0812AE14:
adds r3, 0x1
cmp r3, 0x3
@@ -5218,7 +5218,7 @@ _0812AE34:
ContestAICmd_unk_86: @ 812AE44
push {lr}
bl ContestAICmd_unk_85
- ldr r0, _0812AE70 @ =0x020192e4
+ ldr r0, _0812AE70 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
cmp r0, 0
@@ -5238,7 +5238,7 @@ ContestAICmd_unk_86: @ 812AE44
str r1, [r3]
b _0812AE80
.align 2, 0
-_0812AE70: .4byte 0x020192e4
+_0812AE70: .4byte gSharedMem + 0x192E4
_0812AE74: .4byte gAIScriptPtr
_0812AE78:
ldr r1, _0812AE84 @ =gAIScriptPtr
@@ -5256,7 +5256,7 @@ _0812AE84: .4byte gAIScriptPtr
ContestAICmd_unk_87: @ 812AE88
push {lr}
bl ContestAICmd_unk_85
- ldr r0, _0812AEB4 @ =0x020192e4
+ ldr r0, _0812AEB4 @ =gSharedMem + 0x192E4
movs r1, 0x18
ldrsh r0, [r0, r1]
cmp r0, 0
@@ -5276,7 +5276,7 @@ ContestAICmd_unk_87: @ 812AE88
str r1, [r3]
b _0812AEC4
.align 2, 0
-_0812AEB4: .4byte 0x020192e4
+_0812AEB4: .4byte gSharedMem + 0x192E4
_0812AEB8: .4byte gAIScriptPtr
_0812AEBC:
ldr r1, _0812AEC8 @ =gAIScriptPtr
diff --git a/asm/contest_effect.s b/asm/contest_effect.s
index 4ae5c7e41..63cae8c82 100644
--- a/asm/contest_effect.s
+++ b/asm/contest_effect.s
@@ -70,7 +70,7 @@ ContestEffect_00: @ 80B7D8C
thumb_func_start ContestEffect_01
ContestEffect_01: @ 80B7D90
push {lr}
- ldr r3, _080B7DB8 @ =0x020192d0
+ ldr r3, _080B7DB8 @ =gSharedMem + 0x192D0
ldrb r1, [r3, 0x11]
lsls r0, r1, 3
subs r0, r1
@@ -88,13 +88,13 @@ ContestEffect_01: @ 80B7D90
pop {r0}
bx r0
.align 2, 0
-_080B7DB8: .4byte 0x020192d0
+_080B7DB8: .4byte gSharedMem + 0x192D0
thumb_func_end ContestEffect_01
thumb_func_start ContestEffect_02
ContestEffect_02: @ 80B7DBC
push {lr}
- ldr r3, _080B7DE4 @ =0x020192d0
+ ldr r3, _080B7DE4 @ =gSharedMem + 0x192D0
ldrb r1, [r3, 0x11]
lsls r0, r1, 3
subs r0, r1
@@ -112,13 +112,13 @@ ContestEffect_02: @ 80B7DBC
pop {r0}
bx r0
.align 2, 0
-_080B7DE4: .4byte 0x020192d0
+_080B7DE4: .4byte gSharedMem + 0x192D0
thumb_func_end ContestEffect_02
thumb_func_start ContestEffect_03
ContestEffect_03: @ 80B7DE8
push {r4,lr}
- ldr r3, _080B7E30 @ =0x020192d0
+ ldr r3, _080B7E30 @ =gSharedMem + 0x192D0
ldrb r1, [r3, 0x11]
lsls r0, r1, 3
subs r0, r1
@@ -154,13 +154,13 @@ ContestEffect_03: @ 80B7DE8
pop {r0}
bx r0
.align 2, 0
-_080B7E30: .4byte 0x020192d0
+_080B7E30: .4byte gSharedMem + 0x192D0
thumb_func_end ContestEffect_03
thumb_func_start ContestEffect_04
ContestEffect_04: @ 80B7E34
push {lr}
- ldr r2, _080B7E58 @ =0x020192d0
+ ldr r2, _080B7E58 @ =gSharedMem + 0x192D0
ldrb r1, [r2, 0x11]
lsls r0, r1, 3
subs r0, r1
@@ -176,13 +176,13 @@ ContestEffect_04: @ 80B7E34
pop {r0}
bx r0
.align 2, 0
-_080B7E58: .4byte 0x020192d0
+_080B7E58: .4byte gSharedMem + 0x192D0
thumb_func_end ContestEffect_04
thumb_func_start ContestEffect_05
ContestEffect_05: @ 80B7E5C
push {lr}
- ldr r3, _080B7E84 @ =0x020192d0
+ ldr r3, _080B7E84 @ =gSharedMem + 0x192D0
ldrb r1, [r3, 0x11]
lsls r0, r1, 3
subs r0, r1
@@ -200,13 +200,13 @@ ContestEffect_05: @ 80B7E5C
pop {r0}
bx r0
.align 2, 0
-_080B7E84: .4byte 0x020192d0
+_080B7E84: .4byte gSharedMem + 0x192D0
thumb_func_end ContestEffect_05
thumb_func_start ContestEffect_06
ContestEffect_06: @ 80B7E88
push {lr}
- ldr r2, _080B7EAC @ =0x020192d0
+ ldr r2, _080B7EAC @ =gSharedMem + 0x192D0
ldrb r1, [r2, 0x11]
lsls r0, r1, 3
subs r0, r1
@@ -222,13 +222,13 @@ ContestEffect_06: @ 80B7E88
pop {r0}
bx r0
.align 2, 0
-_080B7EAC: .4byte 0x020192d0
+_080B7EAC: .4byte gSharedMem + 0x192D0
thumb_func_end ContestEffect_06
thumb_func_start ContestEffect_07
ContestEffect_07: @ 80B7EB0
push {lr}
- ldr r3, _080B7ED8 @ =0x020192d0
+ ldr r3, _080B7ED8 @ =gSharedMem + 0x192D0
ldrb r1, [r3, 0x11]
lsls r0, r1, 3
subs r0, r1
@@ -246,14 +246,14 @@ ContestEffect_07: @ 80B7EB0
pop {r0}
bx r0
.align 2, 0
-_080B7ED8: .4byte 0x020192d0
+_080B7ED8: .4byte gSharedMem + 0x192D0
thumb_func_end ContestEffect_07
thumb_func_start ContestEffect_08
ContestEffect_08: @ 80B7EDC
push {r4,lr}
movs r2, 0
- ldr r3, _080B7F38 @ =0x020192d0
+ ldr r3, _080B7F38 @ =gSharedMem + 0x192D0
ldrb r0, [r3, 0x11]
adds r1, r0, r3
ldrb r0, [r1]
@@ -276,7 +276,7 @@ _080B7EF8:
cmp r0, r1
bne _080B7EF8
_080B7F0A:
- ldr r1, _080B7F38 @ =0x020192d0
+ ldr r1, _080B7F38 @ =gSharedMem + 0x192D0
strb r2, [r1, 0x8]
movs r0, 0xFF
strb r0, [r1, 0x9]
@@ -286,12 +286,12 @@ _080B7F0A:
_080B7F1A:
cmp r2, 0
bne _080B7F28
- ldr r0, _080B7F38 @ =0x020192d0
+ ldr r0, _080B7F38 @ =gSharedMem + 0x192D0
ldrb r0, [r0, 0x11]
movs r1, 0x36
bl sub_80B1404
_080B7F28:
- ldr r0, _080B7F38 @ =0x020192d0
+ ldr r0, _080B7F38 @ =gSharedMem + 0x192D0
ldrb r0, [r0, 0x11]
movs r1, 0x30
bl sub_80B13EC
@@ -299,14 +299,14 @@ _080B7F28:
pop {r0}
bx r0
.align 2, 0
-_080B7F38: .4byte 0x020192d0
+_080B7F38: .4byte gSharedMem + 0x192D0
thumb_func_end ContestEffect_08
thumb_func_start ContestEffect_09
ContestEffect_09: @ 80B7F3C
push {r4-r6,lr}
movs r2, 0
- ldr r1, _080B7F9C @ =0x020192d0
+ ldr r1, _080B7F9C @ =gSharedMem + 0x192D0
ldrb r0, [r1, 0x11]
adds r4, r0, r1
ldrb r0, [r4]
@@ -329,7 +329,7 @@ _080B7F64:
adds r2, 0x1
cmp r2, 0x3
ble _080B7F54
- ldr r0, _080B7F9C @ =0x020192d0
+ ldr r0, _080B7F9C @ =gSharedMem + 0x192D0
adds r0, 0x8
adds r0, r3, r0
movs r1, 0xFF
@@ -340,12 +340,12 @@ _080B7F64:
_080B7F7C:
cmp r2, 0
bne _080B7F8A
- ldr r0, _080B7F9C @ =0x020192d0
+ ldr r0, _080B7F9C @ =gSharedMem + 0x192D0
ldrb r0, [r0, 0x11]
movs r1, 0x36
bl sub_80B1404
_080B7F8A:
- ldr r0, _080B7F9C @ =0x020192d0
+ ldr r0, _080B7F9C @ =gSharedMem + 0x192D0
ldrb r0, [r0, 0x11]
movs r1, 0x30
bl sub_80B13EC
@@ -353,7 +353,7 @@ _080B7F8A:
pop {r0}
bx r0
.align 2, 0
-_080B7F9C: .4byte 0x020192d0
+_080B7F9C: .4byte gSharedMem + 0x192D0
thumb_func_end ContestEffect_09
thumb_func_start ContestEffect_14
@@ -374,13 +374,13 @@ ContestEffect_14: @ 80B7FA0
bhi _080B7FC2
movs r1, 0x28
_080B7FC2:
- ldr r0, _080B7FD0 @ =0x020192d0
+ ldr r0, _080B7FD0 @ =gSharedMem + 0x192D0
strh r1, [r0, 0x4]
bl ContestEffect_08
pop {r0}
bx r0
.align 2, 0
-_080B7FD0: .4byte 0x020192d0
+_080B7FD0: .4byte gSharedMem + 0x192D0
thumb_func_end ContestEffect_14
thumb_func_start ContestEffect_15
@@ -389,7 +389,7 @@ ContestEffect_15: @ 80B7FD4
mov r7, r8
push {r7}
movs r7, 0
- ldr r0, _080B806C @ =0x020192d0
+ ldr r0, _080B806C @ =gSharedMem + 0x192D0
ldrb r6, [r0, 0x11]
adds r1, r6, r0
ldrb r1, [r1]
@@ -462,7 +462,7 @@ _080B8062:
pop {r0}
bx r0
.align 2, 0
-_080B806C: .4byte 0x020192d0
+_080B806C: .4byte gSharedMem + 0x192D0
thumb_func_end ContestEffect_15
thumb_func_start ContestEffect_16
@@ -474,7 +474,7 @@ ContestEffect_16: @ 80B8070
push {r5-r7}
movs r0, 0
mov r9, r0
- ldr r0, _080B8108 @ =0x020192d0
+ ldr r0, _080B8108 @ =gSharedMem + 0x192D0
ldrb r7, [r0, 0x11]
adds r1, r7, r0
ldrb r1, [r1]
@@ -544,7 +544,7 @@ _080B80FA:
pop {r0}
bx r0
.align 2, 0
-_080B8108: .4byte 0x020192d0
+_080B8108: .4byte gSharedMem + 0x192D0
thumb_func_end ContestEffect_16
thumb_func_start ContestEffect_17
@@ -555,7 +555,7 @@ ContestEffect_17: @ 80B810C
push {r6,r7}
movs r0, 0
mov r9, r0
- ldr r0, _080B8150 @ =0x020192d0
+ ldr r0, _080B8150 @ =gSharedMem + 0x192D0
ldrb r1, [r0, 0x11]
mov r8, r1
adds r1, r0
@@ -585,7 +585,7 @@ _080B812E:
movs r0, 0x32
b _080B8156
.align 2, 0
-_080B8150: .4byte 0x020192d0
+_080B8150: .4byte gSharedMem + 0x192D0
_080B8154:
movs r0, 0xA
_080B8156:
@@ -605,7 +605,7 @@ _080B8156:
_080B8172:
adds r7, 0x1C
adds r5, 0x1
- ldr r6, _080B81A0 @ =0x020192d0
+ ldr r6, _080B81A0 @ =gSharedMem + 0x192D0
cmp r5, 0x3
ble _080B812E
_080B817C:
@@ -626,13 +626,13 @@ _080B8192:
pop {r0}
bx r0
.align 2, 0
-_080B81A0: .4byte 0x020192d0
+_080B81A0: .4byte gSharedMem + 0x192D0
thumb_func_end ContestEffect_17
thumb_func_start ContestEffect_18
ContestEffect_18: @ 80B81A4
push {r4,lr}
- ldr r4, _080B81D0 @ =0x020192d0
+ ldr r4, _080B81D0 @ =gSharedMem + 0x192D0
ldrb r1, [r4, 0x11]
lsls r0, r1, 3
subs r0, r1
@@ -652,13 +652,13 @@ ContestEffect_18: @ 80B81A4
pop {r0}
bx r0
.align 2, 0
-_080B81D0: .4byte 0x020192d0
+_080B81D0: .4byte gSharedMem + 0x192D0
thumb_func_end ContestEffect_18
thumb_func_start ContestEffect_19
ContestEffect_19: @ 80B81D4
push {r4,lr}
- ldr r4, _080B8208 @ =0x020192d0
+ ldr r4, _080B8208 @ =gSharedMem + 0x192D0
ldrb r1, [r4, 0x11]
lsls r0, r1, 3
subs r0, r1
@@ -681,7 +681,7 @@ ContestEffect_19: @ 80B81D4
pop {r0}
bx r0
.align 2, 0
-_080B8208: .4byte 0x020192d0
+_080B8208: .4byte gSharedMem + 0x192D0
_080B820C: .4byte gContestMoves
thumb_func_end ContestEffect_19
@@ -690,14 +690,14 @@ ContestEffect_20: @ 80B8210
push {lr}
movs r0, 0
bl sub_80B9038
- ldr r0, _080B8228 @ =0x020192d0
+ ldr r0, _080B8228 @ =gSharedMem + 0x192D0
ldrb r0, [r0, 0x11]
movs r1, 0x30
bl sub_80B13EC
pop {r0}
bx r0
.align 2, 0
-_080B8228: .4byte 0x020192d0
+_080B8228: .4byte gSharedMem + 0x192D0
thumb_func_end ContestEffect_20
thumb_func_start ContestEffect_21
@@ -705,14 +705,14 @@ ContestEffect_21: @ 80B822C
push {lr}
movs r0, 0x1
bl sub_80B9038
- ldr r0, _080B8244 @ =0x020192d0
+ ldr r0, _080B8244 @ =gSharedMem + 0x192D0
ldrb r0, [r0, 0x11]
movs r1, 0x30
bl sub_80B13EC
pop {r0}
bx r0
.align 2, 0
-_080B8244: .4byte 0x020192d0
+_080B8244: .4byte gSharedMem + 0x192D0
thumb_func_end ContestEffect_21
thumb_func_start ContestEffect_22
@@ -720,14 +720,14 @@ ContestEffect_22: @ 80B8248
push {lr}
movs r0, 0x2
bl sub_80B9038
- ldr r0, _080B8260 @ =0x020192d0
+ ldr r0, _080B8260 @ =gSharedMem + 0x192D0
ldrb r0, [r0, 0x11]
movs r1, 0x30
bl sub_80B13EC
pop {r0}
bx r0
.align 2, 0
-_080B8260: .4byte 0x020192d0
+_080B8260: .4byte gSharedMem + 0x192D0
thumb_func_end ContestEffect_22
thumb_func_start ContestEffect_23
@@ -735,14 +735,14 @@ ContestEffect_23: @ 80B8264
push {lr}
movs r0, 0x3
bl sub_80B9038
- ldr r0, _080B827C @ =0x020192d0
+ ldr r0, _080B827C @ =gSharedMem + 0x192D0
ldrb r0, [r0, 0x11]
movs r1, 0x30
bl sub_80B13EC
pop {r0}
bx r0
.align 2, 0
-_080B827C: .4byte 0x020192d0
+_080B827C: .4byte gSharedMem + 0x192D0
thumb_func_end ContestEffect_23
thumb_func_start ContestEffect_24
@@ -750,21 +750,21 @@ ContestEffect_24: @ 80B8280
push {lr}
movs r0, 0x4
bl sub_80B9038
- ldr r0, _080B8298 @ =0x020192d0
+ ldr r0, _080B8298 @ =gSharedMem + 0x192D0
ldrb r0, [r0, 0x11]
movs r1, 0x30
bl sub_80B13EC
pop {r0}
bx r0
.align 2, 0
-_080B8298: .4byte 0x020192d0
+_080B8298: .4byte gSharedMem + 0x192D0
thumb_func_end ContestEffect_24
thumb_func_start ContestEffect_25
ContestEffect_25: @ 80B829C
push {r4-r7,lr}
movs r4, 0
- ldr r0, _080B82E0 @ =0x020192d0
+ ldr r0, _080B82E0 @ =gSharedMem + 0x192D0
ldrb r1, [r0, 0x11]
adds r1, r0
ldrb r1, [r1]
@@ -795,7 +795,7 @@ _080B82B2:
movs r1, 0xA
b _080B82E8
.align 2, 0
-_080B82E0: .4byte 0x020192d0
+_080B82E0: .4byte gSharedMem + 0x192D0
_080B82E4:
adds r0, r4, 0
movs r1, 0x3C
@@ -843,7 +843,7 @@ ContestEffect_26: @ 80B8310
mov r8, r2
add r3, sp, 0x8
mov r10, r3
- ldr r5, _080B8384 @ =0x020192d0
+ ldr r5, _080B8384 @ =gSharedMem + 0x192D0
adds r7, r5, 0
subs r7, 0x70
_080B8340:
@@ -881,7 +881,7 @@ _080B836E:
strh r0, [r2]
b _080B83B6
.align 2, 0
-_080B8384: .4byte 0x020192d0
+_080B8384: .4byte gSharedMem + 0x192D0
_080B8388:
cmp r4, 0x2
bne _080B8396
@@ -914,7 +914,7 @@ _080B83B6:
movs r7, 0
mov r4, r10
_080B83BC:
- ldr r0, _080B83F0 @ =0x02019260
+ ldr r0, _080B83F0 @ =gSharedMem + 0x19260
adds r5, r7, r0
ldrb r1, [r5, 0x15]
movs r0, 0x10
@@ -940,14 +940,14 @@ _080B83BC:
lsls r0, 1
b _080B83FE
.align 2, 0
-_080B83F0: .4byte 0x02019260
+_080B83F0: .4byte gSharedMem + 0x19260
_080B83F4: .4byte gContestMoves
_080B83F8: .4byte gComboStarterLookupTable
_080B83FC:
movs r0, 0
_080B83FE:
strh r0, [r4]
- ldr r5, _080B8494 @ =0x02019260
+ ldr r5, _080B8494 @ =gSharedMem + 0x19260
adds r0, r7, r5
ldrb r0, [r0, 0xD]
lsls r0, 24
@@ -1016,7 +1016,7 @@ _080B8442:
mov r9, r0
b _080B849C
.align 2, 0
-_080B8494: .4byte 0x02019260
+_080B8494: .4byte gSharedMem + 0x19260
_080B8498:
movs r0, 0x1
str r0, [sp, 0x18]
@@ -1046,7 +1046,7 @@ _080B84B8:
cmp r0, 0xFF
bne _080B8442
_080B84CA:
- ldr r4, _080B84F4 @ =0x020192d0
+ ldr r4, _080B84F4 @ =gSharedMem + 0x192D0
ldrb r0, [r4, 0x11]
movs r1, 0xB
bl sub_80B13EC
@@ -1066,7 +1066,7 @@ _080B84E2:
pop {r0}
bx r0
.align 2, 0
-_080B84F4: .4byte 0x020192d0
+_080B84F4: .4byte gSharedMem + 0x192D0
thumb_func_end ContestEffect_26
thumb_func_start ContestEffect_27
@@ -1077,7 +1077,7 @@ ContestEffect_27: @ 80B84F8
movs r0, 0
mov r8, r0
movs r6, 0
- ldr r7, _080B8580 @ =0x020192d0
+ ldr r7, _080B8580 @ =gSharedMem + 0x192D0
adds r5, r7, 0
subs r5, 0x63
_080B850A:
@@ -1122,7 +1122,7 @@ _080B8556:
adds r6, 0x1
cmp r6, 0x3
ble _080B850A
- ldr r4, _080B8580 @ =0x020192d0
+ ldr r4, _080B8580 @ =gSharedMem + 0x192D0
ldrb r0, [r4, 0x11]
movs r1, 0xC
bl sub_80B13EC
@@ -1139,7 +1139,7 @@ _080B8576:
pop {r0}
bx r0
.align 2, 0
-_080B8580: .4byte 0x020192d0
+_080B8580: .4byte gSharedMem + 0x192D0
thumb_func_end ContestEffect_27
thumb_func_start ContestEffect_28
@@ -1147,7 +1147,7 @@ ContestEffect_28: @ 80B8584
push {r4-r7,lr}
movs r7, 0
movs r5, 0
- ldr r4, _080B85B0 @ =0x020192d0
+ ldr r4, _080B85B0 @ =gSharedMem + 0x192D0
movs r6, 0
_080B858E:
ldrb r0, [r4, 0x11]
@@ -1168,7 +1168,7 @@ _080B858E:
movs r0, 0x28
b _080B85B6
.align 2, 0
-_080B85B0: .4byte 0x020192d0
+_080B85B0: .4byte gSharedMem + 0x192D0
_080B85B4:
movs r0, 0xA
_080B85B6:
@@ -1188,7 +1188,7 @@ _080B85CE:
adds r5, 0x1
cmp r5, 0x3
ble _080B858E
- ldr r4, _080B85F4 @ =0x020192d0
+ ldr r4, _080B85F4 @ =gSharedMem + 0x192D0
ldrb r0, [r4, 0x11]
movs r1, 0xE
bl sub_80B13EC
@@ -1202,14 +1202,14 @@ _080B85EC:
pop {r0}
bx r0
.align 2, 0
-_080B85F4: .4byte 0x020192d0
+_080B85F4: .4byte gSharedMem + 0x192D0
thumb_func_end ContestEffect_28
thumb_func_start ContestEffect_29
ContestEffect_29: @ 80B85F8
push {r4,lr}
ldr r0, _080B863C @ =gUnknown_02038696
- ldr r4, _080B8640 @ =0x020192d0
+ ldr r4, _080B8640 @ =gSharedMem + 0x192D0
ldrb r2, [r4, 0x11]
adds r0, r2, r0
ldrb r0, [r0]
@@ -1243,7 +1243,7 @@ _080B8636:
bx r0
.align 2, 0
_080B863C: .4byte gUnknown_02038696
-_080B8640: .4byte 0x020192d0
+_080B8640: .4byte gSharedMem + 0x192D0
_080B8644: .4byte gContestEffects
_080B8648: .4byte gContestMoves
thumb_func_end ContestEffect_29
@@ -1252,7 +1252,7 @@ _080B8648: .4byte gContestMoves
ContestEffect_30: @ 80B864C
push {r4,lr}
ldr r0, _080B8690 @ =gUnknown_02038696
- ldr r4, _080B8694 @ =0x020192d0
+ ldr r4, _080B8694 @ =gSharedMem + 0x192D0
ldrb r2, [r4, 0x11]
adds r0, r2, r0
ldrb r0, [r0]
@@ -1286,7 +1286,7 @@ _080B868A:
bx r0
.align 2, 0
_080B8690: .4byte gUnknown_02038696
-_080B8694: .4byte 0x020192d0
+_080B8694: .4byte gSharedMem + 0x192D0
_080B8698: .4byte gContestEffects
_080B869C: .4byte gContestMoves
thumb_func_end ContestEffect_30
@@ -1296,7 +1296,7 @@ ContestEffect_31: @ 80B86A0
push {r4-r7,lr}
movs r1, 0
movs r3, 0
- ldr r4, _080B86EC @ =0x020192d0
+ ldr r4, _080B86EC @ =gSharedMem + 0x192D0
ldrb r0, [r4, 0x11]
adds r0, r4
ldrb r5, [r0]
@@ -1321,7 +1321,7 @@ _080B86C4:
bge _080B86D2
movs r3, 0
_080B86D2:
- ldr r4, _080B86EC @ =0x020192d0
+ ldr r4, _080B86EC @ =gSharedMem + 0x192D0
ldrb r2, [r4, 0x11]
adds r0, r2, r4
ldrb r0, [r0]
@@ -1335,7 +1335,7 @@ _080B86E2:
bl sub_80B13EC
b _080B8710
.align 2, 0
-_080B86EC: .4byte 0x020192d0
+_080B86EC: .4byte gSharedMem + 0x192D0
_080B86F0:
lsls r1, r2, 3
subs r1, r2
@@ -1353,7 +1353,7 @@ _080B86F0:
movs r1, 0x11
bl sub_80B13EC
_080B8710:
- ldr r4, _080B873C @ =0x020192d0
+ ldr r4, _080B873C @ =gSharedMem + 0x192D0
ldrb r1, [r4, 0x11]
lsls r0, r1, 3
subs r0, r1
@@ -1374,14 +1374,14 @@ _080B8710:
pop {r0}
bx r0
.align 2, 0
-_080B873C: .4byte 0x020192d0
+_080B873C: .4byte gSharedMem + 0x192D0
thumb_func_end ContestEffect_31
thumb_func_start ContestEffect_32
ContestEffect_32: @ 80B8740
push {r4-r7,lr}
movs r6, 0
- ldr r0, _080B8794 @ =0x020192d0
+ ldr r0, _080B8794 @ =gSharedMem + 0x192D0
ldrb r1, [r0, 0x11]
adds r3, r1, r0
ldrb r1, [r3]
@@ -1423,7 +1423,7 @@ _080B8788:
bl sub_80B13EC
b _080B87B2
.align 2, 0
-_080B8794: .4byte 0x020192d0
+_080B8794: .4byte gSharedMem + 0x192D0
_080B8798:
lsls r1, r2, 3
subs r1, r2
@@ -1446,7 +1446,7 @@ _080B87B2:
thumb_func_start ContestEffect_33
ContestEffect_33: @ 80B87B8
push {lr}
- ldr r0, _080B87D8 @ =0x020192d0
+ ldr r0, _080B87D8 @ =gSharedMem + 0x192D0
ldrb r2, [r0, 0x11]
adds r1, r2, r0
ldrb r3, [r1]
@@ -1462,7 +1462,7 @@ ContestEffect_33: @ 80B87B8
movs r1, 0xA
b _080B87EE
.align 2, 0
-_080B87D8: .4byte 0x020192d0
+_080B87D8: .4byte gSharedMem + 0x192D0
_080B87DC:
lsls r0, r2, 3
subs r0, r2
@@ -1522,54 +1522,54 @@ ContestEffect_34: @ 80B8830
cmp r0, 0x2
bhi _080B885C
movs r4, 0xA
- ldr r0, _080B8858 @ =0x020192d0
+ ldr r0, _080B8858 @ =gSharedMem + 0x192D0
ldrb r0, [r0, 0x11]
movs r1, 0x1A
bl sub_80B13EC
b _080B88B0
.align 2, 0
-_080B8858: .4byte 0x020192d0
+_080B8858: .4byte gSharedMem + 0x192D0
_080B885C:
cmp r0, 0x5
bhi _080B8874
movs r4, 0x14
- ldr r0, _080B8870 @ =0x020192d0
+ ldr r0, _080B8870 @ =gSharedMem + 0x192D0
ldrb r0, [r0, 0x11]
movs r1, 0x1B
bl sub_80B13EC
b _080B88B0
.align 2, 0
-_080B8870: .4byte 0x020192d0
+_080B8870: .4byte gSharedMem + 0x192D0
_080B8874:
cmp r0, 0x7
bhi _080B888C
movs r4, 0x28
- ldr r0, _080B8888 @ =0x020192d0
+ ldr r0, _080B8888 @ =gSharedMem + 0x192D0
ldrb r0, [r0, 0x11]
movs r1, 0x1C
bl sub_80B13EC
b _080B88B0
.align 2, 0
-_080B8888: .4byte 0x020192d0
+_080B8888: .4byte gSharedMem + 0x192D0
_080B888C:
cmp r1, 0x8
bhi _080B88A4
movs r4, 0x3C
- ldr r0, _080B88A0 @ =0x020192d0
+ ldr r0, _080B88A0 @ =gSharedMem + 0x192D0
ldrb r0, [r0, 0x11]
movs r1, 0x1D
bl sub_80B13EC
b _080B88B0
.align 2, 0
-_080B88A0: .4byte 0x020192d0
+_080B88A0: .4byte gSharedMem + 0x192D0
_080B88A4:
movs r4, 0x50
- ldr r0, _080B88C8 @ =0x020192d0
+ ldr r0, _080B88C8 @ =gSharedMem + 0x192D0
ldrb r0, [r0, 0x11]
movs r1, 0x1E
bl sub_80B13EC
_080B88B0:
- ldr r0, _080B88C8 @ =0x020192d0
+ ldr r0, _080B88C8 @ =gSharedMem + 0x192D0
ldrb r2, [r0, 0x11]
lsls r1, r2, 3
subs r1, r2
@@ -1581,13 +1581,13 @@ _080B88B0:
pop {r0}
bx r0
.align 2, 0
-_080B88C8: .4byte 0x020192d0
+_080B88C8: .4byte gSharedMem + 0x192D0
thumb_func_end ContestEffect_34
thumb_func_start ContestEffect_35
ContestEffect_35: @ 80B88CC
push {r4-r7,lr}
- ldr r1, _080B8940 @ =0x020192d0
+ ldr r1, _080B8940 @ =gSharedMem + 0x192D0
ldrb r0, [r1, 0x11]
adds r0, r1
movs r2, 0
@@ -1608,7 +1608,7 @@ _080B88EA:
adds r4, r0, 0
cmp r5, r1
beq _080B8910
- ldr r3, _080B8940 @ =0x020192d0
+ ldr r3, _080B8940 @ =gSharedMem + 0x192D0
_080B88F8:
lsls r0, r2, 24
movs r2, 0x80
@@ -1649,7 +1649,7 @@ _080B8932:
blt _080B8994
b _080B88EA
.align 2, 0
-_080B8940: .4byte 0x020192d0
+_080B8940: .4byte gSharedMem + 0x192D0
_080B8944:
mov r2, r12
ldrb r1, [r2, 0x11]
@@ -1705,7 +1705,7 @@ ContestEffect_36: @ 80B89A4
mov r7, r9
mov r6, r8
push {r6,r7}
- ldr r0, _080B8A28 @ =0x020192d0
+ ldr r0, _080B8A28 @ =gSharedMem + 0x192D0
ldrb r2, [r0, 0x11]
adds r1, r2, r0
ldrb r1, [r1]
@@ -1768,7 +1768,7 @@ _080B89D4:
bl sub_80B13EC
b _080B8A3C
.align 2, 0
-_080B8A28: .4byte 0x020192d0
+_080B8A28: .4byte gSharedMem + 0x192D0
_080B8A2C: .4byte gContestMoves
_080B8A30: .4byte gContestEffects
_080B8A34:
@@ -1788,7 +1788,7 @@ _080B8A3C:
thumb_func_start ContestEffect_37
ContestEffect_37: @ 80B8A48
push {r4-r7,lr}
- ldr r1, _080B8A94 @ =0x020192d0
+ ldr r1, _080B8A94 @ =gSharedMem + 0x192D0
ldrb r0, [r1, 0x11]
adds r0, r1
ldrb r0, [r0]
@@ -1826,7 +1826,7 @@ _080B8A60:
bl sub_80B13EC
b _080B8AA8
.align 2, 0
-_080B8A94: .4byte 0x020192d0
+_080B8A94: .4byte gSharedMem + 0x192D0
_080B8A98:
cmp r1, r0
bge _080B8AA8
@@ -1849,7 +1849,7 @@ _080B8AB0:
thumb_func_start ContestEffect_38
ContestEffect_38: @ 80B8AB8
push {r4,r5,lr}
- ldr r4, _080B8AFC @ =0x020192d0
+ ldr r4, _080B8AFC @ =gSharedMem + 0x192D0
ldrb r2, [r4, 0x11]
lsls r0, r2, 3
subs r0, r2
@@ -1882,7 +1882,7 @@ ContestEffect_38: @ 80B8AB8
bl sub_80B13EC
b _080B8B08
.align 2, 0
-_080B8AFC: .4byte 0x020192d0
+_080B8AFC: .4byte gSharedMem + 0x192D0
_080B8B00:
adds r0, r2, 0
movs r1, 0x3A
@@ -1896,7 +1896,7 @@ _080B8B08:
thumb_func_start ContestEffect_39
ContestEffect_39: @ 80B8B10
push {r4,lr}
- ldr r3, _080B8B48 @ =0x020192d0
+ ldr r3, _080B8B48 @ =gSharedMem + 0x192D0
ldrb r1, [r3, 0x11]
lsls r0, r1, 3
subs r0, r1
@@ -1923,7 +1923,7 @@ ContestEffect_39: @ 80B8B10
bl sub_80B13EC
b _080B8B54
.align 2, 0
-_080B8B48: .4byte 0x020192d0
+_080B8B48: .4byte gSharedMem + 0x192D0
_080B8B4C:
adds r0, r1, 0
movs r1, 0x3B
@@ -1940,7 +1940,7 @@ ContestEffect_40: @ 80B8B5C
mov r7, r8
push {r7}
sub sp, 0x4
- ldr r1, _080B8BE4 @ =0x02019204
+ ldr r1, _080B8BE4 @ =gSharedMem + 0x19204
ldrb r0, [r1, 0x1]
cmp r0, 0x4
bne _080B8B6E
@@ -2008,7 +2008,7 @@ _080B8BB0:
strb r0, [r4]
b _080B8BF8
.align 2, 0
-_080B8BE4: .4byte 0x02019204
+_080B8BE4: .4byte gSharedMem + 0x19204
_080B8BE8:
lsls r0, r5, 24
movs r1, 0x80
@@ -2099,7 +2099,7 @@ ContestEffect_41: @ 80B8C84
mov r6, r8
push {r6,r7}
sub sp, 0x4
- ldr r1, _080B8D14 @ =0x02019204
+ ldr r1, _080B8D14 @ =gSharedMem + 0x19204
ldrb r0, [r1, 0x1]
cmp r0, 0x4
bne _080B8C98
@@ -2170,7 +2170,7 @@ _080B8CE0:
strb r0, [r4]
b _080B8D28
.align 2, 0
-_080B8D14: .4byte 0x02019204
+_080B8D14: .4byte gSharedMem + 0x19204
_080B8D18:
lsls r0, r5, 24
movs r2, 0x80
@@ -2264,7 +2264,7 @@ ContestEffect_42: @ 80B8DB4
ContestEffect_43: @ 80B8DB8
push {r4-r7,lr}
sub sp, 0x8
- ldr r1, _080B8E30 @ =0x02019204
+ ldr r1, _080B8E30 @ =gSharedMem + 0x19204
ldrb r0, [r1, 0x1]
cmp r0, 0x4
beq _080B8EAE
@@ -2323,7 +2323,7 @@ _080B8E10:
strb r0, [r3]
b _080B8E48
.align 2, 0
-_080B8E30: .4byte 0x02019204
+_080B8E30: .4byte gSharedMem + 0x19204
_080B8E34:
subs r0, r4, 0x1
lsls r0, 24
@@ -2346,7 +2346,7 @@ _080B8E48:
cmp r0, 0x3
ble _080B8DF6
movs r6, 0
- ldr r4, _080B8EB8 @ =0x020192d0
+ ldr r4, _080B8EB8 @ =gSharedMem + 0x192D0
adds r7, r4, 0
subs r7, 0x70
movs r3, 0x3F
@@ -2394,14 +2394,14 @@ _080B8EAE:
pop {r0}
bx r0
.align 2, 0
-_080B8EB8: .4byte 0x020192d0
+_080B8EB8: .4byte gSharedMem + 0x192D0
thumb_func_end ContestEffect_43
thumb_func_start ContestEffect_44
ContestEffect_44: @ 80B8EBC
push {lr}
ldr r3, _080B8EF0 @ =gContestMoves
- ldr r1, _080B8EF4 @ =0x020192d0
+ ldr r1, _080B8EF4 @ =gSharedMem + 0x192D0
ldrb r2, [r1, 0x11]
lsls r0, r2, 3
subs r0, r2
@@ -2427,7 +2427,7 @@ _080B8EEA:
bx r0
.align 2, 0
_080B8EF0: .4byte gContestMoves
-_080B8EF4: .4byte 0x020192d0
+_080B8EF4: .4byte gSharedMem + 0x192D0
_080B8EF8: .4byte gScriptContestCategory
thumb_func_end ContestEffect_44
@@ -2436,7 +2436,7 @@ ContestEffect_45: @ 80B8EFC
push {r4-r7,lr}
movs r7, 0
movs r5, 0
- ldr r4, _080B8F34 @ =0x020192d0
+ ldr r4, _080B8F34 @ =gSharedMem + 0x192D0
movs r6, 0
_080B8F06:
ldrb r0, [r4, 0x11]
@@ -2462,7 +2462,7 @@ _080B8F06:
bl sub_80B9268
b _080B8F3A
.align 2, 0
-_080B8F34: .4byte 0x020192d0
+_080B8F34: .4byte gSharedMem + 0x192D0
_080B8F38:
movs r0, 0xA
_080B8F3A:
@@ -2484,12 +2484,12 @@ _080B8F52:
ble _080B8F06
cmp r7, 0
bne _080B8F68
- ldr r0, _080B8F78 @ =0x020192d0
+ ldr r0, _080B8F78 @ =gSharedMem + 0x192D0
ldrb r0, [r0, 0x11]
movs r1, 0x36
bl sub_80B1404
_080B8F68:
- ldr r0, _080B8F78 @ =0x020192d0
+ ldr r0, _080B8F78 @ =gSharedMem + 0x192D0
ldrb r0, [r0, 0x11]
movs r1, 0x30
bl sub_80B13EC
@@ -2497,13 +2497,13 @@ _080B8F68:
pop {r0}
bx r0
.align 2, 0
-_080B8F78: .4byte 0x020192d0
+_080B8F78: .4byte gSharedMem + 0x192D0
thumb_func_end ContestEffect_45
thumb_func_start ContestEffect_46
ContestEffect_46: @ 80B8F7C
push {r4,lr}
- ldr r0, _080B8F98 @ =0x02019204
+ ldr r0, _080B8F98 @ =gSharedMem + 0x19204
movs r1, 0x13
ldrsb r1, [r0, r1]
cmp r1, 0
@@ -2515,7 +2515,7 @@ ContestEffect_46: @ 80B8F7C
bl sub_80B13EC
b _080B8FDE
.align 2, 0
-_080B8F98: .4byte 0x02019204
+_080B8F98: .4byte gSharedMem + 0x19204
_080B8F9C:
cmp r1, 0x1
bne _080B8FAE
@@ -2550,7 +2550,7 @@ _080B8FD2:
movs r1, 0x1E
bl sub_80B13EC
_080B8FDE:
- ldr r0, _080B8FF4 @ =0x020192d0
+ ldr r0, _080B8FF4 @ =gSharedMem + 0x192D0
ldrb r2, [r0, 0x11]
lsls r1, r2, 3
subs r1, r2
@@ -2562,13 +2562,13 @@ _080B8FDE:
pop {r0}
bx r0
.align 2, 0
-_080B8FF4: .4byte 0x020192d0
+_080B8FF4: .4byte gSharedMem + 0x192D0
thumb_func_end ContestEffect_46
thumb_func_start ContestEffect_47
ContestEffect_47: @ 80B8FF8
push {lr}
- ldr r3, _080B9034 @ =0x02019328
+ ldr r3, _080B9034 @ =gSharedMem + 0x19328
ldrb r2, [r3, 0x1]
movs r0, 0x1
ands r0, r2
@@ -2597,7 +2597,7 @@ _080B902E:
pop {r0}
bx r0
.align 2, 0
-_080B9034: .4byte 0x02019328
+_080B9034: .4byte gSharedMem + 0x19328
thumb_func_end ContestEffect_47
thumb_func_start sub_80B9038
@@ -2611,7 +2611,7 @@ sub_80B9038: @ 80B9038
mov r8, r0
movs r7, 0
movs r5, 0
- ldr r4, _080B907C @ =0x020192d0
+ ldr r4, _080B907C @ =gSharedMem + 0x192D0
ldr r0, _080B9080 @ =gContestMoves
mov r9, r0
movs r6, 0
@@ -2637,7 +2637,7 @@ _080B9052:
movs r0, 0x28
b _080B9086
.align 2, 0
-_080B907C: .4byte 0x020192d0
+_080B907C: .4byte gSharedMem + 0x192D0
_080B9080: .4byte gContestMoves
_080B9084:
movs r0, 0xA
@@ -2658,7 +2658,7 @@ _080B909A:
ble _080B9052
cmp r7, 0
bne _080B90B0
- ldr r0, _080B90BC @ =0x020192d0
+ ldr r0, _080B90BC @ =gSharedMem + 0x192D0
ldrb r0, [r0, 0x11]
movs r1, 0x36
bl sub_80B1404
@@ -2670,7 +2670,7 @@ _080B90B0:
pop {r0}
bx r0
.align 2, 0
-_080B90BC: .4byte 0x020192d0
+_080B90BC: .4byte gSharedMem + 0x192D0
thumb_func_end sub_80B9038
thumb_func_start sub_80B90C0
@@ -2678,7 +2678,7 @@ sub_80B90C0: @ 80B90C0
push {lr}
lsls r0, 24
lsrs r3, r0, 24
- ldr r2, _080B90EC @ =0x020192d0
+ ldr r2, _080B90EC @ =gSharedMem + 0x192D0
adds r0, r2, 0
adds r0, 0xD
adds r0, r3, r0
@@ -2698,7 +2698,7 @@ sub_80B90C0: @ 80B90C0
movs r1, 0x2D
b _080B9116
.align 2, 0
-_080B90EC: .4byte 0x020192d0
+_080B90EC: .4byte gSharedMem + 0x192D0
_080B90F0:
ldrb r0, [r2, 0x12]
cmp r0, 0
@@ -2738,7 +2738,7 @@ sub_80B9120: @ 80B9120
movs r2, 0x8
bl memset
movs r7, 0
- ldr r1, _080B918C @ =0x020192d0
+ ldr r1, _080B918C @ =gSharedMem + 0x192D0
ldrb r0, [r1, 0x8]
cmp r0, 0xFF
beq _080B91D8
@@ -2785,7 +2785,7 @@ _080B9174:
bl sub_80B13EC
b _080B91C8
.align 2, 0
-_080B918C: .4byte 0x020192d0
+_080B918C: .4byte gSharedMem + 0x192D0
_080B9190:
ldrb r1, [r2, 0xF]
ldrh r0, [r5, 0x6]
@@ -2815,7 +2815,7 @@ _080B91AC:
strh r0, [r1]
_080B91C8:
adds r7, 0x1
- ldr r1, _080B91E8 @ =0x020192d0
+ ldr r1, _080B91E8 @ =gSharedMem + 0x192D0
adds r0, r1, 0
adds r0, 0x8
adds r0, r7, r0
@@ -2833,7 +2833,7 @@ _080B91DC:
movs r0, 0x1
b _080B91F6
.align 2, 0
-_080B91E8: .4byte 0x020192d0
+_080B91E8: .4byte gSharedMem + 0x192D0
_080B91EC:
adds r1, 0x2
adds r7, 0x1
@@ -2856,7 +2856,7 @@ sub_80B9200: @ 80B9200
lsls r2, r0, 3
subs r2, r0
lsls r2, 2
- ldr r0, _080B9220 @ =0x02019260
+ ldr r0, _080B9220 @ =gSharedMem + 0x19260
adds r2, r0
ldrh r0, [r2, 0x2]
subs r0, r1
@@ -2866,7 +2866,7 @@ sub_80B9200: @ 80B9200
strb r1, [r2, 0xE]
bx lr
.align 2, 0
-_080B9220: .4byte 0x02019260
+_080B9220: .4byte gSharedMem + 0x19260
thumb_func_end sub_80B9200
thumb_func_start sub_80B9224
diff --git a/asm/contest_link_80C2020.s b/asm/contest_link_80C2020.s
index b91a9665b..0f69dcb51 100644
--- a/asm/contest_link_80C2020.s
+++ b/asm/contest_link_80C2020.s
@@ -408,7 +408,7 @@ sub_80C2358: @ 80C2358
movs r1, 0x1
bl sub_80C30D4
bl sub_80C2340
- ldr r4, _080C2410 @ =0x02018000
+ ldr r4, _080C2410 @ =gSharedMem + 0x18000
adds r0, r4, 0
movs r1, 0
movs r2, 0x18
@@ -458,7 +458,7 @@ sub_80C2358: @ 80C2358
bx r0
.align 2, 0
_080C240C: .4byte gPaletteFade
-_080C2410: .4byte 0x02018000
+_080C2410: .4byte gSharedMem + 0x18000
_080C2414: .4byte sub_80C24F4
_080C2418: .4byte sub_80C2430
_080C241C: .4byte gUnknown_03004200
@@ -665,7 +665,7 @@ sub_80C25C0: @ 80C25C0
adds r0, r4, 0
bl DestroyTask
ldr r2, _080C25F4 @ =gTasks
- ldr r0, _080C25F8 @ =0x02018000
+ ldr r0, _080C25F8 @ =gSharedMem + 0x18000
ldrb r1, [r0, 0x2]
lsls r0, r1, 2
adds r0, r1
@@ -680,7 +680,7 @@ _080C25EC:
bx r0
.align 2, 0
_080C25F4: .4byte gTasks
-_080C25F8: .4byte 0x02018000
+_080C25F8: .4byte gSharedMem + 0x18000
_080C25FC: .4byte sub_80C2600
thumb_func_end sub_80C25C0
@@ -703,7 +703,7 @@ sub_80C2600: @ 80C2600
movs r1, 0x14
bl CreateTask
ldr r4, _080C264C @ =gContestText_AnnounceResults
- ldr r0, _080C2650 @ =0x02018000
+ ldr r0, _080C2650 @ =gSharedMem + 0x18000
ldrb r1, [r0]
adds r0, r4, 0
bl sub_80C3158
@@ -720,17 +720,17 @@ sub_80C2600: @ 80C2600
_080C2644: .4byte gTasks
_080C2648: .4byte sub_80C2F64
_080C264C: .4byte gContestText_AnnounceResults
-_080C2650: .4byte 0x02018000
+_080C2650: .4byte gSharedMem + 0x18000
_080C2654:
cmp r0, 0x1
bne _080C2668
- ldr r0, _080C2664 @ =0x02018000
+ ldr r0, _080C2664 @ =gSharedMem + 0x18000
ldrb r0, [r0, 0x4]
cmp r0, 0
bne _080C26D4
b _080C267C
.align 2, 0
-_080C2664: .4byte 0x02018000
+_080C2664: .4byte gSharedMem + 0x18000
_080C2668:
cmp r0, 0x2
bne _080C2684
@@ -751,7 +751,7 @@ _080C2684:
cmp r0, 0x3
bne _080C26C0
ldr r4, _080C26B4 @ =gContestText_PreliminaryResults
- ldr r0, _080C26B8 @ =0x02018000
+ ldr r0, _080C26B8 @ =gSharedMem + 0x18000
ldrb r1, [r0]
adds r0, r4, 0
bl sub_80C3158
@@ -771,12 +771,12 @@ _080C26A6:
b _080C26D4
.align 2, 0
_080C26B4: .4byte gContestText_PreliminaryResults
-_080C26B8: .4byte 0x02018000
+_080C26B8: .4byte gSharedMem + 0x18000
_080C26BC: .4byte 0x0000ffff
_080C26C0:
cmp r0, 0x4
bne _080C26D4
- ldr r0, _080C26DC @ =0x02018000
+ ldr r0, _080C26DC @ =gSharedMem + 0x18000
ldrb r0, [r0, 0x4]
cmp r0, 0x2
bne _080C26D4
@@ -789,7 +789,7 @@ _080C26D4:
pop {r0}
bx r0
.align 2, 0
-_080C26DC: .4byte 0x02018000
+_080C26DC: .4byte gSharedMem + 0x18000
_080C26E0: .4byte sub_80C26E4
thumb_func_end sub_80C2600
@@ -819,7 +819,7 @@ _080C270C:
beq _080C2754
b _080C2766
_080C2712:
- ldr r5, _080C2738 @ =0x02018000
+ ldr r5, _080C2738 @ =gSharedMem + 0x18000
ldrb r0, [r5, 0xA]
cmp r0, 0
bne _080C2766
@@ -837,21 +837,21 @@ _080C2712:
strh r0, [r4, 0x8]
b _080C2766
.align 2, 0
-_080C2738: .4byte 0x02018000
+_080C2738: .4byte gSharedMem + 0x18000
_080C273C:
ldrh r0, [r4, 0x8]
adds r0, 0x1
strh r0, [r4, 0x8]
b _080C2766
_080C2744:
- ldr r0, _080C2750 @ =0x02018000
+ ldr r0, _080C2750 @ =gSharedMem + 0x18000
ldrb r0, [r0, 0x14]
cmp r0, 0
bne _080C2766
strh r0, [r4, 0x8]
b _080C2766
.align 2, 0
-_080C2750: .4byte 0x02018000
+_080C2750: .4byte gSharedMem + 0x18000
_080C2754:
movs r0, 0x88
lsls r0, 3
@@ -875,7 +875,7 @@ sub_80C2770: @ 80C2770
lsls r0, 24
lsrs r2, r0, 24
adds r4, r2, 0
- ldr r5, _080C27BC @ =0x02018000
+ ldr r5, _080C27BC @ =gSharedMem + 0x18000
ldrb r3, [r5, 0x4]
cmp r3, 0
bne _080C27CC
@@ -907,7 +907,7 @@ sub_80C2770: @ 80C2770
bl sub_80C34CC
b _080C27DE
.align 2, 0
-_080C27BC: .4byte 0x02018000
+_080C27BC: .4byte gSharedMem + 0x18000
_080C27C0: .4byte gTasks
_080C27C4: .4byte gContestText_Round2Results
_080C27C8: .4byte 0x0000ffff
@@ -956,7 +956,7 @@ _080C2814:
beq _080C285C
b _080C286C
_080C281A:
- ldr r5, _080C2840 @ =0x02018000
+ ldr r5, _080C2840 @ =gSharedMem + 0x18000
ldrb r0, [r5, 0xA]
cmp r0, 0
bne _080C286C
@@ -974,21 +974,21 @@ _080C281A:
strh r0, [r4, 0x8]
b _080C286C
.align 2, 0
-_080C2840: .4byte 0x02018000
+_080C2840: .4byte gSharedMem + 0x18000
_080C2844:
ldrh r0, [r4, 0x8]
adds r0, 0x1
strh r0, [r4, 0x8]
b _080C286C
_080C284C:
- ldr r0, _080C2858 @ =0x02018000
+ ldr r0, _080C2858 @ =gSharedMem + 0x18000
ldrb r0, [r0, 0x14]
cmp r0, 0
bne _080C286C
strh r0, [r4, 0x8]
b _080C286C
.align 2, 0
-_080C2858: .4byte 0x02018000
+_080C2858: .4byte gSharedMem + 0x18000
_080C285C:
movs r0, 0x88
lsls r0, 3
@@ -1040,7 +1040,7 @@ _080C28A8:
.4byte _080C299C
.4byte _080C2A70
_080C28C0:
- ldr r0, _080C28DC @ =0x02018000
+ ldr r0, _080C28DC @ =gSharedMem + 0x18000
ldrb r0, [r0, 0x4]
cmp r0, 0
beq _080C28CA
@@ -1055,7 +1055,7 @@ _080C28CA:
strh r1, [r0, 0x8]
b _080C2A80
.align 2, 0
-_080C28DC: .4byte 0x02018000
+_080C28DC: .4byte gSharedMem + 0x18000
_080C28E0:
lsls r0, r5, 2
adds r0, r5
@@ -1101,7 +1101,7 @@ _080C292C: .4byte gTasks
_080C2930: .4byte sub_80C3A5C
_080C2934: .4byte gUnknown_02038690
_080C2938:
- ldr r0, _080C2990 @ =0x02018000
+ ldr r0, _080C2990 @ =gSharedMem + 0x18000
ldrb r0, [r0, 0x5]
cmp r0, 0x4
beq _080C2942
@@ -1148,7 +1148,7 @@ _080C2984:
bl sub_80C3E60
b _080C2A80
.align 2, 0
-_080C2990: .4byte 0x02018000
+_080C2990: .4byte gSharedMem + 0x18000
_080C2994: .4byte sub_80C3B30
_080C2998: .4byte gUnknown_02038690
_080C299C:
@@ -1215,7 +1215,7 @@ _080C2A10:
ldr r1, _080C2A60 @ =gContestText_PokeWon
mov r0, sp
bl StringExpandPlaceholders
- ldr r0, _080C2A64 @ =0x02018000
+ ldr r0, _080C2A64 @ =gSharedMem + 0x18000
ldrb r1, [r0]
mov r0, sp
bl sub_80C3158
@@ -1243,7 +1243,7 @@ _080C2A54: .4byte gUnknown_0203857D
_080C2A58: .4byte gStringVar2
_080C2A5C: .4byte gContestMons + 0x2
_080C2A60: .4byte gContestText_PokeWon
-_080C2A64: .4byte 0x02018000
+_080C2A64: .4byte gSharedMem + 0x18000
_080C2A68: .4byte 0x0000ffff
_080C2A6C: .4byte gTasks
_080C2A70:
@@ -1356,7 +1356,7 @@ _080C2B14:
str r3, [sp]
str r6, [sp, 0x4]
str r4, [sp, 0x8]
- ldr r3, _080C2BE4 @ =0x02000000
+ ldr r3, _080C2BE4 @ =gSharedMem
bl HandleLoadSpecialPokePic
adds r0, r6, 0
ldr r1, [sp, 0xC]
@@ -1392,7 +1392,7 @@ _080C2B14:
adds r2, r5
ldr r1, _080C2BF0 @ =sub_80C3C44
str r1, [r2]
- ldr r2, _080C2BE4 @ =0x02000000
+ ldr r2, _080C2BE4 @ =gSharedMem
movs r3, 0xC0
lsls r3, 9
adds r1, r2, r3
@@ -1422,7 +1422,7 @@ _080C2BD4: .4byte gContestMons
_080C2BD8: .4byte gMonFrontPicTable
_080C2BDC: .4byte gMonFrontPicCoords
_080C2BE0: .4byte gUnknown_081FAF4C
-_080C2BE4: .4byte 0x02000000
+_080C2BE4: .4byte gSharedMem
_080C2BE8: .4byte gUnknown_02024E8C
_080C2BEC: .4byte gSprites
_080C2BF0: .4byte sub_80C3C44
@@ -1472,13 +1472,13 @@ _080C2C30:
.align 2, 0
_080C2C50: .4byte gUnknown_03004240
_080C2C54:
- ldr r0, _080C2C60 @ =0x02018000
+ ldr r0, _080C2C60 @ =gSharedMem + 0x18000
ldrb r0, [r0, 0x6]
cmp r0, 0x1
bne _080C2D04
b _080C2CD0
.align 2, 0
-_080C2C60: .4byte 0x02018000
+_080C2C60: .4byte gSharedMem + 0x18000
_080C2C64:
lsls r0, r7, 2
adds r0, r7
@@ -1494,7 +1494,7 @@ _080C2C64:
movs r0, 0
strh r0, [r3, 0xA]
ldr r2, _080C2C9C @ =gSprites
- ldr r0, _080C2CA0 @ =0x02018000
+ ldr r0, _080C2CA0 @ =gSharedMem + 0x18000
ldrb r1, [r0, 0x8]
lsls r0, r1, 4
adds r0, r1
@@ -1509,10 +1509,10 @@ _080C2C64:
b _080C2D04
.align 2, 0
_080C2C9C: .4byte gSprites
-_080C2CA0: .4byte 0x02018000
+_080C2CA0: .4byte gSharedMem + 0x18000
_080C2CA4: .4byte sub_80C3CB8
_080C2CA8:
- ldr r0, _080C2CE0 @ =0x02018000
+ ldr r0, _080C2CE0 @ =gSharedMem + 0x18000
ldrb r0, [r0, 0x6]
cmp r0, 0x2
bne _080C2D04
@@ -1543,10 +1543,10 @@ _080C2CD0:
strh r1, [r0, 0x8]
b _080C2D04
.align 2, 0
-_080C2CE0: .4byte 0x02018000
+_080C2CE0: .4byte gSharedMem + 0x18000
_080C2CE4: .4byte gUnknown_03004240
_080C2CE8:
- ldr r2, _080C2D14 @ =0x02018000
+ ldr r2, _080C2D14 @ =gSharedMem + 0x18000
ldrb r0, [r2, 0x6]
cmp r0, 0x2
bne _080C2D04
@@ -1570,7 +1570,7 @@ _080C2D04:
pop {r0}
bx r0
.align 2, 0
-_080C2D14: .4byte 0x02018000
+_080C2D14: .4byte gSharedMem + 0x18000
_080C2D18: .4byte sub_80C2D1C
thumb_func_end sub_80C2A8C
@@ -1719,7 +1719,7 @@ sub_80C2E14: @ 80C2E14
bl sub_80B2A7C
movs r0, 0xFE
bl sub_80B2A7C
- ldr r4, _080C2E8C @ =0x02000000
+ ldr r4, _080C2E8C @ =gSharedMem
ldr r0, _080C2E90 @ =0x00015ddf
adds r1, r4, r0
movs r6, 0
@@ -1752,7 +1752,7 @@ sub_80C2E14: @ 80C2E14
_080C2E80: .4byte gUnknown_02038690
_080C2E84: .4byte gContestPlayerMonIndex
_080C2E88: .4byte gScriptContestRank
-_080C2E8C: .4byte 0x02000000
+_080C2E8C: .4byte gSharedMem
_080C2E90: .4byte 0x00015ddf
_080C2E94: .4byte 0x00015dde
_080C2E98: .4byte gTasks
@@ -1782,7 +1782,7 @@ sub_80C2EA0: @ 80C2EA0
ldrsh r0, [r4, r1]
cmp r0, 0
bne _080C2EE8
- ldr r0, _080C2EE0 @ =0x02018000
+ ldr r0, _080C2EE0 @ =gSharedMem + 0x18000
ldrb r0, [r0, 0x3]
bl DestroyTask
ldr r0, _080C2EE4 @ =0x0000ffff
@@ -1790,7 +1790,7 @@ sub_80C2EA0: @ 80C2EA0
.align 2, 0
_080C2ED8: .4byte gPaletteFade
_080C2EDC: .4byte gTasks
-_080C2EE0: .4byte 0x02018000
+_080C2EE0: .4byte gSharedMem + 0x18000
_080C2EE4: .4byte 0x0000ffff
_080C2EE8:
cmp r0, 0x1
@@ -1938,7 +1938,7 @@ _080C2FE6:
ldrsh r4, [r0, r3]
cmp r4, 0
bne _080C3014
- ldr r0, _080C3010 @ =0x02018000
+ ldr r0, _080C3010 @ =gSharedMem + 0x18000
strb r4, [r0, 0xA]
b _080C301A
.align 2, 0
@@ -1946,9 +1946,9 @@ _080C3000: .4byte gTasks
_080C3004: .4byte 0x00002ede
_080C3008: .4byte 0x00007fff
_080C300C: .4byte 0x000077be
-_080C3010: .4byte 0x02018000
+_080C3010: .4byte gSharedMem + 0x18000
_080C3014:
- ldr r1, _080C3020 @ =0x02018000
+ ldr r1, _080C3020 @ =gSharedMem + 0x18000
movs r0, 0x1
strb r0, [r1, 0xA]
_080C301A:
@@ -1956,7 +1956,7 @@ _080C301A:
pop {r0}
bx r0
.align 2, 0
-_080C3020: .4byte 0x02018000
+_080C3020: .4byte gSharedMem + 0x18000
thumb_func_end sub_80C2F64
thumb_func_start sub_80C3024
@@ -2235,7 +2235,7 @@ _080C3218:
strb r5, [r2, 0x2]
movs r0, 0xFF
strb r0, [r2, 0x3]
- ldr r0, _080C32DC @ =0x02018068
+ ldr r0, _080C32DC @ =gSharedMem + 0x18068
mov r10, r0
ldr r1, _080C32D4 @ =gDisplayedStringBattle
bl sub_80034D4
@@ -2303,7 +2303,7 @@ _080C32CC: .4byte 0x040000d4
_080C32D0: .4byte 0x85000100
_080C32D4: .4byte gDisplayedStringBattle
_080C32D8: .4byte gUnknown_083D17E2
-_080C32DC: .4byte 0x02018068
+_080C32DC: .4byte gSharedMem + 0x18068
_080C32E0: .4byte gUnknown_083D1624
_080C32E4: .4byte REG_BG0CNT
_080C32E8: .4byte 0x06010100
@@ -2501,7 +2501,7 @@ _080C340A:
adds r0, r2
ldrb r1, [r5, 0x7]
strh r1, [r0, 0x32]
- ldr r1, _080C34A8 @ =0x02018000
+ ldr r1, _080C34A8 @ =gSharedMem + 0x18000
ldrb r0, [r5]
strb r0, [r1]
strb r3, [r1, 0x4]
@@ -2517,7 +2517,7 @@ _080C3498: .4byte gSpriteTemplate_83D174C
_080C349C: .4byte gUnknown_083D1764
_080C34A0: .4byte gUnknown_083D17A4
_080C34A4: .4byte gSprites
-_080C34A8: .4byte 0x02018000
+_080C34A8: .4byte gSharedMem + 0x18000
thumb_func_end sub_80C33DC
thumb_func_start sub_80C34AC
@@ -2543,7 +2543,7 @@ sub_80C34CC: @ 80C34CC
push {r4-r6,lr}
mov r6, r8
push {r6}
- ldr r4, _080C3514 @ =0x02018000
+ ldr r4, _080C3514 @ =gSharedMem + 0x18000
mov r8, r4
ldrb r5, [r4]
lsls r4, r5, 4
@@ -2576,7 +2576,7 @@ sub_80C34CC: @ 80C34CC
pop {r0}
bx r0
.align 2, 0
-_080C3514: .4byte 0x02018000
+_080C3514: .4byte gSharedMem + 0x18000
_080C3518: .4byte gSprites
_080C351C: .4byte sub_80C3588
thumb_func_end sub_80C34CC
@@ -2584,7 +2584,7 @@ _080C351C: .4byte sub_80C3588
thumb_func_start sub_80C3520
sub_80C3520: @ 80C3520
push {r4,r5,lr}
- ldr r4, _080C3558 @ =0x02018000
+ ldr r4, _080C3558 @ =gSharedMem + 0x18000
ldrb r2, [r4]
lsls r1, r2, 4
adds r1, r2
@@ -2612,7 +2612,7 @@ sub_80C3520: @ 80C3520
pop {r0}
bx r0
.align 2, 0
-_080C3558: .4byte 0x02018000
+_080C3558: .4byte gSharedMem + 0x18000
_080C355C: .4byte gSprites
_080C3560: .4byte sub_80C3630
thumb_func_end sub_80C3520
@@ -2630,12 +2630,12 @@ sub_80C3564: @ 80C3564
strh r2, [r0, 0x24]
ldr r1, _080C3580 @ =SpriteCallbackDummy
str r1, [r0, 0x1C]
- ldr r0, _080C3584 @ =0x02018000
+ ldr r0, _080C3584 @ =gSharedMem + 0x18000
strb r3, [r0, 0x4]
bx lr
.align 2, 0
_080C3580: .4byte SpriteCallbackDummy
-_080C3584: .4byte 0x02018000
+_080C3584: .4byte gSharedMem + 0x18000
thumb_func_end sub_80C3564
thumb_func_start sub_80C3588
@@ -2705,7 +2705,7 @@ _080C35F8: .4byte sub_80C35FC
sub_80C35FC: @ 80C35FC
push {lr}
adds r2, r0, 0
- ldr r0, _080C3628 @ =0x02018000
+ ldr r0, _080C3628 @ =gSharedMem + 0x18000
movs r1, 0x2
strb r1, [r0, 0x4]
ldrh r3, [r2, 0x38]
@@ -2726,7 +2726,7 @@ _080C3624:
pop {r0}
bx r0
.align 2, 0
-_080C3628: .4byte 0x02018000
+_080C3628: .4byte gSharedMem + 0x18000
_080C362C: .4byte 0xffff0000
thumb_func_end sub_80C35FC
@@ -2790,7 +2790,7 @@ _080C3694: .4byte gSprites
sub_80C3698: @ 80C3698
push {r4-r7,lr}
adds r4, r0, 0
- ldr r5, _080C374C @ =0x02018000
+ ldr r5, _080C374C @ =gSharedMem + 0x18000
ldrb r1, [r5, 0x1]
bl sub_80C3158
adds r0, r4, 0
@@ -2877,7 +2877,7 @@ _080C36DA:
pop {r0}
bx r0
.align 2, 0
-_080C374C: .4byte 0x02018000
+_080C374C: .4byte gSharedMem + 0x18000
_080C3750: .4byte gSprites
_080C3754: .4byte gUnknown_030042C4
_080C3758: .4byte gUnknown_03004240
@@ -2888,7 +2888,7 @@ _080C3760: .4byte 0x00003f3e
thumb_func_start sub_80C3764
sub_80C3764: @ 80C3764
push {r4-r7,lr}
- ldr r0, _080C37C8 @ =0x02018000
+ ldr r0, _080C37C8 @ =gSharedMem + 0x18000
ldrb r0, [r0, 0x1]
lsls r2, r0, 4
adds r2, r0
@@ -2939,7 +2939,7 @@ _080C3790:
pop {r0}
bx r0
.align 2, 0
-_080C37C8: .4byte 0x02018000
+_080C37C8: .4byte gSharedMem + 0x18000
_080C37CC: .4byte gSprites
_080C37D0: .4byte gUnknown_030042C4
_080C37D4: .4byte gUnknown_03004240
@@ -3354,7 +3354,7 @@ _080C3A94:
adds r0, r1
adds r2, 0x11
strh r2, [r0]
- ldr r1, _080C3B2C @ =0x02018000
+ ldr r1, _080C3B2C @ =gSharedMem + 0x18000
ldrb r0, [r1, 0x5]
adds r0, 0x1
strb r0, [r1, 0x5]
@@ -3372,7 +3372,7 @@ _080C3B1C: .4byte 0x0600e142
_080C3B20: .4byte 0x0600e144
_080C3B24: .4byte 0x0600e182
_080C3B28: .4byte 0x0600e184
-_080C3B2C: .4byte 0x02018000
+_080C3B2C: .4byte gSharedMem + 0x18000
thumb_func_end sub_80C3A5C
thumb_func_start sub_80C3B30
@@ -3444,7 +3444,7 @@ _080C3B82:
ldr r2, _080C3BD0 @ =sub_80C3BD8
str r2, [r0]
mov r1, r12
- ldr r0, _080C3BD4 @ =0x02018000
+ ldr r0, _080C3BD4 @ =gSharedMem + 0x18000
strb r1, [r0, 0x3]
pop {r3-r5}
mov r8, r3
@@ -3459,7 +3459,7 @@ _080C3BC4: .4byte gTasks
_080C3BC8: .4byte 0x00000fff
_080C3BCC: .4byte 0x0600e100
_080C3BD0: .4byte sub_80C3BD8
-_080C3BD4: .4byte 0x02018000
+_080C3BD4: .4byte gSharedMem + 0x18000
thumb_func_end sub_80C3B30
thumb_func_start sub_80C3BD8
@@ -3569,7 +3569,7 @@ _080C3C92:
str r0, [r4, 0x1C]
movs r0, 0
strh r0, [r4, 0x30]
- ldr r1, _080C3CB4 @ =0x02018000
+ ldr r1, _080C3CB4 @ =gSharedMem + 0x18000
movs r0, 0x1
strb r0, [r1, 0x6]
_080C3CA8:
@@ -3578,7 +3578,7 @@ _080C3CA8:
bx r0
.align 2, 0
_080C3CB0: .4byte SpriteCallbackDummy
-_080C3CB4: .4byte 0x02018000
+_080C3CB4: .4byte gSharedMem + 0x18000
thumb_func_end sub_80C3C44
thumb_func_start sub_80C3CB8
@@ -3612,7 +3612,7 @@ sub_80C3CB8: @ 80C3CB8
movs r1, 0x4
orrs r0, r1
strb r0, [r2]
- ldr r1, _080C3D00 @ =0x02018000
+ ldr r1, _080C3D00 @ =gSharedMem + 0x18000
movs r0, 0x2
strb r0, [r1, 0x6]
_080C3CF8:
@@ -3620,7 +3620,7 @@ _080C3CF8:
bx r0
.align 2, 0
_080C3CFC: .4byte SpriteCallbackDummy
-_080C3D00: .4byte 0x02018000
+_080C3D00: .4byte gSharedMem + 0x18000
thumb_func_end sub_80C3CB8
thumb_func_start sub_80C3D04
@@ -3644,7 +3644,7 @@ sub_80C3D04: @ 80C3D04
bne _080C3DBE
movs r0, 0
strh r0, [r1, 0x8]
- ldr r0, _080C3DDC @ =0x02018000
+ ldr r0, _080C3DDC @ =gSharedMem + 0x18000
mov r8, r0
ldrb r0, [r0, 0x7]
cmp r0, 0x27
@@ -3710,7 +3710,7 @@ sub_80C3D04: @ 80C3D04
adds r0, 0x1
strb r0, [r1, 0x7]
_080C3DBE:
- ldr r0, _080C3DDC @ =0x02018000
+ ldr r0, _080C3DDC @ =gSharedMem + 0x18000
ldrb r0, [r0, 0x9]
cmp r0, 0
beq _080C3DCC
@@ -3724,7 +3724,7 @@ _080C3DCC:
bx r0
.align 2, 0
_080C3DD8: .4byte gTasks
-_080C3DDC: .4byte 0x02018000
+_080C3DDC: .4byte gSharedMem + 0x18000
_080C3DE0: .4byte gSpriteTemplate_83D17B4
_080C3DE4: .4byte gSprites
_080C3DE8: .4byte 0x000003ff
@@ -3759,7 +3759,7 @@ sub_80C3DF0: @ 80C3DF0
ldrh r0, [r4, 0x22]
adds r0, 0x1
strh r0, [r4, 0x22]
- ldr r5, _080C3E5C @ =0x02018000
+ ldr r5, _080C3E5C @ =gSharedMem + 0x18000
ldrb r0, [r5, 0x9]
cmp r0, 0
beq _080C3E3A
@@ -3789,7 +3789,7 @@ _080C3E56:
pop {r0}
bx r0
.align 2, 0
-_080C3E5C: .4byte 0x02018000
+_080C3E5C: .4byte gSharedMem + 0x18000
thumb_func_end sub_80C3DF0
thumb_func_start sub_80C3E60
@@ -3961,7 +3961,7 @@ _080C3F8A:
ble _080C3F9C
adds r4, 0xA
_080C3F9C:
- ldr r0, _080C40A0 @ =0x02018018
+ ldr r0, _080C40A0 @ =gSharedMem + 0x18018
mov r1, r10
adds r5, r1, r0
adds r0, r4, 0
@@ -4090,7 +4090,7 @@ _080C4080:
.align 2, 0
_080C4098: .4byte gUnknown_02038678
_080C409C: .4byte gUnknown_02038670
-_080C40A0: .4byte 0x02018018
+_080C40A0: .4byte gSharedMem + 0x18018
_080C40A4: .4byte gUnknown_02038688
_080C40A8: .4byte gUnknown_02038690
_080C40AC:
@@ -4135,7 +4135,7 @@ sub_80C40D4: @ 80C40D4
cmp r0, 0
bne _080C4198
mov r8, r2
- ldr r0, _080C417C @ =0x02018018
+ ldr r0, _080C417C @ =gSharedMem + 0x18018
subs r1, 0x18
adds r1, r0
mov r9, r1
@@ -4204,7 +4204,7 @@ _080C416A:
ble _080C4102
b _080C4292
.align 2, 0
-_080C417C: .4byte 0x02018018
+_080C417C: .4byte gSharedMem + 0x18018
_080C4180: .4byte 0x0600bffe
_080C4184: .4byte 0x000060b3
_080C4188: .4byte sub_80C42C0
@@ -4214,7 +4214,7 @@ _080C4194: .4byte gTasks
_080C4198:
movs r2, 0
mov r8, r2
- ldr r0, _080C4220 @ =0x02018018
+ ldr r0, _080C4220 @ =gSharedMem + 0x18018
mov r12, r0
mov r9, r2
movs r1, 0xC0
@@ -4282,7 +4282,7 @@ _080C41FA:
str r0, [sp]
b _080C4246
.align 2, 0
-_080C4220: .4byte 0x02018018
+_080C4220: .4byte gSharedMem + 0x18018
_080C4224: .4byte 0x000060a3
_080C4228: .4byte 0x0600bffe
_080C422C: .4byte sub_80C42C0
@@ -4296,7 +4296,7 @@ _080C423C:
lsrs r0, 24
mov r10, r0
_080C4246:
- ldr r0, _080C4264 @ =0x02018018
+ ldr r0, _080C4264 @ =gSharedMem + 0x18018
mov r1, r9
adds r4, r1, r0
ldrb r1, [r4, 0x10]
@@ -4311,7 +4311,7 @@ _080C4246:
subs r1, r2
b _080C4274
.align 2, 0
-_080C4264: .4byte 0x02018018
+_080C4264: .4byte gSharedMem + 0x18018
_080C4268:
adds r0, r2, r5
lsls r0, 3
@@ -4321,7 +4321,7 @@ _080C4268:
adds r1, r2
_080C4274:
strh r1, [r0, 0xA]
- ldr r1, _080C42BC @ =0x02018000
+ ldr r1, _080C42BC @ =gSharedMem + 0x18000
ldrb r0, [r1, 0x14]
adds r0, 0x1
strb r0, [r1, 0x14]
@@ -4358,7 +4358,7 @@ _080C42AA:
pop {r0}
bx r0
.align 2, 0
-_080C42BC: .4byte 0x02018000
+_080C42BC: .4byte gSharedMem + 0x18000
thumb_func_end sub_80C40D4
thumb_func_start sub_80C42C0
@@ -4386,7 +4386,7 @@ sub_80C42C0: @ 80C42C0
ldrsh r0, [r0, r2]
cmp r0, 0
beq _080C4310
- ldr r1, _080C430C @ =0x02018000
+ ldr r1, _080C430C @ =gSharedMem + 0x18000
lsls r2, r5, 1
adds r0, r1, 0
adds r0, 0xC
@@ -4400,9 +4400,9 @@ sub_80C42C0: @ 80C42C0
b _080C4326
.align 2, 0
_080C4308: .4byte gTasks
-_080C430C: .4byte 0x02018000
+_080C430C: .4byte gSharedMem + 0x18000
_080C4310:
- ldr r1, _080C4350 @ =0x02018000
+ ldr r1, _080C4350 @ =gSharedMem + 0x18000
lsls r2, r5, 1
adds r0, r1, 0
adds r0, 0xC
@@ -4437,7 +4437,7 @@ _080C4340:
strh r7, [r3]
b _080C4362
.align 2, 0
-_080C4350: .4byte 0x02018000
+_080C4350: .4byte gSharedMem + 0x18000
_080C4354:
mov r1, r8
cmp r1, 0
@@ -4455,7 +4455,7 @@ _080C4362:
cmp r2, 0
bne _080C43CE
movs r2, 0
- ldr r0, _080C4388 @ =0x0201800c
+ ldr r0, _080C4388 @ =gSharedMem + 0x1800C
adds r6, r4, r0
adds r0, r4, r5
lsls r5, r0, 5
@@ -4470,7 +4470,7 @@ _080C4376:
movs r0, 0x8
b _080C43A8
.align 2, 0
-_080C4388: .4byte 0x0201800c
+_080C4388: .4byte gSharedMem + 0x1800C
_080C438C:
lsls r0, r2, 3
cmp r3, r0
diff --git a/asm/contest_link_80C857C.s b/asm/contest_link_80C857C.s
index 12dc3bdb5..164b1ac03 100644
--- a/asm/contest_link_80C857C.s
+++ b/asm/contest_link_80C857C.s
@@ -12,7 +12,7 @@ sub_80C857C: @ 80C857C
adds r2, r0, 0
lsls r4, r1, 16
lsrs r4, 16
- ldr r5, _080C85A8 @ =0x0201e000
+ ldr r5, _080C85A8 @ =gSharedMem + 0x1E000
adds r0, r5, 0
adds r1, r2, 0
adds r2, r4, 0
@@ -27,7 +27,7 @@ sub_80C857C: @ 80C857C
pop {r0}
bx r0
.align 2, 0
-_080C85A8: .4byte 0x0201e000
+_080C85A8: .4byte gSharedMem + 0x1E000
thumb_func_end sub_80C857C
thumb_func_start sub_80C85AC
@@ -666,7 +666,7 @@ _080C8A64:
lsls r0, r1, 3
subs r0, r1
lsls r0, 2
- ldr r1, _080C8A90 @ =0x02019266
+ ldr r1, _080C8A90 @ =gSharedMem + 0x19266
adds r0, r1
movs r1, 0x2
bl sub_80C857C
@@ -676,14 +676,14 @@ _080C8A64:
b _080C8AC2
.align 2, 0
_080C8A8C: .4byte gContestPlayerMonIndex
-_080C8A90: .4byte 0x02019266
+_080C8A90: .4byte gSharedMem + 0x19266
_080C8A94:
bl sub_80C85D8
lsls r0, 24
cmp r0, 0
beq _080C8AC2
ldr r1, _080C8AC8 @ =gBlockRecvBuffer
- ldr r3, _080C8ACC @ =0x02019266
+ ldr r3, _080C8ACC @ =gSharedMem + 0x19266
movs r4, 0x80
lsls r4, 1
movs r2, 0x3
@@ -707,7 +707,7 @@ _080C8AC2:
bx r0
.align 2, 0
_080C8AC8: .4byte gBlockRecvBuffer
-_080C8ACC: .4byte 0x02019266
+_080C8ACC: .4byte gSharedMem + 0x19266
thumb_func_end sub_80C8A38
thumb_func_start sub_80C8AD0
@@ -954,12 +954,12 @@ _080C8CE0:
bne _080C8CEC
b _080C8E16
_080C8CEC:
- ldr r0, _080C8CF8 @ =0x02019260
+ ldr r0, _080C8CF8 @ =gSharedMem + 0x19260
movs r1, 0x70
bl sub_80C857C
b _080C8DE8
.align 2, 0
-_080C8CF8: .4byte 0x02019260
+_080C8CF8: .4byte gSharedMem + 0x19260
_080C8CFC:
bl sub_80C85D8
lsls r0, 24
@@ -967,7 +967,7 @@ _080C8CFC:
bne _080C8D08
b _080C8E16
_080C8D08:
- ldr r0, _080C8D18 @ =0x02019260
+ ldr r0, _080C8D18 @ =gSharedMem + 0x19260
ldr r1, _080C8D1C @ =gUnknown_0203869B
ldrb r1, [r1]
lsls r1, 8
@@ -976,7 +976,7 @@ _080C8D08:
movs r2, 0x70
b _080C8DE4
.align 2, 0
-_080C8D18: .4byte 0x02019260
+_080C8D18: .4byte gSharedMem + 0x19260
_080C8D1C: .4byte gUnknown_0203869B
_080C8D20: .4byte gBlockRecvBuffer
_080C8D24:
@@ -1002,18 +1002,18 @@ _080C8D46:
lsls r0, 24
cmp r0, 0
beq _080C8E16
- ldr r0, _080C8D5C @ =0x020192d0
+ ldr r0, _080C8D5C @ =gSharedMem + 0x192D0
movs r1, 0x14
bl sub_80C857C
b _080C8DE8
.align 2, 0
-_080C8D5C: .4byte 0x020192d0
+_080C8D5C: .4byte gSharedMem + 0x192D0
_080C8D60:
bl sub_80C85D8
lsls r0, 24
cmp r0, 0
beq _080C8E16
- ldr r0, _080C8D7C @ =0x020192d0
+ ldr r0, _080C8D7C @ =gSharedMem + 0x192D0
ldr r1, _080C8D80 @ =gUnknown_0203869B
ldrb r1, [r1]
lsls r1, 8
@@ -1022,7 +1022,7 @@ _080C8D60:
movs r2, 0x14
b _080C8DE4
.align 2, 0
-_080C8D7C: .4byte 0x020192d0
+_080C8D7C: .4byte gSharedMem + 0x192D0
_080C8D80: .4byte gUnknown_0203869B
_080C8D84: .4byte gBlockRecvBuffer
_080C8D88:
@@ -1030,21 +1030,21 @@ _080C8D88:
lsls r0, 24
cmp r0, 0
beq _080C8E16
- ldr r0, _080C8D9C @ =0x02019328
+ ldr r0, _080C8D9C @ =gSharedMem + 0x19328
movs r1, 0x4
bl sub_80C857C
b _080C8DE8
.align 2, 0
-_080C8D9C: .4byte 0x02019328
+_080C8D9C: .4byte gSharedMem + 0x19328
_080C8DA0:
bl sub_80C85D8
lsls r0, 24
cmp r0, 0
beq _080C8E16
- ldr r0, _080C8DB0 @ =0x02019328
+ ldr r0, _080C8DB0 @ =gSharedMem + 0x19328
b _080C8DD8
.align 2, 0
-_080C8DB0: .4byte 0x02019328
+_080C8DB0: .4byte gSharedMem + 0x19328
_080C8DB4:
bl sub_8007ECC
lsls r0, 24
diff --git a/asm/easy_chat.s b/asm/easy_chat.s
index 7bb496641..d97fc58ad 100644
--- a/asm/easy_chat.s
+++ b/asm/easy_chat.s
@@ -192,7 +192,7 @@ _080E6254: .4byte gSpecialVar_0x8005
_080E6258: .4byte gSaveBlock1 + 0x2750
_080E625C: .4byte sub_80546B8
_080E6260:
- ldr r1, _080E628C @ =0x02001000
+ ldr r1, _080E628C @ =gSharedMem + 0x1000
ldr r0, _080E6290 @ =0x00009c7c
adds r2, r1, r0
ldr r0, _080E6294 @ =0x0000ffff
@@ -216,7 +216,7 @@ _080E6284:
pop {r0}
bx r0
.align 2, 0
-_080E628C: .4byte 0x02001000
+_080E628C: .4byte gSharedMem + 0x1000
_080E6290: .4byte 0x00009c7c
_080E6294: .4byte 0x0000ffff
_080E6298: .4byte 0x00009c7e
@@ -228,7 +228,7 @@ sub_80E62A0: @ 80E62A0
push {r4,lr}
lsls r0, 24
lsrs r0, 24
- ldr r4, _080E62DC @ =0x02001000
+ ldr r4, _080E62DC @ =gSharedMem + 0x1000
str r2, [r4]
str r1, [r4, 0x4]
strb r0, [r4, 0x8]
@@ -256,7 +256,7 @@ _080E62D0:
pop {r0}
bx r0
.align 2, 0
-_080E62DC: .4byte 0x02001000
+_080E62DC: .4byte gSharedMem + 0x1000
_080E62E0: .4byte 0x00009c7c
_080E62E4: .4byte gSaveBlock1
_080E62E8: .4byte 0x00002dd8
@@ -393,7 +393,7 @@ _080E6420: .4byte 0x0000043c
thumb_func_start sub_80E6424
sub_80E6424: @ 80E6424
push {lr}
- ldr r2, _080E6444 @ =0x02001000
+ ldr r2, _080E6444 @ =gSharedMem + 0x1000
ldr r0, _080E6448 @ =gUnknown_083DB6A4
ldrb r1, [r2, 0x8]
adds r1, r0
@@ -409,7 +409,7 @@ sub_80E6424: @ 80E6424
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_080E6444: .4byte 0x02001000
+_080E6444: .4byte gSharedMem + 0x1000
_080E6448: .4byte gUnknown_083DB6A4
_080E644C: .4byte _080E6450
.align 2, 0
@@ -550,11 +550,11 @@ sub_80E6554: @ 80E6554
sub sp, 0x4
movs r4, 0
movs r7, 0
- ldr r0, _080E6564 @ =0x02001000
+ ldr r0, _080E6564 @ =gSharedMem + 0x1000
mov r12, r0
b _080E656E
.align 2, 0
-_080E6564: .4byte 0x02001000
+_080E6564: .4byte gSharedMem + 0x1000
_080E6568:
adds r0, r7, 0x1
lsls r0, 16
@@ -640,7 +640,7 @@ _080E65FC:
subs r0, 0x11
adds r0, r2
strb r1, [r0]
- ldr r0, _080E662C @ =0x02001000
+ ldr r0, _080E662C @ =gSharedMem + 0x1000
mov r12, r0
_080E6608:
adds r0, r4, 0x1
@@ -662,7 +662,7 @@ _080E6612:
pop {r0}
bx r0
.align 2, 0
-_080E662C: .4byte 0x02001000
+_080E662C: .4byte gSharedMem + 0x1000
thumb_func_end sub_80E6554
thumb_func_start sub_80E6630
@@ -683,7 +683,7 @@ _080E6638:
lsls r0, r1, 3
subs r0, r1
lsls r4, r0, 1
- ldr r6, _080E6668 @ =0x02001040
+ ldr r6, _080E6668 @ =gSharedMem + 0x1040
_080E6650:
adds r0, r5, r3
ldrb r1, [r0]
@@ -697,7 +697,7 @@ _080E6650:
b _080E6672
.align 2, 0
_080E6664: .4byte gUnknown_083DB6B2
-_080E6668: .4byte 0x02001040
+_080E6668: .4byte gSharedMem + 0x1040
_080E666C:
adds r0, r3, r4
adds r0, r6
@@ -733,7 +733,7 @@ sub_80E6690: @ 80E6690
movs r5, 0
ldr r6, _080E66E4 @ =gUnknown_083DB7C0
_080E66A4:
- ldr r0, _080E66E8 @ =0x02001000
+ ldr r0, _080E66E8 @ =gSharedMem + 0x1000
ldrb r0, [r0, 0x8]
lsls r0, 1
adds r0, r5, r0
@@ -764,7 +764,7 @@ _080E66A4:
.align 2, 0
_080E66E0: .4byte gUnknown_083DB7DC
_080E66E4: .4byte gUnknown_083DB7C0
-_080E66E8: .4byte 0x02001000
+_080E66E8: .4byte gSharedMem + 0x1000
_080E66EC: .4byte gUnknown_083DB6F4
_080E66F0:
strb r0, [r3]
@@ -786,7 +786,7 @@ _080E670A:
cmp r5, 0x1
bls _080E66A4
movs r5, 0
- ldr r3, _080E6758 @ =0x02001000
+ ldr r3, _080E6758 @ =gSharedMem + 0x1000
ldr r0, _080E675C @ =0x00009da4
adds r2, r3, r0
movs r1, 0
@@ -820,7 +820,7 @@ _080E671E:
pop {r0}
bx r0
.align 2, 0
-_080E6758: .4byte 0x02001000
+_080E6758: .4byte gSharedMem + 0x1000
_080E675C: .4byte 0x00009da4
_080E6760: .4byte 0x00009f6e
thumb_func_end sub_80E6690
@@ -930,19 +930,19 @@ _080E6828: .4byte gSaveBlock1 + 0x2D8C
thumb_func_start sub_80E682C
sub_80E682C: @ 80E682C
- ldr r1, _080E6838 @ =0x02001000
+ ldr r1, _080E6838 @ =gSharedMem + 0x1000
str r0, [r1, 0x20]
movs r0, 0
strh r0, [r1, 0x24]
bx lr
.align 2, 0
-_080E6838: .4byte 0x02001000
+_080E6838: .4byte gSharedMem + 0x1000
thumb_func_end sub_80E682C
thumb_func_start sub_80E683C
sub_80E683C: @ 80E683C
push {r4,r5,lr}
- ldr r1, _080E6890 @ =0x02001000
+ ldr r1, _080E6890 @ =gSharedMem + 0x1000
adds r0, r1, 0
adds r0, 0x26
ldrb r0, [r0]
@@ -985,7 +985,7 @@ _080E6876:
strb r0, [r3]
b _080E68B8
.align 2, 0
-_080E6890: .4byte 0x02001000
+_080E6890: .4byte gSharedMem + 0x1000
_080E6894: .4byte 0x000001a9
_080E6898:
movs r3, 0xD5
@@ -1032,7 +1032,7 @@ _080E68E4: .4byte 0x000001a9
sub_80E68E8: @ 80E68E8
push {r4-r6,lr}
bl sub_80EB0B0
- ldr r3, _080E694C @ =0x02001000
+ ldr r3, _080E694C @ =gSharedMem + 0x1000
adds r0, r3, 0
adds r0, 0x26
ldrb r0, [r0]
@@ -1082,7 +1082,7 @@ _080E693A:
ldr r3, _080E6950 @ =0x00004178
b _080E69AC
.align 2, 0
-_080E694C: .4byte 0x02001000
+_080E694C: .4byte gSharedMem + 0x1000
_080E6950: .4byte 0x00004178
_080E6954: .4byte 0x00009a28
_080E6958: .4byte 0x000099a6
@@ -1167,7 +1167,7 @@ _080E69F4: .4byte 0x00009a29
thumb_func_start sub_80E69F8
sub_80E69F8: @ 80E69F8
push {r4,lr}
- ldr r0, _080E6A10 @ =0x02001000
+ ldr r0, _080E6A10 @ =gSharedMem + 0x1000
ldrb r1, [r0, 0x8]
adds r4, r0, 0
cmp r1, 0xD
@@ -1178,7 +1178,7 @@ sub_80E69F8: @ 80E69F8
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_080E6A10: .4byte 0x02001000
+_080E6A10: .4byte gSharedMem + 0x1000
_080E6A14: .4byte _080E6A18
.align 2, 0
_080E6A18:
@@ -1227,7 +1227,7 @@ sub_80E6A6C: @ 80E6A6C
thumb_func_start sub_80E6A88
sub_80E6A88: @ 80E6A88
push {lr}
- ldr r0, _080E6AA4 @ =0x02001000
+ ldr r0, _080E6AA4 @ =gSharedMem + 0x1000
ldr r0, [r0, 0x20]
bl _call_via_r0
bl AnimateSprites
@@ -1236,7 +1236,7 @@ sub_80E6A88: @ 80E6A88
pop {r0}
bx r0
.align 2, 0
-_080E6AA4: .4byte 0x02001000
+_080E6AA4: .4byte gSharedMem + 0x1000
thumb_func_end sub_80E6A88
thumb_func_start sub_80E6AA8
@@ -1275,7 +1275,7 @@ _080E6AE0: .4byte sub_80E6AE4
sub_80E6AE4: @ 80E6AE4
push {r4,r5,lr}
bl sub_80E75D8
- ldr r4, _080E6B44 @ =0x02001000
+ ldr r4, _080E6B44 @ =gSharedMem + 0x1000
adds r1, r4, 0
adds r1, 0x87
strb r0, [r1]
@@ -1320,7 +1320,7 @@ _080E6AFE:
beq _080E6B52
b _080E6BA4
.align 2, 0
-_080E6B44: .4byte 0x02001000
+_080E6B44: .4byte gSharedMem + 0x1000
_080E6B48: .4byte gMain
_080E6B4C:
cmp r0, 0x2
@@ -1383,7 +1383,7 @@ _080E6BBC: .4byte sub_80E6C84
thumb_func_start sub_80E6BC0
sub_80E6BC0: @ 80E6BC0
push {r4,lr}
- ldr r4, _080E6BD4 @ =0x02001000
+ ldr r4, _080E6BD4 @ =gSharedMem + 0x1000
ldrh r0, [r4, 0x24]
cmp r0, 0x1
beq _080E6C12
@@ -1393,7 +1393,7 @@ sub_80E6BC0: @ 80E6BC0
beq _080E6BE2
b _080E6C76
.align 2, 0
-_080E6BD4: .4byte 0x02001000
+_080E6BD4: .4byte gSharedMem + 0x1000
_080E6BD8:
cmp r0, 0x2
beq _080E6C54
@@ -1448,13 +1448,13 @@ _080E6C3E:
strh r0, [r4, 0x24]
b _080E6C76
_080E6C46:
- ldr r1, _080E6C50 @ =0x02001000
+ ldr r1, _080E6C50 @ =gSharedMem + 0x1000
ldrh r0, [r1, 0x24]
adds r0, 0x1
strh r0, [r1, 0x24]
b _080E6C76
.align 2, 0
-_080E6C50: .4byte 0x02001000
+_080E6C50: .4byte gSharedMem + 0x1000
_080E6C54:
bl sub_80E81FC
ldr r0, _080E6C60 @ =sub_80E6AC4
@@ -1483,7 +1483,7 @@ _080E6C80: .4byte sub_80E6AC4
thumb_func_start sub_80E6C84
sub_80E6C84: @ 80E6C84
push {r4,lr}
- ldr r4, _080E6C98 @ =0x02001000
+ ldr r4, _080E6C98 @ =gSharedMem + 0x1000
ldrh r0, [r4, 0x24]
cmp r0, 0x1
beq _080E6CF4
@@ -1493,7 +1493,7 @@ sub_80E6C84: @ 80E6C84
beq _080E6CA6
b _080E6D72
.align 2, 0
-_080E6C98: .4byte 0x02001000
+_080E6C98: .4byte gSharedMem + 0x1000
_080E6C9C:
cmp r0, 0x2
beq _080E6D24
@@ -1531,12 +1531,12 @@ _080E6CA6:
cmp r0, 0xD
bne _080E6D1C
_080E6CE8:
- ldr r1, _080E6CF0 @ =0x02001000
+ ldr r1, _080E6CF0 @ =gSharedMem + 0x1000
movs r0, 0x2
strh r0, [r1, 0x24]
b _080E6D72
.align 2, 0
-_080E6CF0: .4byte 0x02001000
+_080E6CF0: .4byte gSharedMem + 0x1000
_080E6CF4:
bl ProcessMenuInputNoWrap_
lsls r0, 24
@@ -1588,12 +1588,12 @@ _080E6D44:
_080E6D50: .4byte gScriptResult
_080E6D54: .4byte sub_80E752C
_080E6D58:
- ldr r1, _080E6D60 @ =0x02001000
+ ldr r1, _080E6D60 @ =gSharedMem + 0x1000
movs r0, 0xFF
strh r0, [r1, 0x24]
b _080E6D72
.align 2, 0
-_080E6D60: .4byte 0x02001000
+_080E6D60: .4byte gSharedMem + 0x1000
_080E6D64:
bl HandleDestroyMenuCursors
bl sub_80E81FC
@@ -1610,7 +1610,7 @@ _080E6D78: .4byte sub_80E6AC4
thumb_func_start sub_80E6D7C
sub_80E6D7C: @ 80E6D7C
push {r4-r7,lr}
- ldr r5, _080E6D98 @ =0x02001000
+ ldr r5, _080E6D98 @ =gSharedMem + 0x1000
ldrh r0, [r5, 0x24]
cmp r0, 0xA
bne _080E6D88
@@ -1624,7 +1624,7 @@ _080E6D88:
beq _080E6E3C
b _080E6F5E
.align 2, 0
-_080E6D98: .4byte 0x02001000
+_080E6D98: .4byte gSharedMem + 0x1000
_080E6D9C:
cmp r0, 0x65
bne _080E6DA2
@@ -1680,7 +1680,7 @@ _080E6DEE:
.align 2, 0
_080E6DF8: .4byte 0x0000ffff
_080E6DFC:
- ldr r0, _080E6E18 @ =0x02001000
+ ldr r0, _080E6E18 @ =gSharedMem + 0x1000
ldrb r0, [r0, 0x8]
cmp r0, 0x4
bne _080E6E20
@@ -1692,7 +1692,7 @@ _080E6DFC:
bl sub_80E682C
b _080E6F5E
.align 2, 0
-_080E6E18: .4byte 0x02001000
+_080E6E18: .4byte gSharedMem + 0x1000
_080E6E1C: .4byte sub_80E6C84
_080E6E20:
movs r0, 0x1
@@ -1783,7 +1783,7 @@ _080E6ED8: .4byte sub_80E752C
_080E6EDC:
bl HandleDestroyMenuCursors
bl sub_80E81FC
- ldr r4, _080E6EFC @ =0x02001000
+ ldr r4, _080E6EFC @ =gSharedMem + 0x1000
ldrb r0, [r4, 0x8]
cmp r0, 0x6
bne _080E6F00
@@ -1795,7 +1795,7 @@ _080E6EDC:
strh r0, [r4, 0x24]
b _080E6F5E
.align 2, 0
-_080E6EFC: .4byte 0x02001000
+_080E6EFC: .4byte gSharedMem + 0x1000
_080E6F00:
bl sub_80E95A4
b _080E6F12
@@ -1827,14 +1827,14 @@ _080E6F30:
cmp r0, 0
beq _080E6F5E
_080E6F3C:
- ldr r1, _080E6F4C @ =0x02001000
+ ldr r1, _080E6F4C @ =gSharedMem + 0x1000
ldrh r0, [r1, 0x24]
adds r0, 0x1
strh r0, [r1, 0x24]
b _080E6F5E
.align 2, 0
_080E6F48: .4byte gMain
-_080E6F4C: .4byte 0x02001000
+_080E6F4C: .4byte gSharedMem + 0x1000
_080E6F50:
bl sub_80E7E50
bl sub_80E95A4
@@ -1851,7 +1851,7 @@ _080E6F64: .4byte sub_80E6AC4
thumb_func_start sub_80E6F68
sub_80E6F68: @ 80E6F68
push {r4,lr}
- ldr r4, _080E6F78 @ =0x02001000
+ ldr r4, _080E6F78 @ =gSharedMem + 0x1000
ldrh r0, [r4, 0x24]
cmp r0, 0
beq _080E6F7C
@@ -1859,7 +1859,7 @@ sub_80E6F68: @ 80E6F68
beq _080E6F9C
b _080E6FBC
.align 2, 0
-_080E6F78: .4byte 0x02001000
+_080E6F78: .4byte gSharedMem + 0x1000
_080E6F7C:
movs r0, 0x1
bl sub_80E8398
@@ -1897,7 +1897,7 @@ sub_80E6FC8: @ 80E6FC8
push {r4,lr}
bl sub_80E77C8
adds r1, r0, 0
- ldr r4, _080E7000 @ =0x02001000
+ ldr r4, _080E7000 @ =gSharedMem + 0x1000
adds r0, r4, 0
adds r0, 0x96
strb r1, [r0]
@@ -1920,7 +1920,7 @@ sub_80E6FC8: @ 80E6FC8
bl sub_80E682C
b _080E710A
.align 2, 0
-_080E7000: .4byte 0x02001000
+_080E7000: .4byte gSharedMem + 0x1000
_080E7004: .4byte sub_80E6FC8
_080E7008: .4byte sub_80E7458
_080E700C:
@@ -2055,7 +2055,7 @@ _080E7110: .4byte sub_80E718C
thumb_func_start sub_80E7114
sub_80E7114: @ 80E7114
push {lr}
- ldr r0, _080E712C @ =0x02001000
+ ldr r0, _080E712C @ =gSharedMem + 0x1000
ldrh r1, [r0, 0x24]
adds r2, r0, 0
cmp r1, 0x4
@@ -2066,7 +2066,7 @@ sub_80E7114: @ 80E7114
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_080E712C: .4byte 0x02001000
+_080E712C: .4byte gSharedMem + 0x1000
_080E7130: .4byte _080E7134
.align 2, 0
_080E7134:
@@ -2093,13 +2093,13 @@ _080E7164:
cmp r0, 0
beq _080E7182
_080E716E:
- ldr r1, _080E7178 @ =0x02001000
+ ldr r1, _080E7178 @ =gSharedMem + 0x1000
ldrh r0, [r1, 0x24]
adds r0, 0x1
strh r0, [r1, 0x24]
b _080E7182
.align 2, 0
-_080E7178: .4byte 0x02001000
+_080E7178: .4byte gSharedMem + 0x1000
_080E717C:
ldr r0, _080E7188 @ =sub_80E6AC4
bl sub_80E682C
@@ -2113,7 +2113,7 @@ _080E7188: .4byte sub_80E6AC4
thumb_func_start sub_80E718C
sub_80E718C: @ 80E718C
push {r4,lr}
- ldr r0, _080E71A4 @ =0x02001000
+ ldr r0, _080E71A4 @ =gSharedMem + 0x1000
ldrh r1, [r0, 0x24]
adds r4, r0, 0
cmp r1, 0x1
@@ -2124,7 +2124,7 @@ sub_80E718C: @ 80E718C
beq _080E71AE
b _080E71EC
.align 2, 0
-_080E71A4: .4byte 0x02001000
+_080E71A4: .4byte gSharedMem + 0x1000
_080E71A8:
cmp r1, 0x8
beq _080E71F4
@@ -2181,7 +2181,7 @@ _080E7214: .4byte sub_80E6FC8
thumb_func_start sub_80E7218
sub_80E7218: @ 80E7218
push {r4,lr}
- ldr r4, _080E7230 @ =0x02001000
+ ldr r4, _080E7230 @ =gSharedMem + 0x1000
ldrh r0, [r4, 0x24]
adds r1, r4, 0
cmp r0, 0x9
@@ -2192,7 +2192,7 @@ sub_80E7218: @ 80E7218
beq _080E7244
b _080E723C
.align 2, 0
-_080E7230: .4byte 0x02001000
+_080E7230: .4byte gSharedMem + 0x1000
_080E7234:
cmp r0, 0xA
beq _080E7276
@@ -2243,7 +2243,7 @@ sub_80E7294: @ 80E7294
push {r4,lr}
bl sub_80E7B40
adds r1, r0, 0
- ldr r4, _080E72CC @ =0x02001000
+ ldr r4, _080E72CC @ =gSharedMem + 0x1000
ldr r2, _080E72D0 @ =0x000001b9
adds r0, r4, r2
strb r1, [r0]
@@ -2265,7 +2265,7 @@ sub_80E7294: @ 80E7294
bl sub_80E682C
b _080E731A
.align 2, 0
-_080E72CC: .4byte 0x02001000
+_080E72CC: .4byte gSharedMem + 0x1000
_080E72D0: .4byte 0x000001b9
_080E72D4: .4byte sub_80E7294
_080E72D8: .4byte sub_80E7458
@@ -2308,7 +2308,7 @@ _080E7320: .4byte sub_80E73D0
thumb_func_start sub_80E7324
sub_80E7324: @ 80E7324
push {lr}
- ldr r0, _080E733C @ =0x02001000
+ ldr r0, _080E733C @ =gSharedMem + 0x1000
ldrh r1, [r0, 0x24]
adds r2, r0, 0
cmp r1, 0x4
@@ -2319,7 +2319,7 @@ sub_80E7324: @ 80E7324
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_080E733C: .4byte 0x02001000
+_080E733C: .4byte gSharedMem + 0x1000
_080E7340: .4byte _080E7344
.align 2, 0
_080E7344:
@@ -2357,13 +2357,13 @@ _080E738A:
cmp r0, 0
beq _080E73C6
_080E7394:
- ldr r1, _080E73A0 @ =0x02001000
+ ldr r1, _080E73A0 @ =gSharedMem + 0x1000
ldrh r0, [r1, 0x24]
adds r0, 0x1
strh r0, [r1, 0x24]
b _080E73C6
.align 2, 0
-_080E73A0: .4byte 0x02001000
+_080E73A0: .4byte gSharedMem + 0x1000
_080E73A4:
ldrb r0, [r2, 0x8]
cmp r0, 0x6
@@ -2390,7 +2390,7 @@ _080E73CC: .4byte sub_80E6AC4
thumb_func_start sub_80E73D0
sub_80E73D0: @ 80E73D0
push {lr}
- ldr r0, _080E73E4 @ =0x02001000
+ ldr r0, _080E73E4 @ =gSharedMem + 0x1000
ldrh r0, [r0, 0x24]
cmp r0, 0x4
bhi _080E744E
@@ -2400,7 +2400,7 @@ sub_80E73D0: @ 80E73D0
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_080E73E4: .4byte 0x02001000
+_080E73E4: .4byte gSharedMem + 0x1000
_080E73E8: .4byte _080E73EC
.align 2, 0
_080E73EC:
@@ -2432,13 +2432,13 @@ _080E742C:
movs r0, 0
bl sub_80E8958
_080E7436:
- ldr r1, _080E7440 @ =0x02001000
+ ldr r1, _080E7440 @ =gSharedMem + 0x1000
ldrh r0, [r1, 0x24]
adds r0, 0x1
strh r0, [r1, 0x24]
b _080E744E
.align 2, 0
-_080E7440: .4byte 0x02001000
+_080E7440: .4byte gSharedMem + 0x1000
_080E7444:
bl sub_80E9974
ldr r0, _080E7454 @ =sub_80E6FC8
@@ -2453,7 +2453,7 @@ _080E7454: .4byte sub_80E6FC8
thumb_func_start sub_80E7458
sub_80E7458: @ 80E7458
push {r4,r5,lr}
- ldr r4, _080E7468 @ =0x02001000
+ ldr r4, _080E7468 @ =gSharedMem + 0x1000
ldrh r5, [r4, 0x24]
cmp r5, 0
beq _080E746C
@@ -2461,7 +2461,7 @@ sub_80E7458: @ 80E7458
beq _080E74A4
b _080E7518
.align 2, 0
-_080E7468: .4byte 0x02001000
+_080E7468: .4byte gSharedMem + 0x1000
_080E746C:
movs r1, 0xE2
lsls r1, 1
@@ -2477,7 +2477,7 @@ _080E7480: .4byte sub_80E6FC8
_080E7484:
bl sub_80E9D00
_080E7488:
- ldr r4, _080E74A0 @ =0x02001000
+ ldr r4, _080E74A0 @ =gSharedMem + 0x1000
movs r2, 0xDF
lsls r2, 1
adds r0, r4, r2
@@ -2488,7 +2488,7 @@ _080E7488:
strh r0, [r4, 0x24]
b _080E7518
.align 2, 0
-_080E74A0: .4byte 0x02001000
+_080E74A0: .4byte gSharedMem + 0x1000
_080E74A4:
bl sub_80E9E54
lsls r0, 24
@@ -2532,7 +2532,7 @@ _080E74E4:
adds r0, r4, r1
_080E74FE:
strb r5, [r0]
- ldr r1, _080E7528 @ =0x02001000
+ ldr r1, _080E7528 @ =gSharedMem + 0x1000
movs r0, 0xDF
lsls r0, 1
adds r2, r1, r0
@@ -2550,14 +2550,14 @@ _080E7518:
.align 2, 0
_080E7520: .4byte 0x00009a29
_080E7524: .4byte 0x000001b9
-_080E7528: .4byte 0x02001000
+_080E7528: .4byte gSharedMem + 0x1000
thumb_func_end sub_80E7458
thumb_func_start sub_80E752C
sub_80E752C: @ 80E752C
push {r4,lr}
sub sp, 0x4
- ldr r4, _080E7540 @ =0x02001000
+ ldr r4, _080E7540 @ =gSharedMem + 0x1000
ldrh r1, [r4, 0x24]
cmp r1, 0
beq _080E7544
@@ -2565,7 +2565,7 @@ sub_80E752C: @ 80E752C
beq _080E755C
b _080E756C
.align 2, 0
-_080E7540: .4byte 0x02001000
+_080E7540: .4byte gSharedMem + 0x1000
_080E7544:
movs r0, 0x1
negs r0, r0
@@ -2595,7 +2595,7 @@ _080E756C:
thumb_func_start sub_80E7574
sub_80E7574: @ 80E7574
push {r4,r5,lr}
- ldr r4, _080E75B8 @ =0x02001000
+ ldr r4, _080E75B8 @ =gSharedMem + 0x1000
ldrb r5, [r4, 0x8]
cmp r5, 0x1
bne _080E75BC
@@ -2628,9 +2628,9 @@ sub_80E7574: @ 80E7574
adds r1, r4, 0
b _080E75C6
.align 2, 0
-_080E75B8: .4byte 0x02001000
+_080E75B8: .4byte gSharedMem + 0x1000
_080E75BC:
- ldr r1, _080E75D4 @ =0x02001000
+ ldr r1, _080E75D4 @ =gSharedMem + 0x1000
adds r2, r1, 0
adds r2, 0x7D
movs r0, 0
@@ -2643,7 +2643,7 @@ _080E75C6:
pop {r0}
bx r0
.align 2, 0
-_080E75D4: .4byte 0x02001000
+_080E75D4: .4byte gSharedMem + 0x1000
thumb_func_end sub_80E7574
thumb_func_start sub_80E75D8
@@ -2656,7 +2656,7 @@ sub_80E75D8: @ 80E75D8
ands r0, r1
cmp r0, 0
beq _080E7604
- ldr r1, _080E7600 @ =0x02001000
+ ldr r1, _080E7600 @ =gSharedMem + 0x1000
adds r0, r1, 0
adds r0, 0x84
ldrb r0, [r0]
@@ -2668,14 +2668,14 @@ sub_80E75D8: @ 80E75D8
b _080E768E
.align 2, 0
_080E75FC: .4byte gMain
-_080E7600: .4byte 0x02001000
+_080E7600: .4byte gSharedMem + 0x1000
_080E7604:
ldrh r1, [r2, 0x30]
movs r0, 0x40
ands r0, r1
cmp r0, 0
beq _080E7630
- ldr r2, _080E762C @ =0x02001000
+ ldr r2, _080E762C @ =gSharedMem + 0x1000
adds r1, r2, 0
adds r1, 0x86
ldrb r0, [r1]
@@ -2690,13 +2690,13 @@ _080E7604:
strb r0, [r1]
b _080E765C
.align 2, 0
-_080E762C: .4byte 0x02001000
+_080E762C: .4byte gSharedMem + 0x1000
_080E7630:
movs r0, 0x80
ands r0, r1
cmp r0, 0
beq _080E7658
- ldr r0, _080E7684 @ =0x02001000
+ ldr r0, _080E7684 @ =gSharedMem + 0x1000
adds r3, r0, 0
adds r3, 0x86
ldrb r1, [r3]
@@ -2717,7 +2717,7 @@ _080E7658:
cmp r4, 0
beq _080E76EA
_080E765C:
- ldr r2, _080E7684 @ =0x02001000
+ ldr r2, _080E7684 @ =gSharedMem + 0x1000
ldrb r3, [r2, 0x9]
cmp r3, 0x2
bne _080E7692
@@ -2738,7 +2738,7 @@ _080E765C:
strb r3, [r0]
b _080E77BC
.align 2, 0
-_080E7684: .4byte 0x02001000
+_080E7684: .4byte gSharedMem + 0x1000
_080E7688:
adds r1, r2, 0
adds r1, 0x85
@@ -2800,7 +2800,7 @@ _080E76EA:
lsrs r4, r0, 16
cmp r4, 0
beq _080E7744
- ldr r2, _080E7728 @ =0x02001000
+ ldr r2, _080E7728 @ =gSharedMem + 0x1000
adds r3, r2, 0
adds r3, 0x85
ldrb r0, [r3]
@@ -2825,7 +2825,7 @@ _080E76EA:
movs r0, 0x2
b _080E77BA
.align 2, 0
-_080E7728: .4byte 0x02001000
+_080E7728: .4byte gSharedMem + 0x1000
_080E772C:
adds r0, r2, 0
adds r0, 0x83
@@ -2844,7 +2844,7 @@ _080E7744:
ands r0, r2
cmp r0, 0
beq _080E77C0
- ldr r2, _080E777C @ =0x02001000
+ ldr r2, _080E777C @ =gSharedMem + 0x1000
adds r5, r2, 0
adds r5, 0x86
adds r0, r2, 0
@@ -2868,7 +2868,7 @@ _080E7744:
strb r4, [r1]
b _080E77BC
.align 2, 0
-_080E777C: .4byte 0x02001000
+_080E777C: .4byte gSharedMem + 0x1000
_080E7780:
adds r3, r2, 0
adds r3, 0x85
@@ -2921,7 +2921,7 @@ sub_80E77C8: @ 80E77C8
mov r6, r8
push {r6,r7}
movs r7, 0
- ldr r1, _080E780C @ =0x02001000
+ ldr r1, _080E780C @ =gSharedMem + 0x1000
ldr r2, _080E7810 @ =0x000001b7
adds r0, r1, r2
ldrb r0, [r0]
@@ -2952,7 +2952,7 @@ _080E7806:
strb r0, [r1]
b _080E7948
.align 2, 0
-_080E780C: .4byte 0x02001000
+_080E780C: .4byte gSharedMem + 0x1000
_080E7810: .4byte 0x000001b7
_080E7814: .4byte gMain
_080E7818:
@@ -3301,7 +3301,7 @@ _080E7A8A:
thumb_func_start sub_80E7A98
sub_80E7A98: @ 80E7A98
push {lr}
- ldr r1, _080E7ACC @ =0x02001000
+ ldr r1, _080E7ACC @ =gSharedMem + 0x1000
ldr r0, _080E7AD0 @ =0x000001a9
adds r3, r1, r0
movs r2, 0xD4
@@ -3327,14 +3327,14 @@ _080E7AC6:
pop {r0}
bx r0
.align 2, 0
-_080E7ACC: .4byte 0x02001000
+_080E7ACC: .4byte gSharedMem + 0x1000
_080E7AD0: .4byte 0x000001a9
thumb_func_end sub_80E7A98
thumb_func_start sub_80E7AD4
sub_80E7AD4: @ 80E7AD4
push {lr}
- ldr r3, _080E7B08 @ =0x02001000
+ ldr r3, _080E7B08 @ =gSharedMem + 0x1000
adds r0, r3, 0
adds r0, 0x26
ldrb r0, [r0]
@@ -3359,7 +3359,7 @@ sub_80E7AD4: @ 80E7AD4
adds r2, 0x10
b _080E7B34
.align 2, 0
-_080E7B08: .4byte 0x02001000
+_080E7B08: .4byte gSharedMem + 0x1000
_080E7B0C: .4byte 0x000001a9
_080E7B10:
ldr r1, _080E7B3C @ =0x000001a9
@@ -3393,7 +3393,7 @@ _080E7B3C: .4byte 0x000001a9
sub_80E7B40: @ 80E7B40
push {r4-r7,lr}
movs r5, 0
- ldr r2, _080E7B8C @ =0x02001000
+ ldr r2, _080E7B8C @ =gSharedMem + 0x1000
movs r0, 0xE0
lsls r0, 1
adds r6, r2, r0
@@ -3430,7 +3430,7 @@ _080E7B6E:
strb r0, [r6]
b _080E7D1A
.align 2, 0
-_080E7B8C: .4byte 0x02001000
+_080E7B8C: .4byte gSharedMem + 0x1000
_080E7B90: .4byte gMain
_080E7B94: .4byte 0x000099a4
_080E7B98: .4byte 0x00009a29
@@ -3646,7 +3646,7 @@ _080E7D2C: .4byte 0x000099a4
thumb_func_start sub_80E7D30
sub_80E7D30: @ 80E7D30
push {r4,lr}
- ldr r0, _080E7D60 @ =0x02001000
+ ldr r0, _080E7D60 @ =gSharedMem + 0x1000
ldr r1, _080E7D64 @ =0x000099a5
adds r4, r0, r1
ldr r2, _080E7D68 @ =0x000099a4
@@ -3671,7 +3671,7 @@ _080E7D5A:
pop {r0}
bx r0
.align 2, 0
-_080E7D60: .4byte 0x02001000
+_080E7D60: .4byte gSharedMem + 0x1000
_080E7D64: .4byte 0x000099a5
_080E7D68: .4byte 0x000099a4
thumb_func_end sub_80E7D30
@@ -3680,7 +3680,7 @@ _080E7D68: .4byte 0x000099a4
sub_80E7D6C: @ 80E7D6C
push {r4,r5,lr}
movs r4, 0
- ldr r0, _080E7D94 @ =0x02001000
+ ldr r0, _080E7D94 @ =gSharedMem + 0x1000
ldrb r1, [r0, 0xA]
cmp r4, r1
bcs _080E7D8E
@@ -3700,7 +3700,7 @@ _080E7D8E:
pop {r0}
bx r0
.align 2, 0
-_080E7D94: .4byte 0x02001000
+_080E7D94: .4byte gSharedMem + 0x1000
_080E7D98: .4byte 0x0000ffff
thumb_func_end sub_80E7D6C
@@ -3708,7 +3708,7 @@ _080E7D98: .4byte 0x0000ffff
sub_80E7D9C: @ 80E7D9C
push {r4,r5,lr}
movs r2, 0
- ldr r0, _080E7DCC @ =0x02001000
+ ldr r0, _080E7DCC @ =gSharedMem + 0x1000
ldrb r1, [r0, 0xA]
cmp r2, r1
bcs _080E7DC6
@@ -3733,13 +3733,13 @@ _080E7DC6:
pop {r0}
bx r0
.align 2, 0
-_080E7DCC: .4byte 0x02001000
+_080E7DCC: .4byte gSharedMem + 0x1000
thumb_func_end sub_80E7D9C
thumb_func_start sub_80E7DD0
sub_80E7DD0: @ 80E7DD0
push {r4,lr}
- ldr r2, _080E7E28 @ =0x02001000
+ ldr r2, _080E7E28 @ =gSharedMem + 0x1000
ldr r1, _080E7E2C @ =0x000099a5
adds r0, r2, r1
movs r1, 0
@@ -3781,11 +3781,11 @@ sub_80E7DD0: @ 80E7DD0
movs r0, 0
b _080E7E46
.align 2, 0
-_080E7E28: .4byte 0x02001000
+_080E7E28: .4byte gSharedMem + 0x1000
_080E7E2C: .4byte 0x000099a5
_080E7E30: .4byte 0x000099a4
_080E7E34:
- ldr r0, _080E7E4C @ =0x02001000
+ ldr r0, _080E7E4C @ =gSharedMem + 0x1000
adds r0, 0x27
ldrb r0, [r0]
adds r1, r4, 0
@@ -3797,7 +3797,7 @@ _080E7E46:
pop {r1}
bx r1
.align 2, 0
-_080E7E4C: .4byte 0x02001000
+_080E7E4C: .4byte gSharedMem + 0x1000
thumb_func_end sub_80E7DD0
thumb_func_start sub_80E7E50
@@ -3810,7 +3810,7 @@ sub_80E7E50: @ 80E7E50
sub sp, 0x8
movs r5, 0
movs r2, 0
- ldr r1, _080E7EF0 @ =0x02001000
+ ldr r1, _080E7EF0 @ =gSharedMem + 0x1000
adds r3, r1, 0
adds r3, 0x84
movs r0, 0
@@ -3827,7 +3827,7 @@ _080E7E74:
movs r1, 0
strb r1, [r0]
movs r3, 0
- ldr r6, _080E7EF4 @ =0x02001083
+ ldr r6, _080E7EF4 @ =gSharedMem + 0x1083
movs r0, 0
ldrsb r0, [r6, r0]
adds r1, r2, 0x1
@@ -3838,9 +3838,9 @@ _080E7E74:
mov r12, r6
movs r0, 0
mov r10, r0
- ldr r1, _080E7EF4 @ =0x02001083
+ ldr r1, _080E7EF4 @ =gSharedMem + 0x1083
mov r9, r1
- ldr r7, _080E7EF8 @ =0x0200100c
+ ldr r7, _080E7EF8 @ =gSharedMem + 0x100C
lsls r4, r2, 1
_080E7E9E:
lsls r1, r5, 1
@@ -3871,7 +3871,7 @@ _080E7ECE:
ldr r1, [sp, 0x4]
lsls r0, r1, 16
lsrs r2, r0, 16
- ldr r6, _080E7EFC @ =0x02001084
+ ldr r6, _080E7EFC @ =gSharedMem + 0x1084
movs r0, 0
ldrsb r0, [r6, r0]
cmp r2, r0
@@ -3886,10 +3886,10 @@ _080E7EDE:
pop {r0}
bx r0
.align 2, 0
-_080E7EF0: .4byte 0x02001000
-_080E7EF4: .4byte 0x02001083
-_080E7EF8: .4byte 0x0200100c
-_080E7EFC: .4byte 0x02001084
+_080E7EF0: .4byte gSharedMem + 0x1000
+_080E7EF4: .4byte gSharedMem + 0x1083
+_080E7EF8: .4byte gSharedMem + 0x100C
+_080E7EFC: .4byte gSharedMem + 0x1084
thumb_func_end sub_80E7E50
thumb_func_start sub_80E7F00
@@ -3903,7 +3903,7 @@ sub_80E7F00: @ 80E7F00
lsls r1, 16
lsrs r1, 16
mov r9, r1
- ldr r7, _080E7F68 @ =0x02001000
+ ldr r7, _080E7F68 @ =gSharedMem + 0x1000
adds r0, r7, 0
adds r0, 0x83
movs r4, 0
@@ -3943,7 +3943,7 @@ sub_80E7F00: @ 80E7F00
subs r0, 0x1
b _080E7F7A
.align 2, 0
-_080E7F68: .4byte 0x02001000
+_080E7F68: .4byte gSharedMem + 0x1000
_080E7F6C:
cmp r3, 0x7
bne _080E7F7C
@@ -3956,7 +3956,7 @@ _080E7F7A:
strb r0, [r1]
_080E7F7C:
movs r3, 0
- ldr r2, _080E7FA4 @ =0x02001000
+ ldr r2, _080E7FA4 @ =gSharedMem + 0x1000
lsls r0, r5, 1
add r0, r8
adds r1, r2, 0
@@ -3975,7 +3975,7 @@ _080E7F7C:
pop {r0}
bx r0
.align 2, 0
-_080E7FA4: .4byte 0x02001000
+_080E7FA4: .4byte gSharedMem + 0x1000
thumb_func_end sub_80E7F00
thumb_func_start sub_80E7FA8
@@ -3987,7 +3987,7 @@ sub_80E7FA8: @ 80E7FA8
movs r0, 0
mov r8, r0
movs r5, 0
- ldr r0, _080E8040 @ =0x02001000
+ ldr r0, _080E8040 @ =gSharedMem + 0x1000
ldrb r1, [r0, 0xA]
cmp r8, r1
bcs _080E802E
@@ -4043,7 +4043,7 @@ _080E8018:
lsls r0, 16
lsrs r0, 16
mov r8, r0
- ldr r3, _080E8040 @ =0x02001000
+ ldr r3, _080E8040 @ =gSharedMem + 0x1000
_080E8024:
lsls r0, r4, 16
lsrs r5, r0, 16
@@ -4061,7 +4061,7 @@ _080E802E:
pop {r1}
bx r1
.align 2, 0
-_080E8040: .4byte 0x02001000
+_080E8040: .4byte gSharedMem + 0x1000
_080E8044: .4byte 0x00009e14
_080E8048: .4byte 0x00009e41
_080E804C: .4byte 0xffff61ec
@@ -4072,7 +4072,7 @@ _080E8050: .4byte 0xffff61f8
sub_80E8054: @ 80E8054
push {r4,lr}
movs r1, 0
- ldr r2, _080E8078 @ =0x02001000
+ ldr r2, _080E8078 @ =gSharedMem + 0x1000
ldrb r0, [r2, 0xA]
cmp r1, r0
bcs _080E808A
@@ -4089,7 +4089,7 @@ _080E8068:
movs r0, 0
b _080E808C
.align 2, 0
-_080E8078: .4byte 0x02001000
+_080E8078: .4byte gSharedMem + 0x1000
_080E807C: .4byte 0x0000ffff
_080E8080:
adds r0, r1, 0x1
@@ -4109,7 +4109,7 @@ _080E808C:
sub_80E8094: @ 80E8094
push {r4-r7,lr}
movs r5, 0
- ldr r6, _080E80C4 @ =0x0200ae14
+ ldr r6, _080E80C4 @ =gSharedMem + 0xAE14
adds r7, r6, 0
adds r7, 0x2D
_080E809E:
@@ -4131,7 +4131,7 @@ _080E809E:
adds r4, r7, 0
b _080E80D8
.align 2, 0
-_080E80C4: .4byte 0x0200ae14
+_080E80C4: .4byte gSharedMem + 0xAE14
_080E80C8: .4byte 0xffff61f8
_080E80CC: .4byte gMysteryEventPhrase
_080E80D0:
@@ -4179,7 +4179,7 @@ sub_80E810C: @ 80E810C
mov r5, r8
push {r5-r7}
movs r5, 0
- ldr r6, _080E8198 @ =0x0200ae6e
+ ldr r6, _080E8198 @ =gSharedMem + 0xAE6E
ldr r0, _080E819C @ =0xffff6192
adds r0, r6
mov r9, r0
@@ -4243,7 +4243,7 @@ _080E818A:
lsrs r0, 24
b _080E81B2
.align 2, 0
-_080E8198: .4byte 0x0200ae6e
+_080E8198: .4byte gSharedMem + 0xAE6E
_080E819C: .4byte 0xffff6192
_080E81A0: .4byte gBerryMasterWifePhrases
_080E81A4: .4byte gBerryMasterWifePhrases + 0x2
@@ -4267,7 +4267,7 @@ _080E81B2:
sub_80E81C0: @ 80E81C0
push {r4,lr}
ldr r0, _080E81EC @ =gStringVar2
- ldr r4, _080E81F0 @ =0x02001000
+ ldr r4, _080E81F0 @ =gSharedMem + 0x1000
ldr r2, _080E81F4 @ =0x00009c7c
adds r1, r4, r2
ldrh r1, [r1]
@@ -4286,7 +4286,7 @@ sub_80E81C0: @ 80E81C0
bx r0
.align 2, 0
_080E81EC: .4byte gStringVar2
-_080E81F0: .4byte 0x02001000
+_080E81F0: .4byte gSharedMem + 0x1000
_080E81F4: .4byte 0x00009c7c
_080E81F8: .4byte 0x00009c7e
thumb_func_end sub_80E81C0
diff --git a/asm/field_weather.s b/asm/field_weather.s
index 92d2ffab2..d42926db8 100644
--- a/asm/field_weather.s
+++ b/asm/field_weather.s
@@ -5,5258 +5,6 @@
.text
- thumb_func_start sub_807CEBC
-sub_807CEBC: @ 807CEBC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x8
- lsls r0, 24
- lsrs r3, r0, 24
- adds r4, r3, 0
- lsls r1, 24
- lsrs r1, 24
- mov r9, r1
- lsls r2, 24
- asrs r0, r2, 24
- cmp r0, 0
- bgt _0807CEDE
- b _0807D048
-_0807CEDE:
- subs r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp]
- lsls r5, r3, 4
- adds r0, r1, r3
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- cmp r4, r9
- bcc _0807CEF6
- b _0807D1A2
-_0807CEF6:
- ldr r1, [sp]
- lsls r0, r1, 24
- asrs r0, 19
- str r0, [sp, 0x4]
-_0807CEFE:
- ldr r0, _0807CF30 @ =gUnknown_030006DC
- ldr r0, [r0]
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, 0
- bne _0807CF3C
- lsls r1, r5, 1
- ldr r0, _0807CF34 @ =gPlttBufferUnfaded
- adds r0, r1, r0
- ldr r2, _0807CF38 @ =gPlttBufferFaded
- adds r1, r2
- movs r2, 0x8
- bl CpuFastSet
- adds r0, r5, 0
- adds r0, 0x10
- lsls r0, 16
- lsrs r5, r0, 16
- mov r2, r9
- lsls r2, 16
- mov r8, r2
- adds r4, 0x1
- mov r12, r4
- b _0807D032
- .align 2, 0
-_0807CF30: .4byte gUnknown_030006DC
-_0807CF34: .4byte gPlttBufferUnfaded
-_0807CF38: .4byte gPlttBufferFaded
-_0807CF3C:
- cmp r0, 0x2
- beq _0807CF50
- adds r1, r4, 0
- subs r1, 0x10
- ldr r2, _0807CF54 @ =gUnknown_0202F7E8
- ldr r3, _0807CF58 @ =0x000006d5
- adds r0, r2, r3
- ldrb r0, [r0]
- cmp r1, r0
- bne _0807CF60
-_0807CF50:
- ldr r0, _0807CF5C @ =gUnknown_0202FC48
- b _0807CF66
- .align 2, 0
-_0807CF54: .4byte gUnknown_0202F7E8
-_0807CF58: .4byte 0x000006d5
-_0807CF5C: .4byte gUnknown_0202FC48
-_0807CF60:
- movs r3, 0x80
- lsls r3, 2
- adds r0, r2, r3
-_0807CF66:
- ldr r1, [sp, 0x4]
- adds r6, r1, r0
- cmp r4, 0x10
- beq _0807CF72
- cmp r4, 0x1B
- bls _0807CFE2
-_0807CF72:
- movs r7, 0
- mov r2, r9
- lsls r2, 16
- mov r8, r2
- adds r4, 0x1
- mov r12, r4
- ldr r3, _0807CF9C @ =gPlttBufferFaded
- mov r10, r3
-_0807CF82:
- adds r2, r5, 0
- lsls r0, r5, 1
- ldr r4, _0807CFA0 @ =gPlttBufferUnfaded
- adds r1, r0, r4
- ldrh r0, [r1]
- ldr r3, _0807CFA4 @ =0x00002d9f
- cmp r0, r3
- bne _0807CFA8
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- b _0807CFD6
- .align 2, 0
-_0807CF9C: .4byte gPlttBufferFaded
-_0807CFA0: .4byte gPlttBufferUnfaded
-_0807CFA4: .4byte 0x00002d9f
-_0807CFA8:
- ldr r1, [r1]
- lsls r0, r1, 27
- lsrs r0, 27
- adds r0, r6, r0
- ldrb r4, [r0]
- lsls r0, r1, 22
- lsrs r0, 27
- adds r0, r6, r0
- ldrb r3, [r0]
- lsls r1, 17
- lsrs r1, 27
- adds r1, r6, r1
- ldrb r1, [r1]
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- lsls r2, 1
- add r2, r10
- lsls r0, r1, 10
- lsls r1, r3, 5
- orrs r0, r1
- orrs r0, r4
- strh r0, [r2]
-_0807CFD6:
- adds r0, r7, 0x1
- lsls r0, 16
- lsrs r7, r0, 16
- cmp r7, 0xF
- bls _0807CF82
- b _0807D032
-_0807CFE2:
- movs r7, 0
- mov r0, r9
- lsls r0, 16
- mov r8, r0
- adds r4, 0x1
- mov r12, r4
- ldr r1, _0807D040 @ =gPlttBufferFaded
- mov r10, r1
-_0807CFF2:
- adds r2, r5, 0
- lsls r0, r2, 1
- ldr r3, _0807D044 @ =gPlttBufferUnfaded
- adds r0, r3
- ldr r1, [r0]
- lsls r0, r1, 27
- lsrs r0, 27
- adds r0, r6, r0
- ldrb r4, [r0]
- lsls r0, r1, 22
- lsrs r0, 27
- adds r0, r6, r0
- ldrb r3, [r0]
- lsls r1, 17
- lsrs r1, 27
- adds r1, r6, r1
- ldrb r1, [r1]
- adds r0, r2, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- lsls r2, 1
- add r2, r10
- lsls r0, r1, 10
- lsls r1, r3, 5
- orrs r0, r1
- orrs r0, r4
- strh r0, [r2]
- adds r0, r7, 0x1
- lsls r0, 16
- lsrs r7, r0, 16
- cmp r7, 0xF
- bls _0807CFF2
-_0807D032:
- mov r4, r12
- lsls r0, r4, 16
- lsrs r4, r0, 16
- cmp r0, r8
- bcs _0807D03E
- b _0807CEFE
-_0807D03E:
- b _0807D1A2
- .align 2, 0
-_0807D040: .4byte gPlttBufferFaded
-_0807D044: .4byte gPlttBufferUnfaded
-_0807D048:
- cmp r0, 0
- blt _0807D04E
- b _0807D190
-_0807D04E:
- mvns r0, r0
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp]
- lsls r5, r3, 4
- adds r0, r1, r3
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- adds r4, r3, 0
- cmp r4, r9
- bcc _0807D068
- b _0807D1A2
-_0807D068:
- ldr r0, _0807D098 @ =gUnknown_030006DC
- ldr r0, [r0]
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, 0
- bne _0807D0A4
- lsls r1, r5, 1
- ldr r0, _0807D09C @ =gPlttBufferUnfaded
- adds r0, r1, r0
- ldr r2, _0807D0A0 @ =gPlttBufferFaded
- adds r1, r2
- movs r2, 0x8
- bl CpuFastSet
- adds r0, r5, 0
- adds r0, 0x10
- lsls r0, 16
- lsrs r5, r0, 16
- mov r0, r9
- lsls r0, 16
- mov r8, r0
- adds r4, 0x1
- mov r12, r4
- b _0807D174
- .align 2, 0
-_0807D098: .4byte gUnknown_030006DC
-_0807D09C: .4byte gPlttBufferUnfaded
-_0807D0A0: .4byte gPlttBufferFaded
-_0807D0A4:
- cmp r4, 0x10
- beq _0807D0AC
- cmp r4, 0x1B
- bls _0807D11C
-_0807D0AC:
- movs r7, 0
- mov r1, r9
- lsls r1, 16
- mov r8, r1
- adds r4, 0x1
- mov r12, r4
- ldr r2, _0807D10C @ =0x02000000
- mov r10, r2
- ldr r3, [sp]
- lsls r0, r3, 24
- asrs r6, r0, 11
-_0807D0C2:
- lsls r1, r5, 1
- ldr r4, _0807D110 @ =gPlttBufferUnfaded
- adds r0, r1, r4
- ldrh r0, [r0]
- lsls r4, r0, 16
- ldr r2, _0807D114 @ =0x00002d9f
- cmp r0, r2
- beq _0807D0FA
- ldr r3, _0807D118 @ =gPlttBufferFaded
- adds r3, r1, r3
- lsrs r0, r4, 17
- movs r1, 0xF
- ands r0, r1
- lsrs r1, r4, 18
- movs r2, 0xF0
- ands r1, r2
- orrs r0, r1
- lsrs r1, r4, 19
- movs r4, 0xF0
- lsls r4, 4
- adds r2, r4, 0
- ands r1, r2
- orrs r0, r1
- lsls r0, 1
- adds r0, r6
- add r0, r10
- ldrh r0, [r0]
- strh r0, [r3]
-_0807D0FA:
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- adds r0, r7, 0x1
- lsls r0, 16
- lsrs r7, r0, 16
- cmp r7, 0xF
- bls _0807D0C2
- b _0807D174
- .align 2, 0
-_0807D10C: .4byte 0x02000000
-_0807D110: .4byte gPlttBufferUnfaded
-_0807D114: .4byte 0x00002d9f
-_0807D118: .4byte gPlttBufferFaded
-_0807D11C:
- movs r7, 0
- ldr r1, [sp]
- lsls r0, r1, 24
- mov r2, r9
- lsls r2, 16
- mov r8, r2
- adds r4, 0x1
- mov r12, r4
- ldr r3, _0807D184 @ =0x02000000
- mov r10, r3
- asrs r6, r0, 11
-_0807D132:
- lsls r0, r5, 1
- ldr r1, _0807D188 @ =gPlttBufferFaded
- adds r4, r0, r1
- ldr r2, _0807D18C @ =gPlttBufferUnfaded
- adds r0, r2
- ldrh r3, [r0]
- lsls r3, 16
- lsrs r0, r3, 17
- movs r1, 0xF
- ands r0, r1
- lsrs r1, r3, 18
- movs r2, 0xF0
- ands r1, r2
- orrs r0, r1
- lsrs r3, 19
- movs r2, 0xF0
- lsls r2, 4
- adds r1, r2, 0
- ands r3, r1
- orrs r0, r3
- lsls r0, 1
- adds r0, r6
- add r0, r10
- ldrh r0, [r0]
- strh r0, [r4]
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- adds r0, r7, 0x1
- lsls r0, 16
- lsrs r7, r0, 16
- cmp r7, 0xF
- bls _0807D132
-_0807D174:
- mov r3, r12
- lsls r0, r3, 16
- lsrs r4, r0, 16
- cmp r0, r8
- bcs _0807D180
- b _0807D068
-_0807D180:
- b _0807D1A2
- .align 2, 0
-_0807D184: .4byte 0x02000000
-_0807D188: .4byte gPlttBufferFaded
-_0807D18C: .4byte gPlttBufferUnfaded
-_0807D190:
- lsls r1, r4, 5
- ldr r0, _0807D1B4 @ =gPlttBufferUnfaded
- adds r0, r1, r0
- ldr r2, _0807D1B8 @ =gPlttBufferFaded
- adds r1, r2
- mov r4, r9
- lsls r2, r4, 3
- bl CpuFastSet
-_0807D1A2:
- add sp, 0x8
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0807D1B4: .4byte gPlttBufferUnfaded
-_0807D1B8: .4byte gPlttBufferFaded
- thumb_func_end sub_807CEBC
-
- thumb_func_start sub_807D1BC
-sub_807D1BC: @ 807D1BC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x14
- ldr r4, [sp, 0x34]
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- mov r10, r1
- lsls r3, 24
- lsrs r3, 24
- mov r8, r3
- mov r1, sp
- strh r4, [r1]
- ldr r1, [sp]
- lsls r3, r1, 27
- lsrs r3, 27
- str r3, [sp, 0x4]
- lsls r3, r1, 22
- lsrs r3, 27
- str r3, [sp, 0x8]
- lsls r1, 17
- lsrs r1, 27
- str r1, [sp, 0xC]
- lsls r6, r0, 4
- mov r3, r10
- adds r1, r3, r0
- lsls r1, 24
- lsrs r1, 24
- mov r10, r1
- lsls r2, 24
- movs r1, 0xFF
- lsls r1, 24
- adds r2, r1
- lsrs r2, 24
- adds r4, r0, 0
- cmp r4, r10
- bcs _0807D2E8
- lsls r0, r2, 24
- asrs r0, 19
- str r0, [sp, 0x10]
-_0807D214:
- ldr r0, _0807D244 @ =gUnknown_030006DC
- ldr r0, [r0]
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, 0
- bne _0807D248
- mov r0, sp
- ldrh r3, [r0]
- adds r0, r6, 0
- movs r1, 0x10
- mov r2, r8
- bl BlendPalette
- adds r0, r6, 0
- adds r0, 0x10
- lsls r0, 16
- lsrs r6, r0, 16
- mov r3, r10
- lsls r3, 16
- mov r9, r3
- adds r4, 0x1
- mov r12, r4
- b _0807D2DE
- .align 2, 0
-_0807D244: .4byte gUnknown_030006DC
-_0807D248:
- cmp r0, 0x1
- bne _0807D258
- ldr r0, _0807D254 @ =gUnknown_0202F9E8
- ldr r1, [sp, 0x10]
- adds r5, r1, r0
- b _0807D25E
- .align 2, 0
-_0807D254: .4byte gUnknown_0202F9E8
-_0807D258:
- ldr r0, _0807D2F8 @ =gUnknown_0202FC48
- ldr r3, [sp, 0x10]
- adds r5, r3, r0
-_0807D25E:
- movs r7, 0
- mov r0, r10
- lsls r0, 16
- mov r9, r0
- adds r4, 0x1
- mov r12, r4
-_0807D26A:
- adds r4, r6, 0
- lsls r0, r4, 1
- ldr r1, _0807D2FC @ =gPlttBufferUnfaded
- adds r0, r1
- ldr r1, [r0]
- lsls r0, r1, 27
- lsrs r0, 27
- adds r0, r5, r0
- ldrb r3, [r0]
- lsls r0, r1, 22
- lsrs r0, 27
- adds r0, r5, r0
- ldrb r2, [r0]
- lsls r1, 17
- lsrs r1, 27
- adds r1, r5, r1
- ldrb r1, [r1]
- ldr r6, [sp, 0x4]
- subs r0, r6, r3
- mov r6, r8
- muls r6, r0
- adds r0, r6, 0
- asrs r0, 4
- adds r3, r0
- lsls r3, 24
- lsrs r3, 24
- ldr r6, [sp, 0x8]
- subs r0, r6, r2
- mov r6, r8
- muls r6, r0
- adds r0, r6, 0
- asrs r0, 4
- adds r2, r0
- lsls r2, 24
- ldr r6, [sp, 0xC]
- subs r0, r6, r1
- mov r6, r8
- muls r6, r0
- adds r0, r6, 0
- asrs r0, 4
- adds r1, r0
- lsls r1, 24
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- lsls r4, 1
- ldr r0, _0807D300 @ =gPlttBufferFaded
- adds r4, r0
- lsrs r1, 14
- lsrs r2, 19
- orrs r1, r2
- orrs r1, r3
- strh r1, [r4]
- adds r0, r7, 0x1
- lsls r0, 16
- lsrs r7, r0, 16
- cmp r7, 0xF
- bls _0807D26A
-_0807D2DE:
- mov r1, r12
- lsls r0, r1, 16
- lsrs r4, r0, 16
- cmp r0, r9
- bcc _0807D214
-_0807D2E8:
- add sp, 0x14
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0807D2F8: .4byte gUnknown_0202FC48
-_0807D2FC: .4byte gPlttBufferUnfaded
-_0807D300: .4byte gPlttBufferFaded
- thumb_func_end sub_807D1BC
-
- thumb_func_start sub_807D304
-sub_807D304: @ 807D304
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x10
- lsls r1, 24
- lsrs r6, r1, 24
- mov r1, sp
- strh r2, [r1]
- lsls r0, 24
- movs r1, 0xFF
- lsls r1, 24
- eors r0, r1
- lsrs r0, 24
- str r0, [sp, 0x4]
- ldr r0, [sp]
- lsls r1, r0, 27
- lsrs r1, 27
- str r1, [sp, 0x8]
- lsls r1, r0, 22
- lsrs r1, 27
- str r1, [sp, 0xC]
- lsls r0, 17
- lsrs r0, 27
- mov r10, r0
- movs r5, 0
- movs r4, 0
-_0807D33C:
- ldr r0, _0807D364 @ =gUnknown_030006DC
- ldr r0, [r0]
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, 0
- bne _0807D368
- mov r0, sp
- ldrh r3, [r0]
- adds r0, r5, 0
- movs r1, 0x10
- adds r2, r6, 0
- bl BlendPalette
- adds r0, r5, 0
- adds r0, 0x10
- lsls r0, 16
- lsrs r5, r0, 16
- adds r4, 0x1
- mov r8, r4
- b _0807D3FE
- .align 2, 0
-_0807D364: .4byte gUnknown_030006DC
-_0807D368:
- movs r0, 0
- mov r12, r0
- ldr r1, [sp, 0x4]
- lsls r0, r1, 24
- adds r4, 0x1
- mov r8, r4
- movs r7, 0x1E
- asrs r0, 11
- mov r9, r0
-_0807D37A:
- adds r4, r5, 0
- lsls r0, r4, 1
- ldr r5, _0807D418 @ =gPlttBufferUnfaded
- adds r0, r5
- ldr r0, [r0]
- lsls r2, r0, 27
- lsrs r2, 27
- lsls r1, r0, 22
- lsrs r1, 27
- lsls r0, 17
- lsrs r0, 27
- ands r0, r7
- lsls r0, 7
- ands r1, r7
- lsls r1, 3
- orrs r0, r1
- ands r2, r7
- lsls r0, 1
- orrs r0, r2
- add r0, r9
- ldr r1, _0807D41C @ =0x02000000
- adds r0, r1
- ldr r1, [r0]
- lsls r3, r1, 27
- lsrs r3, 27
- lsls r2, r1, 22
- lsrs r2, 27
- lsls r1, 17
- lsrs r1, 27
- ldr r5, [sp, 0x8]
- subs r0, r5, r3
- muls r0, r6
- asrs r0, 4
- adds r3, r0
- lsls r3, 24
- lsrs r3, 24
- ldr r5, [sp, 0xC]
- subs r0, r5, r2
- muls r0, r6
- asrs r0, 4
- adds r2, r0
- lsls r2, 24
- mov r5, r10
- subs r0, r5, r1
- muls r0, r6
- asrs r0, 4
- adds r1, r0
- lsls r1, 24
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- lsls r4, 1
- ldr r0, _0807D420 @ =gPlttBufferFaded
- adds r4, r0
- lsrs r1, 14
- lsrs r2, 19
- orrs r1, r2
- orrs r1, r3
- strh r1, [r4]
- mov r0, r12
- adds r0, 0x1
- lsls r0, 16
- lsrs r0, 16
- mov r12, r0
- cmp r0, 0xF
- bls _0807D37A
-_0807D3FE:
- mov r1, r8
- lsls r0, r1, 16
- lsrs r4, r0, 16
- cmp r4, 0x1F
- bls _0807D33C
- add sp, 0x10
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0807D418: .4byte gPlttBufferUnfaded
-_0807D41C: .4byte 0x02000000
-_0807D420: .4byte gPlttBufferFaded
- thumb_func_end sub_807D304
-
- thumb_func_start sub_807D424
-sub_807D424: @ 807D424
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0xC
- adds r3, r1, 0
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r3, 16
- lsrs r3, 16
- mov r0, sp
- strh r3, [r0]
- movs r1, 0x80
- lsls r1, 1
- movs r0, 0
- adds r2, r7, 0
- bl BlendPalette
- ldr r0, [sp]
- lsls r1, r0, 27
- lsrs r1, 27
- str r1, [sp, 0x4]
- lsls r1, r0, 22
- lsrs r1, 27
- str r1, [sp, 0x8]
- lsls r0, 17
- lsrs r0, 27
- mov r10, r0
- movs r4, 0x10
-_0807D460:
- lsls r0, r4, 24
- lsrs r0, 24
- bl sub_807D574
- lsls r0, 24
- cmp r0, 0
- beq _0807D510
- adds r0, r4, 0x1
- lsls r1, r0, 20
- lsrs r1, 16
- mov r12, r1
- lsls r1, r4, 20
- lsrs r6, r1, 16
- mov r9, r0
- cmp r6, r12
- bcs _0807D524
- movs r0, 0x1C
- mov r8, r0
-_0807D484:
- lsls r5, r6, 1
- ldr r0, _0807D508 @ =gPlttBufferUnfaded
- adds r0, r5, r0
- ldr r2, [r0]
- lsls r4, r2, 27
- lsrs r4, 27
- lsls r3, r2, 22
- lsrs r3, 27
- lsls r2, 17
- lsrs r2, 27
- mov r0, r8
- subs r1, r0, r4
- lsls r0, r1, 1
- adds r0, r1
- asrs r0, 2
- adds r4, r0
- lsls r4, 24
- lsrs r4, 24
- movs r1, 0x1F
- subs r1, r3
- lsls r0, r1, 1
- adds r0, r1
- asrs r0, 2
- adds r3, r0
- lsls r3, 24
- lsrs r3, 24
- mov r0, r8
- subs r1, r0, r2
- lsls r0, r1, 1
- adds r0, r1
- asrs r0, 2
- adds r2, r0
- lsls r2, 24
- lsrs r2, 24
- ldr r1, [sp, 0x4]
- subs r0, r1, r4
- muls r0, r7
- asrs r0, 4
- adds r4, r0
- lsls r4, 24
- lsrs r4, 24
- ldr r1, [sp, 0x8]
- subs r0, r1, r3
- muls r0, r7
- asrs r0, 4
- adds r3, r0
- lsls r3, 24
- mov r1, r10
- subs r0, r1, r2
- muls r0, r7
- asrs r0, 4
- adds r2, r0
- lsls r2, 24
- ldr r0, _0807D50C @ =gPlttBufferFaded
- adds r5, r0
- lsrs r2, 14
- lsrs r3, 19
- orrs r2, r3
- orrs r2, r4
- strh r2, [r5]
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- cmp r6, r12
- bcc _0807D484
- b _0807D524
- .align 2, 0
-_0807D508: .4byte gPlttBufferUnfaded
-_0807D50C: .4byte gPlttBufferFaded
-_0807D510:
- lsls r0, r4, 20
- lsrs r0, 16
- mov r1, sp
- ldrh r3, [r1]
- movs r1, 0x10
- adds r2, r7, 0
- bl BlendPalette
- adds r4, 0x1
- mov r9, r4
-_0807D524:
- mov r1, r9
- lsls r0, r1, 16
- lsrs r4, r0, 16
- cmp r4, 0x1F
- bls _0807D460
- add sp, 0xC
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_807D424
-
- thumb_func_start sub_807D540
-sub_807D540: @ 807D540
- push {r4,lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r3, _0807D568 @ =gUnknown_0202F7E8
- ldr r0, _0807D56C @ =0x000006fa
- adds r1, r3, r0
- ldrb r0, [r1]
- cmp r0, 0x5
- bhi _0807D562
- ldr r4, _0807D570 @ =0x000006f4
- adds r0, r3, r4
- ldrb r3, [r1]
- adds r0, r3
- strb r2, [r0]
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
-_0807D562:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0807D568: .4byte gUnknown_0202F7E8
-_0807D56C: .4byte 0x000006fa
-_0807D570: .4byte 0x000006f4
- thumb_func_end sub_807D540
-
- thumb_func_start sub_807D574
-sub_807D574: @ 807D574
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r3, r0, 24
- movs r1, 0
- ldr r2, _0807D59C @ =gUnknown_0202F7E8
- ldr r4, _0807D5A0 @ =0x000006fa
- adds r0, r2, r4
- ldrb r0, [r0]
- cmp r1, r0
- bcs _0807D5B2
- ldr r5, _0807D5A4 @ =0x000006f4
- adds r4, r2, r5
- adds r2, r0, 0
-_0807D58E:
- adds r0, r1, r4
- ldrb r0, [r0]
- cmp r0, r3
- bne _0807D5A8
- movs r0, 0x1
- b _0807D5B4
- .align 2, 0
-_0807D59C: .4byte gUnknown_0202F7E8
-_0807D5A0: .4byte 0x000006fa
-_0807D5A4: .4byte 0x000006f4
-_0807D5A8:
- adds r0, r1, 0x1
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, r2
- bcc _0807D58E
-_0807D5B2:
- movs r0, 0
-_0807D5B4:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_807D574
-
- thumb_func_start sub_807D5BC
-sub_807D5BC: @ 807D5BC
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r5, _0807D5E8 @ =gUnknown_0202F7E8
- ldr r1, _0807D5EC @ =0x000006c6
- adds r0, r5, r1
- ldrb r0, [r0]
- cmp r0, 0x3
- bne _0807D5E2
- lsls r2, r4, 24
- asrs r2, 24
- movs r0, 0
- movs r1, 0x20
- bl sub_807CEBC
- movs r1, 0xD8
- lsls r1, 3
- adds r0, r5, r1
- strb r4, [r0]
-_0807D5E2:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0807D5E8: .4byte gUnknown_0202F7E8
-_0807D5EC: .4byte 0x000006c6
- thumb_func_end sub_807D5BC
-
- thumb_func_start sub_807D5F0
-sub_807D5F0: @ 807D5F0
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r1, 24
- lsrs r5, r1, 24
- lsls r2, 24
- lsrs r6, r2, 24
- ldr r3, _0807D638 @ =gUnknown_0202F7E8
- ldr r0, _0807D63C @ =0x000006c6
- adds r2, r3, r0
- ldrb r0, [r2]
- cmp r0, 0x3
- bne _0807D630
- movs r1, 0
- strb r1, [r2]
- movs r2, 0xD8
- lsls r2, 3
- adds r0, r3, r2
- strb r4, [r0]
- adds r2, 0x1
- adds r0, r3, r2
- strb r5, [r0]
- adds r2, 0x2
- adds r0, r3, r2
- strb r1, [r0]
- ldr r1, _0807D640 @ =0x000006c2
- adds r0, r3, r1
- strb r6, [r0]
- lsls r0, r4, 24
- asrs r0, 24
- bl sub_807D5BC
-_0807D630:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0807D638: .4byte gUnknown_0202F7E8
-_0807D63C: .4byte 0x000006c6
-_0807D640: .4byte 0x000006c2
- thumb_func_end sub_807D5F0
-
- thumb_func_start fade_screen
-fade_screen: @ 807D644
- push {r4,r5,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r0, 24
- adds r2, r0, 0
- lsls r1, 24
- lsrs r5, r1, 24
- cmp r0, 0x1
- beq _0807D67C
- cmp r0, 0x1
- bgt _0807D660
- cmp r0, 0
- beq _0807D66A
- b _0807D758
-_0807D660:
- cmp r2, 0x2
- beq _0807D670
- cmp r2, 0x3
- beq _0807D680
- b _0807D758
-_0807D66A:
- movs r4, 0
- movs r1, 0
- b _0807D684
-_0807D670:
- ldr r4, _0807D678 @ =0x0000ffff
- movs r1, 0
- b _0807D684
- .align 2, 0
-_0807D678: .4byte 0x0000ffff
-_0807D67C:
- movs r4, 0
- b _0807D682
-_0807D680:
- ldr r4, _0807D6A4 @ =0x0000ffff
-_0807D682:
- movs r1, 0x1
-_0807D684:
- ldr r0, _0807D6A8 @ =gUnknown_0202F7E8
- movs r2, 0xDA
- lsls r2, 3
- adds r0, r2
- ldrb r0, [r0]
- cmp r0, 0x3
- blt _0807D6AC
- cmp r0, 0x6
- ble _0807D69E
- cmp r0, 0xD
- bgt _0807D6AC
- cmp r0, 0xB
- blt _0807D6AC
-_0807D69E:
- movs r2, 0x1
- b _0807D6AE
- .align 2, 0
-_0807D6A4: .4byte 0x0000ffff
-_0807D6A8: .4byte gUnknown_0202F7E8
-_0807D6AC:
- movs r2, 0
-_0807D6AE:
- cmp r1, 0
- beq _0807D6F0
- cmp r2, 0
- beq _0807D6C2
- ldr r0, _0807D6E0 @ =gPlttBufferFaded
- ldr r1, _0807D6E4 @ =gPlttBufferUnfaded
- movs r2, 0x80
- lsls r2, 1
- bl CpuFastSet
-_0807D6C2:
- movs r0, 0x1
- negs r0, r0
- lsls r1, r5, 24
- asrs r1, 24
- str r4, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, _0807D6E8 @ =gUnknown_0202F7E8
- ldr r3, _0807D6EC @ =0x000006c6
- adds r0, r3
- movs r1, 0x2
- strb r1, [r0]
- b _0807D758
- .align 2, 0
-_0807D6E0: .4byte gPlttBufferFaded
-_0807D6E4: .4byte gPlttBufferUnfaded
-_0807D6E8: .4byte gUnknown_0202F7E8
-_0807D6EC: .4byte 0x000006c6
-_0807D6F0:
- ldr r1, _0807D708 @ =gUnknown_0202F7E8
- ldr r3, _0807D70C @ =0x000006c4
- adds r0, r1, r3
- strh r4, [r0]
- cmp r2, 0
- beq _0807D714
- ldr r0, _0807D710 @ =0x000006c7
- adds r1, r0
- movs r0, 0
- strb r0, [r1]
- b _0807D726
- .align 2, 0
-_0807D708: .4byte gUnknown_0202F7E8
-_0807D70C: .4byte 0x000006c4
-_0807D710: .4byte 0x000006c7
-_0807D714:
- movs r0, 0x1
- negs r0, r0
- lsls r1, r5, 24
- asrs r1, 24
- str r4, [sp]
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
-_0807D726:
- ldr r4, _0807D760 @ =gUnknown_0202F7E8
- ldr r1, _0807D764 @ =0x000006c6
- adds r0, r4, r1
- movs r1, 0
- movs r5, 0x1
- strb r5, [r0]
- ldr r2, _0807D768 @ =0x000006ca
- adds r0, r4, r2
- strb r5, [r0]
- ldr r3, _0807D76C @ =0x000006cb
- adds r0, r4, r3
- strb r1, [r0]
- movs r1, 0xE6
- lsls r1, 3
- adds r0, r4, r1
- ldrb r0, [r0]
- adds r2, 0x68
- adds r1, r4, r2
- ldrb r1, [r1]
- bl sub_807DB64
- movs r3, 0xD9
- lsls r3, 3
- adds r4, r3
- strb r5, [r4]
-_0807D758:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0807D760: .4byte gUnknown_0202F7E8
-_0807D764: .4byte 0x000006c6
-_0807D768: .4byte 0x000006ca
-_0807D76C: .4byte 0x000006cb
- thumb_func_end fade_screen
-
- thumb_func_start sub_807D770
-sub_807D770: @ 807D770
- ldr r0, _0807D784 @ =gUnknown_0202F7E8
- ldr r1, _0807D788 @ =0x000006c6
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x1
- eors r1, r0
- negs r0, r1
- orrs r0, r1
- lsrs r0, 31
- bx lr
- .align 2, 0
-_0807D784: .4byte gUnknown_0202F7E8
-_0807D788: .4byte 0x000006c6
- thumb_func_end sub_807D770
-
- thumb_func_start sub_807D78C
-sub_807D78C: @ 807D78C
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r0, 8
- movs r1, 0x80
- lsls r1, 13
- adds r0, r1
- lsrs r4, r0, 16
- ldr r5, _0807D7CC @ =gUnknown_0202F7E8
- ldr r2, _0807D7D0 @ =0x000006c6
- adds r0, r5, r2
- ldrb r0, [r0]
- adds r1, r5, 0
- cmp r0, 0x1
- beq _0807D7D4
- cmp r0, 0x2
- beq _0807D820
- adds r2, 0xA
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0x6
- beq _0807D858
- lsls r0, r4, 24
- lsrs r0, 24
- subs r2, 0x10
- adds r1, r2
- movs r2, 0
- ldrsb r2, [r1, r2]
- movs r1, 0x1
- bl sub_807CEBC
- b _0807D868
- .align 2, 0
-_0807D7CC: .4byte gUnknown_0202F7E8
-_0807D7D0: .4byte 0x000006c6
-_0807D7D4:
- ldr r2, _0807D814 @ =0x000006ca
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- beq _0807D868
- adds r2, 0x6
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0x6
- bne _0807D7F0
- lsls r0, r4, 24
- lsrs r0, 24
- bl sub_807D540
-_0807D7F0:
- lsls r0, r4, 20
- lsrs r4, r0, 16
- movs r2, 0
- ldr r6, _0807D818 @ =gPlttBufferFaded
- ldr r0, _0807D81C @ =0x000006c4
- adds r3, r5, r0
-_0807D7FC:
- adds r0, r4, r2
- lsls r0, 1
- adds r0, r6
- ldrh r1, [r3]
- strh r1, [r0]
- adds r0, r2, 0x1
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r2, 0xF
- bls _0807D7FC
- b _0807D868
- .align 2, 0
-_0807D814: .4byte 0x000006ca
-_0807D818: .4byte gPlttBufferFaded
-_0807D81C: .4byte 0x000006c4
-_0807D820:
- lsls r0, r4, 20
- lsrs r4, r0, 16
- lsls r1, r4, 1
- ldr r0, _0807D84C @ =gPlttBufferFaded
- adds r0, r1, r0
- ldr r2, _0807D850 @ =gPlttBufferUnfaded
- adds r1, r2
- movs r2, 0x8
- bl CpuFastSet
- ldr r0, _0807D854 @ =gPaletteFade
- ldrh r2, [r0, 0x4]
- lsls r2, 21
- lsrs r2, 27
- ldrh r3, [r0, 0x6]
- lsls r3, 17
- lsrs r3, 17
- adds r0, r4, 0
- movs r1, 0x10
- bl BlendPalette
- b _0807D868
- .align 2, 0
-_0807D84C: .4byte gPlttBufferFaded
-_0807D850: .4byte gPlttBufferUnfaded
-_0807D854: .4byte gPaletteFade
-_0807D858:
- lsls r0, r4, 20
- lsrs r4, r0, 16
- ldr r3, _0807D870 @ =0x000073fc
- adds r0, r4, 0
- movs r1, 0x10
- movs r2, 0xC
- bl BlendPalette
-_0807D868:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0807D870: .4byte 0x000073fc
- thumb_func_end sub_807D78C
-
- thumb_func_start sub_807D874
-sub_807D874: @ 807D874
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0807D890 @ =gUnknown_0202F7E8
- movs r2, 0xD8
- lsls r2, 3
- adds r1, r2
- movs r2, 0
- ldrsb r2, [r1, r2]
- movs r1, 0x1
- bl sub_807CEBC
- pop {r0}
- bx r0
- .align 2, 0
-_0807D890: .4byte gUnknown_0202F7E8
- thumb_func_end sub_807D874
-
- thumb_func_start unref_sub_807D894
-unref_sub_807D894: @ 807D894
- push {lr}
- ldr r1, _0807D8A8 @ =gUnknown_0202F7E8
- ldr r2, _0807D8AC @ =0x000006c6
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _0807D8B0
- movs r0, 0
- b _0807D8B6
- .align 2, 0
-_0807D8A8: .4byte gUnknown_0202F7E8
-_0807D8AC: .4byte 0x000006c6
-_0807D8B0:
- ldr r2, _0807D8BC @ =0x000006ca
- adds r0, r1, r2
- ldrb r0, [r0]
-_0807D8B6:
- pop {r1}
- bx r1
- .align 2, 0
-_0807D8BC: .4byte 0x000006ca
- thumb_func_end unref_sub_807D894
-
- thumb_func_start sub_807D8C0
-sub_807D8C0: @ 807D8C0
- push {r4,lr}
- ldr r4, _0807D8E8 @ =gUnknown_0202F7E8
- ldr r1, _0807D8EC @ =0x000006d4
- adds r4, r1
- ldrb r1, [r4]
- lsls r1, 20
- movs r2, 0x80
- lsls r2, 17
- adds r1, r2
- lsrs r1, 16
- movs r2, 0x20
- bl LoadPalette
- ldrb r0, [r4]
- bl sub_807D78C
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0807D8E8: .4byte gUnknown_0202F7E8
-_0807D8EC: .4byte 0x000006d4
- thumb_func_end sub_807D8C0
-
- thumb_func_start sub_807D8F0
-sub_807D8F0: @ 807D8F0
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r7, r0, 0
- mov r8, r1
- ldrb r4, [r7]
- cmp r4, 0x6
- bhi _0807D99A
- subs r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r1, _0807D94C @ =gUnknown_08396FA8
- lsls r0, r4, 2
- adds r0, r1
- ldr r0, [r0]
- lsls r6, r4, 13
- ldr r5, _0807D950 @ =0x02000000
- adds r1, r6, r5
- bl LZ77UnCompWram
- subs r0, r4, 0x1
- cmp r4, 0
- bne _0807D95C
- ldr r0, _0807D954 @ =0x00000421
- strh r0, [r5]
- movs r2, 0x1
- adds r4, r5, 0
- movs r3, 0
- ldr r5, _0807D958 @ =0x00000fff
-_0807D92A:
- lsls r1, r2, 1
- adds r1, r3
- adds r1, r4
- subs r0, r2, 0x1
- lsls r0, 1
- adds r0, r3
- adds r0, r4
- ldrh r0, [r0]
- ldrh r6, [r1]
- adds r0, r6
- strh r0, [r1]
- adds r0, r2, 0x1
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r2, r5
- bls _0807D92A
- b _0807D984
- .align 2, 0
-_0807D94C: .4byte gUnknown_08396FA8
-_0807D950: .4byte 0x02000000
-_0807D954: .4byte 0x00000421
-_0807D958: .4byte 0x00000fff
-_0807D95C:
- movs r2, 0
- adds r3, r5, 0
- adds r5, r6, 0
- lsls r4, r0, 13
- ldr r0, _0807D9A4 @ =0x00000fff
- mov r12, r0
-_0807D968:
- lsls r0, r2, 1
- adds r1, r0, r5
- adds r1, r3
- adds r0, r4
- adds r0, r3
- ldrh r0, [r0]
- ldrh r6, [r1]
- adds r0, r6
- strh r0, [r1]
- adds r0, r2, 0x1
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r2, r12
- bls _0807D968
-_0807D984:
- ldrb r0, [r7]
- adds r0, 0x1
- strb r0, [r7]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x7
- bne _0807D99A
- movs r0, 0x20
- strb r0, [r7]
- mov r1, r8
- strb r0, [r1]
-_0807D99A:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0807D9A4: .4byte 0x00000fff
- thumb_func_end sub_807D8F0
-
- thumb_func_start sub_807D9A8
-sub_807D9A8: @ 807D9A8
- ldr r0, _0807D9BC @ =gUnknown_0202F7E8
- ldr r2, _0807D9C0 @ =0x0000074d
- adds r1, r0, r2
- movs r2, 0x1
- strb r2, [r1]
- ldr r1, _0807D9C4 @ =0x0000074e
- adds r0, r1
- strb r2, [r0]
- bx lr
- .align 2, 0
-_0807D9BC: .4byte gUnknown_0202F7E8
-_0807D9C0: .4byte 0x0000074d
-_0807D9C4: .4byte 0x0000074e
- thumb_func_end sub_807D9A8
-
- thumb_func_start sub_807D9C8
-sub_807D9C8: @ 807D9C8
- push {r4,lr}
- ldr r1, _0807D9F0 @ =gUnknown_0202F7E8
- ldr r0, _0807D9F4 @ =0x0000074d
- adds r4, r1, r0
- movs r0, 0
- ldrsb r0, [r4, r0]
- cmp r0, 0x1F
- bgt _0807D9FC
- ldr r0, _0807D9F8 @ =0x0000074e
- adds r1, r0
- adds r0, r4, 0
- bl sub_807D8F0
- movs r0, 0
- ldrsb r0, [r4, r0]
- cmp r0, 0x1F
- bgt _0807D9FC
- movs r0, 0x1
- b _0807D9FE
- .align 2, 0
-_0807D9F0: .4byte gUnknown_0202F7E8
-_0807D9F4: .4byte 0x0000074d
-_0807D9F8: .4byte 0x0000074e
-_0807D9FC:
- movs r0, 0
-_0807D9FE:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_807D9C8
-
- thumb_func_start sub_807DA04
-sub_807DA04: @ 807DA04
- push {lr}
- lsls r0, 24
- asrs r0, 24
- mvns r0, r0
- bl sub_807D5BC
- pop {r0}
- bx r0
- thumb_func_end sub_807DA04
-
- thumb_func_start sub_807DA14
-sub_807DA14: @ 807DA14
- ldr r1, _0807DA3C @ =gUnknown_0202F7E8
- ldr r2, _0807DA40 @ =0x0000073c
- adds r0, r1, r2
- movs r2, 0
- strh r2, [r0]
- movs r3, 0xE8
- lsls r3, 3
- adds r0, r1, r3
- strh r2, [r0]
- adds r3, 0x2
- adds r0, r1, r3
- strh r2, [r0]
- ldr r0, _0807DA44 @ =0x0000073e
- adds r1, r0
- strh r2, [r1]
- ldr r1, _0807DA48 @ =gUnknown_0202FF58
- movs r0, 0x5
- strh r0, [r1]
- bx lr
- .align 2, 0
-_0807DA3C: .4byte gUnknown_0202F7E8
-_0807DA40: .4byte 0x0000073c
-_0807DA44: .4byte 0x0000073e
-_0807DA48: .4byte gUnknown_0202FF58
- thumb_func_end sub_807DA14
-
- thumb_func_start sub_807DA4C
-sub_807DA4C: @ 807DA4C
- push {r4-r7,lr}
- ldr r5, _0807DA68 @ =gUnknown_0202F7E8
- ldr r0, _0807DA6C @ =0x00000742
- adds r7, r5, r0
- movs r1, 0
- ldrsh r2, [r7, r1]
- cmp r2, 0x1
- beq _0807DAC8
- cmp r2, 0x1
- bgt _0807DA70
- cmp r2, 0
- beq _0807DA76
- b _0807DB54
- .align 2, 0
-_0807DA68: .4byte gUnknown_0202F7E8
-_0807DA6C: .4byte 0x00000742
-_0807DA70:
- cmp r2, 0x2
- beq _0807DB1C
- b _0807DB54
-_0807DA76:
- movs r3, 0xE8
- lsls r3, 3
- adds r6, r5, r3
- ldrh r0, [r6]
- adds r0, 0x1
- strh r0, [r6]
- lsls r0, 16
- asrs r0, 16
- ldr r1, _0807DABC @ =gUnknown_0202FF58
- ldrh r1, [r1]
- cmp r0, r1
- ble _0807DB54
- strh r2, [r6]
- ldr r0, _0807DAC0 @ =0x0000073c
- adds r4, r5, r0
- ldrh r0, [r4]
- adds r1, r0, 0x1
- strh r1, [r4]
- lsls r0, 24
- asrs r0, 24
- bl sub_807DA04
- ldrh r1, [r4]
- movs r2, 0
- ldrsh r0, [r4, r2]
- cmp r0, 0x5
- ble _0807DB54
- ldr r3, _0807DAC4 @ =0x0000073e
- adds r0, r5, r3
- strh r1, [r0]
- movs r0, 0x1
- strh r0, [r7]
- movs r0, 0x3C
- strh r0, [r6]
- b _0807DB54
- .align 2, 0
-_0807DABC: .4byte gUnknown_0202FF58
-_0807DAC0: .4byte 0x0000073c
-_0807DAC4: .4byte 0x0000073e
-_0807DAC8:
- movs r0, 0xE8
- lsls r0, 3
- adds r2, r5, r0
- ldrh r0, [r2]
- adds r0, 0x3
- movs r1, 0x7F
- ands r0, r1
- strh r0, [r2]
- ldr r1, _0807DB10 @ =gSineTable
- movs r3, 0
- ldrsh r0, [r2, r3]
- lsls r0, 1
- adds r0, r1
- movs r1, 0
- ldrsh r0, [r0, r1]
- subs r0, 0x1
- asrs r0, 6
- adds r0, 0x2
- ldr r2, _0807DB14 @ =0x0000073c
- adds r6, r5, r2
- adds r2, r0, 0
- strh r0, [r6]
- ldr r3, _0807DB18 @ =0x0000073e
- adds r4, r5, r3
- movs r3, 0
- ldrsh r1, [r4, r3]
- cmp r0, r1
- beq _0807DB08
- lsls r0, r2, 24
- asrs r0, 24
- bl sub_807DA04
-_0807DB08:
- ldrh r0, [r6]
- strh r0, [r4]
- b _0807DB54
- .align 2, 0
-_0807DB10: .4byte gSineTable
-_0807DB14: .4byte 0x0000073c
-_0807DB18: .4byte 0x0000073e
-_0807DB1C:
- movs r0, 0xE8
- lsls r0, 3
- adds r2, r5, r0
- ldrh r0, [r2]
- adds r0, 0x1
- movs r6, 0
- strh r0, [r2]
- lsls r0, 16
- asrs r0, 16
- ldr r1, _0807DB5C @ =gUnknown_0202FF58
- ldrh r1, [r1]
- cmp r0, r1
- ble _0807DB54
- strh r6, [r2]
- ldr r1, _0807DB60 @ =0x0000073c
- adds r4, r5, r1
- ldrh r0, [r4]
- subs r0, 0x1
- strh r0, [r4]
- lsls r0, 24
- asrs r0, 24
- bl sub_807DA04
- movs r2, 0
- ldrsh r0, [r4, r2]
- cmp r0, 0x3
- bne _0807DB54
- strh r6, [r7]
-_0807DB54:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0807DB5C: .4byte gUnknown_0202FF58
-_0807DB60: .4byte 0x0000073c
- thumb_func_end sub_807DA4C
-
- thumb_func_start sub_807DB64
-sub_807DB64: @ 807DB64
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- ldr r3, _0807DB98 @ =gUnknown_0202F7E8
- movs r4, 0xE6
- lsls r4, 3
- adds r2, r3, r4
- strh r0, [r2]
- adds r4, 0x2
- adds r2, r3, r4
- strh r1, [r2]
- adds r4, 0x2
- adds r2, r3, r4
- strh r0, [r2]
- ldr r2, _0807DB9C @ =0x00000736
- adds r3, r2
- strh r1, [r3]
- ldr r2, _0807DBA0 @ =REG_BLDALPHA
- lsls r1, 8
- orrs r1, r0
- strh r1, [r2]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0807DB98: .4byte gUnknown_0202F7E8
-_0807DB9C: .4byte 0x00000736
-_0807DBA0: .4byte REG_BLDALPHA
- thumb_func_end sub_807DB64
-
- thumb_func_start sub_807DBA4
-sub_807DBA4: @ 807DBA4
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- ldr r3, _0807DBD8 @ =gUnknown_0202F7E8
- ldr r5, _0807DBDC @ =0x00000734
- adds r4, r3, r5
- movs r5, 0
- strh r0, [r4]
- ldr r4, _0807DBE0 @ =0x00000736
- adds r0, r3, r4
- strh r1, [r0]
- ldr r1, _0807DBE4 @ =0x0000073a
- adds r0, r3, r1
- strb r2, [r0]
- adds r4, 0x3
- adds r0, r3, r4
- strb r5, [r0]
- movs r0, 0xE7
- lsls r0, 3
- adds r3, r0
- strb r5, [r3]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0807DBD8: .4byte gUnknown_0202F7E8
-_0807DBDC: .4byte 0x00000734
-_0807DBE0: .4byte 0x00000736
-_0807DBE4: .4byte 0x0000073a
- thumb_func_end sub_807DBA4
-
- thumb_func_start sub_807DBE8
-sub_807DBE8: @ 807DBE8
- push {r4-r6,lr}
- ldr r0, _0807DC40 @ =gUnknown_0202F7E8
- movs r1, 0xE6
- lsls r1, 3
- adds r3, r0, r1
- ldr r2, [r3]
- ldr r6, _0807DC44 @ =0x00000734
- adds r5, r0, r6
- ldr r1, [r5]
- adds r4, r0, 0
- cmp r2, r1
- beq _0807DCAC
- ldr r0, _0807DC48 @ =0x00000739
- adds r2, r4, r0
- ldrb r0, [r2]
- adds r0, 0x1
- strb r0, [r2]
- ldr r6, _0807DC4C @ =0x0000073a
- adds r1, r4, r6
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r1]
- cmp r0, r1
- bls _0807DC78
- movs r0, 0
- strb r0, [r2]
- movs r0, 0xE7
- lsls r0, 3
- adds r1, r4, r0
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0807DC50
- ldrh r1, [r3]
- adds r2, r1, 0
- ldrh r0, [r5]
- cmp r2, r0
- bcs _0807DC70
- adds r0, r1, 0x1
- b _0807DC76
- .align 2, 0
-_0807DC40: .4byte gUnknown_0202F7E8
-_0807DC44: .4byte 0x00000734
-_0807DC48: .4byte 0x00000739
-_0807DC4C: .4byte 0x0000073a
-_0807DC50:
- ldr r1, _0807DC68 @ =0x00000732
- adds r3, r4, r1
- ldr r2, _0807DC6C @ =0x00000736
- adds r0, r4, r2
- ldrh r1, [r3]
- adds r2, r1, 0
- ldrh r0, [r0]
- cmp r2, r0
- bcs _0807DC70
- adds r0, r1, 0x1
- b _0807DC76
- .align 2, 0
-_0807DC68: .4byte 0x00000732
-_0807DC6C: .4byte 0x00000736
-_0807DC70:
- cmp r2, r0
- bls _0807DC78
- subs r0, r1, 0x1
-_0807DC76:
- strh r0, [r3]
-_0807DC78:
- ldr r3, _0807DCA0 @ =REG_BLDALPHA
- ldr r6, _0807DCA4 @ =0x00000732
- adds r0, r4, r6
- ldrh r0, [r0]
- lsls r0, 8
- movs r1, 0xE6
- lsls r1, 3
- adds r2, r4, r1
- ldrh r1, [r2]
- orrs r0, r1
- strh r0, [r3]
- ldr r1, [r2]
- ldr r2, _0807DCA8 @ =0x00000734
- adds r0, r4, r2
- ldr r0, [r0]
- cmp r1, r0
- beq _0807DCAC
- movs r0, 0
- b _0807DCAE
- .align 2, 0
-_0807DCA0: .4byte REG_BLDALPHA
-_0807DCA4: .4byte 0x00000732
-_0807DCA8: .4byte 0x00000734
-_0807DCAC:
- movs r0, 0x1
-_0807DCAE:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_807DBE8
-
- thumb_func_start unref_sub_807DCB4
-unref_sub_807DCB4: @ 807DCB4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- subs r0, 0x1
- cmp r0, 0x9
- bhi _0807DD46
- lsls r0, 2
- ldr r1, _0807DCCC @ =_0807DCD0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0807DCCC: .4byte _0807DCD0
- .align 2, 0
-_0807DCD0:
- .4byte _0807DCF8
- .4byte _0807DD00
- .4byte _0807DD08
- .4byte _0807DD10
- .4byte _0807DD18
- .4byte _0807DD20
- .4byte _0807DD28
- .4byte _0807DD30
- .4byte _0807DD38
- .4byte _0807DD40
-_0807DCF8:
- movs r0, 0x1
- bl SetWeather
- b _0807DD46
-_0807DD00:
- movs r0, 0x2
- bl SetWeather
- b _0807DD46
-_0807DD08:
- movs r0, 0x3
- bl SetWeather
- b _0807DD46
-_0807DD10:
- movs r0, 0x4
- bl SetWeather
- b _0807DD46
-_0807DD18:
- movs r0, 0x5
- bl SetWeather
- b _0807DD46
-_0807DD20:
- movs r0, 0x6
- bl SetWeather
- b _0807DD46
-_0807DD28:
- movs r0, 0x9
- bl SetWeather
- b _0807DD46
-_0807DD30:
- movs r0, 0x7
- bl SetWeather
- b _0807DD46
-_0807DD38:
- movs r0, 0x8
- bl SetWeather
- b _0807DD46
-_0807DD40:
- movs r0, 0xB
- bl SetWeather
-_0807DD46:
- pop {r0}
- bx r0
- thumb_func_end unref_sub_807DCB4
-
- thumb_func_start weather_get_current
-weather_get_current: @ 807DD4C
- ldr r0, _0807DD58 @ =gUnknown_0202F7E8
- movs r1, 0xDA
- lsls r1, 3
- adds r0, r1
- ldrb r0, [r0]
- bx lr
- .align 2, 0
-_0807DD58: .4byte gUnknown_0202F7E8
- thumb_func_end weather_get_current
-
- thumb_func_start sub_807DD5C
-sub_807DD5C: @ 807DD5C
- push {lr}
- lsls r0, 16
- lsrs r2, r0, 16
- ldr r1, _0807DD7C @ =gUnknown_0202F7E8
- ldr r3, _0807DD80 @ =0x000006c6
- adds r0, r1, r3
- ldrb r0, [r0]
- cmp r0, 0x2
- beq _0807DDAE
- cmp r2, 0x53
- beq _0807DD94
- cmp r2, 0x53
- bgt _0807DD84
- cmp r2, 0x51
- beq _0807DDA0
- b _0807DDAE
- .align 2, 0
-_0807DD7C: .4byte gUnknown_0202F7E8
-_0807DD80: .4byte 0x000006c6
-_0807DD84:
- cmp r2, 0x55
- bne _0807DDAE
- ldr r0, _0807DD90 @ =0x000006dd
- adds r1, r0
- movs r0, 0
- b _0807DDA6
- .align 2, 0
-_0807DD90: .4byte 0x000006dd
-_0807DD94:
- ldr r3, _0807DD9C @ =0x000006dd
- adds r1, r3
- movs r0, 0x1
- b _0807DDA6
- .align 2, 0
-_0807DD9C: .4byte 0x000006dd
-_0807DDA0:
- ldr r0, _0807DDB4 @ =0x000006dd
- adds r1, r0
- movs r0, 0x2
-_0807DDA6:
- strb r0, [r1]
- adds r0, r2, 0
- bl PlaySE
-_0807DDAE:
- pop {r0}
- bx r0
- .align 2, 0
-_0807DDB4: .4byte 0x000006dd
- thumb_func_end sub_807DD5C
-
- thumb_func_start PlayRainSoundEffect
-PlayRainSoundEffect: @ 807DDB8
- push {lr}
- bl IsSpecialSEPlaying
- lsls r0, 24
- cmp r0, 0
- beq _0807DDF6
- ldr r0, _0807DDE0 @ =gUnknown_0202F7E8
- ldr r1, _0807DDE4 @ =0x000006dd
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _0807DDE8
- cmp r0, 0x1
- bgt _0807DDF0
- cmp r0, 0
- bne _0807DDF0
- movs r0, 0x56
- bl PlaySE
- b _0807DDF6
- .align 2, 0
-_0807DDE0: .4byte gUnknown_0202F7E8
-_0807DDE4: .4byte 0x000006dd
-_0807DDE8:
- movs r0, 0x54
- bl PlaySE
- b _0807DDF6
-_0807DDF0:
- movs r0, 0x52
- bl PlaySE
-_0807DDF6:
- pop {r0}
- bx r0
- thumb_func_end PlayRainSoundEffect
-
- thumb_func_start sub_807DDFC
-sub_807DDFC: @ 807DDFC
- ldr r0, _0807DE08 @ =gUnknown_0202F7E8
- ldr r1, _0807DE0C @ =0x000006d3
- adds r0, r1
- ldrb r0, [r0]
- bx lr
- .align 2, 0
-_0807DE08: .4byte gUnknown_0202F7E8
-_0807DE0C: .4byte 0x000006d3
- thumb_func_end sub_807DDFC
-
- thumb_func_start sub_807DE10
-sub_807DE10: @ 807DE10
- ldr r0, _0807DE1C @ =gUnknown_0202F7E8
- ldr r1, _0807DE20 @ =0x000006c6
- adds r0, r1
- movs r1, 0x2
- strb r1, [r0]
- bx lr
- .align 2, 0
-_0807DE1C: .4byte gUnknown_0202F7E8
-_0807DE20: .4byte 0x000006c6
- thumb_func_end sub_807DE10
-
- thumb_func_start unref_sub_807DE24
-unref_sub_807DE24: @ 807DE24
- ldr r0, _0807DE30 @ =gUnknown_0202F7E8
- ldr r1, _0807DE34 @ =0x000006c6
- adds r0, r1
- movs r1, 0x3
- strb r1, [r0]
- bx lr
- .align 2, 0
-_0807DE30: .4byte gUnknown_0202F7E8
-_0807DE34: .4byte 0x000006c6
- thumb_func_end unref_sub_807DE24
-
- thumb_func_start sub_807DE38
-sub_807DE38: @ 807DE38
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, _0807DE5C @ =gUnknown_083970C8
- ldr r5, _0807DE60 @ =gUnknown_0202FF38
- adds r1, r5, 0
- movs r2, 0x10
- bl CpuSet
- adds r4, r5
- movs r0, 0
- strb r0, [r4]
- ldr r0, _0807DE64 @ =gUnknown_030006DC
- str r5, [r0]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0807DE5C: .4byte gUnknown_083970C8
-_0807DE60: .4byte gUnknown_0202FF38
-_0807DE64: .4byte gUnknown_030006DC
- thumb_func_end sub_807DE38
-
- thumb_func_start sub_807DE68
-sub_807DE68: @ 807DE68
- ldr r1, _0807DE70 @ =gUnknown_030006DC
- ldr r0, _0807DE74 @ =gUnknown_083970C8
- str r0, [r1]
- bx lr
- .align 2, 0
-_0807DE70: .4byte gUnknown_030006DC
-_0807DE74: .4byte gUnknown_083970C8
- thumb_func_end sub_807DE68
-
- thumb_func_start sub_807DE78
-sub_807DE78: @ 807DE78
- push {lr}
- ldr r0, _0807DEB0 @ =gUnknown_08396FC4
- ldr r0, [r0]
- ldr r2, _0807DEB4 @ =0x000006c1
- adds r1, r0, r2
- movs r2, 0
- strb r2, [r1]
- ldr r1, _0807DEB8 @ =0x000006c2
- adds r3, r0, r1
- movs r1, 0x14
- strb r1, [r3]
- ldr r3, _0807DEBC @ =0x000006d2
- adds r1, r0, r3
- strb r2, [r1]
- subs r3, 0x6
- adds r1, r0, r3
- strh r2, [r1]
- ldr r1, _0807DEC0 @ =0x000006de
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _0807DEAC
- movs r0, 0
- movs r1, 0x10
- bl sub_807DB64
-_0807DEAC:
- pop {r0}
- bx r0
- .align 2, 0
-_0807DEB0: .4byte gUnknown_08396FC4
-_0807DEB4: .4byte 0x000006c1
-_0807DEB8: .4byte 0x000006c2
-_0807DEBC: .4byte 0x000006d2
-_0807DEC0: .4byte 0x000006de
- thumb_func_end sub_807DE78
-
- thumb_func_start sub_807DEC4
-sub_807DEC4: @ 807DEC4
- push {r4,lr}
- bl sub_807DE78
- ldr r0, _0807DEEC @ =gUnknown_08396FC4
- ldr r1, [r0]
- ldr r2, _0807DEF0 @ =0x000006d2
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _0807DEE4
- adds r4, r1, r2
-_0807DEDA:
- bl sub_807DEF4
- ldrb r0, [r4]
- cmp r0, 0
- beq _0807DEDA
-_0807DEE4:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0807DEEC: .4byte gUnknown_08396FC4
-_0807DEF0: .4byte 0x000006d2
- thumb_func_end sub_807DEC4
-
- thumb_func_start sub_807DEF4
-sub_807DEF4: @ 807DEF4
- push {r4,r5,lr}
- ldr r0, _0807DF10 @ =gUnknown_08396FC4
- ldr r5, [r0]
- ldr r0, _0807DF14 @ =0x000006cc
- adds r4, r5, r0
- ldrh r0, [r4]
- cmp r0, 0x1
- beq _0807DF24
- cmp r0, 0x1
- bgt _0807DF18
- cmp r0, 0
- beq _0807DF1E
- b _0807DF48
- .align 2, 0
-_0807DF10: .4byte gUnknown_08396FC4
-_0807DF14: .4byte 0x000006cc
-_0807DF18:
- cmp r0, 0x2
- beq _0807DF30
- b _0807DF48
-_0807DF1E:
- bl sub_807DFD4
- b _0807DF42
-_0807DF24:
- movs r0, 0xC
- movs r1, 0x8
- movs r2, 0x1
- bl sub_807DBA4
- b _0807DF42
-_0807DF30:
- bl sub_807DBE8
- lsls r0, 24
- cmp r0, 0
- beq _0807DF48
- ldr r0, _0807DF50 @ =0x000006d2
- adds r1, r5, r0
- movs r0, 0x1
- strb r0, [r1]
-_0807DF42:
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
-_0807DF48:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0807DF50: .4byte 0x000006d2
- thumb_func_end sub_807DEF4
-
- thumb_func_start sub_807DF54
-sub_807DF54: @ 807DF54
- push {r4,lr}
- ldr r0, _0807DF6C @ =gUnknown_08396FC4
- ldr r0, [r0]
- ldr r1, _0807DF70 @ =0x000006ce
- adds r4, r0, r1
- ldrh r0, [r4]
- cmp r0, 0
- beq _0807DF74
- cmp r0, 0x1
- beq _0807DF80
- movs r0, 0
- b _0807DF96
- .align 2, 0
-_0807DF6C: .4byte gUnknown_08396FC4
-_0807DF70: .4byte 0x000006ce
-_0807DF74:
- movs r0, 0
- movs r1, 0x10
- movs r2, 0x1
- bl sub_807DBA4
- b _0807DF8E
-_0807DF80:
- bl sub_807DBE8
- lsls r0, 24
- cmp r0, 0
- beq _0807DF94
- bl sub_807E0A0
-_0807DF8E:
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
-_0807DF94:
- movs r0, 0x1
-_0807DF96:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_807DF54
-
- thumb_func_start sub_807DF9C
-sub_807DF9C: @ 807DF9C
- ldr r0, _0807DFB4 @ =gUnknown_08396FC4
- ldr r1, [r0]
- ldr r0, _0807DFB8 @ =0x000006c1
- adds r2, r1, r0
- movs r0, 0
- strb r0, [r2]
- ldr r0, _0807DFBC @ =0x000006c2
- adds r1, r0
- movs r0, 0x14
- strb r0, [r1]
- bx lr
- .align 2, 0
-_0807DFB4: .4byte gUnknown_08396FC4
-_0807DFB8: .4byte 0x000006c1
-_0807DFBC: .4byte 0x000006c2
- thumb_func_end sub_807DF9C
-
- thumb_func_start sub_807DFC0
-sub_807DFC0: @ 807DFC0
- push {lr}
- bl sub_807DF9C
- pop {r0}
- bx r0
- thumb_func_end sub_807DFC0
-
- thumb_func_start nullsub_55
-nullsub_55: @ 807DFCC
- bx lr
- thumb_func_end nullsub_55
-
- thumb_func_start sub_807DFD0
-sub_807DFD0: @ 807DFD0
- movs r0, 0
- bx lr
- thumb_func_end sub_807DFD0
-
- thumb_func_start sub_807DFD4
-sub_807DFD4: @ 807DFD4
- push {r4,r5,lr}
- ldr r0, _0807E04C @ =gUnknown_08396FC4
- ldr r0, [r0]
- ldr r1, _0807E050 @ =0x000006de
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _0807E090
- ldr r0, _0807E054 @ =gUnknown_0839A9D4
- bl LoadSpriteSheet
- ldr r0, _0807E058 @ =gUnknown_08397108
- bl sub_807D8C0
- movs r5, 0
-_0807DFF2:
- ldr r0, _0807E05C @ =gSpriteTemplate_839A9F0
- movs r1, 0
- movs r2, 0
- movs r3, 0xFF
- bl CreateSprite
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0x40
- beq _0807E068
- ldr r0, _0807E04C @ =gUnknown_08396FC4
- ldr r1, [r0]
- lsls r2, r5, 2
- movs r0, 0xFA
- lsls r0, 1
- adds r1, r0
- adds r1, r2
- lsls r4, r3, 4
- adds r4, r3
- lsls r4, 2
- ldr r0, _0807E060 @ =gSprites
- adds r4, r0
- str r4, [r1]
- ldr r0, _0807E064 @ =gUnknown_0839A9C8
- adds r2, r0
- ldrh r0, [r2]
- adds r0, 0x7
- lsls r0, 16
- asrs r0, 16
- ldrh r1, [r2, 0x2]
- adds r1, 0x7
- lsls r1, 16
- asrs r1, 16
- adds r2, r4, 0
- adds r2, 0x20
- adds r3, r4, 0
- adds r3, 0x22
- bl sub_80603CC
- adds r4, 0x3E
- ldrb r0, [r4]
- movs r1, 0x2
- orrs r0, r1
- strb r0, [r4]
- b _0807E07A
- .align 2, 0
-_0807E04C: .4byte gUnknown_08396FC4
-_0807E050: .4byte 0x000006de
-_0807E054: .4byte gUnknown_0839A9D4
-_0807E058: .4byte gUnknown_08397108
-_0807E05C: .4byte gSpriteTemplate_839A9F0
-_0807E060: .4byte gSprites
-_0807E064: .4byte gUnknown_0839A9C8
-_0807E068:
- ldr r0, _0807E098 @ =gUnknown_08396FC4
- ldr r1, [r0]
- lsls r0, r5, 2
- movs r2, 0xFA
- lsls r2, 1
- adds r1, r2
- adds r1, r0
- movs r0, 0
- str r0, [r1]
-_0807E07A:
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, 0x2
- bls _0807DFF2
- ldr r0, _0807E098 @ =gUnknown_08396FC4
- ldr r0, [r0]
- ldr r1, _0807E09C @ =0x000006de
- adds r0, r1
- movs r1, 0x1
- strb r1, [r0]
-_0807E090:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0807E098: .4byte gUnknown_08396FC4
-_0807E09C: .4byte 0x000006de
- thumb_func_end sub_807DFD4
-
- thumb_func_start sub_807E0A0
-sub_807E0A0: @ 807E0A0
- push {r4,r5,lr}
- ldr r0, _0807E0EC @ =gUnknown_08396FC4
- ldr r1, [r0]
- ldr r2, _0807E0F0 @ =0x000006de
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- beq _0807E0E4
- movs r4, 0
- movs r0, 0xFA
- lsls r0, 1
- adds r5, r1, r0
-_0807E0B8:
- lsls r0, r4, 2
- adds r0, r5, r0
- ldr r0, [r0]
- cmp r0, 0
- beq _0807E0C6
- bl DestroySprite
-_0807E0C6:
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0x2
- bls _0807E0B8
- movs r0, 0x90
- lsls r0, 5
- bl FreeSpriteTilesByTag
- ldr r0, _0807E0EC @ =gUnknown_08396FC4
- ldr r0, [r0]
- ldr r1, _0807E0F0 @ =0x000006de
- adds r0, r1
- movs r1, 0
- strb r1, [r0]
-_0807E0E4:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0807E0EC: .4byte gUnknown_08396FC4
-_0807E0F0: .4byte 0x000006de
- thumb_func_end sub_807E0A0
-
- thumb_func_start sub_807E0F4
-sub_807E0F4: @ 807E0F4
- push {lr}
- adds r2, r0, 0
- ldrh r0, [r2, 0x2E]
- adds r0, 0x1
- movs r1, 0x1
- ands r0, r1
- strh r0, [r2, 0x2E]
- cmp r0, 0
- beq _0807E10C
- ldrh r0, [r2, 0x20]
- subs r0, 0x1
- strh r0, [r2, 0x20]
-_0807E10C:
- pop {r0}
- bx r0
- thumb_func_end sub_807E0F4
-
- thumb_func_start sub_807E110
-sub_807E110: @ 807E110
- ldr r0, _0807E134 @ =gUnknown_08396FC4
- ldr r1, [r0]
- ldr r0, _0807E138 @ =0x000006cc
- adds r3, r1, r0
- movs r2, 0
- movs r0, 0
- strh r0, [r3]
- ldr r3, _0807E13C @ =0x000006d2
- adds r0, r1, r3
- strb r2, [r0]
- subs r3, 0x11
- adds r0, r1, r3
- strb r2, [r0]
- ldr r0, _0807E140 @ =0x000006c2
- adds r1, r0
- strb r2, [r1]
- bx lr
- .align 2, 0
-_0807E134: .4byte gUnknown_08396FC4
-_0807E138: .4byte 0x000006cc
-_0807E13C: .4byte 0x000006d2
-_0807E140: .4byte 0x000006c2
- thumb_func_end sub_807E110
-
- thumb_func_start sub_807E144
-sub_807E144: @ 807E144
- push {r4,lr}
- bl sub_807E110
- ldr r0, _0807E16C @ =gUnknown_08396FC4
- ldr r1, [r0]
- ldr r2, _0807E170 @ =0x000006d2
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _0807E164
- adds r4, r1, r2
-_0807E15A:
- bl sub_807E174
- ldrb r0, [r4]
- cmp r0, 0
- beq _0807E15A
-_0807E164:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0807E16C: .4byte gUnknown_08396FC4
-_0807E170: .4byte 0x000006d2
- thumb_func_end sub_807E144
-
- thumb_func_start sub_807E174
-sub_807E174: @ 807E174
- push {lr}
- ldr r1, _0807E190 @ =gUnknown_08396FC4
- ldr r0, [r1]
- ldr r2, _0807E194 @ =0x000006cc
- adds r0, r2
- ldrh r0, [r0]
- adds r2, r1, 0
- cmp r0, 0x4
- bhi _0807E250
- lsls r0, 2
- ldr r1, _0807E198 @ =_0807E19C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0807E190: .4byte gUnknown_08396FC4
-_0807E194: .4byte 0x000006cc
-_0807E198: .4byte _0807E19C
- .align 2, 0
-_0807E19C:
- .4byte _0807E1B0
- .4byte _0807E1CC
- .4byte _0807E1E4
- .4byte _0807E200
- .4byte _0807E218
-_0807E1B0:
- ldr r1, [r2]
- ldr r2, _0807E1C4 @ =0x000006c6
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- beq _0807E254
- ldr r0, _0807E1C8 @ =0x000006cc
- adds r1, r0
- b _0807E238
- .align 2, 0
-_0807E1C4: .4byte 0x000006c6
-_0807E1C8: .4byte 0x000006cc
-_0807E1CC:
- bl sub_807D9A8
- ldr r0, _0807E1DC @ =gUnknown_08396FC4
- ldr r1, [r0]
- ldr r2, _0807E1E0 @ =0x000006cc
- adds r1, r2
- b _0807E238
- .align 2, 0
-_0807E1DC: .4byte gUnknown_08396FC4
-_0807E1E0: .4byte 0x000006cc
-_0807E1E4:
- bl sub_807D9C8
- lsls r0, 24
- cmp r0, 0
- bne _0807E254
- ldr r0, _0807E1F8 @ =gUnknown_08396FC4
- ldr r1, [r0]
- ldr r0, _0807E1FC @ =0x000006cc
- adds r1, r0
- b _0807E238
- .align 2, 0
-_0807E1F8: .4byte gUnknown_08396FC4
-_0807E1FC: .4byte 0x000006cc
-_0807E200:
- bl sub_807DA14
- ldr r0, _0807E210 @ =gUnknown_08396FC4
- ldr r1, [r0]
- ldr r2, _0807E214 @ =0x000006cc
- adds r1, r2
- b _0807E238
- .align 2, 0
-_0807E210: .4byte gUnknown_08396FC4
-_0807E214: .4byte 0x000006cc
-_0807E218:
- bl sub_807DA4C
- ldr r0, _0807E240 @ =gUnknown_08396FC4
- ldr r2, [r0]
- ldr r1, _0807E244 @ =0x0000073c
- adds r0, r2, r1
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0x6
- bne _0807E254
- ldr r0, _0807E248 @ =0x000006d2
- adds r1, r2, r0
- movs r0, 0x1
- strb r0, [r1]
- ldr r0, _0807E24C @ =0x000006cc
- adds r1, r2, r0
-_0807E238:
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _0807E254
- .align 2, 0
-_0807E240: .4byte gUnknown_08396FC4
-_0807E244: .4byte 0x0000073c
-_0807E248: .4byte 0x000006d2
-_0807E24C: .4byte 0x000006cc
-_0807E250:
- bl sub_807DA4C
-_0807E254:
- pop {r0}
- bx r0
- thumb_func_end sub_807E174
-
- thumb_func_start sub_807E258
-sub_807E258: @ 807E258
- movs r0, 0
- bx lr
- thumb_func_end sub_807E258
-
- thumb_func_start sub_807E25C
-sub_807E25C: @ 807E25C
- push {lr}
- ldr r0, _0807E26C @ =task50_0807B6D4
- movs r1, 0x50
- bl CreateTask
- pop {r0}
- bx r0
- .align 2, 0
-_0807E26C: .4byte task50_0807B6D4
- thumb_func_end sub_807E25C
-
- thumb_func_start task50_0807B6D4
-task50_0807B6D4: @ 807E270
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- ldr r1, _0807E294 @ =gTasks
- adds r3, r0, r1
- movs r1, 0x8
- ldrsh r0, [r3, r1]
- cmp r0, 0x4
- bhi _0807E35E
- lsls r0, 2
- ldr r1, _0807E298 @ =_0807E29C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0807E294: .4byte gTasks
-_0807E298: .4byte _0807E29C
- .align 2, 0
-_0807E29C:
- .4byte _0807E2B0
- .4byte _0807E2D2
- .4byte _0807E300
- .4byte _0807E334
- .4byte _0807E354
-_0807E2B0:
- movs r2, 0
- strh r2, [r3, 0xA]
- strh r2, [r3, 0xC]
- ldr r1, _0807E2F4 @ =REG_WININ
- ldrh r0, [r1]
- strh r0, [r3, 0xE]
- ldr r4, _0807E2F8 @ =0x00003f3f
- adds r0, r4, 0
- strh r0, [r1]
- adds r1, 0x8
- movs r0, 0x9E
- strh r0, [r1]
- ldr r0, _0807E2FC @ =REG_BLDY
- strh r2, [r0]
- ldrh r0, [r3, 0x8]
- adds r0, 0x1
- strh r0, [r3, 0x8]
-_0807E2D2:
- ldrh r0, [r3, 0xA]
- adds r0, 0x3
- strh r0, [r3, 0xA]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x10
- ble _0807E2E4
- movs r0, 0x10
- strh r0, [r3, 0xA]
-_0807E2E4:
- ldr r0, _0807E2FC @ =REG_BLDY
- ldrh r1, [r3, 0xA]
- strh r1, [r0]
- movs r1, 0xA
- ldrsh r0, [r3, r1]
- cmp r0, 0xF
- ble _0807E35E
- b _0807E344
- .align 2, 0
-_0807E2F4: .4byte REG_WININ
-_0807E2F8: .4byte 0x00003f3f
-_0807E2FC: .4byte REG_BLDY
-_0807E300:
- ldrh r0, [r3, 0xC]
- adds r0, 0x1
- movs r1, 0
- strh r0, [r3, 0xC]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x9
- ble _0807E35E
- strh r1, [r3, 0xC]
- ldrh r0, [r3, 0xA]
- subs r0, 0x1
- strh r0, [r3, 0xA]
- lsls r0, 16
- cmp r0, 0
- bgt _0807E326
- strh r1, [r3, 0xA]
- ldrh r0, [r3, 0x8]
- adds r0, 0x1
- strh r0, [r3, 0x8]
-_0807E326:
- ldr r1, _0807E330 @ =REG_BLDY
- ldrh r0, [r3, 0xA]
- strh r0, [r1]
- b _0807E35E
- .align 2, 0
-_0807E330: .4byte REG_BLDY
-_0807E334:
- ldr r0, _0807E34C @ =REG_BLDCNT
- movs r1, 0
- strh r1, [r0]
- adds r0, 0x4
- strh r1, [r0]
- ldr r1, _0807E350 @ =REG_WININ
- ldrh r0, [r3, 0xE]
- strh r0, [r1]
-_0807E344:
- ldrh r0, [r3, 0x8]
- adds r0, 0x1
- strh r0, [r3, 0x8]
- b _0807E35E
- .align 2, 0
-_0807E34C: .4byte REG_BLDCNT
-_0807E350: .4byte REG_WININ
-_0807E354:
- bl EnableBothScriptContexts
- adds r0, r4, 0
- bl DestroyTask
-_0807E35E:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end task50_0807B6D4
-
- thumb_func_start sub_807E364
-sub_807E364: @ 807E364
- push {r4,lr}
- ldr r0, _0807E3B4 @ =gUnknown_08396FC4
- ldr r1, [r0]
- ldr r2, _0807E3B8 @ =0x000006cc
- adds r0, r1, r2
- movs r3, 0
- movs r2, 0
- strh r2, [r0]
- ldr r4, _0807E3BC @ =0x000006d2
- adds r0, r1, r4
- strb r3, [r0]
- adds r4, 0x4
- adds r0, r1, r4
- strh r2, [r0]
- ldr r0, _0807E3C0 @ =0x000006db
- adds r2, r1, r0
- movs r0, 0x8
- strb r0, [r2]
- ldr r2, _0807E3C4 @ =0x000006dc
- adds r0, r1, r2
- strb r3, [r0]
- adds r4, 0x3
- adds r2, r1, r4
- movs r0, 0xA
- strb r0, [r2]
- ldr r0, _0807E3C8 @ =0x000006c1
- adds r2, r1, r0
- movs r0, 0x3
- strb r0, [r2]
- ldr r2, _0807E3CC @ =0x000006c2
- adds r1, r2
- movs r0, 0x14
- strb r0, [r1]
- movs r0, 0x55
- bl sub_807DD5C
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0807E3B4: .4byte gUnknown_08396FC4
-_0807E3B8: .4byte 0x000006cc
-_0807E3BC: .4byte 0x000006d2
-_0807E3C0: .4byte 0x000006db
-_0807E3C4: .4byte 0x000006dc
-_0807E3C8: .4byte 0x000006c1
-_0807E3CC: .4byte 0x000006c2
- thumb_func_end sub_807E364
-
- thumb_func_start sub_807E3D0
-sub_807E3D0: @ 807E3D0
- push {r4,lr}
- bl sub_807E364
- ldr r0, _0807E3F8 @ =gUnknown_08396FC4
- ldr r1, [r0]
- ldr r2, _0807E3FC @ =0x000006d2
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _0807E3F0
- adds r4, r1, r2
-_0807E3E6:
- bl sub_807E400
- ldrb r0, [r4]
- cmp r0, 0
- beq _0807E3E6
-_0807E3F0:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0807E3F8: .4byte gUnknown_08396FC4
-_0807E3FC: .4byte 0x000006d2
- thumb_func_end sub_807E3D0
-
- thumb_func_start sub_807E400
-sub_807E400: @ 807E400
- push {r4,r5,lr}
- ldr r0, _0807E41C @ =gUnknown_08396FC4
- ldr r5, [r0]
- ldr r0, _0807E420 @ =0x000006cc
- adds r4, r5, r0
- ldrh r0, [r4]
- cmp r0, 0x1
- beq _0807E430
- cmp r0, 0x1
- bgt _0807E424
- cmp r0, 0
- beq _0807E42A
- b _0807E454
- .align 2, 0
-_0807E41C: .4byte gUnknown_08396FC4
-_0807E420: .4byte 0x000006cc
-_0807E424:
- cmp r0, 0x2
- beq _0807E43C
- b _0807E454
-_0807E42A:
- bl sub_807E7A4
- b _0807E44E
-_0807E430:
- bl sub_807E7B4
- lsls r0, 24
- cmp r0, 0
- bne _0807E454
- b _0807E44E
-_0807E43C:
- bl sub_807E8E8
- lsls r0, 24
- cmp r0, 0
- bne _0807E454
- ldr r0, _0807E45C @ =0x000006d2
- adds r1, r5, r0
- movs r0, 0x1
- strb r0, [r1]
-_0807E44E:
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
-_0807E454:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0807E45C: .4byte 0x000006d2
- thumb_func_end sub_807E400
-
- thumb_func_start sub_807E460
-sub_807E460: @ 807E460
- push {r4,r5,lr}
- ldr r0, _0807E47C @ =gUnknown_08396FC4
- ldr r2, [r0]
- ldr r1, _0807E480 @ =0x000006ce
- adds r3, r2, r1
- ldrh r1, [r3]
- adds r4, r0, 0
- cmp r1, 0
- beq _0807E484
- cmp r1, 0x1
- beq _0807E4B8
- movs r0, 0
- b _0807E4E6
- .align 2, 0
-_0807E47C: .4byte gUnknown_08396FC4
-_0807E480: .4byte 0x000006ce
-_0807E484:
- ldr r5, _0807E4A4 @ =0x000006d1
- adds r0, r2, r5
- ldrb r0, [r0]
- cmp r0, 0x3
- beq _0807E496
- cmp r0, 0x5
- beq _0807E496
- cmp r0, 0xD
- bne _0807E4AC
-_0807E496:
- ldr r0, [r4]
- ldr r1, _0807E4A8 @ =0x000006ce
- adds r0, r1
- movs r1, 0xFF
- strh r1, [r0]
- movs r0, 0
- b _0807E4E6
- .align 2, 0
-_0807E4A4: .4byte 0x000006d1
-_0807E4A8: .4byte 0x000006ce
-_0807E4AC:
- ldr r4, _0807E4D8 @ =0x000006d9
- adds r0, r2, r4
- strb r1, [r0]
- ldrh r0, [r3]
- adds r0, 0x1
- strh r0, [r3]
-_0807E4B8:
- bl sub_807E8E8
- lsls r0, 24
- cmp r0, 0
- bne _0807E4E4
- bl sub_807E974
- ldr r0, _0807E4DC @ =gUnknown_08396FC4
- ldr r1, [r0]
- ldr r5, _0807E4E0 @ =0x000006ce
- adds r1, r5
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- movs r0, 0
- b _0807E4E6
- .align 2, 0
-_0807E4D8: .4byte 0x000006d9
-_0807E4DC: .4byte gUnknown_08396FC4
-_0807E4E0: .4byte 0x000006ce
-_0807E4E4:
- movs r0, 0x1
-_0807E4E6:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_807E460
-
- thumb_func_start sub_807E4EC
-sub_807E4EC: @ 807E4EC
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r7, r0, 0
- movs r1, 0x30
- ldrsh r0, [r7, r1]
- cmp r0, 0
- bne _0807E500
- ldr r0, _0807E5A4 @ =0x00000169
- strh r0, [r7, 0x30]
-_0807E500:
- movs r2, 0x30
- ldrsh r1, [r7, r2]
- ldr r0, _0807E5A8 @ =0x41c64e6d
- muls r0, r1
- ldr r3, _0807E5AC @ =0x00003039
- adds r0, r3
- lsls r0, 1
- lsrs r0, 17
- movs r1, 0x96
- lsls r1, 2
- bl __umodsi3
- movs r1, 0
- mov r8, r1
- strh r0, [r7, 0x30]
- ldr r1, _0807E5B0 @ =gUnknown_0839AAC4
- ldr r0, _0807E5B4 @ =gUnknown_08396FC4
- ldr r5, [r0]
- ldr r2, _0807E5B8 @ =0x000006dc
- adds r5, r2
- ldrb r0, [r5]
- lsls r0, 2
- adds r0, r1
- ldrh r6, [r0]
- movs r3, 0x30
- ldrsh r0, [r7, r3]
- movs r1, 0x1E
- bl __modsi3
- adds r4, r0, 0
- lsls r4, 16
- asrs r4, 16
- lsls r0, r4, 3
- strh r0, [r7, 0x32]
- movs r1, 0x30
- ldrsh r0, [r7, r1]
- movs r1, 0x1E
- bl __divsi3
- lsls r0, 16
- lsls r4, 7
- strh r4, [r7, 0x32]
- asrs r0, 9
- strh r0, [r7, 0x34]
- ldr r2, _0807E5BC @ =gUnknown_0839AABC
- ldrb r1, [r5]
- lsls r1, 2
- adds r1, r2
- movs r3, 0
- ldrsh r1, [r1, r3]
- muls r1, r6
- subs r4, r1
- strh r4, [r7, 0x32]
- ldrb r1, [r5]
- lsls r1, 2
- adds r2, 0x2
- adds r1, r2
- movs r2, 0
- ldrsh r1, [r1, r2]
- muls r1, r6
- subs r0, r1
- strh r0, [r7, 0x34]
- adds r0, r7, 0
- movs r1, 0
- bl StartSpriteAnim
- mov r3, r8
- strh r3, [r7, 0x36]
- adds r2, r7, 0
- adds r2, 0x3E
- ldrb r1, [r2]
- movs r0, 0x3
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
- strh r6, [r7, 0x2E]
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0807E5A4: .4byte 0x00000169
-_0807E5A8: .4byte 0x41c64e6d
-_0807E5AC: .4byte 0x00003039
-_0807E5B0: .4byte gUnknown_0839AAC4
-_0807E5B4: .4byte gUnknown_08396FC4
-_0807E5B8: .4byte 0x000006dc
-_0807E5BC: .4byte gUnknown_0839AABC
- thumb_func_end sub_807E4EC
-
- thumb_func_start sub_807E5C0
-sub_807E5C0: @ 807E5C0
- push {r4,r5,lr}
- adds r5, r0, 0
- movs r1, 0x36
- ldrsh r0, [r5, r1]
- cmp r0, 0
- bne _0807E69C
- ldr r3, _0807E634 @ =gUnknown_0839AABC
- ldr r4, _0807E638 @ =gUnknown_08396FC4
- ldr r2, [r4]
- ldr r0, _0807E63C @ =0x000006dc
- adds r2, r0
- ldrb r0, [r2]
- lsls r0, 2
- adds r0, r3
- ldrh r1, [r0]
- ldrh r0, [r5, 0x32]
- adds r1, r0
- strh r1, [r5, 0x32]
- ldrb r0, [r2]
- lsls r0, 2
- adds r3, 0x2
- adds r0, r3
- ldrh r0, [r0]
- ldrh r2, [r5, 0x34]
- adds r0, r2
- strh r0, [r5, 0x34]
- lsls r1, 16
- asrs r1, 20
- strh r1, [r5, 0x20]
- lsls r0, 16
- asrs r2, r0, 20
- strh r2, [r5, 0x22]
- movs r3, 0x38
- ldrsh r0, [r5, r3]
- adds r3, r4, 0
- cmp r0, 0
- beq _0807E640
- adds r0, r1, 0
- adds r0, 0x8
- lsls r0, 16
- movs r1, 0x80
- lsls r1, 17
- cmp r0, r1
- bhi _0807E640
- adds r1, r2, 0
- movs r0, 0x10
- negs r0, r0
- cmp r1, r0
- blt _0807E640
- cmp r1, 0xB0
- bgt _0807E640
- adds r0, r5, 0
- adds r0, 0x3E
- ldrb r2, [r0]
- movs r1, 0x5
- negs r1, r1
- ands r1, r2
- b _0807E64A
- .align 2, 0
-_0807E634: .4byte gUnknown_0839AABC
-_0807E638: .4byte gUnknown_08396FC4
-_0807E63C: .4byte 0x000006dc
-_0807E640:
- adds r0, r5, 0
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
-_0807E64A:
- strb r1, [r0]
- adds r4, r0, 0
- ldrh r0, [r5, 0x2E]
- subs r0, 0x1
- strh r0, [r5, 0x2E]
- lsls r0, 16
- cmp r0, 0
- bne _0807E6BC
- ldr r0, [r3]
- ldr r1, _0807E690 @ =0x000006dc
- adds r0, r1
- ldrb r1, [r0]
- adds r1, 0x1
- lsls r1, 24
- lsrs r1, 24
- adds r0, r5, 0
- bl StartSpriteAnim
- movs r0, 0x1
- strh r0, [r5, 0x36]
- ldr r1, _0807E694 @ =gSpriteCoordOffsetX
- ldrh r0, [r5, 0x20]
- ldrh r1, [r1]
- subs r0, r1
- strh r0, [r5, 0x20]
- ldr r1, _0807E698 @ =gSpriteCoordOffsetY
- ldrh r0, [r5, 0x22]
- ldrh r1, [r1]
- subs r0, r1
- strh r0, [r5, 0x22]
- ldrb r0, [r4]
- movs r1, 0x2
- orrs r0, r1
- strb r0, [r4]
- b _0807E6BC
- .align 2, 0
-_0807E690: .4byte 0x000006dc
-_0807E694: .4byte gSpriteCoordOffsetX
-_0807E698: .4byte gSpriteCoordOffsetY
-_0807E69C:
- adds r0, r5, 0
- adds r0, 0x3F
- ldrb r1, [r0]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _0807E6BC
- adds r2, r5, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- adds r0, r5, 0
- bl sub_807E4EC
-_0807E6BC:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_807E5C0
-
- thumb_func_start sub_807E6C4
-sub_807E6C4: @ 807E6C4
- push {r4,lr}
- adds r4, r0, 0
- ldrh r1, [r4, 0x2E]
- movs r2, 0x2E
- ldrsh r0, [r4, r2]
- cmp r0, 0
- bne _0807E6E4
- adds r0, r4, 0
- bl sub_807E4EC
- ldr r0, _0807E6E0 @ =sub_807E5C0
- str r0, [r4, 0x1C]
- b _0807E6E8
- .align 2, 0
-_0807E6E0: .4byte sub_807E5C0
-_0807E6E4:
- subs r0, r1, 0x1
- strh r0, [r4, 0x2E]
-_0807E6E8:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_807E6C4
-
- thumb_func_start sub_807E6F0
-sub_807E6F0: @ 807E6F0
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r7, r0, 0
- lsls r5, r1, 16
- lsrs r5, 16
- ldr r2, _0807E774 @ =gUnknown_0839AAC4
- ldr r0, _0807E778 @ =gUnknown_08396FC4
- ldr r0, [r0]
- ldr r1, _0807E77C @ =0x000006dc
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 2
- adds r1, r0, r2
- ldrh r1, [r1]
- mov r8, r1
- adds r2, 0x2
- adds r0, r2
- ldrh r4, [r0]
- add r4, r8
- adds r0, r5, 0
- adds r1, r4, 0
- bl __divsi3
- lsls r0, 16
- lsrs r6, r0, 16
- adds r0, r5, 0
- adds r1, r4, 0
- bl __modsi3
- lsls r0, 16
- lsrs r4, r0, 16
- subs r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- ldr r0, _0807E780 @ =0x0000ffff
- cmp r6, r0
- beq _0807E74E
- adds r5, r0, 0
-_0807E73E:
- adds r0, r7, 0
- bl sub_807E4EC
- subs r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- cmp r6, r5
- bne _0807E73E
-_0807E74E:
- cmp r4, r8
- bcs _0807E784
- subs r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- ldr r0, _0807E780 @ =0x0000ffff
- cmp r4, r0
- beq _0807E770
- adds r5, r0, 0
-_0807E760:
- adds r0, r7, 0
- bl sub_807E5C0
- subs r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, r5
- bne _0807E760
-_0807E770:
- movs r0, 0
- b _0807E798
- .align 2, 0
-_0807E774: .4byte gUnknown_0839AAC4
-_0807E778: .4byte gUnknown_08396FC4
-_0807E77C: .4byte 0x000006dc
-_0807E780: .4byte 0x0000ffff
-_0807E784:
- mov r1, r8
- subs r0, r4, r1
- strh r0, [r7, 0x2E]
- adds r2, r7, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- movs r0, 0x1
-_0807E798:
- strh r0, [r7, 0x3A]
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_807E6F0
-
- thumb_func_start sub_807E7A4
-sub_807E7A4: @ 807E7A4
- push {lr}
- ldr r0, _0807E7B0 @ =gUnknown_0839AACC
- bl LoadSpriteSheet
- pop {r0}
- bx r0
- .align 2, 0
-_0807E7B0: .4byte gUnknown_0839AACC
- thumb_func_end sub_807E7A4
-
- thumb_func_start sub_807E7B4
-sub_807E7B4: @ 807E7B4
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r0, _0807E860 @ =gUnknown_08396FC4
- ldr r4, [r0]
- ldr r0, _0807E864 @ =0x000006da
- adds r2, r4, r0
- ldrb r0, [r2]
- cmp r0, 0x18
- bne _0807E7CE
- b _0807E8D4
-_0807E7CE:
- ldrb r7, [r2]
- ldr r0, _0807E868 @ =gSpriteTemplate_839AAA4
- ldr r2, _0807E86C @ =gUnknown_0839AA08
- lsls r6, r7, 2
- adds r2, r6, r2
- movs r3, 0
- ldrsh r1, [r2, r3]
- movs r3, 0x2
- ldrsh r2, [r2, r3]
- movs r3, 0x4E
- bl CreateSpriteAtEnd
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x40
- beq _0807E87C
- ldr r3, _0807E870 @ =gSprites
- lsls r4, r5, 4
- adds r1, r4, r5
- lsls r1, 2
- adds r1, r3
- movs r0, 0
- strh r0, [r1, 0x38]
- lsls r2, r7, 3
- adds r0, r2, r7
- lsls r0, 4
- adds r0, r7
- strh r0, [r1, 0x30]
- lsls r0, 16
- asrs r0, 16
- ldr r1, _0807E874 @ =0x00000257
- mov r10, r6
- mov r9, r3
- mov r12, r4
- mov r8, r2
- cmp r0, r1
- ble _0807E832
- adds r2, r1, 0
-_0807E81A:
- adds r0, r4, r5
- lsls r0, 2
- ldr r6, _0807E870 @ =gSprites
- adds r0, r6
- ldr r3, _0807E878 @ =0xfffffda8
- ldrh r6, [r0, 0x30]
- adds r1, r3, r6
- strh r1, [r0, 0x30]
- lsls r1, 16
- asrs r1, 16
- cmp r1, r2
- bgt _0807E81A
-_0807E832:
- mov r0, r12
- adds r4, r0, r5
- lsls r4, 2
- add r4, r9
- adds r0, r4, 0
- bl sub_807E4EC
- mov r3, r8
- adds r1, r3, r7
- adds r0, r4, 0
- bl sub_807E6F0
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- ldr r0, _0807E860 @ =gUnknown_08396FC4
- ldr r0, [r0]
- add r0, r10
- str r4, [r0]
- b _0807E882
- .align 2, 0
-_0807E860: .4byte gUnknown_08396FC4
-_0807E864: .4byte 0x000006da
-_0807E868: .4byte gSpriteTemplate_839AAA4
-_0807E86C: .4byte gUnknown_0839AA08
-_0807E870: .4byte gSprites
-_0807E874: .4byte 0x00000257
-_0807E878: .4byte 0xfffffda8
-_0807E87C:
- adds r1, r4, r6
- movs r0, 0
- str r0, [r1]
-_0807E882:
- ldr r0, _0807E8B8 @ =gUnknown_08396FC4
- ldr r2, [r0]
- ldr r6, _0807E8BC @ =0x000006da
- adds r1, r2, r6
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x18
- bne _0807E8D8
- movs r3, 0
- adds r1, r2, 0
- ldr r5, _0807E8C0 @ =sub_807E5C0
- ldr r4, _0807E8C4 @ =sub_807E6C4
-_0807E8A0:
- lsls r0, r3, 2
- adds r0, r1, r0
- ldr r2, [r0]
- cmp r2, 0
- beq _0807E8CA
- movs r6, 0x3A
- ldrsh r0, [r2, r6]
- cmp r0, 0
- bne _0807E8C8
- str r5, [r2, 0x1C]
- b _0807E8CA
- .align 2, 0
-_0807E8B8: .4byte gUnknown_08396FC4
-_0807E8BC: .4byte 0x000006da
-_0807E8C0: .4byte sub_807E5C0
-_0807E8C4: .4byte sub_807E6C4
-_0807E8C8:
- str r4, [r2, 0x1C]
-_0807E8CA:
- adds r0, r3, 0x1
- lsls r0, 16
- lsrs r3, r0, 16
- cmp r3, 0x17
- bls _0807E8A0
-_0807E8D4:
- movs r0, 0
- b _0807E8DA
-_0807E8D8:
- movs r0, 0x1
-_0807E8DA:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_807E7B4
-
- thumb_func_start sub_807E8E8
-sub_807E8E8: @ 807E8E8
- push {r4-r7,lr}
- ldr r0, _0807E904 @ =gUnknown_08396FC4
- ldr r3, [r0]
- movs r0, 0xDB
- lsls r0, 3
- adds r4, r3, r0
- ldr r1, _0807E908 @ =0x000006d9
- adds r5, r3, r1
- ldrb r0, [r4]
- ldrb r7, [r5]
- cmp r0, r7
- bne _0807E90C
- movs r0, 0
- b _0807E96E
- .align 2, 0
-_0807E904: .4byte gUnknown_08396FC4
-_0807E908: .4byte 0x000006d9
-_0807E90C:
- ldr r0, _0807E944 @ =0x000006d6
- adds r2, r3, r0
- ldrh r0, [r2]
- adds r0, 0x1
- movs r6, 0
- strh r0, [r2]
- ldr r7, _0807E948 @ =0x000006db
- adds r1, r3, r7
- lsls r0, 16
- lsrs r0, 16
- ldrb r1, [r1]
- cmp r0, r1
- bls _0807E96C
- strh r6, [r2]
- ldrb r0, [r4]
- adds r1, r0, 0
- ldrb r5, [r5]
- cmp r1, r5
- bcs _0807E94C
- adds r0, 0x1
- strb r0, [r4]
- lsls r0, r1, 2
- adds r0, r3, r0
- ldr r1, [r0]
- movs r0, 0x1
- strh r0, [r1, 0x38]
- b _0807E96C
- .align 2, 0
-_0807E944: .4byte 0x000006d6
-_0807E948: .4byte 0x000006db
-_0807E94C:
- subs r0, 0x1
- strb r0, [r4]
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r3, r0
- ldr r0, [r0]
- strh r6, [r0, 0x38]
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r3, r0
- ldr r1, [r0]
- adds r1, 0x3E
- ldrb r0, [r1]
- movs r2, 0x4
- orrs r0, r2
- strb r0, [r1]
-_0807E96C:
- movs r0, 0x1
-_0807E96E:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_807E8E8
-
- thumb_func_start sub_807E974
-sub_807E974: @ 807E974
- push {r4-r7,lr}
- movs r4, 0
- ldr r0, _0807E9BC @ =gUnknown_08396FC4
- ldr r2, [r0]
- ldr r3, _0807E9C0 @ =0x000006da
- adds r1, r2, r3
- adds r7, r0, 0
- ldrb r1, [r1]
- cmp r4, r1
- bcs _0807E9A6
- adds r5, r2, 0
- adds r6, r5, r3
-_0807E98C:
- lsls r0, r4, 2
- adds r0, r5, r0
- ldr r0, [r0]
- cmp r0, 0
- beq _0807E99A
- bl DestroySprite
-_0807E99A:
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- ldrb r0, [r6]
- cmp r4, r0
- bcc _0807E98C
-_0807E9A6:
- ldr r0, [r7]
- ldr r1, _0807E9C0 @ =0x000006da
- adds r0, r1
- movs r1, 0
- strb r1, [r0]
- ldr r0, _0807E9C4 @ =0x00001206
- bl FreeSpriteTilesByTag
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0807E9BC: .4byte gUnknown_08396FC4
-_0807E9C0: .4byte 0x000006da
-_0807E9C4: .4byte 0x00001206
- thumb_func_end sub_807E974
-
- thumb_func_start sub_807E9C8
-sub_807E9C8: @ 807E9C8
- push {r4,lr}
- ldr r0, _0807EA04 @ =gUnknown_08396FC4
- ldr r1, [r0]
- ldr r2, _0807EA08 @ =0x000006cc
- adds r0, r1, r2
- movs r2, 0
- movs r3, 0
- strh r3, [r0]
- ldr r4, _0807EA0C @ =0x000006d2
- adds r0, r1, r4
- strb r2, [r0]
- ldr r0, _0807EA10 @ =0x000006c1
- adds r2, r1, r0
- movs r0, 0x3
- strb r0, [r2]
- subs r4, 0x10
- adds r2, r1, r4
- movs r0, 0x14
- strb r0, [r2]
- ldr r0, _0807EA14 @ =0x000006e5
- adds r2, r1, r0
- movs r0, 0x10
- strb r0, [r2]
- movs r2, 0xDC
- lsls r2, 3
- adds r1, r2
- strh r3, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0807EA04: .4byte gUnknown_08396FC4
-_0807EA08: .4byte 0x000006cc
-_0807EA0C: .4byte 0x000006d2
-_0807EA10: .4byte 0x000006c1
-_0807EA14: .4byte 0x000006e5
- thumb_func_end sub_807E9C8
-
- thumb_func_start sub_807EA18
-sub_807EA18: @ 807EA18
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- bl sub_807E9C8
- ldr r2, _0807EA78 @ =gUnknown_08396FC4
- ldr r1, [r2]
- ldr r3, _0807EA7C @ =0x000006d2
- adds r0, r1, r3
- ldrb r0, [r0]
- cmp r0, 0
- bne _0807EA6E
- mov r8, r2
- adds r7, r1, r3
-_0807EA34:
- bl snowflakes_progress2
- movs r4, 0
- mov r1, r8
- ldr r0, [r1]
- ldr r3, _0807EA80 @ =0x000006e4
- adds r0, r3
- ldrb r0, [r0]
- cmp r4, r0
- bcs _0807EA68
- ldr r0, _0807EA78 @ =gUnknown_08396FC4
- ldr r5, [r0]
- adds r6, r5, r3
-_0807EA4E:
- lsls r1, r4, 2
- adds r0, r5, 0
- adds r0, 0x60
- adds r0, r1
- ldr r0, [r0]
- bl sub_807ED48
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- ldrb r0, [r6]
- cmp r4, r0
- bcc _0807EA4E
-_0807EA68:
- ldrb r0, [r7]
- cmp r0, 0
- beq _0807EA34
-_0807EA6E:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0807EA78: .4byte gUnknown_08396FC4
-_0807EA7C: .4byte 0x000006d2
-_0807EA80: .4byte 0x000006e4
- thumb_func_end sub_807EA18
-
- thumb_func_start snowflakes_progress2
-snowflakes_progress2: @ 807EA84
- push {r4,r5,lr}
- ldr r0, _0807EAB4 @ =gUnknown_08396FC4
- ldr r5, [r0]
- ldr r0, _0807EAB8 @ =0x000006cc
- adds r4, r5, r0
- ldrh r0, [r4]
- cmp r0, 0
- bne _0807EAAC
- bl snowflakes_progress
- lsls r0, 24
- cmp r0, 0
- bne _0807EAAC
- ldr r0, _0807EABC @ =0x000006d2
- adds r1, r5, r0
- movs r0, 0x1
- strb r0, [r1]
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
-_0807EAAC:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0807EAB4: .4byte gUnknown_08396FC4
-_0807EAB8: .4byte 0x000006cc
-_0807EABC: .4byte 0x000006d2
- thumb_func_end snowflakes_progress2
-
- thumb_func_start sub_807EAC0
-sub_807EAC0: @ 807EAC0
- push {r4,lr}
- ldr r0, _0807EAD8 @ =gUnknown_08396FC4
- ldr r2, [r0]
- ldr r0, _0807EADC @ =0x000006ce
- adds r3, r2, r0
- ldrh r1, [r3]
- cmp r1, 0
- beq _0807EAE0
- cmp r1, 0x1
- beq _0807EAF2
- movs r0, 0
- b _0807EB1E
- .align 2, 0
-_0807EAD8: .4byte gUnknown_08396FC4
-_0807EADC: .4byte 0x000006ce
-_0807EAE0:
- ldr r4, _0807EB10 @ =0x000006e5
- adds r0, r2, r4
- strb r1, [r0]
- subs r4, 0x5
- adds r0, r2, r4
- strh r1, [r0]
- ldrh r0, [r3]
- adds r0, 0x1
- strh r0, [r3]
-_0807EAF2:
- bl snowflakes_progress
- lsls r0, 24
- cmp r0, 0
- bne _0807EB1C
- ldr r0, _0807EB14 @ =gUnknown_08396FC4
- ldr r1, [r0]
- ldr r0, _0807EB18 @ =0x000006ce
- adds r1, r0
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- movs r0, 0
- b _0807EB1E
- .align 2, 0
-_0807EB10: .4byte 0x000006e5
-_0807EB14: .4byte gUnknown_08396FC4
-_0807EB18: .4byte 0x000006ce
-_0807EB1C:
- movs r0, 0x1
-_0807EB1E:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_807EAC0
-
- thumb_func_start snowflakes_progress
-snowflakes_progress: @ 807EB24
- push {r4,lr}
- ldr r0, _0807EB40 @ =gUnknown_08396FC4
- ldr r1, [r0]
- ldr r0, _0807EB44 @ =0x000006e4
- adds r3, r1, r0
- ldr r4, _0807EB48 @ =0x000006e5
- adds r2, r1, r4
- ldrb r0, [r3]
- ldrb r4, [r2]
- cmp r0, r4
- bne _0807EB4C
- movs r0, 0
- b _0807EB8E
- .align 2, 0
-_0807EB40: .4byte gUnknown_08396FC4
-_0807EB44: .4byte 0x000006e4
-_0807EB48: .4byte 0x000006e5
-_0807EB4C:
- movs r0, 0xDC
- lsls r0, 3
- adds r1, r0
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x24
- bls _0807EB76
- movs r0, 0
- strh r0, [r1]
- ldrb r0, [r3]
- ldrb r2, [r2]
- cmp r0, r2
- bcs _0807EB72
- bl snowflake_add
- b _0807EB76
-_0807EB72:
- bl snowflake_remove
-_0807EB76:
- ldr r0, _0807EB94 @ =gUnknown_08396FC4
- ldr r0, [r0]
- ldr r2, _0807EB98 @ =0x000006e4
- adds r1, r0, r2
- ldr r4, _0807EB9C @ =0x000006e5
- adds r0, r4
- ldrb r1, [r1]
- ldrb r0, [r0]
- eors r1, r0
- negs r0, r1
- orrs r0, r1
- lsrs r0, 31
-_0807EB8E:
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_0807EB94: .4byte gUnknown_08396FC4
-_0807EB98: .4byte 0x000006e4
-_0807EB9C: .4byte 0x000006e5
- thumb_func_end snowflakes_progress
-
- thumb_func_start snowflake_add
-snowflake_add: @ 807EBA0
- push {r4-r6,lr}
- ldr r0, _0807EBF4 @ =gSpriteTemplate_839AB04
- movs r1, 0
- movs r2, 0
- movs r3, 0x4E
- bl CreateSpriteAtEnd
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x40
- beq _0807EC04
- ldr r0, _0807EBF8 @ =gSprites
- lsls r4, r1, 4
- adds r4, r1
- lsls r4, 2
- adds r4, r0
- ldr r0, _0807EBFC @ =gUnknown_08396FC4
- ldr r5, [r0]
- ldr r0, _0807EC00 @ =0x000006e4
- adds r6, r5, r0
- ldrb r0, [r6]
- strh r0, [r4, 0x36]
- adds r0, r4, 0
- bl sub_807EC40
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x2
- orrs r0, r1
- strb r0, [r2]
- ldrb r0, [r6]
- adds r1, r0, 0x1
- strb r1, [r6]
- lsls r0, 24
- lsrs r0, 22
- adds r5, 0x60
- adds r5, r0
- str r4, [r5]
- movs r0, 0x1
- b _0807EC06
- .align 2, 0
-_0807EBF4: .4byte gSpriteTemplate_839AB04
-_0807EBF8: .4byte gSprites
-_0807EBFC: .4byte gUnknown_08396FC4
-_0807EC00: .4byte 0x000006e4
-_0807EC04:
- movs r0, 0
-_0807EC06:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end snowflake_add
-
- thumb_func_start snowflake_remove
-snowflake_remove: @ 807EC0C
- push {lr}
- ldr r0, _0807EC20 @ =gUnknown_08396FC4
- ldr r1, [r0]
- ldr r0, _0807EC24 @ =0x000006e4
- adds r2, r1, r0
- ldrb r0, [r2]
- cmp r0, 0
- bne _0807EC28
- movs r0, 0
- b _0807EC3C
- .align 2, 0
-_0807EC20: .4byte gUnknown_08396FC4
-_0807EC24: .4byte 0x000006e4
-_0807EC28:
- subs r0, 0x1
- strb r0, [r2]
- lsls r0, 24
- lsrs r0, 22
- adds r1, 0x60
- adds r1, r0
- ldr r0, [r1]
- bl DestroySprite
- movs r0, 0x1
-_0807EC3C:
- pop {r1}
- bx r1
- thumb_func_end snowflake_remove
-
- thumb_func_start sub_807EC40
-sub_807EC40: @ 807EC40
- push {r4-r7,lr}
- adds r5, r0, 0
- bl Random
- movs r1, 0x36
- ldrsh r2, [r5, r1]
- lsls r1, r2, 2
- adds r1, r2
- movs r2, 0x7
- ands r1, r2
- lsls r4, r1, 4
- subs r4, r1
- lsls r4, 1
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1E
- bl __umodsi3
- adds r4, r0
- lsls r4, 16
- lsrs r4, 16
- ldr r1, _0807ECE4 @ =gSpriteCoordOffsetY
- adds r0, r5, 0
- adds r0, 0x29
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- ldrh r1, [r1]
- adds r0, r1
- movs r2, 0x3
- negs r2, r2
- adds r1, r2, 0
- subs r1, r0
- movs r7, 0
- strh r1, [r5, 0x22]
- ldr r1, _0807ECE8 @ =gSpriteCoordOffsetX
- adds r0, r5, 0
- adds r0, 0x28
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- ldrh r1, [r1]
- adds r0, r1
- subs r4, r0
- strh r4, [r5, 0x20]
- movs r1, 0x22
- ldrsh r0, [r5, r1]
- lsls r0, 7
- strh r0, [r5, 0x2E]
- strh r7, [r5, 0x24]
- bl Random
- lsls r0, 16
- lsrs r0, 16
- adds r6, r0, 0
- movs r4, 0x3
- ands r4, r6
- lsls r0, r4, 2
- adds r0, r4
- adds r0, 0x40
- strh r0, [r5, 0x30]
- strh r0, [r5, 0x3C]
- movs r1, 0x1
- bics r1, r6
- adds r0, r5, 0
- bl StartSpriteAnim
- strh r7, [r5, 0x34]
- movs r0, 0x1
- cmp r4, 0
- bne _0807ECD0
- movs r0, 0x2
-_0807ECD0:
- strh r0, [r5, 0x32]
- movs r0, 0x1F
- ands r0, r6
- adds r0, 0xD2
- strh r0, [r5, 0x3A]
- strh r7, [r5, 0x38]
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0807ECE4: .4byte gSpriteCoordOffsetY
-_0807ECE8: .4byte gSpriteCoordOffsetX
- thumb_func_end sub_807EC40
-
- thumb_func_start sub_807ECEC
-sub_807ECEC: @ 807ECEC
- push {r4,lr}
- adds r3, r0, 0
- ldr r0, _0807ED38 @ =gUnknown_08396FC4
- ldr r0, [r0]
- ldr r1, _0807ED3C @ =0x000006e2
- adds r4, r0, r1
- ldrh r0, [r4]
- cmp r0, 0x12
- bls _0807ED32
- adds r2, r3, 0
- adds r2, 0x3E
- ldrb r1, [r2]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
- ldr r0, _0807ED40 @ =sub_807ED48
- str r0, [r3, 0x1C]
- ldr r1, _0807ED44 @ =gSpriteCoordOffsetY
- adds r0, r3, 0
- adds r0, 0x29
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- ldrh r1, [r1]
- adds r0, r1
- movs r1, 0xFA
- subs r1, r0
- movs r2, 0
- strh r1, [r3, 0x22]
- movs r1, 0x22
- ldrsh r0, [r3, r1]
- lsls r0, 7
- strh r0, [r3, 0x2E]
- strh r2, [r4]
-_0807ED32:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0807ED38: .4byte gUnknown_08396FC4
-_0807ED3C: .4byte 0x000006e2
-_0807ED40: .4byte sub_807ED48
-_0807ED44: .4byte gSpriteCoordOffsetY
- thumb_func_end sub_807ECEC
-
- thumb_func_start sub_807ED48
-sub_807ED48: @ 807ED48
- push {r4,r5,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x30]
- ldrh r1, [r4, 0x2E]
- adds r0, r1
- strh r0, [r4, 0x2E]
- lsls r0, 16
- asrs r0, 23
- strh r0, [r4, 0x22]
- ldrh r0, [r4, 0x32]
- ldrh r2, [r4, 0x34]
- adds r0, r2
- movs r1, 0xFF
- ands r0, r1
- strh r0, [r4, 0x34]
- ldr r1, _0807EDC0 @ =gSineTable
- movs r3, 0x34
- ldrsh r0, [r4, r3]
- lsls r0, 1
- adds r0, r1
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0
- bge _0807ED7A
- adds r0, 0x3F
-_0807ED7A:
- asrs r0, 6
- strh r0, [r4, 0x24]
- adds r0, r4, 0
- adds r0, 0x28
- movs r5, 0
- ldrsb r5, [r0, r5]
- ldrh r0, [r4, 0x20]
- adds r0, r5
- ldr r1, _0807EDC4 @ =gSpriteCoordOffsetX
- ldrh r1, [r1]
- adds r3, r1, r0
- ldr r2, _0807EDC8 @ =0x000001ff
- adds r0, r2, 0
- ands r3, r0
- adds r2, r3, 0
- movs r0, 0x80
- lsls r0, 1
- ands r0, r2
- cmp r0, 0
- beq _0807EDAC
- ldr r3, _0807EDCC @ =0xffffff00
- adds r0, r3, 0
- orrs r2, r0
- lsls r0, r2, 16
- lsrs r3, r0, 16
-_0807EDAC:
- lsls r0, r3, 16
- asrs r0, 16
- movs r2, 0x3
- negs r2, r2
- cmp r0, r2
- bge _0807EDD0
- adds r1, r5
- movs r0, 0xF2
- subs r0, r1
- b _0807EDD8
- .align 2, 0
-_0807EDC0: .4byte gSineTable
-_0807EDC4: .4byte gSpriteCoordOffsetX
-_0807EDC8: .4byte 0x000001ff
-_0807EDCC: .4byte 0xffffff00
-_0807EDD0:
- cmp r0, 0xF2
- ble _0807EDDA
- adds r0, r1, r5
- subs r0, r2, r0
-_0807EDD8:
- strh r0, [r4, 0x20]
-_0807EDDA:
- adds r0, r4, 0
- adds r0, 0x29
- movs r3, 0
- ldrsb r3, [r0, r3]
- ldrh r0, [r4, 0x22]
- adds r0, r3
- ldr r1, _0807EE18 @ =gSpriteCoordOffsetY
- ldrh r1, [r1]
- adds r2, r1, r0
- movs r0, 0xFF
- ands r2, r0
- adds r0, r2, 0
- subs r0, 0xA4
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x6
- bhi _0807EE1C
- adds r1, r3
- movs r0, 0xFA
- subs r0, r1
- movs r1, 0
- strh r0, [r4, 0x22]
- movs r2, 0x22
- ldrsh r0, [r4, r2]
- lsls r0, 7
- strh r0, [r4, 0x2E]
- strh r1, [r4, 0x38]
- movs r0, 0xDC
- strh r0, [r4, 0x3A]
- b _0807EE48
- .align 2, 0
-_0807EE18: .4byte gSpriteCoordOffsetY
-_0807EE1C:
- adds r0, r2, 0
- subs r0, 0xF3
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x6
- bhi _0807EE48
- movs r1, 0
- movs r0, 0xA3
- strh r0, [r4, 0x22]
- lsls r0, 7
- strh r0, [r4, 0x2E]
- strh r1, [r4, 0x38]
- movs r0, 0xDC
- strh r0, [r4, 0x3A]
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- ldr r0, _0807EE7C @ =sub_807ECEC
- str r0, [r4, 0x1C]
-_0807EE48:
- ldrh r0, [r4, 0x38]
- adds r0, 0x1
- strh r0, [r4, 0x38]
- lsls r0, 16
- asrs r0, 16
- movs r3, 0x3A
- ldrsh r1, [r4, r3]
- cmp r0, r1
- bne _0807EE74
- adds r0, r4, 0
- bl sub_807EC40
- movs r0, 0xFA
- strh r0, [r4, 0x22]
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- ldr r0, _0807EE7C @ =sub_807ECEC
- str r0, [r4, 0x1C]
-_0807EE74:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0807EE7C: .4byte sub_807ECEC
- thumb_func_end sub_807ED48
-
- thumb_func_start sub_807EE80
-sub_807EE80: @ 807EE80
- push {r4,r5,lr}
- ldr r0, _0807EED8 @ =gUnknown_08396FC4
- ldr r1, [r0]
- ldr r2, _0807EEDC @ =0x000006cc
- adds r0, r1, r2
- movs r3, 0
- movs r2, 0
- strh r2, [r0]
- ldr r5, _0807EEE0 @ =0x000006d2
- adds r4, r1, r5
- strb r3, [r4]
- adds r5, 0x4
- adds r0, r1, r5
- strh r2, [r0]
- ldr r0, _0807EEE4 @ =0x000006db
- adds r2, r1, r0
- movs r0, 0x4
- strb r0, [r2]
- ldr r2, _0807EEE8 @ =0x000006dc
- adds r0, r1, r2
- strb r3, [r0]
- adds r5, 0x3
- adds r2, r1, r5
- movs r0, 0x10
- strb r0, [r2]
- ldr r0, _0807EEEC @ =0x000006c1
- adds r2, r1, r0
- movs r0, 0x3
- strb r0, [r2]
- subs r5, 0x17
- adds r2, r1, r5
- movs r0, 0x14
- strb r0, [r2]
- strb r3, [r4]
- ldr r0, _0807EEF0 @ =0x000006ed
- adds r1, r0
- strb r3, [r1]
- movs r0, 0x51
- bl sub_807DD5C
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0807EED8: .4byte gUnknown_08396FC4
-_0807EEDC: .4byte 0x000006cc
-_0807EEE0: .4byte 0x000006d2
-_0807EEE4: .4byte 0x000006db
-_0807EEE8: .4byte 0x000006dc
-_0807EEEC: .4byte 0x000006c1
-_0807EEF0: .4byte 0x000006ed
- thumb_func_end sub_807EE80
-
- thumb_func_start sub_807EEF4
-sub_807EEF4: @ 807EEF4
- push {r4,lr}
- bl sub_807EE80
- ldr r0, _0807EF1C @ =gUnknown_08396FC4
- ldr r1, [r0]
- ldr r2, _0807EF20 @ =0x000006d2
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _0807EF14
- adds r4, r1, r2
-_0807EF0A:
- bl sub_807EFC0
- ldrb r0, [r4]
- cmp r0, 0
- beq _0807EF0A
-_0807EF14:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0807EF1C: .4byte gUnknown_08396FC4
-_0807EF20: .4byte 0x000006d2
- thumb_func_end sub_807EEF4
-
- thumb_func_start sub_807EF24
-sub_807EF24: @ 807EF24
- push {r4,r5,lr}
- ldr r0, _0807EF78 @ =gUnknown_08396FC4
- ldr r1, [r0]
- ldr r2, _0807EF7C @ =0x000006cc
- adds r0, r1, r2
- movs r4, 0
- movs r2, 0
- strh r2, [r0]
- ldr r5, _0807EF80 @ =0x000006d2
- adds r3, r1, r5
- strb r4, [r3]
- adds r5, 0x4
- adds r0, r1, r5
- strh r2, [r0]
- ldr r0, _0807EF84 @ =0x000006db
- adds r2, r1, r0
- movs r0, 0x4
- strb r0, [r2]
- adds r5, 0x6
- adds r2, r1, r5
- movs r0, 0x1
- strb r0, [r2]
- ldr r0, _0807EF88 @ =0x000006d9
- adds r2, r1, r0
- movs r0, 0x18
- strb r0, [r2]
- subs r5, 0x1B
- adds r2, r1, r5
- movs r0, 0x3
- strb r0, [r2]
- ldr r0, _0807EF8C @ =0x000006c2
- adds r1, r0
- movs r0, 0x14
- strb r0, [r1]
- strb r4, [r3]
- movs r0, 0x53
- bl sub_807DD5C
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0807EF78: .4byte gUnknown_08396FC4
-_0807EF7C: .4byte 0x000006cc
-_0807EF80: .4byte 0x000006d2
-_0807EF84: .4byte 0x000006db
-_0807EF88: .4byte 0x000006d9
-_0807EF8C: .4byte 0x000006c2
- thumb_func_end sub_807EF24
-
- thumb_func_start sub_807EF90
-sub_807EF90: @ 807EF90
- push {r4,lr}
- bl sub_807EF24
- ldr r0, _0807EFB8 @ =gUnknown_08396FC4
- ldr r1, [r0]
- ldr r2, _0807EFBC @ =0x000006d2
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _0807EFB0
- adds r4, r1, r2
-_0807EFA6:
- bl sub_807EFC0
- ldrb r0, [r4]
- cmp r0, 0
- beq _0807EFA6
-_0807EFB0:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0807EFB8: .4byte gUnknown_08396FC4
-_0807EFBC: .4byte 0x000006d2
- thumb_func_end sub_807EF90
-
- thumb_func_start sub_807EFC0
-sub_807EFC0: @ 807EFC0
- push {r4,r5,lr}
- bl sub_807F434
- ldr r0, _0807EFE0 @ =gUnknown_08396FC4
- ldr r0, [r0]
- ldr r1, _0807EFE4 @ =0x000006cc
- adds r0, r1
- ldrh r0, [r0]
- cmp r0, 0xE
- bls _0807EFD6
- b _0807F336
-_0807EFD6:
- lsls r0, 2
- ldr r1, _0807EFE8 @ =_0807EFEC
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0807EFE0: .4byte gUnknown_08396FC4
-_0807EFE4: .4byte 0x000006cc
-_0807EFE8: .4byte _0807EFEC
- .align 2, 0
-_0807EFEC:
- .4byte _0807F028
- .4byte _0807F044
- .4byte _0807F068
- .4byte _0807F098
- .4byte _0807F0BC
- .4byte _0807F0EC
- .4byte _0807F11C
- .4byte _0807F148
- .4byte _0807F166
- .4byte _0807F1C4
- .4byte _0807F248
- .4byte _0807F270
- .4byte _0807F2A0
- .4byte _0807F2E4
- .4byte _0807F318
-_0807F028:
- bl sub_807E7A4
- ldr r0, _0807F03C @ =gUnknown_08396FC4
- ldr r1, [r0]
- ldr r2, _0807F040 @ =0x000006cc
- adds r1, r2
- ldrh r0, [r1]
- adds r0, 0x1
- b _0807F334
- .align 2, 0
-_0807F03C: .4byte gUnknown_08396FC4
-_0807F040: .4byte 0x000006cc
-_0807F044:
- bl sub_807E7B4
- lsls r0, 24
- cmp r0, 0
- beq _0807F050
- b _0807F336
-_0807F050:
- ldr r0, _0807F060 @ =gUnknown_08396FC4
- ldr r1, [r0]
- ldr r3, _0807F064 @ =0x000006cc
- adds r1, r3
- ldrh r0, [r1]
- adds r0, 0x1
- b _0807F334
- .align 2, 0
-_0807F060: .4byte gUnknown_08396FC4
-_0807F064: .4byte 0x000006cc
-_0807F068:
- bl sub_807E8E8
- lsls r0, 24
- cmp r0, 0
- beq _0807F074
- b _0807F336
-_0807F074:
- ldr r0, _0807F08C @ =gUnknown_08396FC4
- ldr r1, [r0]
- ldr r0, _0807F090 @ =0x000006d2
- adds r2, r1, r0
- movs r0, 0x1
- strb r0, [r2]
- ldr r2, _0807F094 @ =0x000006cc
- adds r1, r2
- ldrh r0, [r1]
- adds r0, 0x1
- b _0807F334
- .align 2, 0
-_0807F08C: .4byte gUnknown_08396FC4
-_0807F090: .4byte 0x000006d2
-_0807F094: .4byte 0x000006cc
-_0807F098:
- ldr r0, _0807F0B0 @ =gUnknown_08396FC4
- ldr r1, [r0]
- ldr r3, _0807F0B4 @ =0x000006c6
- adds r0, r1, r3
- ldrb r0, [r0]
- cmp r0, 0
- bne _0807F0A8
- b _0807F336
-_0807F0A8:
- ldr r0, _0807F0B8 @ =0x000006cc
- adds r1, r0
- movs r0, 0x6
- b _0807F334
- .align 2, 0
-_0807F0B0: .4byte gUnknown_08396FC4
-_0807F0B4: .4byte 0x000006c6
-_0807F0B8: .4byte 0x000006cc
-_0807F0BC:
- ldr r0, _0807F10C @ =gUnknown_08396FC4
- ldr r4, [r0]
- ldr r2, _0807F110 @ =0x000006ea
- adds r1, r4, r2
- movs r0, 0x1
- strb r0, [r1]
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r5, 0xB4
- lsls r5, 1
- adds r1, r5, 0
- bl __umodsi3
- adds r0, r5
- ldr r3, _0807F114 @ =0x000006e6
- adds r1, r4, r3
- strh r0, [r1]
- ldr r0, _0807F118 @ =0x000006cc
- adds r4, r0
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
-_0807F0EC:
- ldr r0, _0807F10C @ =gUnknown_08396FC4
- ldr r2, [r0]
- ldr r3, _0807F114 @ =0x000006e6
- adds r1, r2, r3
- ldrh r0, [r1]
- subs r0, 0x1
- strh r0, [r1]
- lsls r0, 16
- cmp r0, 0
- beq _0807F102
- b _0807F336
-_0807F102:
- ldr r0, _0807F118 @ =0x000006cc
- adds r1, r2, r0
- ldrh r0, [r1]
- adds r0, 0x1
- b _0807F334
- .align 2, 0
-_0807F10C: .4byte gUnknown_08396FC4
-_0807F110: .4byte 0x000006ea
-_0807F114: .4byte 0x000006e6
-_0807F118: .4byte 0x000006cc
-_0807F11C:
- ldr r0, _0807F13C @ =gUnknown_08396FC4
- ldr r4, [r0]
- ldr r1, _0807F140 @ =0x000006ea
- adds r0, r4, r1
- movs r5, 0x1
- strb r5, [r0]
- bl Random
- lsls r0, 16
- lsrs r0, 16
- ands r0, r5
- ldr r2, _0807F144 @ =0x000006eb
- adds r1, r4, r2
- strb r0, [r1]
- b _0807F1A4
- .align 2, 0
-_0807F13C: .4byte gUnknown_08396FC4
-_0807F140: .4byte 0x000006ea
-_0807F144: .4byte 0x000006eb
-_0807F148:
- bl Random
- ldr r1, _0807F1B0 @ =gUnknown_08396FC4
- ldr r2, [r1]
- movs r1, 0x1
- ands r1, r0
- adds r1, 0x1
- ldr r3, _0807F1B4 @ =0x000006ec
- adds r0, r2, r3
- strb r1, [r0]
- ldr r0, _0807F1B8 @ =0x000006cc
- adds r2, r0
- ldrh r0, [r2]
- adds r0, 0x1
- strh r0, [r2]
-_0807F166:
- movs r0, 0x13
- bl sub_807D5BC
- ldr r0, _0807F1B0 @ =gUnknown_08396FC4
- ldr r1, [r0]
- ldr r2, _0807F1BC @ =0x000006eb
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _0807F18A
- ldr r3, _0807F1B4 @ =0x000006ec
- adds r0, r1, r3
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _0807F18A
- movs r0, 0x14
- bl sub_807F3F8
-_0807F18A:
- bl Random
- ldr r1, _0807F1B0 @ =gUnknown_08396FC4
- ldr r4, [r1]
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x3
- bl __umodsi3
- adds r0, 0x6
- ldr r2, _0807F1C0 @ =0x000006e6
- adds r1, r4, r2
- strh r0, [r1]
-_0807F1A4:
- ldr r3, _0807F1B8 @ =0x000006cc
- adds r4, r3
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- b _0807F336
- .align 2, 0
-_0807F1B0: .4byte gUnknown_08396FC4
-_0807F1B4: .4byte 0x000006ec
-_0807F1B8: .4byte 0x000006cc
-_0807F1BC: .4byte 0x000006eb
-_0807F1C0: .4byte 0x000006e6
-_0807F1C4:
- ldr r0, _0807F210 @ =gUnknown_08396FC4
- ldr r4, [r0]
- ldr r0, _0807F214 @ =0x000006e6
- adds r5, r4, r0
- ldrh r0, [r5]
- subs r0, 0x1
- strh r0, [r5]
- lsls r0, 16
- cmp r0, 0
- beq _0807F1DA
- b _0807F336
-_0807F1DA:
- movs r0, 0x3
- bl sub_807D5BC
- ldr r2, _0807F218 @ =0x000006ea
- adds r1, r4, r2
- movs r0, 0x1
- strb r0, [r1]
- ldr r3, _0807F21C @ =0x000006ec
- adds r1, r4, r3
- ldrb r0, [r1]
- subs r0, 0x1
- strb r0, [r1]
- lsls r0, 24
- cmp r0, 0
- beq _0807F224
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xF
- ands r0, r1
- adds r0, 0x3C
- strh r0, [r5]
- ldr r0, _0807F220 @ =0x000006cc
- adds r1, r4, r0
- movs r0, 0xA
- b _0807F334
- .align 2, 0
-_0807F210: .4byte gUnknown_08396FC4
-_0807F214: .4byte 0x000006e6
-_0807F218: .4byte 0x000006ea
-_0807F21C: .4byte 0x000006ec
-_0807F220: .4byte 0x000006cc
-_0807F224:
- ldr r1, _0807F234 @ =0x000006eb
- adds r0, r4, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _0807F23C
- ldr r2, _0807F238 @ =0x000006cc
- adds r1, r4, r2
- b _0807F332
- .align 2, 0
-_0807F234: .4byte 0x000006eb
-_0807F238: .4byte 0x000006cc
-_0807F23C:
- ldr r3, _0807F244 @ =0x000006cc
- adds r1, r4, r3
- movs r0, 0xB
- b _0807F334
- .align 2, 0
-_0807F244: .4byte 0x000006cc
-_0807F248:
- ldr r0, _0807F264 @ =gUnknown_08396FC4
- ldr r2, [r0]
- ldr r0, _0807F268 @ =0x000006e6
- adds r1, r2, r0
- ldrh r0, [r1]
- subs r0, 0x1
- strh r0, [r1]
- lsls r0, 16
- cmp r0, 0
- bne _0807F336
- ldr r3, _0807F26C @ =0x000006cc
- adds r1, r2, r3
- movs r0, 0x8
- b _0807F334
- .align 2, 0
-_0807F264: .4byte gUnknown_08396FC4
-_0807F268: .4byte 0x000006e6
-_0807F26C: .4byte 0x000006cc
-_0807F270:
- bl Random
- ldr r1, _0807F294 @ =gUnknown_08396FC4
- ldr r2, [r1]
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xF
- ands r0, r1
- adds r0, 0x3C
- ldr r3, _0807F298 @ =0x000006e6
- adds r1, r2, r3
- strh r0, [r1]
- ldr r0, _0807F29C @ =0x000006cc
- adds r2, r0
- ldrh r0, [r2]
- adds r0, 0x1
- strh r0, [r2]
- b _0807F336
- .align 2, 0
-_0807F294: .4byte gUnknown_08396FC4
-_0807F298: .4byte 0x000006e6
-_0807F29C: .4byte 0x000006cc
-_0807F2A0:
- ldr r0, _0807F2D8 @ =gUnknown_08396FC4
- ldr r5, [r0]
- ldr r1, _0807F2DC @ =0x000006e6
- adds r4, r5, r1
- ldrh r0, [r4]
- subs r0, 0x1
- strh r0, [r4]
- lsls r0, 16
- cmp r0, 0
- bne _0807F336
- movs r0, 0x64
- bl sub_807F3F8
- movs r0, 0x13
- bl sub_807D5BC
- bl Random
- movs r1, 0xF
- ands r1, r0
- adds r1, 0x1E
- strh r1, [r4]
- ldr r2, _0807F2E0 @ =0x000006cc
- adds r1, r5, r2
- ldrh r0, [r1]
- adds r0, 0x1
- b _0807F334
- .align 2, 0
-_0807F2D8: .4byte gUnknown_08396FC4
-_0807F2DC: .4byte 0x000006e6
-_0807F2E0: .4byte 0x000006cc
-_0807F2E4:
- ldr r0, _0807F30C @ =gUnknown_08396FC4
- ldr r4, [r0]
- ldr r3, _0807F310 @ =0x000006e6
- adds r1, r4, r3
- ldrh r0, [r1]
- subs r0, 0x1
- strh r0, [r1]
- lsls r0, 16
- cmp r0, 0
- bne _0807F336
- movs r0, 0x13
- movs r1, 0x3
- movs r2, 0x5
- bl sub_807D5F0
- ldr r0, _0807F314 @ =0x000006cc
- adds r1, r4, r0
- ldrh r0, [r1]
- adds r0, 0x1
- b _0807F334
- .align 2, 0
-_0807F30C: .4byte gUnknown_08396FC4
-_0807F310: .4byte 0x000006e6
-_0807F314: .4byte 0x000006cc
-_0807F318:
- ldr r0, _0807F33C @ =gUnknown_08396FC4
- ldr r2, [r0]
- ldr r1, _0807F340 @ =0x000006c6
- adds r0, r2, r1
- ldrb r0, [r0]
- cmp r0, 0x3
- bne _0807F336
- ldr r3, _0807F344 @ =0x000006ea
- adds r1, r2, r3
- movs r0, 0x1
- strb r0, [r1]
- ldr r0, _0807F348 @ =0x000006cc
- adds r1, r2, r0
-_0807F332:
- movs r0, 0x4
-_0807F334:
- strh r0, [r1]
-_0807F336:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0807F33C: .4byte gUnknown_08396FC4
-_0807F340: .4byte 0x000006c6
-_0807F344: .4byte 0x000006ea
-_0807F348: .4byte 0x000006cc
- thumb_func_end sub_807EFC0
-
- thumb_func_start sub_807F34C
-sub_807F34C: @ 807F34C
- push {r4-r6,lr}
- ldr r0, _0807F368 @ =gUnknown_08396FC4
- ldr r6, [r0]
- ldr r0, _0807F36C @ =0x000006ce
- adds r5, r6, r0
- ldrh r1, [r5]
- cmp r1, 0x1
- beq _0807F382
- cmp r1, 0x1
- bgt _0807F370
- cmp r1, 0
- beq _0807F376
- b _0807F3E8
- .align 2, 0
-_0807F368: .4byte gUnknown_08396FC4
-_0807F36C: .4byte 0x000006ce
-_0807F370:
- cmp r1, 0x2
- beq _0807F3CC
- b _0807F3E8
-_0807F376:
- ldr r2, _0807F3BC @ =0x000006ea
- adds r0, r6, r2
- strb r1, [r0]
- ldrh r0, [r5]
- adds r0, 0x1
- strh r0, [r5]
-_0807F382:
- bl sub_807EFC0
- ldr r0, _0807F3C0 @ =gUnknown_08396FC4
- ldr r2, [r0]
- ldr r1, _0807F3BC @ =0x000006ea
- adds r0, r2, r1
- ldrb r0, [r0]
- cmp r0, 0
- beq _0807F3F0
- subs r1, 0x19
- adds r0, r2, r1
- ldrb r0, [r0]
- cmp r0, 0x3
- beq _0807F3E8
- cmp r0, 0x5
- beq _0807F3E8
- cmp r0, 0xD
- beq _0807F3E8
- ldr r0, _0807F3C4 @ =0x000006d9
- adds r1, r2, r0
- movs r0, 0
- strb r0, [r1]
- ldr r0, _0807F3C8 @ =0x000006ce
- adds r1, r2, r0
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _0807F3F0
- .align 2, 0
-_0807F3BC: .4byte 0x000006ea
-_0807F3C0: .4byte gUnknown_08396FC4
-_0807F3C4: .4byte 0x000006d9
-_0807F3C8: .4byte 0x000006ce
-_0807F3CC:
- bl sub_807E8E8
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- bne _0807F3F0
- bl sub_807E974
- ldr r1, _0807F3EC @ =0x000006ed
- adds r0, r6, r1
- strb r4, [r0]
- ldrh r0, [r5]
- adds r0, 0x1
- strh r0, [r5]
-_0807F3E8:
- movs r0, 0
- b _0807F3F2
- .align 2, 0
-_0807F3EC: .4byte 0x000006ed
-_0807F3F0:
- movs r0, 0x1
-_0807F3F2:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_807F34C
-
- thumb_func_start sub_807F3F8
-sub_807F3F8: @ 807F3F8
- push {r4-r6,lr}
- lsls r0, 16
- lsrs r6, r0, 16
- ldr r0, _0807F42C @ =gUnknown_08396FC4
- ldr r4, [r0]
- ldr r0, _0807F430 @ =0x000006ed
- adds r5, r4, r0
- ldrb r0, [r5]
- cmp r0, 0
- bne _0807F426
- bl Random
- lsls r0, 16
- lsrs r0, 16
- adds r1, r6, 0
- bl __umodsi3
- movs r2, 0xDD
- lsls r2, 3
- adds r1, r4, r2
- strh r0, [r1]
- movs r0, 0x1
- strb r0, [r5]
-_0807F426:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0807F42C: .4byte gUnknown_08396FC4
-_0807F430: .4byte 0x000006ed
- thumb_func_end sub_807F3F8
-
- thumb_func_start sub_807F434
-sub_807F434: @ 807F434
- push {r4,lr}
- ldr r0, _0807F46C @ =gUnknown_08396FC4
- ldr r1, [r0]
- ldr r2, _0807F470 @ =0x000006ed
- adds r0, r1, r2
- ldrb r4, [r0]
- cmp r4, 0x1
- bne _0807F494
- movs r0, 0xDD
- lsls r0, 3
- adds r1, r0
- ldrh r0, [r1]
- cmp r0, 0
- bne _0807F490
- bl IsSEPlaying
- lsls r0, 24
- cmp r0, 0
- bne _0807F494
- bl Random
- ands r4, r0
- cmp r4, 0
- beq _0807F474
- movs r0, 0x57
- bl PlaySE
- b _0807F47A
- .align 2, 0
-_0807F46C: .4byte gUnknown_08396FC4
-_0807F470: .4byte 0x000006ed
-_0807F474:
- movs r0, 0x58
- bl PlaySE
-_0807F47A:
- ldr r0, _0807F488 @ =gUnknown_08396FC4
- ldr r0, [r0]
- ldr r1, _0807F48C @ =0x000006ed
- adds r0, r1
- movs r1, 0
- strb r1, [r0]
- b _0807F494
- .align 2, 0
-_0807F488: .4byte gUnknown_08396FC4
-_0807F48C: .4byte 0x000006ed
-_0807F490:
- subs r0, 0x1
- strh r0, [r1]
-_0807F494:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_807F434
-
- thumb_func_start sub_807F49C
-sub_807F49C: @ 807F49C
- push {lr}
- ldr r0, _0807F4E8 @ =gUnknown_08396FC4
- ldr r3, [r0]
- ldr r0, _0807F4EC @ =0x000006cc
- adds r1, r3, r0
- movs r2, 0
- movs r0, 0
- strh r0, [r1]
- ldr r1, _0807F4F0 @ =0x000006d2
- adds r0, r3, r1
- strb r2, [r0]
- subs r1, 0x11
- adds r0, r3, r1
- strb r2, [r0]
- ldr r2, _0807F4F4 @ =0x000006c2
- adds r1, r3, r2
- movs r0, 0x14
- strb r0, [r1]
- ldr r1, _0807F4F8 @ =0x000006fb
- adds r0, r3, r1
- ldrb r1, [r0]
- cmp r1, 0
- bne _0807F4E4
- adds r2, 0x2E
- adds r0, r3, r2
- strh r1, [r0]
- adds r2, 0x2
- adds r0, r3, r2
- strh r1, [r0]
- subs r2, 0x4
- adds r0, r3, r2
- strh r1, [r0]
- movs r0, 0
- movs r1, 0x10
- bl sub_807DB64
-_0807F4E4:
- pop {r0}
- bx r0
- .align 2, 0
-_0807F4E8: .4byte gUnknown_08396FC4
-_0807F4EC: .4byte 0x000006cc
-_0807F4F0: .4byte 0x000006d2
-_0807F4F4: .4byte 0x000006c2
-_0807F4F8: .4byte 0x000006fb
- thumb_func_end sub_807F49C
-
- thumb_func_start sub_807F4FC
-sub_807F4FC: @ 807F4FC
- push {r4,lr}
- bl sub_807F49C
- ldr r0, _0807F524 @ =gUnknown_08396FC4
- ldr r1, [r0]
- ldr r2, _0807F528 @ =0x000006d2
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _0807F51C
- adds r4, r1, r2
-_0807F512:
- bl sub_807F52C
- ldrb r0, [r4]
- cmp r0, 0
- beq _0807F512
-_0807F51C:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0807F524: .4byte gUnknown_08396FC4
-_0807F528: .4byte 0x000006d2
- thumb_func_end sub_807F4FC
-
- thumb_func_start sub_807F52C
-sub_807F52C: @ 807F52C
- push {r4-r6,lr}
- ldr r0, _0807F578 @ =gUnknown_08396FC4
- ldr r6, [r0]
- ldr r0, _0807F57C @ =gSpriteCoordOffsetX
- ldr r1, _0807F580 @ =0x000006f2
- adds r2, r6, r1
- ldrh r0, [r0]
- ldrh r1, [r2]
- subs r0, r1
- movs r1, 0xFF
- ands r0, r1
- ldr r3, _0807F584 @ =0x000006ee
- adds r1, r6, r3
- strh r0, [r1]
- movs r0, 0xDE
- lsls r0, 3
- adds r1, r6, r0
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x3
- bls _0807F566
- movs r0, 0
- strh r0, [r1]
- ldrh r0, [r2]
- adds r0, 0x1
- strh r0, [r2]
-_0807F566:
- ldr r1, _0807F588 @ =0x000006cc
- adds r5, r6, r1
- ldrh r4, [r5]
- cmp r4, 0
- beq _0807F58C
- cmp r4, 0x1
- beq _0807F5CC
- b _0807F5E2
- .align 2, 0
-_0807F578: .4byte gUnknown_08396FC4
-_0807F57C: .4byte gSpriteCoordOffsetX
-_0807F580: .4byte 0x000006f2
-_0807F584: .4byte 0x000006ee
-_0807F588: .4byte 0x000006cc
-_0807F58C:
- bl sub_807F6E8
- movs r3, 0xDA
- lsls r3, 3
- adds r0, r6, r3
- ldrb r0, [r0]
- cmp r0, 0x6
- bne _0807F5A8
- movs r0, 0xC
- movs r1, 0x8
- movs r2, 0x3
- bl sub_807DBA4
- b _0807F5B2
-_0807F5A8:
- movs r0, 0x4
- movs r1, 0x10
- movs r2, 0
- bl sub_807DBA4
-_0807F5B2:
- ldr r0, _0807F5C4 @ =gUnknown_08396FC4
- ldr r1, [r0]
- ldr r0, _0807F5C8 @ =0x000006cc
- adds r1, r0
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _0807F5E2
- .align 2, 0
-_0807F5C4: .4byte gUnknown_08396FC4
-_0807F5C8: .4byte 0x000006cc
-_0807F5CC:
- bl sub_807DBE8
- lsls r0, 24
- cmp r0, 0
- beq _0807F5E2
- ldr r1, _0807F5E8 @ =0x000006d2
- adds r0, r6, r1
- strb r4, [r0]
- ldrh r0, [r5]
- adds r0, 0x1
- strh r0, [r5]
-_0807F5E2:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0807F5E8: .4byte 0x000006d2
- thumb_func_end sub_807F52C
-
- thumb_func_start sub_807F5EC
-sub_807F5EC: @ 807F5EC
- push {r4,lr}
- ldr r0, _0807F63C @ =gUnknown_08396FC4
- ldr r2, [r0]
- ldr r0, _0807F640 @ =gSpriteCoordOffsetX
- ldr r1, _0807F644 @ =0x000006f2
- adds r3, r2, r1
- ldrh r0, [r0]
- ldrh r1, [r3]
- subs r0, r1
- movs r1, 0xFF
- ands r0, r1
- ldr r4, _0807F648 @ =0x000006ee
- adds r1, r2, r4
- strh r0, [r1]
- movs r0, 0xDE
- lsls r0, 3
- adds r1, r2, r0
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x3
- bls _0807F626
- movs r0, 0
- strh r0, [r1]
- ldrh r0, [r3]
- adds r0, 0x1
- strh r0, [r3]
-_0807F626:
- ldr r1, _0807F64C @ =0x000006ce
- adds r4, r2, r1
- ldrh r0, [r4]
- cmp r0, 0x1
- beq _0807F662
- cmp r0, 0x1
- bgt _0807F650
- cmp r0, 0
- beq _0807F656
- b _0807F67A
- .align 2, 0
-_0807F63C: .4byte gUnknown_08396FC4
-_0807F640: .4byte gSpriteCoordOffsetX
-_0807F644: .4byte 0x000006f2
-_0807F648: .4byte 0x000006ee
-_0807F64C: .4byte 0x000006ce
-_0807F650:
- cmp r0, 0x2
- beq _0807F66E
- b _0807F67A
-_0807F656:
- movs r0, 0
- movs r1, 0x10
- movs r2, 0x3
- bl sub_807DBA4
- b _0807F672
-_0807F662:
- bl sub_807DBE8
- lsls r0, 24
- cmp r0, 0
- beq _0807F67E
- b _0807F672
-_0807F66E:
- bl sub_807F7A4
-_0807F672:
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- b _0807F67E
-_0807F67A:
- movs r0, 0
- b _0807F680
-_0807F67E:
- movs r0, 0x1
-_0807F680:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_807F5EC
-
- thumb_func_start sub_807F688
-sub_807F688: @ 807F688
- push {r4,lr}
- adds r3, r0, 0
- ldr r0, _0807F6D4 @ =gSpriteCoordOffsetY
- ldrb r0, [r0]
- strh r0, [r3, 0x26]
- ldr r0, _0807F6D8 @ =gUnknown_08396FC4
- ldr r0, [r0]
- ldr r1, _0807F6DC @ =0x000006ee
- adds r2, r0, r1
- ldrh r1, [r2]
- adds r1, 0x20
- movs r4, 0x2E
- ldrsh r0, [r3, r4]
- lsls r0, 6
- adds r1, r0
- strh r1, [r3, 0x20]
- lsls r1, 16
- ldr r0, _0807F6E0 @ =0x010f0000
- cmp r1, r0
- ble _0807F6CC
- movs r0, 0xF0
- lsls r0, 1
- adds r1, r0, 0
- ldrh r2, [r2]
- adds r1, r2
- movs r4, 0x2E
- ldrsh r2, [r3, r4]
- movs r0, 0x4
- subs r0, r2
- lsls r0, 6
- subs r1, r0
- ldr r0, _0807F6E4 @ =0x000001ff
- ands r1, r0
- strh r1, [r3, 0x20]
-_0807F6CC:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0807F6D4: .4byte gSpriteCoordOffsetY
-_0807F6D8: .4byte gUnknown_08396FC4
-_0807F6DC: .4byte 0x000006ee
-_0807F6E0: .4byte 0x010f0000
-_0807F6E4: .4byte 0x000001ff
- thumb_func_end sub_807F688
-
thumb_func_start sub_807F6E8
sub_807F6E8: @ 807F6E8
push {r4,r5,lr}
diff --git a/asm/libagbsyscall.s b/asm/libagbsyscall.s
index 3b59592b6..c874e8a77 100644
--- a/asm/libagbsyscall.s
+++ b/asm/libagbsyscall.s
@@ -69,7 +69,7 @@ SoftReset: @ 81E0814
ldr r3, =0x04000208
movs r2, 0
strb r2, [r3]
- ldr r1, =0x03007f00
+ ldr r1, =0x03007f00 @ User Stack
mov sp, r1
swi 0x1
swi 0
diff --git a/asm/pokedex_area_screen.s b/asm/pokedex_area_screen.s
index 9e380f597..c8caf3628 100644
--- a/asm/pokedex_area_screen.s
+++ b/asm/pokedex_area_screen.s
@@ -9,7 +9,7 @@
thumb_func_start UnusedPokedexAreaScreen
UnusedPokedexAreaScreen: @ 8110664
push {lr}
- ldr r3, _08110678 @ =0x02000000
+ ldr r3, _08110678 @ =gSharedMem
str r1, [r3, 0x4]
str r2, [r3, 0x8]
strh r0, [r3, 0xE]
@@ -18,7 +18,7 @@ UnusedPokedexAreaScreen: @ 8110664
pop {r0}
bx r0
.align 2, 0
-_08110678: .4byte 0x02000000
+_08110678: .4byte gSharedMem
_0811067C: .4byte CB2_UnusedPokedexAreaScreen
thumb_func_end UnusedPokedexAreaScreen
@@ -89,7 +89,7 @@ _08110714: .4byte REG_BG0VOFS
_08110718: .4byte 0x0000fff8
_0811071C: .4byte REG_BG2VOFS
_08110720:
- ldr r4, _0811073C @ =0x020006e8
+ ldr r4, _0811073C @ =gSharedMem + 0x6E8
adds r0, r4, 0
movs r1, 0
bl InitRegionMap
@@ -102,7 +102,7 @@ _08110720:
bl StringFill
b _081107C0
.align 2, 0
-_0811073C: .4byte 0x020006e8
+_0811073C: .4byte gSharedMem + 0x6E8
_08110740:
bl sub_8110824
b _081107C0
@@ -189,7 +189,7 @@ sub_81107DC: @ 81107DC
thumb_func_start sub_81107F0
sub_81107F0: @ 81107F0
push {lr}
- ldr r0, _08110810 @ =0x02000000
+ ldr r0, _08110810 @ =gSharedMem
ldr r0, [r0]
bl _call_via_r0
bl sub_8111110
@@ -199,23 +199,23 @@ sub_81107F0: @ 81107F0
pop {r0}
bx r0
.align 2, 0
-_08110810: .4byte 0x02000000
+_08110810: .4byte gSharedMem
thumb_func_end sub_81107F0
thumb_func_start sub_8110814
sub_8110814: @ 8110814
- ldr r1, _08110820 @ =0x02000000
+ ldr r1, _08110820 @ =gSharedMem
str r0, [r1]
movs r0, 0
strh r0, [r1, 0xC]
bx lr
.align 2, 0
-_08110820: .4byte 0x02000000
+_08110820: .4byte gSharedMem
thumb_func_end sub_8110814
thumb_func_start sub_8110824
sub_8110824: @ 8110824
- ldr r0, _08110834 @ =0x02000000
+ ldr r0, _08110834 @ =gSharedMem
movs r1, 0x8A
lsls r1, 1
adds r0, r1
@@ -223,13 +223,13 @@ sub_8110824: @ 8110824
strh r1, [r0]
bx lr
.align 2, 0
-_08110834: .4byte 0x02000000
+_08110834: .4byte gSharedMem
thumb_func_end sub_8110824
thumb_func_start DrawAreaGlow
DrawAreaGlow: @ 8110838
push {lr}
- ldr r1, _08110854 @ =0x02000000
+ ldr r1, _08110854 @ =gSharedMem
movs r2, 0x8A
lsls r2, 1
adds r0, r1, r2
@@ -243,7 +243,7 @@ DrawAreaGlow: @ 8110838
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_08110854: .4byte 0x02000000
+_08110854: .4byte gSharedMem
_08110858: .4byte _0811085C
.align 2, 0
_0811085C:
@@ -254,12 +254,12 @@ _0811085C:
.4byte _081108C0
.4byte _081108D0
_08110874:
- ldr r0, _08110880 @ =0x02000000
+ ldr r0, _08110880 @ =gSharedMem
ldrh r0, [r0, 0xE]
bl FindMapsWithMon
b _081108F0
.align 2, 0
-_08110880: .4byte 0x02000000
+_08110880: .4byte gSharedMem
_08110884:
bl BuildAreaGlowTilemap
b _081108F0
@@ -273,7 +273,7 @@ _08110894: .4byte gUnknown_083F8438
_08110898: .4byte 0x0600c000
_0811089C:
ldr r1, _081108B0 @ =0x040000d4
- ldr r0, _081108B4 @ =0x02000116
+ ldr r0, _081108B4 @ =gSharedMem + 0x116
str r0, [r1]
ldr r0, _081108B8 @ =0x0600f000
str r0, [r1, 0x4]
@@ -283,7 +283,7 @@ _0811089C:
b _081108F0
.align 2, 0
_081108B0: .4byte 0x040000d4
-_081108B4: .4byte 0x02000116
+_081108B4: .4byte gSharedMem + 0x116
_081108B8: .4byte 0x0600f000
_081108BC: .4byte 0x80000280
_081108C0:
@@ -312,7 +312,7 @@ _081108E4:
_081108E8: .4byte REG_BG0CNT
_081108EC: .4byte 0x00001e0d
_081108F0:
- ldr r1, _08110904 @ =0x02000000
+ ldr r1, _08110904 @ =gSharedMem
movs r2, 0x8A
lsls r2, 1
adds r1, r2
@@ -324,7 +324,7 @@ _08110900:
pop {r1}
bx r1
.align 2, 0
-_08110904: .4byte 0x02000000
+_08110904: .4byte gSharedMem
thumb_func_end DrawAreaGlow
thumb_func_start FindMapsWithMon
@@ -346,7 +346,7 @@ FindMapsWithMon: @ 8110908
bne _0811091E
b _08110A44
_0811091E:
- ldr r2, _08110988 @ =0x02000000
+ ldr r2, _08110988 @ =gSharedMem
movs r1, 0x88
lsls r1, 1
adds r0, r2, r1
@@ -405,7 +405,7 @@ _08110960:
.ifdef SAPPHIRE
_sub_8110908_Latias: .4byte 407
.endif
-_08110988: .4byte 0x02000000
+_08110988: .4byte gSharedMem
_0811098C: .4byte gUnknown_083F856C
_08110990: .4byte gUnknown_083F856E
_08110994:
@@ -501,7 +501,7 @@ _08110A28:
.align 2, 0
_08110A40: .4byte gWildMonHeaders
_08110A44:
- ldr r4, _08110A7C @ =0x02000000
+ ldr r4, _08110A7C @ =gSharedMem
movs r0, 0x89
lsls r0, 1
adds r1, r4, r0
@@ -528,7 +528,7 @@ _08110A44:
strh r0, [r1]
b _08110A8C
.align 2, 0
-_08110A7C: .4byte 0x02000000
+_08110A7C: .4byte gSharedMem
_08110A80: .4byte gSaveBlock1 + 0x3144
_08110A84:
movs r1, 0x88
@@ -551,7 +551,7 @@ SetAreaHasMon: @ 8110A98
lsrs r2, r0, 16
lsls r1, 16
lsrs r1, 16
- ldr r5, _08110AE0 @ =0x02000000
+ ldr r5, _08110AE0 @ =gSharedMem
movs r0, 0x88
lsls r0, 1
adds r4, r5, r0
@@ -581,7 +581,7 @@ _08110AD8:
pop {r0}
bx r0
.align 2, 0
-_08110AE0: .4byte 0x02000000
+_08110AE0: .4byte gSharedMem
thumb_func_end SetAreaHasMon
thumb_func_start SetSpecialMapHasMon
@@ -591,7 +591,7 @@ SetSpecialMapHasMon: @ 8110AE4
lsrs r2, r0, 16
lsls r1, 16
lsrs r1, 16
- ldr r0, _08110B9C @ =0x02000000
+ ldr r0, _08110B9C @ =gSharedMem
movs r3, 0x89
lsls r3, 1
adds r0, r3
@@ -635,7 +635,7 @@ _08110B32:
bne _08110B16
_08110B42:
movs r4, 0
- ldr r0, _08110B9C @ =0x02000000
+ ldr r0, _08110B9C @ =gSharedMem
movs r1, 0x89
lsls r1, 1
adds r2, r0, r1
@@ -683,7 +683,7 @@ _08110B96:
pop {r0}
bx r0
.align 2, 0
-_08110B9C: .4byte 0x02000000
+_08110B9C: .4byte gSharedMem
_08110BA0: .4byte gUnknown_083F857A
thumb_func_end SetSpecialMapHasMon
@@ -779,7 +779,7 @@ BuildAreaGlowTilemap: @ 8110C34
movs r0, 0
strh r0, [r1]
mov r9, r1
- ldr r0, _08110E60 @ =0x02000000
+ ldr r0, _08110E60 @ =gSharedMem
mov r8, r0
ldr r1, _08110E64 @ =gUnknown_02039262
mov r12, r1
@@ -873,7 +873,7 @@ _08110CCC:
strh r0, [r7]
lsls r0, 16
lsrs r0, 16
- ldr r3, _08110E78 @ =0x02000110
+ ldr r3, _08110E78 @ =gSharedMem + 0x110
ldrh r3, [r3]
cmp r0, r3
bcc _08110C9A
@@ -886,7 +886,7 @@ _08110D04:
ldr r6, _08110E64 @ =gUnknown_02039262
mov r10, r0
adds r3, r1, 0
- ldr r5, _08110E7C @ =0x02000116
+ ldr r5, _08110E7C @ =gSharedMem + 0x116
ldr r4, _08110E74 @ =0x0000ffff
ldr r7, _08110E70 @ =gUnknown_02039264
_08110D1A:
@@ -1064,14 +1064,14 @@ _08110E3C:
b _0811105E
.align 2, 0
_08110E5C: .4byte gUnknown_02039260
-_08110E60: .4byte 0x02000000
+_08110E60: .4byte gSharedMem
_08110E64: .4byte gUnknown_02039262
_08110E68: .4byte 0x0000027f
_08110E6C: .4byte gUnknown_02039266
_08110E70: .4byte gUnknown_02039264
_08110E74: .4byte 0x0000ffff
-_08110E78: .4byte 0x02000110
-_08110E7C: .4byte 0x02000116
+_08110E78: .4byte gSharedMem + 0x110
+_08110E7C: .4byte gSharedMem + 0x116
_08110E80:
cmp r1, 0
bne _08110E86
@@ -1341,7 +1341,7 @@ _08111080: .4byte 0x027f0000
thumb_func_start sub_8111084
sub_8111084: @ 8111084
push {lr}
- ldr r0, _081110AC @ =0x02000000
+ ldr r0, _081110AC @ =gSharedMem
movs r2, 0x89
lsls r2, 1
adds r1, r0, r2
@@ -1360,7 +1360,7 @@ sub_8111084: @ 8111084
movs r0, 0x1
b _081110BA
.align 2, 0
-_081110AC: .4byte 0x02000000
+_081110AC: .4byte gSharedMem
_081110B0: .4byte 0x0000061e
_081110B4:
ldr r3, _081110FC @ =0x0000061e
@@ -1413,7 +1413,7 @@ sub_8111110: @ 8111110
mov r7, r9
mov r6, r8
push {r6,r7}
- ldr r0, _0811114C @ =0x02000000
+ ldr r0, _0811114C @ =gSharedMem
ldr r2, _08111150 @ =0x0000061e
adds r1, r0, r2
ldrb r1, [r1]
@@ -1439,7 +1439,7 @@ sub_8111110: @ 8111110
adds r0, r5, r2
b _0811115C
.align 2, 0
-_0811114C: .4byte 0x02000000
+_0811114C: .4byte gSharedMem
_08111150: .4byte 0x0000061e
_08111154: .4byte 0x00000616
_08111158:
@@ -1598,7 +1598,7 @@ _08111284: .4byte 0x0000061e
thumb_func_start sub_8111288
sub_8111288: @ 8111288
push {lr}
- ldr r1, _08111298 @ =0x02000000
+ ldr r1, _08111298 @ =gSharedMem
ldrh r0, [r1, 0xC]
cmp r0, 0
beq _0811129C
@@ -1606,7 +1606,7 @@ sub_8111288: @ 8111288
beq _081112A2
b _081112B2
.align 2, 0
-_08111298: .4byte 0x02000000
+_08111298: .4byte gSharedMem
_0811129C:
movs r0, 0x1
strh r0, [r1, 0xC]
@@ -1628,7 +1628,7 @@ _081112B8: .4byte sub_81112BC
thumb_func_start sub_81112BC
sub_81112BC: @ 81112BC
push {lr}
- ldr r0, _081112DC @ =0x02000000
+ ldr r0, _081112DC @ =gSharedMem
ldrh r0, [r0, 0xC]
cmp r0, 0
bne _08111308
@@ -1642,7 +1642,7 @@ sub_81112BC: @ 81112BC
bl sub_8110814
b _08111308
.align 2, 0
-_081112DC: .4byte 0x02000000
+_081112DC: .4byte gSharedMem
_081112E0: .4byte gMain
_081112E4: .4byte sub_8111314
_081112E8:
@@ -1674,7 +1674,7 @@ _08111310: .4byte sub_8111360
sub_8111314: @ 8111314
push {r4,lr}
sub sp, 0x4
- ldr r4, _08111328 @ =0x02000000
+ ldr r4, _08111328 @ =gSharedMem
ldrh r1, [r4, 0xC]
cmp r1, 0
beq _0811132C
@@ -1682,7 +1682,7 @@ sub_8111314: @ 8111314
beq _08111344
b _08111358
.align 2, 0
-_08111328: .4byte 0x02000000
+_08111328: .4byte gSharedMem
_0811132C:
movs r0, 0x15
negs r0, r0
@@ -1714,7 +1714,7 @@ _08111358:
sub_8111360: @ 8111360
push {r4,lr}
sub sp, 0x4
- ldr r4, _08111374 @ =0x02000000
+ ldr r4, _08111374 @ =gSharedMem
ldrh r1, [r4, 0xC]
cmp r1, 0
beq _08111378
@@ -1722,7 +1722,7 @@ sub_8111360: @ 8111360
beq _08111390
b _081113A4
.align 2, 0
-_08111374: .4byte 0x02000000
+_08111374: .4byte gSharedMem
_08111378:
movs r0, 0x15
negs r0, r0
@@ -1753,7 +1753,7 @@ _081113A4:
thumb_func_start ShowPokedexAreaScreen
ShowPokedexAreaScreen: @ 81113AC
push {r4,lr}
- ldr r2, _081113DC @ =0x02000000
+ ldr r2, _081113DC @ =gSharedMem
movs r3, 0
movs r4, 0
strh r0, [r2, 0xE]
@@ -1776,7 +1776,7 @@ ShowPokedexAreaScreen: @ 81113AC
pop {r0}
bx r0
.align 2, 0
-_081113DC: .4byte 0x02000000
+_081113DC: .4byte gSharedMem
_081113E0: .4byte 0x000006e4
_081113E4: .4byte Task_PokedexAreaScreen_0
_081113E8: .4byte gTasks
@@ -1856,7 +1856,7 @@ _08111488:
bl FreeAllSpritePalettes
b _08111540
_08111496:
- ldr r4, _081114B4 @ =0x020006e8
+ ldr r4, _081114B4 @ =gSharedMem + 0x6E8
adds r0, r4, 0
movs r1, 0
bl InitRegionMap
@@ -1869,7 +1869,7 @@ _08111496:
bl StringFill
b _08111540
.align 2, 0
-_081114B4: .4byte 0x020006e8
+_081114B4: .4byte gSharedMem + 0x6E8
_081114B8:
bl sub_8110824
b _08111540
@@ -2051,7 +2051,7 @@ _0811160A:
cmp r0, 0
bne _0811164C
bl DestroyAreaSprites
- ldr r0, _08111634 @ =0x02000000
+ ldr r0, _08111634 @ =gSharedMem
ldr r1, _08111638 @ =0x000006e4
adds r0, r1
ldr r1, [r0]
@@ -2062,7 +2062,7 @@ _0811160A:
b _0811164C
.align 2, 0
_08111630: .4byte gPaletteFade
-_08111634: .4byte 0x02000000
+_08111634: .4byte gSharedMem
_08111638: .4byte 0x000006e4
_0811163C:
ldr r0, _08111654 @ =gTasks
@@ -2093,7 +2093,7 @@ CreateAreaMarkerSprites: @ 8111658
bl LoadSpritePalette
movs r5, 0
movs r1, 0
- ldr r0, _08111728 @ =0x02000000
+ ldr r0, _08111728 @ =gSharedMem
movs r3, 0x89
lsls r3, 1
adds r2, r0, r3
@@ -2174,7 +2174,7 @@ _081116FC:
cmp r0, r2
blt _08111680
_0811170C:
- ldr r0, _08111728 @ =0x02000000
+ ldr r0, _08111728 @ =gSharedMem
movs r3, 0xDC
lsls r3, 3
adds r0, r3
@@ -2187,7 +2187,7 @@ _0811170C:
.align 2, 0
_08111720: .4byte gUnknown_083F858C
_08111724: .4byte gUnknown_083F8594
-_08111728: .4byte 0x02000000
+_08111728: .4byte gSharedMem
_0811172C: .4byte gRegionMapLocations
_08111730: .4byte gSpriteTemplate_83F85A4
_08111734: .4byte gSprites
@@ -2201,7 +2201,7 @@ DestroyAreaSprites: @ 8111738
movs r0, 0x2
bl FreeSpritePaletteByTag
movs r4, 0
- ldr r1, _081117A4 @ =0x02000000
+ ldr r1, _081117A4 @ =gSharedMem
movs r2, 0xDC
lsls r2, 3
adds r0, r1, r2
@@ -2230,7 +2230,7 @@ _08111776:
movs r0, 0x3
bl FreeSpritePaletteByTag
movs r4, 0
- ldr r5, _081117A8 @ =0x02000fa8
+ ldr r5, _081117A8 @ =gSharedMem + 0xFA8
_08111786:
lsls r0, r4, 2
adds r0, r5
@@ -2248,8 +2248,8 @@ _08111794:
pop {r0}
bx r0
.align 2, 0
-_081117A4: .4byte 0x02000000
-_081117A8: .4byte 0x02000fa8
+_081117A4: .4byte gSharedMem
+_081117A8: .4byte gSharedMem + 0xFA8
thumb_func_end DestroyAreaSprites
thumb_func_start LoadAreaUnknownGraphics
@@ -2262,7 +2262,7 @@ LoadAreaUnknownGraphics: @ 81117AC
str r0, [sp]
str r1, [sp, 0x4]
ldr r0, _081117D8 @ =gAreaUnknownTiles
- ldr r1, _081117DC @ =0x02000fb4
+ ldr r1, _081117DC @ =gSharedMem + 0xFB4
bl LZ77UnCompWram
mov r0, sp
bl LoadSpriteSheet
@@ -2274,14 +2274,14 @@ LoadAreaUnknownGraphics: @ 81117AC
.align 2, 0
_081117D4: .4byte gUnknown_083F8664
_081117D8: .4byte gAreaUnknownTiles
-_081117DC: .4byte 0x02000fb4
+_081117DC: .4byte gSharedMem + 0xFB4
_081117E0: .4byte gUnknown_083F865C
thumb_func_end LoadAreaUnknownGraphics
thumb_func_start CreateAreaUnknownSprites
CreateAreaUnknownSprites: @ 81117E4
push {r4-r7,lr}
- ldr r1, _08111810 @ =0x02000000
+ ldr r1, _08111810 @ =gSharedMem
movs r2, 0x88
lsls r2, 1
adds r0, r1, r2
@@ -2303,7 +2303,7 @@ _081117FC:
bls _081117FC
b _0811188E
.align 2, 0
-_08111810: .4byte 0x02000000
+_08111810: .4byte gSharedMem
_08111814: .4byte 0x00000fa8
_08111818:
movs r4, 0
diff --git a/asm/pokedex_cry_screen.s b/asm/pokedex_cry_screen.s
index da52c84d4..ecb215abb 100644
--- a/asm/pokedex_cry_screen.s
+++ b/asm/pokedex_cry_screen.s
@@ -33,7 +33,7 @@ _08119E64:
beq _08119F60
b _08119F74
_08119E6A:
- ldr r4, _08119ECC @ =0x0201c000
+ ldr r4, _08119ECC @ =gSharedMem + 0x1C000
ldrh r0, [r5]
movs r1, 0
strh r0, [r4, 0x14]
@@ -83,7 +83,7 @@ _08119EA6:
mov r1, r12
b _08119F50
.align 2, 0
-_08119ECC: .4byte 0x0201c000
+_08119ECC: .4byte gSharedMem + 0x1C000
_08119ED0: .4byte 0x040000d4
_08119ED4: .4byte gUnknown_083FB718
_08119ED8: .4byte 0xfffe4000
@@ -101,7 +101,7 @@ _08119EE0:
lsls r1, 16
lsrs r6, r1, 16
movs r0, 0
- ldr r2, _08119F58 @ =0x0201c000
+ ldr r2, _08119F58 @ =gSharedMem + 0x1C000
mov r8, r2
movs r1, 0xC0
lsls r1, 19
@@ -154,7 +154,7 @@ _08119F50:
strb r0, [r1]
b _08119F74
.align 2, 0
-_08119F58: .4byte 0x0201c000
+_08119F58: .4byte gSharedMem + 0x1C000
_08119F5C: .4byte gUnknown_03005E98
_08119F60:
bl sub_811A324
@@ -186,7 +186,7 @@ sub_8119F88: @ 8119F88
bl sub_811A324
adds r0, r4, 0
bl sub_811A15C
- ldr r1, _08119FC4 @ =0x0201c000
+ ldr r1, _08119FC4 @ =gSharedMem + 0x1C000
ldrb r0, [r1, 0x1B]
cmp r0, 0
beq _08119FA6
@@ -206,16 +206,16 @@ _08119FA6:
bl sub_811A124
b _0811A044
.align 2, 0
-_08119FC4: .4byte 0x0201c000
+_08119FC4: .4byte gSharedMem + 0x1C000
_08119FC8:
- ldr r5, _08119FD8 @ =0x0201c000
+ ldr r5, _08119FD8 @ =gSharedMem + 0x1C000
ldrb r0, [r5, 0x10]
cmp r0, 0
bne _08119FDC
bl sub_811A124
b _0811A044
.align 2, 0
-_08119FD8: .4byte 0x0201c000
+_08119FD8: .4byte gSharedMem + 0x1C000
_08119FDC:
cmp r0, 0x1
bne _08119FE6
@@ -237,7 +237,7 @@ _08119FFE:
movs r0, 0x1
strb r0, [r5, 0x10]
_0811A006:
- ldr r5, _0811A04C @ =0x0201c000
+ ldr r5, _0811A04C @ =gSharedMem + 0x1C000
ldrb r4, [r5, 0x10]
subs r4, 0x1
lsls r4, 25
@@ -271,7 +271,7 @@ _0811A044:
pop {r0}
bx r0
.align 2, 0
-_0811A04C: .4byte 0x0201c000
+_0811A04C: .4byte gSharedMem + 0x1C000
thumb_func_end sub_8119F88
thumb_func_start sub_811A050
@@ -284,7 +284,7 @@ sub_811A050: @ 811A050
ldr r0, [r0, 0x4]
cmp r0, 0
bge _0811A09A
- ldr r4, _0811A090 @ =0x0201c000
+ ldr r4, _0811A090 @ =gSharedMem + 0x1C000
ldrb r0, [r4, 0x1A]
cmp r0, 0
bne _0811A09A
@@ -305,7 +305,7 @@ sub_811A050: @ 811A050
b _0811A09A
.align 2, 0
_0811A08C: .4byte gMPlay_BGM
-_0811A090: .4byte 0x0201c000
+_0811A090: .4byte gSharedMem + 0x1C000
_0811A094:
adds r0, r6, 0
bl sub_811A0A0
@@ -324,13 +324,13 @@ sub_811A0A0: @ 811A0A0
movs r2, 0x7D
movs r3, 0xA
bl PlayCry2
- ldr r1, _0811A0BC @ =0x0201c000
+ ldr r1, _0811A0BC @ =gSharedMem + 0x1C000
movs r0, 0x1
strb r0, [r1, 0x10]
pop {r0}
bx r0
.align 2, 0
-_0811A0BC: .4byte 0x0201c000
+_0811A0BC: .4byte gSharedMem + 0x1C000
thumb_func_end sub_811A0A0
thumb_func_start sub_811A0C0
@@ -364,7 +364,7 @@ _0811A0F0:
lsls r1, 3
adds r3, r0, r1
movs r2, 0
- ldr r4, _0811A120 @ =0x0201c000
+ ldr r4, _0811A120 @ =gSharedMem + 0x1C000
_0811A0FA:
adds r1, r2, r4
lsls r0, r2, 1
@@ -384,13 +384,13 @@ _0811A0FA:
bx r0
.align 2, 0
_0811A11C: .4byte gSoundInfo
-_0811A120: .4byte 0x0201c000
+_0811A120: .4byte gSharedMem + 0x1C000
thumb_func_end sub_811A0C0
thumb_func_start sub_811A124
sub_811A124: @ 811A124
push {r4,lr}
- ldr r4, _0811A158 @ =0x0201c000
+ ldr r4, _0811A158 @ =gSharedMem + 0x1C000
ldrb r0, [r4, 0x16]
lsls r0, 3
ldrb r1, [r4, 0x11]
@@ -413,7 +413,7 @@ sub_811A124: @ 811A124
pop {r0}
bx r0
.align 2, 0
-_0811A158: .4byte 0x0201c000
+_0811A158: .4byte gSharedMem + 0x1C000
thumb_func_end sub_811A124
thumb_func_start sub_811A15C
@@ -421,7 +421,7 @@ sub_811A15C: @ 811A15C
push {r4-r6,lr}
lsls r0, 24
lsrs r0, 24
- ldr r4, _0811A1B4 @ =0x0201c000
+ ldr r4, _0811A1B4 @ =gSharedMem + 0x1C000
ldrb r1, [r4, 0x11]
movs r2, 0
bl sub_811A350
@@ -463,7 +463,7 @@ _0811A194:
pop {r0}
bx r0
.align 2, 0
-_0811A1B4: .4byte 0x0201c000
+_0811A1B4: .4byte gSharedMem + 0x1C000
_0811A1B8: .4byte 0x040000d4
_0811A1BC: .4byte gUnknown_083FB718
_0811A1C0: .4byte 0xfffe4000
@@ -500,7 +500,7 @@ _0811A1FE:
str r6, [sp]
movs r7, 0x1
ands r7, r4
- ldr r0, _0811A284 @ =0x0201c000
+ ldr r0, _0811A284 @ =gSharedMem + 0x1C000
mov r10, r0
lsrs r5, 27
mov r8, r5
@@ -528,7 +528,7 @@ _0811A220:
adds r0, r1
lsls r0, 16
lsrs r0, 16
- ldr r1, _0811A290 @ =0x02000000
+ ldr r1, _0811A290 @ =gSharedMem
adds r5, r0, r1
ldrb r4, [r5]
mov r3, r9
@@ -554,7 +554,7 @@ _0811A220:
lsls r0, 24
lsrs r6, r0, 24
ldr r2, [sp, 0x8]
- ldr r3, _0811A284 @ =0x0201c000
+ ldr r3, _0811A284 @ =gSharedMem + 0x1C000
ldrb r3, [r3, 0x12]
cmp r6, r3
bhi _0811A220
@@ -562,10 +562,10 @@ _0811A220:
.align 2, 0
_0811A27C: .4byte 0x40920000
_0811A280: .4byte 0x00000000
-_0811A284: .4byte 0x0201c000
+_0811A284: .4byte gSharedMem + 0x1C000
_0811A288: .4byte gUnknown_083FB738
_0811A28C: .4byte gUnknown_083FB274
-_0811A290: .4byte 0x02000000
+_0811A290: .4byte gSharedMem
_0811A294: .4byte gUnknown_083FB73A
_0811A298:
lsls r1, r7, 4
@@ -589,7 +589,7 @@ _0811A2A6:
adds r0, r1
lsls r0, 16
lsrs r0, 16
- ldr r1, _0811A318 @ =0x02000000
+ ldr r1, _0811A318 @ =gSharedMem
adds r5, r0, r1
ldrb r4, [r5]
mov r2, r9
@@ -613,7 +613,7 @@ _0811A2A6:
adds r0, r6, 0x1
lsls r0, 24
lsrs r6, r0, 24
- ldr r2, _0811A320 @ =0x0201c000
+ ldr r2, _0811A320 @ =gSharedMem + 0x1C000
ldrb r2, [r2, 0x12]
cmp r6, r2
bcc _0811A2A6
@@ -632,15 +632,15 @@ _0811A2FA:
bx r0
.align 2, 0
_0811A314: .4byte gUnknown_083FB274
-_0811A318: .4byte 0x02000000
+_0811A318: .4byte gSharedMem
_0811A31C: .4byte gUnknown_083FB73A
-_0811A320: .4byte 0x0201c000
+_0811A320: .4byte gSharedMem + 0x1C000
thumb_func_end sub_811A1C8
thumb_func_start sub_811A324
sub_811A324: @ 811A324
ldr r2, _0811A344 @ =0x040000d4
- ldr r0, _0811A348 @ =0x02000000
+ ldr r0, _0811A348 @ =gSharedMem
str r0, [r2]
movs r1, 0xE0
lsls r1, 9
@@ -656,7 +656,7 @@ sub_811A324: @ 811A324
bx lr
.align 2, 0
_0811A344: .4byte 0x040000d4
-_0811A348: .4byte 0x02000000
+_0811A348: .4byte gSharedMem
_0811A34C: .4byte 0x80000e00
thumb_func_end sub_811A324
@@ -743,7 +743,7 @@ _0811A3C8: .4byte REG_BG3HOFS
DestroyCryMeterNeedleSprite: @ 811A4F8
push {r4,r5,lr}
ldr r5, _0811A52C @ =gSprites
- ldr r4, _0811A530 @ =0x0201c800
+ ldr r4, _0811A530 @ =gSharedMem + 0x1C800
ldrh r1, [r4, 0x4]
lsls r0, r1, 4
adds r0, r1
@@ -766,7 +766,7 @@ DestroyCryMeterNeedleSprite: @ 811A4F8
bx r0
.align 2, 0
_0811A52C: .4byte gSprites
-_0811A530: .4byte 0x0201c800
+_0811A530: .4byte gSharedMem + 0x1C800
thumb_func_end DestroyCryMeterNeedleSprite
thumb_func_start sub_811A534
@@ -775,7 +775,7 @@ sub_811A534: @ 811A534
sub sp, 0x14
adds r7, r0, 0
ldr r3, _0811A578 @ =gSprites
- ldr r5, _0811A57C @ =0x0201c800
+ ldr r5, _0811A57C @ =gSharedMem + 0x1C800
ldrh r1, [r5, 0x4]
lsls r0, r1, 4
adds r0, r1
@@ -807,7 +807,7 @@ sub_811A534: @ 811A534
b _0811A5F4
.align 2, 0
_0811A578: .4byte gSprites
-_0811A57C: .4byte 0x0201c800
+_0811A57C: .4byte gSharedMem + 0x1C800
_0811A580: .4byte 0xfffff800
_0811A584:
cmp r0, 0x6
@@ -874,7 +874,7 @@ _0811A5E2:
_0811A5F4:
add r4, sp, 0xC
_0811A5F6:
- ldr r0, _0811A624 @ =0x0201c800
+ ldr r0, _0811A624 @ =gSharedMem + 0x1C800
ldrb r3, [r0]
movs r2, 0
ldrsb r2, [r0, r2]
@@ -896,7 +896,7 @@ _0811A5F6:
b _0811A636
.align 2, 0
_0811A620: .4byte 0xfffff80a
-_0811A624: .4byte 0x0201c800
+_0811A624: .4byte gSharedMem + 0x1C800
_0811A628:
ldrb r0, [r5, 0x2]
subs r0, r3, r0
@@ -1004,14 +1004,14 @@ sub_811A6D8: @ 811A6D8
bhi _0811A6F4
movs r2, 0xE0
_0811A6F4:
- ldr r1, _0811A700 @ =0x0201c800
+ ldr r1, _0811A700 @ =gSharedMem + 0x1C800
strb r2, [r1, 0x1]
movs r0, 0x5
strb r0, [r1, 0x2]
pop {r0}
bx r0
.align 2, 0
-_0811A700: .4byte 0x0201c800
+_0811A700: .4byte gSharedMem + 0x1C800
thumb_func_end sub_811A6D8
.align 2, 0 @ Don't pad with nop.
diff --git a/asm/pokemon_item_effect.s b/asm/pokemon_item_effect.s
index dc74831d5..dcd0cada5 100644
--- a/asm/pokemon_item_effect.s
+++ b/asm/pokemon_item_effect.s
@@ -1099,7 +1099,7 @@ _0803EA4C:
movs r0, 0x1
b _0803EA6A
_0803EA62:
- ldr r0, _0803EB24 @ =0x02000000
+ ldr r0, _0803EB24 @ =gSharedMem
ldr r5, _0803EB28 @ =0x000160fa
adds r0, r5
ldrb r0, [r0]
@@ -1192,7 +1192,7 @@ _0803EB08:
strb r5, [r4]
b _0803EB48
.align 2, 0
-_0803EB24: .4byte 0x02000000
+_0803EB24: .4byte gSharedMem
_0803EB28: .4byte 0x000160fa
_0803EB2C: .4byte gMain
_0803EB30: .4byte 0x0000043d
diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s
index eaf44749b..735f19a64 100644
--- a/asm/pokemon_storage_system.s
+++ b/asm/pokemon_storage_system.s
@@ -1953,7 +1953,7 @@ task_intro_29: @ 80967B8
lsrs r0, 24
ldr r1, _080967D0 @ =gUnknown_0203847D
strb r0, [r1]
- ldr r1, _080967D4 @ =0x02000000
+ ldr r1, _080967D4 @ =gSharedMem
strb r0, [r1, 0x5]
ldr r0, _080967D8 @ =sub_8096884
bl SetMainCallback2
@@ -1961,7 +1961,7 @@ task_intro_29: @ 80967B8
bx r0
.align 2, 0
_080967D0: .4byte gUnknown_0203847D
-_080967D4: .4byte 0x02000000
+_080967D4: .4byte gSharedMem
_080967D8: .4byte sub_8096884
thumb_func_end task_intro_29
@@ -2002,7 +2002,7 @@ sub_8096804: @ 8096804
lsls r2, 2
adds r0, r2, 0
strh r0, [r1]
- ldr r0, _08096840 @ =0x02000020
+ ldr r0, _08096840 @ =gSharedMem + 0x20
adds r1, r0, 0
adds r1, 0x8
movs r2, 0x8
@@ -2014,7 +2014,7 @@ sub_8096804: @ 8096804
bx r0
.align 2, 0
_0809683C: .4byte gReservedSpriteTileCount
-_08096840: .4byte 0x02000020
+_08096840: .4byte gSharedMem + 0x20
_08096844: .4byte gKeyRepeatStartDelay
thumb_func_end sub_8096804
@@ -2024,7 +2024,7 @@ sub_8096848: @ 8096848
bl sub_809B0D4
ldr r2, _08096868 @ =gUnknown_0203847C
movs r1, 0
- ldr r0, _0809686C @ =0x02000000
+ ldr r0, _0809686C @ =gSharedMem
ldrb r0, [r0, 0x5]
cmp r0, 0x1
bne _0809685C
@@ -2038,7 +2038,7 @@ _0809685C:
bx r0
.align 2, 0
_08096868: .4byte gUnknown_0203847C
-_0809686C: .4byte 0x02000000
+_0809686C: .4byte gSharedMem
_08096870: .4byte gUnknown_0203847E
thumb_func_end sub_8096848
@@ -2128,7 +2128,7 @@ _0809692A:
ldr r0, _08096950 @ =gPokemonStorage
ldrb r0, [r0]
bl sub_8099BF8
- ldr r2, _08096954 @ =0x02000000
+ ldr r2, _08096954 @ =gSharedMem
ldr r1, _08096958 @ =0x000012bc
adds r0, r2, r1
movs r1, 0xA
@@ -2142,7 +2142,7 @@ _0809692A:
b _0809697A
.align 2, 0
_08096950: .4byte gPokemonStorage
-_08096954: .4byte 0x02000000
+_08096954: .4byte gSharedMem
_08096958: .4byte 0x000012bc
_0809695C: .4byte 0x000012be
_08096960: .4byte 0x0000dacb
@@ -2213,7 +2213,7 @@ _080969F4:
lsls r1, 19
movs r0, 0
strh r0, [r1]
- ldr r1, _08096A28 @ =0x02000000
+ ldr r1, _08096A28 @ =gSharedMem
ldr r0, _08096A2C @ =gUnknown_0203847D
ldrb r0, [r0]
strb r0, [r1, 0x5]
@@ -2230,7 +2230,7 @@ _08096A1A:
bl sub_809BD14
b _08096AD8
.align 2, 0
-_08096A28: .4byte 0x02000000
+_08096A28: .4byte gSharedMem
_08096A2C: .4byte gUnknown_0203847D
_08096A30: .4byte gUnknown_0203847F
_08096A34:
@@ -2266,7 +2266,7 @@ _08096A72:
ldr r0, _08096A98 @ =gPokemonStorage
ldrb r0, [r0]
bl sub_8099BF8
- ldr r2, _08096A9C @ =0x02000000
+ ldr r2, _08096A9C @ =gSharedMem
ldr r1, _08096AA0 @ =0x000012bc
adds r0, r2, r1
movs r1, 0xA
@@ -2280,7 +2280,7 @@ _08096A72:
b _08096AD8
.align 2, 0
_08096A98: .4byte gPokemonStorage
-_08096A9C: .4byte 0x02000000
+_08096A9C: .4byte gSharedMem
_08096AA0: .4byte 0x000012bc
_08096AA4: .4byte 0x000012be
_08096AA8: .4byte 0x0000dacb
@@ -2326,7 +2326,7 @@ _08096AF8: .4byte 0x0000043c
sub_8096AFC: @ 8096AFC
push {lr}
ldr r2, _08096B2C @ =REG_BG2HOFS
- ldr r1, _08096B30 @ =0x02000000
+ ldr r1, _08096B30 @ =gSharedMem
ldr r3, _08096B34 @ =0x000008b4
adds r0, r1, r3
ldrh r0, [r0]
@@ -2345,14 +2345,14 @@ sub_8096AFC: @ 8096AFC
bx r0
.align 2, 0
_08096B2C: .4byte REG_BG2HOFS
-_08096B30: .4byte 0x02000000
+_08096B30: .4byte gSharedMem
_08096B34: .4byte 0x000008b4
thumb_func_end sub_8096AFC
thumb_func_start sub_8096B38
sub_8096B38: @ 8096B38
push {lr}
- ldr r0, _08096B58 @ =0x02000000
+ ldr r0, _08096B58 @ =gSharedMem
ldr r0, [r0]
bl _call_via_r0
bl sub_8097E44
@@ -2362,14 +2362,14 @@ sub_8096B38: @ 8096B38
pop {r0}
bx r0
.align 2, 0
-_08096B58: .4byte 0x02000000
+_08096B58: .4byte gSharedMem
thumb_func_end sub_8096B38
thumb_func_start sub_8096B5C
sub_8096B5C: @ 8096B5C
push {r4,r5,lr}
sub sp, 0x8
- ldr r4, _08096B70 @ =0x02000000
+ ldr r4, _08096B70 @ =gSharedMem
ldrb r0, [r4, 0x6]
cmp r0, 0
beq _08096B74
@@ -2377,7 +2377,7 @@ sub_8096B5C: @ 8096B5C
beq _08096BAC
b _08096BCC
.align 2, 0
-_08096B70: .4byte 0x02000000
+_08096B70: .4byte gSharedMem
_08096B74:
ldr r1, _08096B98 @ =0x00002690
adds r0, r4, r1
@@ -2430,19 +2430,19 @@ _08096BDC: .4byte sub_80969A0
thumb_func_start sub_8096BE0
sub_8096BE0: @ 8096BE0
- ldr r1, _08096BEC @ =0x02000000
+ ldr r1, _08096BEC @ =gSharedMem
str r0, [r1]
movs r0, 0
strb r0, [r1, 0x4]
bx lr
.align 2, 0
-_08096BEC: .4byte 0x02000000
+_08096BEC: .4byte gSharedMem
thumb_func_end sub_8096BE0
thumb_func_start sub_8096BF0
sub_8096BF0: @ 8096BF0
push {r4,lr}
- ldr r4, _08096C04 @ =0x02000000
+ ldr r4, _08096C04 @ =gSharedMem
ldrb r0, [r4, 0x4]
cmp r0, 0x1
beq _08096C16
@@ -2452,7 +2452,7 @@ sub_8096BF0: @ 8096BF0
beq _08096C0E
b _08096C5C
.align 2, 0
-_08096C04: .4byte 0x02000000
+_08096C04: .4byte gSharedMem
_08096C08:
cmp r0, 0x2
beq _08096C4C
@@ -2521,7 +2521,7 @@ _08096C80: .4byte sub_8096C84
thumb_func_start sub_8096C84
sub_8096C84: @ 8096C84
push {r4,lr}
- ldr r0, _08096C9C @ =0x02000000
+ ldr r0, _08096C9C @ =gSharedMem
ldrb r0, [r0, 0x4]
cmp r0, 0x6
bls _08096C90
@@ -2533,7 +2533,7 @@ _08096C90:
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_08096C9C: .4byte 0x02000000
+_08096C9C: .4byte gSharedMem
_08096CA0: .4byte _08096CA4
.align 2, 0
_08096CA4:
@@ -2581,14 +2581,14 @@ _08096CE0:
_08096D20:
movs r0, 0x5
bl PlaySE
- ldr r1, _08096D30 @ =0x02000000
+ ldr r1, _08096D30 @ =gSharedMem
movs r0, 0x1
strb r0, [r1, 0x4]
b _08096FBA
.align 2, 0
-_08096D30: .4byte 0x02000000
+_08096D30: .4byte gSharedMem
_08096D34:
- ldr r4, _08096D48 @ =0x02000000
+ ldr r4, _08096D48 @ =gSharedMem
ldrb r0, [r4, 0x5]
cmp r0, 0x2
beq _08096D4C
@@ -2598,7 +2598,7 @@ _08096D34:
strb r0, [r4, 0x4]
b _08096FBA
.align 2, 0
-_08096D48: .4byte 0x02000000
+_08096D48: .4byte gSharedMem
_08096D4C:
bl sub_809B0D4
ldr r0, _08096D58 @ =sub_8096FC8
@@ -2607,7 +2607,7 @@ _08096D4C:
.align 2, 0
_08096D58: .4byte sub_8096FC8
_08096D5C:
- ldr r4, _08096D88 @ =0x02000000
+ ldr r4, _08096D88 @ =gSharedMem
ldrb r0, [r4, 0x5]
cmp r0, 0x2
beq _08096D66
@@ -2629,7 +2629,7 @@ _08096D80:
bl sub_8096BE0
b _08096FBA
.align 2, 0
-_08096D88: .4byte 0x02000000
+_08096D88: .4byte gSharedMem
_08096D8C: .4byte 0x000011f2
_08096D90: .4byte sub_8097004
_08096D94:
@@ -2663,7 +2663,7 @@ _08096DD0: .4byte sub_8097078
_08096DD4:
movs r0, 0x5
bl PlaySE
- ldr r4, _08096DF0 @ =0x02000000
+ ldr r4, _08096DF0 @ =gSharedMem
ldr r0, _08096DF4 @ =gPokemonStorage
ldrb r0, [r0]
adds r0, 0x1
@@ -2675,13 +2675,13 @@ _08096DD4:
movs r0, 0
b _08096E16
.align 2, 0
-_08096DF0: .4byte 0x02000000
+_08096DF0: .4byte gSharedMem
_08096DF4: .4byte gPokemonStorage
_08096DF8: .4byte 0x000008b2
_08096DFC:
movs r0, 0x5
bl PlaySE
- ldr r4, _08096E24 @ =0x02000000
+ ldr r4, _08096E24 @ =gSharedMem
ldr r0, _08096E28 @ =gPokemonStorage
ldrb r0, [r0]
subs r0, 0x1
@@ -2700,7 +2700,7 @@ _08096E18:
strb r0, [r4, 0x4]
b _08096FBA
.align 2, 0
-_08096E24: .4byte 0x02000000
+_08096E24: .4byte gSharedMem
_08096E28: .4byte gPokemonStorage
_08096E2C: .4byte 0x000008b2
_08096E30:
@@ -2708,7 +2708,7 @@ _08096E30:
lsls r0, 24
cmp r0, 0
bne _08096E96
- ldr r4, _08096E54 @ =0x02000000
+ ldr r4, _08096E54 @ =gSharedMem
ldr r1, _08096E58 @ =0x000011f2
adds r0, r4, r1
ldrh r0, [r0]
@@ -2721,7 +2721,7 @@ _08096E4C:
strb r0, [r4, 0x4]
b _08096FBA
.align 2, 0
-_08096E54: .4byte 0x02000000
+_08096E54: .4byte gSharedMem
_08096E58: .4byte 0x000011f2
_08096E5C:
movs r0, 0x5
@@ -2749,12 +2749,12 @@ _08096E8C:
cmp r0, 0
bne _08096EA4
_08096E96:
- ldr r1, _08096EA0 @ =0x02000000
+ ldr r1, _08096EA0 @ =gSharedMem
movs r0, 0x4
strb r0, [r1, 0x4]
b _08096FBA
.align 2, 0
-_08096EA0: .4byte 0x02000000
+_08096EA0: .4byte gSharedMem
_08096EA4:
movs r0, 0x5
bl PlaySE
@@ -2793,7 +2793,7 @@ _08096EE0:
_08096EFA:
bl sub_8098710
_08096EFE:
- ldr r4, _08096F14 @ =0x02000000
+ ldr r4, _08096F14 @ =gSharedMem
ldr r2, _08096F18 @ =0x000011f6
adds r0, r4, r2
ldrb r0, [r0]
@@ -2805,7 +2805,7 @@ _08096F0E:
strb r0, [r4, 0x4]
b _08096FBA
.align 2, 0
-_08096F14: .4byte 0x02000000
+_08096F14: .4byte gSharedMem
_08096F18: .4byte 0x000011f6
_08096F1C:
bl sub_8099D34
@@ -2813,7 +2813,7 @@ _08096F1C:
cmp r0, 0
bne _08096FBA
ldr r1, _08096F50 @ =gPokemonStorage
- ldr r0, _08096F54 @ =0x02000000
+ ldr r0, _08096F54 @ =gSharedMem
ldr r2, _08096F58 @ =0x000008b2
adds r0, r2
ldrh r0, [r0]
@@ -2831,7 +2831,7 @@ _08096F1C:
b _08096F70
.align 2, 0
_08096F50: .4byte gPokemonStorage
-_08096F54: .4byte 0x02000000
+_08096F54: .4byte gSharedMem
_08096F58: .4byte 0x000008b2
_08096F5C: .4byte gUnknown_0203847C
_08096F60:
@@ -2843,13 +2843,13 @@ _08096F60:
beq _08096FBA
bl sub_8098A5C
_08096F70:
- ldr r1, _08096F7C @ =0x02000000
+ ldr r1, _08096F7C @ =gSharedMem
movs r0, 0
strb r0, [r1, 0x4]
b _08096FBA
.align 2, 0
_08096F78: .4byte gMain
-_08096F7C: .4byte 0x02000000
+_08096F7C: .4byte gSharedMem
_08096F80:
movs r0, 0x20
bl PlaySE
@@ -2861,12 +2861,12 @@ _08096F8A:
movs r0, 0x16
_08096F92:
bl sub_8098898
- ldr r1, _08096FA0 @ =0x02000000
+ ldr r1, _08096FA0 @ =gSharedMem
movs r0, 0x6
strb r0, [r1, 0x4]
b _08096FBA
.align 2, 0
-_08096FA0: .4byte 0x02000000
+_08096FA0: .4byte gSharedMem
_08096FA4:
ldr r0, _08096FC0 @ =gMain
ldrh r1, [r0, 0x2E]
@@ -2889,7 +2889,7 @@ _08096FC4: .4byte sub_8096C84
thumb_func_start sub_8096FC8
sub_8096FC8: @ 8096FC8
push {r4,lr}
- ldr r4, _08096FD8 @ =0x02000000
+ ldr r4, _08096FD8 @ =gSharedMem
ldrb r0, [r4, 0x4]
cmp r0, 0
beq _08096FDC
@@ -2897,7 +2897,7 @@ sub_8096FC8: @ 8096FC8
beq _08096FE8
b _08096FF8
.align 2, 0
-_08096FD8: .4byte 0x02000000
+_08096FD8: .4byte gSharedMem
_08096FDC:
bl sub_809880C
ldrb r0, [r4, 0x4]
@@ -2922,7 +2922,7 @@ _08097000: .4byte sub_8096C84
thumb_func_start sub_8097004
sub_8097004: @ 8097004
push {r4,lr}
- ldr r4, _08097018 @ =0x02000000
+ ldr r4, _08097018 @ =gSharedMem
ldrb r0, [r4, 0x4]
cmp r0, 0x1
beq _0809702E
@@ -2932,7 +2932,7 @@ sub_8097004: @ 8097004
beq _08097022
b _0809706A
.align 2, 0
-_08097018: .4byte 0x02000000
+_08097018: .4byte gSharedMem
_0809701C:
cmp r0, 0x2
beq _0809704C
@@ -2982,7 +2982,7 @@ _08097074: .4byte sub_8096C84
thumb_func_start sub_8097078
sub_8097078: @ 8097078
push {r4,lr}
- ldr r0, _08097090 @ =0x02000000
+ ldr r0, _08097090 @ =gSharedMem
ldrb r0, [r0, 0x4]
cmp r0, 0x5
bls _08097084
@@ -2994,7 +2994,7 @@ _08097084:
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_08097090: .4byte 0x02000000
+_08097090: .4byte gSharedMem
_08097094: .4byte _08097098
.align 2, 0
_08097098:
@@ -3008,12 +3008,12 @@ _080970B0:
movs r0, 0x4
bl sub_8098898
bl sub_809CE84
- ldr r1, _080970C4 @ =0x02000000
+ ldr r1, _080970C4 @ =gSharedMem
movs r0, 0x1
strb r0, [r1, 0x4]
b _0809729A
.align 2, 0
-_080970C4: .4byte 0x02000000
+_080970C4: .4byte gSharedMem
_080970C8:
bl sub_809CF30
adds r0, 0x1
@@ -3098,7 +3098,7 @@ _08097190:
lsls r0, 24
cmp r0, 0
bne _080971D6
- ldr r4, _080971C0 @ =0x02000000
+ ldr r4, _080971C0 @ =gSharedMem
ldr r1, _080971C4 @ =0x000011f2
adds r0, r4, r1
ldrh r0, [r0]
@@ -3113,7 +3113,7 @@ _08097190:
bl sub_8096BE0
b _0809729A
.align 2, 0
-_080971C0: .4byte 0x02000000
+_080971C0: .4byte gSharedMem
_080971C4: .4byte 0x000011f2
_080971C8: .4byte sub_809746C
_080971CC:
@@ -3122,14 +3122,14 @@ _080971CC:
cmp r0, 0
beq _080971E4
_080971D6:
- ldr r1, _080971E0 @ =0x02000000
+ ldr r1, _080971E0 @ =gSharedMem
movs r0, 0x2
strb r0, [r1, 0x4]
b _0809729A
.align 2, 0
-_080971E0: .4byte 0x02000000
+_080971E0: .4byte gSharedMem
_080971E4:
- ldr r4, _080971F8 @ =0x02000000
+ ldr r4, _080971F8 @ =gSharedMem
ldr r1, _080971FC @ =0x000011f9
adds r0, r4, r1
ldrb r0, [r0]
@@ -3139,7 +3139,7 @@ _080971E4:
strb r0, [r4, 0x4]
b _0809729A
.align 2, 0
-_080971F8: .4byte 0x02000000
+_080971F8: .4byte gSharedMem
_080971FC: .4byte 0x000011f9
_08097200:
ldr r1, _08097218 @ =0x000011f2
@@ -3195,12 +3195,12 @@ _0809726C:
movs r0, 0x16
_08097274:
bl sub_8098898
- ldr r1, _08097280 @ =0x02000000
+ ldr r1, _08097280 @ =gSharedMem
movs r0, 0x5
strb r0, [r1, 0x4]
b _0809729A
.align 2, 0
-_08097280: .4byte 0x02000000
+_08097280: .4byte gSharedMem
_08097284:
ldr r0, _080972A0 @ =gMain
ldrh r1, [r0, 0x2E]
@@ -3223,7 +3223,7 @@ _080972A4: .4byte sub_8096C84
thumb_func_start sub_80972A8
sub_80972A8: @ 80972A8
push {r4,lr}
- ldr r4, _080972B8 @ =0x02000000
+ ldr r4, _080972B8 @ =gSharedMem
ldrb r0, [r4, 0x4]
cmp r0, 0
beq _080972BC
@@ -3231,7 +3231,7 @@ sub_80972A8: @ 80972A8
beq _080972CA
b _080972F2
.align 2, 0
-_080972B8: .4byte 0x02000000
+_080972B8: .4byte gSharedMem
_080972BC:
movs r0, 0
bl sub_809B100
@@ -3268,7 +3268,7 @@ _080972F8: .4byte sub_8096C84
thumb_func_start sub_80972FC
sub_80972FC: @ 80972FC
push {r4,lr}
- ldr r4, _0809730C @ =0x02000000
+ ldr r4, _0809730C @ =gSharedMem
ldrb r0, [r4, 0x4]
cmp r0, 0
beq _08097310
@@ -3276,7 +3276,7 @@ sub_80972FC: @ 80972FC
beq _0809731E
b _08097346
.align 2, 0
-_0809730C: .4byte 0x02000000
+_0809730C: .4byte gSharedMem
_08097310:
movs r0, 0x1
bl sub_809B100
@@ -3313,7 +3313,7 @@ _0809734C: .4byte sub_8096C84
thumb_func_start c3_0808DC50
c3_0808DC50: @ 8097350
push {r4,lr}
- ldr r4, _08097360 @ =0x02000000
+ ldr r4, _08097360 @ =gSharedMem
ldrb r0, [r4, 0x4]
cmp r0, 0
beq _08097364
@@ -3321,7 +3321,7 @@ c3_0808DC50: @ 8097350
beq _08097372
b _08097386
.align 2, 0
-_08097360: .4byte 0x02000000
+_08097360: .4byte gSharedMem
_08097364:
movs r0, 0x2
bl sub_809B100
@@ -3348,7 +3348,7 @@ _0809738C: .4byte sub_8096C84
thumb_func_start sub_8097390
sub_8097390: @ 8097390
push {lr}
- ldr r0, _080973A4 @ =0x02000000
+ ldr r0, _080973A4 @ =gSharedMem
ldrb r0, [r0, 0x4]
cmp r0, 0x5
bhi _08097462
@@ -3358,7 +3358,7 @@ sub_8097390: @ 8097390
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_080973A4: .4byte 0x02000000
+_080973A4: .4byte gSharedMem
_080973A8: .4byte _080973AC
.align 2, 0
_080973AC:
@@ -3376,22 +3376,22 @@ _080973C4:
bne _080973E4
movs r0, 0xE
bl sub_8098898
- ldr r1, _080973E0 @ =0x02000000
+ ldr r1, _080973E0 @ =gSharedMem
movs r0, 0x1
strb r0, [r1, 0x4]
b _08097462
.align 2, 0
-_080973E0: .4byte 0x02000000
+_080973E0: .4byte gSharedMem
_080973E4:
bl sub_809B0E0
movs r0, 0
bl sub_809B100
- ldr r1, _080973F8 @ =0x02000000
+ ldr r1, _080973F8 @ =gSharedMem
movs r0, 0x2
strb r0, [r1, 0x4]
b _08097462
.align 2, 0
-_080973F8: .4byte 0x02000000
+_080973F8: .4byte gSharedMem
_080973FC:
ldr r0, _08097414 @ =gMain
ldrh r1, [r0, 0x2E]
@@ -3428,13 +3428,13 @@ _0809743E:
bne _08097462
bl sub_80987DC
_0809744C:
- ldr r1, _08097458 @ =0x02000000
+ ldr r1, _08097458 @ =gSharedMem
ldrb r0, [r1, 0x4]
adds r0, 0x1
strb r0, [r1, 0x4]
b _08097462
.align 2, 0
-_08097458: .4byte 0x02000000
+_08097458: .4byte gSharedMem
_0809745C:
ldr r0, _08097468 @ =sub_8097004
bl sub_8096BE0
@@ -3448,7 +3448,7 @@ _08097468: .4byte sub_8097004
thumb_func_start sub_809746C
sub_809746C: @ 809746C
push {r4,lr}
- ldr r0, _08097484 @ =0x02000000
+ ldr r0, _08097484 @ =gSharedMem
ldrb r0, [r0, 0x4]
cmp r0, 0x4
bls _08097478
@@ -3460,7 +3460,7 @@ _08097478:
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_08097484: .4byte 0x02000000
+_08097484: .4byte gSharedMem
_08097488: .4byte _0809748C
.align 2, 0
_0809748C:
@@ -3472,7 +3472,7 @@ _0809748C:
_080974A0:
movs r0, 0x6
bl sub_8098898
- ldr r4, _080974C8 @ =0x02002370
+ ldr r4, _080974C8 @ =gSharedMem + 0x2370
ldr r2, _080974CC @ =0x0000daca
adds r0, r4, 0
movs r1, 0x7
@@ -3488,7 +3488,7 @@ _080974A0:
strb r0, [r4, 0x4]
b _08097584
.align 2, 0
-_080974C8: .4byte 0x02002370
+_080974C8: .4byte gSharedMem + 0x2370
_080974CC: .4byte 0x0000daca
_080974D0: .4byte gUnknown_0203847E
_080974D4: .4byte 0xffffdc90
@@ -3513,15 +3513,15 @@ _080974F6:
bl sub_8098A5C
bl sub_809635C
bl sub_8096310
- ldr r1, _08097514 @ =0x02000000
+ ldr r1, _08097514 @ =gSharedMem
movs r0, 0x2
b _08097522
.align 2, 0
-_08097514: .4byte 0x02000000
+_08097514: .4byte gSharedMem
_08097518:
movs r0, 0x8
bl sub_8098898
- ldr r1, _0809752C @ =0x02000000
+ ldr r1, _0809752C @ =gSharedMem
movs r0, 0x4
_08097522:
strb r0, [r1, 0x4]
@@ -3529,17 +3529,17 @@ _08097522:
strb r4, [r0]
b _08097584
.align 2, 0
-_0809752C: .4byte 0x02000000
+_0809752C: .4byte gSharedMem
_08097530: .4byte gUnknown_0203847E
_08097534:
bl party_compaction
bl sub_8099310
- ldr r1, _08097544 @ =0x02000000
+ ldr r1, _08097544 @ =gSharedMem
ldrb r0, [r1, 0x4]
adds r0, 0x1
b _08097582
.align 2, 0
-_08097544: .4byte 0x02000000
+_08097544: .4byte gSharedMem
_08097548:
bl sub_8099374
lsls r0, 24
@@ -3563,7 +3563,7 @@ _0809756C:
beq _08097584
movs r0, 0x6
bl sub_8098898
- ldr r1, _08097590 @ =0x02000000
+ ldr r1, _08097590 @ =gSharedMem
movs r0, 0x1
_08097582:
strb r0, [r1, 0x4]
@@ -3573,13 +3573,13 @@ _08097584:
bx r0
.align 2, 0
_0809758C: .4byte gMain
-_08097590: .4byte 0x02000000
+_08097590: .4byte gSharedMem
thumb_func_end sub_809746C
thumb_func_start sub_8097594
sub_8097594: @ 8097594
push {r4,lr}
- ldr r0, _080975AC @ =0x02000000
+ ldr r0, _080975AC @ =gSharedMem
ldrb r0, [r0, 0x4]
cmp r0, 0xD
bls _080975A0
@@ -3591,7 +3591,7 @@ _080975A0:
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_080975AC: .4byte 0x02000000
+_080975AC: .4byte gSharedMem
_080975B0: .4byte _080975B4
.align 2, 0
_080975B4:
@@ -3614,7 +3614,7 @@ _080975EC:
bl sub_8098898
movs r0, 0x1
bl sub_8098A38
- ldr r1, _0809761C @ =0x02000000
+ ldr r1, _0809761C @ =gSharedMem
ldrb r0, [r1, 0x4]
adds r0, 0x1
strb r0, [r1, 0x4]
@@ -3632,7 +3632,7 @@ _08097600:
beq _08097626
b _0809777A
.align 2, 0
-_0809761C: .4byte 0x02000000
+_0809761C: .4byte gSharedMem
_08097620:
cmp r1, 0x1
beq _08097626
@@ -3653,10 +3653,10 @@ _0809763A:
beq _0809764A
b _0809777A
_0809764A:
- ldr r4, _08097650 @ =0x02000000
+ ldr r4, _08097650 @ =gSharedMem
b _0809765A
.align 2, 0
-_08097650: .4byte 0x02000000
+_08097650: .4byte gSharedMem
_08097654:
cmp r0, 0
bne _0809765A
@@ -3708,12 +3708,12 @@ _08097690:
_080976B4: .4byte gMain
_080976B8: .4byte gUnknown_0203847C
_080976BC:
- ldr r1, _080976C4 @ =0x02000000
+ ldr r1, _080976C4 @ =gSharedMem
movs r0, 0x7
strb r0, [r1, 0x4]
b _0809777A
.align 2, 0
-_080976C4: .4byte 0x02000000
+_080976C4: .4byte gSharedMem
_080976C8:
bl sub_8099374
lsls r0, 24
@@ -3774,21 +3774,21 @@ _08097732:
_08097740:
bl sub_8098898
_08097744:
- ldr r1, _08097754 @ =0x02000000
+ ldr r1, _08097754 @ =gSharedMem
ldrb r0, [r1, 0x4]
adds r0, 0x1
strb r0, [r1, 0x4]
b _0809777A
.align 2, 0
_08097750: .4byte gMain
-_08097754: .4byte 0x02000000
+_08097754: .4byte gSharedMem
_08097758:
- ldr r1, _08097760 @ =0x02000000
+ ldr r1, _08097760 @ =gSharedMem
movs r0, 0x8
strb r0, [r1, 0x4]
b _0809777A
.align 2, 0
-_08097760: .4byte 0x02000000
+_08097760: .4byte gSharedMem
_08097764:
ldr r0, _08097780 @ =gMain
ldrh r1, [r0, 0x2E]
@@ -3812,7 +3812,7 @@ _08097784: .4byte sub_8096C84
sub_8097788: @ 8097788
push {r4,r5,lr}
sub sp, 0x4
- ldr r5, _0809779C @ =0x02000000
+ ldr r5, _0809779C @ =gSharedMem
ldrb r4, [r5, 0x4]
cmp r4, 0
beq _080977A0
@@ -3820,7 +3820,7 @@ sub_8097788: @ 8097788
beq _080977BC
b _080977D4
.align 2, 0
-_0809779C: .4byte 0x02000000
+_0809779C: .4byte gSharedMem
_080977A0:
bl sub_809BC18
movs r0, 0x1
@@ -3858,7 +3858,7 @@ _080977E0: .4byte sub_8096B5C
thumb_func_start sub_80977E4
sub_80977E4: @ 80977E4
push {r4,lr}
- ldr r4, _080977F4 @ =0x02000000
+ ldr r4, _080977F4 @ =gSharedMem
ldrb r0, [r4, 0x4]
cmp r0, 0
beq _080977F8
@@ -3866,7 +3866,7 @@ sub_80977E4: @ 80977E4
beq _08097824
b _0809784C
.align 2, 0
-_080977F4: .4byte 0x02000000
+_080977F4: .4byte gSharedMem
_080977F8:
movs r0, 0xC
bl sub_8098898
@@ -3913,7 +3913,7 @@ _08097854: .4byte sub_8096C84
thumb_func_start sub_8097858
sub_8097858: @ 8097858
push {r4,lr}
- ldr r4, _08097868 @ =0x02000000
+ ldr r4, _08097868 @ =gSharedMem
ldrb r0, [r4, 0x4]
cmp r0, 0
beq _0809786C
@@ -3921,7 +3921,7 @@ sub_8097858: @ 8097858
beq _0809787C
b _08097890
.align 2, 0
-_08097868: .4byte 0x02000000
+_08097868: .4byte gSharedMem
_0809786C:
bl party_compaction
bl sub_8099310
@@ -3948,7 +3948,7 @@ _08097898: .4byte sub_8096C84
thumb_func_start sub_809789C
sub_809789C: @ 809789C
push {r4,lr}
- ldr r4, _080978AC @ =0x02000000
+ ldr r4, _080978AC @ =gSharedMem
ldrb r0, [r4, 0x4]
cmp r0, 0
beq _080978B0
@@ -3956,7 +3956,7 @@ sub_809789C: @ 809789C
beq _080978C2
b _08097968
.align 2, 0
-_080978AC: .4byte 0x02000000
+_080978AC: .4byte gSharedMem
_080978B0:
movs r0, 0x1
bl sub_8098898
@@ -4037,7 +4037,7 @@ _08097970: .4byte sub_8097A64
thumb_func_start sub_8097974
sub_8097974: @ 8097974
push {r4,r5,lr}
- ldr r5, _08097988 @ =0x02000000
+ ldr r5, _08097988 @ =gSharedMem
ldrb r0, [r5, 0x4]
cmp r0, 0x1
beq _080979A2
@@ -4047,7 +4047,7 @@ sub_8097974: @ 8097974
beq _08097996
b _08097A5A
.align 2, 0
-_08097988: .4byte 0x02000000
+_08097988: .4byte gSharedMem
_0809798C:
cmp r0, 0x2
beq _080979FC
@@ -4151,7 +4151,7 @@ _08097A60: .4byte sub_8096C84
thumb_func_start sub_8097A64
sub_8097A64: @ 8097A64
push {r4,r5,lr}
- ldr r5, _08097A78 @ =0x02000000
+ ldr r5, _08097A78 @ =gSharedMem
ldrb r0, [r5, 0x4]
cmp r0, 0x1
beq _08097AB0
@@ -4161,7 +4161,7 @@ sub_8097A64: @ 8097A64
beq _08097A86
b _08097B32
.align 2, 0
-_08097A78: .4byte 0x02000000
+_08097A78: .4byte gSharedMem
_08097A7C:
cmp r0, 0x2
beq _08097B00
@@ -4256,7 +4256,7 @@ _08097B40: .4byte sub_8096C84
sub_8097B44: @ 8097B44
push {r4,r5,lr}
sub sp, 0x4
- ldr r5, _08097B58 @ =0x02000000
+ ldr r5, _08097B58 @ =gSharedMem
ldrb r4, [r5, 0x4]
cmp r4, 0
beq _08097B5C
@@ -4264,7 +4264,7 @@ sub_8097B44: @ 8097B44
beq _08097B78
b _08097B8E
.align 2, 0
-_08097B58: .4byte 0x02000000
+_08097B58: .4byte gSharedMem
_08097B5C:
bl sub_809BB90
movs r0, 0x1
@@ -4301,7 +4301,7 @@ _08097B9C: .4byte sub_8096B5C
thumb_func_start sub_8097BA0
sub_8097BA0: @ 8097BA0
push {r4,lr}
- ldr r0, _08097BB8 @ =0x02000000
+ ldr r0, _08097BB8 @ =gSharedMem
ldrb r1, [r0, 0x4]
adds r4, r0, 0
cmp r1, 0x4
@@ -4314,7 +4314,7 @@ _08097BAE:
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_08097BB8: .4byte 0x02000000
+_08097BB8: .4byte gSharedMem
_08097BBC: .4byte _08097BC0
.align 2, 0
_08097BC0:
@@ -4332,12 +4332,12 @@ _08097BD4:
bl PlaySE
movs r0, 0xF
bl sub_8098898
- ldr r1, _08097BF4 @ =0x02000000
+ ldr r1, _08097BF4 @ =gSharedMem
movs r0, 0x1
strb r0, [r1, 0x4]
b _08097CB0
.align 2, 0
-_08097BF4: .4byte 0x02000000
+_08097BF4: .4byte gSharedMem
_08097BF8:
movs r0, 0x5
bl PlaySE
@@ -4345,12 +4345,12 @@ _08097BF8:
bl sub_8098898
movs r0, 0
bl sub_8098A38
- ldr r1, _08097C14 @ =0x02000000
+ ldr r1, _08097C14 @ =gSharedMem
movs r0, 0x2
strb r0, [r1, 0x4]
b _08097CB0
.align 2, 0
-_08097C14: .4byte 0x02000000
+_08097C14: .4byte gSharedMem
_08097C18:
ldr r0, _08097C28 @ =gMain
ldrh r1, [r0, 0x2E]
@@ -4388,13 +4388,13 @@ _08097C5C:
movs r0, 0x3
bl PlaySE
bl sub_8098A5C
- ldr r1, _08097C70 @ =0x02000000
+ ldr r1, _08097C70 @ =gSharedMem
ldrb r0, [r1, 0x4]
adds r0, 0x1
strb r0, [r1, 0x4]
b _08097CB0
.align 2, 0
-_08097C70: .4byte 0x02000000
+_08097C70: .4byte gSharedMem
_08097C74:
movs r1, 0
movs r0, 0xE
@@ -4435,7 +4435,7 @@ _08097CBC: .4byte sub_80961A8
thumb_func_start sub_8097CC0
sub_8097CC0: @ 8097CC0
push {r4,lr}
- ldr r0, _08097CD8 @ =0x02000000
+ ldr r0, _08097CD8 @ =gSharedMem
ldrb r1, [r0, 0x4]
adds r4, r0, 0
cmp r1, 0x4
@@ -4448,7 +4448,7 @@ _08097CCE:
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_08097CD8: .4byte 0x02000000
+_08097CD8: .4byte gSharedMem
_08097CDC: .4byte _08097CE0
.align 2, 0
_08097CE0:
@@ -4466,12 +4466,12 @@ _08097CF4:
bl PlaySE
movs r0, 0xF
bl sub_8098898
- ldr r1, _08097D14 @ =0x02000000
+ ldr r1, _08097D14 @ =gSharedMem
movs r0, 0x1
strb r0, [r1, 0x4]
b _08097DD0
.align 2, 0
-_08097D14: .4byte 0x02000000
+_08097D14: .4byte gSharedMem
_08097D18:
movs r0, 0x5
bl PlaySE
@@ -4479,12 +4479,12 @@ _08097D18:
bl sub_8098898
movs r0, 0
bl sub_8098A38
- ldr r1, _08097D34 @ =0x02000000
+ ldr r1, _08097D34 @ =gSharedMem
movs r0, 0x2
strb r0, [r1, 0x4]
b _08097DD0
.align 2, 0
-_08097D34: .4byte 0x02000000
+_08097D34: .4byte gSharedMem
_08097D38:
ldr r0, _08097D48 @ =gMain
ldrh r1, [r0, 0x2E]
@@ -4523,13 +4523,13 @@ _08097D7C:
movs r0, 0x3
bl PlaySE
bl sub_8098A5C
- ldr r1, _08097D90 @ =0x02000000
+ ldr r1, _08097D90 @ =gSharedMem
ldrb r0, [r1, 0x4]
adds r0, 0x1
strb r0, [r1, 0x4]
b _08097DD0
.align 2, 0
-_08097D90: .4byte 0x02000000
+_08097D90: .4byte gSharedMem
_08097D94:
movs r1, 0
movs r0, 0xE
@@ -4570,7 +4570,7 @@ _08097DDC: .4byte sub_80961A8
thumb_func_start sub_8097DE0
sub_8097DE0: @ 8097DE0
push {lr}
- ldr r1, _08097E1C @ =0x02000000
+ ldr r1, _08097E1C @ =gSharedMem
movs r0, 0
strb r0, [r1, 0x7]
strh r0, [r1, 0x8]
@@ -4597,7 +4597,7 @@ sub_8097DE0: @ 8097DE0
pop {r0}
bx r0
.align 2, 0
-_08097E1C: .4byte 0x02000000
+_08097E1C: .4byte gSharedMem
_08097E20: .4byte REG_BG3CNT
_08097E24: .4byte 0x00001e0f
_08097E28: .4byte gPokemonStorageScrollingBGTile
@@ -4612,7 +4612,7 @@ _08097E40: .4byte gPokemonStorageScrollingBGPalette
thumb_func_start sub_8097E44
sub_8097E44: @ 8097E44
push {lr}
- ldr r1, _08097E6C @ =0x02000000
+ ldr r1, _08097E6C @ =gSharedMem
ldrb r0, [r1, 0x7]
adds r0, 0x1
strb r0, [r1, 0x7]
@@ -4632,7 +4632,7 @@ _08097E66:
pop {r0}
bx r0
.align 2, 0
-_08097E6C: .4byte 0x02000000
+_08097E6C: .4byte gSharedMem
thumb_func_end sub_8097E44
thumb_func_start sub_8097E70
@@ -4734,7 +4734,7 @@ sub_8097F58: @ 8097F58
movs r0, 0xD
movs r2, 0
bl sub_80F7940
- ldr r4, _08097FA8 @ =0x02000000
+ ldr r4, _08097FA8 @ =gSharedMem
ldr r1, _08097FAC @ =0x000012ac
adds r3, r4, r1
str r0, [r3]
@@ -4767,7 +4767,7 @@ sub_8097F58: @ 8097F58
bx r0
.align 2, 0
_08097FA4: .4byte 0x0000dace
-_08097FA8: .4byte 0x02000000
+_08097FA8: .4byte gSharedMem
_08097FAC: .4byte 0x000012ac
_08097FB0: .4byte 0x000012b8
_08097FB4: .4byte 0x06010000
@@ -4785,7 +4785,7 @@ sub_8097FB8: @ 8097FB8
mov r0, sp
bl LoadSpriteSheet
movs r4, 0
- ldr r5, _08098010 @ =0x020012b0
+ ldr r5, _08098010 @ =gSharedMem + 0x12B0
_08097FD0:
lsls r1, r4, 6
subs r1, r4
@@ -4817,7 +4817,7 @@ _08097FD0:
bx r0
.align 2, 0
_0809800C: .4byte gWaveformSpriteSheet
-_08098010: .4byte 0x020012b0
+_08098010: .4byte gSharedMem + 0x12B0
_08098014: .4byte gSpriteTemplate_83B6EFC
_08098018: .4byte gSprites
thumb_func_end sub_8097FB8
@@ -4825,7 +4825,7 @@ _08098018: .4byte gSprites
thumb_func_start sub_809801C
sub_809801C: @ 809801C
push {lr}
- ldr r1, _0809803C @ =0x02000000
+ ldr r1, _0809803C @ =gSharedMem
ldr r2, _08098040 @ =0x000011f0
adds r0, r1, r2
ldrh r0, [r0]
@@ -4838,7 +4838,7 @@ sub_809801C: @ 809801C
pop {r0}
bx r0
.align 2, 0
-_0809803C: .4byte 0x02000000
+_0809803C: .4byte gSharedMem
_08098040: .4byte 0x000011f0
thumb_func_end sub_809801C
@@ -4846,7 +4846,7 @@ _08098040: .4byte 0x000011f0
BoxSetMosaic: @ 8098044
push {lr}
bl sub_809801C
- ldr r0, _08098084 @ =0x02000000
+ ldr r0, _08098084 @ =gSharedMem
movs r1, 0x9C
lsls r1, 6
adds r3, r0, r1
@@ -4877,7 +4877,7 @@ _08098080:
pop {r0}
bx r0
.align 2, 0
-_08098084: .4byte 0x02000000
+_08098084: .4byte gSharedMem
_08098088: .4byte sub_8098090
_0809808C: .4byte REG_MOSAIC
thumb_func_end BoxSetMosaic
@@ -4943,7 +4943,7 @@ sub_80980D4: @ 80980D4
stm r1!, {r2-r4}
movs r1, 0
add r5, sp, 0x18
- ldr r4, _0809815C @ =0x02002784
+ ldr r4, _0809815C @ =gSharedMem + 0x2784
movs r3, 0
ldr r2, _08098160 @ =0x000007ff
_08098102:
@@ -4955,7 +4955,7 @@ _08098102:
cmp r1, r2
bls _08098102
movs r1, 0
- ldr r3, _08098164 @ =0x02002704
+ ldr r3, _08098164 @ =gSharedMem + 0x2704
movs r2, 0
_08098116:
lsls r0, r1, 1
@@ -4966,7 +4966,7 @@ _08098116:
lsrs r1, r0, 16
cmp r1, 0xF
bls _08098116
- ldr r0, _08098168 @ =0x02000000
+ ldr r0, _08098168 @ =gSharedMem
movs r1, 0x9C
lsls r1, 6
adds r0, r1
@@ -4989,12 +4989,12 @@ _08098116:
_08098150: .4byte gUnknown_083B6DCC
_08098154: .4byte gUnknown_083B6DD4
_08098158: .4byte gSpriteTemplate_83B6DDC
-_0809815C: .4byte 0x02002784
+_0809815C: .4byte gSharedMem + 0x2784
_08098160: .4byte 0x000007ff
-_08098164: .4byte 0x02002704
-_08098168: .4byte 0x02000000
+_08098164: .4byte gSharedMem + 0x2704
+_08098168: .4byte gSharedMem
_0809816C:
- ldr r2, _0809819C @ =0x02000000
+ ldr r2, _0809819C @ =gSharedMem
movs r0, 0x9C
lsls r0, 6
adds r3, r2, r0
@@ -5019,7 +5019,7 @@ _0809816C:
str r0, [r2]
b _080981C4
.align 2, 0
-_0809819C: .4byte 0x02000000
+_0809819C: .4byte gSharedMem
_080981A0: .4byte gSprites
_080981A4: .4byte 0x000026fa
_080981A8: .4byte 0x000026fc
@@ -5035,7 +5035,7 @@ _080981B0:
cmp r1, 0x40
bne _0809816C
_080981C4:
- ldr r0, _080981E8 @ =0x02000000
+ ldr r0, _080981E8 @ =gSharedMem
movs r2, 0x9C
lsls r2, 6
adds r0, r2
@@ -5052,7 +5052,7 @@ _080981DE:
pop {r0}
bx r0
.align 2, 0
-_080981E8: .4byte 0x02000000
+_080981E8: .4byte gSharedMem
_080981EC: .4byte 0x0000dac7
thumb_func_end sub_80980D4
@@ -5065,7 +5065,7 @@ sub_80981F0: @ 80981F0
adds r7, r1, 0
lsls r0, 16
lsrs r4, r0, 16
- ldr r6, _08098274 @ =0x02000000
+ ldr r6, _08098274 @ =gSharedMem
movs r0, 0x9C
lsls r0, 6
adds r0, r6
@@ -5120,7 +5120,7 @@ sub_80981F0: @ 80981F0
strb r0, [r1]
b _080982A6
.align 2, 0
-_08098274: .4byte 0x02000000
+_08098274: .4byte gSharedMem
_08098278: .4byte gMonFrontPicTable
_0809827C: .4byte gMonFrontPicCoords
_08098280: .4byte 0x00004784
@@ -5148,7 +5148,7 @@ _080982A6:
thumb_func_start sub_80982B4
sub_80982B4: @ 80982B4
push {r4,lr}
- ldr r4, _080982E4 @ =0x02000000
+ ldr r4, _080982E4 @ =gSharedMem
ldr r1, _080982E8 @ =0x000011f0
adds r0, r4, r1
ldrh r0, [r0]
@@ -5171,7 +5171,7 @@ sub_80982B4: @ 80982B4
ands r0, r2
b _08098302
.align 2, 0
-_080982E4: .4byte 0x02000000
+_080982E4: .4byte gSharedMem
_080982E8: .4byte 0x000011f0
_080982EC: .4byte 0x000011f7
_080982F0: .4byte 0x000012ac
@@ -5190,7 +5190,7 @@ _08098302:
movs r2, 0x9
movs r3, 0x11
bl MenuZeroFillWindowRect
- ldr r4, _0809834C @ =0x0200127a
+ ldr r4, _0809834C @ =gSharedMem + 0x127A
adds r0, r4, 0
movs r1, 0x1
movs r2, 0x10
@@ -5215,14 +5215,14 @@ _08098302:
bx r0
.align 2, 0
_08098348: .4byte 0x000012ac
-_0809834C: .4byte 0x0200127a
+_0809834C: .4byte gSharedMem + 0x127A
thumb_func_end sub_80982B4
thumb_func_start sub_8098350
sub_8098350: @ 8098350
push {r4,r5,lr}
sub sp, 0x10
- ldr r5, _080983A0 @ =0x02000000
+ ldr r5, _080983A0 @ =gSharedMem
ldr r1, _080983A4 @ =0x000011f0
adds r0, r5, r1
ldrh r2, [r0]
@@ -5260,7 +5260,7 @@ _08098382:
bls _08098382
b _080983EC
.align 2, 0
-_080983A0: .4byte 0x02000000
+_080983A0: .4byte gSharedMem
_080983A4: .4byte 0x000011f0
_080983A8: .4byte 0x06007800
_080983AC: .4byte gUnknown_02039760
@@ -5316,7 +5316,7 @@ sub_8098400: @ 8098400
ldr r1, _08098488 @ =0x06006800
bl LZ77UnCompVram
ldr r0, _0809848C @ =gPSSMenuMisc_Tilemap
- ldr r5, _08098490 @ =0x020000a8
+ ldr r5, _08098490 @ =gSharedMem + 0xA8
adds r1, r5, 0
bl LZ77UnCompWram
ldr r0, _08098494 @ =gPSSMenu3_Pal
@@ -5365,7 +5365,7 @@ _08098480: .4byte 0x00000f01
_08098484: .4byte gPSSMenuMisc_Gfx
_08098488: .4byte 0x06006800
_0809848C: .4byte gPSSMenuMisc_Tilemap
-_08098490: .4byte 0x020000a8
+_08098490: .4byte gSharedMem + 0xA8
_08098494: .4byte gPSSMenu3_Pal
_08098498: .4byte gPSSMenu4_Pal
_0809849C: .4byte 0x06007800
@@ -5388,7 +5388,7 @@ _080984AC:
movs r0, 0x1
bl sub_8098690
_080984CC:
- ldr r0, _080984E0 @ =0x02000000
+ ldr r0, _080984E0 @ =gSharedMem
ldr r1, _080984E4 @ =0x000008af
adds r0, r1
movs r1, 0
@@ -5398,14 +5398,14 @@ _080984CC:
pop {r0}
bx r0
.align 2, 0
-_080984E0: .4byte 0x02000000
+_080984E0: .4byte gSharedMem
_080984E4: .4byte 0x000008af
thumb_func_end sub_8098400
thumb_func_start sub_80984E8
sub_80984E8: @ 80984E8
push {lr}
- ldr r1, _08098510 @ =0x02000000
+ ldr r1, _08098510 @ =gSharedMem
ldr r0, _08098514 @ =0x000008a8
adds r2, r1, r0
movs r3, 0
@@ -5423,7 +5423,7 @@ sub_80984E8: @ 80984E8
pop {r0}
bx r0
.align 2, 0
-_08098510: .4byte 0x02000000
+_08098510: .4byte gSharedMem
_08098514: .4byte 0x000008a8
_08098518: .4byte 0x000008aa
_0809851C: .4byte 0x000008ad
@@ -5433,7 +5433,7 @@ _0809851C: .4byte 0x000008ad
sub_8098520: @ 8098520
push {r4,r5,lr}
sub sp, 0x10
- ldr r3, _08098578 @ =0x02000000
+ ldr r3, _08098578 @ =gSharedMem
ldr r0, _0809857C @ =0x000008ad
adds r5, r3, r0
ldrb r0, [r5]
@@ -5474,7 +5474,7 @@ sub_8098520: @ 8098520
movs r0, 0x1
b _08098594
.align 2, 0
-_08098578: .4byte 0x02000000
+_08098578: .4byte gSharedMem
_0809857C: .4byte 0x000008ad
_08098580: .4byte 0x000008a8
_08098584: .4byte 0x000008aa
@@ -5496,7 +5496,7 @@ _0809859C: .4byte gUnknown_0203847C
thumb_func_start add_to_c3_somehow
add_to_c3_somehow: @ 80985A0
- ldr r1, _080985BC @ =0x02000000
+ ldr r1, _080985BC @ =gSharedMem
ldr r0, _080985C0 @ =0x000008a8
adds r2, r1, r0
movs r3, 0
@@ -5511,7 +5511,7 @@ add_to_c3_somehow: @ 80985A0
strb r3, [r1]
bx lr
.align 2, 0
-_080985BC: .4byte 0x02000000
+_080985BC: .4byte gSharedMem
_080985C0: .4byte 0x000008a8
_080985C4: .4byte 0x000008aa
_080985C8: .4byte 0x000008ad
@@ -5524,7 +5524,7 @@ sub_80985CC: @ 80985CC
mov r6, r8
push {r6,r7}
sub sp, 0x10
- ldr r3, _08098640 @ =0x02000000
+ ldr r3, _08098640 @ =gSharedMem
ldr r0, _08098644 @ =0x000008ad
adds r6, r3, r0
ldrb r0, [r6]
@@ -5575,7 +5575,7 @@ sub_80985CC: @ 80985CC
movs r0, 0x1
b _0809867C
.align 2, 0
-_08098640: .4byte 0x02000000
+_08098640: .4byte gSharedMem
_08098644: .4byte 0x000008ad
_08098648: .4byte 0x000008a8
_0809864C: .4byte 0x000008aa
@@ -5619,7 +5619,7 @@ sub_8098690: @ 8098690
cmp r0, 0
beq _080986C0
ldr r0, _080986B8 @ =0x06007800
- ldr r3, _080986BC @ =0x020000a8
+ ldr r3, _080986BC @ =gSharedMem + 0xA8
movs r1, 0xC
str r1, [sp]
movs r1, 0
@@ -5634,10 +5634,10 @@ sub_8098690: @ 8098690
b _080986DA
.align 2, 0
_080986B8: .4byte 0x06007800
-_080986BC: .4byte 0x020000a8
+_080986BC: .4byte gSharedMem + 0xA8
_080986C0:
ldr r0, _080986E0 @ =0x06007800
- ldr r3, _080986E4 @ =0x020000a8
+ ldr r3, _080986E4 @ =gSharedMem + 0xA8
movs r1, 0xC
str r1, [sp]
movs r2, 0x2
@@ -5654,12 +5654,12 @@ _080986DA:
bx r0
.align 2, 0
_080986E0: .4byte 0x06007800
-_080986E4: .4byte 0x020000a8
+_080986E4: .4byte gSharedMem + 0xA8
thumb_func_end sub_8098690
thumb_func_start sub_80986E8
sub_80986E8: @ 80986E8
- ldr r1, _08098704 @ =0x02000000
+ ldr r1, _08098704 @ =gSharedMem
ldr r2, _08098708 @ =0x000008af
adds r0, r1, r2
movs r3, 0x1
@@ -5674,7 +5674,7 @@ sub_80986E8: @ 80986E8
strb r3, [r1]
bx lr
.align 2, 0
-_08098704: .4byte 0x02000000
+_08098704: .4byte gSharedMem
_08098708: .4byte 0x000008af
_0809870C: .4byte 0x000008b1
thumb_func_end sub_80986E8
@@ -5682,7 +5682,7 @@ _0809870C: .4byte 0x000008b1
thumb_func_start sub_8098710
sub_8098710: @ 8098710
push {lr}
- ldr r0, _0809872C @ =0x02000000
+ ldr r0, _0809872C @ =gSharedMem
ldr r2, _08098730 @ =0x000008af
adds r1, r0, r2
ldrb r0, [r1]
@@ -5696,14 +5696,14 @@ _08098728:
pop {r0}
bx r0
.align 2, 0
-_0809872C: .4byte 0x02000000
+_0809872C: .4byte gSharedMem
_08098730: .4byte 0x000008af
thumb_func_end sub_8098710
thumb_func_start sub_8098734
sub_8098734: @ 8098734
push {lr}
- ldr r2, _08098774 @ =0x02000000
+ ldr r2, _08098774 @ =gSharedMem
ldr r1, _08098778 @ =0x000008af
adds r0, r2, r1
ldrb r0, [r0]
@@ -5736,7 +5736,7 @@ _08098770:
pop {r0}
bx r0
.align 2, 0
-_08098774: .4byte 0x02000000
+_08098774: .4byte gSharedMem
_08098778: .4byte 0x000008af
_0809877C: .4byte 0x000008b1
thumb_func_end sub_8098734
@@ -5746,7 +5746,7 @@ sub_8098780: @ 8098780
push {r4-r6,lr}
sub sp, 0x10
movs r4, 0x1
- ldr r6, _080987D4 @ =0x020000a8
+ ldr r6, _080987D4 @ =gSharedMem + 0xA8
movs r5, 0x80
lsls r5, 9
_0809878C:
@@ -5787,7 +5787,7 @@ _080987A8:
pop {r0}
bx r0
.align 2, 0
-_080987D4: .4byte 0x020000a8
+_080987D4: .4byte gSharedMem + 0xA8
_080987D8: .4byte gPlayerParty
thumb_func_end sub_8098780
@@ -5797,7 +5797,7 @@ sub_80987DC: @ 80987DC
sub sp, 0x10
bl sub_8098780
ldr r0, _08098804 @ =0x06007800
- ldr r3, _08098808 @ =0x020000a8
+ ldr r3, _08098808 @ =gSharedMem + 0xA8
movs r1, 0
str r1, [sp]
str r1, [sp, 0x4]
@@ -5813,13 +5813,13 @@ sub_80987DC: @ 80987DC
bx r0
.align 2, 0
_08098804: .4byte 0x06007800
-_08098808: .4byte 0x020000a8
+_08098808: .4byte gSharedMem + 0xA8
thumb_func_end sub_80987DC
thumb_func_start sub_809880C
sub_809880C: @ 809880C
push {lr}
- ldr r0, _08098828 @ =0x02000000
+ ldr r0, _08098828 @ =gSharedMem
ldr r1, _0809882C @ =0x000008ae
adds r0, r1
movs r1, 0
@@ -5830,14 +5830,14 @@ sub_809880C: @ 809880C
pop {r0}
bx r0
.align 2, 0
-_08098828: .4byte 0x02000000
+_08098828: .4byte gSharedMem
_0809882C: .4byte 0x000008ae
thumb_func_end sub_809880C
thumb_func_start sub_8098830
sub_8098830: @ 8098830
push {r4,r5,lr}
- ldr r5, _08098848 @ =0x02000000
+ ldr r5, _08098848 @ =gSharedMem
ldr r0, _0809884C @ =0x000008ae
adds r4, r5, r0
ldrb r0, [r4]
@@ -5849,7 +5849,7 @@ sub_8098830: @ 8098830
beq _08098856
b _08098890
.align 2, 0
-_08098848: .4byte 0x02000000
+_08098848: .4byte gSharedMem
_0809884C: .4byte 0x000008ae
_08098850:
cmp r0, 0x2
@@ -12471,7 +12471,7 @@ sub_809BD14: @ 809BD14
_0809BD24: .4byte gUnknown_020384E6
_0809BD28:
ldr r0, _0809BD34 @ =gUnknown_020384E5
- ldr r1, _0809BD38 @ =0x02018000
+ ldr r1, _0809BD38 @ =gSharedMem + 0x18000
ldrb r1, [r1, 0x9]
strb r1, [r0]
_0809BD30:
@@ -12479,7 +12479,7 @@ _0809BD30:
bx r0
.align 2, 0
_0809BD34: .4byte gUnknown_020384E5
-_0809BD38: .4byte 0x02018000
+_0809BD38: .4byte gSharedMem + 0x18000
thumb_func_end sub_809BD14
thumb_func_start party_compaction
diff --git a/asm/pokemon_summary_screen.s b/asm/pokemon_summary_screen.s
index 859fd177f..dddc31fd8 100644
--- a/asm/pokemon_summary_screen.s
+++ b/asm/pokemon_summary_screen.s
@@ -70,7 +70,7 @@ ShowPokemonSummaryScreen: @ 809D8BC
movs r5, 0x80
orrs r4, r5
strb r4, [r6, 0x8]
- ldr r5, _0809D908 @ =0x02018000
+ ldr r5, _0809D908 @ =gSharedMem + 0x18000
str r0, [r5]
movs r4, 0
strb r7, [r5, 0x8]
@@ -99,7 +99,7 @@ ShowPokemonSummaryScreen: @ 809D8BC
b _0809D90E
.align 2, 0
_0809D904: .4byte gPaletteFade
-_0809D908: .4byte 0x02018000
+_0809D908: .4byte gSharedMem + 0x18000
_0809D90C:
strb r1, [r5, 0xE]
_0809D90E:
@@ -231,7 +231,7 @@ sub_809D9F0: @ 809D9F0
movs r4, 0x2
str r4, [sp]
bl ShowPokemonSummaryScreen
- ldr r0, _0809DA18 @ =0x02018000
+ ldr r0, _0809DA18 @ =gSharedMem + 0x18000
adds r0, 0x7C
strh r5, [r0]
add sp, 0x4
@@ -239,13 +239,13 @@ sub_809D9F0: @ 809D9F0
pop {r0}
bx r0
.align 2, 0
-_0809DA18: .4byte 0x02018000
+_0809DA18: .4byte gSharedMem + 0x18000
thumb_func_end sub_809D9F0
thumb_func_start sub_809DA1C
sub_809DA1C: @ 809DA1C
push {lr}
- ldr r0, _0809DA30 @ =0x02018000
+ ldr r0, _0809DA30 @ =gSharedMem + 0x18000
ldrb r0, [r0, 0x8]
cmp r0, 0x6
bhi _0809DA78
@@ -255,7 +255,7 @@ sub_809DA1C: @ 809DA1C
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_0809DA30: .4byte 0x02018000
+_0809DA30: .4byte gSharedMem + 0x18000
_0809DA34: .4byte _0809DA38
.align 2, 0
_0809DA38:
@@ -286,14 +286,14 @@ _0809DA6C:
_0809DA6E:
movs r1, 0
bl CreateTask
- ldr r1, _0809DA80 @ =0x02018000
+ ldr r1, _0809DA80 @ =gSharedMem + 0x18000
strb r0, [r1, 0xF]
_0809DA78:
pop {r0}
bx r0
.align 2, 0
_0809DA7C: .4byte sub_809E3FC
-_0809DA80: .4byte 0x02018000
+_0809DA80: .4byte gSharedMem + 0x18000
thumb_func_end sub_809DA1C
thumb_func_start sub_809DA84
@@ -456,7 +456,7 @@ _0809DBDC:
ldr r1, _0809DC20 @ =0x80000080
str r1, [r0, 0x8]
ldr r0, [r0, 0x8]
- ldr r0, _0809DC24 @ =0x02018000
+ ldr r0, _0809DC24 @ =gSharedMem + 0x18000
adds r0, 0x74
movs r1, 0
strb r1, [r0]
@@ -471,7 +471,7 @@ _0809DC14: .4byte 0x800000a0
_0809DC18: .4byte gSummaryScreenButtonTiles
_0809DC1C: .4byte 0x0600d140
_0809DC20: .4byte 0x80000080
-_0809DC24: .4byte 0x02018000
+_0809DC24: .4byte gSharedMem + 0x18000
_0809DC28: .4byte 0x0000043c
_0809DC2C:
bl sub_809DF00
@@ -480,13 +480,13 @@ _0809DC2C:
bne _0809DC38
b _0809DE38
_0809DC38:
- ldr r0, _0809DC44 @ =0x02018000
+ ldr r0, _0809DC44 @ =gSharedMem + 0x18000
adds r0, 0x74
movs r1, 0
strb r1, [r0]
b _0809DDE8
.align 2, 0
-_0809DC44: .4byte 0x02018000
+_0809DC44: .4byte gSharedMem + 0x18000
_0809DC48:
bl sub_80A18C4
ldr r1, _0809DC54 @ =gMain
@@ -497,7 +497,7 @@ _0809DC48:
_0809DC54: .4byte gMain
_0809DC58: .4byte 0x0000043c
_0809DC5C:
- ldr r4, _0809DC78 @ =0x02018010
+ ldr r4, _0809DC78 @ =gSharedMem + 0x18010
adds r0, r4, 0
bl sub_809F678
adds r0, r4, 0
@@ -509,30 +509,30 @@ _0809DC5C:
bl sub_80A12D0
b _0809DC82
.align 2, 0
-_0809DC78: .4byte 0x02018010
+_0809DC78: .4byte gSharedMem + 0x18010
_0809DC7C:
movs r0, 0xA
bl sub_80A12D0
_0809DC82:
- ldr r0, _0809DC8C @ =0x02018010
+ ldr r0, _0809DC8C @ =gSharedMem + 0x18010
bl sub_80A0EA4
b _0809DDE8
.align 2, 0
-_0809DC8C: .4byte 0x02018010
+_0809DC8C: .4byte gSharedMem + 0x18010
_0809DC90:
bl sub_80A1950
- ldr r0, _0809DCA4 @ =0x02018010
+ ldr r0, _0809DCA4 @ =gSharedMem + 0x18010
bl sub_80A1D84
ldr r1, _0809DCA8 @ =gMain
ldr r2, _0809DCAC @ =0x0000043c
adds r1, r2
b _0809DDEE
.align 2, 0
-_0809DCA4: .4byte 0x02018010
+_0809DCA4: .4byte gSharedMem + 0x18010
_0809DCA8: .4byte gMain
_0809DCAC: .4byte 0x0000043c
_0809DCB0:
- ldr r4, _0809DCC0 @ =0x02018010
+ ldr r4, _0809DCC0 @ =gSharedMem + 0x18010
adds r0, r4, 0
bl sub_80A1DE8
adds r4, 0x64
@@ -540,9 +540,9 @@ _0809DCB0:
strb r0, [r4]
b _0809DDE8
.align 2, 0
-_0809DCC0: .4byte 0x02018010
+_0809DCC0: .4byte gSharedMem + 0x18010
_0809DCC4:
- ldr r4, _0809DCEC @ =0x02018010
+ ldr r4, _0809DCEC @ =gSharedMem + 0x18010
adds r5, r4, 0
adds r5, 0x64
adds r0, r4, 0
@@ -563,7 +563,7 @@ _0809DCE0:
adds r1, r2
b _0809DDEE
.align 2, 0
-_0809DCEC: .4byte 0x02018010
+_0809DCEC: .4byte gSharedMem + 0x18010
_0809DCF0: .4byte gMain
_0809DCF4: .4byte 0x0000043c
_0809DCF8:
@@ -571,7 +571,7 @@ _0809DCF8:
bl sub_80A0EE8
b _0809DDE8
_0809DD02:
- ldr r1, _0809DD20 @ =0x02018000
+ ldr r1, _0809DD20 @ =gSharedMem + 0x18000
ldrb r0, [r1, 0xB]
cmp r0, 0x1
bhi _0809DD18
@@ -587,19 +587,19 @@ _0809DD18:
adds r1, r2
b _0809DDEE
.align 2, 0
-_0809DD20: .4byte 0x02018000
+_0809DD20: .4byte gSharedMem + 0x18000
_0809DD24: .4byte gUnknown_083C1580
_0809DD28: .4byte gMain
_0809DD2C: .4byte 0x0000043c
_0809DD30:
- ldr r0, _0809DD38 @ =0x02018010
+ ldr r0, _0809DD38 @ =gSharedMem + 0x18010
bl sub_809FAC8
b _0809DDE8
.align 2, 0
-_0809DD38: .4byte 0x02018010
+_0809DD38: .4byte gSharedMem + 0x18010
_0809DD3C:
ldr r2, _0809DD58 @ =gUnknown_083C1598
- ldr r0, _0809DD5C @ =0x02018000
+ ldr r0, _0809DD5C @ =gSharedMem + 0x18000
ldrb r1, [r0, 0xB]
lsls r1, 2
adds r1, r2
@@ -612,11 +612,11 @@ _0809DD3C:
b _0809DDEE
.align 2, 0
_0809DD58: .4byte gUnknown_083C1598
-_0809DD5C: .4byte 0x02018000
+_0809DD5C: .4byte gSharedMem + 0x18000
_0809DD60: .4byte gMain
_0809DD64: .4byte 0x0000043c
_0809DD68:
- ldr r0, _0809DD84 @ =0x02018010
+ ldr r0, _0809DD84 @ =gSharedMem + 0x18010
movs r1, 0x2D
bl GetMonData
adds r1, r0, 0
@@ -629,7 +629,7 @@ _0809DD68:
strh r0, [r1]
b _0809DDE8
.align 2, 0
-_0809DD84: .4byte 0x02018010
+_0809DD84: .4byte gSharedMem + 0x18010
_0809DD88: .4byte gUnknown_030041B0
_0809DD8C:
ldr r0, _0809DD94 @ =gUnknown_030041B0
@@ -639,7 +639,7 @@ _0809DD8C:
_0809DD94: .4byte gUnknown_030041B0
_0809DD98:
bl sub_809EBC4
- ldr r0, _0809DDB8 @ =0x02018000
+ ldr r0, _0809DDB8 @ =gSharedMem + 0x18000
adds r0, 0x79
ldrb r0, [r0]
cmp r0, 0
@@ -652,7 +652,7 @@ _0809DD98:
bl sub_80A1654
b _0809DDCC
.align 2, 0
-_0809DDB8: .4byte 0x02018000
+_0809DDB8: .4byte gSharedMem + 0x18000
_0809DDBC:
movs r0, 0xA
movs r1, 0
@@ -809,7 +809,7 @@ _0809DEFC: .4byte REG_BG0HOFS
thumb_func_start sub_809DF00
sub_809DF00: @ 809DF00
push {lr}
- ldr r0, _0809DF18 @ =0x02018000
+ ldr r0, _0809DF18 @ =gSharedMem + 0x18000
adds r0, 0x74
ldrb r0, [r0]
cmp r0, 0xC
@@ -822,7 +822,7 @@ _0809DF0E:
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_0809DF18: .4byte 0x02018000
+_0809DF18: .4byte gSharedMem + 0x18000
_0809DF1C: .4byte _0809DF20
.align 2, 0
_0809DF20:
@@ -932,7 +932,7 @@ _0809E010:
lsls r1, 1
movs r2, 0x60
bl LoadCompressedPalette
- ldr r0, _0809E02C @ =0x02018000
+ ldr r0, _0809E02C @ =gSharedMem + 0x18000
adds r0, 0x74
movs r1, 0
strb r1, [r0]
@@ -940,9 +940,9 @@ _0809E010:
b _0809E03C
.align 2, 0
_0809E028: .4byte gMoveTypes_Pal
-_0809E02C: .4byte 0x02018000
+_0809E02C: .4byte gSharedMem + 0x18000
_0809E030:
- ldr r1, _0809E040 @ =0x02018000
+ ldr r1, _0809E040 @ =gSharedMem + 0x18000
adds r1, 0x74
ldrb r0, [r1]
adds r0, 0x1
@@ -952,7 +952,7 @@ _0809E03C:
pop {r1}
bx r1
.align 2, 0
-_0809E040: .4byte 0x02018000
+_0809E040: .4byte gSharedMem + 0x18000
thumb_func_end sub_809DF00
thumb_func_start sub_809E044
@@ -1082,7 +1082,7 @@ sub_809E13C: @ 809E13C
cmp r0, 0
bne _0809E182
ldr r1, _0809E18C @ =gUnknown_020384F0
- ldr r4, _0809E190 @ =0x02018000
+ ldr r4, _0809E190 @ =gSharedMem + 0x18000
ldrb r0, [r4, 0x9]
strb r0, [r1]
bl ResetSpriteData
@@ -1104,7 +1104,7 @@ _0809E182:
.align 2, 0
_0809E188: .4byte gPaletteFade
_0809E18C: .4byte gUnknown_020384F0
-_0809E190: .4byte 0x02018000
+_0809E190: .4byte gSharedMem + 0x18000
_0809E194: .4byte gMPlay_BGM
_0809E198: .4byte 0x0000ffff
thumb_func_end sub_809E13C
@@ -1182,7 +1182,7 @@ _0809E222:
ands r0, r1
cmp r0, 0
beq _0809E24C
- ldr r5, _0809E248 @ =0x02018000
+ ldr r5, _0809E248 @ =gSharedMem + 0x18000
ldrb r0, [r5, 0xB]
cmp r0, 0x1
bls _0809E23A
@@ -1196,7 +1196,7 @@ _0809E23A:
bl SummaryScreenExit
b _0809E25A
.align 2, 0
-_0809E248: .4byte 0x02018000
+_0809E248: .4byte gSharedMem + 0x18000
_0809E24C:
movs r0, 0x2
ands r0, r1
@@ -1238,7 +1238,7 @@ _0809E276:
movs r1, 0x4
strh r1, [r0, 0x8]
subs r1, 0x5
- ldr r2, _0809E2A8 @ =0x02018079
+ ldr r2, _0809E2A8 @ =gSharedMem + 0x18079
adds r0, r4, 0
bl sub_809E8F0
b _0809E3EE
@@ -1246,7 +1246,7 @@ _0809E276:
_0809E29C: .4byte gPaletteFade
_0809E2A0: .4byte gMain
_0809E2A4: .4byte gTasks
-_0809E2A8: .4byte 0x02018079
+_0809E2A8: .4byte gSharedMem + 0x18079
_0809E2AC:
adds r0, r2, 0
ands r0, r1
@@ -1259,14 +1259,14 @@ _0809E2AC:
adds r0, r1
movs r1, 0x4
strh r1, [r0, 0x8]
- ldr r2, _0809E2D4 @ =0x02018079
+ ldr r2, _0809E2D4 @ =gSharedMem + 0x18079
adds r0, r4, 0
movs r1, 0x1
bl sub_809E8F0
b _0809E3EE
.align 2, 0
_0809E2D0: .4byte gTasks
-_0809E2D4: .4byte 0x02018079
+_0809E2D4: .4byte gSharedMem + 0x18079
_0809E2D8:
movs r0, 0x20
ands r0, r1
@@ -1278,7 +1278,7 @@ _0809E2D8:
cmp r0, 0x1
bne _0809E324
_0809E2EC:
- ldr r1, _0809E320 @ =0x02018000
+ ldr r1, _0809E320 @ =gSharedMem + 0x18000
ldrb r0, [r1, 0xB]
cmp r0, 0x3
bne _0809E314
@@ -1305,7 +1305,7 @@ _0809E314:
bl SummaryScreenHandleLeftRightInput
b _0809E3EE
.align 2, 0
-_0809E320: .4byte 0x02018000
+_0809E320: .4byte gSharedMem + 0x18000
_0809E324:
ldrh r1, [r5, 0x2E]
movs r0, 0x10
@@ -1318,7 +1318,7 @@ _0809E324:
cmp r0, 0x2
bne _0809E37C
_0809E33A:
- ldr r1, _0809E378 @ =0x02018000
+ ldr r1, _0809E378 @ =gSharedMem + 0x18000
adds r2, r1, 0
adds r2, 0x76
ldrb r0, [r1, 0xB]
@@ -1349,7 +1349,7 @@ _0809E36C:
bl SummaryScreenHandleLeftRightInput
b _0809E3EE
.align 2, 0
-_0809E378: .4byte 0x02018000
+_0809E378: .4byte gSharedMem + 0x18000
_0809E37C:
ldrh r1, [r5, 0x2E]
movs r0, 0x1
@@ -1362,14 +1362,14 @@ _0809E37C:
lsrs r0, 24
cmp r0, 0x1
beq _0809E3A0
- ldr r0, _0809E3BC @ =0x02018000
+ ldr r0, _0809E3BC @ =gSharedMem + 0x18000
adds r5, r0, 0
adds r5, 0x79
ldrb r0, [r5]
cmp r0, 0x4
bne _0809E3C4
_0809E3A0:
- ldr r0, _0809E3BC @ =0x02018000
+ ldr r0, _0809E3BC @ =gSharedMem + 0x18000
adds r1, r0, 0
adds r1, 0x79
ldrb r1, [r1]
@@ -1382,7 +1382,7 @@ _0809E3A0:
bl SummaryScreenExit
b _0809E3EE
.align 2, 0
-_0809E3BC: .4byte 0x02018000
+_0809E3BC: .4byte gSharedMem + 0x18000
_0809E3C0: .4byte gSpecialVar_0x8005
_0809E3C4:
movs r0, 0x20
@@ -1396,7 +1396,7 @@ _0809E3D4:
ands r0, r1
cmp r0, 0
beq _0809E3EE
- ldr r0, _0809E3F4 @ =0x02018000
+ ldr r0, _0809E3F4 @ =gSharedMem + 0x18000
adds r0, 0x7A
movs r1, 0x4
strb r1, [r0]
@@ -1409,7 +1409,7 @@ _0809E3EE:
pop {r0}
bx r0
.align 2, 0
-_0809E3F4: .4byte 0x02018000
+_0809E3F4: .4byte gSharedMem + 0x18000
_0809E3F8: .4byte gSpecialVar_0x8005
thumb_func_end sub_809E260
@@ -1440,7 +1440,7 @@ sub_809E3FC: @ 809E3FC
movs r1, 0x4
strh r1, [r0, 0x8]
subs r1, 0x5
- ldr r2, _0809E444 @ =0x02018079
+ ldr r2, _0809E444 @ =gSharedMem + 0x18079
adds r0, r5, 0
bl sub_809E8F0
b _0809E502
@@ -1448,7 +1448,7 @@ sub_809E3FC: @ 809E3FC
_0809E438: .4byte gPaletteFade
_0809E43C: .4byte gMain
_0809E440: .4byte gTasks
-_0809E444: .4byte 0x02018079
+_0809E444: .4byte gSharedMem + 0x18079
_0809E448:
adds r0, r2, 0
ands r0, r1
@@ -1461,20 +1461,20 @@ _0809E448:
adds r0, r1
movs r1, 0x4
strh r1, [r0, 0x8]
- ldr r2, _0809E470 @ =0x02018079
+ ldr r2, _0809E470 @ =gSharedMem + 0x18079
adds r0, r5, 0
movs r1, 0x1
bl sub_809E8F0
b _0809E502
.align 2, 0
_0809E46C: .4byte gTasks
-_0809E470: .4byte 0x02018079
+_0809E470: .4byte gSharedMem + 0x18079
_0809E474:
movs r0, 0x1
ands r0, r1
cmp r0, 0
beq _0809E4EE
- ldr r4, _0809E4A8 @ =0x02018000
+ ldr r4, _0809E4A8 @ =gSharedMem + 0x18000
adds r6, r4, 0
adds r6, 0x79
ldrb r0, [r6]
@@ -1495,7 +1495,7 @@ _0809E474:
bl PlaySE
b _0809E502
.align 2, 0
-_0809E4A8: .4byte 0x02018000
+_0809E4A8: .4byte gSharedMem + 0x18000
_0809E4AC:
movs r0, 0x5
bl PlaySE
@@ -1586,14 +1586,14 @@ sub_809E534: @ 809E534
movs r1, 0x3
strh r1, [r0, 0x8]
subs r1, 0x4
- ldr r2, _0809E56C @ =0x0201807a
+ ldr r2, _0809E56C @ =gSharedMem + 0x1807A
adds r0, r3, 0
bl sub_809E8F0
b _0809E5C0
.align 2, 0
_0809E564: .4byte gMain
_0809E568: .4byte gTasks
-_0809E56C: .4byte 0x0201807a
+_0809E56C: .4byte gSharedMem + 0x1807A
_0809E570:
movs r0, 0x80
ands r0, r1
@@ -1606,14 +1606,14 @@ _0809E570:
adds r0, r1
movs r1, 0x3
strh r1, [r0, 0x8]
- ldr r2, _0809E598 @ =0x0201807a
+ ldr r2, _0809E598 @ =gSharedMem + 0x1807A
adds r0, r3, 0
movs r1, 0x1
bl sub_809E8F0
b _0809E5C0
.align 2, 0
_0809E594: .4byte gTasks
-_0809E598: .4byte 0x0201807a
+_0809E598: .4byte gSharedMem + 0x1807A
_0809E59C:
movs r0, 0x1
ands r0, r1
@@ -1645,7 +1645,7 @@ sub_809E5C4: @ 809E5C4
mov r5, r8
push {r5-r7}
sub sp, 0x20
- ldr r1, _0809E6D0 @ =0x02018000
+ ldr r1, _0809E6D0 @ =gSharedMem + 0x18000
ldr r5, [r1]
ldrb r2, [r1, 0x9]
movs r0, 0x64
@@ -1764,7 +1764,7 @@ sub_809E5C4: @ 809E5C4
pop {r0}
bx r0
.align 2, 0
-_0809E6D0: .4byte 0x02018000
+_0809E6D0: .4byte gSharedMem + 0x18000
_0809E6D4: .4byte gUnknown_08208238
thumb_func_end sub_809E5C4
@@ -1776,7 +1776,7 @@ sub_809E6D8: @ 809E6D8
mov r5, r8
push {r5-r7}
sub sp, 0x20
- ldr r2, _0809E7E8 @ =0x02018000
+ ldr r2, _0809E7E8 @ =gSharedMem + 0x18000
ldr r5, [r2]
ldrb r1, [r2, 0x9]
lsls r0, r1, 2
@@ -1896,7 +1896,7 @@ sub_809E6D8: @ 809E6D8
pop {r0}
bx r0
.align 2, 0
-_0809E7E8: .4byte 0x02018000
+_0809E7E8: .4byte gSharedMem + 0x18000
_0809E7EC: .4byte gUnknown_08208238
thumb_func_end sub_809E6D8
@@ -1909,7 +1909,7 @@ sub_809E7F0: @ 809E7F0
lsls r0, 24
cmp r0, 0
beq _0809E828
- ldr r1, _0809E830 @ =0x02018000
+ ldr r1, _0809E830 @ =gSharedMem + 0x18000
adds r2, r1, 0
adds r2, 0x74
movs r0, 0
@@ -1932,7 +1932,7 @@ _0809E828:
pop {r0}
bx r0
.align 2, 0
-_0809E830: .4byte 0x02018000
+_0809E830: .4byte gSharedMem + 0x18000
_0809E834: .4byte gTasks
_0809E838: .4byte sub_809E3FC
thumb_func_end sub_809E7F0
@@ -1953,7 +1953,7 @@ sub_809E83C: @ 809E83C
bl sub_80A1B40
cmp r4, 0x1
bne _0809E8C0
- ldr r1, _0809E87C @ =0x02018000
+ ldr r1, _0809E87C @ =gSharedMem + 0x18000
adds r0, r1, 0
adds r0, 0x79
adds r2, r1, 0
@@ -1968,11 +1968,11 @@ sub_809E83C: @ 809E83C
bl sub_809E5C4
b _0809E884
.align 2, 0
-_0809E87C: .4byte 0x02018000
+_0809E87C: .4byte gSharedMem + 0x18000
_0809E880:
bl sub_809E6D8
_0809E884:
- ldr r4, _0809E8B4 @ =0x02018000
+ ldr r4, _0809E8B4 @ =gSharedMem + 0x18000
adds r0, r4, 0
adds r0, 0x7A
ldrb r0, [r0]
@@ -1995,11 +1995,11 @@ _0809E884:
str r1, [r0]
b _0809E8DE
.align 2, 0
-_0809E8B4: .4byte 0x02018000
+_0809E8B4: .4byte gSharedMem + 0x18000
_0809E8B8: .4byte gTasks
_0809E8BC: .4byte sub_809E7F0
_0809E8C0:
- ldr r0, _0809E8E4 @ =0x02018010
+ ldr r0, _0809E8E4 @ =gSharedMem + 0x18010
adds r1, r0, 0
adds r1, 0x69
bl sub_80A0428
@@ -2018,7 +2018,7 @@ _0809E8DE:
pop {r0}
bx r0
.align 2, 0
-_0809E8E4: .4byte 0x02018010
+_0809E8E4: .4byte gSharedMem + 0x18010
_0809E8E8: .4byte gTasks
_0809E8EC: .4byte sub_809E3FC
thumb_func_end sub_809E83C
@@ -2076,7 +2076,7 @@ _0809E948:
_0809E94E:
lsls r4, r6, 24
lsrs r1, r4, 24
- ldr r0, _0809EA10 @ =0x02018010
+ ldr r0, _0809EA10 @ =gSharedMem + 0x18010
str r2, [sp, 0x4]
bl sub_809F760
lsls r0, 16
@@ -2103,7 +2103,7 @@ _0809E97A:
asrs r0, r5, 24
cmp r0, 0x4
beq _0809E996
- ldr r0, _0809EA14 @ =0x02018000
+ ldr r0, _0809EA14 @ =gSharedMem + 0x18000
adds r0, 0x7C
ldrh r0, [r0]
mov r2, r8
@@ -2147,7 +2147,7 @@ _0809E9D0:
asrs r0, r5, 24
cmp r0, 0x4
bne _0809E9FE
- ldr r0, _0809EA14 @ =0x02018000
+ ldr r0, _0809EA14 @ =gSharedMem + 0x18000
adds r0, 0x7C
ldrh r0, [r0]
cmp r0, 0
@@ -2164,17 +2164,17 @@ _0809E9D0:
_0809E9FE:
mov r2, r9
strb r6, [r2]
- ldr r0, _0809EA1C @ =0x02018079
+ ldr r0, _0809EA1C @ =gSharedMem + 0x18079
cmp r9, r0
bne _0809EA20
movs r0, 0
bl sub_80A1C30
b _0809EA26
.align 2, 0
-_0809EA10: .4byte 0x02018010
-_0809EA14: .4byte 0x02018000
+_0809EA10: .4byte gSharedMem + 0x18010
+_0809EA14: .4byte gSharedMem + 0x18000
_0809EA18: .4byte gTasks
-_0809EA1C: .4byte 0x02018079
+_0809EA1C: .4byte gSharedMem + 0x18079
_0809EA20:
movs r0, 0x1
bl sub_80A1C30
@@ -2182,7 +2182,7 @@ _0809EA26:
ldr r3, [sp]
cmp r3, 0
beq _0809EA34
- ldr r0, _0809EA4C @ =0x02018010
+ ldr r0, _0809EA4C @ =gSharedMem + 0x18010
mov r1, r9
bl sub_80A0428
_0809EA34:
@@ -2197,7 +2197,7 @@ _0809EA34:
pop {r0}
bx r0
.align 2, 0
-_0809EA4C: .4byte 0x02018010
+_0809EA4C: .4byte gSharedMem + 0x18010
thumb_func_end sub_809E8F0
thumb_func_start SummaryScreenHandleAButton
@@ -2207,7 +2207,7 @@ SummaryScreenHandleAButton: @ 809EA50
lsrs r5, r0, 24
movs r0, 0x5
bl PlaySE
- ldr r4, _0809EABC @ =0x02018000
+ ldr r4, _0809EABC @ =gSharedMem + 0x18000
adds r1, r4, 0
adds r1, 0x79
movs r0, 0
@@ -2249,7 +2249,7 @@ _0809EA8C:
pop {r0}
bx r0
.align 2, 0
-_0809EABC: .4byte 0x02018000
+_0809EABC: .4byte gSharedMem + 0x18000
_0809EAC0: .4byte gTasks
_0809EAC4: .4byte sub_809E3FC
thumb_func_end SummaryScreenHandleAButton
@@ -2259,7 +2259,7 @@ sub_809EAC8: @ 809EAC8
push {r4-r6,lr}
lsls r0, 24
lsrs r5, r0, 24
- ldr r6, _0809EB34 @ =0x02018000
+ ldr r6, _0809EB34 @ =gSharedMem + 0x18000
adds r0, r6, 0
adds r0, 0x79
ldrb r0, [r0]
@@ -2304,7 +2304,7 @@ _0809EAEE:
pop {r0}
bx r0
.align 2, 0
-_0809EB34: .4byte 0x02018000
+_0809EB34: .4byte gSharedMem + 0x18000
_0809EB38: .4byte gTasks
_0809EB3C: .4byte SummaryScreenHandleKeyInput
thumb_func_end sub_809EAC8
@@ -2336,7 +2336,7 @@ sub_809EB40: @ 809EB40
_0809EB6C: .4byte gTasks
_0809EB70: .4byte sub_809E260
_0809EB74:
- ldr r4, _0809EBBC @ =0x02018000
+ ldr r4, _0809EBBC @ =gSharedMem + 0x18000
adds r6, r4, 0
adds r6, 0x79
strb r0, [r6]
@@ -2371,14 +2371,14 @@ _0809EBB4:
pop {r0}
bx r0
.align 2, 0
-_0809EBBC: .4byte 0x02018000
+_0809EBBC: .4byte gSharedMem + 0x18000
_0809EBC0: .4byte gTasks
thumb_func_end sub_809EB40
thumb_func_start sub_809EBC4
sub_809EBC4: @ 809EBC4
push {r4,lr}
- ldr r4, _0809EC28 @ =0x02018000
+ ldr r4, _0809EC28 @ =gSharedMem + 0x18000
ldrb r0, [r4, 0xB]
cmp r0, 0
beq _0809EC22
@@ -2430,7 +2430,7 @@ _0809EC22:
pop {r0}
bx r0
.align 2, 0
-_0809EC28: .4byte 0x02018000
+_0809EC28: .4byte gSharedMem + 0x18000
_0809EC2C: .4byte gUnknown_030042C0
_0809EC30: .4byte REG_BG1CNT
_0809EC34: .4byte 0x0000e0ff
@@ -2469,7 +2469,7 @@ _0809EC64:
.4byte _0809EE1C
.4byte _0809EE4C
_0809EC7C:
- ldr r1, _0809ECB8 @ =0x02018000
+ ldr r1, _0809ECB8 @ =gSharedMem + 0x18000
adds r0, r1, 0
adds r0, 0x80
ldrb r0, [r0]
@@ -2503,7 +2503,7 @@ _0809ECB4:
ldr r2, _0809ECC0 @ =REG_BG2CNT
b _0809ECF6
.align 2, 0
-_0809ECB8: .4byte 0x02018000
+_0809ECB8: .4byte gSharedMem + 0x18000
_0809ECBC: .4byte gUnknown_03004288
_0809ECC0: .4byte REG_BG2CNT
_0809ECC4: .4byte 0x0000e0ff
@@ -2549,7 +2549,7 @@ _0809ED08: .4byte gUnknown_030042C0
_0809ED0C: .4byte REG_BG1CNT
_0809ED10: .4byte 0x0000e0ff
_0809ED14:
- ldr r0, _0809ED48 @ =0x02018000
+ ldr r0, _0809ED48 @ =gSharedMem + 0x18000
adds r0, 0x80
ldrb r0, [r0]
cmp r0, 0
@@ -2577,7 +2577,7 @@ _0809ED2E:
strh r1, [r2]
b _0809EE3A
.align 2, 0
-_0809ED48: .4byte 0x02018000
+_0809ED48: .4byte gSharedMem + 0x18000
_0809ED4C: .4byte gUnknown_030042C0
_0809ED50: .4byte REG_BG1CNT
_0809ED54: .4byte 0x0000fffc
@@ -2611,7 +2611,7 @@ _0809ED8C: .4byte REG_BG1CNT
_0809ED90: .4byte 0x0000fffc
_0809ED94: .4byte REG_BG2CNT
_0809ED98:
- ldr r1, _0809EDD4 @ =0x02018000
+ ldr r1, _0809EDD4 @ =gSharedMem + 0x18000
ldrb r3, [r1, 0xB]
adds r0, r3, 0x1
adds r2, r1, 0
@@ -2639,7 +2639,7 @@ _0809ED98:
bl sub_80A00F4
b _0809EE3A
.align 2, 0
-_0809EDD4: .4byte 0x02018000
+_0809EDD4: .4byte gSharedMem + 0x18000
_0809EDD8:
lsls r0, r3, 24
lsrs r0, 24
@@ -2680,7 +2680,7 @@ _0809EE12:
b _0809EE3A
_0809EE1C:
ldr r0, _0809EE44 @ =gUnknown_083C1598
- ldr r4, _0809EE48 @ =0x02018000
+ ldr r4, _0809EE48 @ =gSharedMem + 0x18000
ldrb r1, [r4, 0xB]
lsls r1, 2
adds r1, r0
@@ -2700,7 +2700,7 @@ _0809EE3A:
b _0809EE64
.align 2, 0
_0809EE44: .4byte gUnknown_083C1598
-_0809EE48: .4byte 0x02018000
+_0809EE48: .4byte gSharedMem + 0x18000
_0809EE4C:
bl sub_8055870
cmp r0, 0x1
@@ -2756,7 +2756,7 @@ _0809EEA0:
.4byte _0809F078
.4byte _0809F0A8
_0809EEBC:
- ldr r0, _0809EECC @ =0x02018000
+ ldr r0, _0809EECC @ =gSharedMem + 0x18000
adds r0, 0x80
ldrb r1, [r0]
cmp r1, 0
@@ -2765,7 +2765,7 @@ _0809EEBC:
strh r1, [r0]
b _0809F096
.align 2, 0
-_0809EECC: .4byte 0x02018000
+_0809EECC: .4byte gSharedMem + 0x18000
_0809EED0: .4byte gUnknown_03004288
_0809EED4:
ldr r1, _0809EEDC @ =gUnknown_030042C0
@@ -2775,7 +2775,7 @@ _0809EED4:
.align 2, 0
_0809EEDC: .4byte gUnknown_030042C0
_0809EEE0:
- ldr r1, _0809EF30 @ =0x02018000
+ ldr r1, _0809EF30 @ =gSharedMem + 0x18000
adds r0, r1, 0
adds r0, 0x80
ldrb r0, [r0]
@@ -2818,7 +2818,7 @@ _0809EF2A:
ldr r2, _0809EF48 @ =REG_BG1CNT
b _0809EF8C
.align 2, 0
-_0809EF30: .4byte 0x02018000
+_0809EF30: .4byte gSharedMem + 0x18000
_0809EF34: .4byte REG_BG2CNT
_0809EF38: .4byte 0x0000e0fc
_0809EF3C: .4byte 0x00000801
@@ -2877,7 +2877,7 @@ _0809EFA8: .4byte 0x00000c01
_0809EFAC: .4byte REG_BG2CNT
_0809EFB0: .4byte 0x0000fffc
_0809EFB4:
- ldr r0, _0809EFD4 @ =0x02018000
+ ldr r0, _0809EFD4 @ =gSharedMem + 0x18000
adds r0, 0x80
ldrb r0, [r0]
cmp r0, 0
@@ -2893,7 +2893,7 @@ _0809EFB4:
bne _0809F0C0
b _0809F096
.align 2, 0
-_0809EFD4: .4byte 0x02018000
+_0809EFD4: .4byte gSharedMem + 0x18000
_0809EFD8: .4byte gUnknown_03004288
_0809EFDC:
ldr r0, _0809EFF0 @ =gUnknown_030042C0
@@ -2909,7 +2909,7 @@ _0809EFDC:
.align 2, 0
_0809EFF0: .4byte gUnknown_030042C0
_0809EFF4:
- ldr r1, _0809F030 @ =0x02018000
+ ldr r1, _0809F030 @ =gSharedMem + 0x18000
ldrb r3, [r1, 0xB]
adds r0, r3, 0x1
adds r2, r1, 0
@@ -2937,7 +2937,7 @@ _0809EFF4:
bl sub_80A00F4
b _0809F096
.align 2, 0
-_0809F030: .4byte 0x02018000
+_0809F030: .4byte gSharedMem + 0x18000
_0809F034:
lsls r0, r3, 24
lsrs r0, 24
@@ -2978,7 +2978,7 @@ _0809F06E:
b _0809F096
_0809F078:
ldr r0, _0809F0A0 @ =gUnknown_083C1598
- ldr r4, _0809F0A4 @ =0x02018000
+ ldr r4, _0809F0A4 @ =gSharedMem + 0x18000
ldrb r1, [r4, 0xB]
lsls r1, 2
adds r1, r0
@@ -2998,7 +2998,7 @@ _0809F096:
b _0809F0C0
.align 2, 0
_0809F0A0: .4byte gUnknown_083C1598
-_0809F0A4: .4byte 0x02018000
+_0809F0A4: .4byte gSharedMem + 0x18000
_0809F0A8:
bl sub_8055870
cmp r0, 0x1
@@ -3028,7 +3028,7 @@ sub_809F0D0: @ 809F0D0
lsrs r7, r0, 24
lsls r4, 24
lsrs r4, 24
- ldr r1, _0809F110 @ =0x02018000
+ ldr r1, _0809F110 @ =gSharedMem + 0x18000
ldrb r0, [r1, 0xB]
adds r0, r4
movs r5, 0
@@ -3053,7 +3053,7 @@ sub_809F0D0: @ 809F0D0
str r0, [r6]
b _0809F12A
.align 2, 0
-_0809F110: .4byte 0x02018000
+_0809F110: .4byte gSharedMem + 0x18000
_0809F114: .4byte gUnknown_03005CF0
_0809F118: .4byte gTasks
_0809F11C: .4byte sub_809EC38
@@ -3077,7 +3077,7 @@ SummaryScreenHandleLeftRightInput: @ 809F134
lsrs r6, r0, 24
lsls r1, 24
lsrs r5, r1, 24
- ldr r4, _0809F1AC @ =0x02018010
+ ldr r4, _0809F1AC @ =gSharedMem + 0x18010
adds r0, r4, 0
movs r1, 0x2D
bl GetMonData
@@ -3131,7 +3131,7 @@ _0809F1A6:
pop {r0}
bx r0
.align 2, 0
-_0809F1AC: .4byte 0x02018010
+_0809F1AC: .4byte gSharedMem + 0x18010
_0809F1B0: .4byte sub_80A1334
_0809F1B4: .4byte sub_80A1500
thumb_func_end SummaryScreenHandleLeftRightInput
@@ -3143,7 +3143,7 @@ SummaryScreenHandleUpDownInput: @ 809F1B8
lsrs r6, r0, 24
lsls r1, 24
lsrs r4, r1, 24
- ldr r0, _0809F1E4 @ =0x02018000
+ ldr r0, _0809F1E4 @ =gSharedMem + 0x18000
ldrb r1, [r0, 0xE]
adds r2, r0, 0
cmp r1, 0x1
@@ -3160,7 +3160,7 @@ SummaryScreenHandleUpDownInput: @ 809F1B8
lsrs r4, r0, 31
b _0809F1F4
.align 2, 0
-_0809F1E4: .4byte 0x02018000
+_0809F1E4: .4byte gSharedMem + 0x18000
_0809F1E8:
lsls r0, r4, 24
asrs r0, 24
@@ -3205,7 +3205,7 @@ _0809F22C:
beq _0809F270
movs r0, 0x5
bl PlaySE
- ldr r5, _0809F278 @ =0x02018010
+ ldr r5, _0809F278 @ =gSharedMem + 0x18010
adds r0, r5, 0
bl GetMonStatusAndPokerus
lsls r0, 24
@@ -3232,7 +3232,7 @@ _0809F270:
pop {r0}
bx r0
.align 2, 0
-_0809F278: .4byte 0x02018010
+_0809F278: .4byte gSharedMem + 0x18010
_0809F27C: .4byte gTasks
_0809F280: .4byte sub_809F43C
thumb_func_end SummaryScreenHandleUpDownInput
@@ -3242,7 +3242,7 @@ sub_809F284: @ 809F284
push {r4-r7,lr}
lsls r0, 24
lsrs r3, r0, 24
- ldr r0, _0809F2C0 @ =0x02018000
+ ldr r0, _0809F2C0 @ =gSharedMem + 0x18000
ldr r7, [r0]
movs r6, 0
ldrb r1, [r0, 0xB]
@@ -3272,7 +3272,7 @@ _0809F2BA:
adds r0, r3
b _0809F304
.align 2, 0
-_0809F2C0: .4byte 0x02018000
+_0809F2C0: .4byte gSharedMem + 0x18000
_0809F2C4:
lsls r5, r3, 24
_0809F2C6:
@@ -3281,7 +3281,7 @@ _0809F2C6:
asrs r1, r5, 24
adds r0, r1
lsls r0, 24
- ldr r4, _0809F2EC @ =0x02018000
+ ldr r4, _0809F2EC @ =gSharedMem + 0x18000
lsrs r6, r0, 24
asrs r0, 24
ldrb r2, [r4, 0x9]
@@ -3296,7 +3296,7 @@ _0809F2E4:
negs r0, r0
b _0809F308
.align 2, 0
-_0809F2EC: .4byte 0x02018000
+_0809F2EC: .4byte gSharedMem + 0x18000
_0809F2F0:
movs r0, 0x64
muls r0, r1
@@ -3324,7 +3324,7 @@ sub_809F310: @ 809F310
bl GetMonData
cmp r0, 0
beq _0809F33C
- ldr r0, _0809F338 @ =0x02018000
+ ldr r0, _0809F338 @ =gSharedMem + 0x18000
ldrb r0, [r0, 0xB]
cmp r0, 0
bne _0809F332
@@ -3337,7 +3337,7 @@ _0809F332:
movs r0, 0x1
b _0809F33E
.align 2, 0
-_0809F338: .4byte 0x02018000
+_0809F338: .4byte gSharedMem + 0x18000
_0809F33C:
movs r0, 0
_0809F33E:
@@ -3430,7 +3430,7 @@ sub_809F3CC: @ 809F3CC
movs r2, 0
movs r1, 0
ldr r3, _0809F41C @ =gUnknown_083C15A8
- ldr r4, _0809F420 @ =0x02018000
+ ldr r4, _0809F420 @ =gSharedMem + 0x18000
ldrb r0, [r3]
ldrb r5, [r4, 0x9]
cmp r0, r5
@@ -3469,7 +3469,7 @@ _0809F414:
b _0809F436
.align 2, 0
_0809F41C: .4byte gUnknown_083C15A8
-_0809F420: .4byte 0x02018000
+_0809F420: .4byte gSharedMem + 0x18000
_0809F424:
adds r0, r2, 0
bl sub_809F388
@@ -3524,7 +3524,7 @@ _0809F48C:
bl StopCryAndClearCrySongs
b _0809F5B2
_0809F492:
- ldr r0, _0809F4AC @ =0x02018000
+ ldr r0, _0809F4AC @ =gSharedMem + 0x18000
ldrb r1, [r0, 0xC]
lsls r0, r1, 4
adds r0, r1
@@ -3537,12 +3537,12 @@ _0809F492:
adds r1, r0
b _0809F5B8
.align 2, 0
-_0809F4AC: .4byte 0x02018000
+_0809F4AC: .4byte gSharedMem + 0x18000
_0809F4B0: .4byte gSprites
_0809F4B4: .4byte gMain
_0809F4B8: .4byte 0x0000043c
_0809F4BC:
- ldr r0, _0809F4D0 @ =0x02018000
+ ldr r0, _0809F4D0 @ =gSharedMem + 0x18000
ldrb r1, [r0, 0xD]
lsls r0, r1, 4
adds r0, r1
@@ -3552,10 +3552,10 @@ _0809F4BC:
bl DestroySpriteAndFreeResources
b _0809F5B2
.align 2, 0
-_0809F4D0: .4byte 0x02018000
+_0809F4D0: .4byte gSharedMem + 0x18000
_0809F4D4: .4byte gSprites
_0809F4D8:
- ldr r0, _0809F4EC @ =0x02018000
+ ldr r0, _0809F4EC @ =gSharedMem + 0x18000
adds r1, r0, 0
adds r1, 0x74
movs r2, 0
@@ -3566,10 +3566,10 @@ _0809F4D8:
adds r1, r3, r0
b _0809F5B8
.align 2, 0
-_0809F4EC: .4byte 0x02018000
+_0809F4EC: .4byte gSharedMem + 0x18000
_0809F4F0: .4byte 0x0000043c
_0809F4F4:
- ldr r4, _0809F518 @ =0x02018010
+ ldr r4, _0809F518 @ =gSharedMem + 0x18010
adds r0, r4, 0
bl sub_809F678
adds r0, r4, 0
@@ -3584,9 +3584,9 @@ _0809F50E:
bl sub_80A0EA4
b _0809F5B2
.align 2, 0
-_0809F518: .4byte 0x02018010
+_0809F518: .4byte gSharedMem + 0x18010
_0809F51C:
- ldr r4, _0809F558 @ =0x02018010
+ ldr r4, _0809F558 @ =gSharedMem + 0x18010
adds r5, r4, 0
adds r5, 0x64
adds r0, r4, 0
@@ -3614,7 +3614,7 @@ _0809F51C:
strh r0, [r1]
b _0809F564
.align 2, 0
-_0809F558: .4byte 0x02018010
+_0809F558: .4byte gSharedMem + 0x18010
_0809F55C: .4byte gUnknown_030041B0
_0809F560:
ldr r0, _0809F56C @ =gUnknown_030041B0
@@ -3629,20 +3629,20 @@ _0809F56C: .4byte gUnknown_030041B0
_0809F570: .4byte gMain
_0809F574: .4byte 0x0000043c
_0809F578:
- ldr r0, _0809F580 @ =0x02018010
+ ldr r0, _0809F580 @ =gSharedMem + 0x18010
bl sub_80A1DCC
b _0809F5B2
.align 2, 0
-_0809F580: .4byte 0x02018010
+_0809F580: .4byte gSharedMem + 0x18010
_0809F584:
- ldr r0, _0809F594 @ =0x02018010
+ ldr r0, _0809F594 @ =gSharedMem + 0x18010
bl sub_80A1DE8
ldr r1, _0809F598 @ =gMain
ldr r0, _0809F59C @ =0x0000043c
adds r1, r0
b _0809F5B8
.align 2, 0
-_0809F594: .4byte 0x02018010
+_0809F594: .4byte gSharedMem + 0x18010
_0809F598: .4byte gMain
_0809F59C: .4byte 0x0000043c
_0809F5A0:
@@ -3650,7 +3650,7 @@ _0809F5A0:
lsls r0, 24
cmp r0, 0
beq _0809F5EA
- ldr r0, _0809F5C0 @ =0x02018000
+ ldr r0, _0809F5C0 @ =gSharedMem + 0x18000
adds r0, 0x74
movs r1, 0
strb r1, [r0]
@@ -3664,7 +3664,7 @@ _0809F5B8:
strb r0, [r1]
b _0809F5EA
.align 2, 0
-_0809F5C0: .4byte 0x02018000
+_0809F5C0: .4byte gSharedMem + 0x18000
_0809F5C4: .4byte gMain
_0809F5C8: .4byte 0x0000043c
_0809F5CC:
@@ -3678,7 +3678,7 @@ _0809F5CC:
adds r1, r4
lsls r1, 3
adds r1, r0
- ldr r0, _0809F5F4 @ =0x02018000
+ ldr r0, _0809F5F4 @ =gSharedMem + 0x18000
adds r0, 0x84
ldr r0, [r0]
str r0, [r1]
@@ -3688,13 +3688,13 @@ _0809F5EA:
bx r0
.align 2, 0
_0809F5F0: .4byte gTasks
-_0809F5F4: .4byte 0x02018000
+_0809F5F4: .4byte gSharedMem + 0x18000
thumb_func_end sub_809F43C
thumb_func_start sub_809F5F8
sub_809F5F8: @ 809F5F8
push {r4,lr}
- ldr r2, _0809F61C @ =0x02018000
+ ldr r2, _0809F61C @ =gSharedMem + 0x18000
adds r4, r2, 0
adds r4, 0x74
ldrb r0, [r4]
@@ -3711,7 +3711,7 @@ sub_809F5F8: @ 809F5F8
movs r0, 0x1
b _0809F634
.align 2, 0
-_0809F61C: .4byte 0x02018000
+_0809F61C: .4byte gSharedMem + 0x18000
_0809F620: .4byte gUnknown_083C1588
_0809F624:
adds r0, r2, 0
@@ -3767,7 +3767,7 @@ sub_809F664: @ 809F664
sub_809F678: @ 809F678
push {lr}
adds r3, r0, 0
- ldr r1, _0809F698 @ =0x02018000
+ ldr r1, _0809F698 @ =gSharedMem + 0x18000
ldrb r0, [r1, 0xE]
cmp r0, 0
bne _0809F69C
@@ -3781,7 +3781,7 @@ sub_809F678: @ 809F678
bl memcpy
b _0809F6AE
.align 2, 0
-_0809F698: .4byte 0x02018000
+_0809F698: .4byte gSharedMem + 0x18000
_0809F69C:
ldr r0, [r1]
ldrb r2, [r1, 0x9]
@@ -3955,7 +3955,7 @@ sub_809F7D0: @ 809F7D0
sub sp, 0x64
mov r0, sp
bl sub_809F678
- ldr r4, _0809F804 @ =0x02018000
+ ldr r4, _0809F804 @ =gSharedMem + 0x18000
adds r0, r4, 0
adds r0, 0x79
ldrb r1, [r0]
@@ -3974,7 +3974,7 @@ sub_809F7D0: @ 809F7D0
movs r0, 0
b _0809F80A
.align 2, 0
-_0809F804: .4byte 0x02018000
+_0809F804: .4byte gSharedMem + 0x18000
_0809F808:
movs r0, 0x1
_0809F80A:
@@ -4023,7 +4023,7 @@ _0809F840:
strh r0, [r4]
movs r0, 0x1
strh r0, [r4, 0x1A]
- ldr r2, _0809F87C @ =0x02018000
+ ldr r2, _0809F87C @ =gSharedMem + 0x18000
ldrh r0, [r4, 0x1E]
adds r2, 0x79
strb r0, [r2]
@@ -4035,7 +4035,7 @@ _0809F840:
.align 2, 0
_0809F874: .4byte gMain
_0809F878: .4byte sub_809E260
-_0809F87C: .4byte 0x02018000
+_0809F87C: .4byte gSharedMem + 0x18000
_0809F880:
movs r0, 0x80
ands r0, r1
@@ -4050,7 +4050,7 @@ _0809F880:
strh r0, [r4]
movs r0, 0x1
strh r0, [r4, 0x1A]
- ldr r2, _0809F8B0 @ =0x02018000
+ ldr r2, _0809F8B0 @ =gSharedMem + 0x18000
ldrh r0, [r4, 0x1E]
adds r2, 0x79
strb r0, [r2]
@@ -4060,7 +4060,7 @@ _0809F880:
b _0809F9C0
.align 2, 0
_0809F8AC: .4byte sub_809E260
-_0809F8B0: .4byte 0x02018000
+_0809F8B0: .4byte gSharedMem + 0x18000
_0809F8B4:
movs r0, 0x20
ands r0, r1
@@ -4072,7 +4072,7 @@ _0809F8B4:
cmp r0, 0x1
bne _0809F918
_0809F8C8:
- ldr r1, _0809F90C @ =0x02018000
+ ldr r1, _0809F90C @ =gSharedMem + 0x18000
ldrb r0, [r1, 0xB]
cmp r0, 0x2
beq _0809F9C0
@@ -4107,7 +4107,7 @@ _0809F8F4:
adds r0, r5, 0
b _0809F972
.align 2, 0
-_0809F90C: .4byte 0x02018000
+_0809F90C: .4byte gSharedMem + 0x18000
_0809F910: .4byte gTasks
_0809F914: .4byte sub_809E260
_0809F918:
@@ -4122,7 +4122,7 @@ _0809F918:
cmp r0, 0x2
bne _0809F994
_0809F92E:
- ldr r1, _0809F988 @ =0x02018000
+ ldr r1, _0809F988 @ =gSharedMem + 0x18000
adds r2, r1, 0
adds r2, 0x76
ldrb r0, [r1, 0xB]
@@ -4167,7 +4167,7 @@ _0809F972:
bl sub_80A1654
b _0809F9C0
.align 2, 0
-_0809F988: .4byte 0x02018000
+_0809F988: .4byte gSharedMem + 0x18000
_0809F98C: .4byte gTasks
_0809F990: .4byte sub_809E260
_0809F994:
@@ -4249,12 +4249,12 @@ _0809FA2C: .4byte sub_809F814
thumb_func_start sub_809FA30
sub_809FA30: @ 809FA30
- ldr r0, _0809FA38 @ =0x02018000
+ ldr r0, _0809FA38 @ =gSharedMem + 0x18000
adds r0, 0x7A
ldrb r0, [r0]
bx lr
.align 2, 0
-_0809FA38: .4byte 0x02018000
+_0809FA38: .4byte gSharedMem + 0x18000
thumb_func_end sub_809FA30
thumb_func_start GetStringCenterAlignXOffsetWithLetterSpacing
@@ -5056,7 +5056,7 @@ sub_80A00F4: @ 80A00F4
push {lr}
lsls r0, 24
lsrs r1, r0, 24
- ldr r2, _080A012C @ =0x02018000
+ ldr r2, _080A012C @ =gSharedMem + 0x18000
adds r0, r2, 0
adds r0, 0x7C
ldrh r0, [r0]
@@ -5080,7 +5080,7 @@ _080A010A:
bl sub_80A1FF8
b _080A0150
.align 2, 0
-_080A012C: .4byte 0x02018000
+_080A012C: .4byte gSharedMem + 0x18000
_080A0130: .4byte gOtherText_Power2
_080A0134: .4byte gOtherText_Accuracy2
_080A0138:
@@ -5146,7 +5146,7 @@ _080A0168:
_080A01B0: .4byte gOtherText_OneDash
_080A01B4: .4byte gOtherText_TwoDashes
_080A01B8:
- ldr r0, _080A01E0 @ =0x02018000
+ ldr r0, _080A01E0 @ =gSharedMem + 0x18000
ldrb r0, [r0, 0xB]
cmp r0, 0x2
bne _080A01E8
@@ -5165,7 +5165,7 @@ _080A01B8:
bl sub_80A198C
b _080A020C
.align 2, 0
-_080A01E0: .4byte 0x02018000
+_080A01E0: .4byte gSharedMem + 0x18000
_080A01E4: .4byte gBattleMoves
_080A01E8:
ldr r1, _080A0290 @ =gContestMoves
@@ -5255,7 +5255,7 @@ _080A0298: .4byte gStringVar1
thumb_func_start sub_80A029C
sub_80A029C: @ 80A029C
push {r4,r5,lr}
- ldr r1, _080A02B8 @ =0x02018000
+ ldr r1, _080A02B8 @ =gSharedMem + 0x18000
adds r4, r1, 0
adds r4, 0x7C
ldrh r0, [r4]
@@ -5268,7 +5268,7 @@ sub_80A029C: @ 80A029C
bl sub_80A1FF8
b _080A037E
.align 2, 0
-_080A02B8: .4byte 0x02018000
+_080A02B8: .4byte gSharedMem + 0x18000
_080A02BC: .4byte gOtherText_CancelNoTerminator
_080A02C0:
ldrh r5, [r4]
@@ -5305,7 +5305,7 @@ _080A02E4:
bl sub_80A198C
lsls r4, r5, 1
_080A0304:
- ldr r0, _080A0324 @ =0x02018000
+ ldr r0, _080A0324 @ =gSharedMem + 0x18000
ldrb r0, [r0, 0xB]
cmp r0, 0x2
bne _080A032C
@@ -5320,7 +5320,7 @@ _080A0304:
b _080A033E
.align 2, 0
_080A0320: .4byte gContestMoves
-_080A0324: .4byte 0x02018000
+_080A0324: .4byte gSharedMem + 0x18000
_080A0328: .4byte gMoveNames
_080A032C:
movs r0, 0xD
@@ -5407,7 +5407,7 @@ sub_80A03BC: @ 80A03BC
lsrs r1, r0, 16
b _080A03E0
_080A03D0:
- ldr r0, _080A03E8 @ =0x02018000
+ ldr r0, _080A03E8 @ =gSharedMem + 0x18000
adds r2, r0, 0
adds r2, 0x7C
ldrh r0, [r2]
@@ -5420,7 +5420,7 @@ _080A03E0:
pop {r1}
bx r1
.align 2, 0
-_080A03E8: .4byte 0x02018000
+_080A03E8: .4byte gSharedMem + 0x18000
_080A03EC: .4byte 0x0000ffff
thumb_func_end sub_80A03BC
@@ -5431,7 +5431,7 @@ sub_80A03F0: @ 80A03F0
bl sub_80A03BC
lsls r0, 16
lsrs r1, r0, 16
- ldr r0, _080A0414 @ =0x02018000
+ ldr r0, _080A0414 @ =gSharedMem + 0x18000
ldrb r0, [r0, 0xB]
cmp r0, 0x2
bne _080A041C
@@ -5441,7 +5441,7 @@ sub_80A03F0: @ 80A03F0
bl sub_80A057C
b _080A0422
.align 2, 0
-_080A0414: .4byte 0x02018000
+_080A0414: .4byte gSharedMem + 0x18000
_080A0418: .4byte 0x0000ffff
_080A041C:
adds r0, r1, 0
@@ -5465,7 +5465,7 @@ sub_80A0428: @ 80A0428
movs r2, 0x1C
movs r3, 0x12
bl MenuZeroFillWindowRect
- ldr r0, _080A0454 @ =0x02018000
+ ldr r0, _080A0454 @ =gSharedMem + 0x18000
ldrb r0, [r0, 0xB]
cmp r0, 0x2
bne _080A0458
@@ -5473,7 +5473,7 @@ sub_80A0428: @ 80A0428
bl sub_80A046C
b _080A045E
.align 2, 0
-_080A0454: .4byte 0x02018000
+_080A0454: .4byte gSharedMem + 0x18000
_080A0458:
adds r0, r4, 0
bl sub_80A0498
@@ -6075,7 +6075,7 @@ sub_80A0BF4: @ 80A0BF4
lsrs r0, 24
cmp r0, 0x1
bne _080A0C48
- ldr r0, _080A0C40 @ =0x02018000
+ ldr r0, _080A0C40 @ =gSharedMem + 0x18000
ldrb r0, [r0, 0x9]
cmp r0, 0x1
beq _080A0C2E
@@ -6092,7 +6092,7 @@ _080A0C2E:
bl StringCopy
b _080A0C68
.align 2, 0
-_080A0C40: .4byte 0x02018000
+_080A0C40: .4byte gSharedMem + 0x18000
_080A0C44: .4byte gStringVar1
_080A0C48:
cmp r5, 0
@@ -6303,7 +6303,7 @@ sub_80A0DD0: @ 80A0DD0
bl sub_80A1E58
adds r2, r0, 0
ldr r1, _080A0E40 @ =gUnknown_083C1068
- ldr r4, _080A0E44 @ =0x02018000
+ ldr r4, _080A0E44 @ =gSharedMem + 0x18000
adds r0, r4, 0
adds r0, 0x7E
ldrb r0, [r0]
@@ -6340,7 +6340,7 @@ sub_80A0DD0: @ 80A0DD0
.align 2, 0
_080A0E3C: .4byte gStringVar1
_080A0E40: .4byte gUnknown_083C1068
-_080A0E44: .4byte 0x02018000
+_080A0E44: .4byte gSharedMem + 0x18000
_080A0E48:
movs r0, 0x17
movs r1, 0
@@ -6354,7 +6354,7 @@ _080A0E54:
bl sub_80A1E58
adds r2, r0, 0
ldr r1, _080A0E9C @ =gUnknown_083C1068
- ldr r0, _080A0EA0 @ =0x02018000
+ ldr r0, _080A0EA0 @ =gSharedMem + 0x18000
adds r0, 0x7F
ldrb r0, [r0]
lsls r0, 2
@@ -6381,7 +6381,7 @@ _080A0E54:
.align 2, 0
_080A0E98: .4byte gStringVar1
_080A0E9C: .4byte gUnknown_083C1068
-_080A0EA0: .4byte 0x02018000
+_080A0EA0: .4byte gSharedMem + 0x18000
thumb_func_end sub_80A0DD0
thumb_func_start sub_80A0EA4
@@ -6428,7 +6428,7 @@ sub_80A0EE8: @ 80A0EE8
push {r5-r7}
sub sp, 0x10
movs r3, 0
- ldr r6, _080A0F24 @ =0x02018000
+ ldr r6, _080A0F24 @ =gSharedMem + 0x18000
adds r5, r6, 0
ldr r1, _080A0F28 @ =0x00004040
mov r8, r1
@@ -6452,7 +6452,7 @@ _080A0F02:
strh r4, [r0]
b _080A0FE2
.align 2, 0
-_080A0F24: .4byte 0x02018000
+_080A0F24: .4byte gSharedMem + 0x18000
_080A0F28: .4byte 0x00004040
_080A0F2C: .4byte 0x0000404a
_080A0F30:
@@ -7075,7 +7075,7 @@ _080A1400:
cmp r0, 0
bge _080A144A
_080A1410:
- ldr r4, _080A1480 @ =0x02018000
+ ldr r4, _080A1480 @ =gSharedMem + 0x18000
ldrb r0, [r4, 0xB]
cmp r0, 0x2
bne _080A1444
@@ -7105,7 +7105,7 @@ _080A144A:
ldrsh r0, [r7, r1]
cmp r0, 0x9
ble _080A1470
- ldr r4, _080A1480 @ =0x02018000
+ ldr r4, _080A1480 @ =gSharedMem + 0x18000
ldrb r0, [r4, 0xB]
cmp r0, 0x2
bne _080A1460
@@ -7128,7 +7128,7 @@ _080A1470:
pop {r0}
bx r0
.align 2, 0
-_080A1480: .4byte 0x02018000
+_080A1480: .4byte gSharedMem + 0x18000
_080A1484: .4byte gOtherText_Status
thumb_func_end sub_80A1334
@@ -7139,7 +7139,7 @@ sub_80A1488: @ 80A1488
lsrs r6, r0, 24
lsls r1, 24
lsrs r7, r1, 24
- ldr r0, _080A14DC @ =0x02018000
+ ldr r0, _080A14DC @ =gSharedMem + 0x18000
ldrb r0, [r0, 0xB]
cmp r0, 0x2
bne _080A14A6
@@ -7175,7 +7175,7 @@ _080A14C2:
movs r0, 0xA
b _080A14EA
.align 2, 0
-_080A14DC: .4byte 0x02018000
+_080A14DC: .4byte gSharedMem + 0x18000
_080A14E0: .4byte sub_80A1334
_080A14E4: .4byte gTasks
_080A14E8:
@@ -7305,7 +7305,7 @@ _080A15CC:
cmp r0, 0
bge _080A1616
_080A15DC:
- ldr r4, _080A164C @ =0x02018000
+ ldr r4, _080A164C @ =gSharedMem + 0x18000
ldrb r0, [r4, 0xB]
cmp r0, 0x3
bne _080A1610
@@ -7335,7 +7335,7 @@ _080A1616:
ldrsh r0, [r7, r1]
cmp r0, 0x9
ble _080A163C
- ldr r4, _080A164C @ =0x02018000
+ ldr r4, _080A164C @ =gSharedMem + 0x18000
ldrb r0, [r4, 0xB]
cmp r0, 0x3
bne _080A162C
@@ -7358,7 +7358,7 @@ _080A163C:
pop {r0}
bx r0
.align 2, 0
-_080A164C: .4byte 0x02018000
+_080A164C: .4byte gSharedMem + 0x18000
_080A1650: .4byte gOtherText_Status
thumb_func_end sub_80A1500
@@ -7369,7 +7369,7 @@ sub_80A1654: @ 80A1654
lsrs r6, r0, 24
lsls r1, 24
lsrs r7, r1, 24
- ldr r0, _080A16A8 @ =0x02018000
+ ldr r0, _080A16A8 @ =gSharedMem + 0x18000
ldrb r0, [r0, 0xB]
cmp r0, 0x3
bne _080A1672
@@ -7405,7 +7405,7 @@ _080A168E:
movs r0, 0xA
b _080A16B6
.align 2, 0
-_080A16A8: .4byte 0x02018000
+_080A16A8: .4byte gSharedMem + 0x18000
_080A16AC: .4byte sub_80A1500
_080A16B0: .4byte gTasks
_080A16B4:
@@ -7664,7 +7664,7 @@ sub_80A1888: @ 80A1888
bne _080A18B0
ldr r0, _080A18BC @ =SpriteCallbackDummy
str r0, [r4, 0x1C]
- ldr r0, _080A18C0 @ =0x02018010
+ ldr r0, _080A18C0 @ =gSharedMem + 0x18010
movs r1, 0x2D
bl GetMonData
cmp r0, 0
@@ -7679,14 +7679,14 @@ _080A18B0:
.align 2, 0
_080A18B8: .4byte gPaletteFade
_080A18BC: .4byte SpriteCallbackDummy
-_080A18C0: .4byte 0x02018010
+_080A18C0: .4byte gSharedMem + 0x18010
thumb_func_end sub_80A1888
thumb_func_start sub_80A18C4
sub_80A18C4: @ 80A18C4
push {lr}
movs r1, 0
- ldr r3, _080A18E0 @ =0x0201a000
+ ldr r3, _080A18E0 @ =gSharedMem + 0x1A000
movs r2, 0xFF
_080A18CC:
adds r0, r1, r3
@@ -7699,7 +7699,7 @@ _080A18CC:
pop {r0}
bx r0
.align 2, 0
-_080A18E0: .4byte 0x0201a000
+_080A18E0: .4byte gSharedMem + 0x1A000
thumb_func_end sub_80A18C4
thumb_func_start sub_80A18E4
@@ -7707,7 +7707,7 @@ sub_80A18E4: @ 80A18E4
push {r4,lr}
lsls r0, 24
lsrs r0, 24
- ldr r1, _080A1910 @ =0x0201a000
+ ldr r1, _080A1910 @ =gSharedMem + 0x1A000
adds r4, r0, r1
ldrb r0, [r4]
cmp r0, 0xFF
@@ -7726,7 +7726,7 @@ _080A1908:
pop {r0}
bx r0
.align 2, 0
-_080A1910: .4byte 0x0201a000
+_080A1910: .4byte gSharedMem + 0x1A000
_080A1914: .4byte gSprites
thumb_func_end sub_80A18E4
@@ -7737,7 +7737,7 @@ sub_80A1918: @ 80A1918
lsls r1, 24
lsrs r1, 24
ldr r3, _080A1948 @ =gSprites
- ldr r2, _080A194C @ =0x0201a000
+ ldr r2, _080A194C @ =gSharedMem + 0x1A000
adds r0, r2
ldrb r0, [r0]
lsls r2, r0, 4
@@ -7757,7 +7757,7 @@ sub_80A1918: @ 80A1918
bx lr
.align 2, 0
_080A1948: .4byte gSprites
-_080A194C: .4byte 0x0201a000
+_080A194C: .4byte gSharedMem + 0x1A000
thumb_func_end sub_80A1918
thumb_func_start sub_80A1950
@@ -7765,7 +7765,7 @@ sub_80A1950: @ 80A1950
push {r4,r5,lr}
movs r5, 0
_080A1954:
- ldr r0, _080A1984 @ =0x0201a000
+ ldr r0, _080A1984 @ =gSharedMem + 0x1A000
adds r4, r5, r0
ldrb r0, [r4]
cmp r0, 0xFF
@@ -7789,7 +7789,7 @@ _080A196C:
pop {r0}
bx r0
.align 2, 0
-_080A1984: .4byte 0x0201a000
+_080A1984: .4byte gSharedMem + 0x1A000
_080A1988: .4byte gSpriteTemplate_83C11C0
thumb_func_end sub_80A1950
@@ -7814,7 +7814,7 @@ sub_80A198C: @ 80A198C
lsls r0, 24
lsrs r0, 24
mov r10, r0
- ldr r1, _080A1A24 @ =0x0201a000
+ ldr r1, _080A1A24 @ =gSharedMem + 0x1A000
mov r8, r1
add r8, r10
mov r0, r8
@@ -7869,7 +7869,7 @@ sub_80A198C: @ 80A198C
pop {r0}
bx r0
.align 2, 0
-_080A1A24: .4byte 0x0201a000
+_080A1A24: .4byte gSharedMem + 0x1A000
_080A1A28: .4byte gSprites
_080A1A2C: .4byte gUnknown_083C11D8
thumb_func_end sub_80A198C
@@ -7885,7 +7885,7 @@ sub_80A1A30: @ 80A1A30
lsrs r4, r0, 24
movs r0, 0
mov r9, r0
- ldr r1, _080A1A98 @ =0x02018000
+ ldr r1, _080A1A98 @ =gSharedMem + 0x18000
ldrb r0, [r1, 0xB]
cmp r0, 0x1
bls _080A1B0A
@@ -7928,7 +7928,7 @@ _080A1A60:
bl StartSpriteAnim
b _080A1AD0
.align 2, 0
-_080A1A98: .4byte 0x02018000
+_080A1A98: .4byte gSharedMem + 0x18000
_080A1A9C: .4byte gSprites
_080A1AA0: .4byte gSpriteTemplate_83C1280
_080A1AA4:
@@ -8026,7 +8026,7 @@ sub_80A1B40: @ 80A1B40
lsls r1, r7, 1
adds r1, r7
lsls r1, 24
- ldr r0, _080A1BB4 @ =0x0201a009
+ ldr r0, _080A1BB4 @ =gSharedMem + 0x1A009
ldrb r2, [r0]
lsls r0, r2, 4
adds r0, r2
@@ -8044,7 +8044,7 @@ sub_80A1B40: @ 80A1B40
lsls r0, 24
mov r8, r0
_080A1B74:
- ldr r6, _080A1BBC @ =0x0201a00a
+ ldr r6, _080A1BBC @ =gSharedMem + 0x1A00A
adds r0, r4, r6
ldrb r1, [r0]
lsls r0, r1, 4
@@ -8075,9 +8075,9 @@ _080A1B74:
pop {r0}
bx r0
.align 2, 0
-_080A1BB4: .4byte 0x0201a009
+_080A1BB4: .4byte gSharedMem + 0x1A009
_080A1BB8: .4byte gSprites
-_080A1BBC: .4byte 0x0201a00a
+_080A1BBC: .4byte gSharedMem + 0x1A00A
thumb_func_end sub_80A1B40
thumb_func_start sub_80A1BC0
@@ -8126,13 +8126,13 @@ _080A1C06:
ldrsh r0, [r2, r1]
cmp r0, 0x9
bne _080A1C1C
- ldr r0, _080A1C18 @ =0x02018000
+ ldr r0, _080A1C18 @ =gSharedMem + 0x18000
adds r0, 0x79
b _080A1C20
.align 2, 0
-_080A1C18: .4byte 0x02018000
+_080A1C18: .4byte gSharedMem + 0x18000
_080A1C1C:
- ldr r0, _080A1C2C @ =0x02018000
+ ldr r0, _080A1C2C @ =gSharedMem + 0x18000
adds r0, 0x7A
_080A1C20:
ldrb r0, [r0]
@@ -8141,7 +8141,7 @@ _080A1C20:
pop {r0}
bx r0
.align 2, 0
-_080A1C2C: .4byte 0x02018000
+_080A1C2C: .4byte gSharedMem + 0x18000
thumb_func_end sub_80A1BC0
thumb_func_start sub_80A1C30
@@ -8161,7 +8161,7 @@ sub_80A1C30: @ 80A1C30
ldr r5, _080A1C88 @ =gSprites
movs r7, 0x5
negs r7, r7
- ldr r6, _080A1C8C @ =0x0201a009
+ ldr r6, _080A1C8C @ =gSharedMem + 0x1A009
_080A1C50:
adds r2, r3, r6
ldrb r1, [r2]
@@ -8194,7 +8194,7 @@ _080A1C82:
bx r0
.align 2, 0
_080A1C88: .4byte gSprites
-_080A1C8C: .4byte 0x0201a009
+_080A1C8C: .4byte gSharedMem + 0x1A009
thumb_func_end sub_80A1C30
thumb_func_start pokemon_ailments_get_primary
@@ -8292,7 +8292,7 @@ sub_80A1D18: @ 80A1D18
subs r0, 0x1
lsls r0, 24
lsrs r5, r0, 24
- ldr r4, _080A1D50 @ =0x0201a01d
+ ldr r4, _080A1D50 @ =gSharedMem + 0x1A01D
ldrb r0, [r4]
cmp r0, 0xFF
bne _080A1D60
@@ -8304,14 +8304,14 @@ sub_80A1D18: @ 80A1D18
strb r0, [r4]
b _080A1D60
.align 2, 0
-_080A1D50: .4byte 0x0201a01d
+_080A1D50: .4byte gSharedMem + 0x1A01D
_080A1D54: .4byte gSpriteTemplate_83C1304
_080A1D58:
movs r0, 0x1D
bl sub_80A18E4
b _080A1D74
_080A1D60:
- ldr r0, _080A1D7C @ =0x0201a01d
+ ldr r0, _080A1D7C @ =gSharedMem + 0x1A01D
ldrb r1, [r0]
lsls r0, r1, 4
adds r0, r1
@@ -8326,7 +8326,7 @@ _080A1D74:
pop {r0}
bx r0
.align 2, 0
-_080A1D7C: .4byte 0x0201a01d
+_080A1D7C: .4byte gSharedMem + 0x1A01D
_080A1D80: .4byte gSprites
thumb_func_end sub_80A1D18
@@ -8404,7 +8404,7 @@ sub_80A1DE8: @ 80A1DE8
movs r2, 0x88
movs r3, 0
bl CreateSprite
- ldr r2, _080A1E4C @ =0x02018000
+ ldr r2, _080A1E4C @ =gSharedMem + 0x18000
strb r0, [r2, 0xD]
ldr r3, _080A1E50 @ =gSprites
ldrb r1, [r2, 0xD]
@@ -8430,7 +8430,7 @@ sub_80A1DE8: @ 80A1DE8
bx r0
.align 2, 0
_080A1E48: .4byte gBallSpriteTemplates
-_080A1E4C: .4byte 0x02018000
+_080A1E4C: .4byte gSharedMem + 0x18000
_080A1E50: .4byte gSprites
_080A1E54: .4byte SpriteCallbackDummy
thumb_func_end sub_80A1DE8
diff --git a/asm/roulette.s b/asm/roulette.s
index fcfedbd80..2dc191630 100644
--- a/asm/roulette.s
+++ b/asm/roulette.s
@@ -12,7 +12,7 @@ sub_81150FC: @ 81150FC
bl RunTasks
bl AnimateSprites
bl BuildOamBuffer
- ldr r0, _08115120 @ =0x02019000
+ ldr r0, _08115120 @ =gSharedMem + 0x19000
adds r1, r0, 0
adds r1, 0xB8
ldrb r0, [r1]
@@ -24,7 +24,7 @@ _0811511C:
pop {r0}
bx r0
.align 2, 0
-_08115120: .4byte 0x02019000
+_08115120: .4byte gSharedMem + 0x19000
thumb_func_end sub_81150FC
thumb_func_start sub_8115124
@@ -36,7 +36,7 @@ sub_8115124: @ 8115124
bl TransferPlttBuffer
bl sub_8117434
ldr r2, _08115188 @ =REG_BG1HOFS
- ldr r3, _0811518C @ =0x02019000
+ ldr r3, _0811518C @ =gSharedMem + 0x19000
ldrh r1, [r3, 0x26]
movs r4, 0x80
lsls r4, 2
@@ -78,7 +78,7 @@ _08115170:
b _0811521A
.align 2, 0
_08115188: .4byte REG_BG1HOFS
-_0811518C: .4byte 0x02019000
+_0811518C: .4byte gSharedMem + 0x19000
_08115190: .4byte REG_BLDALPHA
_08115194: .4byte 0x040000d4
_08115198: .4byte gBGTilemapBuffers + 0x800 + 0x1C0
@@ -160,7 +160,7 @@ sub_8115238: @ 8115238
mov r0, sp
movs r2, 0x6
bl memcpy
- ldr r5, _081152C4 @ =0x02019000
+ ldr r5, _081152C4 @ =gSharedMem + 0x19000
movs r2, 0xBE
lsls r2, 1
adds r0, r5, 0
@@ -223,7 +223,7 @@ _08115276:
b _081152E4
.align 2, 0
_081152C0: .4byte gUnknown_083F8EC4
-_081152C4: .4byte 0x02019000
+_081152C4: .4byte gSharedMem + 0x19000
_081152C8: .4byte gSpecialVar_0x8004
_081152CC: .4byte gUnknown_083F8DF4
_081152D0: .4byte gUnknown_083F8DF0
@@ -248,14 +248,14 @@ _081152E4:
strh r0, [r2]
ands r0, r1
strh r0, [r4]
- ldr r0, _08115354 @ =0x020190b8
+ ldr r0, _08115354 @ =gSharedMem + 0x190B8
bl sub_8124918
movs r4, 0
ldr r5, _08115358 @ =gUnknown_083F8E34
_08115308:
lsls r2, r4, 3
adds r2, r5
- ldr r0, _08115354 @ =0x020190b8
+ ldr r0, _08115354 @ =gSharedMem + 0x190B8
adds r1, r4, 0
bl sub_812492C
adds r0, r4, 0x1
@@ -264,7 +264,7 @@ _08115308:
cmp r4, 0xC
bls _08115308
movs r4, 0
- ldr r5, _0811535C @ =0x02019000
+ ldr r5, _0811535C @ =gSharedMem + 0x19000
_08115322:
movs r0, 0x64
muls r0, r4
@@ -287,9 +287,9 @@ _08115322:
_08115348: .4byte gPlttBufferUnfaded
_0811534C: .4byte gPlttBufferFaded
_08115350: .4byte 0x0000ffff
-_08115354: .4byte 0x020190b8
+_08115354: .4byte gSharedMem + 0x190B8
_08115358: .4byte gUnknown_083F8E34
-_0811535C: .4byte 0x02019000
+_0811535C: .4byte gSharedMem + 0x19000
_08115360: .4byte gPlayerParty
_08115364:
ldrb r0, [r5, 0x2]
@@ -421,7 +421,7 @@ _08115494:
bl sub_8115238
bl sub_80F9020
ldr r0, _081154B4 @ =gUnknown_083F88BC
- ldr r1, _081154B8 @ =0x02018800
+ ldr r1, _081154B8 @ =gSharedMem + 0x18800
bl LZ77UnCompWram
ldr r0, _081154BC @ =gUnknown_083F8A60
ldr r1, _081154C0 @ =0x06003000
@@ -432,7 +432,7 @@ _08115494:
b _0811557A
.align 2, 0
_081154B4: .4byte gUnknown_083F88BC
-_081154B8: .4byte 0x02018800
+_081154B8: .4byte gSharedMem + 0x18800
_081154BC: .4byte gUnknown_083F8A60
_081154C0: .4byte 0x06003000
_081154C4: .4byte gMain
@@ -540,7 +540,7 @@ _0811558C:
ldr r0, _08115618 @ =sub_81156BC
movs r1, 0
bl CreateTask
- ldr r4, _0811561C @ =0x02019000
+ ldr r4, _0811561C @ =gSharedMem + 0x19000
adds r1, r4, 0
adds r1, 0xA4
strb r0, [r1]
@@ -576,7 +576,7 @@ _0811560C: .4byte 0x04000200
_08115610: .4byte REG_DISPSTAT
_08115614: .4byte sub_8115124
_08115618: .4byte sub_81156BC
-_0811561C: .4byte 0x02019000
+_0811561C: .4byte gSharedMem + 0x19000
_08115620: .4byte gTasks
_08115624: .4byte gSaveBlock1
_08115628: .4byte 0x00000494
@@ -587,7 +587,7 @@ _08115630: .4byte sub_81150FC
thumb_func_start sub_8115634
sub_8115634: @ 8115634
push {r4-r6,lr}
- ldr r0, _081156B8 @ =0x02019000
+ ldr r0, _081156B8 @ =gSharedMem + 0x19000
adds r3, r0, 0
adds r3, 0x21
ldrb r1, [r3]
@@ -654,7 +654,7 @@ _081156A2:
pop {r0}
bx r0
.align 2, 0
-_081156B8: .4byte 0x02019000
+_081156B8: .4byte gSharedMem + 0x19000
thumb_func_end sub_8115634
thumb_func_start sub_81156BC
@@ -775,7 +775,7 @@ sub_81157AC: @ 81157AC
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
- ldr r0, _081157CC @ =0x02019000
+ ldr r0, _081157CC @ =gSharedMem + 0x19000
adds r0, 0xA5
ldrb r0, [r0]
bl DestroyTask
@@ -785,7 +785,7 @@ sub_81157AC: @ 81157AC
pop {r0}
bx r0
.align 2, 0
-_081157CC: .4byte 0x02019000
+_081157CC: .4byte gSharedMem + 0x19000
thumb_func_end sub_81157AC
thumb_func_start sub_81157D0
@@ -850,7 +850,7 @@ _08115848:
movs r2, 0xE
movs r3, 0x7
bl sub_8124DDC
- ldr r1, _08115880 @ =0x02018a32
+ ldr r1, _08115880 @ =gSharedMem + 0x18A32
movs r0, 0x3
str r0, [sp]
str r4, [sp, 0x4]
@@ -861,7 +861,7 @@ _08115848:
b _08115918
.align 2, 0
_0811587C: .4byte gBGTilemapBuffers + 0x1000
-_08115880: .4byte 0x02018a32
+_08115880: .4byte gSharedMem + 0x18A32
_08115884:
subs r0, r4, 0x1
movs r1, 0x5
@@ -881,7 +881,7 @@ _08115884:
movs r2, 0xE
movs r3, 0x7
bl sub_8124DDC
- ldr r1, _081158C4 @ =0x02018a80
+ ldr r1, _081158C4 @ =gSharedMem + 0x18A80
str r4, [sp]
movs r0, 0x3
str r0, [sp, 0x4]
@@ -892,7 +892,7 @@ _08115884:
b _08115918
.align 2, 0
_081158C0: .4byte gBGTilemapBuffers + 0x1000
-_081158C4: .4byte 0x02018a80
+_081158C4: .4byte gSharedMem + 0x18A80
_081158C8:
adds r0, r4, 0
movs r1, 0x5
@@ -922,7 +922,7 @@ _081158C8:
movs r2, 0xE
movs r3, 0x7
bl sub_8124DDC
- ldr r1, _08115924 @ =0x02018a20
+ ldr r1, _08115924 @ =gSharedMem + 0x18A20
movs r0, 0x3
str r0, [sp]
str r0, [sp, 0x4]
@@ -937,7 +937,7 @@ _08115918:
bx r0
.align 2, 0
_08115920: .4byte gBGTilemapBuffers + 0x1000
-_08115924: .4byte 0x02018a20
+_08115924: .4byte gSharedMem + 0x18A20
thumb_func_end sub_81157D0
thumb_func_start sub_8115928
@@ -959,7 +959,7 @@ sub_8115928: @ 8115928
.align 2, 0
_08115948: .4byte gTasks
_0811594C:
- ldr r0, _08115974 @ =0x02019000
+ ldr r0, _08115974 @ =gSharedMem + 0x19000
ldrb r1, [r0, 0x1A]
lsls r1, 28
lsrs r1, 28
@@ -979,7 +979,7 @@ _08115960:
pop {r0}
bx r0
.align 2, 0
-_08115974: .4byte 0x02019000
+_08115974: .4byte gSharedMem + 0x19000
_08115978: .4byte gTasks
thumb_func_end sub_8115928
@@ -988,7 +988,7 @@ sub_811597C: @ 811597C
push {r4-r6,lr}
lsls r0, 24
lsrs r0, 24
- ldr r5, _081159B0 @ =0x02019000
+ ldr r5, _081159B0 @ =gSharedMem + 0x19000
movs r6, 0
movs r1, 0x1
strh r1, [r5, 0x28]
@@ -1011,7 +1011,7 @@ sub_811597C: @ 811597C
pop {r0}
bx r0
.align 2, 0
-_081159B0: .4byte 0x02019000
+_081159B0: .4byte gSharedMem + 0x19000
_081159B4: .4byte gTasks
_081159B8: .4byte sub_8115E14
thumb_func_end sub_811597C
@@ -1021,7 +1021,7 @@ sub_81159BC: @ 81159BC
push {r4-r7,lr}
lsls r0, 24
lsrs r6, r0, 24
- ldr r3, _08115A10 @ =0x02019000
+ ldr r3, _08115A10 @ =gSharedMem + 0x19000
ldr r1, [r3, 0x8]
movs r0, 0x20
ands r0, r1
@@ -1061,7 +1061,7 @@ _081159EA:
bne _081159EA
b _08115A5A
.align 2, 0
-_08115A10: .4byte 0x02019000
+_08115A10: .4byte gSharedMem + 0x19000
_08115A14: .4byte gUnknown_083F8C00
_08115A18: .4byte gTasks
_08115A1C:
@@ -1333,7 +1333,7 @@ _08115C0C:
strh r1, [r4, 0xA]
movs r0, 0x5
bl PlaySE
- ldr r5, _08115D3C @ =0x020190b8
+ ldr r5, _08115D3C @ =gSharedMem + 0x190B8
ldr r1, _08115D40 @ =0x0000ffff
adds r0, r5, 0
bl sub_8124D3C
@@ -1417,7 +1417,7 @@ _08115C7C:
lsls r0, 2
adds r2, 0x8
adds r0, r2
- ldr r2, _08115D54 @ =0x02019000
+ ldr r2, _08115D54 @ =gSharedMem + 0x19000
ldr r1, [r2, 0x8]
ldr r0, [r0]
ands r1, r0
@@ -1465,13 +1465,13 @@ _08115D20:
_08115D30: .4byte gMain
_08115D34: .4byte gTasks + 0x8
_08115D38: .4byte gTasks
-_08115D3C: .4byte 0x020190b8
+_08115D3C: .4byte gSharedMem + 0x190B8
_08115D40: .4byte 0x0000ffff
_08115D44: .4byte gSprites
_08115D48: .4byte 0xfffffc00
_08115D4C: .4byte 0x000003ff
_08115D50: .4byte gUnknown_083F8C00
-_08115D54: .4byte 0x02019000
+_08115D54: .4byte gSharedMem + 0x19000
thumb_func_end sub_8115B58
thumb_func_start sub_8115D58
@@ -1479,7 +1479,7 @@ sub_8115D58: @ 8115D58
push {lr}
lsls r0, 24
lsrs r3, r0, 24
- ldr r1, _08115D70 @ =0x02019000
+ ldr r1, _08115D70 @ =gSharedMem + 0x19000
movs r0, 0xFF
strh r0, [r1, 0x28]
ldrb r0, [r1, 0x19]
@@ -1489,7 +1489,7 @@ sub_8115D58: @ 8115D58
adds r2, 0x23
b _08115D7A
.align 2, 0
-_08115D70: .4byte 0x02019000
+_08115D70: .4byte gSharedMem + 0x19000
_08115D74:
adds r2, r1, 0
adds r2, 0x23
@@ -1520,7 +1520,7 @@ sub_8115DA0: @ 8115DA0
push {r4-r6,lr}
lsls r0, 24
lsrs r0, 24
- ldr r4, _08115E08 @ =0x02019000
+ ldr r4, _08115E08 @ =gSharedMem + 0x19000
ldrb r2, [r4, 0x1A]
lsls r2, 28
lsrs r2, 28
@@ -1567,7 +1567,7 @@ _08115DF6:
pop {r0}
bx r0
.align 2, 0
-_08115E08: .4byte 0x02019000
+_08115E08: .4byte gSharedMem + 0x19000
_08115E0C: .4byte gTasks
_08115E10: .4byte sub_8115D58
thumb_func_end sub_8115DA0
@@ -1630,7 +1630,7 @@ _08115E6E:
ands r0, r1
cmp r0, 0
beq _08115EC2
- ldr r3, _08115EB0 @ =0x02019000
+ ldr r3, _08115EB0 @ =gSharedMem + 0x19000
ldr r2, _08115EB4 @ =gUnknown_083F8C00
ldr r1, _08115EA8 @ =gTasks
lsls r0, r5, 2
@@ -1655,7 +1655,7 @@ _08115E6E:
.align 2, 0
_08115EA8: .4byte gTasks
_08115EAC: .4byte gMain
-_08115EB0: .4byte 0x02019000
+_08115EB0: .4byte gSharedMem + 0x19000
_08115EB4: .4byte gUnknown_083F8C00
_08115EB8:
movs r0, 0x5F
@@ -1695,7 +1695,7 @@ sub_8115ECC: @ 8115ECC
adds r0, 0x2
strh r0, [r1]
_08115EF8:
- ldr r1, _08115F28 @ =0x02019000
+ ldr r1, _08115F28 @ =gSharedMem + 0x19000
ldrh r0, [r1, 0x26]
adds r0, 0x4
strh r0, [r1, 0x26]
@@ -1718,7 +1718,7 @@ _08115EF8:
.align 2, 0
_08115F20: .4byte gTasks
_08115F24: .4byte gSpriteCoordOffsetX
-_08115F28: .4byte 0x02019000
+_08115F28: .4byte gSharedMem + 0x19000
_08115F2C: .4byte gSprites
_08115F30: .4byte SpriteCallbackDummy
_08115F34:
@@ -1747,7 +1747,7 @@ sub_8115F58: @ 8115F58
lsrs r3, r0, 16
lsls r1, 16
lsrs r1, 16
- ldr r0, _08115F74 @ =0x02019000
+ ldr r0, _08115F74 @ =gSharedMem + 0x19000
ldrb r2, [r0, 0x2]
adds r4, r0, 0
cmp r2, 0x2
@@ -1756,7 +1756,7 @@ sub_8115F58: @ 8115F58
bge _08115F7E
b _08116048
.align 2, 0
-_08115F74: .4byte 0x02019000
+_08115F74: .4byte gSharedMem + 0x19000
_08115F78:
cmp r2, 0x3
beq _08115FE0
@@ -1989,7 +1989,7 @@ sub_8116100: @ 8116100
bl __umodsi3
lsls r0, 16
lsrs r6, r0, 16
- ldr r3, _0811618C @ =0x02019000
+ ldr r3, _0811618C @ =gSharedMem + 0x19000
ldr r1, _08116190 @ =gTasks
mov r2, r9
lsls r0, r2, 2
@@ -2033,7 +2033,7 @@ _08116180:
b _081161A2
.align 2, 0
_08116188: .4byte gUnknown_083F8ECE
-_0811618C: .4byte 0x02019000
+_0811618C: .4byte gSharedMem + 0x19000
_08116190: .4byte gTasks
_08116194: .4byte gLocalTime
_08116198:
@@ -2044,7 +2044,7 @@ _08116198:
lsls r0, 25
_081161A2:
lsrs r5, r0, 24
- ldr r6, _081162D8 @ =0x02019000
+ ldr r6, _081162D8 @ =gSharedMem + 0x19000
ldrb r0, [r6, 0x4]
lsls r0, 30
mov r10, r0
@@ -2099,7 +2099,7 @@ _081161D4:
ldr r1, _081162E0 @ =0x47800000
bl __addsf3
_0811621A:
- ldr r2, _081162E8 @ =0x02019088
+ ldr r2, _081162E8 @ =gSharedMem + 0x19088
str r0, [r2]
adds r7, r6, 0
adds r7, 0x8C
@@ -2187,11 +2187,11 @@ _081162A2:
pop {r0}
bx r0
.align 2, 0
-_081162D8: .4byte 0x02019000
+_081162D8: .4byte gSharedMem + 0x19000
_081162DC: .4byte gUnknown_083F8DF4
_081162E0: .4byte 0x47800000
_081162E4: .4byte 0x40a00000
-_081162E8: .4byte 0x02019088
+_081162E8: .4byte gSharedMem + 0x19088
_081162EC: .4byte 0x3f000000
_081162F0: .4byte 0x42880000
_081162F4: .4byte 0x00000000
@@ -2206,7 +2206,7 @@ sub_8116308: @ 8116308
push {r4,lr}
lsls r0, 24
lsrs r0, 24
- ldr r3, _08116368 @ =0x02019000
+ ldr r3, _08116368 @ =gSharedMem + 0x19000
ldrb r1, [r3, 0x3]
movs r2, 0x80
orrs r1, r2
@@ -2250,7 +2250,7 @@ sub_8116308: @ 8116308
pop {r0}
bx r0
.align 2, 0
-_08116368: .4byte 0x02019000
+_08116368: .4byte gSharedMem + 0x19000
_0811636C: .4byte gSprites
_08116370: .4byte sub_81191F4
_08116374: .4byte gTasks
@@ -2262,7 +2262,7 @@ sub_811637C: @ 811637C
push {r4-r7,lr}
lsls r0, 24
lsrs r5, r0, 24
- ldr r4, _081163B0 @ =0x02019000
+ ldr r4, _081163B0 @ =gSharedMem + 0x19000
adds r0, r4, 0
adds r0, 0x7D
ldrb r0, [r0]
@@ -2286,7 +2286,7 @@ sub_811637C: @ 811637C
strb r0, [r4, 0x3]
b _08116464
.align 2, 0
-_081163B0: .4byte 0x02019000
+_081163B0: .4byte gSharedMem + 0x19000
_081163B4:
ldr r2, _08116428 @ =gTasks
lsls r1, r5, 2
@@ -2349,7 +2349,7 @@ _08116420:
_08116428: .4byte gTasks
_0811642C: .4byte gMain
_08116430:
- ldr r1, _0811646C @ =0x02019000
+ ldr r1, _0811646C @ =gSharedMem + 0x19000
ldrb r0, [r1, 0x1A]
lsls r0, 28
lsrs r0, 28
@@ -2377,7 +2377,7 @@ _08116464:
pop {r0}
bx r0
.align 2, 0
-_0811646C: .4byte 0x02019000
+_0811646C: .4byte gSharedMem + 0x19000
_08116470: .4byte sub_8116474
thumb_func_end sub_811637C
@@ -2406,7 +2406,7 @@ sub_8116474: @ 8116474
subs r0, 0x2
strh r0, [r1]
_081164A0:
- ldr r1, _081164D0 @ =0x02019000
+ ldr r1, _081164D0 @ =gSharedMem + 0x19000
ldrh r0, [r1, 0x26]
subs r0, 0x4
strh r0, [r1, 0x26]
@@ -2429,7 +2429,7 @@ _081164A0:
.align 2, 0
_081164C8: .4byte gTasks
_081164CC: .4byte gSpriteCoordOffsetX
-_081164D0: .4byte 0x02019000
+_081164D0: .4byte gSharedMem + 0x19000
_081164D4: .4byte gSprites
_081164D8: .4byte sub_81184CC
_081164DC:
@@ -2770,7 +2770,7 @@ sub_811677C: @ 811677C
lsls r0, 24
lsrs r0, 24
ldr r3, _081167DC @ =gStringVar1
- ldr r6, _081167E0 @ =0x02019000
+ ldr r6, _081167E0 @ =gSharedMem + 0x19000
ldrb r2, [r6, 0x19]
ldr r1, _081167E4 @ =gTasks
lsls r4, r0, 2
@@ -2812,7 +2812,7 @@ sub_811677C: @ 811677C
bx r0
.align 2, 0
_081167DC: .4byte gStringVar1
-_081167E0: .4byte 0x02019000
+_081167E0: .4byte gSharedMem + 0x19000
_081167E4: .4byte gTasks
_081167E8: .4byte gStringVar4
_081167EC: .4byte gUnknown_081C41BD
@@ -2825,7 +2825,7 @@ sub_81167F4: @ 81167F4
adds r5, r0, 0
lsls r5, 24
lsrs r5, 24
- ldr r4, _08116868 @ =0x020190b8
+ ldr r4, _08116868 @ =gSharedMem + 0x190B8
ldr r1, _0811686C @ =0x0000ffff
adds r0, r4, 0
bl sub_8124D3C
@@ -2878,7 +2878,7 @@ sub_81167F4: @ 81167F4
pop {r0}
bx r0
.align 2, 0
-_08116868: .4byte 0x020190b8
+_08116868: .4byte gSharedMem + 0x190B8
_0811686C: .4byte 0x0000ffff
_08116870: .4byte gSprites
_08116874: .4byte gUnknown_083F8C00
@@ -2903,7 +2903,7 @@ sub_8116880: @ 8116880
adds r0, r1
movs r2, 0
strh r5, [r0, 0x10]
- ldr r4, _08116958 @ =0x02019000
+ ldr r4, _08116958 @ =gSharedMem + 0x19000
ldrb r0, [r4, 0x1A]
lsls r0, 28
lsrs r0, 28
@@ -2993,7 +2993,7 @@ _081168E4:
b _08116992
.align 2, 0
_08116954: .4byte gTasks
-_08116958: .4byte 0x02019000
+_08116958: .4byte gSharedMem + 0x19000
_0811695C: .4byte gSprites
_08116960: .4byte 0xfffffc00
_08116964: .4byte 0x000003ff
@@ -3081,7 +3081,7 @@ dp01t_12_3_battle_menu: @ 81169F4
movs r0, 0x6
bl sub_81182F8
ldr r7, _08116A88 @ =gSprites
- ldr r3, _08116A8C @ =0x0201903c
+ ldr r3, _08116A8C @ =gSharedMem + 0x1903C
movs r6, 0x5
negs r6, r6
_08116A2A:
@@ -3130,7 +3130,7 @@ _08116A2A:
.align 2, 0
_08116A84: .4byte gTasks
_08116A88: .4byte gSprites
-_08116A8C: .4byte 0x0201903c
+_08116A8C: .4byte gSharedMem + 0x1903C
_08116A90: .4byte 0x0000270f
_08116A94: .4byte gUnknown_081C4231
_08116A98: .4byte sub_8115734
@@ -3152,7 +3152,7 @@ sub_8116AB0: @ 8116AB0
sub sp, 0x4
lsls r0, 24
lsrs r5, r0, 24
- ldr r4, _08116AF0 @ =0x020190b8
+ ldr r4, _08116AF0 @ =gSharedMem + 0x190B8
ldr r1, _08116AF4 @ =0x0000ffff
adds r0, r4, 0
bl sub_8124D3C
@@ -3178,7 +3178,7 @@ sub_8116AB0: @ 8116AB0
movs r0, 0x1
b _08116B0C
.align 2, 0
-_08116AF0: .4byte 0x020190b8
+_08116AF0: .4byte gSharedMem + 0x190B8
_08116AF4: .4byte 0x0000ffff
_08116AF8: .4byte gSaveBlock1
_08116AFC: .4byte gTasks
@@ -3225,7 +3225,7 @@ sub_8116B40: @ 8116B40
bne _08116B9E
movs r0, 0
bl SetVBlankCallback
- ldr r0, _08116BA4 @ =0x02019000
+ ldr r0, _08116BA4 @ =gSharedMem + 0x19000
movs r2, 0xBE
lsls r2, 1
movs r1, 0
@@ -3257,7 +3257,7 @@ _08116B9E:
pop {r0}
bx r0
.align 2, 0
-_08116BA4: .4byte 0x02019000
+_08116BA4: .4byte gSharedMem + 0x19000
_08116BA8: .4byte gSpriteCoordOffsetX
_08116BAC: .4byte gSpriteCoordOffsetY
_08116BB0: .4byte REG_BLDCNT
@@ -3271,7 +3271,7 @@ sub_8116BC0: @ 8116BC0
push {r4-r7,lr}
lsls r0, 24
lsrs r3, r0, 24
- ldr r0, _08116C24 @ =0x02019000
+ ldr r0, _08116C24 @ =gSharedMem + 0x19000
adds r7, r0, 0
adds r7, 0xA8
ldrh r1, [r7]
@@ -3322,7 +3322,7 @@ _08116C1E:
pop {r0}
bx r0
.align 2, 0
-_08116C24: .4byte 0x02019000
+_08116C24: .4byte gSharedMem + 0x19000
_08116C28: .4byte gMain
_08116C2C: .4byte gTasks
_08116C30: .4byte 0x0000ffff
@@ -3338,7 +3338,7 @@ sub_8116C34: @ 8116C34
lsrs r4, r2, 16
lsls r3, 16
lsrs r3, 16
- ldr r0, _08116C84 @ =0x02019000
+ ldr r0, _08116C84 @ =gSharedMem + 0x19000
mov r12, r0
mov r2, r12
adds r2, 0xB4
@@ -3372,7 +3372,7 @@ _08116C64:
strh r4, [r1]
b _08116C96
.align 2, 0
-_08116C84: .4byte 0x02019000
+_08116C84: .4byte gSharedMem + 0x19000
_08116C88: .4byte gTasks
_08116C8C: .4byte 0x0000ffff
_08116C90:
@@ -3399,7 +3399,7 @@ sub_8116CAC: @ 8116CAC
lsls r0, 24
lsrs r5, r0, 24
movs r2, 0
- ldr r0, _08116CF0 @ =0x02019000
+ ldr r0, _08116CF0 @ =gSharedMem + 0x19000
strb r2, [r0]
movs r1, 0
strb r1, [r0, 0x3]
@@ -3430,14 +3430,14 @@ _08116CC4:
pop {r0}
bx r0
.align 2, 0
-_08116CF0: .4byte 0x02019000
+_08116CF0: .4byte gSharedMem + 0x19000
_08116CF4: .4byte gTasks
thumb_func_end sub_8116CAC
thumb_func_start sub_8116CF8
sub_8116CF8: @ 8116CF8
push {lr}
- ldr r1, _08116D48 @ =0x02019000
+ ldr r1, _08116D48 @ =gSharedMem + 0x19000
movs r0, 0
str r0, [r1, 0x8]
movs r2, 0
@@ -3452,7 +3452,7 @@ _08116D06:
cmp r2, 0x5
bls _08116D06
movs r2, 0
- ldr r3, _08116D4C @ =0x02019012
+ ldr r3, _08116D4C @ =gSharedMem + 0x19012
movs r1, 0
_08116D1A:
adds r0, r2, r3
@@ -3463,7 +3463,7 @@ _08116D1A:
cmp r2, 0x3
bls _08116D1A
movs r2, 0
- ldr r3, _08116D50 @ =0x02019016
+ ldr r3, _08116D50 @ =gSharedMem + 0x19016
movs r1, 0
_08116D2E:
adds r0, r2, r3
@@ -3479,9 +3479,9 @@ _08116D2E:
pop {r0}
bx r0
.align 2, 0
-_08116D48: .4byte 0x02019000
-_08116D4C: .4byte 0x02019012
-_08116D50: .4byte 0x02019016
+_08116D48: .4byte gSharedMem + 0x19000
+_08116D4C: .4byte gSharedMem + 0x19012
+_08116D50: .4byte gSharedMem + 0x19016
thumb_func_end sub_8116CF8
thumb_func_start sub_8116D54
@@ -3515,7 +3515,7 @@ sub_8116D54: @ 8116D54
_08116D88: .4byte gUnknown_083F8ED8
_08116D8C: .4byte gUnknown_083F8EE8
_08116D90:
- ldr r6, _08116E48 @ =0x02019000
+ ldr r6, _08116E48 @ =gSharedMem + 0x19000
ldr r1, _08116E4C @ =gTasks
lsls r0, r3, 2
adds r0, r3
@@ -3574,7 +3574,7 @@ _08116DEE:
ldr r0, _08116E54 @ =gUnknown_083F8D90 + 0x4
add r0, r12
ldr r7, [r0]
- ldr r4, _08116E58 @ =0x02019016
+ ldr r4, _08116E58 @ =gSharedMem + 0x19016
mov r5, r9
_08116E04:
lsls r0, r2, 2
@@ -3614,11 +3614,11 @@ _08116E38:
pop {r1}
bx r1
.align 2, 0
-_08116E48: .4byte 0x02019000
+_08116E48: .4byte gSharedMem + 0x19000
_08116E4C: .4byte gTasks
_08116E50: .4byte gUnknown_083F8D90
_08116E54: .4byte gUnknown_083F8D90 + 0x4
-_08116E58: .4byte 0x02019016
+_08116E58: .4byte gSharedMem + 0x19016
thumb_func_end sub_8116D54
thumb_func_start sub_8116E5C
@@ -3722,7 +3722,7 @@ _08116F1E:
lsls r0, 24
lsrs r4, r0, 24
adds r0, r6, 0x5
- ldr r7, _08116F70 @ =0x020190b8
+ ldr r7, _08116F70 @ =gSharedMem + 0x190B8
cmp r4, r0
bge _08116F5E
adds r1, r7, 0
@@ -3762,7 +3762,7 @@ _08116F5E:
bl sub_8124CE8
b _0811713C
.align 2, 0
-_08116F70: .4byte 0x020190b8
+_08116F70: .4byte gSharedMem + 0x190B8
_08116F74: .4byte gUnknown_083F8C00
_08116F78: .4byte 0x0000dfff
_08116F7C:
@@ -3801,51 +3801,51 @@ _08116F9A:
bgt _08116FD4
cmp r0, 0x1
beq _08116FE4
- ldr r4, _08116FD0 @ =0x02019000
+ ldr r4, _08116FD0 @ =gSharedMem + 0x19000
b _0811703A
.align 2, 0
_08116FC8: .4byte gUnknown_083F8E9C
_08116FCC: .4byte 0xffff0000
-_08116FD0: .4byte 0x02019000
+_08116FD0: .4byte gSharedMem + 0x19000
_08116FD4:
cmp r0, 0x3
beq _0811700C
cmp r0, 0x4
beq _08117020
- ldr r4, _08116FE0 @ =0x02019000
+ ldr r4, _08116FE0 @ =gSharedMem + 0x19000
b _0811703A
.align 2, 0
-_08116FE0: .4byte 0x02019000
+_08116FE0: .4byte gSharedMem + 0x19000
_08116FE4:
ldr r3, _08116FF0 @ =gSprites
- ldr r2, _08116FF4 @ =0x02019000
+ ldr r2, _08116FF4 @ =gSharedMem + 0x19000
adds r0, r2, 0
adds r0, 0x43
b _08117028
.align 2, 0
_08116FF0: .4byte gSprites
-_08116FF4: .4byte 0x02019000
+_08116FF4: .4byte gSharedMem + 0x19000
_08116FF8:
ldr r3, _08117004 @ =gSprites
- ldr r2, _08117008 @ =0x02019000
+ ldr r2, _08117008 @ =gSharedMem + 0x19000
adds r0, r2, 0
adds r0, 0x44
b _08117028
.align 2, 0
_08117004: .4byte gSprites
-_08117008: .4byte 0x02019000
+_08117008: .4byte gSharedMem + 0x19000
_0811700C:
ldr r3, _08117018 @ =gSprites
- ldr r2, _0811701C @ =0x02019000
+ ldr r2, _0811701C @ =gSharedMem + 0x19000
adds r0, r2, 0
adds r0, 0x45
b _08117028
.align 2, 0
_08117018: .4byte gSprites
-_0811701C: .4byte 0x02019000
+_0811701C: .4byte gSharedMem + 0x19000
_08117020:
ldr r3, _08117088 @ =gSprites
- ldr r2, _0811708C @ =0x02019000
+ ldr r2, _0811708C @ =gSharedMem + 0x19000
adds r0, r2, 0
adds r0, 0x46
_08117028:
@@ -3897,13 +3897,13 @@ _0811703A:
b _08117122
.align 2, 0
_08117088: .4byte gSprites
-_0811708C: .4byte 0x02019000
+_0811708C: .4byte gSharedMem + 0x19000
_08117090: .4byte gUnknown_083F8C00
_08117094:
movs r4, 0
lsls r0, r6, 2
str r0, [sp, 0x1C]
- ldr r1, _0811714C @ =0x02019000
+ ldr r1, _0811714C @ =gSharedMem + 0x19000
mov r8, r1
ldr r2, _08117150 @ =gUnknown_083F8C00
mov r9, r2
@@ -3973,7 +3973,7 @@ _0811710E:
movs r3, 0
str r3, [sp, 0x18]
_08117122:
- ldr r0, _08117154 @ =0x020190b8
+ ldr r0, _08117154 @ =gSharedMem + 0x190B8
ldr r2, _08117150 @ =gUnknown_083F8C00
ldr r4, [sp, 0x1C]
adds r1, r4, r6
@@ -3995,9 +3995,9 @@ _0811713C:
pop {r0}
bx r0
.align 2, 0
-_0811714C: .4byte 0x02019000
+_0811714C: .4byte gSharedMem + 0x19000
_08117150: .4byte gUnknown_083F8C00
-_08117154: .4byte 0x020190b8
+_08117154: .4byte gSharedMem + 0x190B8
thumb_func_end sub_8116EF8
thumb_func_start sub_8117158
@@ -4010,7 +4010,7 @@ sub_8117158: @ 8117158
sub sp, 0x24
lsls r0, 24
lsrs r5, r0, 24
- ldr r4, _0811719C @ =0x02019000
+ ldr r4, _0811719C @ =gSharedMem + 0x19000
movs r0, 0x1
strh r0, [r4, 0x2A]
movs r0, 0
@@ -4035,7 +4035,7 @@ sub_8117158: @ 8117158
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_0811719C: .4byte 0x02019000
+_0811719C: .4byte gSharedMem + 0x19000
_081171A0: .4byte gBGTilemapBuffers + 0x800
_081171A4: .4byte 0xfffff800
_081171A8: .4byte _081171AC
@@ -4172,7 +4172,7 @@ _0811727C:
ldr r0, _08117374 @ =gBGTilemapBuffers + 0x800
mov r8, r0
ldr r6, [sp, 0x1C]
- ldr r1, _08117378 @ =0x020189a0
+ ldr r1, _08117378 @ =gSharedMem + 0x189A0
mov r10, r1
_081172C8:
mov r1, r12
@@ -4233,7 +4233,7 @@ _081172C8:
lsls r0, r1, 1
adds r0, r1
lsls r0, 1
- ldr r1, _0811737C @ =0x020189a4
+ ldr r1, _0811737C @ =gSharedMem + 0x189A4
adds r0, r1
ldrh r0, [r0]
strh r0, [r2]
@@ -4264,8 +4264,8 @@ _08117360:
.align 2, 0
_08117370: .4byte gUnknown_083F8C00
_08117374: .4byte gBGTilemapBuffers + 0x800
-_08117378: .4byte 0x020189a0
-_0811737C: .4byte 0x020189a4
+_08117378: .4byte gSharedMem + 0x189A0
+_0811737C: .4byte gSharedMem + 0x189A4
thumb_func_end sub_8117158
thumb_func_start sub_8117380
@@ -4311,7 +4311,7 @@ _081173C6:
subs r0, 0x1
lsls r0, 24
lsrs r4, r0, 24
- ldr r0, _081173E8 @ =0x02019000
+ ldr r0, _081173E8 @ =gSharedMem + 0x19000
adds r0, 0x16
adds r1, r4, r0
ldrb r0, [r1]
@@ -4321,12 +4321,12 @@ _081173C6:
adds r0, 0x1
b _08117402
.align 2, 0
-_081173E8: .4byte 0x02019000
+_081173E8: .4byte gSharedMem + 0x19000
_081173EC:
subs r0, r4, 0x1
lsls r0, 24
lsrs r4, r0, 24
- ldr r0, _08117408 @ =0x02019000
+ ldr r0, _08117408 @ =gSharedMem + 0x19000
adds r0, 0x12
adds r1, r4, r0
ldrb r0, [r1]
@@ -4339,9 +4339,9 @@ _08117402:
ldrb r0, [r0]
b _0811742A
.align 2, 0
-_08117408: .4byte 0x02019000
+_08117408: .4byte gSharedMem + 0x19000
_0811740C:
- ldr r1, _08117424 @ =0x02019000
+ ldr r1, _08117424 @ =gSharedMem + 0x19000
adds r0, r3, 0
adds r0, 0x8
adds r0, r2, r0
@@ -4354,7 +4354,7 @@ _0811740C:
ldrb r0, [r0, 0x4]
b _0811742A
.align 2, 0
-_08117424: .4byte 0x02019000
+_08117424: .4byte gSharedMem + 0x19000
_08117428:
movs r0, 0
_0811742A:
@@ -4368,7 +4368,7 @@ _0811742A:
sub_8117434: @ 8117434
push {r4-r6,lr}
ldr r1, _081174AC @ =REG_BG2PA
- ldr r4, _081174B0 @ =0x02019000
+ ldr r4, _081174B0 @ =gSharedMem + 0x19000
ldrh r0, [r4, 0x2C]
strh r0, [r1]
adds r1, 0x2
@@ -4428,7 +4428,7 @@ sub_8117434: @ 8117434
bx r0
.align 2, 0
_081174AC: .4byte REG_BG2PA
-_081174B0: .4byte 0x02019000
+_081174B0: .4byte gSharedMem + 0x19000
_081174B4: .4byte gSpriteCoordOffsetY
_081174B8: .4byte gSpriteCoordOffsetX
_081174BC: .4byte REG_BG2X_L
@@ -4863,7 +4863,7 @@ sub_8117838: @ 8117838
ldr r0, _08117870 @ =gUnknown_083F9E30
bl LoadSpritePalettes
ldr r0, _08117874 @ =gUnknown_083F92A8
- ldr r4, _08117878 @ =0x02017000
+ ldr r4, _08117878 @ =gSharedMem + 0x17000
adds r1, r4, 0
bl LZ77UnCompWram
ldr r0, _0811787C @ =gUnknown_083F90FC
@@ -4881,7 +4881,7 @@ sub_8117838: @ 8117838
.align 2, 0
_08117870: .4byte gUnknown_083F9E30
_08117874: .4byte gUnknown_083F92A8
-_08117878: .4byte 0x02017000
+_08117878: .4byte gSharedMem + 0x17000
_0811787C: .4byte gUnknown_083F90FC
_08117880: .4byte gUnknown_083F9D3C
_08117884:
@@ -4959,7 +4959,7 @@ sub_8117900: @ 8117900
sub sp, 0x8
ldr r4, _08117A50 @ =gUnknown_083F9F54
ldr r0, [r4]
- ldr r5, _08117A54 @ =0x02000000
+ ldr r5, _08117A54 @ =gSharedMem
adds r1, r5, 0
bl LZ77UnCompWram
str r5, [sp]
@@ -5041,7 +5041,7 @@ _081179A0:
cmp r7, 0x2
bls _08117950
movs r7, 0
- ldr r5, _08117A68 @ =0x0201903c
+ ldr r5, _08117A68 @ =gSharedMem + 0x1903C
ldr r4, _08117A60 @ =gSprites
_081179BA:
lsls r1, r7, 1
@@ -5076,7 +5076,7 @@ _081179BA:
cmp r7, 0x3
bls _081179BA
movs r7, 0
- ldr r5, _08117A68 @ =0x0201903c
+ ldr r5, _08117A68 @ =gSharedMem + 0x1903C
ldr r4, _08117A60 @ =gSprites
_08117A00:
lsls r2, r7, 1
@@ -5119,12 +5119,12 @@ _08117A00:
bx r0
.align 2, 0
_08117A50: .4byte gUnknown_083F9F54
-_08117A54: .4byte 0x02000000
+_08117A54: .4byte gSharedMem
_08117A58: .4byte gUnknown_083F9F5C
_08117A5C: .4byte 0x0001903c
_08117A60: .4byte gSprites
_08117A64: .4byte gSpriteTemplate_83FA07C
-_08117A68: .4byte 0x0201903c
+_08117A68: .4byte gSharedMem + 0x1903C
_08117A6C: .4byte gSpriteTemplate_83F9FD4
_08117A70: .4byte gSpriteTemplate_83FA034
thumb_func_end sub_8117900
@@ -5133,7 +5133,7 @@ _08117A70: .4byte gSpriteTemplate_83FA034
unref_sub_8117A74: @ 8117A74
push {r4,r5,lr}
movs r4, 0
- ldr r5, _08117AA0 @ =0x0201903c
+ ldr r5, _08117AA0 @ =gSharedMem + 0x1903C
_08117A7A:
adds r0, r4, 0
adds r0, 0x1D
@@ -5154,7 +5154,7 @@ _08117A7A:
pop {r0}
bx r0
.align 2, 0
-_08117AA0: .4byte 0x0201903c
+_08117AA0: .4byte gSharedMem + 0x1903C
_08117AA4: .4byte gSprites
thumb_func_end unref_sub_8117A74
@@ -5175,7 +5175,7 @@ sub_8117AA8: @ 8117AA8
bne _08117BA8
movs r3, 0
ldr r5, _08117AF0 @ =gSprites
- ldr r4, _08117AF4 @ =0x0201903c
+ ldr r4, _08117AF4 @ =gSharedMem + 0x1903C
movs r2, 0x4
_08117ACA:
adds r0, r3, 0
@@ -5198,12 +5198,12 @@ _08117ACA:
b _08117BA8
.align 2, 0
_08117AF0: .4byte gSprites
-_08117AF4: .4byte 0x0201903c
+_08117AF4: .4byte gSharedMem + 0x1903C
_08117AF8:
movs r3, 0
ldr r0, _08117B48 @ =gUnknown_083F8D90
mov r12, r0
- ldr r7, _08117B4C @ =0x02019000
+ ldr r7, _08117B4C @ =gSharedMem + 0x19000
movs r1, 0x4
add r1, r12
mov r9, r1
@@ -5242,7 +5242,7 @@ _08117B10:
b _08117B6E
.align 2, 0
_08117B48: .4byte gUnknown_083F8D90
-_08117B4C: .4byte 0x02019000
+_08117B4C: .4byte gSharedMem + 0x19000
_08117B50: .4byte gSprites
_08117B54:
adds r0, r3, 0
@@ -5267,7 +5267,7 @@ _08117B6E:
cmp r3, 0x12
bhi _08117BA8
ldr r6, _08117BB4 @ =gSprites
- ldr r4, _08117BB8 @ =0x0201903c
+ ldr r4, _08117BB8 @ =gSharedMem + 0x1903C
movs r5, 0x5
negs r5, r5
_08117B84:
@@ -5298,7 +5298,7 @@ _08117BA8:
bx r0
.align 2, 0
_08117BB4: .4byte gSprites
-_08117BB8: .4byte 0x0201903c
+_08117BB8: .4byte gSharedMem + 0x1903C
thumb_func_end sub_8117AA8
thumb_func_start sub_8117BBC
@@ -5307,7 +5307,7 @@ sub_8117BBC: @ 8117BBC
mov r7, r8
push {r7}
movs r5, 0
- ldr r0, _08117C50 @ =0x0201903c
+ ldr r0, _08117C50 @ =gSharedMem + 0x1903C
mov r8, r0
ldr r4, _08117C54 @ =gSprites
movs r6, 0x4
@@ -5376,7 +5376,7 @@ _08117BCC:
pop {r0}
bx r0
.align 2, 0
-_08117C50: .4byte 0x0201903c
+_08117C50: .4byte gSharedMem + 0x1903C
_08117C54: .4byte gSprites
_08117C58: .4byte gSpriteTemplate_83FA40C
_08117C5C: .4byte sub_81184CC
@@ -5397,7 +5397,7 @@ sub_8117C60: @ 8117C60
cmp r0, 0
beq _08117CAC
ldr r4, _08117CA4 @ =gSprites
- ldr r3, _08117CA8 @ =0x0201903c
+ ldr r3, _08117CA8 @ =gSharedMem + 0x1903C
movs r2, 0x4
_08117C7E:
adds r0, r5, 0
@@ -5420,9 +5420,9 @@ _08117C7E:
b _08117D58
.align 2, 0
_08117CA4: .4byte gSprites
-_08117CA8: .4byte 0x0201903c
+_08117CA8: .4byte gSharedMem + 0x1903C
_08117CAC:
- ldr r0, _08117CEC @ =0x02019000
+ ldr r0, _08117CEC @ =gSharedMem + 0x19000
mov r12, r0
ldr r6, _08117CF0 @ =gSprites
movs r0, 0x3C
@@ -5457,7 +5457,7 @@ _08117CD0:
strb r1, [r0]
b _08117D4E
.align 2, 0
-_08117CEC: .4byte 0x02019000
+_08117CEC: .4byte gSharedMem + 0x19000
_08117CF0: .4byte gSprites
_08117CF4: .4byte gUnknown_083F8C00
_08117CF8:
@@ -5528,7 +5528,7 @@ sub_8117D68: @ 8117D68
cmp r5, 0
bne _08117D98
ldr r2, _08117D90 @ =gSprites
- ldr r0, _08117D94 @ =0x02019000
+ ldr r0, _08117D94 @ =gSharedMem + 0x19000
adds r0, 0x6C
ldrb r1, [r0]
lsls r0, r1, 4
@@ -5543,10 +5543,10 @@ sub_8117D68: @ 8117D68
b _08117DE2
.align 2, 0
_08117D90: .4byte gSprites
-_08117D94: .4byte 0x02019000
+_08117D94: .4byte gSharedMem + 0x19000
_08117D98:
ldr r4, _08117DE8 @ =gSprites
- ldr r3, _08117DEC @ =0x02019000
+ ldr r3, _08117DEC @ =gSharedMem + 0x19000
adds r3, 0x6C
ldrb r1, [r3]
lsls r0, r1, 4
@@ -5588,7 +5588,7 @@ _08117DE2:
bx r0
.align 2, 0
_08117DE8: .4byte gSprites
-_08117DEC: .4byte 0x02019000
+_08117DEC: .4byte gSharedMem + 0x19000
_08117DF0: .4byte gUnknown_083F8C00
thumb_func_end sub_8117D68
@@ -5600,7 +5600,7 @@ sub_8117DF4: @ 8117DF4
sub sp, 0xC
ldr r4, _08117E84 @ =gUnknown_083F9EE8
ldr r0, [r4]
- ldr r5, _08117E88 @ =0x02000000
+ ldr r5, _08117E88 @ =gSharedMem
adds r1, r5, 0
bl LZ77UnCompWram
str r5, [sp, 0x4]
@@ -5667,7 +5667,7 @@ _08117E30:
bx r0
.align 2, 0
_08117E84: .4byte gUnknown_083F9EE8
-_08117E88: .4byte 0x02000000
+_08117E88: .4byte gSharedMem
_08117E8C: .4byte 0x0001903c
_08117E90: .4byte gSprites
_08117E94: .4byte gSpriteTemplate_83FA0DC
@@ -5677,7 +5677,7 @@ _08117E94: .4byte gSpriteTemplate_83FA0DC
sub_8117E98: @ 8117E98
push {r4-r6,lr}
adds r6, r0, 0
- ldr r0, _08117F1C @ =0x02019000
+ ldr r0, _08117F1C @ =gSharedMem + 0x19000
ldrh r1, [r6, 0x2E]
ldrh r0, [r0, 0x24]
adds r1, r0
@@ -5742,7 +5742,7 @@ _08117F04:
pop {r0}
bx r0
.align 2, 0
-_08117F1C: .4byte 0x02019000
+_08117F1C: .4byte gSharedMem + 0x19000
_08117F20: .4byte 0x00000167
_08117F24: .4byte 0xfffffe98
_08117F28: .4byte gOamMatrices
@@ -5755,7 +5755,7 @@ sub_8117F2C: @ 8117F2C
push {r7}
sub sp, 0x8
movs r5, 0
- ldr r7, _081180C8 @ =0x02000000
+ ldr r7, _081180C8 @ =gSharedMem
mov r6, sp
_08117F3A:
ldr r0, _081180CC @ =gUnknown_083FA21C
@@ -5789,7 +5789,7 @@ _08117F3A:
movs r2, 0x10
movs r3, 0x4
bl CreateSprite
- ldr r4, _081180DC @ =0x02019000
+ ldr r4, _081180DC @ =gSharedMem + 0x19000
adds r1, r4, 0
adds r1, 0x50
strb r0, [r1]
@@ -5851,7 +5851,7 @@ _08117FA2:
movs r2, 0x44
movs r3, 0x4
bl CreateSprite
- ldr r3, _081180DC @ =0x02019000
+ ldr r3, _081180DC @ =gSharedMem + 0x19000
adds r1, r3, 0
adds r1, 0x55
strb r0, [r1]
@@ -5913,7 +5913,7 @@ _08118020:
movs r2, 0x60
movs r3, 0x9
bl CreateSprite
- ldr r3, _081180DC @ =0x02019000
+ ldr r3, _081180DC @ =gSharedMem + 0x19000
adds r3, 0x6C
strb r0, [r3]
ldr r4, _081180E0 @ =gSprites
@@ -5953,12 +5953,12 @@ _08118020:
pop {r0}
bx r0
.align 2, 0
-_081180C8: .4byte 0x02000000
+_081180C8: .4byte gSharedMem
_081180CC: .4byte gUnknown_083FA21C
_081180D0: .4byte 0xffff0000
_081180D4: .4byte 0x0000ffff
_081180D8: .4byte gSpriteTemplate_83FA2B0
-_081180DC: .4byte 0x02019000
+_081180DC: .4byte gSharedMem + 0x19000
_081180E0: .4byte gSprites
_081180E4: .4byte gSpriteTemplate_83FA2C8
_081180E8: .4byte gSpriteTemplate_83FA2E0
@@ -5980,7 +5980,7 @@ sub_81180F4: @ 81180F4
mov r8, r0
movs r4, 0
movs r6, 0
- ldr r1, _081181D4 @ =0x02019000
+ ldr r1, _081181D4 @ =gSharedMem + 0x19000
mov r9, r1
ldr r0, _081181D8 @ =gSprites
mov r10, r0
@@ -6081,7 +6081,7 @@ _081181A2:
pop {r0}
bx r0
.align 2, 0
-_081181D4: .4byte 0x02019000
+_081181D4: .4byte gSharedMem + 0x19000
_081181D8: .4byte gSprites
_081181DC: .4byte gSprites + 0x8
_081181E0: .4byte 0x000003ff
@@ -6131,7 +6131,7 @@ _0811822E:
subs r0, 0x1
lsls r0, 24
lsrs r4, r0, 24
- ldr r0, _08118250 @ =0x02019000
+ ldr r0, _08118250 @ =gSharedMem + 0x19000
adds r0, 0x16
adds r1, r4, r0
ldrb r0, [r1]
@@ -6141,12 +6141,12 @@ _0811822E:
adds r0, 0x1
b _0811826A
.align 2, 0
-_08118250: .4byte 0x02019000
+_08118250: .4byte gSharedMem + 0x19000
_08118254:
subs r0, r4, 0x1
lsls r0, 24
lsrs r4, r0, 24
- ldr r0, _08118270 @ =0x02019000
+ ldr r0, _08118270 @ =gSharedMem + 0x19000
adds r0, 0x12
adds r1, r4, r0
ldrb r0, [r1]
@@ -6159,9 +6159,9 @@ _0811826A:
ldrb r0, [r0]
b _08118292
.align 2, 0
-_08118270: .4byte 0x02019000
+_08118270: .4byte gSharedMem + 0x19000
_08118274:
- ldr r1, _0811828C @ =0x02019000
+ ldr r1, _0811828C @ =gSharedMem + 0x19000
adds r0, r3, 0
adds r0, 0x8
adds r0, r2, r0
@@ -6174,7 +6174,7 @@ _08118274:
ldrb r0, [r0, 0x4]
b _08118292
.align 2, 0
-_0811828C: .4byte 0x02019000
+_0811828C: .4byte gSharedMem + 0x19000
_08118290:
movs r0, 0
_08118292:
@@ -6189,7 +6189,7 @@ sub_811829C: @ 811829C
push {r4,lr}
lsls r0, 24
lsrs r0, 24
- ldr r1, _081182E8 @ =0x02019000
+ ldr r1, _081182E8 @ =gSharedMem + 0x19000
adds r1, 0x55
ldrb r2, [r1]
lsls r1, r2, 4
@@ -6223,7 +6223,7 @@ sub_811829C: @ 811829C
pop {r0}
bx r0
.align 2, 0
-_081182E8: .4byte 0x02019000
+_081182E8: .4byte gSharedMem + 0x19000
_081182EC: .4byte gSprites
_081182F0: .4byte 0x000003ff
_081182F4: .4byte 0xfffffc00
@@ -6237,7 +6237,7 @@ sub_81182F8: @ 81182F8
lsls r0, 24
lsrs r2, r0, 24
movs r5, 0
- ldr r0, _08118320 @ =0x02019000
+ ldr r0, _08118320 @ =gSharedMem + 0x19000
ldrb r1, [r0, 0x19]
adds r3, r0, 0
cmp r1, 0x1
@@ -6254,7 +6254,7 @@ _08118316:
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_08118320: .4byte 0x02019000
+_08118320: .4byte gSharedMem + 0x19000
_08118324: .4byte _08118328
.align 2, 0
_08118328:
@@ -6268,7 +6268,7 @@ _08118328:
_08118344:
movs r4, 0
ldr r5, _081183A8 @ =gSprites
- ldr r0, _081183AC @ =0x0201903c
+ ldr r0, _081183AC @ =gSharedMem + 0x1903C
mov r8, r0
movs r2, 0x5
negs r2, r2
@@ -6319,7 +6319,7 @@ _08118358:
b _081184B2
.align 2, 0
_081183A8: .4byte gSprites
-_081183AC: .4byte 0x0201903c
+_081183AC: .4byte gSharedMem + 0x1903C
_081183B0: .4byte 0xfffffc00
_081183B4: .4byte 0x000003ff
_081183B8:
@@ -6417,7 +6417,7 @@ _08118464:
movs r4, 0
lsls r6, r5, 2
ldr r5, _081184BC @ =gSprites
- ldr r0, _081184C0 @ =0x0201903c
+ ldr r0, _081184C0 @ =gSharedMem + 0x1903C
mov r8, r0
adds r7, r5, 0
adds r7, 0x8
@@ -6462,19 +6462,19 @@ _081184B2:
bx r0
.align 2, 0
_081184BC: .4byte gSprites
-_081184C0: .4byte 0x0201903c
+_081184C0: .4byte gSharedMem + 0x1903C
_081184C4: .4byte 0xfffffc00
_081184C8: .4byte 0x000003ff
thumb_func_end sub_81182F8
thumb_func_start sub_81184CC
sub_81184CC: @ 81184CC
- ldr r1, _081184D4 @ =0x02019000
+ ldr r1, _081184D4 @ =gSharedMem + 0x19000
ldrh r1, [r1, 0x26]
strh r1, [r0, 0x24]
bx lr
.align 2, 0
-_081184D4: .4byte 0x02019000
+_081184D4: .4byte gSharedMem + 0x19000
thumb_func_end sub_81184CC
thumb_func_start sub_81184D8
@@ -6483,7 +6483,7 @@ sub_81184D8: @ 81184D8
sub sp, 0x8
ldr r4, _08118544 @ =gUnknown_083FA42C
ldr r0, [r4]
- ldr r5, _08118548 @ =0x02000000
+ ldr r5, _08118548 @ =gSharedMem
adds r1, r5, 0
bl LZ77UnCompWram
str r5, [sp]
@@ -6532,7 +6532,7 @@ sub_81184D8: @ 81184D8
bx r0
.align 2, 0
_08118544: .4byte gUnknown_083FA42C
-_08118548: .4byte 0x02000000
+_08118548: .4byte gSharedMem
_0811854C: .4byte gSpriteTemplate_83FA434
_08118550: .4byte gSprites
thumb_func_end sub_81184D8
@@ -6545,7 +6545,7 @@ sub_8118554: @ 8118554
ldr r1, _08118574 @ =gOamMatrices
lsls r0, 3
adds r0, r1
- ldr r2, _08118578 @ =0x02019000
+ ldr r2, _08118578 @ =gSharedMem + 0x19000
ldrh r1, [r2, 0x2C]
strh r1, [r0, 0x6]
ldrh r1, [r2, 0x2C]
@@ -6557,14 +6557,14 @@ sub_8118554: @ 8118554
bx lr
.align 2, 0
_08118574: .4byte gOamMatrices
-_08118578: .4byte 0x02019000
+_08118578: .4byte gSharedMem + 0x19000
thumb_func_end sub_8118554
thumb_func_start sub_811857C
sub_811857C: @ 811857C
push {r4-r6,lr}
movs r4, 0
- ldr r6, _081185DC @ =0x0201903c
+ ldr r6, _081185DC @ =gSharedMem + 0x1903C
ldr r5, _081185E0 @ =gSprites
_08118584:
movs r3, 0x39
@@ -6611,7 +6611,7 @@ _081185CA:
pop {r0}
bx r0
.align 2, 0
-_081185DC: .4byte 0x0201903c
+_081185DC: .4byte gSharedMem + 0x1903C
_081185E0: .4byte gSprites
_081185E4: .4byte gSpriteTemplate_83FA40C
thumb_func_end sub_811857C
@@ -6623,7 +6623,7 @@ sub_81185E8: @ 81185E8
mov r6, r9
mov r5, r8
push {r5-r7}
- ldr r0, _08118660 @ =0x02019000
+ ldr r0, _08118660 @ =gSharedMem + 0x19000
adds r0, 0x3C
ldrb r5, [r0]
movs r6, 0
@@ -6680,7 +6680,7 @@ _08118632:
pop {r0}
bx r0
.align 2, 0
-_08118660: .4byte 0x02019000
+_08118660: .4byte gSharedMem + 0x19000
_08118664: .4byte gSprites
_08118668: .4byte SpriteCallbackDummy
thumb_func_end sub_81185E8
@@ -6689,7 +6689,7 @@ _08118668: .4byte SpriteCallbackDummy
sub_811866C: @ 811866C
push {r4,r5,lr}
adds r3, r0, 0
- ldr r0, _0811869C @ =0x02019000
+ ldr r0, _0811869C @ =gSharedMem + 0x19000
ldrh r4, [r0, 0x24]
movs r2, 0x24
ldrsh r1, [r0, r2]
@@ -6711,7 +6711,7 @@ sub_811866C: @ 811866C
adds r0, r2, r5
b _081186AA
.align 2, 0
-_0811869C: .4byte 0x02019000
+_0811869C: .4byte gSharedMem + 0x19000
_081186A0: .4byte 0x01670000
_081186A4: .4byte 0xfffffe98
_081186A8:
@@ -6730,7 +6730,7 @@ _081186AC:
sub_81186B8: @ 81186B8
push {r4,lr}
bl sub_811866C
- ldr r4, _081186E0 @ =0x02019000
+ ldr r4, _081186E0 @ =gSharedMem + 0x19000
lsls r0, 16
asrs r0, 16
bl __floatsisf
@@ -6744,7 +6744,7 @@ sub_81186B8: @ 81186B8
pop {r1}
bx r1
.align 2, 0
-_081186E0: .4byte 0x02019000
+_081186E0: .4byte gSharedMem + 0x19000
_081186E4: .4byte 0x41f00000
thumb_func_end sub_81186B8
@@ -6790,7 +6790,7 @@ sub_8118724: @ 8118724
mov r7, r8
push {r7}
adds r6, r0, 0
- ldr r5, _08118770 @ =0x02019000
+ ldr r5, _08118770 @ =gSharedMem + 0x19000
adds r4, r5, 0
adds r4, 0x8C
adds r1, r5, 0
@@ -6820,7 +6820,7 @@ sub_8118724: @ 8118724
str r0, [r2]
b _08118790
.align 2, 0
-_08118770: .4byte 0x02019000
+_08118770: .4byte gSharedMem + 0x19000
_08118774: .4byte 0x43b40000
_08118778:
ldr r1, _08118824 @ =0x00000000
@@ -6910,7 +6910,7 @@ _08118830: .4byte gMPlay_SE2
sub_8118834: @ 8118834
push {r4,r5,lr}
adds r5, r0, 0
- ldr r1, _0811888C @ =0x02019000
+ ldr r1, _0811888C @ =gSharedMem + 0x19000
ldrh r0, [r5, 0x3A]
ldrh r1, [r1, 0x24]
adds r2, r0, r1
@@ -6952,7 +6952,7 @@ _08118850:
pop {r0}
bx r0
.align 2, 0
-_0811888C: .4byte 0x02019000
+_0811888C: .4byte gSharedMem + 0x19000
_08118890: .4byte 0x01670000
_08118894: .4byte 0xfffffe98
_08118898: .4byte gSpriteCoordOffsetY
@@ -6995,7 +6995,7 @@ _081188CE:
ldrsh r0, [r5, r1]
cmp r0, 0
bne _08118908
- ldr r6, _08118900 @ =0x02019000
+ ldr r6, _08118900 @ =gSharedMem + 0x19000
adds r4, r6, 0
adds r4, 0x94
adds r0, r6, 0
@@ -7010,10 +7010,10 @@ _081188CE:
bgt _0811898E
b _08118926
.align 2, 0
-_08118900: .4byte 0x02019000
+_08118900: .4byte gSharedMem + 0x19000
_08118904: .4byte 0x40000000
_08118908:
- ldr r6, _08118994 @ =0x02019000
+ ldr r6, _08118994 @ =gSharedMem + 0x19000
adds r4, r6, 0
adds r4, 0x94
adds r0, r6, 0
@@ -7079,7 +7079,7 @@ _0811898E:
pop {r0}
bx r0
.align 2, 0
-_08118994: .4byte 0x02019000
+_08118994: .4byte gSharedMem + 0x19000
_08118998: .4byte 0x40000000
_0811899C: .4byte sub_8118834
_081189A0: .4byte 0x00000000
@@ -7115,7 +7115,7 @@ _081189D0:
mov r8, r0
ldr r0, _08118A24 @ =gUnknown_083F8DF4
mov r9, r0
- ldr r1, _08118A28 @ =0x02019000
+ ldr r1, _08118A28 @ =gSharedMem + 0x19000
mov r10, r1
ldrb r4, [r1, 0x4]
lsls r4, 30
@@ -7146,7 +7146,7 @@ _081189D0:
b _08118A8A
.align 2, 0
_08118A24: .4byte gUnknown_083F8DF4
-_08118A28: .4byte 0x02019000
+_08118A28: .4byte gSharedMem + 0x19000
_08118A2C:
movs r1, 0x2E
ldrsh r0, [r7, r1]
@@ -7158,7 +7158,7 @@ _08118A2C:
mov r8, r0
ldr r0, _08118B1C @ =gUnknown_083F8DF4
mov r9, r0
- ldr r1, _08118B20 @ =0x02019000
+ ldr r1, _08118B20 @ =gSharedMem + 0x19000
mov r10, r1
ldrb r4, [r1, 0x4]
lsls r4, 30
@@ -7257,7 +7257,7 @@ _08118B0C:
bx r0
.align 2, 0
_08118B1C: .4byte gUnknown_083F8DF4
-_08118B20: .4byte 0x02019000
+_08118B20: .4byte gSharedMem + 0x19000
_08118B24: .4byte 0x40000000
_08118B28: .4byte 0x00000000
_08118B2C: .4byte sub_811889C
@@ -7289,7 +7289,7 @@ sub_8118B30: @ 8118B30
lsls r0, r1, 16
cmp r0, 0
blt _08118BC6
- ldr r4, _08118BD0 @ =0x02019000
+ ldr r4, _08118BD0 @ =gSharedMem + 0x19000
adds r1, r4, 0
adds r1, 0x7D
movs r0, 0xFF
@@ -7337,7 +7337,7 @@ _08118BC6:
bx r0
.align 2, 0
_08118BCC: .4byte 0x3d4ccccd
-_08118BD0: .4byte 0x02019000
+_08118BD0: .4byte gSharedMem + 0x19000
_08118BD4: .4byte sub_8118834
thumb_func_end sub_8118B30
@@ -7360,7 +7360,7 @@ sub_8118BD8: @ 8118BD8
cmp r0, 0x2D
bne _08118CA2
ldr r2, _08118C14 @ =gSprites
- ldr r0, _08118C18 @ =0x02019000
+ ldr r0, _08118C18 @ =gSharedMem + 0x19000
adds r0, 0x73
ldrb r1, [r0]
lsls r0, r1, 4
@@ -7375,7 +7375,7 @@ sub_8118BD8: @ 8118BD8
b _08118CA2
.align 2, 0
_08118C14: .4byte gSprites
-_08118C18: .4byte 0x02019000
+_08118C18: .4byte gSharedMem + 0x19000
_08118C1C:
lsls r0, r1, 16
asrs r0, 16
@@ -7384,7 +7384,7 @@ _08118C1C:
cmp r0, r1
bge _08118C68
ldr r2, _08118C58 @ =gSprites
- ldr r0, _08118C5C @ =0x02019000
+ ldr r0, _08118C5C @ =gSharedMem + 0x19000
adds r0, 0x73
ldrb r1, [r0]
lsls r0, r1, 4
@@ -7408,7 +7408,7 @@ _08118C1C:
b _08118CA2
.align 2, 0
_08118C58: .4byte gSprites
-_08118C5C: .4byte 0x02019000
+_08118C5C: .4byte gSharedMem + 0x19000
_08118C60:
ldrh r0, [r3, 0x26]
subs r0, 0x1
@@ -7494,7 +7494,7 @@ sub_8118CEC: @ 8118CEC
push {r4,lr}
adds r4, r0, 0
bl sub_8118724
- ldr r0, _08118D10 @ =0x02019000
+ ldr r0, _08118D10 @ =gSharedMem + 0x19000
ldrb r0, [r0, 0x3]
lsls r0, 27
lsrs r0, 27
@@ -7508,7 +7508,7 @@ _08118D04:
ldr r0, _08118D14 @ =sub_81189A8
b _08118D20
.align 2, 0
-_08118D10: .4byte 0x02019000
+_08118D10: .4byte gSharedMem + 0x19000
_08118D14: .4byte sub_81189A8
_08118D18:
adds r0, r4, 0
@@ -7535,7 +7535,7 @@ sub_8118D2C: @ 8118D2C
asrs r0, 16
cmp r0, 0xF
bne _08118D50
- ldr r4, _08118DB8 @ =0x02019000
+ ldr r4, _08118DB8 @ =gSharedMem + 0x19000
adds r4, 0x98
ldr r0, [r4]
ldr r1, _08118DBC @ =0xbf800000
@@ -7550,7 +7550,7 @@ _08118D50:
ldrsh r0, [r5, r1]
cmp r0, 0
bne _08118DC4
- ldr r1, _08118DB8 @ =0x02019000
+ ldr r1, _08118DB8 @ =gSharedMem + 0x19000
adds r2, r1, 0
adds r2, 0x7D
movs r0, 0xFF
@@ -7590,7 +7590,7 @@ _08118D50:
bl m4aSongNumStartOrChange
b _08118DDC
.align 2, 0
-_08118DB8: .4byte 0x02019000
+_08118DB8: .4byte gSharedMem + 0x19000
_08118DBC: .4byte 0xbf800000
_08118DC0: .4byte sub_8118834
_08118DC4:
@@ -7623,7 +7623,7 @@ sub_8118DE4: @ 8118DE4
adds r0, r7, 0
bl sub_81186B8
ldr r1, _08118E70 @ =gUnknown_083F8D90
- ldr r6, _08118E74 @ =0x02019000
+ ldr r6, _08118E74 @ =gSharedMem + 0x19000
movs r0, 0x7E
adds r0, r6
mov r8, r0
@@ -7676,7 +7676,7 @@ sub_8118DE4: @ 8118DE4
b _08118F74
.align 2, 0
_08118E70: .4byte gUnknown_083F8D90
-_08118E74: .4byte 0x02019000
+_08118E74: .4byte gSharedMem + 0x19000
_08118E78: .4byte sub_8118834
_08118E7C:
movs r0, 0x38
@@ -7738,7 +7738,7 @@ _08118EF4:
lsls r1, r2, 3
adds r0, 0x4
adds r1, r0
- ldr r2, _08118F24 @ =0x02019000
+ ldr r2, _08118F24 @ =gSharedMem + 0x19000
ldr r1, [r1]
ldr r0, [r2, 0x8]
ands r1, r0
@@ -7756,7 +7756,7 @@ _08118EF4:
.align 2, 0
_08118F1C: .4byte gUnknown_083F8DF4
_08118F20: .4byte gUnknown_083F8D90
-_08118F24: .4byte 0x02019000
+_08118F24: .4byte gSharedMem + 0x19000
_08118F28:
strh r1, [r7, 0x2E]
ldrb r1, [r2, 0x4]
@@ -7821,7 +7821,7 @@ sub_8118F8C: @ 8118F8C
push {r6,r7}
adds r6, r0, 0
bl sub_8118724
- ldr r5, _08119018 @ =0x02019000
+ ldr r5, _08119018 @ =gSharedMem + 0x19000
movs r0, 0x8C
adds r0, r5
mov r8, r0
@@ -7878,7 +7878,7 @@ _08118FEC:
str r0, [r6, 0x1C]
b _0811906E
.align 2, 0
-_08119018: .4byte 0x02019000
+_08119018: .4byte gSharedMem + 0x19000
_0811901C: .4byte 0x3f000000
_08119020: .4byte 0x00000000
_08119024: .4byte gUnknown_083F8DF4
@@ -7929,7 +7929,7 @@ sub_8119088: @ 8119088
push {r4-r7,lr}
adds r6, r0, 0
bl sub_8118724
- ldr r5, _08119120 @ =0x02019000
+ ldr r5, _08119120 @ =gSharedMem + 0x19000
adds r0, r5, 0
adds r0, 0x94
ldr r0, [r0]
@@ -7996,7 +7996,7 @@ _0811911A:
pop {r0}
bx r0
.align 2, 0
-_08119120: .4byte 0x02019000
+_08119120: .4byte gSharedMem + 0x19000
_08119124: .4byte 0x42200000
_08119128: .4byte 0x47800000
_0811912C: .4byte 0x40800000
@@ -8008,7 +8008,7 @@ sub_8119134: @ 8119134
push {r4-r7,lr}
adds r6, r0, 0
bl sub_8118724
- ldr r4, _081191DC @ =0x02019000
+ ldr r4, _081191DC @ =gSharedMem + 0x19000
adds r0, r4, 0
adds r0, 0x94
ldr r0, [r0]
@@ -8081,7 +8081,7 @@ _081191D4:
pop {r0}
bx r0
.align 2, 0
-_081191DC: .4byte 0x02019000
+_081191DC: .4byte gSharedMem + 0x19000
_081191E0: .4byte 0x42700000
_081191E4: .4byte 0x47800000
_081191E8: .4byte 0x41a00000
@@ -8133,7 +8133,7 @@ sub_8119224: @ 8119224
lsls r0, 16
lsrs r0, 16
mov r9, r0
- ldr r5, _081193BC @ =0x02019000
+ ldr r5, _081193BC @ =gSharedMem + 0x19000
ldr r0, _081193C0 @ =gSpriteTemplate_83FA50C
movs r2, 0xC
negs r2, r2
@@ -8318,7 +8318,7 @@ _081192BE:
bx r0
.align 2, 0
_081193B8: .4byte gUnknown_083FA60E
-_081193BC: .4byte 0x02019000
+_081193BC: .4byte gSharedMem + 0x19000
_081193C0: .4byte gSpriteTemplate_83FA50C
_081193C4: .4byte gSpriteTemplate_83FA5C0
_081193C8: .4byte gSprites
@@ -8360,7 +8360,7 @@ sub_81193D4: @ 81193D4
ldrsh r2, [r2, r3]
movs r3, 0x32
bl CreateSprite
- ldr r6, _0811951C @ =0x02019000
+ ldr r6, _0811951C @ =gSharedMem + 0x19000
adds r1, r6, 0
adds r1, 0x73
strb r0, [r1]
@@ -8487,7 +8487,7 @@ _081194A2:
.align 2, 0
_08119514: .4byte gUnknown_083FA616
_08119518: .4byte gSpriteTemplate_83FA524
-_0811951C: .4byte 0x02019000
+_0811951C: .4byte gSharedMem + 0x19000
_08119520: .4byte gSprites
_08119524: .4byte gSpriteTemplate_83FA5F0
_08119528: .4byte gUnknown_083F8DF4
@@ -8516,7 +8516,7 @@ sub_811952C: @ 811952C
lsls r0, 16
lsrs r0, 16
str r0, [sp, 0x10]
- ldr r7, _08119610 @ =0x02019000
+ ldr r7, _08119610 @ =gSharedMem + 0x19000
adds r0, r7, 0
adds r0, 0x7D
movs r6, 0x1
@@ -8590,7 +8590,7 @@ _081195D4:
cmp r5, 0x3
bls _081195C8
_081195EA:
- ldr r0, _08119610 @ =0x02019000
+ ldr r0, _08119610 @ =gSharedMem + 0x19000
ldrb r1, [r0, 0x3]
movs r0, 0x1F
ands r0, r1
@@ -8608,14 +8608,14 @@ _081195EA:
bl PlayCry1
b _08119670
.align 2, 0
-_08119610: .4byte 0x02019000
+_08119610: .4byte gSharedMem + 0x19000
_08119614: .4byte 0x00000000
_08119618: .4byte gUnknown_083F8DF4
_0811961C:
movs r0, 0x1
mov r3, r8
strh r0, [r3, 0x2E]
- ldr r2, _08119634 @ =0x02019000
+ ldr r2, _08119634 @ =gSharedMem + 0x19000
ldrb r1, [r2, 0x3]
subs r0, 0x21
ands r0, r1
@@ -8624,12 +8624,12 @@ _0811961C:
strb r0, [r2, 0x3]
b _081195EA
.align 2, 0
-_08119634: .4byte 0x02019000
+_08119634: .4byte gSharedMem + 0x19000
_08119638:
lsrs r0, r5, 1
mov r1, r8
strh r0, [r1, 0x2E]
- ldr r3, _08119654 @ =0x02019000
+ ldr r3, _08119654 @ =gSharedMem + 0x19000
movs r1, 0x1
ands r1, r5
ldrb r2, [r3, 0x3]
@@ -8640,7 +8640,7 @@ _08119638:
strb r0, [r3, 0x3]
b _081195EA
.align 2, 0
-_08119654: .4byte 0x02019000
+_08119654: .4byte gSharedMem + 0x19000
_08119658:
movs r0, 0x98
lsls r0, 1
@@ -8655,7 +8655,7 @@ _08119664:
bl PlayCry1
_08119670:
movs r5, 0x2
- ldr r4, _081196A0 @ =0x02019000
+ ldr r4, _081196A0 @ =gSharedMem + 0x19000
adds r0, r4, 0
adds r0, 0x7F
ldrb r0, [r0]
@@ -8678,7 +8678,7 @@ _08119670:
adds r0, 0x6
b _081196A8
.align 2, 0
-_081196A0: .4byte 0x02019000
+_081196A0: .4byte gSharedMem + 0x19000
_081196A4:
mov r2, r9
adds r0, r2, r5
@@ -8688,7 +8688,7 @@ _081196A8:
mov r9, r0
cmp r5, r9
bcs _0811970E
- ldr r6, _08119734 @ =0x02019000
+ ldr r6, _08119734 @ =gSharedMem + 0x19000
ldr r7, _08119738 @ =gUnknown_083F8C00 + 0xC
_081196B6:
lsls r0, r3, 3
@@ -8712,7 +8712,7 @@ _081196B6:
ldrb r0, [r6, 0x1A]
lsls r0, 28
lsrs r0, 28
- ldr r1, _08119740 @ =0x0201901b
+ ldr r1, _08119740 @ =gSharedMem + 0x1901B
adds r0, r1
ldrb r1, [r0]
lsls r0, r1, 2
@@ -8756,10 +8756,10 @@ _0811970E:
strh r2, [r0, 0x3C]
b _08119766
.align 2, 0
-_08119734: .4byte 0x02019000
+_08119734: .4byte gSharedMem + 0x19000
_08119738: .4byte gUnknown_083F8C00 + 0xC
_0811973C: .4byte gUnknown_083F8D90 + 0x4
-_08119740: .4byte 0x0201901b
+_08119740: .4byte gSharedMem + 0x1901B
_08119744:
ldr r0, [sp, 0x10]
mov r1, r10
@@ -8815,7 +8815,7 @@ sub_8119780: @ 8119780
negs r1, r1
cmp r0, r1
bge _081197CA
- ldr r4, _081197D0 @ =0x02019000
+ ldr r4, _081197D0 @ =gSharedMem + 0x19000
ldrb r1, [r4, 0x3]
movs r0, 0x40
ands r0, r1
@@ -8837,7 +8837,7 @@ _081197CA:
pop {r0}
bx r0
.align 2, 0
-_081197D0: .4byte 0x02019000
+_081197D0: .4byte gSharedMem + 0x19000
_081197D4: .4byte gUnknown_083FA61E
thumb_func_end sub_8119780
@@ -8913,7 +8913,7 @@ _0811985C:
movs r0, 0
strh r0, [r1]
ldr r2, _08119890 @ =gSprites
- ldr r0, _08119894 @ =0x02019000
+ ldr r0, _08119894 @ =gSharedMem + 0x19000
adds r0, 0x73
ldrb r1, [r0]
lsls r0, r1, 4
@@ -8936,7 +8936,7 @@ _08119884:
.align 2, 0
_0811988C: .4byte gSpriteCoordOffsetY
_08119890: .4byte gSprites
-_08119894: .4byte 0x02019000
+_08119894: .4byte gSharedMem + 0x19000
thumb_func_end sub_81197D8
thumb_func_start sub_8119898
@@ -8956,7 +8956,7 @@ sub_8119898: @ 8119898
bl __mulsf3
bl __fixsfsi
strh r0, [r5, 0x26]
- ldr r3, _0811994C @ =0x02019000
+ ldr r3, _0811994C @ =gSharedMem + 0x19000
ldr r2, _08119950 @ =gUnknown_083FA61E
ldrb r0, [r3, 0x1]
subs r0, 0x1
@@ -9027,7 +9027,7 @@ _08119940:
bx r0
.align 2, 0
_08119948: .4byte 0x3d1fbe77
-_0811994C: .4byte 0x02019000
+_0811994C: .4byte gSharedMem + 0x19000
_08119950: .4byte gUnknown_083FA61E
_08119954: .4byte sub_8119780
_08119958: .4byte gSprites
@@ -9043,7 +9043,7 @@ sub_8119964: @ 8119964
ldrsh r0, [r4, r1]
cmp r0, 0
bne _081199E4
- ldr r3, _08119990 @ =0x02019000
+ ldr r3, _08119990 @ =gSharedMem + 0x19000
ldr r1, [r3, 0x38]
movs r2, 0x2E
ldrsh r0, [r1, r2]
@@ -9059,7 +9059,7 @@ sub_8119964: @ 8119964
ldrh r0, [r0, 0x8]
b _081199AA
.align 2, 0
-_08119990: .4byte 0x02019000
+_08119990: .4byte gSharedMem + 0x19000
_08119994: .4byte gUnknown_083F8DF4
_08119998:
movs r0, 0x34
@@ -9086,7 +9086,7 @@ _081199AA:
strh r0, [r4, 0x3C]
movs r0, 0x2B
bl m4aSongNumStart
- ldr r1, _081199DC @ =0x02019000
+ ldr r1, _081199DC @ =gSharedMem + 0x19000
movs r0, 0x1
strb r0, [r1, 0x1]
ldr r0, _081199E0 @ =gUnknown_083FA61E
@@ -9095,10 +9095,10 @@ _081199AA:
b _08119A78
.align 2, 0
_081199D8: .4byte gUnknown_083F8DF4
-_081199DC: .4byte 0x02019000
+_081199DC: .4byte gSharedMem + 0x19000
_081199E0: .4byte gUnknown_083FA61E
_081199E4:
- ldr r3, _08119A20 @ =0x02019000
+ ldr r3, _08119A20 @ =gSharedMem + 0x19000
ldr r2, _08119A24 @ =gUnknown_083FA61E
ldrb r0, [r3, 0x1]
subs r0, 0x1
@@ -9130,7 +9130,7 @@ _08119A04:
ldrh r0, [r0, 0xA]
b _08119A3E
.align 2, 0
-_08119A20: .4byte 0x02019000
+_08119A20: .4byte gSharedMem + 0x19000
_08119A24: .4byte gUnknown_083FA61E
_08119A28: .4byte gUnknown_083F8DF4
_08119A2C:
@@ -9234,7 +9234,7 @@ _08119AC4:
adds r0, r4, 0
bl DestroySprite
ldr r5, _08119B1C @ =gSprites
- ldr r4, _08119B20 @ =0x02019000
+ ldr r4, _08119B20 @ =gSharedMem + 0x19000
adds r4, 0x74
ldrb r1, [r4]
lsls r0, r1, 4
@@ -9258,7 +9258,7 @@ _08119B12:
.align 2, 0
_08119B18: .4byte SpriteCallbackDummy
_08119B1C: .4byte gSprites
-_08119B20: .4byte 0x02019000
+_08119B20: .4byte gSharedMem + 0x19000
thumb_func_end sub_8119AAC
thumb_func_start sub_8119B24
@@ -9317,7 +9317,7 @@ _08119B7C:
_08119B84:
movs r0, 0x2B
bl m4aSongNumStart
- ldr r0, _08119BC0 @ =0x02019000
+ ldr r0, _08119BC0 @ =gSharedMem + 0x19000
ldr r0, [r0, 0x38]
ldrh r1, [r0, 0x2E]
adds r1, 0x4
@@ -9344,7 +9344,7 @@ _08119BB8:
pop {r0}
bx r0
.align 2, 0
-_08119BC0: .4byte 0x02019000
+_08119BC0: .4byte gSharedMem + 0x19000
_08119BC4: .4byte sub_8119AAC
_08119BC8: .4byte gSprites
thumb_func_end sub_8119B24
@@ -9370,7 +9370,7 @@ sub_8119BCC: @ 8119BCC
asrs r0, 16
cmp r0, 0x7
ble _08119C5C
- ldr r0, _08119C4C @ =0x02019000
+ ldr r0, _08119C4C @ =gSharedMem + 0x19000
ldr r0, [r0, 0x38]
movs r1, 0x2E
ldrsh r0, [r0, r1]
@@ -9409,7 +9409,7 @@ sub_8119BCC: @ 8119BCC
.align 2, 0
_08119C44: .4byte gUnknown_083FA64A
_08119C48: .4byte gUnknown_083FA64C
-_08119C4C: .4byte 0x02019000
+_08119C4C: .4byte gSharedMem + 0x19000
_08119C50: .4byte gMPlay_SE1
_08119C54: .4byte 0x0000ffff
_08119C58: .4byte gMPlay_SE2
@@ -9417,7 +9417,7 @@ _08119C5C:
lsls r0, r1, 16
cmp r0, 0
blt _08119CAC
- ldr r0, _08119CA8 @ =0x02019000
+ ldr r0, _08119CA8 @ =gSharedMem + 0x19000
ldr r0, [r0, 0x38]
movs r2, 0x2E
ldrsh r0, [r0, r2]
@@ -9452,11 +9452,11 @@ _08119C5C:
strh r0, [r4, 0x22]
b _08119CF6
.align 2, 0
-_08119CA8: .4byte 0x02019000
+_08119CA8: .4byte gSharedMem + 0x19000
_08119CAC:
movs r0, 0x5E
bl m4aSongNumStartOrChange
- ldr r0, _08119CCC @ =0x02019000
+ ldr r0, _08119CCC @ =gSharedMem + 0x19000
ldr r0, [r0, 0x38]
movs r2, 0x2E
ldrsh r0, [r0, r2]
@@ -9468,7 +9468,7 @@ _08119CAC:
bl PlayCry1
b _08119CDC
.align 2, 0
-_08119CCC: .4byte 0x02019000
+_08119CCC: .4byte gSharedMem + 0x19000
_08119CD0:
movs r0, 0x98
lsls r0, 1
@@ -9476,7 +9476,7 @@ _08119CD0:
negs r1, r1
bl PlayCry1
_08119CDC:
- ldr r0, _08119D00 @ =0x02019000
+ ldr r0, _08119D00 @ =gSharedMem + 0x19000
ldr r0, [r0, 0x38]
ldrh r1, [r0, 0x2E]
adds r1, 0x2
@@ -9494,7 +9494,7 @@ _08119CF6:
pop {r0}
bx r0
.align 2, 0
-_08119D00: .4byte 0x02019000
+_08119D00: .4byte gSharedMem + 0x19000
_08119D04: .4byte sub_8119B24
thumb_func_end sub_8119BCC
@@ -9513,7 +9513,7 @@ sub_8119D08: @ 8119D08
lsls r0, 16
cmp r0, 0
blt _08119D70
- ldr r0, _08119D68 @ =0x02019000
+ ldr r0, _08119D68 @ =gSharedMem + 0x19000
ldr r0, [r0, 0x38]
movs r1, 0x2E
ldrsh r0, [r0, r1]
@@ -9547,7 +9547,7 @@ sub_8119D08: @ 8119D08
b _08119D74
.align 2, 0
_08119D64: .4byte gUnknown_083FA64A
-_08119D68: .4byte 0x02019000
+_08119D68: .4byte gSharedMem + 0x19000
_08119D6C: .4byte gSprites
_08119D70:
ldr r0, _08119D7C @ =sub_8119A90
@@ -9565,7 +9565,7 @@ _08119D7C: .4byte sub_8119A90
sub_8119D80: @ 8119D80
push {r4,lr}
adds r4, r0, 0
- ldr r3, _08119DB8 @ =0x02019000
+ ldr r3, _08119DB8 @ =gSharedMem + 0x19000
ldr r1, [r3, 0x38]
movs r2, 0x2E
ldrsh r0, [r1, r2]
@@ -9592,7 +9592,7 @@ sub_8119D80: @ 8119D80
movs r3, 0x34
b _08119DEE
.align 2, 0
-_08119DB8: .4byte 0x02019000
+_08119DB8: .4byte gSharedMem + 0x19000
_08119DBC: .4byte gUnknown_083F8DF4
_08119DC0: .4byte gSprites
_08119DC4:
diff --git a/asm/slot_machine.s b/asm/slot_machine.s
index bebe3633e..1ae5b718d 100644
--- a/asm/slot_machine.s
+++ b/asm/slot_machine.s
@@ -108,7 +108,7 @@ sub_810196C: @ 810196C
bl ProcessSpriteCopyRequests
bl TransferPlttBuffer
ldr r1, _081019A8 @ =REG_WIN0H
- ldr r2, _081019AC @ =0x02000000
+ ldr r2, _081019AC @ =gSharedMem
adds r0, r2, 0
adds r0, 0x58
ldrh r0, [r0]
@@ -132,7 +132,7 @@ sub_810196C: @ 810196C
bx r0
.align 2, 0
_081019A8: .4byte REG_WIN0H
-_081019AC: .4byte 0x02000000
+_081019AC: .4byte gSharedMem
thumb_func_end sub_810196C
thumb_func_start sub_81019B0
@@ -177,7 +177,7 @@ sub_81019EC: @ 81019EC
lsls r2, 3
ldr r0, _08101A1C @ =gTasks
adds r2, r0
- ldr r1, _08101A20 @ =0x02000000
+ ldr r1, _08101A20 @ =gSharedMem
ldrh r0, [r2, 0x8]
strb r0, [r1, 0x1]
adds r2, 0xA
@@ -189,7 +189,7 @@ sub_81019EC: @ 81019EC
.align 2, 0
_08101A18: .4byte nullsub_67
_08101A1C: .4byte gTasks
-_08101A20: .4byte 0x02000000
+_08101A20: .4byte gSharedMem
thumb_func_end sub_81019EC
thumb_func_start nullsub_67
@@ -394,7 +394,7 @@ sub_8101BA4: @ 8101BA4
mov r6, r8
push {r6,r7}
bl sub_81019EC
- ldr r5, _08101C74 @ =0x02000000
+ ldr r5, _08101C74 @ =gSharedMem
movs r4, 0
strb r4, [r5]
strb r4, [r5, 0x2]
@@ -490,7 +490,7 @@ _08101C14:
pop {r0}
bx r0
.align 2, 0
-_08101C74: .4byte 0x02000000
+_08101C74: .4byte gSharedMem
_08101C78: .4byte gSaveBlock1
_08101C7C: .4byte 0x00000494
_08101C80: .4byte gUnknown_083ECCF8
@@ -585,7 +585,7 @@ sub_8101D24: @ 8101D24
lsls r1, r0, 2
adds r1, r0
lsls r4, r1, 3
- ldr r6, _08101D54 @ =0x02000000
+ ldr r6, _08101D54 @ =gSharedMem
ldr r5, _08101D58 @ =gTasks
_08101D36:
ldrb r0, [r6]
@@ -602,7 +602,7 @@ _08101D36:
bx r0
.align 2, 0
_08101D50: .4byte gUnknown_083ECAAC
-_08101D54: .4byte 0x02000000
+_08101D54: .4byte gSharedMem
_08101D58: .4byte gTasks
thumb_func_end sub_8101D24
@@ -617,7 +617,7 @@ sub_8101D5C: @ 8101D5C
movs r2, 0x10
movs r3, 0
bl BeginNormalPaletteFade
- ldr r4, _08101D88 @ =0x02000000
+ ldr r4, _08101D88 @ =gSharedMem
ldrb r0, [r4, 0x2]
bl sub_810423C
ldrb r0, [r4]
@@ -629,7 +629,7 @@ sub_8101D5C: @ 8101D5C
pop {r1}
bx r1
.align 2, 0
-_08101D88: .4byte 0x02000000
+_08101D88: .4byte gSharedMem
thumb_func_end sub_8101D5C
thumb_func_start sub_8101D8C
@@ -641,7 +641,7 @@ sub_8101D8C: @ 8101D8C
ands r0, r1
cmp r0, 0
bne _08101DA2
- ldr r1, _08101DAC @ =0x02000000
+ ldr r1, _08101DAC @ =gSharedMem
ldrb r0, [r1]
adds r0, 0x1
strb r0, [r1]
@@ -651,13 +651,13 @@ _08101DA2:
bx r1
.align 2, 0
_08101DA8: .4byte gPaletteFade
-_08101DAC: .4byte 0x02000000
+_08101DAC: .4byte gSharedMem
thumb_func_end sub_8101D8C
thumb_func_start sub_8101DB0
sub_8101DB0: @ 8101DB0
push {lr}
- ldr r2, _08101DD8 @ =0x02000000
+ ldr r2, _08101DD8 @ =gSharedMem
movs r0, 0
strh r0, [r2, 0xE]
strh r0, [r2, 0x12]
@@ -676,7 +676,7 @@ sub_8101DB0: @ 8101DB0
strb r0, [r2]
b _08101DEC
.align 2, 0
-_08101DD8: .4byte 0x02000000
+_08101DD8: .4byte gSharedMem
_08101DDC:
ldrb r0, [r2, 0xA]
cmp r0, 0
@@ -698,7 +698,7 @@ sub_8101DF4: @ 8101DF4
lsls r0, 24
cmp r0, 0
beq _08101E06
- ldr r1, _08101E0C @ =0x02000000
+ ldr r1, _08101E0C @ =gSharedMem
movs r0, 0x4
strb r0, [r1]
_08101E06:
@@ -706,7 +706,7 @@ _08101E06:
pop {r1}
bx r1
.align 2, 0
-_08101E0C: .4byte 0x02000000
+_08101E0C: .4byte gSharedMem
thumb_func_end sub_8101DF4
thumb_func_start sub_8101E10
@@ -714,7 +714,7 @@ sub_8101E10: @ 8101E10
push {lr}
movs r0, 0
bl sub_8104CAC
- ldr r2, _08101E34 @ =0x02000000
+ ldr r2, _08101E34 @ =gSharedMem
movs r0, 0x5
strb r0, [r2]
movs r0, 0xC
@@ -729,7 +729,7 @@ _08101E2C:
pop {r1}
bx r1
.align 2, 0
-_08101E34: .4byte 0x02000000
+_08101E34: .4byte gSharedMem
_08101E38: .4byte 0x0000270e
thumb_func_end sub_8101E10
@@ -744,20 +744,20 @@ sub_8101E3C: @ 8101E3C
beq _08101E60
movs r0, 0
bl sub_8104AB8
- ldr r1, _08101E5C @ =0x02000000
+ ldr r1, _08101E5C @ =gSharedMem
movs r0, 0x8
strb r0, [r1]
b _08101F1A
.align 2, 0
_08101E58: .4byte gMain
-_08101E5C: .4byte 0x02000000
+_08101E5C: .4byte gSharedMem
_08101E60:
movs r0, 0x80
lsls r0, 1
ands r0, r1
cmp r0, 0
beq _08101EC2
- ldr r2, _08101EB8 @ =0x02000000
+ ldr r2, _08101EB8 @ =gSharedMem
movs r1, 0xC
ldrsh r0, [r2, r1]
subs r0, 0x3
@@ -783,7 +783,7 @@ _08101E84:
cmp r0, 0x2
ble _08101E84
_08101E9C:
- ldr r1, _08101EB8 @ =0x02000000
+ ldr r1, _08101EB8 @ =gSharedMem
ldrh r0, [r1, 0xC]
subs r0, 0x3
ldrh r3, [r1, 0x12]
@@ -797,7 +797,7 @@ _08101E9C:
bl PlaySE
b _08101F1A
.align 2, 0
-_08101EB8: .4byte 0x02000000
+_08101EB8: .4byte gSharedMem
_08101EBC:
movs r0, 0x6
strb r0, [r2]
@@ -807,7 +807,7 @@ _08101EC2:
ands r0, r1
cmp r0, 0
beq _08101EEC
- ldr r4, _08101F24 @ =0x02000000
+ ldr r4, _08101F24 @ =gSharedMem
movs r1, 0xC
ldrsh r0, [r4, r1]
cmp r0, 0
@@ -823,7 +823,7 @@ _08101EC2:
adds r0, 0x1
strh r0, [r4, 0x12]
_08101EEC:
- ldr r0, _08101F24 @ =0x02000000
+ ldr r0, _08101F24 @ =gSharedMem
movs r2, 0x12
ldrsh r1, [r0, r2]
ldr r2, _08101F28 @ =gMain
@@ -854,7 +854,7 @@ _08101F1A:
pop {r1}
bx r1
.align 2, 0
-_08101F24: .4byte 0x02000000
+_08101F24: .4byte gSharedMem
_08101F28: .4byte gMain
thumb_func_end sub_8101E3C
@@ -877,7 +877,7 @@ sub_8101F44: @ 8101F44
push {lr}
ldr r0, _08101F58 @ =gOtherText_DontHaveThreeCoins
bl sub_8101F2C
- ldr r1, _08101F5C @ =0x02000000
+ ldr r1, _08101F5C @ =gSharedMem
movs r0, 0x7
strb r0, [r1]
movs r0, 0
@@ -885,7 +885,7 @@ sub_8101F44: @ 8101F44
bx r1
.align 2, 0
_08101F58: .4byte gOtherText_DontHaveThreeCoins
-_08101F5C: .4byte 0x02000000
+_08101F5C: .4byte gSharedMem
thumb_func_end sub_8101F44
thumb_func_start sub_8101F60
@@ -898,7 +898,7 @@ sub_8101F60: @ 8101F60
cmp r0, 0
beq _08101F78
bl MenuZeroFillScreen
- ldr r1, _08101F84 @ =0x02000000
+ ldr r1, _08101F84 @ =gSharedMem
movs r0, 0x5
strb r0, [r1]
_08101F78:
@@ -907,7 +907,7 @@ _08101F78:
bx r1
.align 2, 0
_08101F80: .4byte gMain
-_08101F84: .4byte 0x02000000
+_08101F84: .4byte gSharedMem
thumb_func_end sub_8101F60
thumb_func_start sub_8101F88
@@ -917,7 +917,7 @@ sub_8101F88: @ 8101F88
lsls r0, 24
cmp r0, 0
beq _08101F9A
- ldr r1, _08101FA0 @ =0x02000000
+ ldr r1, _08101FA0 @ =gSharedMem
movs r0, 0x5
strb r0, [r1]
_08101F9A:
@@ -925,7 +925,7 @@ _08101F9A:
pop {r1}
bx r1
.align 2, 0
-_08101FA0: .4byte 0x02000000
+_08101FA0: .4byte gSharedMem
thumb_func_end sub_8101F88
thumb_func_start sub_8101FA4
@@ -942,7 +942,7 @@ sub_8101FA4: @ 8101FA4
bl sub_8102DEC
movs r0, 0
strh r0, [r4, 0x8]
- ldr r4, _08101FDC @ =0x02000000
+ ldr r4, _08101FDC @ =gSharedMem
ldrb r1, [r4, 0x4]
movs r0, 0x20
ands r0, r1
@@ -952,14 +952,14 @@ sub_8101FA4: @ 8101FA4
movs r0, 0xA
b _08101FE8
.align 2, 0
-_08101FDC: .4byte 0x02000000
+_08101FDC: .4byte gSharedMem
_08101FE0:
movs r0, 0x1
bl sub_8104CAC
movs r0, 0xB
_08101FE8:
strb r0, [r4]
- ldr r4, _08102004 @ =0x02000000
+ ldr r4, _08102004 @ =gSharedMem
movs r0, 0x8
strh r0, [r4, 0x1A]
ldrb r0, [r4, 0xA]
@@ -973,7 +973,7 @@ _08101FFC:
pop {r1}
bx r1
.align 2, 0
-_08102004: .4byte 0x02000000
+_08102004: .4byte gSharedMem
thumb_func_end sub_8101FA4
thumb_func_start sub_8102008
@@ -985,7 +985,7 @@ sub_8102008: @ 8102008
beq _08102028
movs r0, 0x1
bl sub_8104CAC
- ldr r1, _08102030 @ =0x02000000
+ ldr r1, _08102030 @ =gSharedMem
ldrb r2, [r1, 0x4]
movs r0, 0xDF
ands r0, r2
@@ -997,7 +997,7 @@ _08102028:
pop {r1}
bx r1
.align 2, 0
-_08102030: .4byte 0x02000000
+_08102030: .4byte gSharedMem
thumb_func_end sub_8102008
thumb_func_start sub_8102034
@@ -1011,7 +1011,7 @@ sub_8102034: @ 8102034
cmp r1, 0x1D
ble _0810204E
bl sub_81024F0
- ldr r1, _08102054 @ =0x02000000
+ ldr r1, _08102054 @ =gSharedMem
movs r0, 0xC
strb r0, [r1]
_0810204E:
@@ -1019,7 +1019,7 @@ _0810204E:
pop {r1}
bx r1
.align 2, 0
-_08102054: .4byte 0x02000000
+_08102054: .4byte gSharedMem
thumb_func_end sub_8102034
thumb_func_start sub_8102058
@@ -1033,7 +1033,7 @@ sub_8102058: @ 8102058
beq _0810207E
movs r0, 0x18
bl PlaySE
- ldr r4, _0810208C @ =0x02000000
+ ldr r4, _0810208C @ =gSharedMem
ldrb r0, [r4, 0x18]
bl sub_8102E1C
ldrb r0, [r4, 0x18]
@@ -1047,13 +1047,13 @@ _0810207E:
bx r1
.align 2, 0
_08102088: .4byte gMain
-_0810208C: .4byte 0x02000000
+_0810208C: .4byte gSharedMem
thumb_func_end sub_8102058
thumb_func_start sub_8102090
sub_8102090: @ 8102090
push {r4,lr}
- ldr r4, _081020BC @ =0x02000000
+ ldr r4, _081020BC @ =gSharedMem
ldrb r0, [r4, 0x18]
bl sub_8102E40
lsls r0, 24
@@ -1074,7 +1074,7 @@ _081020B6:
movs r0, 0x1
b _081020C2
.align 2, 0
-_081020BC: .4byte 0x02000000
+_081020BC: .4byte gSharedMem
_081020C0:
movs r0, 0
_081020C2:
@@ -1086,7 +1086,7 @@ _081020C2:
thumb_func_start sub_81020C8
sub_81020C8: @ 81020C8
push {r4,lr}
- ldr r4, _08102128 @ =0x02000000
+ ldr r4, _08102128 @ =gSharedMem
ldrb r1, [r4, 0x4]
movs r0, 0xC0
ands r0, r1
@@ -1130,7 +1130,7 @@ _0810210C:
bl sub_8104CAC
b _0810215A
.align 2, 0
-_08102128: .4byte 0x02000000
+_08102128: .4byte gSharedMem
_0810212C: .4byte 0x00000185
_08102130:
movs r0, 0x40
@@ -1151,7 +1151,7 @@ _0810214C:
movs r0, 0x2
bl sub_8104CAC
_0810215A:
- ldr r1, _081021B0 @ =0x02000000
+ ldr r1, _081021B0 @ =gSharedMem
ldrh r3, [r1, 0x8]
movs r0, 0xE0
lsls r0, 1
@@ -1194,7 +1194,7 @@ _08102192:
bl sub_8104064
b _081021D2
.align 2, 0
-_081021B0: .4byte 0x02000000
+_081021B0: .4byte gSharedMem
_081021B4:
movs r0, 0x3
bl sub_8104CAC
@@ -1226,7 +1226,7 @@ sub_81021E0: @ 81021E0
lsls r0, 24
cmp r0, 0
beq _081021F2
- ldr r1, _081021F8 @ =0x02000000
+ ldr r1, _081021F8 @ =gSharedMem
movs r0, 0x10
strb r0, [r1]
_081021F2:
@@ -1234,7 +1234,7 @@ _081021F2:
pop {r1}
bx r1
.align 2, 0
-_081021F8: .4byte 0x02000000
+_081021F8: .4byte gSharedMem
thumb_func_end sub_81021E0
thumb_func_start sub_81021FC
@@ -1244,7 +1244,7 @@ sub_81021FC: @ 81021FC
lsls r0, 24
cmp r0, 0
beq _08102256
- ldr r4, _08102260 @ =0x02000000
+ ldr r4, _08102260 @ =gSharedMem
movs r0, 0x13
strb r0, [r4]
ldrh r1, [r4, 0x8]
@@ -1290,7 +1290,7 @@ _08102256:
pop {r1}
bx r1
.align 2, 0
-_08102260: .4byte 0x02000000
+_08102260: .4byte gSharedMem
thumb_func_end sub_81021FC
thumb_func_start sub_8102264
@@ -1300,7 +1300,7 @@ sub_8102264: @ 8102264
lsls r0, 24
cmp r0, 0
bne _08102294
- ldr r4, _0810229C @ =0x02000000
+ ldr r4, _0810229C @ =gSharedMem
movs r0, 0x13
strb r0, [r4]
ldrh r1, [r4, 0x8]
@@ -1323,7 +1323,7 @@ _08102294:
pop {r1}
bx r1
.align 2, 0
-_0810229C: .4byte 0x02000000
+_0810229C: .4byte gSharedMem
thumb_func_end sub_8102264
thumb_func_start sub_81022A0
@@ -1333,7 +1333,7 @@ sub_81022A0: @ 81022A0
lsls r0, 24
cmp r0, 0
beq _081022C0
- ldr r2, _081022C8 @ =0x02000000
+ ldr r2, _081022C8 @ =gSharedMem
movs r0, 0x13
strb r0, [r2]
ldrh r1, [r2, 0x8]
@@ -1348,7 +1348,7 @@ _081022C0:
pop {r1}
bx r1
.align 2, 0
-_081022C8: .4byte 0x02000000
+_081022C8: .4byte gSharedMem
thumb_func_end sub_81022A0
thumb_func_start sub_81022CC
@@ -1360,14 +1360,14 @@ sub_81022CC: @ 81022CC
bl sub_8103D8C
movs r0, 0x2
bl sub_8103D8C
- ldr r1, _081022EC @ =0x02000000
+ ldr r1, _081022EC @ =gSharedMem
movs r0, 0x2
strb r0, [r1]
movs r0, 0
pop {r1}
bx r1
.align 2, 0
-_081022EC: .4byte 0x02000000
+_081022EC: .4byte gSharedMem
thumb_func_end sub_81022CC
thumb_func_start sub_81022F0
@@ -1383,7 +1383,7 @@ sub_81022F0: @ 81022F0
ble _0810230C
movs r0, 0
strh r0, [r1, 0xA]
- ldr r1, _08102314 @ =0x02000000
+ ldr r1, _08102314 @ =gSharedMem
movs r0, 0x13
strb r0, [r1]
_0810230C:
@@ -1391,7 +1391,7 @@ _0810230C:
pop {r1}
bx r1
.align 2, 0
-_08102314: .4byte 0x02000000
+_08102314: .4byte gSharedMem
thumb_func_end sub_81022F0
thumb_func_start sub_8102318
@@ -1404,7 +1404,7 @@ sub_8102318: @ 8102318
movs r2, 0x1
bl DisplayYesNoMenu
bl sub_814AB84
- ldr r1, _08102340 @ =0x02000000
+ ldr r1, _08102340 @ =gSharedMem
movs r0, 0x16
strb r0, [r1]
movs r0, 0
@@ -1412,7 +1412,7 @@ sub_8102318: @ 8102318
bx r1
.align 2, 0
_0810233C: .4byte gOtherText_QuitGamePrompt
-_08102340: .4byte 0x02000000
+_08102340: .4byte gSharedMem
thumb_func_end sub_8102318
thumb_func_start sub_8102344
@@ -1430,7 +1430,7 @@ sub_8102344: @ 8102344
bl sub_8103D8C
movs r0, 0x2
bl sub_8103D8C
- ldr r0, _08102378 @ =0x02000000
+ ldr r0, _08102378 @ =gSharedMem
ldrh r1, [r0, 0x12]
ldrh r2, [r0, 0xC]
adds r1, r2
@@ -1439,7 +1439,7 @@ sub_8102344: @ 8102344
strb r1, [r0]
b _08102392
.align 2, 0
-_08102378: .4byte 0x02000000
+_08102378: .4byte gSharedMem
_0810237C:
cmp r1, 0x1
beq _08102388
@@ -1449,7 +1449,7 @@ _0810237C:
bne _08102392
_08102388:
bl MenuZeroFillScreen
- ldr r1, _08102398 @ =0x02000000
+ ldr r1, _08102398 @ =gSharedMem
movs r0, 0x5
strb r0, [r1]
_08102392:
@@ -1457,7 +1457,7 @@ _08102392:
pop {r1}
bx r1
.align 2, 0
-_08102398: .4byte 0x02000000
+_08102398: .4byte gSharedMem
thumb_func_end sub_8102344
thumb_func_start sub_810239C
@@ -1465,7 +1465,7 @@ sub_810239C: @ 810239C
push {lr}
ldr r0, _081023B0 @ =gOtherText_MaxCoins
bl sub_8101F2C
- ldr r1, _081023B4 @ =0x02000000
+ ldr r1, _081023B4 @ =gSharedMem
movs r0, 0x18
strb r0, [r1]
movs r0, 0
@@ -1473,7 +1473,7 @@ sub_810239C: @ 810239C
bx r1
.align 2, 0
_081023B0: .4byte gOtherText_MaxCoins
-_081023B4: .4byte 0x02000000
+_081023B4: .4byte gSharedMem
thumb_func_end sub_810239C
thumb_func_start sub_81023B8
@@ -1486,7 +1486,7 @@ sub_81023B8: @ 81023B8
cmp r0, 0
beq _081023D0
bl MenuZeroFillScreen
- ldr r1, _081023DC @ =0x02000000
+ ldr r1, _081023DC @ =gSharedMem
movs r0, 0x5
strb r0, [r1]
_081023D0:
@@ -1495,7 +1495,7 @@ _081023D0:
bx r1
.align 2, 0
_081023D8: .4byte gMain
-_081023DC: .4byte 0x02000000
+_081023DC: .4byte gSharedMem
thumb_func_end sub_81023B8
thumb_func_start sub_81023E0
@@ -1503,7 +1503,7 @@ sub_81023E0: @ 81023E0
push {lr}
ldr r0, _081023F4 @ =gOtherText_OutOfCoins
bl sub_8101F2C
- ldr r1, _081023F8 @ =0x02000000
+ ldr r1, _081023F8 @ =gSharedMem
movs r0, 0x1A
strb r0, [r1]
movs r0, 0
@@ -1511,7 +1511,7 @@ sub_81023E0: @ 81023E0
bx r1
.align 2, 0
_081023F4: .4byte gOtherText_OutOfCoins
-_081023F8: .4byte 0x02000000
+_081023F8: .4byte gSharedMem
thumb_func_end sub_81023E0
thumb_func_start sub_81023FC
@@ -1524,7 +1524,7 @@ sub_81023FC: @ 81023FC
cmp r0, 0
beq _08102414
bl MenuZeroFillScreen
- ldr r1, _08102420 @ =0x02000000
+ ldr r1, _08102420 @ =gSharedMem
movs r0, 0x1B
strb r0, [r1]
_08102414:
@@ -1533,7 +1533,7 @@ _08102414:
bx r1
.align 2, 0
_0810241C: .4byte gMain
-_08102420: .4byte 0x02000000
+_08102420: .4byte gSharedMem
thumb_func_end sub_81023FC
thumb_func_start sub_8102424
@@ -1541,7 +1541,7 @@ sub_8102424: @ 8102424
push {r4,lr}
sub sp, 0x4
ldr r0, _08102454 @ =gSaveBlock1
- ldr r4, _08102458 @ =0x02000000
+ ldr r4, _08102458 @ =gSharedMem
ldrh r1, [r4, 0xC]
ldr r2, _0810245C @ =0x00000494
adds r0, r2
@@ -1563,7 +1563,7 @@ sub_8102424: @ 8102424
bx r1
.align 2, 0
_08102454: .4byte gSaveBlock1
-_08102458: .4byte 0x02000000
+_08102458: .4byte gSharedMem
_0810245C: .4byte 0x00000494
thumb_func_end sub_8102424
@@ -1576,7 +1576,7 @@ sub_8102460: @ 8102460
ands r0, r1
cmp r0, 0
bne _08102476
- ldr r0, _08102480 @ =0x02000000
+ ldr r0, _08102480 @ =gSharedMem
ldr r0, [r0, 0x64]
bl SetMainCallback2
_08102476:
@@ -1585,13 +1585,13 @@ _08102476:
bx r1
.align 2, 0
_0810247C: .4byte gPaletteFade
-_08102480: .4byte 0x02000000
+_08102480: .4byte gSharedMem
thumb_func_end sub_8102460
thumb_func_start sub_8102484
sub_8102484: @ 8102484
push {r4,lr}
- ldr r4, _081024E4 @ =0x02000000
+ ldr r4, _081024E4 @ =gSharedMem
ldrb r0, [r4, 0xA]
cmp r0, 0
bne _081024DC
@@ -1624,7 +1624,7 @@ _081024C0:
lsrs r3, r0, 24
cmp r3, 0x5
beq _081024DC
- ldr r2, _081024E4 @ =0x02000000
+ ldr r2, _081024E4 @ =gSharedMem
ldr r1, _081024EC @ =gUnknown_083ECE48
lsls r0, r3, 1
adds r0, r1
@@ -1637,7 +1637,7 @@ _081024DC:
pop {r0}
bx r0
.align 2, 0
-_081024E4: .4byte 0x02000000
+_081024E4: .4byte gSharedMem
_081024E8: .4byte gUnknown_083ECE42
_081024EC: .4byte gUnknown_083ECE48
thumb_func_end sub_8102484
@@ -1645,7 +1645,7 @@ _081024EC: .4byte gUnknown_083ECE48
thumb_func_start sub_81024F0
sub_81024F0: @ 81024F0
push {lr}
- ldr r1, _08102508 @ =0x02000000
+ ldr r1, _08102508 @ =gSharedMem
movs r0, 0
strb r0, [r1, 0x6]
ldrb r0, [r1, 0x4]
@@ -1657,7 +1657,7 @@ _08102502:
pop {r0}
bx r0
.align 2, 0
-_08102508: .4byte 0x02000000
+_08102508: .4byte gSharedMem
thumb_func_end sub_81024F0
thumb_func_start sub_810250C
@@ -1699,7 +1699,7 @@ sub_8102540: @ 8102540
lsls r0, 24
lsrs r0, 24
ldr r4, _08102568 @ =gUnknown_083ECD04
- ldr r1, _0810256C @ =0x02000000
+ ldr r1, _0810256C @ =gSharedMem
movs r3, 0x12
ldrsh r2, [r1, r3]
ldrb r3, [r1, 0x1]
@@ -1715,7 +1715,7 @@ sub_8102540: @ 8102540
b _08102572
.align 2, 0
_08102568: .4byte gUnknown_083ECD04
-_0810256C: .4byte 0x02000000
+_0810256C: .4byte gSharedMem
_08102570:
movs r0, 0x1
_08102572:
@@ -1732,7 +1732,7 @@ sub_8102578: @ 8102578
_0810257E:
bl Random
movs r2, 0xFF
- ldr r3, _081025B8 @ =0x02000000
+ ldr r3, _081025B8 @ =gSharedMem
lsls r1, r5, 16
asrs r4, r1, 16
lsls r1, r4, 1
@@ -1759,7 +1759,7 @@ _081025AA:
bx r1
.align 2, 0
_081025B4: .4byte gUnknown_083ECD16
-_081025B8: .4byte 0x02000000
+_081025B8: .4byte gSharedMem
thumb_func_end sub_8102578
thumb_func_start sub_81025BC
@@ -1770,7 +1770,7 @@ sub_81025BC: @ 81025BC
movs r6, 0
ldr r0, _08102600 @ =gUnknown_083ECD28
mov r8, r0
- ldr r5, _08102604 @ =0x02000000
+ ldr r5, _08102604 @ =gSharedMem
movs r7, 0x80
lsls r7, 17
_081025CE:
@@ -1799,7 +1799,7 @@ _081025CE:
b _08102622
.align 2, 0
_08102600: .4byte gUnknown_083ECD28
-_08102604: .4byte 0x02000000
+_08102604: .4byte gSharedMem
_08102608:
asrs r0, r2, 16
cmp r0, 0x4
@@ -1843,14 +1843,14 @@ sub_810264C: @ 810264C
push {lr}
lsls r0, 24
lsrs r2, r0, 24
- ldr r3, _08102660 @ =0x02000000
+ ldr r3, _08102660 @ =gSharedMem
ldrb r0, [r3, 0x3]
cmp r0, 0
beq _08102668
ldr r0, _08102664 @ =gUnknown_083ECDAC
b _0810266A
.align 2, 0
-_08102660: .4byte 0x02000000
+_08102660: .4byte gSharedMem
_08102664: .4byte gUnknown_083ECDAC
_08102668:
ldr r0, _0810267C @ =gUnknown_083ECD46
@@ -1870,7 +1870,7 @@ _0810267C: .4byte gUnknown_083ECD46
thumb_func_start sub_8102680
sub_8102680: @ 8102680
push {r4-r6,lr}
- ldr r1, _081026A4 @ =0x02000000
+ ldr r1, _081026A4 @ =gSharedMem
movs r0, 0
strb r0, [r1, 0x5]
bl Random
@@ -1885,7 +1885,7 @@ sub_8102680: @ 8102680
movs r6, 0x5
b _081026AE
.align 2, 0
-_081026A4: .4byte 0x02000000
+_081026A4: .4byte gSharedMem
_081026A8:
subs r0, r5, 0x1
lsls r0, 16
@@ -1906,14 +1906,14 @@ _081026AE:
cmp r4, r0
bcs _081026A8
_081026CE:
- ldr r0, _081026D8 @ =0x02000000
+ ldr r0, _081026D8 @ =gSharedMem
strb r6, [r0, 0x5]
_081026D2:
pop {r4-r6}
pop {r0}
bx r0
.align 2, 0
-_081026D8: .4byte 0x02000000
+_081026D8: .4byte gSharedMem
thumb_func_end sub_8102680
thumb_func_start sub_81026DC
@@ -1947,7 +1947,7 @@ _08102702:
dp15_jump_random_unknown: @ 8102708
push {r4,r5,lr}
movs r4, 0
- ldr r0, _0810271C @ =0x02000000
+ ldr r0, _0810271C @ =gSharedMem
movs r2, 0x10
ldrsh r1, [r0, r2]
ldr r0, _08102720 @ =0x0000012b
@@ -1956,7 +1956,7 @@ dp15_jump_random_unknown: @ 8102708
movs r4, 0x4
b _0810273A
.align 2, 0
-_0810271C: .4byte 0x02000000
+_0810271C: .4byte gSharedMem
_08102720: .4byte 0x0000012b
_08102724:
cmp r1, 0xF9
@@ -2000,7 +2000,7 @@ _08102760:
adds r2, r5, 0x2
adds r2, r4, r2
ldr r3, _08102790 @ =gUnknown_083ECE30
- ldr r1, _08102794 @ =0x02000000
+ ldr r1, _08102794 @ =gSharedMem
ldrb r1, [r1, 0xB]
lsls r1, 1
adds r1, r3
@@ -2014,7 +2014,7 @@ _08102760:
b _0810279A
.align 2, 0
_08102790: .4byte gUnknown_083ECE30
-_08102794: .4byte 0x02000000
+_08102794: .4byte gSharedMem
_08102798:
movs r0, 0x2
_0810279A:
@@ -2026,7 +2026,7 @@ _0810279A:
thumb_func_start sub_81027A0
sub_81027A0: @ 81027A0
push {r4,lr}
- ldr r4, _081027CC @ =0x02000000
+ ldr r4, _081027CC @ =gSharedMem
movs r0, 0
strh r0, [r4, 0x8]
bl sub_81027D0
@@ -2046,7 +2046,7 @@ _081027C4:
pop {r0}
bx r0
.align 2, 0
-_081027CC: .4byte 0x02000000
+_081027CC: .4byte gSharedMem
thumb_func_end sub_81027A0
thumb_func_start sub_81027D0
@@ -2077,7 +2077,7 @@ sub_81027D0: @ 81027D0
lsrs r1, r0, 24
cmp r1, 0x9
beq _0810282E
- ldr r2, _08102834 @ =0x02000000
+ ldr r2, _08102834 @ =gSharedMem
ldr r0, _08102838 @ =gUnknown_083ECE6C
lsls r1, 1
adds r0, r1, r0
@@ -2098,7 +2098,7 @@ _0810282E:
pop {r0}
bx r0
.align 2, 0
-_08102834: .4byte 0x02000000
+_08102834: .4byte gSharedMem
_08102838: .4byte gUnknown_083ECE6C
_0810283C: .4byte gUnknown_083ECE5A
thumb_func_end sub_81027D0
@@ -2132,7 +2132,7 @@ sub_8102840: @ 8102840
bne _0810287C
movs r1, 0x1
_0810287C:
- ldr r2, _08102900 @ =0x02000000
+ ldr r2, _08102900 @ =gSharedMem
ldr r0, _08102904 @ =gUnknown_083ECE6C
lsls r1, 1
adds r0, r1, r0
@@ -2175,7 +2175,7 @@ _0810289E:
bne _081028D8
movs r1, 0x1
_081028D8:
- ldr r2, _08102900 @ =0x02000000
+ ldr r2, _08102900 @ =gSharedMem
ldr r0, _08102904 @ =gUnknown_083ECE6C
lsls r1, 1
adds r0, r1, r0
@@ -2196,7 +2196,7 @@ _081028FA:
pop {r0}
bx r0
.align 2, 0
-_08102900: .4byte 0x02000000
+_08102900: .4byte gSharedMem
_08102904: .4byte gUnknown_083ECE6C
_08102908: .4byte gUnknown_083ECE5A
thumb_func_end sub_8102840
@@ -2228,7 +2228,7 @@ sub_810290C: @ 810290C
beq _08102968
cmp r1, 0
beq _08102962
- ldr r2, _081029C8 @ =0x02000000
+ ldr r2, _081029C8 @ =gSharedMem
ldr r0, _081029CC @ =gUnknown_083ECE6C
lsls r1, 1
adds r0, r1, r0
@@ -2270,7 +2270,7 @@ _08102968:
beq _081029C2
cmp r1, 0
beq _081029BC
- ldr r2, _081029C8 @ =0x02000000
+ ldr r2, _081029C8 @ =gSharedMem
ldr r0, _081029CC @ =gUnknown_083ECE6C
lsls r1, 1
adds r0, r1, r0
@@ -2292,7 +2292,7 @@ _081029C2:
pop {r0}
bx r0
.align 2, 0
-_081029C8: .4byte 0x02000000
+_081029C8: .4byte gSharedMem
_081029CC: .4byte gUnknown_083ECE6C
_081029D0: .4byte gUnknown_083ECE5A
thumb_func_end sub_810290C
@@ -2423,7 +2423,7 @@ sub_8102A9C: @ 8102A9C
ldrh r0, [r4, 0x8]
adds r0, 0x1
strh r0, [r4, 0x8]
- ldr r0, _08102AC4 @ =0x02000000
+ ldr r0, _08102AC4 @ =gSharedMem
movs r1, 0xE
ldrsh r0, [r0, r1]
cmp r0, 0
@@ -2433,7 +2433,7 @@ sub_8102A9C: @ 8102A9C
movs r0, 0x1
b _08102ACA
.align 2, 0
-_08102AC4: .4byte 0x02000000
+_08102AC4: .4byte gSharedMem
_08102AC8:
movs r0, 0
_08102ACA:
@@ -2462,7 +2462,7 @@ sub_8102AD0: @ 8102AD0
movs r0, 0x15
bl PlaySE
_08102AF6:
- ldr r2, _08102B70 @ =0x02000000
+ ldr r2, _08102B70 @ =gSharedMem
ldrh r0, [r2, 0xE]
subs r0, 0x1
strh r0, [r2, 0xE]
@@ -2498,7 +2498,7 @@ _08102B22:
beq _08102B58
movs r0, 0x15
bl PlaySE
- ldr r1, _08102B70 @ =0x02000000
+ ldr r1, _08102B70 @ =gSharedMem
ldrh r0, [r1, 0xE]
ldrh r2, [r1, 0xC]
adds r0, r2
@@ -2513,7 +2513,7 @@ _08102B54:
movs r0, 0
strh r0, [r1, 0xE]
_08102B58:
- ldr r0, _08102B70 @ =0x02000000
+ ldr r0, _08102B70 @ =gSharedMem
movs r1, 0xE
ldrsh r0, [r0, r1]
cmp r0, 0
@@ -2527,7 +2527,7 @@ _08102B68:
pop {r1}
bx r1
.align 2, 0
-_08102B70: .4byte 0x02000000
+_08102B70: .4byte gSharedMem
_08102B74: .4byte 0x0000270e
_08102B78: .4byte gMain
_08102B7C: .4byte 0x0000270f
@@ -2559,7 +2559,7 @@ sub_8102BA4: @ 8102BA4
lsls r0, 24
lsrs r0, 24
adds r4, r0, 0
- ldr r0, _08102BF0 @ =0x02000000
+ ldr r0, _08102BF0 @ =gSharedMem
lsls r2, r4, 1
adds r0, 0x28
adds r2, r0
@@ -2593,7 +2593,7 @@ _08102BD4:
pop {r1}
bx r1
.align 2, 0
-_08102BF0: .4byte 0x02000000
+_08102BF0: .4byte gSharedMem
_08102BF4: .4byte gUnknown_083ECCB2
thumb_func_end sub_8102BA4
@@ -2606,7 +2606,7 @@ sub_8102BF8: @ 8102BF8
lsls r1, 16
lsrs r4, r1, 16
movs r6, 0
- ldr r0, _08102C40 @ =0x02000000
+ ldr r0, _08102C40 @ =gSharedMem
lsls r1, r5, 1
adds r0, 0x1C
adds r1, r0
@@ -2634,14 +2634,14 @@ _08102C20:
pop {r1}
bx r1
.align 2, 0
-_08102C40: .4byte 0x02000000
+_08102C40: .4byte gSharedMem
_08102C44: .4byte 0x0000ffff
thumb_func_end sub_8102BF8
thumb_func_start sub_8102C48
sub_8102C48: @ 8102C48
push {lr}
- ldr r1, _08102C7C @ =0x02000000
+ ldr r1, _08102C7C @ =gSharedMem
movs r2, 0x16
ldrsh r1, [r1, r2]
lsls r0, 16
@@ -2667,7 +2667,7 @@ _08102C6E:
pop {r1}
bx r1
.align 2, 0
-_08102C7C: .4byte 0x02000000
+_08102C7C: .4byte gSharedMem
_08102C80: .4byte gUnknown_083ECCF1
thumb_func_end sub_8102C48
@@ -2676,7 +2676,7 @@ sub_8102C84: @ 8102C84
push {r4-r6,lr}
adds r5, r0, 0
lsls r5, 24
- ldr r6, _08102CC8 @ =0x02000000
+ ldr r6, _08102CC8 @ =gSharedMem
lsrs r5, 23
adds r4, r6, 0
adds r4, 0x1C
@@ -2705,7 +2705,7 @@ sub_8102C84: @ 8102C84
pop {r0}
bx r0
.align 2, 0
-_08102CC8: .4byte 0x02000000
+_08102CC8: .4byte gSharedMem
thumb_func_end sub_8102C84
thumb_func_start sub_8102CCC
@@ -2716,7 +2716,7 @@ sub_8102CCC: @ 8102CCC
adds r6, r0, 0
lsls r1, 16
lsrs r4, r1, 16
- ldr r0, _08102D24 @ =0x02000000
+ ldr r0, _08102D24 @ =gSharedMem
lsls r1, r6, 1
adds r0, 0x1C
adds r5, r1, r0
@@ -2753,13 +2753,13 @@ _08102D18:
pop {r1}
bx r1
.align 2, 0
-_08102D24: .4byte 0x02000000
+_08102D24: .4byte gSharedMem
thumb_func_end sub_8102CCC
thumb_func_start sub_8102D28
sub_8102D28: @ 8102D28
push {r4,lr}
- ldr r4, _08102D58 @ =0x02000000
+ ldr r4, _08102D58 @ =gSharedMem
lsls r0, 16
asrs r0, 16
ldrh r1, [r4, 0x14]
@@ -2781,7 +2781,7 @@ sub_8102D28: @ 8102D28
pop {r0}
bx r0
.align 2, 0
-_08102D58: .4byte 0x02000000
+_08102D58: .4byte gSharedMem
thumb_func_end sub_8102D28
thumb_func_start sub_8102D5C
@@ -2789,7 +2789,7 @@ sub_8102D5C: @ 8102D5C
push {r4,r5,lr}
lsls r0, 16
lsrs r4, r0, 16
- ldr r5, _08102DA4 @ =0x02000000
+ ldr r5, _08102DA4 @ =gSharedMem
movs r1, 0x14
ldrsh r0, [r5, r1]
movs r1, 0x14
@@ -2822,7 +2822,7 @@ _08102D9A:
pop {r1}
bx r1
.align 2, 0
-_08102DA4: .4byte 0x02000000
+_08102DA4: .4byte gSharedMem
thumb_func_end sub_8102D5C
thumb_func_start sub_8102DA8
@@ -2831,7 +2831,7 @@ sub_8102DA8: @ 8102DA8
movs r4, 0
ldr r5, _08102DE0 @ =sub_8102E68
ldr r7, _08102DE4 @ =gTasks
- ldr r6, _08102DE8 @ =0x0200003a
+ ldr r6, _08102DE8 @ =gSharedMem + 0x3A
_08102DB2:
adds r0, r5, 0
movs r1, 0x2
@@ -2857,7 +2857,7 @@ _08102DB2:
.align 2, 0
_08102DE0: .4byte sub_8102E68
_08102DE4: .4byte gTasks
-_08102DE8: .4byte 0x0200003a
+_08102DE8: .4byte gSharedMem + 0x3A
thumb_func_end sub_8102DA8
thumb_func_start sub_8102DEC
@@ -2865,7 +2865,7 @@ sub_8102DEC: @ 8102DEC
lsls r0, 24
lsrs r0, 24
ldr r3, _08102E14 @ =gTasks
- ldr r1, _08102E18 @ =0x02000000
+ ldr r1, _08102E18 @ =gSharedMem
adds r1, 0x3A
adds r0, r1
ldrb r2, [r0]
@@ -2884,7 +2884,7 @@ sub_8102DEC: @ 8102DEC
bx lr
.align 2, 0
_08102E14: .4byte gTasks
-_08102E18: .4byte 0x02000000
+_08102E18: .4byte gSharedMem
thumb_func_end sub_8102DEC
thumb_func_start sub_8102E1C
@@ -2892,7 +2892,7 @@ sub_8102E1C: @ 8102E1C
lsls r0, 24
lsrs r0, 24
ldr r2, _08102E38 @ =gTasks
- ldr r1, _08102E3C @ =0x02000000
+ ldr r1, _08102E3C @ =gSharedMem
adds r1, 0x3A
adds r0, r1
ldrb r1, [r0]
@@ -2905,7 +2905,7 @@ sub_8102E1C: @ 8102E1C
bx lr
.align 2, 0
_08102E38: .4byte gTasks
-_08102E3C: .4byte 0x02000000
+_08102E3C: .4byte gSharedMem
thumb_func_end sub_8102E1C
thumb_func_start sub_8102E40
@@ -2913,7 +2913,7 @@ sub_8102E40: @ 8102E40
lsls r0, 24
lsrs r0, 24
ldr r2, _08102E60 @ =gTasks
- ldr r1, _08102E64 @ =0x02000000
+ ldr r1, _08102E64 @ =gSharedMem
adds r1, 0x3A
adds r0, r1
ldrb r1, [r0]
@@ -2927,7 +2927,7 @@ sub_8102E40: @ 8102E40
bx lr
.align 2, 0
_08102E60: .4byte gTasks
-_08102E64: .4byte 0x02000000
+_08102E64: .4byte gSharedMem
thumb_func_end sub_8102E40
thumb_func_start sub_8102E68
@@ -2972,7 +2972,7 @@ sub_8102EA4: @ 8102EA4
ldrh r0, [r0, 0x26]
lsls r0, 24
lsrs r0, 24
- ldr r1, _08102EBC @ =0x02000000
+ ldr r1, _08102EBC @ =gSharedMem
movs r2, 0x1A
ldrsh r1, [r1, r2]
bl sub_8102C84
@@ -2980,7 +2980,7 @@ sub_8102EA4: @ 8102EA4
pop {r1}
bx r1
.align 2, 0
-_08102EBC: .4byte 0x02000000
+_08102EBC: .4byte gSharedMem
thumb_func_end sub_8102EA4
thumb_func_start sub_8102EC0
@@ -2991,7 +2991,7 @@ sub_8102EC0: @ 8102EC0
adds r0, 0x1
movs r2, 0
strh r0, [r4, 0x8]
- ldr r3, _08102F40 @ =0x02000000
+ ldr r3, _08102F40 @ =gSharedMem
movs r1, 0x26
ldrsh r0, [r4, r1]
lsls r0, 1
@@ -3026,7 +3026,7 @@ sub_8102EC0: @ 8102EC0
cmp r0, 0
bne _08102F28
_08102F12:
- ldr r1, _08102F40 @ =0x02000000
+ ldr r1, _08102F40 @ =gSharedMem
movs r0, 0
strb r0, [r1, 0x6]
ldr r1, _08102F48 @ =gUnknown_083ECB4C
@@ -3037,7 +3037,7 @@ _08102F12:
ldr r0, [r0]
bl _call_via_r0
_08102F28:
- ldr r0, _08102F40 @ =0x02000000
+ ldr r0, _08102F40 @ =gSharedMem
movs r2, 0x26
ldrsh r1, [r4, r2]
lsls r1, 1
@@ -3050,7 +3050,7 @@ _08102F28:
pop {r1}
bx r1
.align 2, 0
-_08102F40: .4byte 0x02000000
+_08102F40: .4byte gSharedMem
_08102F44: .4byte gUnknown_083ECB40
_08102F48: .4byte gUnknown_083ECB4C
thumb_func_end sub_8102EC0
@@ -3064,7 +3064,7 @@ sub_8102F4C: @ 8102F4C
mov r0, sp
movs r2, 0xA
bl memcpy
- ldr r5, _08102F90 @ =0x02000000
+ ldr r5, _08102F90 @ =gSharedMem
movs r1, 0x26
ldrsh r0, [r4, r1]
lsls r6, r0, 1
@@ -3088,7 +3088,7 @@ sub_8102F4C: @ 8102F4C
b _08102FC8
.align 2, 0
_08102F8C: .4byte gUnknown_083ECB58
-_08102F90: .4byte 0x02000000
+_08102F90: .4byte gSharedMem
_08102F94:
adds r0, r5, 0
adds r0, 0x2E
@@ -3120,7 +3120,7 @@ _08102FC8:
_08102FCC:
cmp r2, 0
bne _08102FF8
- ldr r1, _08103004 @ =0x02000000
+ ldr r1, _08103004 @ =gSharedMem
movs r2, 0x26
ldrsh r0, [r4, r2]
lsls r0, 1
@@ -3147,14 +3147,14 @@ _08102FF8:
pop {r1}
bx r1
.align 2, 0
-_08103004: .4byte 0x02000000
+_08103004: .4byte gSharedMem
thumb_func_end sub_8102F4C
thumb_func_start sub_8103008
sub_8103008: @ 8103008
push {r4,lr}
adds r2, r0, 0
- ldr r1, _08103058 @ =0x02000000
+ ldr r1, _08103058 @ =gSharedMem
movs r3, 0x26
ldrsh r0, [r2, r3]
lsls r0, 1
@@ -3194,13 +3194,13 @@ _0810304E:
pop {r1}
bx r1
.align 2, 0
-_08103058: .4byte 0x02000000
+_08103058: .4byte gSharedMem
thumb_func_end sub_8103008
thumb_func_start sub_810305C
sub_810305C: @ 810305C
push {r4,r5,lr}
- ldr r4, _0810309C @ =0x02000000
+ ldr r4, _0810309C @ =gSharedMem
ldrb r0, [r4, 0x4]
bl sub_810250C
lsls r0, 24
@@ -3230,7 +3230,7 @@ _0810307A:
pop {r1}
bx r1
.align 2, 0
-_0810309C: .4byte 0x02000000
+_0810309C: .4byte gSharedMem
_081030A0: .4byte gUnknown_083ECB64
thumb_func_end sub_810305C
@@ -3256,12 +3256,12 @@ sub_81030A4: @ 81030A4
cmp r0, r5
bne _081030D8
_081030CC:
- ldr r0, _081030D4 @ =0x02000000
+ ldr r0, _081030D4 @ =gSharedMem
strb r1, [r0, 0x7]
movs r0, 0x1
b _081030DA
.align 2, 0
-_081030D4: .4byte 0x02000000
+_081030D4: .4byte gSharedMem
_081030D8:
movs r0, 0
_081030DA:
@@ -3319,7 +3319,7 @@ _0810312E:
thumb_func_start sub_8103134
sub_8103134: @ 8103134
push {lr}
- ldr r0, _08103148 @ =0x02000000
+ ldr r0, _08103148 @ =gSharedMem
ldrb r1, [r0, 0x4]
movs r0, 0xC2
ands r0, r1
@@ -3328,7 +3328,7 @@ sub_8103134: @ 8103134
movs r0, 0
b _0810314E
.align 2, 0
-_08103148: .4byte 0x02000000
+_08103148: .4byte gSharedMem
_0810314C:
movs r0, 0x1
_0810314E:
@@ -3350,7 +3350,7 @@ sub_8103154: @ 8103154
movs r5, 0
movs r0, 0x2
mov r9, r0
- ldr r6, _08103194 @ =0x02000000
+ ldr r6, _08103194 @ =gSharedMem
_0810316E:
lsls r0, r5, 16
asrs r4, r0, 16
@@ -3370,7 +3370,7 @@ _0810316E:
movs r0, 0x1
b _081031A6
.align 2, 0
-_08103194: .4byte 0x02000000
+_08103194: .4byte gSharedMem
_08103198:
adds r0, r4, 0x1
lsls r0, 16
@@ -3414,7 +3414,7 @@ sub_81031B4: @ 81031B4
_081031E2:
movs r0, 0x1
mov r8, r0
- ldr r5, _0810320C @ =0x02000000
+ ldr r5, _0810320C @ =gSharedMem
movs r7, 0
_081031EA:
mov r1, r8
@@ -3433,7 +3433,7 @@ _081031EA:
movs r0, 0x1
b _081032B2
.align 2, 0
-_0810320C: .4byte 0x02000000
+_0810320C: .4byte gSharedMem
_08103210:
adds r0, r4, 0x1
lsls r0, 16
@@ -3446,7 +3446,7 @@ _0810321E:
movs r0, 0x1
mov r8, r0
adds r7, r6, 0
- ldr r6, _0810326C @ =0x02000000
+ ldr r6, _0810326C @ =gSharedMem
_08103226:
mov r1, r8
lsls r5, r1, 16
@@ -3483,7 +3483,7 @@ _08103266:
strh r0, [r6, 0x34]
b _0810329A
.align 2, 0
-_0810326C: .4byte 0x02000000
+_0810326C: .4byte gSharedMem
_08103270:
asrs r0, r5, 16
cmp r0, 0x3
@@ -3535,7 +3535,7 @@ _081032B2:
sub_81032C0: @ 81032C0
push {lr}
ldr r1, _081032E0 @ =gUnknown_083ECB70
- ldr r0, _081032E4 @ =0x02000000
+ ldr r0, _081032E4 @ =gSharedMem
movs r2, 0x12
ldrsh r0, [r0, r2]
subs r0, 0x1
@@ -3549,7 +3549,7 @@ sub_81032C0: @ 81032C0
bx r1
.align 2, 0
_081032E0: .4byte gUnknown_083ECB70
-_081032E4: .4byte 0x02000000
+_081032E4: .4byte gSharedMem
thumb_func_end sub_81032C0
thumb_func_start sub_81032E8
@@ -3557,7 +3557,7 @@ sub_81032E8: @ 81032E8
push {r4-r7,lr}
mov r7, r8
push {r7}
- ldr r0, _08103320 @ =0x02000000
+ ldr r0, _08103320 @ =gSharedMem
movs r6, 0
ldrh r1, [r0, 0x34]
mov r8, r1
@@ -3583,7 +3583,7 @@ _081032FC:
movs r0, 0x1
b _08103332
.align 2, 0
-_08103320: .4byte 0x02000000
+_08103320: .4byte gSharedMem
_08103324:
adds r0, r4, 0x1
lsls r0, 16
@@ -3607,7 +3607,7 @@ sub_810333C: @ 810333C
lsls r0, 24
cmp r0, 0
beq _0810339A
- ldr r1, _0810338C @ =0x02000000
+ ldr r1, _0810338C @ =gSharedMem
movs r2, 0x34
ldrsh r0, [r1, r2]
cmp r0, 0x2
@@ -3642,7 +3642,7 @@ _08103364:
ble _08103364
b _08103396
.align 2, 0
-_0810338C: .4byte 0x02000000
+_0810338C: .4byte gSharedMem
_08103390:
movs r0, 0x2
strh r0, [r6, 0x36]
@@ -3651,7 +3651,7 @@ _08103396:
movs r0, 0x1
b _081033D2
_0810339A:
- ldr r1, _081033D8 @ =0x02000000
+ ldr r1, _081033D8 @ =gSharedMem
movs r2, 0x34
ldrsh r0, [r1, r2]
cmp r0, 0x2
@@ -3685,13 +3685,13 @@ _081033D2:
pop {r1}
bx r1
.align 2, 0
-_081033D8: .4byte 0x02000000
+_081033D8: .4byte gSharedMem
thumb_func_end sub_810333C
thumb_func_start sub_81033DC
sub_81033DC: @ 81033DC
push {r4,lr}
- ldr r0, _08103414 @ =0x02000000
+ ldr r0, _08103414 @ =gSharedMem
ldrb r3, [r0, 0x7]
adds r4, r3, 0
ldrb r2, [r0, 0x4]
@@ -3719,7 +3719,7 @@ _081033F6:
pop {r1}
bx r1
.align 2, 0
-_08103414: .4byte 0x02000000
+_08103414: .4byte gSharedMem
_08103418: .4byte gUnknown_083ECB7C
thumb_func_end sub_81033DC
@@ -3732,7 +3732,7 @@ sub_810341C: @ 810341C
lsls r0, 24
lsrs r0, 24
mov r9, r0
- ldr r0, _0810345C @ =0x02000000
+ ldr r0, _0810345C @ =gSharedMem
movs r5, 0
ldrh r1, [r0, 0x36]
mov r8, r1
@@ -3757,7 +3757,7 @@ _08103438:
movs r0, 0x1
b _0810346E
.align 2, 0
-_0810345C: .4byte 0x02000000
+_0810345C: .4byte gSharedMem
_08103460:
adds r0, r4, 0x1
lsls r0, 16
@@ -3782,7 +3782,7 @@ sub_810347C: @ 810347C
push {r7}
lsls r0, 24
lsrs r6, r0, 24
- ldr r0, _081034A0 @ =0x02000000
+ ldr r0, _081034A0 @ =gSharedMem
movs r2, 0x34
ldrsh r1, [r0, r2]
movs r2, 0x36
@@ -3795,16 +3795,16 @@ sub_810347C: @ 810347C
lsrs r0, 24
b _081034EA
.align 2, 0
-_081034A0: .4byte 0x02000000
+_081034A0: .4byte gSharedMem
_081034A4:
- ldr r0, _081034B0 @ =0x02000000
+ ldr r0, _081034B0 @ =gSharedMem
strh r5, [r0, 0x32]
mov r1, r8
strh r1, [r0, 0x38]
movs r0, 0x1
b _081034EA
.align 2, 0
-_081034B0: .4byte 0x02000000
+_081034B0: .4byte gSharedMem
_081034B4:
movs r2, 0x1
mov r8, r2
@@ -3859,13 +3859,13 @@ _08103500:
lsls r0, 24
cmp r0, 0
bne _081034FA
- ldr r0, _0810351C @ =0x02000000
+ ldr r0, _0810351C @ =gSharedMem
strh r5, [r0, 0x2E]
pop {r4,r5}
pop {r0}
bx r0
.align 2, 0
-_0810351C: .4byte 0x02000000
+_0810351C: .4byte gSharedMem
thumb_func_end sub_81034F4
thumb_func_start sub_8103520
@@ -3896,7 +3896,7 @@ _0810353C:
sub_8103540: @ 8103540
push {lr}
ldr r1, _0810355C @ =gUnknown_083ECB88
- ldr r0, _08103560 @ =0x02000000
+ ldr r0, _08103560 @ =gSharedMem
movs r2, 0x12
ldrsh r0, [r0, r2]
subs r0, 0x1
@@ -3908,7 +3908,7 @@ sub_8103540: @ 8103540
bx r0
.align 2, 0
_0810355C: .4byte gUnknown_083ECB88
-_08103560: .4byte 0x02000000
+_08103560: .4byte gSharedMem
thumb_func_end sub_8103540
thumb_func_start sub_8103564
@@ -3917,7 +3917,7 @@ sub_8103564: @ 8103564
mov r7, r8
push {r7}
sub sp, 0x4
- ldr r4, _081035D0 @ =0x02000000
+ ldr r4, _081035D0 @ =gSharedMem
movs r1, 0x34
ldrsh r0, [r4, r1]
cmp r0, 0
@@ -3965,7 +3965,7 @@ _081035AA:
strh r5, [r6, 0x30]
b _081035E0
.align 2, 0
-_081035D0: .4byte 0x02000000
+_081035D0: .4byte gSharedMem
_081035D4:
adds r0, r4, 0x1
lsls r0, 16
@@ -3986,7 +3986,7 @@ _081035E0:
j5_08111E84: @ 81035EC
push {r4-r7,lr}
sub sp, 0x4
- ldr r4, _08103650 @ =0x02000000
+ ldr r4, _08103650 @ =gSharedMem
ldrh r2, [r4, 0x34]
movs r1, 0x34
ldrsh r0, [r4, r1]
@@ -4032,7 +4032,7 @@ _0810362A:
strh r6, [r5, 0x30]
b _08103660
.align 2, 0
-_08103650: .4byte 0x02000000
+_08103650: .4byte gSharedMem
_08103654:
adds r0, r4, 0x1
lsls r0, 16
@@ -4051,7 +4051,7 @@ _08103660:
sub_8103668: @ 8103668
push {r4-r7,lr}
sub sp, 0x4
- ldr r4, _0810368C @ =0x02000000
+ ldr r4, _0810368C @ =gSharedMem
ldrh r3, [r4, 0x34]
movs r0, 0x34
ldrsh r2, [r4, r0]
@@ -4067,15 +4067,15 @@ sub_8103668: @ 8103668
bl j5_08111E84
b _0810375A
.align 2, 0
-_0810368C: .4byte 0x02000000
+_0810368C: .4byte gSharedMem
_08103690:
- ldr r0, _0810369C @ =0x02000000
+ ldr r0, _0810369C @ =gSharedMem
movs r1, 0
strh r6, [r0, 0x36]
strh r1, [r0, 0x30]
b _0810375A
.align 2, 0
-_0810369C: .4byte 0x02000000
+_0810369C: .4byte gSharedMem
_081036A0:
movs r0, 0x2
strh r0, [r5, 0x36]
@@ -4132,7 +4132,7 @@ _081036DC:
ble _081036DC
movs r6, 0x1
mov r7, sp
- ldr r5, _0810373C @ =0x02000000
+ ldr r5, _0810373C @ =gSharedMem
_0810370E:
ldrh r1, [r5, 0x34]
lsls r0, r6, 16
@@ -4158,7 +4158,7 @@ _08103736:
strh r6, [r5, 0x30]
b _0810375A
.align 2, 0
-_0810373C: .4byte 0x02000000
+_0810373C: .4byte gSharedMem
_08103740:
cmp r4, 0x2
ble _081036AA
@@ -4295,7 +4295,7 @@ _08103808:
sub_810380C: @ 810380C
push {lr}
ldr r1, _08103828 @ =gUnknown_083ECB94
- ldr r0, _0810382C @ =0x02000000
+ ldr r0, _0810382C @ =gSharedMem
movs r2, 0x12
ldrsh r0, [r0, r2]
subs r0, 0x1
@@ -4307,14 +4307,14 @@ sub_810380C: @ 810380C
bx r0
.align 2, 0
_08103828: .4byte gUnknown_083ECB94
-_0810382C: .4byte 0x02000000
+_0810382C: .4byte gSharedMem
thumb_func_end sub_810380C
thumb_func_start sub_8103830
sub_8103830: @ 8103830
push {r4-r7,lr}
movs r6, 0
- ldr r7, _08103868 @ =0x02000000
+ ldr r7, _08103868 @ =gSharedMem
ldrh r1, [r7, 0x2E]
movs r4, 0x2
subs r1, r4, r1
@@ -4338,7 +4338,7 @@ sub_8103830: @ 8103830
movs r4, 0x2
b _08103876
.align 2, 0
-_08103868: .4byte 0x02000000
+_08103868: .4byte gSharedMem
_0810386C:
lsls r0, r6, 16
movs r1, 0x80
@@ -4418,13 +4418,13 @@ _081038E8:
cmp r5, r0
beq _081038E2
_08103900:
- ldr r0, _0810390C @ =0x02000000
+ ldr r0, _0810390C @ =gSharedMem
strh r6, [r0, 0x32]
pop {r4-r7}
pop {r0}
bx r0
.align 2, 0
-_0810390C: .4byte 0x02000000
+_0810390C: .4byte gSharedMem
thumb_func_end sub_8103830
thumb_func_start sub_8103910
@@ -4437,7 +4437,7 @@ sub_8103910: @ 8103910
sub sp, 0x4
movs r0, 0
str r0, [sp]
- ldr r4, _08103978 @ =0x02000000
+ ldr r4, _08103978 @ =gSharedMem
movs r2, 0x36
ldrsh r1, [r4, r2]
cmp r1, 0
@@ -4478,7 +4478,7 @@ sub_8103910: @ 8103910
movs r5, 0
b _08103982
.align 2, 0
-_08103978: .4byte 0x02000000
+_08103978: .4byte gSharedMem
_0810397C:
adds r0, r5, 0x1
lsls r0, 16
@@ -4488,7 +4488,7 @@ _08103982:
asrs r5, r6, 16
cmp r5, 0x4
bgt _081039A6
- ldr r0, _08103A34 @ =0x02000000
+ ldr r0, _08103A34 @ =gSharedMem
ldrh r1, [r0, 0x36]
subs r1, r5
lsls r1, 16
@@ -4502,7 +4502,7 @@ _08103982:
lsrs r6, 16
str r6, [sp]
_081039A6:
- ldr r0, _08103A34 @ =0x02000000
+ ldr r0, _08103A34 @ =gSharedMem
mov r9, r0
_081039AA:
movs r5, 0x1
@@ -4572,7 +4572,7 @@ _08103A24:
mov r8, r0
b _08103A46
.align 2, 0
-_08103A34: .4byte 0x02000000
+_08103A34: .4byte gSharedMem
_08103A38:
movs r2, 0x80
lsls r2, 9
@@ -4594,7 +4594,7 @@ _08103A46:
str r0, [sp]
b _081039AA
_08103A5C:
- ldr r0, _08103A74 @ =0x02000000
+ ldr r0, _08103A74 @ =gSharedMem
mov r3, sp
ldrh r3, [r3]
strh r3, [r0, 0x32]
@@ -4607,7 +4607,7 @@ _08103A5C:
pop {r0}
bx r0
.align 2, 0
-_08103A74: .4byte 0x02000000
+_08103A74: .4byte gSharedMem
thumb_func_end sub_8103910
thumb_func_start sub_8103A78
@@ -4616,7 +4616,7 @@ sub_8103A78: @ 8103A78
mov r7, r8
push {r7}
bl sub_8103910
- ldr r4, _08103B10 @ =0x02000000
+ ldr r4, _08103B10 @ =gSharedMem
movs r0, 0x36
ldrsh r1, [r4, r0]
cmp r1, 0
@@ -4686,7 +4686,7 @@ _08103AE8:
strh r0, [r7, 0x32]
b _08103B20
.align 2, 0
-_08103B10: .4byte 0x02000000
+_08103B10: .4byte gSharedMem
_08103B14:
adds r0, r5, 0x1
lsls r0, 16
@@ -4695,7 +4695,7 @@ _08103B14:
cmp r0, 0x4
ble _08103AE8
_08103B20:
- ldr r7, _08103B90 @ =0x02000000
+ ldr r7, _08103B90 @ =gSharedMem
_08103B22:
ldrh r0, [r7, 0x2E]
movs r1, 0x1
@@ -4749,9 +4749,9 @@ _08103B88:
strh r0, [r7, 0x32]
b _08103B22
.align 2, 0
-_08103B90: .4byte 0x02000000
+_08103B90: .4byte gSharedMem
_08103B94:
- ldr r7, _08103C04 @ =0x02000000
+ ldr r7, _08103C04 @ =gSharedMem
_08103B96:
ldrh r0, [r7, 0x2E]
movs r1, 0x3
@@ -4805,7 +4805,7 @@ _08103BFC:
strh r0, [r7, 0x32]
b _08103B96
.align 2, 0
-_08103C04: .4byte 0x02000000
+_08103C04: .4byte gSharedMem
_08103C08:
pop {r3}
mov r8, r3
@@ -5059,7 +5059,7 @@ sub_8103DC8: @ 8103DC8
push {r4-r6,lr}
movs r4, 0
ldr r6, _08103DF8 @ =gSprites
- ldr r5, _08103DFC @ =0x02000044
+ ldr r5, _08103DFC @ =gSharedMem + 0x44
_08103DD0:
ldr r0, _08103E00 @ =sub_8103EE4
bl CreateInvisibleSprite
@@ -5082,7 +5082,7 @@ _08103DD0:
bx r0
.align 2, 0
_08103DF8: .4byte gSprites
-_08103DFC: .4byte 0x02000044
+_08103DFC: .4byte gSharedMem + 0x44
_08103E00: .4byte sub_8103EE4
thumb_func_end sub_8103DC8
@@ -5090,7 +5090,7 @@ _08103E00: .4byte sub_8103EE4
sub_8103E04: @ 8103E04
lsls r0, 24
lsrs r0, 24
- ldr r1, _08103E30 @ =0x02000000
+ ldr r1, _08103E30 @ =gSharedMem
adds r1, 0x44
adds r0, r1
ldrb r1, [r0]
@@ -5111,7 +5111,7 @@ sub_8103E04: @ 8103E04
strh r2, [r0, 0x3C]
bx lr
.align 2, 0
-_08103E30: .4byte 0x02000000
+_08103E30: .4byte gSharedMem
_08103E34: .4byte gSprites
thumb_func_end sub_8103E04
@@ -5119,7 +5119,7 @@ _08103E34: .4byte gSprites
sub_8103E38: @ 8103E38
push {r4,r5,lr}
movs r2, 0
- ldr r4, _08103E60 @ =0x02000044
+ ldr r4, _08103E60 @ =gSharedMem + 0x44
ldr r3, _08103E64 @ =gSprites
_08103E40:
adds r0, r2, r4
@@ -5139,7 +5139,7 @@ _08103E40:
movs r0, 0
b _08103E74
.align 2, 0
-_08103E60: .4byte 0x02000044
+_08103E60: .4byte gSharedMem + 0x44
_08103E64: .4byte gSprites
_08103E68:
adds r0, r2, 0x1
@@ -5158,7 +5158,7 @@ _08103E74:
sub_8103E7C: @ 8103E7C
push {r4,r5,lr}
movs r4, 0
- ldr r5, _08103E94 @ =0x02000044
+ ldr r5, _08103E94 @ =gSharedMem + 0x44
_08103E82:
adds r0, r4, r5
ldrb r0, [r0]
@@ -5169,7 +5169,7 @@ _08103E82:
movs r0, 0
b _08103EA4
.align 2, 0
-_08103E94: .4byte 0x02000044
+_08103E94: .4byte gSharedMem + 0x44
_08103E98:
adds r0, r4, 0x1
lsls r0, 24
@@ -5414,20 +5414,20 @@ sub_8104048: @ 8104048
ldr r0, _0810405C @ =sub_81040E8
movs r1, 0x8
bl CreateTask
- ldr r1, _08104060 @ =0x02000000
+ ldr r1, _08104060 @ =gSharedMem
adds r1, 0x3E
strb r0, [r1]
pop {r0}
bx r0
.align 2, 0
_0810405C: .4byte sub_81040E8
-_08104060: .4byte 0x02000000
+_08104060: .4byte gSharedMem
thumb_func_end sub_8104048
thumb_func_start sub_8104064
sub_8104064: @ 8104064
push {r4,lr}
- ldr r0, _08104090 @ =0x02000000
+ ldr r0, _08104090 @ =gSharedMem
adds r0, 0x3E
ldrb r0, [r0]
lsls r4, r0, 2
@@ -5447,14 +5447,14 @@ sub_8104064: @ 8104064
pop {r0}
bx r0
.align 2, 0
-_08104090: .4byte 0x02000000
+_08104090: .4byte gSharedMem
_08104094: .4byte gTasks
thumb_func_end sub_8104064
thumb_func_start sub_8104098
sub_8104098: @ 8104098
push {r4,lr}
- ldr r0, _081040C0 @ =0x02000000
+ ldr r0, _081040C0 @ =gSharedMem
adds r0, 0x3E
ldrb r0, [r0]
lsls r4, r0, 2
@@ -5472,14 +5472,14 @@ sub_8104098: @ 8104098
pop {r0}
bx r0
.align 2, 0
-_081040C0: .4byte 0x02000000
+_081040C0: .4byte gSharedMem
_081040C4: .4byte gTasks
thumb_func_end sub_8104098
thumb_func_start sub_81040C8
sub_81040C8: @ 81040C8
ldr r2, _081040E0 @ =gTasks
- ldr r0, _081040E4 @ =0x02000000
+ ldr r0, _081040E4 @ =gSharedMem
adds r0, 0x3E
ldrb r1, [r0]
lsls r0, r1, 2
@@ -5492,7 +5492,7 @@ sub_81040C8: @ 81040C8
bx lr
.align 2, 0
_081040E0: .4byte gTasks
-_081040E4: .4byte 0x02000000
+_081040E4: .4byte gSharedMem
thumb_func_end sub_81040C8
thumb_func_start sub_81040E8
@@ -5701,7 +5701,7 @@ sub_810423C: @ 810423C
movs r4, 0
ldr r0, _0810426C @ =gTasks
mov r8, r0
- ldr r1, _08104270 @ =0x02000000
+ ldr r1, _08104270 @ =gSharedMem
mov r12, r1
cmp r4, r5
bge _081042A6
@@ -5717,7 +5717,7 @@ _0810425A:
.align 2, 0
_08104268: .4byte 0x0600e800
_0810426C: .4byte gTasks
-_08104270: .4byte 0x02000000
+_08104270: .4byte gSharedMem
_08104274: .4byte gUnknown_083ECBC4
_08104278:
cmp r0, 0xF
@@ -5866,7 +5866,7 @@ _08104378: .4byte gTasks
thumb_func_start sub_810437C
sub_810437C: @ 810437C
push {lr}
- ldr r1, _081043DC @ =0x02000000
+ ldr r1, _081043DC @ =gSharedMem
movs r2, 0
strb r2, [r1, 0xA]
strh r2, [r1, 0x14]
@@ -5904,7 +5904,7 @@ sub_810437C: @ 810437C
pop {r0}
bx r0
.align 2, 0
-_081043DC: .4byte 0x02000000
+_081043DC: .4byte gSharedMem
_081043E0: .4byte gSpriteCoordOffsetX
_081043E4: .4byte gSpriteCoordOffsetY
_081043E8: .4byte REG_BG1HOFS
@@ -6041,7 +6041,7 @@ sub_8104498: @ 8104498
movs r1, 0
ldrsh r0, [r6, r1]
bl sub_81057E8
- ldr r0, _08104540 @ =0x02000000
+ ldr r0, _08104540 @ =gSharedMem
adds r0, 0x3F
ldrb r1, [r0]
lsls r0, r1, 4
@@ -6076,7 +6076,7 @@ _08104526:
_08104534: .4byte gUnknown_083ECC1C
_08104538: .4byte gUnknown_083ECC20
_0810453C: .4byte gUnknown_083ECC28
-_08104540: .4byte 0x02000000
+_08104540: .4byte gSharedMem
_08104544: .4byte gSprites
thumb_func_end sub_8104498
@@ -6102,7 +6102,7 @@ sub_8104548: @ 8104548
strh r0, [r4, 0x12]
movs r0, 0x2
bl sub_81057E8
- ldr r0, _08104590 @ =0x02000000
+ ldr r0, _08104590 @ =gSharedMem
adds r0, 0x3F
ldrb r1, [r0]
lsls r0, r1, 4
@@ -6117,7 +6117,7 @@ _0810458A:
pop {r0}
bx r0
.align 2, 0
-_08104590: .4byte 0x02000000
+_08104590: .4byte gSharedMem
_08104594: .4byte gSprites
thumb_func_end sub_8104548
@@ -6170,7 +6170,7 @@ sub_81045CC: @ 81045CC
ble _08104634
movs r0, 0
strh r0, [r4, 0x12]
- ldr r1, _0810460C @ =0x02000000
+ ldr r1, _0810460C @ =gSharedMem
ldrb r0, [r1, 0x5]
cmp r0, 0
beq _08104610
@@ -6183,7 +6183,7 @@ sub_81045CC: @ 81045CC
adds r0, 0x1
b _0810462C
.align 2, 0
-_0810460C: .4byte 0x02000000
+_0810460C: .4byte gSharedMem
_08104610:
movs r1, 0x14
ldrsh r0, [r4, r1]
@@ -6215,7 +6215,7 @@ _08104634:
sub_810463C: @ 810463C
push {r4-r6,lr}
adds r4, r0, 0
- ldr r6, _08104660 @ =0x02000000
+ ldr r6, _08104660 @ =gSharedMem
movs r1, 0x14
ldrsh r0, [r6, r1]
movs r1, 0x14
@@ -6230,7 +6230,7 @@ sub_810463C: @ 810463C
bl sub_8102D5C
b _08104688
.align 2, 0
-_08104660: .4byte 0x02000000
+_08104660: .4byte gSharedMem
_08104664:
movs r0, 0x1
bl sub_8102C48
@@ -6260,7 +6260,7 @@ _08104692:
bne _081046B4
movs r0, 0x1
bl sub_8102C48
- ldr r1, _081046BC @ =0x02000000
+ ldr r1, _081046BC @ =gSharedMem
lsls r0, 24
lsrs r0, 24
ldrb r1, [r1, 0x5]
@@ -6275,7 +6275,7 @@ _081046B4:
pop {r0}
bx r0
.align 2, 0
-_081046BC: .4byte 0x02000000
+_081046BC: .4byte gSharedMem
thumb_func_end sub_810463C
thumb_func_start sub_81046C0
@@ -6296,7 +6296,7 @@ sub_81046C0: @ 81046C0
ldrh r0, [r4, 0x8]
adds r0, 0x1
strh r0, [r4, 0x8]
- ldr r5, _08104710 @ =0x02000000
+ ldr r5, _08104710 @ =gSharedMem
ldrb r0, [r5, 0x5]
cmp r0, 0
bne _0810471C
@@ -6316,7 +6316,7 @@ sub_81046C0: @ 81046C0
bl PlayFanfare
b _08104758
.align 2, 0
-_08104710: .4byte 0x02000000
+_08104710: .4byte gSharedMem
_08104714: .4byte gSprites
_08104718: .4byte 0x00000187
_0810471C:
@@ -6434,7 +6434,7 @@ _081047E6:
sub_81047EC: @ 81047EC
push {r4-r6,lr}
adds r5, r0, 0
- ldr r4, _08104834 @ =0x02000000
+ ldr r4, _08104834 @ =gSharedMem
movs r6, 0
strb r6, [r4, 0xB]
ldrb r0, [r4, 0x5]
@@ -6462,7 +6462,7 @@ sub_81047EC: @ 81047EC
bl DestroyTask
b _0810485A
.align 2, 0
-_08104834: .4byte 0x02000000
+_08104834: .4byte gSharedMem
_08104838: .4byte gSpriteCoordOffsetX
_0810483C: .4byte REG_BG1HOFS
_08104840: .4byte sub_810434C
@@ -6486,7 +6486,7 @@ _0810485A:
sub_8104860: @ 8104860
push {r4-r6,lr}
adds r4, r0, 0
- ldr r5, _0810487C @ =0x02000000
+ ldr r5, _0810487C @ =gSharedMem
ldrh r0, [r5, 0x1A]
lsls r6, r0, 16
asrs r1, r6, 16
@@ -6499,7 +6499,7 @@ sub_8104860: @ 8104860
strh r0, [r4, 0x8]
b _081048A2
.align 2, 0
-_0810487C: .4byte 0x02000000
+_0810487C: .4byte gSharedMem
_08104880:
movs r1, 0x1C
ldrsh r0, [r5, r1]
@@ -6551,7 +6551,7 @@ sub_81048CC: @ 81048CC
bl sub_8105804
bl sub_8105854
ldr r5, _08104934 @ =gSprites
- ldr r3, _08104938 @ =0x02000000
+ ldr r3, _08104938 @ =gSharedMem
adds r0, r3, 0
adds r0, 0x4E
ldrb r1, [r0]
@@ -6589,7 +6589,7 @@ sub_81048CC: @ 81048CC
bx r0
.align 2, 0
_08104934: .4byte gSprites
-_08104938: .4byte 0x02000000
+_08104938: .4byte gSharedMem
_0810493C: .4byte 0x00000187
thumb_func_end sub_81048CC
@@ -6632,7 +6632,7 @@ _08104974:
bl sub_8105284
bl sub_81059E8
ldr r2, _081049C0 @ =gSprites
- ldr r0, _081049C4 @ =0x02000000
+ ldr r0, _081049C4 @ =gSharedMem
adds r0, 0x4E
ldrb r1, [r0]
lsls r0, r1, 4
@@ -6657,7 +6657,7 @@ _081049B0:
_081049B8: .4byte gSpriteCoordOffsetY
_081049BC: .4byte REG_BG1VOFS
_081049C0: .4byte gSprites
-_081049C4: .4byte 0x02000000
+_081049C4: .4byte gSharedMem
thumb_func_end sub_8104940
thumb_func_start sub_81049C8
@@ -6694,7 +6694,7 @@ sub_81049F8: @ 81049F8
strh r1, [r0]
ldr r0, _08104A34 @ =REG_BG1HOFS
strh r1, [r0]
- ldr r0, _08104A38 @ =0x02000000
+ ldr r0, _08104A38 @ =gSharedMem
adds r0, 0x60
ldrh r0, [r0]
bl PlayNewMapMusic
@@ -6712,7 +6712,7 @@ sub_81049F8: @ 81049F8
.align 2, 0
_08104A30: .4byte gSpriteCoordOffsetX
_08104A34: .4byte REG_BG1HOFS
-_08104A38: .4byte 0x02000000
+_08104A38: .4byte gSharedMem
_08104A3C: .4byte sub_810434C
thumb_func_end sub_81049F8
@@ -6972,7 +6972,7 @@ sub_8104BFC: @ 8104BFC
bl sub_81064B8
ldrb r0, [r4, 0xA]
bl sub_8104CAC
- ldr r0, _08104C40 @ =0x02000000
+ ldr r0, _08104C40 @ =gSharedMem
ldrb r0, [r0, 0x2]
bl sub_810423C
movs r0, 0x1
@@ -6991,7 +6991,7 @@ sub_8104BFC: @ 8104BFC
bx r0
.align 2, 0
_08104C3C: .4byte gWindowConfig_81E7128
-_08104C40: .4byte 0x02000000
+_08104C40: .4byte gSharedMem
thumb_func_end sub_8104BFC
thumb_func_start sub_8104C44
@@ -7016,7 +7016,7 @@ sub_8104C5C: @ 8104C5C
bl CreateTask
lsls r0, 24
lsrs r1, r0, 24
- ldr r0, _08104CA0 @ =0x02000000
+ ldr r0, _08104CA0 @ =gSharedMem
adds r0, 0x3D
strb r1, [r0]
lsls r0, r1, 2
@@ -7043,7 +7043,7 @@ _08104C86:
bx r0
.align 2, 0
_08104C9C: .4byte sub_8104E74
-_08104CA0: .4byte 0x02000000
+_08104CA0: .4byte gSharedMem
_08104CA4: .4byte gTasks
_08104CA8: .4byte 0x0000ffff
thumb_func_end sub_8104C5C
@@ -7060,7 +7060,7 @@ sub_8104D30: @ 8104D30
ldr r4, [sp, 0x1C]
lsls r0, 24
lsrs r7, r0, 24
- ldr r0, _08104D84 @ =0x02000000
+ ldr r0, _08104D84 @ =gSharedMem
adds r0, 0x3D
ldrb r1, [r0]
lsls r0, r1, 2
@@ -7094,7 +7094,7 @@ _08104D5C:
strh r0, [r4]
b _08104D96
.align 2, 0
-_08104D84: .4byte 0x02000000
+_08104D84: .4byte gSharedMem
_08104D88: .4byte gTasks
_08104D8C:
adds r0, r5, 0x1
@@ -7114,7 +7114,7 @@ _08104D96:
thumb_func_start sub_8104DA4
sub_8104DA4: @ 8104DA4
push {r4-r6,lr}
- ldr r0, _08104E04 @ =0x02000000
+ ldr r0, _08104E04 @ =gSharedMem
adds r0, 0x3D
ldrb r1, [r0]
lsls r0, r1, 2
@@ -7163,7 +7163,7 @@ _08104DF4:
pop {r0}
bx r0
.align 2, 0
-_08104E04: .4byte 0x02000000
+_08104E04: .4byte gSharedMem
_08104E08: .4byte gTasks
_08104E0C: .4byte 0x0000ffff
_08104E10: .4byte gUnknown_083ED064
@@ -7173,7 +7173,7 @@ _08104E14: .4byte gSprites
thumb_func_start sub_8104E18
sub_8104E18: @ 8104E18
push {r4,r5,lr}
- ldr r0, _08104E54 @ =0x02000000
+ ldr r0, _08104E54 @ =gSharedMem
adds r0, 0x3D
ldrb r1, [r0]
lsls r0, r1, 2
@@ -7203,7 +7203,7 @@ _08104E32:
movs r0, 0
b _08104E6C
.align 2, 0
-_08104E54: .4byte 0x02000000
+_08104E54: .4byte gSharedMem
_08104E58: .4byte gTasks
_08104E5C: .4byte gSprites
_08104E60:
@@ -7311,7 +7311,7 @@ _08104F14: .4byte 0x0000ffff
sub_8104F18: @ 8104F18
push {r4,r5,lr}
adds r5, r0, 0
- ldr r4, _08104F88 @ =0x02000000
+ ldr r4, _08104F88 @ =gSharedMem
movs r0, 0x2E
ldrsh r1, [r5, r0]
lsls r1, 1
@@ -7360,7 +7360,7 @@ sub_8104F18: @ 8104F18
pop {r0}
bx r0
.align 2, 0
-_08104F88: .4byte 0x02000000
+_08104F88: .4byte gSharedMem
thumb_func_end sub_8104F18
thumb_func_start sub_8104F8C
@@ -7483,7 +7483,7 @@ _08105068: .4byte 0x0000ffff
sub_810506C: @ 810506C
push {r4,lr}
adds r4, r0, 0
- ldr r1, _081050C0 @ =0x02000000
+ ldr r1, _081050C0 @ =gSharedMem
ldrh r2, [r1, 0xC]
movs r3, 0x2E
ldrsh r0, [r4, r3]
@@ -7521,7 +7521,7 @@ _081050B8:
pop {r0}
bx r0
.align 2, 0
-_081050C0: .4byte 0x02000000
+_081050C0: .4byte gSharedMem
thumb_func_end sub_810506C
thumb_func_start sub_81050C4
@@ -7582,7 +7582,7 @@ sub_8105100: @ 8105100
movs r3, 0x2
orrs r1, r3
strb r1, [r2]
- ldr r1, _08105148 @ =0x02000000
+ ldr r1, _08105148 @ =gSharedMem
adds r1, 0x3F
strb r0, [r1]
pop {r0}
@@ -7590,13 +7590,13 @@ sub_8105100: @ 8105100
.align 2, 0
_08105140: .4byte gSpriteTemplate_83ED45C
_08105144: .4byte gSprites
-_08105148: .4byte 0x02000000
+_08105148: .4byte gSharedMem
thumb_func_end sub_8105100
thumb_func_start sub_810514C
sub_810514C: @ 810514C
push {lr}
- ldr r0, _08105168 @ =0x02000000
+ ldr r0, _08105168 @ =gSharedMem
adds r0, 0x3F
ldrb r1, [r0]
lsls r0, r1, 4
@@ -7608,7 +7608,7 @@ sub_810514C: @ 810514C
pop {r0}
bx r0
.align 2, 0
-_08105168: .4byte 0x02000000
+_08105168: .4byte gSharedMem
_0810516C: .4byte gSprites
thumb_func_end sub_810514C
@@ -7702,7 +7702,7 @@ sub_81051C0: @ 81051C0
ldr r1, _08105274 @ =gSubspriteTables_83ED73C
adds r0, r2, 0
bl SetSubspriteTables
- ldr r6, _08105278 @ =0x02000000
+ ldr r6, _08105278 @ =gSharedMem
adds r0, r6, 0
adds r0, 0x49
strb r4, [r0]
@@ -7746,7 +7746,7 @@ sub_81051C0: @ 81051C0
_0810526C: .4byte gSpriteTemplate_83ED474
_08105270: .4byte gSprites
_08105274: .4byte gSubspriteTables_83ED73C
-_08105278: .4byte 0x02000000
+_08105278: .4byte gSharedMem
_0810527C: .4byte gSpriteTemplate_83ED48C
_08105280: .4byte gSubspriteTables_83ED75C
thumb_func_end sub_81051C0
@@ -7787,7 +7787,7 @@ sub_8105284: @ 8105284
strb r1, [r3]
ldr r1, _081052E4 @ =gSubspriteTables_83ED78C
bl SetSubspriteTables
- ldr r0, _081052E8 @ =0x02000000
+ ldr r0, _081052E8 @ =gSharedMem
adds r0, 0x42
strb r4, [r0]
pop {r4}
@@ -7798,7 +7798,7 @@ _081052D8: .4byte gSpriteTemplate_83ED4A4
_081052DC: .4byte gSpriteCoordOffsetX
_081052E0: .4byte gSprites
_081052E4: .4byte gSubspriteTables_83ED78C
-_081052E8: .4byte 0x02000000
+_081052E8: .4byte gSharedMem
thumb_func_end sub_8105284
thumb_func_start sub_81052EC
@@ -7806,7 +7806,7 @@ sub_81052EC: @ 81052EC
push {r4-r7,lr}
movs r4, 0
movs r5, 0
- ldr r6, _08105350 @ =0x0200004b
+ ldr r6, _08105350 @ =gSharedMem + 0x4B
_081052F4:
ldr r0, _08105354 @ =gSpriteTemplate_83ED4BC
movs r1, 0xB8
@@ -7854,7 +7854,7 @@ _081052F4:
pop {r0}
bx r0
.align 2, 0
-_08105350: .4byte 0x0200004b
+_08105350: .4byte gSharedMem + 0x4B
_08105354: .4byte gSpriteTemplate_83ED4BC
_08105358: .4byte gSprites
thumb_func_end sub_81052EC
@@ -7863,7 +7863,7 @@ _08105358: .4byte gSprites
sub_810535C: @ 810535C
push {r4,lr}
adds r4, r0, 0
- ldr r1, _0810539C @ =0x02000000
+ ldr r1, _0810539C @ =gSharedMem
ldrh r0, [r4, 0x3C]
ldrh r1, [r1, 0x14]
adds r0, r1
@@ -7890,7 +7890,7 @@ sub_810535C: @ 810535C
pop {r0}
bx r0
.align 2, 0
-_0810539C: .4byte 0x02000000
+_0810539C: .4byte gSharedMem
thumb_func_end sub_810535C
thumb_func_start sub_81053A0
@@ -7937,7 +7937,7 @@ sub_81053A0: @ 81053A0
adds r0, r2, 0
mov r1, r9
bl SetSubspriteTables
- ldr r6, _08105458 @ =0x02000000
+ ldr r6, _08105458 @ =gSharedMem
adds r0, r6, 0
adds r0, 0x4E
strb r4, [r0]
@@ -7981,7 +7981,7 @@ sub_81053A0: @ 81053A0
_0810544C: .4byte gSpriteTemplate_83ED4D4
_08105450: .4byte gSprites
_08105454: .4byte gSubspriteTables_83ED7B4
-_08105458: .4byte 0x02000000
+_08105458: .4byte gSharedMem
thumb_func_end sub_81053A0
thumb_func_start sub_810545C
@@ -8016,7 +8016,7 @@ sub_810545C: @ 810545C
strb r1, [r0, 0x5]
ldr r1, _081054B0 @ =gSubspriteTables_83ED7D4
bl SetSubspriteTables
- ldr r0, _081054B4 @ =0x02000000
+ ldr r0, _081054B4 @ =gSharedMem
adds r0, 0x40
strb r4, [r0]
pop {r4}
@@ -8026,13 +8026,13 @@ sub_810545C: @ 810545C
_081054A8: .4byte gSpriteTemplate_83ED4EC
_081054AC: .4byte gSprites
_081054B0: .4byte gSubspriteTables_83ED7D4
-_081054B4: .4byte 0x02000000
+_081054B4: .4byte gSharedMem
thumb_func_end sub_810545C
thumb_func_start sub_81054B8
sub_81054B8: @ 81054B8
push {r4,r5,lr}
- ldr r4, _08105518 @ =0x02000000
+ ldr r4, _08105518 @ =gSharedMem
adds r0, r4, 0
adds r0, 0x40
ldrb r1, [r0]
@@ -8059,7 +8059,7 @@ _081054D4:
cmp r5, 0x1
bls _081054D4
movs r5, 0
- ldr r4, _08105520 @ =0x0200004b
+ ldr r4, _08105520 @ =gSharedMem + 0x4B
_081054F4:
adds r0, r5, r4
ldrb r1, [r0]
@@ -8078,16 +8078,16 @@ _081054F4:
pop {r0}
bx r0
.align 2, 0
-_08105518: .4byte 0x02000000
+_08105518: .4byte gSharedMem
_0810551C: .4byte gSprites
-_08105520: .4byte 0x0200004b
+_08105520: .4byte gSharedMem + 0x4B
thumb_func_end sub_81054B8
thumb_func_start sub_8105524
sub_8105524: @ 8105524
push {r4,r5,lr}
movs r4, 0
- ldr r5, _0810554C @ =0x0200004e
+ ldr r5, _0810554C @ =gSharedMem + 0x4E
_0810552A:
adds r0, r4, r5
ldrb r1, [r0]
@@ -8106,14 +8106,14 @@ _0810552A:
pop {r0}
bx r0
.align 2, 0
-_0810554C: .4byte 0x0200004e
+_0810554C: .4byte gSharedMem + 0x4E
_08105550: .4byte gSprites
thumb_func_end sub_8105524
thumb_func_start sub_8105554
sub_8105554: @ 8105554
push {lr}
- ldr r0, _08105570 @ =0x02000000
+ ldr r0, _08105570 @ =gSharedMem
adds r0, 0x42
ldrb r1, [r0]
lsls r0, r1, 4
@@ -8125,7 +8125,7 @@ sub_8105554: @ 8105554
pop {r0}
bx r0
.align 2, 0
-_08105570: .4byte 0x02000000
+_08105570: .4byte gSharedMem
_08105574: .4byte gSprites
thumb_func_end sub_8105554
@@ -8166,7 +8166,7 @@ sub_8105578: @ 8105578
movs r2, 0x1
orrs r1, r2
strb r1, [r5]
- ldr r5, _08105624 @ =0x02000000
+ ldr r5, _08105624 @ =gSharedMem
adds r1, r5, 0
adds r1, 0x50
strb r0, [r1]
@@ -8213,7 +8213,7 @@ sub_8105578: @ 8105578
.align 2, 0
_0810561C: .4byte gSpriteTemplate_83ED504
_08105620: .4byte gSprites
-_08105624: .4byte 0x02000000
+_08105624: .4byte gSharedMem
_08105628: .4byte 0x0000ffff
thumb_func_end sub_8105578
@@ -8275,7 +8275,7 @@ sub_8105688: @ 8105688
lsls r0, 16
lsrs r0, 16
ldr r4, _081056B8 @ =gSprites
- ldr r3, _081056BC @ =0x02000000
+ ldr r3, _081056BC @ =gSharedMem
adds r1, r3, 0
adds r1, 0x50
ldrb r2, [r1]
@@ -8296,14 +8296,14 @@ sub_8105688: @ 8105688
bx r0
.align 2, 0
_081056B8: .4byte gSprites
-_081056BC: .4byte 0x02000000
+_081056BC: .4byte gSharedMem
thumb_func_end sub_8105688
thumb_func_start sub_81056C0
sub_81056C0: @ 81056C0
push {r4,r5,lr}
movs r4, 0
- ldr r5, _081056E8 @ =0x02000050
+ ldr r5, _081056E8 @ =gSharedMem + 0x50
_081056C6:
adds r0, r4, r5
ldrb r1, [r0]
@@ -8322,7 +8322,7 @@ _081056C6:
pop {r0}
bx r0
.align 2, 0
-_081056E8: .4byte 0x02000050
+_081056E8: .4byte gSharedMem + 0x50
_081056EC: .4byte gSprites
thumb_func_end sub_81056C0
@@ -8362,7 +8362,7 @@ sub_81056F0: @ 81056F0
strh r1, [r2, 0x3A]
movs r1, 0x8
strh r1, [r2, 0x3C]
- ldr r5, _08105780 @ =0x02000000
+ ldr r5, _08105780 @ =gSharedMem
adds r1, r5, 0
adds r1, 0x52
strb r0, [r1]
@@ -8397,7 +8397,7 @@ sub_81056F0: @ 81056F0
.align 2, 0
_08105778: .4byte gSpriteTemplate_83ED51C
_0810577C: .4byte gSprites
-_08105780: .4byte 0x02000000
+_08105780: .4byte gSharedMem
thumb_func_end sub_81056F0
thumb_func_start sub_8105784
@@ -8453,7 +8453,7 @@ _081057E4: .4byte 0x01030000
thumb_func_start sub_81057E8
sub_81057E8: @ 81057E8
ldr r3, _081057FC @ =gSprites
- ldr r1, _08105800 @ =0x02000000
+ ldr r1, _08105800 @ =gSharedMem
adds r1, 0x52
ldrb r2, [r1]
lsls r1, r2, 4
@@ -8464,7 +8464,7 @@ sub_81057E8: @ 81057E8
bx lr
.align 2, 0
_081057FC: .4byte gSprites
-_08105800: .4byte 0x02000000
+_08105800: .4byte gSharedMem
thumb_func_end sub_81057E8
thumb_func_start sub_8105804
@@ -8482,7 +8482,7 @@ sub_8105804: @ 8105804
movs r3, 0
bl MultiplyInvertedPaletteRGBComponents
movs r4, 0
- ldr r5, _0810584C @ =0x02000052
+ ldr r5, _0810584C @ =gSharedMem + 0x52
_08105824:
adds r0, r4, r5
ldrb r1, [r0]
@@ -8502,7 +8502,7 @@ _08105824:
bx r0
.align 2, 0
_08105848: .4byte 0x01030000
-_0810584C: .4byte 0x02000052
+_0810584C: .4byte gSharedMem + 0x52
_08105850: .4byte gSprites
thumb_func_end sub_8105804
@@ -8528,7 +8528,7 @@ sub_8105854: @ 8105854
movs r3, 0x4
orrs r2, r3
strb r2, [r1, 0x5]
- ldr r1, _08105890 @ =0x02000000
+ ldr r1, _08105890 @ =gSharedMem
adds r1, 0x41
strb r0, [r1]
pop {r0}
@@ -8536,7 +8536,7 @@ sub_8105854: @ 8105854
.align 2, 0
_08105888: .4byte gSpriteTemplate_83ED534
_0810588C: .4byte gSprites
-_08105890: .4byte 0x02000000
+_08105890: .4byte gSharedMem
thumb_func_end sub_8105854
thumb_func_start sub_8105894
@@ -8552,7 +8552,7 @@ _0810589C: .4byte gSpriteCoordOffsetY
thumb_func_start sub_81058A0
sub_81058A0: @ 81058A0
push {lr}
- ldr r0, _081058BC @ =0x02000000
+ ldr r0, _081058BC @ =gSharedMem
adds r0, 0x41
ldrb r1, [r0]
lsls r0, r1, 4
@@ -8564,7 +8564,7 @@ sub_81058A0: @ 81058A0
pop {r0}
bx r0
.align 2, 0
-_081058BC: .4byte 0x02000000
+_081058BC: .4byte gSharedMem
_081058C0: .4byte gSprites
thumb_func_end sub_81058A0
@@ -8577,7 +8577,7 @@ sub_81058C4: @ 81058C4
movs r2, 0x8
bl memcpy
movs r4, 0
- ldr r5, _0810593C @ =0x02000054
+ ldr r5, _0810593C @ =gSharedMem + 0x54
_081058D6:
ldr r0, _08105940 @ =gSpriteCoordOffsetX
ldrh r0, [r0]
@@ -8629,7 +8629,7 @@ _081058D6:
bx r0
.align 2, 0
_08105938: .4byte gUnknown_083ECC5A
-_0810593C: .4byte 0x02000054
+_0810593C: .4byte gSharedMem + 0x54
_08105940: .4byte gSpriteCoordOffsetX
_08105944: .4byte gSpriteTemplate_83ED54C
_08105948: .4byte gSprites
@@ -8696,7 +8696,7 @@ _081059B0:
sub_81059B8: @ 81059B8
push {r4,r5,lr}
movs r4, 0
- ldr r5, _081059E0 @ =0x02000054
+ ldr r5, _081059E0 @ =gSharedMem + 0x54
_081059BE:
adds r0, r4, r5
ldrb r1, [r0]
@@ -8715,7 +8715,7 @@ _081059BE:
pop {r0}
bx r0
.align 2, 0
-_081059E0: .4byte 0x02000054
+_081059E0: .4byte gSharedMem + 0x54
_081059E4: .4byte gSprites
thumb_func_end sub_81059B8
@@ -8747,7 +8747,7 @@ sub_81059E8: @ 81059E8
orrs r1, r2
strb r1, [r0, 0x1]
bl InitSpriteAffineAnim
- ldr r0, _08105A34 @ =0x02000000
+ ldr r0, _08105A34 @ =gSharedMem
adds r0, 0x43
strb r4, [r0]
pop {r4}
@@ -8756,7 +8756,7 @@ sub_81059E8: @ 81059E8
.align 2, 0
_08105A2C: .4byte gSpriteTemplate_83ED564
_08105A30: .4byte gSprites
-_08105A34: .4byte 0x02000000
+_08105A34: .4byte gSharedMem
thumb_func_end sub_81059E8
thumb_func_start sub_8105A38
@@ -8842,7 +8842,7 @@ _08105AB4:
thumb_func_start sub_8105ACC
sub_8105ACC: @ 8105ACC
ldr r2, _08105AE4 @ =gSprites
- ldr r0, _08105AE8 @ =0x02000000
+ ldr r0, _08105AE8 @ =gSharedMem
adds r0, 0x43
ldrb r1, [r0]
lsls r0, r1, 4
@@ -8855,13 +8855,13 @@ sub_8105ACC: @ 8105ACC
bx lr
.align 2, 0
_08105AE4: .4byte gSprites
-_08105AE8: .4byte 0x02000000
+_08105AE8: .4byte gSharedMem
thumb_func_end sub_8105ACC
thumb_func_start sub_8105AEC
sub_8105AEC: @ 8105AEC
push {r4,lr}
- ldr r0, _08105B14 @ =0x02000000
+ ldr r0, _08105B14 @ =gSharedMem
adds r0, 0x43
ldrb r0, [r0]
lsls r4, r0, 4
@@ -8879,7 +8879,7 @@ sub_8105AEC: @ 8105AEC
pop {r0}
bx r0
.align 2, 0
-_08105B14: .4byte 0x02000000
+_08105B14: .4byte gSharedMem
_08105B18: .4byte gSprites
thumb_func_end sub_8105AEC
@@ -9321,7 +9321,7 @@ _08105E24:
.4byte _08105E94
.4byte _08105EAA
_08105E3C:
- ldr r0, _08105E6C @ =0x02000000
+ ldr r0, _08105E6C @ =gSharedMem
ldrb r1, [r0, 0xA]
subs r1, 0x1
lsls r1, 24
@@ -9346,7 +9346,7 @@ _08105E52:
strh r0, [r4, 0x30]
b _08105EAE
.align 2, 0
-_08105E6C: .4byte 0x02000000
+_08105E6C: .4byte gSharedMem
_08105E70:
ldrh r0, [r4, 0x20]
adds r0, 0x4
@@ -9890,7 +9890,7 @@ _08106248:
beq _081062FC
b _0810634A
_08106252:
- ldr r2, _081062BC @ =0x02000000
+ ldr r2, _081062BC @ =gSharedMem
adds r1, r2, 0
adds r1, 0x5C
movs r0, 0x2F
@@ -9933,7 +9933,7 @@ _08106296:
movs r0, 0xD0
strh r0, [r5, 0x34]
_081062A2:
- ldr r2, _081062BC @ =0x02000000
+ ldr r2, _081062BC @ =gSharedMem
ldrh r0, [r5, 0x32]
lsls r0, 8
ldrh r1, [r5, 0x34]
@@ -9947,10 +9947,10 @@ _081062A2:
ble _0810634A
b _0810633C
.align 2, 0
-_081062BC: .4byte 0x02000000
+_081062BC: .4byte gSharedMem
_081062C0: .4byte 0x00002088
_081062C4:
- ldr r6, _08106354 @ =0x02000000
+ ldr r6, _08106354 @ =gSharedMem
movs r1, 0x12
ldrsh r0, [r6, r1]
cmp r0, 0
@@ -10000,7 +10000,7 @@ _08106318:
movs r0, 0xD0
strh r0, [r5, 0x34]
_08106324:
- ldr r2, _08106354 @ =0x02000000
+ ldr r2, _08106354 @ =gSharedMem
ldrh r0, [r5, 0x32]
lsls r0, 8
ldrh r1, [r5, 0x34]
@@ -10026,7 +10026,7 @@ _0810634A:
pop {r0}
bx r0
.align 2, 0
-_08106354: .4byte 0x02000000
+_08106354: .4byte gSharedMem
_08106358: .4byte SpriteCallbackDummy
_0810635C: .4byte 0x0000c0e0
thumb_func_end sub_8106230
@@ -10072,7 +10072,7 @@ _08106398: .4byte gUnknown_083EDE20
thumb_func_start sub_810639C
sub_810639C: @ 810639C
- ldr r2, _081063BC @ =0x02000000
+ ldr r2, _081063BC @ =gSharedMem
adds r1, r2, 0
adds r1, 0x58
movs r0, 0xF0
@@ -10088,7 +10088,7 @@ sub_810639C: @ 810639C
strh r1, [r0]
bx lr
.align 2, 0
-_081063BC: .4byte 0x02000000
+_081063BC: .4byte gSharedMem
thumb_func_end sub_810639C
thumb_func_start sub_81063C0
@@ -10096,7 +10096,7 @@ sub_81063C0: @ 81063C0
push {r4,lr}
bl sub_8106404
ldr r0, _081063F0 @ =gSlotMachineReelTimeLights_Gfx
- ldr r4, _081063F4 @ =0x02010000
+ ldr r4, _081063F4 @ =gSharedMem + 0x10000
adds r1, r4, 0
bl LZDecompressWram
ldr r0, _081063F8 @ =gUnknown_083EDE8C
@@ -10114,7 +10114,7 @@ sub_81063C0: @ 81063C0
bx r0
.align 2, 0
_081063F0: .4byte gSlotMachineReelTimeLights_Gfx
-_081063F4: .4byte 0x02010000
+_081063F4: .4byte gSharedMem + 0x10000
_081063F8: .4byte gUnknown_083EDE8C
_081063FC: .4byte gUnknown_083EDC2C
_08106400: .4byte gSlotMachineSpritePalettes
@@ -10123,7 +10123,7 @@ _08106400: .4byte gSlotMachineSpritePalettes
thumb_func_start sub_8106404
sub_8106404: @ 8106404
push {r4,r5,lr}
- ldr r3, _0810643C @ =0x02010000
+ ldr r3, _0810643C @ =gSharedMem + 0x10000
movs r2, 0
ldr r5, _08106440 @ =gUnknown_083EDCDC
ldr r0, _08106444 @ =gUnknown_083EDCE4
@@ -10151,7 +10151,7 @@ _08106414:
pop {r0}
bx r0
.align 2, 0
-_0810643C: .4byte 0x02010000
+_0810643C: .4byte gSharedMem + 0x10000
_08106440: .4byte gUnknown_083EDCDC
_08106444: .4byte gUnknown_083EDCE4
thumb_func_end sub_8106404
diff --git a/asmdiff.sh b/asmdiff.sh
index a4b465b6e..a4b465b6e 100644..100755
--- a/asmdiff.sh
+++ b/asmdiff.sh
diff --git a/data-de/text/credits.inc b/data-de/text/credits.inc
deleted file mode 100644
index 3b6119866..000000000
--- a/data-de/text/credits.inc
+++ /dev/null
@@ -1,975 +0,0 @@
-Text_Version_Ruby:
- .string "POKéMON RUBIN-EDITION$"
-Text_Version_Sapphire:
- .string "POKéMON SAPHIR-EDITION$"
-Category_Credits:
- .string "{PALETTE 9}Credits$"
-Category_ExecutiveDirector:
- .string "{PALETTE 9}Executive Director$"
-Category_Director:
- .string "{PALETTE 9}Director$"
-Category_ArtDirector:
- .string "{PALETTE 9}Art Director$"
-Category_BattleDirector:
- .string "{PALETTE 9}Battle Director$"
-Category_MainProgrammer:
- .string "{PALETTE 9}Main Programmer$"
-Category_BattleSystemProgrammer:
- .string "{PALETTE 9}Battle System Programmer$"
-Category_FieldSystemProgrammer:
- .string "{PALETTE 9}Field System Programmer$"
-Category_Programmers:
- .string "{PALETTE 9}Programmers$"
-Category_MainGraphicDesigner:
- .string "{PALETTE 9}Main Graphic Designer$"
-Category_POKeMONGraphicDesigners:
- .string "{PALETTE 9}POKéMON & Graphic Designers$"
-Category_POKeMONDesigners:
- .string "{PALETTE 9}POKéMON Designers$"
-Category_MusicComposition:
- .string "{PALETTE 9}Music Composition$"
-Category_SoundEffectsPOKeMONVoices:
- .string "{PALETTE 9}Sound Effects & POKéMON Voices$"
-Category_GameDesigners:
- .string "{PALETTE 9}Game Designers$"
-Category_PlotScenario:
- .string "{PALETTE 9}Plot Scenario$"
-Category_GameScenario:
- .string "{PALETTE 9}Game Scenario$"
-Category_ScriptDesigners:
- .string "{PALETTE 9}Script Designers$"
-Category_MapDesigners:
- .string "{PALETTE 9}Map Designers$"
-Category_MapDataDesigners:
- .string "{PALETTE 9}Map Data Designers$"
-Category_ParametricDesigners:
- .string "{PALETTE 9}Parametric Designers$"
-Category_POKeDEXText:
- .string "{PALETTE 9}POKéDEX Text$"
-Category_EnvironmentToolProgrammers:
- .string "{PALETTE 9}Environment & Tool Programmers$"
-Category_ProductTesting:
- .string "{PALETTE 9}Product Testing$"
-Category_SpecialThanks:
- .string "{PALETTE 9}Special Thanks$"
-Category_Coordinators:
- .string "{PALETTE 9}Coordinators$"
-Category_Producers:
- .string "{PALETTE 9}Producers$"
-Category_ExecutiveProducers:
- .string "{PALETTE 9}Executive Producers$"
-Category_InformationSupervisors:
- .string "{PALETTE 9}Information Supervisors$"
-Category_TaskManagers:
- .string "{PALETTE 9}Task Managers$"
-Category_BrailleCodeCheck:
- .string "{PALETTE 9}Braille Code Check$"
-Category_GermanVersionCoordinators:
- .string "{PALETTE 9}German Version Coordinators$"
-Category_Translators:
- .string "{PALETTE 9}Translators$"
-Category_ProductSupport:
- .string "{PALETTE 9}Product Support$"
-Category_Artwork:
- .string "{PALETTE 9}Artwork$"
-Category_TextEditor:
- .string "{PALETTE 9}Text Editor$"
-Category_NOEProductTesting:
- .string "{PALETTE 9}NOE Product Testing$"
-Category_GraphicDesigners:
- .string "{PALETTE 9}Graphic Designers$"
-Text_SatoshiTajiri:
- .string "Satoshi Tajiri$"
-Text_Masuda:
- .string "Junichi Masuda$"
-Text_Sugimori:
- .string "Ken Sugimori$"
-Text_Morimoto:
- .string "Shigeki Morimoto$"
-Text_TetsuyaWatanabe:
- .string "Tetsuya Watanabe$"
-Text_Sogabe:
- .string "Hisashi Sogabe$"
-Text_Tamada:
- .string "Sousuke Tamada$"
-Text_Mori:
- .string "Akito Mori$"
-Text_Kagaya:
- .string "Keita Kagaya$"
-Text_Matsuda:
- .string "Yoshinori Matsuda$"
-Text_HiroyukiNakamura:
- .string "Hiroyuki Nakamura$"
-Text_Taya:
- .string "Masao Taya$"
-Text_Nohara:
- .string "Satoshi Nohara$"
-Text_TomomichiOhta:
- .string "Tomomichi Ohta$"
-Text_Iwasawa:
- .string "Miyuki Iwasawa$"
-Text_TakenoriOhta:
- .string "Takenori Ohta$"
-Text_Yoshida:
- .string "Hironobu Yoshida$"
-Text_Fujiwara:
- .string "Motofumi Fujiwara$"
-Text_SatoshiOhta:
- .string "Satoshi Ohta$"
-Text_Iwashita:
- .string "Asuka Iwashita$"
-Text_Tomita:
- .string "Aimi Tomita$"
-Text_Unno:
- .string "Takao Unno$"
-Text_Eo:
- .string "Kanako Eo$"
-Text_Okutani:
- .string "Jun Okutani$"
-Text_Nishida:
- .string "Atsuko Nishida$"
-Text_Saito:
- .string "Muneo Saito$"
-Text_Yoshikawa:
- .string "Rena Yoshikawa$"
-Text_Ichinose:
- .string "Go Ichinose$"
-Text_Aoki:
- .string "Morikazu Aoki$"
-Text_Nishino:
- .string "Koji Nishino$"
-Text_Matsushima:
- .string "Kenji Matsushima$"
-Text_TetsujiOhta:
- .string "Tetsuji Ohta$"
-Text_Sato:
- .string "Hitomi Sato$"
-Text_Kawachimaru:
- .string "Takeshi Kawachimaru$"
-Text_Shimoyamada:
- .string "Teruyuki Shimoyamada$"
-Text_Ohmori:
- .string "Shigeru Ohmori$"
-Text_Takahashi:
- .string "Tadashi Takahashi$"
-Text_ToshinobuMatsumiya:
- .string "Toshinobu Matsumiya$"
-Text_Tomisawa:
- .string "Akihito Tomisawa$"
-Text_Enomoto:
- .string "Hiroki Enomoto$"
-Text_Terada:
- .string "Kazuyuki Terada$"
-Text_Sakurai:
- .string "Yuri Sakurai$"
-Text_Sagawa:
- .string "Hiromi Sagawa$"
-Text_Tominaga:
- .string "Kenji Tominaga$"
-Text_YoshioTajiri:
- .string "Yoshio Tajiri$"
-Text_Sasaki:
- .string "Teiko Sasaki$"
-Text_Hamano:
- .string "Sachiko Hamano$"
-Text_ChieMatsumiya:
- .string "Chie Matsumiya$"
-Text_Shinozaki:
- .string "Akiko Shinozaki$"
-Text_Fujii:
- .string "Atsuko Fujii$"
-Text_SuperMarioClub:
- .string "NCL Super Mario Club$"
-Text_Tada:
- .string "Atsushi Tada$"
-Text_Ohnishi:
- .string "Takahiro Ohnishi$"
-Text_Okamura:
- .string "Norihide Okamura$"
-Text_HiroNakamura:
- .string "Hiro Nakamura$"
-Text_Uesugi:
- .string "Hiroyuki Uesugi$"
-Text_Murakawa:
- .string "Teruki Murakawa$"
-Text_Kinashi:
- .string "Akira Kinashi$"
-Text_Takizawa:
- .string "Michiko Takizawa$"
-Text_Takada:
- .string "Makiko Takada$"
-Text_Kondo:
- .string "Takanao Kondo$"
-Text_Mashima:
- .string "Ai Mashima$"
-Text_Nomoto:
- .string "Gakuji Nomoto$"
-Text_Izushi:
- .string "Takehiro Izushi$"
-Text_Yamagami:
- .string "Hitoshi Yamagami$"
-Text_KyokoWatanabe:
- .string "Kyoko Watanabe$"
-Text_Nakano:
- .string "Takao Nakano$"
-Text_Jinnai:
- .string "Hiroyuki Jinnai$"
-Text_Tsuru:
- .string "Hiroaki Tsuru$"
-Text_Ishihara:
- .string "Tsunekaz Ishihara$"
-Text_Iwata:
- .string "Satoru Iwata$"
-Text_Suyama:
- .string "Kazuya Suyama$"
-Text_Mitsuhara:
- .string "Satoshi Mitsuhara$"
-Text_JapanBrailleLibrary:
- .string "Japan Braille Library$"
-Text_Komura:
- .string "Tomotaka Komura$"
-Text_Ohashi:
- .string "Mikiko Ohashi$"
-Text_Yamamoto:
- .string "Souichi Yamamoto$"
-Text_Funakoshi:
- .string "Masanori Funakoshi$"
-Text_Nakamichi:
- .string "Kimiko Nakamichi$"
-Text_Hara:
- .string "Daisuke Hara$"
-Text_Ford:
- .string "Sayoko Blodgett-Ford$"
-Text_Barlow:
- .string "Nicola Pratt-Barlow$"
-Text_Uyama:
- .string "Koji Uyama$"
-Text_EBU:
- .string "European Blind Union$"
-Text_Saeki:
- .string "Naoko Saeki$"
-Text_Sadahisa:
- .string "Kayo Sadahisa$"
-Text_Schafer:
- .string "Daniel Schäfers$"
-Text_Deimel:
- .string "Martina Deimel$"
-Text_Jahn:
- .string "Andrea Jähn$"
-Text_Victoria:
- .string "Ángel Victoria$"
-Text_Mawer:
- .string "Matthew Mawer$"
-Text_Danieli:
- .string "Alessio Danieli$"
-Text_Schnitzer:
- .string "Rudi Schnitzer$"
-Text_Pujos:
- .string "Gabriera Pujós$"
-Text_CreditsTerminator:
- .string "$"
-@ pointer table
-
-CreditsTerminator::
- credits_entry 0, Text_CreditsTerminator
-
-CreditsCredits::
- credits_entry 11, Category_Credits
-
-CreditsExecutiveDirector::
- credits_entry 8, Category_ExecutiveDirector
-
-CreditsDirector::
- credits_entry 12, Category_Director
-
-CreditsArtDirector::
- credits_entry 10, Category_ArtDirector
-
-CreditsBattleDirector::
- credits_entry 10, Category_BattleDirector
-
-CreditsMainProgrammer::
- credits_entry 10, Category_MainProgrammer
-
-CreditsBattleSystemProgrammer::
- credits_entry 8, Category_BattleSystemProgrammer
-
-CreditsFieldSystemProgrammer::
- credits_entry 7, Category_FieldSystemProgrammer
-
-CreditsProgrammers::
- credits_entry 12, Category_Programmers
-
-CreditsMainGraphicDesigner::
- credits_entry 7, Category_MainGraphicDesigner
-
-CreditsPOKeMONGraphicDesigners::
- credits_entry 6, Category_POKeMONGraphicDesigners
-
-CreditsPOKeMONDesigners::
- credits_entry 10, Category_POKeMONDesigners
-
-CreditsMusicComposition::
- credits_entry 13, Category_MusicComposition
-
-CreditsSoundEffectsPOKeMONVoices::
- credits_entry 4, Category_SoundEffectsPOKeMONVoices
-
-CreditsGameDesigners::
- credits_entry 11, Category_GameDesigners
-
-CreditsPlotScenario::
- credits_entry 11, Category_PlotScenario
-
-CreditsGameScenario::
- credits_entry 13, Category_GameScenario
-
-CreditsScriptDesigners::
- credits_entry 10, Category_ScriptDesigners
-
-CreditsMapDesigners::
- credits_entry 11, Category_MapDesigners
-
-CreditsMapDataDesigners::
- credits_entry 9, Category_MapDataDesigners
-
-CreditsParametricDesigners::
- credits_entry 9, Category_ParametricDesigners
-
-CreditsPOKeDEXText::
- credits_entry 11, Category_POKeDEXText
-
-CreditsEnvironmentToolProgrammers::
- credits_entry 6, Category_EnvironmentToolProgrammers
-
-CreditsProductTesting::
- credits_entry 11, Category_ProductTesting
-
-CreditsSpecialThanks::
- credits_entry 10, Category_SpecialThanks
-
-CreditsCoordinators::
- credits_entry 11, Category_Coordinators
-
-CreditsProducers::
- credits_entry 11, Category_Producers
-
-CreditsExecutiveProducers::
- credits_entry 7, Category_ExecutiveProducers
-
-CreditsInformationSupervisors::
- credits_entry 10, Category_InformationSupervisors
-
-CreditsTaskManagers::
- credits_entry 8, Category_TaskManagers
-
-CreditsBrailleCodeCheck::
- credits_entry 10, Category_BrailleCodeCheck
-
-CreditsSatoshiTajiri::
- credits_entry 11, Text_SatoshiTajiri
-
-CreditsMasuda::
- credits_entry 11, Text_Masuda
-
-CreditsSugimori::
- credits_entry 11, Text_Sugimori
-
-CreditsMorimoto::
- credits_entry 11, Text_Morimoto
-
-CreditsTetsuyaWatanabe::
- credits_entry 11, Text_TetsuyaWatanabe
-
-CreditsSogabe::
- credits_entry 11, Text_Sogabe
-
-CreditsTamada::
- credits_entry 11, Text_Tamada
-
-CreditsMori::
- credits_entry 11, Text_Mori
-
-CreditsKagaya::
- credits_entry 11, Text_Kagaya
-
-CreditsMatsuda::
- credits_entry 11, Text_Matsuda
-
-CreditsHiroyukiNakamura::
- credits_entry 11, Text_HiroyukiNakamura
-
-CreditsTaya::
- credits_entry 11, Text_Taya
-
-CreditsNohara::
- credits_entry 11, Text_Nohara
-
-CreditsTomomichiOhta::
- credits_entry 11, Text_TomomichiOhta
-
-CreditsIwasawa::
- credits_entry 11, Text_Iwasawa
-
-CreditsTakenoriOhta::
- credits_entry 11, Text_TakenoriOhta
-
-CreditsYoshida::
- credits_entry 11, Text_Yoshida
-
-CreditsFujiwara::
- credits_entry 11, Text_Fujiwara
-
-CreditsSatoshiOhta::
- credits_entry 11, Text_SatoshiOhta
-
-CreditsIwashita::
- credits_entry 11, Text_Iwashita
-
-CreditsTomita::
- credits_entry 11, Text_Tomita
-
-CreditsUnno::
- credits_entry 11, Text_Unno
-
-CreditsEo::
- credits_entry 11, Text_Eo
-
-CreditsOkutani::
- credits_entry 11, Text_Okutani
-
-CreditsNishida::
- credits_entry 11, Text_Nishida
-
-CreditsSaito::
- credits_entry 11, Text_Saito
-
-CreditsYoshikawa::
- credits_entry 11, Text_Yoshikawa
-
-CreditsIchinose::
- credits_entry 11, Text_Ichinose
-
-CreditsAoki::
- credits_entry 11, Text_Aoki
-
-CreditsNishino::
- credits_entry 11, Text_Nishino
-
-CreditsMatsushima::
- credits_entry 11, Text_Matsushima
-
-CreditsTetsujiOhta::
- credits_entry 11, Text_TetsujiOhta
-
-CreditsSato::
- credits_entry 11, Text_Sato
-
-CreditsKawachimaru::
- credits_entry 11, Text_Kawachimaru
-
-CreditsShimoyamada::
- credits_entry 11, Text_Shimoyamada
-
-CreditsOhmori::
- credits_entry 11, Text_Ohmori
-
-CreditsTakahashi::
- credits_entry 11, Text_Takahashi
-
-CreditsToshinobuMatsumiya::
- credits_entry 11, Text_ToshinobuMatsumiya
-
-CreditsTomisawa::
- credits_entry 11, Text_Tomisawa
-
-CreditsEnomoto::
- credits_entry 11, Text_Enomoto
-
-CreditsTerada::
- credits_entry 11, Text_Terada
-
-CreditsSakurai::
- credits_entry 11, Text_Sakurai
-
-CreditsSagawa::
- credits_entry 11, Text_Sagawa
-
-CreditsTominaga::
- credits_entry 11, Text_Tominaga
-
-CreditsYoshioTajiri:
- credits_entry 11, Text_YoshioTajiri
-
-CreditsSasaki::
- credits_entry 11, Text_Sasaki
-
-CreditsHamano::
- credits_entry 11, Text_Hamano
-
-CreditsChieMatsumiya::
- credits_entry 11, Text_ChieMatsumiya
-
-CreditsShinozaki::
- credits_entry 11, Text_Shinozaki
-
-CreditsFujii::
- credits_entry 11, Text_Fujii
-
-CreditsSuperMarioClub::
- credits_entry 11, Text_SuperMarioClub
-
-CreditsTada::
- credits_entry 11, Text_Tada
-
-CreditsOhnishi::
- credits_entry 11, Text_Ohnishi
-
-CreditsOkamura::
- credits_entry 11, Text_Okamura
-
-CreditsHiroNakamura::
- credits_entry 11, Text_HiroNakamura
-
-CreditsUesugi::
- credits_entry 11, Text_Uesugi
-
-CreditsMurakawa::
- credits_entry 11, Text_Murakawa
-
-CreditsKinashi::
- credits_entry 11, Text_Kinashi
-
-CreditsTakizawa::
- credits_entry 11, Text_Takizawa
-
-CreditsTakada::
- credits_entry 11, Text_Takada
-
-CreditsKondo::
- credits_entry 11, Text_Kondo
-
-CreditsMashima::
- credits_entry 11, Text_Mashima
-
-CreditsNomoto::
- credits_entry 11, Text_Nomoto
-
-CreditsIzushi::
- credits_entry 11, Text_Izushi
-
-CreditsYamagami::
- credits_entry 11, Text_Yamagami
-
-CreditsKyokoWatanabe::
- credits_entry 11, Text_KyokoWatanabe
-
-CreditsNakano::
- credits_entry 11, Text_Nakano
-
-CreditsJinnai::
- credits_entry 11, Text_Jinnai
-
-CreditsTsuru::
- credits_entry 11, Text_Tsuru
-
-CreditsIshihara::
- credits_entry 11, Text_Ishihara
-
-CreditsIwata::
- credits_entry 11, Text_Iwata
-
-CreditsSuyama::
- credits_entry 11, Text_Suyama
-
-CreditsMitsuhara::
- credits_entry 11, Text_Mitsuhara
-
-CreditsJapanBrailleLibrary::
- credits_entry 9, Text_JapanBrailleLibrary
-
-CreditsKomura::
- credits_entry 11, Text_Komura
-
-CreditsOhashi::
- credits_entry 11, Text_Ohashi
-
-CreditsTranslators::
- credits_entry 0, Category_Translators
-
-CreditsProductSupport::
- credits_entry 0, Category_ProductSupport
-
-CreditsArtwork::
- credits_entry 0, Category_Artwork
-
-CreditsTextEditor::
- credits_entry 0, Category_TextEditor
-
-CreditsGraphicDesigners::
- credits_entry 0, Category_GraphicDesigners
-
-CreditsYamamoto::
- credits_entry 0, Text_Yamamoto
-
-CreditsFunakoshi::
- credits_entry 0, Text_Funakoshi
-
-CreditsNakamichi::
- credits_entry 0, Text_Nakamichi
-
-CreditsHara::
- credits_entry 0, Text_Hara
-
-CreditsFord::
- credits_entry 0, Text_Ford
-
-CreditsBarlow::
- credits_entry 0, Text_Barlow
-
-CreditsUyama::
- credits_entry 0, Text_Uyama
-
-CreditsEBU::
- credits_entry 0, Text_EBU
-
-CreditsVersion::
- .ifdef SAPPHIRE
- credits_entry 0, Text_Version_Sapphire
- .else
- credits_entry 0, Text_Version_Ruby
- .endif
-
-CreditsNOEProductTesting::
- credits_entry 0, Category_NOEProductTesting
-
-CreditsSaeki::
- credits_entry 0, Text_Saeki
-
-CreditsSadahisa::
- credits_entry 0, Text_Sadahisa
-
-CreditsGermanVersionCoordinators::
- credits_entry 0, Category_GermanVersionCoordinators
-
-CreditsSchafer::
- credits_entry 0, Text_Schafer
-
-CreditsDeimel::
- credits_entry 0, Text_Deimel
-
-CreditsJahn::
- credits_entry 0, Text_Jahn
-
-CreditsVictoria::
- credits_entry 0, Text_Victoria
-
-CreditsMawer::
- credits_entry 0, Text_Mawer
-
-CreditsDanieli::
- credits_entry 0, Text_Danieli
-
-CreditsSchnitzer::
- credits_entry 0, Text_Schnitzer
-
-CreditsPujos::
- credits_entry 0, Text_Pujos
-
-@ pointer table to credits entries
-
- .align 2
-gCreditsEntryPointerTable:: @ 840C5F0
- .4byte CreditsTerminator
- .4byte CreditsVersion
- .4byte CreditsCredits
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsTerminator
- .4byte CreditsDirector
- .4byte CreditsMasuda
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsTerminator
- .4byte CreditsArtDirector
- .4byte CreditsSugimori
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsTerminator
- .4byte CreditsBattleDirector
- .4byte CreditsMorimoto
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsTerminator
- .4byte CreditsMainProgrammer
- .4byte CreditsTetsuyaWatanabe
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsBattleSystemProgrammer
- .4byte CreditsSogabe
- .4byte CreditsFieldSystemProgrammer
- .4byte CreditsTamada
- .4byte CreditsTerminator
-
- .4byte CreditsProgrammers
- .4byte CreditsMori
- .4byte CreditsKagaya
- .4byte CreditsMatsuda
- .4byte CreditsTerminator
-
- .4byte CreditsProgrammers
- .4byte CreditsHiroyukiNakamura
- .4byte CreditsTaya
- .4byte CreditsNohara
- .4byte CreditsTerminator
-
- .4byte CreditsProgrammers
- .4byte CreditsTomomichiOhta
- .4byte CreditsIwasawa
- .4byte CreditsTakenoriOhta
- .4byte CreditsTerminator
-
- .4byte CreditsTerminator
- .4byte CreditsMainGraphicDesigner
- .4byte CreditsYoshida
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsPOKeMONGraphicDesigners
- .4byte CreditsSugimori
- .4byte CreditsYoshida
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsPOKeMONGraphicDesigners
- .4byte CreditsFujiwara
- .4byte CreditsSatoshiOhta
- .4byte CreditsIwashita
- .4byte CreditsTerminator
-
- .4byte CreditsPOKeMONGraphicDesigners
- .4byte CreditsTomita
- .4byte CreditsUnno
- .4byte CreditsEo
- .4byte CreditsTerminator
-
- .4byte CreditsPOKeMONDesigners
- .4byte CreditsMorimoto
- .4byte CreditsOkutani
- .4byte CreditsNishida
- .4byte CreditsTerminator
-
- .4byte CreditsPOKeMONDesigners
- .4byte CreditsSaito
- .4byte CreditsYoshikawa
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsMusicComposition
- .4byte CreditsIchinose
- .4byte CreditsAoki
- .4byte CreditsMasuda
- .4byte CreditsTerminator
-
- .4byte CreditsTerminator
- .4byte CreditsSoundEffectsPOKeMONVoices
- .4byte CreditsAoki
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsGameDesigners
- .4byte CreditsMasuda
- .4byte CreditsMorimoto
- .4byte CreditsNishino
- .4byte CreditsTerminator
-
- .4byte CreditsGameDesigners
- .4byte CreditsMatsushima
- .4byte CreditsTetsujiOhta
- .4byte CreditsSato
- .4byte CreditsKawachimaru
-
- .4byte CreditsGameDesigners
- .4byte CreditsShimoyamada
- .4byte CreditsOhmori
- .4byte CreditsTakahashi
- .4byte CreditsTerminator
-
- .4byte CreditsPlotScenario
- .4byte CreditsMasuda
- .4byte CreditsTomisawa
- .4byte CreditsNishino
- .4byte CreditsTerminator
-
- .4byte CreditsGameScenario
- .4byte CreditsToshinobuMatsumiya
- .4byte CreditsTomisawa
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsScriptDesigners
- .4byte CreditsNohara
- .4byte CreditsTetsujiOhta
- .4byte CreditsTomomichiOhta
- .4byte CreditsTerminator
-
- .4byte CreditsMapDesigners
- .4byte CreditsOhmori
- .4byte CreditsTetsujiOhta
- .4byte CreditsNishino
- .4byte CreditsTerminator
-
- .4byte CreditsMapDataDesigners
- .4byte CreditsTetsujiOhta
- .4byte CreditsTakahashi
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsParametricDesigners
- .4byte CreditsNishino
- .4byte CreditsMorimoto
- .4byte CreditsTetsujiOhta
- .4byte CreditsShimoyamada
-
- .4byte CreditsTerminator
- .4byte CreditsPOKeDEXText
- .4byte CreditsMatsushima
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsEnvironmentToolProgrammers
- .4byte CreditsSogabe
- .4byte CreditsTamada
- .4byte CreditsHiroyukiNakamura
- .4byte CreditsMori
-
- .4byte CreditsProductTesting
- .4byte CreditsSuperMarioClub
- .4byte CreditsTada
- .4byte CreditsOhnishi
- .4byte CreditsOkamura
-
- .4byte CreditsSpecialThanks
- .4byte CreditsTominaga
- .4byte CreditsYoshioTajiri
- .4byte CreditsSasaki
- .4byte CreditsTerminator
-
- .4byte CreditsSpecialThanks
- .4byte CreditsHamano
- .4byte CreditsChieMatsumiya
- .4byte CreditsShinozaki
- .4byte CreditsFujii
-
- .4byte CreditsSpecialThanks
- .4byte CreditsSuyama
- .4byte CreditsMitsuhara
- .4byte CreditsKomura
- .4byte CreditsOhashi
-
- .4byte CreditsSpecialThanks
- .4byte CreditsTakizawa
- .4byte CreditsTakada
- .4byte CreditsKondo
- .4byte CreditsMashima
-
- .4byte CreditsInformationSupervisors
- .4byte CreditsEnomoto
- .4byte CreditsTerada
- .4byte CreditsSakurai
- .4byte CreditsSagawa
-
- .4byte CreditsCoordinators
- .4byte CreditsKyokoWatanabe
- .4byte CreditsNakano
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsTaskManagers
- .4byte CreditsYamagami
- .4byte CreditsNomoto
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsProducers
- .4byte CreditsJinnai
- .4byte CreditsIzushi
- .4byte CreditsTsuru
- .4byte CreditsTerminator
-
- .4byte CreditsTerminator
- .4byte CreditsExecutiveDirector
- .4byte CreditsSatoshiTajiri
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsTerminator
- .4byte CreditsExecutiveProducers
- .4byte CreditsIwata
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsTerminator
- .4byte CreditsExecutiveProducers
- .4byte CreditsIshihara
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsGermanVersionCoordinators
- .4byte CreditsUesugi
- .4byte CreditsSadahisa
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsTranslators
- .4byte CreditsSchafer
- .4byte CreditsDeimel
- .4byte CreditsJahn
- .4byte CreditsTerminator
-
- .4byte CreditsProgrammers
- .4byte CreditsMurakawa
- .4byte CreditsYamamoto
- .4byte CreditsKinashi
- .4byte CreditsTerminator
-
- .4byte CreditsGraphicDesigners
- .4byte CreditsYamamoto
- .4byte CreditsKinashi
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsProductSupport
- .4byte CreditsNakamichi
- .4byte CreditsSaeki
- .4byte CreditsHara
- .4byte CreditsTerminator
-
- .4byte CreditsNOEProductTesting
- .4byte CreditsVictoria
- .4byte CreditsMawer
- .4byte CreditsDanieli
- .4byte CreditsSchnitzer
-
- .4byte CreditsTerminator
- .4byte CreditsBrailleCodeCheck
- .4byte CreditsEBU
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsSpecialThanks
- .4byte CreditsHiroNakamura
- .4byte CreditsFord
- .4byte CreditsBarlow
- .4byte CreditsTerminator
-
- .4byte CreditsSpecialThanks
- .4byte CreditsUyama
- .4byte CreditsPujos
- .4byte CreditsTerminator
- .4byte CreditsTerminator
diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s
index e046794b3..83bacd844 100644
--- a/data/battle_scripts_1.s
+++ b/data/battle_scripts_1.s
@@ -244,10 +244,10 @@ MoveEffect_Unused83: @ 81D6F14
MoveEffect_Unused8D: @ 81D6F14
MoveEffect_UnusedA3: @ 81D6F14
MoveEffect_VitalThrow: @ 81D6F14
- jumpifhalfword 1, 0x2024be6, 57, BattleScript_1D6F3A
+ jumpifhalfword 1, gCurrentMove, 57, BattleScript_1D6F3A
jumpifspecialstatusflag TARGET, 0x40000, 1, BattleScript_1D6F3A
- orword 0x2024c6c, 0x40000
- setbyte 0x201601f, 2
+ orword gHitMarker, 0x40000
+ setbyte gSharedMem + 0x1601F, 2
BattleScript_1D6F3A: @ 81D6F3A
attackcanceler
@@ -281,12 +281,12 @@ BattleScript_1D6F48: @ 81D6F48
faintpokemon TARGET, 0, 0x0
BattleScript_EndTurn:: @ 81D6F62
- setbyte 0x201600c, 0
+ setbyte gSharedMem + 0x1600C, 0
atk49 0, 0
end
BattleScript_1D6F6C: @ 81D6F6C
- orbyte 0x2024c68, 1
+ orbyte gBattleMoveFlags, 1
BattleScript_1D6F72: @ 81D6F72
attackstring
@@ -313,7 +313,7 @@ MoveEffect_Sleep: @ 81D6F81
jumpifhalverset TARGET, 32, BattleScript_1D9037
attackanimation
waitanimation
- setbyte 0x2024d21, 1
+ setbyte gUnknown_02024D1F + 0x2, 1
seteffecttarget
jump BattleScript_EndTurn
@@ -337,7 +337,7 @@ BattleScript_1D6FE0: @ 81D6FE0
MoveEffect_PoisonHit: @ 81D6FF0
MoveEffect_PoisonTail: @ 81D6FF0
- setbyte 0x2024d21, 2
+ setbyte gUnknown_02024D1F + 0x2, 2
jump BattleScript_1D6F14
MoveEffect_Absorb: @ 81D6FFB
@@ -361,19 +361,19 @@ MoveEffect_Absorb: @ 81D6FFB
resultmessage
waitmessage 64
negativedamage
- orword 0x2024c6c, 0x100
+ orword gHitMarker, 0x100
jumpifability TARGET, ABILITY_LIQUID_OOZE, BattleScript_1D7037
- setbyte 0x2024d23, 0
+ setbyte gUnknown_02024D1F + 0x4, 0
jump BattleScript_1D703F
BattleScript_1D7037: @ 81D7037
manipulatedamage 0
- setbyte 0x2024d23, 1
+ setbyte gUnknown_02024D1F + 0x4, 1
BattleScript_1D703F: @ 81D703F
graphicalhpupdate USER
datahpupdate USER
- jumpifbyte 4, 0x2024c68, 41, BattleScript_1D7056
+ jumpifbyte 4, gBattleMoveFlags, 41, BattleScript_1D7056
printfromtable BattleTextList_4015D0
waitmessage 64
@@ -384,15 +384,15 @@ BattleScript_1D7056: @ 81D7056
MoveEffect_BlazeKick: @ 81D7069
MoveEffect_BurnHit: @ 81D7069
- setbyte 0x2024d21, 3
+ setbyte gUnknown_02024D1F + 0x2, 3
jump BattleScript_1D6F14
MoveEffect_FreezeHit: @ 81D7074
- setbyte 0x2024d21, 4
+ setbyte gUnknown_02024D1F + 0x2, 4
jump BattleScript_1D6F14
MoveEffect_ParalyzeHit: @ 81D707F
- setbyte 0x2024d21, 5
+ setbyte gUnknown_02024D1F + 0x2, 5
jump BattleScript_1D6F14
MoveEffect_Explosion: @ 81D708A
@@ -402,7 +402,7 @@ MoveEffect_Explosion: @ 81D708A
faintifabilitynotdamp
setuserhptozero
waitstateatk
- jumpifbyte 5, 0x2024c68, 1, BattleScript_1D70A5
+ jumpifbyte 5, gBattleMoveFlags, 1, BattleScript_1D70A5
callatk BattleScript_1D70FB
jump BattleScript_1D70A7
@@ -427,7 +427,7 @@ BattleScript_1D70A7: @ 81D70A7
resultmessage
waitmessage 64
faintpokemon TARGET, 0, 0x0
- setbyte 0x201600c, 0
+ setbyte gSharedMem + 0x1600C, 0
atk49 2, 16
jumpwhiletargetvalid BattleScript_1D70A7
faintpokemon USER, 0, 0x0
@@ -437,17 +437,17 @@ BattleScript_1D70E0: @ 81D70E0
missmessage
resultmessage
waitmessage 64
- setbyte 0x201600c, 0
+ setbyte gSharedMem + 0x1600C, 0
atk49 2, 16
jumpwhiletargetvalid BattleScript_1D70A7
faintpokemon USER, 0, 0x0
end
BattleScript_1D70FB: @ 81D70FB
- bicbyte 0x2024c68, 1
+ bicbyte gBattleMoveFlags, 1
attackanimation
waitanimation
- orbyte 0x2024c68, 1
+ orbyte gBattleMoveFlags, 1
return
MoveEffect_DreamEater: @ 81D710A
@@ -481,10 +481,10 @@ BattleScript_1D7129: @ 81D7129
resultmessage
waitmessage 64
negativedamage
- orword 0x2024c6c, 0x100
+ orword gHitMarker, 0x100
graphicalhpupdate USER
datahpupdate USER
- jumpifbyte 4, 0x2024c68, 41, BattleScript_1D7167
+ jumpifbyte 4, gBattleMoveFlags, 41, BattleScript_1D7167
printstring BATTLE_TEXT_DreamEaten
waitmessage 64
@@ -498,25 +498,25 @@ MoveEffect_MirrorMove: @ 81D7173
pause 64
jumptolastusedattack
ppreduce
- orbyte 0x2024c68, 32
+ orbyte gBattleMoveFlags, 32
printstring BATTLE_TEXT_MirrorFail
waitmessage 64
jump BattleScript_EndTurn
MoveEffect_AttackUp: @ 81D718B
- setbyte 0x201601e, 17
+ setbyte gSharedMem + 0x1601E, 17
jump BattleScript_1D71B2
MoveEffect_DefenseUp: @ 81D7196
- setbyte 0x201601e, 18
+ setbyte gSharedMem + 0x1601E, 18
jump BattleScript_1D71B2
MoveEffect_SpecialAttackUp: @ 81D71A1
- setbyte 0x201601e, 20
+ setbyte gSharedMem + 0x1601E, 20
jump BattleScript_1D71B2
MoveEffect_EvasionUp: @ 81D71AC
- setbyte 0x201601e, 23
+ setbyte gSharedMem + 0x1601E, 23
BattleScript_1D71B2: @ 81D71B2
attackcanceler
@@ -525,7 +525,7 @@ BattleScript_1D71B3: @ 81D71B3
attackstring
ppreduce
statbuffchange 65, BattleScript_1D71E0
- jumpifbyte 1, 0x2024d23, 2, BattleScript_1D71CE
+ jumpifbyte 1, gUnknown_02024D1F + 0x4, 2, BattleScript_1D71CE
pause 32
jump BattleScript_1D71D8
@@ -535,7 +535,7 @@ BattleScript_1D71CE: @ 81D71CE
BattleScript_1D71D0: @ 81D71D0
atk47
- playanimation USER, 1, 0x20160a4
+ playanimation USER, 1, gSharedMem + 0x160A4
BattleScript_1D71D8: @ 81D71D8
printfromtable BattleTextList_401570
@@ -545,29 +545,29 @@ BattleScript_1D71E0: @ 81D71E0
jump BattleScript_EndTurn
BattleScript_StatUp:: @ 81D71E5
- playanimation 2, 1, 0x20160a4
+ playanimation 2, 1, gSharedMem + 0x160A4
printfromtable BattleTextList_401570
waitmessage 64
return
MoveEffect_AttackDown: @ 81D71F5
- setbyte 0x201601e, 145
+ setbyte gSharedMem + 0x1601E, 145
jump BattleScript_1D7227
MoveEffect_DefenseDown: @ 81D7200
- setbyte 0x201601e, 146
+ setbyte gSharedMem + 0x1601E, 146
jump BattleScript_1D7227
MoveEffect_SpeedDown: @ 81D720B
- setbyte 0x201601e, 147
+ setbyte gSharedMem + 0x1601E, 147
jump BattleScript_1D7227
MoveEffect_AccuracyDown: @ 81D7216
- setbyte 0x201601e, 150
+ setbyte gSharedMem + 0x1601E, 150
jump BattleScript_1D7227
MoveEffect_EvasionDown: @ 81D7221
- setbyte 0x201601e, 151
+ setbyte gSharedMem + 0x1601E, 151
BattleScript_1D7227: @ 81D7227
attackcanceler
@@ -576,8 +576,8 @@ BattleScript_1D7227: @ 81D7227
attackstring
ppreduce
statbuffchange 1, BattleScript_1D7271
- jumpifbyte 3, 0x2024d23, 2, BattleScript_1D725F
- jumpifbyte 0, 0x2024d23, 3, BattleScript_1D7271
+ jumpifbyte 3, gUnknown_02024D1F + 0x4, 2, BattleScript_1D725F
+ jumpifbyte 0, gUnknown_02024D1F + 0x4, 3, BattleScript_1D7271
pause 32
jump BattleScript_1D7269
@@ -585,7 +585,7 @@ BattleScript_1D725F: @ 81D725F
attackanimation
waitanimation
atk47
- playanimation TARGET, 1, 0x20160a4
+ playanimation TARGET, 1, gSharedMem + 0x160A4
BattleScript_1D7269: @ 81D7269
printfromtable BattleTextList_40157C
@@ -595,7 +595,7 @@ BattleScript_1D7271: @ 81D7271
jump BattleScript_EndTurn
BattleScript_StatDown:: @ 81D7276
- playanimation 2, 1, 0x20160a4
+ playanimation 2, 1, gSharedMem + 0x160A4
printfromtable BattleTextList_40157C
waitmessage 64
return
@@ -617,7 +617,7 @@ MoveEffect_Bide: @ 81D7297
ppreduce
attackanimation
waitanimation
- orword 0x2024c6c, 0x8000000
+ orword gHitMarker, 0x8000000
setbide
jump BattleScript_EndTurn
@@ -649,21 +649,21 @@ MoveEffect_MultiHit: @ 81D72ED
ppreduce
setloopcounter 0
atk8e
- setbyte 0x2016112, 0
+ setbyte gSharedMem + 0x16112, 0
BattleScript_1D7300: @ 81D7300
jumpiffainted USER, BattleScript_1D7396
jumpiffainted TARGET, BattleScript_1D7377
- jumpifhalfword 0, 0x2024be8, 214, BattleScript_1D7322
+ jumpifhalfword 0, gUnknown_02024BE8, 214, BattleScript_1D7322
jumpifstatus USER, SLP, BattleScript_1D7377
BattleScript_1D7322: @ 81D7322
atk25
- copyarray 0x2024d21, 0x2016112, 1
+ copyarray gUnknown_02024D1F + 0x2, gSharedMem + 0x16112, 1
critcalc
atk5
atk6
- jumpifbyte 4, 0x2024c68, 41, BattleScript_1D7374
+ jumpifbyte 4, gBattleMoveFlags, 41, BattleScript_1D7374
atk7
attackanimation
waitanimation
@@ -676,10 +676,10 @@ BattleScript_1D7322: @ 81D7322
waitmessage 64
printstring BATTLE_TEXT_Terminator2
waitmessage 1
- addbyte 0x20160e4, 1
- setbyte 0x201600c, 0
+ addbyte gSharedMem + 0x160E4, 1
+ setbyte gSharedMem + 0x1600C, 0
atk49 2, 16
- jumpifbyte 4, 0x2024c68, 64, BattleScript_1D7377
+ jumpifbyte 4, gBattleMoveFlags, 64, BattleScript_1D7377
atk27 BattleScript_1D7300
jump BattleScript_1D7377
@@ -689,17 +689,17 @@ BattleScript_1D7374: @ 81D7374
BattleScript_1D7377: @ 81D7377
resultmessage
waitmessage 64
- jumpifbyte 4, 0x2024c68, 41, BattleScript_1D7396
- copyarray gBattleTextBuff1, 0x20160e0, 6
+ jumpifbyte 4, gBattleMoveFlags, 41, BattleScript_1D7396
+ copyarray gBattleTextBuff1, gSharedMem + 0x160E0, 6
printstring BATTLE_TEXT_HitMulti
waitmessage 64
BattleScript_1D7396: @ 81D7396
seteffectwithchancetarget
faintpokemon TARGET, 0, 0x0
- setbyte 0x201600c, 2
+ setbyte gSharedMem + 0x1600C, 2
atk49 1, 0
- setbyte 0x201600c, 4
+ setbyte gSharedMem + 0x1600C, 4
atk49 0, 0
end
@@ -715,7 +715,7 @@ MoveEffect_Conversion: @ 81D73B1
jump BattleScript_EndTurn
MoveEffect_FlinchHit: @ 81D73C6
- setbyte 0x2024d21, 8
+ setbyte gUnknown_02024D1F + 0x2, 8
jump BattleScript_1D6F14
MoveEffect_RestoreHp: @ 81D73D1
@@ -725,7 +725,7 @@ MoveEffect_RestoreHp: @ 81D73D1
setdamageasrestorehalfmaxhp BattleScript_1D83B5, 1
attackanimation
waitanimation
- orword 0x2024c6c, 0x100
+ orword gHitMarker, 0x100
graphicalhpupdate USER
datahpupdate USER
printstring BATTLE_TEXT_RegainedHealth
@@ -747,7 +747,7 @@ MoveEffect_Toxic: @ 81D73F4
jumpifhalverset TARGET, 32, BattleScript_1D9037
attackanimation
waitanimation
- setbyte 0x2024d21, 6
+ setbyte gUnknown_02024D1F + 0x2, 6
seteffecttarget
resultmessage
waitmessage 64
@@ -760,13 +760,13 @@ BattleScript_1D7455: @ 81D7455
jump BattleScript_EndTurn
BattleScript_1D7463: @ 81D7463
- copyarray 0x2024c0a, 0x2024c08, 1
- setbyte 0x2024d23, 0
+ copyarray gEffectBank, gBankTarget, 1
+ setbyte gUnknown_02024D1F + 0x4, 0
callatk BattleScript_PSNPrevention
jump BattleScript_EndTurn
MoveEffect_PayDay: @ 81D747D
- setbyte 0x2024d21, 11
+ setbyte gUnknown_02024D1F + 0x2, 11
jump BattleScript_1D6F14
MoveEffect_LightScreen: @ 81D7488
@@ -777,7 +777,7 @@ MoveEffect_LightScreen: @ 81D7488
jump BattleScript_1D7786
MoveEffect_TriAttack: @ 81D7491
- setbyte 0x2024d21, 9
+ setbyte gUnknown_02024D1F + 0x2, 9
jump BattleScript_1D6F14
MoveEffect_Rest: @ 81D749C
@@ -812,7 +812,7 @@ MoveEffect_Ohko: @ 81D74E4
ppreduce
accuracycheck BattleScript_ButItFailed, 65535
atk6
- jumpifbyte 4, 0x2024c68, 41, BattleScript_1D6F48
+ jumpifbyte 4, gBattleMoveFlags, 41, BattleScript_1D6F48
koplussomethings BattleScript_1D7505
atkab
jump BattleScript_1D6F48
@@ -825,19 +825,19 @@ BattleScript_1D7505: @ 81D7505
MoveEffect_RazorWind: @ 81D7515
jumpifsecondarytstatus USER, S_CONTINUE, BattleScript_1D753D
- jumpifword 4, 0x2024c6c, 0x200, BattleScript_1D753D
- setbyte 0x2016055, 0
+ jumpifword 4, gHitMarker, 0x200, BattleScript_1D753D
+ setbyte gSharedMem + 0x16055, 0
callatk BattleScript_1D756C
jump BattleScript_EndTurn
BattleScript_1D753D: @ 81D753D
attackcanceler
- setbyte 0x2024d21, 12
- setbyte 0x2016002, 1
+ setbyte gUnknown_02024D1F + 0x2, 12
+ setbyte gSharedMem + 0x16002, 1
clearstatus USER
- orword 0x2024c6c, 0x800
- jumpifhalfword 1, 0x2024be6, 143, BattleScript_1D6F3B
- setbyte 0x2024d21, 8
+ orword gHitMarker, 0x800
+ jumpifhalfword 1, gCurrentMove, 143, BattleScript_1D6F3B
+ setbyte gUnknown_02024D1F + 0x2, 8
jump BattleScript_1D6F3B
BattleScript_1D756C: @ 81D756C
@@ -846,10 +846,10 @@ BattleScript_1D756C: @ 81D756C
ppreduce
attackanimation
waitanimation
- orword 0x2024c6c, 0x8000000
- setbyte 0x2024d21, 76
+ orword gHitMarker, 0x8000000
+ setbyte gUnknown_02024D1F + 0x2, 76
seteffecttarget
- copyarray 0x2024d23, 0x2016055, 1
+ copyarray gUnknown_02024D1F + 0x4, gSharedMem + 0x16055, 1
printfromtable BattleTextList_401584
waitmessage 64
return
@@ -860,7 +860,7 @@ MoveEffect_SuperFang: @ 81D7596
attackstring
ppreduce
atk6
- bicbyte 0x2024c68, 6
+ bicbyte gBattleMoveFlags, 6
gethalfcurrentenemyhp
jump BattleScript_1D6F48
@@ -870,22 +870,22 @@ MoveEffect_DragonRage: @ 81D75AD
attackstring
ppreduce
atk6
- bicbyte 0x2024c68, 6
- setbyte 0x2024bec, 40
- setbyte 0x2024bed, 0
- setbyte 0x2024bee, 0
- setbyte 0x2024bef, 0
+ bicbyte gBattleMoveFlags, 6
+ setbyte gBattleMoveDamage, 40
+ setbyte gBattleMoveDamage + 0x1, 0
+ setbyte gBattleMoveDamage + 0x2, 0
+ setbyte gBattleMoveDamage + 0x3, 0
atk69
jump BattleScript_1D6F48
MoveEffect_Trap: @ 81D75DC
- jumpifhalfword 1, 0x2024be6, 250, BattleScript_1D7602
+ jumpifhalfword 1, gCurrentMove, 250, BattleScript_1D7602
jumpifspecialstatusflag TARGET, 0x40000, 1, BattleScript_1D7602
- orword 0x2024c6c, 0x40000
- setbyte 0x201601f, 2
+ orword gHitMarker, 0x40000
+ setbyte gSharedMem + 0x1601F, 2
BattleScript_1D7602: @ 81D7602
- setbyte 0x2024d21, 13
+ setbyte gUnknown_02024D1F + 0x2, 13
jump BattleScript_1D6F14
MoveEffect_DoubleHit: @ 81D760D
@@ -895,7 +895,7 @@ MoveEffect_DoubleHit: @ 81D760D
ppreduce
setloopcounter 2
atk8e
- setbyte 0x2016112, 0
+ setbyte gSharedMem + 0x16112, 0
jump BattleScript_1D7300
MoveEffect_RecoilIfMiss: @ 81D7625
@@ -909,19 +909,19 @@ BattleScript_1D7632: @ 81D7632
pause 64
resultmessage
waitmessage 64
- jumpifbyte 4, 0x2024c68, 8, BattleScript_EndTurn
+ jumpifbyte 4, gBattleMoveFlags, 8, BattleScript_EndTurn
printstring BATTLE_TEXT_KeptGoingCrash
waitmessage 64
atk5
atk6
atk7
manipulatedamage 1
- bicbyte 0x2024c68, 1
- orword 0x2024c6c, 0x100
+ bicbyte gBattleMoveFlags, 1
+ orword gHitMarker, 0x100
graphicalhpupdate USER
datahpupdate USER
faintpokemon USER, 0, 0x0
- orbyte 0x2024c68, 1
+ orbyte gBattleMoveFlags, 1
jump BattleScript_EndTurn
MoveEffect_Mist: @ 81D7676
@@ -948,8 +948,8 @@ MoveEffect_FocusEnergy: @ 81D7689
jump BattleScript_EndTurn
MoveEffect_Recoil: @ 81D76A6
- setbyte 0x2024d21, 206
- jumpifhalfword 1, 0x2024be6, 165, BattleScript_1D6F14
+ setbyte gUnknown_02024D1F + 0x2, 206
+ jumpifhalfword 1, gCurrentMove, 165, BattleScript_1D6F14
atk60 27
jump BattleScript_1D6F14
@@ -964,7 +964,7 @@ MoveEffect_Confuse: @ 81D76BF
jumpifhalverset TARGET, 32, BattleScript_1D9037
attackanimation
waitanimation
- setbyte 0x2024d21, 7
+ setbyte gUnknown_02024D1F + 0x2, 7
seteffecttarget
resultmessage
waitmessage 64
@@ -977,23 +977,23 @@ BattleScript_1D76FE: @ 81D76FE
jump BattleScript_EndTurn
MoveEffect_AttackUp2: @ 81D770C
- setbyte 0x201601e, 33
+ setbyte gSharedMem + 0x1601E, 33
jump BattleScript_1D71B2
MoveEffect_DefenseUp2: @ 81D7717
- setbyte 0x201601e, 34
+ setbyte gSharedMem + 0x1601E, 34
jump BattleScript_1D71B2
MoveEffect_SpeedUp2: @ 81D7722
- setbyte 0x201601e, 35
+ setbyte gSharedMem + 0x1601E, 35
jump BattleScript_1D71B2
MoveEffect_SpecialAttackUp2: @ 81D772D
- setbyte 0x201601e, 36
+ setbyte gSharedMem + 0x1601E, 36
jump BattleScript_1D71B2
MoveEffect_SpecialDefenseUp2: @ 81D7738
- setbyte 0x201601e, 37
+ setbyte gSharedMem + 0x1601E, 37
jump BattleScript_1D71B2
MoveEffect_Transform: @ 81D7743
@@ -1008,19 +1008,19 @@ MoveEffect_Transform: @ 81D7743
jump BattleScript_EndTurn
MoveEffect_AttackDown2: @ 81D7756
- setbyte 0x201601e, 161
+ setbyte gSharedMem + 0x1601E, 161
jump BattleScript_1D7227
MoveEffect_DefenseDown2: @ 81D7761
- setbyte 0x201601e, 162
+ setbyte gSharedMem + 0x1601E, 162
jump BattleScript_1D7227
MoveEffect_SpeedDown2: @ 81D776C
- setbyte 0x201601e, 163
+ setbyte gSharedMem + 0x1601E, 163
jump BattleScript_1D7227
MoveEffect_SpecialDefenseDown2: @ 81D7777
- setbyte 0x201601e, 165
+ setbyte gSharedMem + 0x1601E, 165
jump BattleScript_1D7227
MoveEffect_Reflect: @ 81D7782
@@ -1051,7 +1051,7 @@ MoveEffect_Poison: @ 81D7795
jumpifhalverset TARGET, 32, BattleScript_1D9037
attackanimation
waitanimation
- setbyte 0x2024d21, 2
+ setbyte gUnknown_02024D1F + 0x2, 2
seteffecttarget
resultmessage
waitmessage 64
@@ -1064,14 +1064,14 @@ MoveEffect_Paralyze: @ 81D77F6
jumpifability TARGET, ABILITY_LIMBER, BattleScript_1D7859
jumpifsecondarytstatus TARGET, S_SUBSTITUTE, BattleScript_ButItFailed
atk6
- jumpifbyte 4, 0x2024c68, 41, BattleScript_ButItFailed
+ jumpifbyte 4, gBattleMoveFlags, 41, BattleScript_ButItFailed
jumpifstatus TARGET, PAR, BattleScript_1D784B
jumpifstatus TARGET, SLP | PSN | BRN | FRZ | PAR | TOX, BattleScript_ButItFailed
accuracycheck BattleScript_ButItFailed, 0
jumpifhalverset TARGET, 32, BattleScript_1D9037
attackanimation
waitanimation
- setbyte 0x2024d21, 5
+ setbyte gUnknown_02024D1F + 0x2, 5
seteffecttarget
resultmessage
waitmessage 64
@@ -1084,50 +1084,50 @@ BattleScript_1D784B: @ 81D784B
jump BattleScript_EndTurn
BattleScript_1D7859: @ 81D7859
- copyarray 0x2024c0a, 0x2024c08, 1
- setbyte 0x2024d23, 0
+ copyarray gEffectBank, gBankTarget, 1
+ setbyte gUnknown_02024D1F + 0x4, 0
callatk BattleScript_PRLZPrevention
jump BattleScript_EndTurn
MoveEffect_AttackDownHit: @ 81D7873
- setbyte 0x2024d21, 22
+ setbyte gUnknown_02024D1F + 0x2, 22
jump BattleScript_1D6F14
MoveEffect_DefenseDownHit: @ 81D787E
- setbyte 0x2024d21, 23
+ setbyte gUnknown_02024D1F + 0x2, 23
jump BattleScript_1D6F14
MoveEffect_SpeedDownHit: @ 81D7889
- setbyte 0x2024d21, 24
+ setbyte gUnknown_02024D1F + 0x2, 24
jump BattleScript_1D6F14
MoveEffect_SpecialAttackDownHit: @ 81D7894
- setbyte 0x2024d21, 25
+ setbyte gUnknown_02024D1F + 0x2, 25
jump BattleScript_1D6F14
MoveEffect_SpecialDefenseDownHit: @ 81D789F
- setbyte 0x2024d21, 26
+ setbyte gUnknown_02024D1F + 0x2, 26
jump BattleScript_1D6F14
MoveEffect_AccuracyDownHit: @ 81D78AA
- setbyte 0x2024d21, 27
+ setbyte gUnknown_02024D1F + 0x2, 27
jump BattleScript_1D6F14
MoveEffect_SkyAttack: @ 81D78B5
jumpifsecondarytstatus USER, S_CONTINUE, BattleScript_1D753D
- jumpifword 4, 0x2024c6c, 0x200, BattleScript_1D753D
- setbyte 0x2016055, 3
+ jumpifword 4, gHitMarker, 0x200, BattleScript_1D753D
+ setbyte gSharedMem + 0x16055, 3
callatk BattleScript_1D756C
jump BattleScript_EndTurn
MoveEffect_ConfuseHit: @ 81D78DD
- setbyte 0x2024d21, 7
+ setbyte gUnknown_02024D1F + 0x2, 7
jump BattleScript_1D6F14
MoveEffect_Twineedle: @ 81D78E8
attackcanceler
accuracycheck BattleScript_1D6F72, 0
- setbyte 0x2016112, 2
+ setbyte gSharedMem + 0x16112, 2
attackstring
ppreduce
setloopcounter 2
@@ -1141,7 +1141,7 @@ MoveEffect_Substitute: @ 81D7900
waitstateatk
jumpifsecondarytstatus USER, S_SUBSTITUTE, BattleScript_1D7935
setsubstituteeffect
- jumpifbyte 1, 0x2024d23, 1, BattleScript_1D7922
+ jumpifbyte 1, gUnknown_02024D1F + 0x4, 1, BattleScript_1D7922
pause 32
jump BattleScript_1D7928
@@ -1165,7 +1165,7 @@ BattleScript_1D7935: @ 81D7935
MoveEffect_Recharge: @ 81D7943
attackcanceler
accuracycheck BattleScript_1D6F72, 0
- setbyte 0x2024d21, 221
+ setbyte gUnknown_02024D1F + 0x2, 221
jump BattleScript_1D6F42
BattleScript_MoveUsedMustRecharge:: @ 81D7956
@@ -1176,13 +1176,13 @@ BattleScript_MoveUsedMustRecharge:: @ 81D7956
MoveEffect_Rage: @ 81D7961
attackcanceler
accuracycheck BattleScript_1D797B, 0
- setbyte 0x2024d21, 30
+ setbyte gUnknown_02024D1F + 0x2, 30
seteffecttarget
- setbyte 0x2024d21, 0
+ setbyte gUnknown_02024D1F + 0x2, 0
jump BattleScript_1D6F42
BattleScript_1D797B: @ 81D797B
- setbyte 0x2024d21, 30
+ setbyte gUnknown_02024D1F + 0x2, 30
clearstatus USER
jump BattleScript_1D6F72
@@ -1205,8 +1205,8 @@ MoveEffect_Metronome: @ 81D79AE
pause 32
attackanimation
waitanimation
- setbyte 0x2016002, 0
- setbyte 0x20160a1, 0
+ setbyte gSharedMem + 0x16002, 0
+ setbyte gSharedMem + 0x160A1, 0
metronomeeffect
MoveEffect_LeechSeed: @ 81D79C2
@@ -1254,7 +1254,7 @@ MoveEffect_LevelDamage: @ 81D7A17
attackstring
ppreduce
atk6
- bicbyte 0x2024c68, 6
+ bicbyte gBattleMoveFlags, 6
nightshadedamageeffect
atk69
jump BattleScript_1D6F48
@@ -1265,7 +1265,7 @@ MoveEffect_Psywave: @ 81D7A2F
attackstring
ppreduce
atk6
- bicbyte 0x2024c68, 6
+ bicbyte gBattleMoveFlags, 6
psywavedamageeffect
atk69
jump BattleScript_1D6F48
@@ -1300,10 +1300,10 @@ MoveEffect_PainSplit: @ 81D7A79
painsplitdamagecalculator BattleScript_ButItFailed
attackanimation
waitanimation
- orword 0x2024c6c, 0x100
+ orword gHitMarker, 0x100
graphicalhpupdate USER
datahpupdate USER
- copyarray 0x2024bec, 0x2016014, 4
+ copyarray gBattleMoveDamage, gSharedMem + 0x16014, 4
graphicalhpupdate TARGET
datahpupdate TARGET
printstring BATTLE_TEXT_PainSplit
@@ -1318,7 +1318,7 @@ MoveEffect_Snore: @ 81D7AB0
jump BattleScript_ButItFailed
BattleScript_1D7AC2: @ 81D7AC2
- jumpifhalfword 0, 0x2024be8, 214, BattleScript_1D7AD6
+ jumpifhalfword 0, gUnknown_02024BE8, 214, BattleScript_1D7AD6
printstring BATTLE_TEXT_FastAsleep
waitmessage 64
statusanimation USER
@@ -1327,7 +1327,7 @@ BattleScript_1D7AD6: @ 81D7AD6
attackstring
ppreduce
accuracycheck BattleScript_1D6F77, 0
- setbyte 0x2024d21, 8
+ setbyte gUnknown_02024D1F + 0x2, 8
jump BattleScript_1D6F44
MoveEffect_Conversion2: @ 81D7AEA
@@ -1379,7 +1379,7 @@ BattleScript_1D7B52: @ 81D7B52
statusanimation USER
attackstring
ppreduce
- orword 0x2024c6c, 0x800
+ orword gHitMarker, 0x800
selectrandommovefromusermoves BattleScript_1D7B72
pause 64
jump BattleScript_ButItFailed
@@ -1387,8 +1387,8 @@ BattleScript_1D7B52: @ 81D7B52
BattleScript_1D7B72: @ 81D7B72
attackanimation
waitanimation
- setbyte 0x2016002, 0
- setbyte 0x20160a1, 0
+ setbyte gSharedMem + 0x16002, 0
+ setbyte gSharedMem + 0x160A1, 0
jumptoattack USER
MoveEffect_DestinyBond: @ 81D7B82
@@ -1428,13 +1428,13 @@ MoveEffect_HealBell: @ 81D7BB5
waitanimation
printfromtable BattleTextList_4015D8
waitmessage 64
- jumpifhalfword 1, 0x2024be6, 215, BattleScript_1D7BF2
- jumpifbyte 5, 0x2024d23, 1, BattleScript_1D7BE1
+ jumpifhalfword 1, gCurrentMove, 215, BattleScript_1D7BF2
+ jumpifbyte 5, gUnknown_02024D1F + 0x4, 1, BattleScript_1D7BE1
printstring BATTLE_TEXT_BlocksOther
waitmessage 64
BattleScript_1D7BE1: @ 81D7BE1
- jumpifbyte 5, 0x2024d23, 2, BattleScript_1D7BF2
+ jumpifbyte 5, gUnknown_02024D1F + 0x4, 2, BattleScript_1D7BF2
printstring BATTLE_TEXT_BlocksOther2
waitmessage 64
@@ -1447,28 +1447,28 @@ MoveEffect_TripleKick: @ 81D7BFA
attackcanceler
attackstring
ppreduce
- setbyte 0x20160de, 0
- setbyte 0x20160df, 0
+ setbyte gSharedMem + 0x160DE, 0
+ setbyte gSharedMem + 0x160DF, 0
atk8e
atk26 3
BattleScript_1D7C0C: @ 81D7C0C
jumpiffainted USER, BattleScript_1D7CAF
jumpiffainted TARGET, BattleScript_1D7C8D
- jumpifhalfword 0, 0x2024be8, 214, BattleScript_1D7C2E
+ jumpifhalfword 0, gUnknown_02024BE8, 214, BattleScript_1D7C2E
jumpifstatus USER, SLP, BattleScript_1D7C8D
BattleScript_1D7C2E: @ 81D7C2E
atk25
accuracycheck BattleScript_1D7C8D, 0
- addbyte 0x20160de, 10
- addbyte 0x20160e4, 1
- copyarray 0x2024dec, 0x20160de, 2
+ addbyte gSharedMem + 0x160DE, 10
+ addbyte gSharedMem + 0x160E4, 1
+ copyarray gDynamicBasePower, gSharedMem + 0x160DE, 2
critcalc
atk5
atk6
atk7
- jumpifbyte 4, 0x2024c68, 41, BattleScript_1D7C8D
+ jumpifbyte 4, gBattleMoveFlags, 41, BattleScript_1D7C8D
attackanimation
waitanimation
missmessage
@@ -1480,9 +1480,9 @@ BattleScript_1D7C2E: @ 81D7C2E
waitmessage 64
printstring BATTLE_TEXT_Terminator2
waitmessage 1
- setbyte 0x201600c, 0
+ setbyte gSharedMem + 0x1600C, 0
atk49 2, 16
- jumpifbyte 4, 0x2024c68, 64, BattleScript_1D7C90
+ jumpifbyte 4, gBattleMoveFlags, 64, BattleScript_1D7C90
atk27 BattleScript_1D7C0C
jump BattleScript_1D7C90
@@ -1492,20 +1492,20 @@ BattleScript_1D7C8D: @ 81D7C8D
BattleScript_1D7C90: @ 81D7C90
resultmessage
waitmessage 64
- jumpifbyte 0, 0x20160e4, 0, BattleScript_1D7CAF
- copyarray gBattleTextBuff1, 0x20160e0, 6
+ jumpifbyte 0, gSharedMem + 0x160E4, 0, BattleScript_1D7CAF
+ copyarray gBattleTextBuff1, gSharedMem + 0x160E0, 6
printstring BATTLE_TEXT_HitMulti
waitmessage 64
BattleScript_1D7CAF: @ 81D7CAF
seteffectwithchancetarget
faintpokemon TARGET, 0, 0x0
- setbyte 0x201600c, 14
+ setbyte gSharedMem + 0x1600C, 14
atk49 0, 0
end
MoveEffect_Thief: @ 81D7CC1
- setbyte 0x2024d21, 31
+ setbyte gUnknown_02024D1F + 0x2, 31
jump BattleScript_1D6F14
MoveEffect_MeanLook: @ 81D7CCC
@@ -1516,7 +1516,7 @@ MoveEffect_MeanLook: @ 81D7CCC
jumpifsecondarytstatus TARGET, S_MEAN_LOOK, BattleScript_ButItFailed
attackanimation
waitanimation
- setbyte 0x2024d21, 32
+ setbyte gUnknown_02024D1F + 0x2, 32
seteffecttarget
printstring BATTLE_TEXT_CantEscapeNow
waitmessage 64
@@ -1534,7 +1534,7 @@ MoveEffect_Nightmare: @ 81D7CF4
BattleScript_1D7D1A: @ 81D7D1A
attackanimation
waitanimation
- setbyte 0x2024d21, 33
+ setbyte gUnknown_02024D1F + 0x2, 33
seteffecttarget
printstring BATTLE_TEXT_NightmareStart
waitmessage 64
@@ -1543,7 +1543,7 @@ BattleScript_1D7D1A: @ 81D7D1A
MoveEffect_Minimize: @ 81D7D2E
attackcanceler
setminimize
- setbyte 0x201601e, 23
+ setbyte gSharedMem + 0x1601E, 23
jump BattleScript_1D71B3
MoveEffect_Curse: @ 81D7D3B
@@ -1556,23 +1556,23 @@ MoveEffect_Curse: @ 81D7D3B
jumpifstat USER, 0, 2, 12, BattleScript_ButItFailed
BattleScript_1D7D60: @ 81D7D60
- copyarray 0x2024c08, 0x2024c07, 1
- setbyte 0x2016002, 1
+ copyarray gBankTarget, gBankAttacker, 1
+ setbyte gSharedMem + 0x16002, 1
attackanimation
waitanimation
- setbyte 0x201601e, 147
+ setbyte gSharedMem + 0x1601E, 147
statbuffchange 65, BattleScript_1D7D86
printfromtable BattleTextList_40157C
waitmessage 64
BattleScript_1D7D86: @ 81D7D86
- setbyte 0x201601e, 17
+ setbyte gSharedMem + 0x1601E, 17
statbuffchange 65, BattleScript_1D7D9A
printfromtable BattleTextList_401570
waitmessage 64
BattleScript_1D7D9A: @ 81D7D9A
- setbyte 0x201601e, 18
+ setbyte gSharedMem + 0x1601E, 18
statbuffchange 65, BattleScript_1D7DAE
printfromtable BattleTextList_401570
waitmessage 64
@@ -1581,7 +1581,7 @@ BattleScript_1D7DAE: @ 81D7DAE
jump BattleScript_EndTurn
BattleScript_1D7DB3: @ 81D7DB3
- jumpifarraynotequal 0x2024c07, 0x2024c08, 1, BattleScript_1D7DC4
+ jumpifarraynotequal gBankAttacker, gBankTarget, 1, BattleScript_1D7DC4
atk76 USER, 3
BattleScript_1D7DC4: @ 81D7DC4
@@ -1590,8 +1590,8 @@ BattleScript_1D7DC4: @ 81D7DC4
ppreduce
jumpifsecondarytstatus TARGET, S_SUBSTITUTE, BattleScript_ButItFailed
cursetarget BattleScript_ButItFailed
- orword 0x2024c6c, 0x100
- setbyte 0x2016002, 0
+ orword gHitMarker, 0x100
+ setbyte gSharedMem + 0x16002, 0
attackanimation
waitanimation
graphicalhpupdate USER
@@ -1645,14 +1645,14 @@ MoveEffect_PerishSong: @ 81D7E3D
waitanimation
printstring BATTLE_TEXT_PerishSong
waitmessage 64
- setbyte 0x2016003, 0
+ setbyte gSharedMem + 0x16003, 0
BattleScript_1D7E53: @ 81D7E53
jumpifability 10, ABILITY_SOUNDPROOF, BattleScript_1D7E73
BattleScript_1D7E5A: @ 81D7E5A
- addbyte 0x2016003, 1
- jumpifarraynotequal 0x2016003, 0x2024a68, 1, BattleScript_1D7E53
+ addbyte gSharedMem + 0x16003, 1
+ jumpifarraynotequal gSharedMem + 0x16003, gNoOfAllBanks, 1, BattleScript_1D7E53
jump BattleScript_EndTurn
BattleScript_1D7E73: @ 81D7E73
@@ -1690,18 +1690,18 @@ MoveEffect_Swagger: @ 81D7EA2
jumpifconfusedandattackmaxed 1, BattleScript_ButItFailed
attackanimation
waitanimation
- setbyte 0x201601e, 33
+ setbyte gSharedMem + 0x1601E, 33
statbuffchange 1, BattleScript_1D7EE5
- jumpifbyte 0, 0x2024d23, 2, BattleScript_1D7EE5
+ jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D7EE5
atk47
- playanimation TARGET, 1, 0x20160a4
+ playanimation TARGET, 1, gSharedMem + 0x160A4
printfromtable BattleTextList_401570
waitmessage 64
BattleScript_1D7EE5: @ 81D7EE5
jumpifability TARGET, ABILITY_OWN_TEMPO, BattleScript_1D98E5
jumpifhalverset TARGET, 32, BattleScript_1D9037
- setbyte 0x2024d21, 7
+ setbyte gUnknown_02024D1F + 0x2, 7
seteffecttarget
jump BattleScript_EndTurn
@@ -1716,7 +1716,7 @@ BattleScript_1D7F0A: @ 81D7F0A
critcalc
atk5
atk6
- jumpifbyte 4, 0x2024c68, 41, BattleScript_1D7F0A
+ jumpifbyte 4, gBattleMoveFlags, 41, BattleScript_1D7F0A
atk7
jump BattleScript_1D6F48
@@ -1755,7 +1755,7 @@ MoveEffect_Safeguard: @ 81D7F55
jump BattleScript_1D7786
MoveEffect_ThawHit: @ 81D7F5E
- setbyte 0x2024d21, 3
+ setbyte gUnknown_02024D1F + 0x2, 3
jump BattleScript_1D6F14
MoveEffect_Magnitude: @ 81D7F69
@@ -1791,7 +1791,7 @@ MoveEffect_BatonPass: @ 81D7F7C
jump BattleScript_EndTurn
MoveEffect_RapidSpin: @ 81D7FA9
- setbyte 0x2024d21, 163
+ setbyte gUnknown_02024D1F + 0x2, 163
jump BattleScript_1D6F14
MoveEffect_Sonicboom: @ 81D7FB4
@@ -1800,11 +1800,11 @@ MoveEffect_Sonicboom: @ 81D7FB4
attackstring
ppreduce
atk6
- bicbyte 0x2024c68, 6
- setbyte 0x2024bec, 20
- setbyte 0x2024bed, 0
- setbyte 0x2024bee, 0
- setbyte 0x2024bef, 0
+ bicbyte gBattleMoveFlags, 6
+ setbyte gBattleMoveDamage, 20
+ setbyte gBattleMoveDamage + 0x1, 0
+ setbyte gBattleMoveDamage + 0x2, 0
+ setbyte gBattleMoveDamage + 0x3, 0
atk69
jump BattleScript_1D6F48
@@ -1843,15 +1843,15 @@ MoveEffect_SunnyDay: @ 81D800E
jump BattleScript_1D7FFA
MoveEffect_DefenseUpHit: @ 81D8017
- setbyte 0x2024d21, 80
+ setbyte gUnknown_02024D1F + 0x2, 80
jump BattleScript_1D6F14
MoveEffect_AttackUpHit: @ 81D8022
- setbyte 0x2024d21, 79
+ setbyte gUnknown_02024D1F + 0x2, 79
jump BattleScript_1D6F14
MoveEffect_AllStatsUpHit: @ 81D802D
- setbyte 0x2024d21, 98
+ setbyte gUnknown_02024D1F + 0x2, 98
jump BattleScript_1D6F14
MoveEffect_BellyDrum: @ 81D8038
@@ -1859,7 +1859,7 @@ MoveEffect_BellyDrum: @ 81D8038
attackstring
ppreduce
maxattackhalvehp BattleScript_ButItFailed
- orword 0x2024c6c, 0x100
+ orword gHitMarker, 0x100
attackanimation
waitanimation
graphicalhpupdate USER
@@ -1891,14 +1891,14 @@ MoveEffect_MirrorCoat: @ 81D806F
MoveEffect_SkullBash: @ 81D8085
jumpifsecondarytstatus USER, S_CONTINUE, BattleScript_1D753D
- jumpifword 4, 0x2024c6c, 0x200, BattleScript_1D753D
- setbyte 0x2016055, 2
+ jumpifword 4, gHitMarker, 0x200, BattleScript_1D753D
+ setbyte gSharedMem + 0x16055, 2
callatk BattleScript_1D756C
- setbyte 0x201601e, 18
+ setbyte gSharedMem + 0x1601E, 18
statbuffchange 65, BattleScript_1D80CF
- jumpifbyte 0, 0x2024d23, 2, BattleScript_1D80CF
+ jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D80CF
atk47
- playanimation USER, 1, 0x20160a4
+ playanimation USER, 1, gSharedMem + 0x160A4
printfromtable BattleTextList_401570
waitmessage 64
@@ -1907,11 +1907,11 @@ BattleScript_1D80CF: @ 81D80CF
MoveEffect_Twister: @ 81D80D4
jumpifspecialstatusflag TARGET, 0x40, 1, BattleScript_1D80EE
- orword 0x2024c6c, 0x10000
- setbyte 0x201601f, 2
+ orword gHitMarker, 0x10000
+ setbyte gSharedMem + 0x1601F, 2
BattleScript_1D80EE: @ 81D80EE
- setbyte 0x2024d21, 8
+ setbyte gUnknown_02024D1F + 0x2, 8
jump BattleScript_1D6F14
MoveEffect_Earthquake: @ 81D80F9
@@ -1923,13 +1923,13 @@ MoveEffect_Earthquake: @ 81D80F9
BattleScript_1D80FD: @ 81D80FD
atk25
jumpifspecialstatusflag TARGET, 0x80, 1, BattleScript_1D811D
- orword 0x2024c6c, 0x20000
- setbyte 0x201601f, 2
+ orword gHitMarker, 0x20000
+ setbyte gSharedMem + 0x1601F, 2
jump BattleScript_1D812C
BattleScript_1D811D: @ 81D811D
- bicword 0x2024c6c, 0x20000
- setbyte 0x201601f, 1
+ bicword gHitMarker, 0x20000
+ setbyte gSharedMem + 0x1601F, 1
BattleScript_1D812C: @ 81D812C
accuracycheck BattleScript_1D8165, 0
@@ -1951,7 +1951,7 @@ BattleScript_1D812C: @ 81D812C
printstring BATTLE_TEXT_Terminator2
waitmessage 1
faintpokemon TARGET, 0, 0x0
- setbyte 0x201600c, 0
+ setbyte gSharedMem + 0x1600C, 0
atk49 2, 16
jumpwhiletargetvalid BattleScript_1D80FD
end
@@ -1962,7 +1962,7 @@ BattleScript_1D8165: @ 81D8165
missmessage
resultmessage
waitmessage 64
- setbyte 0x201600c, 0
+ setbyte gSharedMem + 0x1600C, 0
atk49 2, 16
jumpwhiletargetvalid BattleScript_1D80FD
end
@@ -1980,52 +1980,52 @@ MoveEffect_FutureSight: @ 81D817D
MoveEffect_Gust: @ 81D8194
jumpifspecialstatusflag TARGET, 0x40, 1, BattleScript_1D6F14
- orword 0x2024c6c, 0x10000
- setbyte 0x201601f, 2
+ orword gHitMarker, 0x10000
+ setbyte gSharedMem + 0x1601F, 2
jump BattleScript_1D6F14
MoveEffect_FlinchHit2: @ 81D81B3
jumpifspecialstatusflag TARGET, 0x100, 1, BattleScript_1D80EE
- setbyte 0x201601f, 2
+ setbyte gSharedMem + 0x1601F, 2
jump BattleScript_1D80EE
MoveEffect_Solarbeam: @ 81D81C9
jumpifabilitypresent ABILITY_CLOUD_NINE, BattleScript_1D81E1
jumpifabilitypresent ABILITY_AIR_LOCK, BattleScript_1D81E1
- jumpifhalfword 4, 0x2024db8, 96, BattleScript_1D8209
+ jumpifhalfword 4, gBattleWeather, 96, BattleScript_1D8209
BattleScript_1D81E1: @ 81D81E1
jumpifsecondarytstatus USER, S_CONTINUE, BattleScript_1D753D
- jumpifword 4, 0x2024c6c, 0x200, BattleScript_1D753D
- setbyte 0x2016055, 1
+ jumpifword 4, gHitMarker, 0x200, BattleScript_1D753D
+ setbyte gSharedMem + 0x16055, 1
callatk BattleScript_1D756C
jump BattleScript_EndTurn
BattleScript_1D8209: @ 81D8209
- orword 0x2024c6c, 0x8000000
- setbyte 0x2024d21, 76
+ orword gHitMarker, 0x8000000
+ setbyte gUnknown_02024D1F + 0x2, 76
seteffecttarget
ppreduce
jump BattleScript_1D753D
MoveEffect_Thunder: @ 81D821F
- setbyte 0x2024d21, 5
- orword 0x2024c6c, 0x10000
+ setbyte gUnknown_02024D1F + 0x2, 5
+ orword gHitMarker, 0x10000
jump BattleScript_1D6F14
MoveEffect_Teleport: @ 81D8233
attackcanceler
attackstring
ppreduce
- jumpifhalfword 4, 0x20239f8, 8, BattleScript_ButItFailed
+ jumpifhalfword 4, gBattleTypeFlags, 8, BattleScript_ButItFailed
atk76 USER, 2
- jumpifbyte 0, 0x2024d1e, 1, BattleScript_ButItFailed
- jumpifbyte 0, 0x2024d1e, 2, BattleScript_1D8839
+ jumpifbyte 0, gBattleCommunication, 1, BattleScript_ButItFailed
+ jumpifbyte 0, gBattleCommunication, 2, BattleScript_1D8839
attackanimation
waitanimation
printstring BATTLE_TEXT_FledBattle
waitmessage 64
- setbyte 0x2024d26, 5
+ setbyte gBattleOutcome, 5
jump BattleScript_EndTurn
MoveEffect_BeatUp: @ 81D826E
@@ -2034,14 +2034,14 @@ MoveEffect_BeatUp: @ 81D826E
attackstring
pause 32
ppreduce
- setbyte 0x2024d1e, 0
+ setbyte gBattleCommunication, 0
BattleScript_1D8281: @ 81D8281
atk25
beatupcalculation BattleScript_1D82C4, BattleScript_ButItFailed
printstring BATTLE_TEXT_PokeAttack
critcalc
- jumpifbyte 1, 0x2024c0d, 2, BattleScript_1D829C
+ jumpifbyte 1, gCritMultiplier, 2, BattleScript_1D829C
manipulatedamage 2
BattleScript_1D829C: @ 81D829C
@@ -2058,7 +2058,7 @@ BattleScript_1D829C: @ 81D829C
resultmessage
waitmessage 64
faintpokemon TARGET, 0, 0x0
- setbyte 0x201600c, 0
+ setbyte gSharedMem + 0x1600C, 0
atk49 2, 16
jump BattleScript_1D8281
@@ -2067,23 +2067,23 @@ BattleScript_1D82C4: @ 81D82C4
MoveEffect_Fly: @ 81D82C5
jumpifsecondarytstatus USER, S_CONTINUE, BattleScript_1D8333
- jumpifword 4, 0x2024c6c, 0x200, BattleScript_1D8333
- jumpifhalfword 0, 0x2024be6, 19, BattleScript_1D8322
- jumpifhalfword 0, 0x2024be6, 291, BattleScript_1D8317
- jumpifhalfword 0, 0x2024be6, 340, BattleScript_1D830C
- setbyte 0x2016055, 5
+ jumpifword 4, gHitMarker, 0x200, BattleScript_1D8333
+ jumpifhalfword 0, gCurrentMove, 19, BattleScript_1D8322
+ jumpifhalfword 0, gCurrentMove, 291, BattleScript_1D8317
+ jumpifhalfword 0, gCurrentMove, 340, BattleScript_1D830C
+ setbyte gSharedMem + 0x16055, 5
jump BattleScript_1D8328
BattleScript_1D830C: @ 81D830C
- setbyte 0x2016055, 7
+ setbyte gSharedMem + 0x16055, 7
jump BattleScript_1D8328
BattleScript_1D8317: @ 81D8317
- setbyte 0x2016055, 6
+ setbyte gSharedMem + 0x16055, 6
jump BattleScript_1D8328
BattleScript_1D8322: @ 81D8322
- setbyte 0x2016055, 4
+ setbyte gSharedMem + 0x16055, 4
BattleScript_1D8328: @ 81D8328
callatk BattleScript_1D756C
@@ -2092,12 +2092,12 @@ BattleScript_1D8328: @ 81D8328
BattleScript_1D8333: @ 81D8333
attackcanceler
- setbyte 0x2024d21, 12
- setbyte 0x2016002, 1
+ setbyte gUnknown_02024D1F + 0x2, 12
+ setbyte gSharedMem + 0x16002, 1
clearstatus USER
- orword 0x2024c6c, 0x800
- jumpifhalfword 1, 0x2024be6, 340, BattleScript_1D835D
- setbyte 0x2024d21, 5
+ orword gHitMarker, 0x800
+ jumpifhalfword 1, gCurrentMove, 340, BattleScript_1D835D
+ setbyte gUnknown_02024D1F + 0x2, 5
BattleScript_1D835D: @ 81D835D
accuracycheck BattleScript_1D836A, 0
@@ -2113,9 +2113,9 @@ MoveEffect_DefenseCurl: @ 81D8370
attackstring
ppreduce
setcurled
- setbyte 0x201601e, 18
+ setbyte gSharedMem + 0x1601E, 18
statbuffchange 65, BattleScript_1D838D
- jumpifbyte 0, 0x2024d23, 2, BattleScript_1D71D8
+ jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D71D8
attackanimation
waitanimation
@@ -2131,7 +2131,7 @@ MoveEffect_Softboiled: @ 81D8392
BattleScript_1D839B:: @ 81D839B
attackanimation
waitanimation
- orword 0x2024c6c, 0x100
+ orword gHitMarker, 0x100
graphicalhpupdate TARGET
datahpupdate TARGET
printstring BATTLE_TEXT_RegainedHealth
@@ -2147,7 +2147,7 @@ BattleScript_1D83B5:: @ 81D83B5
MoveEffect_FakeOut: @ 81D83C3
attackcanceler
jumpifnotfirstturn BattleScript_1D83D4
- setbyte 0x2024d21, 136
+ setbyte gUnknown_02024D1F + 0x2, 136
jump BattleScript_1D6F14
BattleScript_1D83D4: @ 81D83D4
@@ -2158,14 +2158,14 @@ BattleScript_1D83D5: @ 81D83D5
BattleScript_ButItFailed:: @ 81D83D6
pause 32
- orbyte 0x2024c68, 32
+ orbyte gBattleMoveFlags, 32
resultmessage
waitmessage 64
jump BattleScript_EndTurn
BattleScript_1D83E8: @ 81D83E8
pause 32
- orbyte 0x2024c68, 8
+ orbyte gBattleMoveFlags, 8
resultmessage
waitmessage 64
jump BattleScript_EndTurn
@@ -2173,7 +2173,7 @@ BattleScript_1D83E8: @ 81D83E8
MoveEffect_Uproar: @ 81D83FA
attackcanceler
accuracycheck BattleScript_1D6F72, 0
- setbyte 0x2024d21, 74
+ setbyte gUnknown_02024D1F + 0x2, 74
attackstring
jumpifsecondarytstatus USER, S_CONTINUE, BattleScript_1D8414
ppreduce
@@ -2195,7 +2195,7 @@ MoveEffect_Stockpile: @ 81D841A
MoveEffect_SpitUp: @ 81D842D
attackcanceler
- jumpifbyte 0, 0x2024d24, 1, BattleScript_1D845C
+ jumpifbyte 0, gUnknown_02024D1F + 0x5, 1, BattleScript_1D845C
attackstring
ppreduce
accuracycheck BattleScript_1D6F72, 0
@@ -2260,18 +2260,18 @@ MoveEffect_Flatter: @ 81D84B1
jumpifconfusedandattackmaxed 4, BattleScript_ButItFailed
attackanimation
waitanimation
- setbyte 0x201601e, 20
+ setbyte gSharedMem + 0x1601E, 20
statbuffchange 1, BattleScript_1D84F4
- jumpifbyte 0, 0x2024d23, 2, BattleScript_1D84F4
+ jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D84F4
atk47
- playanimation TARGET, 1, 0x20160a4
+ playanimation TARGET, 1, gSharedMem + 0x160A4
printfromtable BattleTextList_401570
waitmessage 64
BattleScript_1D84F4: @ 81D84F4
jumpifability TARGET, ABILITY_OWN_TEMPO, BattleScript_1D98E5
jumpifhalverset TARGET, 32, BattleScript_1D9037
- setbyte 0x2024d21, 7
+ setbyte gUnknown_02024D1F + 0x2, 7
seteffecttarget
jump BattleScript_EndTurn
@@ -2288,13 +2288,13 @@ MoveEffect_WillOWisp: @ 81D850F
jumpifhalverset TARGET, 32, BattleScript_1D9037
attackanimation
waitanimation
- setbyte 0x2024d21, 3
+ setbyte gUnknown_02024D1F + 0x2, 3
seteffecttarget
jump BattleScript_EndTurn
BattleScript_1D855B: @ 81D855B
- copyarray 0x2024c0a, 0x2024c08, 1
- setbyte 0x2024d23, 0
+ copyarray gEffectBank, gBankTarget, 1
+ setbyte gUnknown_02024D1F + 0x4, 0
callatk BattleScript_BRNPrevention
jump BattleScript_EndTurn
@@ -2306,7 +2306,7 @@ BattleScript_1D8575: @ 81D8575
MoveEffect_Memento: @ 81D8583
attackcanceler
- jumpifbyte 0, 0x2024d24, 1, BattleScript_1D860A
+ jumpifbyte 0, gUnknown_02024D1F + 0x5, 1, BattleScript_1D860A
attackstring
ppreduce
jumpifattackandspecialattackcannotfall BattleScript_ButItFailed
@@ -2314,20 +2314,20 @@ MoveEffect_Memento: @ 81D8583
attackanimation
waitanimation
jumpifsecondarytstatus TARGET, S_SUBSTITUTE, BattleScript_1D85FF
- setbyte 0x20160dc, 0
+ setbyte gSharedMem + 0x160DC, 0
playstatchangeanimation TARGET, 18, 7
playstatchangeanimation TARGET, 2, 3
- setbyte 0x201601e, 161
+ setbyte gSharedMem + 0x1601E, 161
statbuffchange 1, BattleScript_1D85D0
- jumpifbyte 2, 0x2024d23, 1, BattleScript_1D85D0
+ jumpifbyte 2, gUnknown_02024D1F + 0x4, 1, BattleScript_1D85D0
printfromtable BattleTextList_40157C
waitmessage 64
BattleScript_1D85D0: @ 81D85D0
playstatchangeanimation TARGET, 16, 3
- setbyte 0x201601e, 164
+ setbyte gSharedMem + 0x1601E, 164
statbuffchange 1, BattleScript_1D85F3
- jumpifbyte 2, 0x2024d23, 1, BattleScript_1D85F3
+ jumpifbyte 2, gUnknown_02024D1F + 0x4, 1, BattleScript_1D85F3
printfromtable BattleTextList_40157C
waitmessage 64
@@ -2359,7 +2359,7 @@ MoveEffect_Facade: @ 81D8626
jump BattleScript_1D6F14
BattleScript_1D8635: @ 81D8635
- setbyte 0x201601f, 2
+ setbyte gSharedMem + 0x1601F, 2
jump BattleScript_1D6F14
MoveEffect_FocusPunch: @ 81D8640
@@ -2372,12 +2372,12 @@ MoveEffect_FocusPunch: @ 81D8640
MoveEffect_Smellingsalt: @ 81D8652
jumpifsecondarytstatus TARGET, S_SUBSTITUTE, BattleScript_1D6F14
- setbyte 0x2024d21, 164
+ setbyte gUnknown_02024D1F + 0x2, 164
jumpifstatus TARGET, PAR, BattleScript_1D8671
jump BattleScript_1D6F14
BattleScript_1D8671: @ 81D8671
- setbyte 0x201601f, 2
+ setbyte gSharedMem + 0x1601F, 2
jump BattleScript_1D6F14
MoveEffect_FollowMe: @ 81D867C
@@ -2476,8 +2476,8 @@ MoveEffect_Assist: @ 81D8736
assistattackselect BattleScript_1D83D5
attackanimation
waitanimation
- setbyte 0x2016002, 0
- setbyte 0x20160a1, 0
+ setbyte gSharedMem + 0x16002, 0
+ setbyte gSharedMem + 0x160A1, 0
jumptoattack USER
MoveEffect_Ingrain: @ 81D874D
@@ -2492,7 +2492,7 @@ MoveEffect_Ingrain: @ 81D874D
jump BattleScript_EndTurn
MoveEffect_Superpower: @ 81D8762
- setbyte 0x2024d21, 229
+ setbyte gUnknown_02024D1F + 0x2, 229
jump BattleScript_1D6F14
MoveEffect_MagicCoat: @ 81D876D
@@ -2531,13 +2531,13 @@ MoveEffect_BrickBreak: @ 81D879D
atk5
atk6
atk7
- jumpifbyte 0, 0x2016002, 0, BattleScript_1D87BD
- bicbyte 0x2024c68, 9
+ jumpifbyte 0, gSharedMem + 0x16002, 0, BattleScript_1D87BD
+ bicbyte gBattleMoveFlags, 9
BattleScript_1D87BD: @ 81D87BD
attackanimation
waitanimation
- jumpifbyte 3, 0x2016002, 2, BattleScript_1D87D0
+ jumpifbyte 3, gSharedMem + 0x16002, 2, BattleScript_1D87D0
printstring BATTLE_TEXT_BrokeWall
waitmessage 64
@@ -2574,7 +2574,7 @@ MoveEffect_Yawn: @ 81D87EE
jump BattleScript_EndTurn
BattleScript_1D882F: @ 81D882F
- copyarray 0x2016003, 0x20160f8, 1
+ copyarray gSharedMem + 0x16003, gSharedMem + 0x160F8, 1
BattleScript_1D8839: @ 81D8839
pause 32
@@ -2583,7 +2583,7 @@ BattleScript_1D8839: @ 81D8839
jump BattleScript_EndTurn
MoveEffect_KnockOff: @ 81D8847
- setbyte 0x2024d21, 54
+ setbyte gUnknown_02024D1F + 0x2, 54
jump BattleScript_1D6F14
MoveEffect_Endeavor: @ 81D8852
@@ -2591,12 +2591,12 @@ MoveEffect_Endeavor: @ 81D8852
attackstring
ppreduce
setdamagetohealthdifference BattleScript_ButItFailed
- copyarray 0x2024bf0, 0x2024bec, 4
+ copyarray gHP_dealt, gBattleMoveDamage, 4
accuracycheck BattleScript_1D6F77, 0
atk6
- jumpifbyte 4, 0x2024c68, 41, BattleScript_1D6F48
- bicbyte 0x2024c68, 6
- copyarray 0x2024bec, 0x2024bf0, 4
+ jumpifbyte 4, gBattleMoveFlags, 41, BattleScript_1D6F48
+ bicbyte gBattleMoveFlags, 6
+ copyarray gBattleMoveDamage, gHP_dealt, 4
atk69
jump BattleScript_1D6F48
@@ -2675,19 +2675,19 @@ MoveEffect_SecretPower: @ 81D8918
jump BattleScript_1D6F14
MoveEffect_DoubleEdge: @ 81D891E
- setbyte 0x2024d21, 230
+ setbyte gUnknown_02024D1F + 0x2, 230
jump BattleScript_1D6F14
MoveEffect_TeeterDance: @ 81D8929
attackcanceler
attackstring
ppreduce
- setbyte 0x2024c08, 0
+ setbyte gBankTarget, 0
BattleScript_1D8932: @ 81D8932
atk25
- setbyte 0x2024d21, 7
- jumpifarrayequal 0x2024c07, 0x2024c08, 1, BattleScript_1D8978
+ setbyte gUnknown_02024D1F + 0x2, 7
+ jumpifarrayequal gBankAttacker, gBankTarget, 1, BattleScript_1D8978
jumpifability TARGET, ABILITY_OWN_TEMPO, BattleScript_1D8996
jumpifsecondarytstatus TARGET, S_SUBSTITUTE, BattleScript_1D89B2
jumpifsecondarytstatus TARGET, S_CONFUSED, BattleScript_1D89C0
@@ -2700,10 +2700,10 @@ BattleScript_1D8932: @ 81D8932
waitmessage 64
BattleScript_1D8978: @ 81D8978
- setbyte 0x201600c, 0
+ setbyte gSharedMem + 0x1600C, 0
atk49 2, 16
- addbyte 0x2024c08, 1
- jumpifarraynotequal 0x2024c08, 0x2024a68, 1, BattleScript_1D8932
+ addbyte gBankTarget, 1
+ jumpifarraynotequal gBankTarget, gNoOfAllBanks, 1, BattleScript_1D8932
end
BattleScript_1D8996: @ 81D8996
@@ -2748,7 +2748,7 @@ MoveEffect_WaterSport: @ 81D89D7
jump BattleScript_EndTurn
MoveEffect_PoisonFang: @ 81D89EE
- setbyte 0x2024d21, 6
+ setbyte gUnknown_02024D1F + 0x2, 6
jump BattleScript_1D6F14
MoveEffect_WeatherBall: @ 81D89F9
@@ -2756,7 +2756,7 @@ MoveEffect_WeatherBall: @ 81D89F9
jump BattleScript_1D6F14
MoveEffect_Overheat: @ 81D89FF
- setbyte 0x2024d21, 251
+ setbyte gUnknown_02024D1F + 0x2, 251
jump BattleScript_1D6F14
MoveEffect_Tickle: @ 81D8A0A
@@ -2770,20 +2770,20 @@ BattleScript_1D8A1F: @ 81D8A1F
accuracycheck BattleScript_ButItFailed, 0
attackanimation
waitanimation
- setbyte 0x20160dc, 0
+ setbyte gSharedMem + 0x160DC, 0
playstatchangeanimation TARGET, 6, 5
playstatchangeanimation TARGET, 2, 1
- setbyte 0x201601e, 145
+ setbyte gSharedMem + 0x1601E, 145
statbuffchange 1, BattleScript_1D8A55
- jumpifbyte 0, 0x2024d23, 2, BattleScript_1D8A55
+ jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D8A55
printfromtable BattleTextList_40157C
waitmessage 64
BattleScript_1D8A55: @ 81D8A55
playstatchangeanimation TARGET, 4, 1
- setbyte 0x201601e, 146
+ setbyte gSharedMem + 0x1601E, 146
statbuffchange 1, BattleScript_1D8A78
- jumpifbyte 0, 0x2024d23, 2, BattleScript_1D8A78
+ jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D8A78
printfromtable BattleTextList_40157C
waitmessage 64
@@ -2792,7 +2792,7 @@ BattleScript_1D8A78: @ 81D8A78
BattleScript_1D8A7D: @ 81D8A7D
pause 32
- orbyte 0x2024c68, 32
+ orbyte gBattleMoveFlags, 32
printstring BATTLE_TEXT_StatNoLower
waitmessage 64
jump BattleScript_EndTurn
@@ -2807,18 +2807,18 @@ MoveEffect_CosmicPower: @ 81D8A91
BattleScript_1D8AA6: @ 81D8AA6
attackanimation
waitanimation
- setbyte 0x20160dc, 0
+ setbyte gSharedMem + 0x160DC, 0
playstatchangeanimation USER, 36, 0
- setbyte 0x201601e, 18
+ setbyte gSharedMem + 0x1601E, 18
statbuffchange 65, BattleScript_1D8AD1
- jumpifbyte 0, 0x2024d23, 2, BattleScript_1D8AD1
+ jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D8AD1
printfromtable BattleTextList_401570
waitmessage 64
BattleScript_1D8AD1: @ 81D8AD1
- setbyte 0x201601e, 21
+ setbyte gSharedMem + 0x1601E, 21
statbuffchange 65, BattleScript_1D8AF0
- jumpifbyte 0, 0x2024d23, 2, BattleScript_1D8AF0
+ jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D8AF0
printfromtable BattleTextList_401570
waitmessage 64
@@ -2826,7 +2826,7 @@ BattleScript_1D8AF0: @ 81D8AF0
jump BattleScript_EndTurn
MoveEffect_SkyUppercut: @ 81D8AF5
- orword 0x2024c6c, 0x10000
+ orword gHitMarker, 0x10000
jump BattleScript_1D6F14
MoveEffect_BulkUp: @ 81D8B03
@@ -2839,18 +2839,18 @@ MoveEffect_BulkUp: @ 81D8B03
BattleScript_1D8B18: @ 81D8B18
attackanimation
waitanimation
- setbyte 0x20160dc, 0
+ setbyte gSharedMem + 0x160DC, 0
playstatchangeanimation USER, 6, 0
- setbyte 0x201601e, 17
+ setbyte gSharedMem + 0x1601E, 17
statbuffchange 65, BattleScript_1D8B43
- jumpifbyte 0, 0x2024d23, 2, BattleScript_1D8B43
+ jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D8B43
printfromtable BattleTextList_401570
waitmessage 64
BattleScript_1D8B43: @ 81D8B43
- setbyte 0x201601e, 18
+ setbyte gSharedMem + 0x1601E, 18
statbuffchange 65, BattleScript_1D8B62
- jumpifbyte 0, 0x2024d23, 2, BattleScript_1D8B62
+ jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D8B62
printfromtable BattleTextList_401570
waitmessage 64
@@ -2867,18 +2867,18 @@ MoveEffect_CalmMind: @ 81D8B67
BattleScript_1D8B7C: @ 81D8B7C
attackanimation
waitanimation
- setbyte 0x20160dc, 0
+ setbyte gSharedMem + 0x160DC, 0
playstatchangeanimation USER, 48, 0
- setbyte 0x201601e, 20
+ setbyte gSharedMem + 0x1601E, 20
statbuffchange 65, BattleScript_1D8BA7
- jumpifbyte 0, 0x2024d23, 2, BattleScript_1D8BA7
+ jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D8BA7
printfromtable BattleTextList_401570
waitmessage 64
BattleScript_1D8BA7: @ 81D8BA7
- setbyte 0x201601e, 21
+ setbyte gSharedMem + 0x1601E, 21
statbuffchange 65, BattleScript_1D8BC6
- jumpifbyte 0, 0x2024d23, 2, BattleScript_1D8BC6
+ jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D8BC6
printfromtable BattleTextList_401570
waitmessage 64
@@ -2887,7 +2887,7 @@ BattleScript_1D8BC6: @ 81D8BC6
BattleScript_1D8BCB: @ 81D8BCB
pause 32
- orbyte 0x2024c68, 32
+ orbyte gBattleMoveFlags, 32
printstring BATTLE_TEXT_StatNoHigher
waitmessage 64
jump BattleScript_EndTurn
@@ -2902,18 +2902,18 @@ MoveEffect_DragonDance: @ 81D8BDF
BattleScript_1D8BF4: @ 81D8BF4
attackanimation
waitanimation
- setbyte 0x20160dc, 0
+ setbyte gSharedMem + 0x160DC, 0
playstatchangeanimation USER, 10, 0
- setbyte 0x201601e, 17
+ setbyte gSharedMem + 0x1601E, 17
statbuffchange 65, BattleScript_1D8C1F
- jumpifbyte 0, 0x2024d23, 2, BattleScript_1D8C1F
+ jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D8C1F
printfromtable BattleTextList_401570
waitmessage 64
BattleScript_1D8C1F: @ 81D8C1F
- setbyte 0x201601e, 19
+ setbyte gSharedMem + 0x1601E, 19
statbuffchange 65, BattleScript_1D8C3E
- jumpifbyte 0, 0x2024d23, 2, BattleScript_1D8C3E
+ jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D8C3E
printfromtable BattleTextList_401570
waitmessage 64
@@ -2948,40 +2948,40 @@ gUnknown_081D8C65:: @ 81D8C65
return
gUnknown_081D8C72:: @ 81D8C72
- setbyte 0x201600f, 0
+ setbyte gSharedMem + 0x1600F, 0
atk23 0
end2
gUnknown_081D8C7B:: @ 81D8C7B
atk24 BattleScript_1D8D87
- jumpifbyte 1, 0x2024d26, 0, BattleScript_1D8D86
- jumpifhalfword 4, 0x20239f8, 8, BattleScript_1D8CC2
- jumpifword 5, 0x2024c6c, 0x400000, BattleScript_1D8CC2
+ jumpifbyte 1, gBattleOutcome, 0, BattleScript_1D8D86
+ jumpifhalfword 4, gBattleTypeFlags, 8, BattleScript_1D8CC2
+ jumpifword 5, gHitMarker, 0x400000, BattleScript_1D8CC2
printstring BATTLE_TEXT_UseNext
- setbyte 0x2024d1e, 0
+ setbyte gBattleCommunication, 0
atk67
- jumpifbyte 0, 0x2024d1f, 0, BattleScript_1D8CC2
+ jumpifbyte 0, gUnknown_02024D1F, 0, BattleScript_1D8CC2
atk72 BattleScript_1D8D86
printstring BATTLE_TEXT_CantEscape
BattleScript_1D8CC2: @ 81D8CC2
openpartyscreen 3, BattleScript_1D8D86
atk51 3, 2
- jumpifhalfword 5, 0x20239f8, 8, BattleScript_1D8D66
- jumpifhalfword 4, 0x20239f8, 2, BattleScript_1D8D66
- jumpifhalfword 4, 0x20239f8, 256, BattleScript_1D8D66
- jumpifhalfword 4, 0x20239f8, 1, BattleScript_1D8D66
- jumpifword 4, 0x2024c6c, 0x400000, BattleScript_1D8D66
- jumpifbyte 0, 0x2016084, 1, BattleScript_1D8D66
+ jumpifhalfword 5, gBattleTypeFlags, 8, BattleScript_1D8D66
+ jumpifhalfword 4, gBattleTypeFlags, 2, BattleScript_1D8D66
+ jumpifhalfword 4, gBattleTypeFlags, 256, BattleScript_1D8D66
+ jumpifhalfword 4, gBattleTypeFlags, 1, BattleScript_1D8D66
+ jumpifword 4, gHitMarker, 0x400000, BattleScript_1D8D66
+ jumpifbyte 0, gSharedMem + 0x16084, 1, BattleScript_1D8D66
jumpifcannotswitch USER, BattleScript_1D8D66
printstring BATTLE_TEXT_WillSwitch
- setbyte 0x2024d1e, 0
+ setbyte gBattleCommunication, 0
atk67
- jumpifbyte 0, 0x2024d1f, 1, BattleScript_1D8D66
+ jumpifbyte 0, gUnknown_02024D1F, 1, BattleScript_1D8D66
atk6e
openpartyscreen 129, BattleScript_1D8D66
atk51 USER, 2
- jumpifbyte 0, 0x2024d1e, 6, BattleScript_1D8D66
+ jumpifbyte 0, gBattleCommunication, 6, BattleScript_1D8D66
atk6b
atk76 USER, 5
atk74 1
@@ -3011,7 +3011,7 @@ BattleScript_1D8D66: @ 81D8D66
switch3 3, 0
waitstateatk
atk52 3
- jumpifhalfword 4, 0x20239f8, 1, BattleScript_1D8D86
+ jumpifhalfword 4, gBattleTypeFlags, 1, BattleScript_1D8D86
atk68
BattleScript_1D8D86: @ 81D8D86
@@ -3036,7 +3036,7 @@ BattleScript_1D8D99: @ 81D8D99
switch3 3, 0
waitstateatk
atk52 5
- jumpifarraynotequal 0x2024c09, 0x2024a68, 1, BattleScript_1D8D99
+ jumpifarraynotequal gBank1, gNoOfAllBanks, 1, BattleScript_1D8D99
BattleScript_1D8DBD: @ 81D8DBD
end2
@@ -3056,9 +3056,9 @@ gUnknown_081D8DCE:: @ 81D8DCE
end2
gUnknown_081D8DD1:: @ 81D8DD1
- jumpifhalfword 4, 0x20239f8, 256, BattleScript_1D8E01
- jumpifhalfword 4, 0x20239f8, 2048, BattleScript_1D8E01
- jumpifhalfword 0, 0x202ff5e, 1024, BattleScript_1D8E01
+ jumpifhalfword 4, gBattleTypeFlags, 256, BattleScript_1D8E01
+ jumpifhalfword 4, gBattleTypeFlags, 2048, BattleScript_1D8E01
+ jumpifhalfword 0, gTrainerBattleOpponent, 1024, BattleScript_1D8E01
printstring BATTLE_TEXT_OutOfUsablePoke
waitmessage 64
printstring BATTLE_TEXT_WhitedOut
@@ -3121,8 +3121,8 @@ gUnknown_081D8E4A:: @ 81D8E4A
gUnknown_081D8E4E:: @ 81D8E4E
atk74 1
printstring 2
- setbyte 0x201601f, 2
- jumpifbyte 4, 0x20239f8, 1, BattleScript_1D8E6B
+ setbyte gSharedMem + 0x1601F, 2
+ jumpifbyte 4, gBattleTypeFlags, 1, BattleScript_1D8E6B
atk26 1
jump BattleScript_1D8E6D
@@ -3152,9 +3152,9 @@ BattleScript_1D8E7A: @ 81D8E7A
switch3 USER, 0
waitstateatk
atk52 USER
- setbyte 0x201600c, 4
+ setbyte gSharedMem + 0x1600C, 4
atk49 1, 0
- setbyte 0x201600c, 15
+ setbyte gSharedMem + 0x1600C, 15
atk49 1, 0
end2
@@ -3178,11 +3178,11 @@ BattleScript_1D8EAD: @ 81D8EAD
resultmessage
waitmessage 64
faintpokemon TARGET, 0, 0x0
- setbyte 0x201600c, 3
+ setbyte gSharedMem + 0x1600C, 3
atk49 2, 6
atk76 TARGET, 4
- jumpifbyte 0, 0x2024d1e, 0, BattleScript_1D8EEE
- setbyte 0x201600f, 0
+ jumpifbyte 0, gBattleCommunication, 0, BattleScript_1D8EEE
+ setbyte gSharedMem + 0x1600F, 0
atk23 0
BattleScript_1D8EEE: @ 81D8EEE
@@ -3195,7 +3195,7 @@ BattleScript_Pausex20:: @ 81D8EEF
BattleScript_LevelUp:: @ 81D8EF3
atk55 0xe10016f
attackcanceler
- setbyte 0x201609c, 0
+ setbyte gSharedMem + 0x1609C, 0
atk6c
checkiflearnmoveinbattle BattleScript_1D8F4F, BattleScript_1D8F61, 1
jump BattleScript_1D8F19
@@ -3209,11 +3209,11 @@ BattleScript_1D8F19: @ 81D8F19
printstring BATTLE_TEXT_CantLearnMore
printstring BATTLE_TEXT_DeleteMove
waitstateatk
- setbyte 0x201601a, 0
+ setbyte gSharedMem + 0x1601A, 0
atk5a BattleScript_1D8F46
printstring BATTLE_TEXT_StopLearning
waitstateatk
- setbyte 0x201601a, 0
+ setbyte gSharedMem + 0x1601A, 0
atk5b BattleScript_1D8F19
printstring BATTLE_TEXT_DidNotLearn
jump BattleScript_1D8F0F
@@ -3237,7 +3237,7 @@ BattleScript_1D8F61: @ 81D8F61
gUnknown_081D8F62:: @ 81D8F62
printfromtable BattleTextList_401534
waitmessage 64
- jumpifbyte 0, 0x2024d23, 2, BattleScript_1D8F7C
+ jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D8F7C
playanimation USER, 10, 0x0
BattleScript_1D8F7C: @ 81D8F7C
@@ -3246,16 +3246,16 @@ BattleScript_1D8F7C: @ 81D8F7C
gUnknown_081D8F7D:: @ 81D8F7D
printfromtable BattleTextList_401528
waitmessage 64
- atk46 1, 0x20160a4, 0x0
- setbyte 0x2024d1e, 0
+ atk46 1, gSharedMem + 0x160A4, 0x0
+ setbyte gBattleCommunication, 0
BattleScript_1D8F95: @ 81D8F95
- atk32 0x2024c07, 0x2024a7a, 0x2024d1e, 1
+ atk32 gBankAttacker, gTurnOrder, gBattleCommunication, 1
weatherdamage
- jumpifword 0, 0x2024bec, 0x0, BattleScript_1D8FD6
+ jumpifword 0, gBattleMoveDamage, 0x0, BattleScript_1D8FD6
printfromtable BattleTextList_40152C
waitmessage 64
- orword 0x2024c6c, 0x1100120
+ orword gHitMarker, 0x1100120
missmessage
atk5c USER
graphicalhpupdate USER
@@ -3264,12 +3264,12 @@ BattleScript_1D8F95: @ 81D8F95
atk24 BattleScript_1D8FD6
BattleScript_1D8FD6: @ 81D8FD6
- jumpifbyte 1, 0x2024d26, 0, BattleScript_1D8FF5
- addbyte 0x2024d1e, 1
- jumpifarraynotequal 0x2024d1e, 0x2024a68, 1, BattleScript_1D8F95
+ jumpifbyte 1, gBattleOutcome, 0, BattleScript_1D8FF5
+ addbyte gBattleCommunication, 1
+ jumpifarraynotequal gBattleCommunication, gNoOfAllBanks, 1, BattleScript_1D8F95
BattleScript_1D8FF5: @ 81D8FF5
- bicword 0x2024c6c, 0x1100120
+ bicword gHitMarker, 0x1100120
end2
gUnknown_081D8FFF:: @ 81D8FFF
@@ -3291,7 +3291,7 @@ gUnknown_081D9016:: @ 81D9016
gUnknown_081D901D:: @ 81D901D
printfromtable BattleTextList_4015EE
waitmessage 64
- atk46 1, 0x20160a4, 0x0
+ atk46 1, gSharedMem + 0x160A4, 0x0
end3
gUnknown_081D9030:: @ 81D9030
@@ -3312,21 +3312,21 @@ gUnknown_081D9041:: @ 81D9041
end2
BattleScript_LeechSeedTurnDrain:: @ 81D904B
- playanimation USER, 14, 0x20160a4
- orword 0x2024c6c, 0x100100
+ playanimation USER, 14, gSharedMem + 0x160A4
+ orword gHitMarker, 0x100100
graphicalhpupdate USER
datahpupdate USER
- copyarray 0x2024bec, 0x2024bf0, 4
+ copyarray gBattleMoveDamage, gHP_dealt, 4
jumpifability USER, ABILITY_LIQUID_OOZE, BattleScript_1D907D
manipulatedamage 0
- setbyte 0x2024d23, 3
+ setbyte gUnknown_02024D1F + 0x4, 3
jump BattleScript_1D9083
BattleScript_1D907D: @ 81D907D
- setbyte 0x2024d23, 4
+ setbyte gUnknown_02024D1F + 0x4, 4
BattleScript_1D9083: @ 81D9083
- orword 0x2024c6c, 0x100100
+ orword gHitMarker, 0x100100
graphicalhpupdate TARGET
datahpupdate TARGET
printfromtable BattleTextList_40154C
@@ -3345,10 +3345,10 @@ BattleScript_BideAttack:: @ 81D90B2
waitmessage 64
accuracycheck BattleScript_1D6F77, 0
atk6
- bicbyte 0x2024c68, 6
- copyarray 0x2024bec, 0x2016090, 4
+ bicbyte gBattleMoveFlags, 6
+ copyarray gBattleMoveDamage, gSharedMem + 0x16090, 4
atk69
- setbyte 0x2016002, 1
+ setbyte gSharedMem + 0x16002, 1
attackanimation
waitanimation
missmessage
@@ -3372,8 +3372,8 @@ gUnknown_081D90FC:: @ 81D90FC
atke2 TARGET
atk58 TARGET
waitstateatk
- jumpifhalfword 4, 0x20239f8, 8, BattleScript_1D9116
- setbyte 0x2024d26, 5
+ jumpifhalfword 4, gBattleTypeFlags, 8, BattleScript_1D9116
+ setbyte gBattleOutcome, 5
atkf6
BattleScript_1D9116: @ 81D9116
@@ -3418,14 +3418,14 @@ BattleScript_EncoredNoMore:: @ 81D914F
gUnknown_081D9156:: @ 81D9156
printstring BATTLE_TEXT_DestinyBondTaken
waitmessage 64
- orword 0x2024c6c, 0x100100
+ orword gHitMarker, 0x100100
graphicalhpupdate USER
datahpupdate USER
faintpokemon USER, 0, 0x0
return
gUnknown_081D9171:: @ 81D9171
- orword 0x2024c6c, 0x100100
+ orword gHitMarker, 0x100100
graphicalhpupdate USER
datahpupdate USER
callatk BattleScript_1D91FB
@@ -3434,12 +3434,12 @@ gUnknown_081D9171:: @ 81D9171
return
BattleScript_1D9192: @ 81D9192
- setbyte 0x201600f, 0
+ setbyte gSharedMem + 0x1600F, 0
atk23 1
jump gUnknown_081D8C7B
gUnknown_081D919F:: @ 81D919F
- orword 0x2024c6c, 0x100100
+ orword gHitMarker, 0x100100
graphicalhpupdate TARGET
datahpupdate TARGET
callatk BattleScript_1D91FB
@@ -3448,12 +3448,12 @@ gUnknown_081D919F:: @ 81D919F
return
BattleScript_1D91C0: @ 81D91C0
- setbyte 0x201600f, 0
+ setbyte gSharedMem + 0x1600F, 0
atk23 0
jump gUnknown_081D8C7B
gUnknown_081D91CD:: @ 81D91CD
- orword 0x2024c6c, 0x100100
+ orword gHitMarker, 0x100100
graphicalhpupdate 3
datahpupdate 3
callatk BattleScript_1D91FB
@@ -3462,7 +3462,7 @@ gUnknown_081D91CD:: @ 81D91CD
return
BattleScript_1D91EE: @ 81D91EE
- setbyte 0x201600f, 0
+ setbyte gSharedMem + 0x1600F, 0
atk23 3
jump gUnknown_081D8C7B
@@ -3474,7 +3474,7 @@ BattleScript_1D91FB: @ 81D91FB
BattleScript_PerishSongHits:: @ 81D9202
printstring BATTLE_TEXT_PerishSongFell
waitmessage 64
- orword 0x2024c6c, 0x100100
+ orword gHitMarker, 0x100100
graphicalhpupdate USER
datahpupdate USER
faintpokemon USER, 0, 0x0
@@ -3493,33 +3493,33 @@ BattleScript_AllStatsUp:: @ 81D9224
jumpifstat USER, 0, 5, 12, BattleScript_1D92BF
BattleScript_1D9251: @ 81D9251
- setbyte 0x20160dc, 0
+ setbyte gSharedMem + 0x160DC, 0
playstatchangeanimation USER, 62, 0
- setbyte 0x201601e, 17
+ setbyte gSharedMem + 0x1601E, 17
statbuffchange 65, BattleScript_1D926F
printfromtable BattleTextList_401570
waitmessage 64
BattleScript_1D926F: @ 81D926F
- setbyte 0x201601e, 18
+ setbyte gSharedMem + 0x1601E, 18
statbuffchange 65, BattleScript_1D9283
printfromtable BattleTextList_401570
waitmessage 64
BattleScript_1D9283: @ 81D9283
- setbyte 0x201601e, 19
+ setbyte gSharedMem + 0x1601E, 19
statbuffchange 65, BattleScript_1D9297
printfromtable BattleTextList_401570
waitmessage 64
BattleScript_1D9297: @ 81D9297
- setbyte 0x201601e, 20
+ setbyte gSharedMem + 0x1601E, 20
statbuffchange 65, BattleScript_1D92AB
printfromtable BattleTextList_401570
waitmessage 64
BattleScript_1D92AB: @ 81D92AB
- setbyte 0x201601e, 21
+ setbyte gSharedMem + 0x1601E, 21
statbuffchange 65, BattleScript_1D92BF
printfromtable BattleTextList_401570
waitmessage 64
@@ -3549,7 +3549,7 @@ BattleScript_SpikesFree:: @ 81D92D0
BattleScript_FutureSightHits:: @ 81D92D7
printstring BATTLE_TEXT_TookAttack
waitmessage 64
- jumpifbyte 1, 0x2024d23, 0, BattleScript_1D92F4
+ jumpifbyte 1, gUnknown_02024D1F + 0x4, 0, BattleScript_1D92F4
accuracycheck BattleScript_1D934B, 248
jump BattleScript_1D92FB
@@ -3558,7 +3558,7 @@ BattleScript_1D92F4: @ 81D92F4
BattleScript_1D92FB: @ 81D92FB
atk8
- jumpifbyte 1, 0x2024d23, 0, BattleScript_1D9313
+ jumpifbyte 1, gUnknown_02024D1F + 0x4, 0, BattleScript_1D9313
playanimation USER, 18, 0x0
jump BattleScript_1D931A
@@ -3577,20 +3577,20 @@ BattleScript_1D931A: @ 81D931A
atk24 BattleScript_1D9332
BattleScript_1D9332: @ 81D9332
- setbyte 0x201600c, 0
+ setbyte gSharedMem + 0x1600C, 0
atk49 1, 0
- setbyte 0x201600c, 8
+ setbyte gSharedMem + 0x1600C, 8
atk49 2, 14
- setbyte 0x2024c68, 0
+ setbyte gBattleMoveFlags, 0
end2
BattleScript_1D934B: @ 81D934B
pause 32
- setbyte 0x2024c68, 0
- orbyte 0x2024c68, 32
+ setbyte gBattleMoveFlags, 0
+ orbyte gBattleMoveFlags, 32
resultmessage
waitmessage 64
- setbyte 0x2024c68, 0
+ setbyte gBattleMoveFlags, 0
end2
BattleScript_NoMovesLeft:: @ 81D9365
@@ -3629,7 +3629,7 @@ BattleScript_WishComesTrue:: @ 81D939A
playanimation TARGET, 22, 0x0
printstring BATTLE_TEXT_WishTrue
waitmessage 64
- orword 0x2024c6c, 0x100
+ orword gHitMarker, 0x100
graphicalhpupdate TARGET
datahpupdate TARGET
printstring BATTLE_TEXT_RegainedHealth
@@ -3648,7 +3648,7 @@ BattleScript_IngrainTurnHeal:: @ 81D93D1
playanimation USER, 21, 0x0
printstring BATTLE_TEXT_AbsorbNutrients
waitmessage 64
- orword 0x2024c6c, 0x100
+ orword gHitMarker, 0x100
graphicalhpupdate USER
datahpupdate USER
end2
@@ -3660,20 +3660,20 @@ BattleScript_1D93EC: @ 81D93EC
jump BattleScript_EndTurn
BattleScript_AtkDefDown:: @ 81D93FA
- setbyte 0x20160dc, 0
+ setbyte gSharedMem + 0x160DC, 0
playstatchangeanimation USER, 6, 13
playstatchangeanimation USER, 2, 9
- setbyte 0x201601e, 145
+ setbyte gSharedMem + 0x1601E, 145
statbuffchange 193, BattleScript_1D9427
- jumpifbyte 0, 0x2024d23, 2, BattleScript_1D9427
+ jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D9427
printfromtable BattleTextList_40157C
waitmessage 64
BattleScript_1D9427: @ 81D9427
playstatchangeanimation USER, 4, 9
- setbyte 0x201601e, 146
+ setbyte gSharedMem + 0x1601E, 146
statbuffchange 193, BattleScript_1D944A
- jumpifbyte 0, 0x2024d23, 2, BattleScript_1D944A
+ jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D944A
printfromtable BattleTextList_40157C
waitmessage 64
@@ -3706,7 +3706,7 @@ BattleScript_MagicCoatBounce:: @ 81D946F
pause 32
printstring BATTLE_TEXT_MagicCoatBounce
waitmessage 64
- orword 0x2024c6c, 0x800c00
+ orword gHitMarker, 0x800c00
atk76 USER, 1
return
@@ -3717,7 +3717,7 @@ BattleScript_SnatchedMove:: @ 81D9487
playanimation TARGET, 17, 0x0
printstring BATTLE_TEXT_SnatchedMove
waitmessage 64
- orword 0x2024c6c, 0x800c00
+ orword gHitMarker, 0x800c00
atk5f
return
@@ -3732,11 +3732,11 @@ BattleScript_OneHitKOMsg:: @ 81D94A9
return
BattleScript_SAtkDown2:: @ 81D94B0
- setbyte 0x20160dc, 0
+ setbyte gSharedMem + 0x160DC, 0
playstatchangeanimation USER, 16, 11
- setbyte 0x201601e, 164
+ setbyte gSharedMem + 0x1601E, 164
statbuffchange 193, BattleScript_1D94D9
- jumpifbyte 0, 0x2024d23, 2, BattleScript_1D94D9
+ jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D94D9
printfromtable BattleTextList_40157C
waitmessage 64
@@ -3758,7 +3758,7 @@ BattleScript_MoveUsedIsAsleep:: @ 81D94EE
jump BattleScript_EndTurn
BattleScript_MoveUsedWokeUp:: @ 81D94FB
- bicword 0x2024c6c, 0x10
+ bicword gHitMarker, 0x10
printfromtable BattleTextList_401562
waitmessage 64
atk98 1
@@ -3778,7 +3778,7 @@ BattleScript_1D951E: @ 81D951E
statusanimation USER
BattleScript_1D9520: @ 81D9520
- orword 0x2024c6c, 0x100100
+ orword gHitMarker, 0x100100
graphicalhpupdate USER
datahpupdate USER
faintpokemon USER, 0, 0x0
@@ -3836,7 +3836,7 @@ BattleScript_MoveUsedIsConfused:: @ 81D9595
printstring BATTLE_TEXT_Confused
waitmessage 64
atk65 1, 0x7
- jumpifbyte 0, 0x2024d23, 0, BattleScript_1D95D3
+ jumpifbyte 0, gUnknown_02024D1F + 0x4, 0, BattleScript_1D95D3
BattleScript_1D95AC: @ 81D95AC
atk76 USER, 0
@@ -3846,7 +3846,7 @@ BattleScript_1D95AC: @ 81D95AC
missmessage
atk5c USER
waitstateatk
- orword 0x2024c6c, 0x100100
+ orword gHitMarker, 0x100100
graphicalhpupdate USER
datahpupdate USER
faintpokemon USER, 0, 0x0
@@ -3866,7 +3866,7 @@ gUnknown_081D95DB:: @ 81D95DB
return
BattleScript_WrapTurnDmg:: @ 81D95E2
- playanimation USER, 6, 0x20160a4
+ playanimation USER, 6, gSharedMem + 0x160A4
printstring BATTLE_TEXT_HurtBy
waitmessage 64
jump BattleScript_1D9520
@@ -3976,11 +3976,11 @@ BattleScript_1D96BA:: @ 81D96BA
return
BattleScript_1D96C8:: @ 81D96C8
- jumpifhalfword 0, 0x2024be6, 165, BattleScript_1D96DB
+ jumpifhalfword 0, gCurrentMove, 165, BattleScript_1D96DB
jumpifability USER, ABILITY_ROCK_HEAD, BattleScript_1D96F5
BattleScript_1D96DB: @ 81D96DB
- orword 0x2024c6c, 0x100100
+ orword gHitMarker, 0x100100
graphicalhpupdate USER
datahpupdate USER
printstring BATTLE_TEXT_HitRecoil
@@ -4005,7 +4005,7 @@ BattleScript_DrizzleActivates:: @ 81D9704
end3
BattleScript_SpeedBoostActivates:: @ 81D9718
- playanimation USER, 1, 0x20160a4
+ playanimation USER, 1, gSharedMem + 0x160A4
printstring BATTLE_TEXT_SpeedRisen
waitmessage 64
end3
@@ -4019,7 +4019,7 @@ BattleScript_TraceActivates:: @ 81D9726
BattleScript_RainDishActivates:: @ 81D9730
printstring BATTLE_TEXT_RestoredHPByItem
waitmessage 64
- orword 0x2024c6c, 0x100
+ orword gHitMarker, 0x100
graphicalhpupdate USER
datahpupdate USER
end3
@@ -4039,12 +4039,12 @@ BattleScript_ShedSkinActivates:: @ 81D9758
end3
BattleScript_1D9761: @ 81D9761
- setbyte 0x2016003, 0
+ setbyte gSharedMem + 0x16003, 0
BattleScript_1D9767: @ 81D9767
castformswitch
- addbyte 0x2016003, 1
- jumpifarraynotequal 0x2016003, 0x2024a68, 1, BattleScript_1D9767
+ addbyte gSharedMem + 0x16003, 1
+ jumpifarraynotequal gSharedMem + 0x16003, gNoOfAllBanks, 1, BattleScript_1D9767
return
BattleScript_CastformChange:: @ 81D977D
@@ -4066,8 +4066,8 @@ BattleScript_1D9792: @ 81D9792
pause 32
gUnknown_081D9795:: @ 81D9795
- setbyte 0x2024c08, 0
- setbyte 0x201601e, 145
+ setbyte gBankTarget, 0
+ setbyte gSharedMem + 0x1601E, 145
BattleScript_1D97A1: @ 81D97A1
atke1 BattleScript_1D97EF
@@ -4076,14 +4076,14 @@ BattleScript_1D97A1: @ 81D97A1
jumpifability TARGET, ABILITY_HYPER_CUTTER, BattleScript_1D97F0
jumpifability TARGET, ABILITY_WHITE_SMOKE, BattleScript_1D97F0
statbuffchange 33, BattleScript_1D97E4
- jumpifbyte 2, 0x2024d23, 1, BattleScript_1D97E4
+ jumpifbyte 2, gUnknown_02024D1F + 0x4, 1, BattleScript_1D97E4
atk47
- playanimation TARGET, 1, 0x20160a4
+ playanimation TARGET, 1, gSharedMem + 0x160A4
printstring BATTLE_TEXT_CutsAttack
waitmessage 64
BattleScript_1D97E4: @ 81D97E4
- addbyte 0x2024c08, 1
+ addbyte gBankTarget, 1
jump BattleScript_1D97A1
BattleScript_1D97EF: @ 81D97EF
@@ -4108,7 +4108,7 @@ BattleScript_TookAttack:: @ 81D9812
pause 32
printstring BATTLE_TEXT_TookAttack2
waitmessage 64
- orword 0x2024c6c, 0x400
+ orword gHitMarker, 0x400
return
gUnknown_081D9826:: @ 81D9826
@@ -4129,12 +4129,12 @@ BattleScript_MoveHPDrain_PPLoss:: @ 81D9842
BattleScript_MoveHPDrain:: @ 81D9843
attackstring
pause 32
- orword 0x2024c6c, 0x100
+ orword gHitMarker, 0x100
graphicalhpupdate TARGET
datahpupdate TARGET
printstring BATTLE_TEXT_HPRestoredUsing
waitmessage 64
- orbyte 0x2024c68, 8
+ orbyte gBattleMoveFlags, 8
jump BattleScript_EndTurn
BattleScript_MoveHPDrain_FullHP_PPLoss:: @ 81D9865
@@ -4145,7 +4145,7 @@ BattleScript_MoveHPDrain_FullHP:: @ 81D9866
pause 32
printstring BATTLE_TEXT_MadeUseless
waitmessage 64
- orbyte 0x2024c68, 8
+ orbyte gBattleMoveFlags, 8
jump BattleScript_EndTurn
BattleScript_FlashFireBoost_PPLoss:: @ 81D987B
@@ -4218,7 +4218,7 @@ BattleScript_AbilityNoSpecificStatLoss:: @ 81D9903
pause 32
printstring BATTLE_TEXT_PreventedLoss
waitmessage 64
- setbyte 0x2024d23, 3
+ setbyte gUnknown_02024D1F + 0x4, 3
return
BattleScript_NoItemSteal:: @ 81D9913
@@ -4233,7 +4233,7 @@ BattleScript_ColorChangeActivates:: @ 81D9921
return
BattleScript_RoughSkinActivates:: @ 81D9928
- orword 0x2024c6c, 0x100100
+ orword gHitMarker, 0x100100
graphicalhpupdate USER
datahpupdate USER
printstring BATTLE_TEXT_HurtOther
@@ -4266,7 +4266,7 @@ gUnknown_081D9956:: @ 81D9956
gUnknown_081D995F:: @ 81D995F
printstring BATTLE_TEXT_IgnoredOrdersSLP
waitmessage 64
- setbyte 0x201600c, 0
+ setbyte gSharedMem + 0x1600C, 0
atk49 2, 16
end
@@ -4278,16 +4278,16 @@ gUnknown_081D996F:: @ 81D996F
BattleScript_MoveUsedLoafingAround:: @ 81D9977
printfromtable BattleTextList_40160E
waitmessage 64
- setbyte 0x201600c, 0
+ setbyte gSharedMem + 0x1600C, 0
atk49 2, 16
end
gUnknown_081D9989:: @ 81D9989
printstring BATTLE_TEXT_BeganNap
waitmessage 64
- setbyte 0x2024d21, 65
+ setbyte gUnknown_02024D1F + 0x2, 65
seteffecttarget
- setbyte 0x201600c, 0
+ setbyte gSharedMem + 0x1600C, 0
atk49 2, 16
end
@@ -4399,7 +4399,7 @@ BattleScript_ItemHealHP_RemoveItem:: @ 81D9A74
playanimation USER, 7, 0x0
printstring BATTLE_TEXT_RestoredHealth
waitmessage 64
- orword 0x2024c6c, 0x100
+ orword gHitMarker, 0x100
graphicalhpupdate USER
datahpupdate USER
removeitem USER
@@ -4420,7 +4420,7 @@ BattleScript_ItemHealHP_Ret:: @ 81D9AA7
playanimation USER, 7, 0x0
printstring BATTLE_TEXT_RestoredHPLittle
waitmessage 64
- orword 0x2024c6c, 0x100
+ orword gHitMarker, 0x100
graphicalhpupdate USER
datahpupdate USER
return
@@ -4439,12 +4439,12 @@ BattleScript_BerryConfuseHealEnd2:: @ 81D9AD4
playanimation USER, 7, 0x0
printstring BATTLE_TEXT_RestoredHealth
waitmessage 64
- orword 0x2024c6c, 0x100
+ orword gHitMarker, 0x100
graphicalhpupdate USER
datahpupdate USER
printstring BATTLE_TEXT_UnknownString2
waitmessage 64
- setbyte 0x2024d21, 71
+ setbyte gUnknown_02024D1F + 0x2, 71
seteffecttarget
removeitem USER
end2
@@ -4454,7 +4454,7 @@ BattleScript_BerryStatRaiseEnd2:: @ 81D9AFE
statbuffchange 65, BattleScript_1D9B0B
BattleScript_1D9B0B: @ 81D9B0B
- setbyte 0x2024d23, 4
+ setbyte gUnknown_02024D1F + 0x4, 4
callatk BattleScript_StatUp
removeitem USER
end2
diff --git a/data/battle_scripts_2.s b/data/battle_scripts_2.s
index b10b7f96f..0833b7bf2 100644
--- a/data/battle_scripts_2.s
+++ b/data/battle_scripts_2.s
@@ -102,7 +102,7 @@ BattleScript_TrainerBallBlock:: @ 81D9F35
atkf6
BattleScript_1D9F45: @ 81D9F45
- setbyte 0x201600c, 15
+ setbyte gSharedMem + 0x1600C, 15
atk49 1, 0
end
@@ -118,7 +118,7 @@ BattleScript_1D9F4F: @ 81D9F4F
printstring BATTLE_TEXT_RestoredHealth
waitmessage 64
atk98 1
- setbyte 0x201600c, 15
+ setbyte gSharedMem + 0x1600C, 15
atk49 1, 0
atkf6
@@ -131,7 +131,7 @@ BattleScript_1D9F7B: @ 81D9F7B
printfromtable BattleTextList_401620
waitmessage 64
atk98 1
- setbyte 0x201600c, 15
+ setbyte gSharedMem + 0x1600C, 15
atk49 1, 0
atkf6
@@ -143,7 +143,7 @@ BattleScript_1D9F9C: @ 81D9F9C
atk75
printfromtable BattleTextList_401570
waitmessage 64
- setbyte 0x201600c, 15
+ setbyte gSharedMem + 0x1600C, 15
atk49 1, 0
atkf6
@@ -155,7 +155,7 @@ BattleScript_1D9FBB: @ 81D9FBB
atk75
printfromtable BattleTextList_4015A0
waitmessage 64
- setbyte 0x201600c, 15
+ setbyte gSharedMem + 0x1600C, 15
atk49 1, 0
atkf6
diff --git a/data/contest.s b/data/contest.s
index 0e06e9290..181d5ed13 100644
--- a/data/contest.s
+++ b/data/contest.s
@@ -297,10 +297,10 @@ gUnknown_083CC4B4:: @ 83CC4B4
.align 2
gUnknown_083CC4D4:: @ 83CC4D4
- obj_pal 0x20180A4, 33000
- obj_pal 0x20180C4, 33001
- obj_pal 0x20180E4, 33002
- obj_pal 0x2018104, 33003
+ obj_pal gSharedMem + 0x180A4, 33000
+ obj_pal gSharedMem + 0x180C4, 33001
+ obj_pal gSharedMem + 0x180E4, 33002
+ obj_pal gSharedMem + 0x18104, 33003
.align 2
gOamData_83CC4F4:: @ 83CC4F4
diff --git a/data/credits.s b/data/credits.s
deleted file mode 100644
index fe82968c0..000000000
--- a/data/credits.s
+++ /dev/null
@@ -1,159 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .section .rodata
-
-gUnknown_0840B83C:: @ 840B83C
- .byte 0, 1, 0
- .byte 0xFF, 1,0xFF
- .byte 0xFF, 1,0xFF
- .byte 0xFF, 1,0xFF
- .byte 0xFF, 1,0xFF
-
-gUnknown_0840B84B:: @ 840B84B
- .byte 1,0xFF, 1
- .byte 1,0xFF, 1
- .byte 1, 2, 1
- .byte 1,0xFF, 1
- .byte 1,0xFF, 1
-
-gUnknown_0840B85A:: @ 840B85A
- .byte 1, 0, 0
- .byte 1,0xFF,0xFF
- .byte 1, 2, 2
- .byte 1,0xFF,0xFF
- .byte 1,0x80,0x80
-
-gUnknown_0840B869:: @ 840B869
- .byte 1, 3, 1
- .byte 1, 4, 1
- .byte 1, 5, 1
- .byte 1,0xC4, 1
- .byte 1,0xC3, 1
-
-gUnknown_0840B878:: @ 840B878
- .byte 1, 6, 7
- .byte 1, 8, 9
- .byte 1,0xFF, 1
- .byte 1,0x88,0x89
- .byte 1,0x86,0x87
-
-.ifdef GERMAN
- .byte 1, 0, 0
- .byte 1,0xFF,0xFF
- .byte 1,0x80,0x8A
- .byte 1,0xFF,0xFF
- .byte 1,0xFF,0xFF
- .byte 0, 1, 0
- .byte 0xFF, 1,0xFF
- .byte 0xFF, 1,0xFF
- .byte 0xFF, 1,0xFF
- .byte 0x80, 1,0x80
-.endif
-
- .include "data/text/credits.inc"
-
-gUnknown_0840CA00:: @ 840CA00
- .byte 104, 36
- .byte 120, 36
- .byte 136, 36
-
- .align 2
-gSpriteAnim_840CA08:
- obj_image_anim_frame 0, 8
- obj_image_anim_frame 64, 8
- obj_image_anim_frame 128, 8
- obj_image_anim_frame 192, 8
- obj_image_anim_jump 0
-
-gSpriteAnim_840CA1C:
- obj_image_anim_frame 0, 4
- obj_image_anim_frame 64, 4
- obj_image_anim_frame 128, 4
- obj_image_anim_frame 192, 4
- obj_image_anim_jump 0
-
-gSpriteAnim_840CA30:
- obj_image_anim_frame 256, 4
- obj_image_anim_frame 320, 4
- obj_image_anim_frame 384, 4
- obj_image_anim_end
-
-gSpriteAnim_840CA40:
- obj_image_anim_frame 384, 30
- obj_image_anim_frame 320, 30
- obj_image_anim_frame 256, 30
- obj_image_anim_frame 256, 30
- obj_image_anim_end
-
- .align 2
-gSpriteAnimTable_0840CA54:: @ 840CA54
- .4byte gSpriteAnim_840CA08
- .4byte gSpriteAnim_840CA1C
- .4byte gSpriteAnim_840CA30
- .4byte gSpriteAnim_840CA40
-
-
-gSpriteAnim_840CA64:
- obj_image_anim_frame 0, 8
- obj_image_anim_frame 64, 8
- obj_image_anim_frame 128, 8
- obj_image_anim_frame 192, 8
- obj_image_anim_jump 0
-
-gSpriteAnim_840CA78:
- obj_image_anim_frame 0, 4
- obj_image_anim_frame 64, 4
- obj_image_anim_frame 128, 4
- obj_image_anim_frame 192, 4
- obj_image_anim_jump 0
-
-gSpriteAnim_840CA8C:
- obj_image_anim_frame 0, 4
- obj_image_anim_end
-
- .align 2
-gSpriteAnimTable_0840CA94:: @ 840CA94
- .4byte gSpriteAnim_840CA64
- .4byte gSpriteAnim_840CA78
- .4byte gSpriteAnim_840CA8C
-
-
-gUnknown_0840CAA0:: @ 840CAA0
- obj_tiles gHallOfFame, 6144, 1001
- null_obj_tiles
-
-gUnknown_0840CAB0:: @ 840CAB0
- obj_pal unk_201f800, 1001
- null_obj_pal
-
- .align 2
-gOamData_840CAC0:: @ 840CAC0
- .2byte 0x00A0
- .2byte 0xC000
- .2byte 0x0400
-
- .align 2
-gSpriteAnim_840CAC8:: @ 840CAC8
- obj_image_anim_frame 0, 8
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_840CAD0:: @ 840CAD0
- obj_image_anim_frame 64, 8
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_840CAD8:: @ 840CAD8
- obj_image_anim_frame 128, 8
- obj_image_anim_end
-
- .align 2
-gSpriteAnimTable_840CAE0:: @ 840CAE0
- .4byte gSpriteAnim_840CAC8
- .4byte gSpriteAnim_840CAD0
- .4byte gSpriteAnim_840CAD8
-
- .align 2
-gSpriteTemplate_840CAEC:: @ 840CAEC
- spr_template 1001, 1001, gOamData_840CAC0, gSpriteAnimTable_840CAE0, NULL, gDummySpriteAffineAnimTable, spritecb_814580C
diff --git a/data/data2a.s b/data/data2a.s
index 657fc6908..30803120d 100644
--- a/data/data2a.s
+++ b/data/data2a.s
@@ -7,31 +7,31 @@
.align 2
gSpriteImageTable_81E7A10:: @ 81E7A10
- obj_frame_tiles 0x2008000, 0x800
- obj_frame_tiles 0x2008800, 0x800
- obj_frame_tiles 0x2009000, 0x800
- obj_frame_tiles 0x2009800, 0x800
+ obj_frame_tiles gSharedMem + 0x8000, 0x800
+ obj_frame_tiles gSharedMem + 0x8800, 0x800
+ obj_frame_tiles gSharedMem + 0x9000, 0x800
+ obj_frame_tiles gSharedMem + 0x9800, 0x800
.align 2
gSpriteImageTable_81E7A30:: @ 81E7A30
- obj_frame_tiles 0x200A000, 0x800
- obj_frame_tiles 0x200A800, 0x800
- obj_frame_tiles 0x200B000, 0x800
- obj_frame_tiles 0x200B800, 0x800
+ obj_frame_tiles gSharedMem + 0xA000, 0x800
+ obj_frame_tiles gSharedMem + 0xA800, 0x800
+ obj_frame_tiles gSharedMem + 0xB000, 0x800
+ obj_frame_tiles gSharedMem + 0xB800, 0x800
.align 2
gSpriteImageTable_81E7A50:: @ 81E7A50
- obj_frame_tiles 0x200C000, 0x800
- obj_frame_tiles 0x200C800, 0x800
- obj_frame_tiles 0x200D000, 0x800
- obj_frame_tiles 0x200D800, 0x800
+ obj_frame_tiles gSharedMem + 0xC000, 0x800
+ obj_frame_tiles gSharedMem + 0xC800, 0x800
+ obj_frame_tiles gSharedMem + 0xD000, 0x800
+ obj_frame_tiles gSharedMem + 0xD800, 0x800
.align 2
gSpriteImageTable_81E7A70:: @ 81E7A70
- obj_frame_tiles 0x200E000, 0x800
- obj_frame_tiles 0x200E800, 0x800
- obj_frame_tiles 0x200F000, 0x800
- obj_frame_tiles 0x200F800, 0x800
+ obj_frame_tiles gSharedMem + 0xE000, 0x800
+ obj_frame_tiles gSharedMem + 0xE800, 0x800
+ obj_frame_tiles gSharedMem + 0xF000, 0x800
+ obj_frame_tiles gSharedMem + 0xF800, 0x800
.align 2
gSpriteAnim_81E7A90:: @ 81E7A90
diff --git a/data/data2b.s b/data/data2b.s
index 329384396..e82e221c1 100644
--- a/data/data2b.s
+++ b/data/data2b.s
@@ -72,7 +72,7 @@ gSpriteTemplate_81FAF34:: @ 81FAF34
.align 2
gUnknown_081FAF4C:: @ 81FAF4C
- .4byte 0x02008000
- .4byte 0x0200a000
- .4byte 0x0200c000
- .4byte 0x0200e000
+ .4byte gSharedMem + 0x8000
+ .4byte gSharedMem + 0xA000
+ .4byte gSharedMem + 0xC000
+ .4byte gSharedMem + 0xE000
diff --git a/data/easy_chat.s b/data/easy_chat.s
index 436835d19..e0844b902 100644
--- a/data/easy_chat.s
+++ b/data/easy_chat.s
@@ -45,7 +45,7 @@ gBerryMasterWifePhrases:: @ 83DB680
.endif
gUnknown_083DB694:: @ 83DB694
- .4byte 0x02001000
+ .4byte gSharedMem + 0x1000
.align 2
gUnknown_083DB698:: @ 83DB698
@@ -114,15 +114,15 @@ gUnknown_083DB7C0:: @ 83DB7C0
.align 2
gUnknown_083DB7DC:: @ 83DB7DC
.ifdef ENGLISH
- .4byte 0x0200ac80
- .4byte 0x0200acc9
- .4byte 0x0200ad12
- .4byte 0x0200ad5b
+ .4byte gSharedMem + 0xAC80
+ .4byte gSharedMem + 0xACC9
+ .4byte gSharedMem + 0xAD12
+ .4byte gSharedMem + 0xAD5B
.else
- .4byte 0x0200AFAC
- .4byte 0x0200AFF5
- .4byte 0x0200B03E
- .4byte 0x0200B087
+ .4byte gSharedMem + 0xAFAC
+ .4byte gSharedMem + 0xAFF5
+ .4byte gSharedMem + 0xB03E
+ .4byte gSharedMem + 0xB087
.endif
.align 1
diff --git a/data/field_weather.s b/data/field_weather.s
index 836bfbe99..1b0076451 100644
--- a/data/field_weather.s
+++ b/data/field_weather.s
@@ -4,40 +4,6 @@
.section .rodata
.align 2
-DroughtPaletteData_0: @ 8393FE8
- .incbin "graphics/weather/drought0.bin.lz"
-
- .align 2
-DroughtPaletteData_1: @ 839480C
- .incbin "graphics/weather/drought1.bin.lz"
-
- .align 2
-DroughtPaletteData_2: @ 8395004
- .incbin "graphics/weather/drought2.bin.lz"
-
- .align 2
-DroughtPaletteData_3: @ 83957A0
- .incbin "graphics/weather/drought3.bin.lz"
-
- .align 2
-DroughtPaletteData_4: @ 8395FBC
- .incbin "graphics/weather/drought4.bin.lz"
-
- .align 2
-DroughtPaletteData_5: @ 8396784
- .incbin "graphics/weather/drought5.bin.lz"
-
- .align 2
-gUnknown_08396FA8:: @ 8396FA8
- .4byte DroughtPaletteData_0
- .4byte DroughtPaletteData_1
- .4byte DroughtPaletteData_2
- .4byte DroughtPaletteData_3
- .4byte DroughtPaletteData_4
- .4byte DroughtPaletteData_5
- .4byte 0x2000000
-
- .align 2
gUnknown_08396FC4:: @ 8396FC4
.4byte gUnknown_0202F7E8
diff --git a/data/mail.s b/data/mail.s
index f5ae7f102..e82212a42 100644
--- a/data/mail.s
+++ b/data/mail.s
@@ -175,4 +175,4 @@ gUnknown_083E57A4:: @ 83E57A4
@ XXX: what is this?
.align 2
- .4byte 0x2000000
+ .4byte gSharedMem
diff --git a/data/pokedex_area_screen.s b/data/pokedex_area_screen.s
index 9c23f8e89..0734a44d7 100644
--- a/data/pokedex_area_screen.s
+++ b/data/pokedex_area_screen.s
@@ -26,7 +26,7 @@ gUnknown_083F857A:: @ 83F857A
@ XXX: what is this?
.align 2
- .4byte 0x2000000
+ .4byte gSharedMem
.align 2
gUnknown_083F858C:: @ 83F858C
@@ -60,7 +60,7 @@ gUnknown_083F865C:: @ 83F865C
.align 2
gUnknown_083F8664:: @ 83F8664
- obj_tiles 0x02000FB4, 0x600, 3
+ obj_tiles gSharedMem + 0xFB4, 0x600, 3
.align 2
gOamData_83F866C:: @ 83F866C
diff --git a/data/pokedex_cry_screen.s b/data/pokedex_cry_screen.s
index d5faa24de..0908ddacb 100644
--- a/data/pokedex_cry_screen.s
+++ b/data/pokedex_cry_screen.s
@@ -37,7 +37,7 @@ gUnknown_083FB274:: @ 83FB274
.2byte 0x3,0x7,0xB,0xF,0x13,0x17,0x1B,0x1F,0x403,0x407,0x40B,0x40F,0x413,0x417,0x41B,0x41F,0x803,0x807,0x80B,0x80F,0x813,0x817,0x81B,0x81F,0xC03,0xC07,0xC0B,0xC0F,0xC13,0xC17,0xC1B,0xC1F,0x1003,0x1007,0x100B,0x100F,0x1013,0x1017,0x101B,0x101F,0x1403,0x1407,0x140B,0x140F,0x1413,0x1417,0x141B,0x141F,0x1803,0x1807,0x180B,0x180F,0x1813,0x1817,0x181B,0x181F,0x1C03,0x1C07,0x1C0B,0x1C0F,0x1C13,0x1C17,0x1C1B,0x1C1F,0x2003,0x2007,0x200B,0x200F,0x2013,0x2017,0x201B,0x201F
.align 2
- .4byte 0x201C000
+ .4byte gSharedMem + 0x1C000
.align 1
gUnknown_083FB6F8:: @ 83FB6F8
diff --git a/data/pokemon_storage_system.s b/data/pokemon_storage_system.s
index e5d3e9282..b765656f7 100644
--- a/data/pokemon_storage_system.s
+++ b/data/pokemon_storage_system.s
@@ -126,7 +126,7 @@ gUnknown_083B6D94:: @ 83B6D94
.align 2
gUnknown_083B6DB4:: @ 83B6DB4
- .4byte 0x02000000
+ .4byte gSharedMem
.align 2
gUnknown_083B6DB8:: @ 83B6DB8
@@ -142,11 +142,11 @@ gWaveformSpriteSheet:: @ 83B6DC4
.align 2
gUnknown_083B6DCC:: @ 83B6DCC
- obj_tiles 0x02002784, 0x800, 2
+ obj_tiles gSharedMem + 0x2784, 0x800, 2
.align 2
gUnknown_083B6DD4:: @ 83B6DD4
- obj_pal 0x02002704, 56007
+ obj_pal gSharedMem + 0x2704, 56007
.align 2
gSpriteTemplate_83B6DDC:: @ 83B6DDC
diff --git a/data/pokenav.s b/data/pokenav.s
index 3ea704c03..f84e45596 100644
--- a/data/pokenav.s
+++ b/data/pokenav.s
@@ -5,7 +5,7 @@
.align 2
gUnknown_083DFEC4:: @ 83DFEC4
- .4byte 0x2000000
+ .4byte gSharedMem
.align 2
gUnknown_083DFEC8:: @ 83DFEC8
diff --git a/data/roulette.s b/data/roulette.s
index 47aa45215..64b7b82e2 100644
--- a/data/roulette.s
+++ b/data/roulette.s
@@ -621,10 +621,10 @@ gOamData_83FA328:: @ 83FA328
.align 2
gSpriteImageTable_83FA330:: @ 83FA330
- obj_frame_tiles 0x02017E00, 0x80
- obj_frame_tiles 0x02017E80, 0x80
- obj_frame_tiles 0x02017F00, 0x80
- obj_frame_tiles 0x02017F80, 0x80
+ obj_frame_tiles gSharedMem + 0x17E00, 0x80
+ obj_frame_tiles gSharedMem + 0x17E80, 0x80
+ obj_frame_tiles gSharedMem + 0x17F00, 0x80
+ obj_frame_tiles gSharedMem + 0x17F80, 0x80
.align 2
gSpriteAnim_83FA350:: @ 83FA350
@@ -732,13 +732,13 @@ gOamData_83FA454:: @ 83FA454
.align 2
gSpriteImageTable_83FA45C:: @ 83FA45C
- obj_frame_tiles 0x02017000, 0x200
- obj_frame_tiles 0x02017200, 0x200
- obj_frame_tiles 0x02017400, 0x200
- obj_frame_tiles 0x02017600, 0x200
- obj_frame_tiles 0x02017800, 0x200
- obj_frame_tiles 0x02017A00, 0x200
- obj_frame_tiles 0x02017C00, 0x200
+ obj_frame_tiles gSharedMem + 0x17000, 0x200
+ obj_frame_tiles gSharedMem + 0x17200, 0x200
+ obj_frame_tiles gSharedMem + 0x17400, 0x200
+ obj_frame_tiles gSharedMem + 0x17600, 0x200
+ obj_frame_tiles gSharedMem + 0x17800, 0x200
+ obj_frame_tiles gSharedMem + 0x17A00, 0x200
+ obj_frame_tiles gSharedMem + 0x17C00, 0x200
.align 2
gSpriteAnim_83FA494:: @ 83FA494
@@ -825,11 +825,11 @@ gOamData_83FA54C:: @ 83FA54C
.align 2
gSpriteImageTable_83FA554: @ 83FA554
- obj_frame_tiles 0x02018000, 0x80
+ obj_frame_tiles gSharedMem + 0x18000, 0x80
.align 2
gSpriteImageTable_83FA55C: @ 83FA55C
- obj_frame_tiles 0x02018080, 0x100
+ obj_frame_tiles gSharedMem + 0x18080, 0x100
.align 2
gSpriteAffineAnim_83FA564:: @ 83FA564
diff --git a/data/scripts/maps/BattleTower_BattleRoom.inc b/data/scripts/maps/BattleTower_BattleRoom.inc
index dbab17a8b..c3ff67902 100644
--- a/data/scripts/maps/BattleTower_BattleRoom.inc
+++ b/data/scripts/maps/BattleTower_BattleRoom.inc
@@ -17,7 +17,7 @@ BattleTower_BattleRoom_EventScript_1608FA:: @ 81608FA
applymovement 1, BattleTower_BattleRoom_Movement_160AC0
waitmovement 0
special PrintBattleTowerTrainerGreeting
- msgbox 0x20234cc, 4
+ msgbox gStringVar4, 4
waitmessage
closemessage
special ScrSpecial_HealPlayerParty
diff --git a/data/scripts/maps/MossdeepCity_GameCorner_B1F.inc b/data/scripts/maps/MossdeepCity_GameCorner_B1F.inc
index 11b3ce7a3..5a526bd60 100644
--- a/data/scripts/maps/MossdeepCity_GameCorner_B1F.inc
+++ b/data/scripts/maps/MossdeepCity_GameCorner_B1F.inc
@@ -16,7 +16,7 @@ MossdeepCity_GameCorner_B1F_EventScript_15AE6E:: @ 815AE6E
applymovement 255, MossdeepCity_GameCorner_B1F_Movement_15AEF9
waitmovement 0
special PrintEReaderTrainerGreeting
- msgbox 0x20234cc, 4
+ msgbox gStringVar4, 4
closemessage
setvar 0x8004, 2
setvar 0x8005, 0
diff --git a/data/slot_machine.s b/data/slot_machine.s
index 5f97c1f5e..9bd6fe5c9 100644
--- a/data/slot_machine.s
+++ b/data/slot_machine.s
@@ -534,23 +534,23 @@ gOamData_83ED0B8:: @ 83ED0B8
.align 2
gSpriteImageTable_83ED0C0:: @ 83ED0C0
- obj_frame_tiles 0x02013200, 0x800
- obj_frame_tiles 0x02013A00, 0x800
- obj_frame_tiles 0x02014200, 0x800
- obj_frame_tiles 0x02014A00, 0x800
- obj_frame_tiles 0x02015200, 0x800
+ obj_frame_tiles gSharedMem + 0x13200, 0x800
+ obj_frame_tiles gSharedMem + 0x13A00, 0x800
+ obj_frame_tiles gSharedMem + 0x14200, 0x800
+ obj_frame_tiles gSharedMem + 0x14A00, 0x800
+ obj_frame_tiles gSharedMem + 0x15200, 0x800
.align 2
gSpriteImageTable_83ED0E8:: @ 83ED0E8
- obj_frame_tiles 0x02015A00, 0x300
+ obj_frame_tiles gSharedMem + 0x15A00, 0x300
.align 2
gSpriteImageTable_83ED0F0:: @ 83ED0F0
- obj_frame_tiles 0x02015D00, 0x500
+ obj_frame_tiles gSharedMem + 0x15D00, 0x500
.align 2
gSpriteImageTable_83ED0F8:: @ 83ED0F8
- obj_frame_tiles 0x02016200, 0x600
+ obj_frame_tiles gSharedMem + 0x16200, 0x600
.align 2
gSpriteImageTable_83ED100:: @ 83ED100
@@ -593,67 +593,67 @@ gSpriteImageTable_83ED170:: @ 83ED170
.align 2
gSpriteImageTable_83ED178:: @ 83ED178
- obj_frame_tiles 0x02010000, 0x600
+ obj_frame_tiles gSharedMem + 0x10000, 0x600
.align 2
gSpriteImageTable_83ED180:: @ 83ED180
- obj_frame_tiles 0x02010600, 0x200
+ obj_frame_tiles gSharedMem + 0x10600, 0x200
.align 2
gSpriteImageTable_83ED188:: @ 83ED188
- obj_frame_tiles 0x02010800, 0x200
+ obj_frame_tiles gSharedMem + 0x10800, 0x200
.align 2
gSpriteImageTable_83ED190:: @ 83ED190
- obj_frame_tiles 0x02010A00, 0x200
+ obj_frame_tiles gSharedMem + 0x10A00, 0x200
.align 2
gSpriteImageTable_83ED198:: @ 83ED198
- obj_frame_tiles 0x02010C00, 0x300
+ obj_frame_tiles gSharedMem + 0x10C00, 0x300
.align 2
gSpriteImageTable_83ED1A0:: @ 83ED1A0
- obj_frame_tiles 0x02011000, 0x400
+ obj_frame_tiles gSharedMem + 0x11000, 0x400
.align 2
gSpriteImageTable_83ED1A8:: @ 83ED1A8
- obj_frame_tiles 0x02011400, 0x200
+ obj_frame_tiles gSharedMem + 0x11400, 0x200
.align 2
gSpriteImageTable_83ED1B0:: @ 83ED1B0
- obj_frame_tiles 0x02011600, 0x300
+ obj_frame_tiles gSharedMem + 0x11600, 0x300
.align 2
gSpriteImageTable_83ED1B8:: @ 83ED1B8
- obj_frame_tiles 0x02011900, 0x300
+ obj_frame_tiles gSharedMem + 0x11900, 0x300
.align 2
gSpriteImageTable_83ED1C0:: @ 83ED1C0
- obj_frame_tiles 0x02011C00, 0x200
- obj_frame_tiles 0x02011E00, 0x200
- obj_frame_tiles 0x02011E00, 0x200
+ obj_frame_tiles gSharedMem + 0x11C00, 0x200
+ obj_frame_tiles gSharedMem + 0x11E00, 0x200
+ obj_frame_tiles gSharedMem + 0x11E00, 0x200 @ is this a typo?
.align 2
gSpriteImageTable_83ED1D8:: @ 83ED1D8
- obj_frame_tiles 0x02012000, 0x280
+ obj_frame_tiles gSharedMem + 0x12000, 0x280
.align 2
gSpriteImageTable_83ED1E0:: @ 83ED1E0
- obj_frame_tiles 0x02012280, 0x80
- obj_frame_tiles 0x02012300, 0x80
- obj_frame_tiles 0x02012380, 0x80
- obj_frame_tiles 0x02012400, 0x80
- obj_frame_tiles 0x02012480, 0x80
+ obj_frame_tiles gSharedMem + 0x12280, 0x80
+ obj_frame_tiles gSharedMem + 0x12300, 0x80
+ obj_frame_tiles gSharedMem + 0x12380, 0x80
+ obj_frame_tiles gSharedMem + 0x12400, 0x80
+ obj_frame_tiles gSharedMem + 0x12480, 0x80
.align 2
gSpriteImageTable_83ED208:: @ 83ED208
- obj_frame_tiles 0x02012600, 0x480
- obj_frame_tiles 0x02012A80, 0x480
+ obj_frame_tiles gSharedMem + 0x12600, 0x480
+ obj_frame_tiles gSharedMem + 0x12A80, 0x480
.align 2
gSpriteImageTable_83ED218:: @ 83ED218
- obj_frame_tiles 0x02012F00, 0x180
- obj_frame_tiles 0x02013080, 0x180
+ obj_frame_tiles gSharedMem + 0x12F00, 0x180
+ obj_frame_tiles gSharedMem + 0x13080, 0x180
.align 2
gSpriteImageTable_83ED228:: @ 83ED228
@@ -1402,15 +1402,15 @@ gUnknown_083EDC2C:: @ 83EDC2C
obj_tiles gSlotMachineNumber7Tiles, 0x40, 14
obj_tiles gSlotMachineNumber8Tiles, 0x40, 15
obj_tiles gSlotMachineNumber9Tiles, 0x40, 16
- obj_tiles 0x2010a00, 0x200, 18
- obj_tiles 0x2011400, 0x200, 19
- obj_tiles 0x2011600, 0x300, 20
- obj_tiles 0x2011900, 0x300, 21
+ obj_tiles gSharedMem + 0x10A00, 0x200, 18
+ obj_tiles gSharedMem + 0x11400, 0x200, 19
+ obj_tiles gSharedMem + 0x11600, 0x300, 20
+ obj_tiles gSharedMem + 0x11900, 0x300, 21
null_obj_tiles
.align 2
gUnknown_083EDCDC:: @ 83EDCDC
- obj_tiles 0x02010000, 2048, 0x0011
+ obj_tiles gSharedMem + 0x10000, 2048, 0x0011
.align 2
gUnknown_083EDCE4:: @ 83EDCE4
diff --git a/data/text/credits.inc b/data/text/credits.inc
deleted file mode 100644
index 29abccf91..000000000
--- a/data/text/credits.inc
+++ /dev/null
@@ -1,1011 +0,0 @@
-Category_Credits:
- .string "{PALETTE 9}Credits$"
-Category_ExecutiveDirector:
- .string "{PALETTE 9}Executive Director$"
-Category_Director:
- .string "{PALETTE 9}Director$"
-Category_ArtDirector:
- .string "{PALETTE 9}Art Director$"
-Category_BattleDirector:
- .string "{PALETTE 9}Battle Director$"
-Category_MainProgrammer:
- .string "{PALETTE 9}Main Programmer$"
-Category_BattleSystemProgrammer:
- .string "{PALETTE 9}Battle System Programmer$"
-Category_FieldSystemProgrammer:
- .string "{PALETTE 9}Field System Programmer$"
-Category_Programmers:
- .string "{PALETTE 9}Programmers$"
-Category_MainGraphicDesigner:
- .string "{PALETTE 9}Main Graphic Designer$"
-Category_POKeMONGraphicDesigners:
- .string "{PALETTE 9}POKéMON & Graphic Designers$"
-Category_POKeMONDesigners:
- .string "{PALETTE 9}POKéMON Designers$"
-Category_MusicComposition:
- .string "{PALETTE 9}Music Composition$"
-Category_SoundEffectsPOKeMONVoices:
- .string "{PALETTE 9}Sound Effects & POKéMON Voices$"
-Category_GameDesigners:
- .string "{PALETTE 9}Game Designers$"
-Category_PlotScenario:
- .string "{PALETTE 9}Plot Scenario$"
-Category_GameScenario:
- .string "{PALETTE 9}Game Scenario$"
-Category_ScriptDesigners:
- .string "{PALETTE 9}Script Designers$"
-Category_MapDesigners:
- .string "{PALETTE 9}Map Designers$"
-Category_MapDataDesigners:
- .string "{PALETTE 9}Map Data Designers$"
-Category_ParametricDesigners:
- .string "{PALETTE 9}Parametric Designers$"
-Category_POKeDEXText:
- .string "{PALETTE 9}POKéDEX Text$"
-Category_EnvironmentToolProgrammers:
- .string "{PALETTE 9}Environment & Tool Programmers$"
-Category_ProductTesting:
- .string "{PALETTE 9}Product Testing$"
-Category_SpecialThanks:
- .string "{PALETTE 9}Special Thanks$"
-Category_Coordinators:
- .string "{PALETTE 9}Coordinators$"
-Category_Producers:
- .string "{PALETTE 9}Producers$"
-Category_ExecutiveProducers:
- .string "{PALETTE 9}Executive Producers$"
-Category_InformationSupervisors:
- .string "{PALETTE 9}Information Supervisors$"
-Category_TaskManagers:
- .string "{PALETTE 9}Task Managers$"
-Category_BrailleCodeCheck:
- .string "{PALETTE 9}Braille Code Check$"
-Category_EnglishVersionCoordinators:
- .string "{PALETTE 9}English Version Coordinators$"
-Category_Translator:
- .string "{PALETTE 9}Translator$"
-Category_ProductSupport:
- .string "{PALETTE 9}Product Support$"
-Category_Artwork:
- .string "{PALETTE 9}Artwork$"
-Category_TextEditor:
- .string "{PALETTE 9}Text Editor$"
-Category_NOAProductTesting:
- .string "{PALETTE 9}NOA Product Testing$"
-Category_GraphicDesigners:
- .string "{PALETTE 9}Graphic Designers$"
-Text_SatoshiTajiri:
- .string "Satoshi Tajiri$"
-Text_Masuda:
- .string "Junichi Masuda$"
-Text_Sugimori:
- .string "Ken Sugimori$"
-Text_Morimoto:
- .string "Shigeki Morimoto$"
-Text_TetsuyaWatanabe:
- .string "Tetsuya Watanabe$"
-Text_Sogabe:
- .string "Hisashi Sogabe$"
-Text_Tamada:
- .string "Sousuke Tamada$"
-Text_Mori:
- .string "Akito Mori$"
-Text_Kagaya:
- .string "Keita Kagaya$"
-Text_Matsuda:
- .string "Yoshinori Matsuda$"
-Text_HiroyukiNakamura:
- .string "Hiroyuki Nakamura$"
-Text_Taya:
- .string "Masao Taya$"
-Text_Nohara:
- .string "Satoshi Nohara$"
-Text_TomomichiOhta:
- .string "Tomomichi Ohta$"
-Text_Iwasawa:
- .string "Miyuki Iwasawa$"
-Text_TakenoriOhta:
- .string "Takenori Ohta$"
-Text_Yoshida:
- .string "Hironobu Yoshida$"
-Text_Fujiwara:
- .string "Motofumi Fujiwara$"
-Text_SatoshiOhta:
- .string "Satoshi Ohta$"
-Text_Iwashita:
- .string "Asuka Iwashita$"
-Text_Tomita:
- .string "Aimi Tomita$"
-Text_Unno:
- .string "Takao Unno$"
-Text_Eo:
- .string "Kanako Eo$"
-Text_Okutani:
- .string "Jun Okutani$"
-Text_Nishida:
- .string "Atsuko Nishida$"
-Text_Saito:
- .string "Muneo Saito$"
-Text_Yoshikawa:
- .string "Rena Yoshikawa$"
-Text_Ichinose:
- .string "Go Ichinose$"
-Text_Aoki:
- .string "Morikazu Aoki$"
-Text_Nishino:
- .string "Koji Nishino$"
-Text_Matsushima:
- .string "Kenji Matsushima$"
-Text_TetsujiOhta:
- .string "Tetsuji Ohta$"
-Text_Sato:
- .string "Hitomi Sato$"
-Text_Kawachimaru:
- .string "Takeshi Kawachimaru$"
-Text_Shimoyamada:
- .string "Teruyuki Shimoyamada$"
-Text_Ohmori:
- .string "Shigeru Ohmori$"
-Text_Takahashi:
- .string "Tadashi Takahashi$"
-Text_ToshinobuMatsumiya:
- .string "Toshinobu Matsumiya$"
-Text_Tomisawa:
- .string "Akihito Tomisawa$"
-Text_Enomoto:
- .string "Hiroki Enomoto$"
-Text_Terada:
- .string "Kazuyuki Terada$"
-Text_Sakurai:
- .string "Yuri Sakurai$"
-Text_Sagawa:
- .string "Hiromi Sagawa$"
-Text_Tominaga:
- .string "Kenji Tominaga$"
-Text_YoshioTajiri:
- .string "Yoshio Tajiri$"
-Text_Sasaki:
- .string "Teiko Sasaki$"
-Text_Hamano:
- .string "Sachiko Hamano$"
-Text_ChieMatsumiya:
- .string "Chie Matsumiya$"
-Text_Shinozaki:
- .string "Akiko Shinozaki$"
-Text_Fujii:
- .string "Atsuko Fujii$"
-Text_SuperMarioClub:
- .string "NCL Super Mario Club$"
-Text_Tada:
- .string "Atsushi Tada$"
-Text_Ohnishi:
- .string "Takahiro Ohnishi$"
-Text_Okamura:
- .string "Norihide Okamura$"
-Text_HiroNakamura:
- .string "Hiro Nakamura$"
-Text_Uesugi:
- .string "Hiroyuki Uesugi$"
-Text_Murakawa:
- .string "Teruki Murakawa$"
-Text_Kinashi:
- .string "Akira Kinashi$"
-Text_Takizawa:
- .string "Michiko Takizawa$"
-Text_Takada:
- .string "Makiko Takada$"
-Text_Kondo:
- .string "Takanao Kondo$"
-Text_Mashima:
- .string "Ai Mashima$"
-Text_Nomoto:
- .string "Gakuji Nomoto$"
-Text_Izushi:
- .string "Takehiro Izushi$"
-Text_Yamagami:
- .string "Hitoshi Yamagami$"
-Text_KyokoWatanabe:
- .string "Kyoko Watanabe$"
-Text_Nakano:
- .string "Takao Nakano$"
-Text_Jinnai:
- .string "Hiroyuki Jinnai$"
-Text_Tsuru:
- .string "Hiroaki Tsuru$"
-Text_Ishihara:
- .string "Tsunekaz Ishihara$"
-Text_Iwata:
- .string "Satoru Iwata$"
-Text_Suyama:
- .string "Kazuya Suyama$"
-Text_Mitsuhara:
- .string "Satoshi Mitsuhara$"
-Text_JapanBrailleLibrary:
- .string "Japan Braille Library$"
-Text_Komura:
- .string "Tomotaka Komura$"
-Text_Ohashi:
- .string "Mikiko Ohashi$"
-Text_McMahill:
- .string "Seth McMahill$"
-Text_Ogasawara:
- .string "Nob Ogasawara$"
-Text_Yamamoto:
- .string "Souichi Yamamoto$"
-Text_Funakoshi:
- .string "Masanori Funakoshi$"
-Text_Fujihara:
- .string "Kazuhiro Fujihara$"
-Text_Nakamichi:
- .string "Kimiko Nakamichi$"
-Text_Hara:
- .string "Daisuke Hara$"
-Text_Okada:
- .string "Atsushi Okada$"
-Text_Lillygren:
- .string "Teresa Lillygren$"
-Text_Hertzog:
- .string "Thomas Hertzog$"
-Text_Ridgeway:
- .string "Ed Ridgeway$"
-Text_NFotB:
- .string "National Federation of the Blind$"
-Text_Maurer:
- .string "Patricia A. Maurer$"
-Text_Ford:
- .string "Sayoko Blodgett-Ford$"
-Text_Barlow:
- .string "Nicola Pratt-Barlow$"
-Text_Uyama:
- .string "Koji Uyama$"
-Text_Howitt:
- .string "Anthony Howitt$"
-Text_Tilden:
- .string "Gail Tilden$"
-Text_EBU:
- .string "European Blind Union$"
-Text_ABA:
- .string "Australian Braille Authority$"
-Text_RNZFotB:
- .string "Royal New Zealand Federation for the Blind$"
-Text_CreditsTerminator:
- .string "$"
-Text_Version:
- .ifdef SAPPHIRE
- .string "{PALETTE 9}POKéMON SAPPHIRE VERSION$"
- .else
- .string "{PALETTE 9}POKéMON RUBY VERSION$"
- .endif
-
-@ pointer table
-
-CreditsTerminator::
- credits_entry 0, Text_CreditsTerminator
-
-CreditsVersion::
- .ifdef SAPPHIRE
- credits_entry 7, Text_Version
- .else
- credits_entry 8, Text_Version
- .endif
-
-CreditsCredits::
- credits_entry 11, Category_Credits
-
-CreditsExecutiveDirector::
- credits_entry 8, Category_ExecutiveDirector
-
-CreditsDirector::
- credits_entry 12, Category_Director
-
-CreditsArtDirector::
- credits_entry 10, Category_ArtDirector
-
-CreditsBattleDirector::
- credits_entry 10, Category_BattleDirector
-
-CreditsMainProgrammer::
- credits_entry 10, Category_MainProgrammer
-
-CreditsBattleSystemProgrammer::
- credits_entry 8, Category_BattleSystemProgrammer
-
-CreditsFieldSystemProgrammer::
- credits_entry 7, Category_FieldSystemProgrammer
-
-CreditsProgrammers::
- credits_entry 12, Category_Programmers
-
-CreditsMainGraphicDesigner::
- credits_entry 7, Category_MainGraphicDesigner
-
-CreditsPOKeMONGraphicDesigners::
- credits_entry 6, Category_POKeMONGraphicDesigners
-
-CreditsPOKeMONDesigners::
- credits_entry 10, Category_POKeMONDesigners
-
-CreditsMusicComposition::
- credits_entry 13, Category_MusicComposition
-
-CreditsSoundEffectsPOKeMONVoices::
- credits_entry 4, Category_SoundEffectsPOKeMONVoices
-
-CreditsGameDesigners::
- credits_entry 11, Category_GameDesigners
-
-CreditsPlotScenario::
- credits_entry 11, Category_PlotScenario
-
-CreditsGameScenario::
- credits_entry 13, Category_GameScenario
-
-CreditsScriptDesigners::
- credits_entry 10, Category_ScriptDesigners
-
-CreditsMapDesigners::
- credits_entry 11, Category_MapDesigners
-
-CreditsMapDataDesigners::
- credits_entry 9, Category_MapDataDesigners
-
-CreditsParametricDesigners::
- credits_entry 9, Category_ParametricDesigners
-
-CreditsPOKeDEXText::
- credits_entry 11, Category_POKeDEXText
-
-CreditsEnvironmentToolProgrammers::
- credits_entry 6, Category_EnvironmentToolProgrammers
-
-CreditsProductTesting::
- credits_entry 11, Category_ProductTesting
-
-CreditsSpecialThanks::
- credits_entry 10, Category_SpecialThanks
-
-CreditsCoordinators::
- credits_entry 11, Category_Coordinators
-
-CreditsProducers::
- credits_entry 11, Category_Producers
-
-CreditsExecutiveProducers::
- credits_entry 7, Category_ExecutiveProducers
-
-CreditsInformationSupervisors::
- credits_entry 10, Category_InformationSupervisors
-
-CreditsTaskManagers::
- credits_entry 8, Category_TaskManagers
-
-CreditsBrailleCodeCheck::
- credits_entry 10, Category_BrailleCodeCheck
-
-CreditsSatoshiTajiri::
- credits_entry 11, Text_SatoshiTajiri
-
-CreditsMasuda::
- credits_entry 11, Text_Masuda
-
-CreditsSugimori::
- credits_entry 11, Text_Sugimori
-
-CreditsMorimoto::
- credits_entry 11, Text_Morimoto
-
-CreditsTetsuyaWatanabe::
- credits_entry 11, Text_TetsuyaWatanabe
-
-CreditsSogabe::
- credits_entry 11, Text_Sogabe
-
-CreditsTamada::
- credits_entry 11, Text_Tamada
-
-CreditsMori::
- credits_entry 11, Text_Mori
-
-CreditsKagaya::
- credits_entry 11, Text_Kagaya
-
-CreditsMatsuda::
- credits_entry 11, Text_Matsuda
-
-CreditsHiroyukiNakamura::
- credits_entry 11, Text_HiroyukiNakamura
-
-CreditsTaya::
- credits_entry 11, Text_Taya
-
-CreditsNohara::
- credits_entry 11, Text_Nohara
-
-CreditsTomomichiOhta::
- credits_entry 11, Text_TomomichiOhta
-
-CreditsIwasawa::
- credits_entry 11, Text_Iwasawa
-
-CreditsTakenoriOhta::
- credits_entry 11, Text_TakenoriOhta
-
-CreditsYoshida::
- credits_entry 11, Text_Yoshida
-
-CreditsFujiwara::
- credits_entry 11, Text_Fujiwara
-
-CreditsSatoshiOhta::
- credits_entry 11, Text_SatoshiOhta
-
-CreditsIwashita::
- credits_entry 11, Text_Iwashita
-
-CreditsTomita::
- credits_entry 11, Text_Tomita
-
-CreditsUnno::
- credits_entry 11, Text_Unno
-
-CreditsEo::
- credits_entry 11, Text_Eo
-
-CreditsOkutani::
- credits_entry 11, Text_Okutani
-
-CreditsNishida::
- credits_entry 11, Text_Nishida
-
-CreditsSaito::
- credits_entry 11, Text_Saito
-
-CreditsYoshikawa::
- credits_entry 11, Text_Yoshikawa
-
-CreditsIchinose::
- credits_entry 11, Text_Ichinose
-
-CreditsAoki::
- credits_entry 11, Text_Aoki
-
-CreditsNishino::
- credits_entry 11, Text_Nishino
-
-CreditsMatsushima::
- credits_entry 11, Text_Matsushima
-
-CreditsTetsujiOhta::
- credits_entry 11, Text_TetsujiOhta
-
-CreditsSato::
- credits_entry 11, Text_Sato
-
-CreditsKawachimaru::
- credits_entry 11, Text_Kawachimaru
-
-CreditsShimoyamada::
- credits_entry 11, Text_Shimoyamada
-
-CreditsOhmori::
- credits_entry 11, Text_Ohmori
-
-CreditsTakahashi::
- credits_entry 11, Text_Takahashi
-
-CreditsToshinobuMatsumiya::
- credits_entry 11, Text_ToshinobuMatsumiya
-
-CreditsTomisawa::
- credits_entry 11, Text_Tomisawa
-
-CreditsEnomoto::
- credits_entry 11, Text_Enomoto
-
-CreditsTerada::
- credits_entry 11, Text_Terada
-
-CreditsSakurai::
- credits_entry 11, Text_Sakurai
-
-CreditsSagawa::
- credits_entry 11, Text_Sagawa
-
-CreditsTominaga::
- credits_entry 11, Text_Tominaga
-
-CreditsYoshiroTajiri::
- credits_entry 11, Text_YoshioTajiri
-
-CreditsSasaki::
- credits_entry 11, Text_Sasaki
-
-CreditsHamano::
- credits_entry 11, Text_Hamano
-
-CreditsChieMatsumiya::
- credits_entry 11, Text_ChieMatsumiya
-
-CreditsShinozaki::
- credits_entry 11, Text_Shinozaki
-
-CreditsFujii::
- credits_entry 11, Text_Fujii
-
-CreditsSuperMarioClub::
- credits_entry 11, Text_SuperMarioClub
-
-CreditsTada::
- credits_entry 11, Text_Tada
-
-CreditsOhnishi::
- credits_entry 11, Text_Ohnishi
-
-CreditsOkamura::
- credits_entry 11, Text_Okamura
-
-CreditsHiroNakamura::
- credits_entry 11, Text_HiroNakamura
-
-CreditsUesugi::
- credits_entry 11, Text_Uesugi
-
-CreditsMurakawa::
- credits_entry 11, Text_Murakawa
-
-CreditsKinashi::
- credits_entry 11, Text_Kinashi
-
-CreditsTakizawa::
- credits_entry 11, Text_Takizawa
-
-CreditsTakada::
- credits_entry 11, Text_Takada
-
-CreditsKondo::
- credits_entry 11, Text_Kondo
-
-CreditsMashima::
- credits_entry 11, Text_Mashima
-
-CreditsNomoto::
- credits_entry 11, Text_Nomoto
-
-CreditsIzushi::
- credits_entry 11, Text_Izushi
-
-CreditsYamagami::
- credits_entry 11, Text_Yamagami
-
-CreditsKyokoWatanabe::
- credits_entry 11, Text_KyokoWatanabe
-
-CreditsNakano::
- credits_entry 11, Text_Nakano
-
-CreditsJinnai::
- credits_entry 11, Text_Jinnai
-
-CreditsTsuru::
- credits_entry 11, Text_Tsuru
-
-CreditsIshihara::
- credits_entry 11, Text_Ishihara
-
-CreditsIwata::
- credits_entry 11, Text_Iwata
-
-CreditsSuyama::
- credits_entry 11, Text_Suyama
-
-CreditsMitsuhara::
- credits_entry 11, Text_Mitsuhara
-
-CreditsJapanBrailleLibrary::
- credits_entry 9, Text_JapanBrailleLibrary
-
-CreditsKomura::
- credits_entry 11, Text_Komura
-
-CreditsOhashi::
- credits_entry 11, Text_Ohashi
-
-CreditsEnglishVersionCoordinators::
- credits_entry 0, Category_EnglishVersionCoordinators
-
-CreditsTranslator::
- credits_entry 0, Category_Translator
-
-CreditsProductSupport::
- credits_entry 0, Category_ProductSupport
-
-CreditsArtwork::
- credits_entry 0, Category_Artwork
-
-CreditsTextEditor::
- credits_entry 0, Category_TextEditor
-
-CreditsNOAProductTesting::
- credits_entry 0, Category_NOAProductTesting
-
-CreditsGraphicDesigners::
- credits_entry 0, Category_GraphicDesigners
-
-CreditsMcMahill::
- credits_entry 0, Text_McMahill
-
-CreditsOgasawara::
- credits_entry 0, Text_Ogasawara
-
-CreditsYamamoto::
- credits_entry 0, Text_Yamamoto
-
-CreditsFunakoshi::
- credits_entry 0, Text_Funakoshi
-
-CreditsFujihara::
- credits_entry 0, Text_Fujihara
-
-CreditsNakamichi::
- credits_entry 0, Text_Nakamichi
-
-CreditsHara::
- credits_entry 0, Text_Hara
-
-CreditsOkada::
- credits_entry 0, Text_Okada
-
-CreditsLillygren::
- credits_entry 0, Text_Lillygren
-
-CreditsHertzog::
- credits_entry 0, Text_Hertzog
-
-CreditsRidgeway::
- credits_entry 0, Text_Ridgeway
-
-CreditsNFotB::
- credits_entry 0, Text_NFotB
-
-CreditsMaurer::
- credits_entry 0, Text_Maurer
-
-CreditsFord::
- credits_entry 0, Text_Ford
-
-CreditsBarlow::
- credits_entry 0, Text_Barlow
-
-CreditsUyama::
- credits_entry 0, Text_Uyama
-
-CreditsHowitt::
- credits_entry 0, Text_Howitt
-
-CreditsTilden::
- credits_entry 0, Text_Tilden
-
-CreditsEBU::
- credits_entry 0, Text_EBU
-
-CreditsABA::
- credits_entry 0, Text_ABA
-
-CreditsRNZFotB::
- credits_entry 0, Text_RNZFotB
-
-@ pointer table to credits entries
-
- .align 2
-gCreditsEntryPointerTable:: @ 840C5F0
- .4byte CreditsTerminator
- .4byte CreditsVersion
- .4byte CreditsCredits
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsTerminator
- .4byte CreditsDirector
- .4byte CreditsMasuda
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsTerminator
- .4byte CreditsArtDirector
- .4byte CreditsSugimori
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsTerminator
- .4byte CreditsBattleDirector
- .4byte CreditsMorimoto
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsTerminator
- .4byte CreditsMainProgrammer
- .4byte CreditsTetsuyaWatanabe
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsBattleSystemProgrammer
- .4byte CreditsSogabe
- .4byte CreditsFieldSystemProgrammer
- .4byte CreditsTamada
- .4byte CreditsTerminator
-
- .4byte CreditsProgrammers
- .4byte CreditsMori
- .4byte CreditsKagaya
- .4byte CreditsMatsuda
- .4byte CreditsTerminator
-
- .4byte CreditsProgrammers
- .4byte CreditsHiroyukiNakamura
- .4byte CreditsTaya
- .4byte CreditsNohara
- .4byte CreditsTerminator
-
- .4byte CreditsProgrammers
- .4byte CreditsTomomichiOhta
- .4byte CreditsIwasawa
- .4byte CreditsTakenoriOhta
- .4byte CreditsTerminator
-
- .4byte CreditsTerminator
- .4byte CreditsMainGraphicDesigner
- .4byte CreditsYoshida
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsPOKeMONGraphicDesigners
- .4byte CreditsSugimori
- .4byte CreditsYoshida
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsPOKeMONGraphicDesigners
- .4byte CreditsFujiwara
- .4byte CreditsSatoshiOhta
- .4byte CreditsIwashita
- .4byte CreditsTerminator
-
- .4byte CreditsPOKeMONGraphicDesigners
- .4byte CreditsTomita
- .4byte CreditsUnno
- .4byte CreditsEo
- .4byte CreditsTerminator
-
- .4byte CreditsPOKeMONDesigners
- .4byte CreditsMorimoto
- .4byte CreditsOkutani
- .4byte CreditsNishida
- .4byte CreditsTerminator
-
- .4byte CreditsPOKeMONDesigners
- .4byte CreditsSaito
- .4byte CreditsYoshikawa
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsMusicComposition
- .4byte CreditsIchinose
- .4byte CreditsAoki
- .4byte CreditsMasuda
- .4byte CreditsTerminator
-
- .4byte CreditsTerminator
- .4byte CreditsSoundEffectsPOKeMONVoices
- .4byte CreditsAoki
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsGameDesigners
- .4byte CreditsMasuda
- .4byte CreditsMorimoto
- .4byte CreditsNishino
- .4byte CreditsTerminator
-
- .4byte CreditsGameDesigners
- .4byte CreditsMatsushima
- .4byte CreditsTetsujiOhta
- .4byte CreditsSato
- .4byte CreditsKawachimaru
-
- .4byte CreditsGameDesigners
- .4byte CreditsShimoyamada
- .4byte CreditsOhmori
- .4byte CreditsTakahashi
- .4byte CreditsTerminator
-
- .4byte CreditsPlotScenario
- .4byte CreditsMasuda
- .4byte CreditsTomisawa
- .4byte CreditsNishino
- .4byte CreditsTerminator
-
- .4byte CreditsGameScenario
- .4byte CreditsToshinobuMatsumiya
- .4byte CreditsTomisawa
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsScriptDesigners
- .4byte CreditsNohara
- .4byte CreditsTetsujiOhta
- .4byte CreditsTomomichiOhta
- .4byte CreditsTerminator
-
- .4byte CreditsMapDesigners
- .4byte CreditsOhmori
- .4byte CreditsTetsujiOhta
- .4byte CreditsNishino
- .4byte CreditsTerminator
-
- .4byte CreditsMapDataDesigners
- .4byte CreditsTetsujiOhta
- .4byte CreditsTakahashi
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsParametricDesigners
- .4byte CreditsNishino
- .4byte CreditsMorimoto
- .4byte CreditsTetsujiOhta
- .4byte CreditsShimoyamada
-
- .4byte CreditsTerminator
- .4byte CreditsPOKeDEXText
- .4byte CreditsMatsushima
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsEnvironmentToolProgrammers
- .4byte CreditsSogabe
- .4byte CreditsTamada
- .4byte CreditsHiroyukiNakamura
- .4byte CreditsMori
-
- .4byte CreditsProductTesting
- .4byte CreditsSuperMarioClub
- .4byte CreditsTada
- .4byte CreditsOhnishi
- .4byte CreditsOkamura
-
- .4byte CreditsSpecialThanks
- .4byte CreditsTominaga
- .4byte CreditsYoshiroTajiri
- .4byte CreditsSasaki
- .4byte CreditsTerminator
-
- .4byte CreditsSpecialThanks
- .4byte CreditsHamano
- .4byte CreditsChieMatsumiya
- .4byte CreditsShinozaki
- .4byte CreditsFujii
-
- .4byte CreditsSpecialThanks
- .4byte CreditsSuyama
- .4byte CreditsMitsuhara
- .4byte CreditsKomura
- .4byte CreditsOhashi
-
- .4byte CreditsSpecialThanks
- .4byte CreditsTakizawa
- .4byte CreditsTakada
- .4byte CreditsKondo
- .4byte CreditsMashima
-
- .4byte CreditsInformationSupervisors
- .4byte CreditsEnomoto
- .4byte CreditsTerada
- .4byte CreditsSakurai
- .4byte CreditsSagawa
-
- .4byte CreditsCoordinators
- .4byte CreditsKyokoWatanabe
- .4byte CreditsNakano
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsTaskManagers
- .4byte CreditsYamagami
- .4byte CreditsNomoto
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsProducers
- .4byte CreditsJinnai
- .4byte CreditsIzushi
- .4byte CreditsTsuru
- .4byte CreditsTerminator
-
- .4byte CreditsTerminator
- .4byte CreditsExecutiveDirector
- .4byte CreditsSatoshiTajiri
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsTerminator
- .4byte CreditsExecutiveProducers
- .4byte CreditsIwata
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsTerminator
- .4byte CreditsExecutiveProducers
- .4byte CreditsIshihara
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsEnglishVersionCoordinators
- .4byte CreditsHiroNakamura
- .4byte CreditsMcMahill
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsTerminator
- .4byte CreditsTranslator
- .4byte CreditsOgasawara
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsProgrammers
- .4byte CreditsMurakawa
- .4byte CreditsYamamoto
- .4byte CreditsFunakoshi
- .4byte CreditsKinashi
-
- .4byte CreditsGraphicDesigners
- .4byte CreditsYamamoto
- .4byte CreditsKinashi
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsProductSupport
- .4byte CreditsNakamichi
- .4byte CreditsHara
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsTerminator
- .4byte CreditsArtwork
- .4byte CreditsOkada
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsTerminator
- .4byte CreditsTextEditor
- .4byte CreditsLillygren
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsNOAProductTesting
- .4byte CreditsHertzog
- .4byte CreditsRidgeway
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsBrailleCodeCheck
- .4byte CreditsNFotB
- .4byte CreditsMaurer
- .4byte CreditsJapanBrailleLibrary
- .4byte CreditsEBU
-
- .4byte CreditsBrailleCodeCheck
- .4byte CreditsABA
- .4byte CreditsRNZFotB
- .4byte CreditsTerminator
- .4byte CreditsTerminator
-
- .4byte CreditsSpecialThanks
- .4byte CreditsFord
- .4byte CreditsBarlow
- .4byte CreditsUesugi
- .4byte CreditsUyama
-
- .4byte CreditsSpecialThanks
- .4byte CreditsHowitt
- .4byte CreditsTilden
- .4byte CreditsFujihara
- .4byte CreditsTerminator
diff --git a/include/battle.h b/include/battle.h
index f973849b7..d576e92f4 100644
--- a/include/battle.h
+++ b/include/battle.h
@@ -189,9 +189,6 @@ enum
BATTLE_TERRAIN_PLAIN,
};
-// needed to match the hack that is get_item, thanks cam, someone else clean this up later.
-extern u8 unk_2000000[];
-
struct Trainer
{
/*0x00*/ u8 partyFlags;
@@ -237,7 +234,11 @@ struct AI_ThinkingStruct /* 0x2016800 */
struct BattleStruct /* 0x2000000 */
{
- u8 filler0[0x15DDE];
+ /*0x00000*/ u8 unk0;
+ /*0x00001*/ bool8 unk1;
+ /*0x00002*/ u8 unk2;
+ /*0x00003*/ bool8 unk3;
+ u8 filler4[0x15DDA];
/*0x15DDE*/ u8 unk15DDE;
/*0x15DDF*/ u8 unk15DDF;
/*0x15DE0*/ u8 filler15DE0[0x220];
@@ -533,6 +534,21 @@ struct BattleResults
u8 unk36[10]; // usedBalls?
};
+struct Struct2017100
+{
+ u32 arr[4];
+};
+
+struct Struct2019348
+{
+ u16 unk0;
+ u16 unk2;
+ u8 unk4;
+ u32 unk8;
+ u32 unkC;
+ u32 unk10;
+};
+
struct Struct2017800
{
u8 invisible:1;
@@ -545,25 +561,25 @@ struct Struct2017800
struct Struct2017810
{
- u8 unk0_0:1;
- u8 unk0_1:1;
- u8 unk0_2:1;
- u8 unk0_3:1;
- u8 unk0_4:1;
- u8 unk0_5:1;
- u8 unk0_6:1;
- u8 unk0_7:1;
- u8 unk1_0:1;
- u8 unk1_1:5;
- u8 unk2;
- u8 unk3;
- u8 unk4;
- u8 unk5;
- u8 unk6;
- u8 unk7;
- u8 unk8;
- u8 unk9;
- u8 fillerA[2];
+ /*0x00*/ u8 unk0_0:1;
+ /*0x00*/ u8 unk0_1:1;
+ /*0x00*/ u8 unk0_2:1;
+ /*0x00*/ u8 unk0_3:1;
+ /*0x00*/ u8 unk0_4:1;
+ /*0x00*/ u8 unk0_5:1;
+ /*0x00*/ u8 unk0_6:1;
+ /*0x00*/ u8 unk0_7:1;
+ /*0x01*/ u8 unk1_0:1;
+ /*0x01*/ u8 unk1_1:5;
+ /*0x02*/ u8 unk2;
+ /*0x03*/ u8 unk3;
+ /*0x04*/ u8 unk4;
+ /*0x05*/ u8 unk5;
+ /*0x06*/ u8 unk6;
+ /*0x07*/ u8 unk7;
+ /*0x08*/ u8 unk8;
+ /*0x09*/ u8 unk9;
+ /*0x0A*/ u8 fillerA[2];
};
struct Struct2017840
@@ -671,20 +687,31 @@ extern struct WishFutureKnock gWishFutureKnock;
extern struct AI_ThinkingStruct gAIThinkingSpace;
extern struct Struct20238C8 gUnknown_020238C8;
-// TODO: move ewram to global.h
-extern u8 ewram[];
-
-#define BATTLE_STRUCT ((struct BattleStruct *) (ewram + 0x00000))
-#define AI_THINKING_STRUCT ((struct AI_ThinkingStruct *)(ewram + 0x16800))
-#define UNK_2016A00_STRUCT ((struct UnkBattleStruct1 *) (ewram + 0x16A00))
-#define AI_STACK ((struct AI_Stack *) (ewram + 0x16C00))
-#define AI_ARRAY_160CC ((struct SmallItemStruct *) (ewram + 0x160CC))
-#define B_BATTLESCRIPTS_STACK ((struct scriptsStack *) (ewram + 0x17110))
-#define B_FUNCTION_STACK ((struct funcStack *) (ewram + 0x17140))
-#define ewram17800 ((struct Struct2017800 *) (ewram + 0x17800))
-#define ewram17810 ((struct Struct2017810 *) (ewram + 0x17810))
-#define ewram17840 (*(struct Struct2017840 *) (ewram + 0x17840))
-#define ewram17000 ((u32 *) (ewram + 0x17100))
+// used in many battle files, it seems as though Hisashi Sogabe wrote
+// some sort of macro to replace the use of actually calling memset.
+// Perhaps it was thought calling memset was much slower?
+
+// The compiler wont allow us to locally declare ptr in this macro; some
+// functions that invoke this macro will not match without this egregeous
+// assumption about the variable names, so in order to avoid this assumption,
+// we opt to pass the variables themselves, even though it is likely that
+// Sogabe assumed the variables were named src and dest. Trust me: I tried to
+// avoid assuming variable names, but the ROM just will not match without the
+// assumptions. Therefore, these macros are bad practice, but I'm putting them
+// here anyway.
+#define MEMSET_ALT(data, c, size, var, dest) \
+{ \
+ dest = (u8 *)data; \
+ for(var = 0; var < (u32)size; var++) \
+ dest[var] = c; \
+} \
+
+#define MEMCPY_ALT(data, dest, size, var, src) \
+{ \
+ src = (u8 *)data; \
+ for(var = 0; var < (u32)size; var++) \
+ dest[var] = src[var]; \
+} \
typedef void (*BattleCmdFunc)(void);
@@ -725,7 +752,6 @@ void EmitEffectivenessSound(u8 a, u16 sound); //0x2B
void Emitcmd44(u8 a, u16 sound); //0x2C
void EmitFaintingCry(u8 a); //0x2D
void EmitIntroSlide(u8 a, u8 b); //0x2E
-void Emitcmd48(u8 a, u8 *b, u8 c); //0x30
void Emitcmd49(u8 a); //0x31
void EmitSpriteInvisibility(u8 a, u8 b); //0x33
void EmitBattleAnimation(u8 a, u8 b, u16 c); //0x34
diff --git a/include/battle_ai.h b/include/battle_ai.h
index 2922da0b3..60ca5d000 100644
--- a/include/battle_ai.h
+++ b/include/battle_ai.h
@@ -1,11 +1,6 @@
#ifndef GUARD_BATTLEAI_H
#define GUARD_BATTLEAI_H
-#define AIScriptRead32(ptr) ((ptr)[0] | (ptr)[1] << 8 | (ptr)[2] << 16 | (ptr)[3] << 24)
-#define AIScriptRead16(ptr) ((ptr)[0] | (ptr)[1] << 8)
-#define AIScriptRead8(ptr) ((ptr)[0])
-#define AIScriptReadPtr(ptr) (u8*) AIScriptRead32(ptr)
-
enum
{
TARGET,
diff --git a/include/battle_anim.h b/include/battle_anim.h
index 2386c515c..d807a582a 100644
--- a/include/battle_anim.h
+++ b/include/battle_anim.h
@@ -3,20 +3,10 @@
#include "sprite.h"
-#define SCRIPT_READ_8(ptr) ((ptr)[0])
-#define SCRIPT_READ_16(ptr) ((ptr)[0] | ((ptr)[1] << 8))
-#define SCRIPT_READ_32(ptr) ((ptr)[0] + ((ptr)[1] << 8) + ((ptr)[2] << 16) + ((ptr)[3] << 24))
-
#define REG_BGnCNT_BITFIELD(n) (*(struct BGCntrlBitfield *)REG_ADDR_BG##n##CNT)
#define REG_BG1CNT_BITFIELD REG_BGnCNT_BITFIELD(1)
#define REG_BG2CNT_BITFIELD REG_BGnCNT_BITFIELD(2)
-#define EWRAM_14800 ((u16 *)(unk_2000000 + 0x14800))
-#define EWRAM_17800 ((struct UnknownStruct1 *)(unk_2000000 + 0x17800))
-#define EWRAM_17810 ((struct UnknownStruct3 *)(unk_2000000 + 0x17810))
-#define EWRAM_18000 ((u16 *)(unk_2000000 + 0x18000))
-#define EWRAM_19348 (*(u16 *)(unk_2000000 + 0x19348))
-
struct BGCntrlBitfield
{
volatile u16 priority:2;
@@ -55,13 +45,12 @@ struct UnknownStruct3
void DoMoveAnim(const u8 *const moveAnims[], u16 b, u8 c);
bool8 IsAnimBankSpriteVisible(u8 a);
void sub_8076034(u8, u8);
-bool8 IsContest(void);
+bool8 NotInBattle(void);
void battle_anim_clear_some_data(void);
void move_anim_8072740(struct Sprite *sprite);
void DestroyAnimVisualTask(u8 task);
void DestroyAnimVisualTask(u8 task);
bool8 IsAnimBankSpriteVisible(u8);
-u8 IsContest();
#endif
diff --git a/include/battle_party_menu.h b/include/battle_party_menu.h
index 200b0c653..d7ad53eed 100644
--- a/include/battle_party_menu.h
+++ b/include/battle_party_menu.h
@@ -1,9 +1,6 @@
#ifndef GUARD_BATTLE_PARTY_MENU_H
#define GUARD_BATTLE_PARTY_MENU_H
-extern u8 unk_2000000[];
-#define EWRAM_1609D unk_2000000[0x1609D]
-
void HandleBattlePartyMenu(u8);
bool8 SetUpBattlePartyMenu(void);
diff --git a/include/decoration.h b/include/decoration.h
index 70abc29bf..8c651f967 100644
--- a/include/decoration.h
+++ b/include/decoration.h
@@ -204,9 +204,6 @@ struct UnkStruct_803EC860
extern const struct UnkStruct_803EC860 gUnknown_083EC860[];
-extern u8 ewram[];
-#define ewram_1f000 (*(struct DecoPCPointers *)(ewram + 0x1f000))
-
struct UnkStruct_02038900
{
/*0x000; 0x02038900*/ const struct Decoration *decoration;
diff --git a/include/dewford_trend.h b/include/dewford_trend.h
index 26075d633..c12d0d740 100644
--- a/include/dewford_trend.h
+++ b/include/dewford_trend.h
@@ -1,9 +1,6 @@
#ifndef GUARD_DEWFORDTREND_H
#define GUARD_DEWFORDTREND_H
-#define ARRAY_2007800 ((struct EasyChatPair *)(unk_2000000 + 0x7800))
-#define ARRAY_2007900 ((struct EasyChatPair *)(unk_2000000 + 0x7900))
-
void InitDewfordTrend(void);
void sub_80FA4E4(void *, u32, u8);
void UpdateDewfordTrendPerDay(u16);
diff --git a/include/ewram.h b/include/ewram.h
new file mode 100755
index 000000000..06ea513a3
--- /dev/null
+++ b/include/ewram.h
@@ -0,0 +1,258 @@
+#ifndef GUARD_EWRAM_H
+#define GUARD_EWRAM_H
+
+extern u8 gSharedMem[];
+#define ewram_addr 0x02000000 // used in gSharedMem addr hacks
+
+// Note: we have duplicate ewram labels because its clear some memory
+// regions overlap others but have different definitions. Until some
+// dupes can be determined to be the same, they will be deliberate
+// seperated.
+#define eWeatherPaletteData (*(struct WeatherPaletteData *)gSharedMem)
+#define BATTLE_STRUCT ((struct BattleStruct *) (gSharedMem + 0x0))
+#define ewram0_2 (*(struct Struct2000000 *)(gSharedMem + 0x0))
+#define namingScreenData (*(struct NamingScreenData *)(gSharedMem + 0x0))
+#define ewramBerryPic (gSharedMem + 0x0)
+#define ewram0_3 (*(struct UnknownStruct3 *)(gSharedMem + 0x0))
+#define ewram0_4 (*(struct Unk2000000 *)(gSharedMem + 0x0))
+#define ewram0_5 (*(struct UnkStruct *)(gSharedMem + 0x0))
+#define eMatsudaDebugVar (gSharedMem[0x0])
+#define eBrendanSprite (gSharedMem + 0x0)
+#define ewram0_6 (u32)(&gSharedMem[0])
+#define ewram0_7 (&gSharedMem[0])
+#define eSaveSection (struct SaveSection *)(gSharedMem + 0x0)
+#define ewram0arr ((u8 (*)[32])gSharedMem)
+#define eVoidSharedArr (void *)(ewram_addr + 0x0)
+#define eVoidSharedArr2 (u32)(ewram_addr) // ew(ram)
+#define ewram0_8 ((struct UnkStruct2000000 *)(gSharedMem + 0x0))
+#define ewram0_9(i) (u8 *)(ewram_addr + (i * 0x20))
+#define ewram0_10 (*(struct UnknownPokenav0*)(gSharedMem + 0))
+#define ewram0_11 (*(struct UnknownPokenav0_1*)(gSharedMem + 0))
+#define ewram4 (*(struct UnknownStruct8 *)(gSharedMem + 0x4))
+#define ewram520 ((struct UnknownStruct7 *)(gSharedMem + 0x00520))
+#define ewram520_2 (u8 *)(ewram_addr + 0x520)
+#define eMaySprite (gSharedMem + 0x800)
+#define ewram888 (gSharedMem + 0x888)
+#define ewramBlankMapName (gSharedMem + 0xA48)
+#define ewramA6E (gSharedMem[0xA6E])
+#define ewram01000 (*(struct Unk2001000 *)(gSharedMem + 0x1000))
+#define ewramBerryPicTemp (gSharedMem + 0x1000)
+#define EWRAM_1000 (*(struct Struct2001000 *)(gSharedMem + 0x1000))
+#define gUnk20011fa (u8 *)(&gSharedMem[0x11FA])
+#define gUnk2002694 (u8 *)(&gSharedMem[0x2694])
+#define gUnk20026A6 (u8 *)(&gSharedMem[0x26A6])
+#define gUnk20026e4 (u8 *)(&gSharedMem[0x26E4])
+#define ewram4000 (gSharedMem + 0x4000)
+#define gUnknown_02007000 (*(ewramStruct_02007000 *)(gSharedMem + 0x7000))
+#define ARRAY_2007800 ((struct EasyChatPair *)(gSharedMem + 0x7800))
+#define ARRAY_2007900 ((struct EasyChatPair *)(gSharedMem + 0x7900))
+#define ewram_2008000 (*(struct PlayerRecords *)(gSharedMem + 0x08000))
+#define ewram8000 (&gSharedMem[0x8000])
+#define ePokedexPalAddr1 (void *)(gSharedMem + 0x8000)
+#define ewram8800 (&gSharedMem[0x8800])
+#define ewram9000 (&gSharedMem[0x9000])
+#define ewram9000_hack (void *)(ewram_addr + 0x9000) // TODO: Fix this.
+#define ewram9800 (&gSharedMem[0x9800])
+#define ewramA000 (&gSharedMem[0xA000])
+#define ewramA800 (&gSharedMem[0xA800])
+#define ewramB000 (&gSharedMem[0xB000])
+#define ewramB800 (&gSharedMem[0xB800])
+#define TRANSITION_STRUCT (*(struct TransitionData *) (gSharedMem + 0xC000))
+#define ewramC000 (&gSharedMem[0xC000])
+#define ePokedexPalAddr2 (void *)(gSharedMem + 0xC000)
+#define ewramC03C (&gSharedMem[0xC03C])
+#define ewramC800 (&gSharedMem[0xC800])
+#define ewramD000 (&gSharedMem[0xD000])
+#define ewramD800 (&gSharedMem[0xD800])
+#define ewramE000 (&gSharedMem[0xE000])
+#define ewramE800 (&gSharedMem[0xE800])
+#define ewramF000 (&gSharedMem[0xF000])
+#define ewramF800 (&gSharedMem[0xF800])
+#define ewram_2010000 (*(struct TradeEwramStruct *)(gSharedMem + 0x10000))
+#define ewram10000 (&gSharedMem[0x10000])
+#define ewram10000_2 (void *)(gSharedMem + 0x10000) // slot machine
+#define ePokedexPalAddr3 (void *)(gSharedMem + 0x10000)
+#define ewram10800 (&gSharedMem[0x10800])
+#define ewram11000 (&gSharedMem[0x11000])
+#define ewram11800 (&gSharedMem[0x11800])
+#define ewram12000 (&gSharedMem[0x12000])
+#define ewram12800 (&gSharedMem[0x12800])
+#define ewram13000 (&gSharedMem[0x13000])
+#define ewram13800 (&gSharedMem[0x13800])
+#define EWRAM_14000 ((u8 *)(gSharedMem + 0x14000))
+#define ewram14000 (&gSharedMem[0x14000])
+#define ePokedexPalAddr4 (void *)(gSharedMem + 0x14000)
+#define ewram14000arr(i, data) (gSharedMem[0x14000 + i + data])
+#define ewram14004arr(i, data) (gSharedMem[0x14004 + i + data])
+#define ewram14008arr(i, data) (gSharedMem[0x14008 + data + i])
+#define ewram14800 (&gSharedMem[0x14800])
+#define EWRAM_14800 ((u16 *)(gSharedMem + 0x14800))
+#define sEvoInfo ((*(struct EvoInfo*)(gSharedMem + 0x14800)))
+#define EWRAM_15000 ((u8 *)(gSharedMem + 0x15000))
+#define ewram15000 (&gSharedMem[0x15000])
+#define ewram15000arr(i, data) (gSharedMem[0x15000 + data + i])
+#define ewram15800 (&gSharedMem[0x15800])
+#define ewram15DDE (gSharedMem[0x15DDE])
+#define ewram15DDF (gSharedMem[0x15DDF])
+#define ewram15DE0 ((*(struct ContestEntry*)(gSharedMem + 0x15DE0)))
+#define ewram15E00 ((*(struct Unk2015E00*)(gSharedMem + 0x15E00)))
+#define ewram16000 (gSharedMem[0x16000])
+#define ewram16000_2 (&gSharedMem[0x16000])
+#define ewram16001 (gSharedMem[0x16001])
+#define ewram16002 (gSharedMem[0x16002])
+#define ewram16003 (gSharedMem[0x16003])
+#define ewram16004arr(i, bank) (gSharedMem[0x16004 + i + bank * 2])
+#define ewram1600C (gSharedMem[0x1600C])
+#define ewram1600E (gSharedMem[0x1600E])
+#define ewram16010arr(bank) (gSharedMem[0x16010 + bank])
+#define ewram1601B (gSharedMem[0x1601B])
+#define eDynamicMoveType (gSharedMem[0x1601C])
+#define eDmgMultiplier (gSharedMem[0x1601F])
+#define ewram16020 ((u8 *)(gSharedMem + 0x16020))
+#define ewram16020arr(i) (gSharedMem[0x16020 + i])
+#define ewram16054 (gSharedMem[0x16054])
+#define ewram16056 (gSharedMem[0x16056])
+#define ewram16058 (gSharedMem[0x16058])
+#define ewram16059 (gSharedMem[0x16059])
+#define ewram16060(bank) (gSharedMem[0x16060 + bank])
+#define BATTLE_PARTY_ID(bank) (gSharedMem[0x16064 + bank])
+#define ewram16064 (&gSharedMem[0x16064])
+#define ewram16064arr(bank) (gSharedMem[0x16064 + bank])
+#define ewram16068arr(i) (gSharedMem[0x16068 + i])
+#define UNK_201606C_ARRAY (gSharedMem + 0x1606C) // lazy define but whatever.
+#define ewram1606Carr(i, a) (gSharedMem[0x1606C + i + a * 3])
+#define ewram16078 (gSharedMem[0x16078])
+#define ewram16084 (gSharedMem[0x16084])
+#define ewram16086 (gSharedMem[0x16086])
+#define ewram16087 (gSharedMem[0x16087])
+#define ewram16088 (gSharedMem[0x16088])
+#define ewram16088_2 (*(u8 *)(gSharedMem + 0x16088))
+#define ewram16089 (gSharedMem[0x16089])
+#define ewram16089_2 (*(u8 *)(gSharedMem + 0x16089))
+#define ewram1608Carr(bank) (gSharedMem[0x1608C + bank])
+#define EWRAM_1609D (gSharedMem[0x1609D])
+#define ewram160A1 (gSharedMem[0x160A1])
+#define ewram160A6 (gSharedMem[0x160A6])
+#define ewram160A8 (gSharedMem[0x160A8])
+#define ewram160A9 (gSharedMem[0x160A9])
+#define ewram160AA (gSharedMem[0x160AA])
+#define ewram160AB (gSharedMem[0x160AB])
+#define ewram160AC ((u8 *)(gSharedMem + 0x160AC))
+#define ewram160ACarr(i) (gSharedMem[0x160AC + i])
+#define ewram160ACarr2(i, bank) (gSharedMem[0x160AC + i + bank * 2])
+#define ewram160BC ((u16 *)(gSharedMem + 0x160BC)) // hp
+#define ewram160BCarr(bank) (gSharedMem[0x160BC + bank * 2])
+#define ewram160C0 (gSharedMem[0x160C0])
+#define ewram160C2_Flags ((u16 *)(gSharedMem + 0x160C2))
+#define ewram160C4_Callback ((MainCallback *)(gSharedMem + 0x160C4))
+#define ewram160C8 (gSharedMem[0x160C8])
+#define ewram160C8arr(bank) (gSharedMem[0x160C8 + (bank / 2)])
+#define ewram160C9 (gSharedMem[0x160C9])
+#define ewram160CB (gSharedMem[0x160CB])
+#define ewram160CC ((u8 *)(gSharedMem + 0x160CC))
+#define ewram160CCarr(i) (gSharedMem[0x160CC + i])
+#define USED_HELD_ITEM(bank) ((((u16*)(&gSharedMem[0x160CC + bank * 2]))))
+#define USED_HELD_ITEMS(bank) (*(u16 *)&gSharedMem[0x160CC + 2 * (bank)])
+#define ewram160D4(bank) (gSharedMem[0x160D4 + (bank / 2) * 2])
+#define ewram160DD (gSharedMem[0x160DD])
+#define ewram160E0(i) (gSharedMem[0x160E0 + i])
+#define ewram160E6 (gSharedMem[0x160E6])
+#define CHOICED_MOVE(bank) (((u16*)(&gSharedMem[0x160E8 + bank * 2])))
+#define ewram160E8 ((u8 *)(gSharedMem + 0x160E8))
+#define ewram160E8arr(i) (gSharedMem[0x160E8 + i])
+#define ewram160E8arr2(i, bank) (gSharedMem[0x160E8 + i + bank * 2])
+#define ewram160F0 ((u8 *)(gSharedMem + 0x160F0))
+#define ewram160F0arr(i) (gSharedMem[0x160F0 + i])
+#define ewram160F8 (gSharedMem[0x160F8])
+#define ewram160F9 (gSharedMem[0x160F9])
+#define eStatHp (gSharedMem[0x160FA])
+#define ewram160FB (gSharedMem[0x160FB])
+#define ewram16100 ((u8 *)(gSharedMem + 0x16100))
+#define ewram16100arr(i) (gSharedMem[0x16100 + i])
+#define ewram16100arr2(i, bank) (gSharedMem[0x16100 + i + bank * 4])
+#define ewram16108 ((u8 *)(gSharedMem + 0x16108))
+#define ewram16108arr(i) (gSharedMem[0x16108 + i])
+#define ewram16110 (gSharedMem[0x16110])
+#define ewram16111 (gSharedMem[0x16111])
+#define ewram16113 (gSharedMem[0x16113])
+#define ewram16400 (gSharedMem + 0x16400)
+#define AI_THINKING_STRUCT ((struct AI_ThinkingStruct *)(gSharedMem + 0x16800))
+#define UNK_2016A00_STRUCT ((struct UnkBattleStruct1 *) (gSharedMem + 0x16A00))
+#define AI_STACK ((struct AI_Stack *) (gSharedMem + 0x16C00))
+#define AI_ARRAY_160CC(i) (gSharedMem[0x160CC + i * 2])
+#define ewram16800 (&gSharedMem[0x16800])
+#define ewram17000 (&gSharedMem[0x17000])
+#define eLearnMoveStruct (struct LearnMoveStruct *)(gSharedMem + 0x17000)
+#define eSecretBaseRecord ((struct SecretBaseRecord *)(gSharedMem + 0x17000))
+#define ewram17002 (&gSharedMem[0x17002])
+#define eFlashFireArr (*(struct Struct2017100 *)(gSharedMem + 0x17100))
+#define B_BATTLESCRIPTS_STACK ((struct scriptsStack *) (gSharedMem + 0x17110))
+#define ewram17130 (gSharedMem[0x17130])
+#define B_FUNCTION_STACK ((struct funcStack *) (gSharedMem + 0x17140))
+#define ewram17160 (gSharedMem[0x17160])
+#define ewram17800 ((struct Struct2017800 *) (gSharedMem + 0x17800))
+#define EWRAM_17800 ((struct UnknownStruct1 *)(gSharedMem + 0x17800))
+#define eTransformStatuses ((struct TransformStatus *)(gSharedMem + 0x17800))
+#define ewram17800_2 (&gSharedMem[0x17800])
+#define ewram17810 ((struct Struct2017810 *) (gSharedMem + 0x17810))
+#define EWRAM_17810 ((struct UnknownStruct3 *)(gSharedMem + 0x17810))
+#define ewram17840 (*(struct Struct2017840 *) (gSharedMem + 0x17840))
+#define ewram17850 ((struct UnknownStruct5 *)(gSharedMem + 0x17850))
+#define ewram_2018000 (*(struct PlayerRecords *)(gSharedMem + 0x18000))
+#define EWRAM_18000 ((u16 *)(gSharedMem + 0x18000))
+#define ewram18000 ((u16 *)(gSharedMem + 0x18000))
+#define ewram18000_2 (&gSharedMem[0x18000])
+#define ewram18000_3 *(struct Pokemon **)(gSharedMem + 0x18000)
+#define eBerryBlenderData (struct BerryBlenderData*)(&gSharedMem[0x18000])
+#define eEggHatchData (struct EggHatchData*)(&gSharedMem[0x18000])
+#define ePokedexView1 (struct PokedexView *)(gSharedMem + 0x18000)
+#define UNK_2018000_STRUCT (*(struct UnknownStruct2018000 *)(gSharedMem + 0x18000))
+#define ewram18300 ((u16 *)(gSharedMem + 0x18300))
+#define ewram18800 (&gSharedMem[0x18800])
+#define ePokedexView2 (struct PokedexView *)(gSharedMem + 0x18800)
+#define ewram19000 (&gSharedMem[0x19000])
+#define ePokedexView3 (struct PokedexView *)(gSharedMem + 0x19000)
+#define EWRAM_19348 (*(u16 *)(gSharedMem + 0x19348))
+#define ewram19348 (*(struct Struct2019348 *)(gSharedMem + 0x19348))
+#define ewram19800 (&gSharedMem[0x19800])
+#define ePokedexView4 (struct PokedexView *)(gSharedMem + 0x19800)
+#define ewram1A000 (&gSharedMem[0x1A000])
+#define ewram1A800 (&gSharedMem[0x1A800])
+#define ewram1B000 (*(struct Unk201B000 *)(gSharedMem + 0x1B000))
+#define ewram1B000_alt (*(struct Struct201B000 *)(gSharedMem + 0x1B000))
+#define EWRAM_1B000 ewram1B000_alt // FIXME
+#define EWRAM_1B000_2 (*(struct Struct201B000 *)(gSharedMem + 0x1B000))
+#define ewram1B000_2 (&gSharedMem[0x1B000])
+#define ewram1B800 (&gSharedMem[0x1B800])
+#define EWRAM_1C000 (*(struct Struct201C000 *)(gSharedMem + 0x1C000))
+#define ewram1C000 (*(struct Unk201C000 *)(gSharedMem + 0x1C000))
+#define ewram1c000 (*(struct Unk201C000 *)(gSharedMem + 0x1C000)) // FIXME, names too similar
+#define eHallOfFameMons1 (struct HallofFameMons*)(&gSharedMem[0x1C000])
+#define EWRAM_1C800 (*(struct Unk201C800 *)(gSharedMem + 0x1C800))
+#define ewram1D000 ((struct Pokemon *)(gSharedMem + 0x1D000))
+#define ewram1D000_2 ((u16 *)(gSharedMem + 0x1D000))
+#define ewram1D400 ((u16 *)(gSharedMem + 0x1D400))
+#define ewramSavedItemsPocket ((struct ItemSlot *)(gSharedMem + 0x1E000)) // saved items pocket (for Wally battle)
+#define ewram1E000(i) (gSharedMem[0x1E000 + i])
+#define eHallOfFameMons2 (struct HallofFameMons*)(&gSharedMem[0x1E000])
+#define eHallOfFame (struct HallOfFame *)(gSharedMem + 0x1E000)
+#define HALL_OF_FAME_SHEET_0 ((u8 *)(gSharedMem + 0x1E000))
+#define ewram1E000_2 (const u8 *)(gSharedMem + 0x1E000)
+#define HALL_OF_FAME_SHEET_1 ((u8 *)(gSharedMem + 0x1E800))
+#define ewram_1f000 (*(struct DecoPCPointers *)(gSharedMem + 0x1f000))
+#define ewramSavedPokeballsPocket ((struct ItemSlot *)(gSharedMem + 0x1F000)) // saved Pokeballs pocket (for Wally battle)
+#define HALL_OF_FAME_SHEET_2 ((u8 *)(gSharedMem + 0x1F000))
+#define EWRAM_1F800 ((u16 *)(gSharedMem + 0x1F800))
+#define ewram_1F800_2 (const u16 *)(gSharedMem + 0x1F800)
+#define ewram1FE00 (*(struct Unk201FE00 *)(gSharedMem + 0x1FE00))
+#define eMailboxInfo (*(struct MailboxStruct *)(gSharedMem + 0x1FE00))
+#define eCutGrassSpriteArray (gSharedMem + 0x1FFF0) // 8 sprite IDs
+#define ewram1FFFC (gSharedMem[0x1FFFC])
+#define ewram1FFFD (gSharedMem[0x1FFFD])
+#define gHelperState (gSharedMem[0x1FFFE])
+#define ewram1FFFE (gSharedMem[0x1FFFE])
+#define gReshowState (gSharedMem[0x1FFFF])
+#define ewramBagSetupStep (gSharedMem[0x1FFFF])
+#define ewram1FFFF (gSharedMem[0x1FFFF])
+
+#endif
diff --git a/include/field_map_obj.h b/include/field_map_obj.h
index 19482e71f..8e1fdc8bd 100644
--- a/include/field_map_obj.h
+++ b/include/field_map_obj.h
@@ -344,7 +344,7 @@ void FieldObjectTurnByLocalIdAndMap(u8, u8, u8, u8);
const struct MapObjectGraphicsInfo *GetFieldObjectGraphicsInfo(u8);
void FieldObjectHandleDynamicGraphicsId(struct MapObject *);
void npc_by_local_id_and_map_set_field_1_bit_x20(u8, u8, u8, u8);
-void FieldObjectGetLocalIdAndMap(struct MapObject *, u8 *, u8 *, u8 *);
+void FieldObjectGetLocalIdAndMap(struct MapObject *, void *, void *, void *);
void sub_805BCC0(s16 x, s16 y);
void sub_805BCF0(u8, u8, u8, u8);
void sub_805BD48(u8, u8, u8);
diff --git a/include/field_weather.h b/include/field_weather.h
index 409f76028..b711f91d6 100644
--- a/include/field_weather.h
+++ b/include/field_weather.h
@@ -20,8 +20,9 @@ void nullsub_39(void);
// ASM
void sub_807CEBC(u8, u8, s8);
-void sub_807D1BC(u8, u8, u8, u8, u16);
-void sub_807D304(int, u8, u16);
+//void sub_807D1BC(u8, u8, u8, u8, u16);
+void sub_807D1BC(u8 a, u8 a2, s8 c, u8 d, u16 e);
+void sub_807D304(s8 a, u8 arg2, u16 c);
void sub_807D424(u8, u16);
// ...
void fade_screen(u8, u8);
@@ -42,7 +43,7 @@ void sub_80806E4(void);
void DoCurrentWeather(void);
void sub_8080750();
-u8 sub_807D770(void);
+bool8 sub_807D770(void);
bool8 sub_807DDFC(void);
void SetWeather(u32);
void UpdateWeatherPerDay(u16);
diff --git a/include/gba/defines.h b/include/gba/defines.h
index 0f7f06755..7fd429d9e 100644
--- a/include/gba/defines.h
+++ b/include/gba/defines.h
@@ -29,15 +29,16 @@
#define BG_VRAM VRAM
#define BG_VRAM_SIZE 0x10000
-#define BG_CHAR_ADDR(n) (BG_VRAM + (0x4000 * (n)))
-#define BG_SCREEN_ADDR(n) (BG_VRAM + (0x800 * (n)))
+#define BG_CHAR_ADDR(n) (void *)(BG_VRAM + (0x4000 * (n)))
+#define BG_SCREEN_ADDR(n) (void *)(BG_VRAM + (0x800 * (n)))
+#define BG_TILE_ADDR(n) (void *)(BG_VRAM + (0x80 * (n)))
// text-mode BG
-#define OBJ_VRAM0 (VRAM + 0x10000)
+#define OBJ_VRAM0 (void *)(VRAM + 0x10000)
#define OBJ_VRAM0_SIZE 0x8000
// bitmap-mode BG
-#define OBJ_VRAM1 (VRAM + 0x14000)
+#define OBJ_VRAM1 (void *)(VRAM + 0x14000)
#define OBJ_VRAM1_SIZE 0x4000
#define OAM 0x7000000
diff --git a/include/gba/flash_internal.h b/include/gba/flash_internal.h
index cbcfb5466..39e14ef73 100644
--- a/include/gba/flash_internal.h
+++ b/include/gba/flash_internal.h
@@ -35,7 +35,7 @@ struct FlashType {
struct FlashSetupInfo
{
u16 (*programFlashByte)(u16, u32, u8);
- u16 (*programFlashSector)(u16, u8 *);
+ u16 (*programFlashSector)(u16, void *);
u16 (*eraseFlashChip)(void);
u16 (*eraseFlashSector)(u16);
u16 (*WaitForFlashWrite)(u8, u8 *, u8);
@@ -46,7 +46,7 @@ struct FlashSetupInfo
extern u16 gFlashNumRemainingBytes;
extern u16 (*ProgramFlashByte)(u16, u32, u8);
-extern u16 (*ProgramFlashSector)(u16, u8 *);
+extern u16 (*ProgramFlashSector)(u16, void *);
extern u16 (*EraseFlashChip)(void);
extern u16 (*EraseFlashSector)(u16);
extern u16 (*WaitForFlashWrite)(u8, u8 *, u8);
@@ -67,15 +67,15 @@ void SetReadFlash1(u16 *dest);
void StopFlashTimer(void);
u16 SetFlashTimerIntr(u8 timerNum, void (**intrFunc)(void));
u32 ProgramFlashSectorAndVerify(u16 sectorNum, u8 *src);
-void ReadFlash(u16 sectorNum, u32 offset, u8 *dest, u32 size);
-u32 ProgramFlashSectorAndVerifyNBytes(u16 sectorNum, u8 *src, u32 n);
+void ReadFlash(u16 sectorNum, u32 offset, void *dest, u32 size);
+u32 ProgramFlashSectorAndVerifyNBytes(u16 sectorNum, void *dataSrc, u32 n);
u16 WaitForFlashWrite_Common(u8 phase, u8 *addr, u8 lastData);
u16 EraseFlashChip_MX(void);
u16 EraseFlashSector_MX(u16 sectorNum);
u16 ProgramFlashByte_MX(u16 sectorNum, u32 offset, u8 data);
-u16 ProgramFlashSector_MX(u16 sectorNum, u8 *src);
+u16 ProgramFlashSector_MX(u16 sectorNum, void *src);
// agb_flash_1m
u16 IdentifyFlash(void);
diff --git a/include/global.h b/include/global.h
index 29804a5a9..647f66bc8 100644
--- a/include/global.h
+++ b/include/global.h
@@ -55,6 +55,24 @@ enum
B_32 = 4
};
+// There are many quirks in the source code which have overarching behavioral differences from
+// a number of other files. For example, diploma.c seems to declare rodata before each use while
+// other files declare out of order and must be at the beginning. There are also a number of
+// macros which differ from one file to the next due to the method of obtaining the result, such
+// as these below. Because of this, there is a theory (Two Team Theory) that states that these
+// programming projects had more than 1 "programming team" which utilized different macros for
+// each of the files that were worked on.
+#define T1_READ_8(ptr) ((ptr)[0])
+#define T1_READ_16(ptr) ((ptr)[0] | ((ptr)[1] << 8))
+#define T1_READ_32(ptr) ((ptr)[0] | ((ptr)[1] << 8) | ((ptr)[2] << 16) | ((ptr)[3] << 24))
+#define T1_READ_PTR(ptr) (u8*) T1_READ_32(ptr)
+
+// T2_READ_8 is a duplicate to remain consistent with each group.
+#define T2_READ_8(ptr) ((ptr)[0])
+#define T2_READ_16(ptr) ((ptr)[0] + ((ptr)[1] << 8))
+#define T2_READ_32(ptr) ((ptr)[0] + ((ptr)[1] << 8) + ((ptr)[2] << 16) + ((ptr)[3] << 24))
+#define T2_READ_PTR(ptr) (void*) T2_READ_32(ptr)
+
enum
{
VERSION_SAPPHIRE = 1,
diff --git a/include/party_menu.h b/include/party_menu.h
index f13c2c2df..304389e78 100644
--- a/include/party_menu.h
+++ b/include/party_menu.h
@@ -101,12 +101,6 @@ struct UnknownPokemonStruct2
/*0x1D*/ u8 language;
};
-extern u8 ewram[];
-#define ewram01000 (*(struct Unk2001000 *)(ewram + 0x01000))
-#define ewram1B000 (*(struct Unk201B000 *)(ewram + 0x1B000))
-#define ewram1B000_alt (*(struct Struct201B000 *)(ewram + 0x1B000))
-#define EWRAM_1B000 ewram1B000_alt
-
void CB2_PartyMenuMain(void);
void ChangeBattleTowerPartyMenuSelection(u8 taskId, s8 directionPressed);
void SetPartyMenuSettings(u8 menuType, u8 battleTypeFlags, TaskFunc menuHandlerFunc, u8 textId);
diff --git a/include/player_pc.h b/include/player_pc.h
index 8debeda88..3302ec634 100644
--- a/include/player_pc.h
+++ b/include/player_pc.h
@@ -13,6 +13,7 @@
#define SWAP_ITEM_INDEX data[8]
#define SWITCH_MODE_ACTIVE data[9]
+// this is potentially an ewram access occuring in high ewram. TODO: investigate this further.
#define NEW_GAME_PC_ITEMS(i, type) ((u16)((u16 *)gNewGamePCItems + type)[i * 2])
// defined and used in the above macro
diff --git a/include/pokemon.h b/include/pokemon.h
index 572862b8f..7fc8e181f 100644
--- a/include/pokemon.h
+++ b/include/pokemon.h
@@ -541,11 +541,13 @@ union PokemonSubstruct *GetSubstruct(struct BoxPokemon *boxMon, u32 personality,
// but they are not used since some code erroneously omits the third arg.
// u32 GetMonData(struct Pokemon *mon, s32 field, u8 *data);
// u32 GetBoxMonData(struct BoxPokemon *boxMon, s32 field, u8 *data);
+// void SetMonData(struct Pokemon *mon, s32 field, const void *dataArg);
+// void SetBoxMonData(struct BoxPokemon *boxMon, s32 field, const void *dataArg);
u32 GetMonData();
u32 GetBoxMonData();
+void SetMonData();
+void SetBoxMonData();
-void SetMonData(struct Pokemon *mon, s32 field, const u8 *data);
-void SetBoxMonData(struct BoxPokemon *boxMon, s32 field, const u8 *data);
void CopyMon(void *dest, void *src, size_t size);
u8 GiveMonToPlayer(struct Pokemon *mon);
u8 SendMonToPC(struct Pokemon *mon);
diff --git a/include/rom3.h b/include/rom3.h
index 81bb56df1..19c6def25 100644
--- a/include/rom3.h
+++ b/include/rom3.h
@@ -1,6 +1,12 @@
#ifndef GUARD_ROM3_H
#define GUARD_ROM3_H
+struct HpAndStatus
+{
+ u16 hp;
+ u32 status;
+};
+
struct DisableStruct;
void sub_800B858(void);
@@ -55,7 +61,7 @@ void Emitcmd44(u8 a, u16 b);
void EmitFaintingCry(u8 a);
void EmitIntroSlide(u8 a, u8 b);
void EmitTrainerBallThrow(u8 a);
-void Emitcmd48(u8 a, u8 *b, u8 c);
+void EmitDrawPartyStatusSummary(u8 a, struct HpAndStatus *hpAndStatus, u8 c); //0x30
void Emitcmd49(u8 a);
void Emitcmd50(u8 a);
void EmitSpriteInvisibility(u8 a, u8 b);
diff --git a/include/save.h b/include/save.h
index 6c47c6f60..c35ad547a 100644
--- a/include/save.h
+++ b/include/save.h
@@ -3,7 +3,7 @@
struct SaveSectionLocation
{
- void *data;
+ u8 *data;
u16 size;
};
diff --git a/include/script_pokemon_80F9.h b/include/script_pokemon_80F9.h
index fa5d57f0e..eed32f5cf 100644
--- a/include/script_pokemon_80F9.h
+++ b/include/script_pokemon_80F9.h
@@ -7,8 +7,6 @@ struct UnknownStruct2018000
u8 unk8;
};
-extern struct UnknownStruct2018000 unk_2018000;
-
void OpenPartyMenuFromScriptContext(u8 taskId);
void sub_80F9C00(void);
void sub_80F9E1C(void);
diff --git a/include/songs.h b/include/songs.h
index afd26d683..d22d311ab 100644
--- a/include/songs.h
+++ b/include/songs.h
@@ -83,16 +83,16 @@ enum
SE_TOY_KABE,
SE_TOY_DANGO,
SE_DOKU,
- SE_ESUKA,
- SE_T_AME,
- SE_T_AME_E,
- SE_T_OOAME,
- SE_T_OOAME_E,
- SE_T_KOAME,
- SE_T_KOAME_E,
- SE_T_KAMI,
- SE_T_KAMI2,
- SE_ELEBETA,
+ /*0x50*/ SE_ESUKA,
+ /*0x51*/ SE_T_AME,
+ /*0x52*/ SE_T_AME_E,
+ /*0x53*/ SE_T_OOAME,
+ /*0x54*/ SE_T_OOAME_E,
+ /*0x55*/ SE_T_KOAME,
+ /*0x56*/ SE_T_KOAME_E,
+ /*0x57*/ SE_T_KAMI,
+ /*0x58*/ SE_T_KAMI2,
+ /*0x59*/ SE_ELEBETA,
/*0x5A*/ SE_HINSI,
/*0x5B*/ SE_EXPMAX,
/*0x5C*/ SE_TAMAKORO,
diff --git a/include/sprite.h b/include/sprite.h
index 769e1584d..38687ebd8 100644
--- a/include/sprite.h
+++ b/include/sprite.h
@@ -252,7 +252,7 @@ void SetOamMatrix(u8 matrixNum, u16 a, u16 b, u16 c, u16 d);
void CalcCenterToCornerVec(struct Sprite *sprite, u8 shape, u8 size, u8 affineMode);
void SpriteCallbackDummy(struct Sprite *sprite);
void ProcessSpriteCopyRequests(void);
-void RequestSpriteCopy(const u8 *src, u8 *dest, u16 size);
+void RequestSpriteCopy(const void *src, u8 *dest, u16 size);
void FreeSpriteTiles(struct Sprite *sprite);
void FreeSpritePalette(struct Sprite *sprite);
void FreeSpriteOamMatrix(struct Sprite *sprite);
diff --git a/include/string_util.h b/include/string_util.h
index 7a4bfa4c1..55fa988b4 100644
--- a/include/string_util.h
+++ b/include/string_util.h
@@ -29,7 +29,7 @@ u8 *ConvertIntToHexStringN(u8 *dest, s32 value, enum StringConvertMode mode, u8
u8 *ConvertIntToDecimalString(u8 *dest, s32 value);
u8 *StringExpandPlaceholders(u8 *dest, const u8 *src);
u8 *StringBraille(u8 *dest, const u8 *src);
-u8 *GetExpandedPlaceholder(u32 id);
+const u8 *GetExpandedPlaceholder(u32 id);
u8 *StringFill(u8 *dest, u8 c, u16 n);
u8 *StringCopyPadded(u8 *dest, const u8 *src, u8 c, u16 n);
u8 *StringFillWithTerminator(u8 *dest, u16 n);
diff --git a/ld_script.txt b/ld_script.txt
index 3d5c2f0eb..b22462cb7 100644
--- a/ld_script.txt
+++ b/ld_script.txt
@@ -9,8 +9,6 @@ SECTIONS {
ewram (NOLOAD) :
ALIGN(4)
{
- . = 0x20000;
-
<EWRAM>
. = 0x40000;
@@ -362,6 +360,7 @@ SECTIONS {
src/engine/task.o(.rodata);
src/battle/battle_anim_807B69C.o(.rodata);
src/scene/title_screen.o(.rodata);
+ src/field/field_weather.o(.rodata);
data/field_weather.o(.rodata);
src/field/field_screen_effect.o(.rodata);
src/battle/battle_setup.o(.rodata);
@@ -452,7 +451,6 @@ SECTIONS {
data/battle_anim_813F0F4.o(.rodata);
src/scene/hall_of_fame.o(.rodata);
src/scene/credits.o(.rodata);
- data/credits.o(.rodata);
src/field/lottery_corner.o(.rodata);
src/field/diploma.o(.rodata);
src/strings.o(.rodata);
diff --git a/shared_syms.txt b/shared_syms.txt
deleted file mode 100644
index 571e0633e..000000000
--- a/shared_syms.txt
+++ /dev/null
@@ -1,43 +0,0 @@
-unk_2000000 = 0x2000000;
-ewram = 0x2000000;
-
-unk_2004000 = 0x2004000;
-
-gUnk_2009000 = 0x2009000;
-
-unk_2007800 = 0x2007800;
-unk_2007900 = 0x2007900;
-
-unk_2008000 = 0x2008000;
-
-unk_2015de0 = 0x2015de0;
-unk_2015e00 = 0x2015e00;
-unk_2016000 = 0x2016000;
-
-unk_201606C = 0x201606C;
-
-unk_20160BC = 0x20160BC;
-
-unk_2016A00 = 0x2016A00;
-unk_2016C00 = 0x2016C00;
-
-gTransformStatuses = 0x2017800;
-unk_2017810 = 0x2017810;
-
-gMailboxInfo = 0x201FE00;
-
-gSecretBaseRecord = 0x2017000;
-
-dword_2017100 = 0x2017100;
-
-unk_2018000 = 0x2018000;
-
-unk_2019348 = 0x2019348;
-
-unk_201B260 = 0x201b260;
-unk_201B264 = 0x201B264;
-unk_201C000 = 0x201C000;
-
-gHallOfFame = 0x201E000;
-unk_201f800 = 0x201F800;
-gCutGrassSpriteArray = 0x201FFF0;
diff --git a/src/battle/battle_2.c b/src/battle/battle_2.c
index a447cf498..14afc1537 100644
--- a/src/battle/battle_2.c
+++ b/src/battle/battle_2.c
@@ -29,6 +29,7 @@
#include "items.h"
#include "hold_effects.h"
#include "battle_move_effects.h"
+#include "ewram.h"
struct UnknownStruct6
{
@@ -62,48 +63,6 @@ struct UnknownStruct12
extern const u16 gUnknown_08D004E0[];
extern const struct MonCoords gCastformFrontSpriteCoords[];
-extern u8 ewram[];
-#define ewram0 (*(struct UnknownStruct7 *)(ewram + 0x0))
-#define ewram4 (*(struct UnknownStruct8 *)(ewram + 0x4))
-#define ewram16000 (ewram[0x16000])
-#define ewram16001 (ewram[0x16001])
-#define ewram16002 (ewram[0x16002])
-#define ewram16003 (ewram[0x16003])
-#define ewram1600C (ewram[0x1600C])
-#define ewram1600E (ewram[0x1600E])
-#define ewram1601B (ewram[0x1601B])
-#define ewram16020 ((u8 *)(ewram + 0x16020))
-#define ewram16056 (ewram[0x16056])
-#define ewram16058 (ewram[0x16058])
-#define ewram16059 (ewram[0x16059])
-#define ewram16078 (ewram[0x16078])
-#define ewram16084 (ewram[0x16084])
-#define ewram16086 (ewram[0x16086])
-#define ewram16087 (ewram[0x16087])
-#define ewram16088 (ewram[0x16088])
-#define ewram16089 (ewram[0x16089])
-#define ewram160A1 (ewram[0x160A1])
-#define ewram160A6 (ewram[0x160A6])
-#define ewram160AC ((u8 *)(ewram + 0x160AC))
-#define ewram160BC ((u16 *)(ewram + 0x160BC)) // hp
-#define ewram160C8 (ewram[0x160C8])
-#define ewram160C9 (ewram[0x160C9])
-#define ewram160CB (ewram[0x160CB])
-#define ewram160CC ((u8 *)(ewram + 0x160CC))
-#define ewram160E6 (ewram[0x160E6])
-#define ewram160E8 ((u8 *)(ewram + 0x160E8))
-#define ewram160F0 ((u8 *)(ewram + 0x160F0))
-#define ewram160F9 (ewram[0x160F9])
-#define ewram16100 ((u8 *)(ewram + 0x16100))
-#define ewram16108 ((u8 *)(ewram + 0x16108))
-#define ewram16110 (ewram[0x16110])
-#define ewram16111 (ewram[0x16111])
-#define ewram16113 (ewram[0x16113])
-#define ewram17100 ((u32 *)(ewram + 0x17100))
-#define ewram17130 (ewram[0x17130])
-#define ewram17160 (ewram[0x17160])
-#define ewram1D000 ((struct Pokemon *)(ewram + 0x1D000))
-
extern struct UnknownPokemonStruct2 gUnknown_02023A00[];
extern u8 gBattleBufferB[][0x200];
extern u8 gActiveBank;
@@ -294,8 +253,8 @@ void sub_800E9EC(void)
if (species != SPECIES_EGG && hp == 0)
r6 |= 3 << i * 2;
}
- ewram0.unk2 = r6;
- ewram0.unk3 = r6 >> 8;
+ BATTLE_STRUCT->unk2 = r6;
+ BATTLE_STRUCT->unk3 = r6 >> 8;
}
void sub_800EAAC(void)
@@ -391,11 +350,11 @@ void sub_800EC9C(void)
{
if (gReceivedRemoteLinkPlayers != 0 && sub_8007ECC())
{
- ewram0.unk0 = 1;
- ewram0.unk1 = 1;
+ BATTLE_STRUCT->unk0 = 1;
+ BATTLE_STRUCT->unk1 = 1;
sub_800E9EC();
sub_800EAAC();
- SendBlock(bitmask_all_link_players_but_self(), &ewram0, 32);
+ SendBlock(bitmask_all_link_players_but_self(), BATTLE_STRUCT, 32);
gBattleCommunication[0] = 1;
}
}
@@ -451,7 +410,7 @@ void sub_800EC9C(void)
gTasks[taskId].data[1] = 0x10E;
gTasks[taskId].data[2] = 0x5A;
gTasks[taskId].data[5] = 0;
- gTasks[taskId].data[3] = ewram0.unk2 | (ewram0.unk3 << 8);
+ gTasks[taskId].data[3] = BATTLE_STRUCT->unk2 | (BATTLE_STRUCT->unk3 << 8);
gTasks[taskId].data[4] = gBlockRecvBuffer[enemyId][1];
gBattleCommunication[0]++;
}
@@ -551,7 +510,7 @@ void sub_800F02C(void)
if (gUnknown_02023A00[i].language != 1)
PadNameString(nickname, 0);
}
- memcpy(ewram, gUnknown_02023A00, 0x60);
+ memcpy(gSharedMem, gUnknown_02023A00, 0x60);
}
void sub_800F104(void)
@@ -563,8 +522,8 @@ void sub_800F104(void)
playerId = GetMultiplayerId();
ewram160CB = playerId;
// Seriously, Game Freak?
- pSavedCallback = (MainCallback *)(ewram + 0x160C4);
- pSavedBattleTypeFlags = (u16 *)(ewram + 0x160C2);
+ pSavedCallback = ewram160C4_Callback;
+ pSavedBattleTypeFlags = ewram160C2_Flags;
RunTasks();
AnimateSprites();
BuildOamBuffer();
@@ -575,7 +534,7 @@ void sub_800F104(void)
if (gReceivedRemoteLinkPlayers != 0 && sub_8007ECC())
{
sub_800F02C();
- SendBlock(bitmask_all_link_players_but_self(), ewram, 0x60);
+ SendBlock(bitmask_all_link_players_but_self(), gSharedMem, 0x60);
gBattleCommunication[0]++;
}
break;
@@ -634,11 +593,11 @@ void sub_800F298(void)
case 0:
if (gReceivedRemoteLinkPlayers != 0 && sub_8007ECC())
{
- ewram0.unk0 = 1;
- ewram0.unk1 = 1;
+ BATTLE_STRUCT->unk0 = 1;
+ BATTLE_STRUCT->unk1 = 1;
sub_800E9EC();
sub_800EAAC();
- SendBlock(bitmask_all_link_players_but_self(), ewram, 0x20);
+ SendBlock(bitmask_all_link_players_but_self(), gSharedMem, 0x20);
gBattleCommunication[0]++;
}
break;
@@ -904,7 +863,7 @@ void sub_800F828(struct Sprite *sprite)
void sub_800F838(struct Sprite *sprite)
{
- u16 *arr = (u16 *)ewram;
+ u16 *arr = (u16 *)gSharedMem;
switch (sprite->data0)
{
@@ -999,7 +958,7 @@ u8 CreateNPCTrainerParty(struct Pokemon *party, u16 trainerNum)
for (j = 0; j < 4; j++)
{
- SetMonData(&party[i], MON_DATA_MOVE1 + j, (u8 *)&partyData[i].moves[j]);
+ SetMonData(&party[i], MON_DATA_MOVE1 + j, &partyData[i].moves[j]);
SetMonData(&party[i], MON_DATA_PP1 + j, &gBattleMoves[partyData[i].moves[j]].pp);
}
break;
@@ -1014,7 +973,7 @@ u8 CreateNPCTrainerParty(struct Pokemon *party, u16 trainerNum)
fixedIV = partyData[i].iv * 31 / 255;
CreateMon(&party[i], partyData[i].species, partyData[i].level, fixedIV, TRUE, personalityValue, 2, 0);
- SetMonData(&party[i], MON_DATA_HELD_ITEM, (u8 *)&partyData[i].heldItem);
+ SetMonData(&party[i], MON_DATA_HELD_ITEM, &partyData[i].heldItem);
break;
}
case 3:
@@ -1027,10 +986,10 @@ u8 CreateNPCTrainerParty(struct Pokemon *party, u16 trainerNum)
fixedIV = partyData[i].iv * 31 / 255;
CreateMon(&party[i], partyData[i].species, partyData[i].level, fixedIV, TRUE, personalityValue, 2, 0);
- SetMonData(&party[i], MON_DATA_HELD_ITEM, (u8 *)&partyData[i].heldItem);
+ SetMonData(&party[i], MON_DATA_HELD_ITEM, &partyData[i].heldItem);
for (j = 0; j < 4; j++)
{
- SetMonData(&party[i], MON_DATA_MOVE1 + j, (u8 *)&partyData[i].moves[j]);
+ SetMonData(&party[i], MON_DATA_MOVE1 + j, &partyData[i].moves[j]);
SetMonData(&party[i], MON_DATA_PP1 + j, &gBattleMoves[partyData[i].moves[j]].pp);
}
break;
@@ -1375,6 +1334,7 @@ void sub_8010384(struct Sprite *sprite)
void sub_8010494(struct Sprite *sprite)
{
s32 i;
+ u8 *dst;
sprite->data4--;
if (sprite->data4 == 0)
@@ -1389,8 +1349,8 @@ void sub_8010494(struct Sprite *sprite)
}
else
{
- u8 *dst = (u8 *)gUnknown_081FAF4C[GetBankIdentity(sprite->data0)] + (gBattleMonForms[sprite->data0] << 11) + (sprite->data3 << 8);
-
+ // this should use a MEMSET_ALT, but *(dst++) wont match with it.
+ dst = (u8 *)gUnknown_081FAF4C[GetBankIdentity(sprite->data0)] + (gBattleMonForms[sprite->data0] << 11) + (sprite->data3 << 8);
for (i = 0; i < 0x100; i++)
*(dst++) = 0;
StartSpriteAnim(sprite, gBattleMonForms[sprite->data0]);
@@ -1567,10 +1527,7 @@ void sub_8010874(void)
{
gStatuses3[i] = 0;
- r4 = (u8 *)&gDisableStructs[i];
- for (j = 0; j < (u32)0x1C; j++)
- r4[j] = 0;
-
+ MEMSET_ALT(&gDisableStructs[i], 0, 0x1C, j, r4);
gDisableStructs[i].isFirstTurn= 2;
gUnknown_02024C70[i] = 0;
gLastUsedMove[i] = 0;
@@ -1580,25 +1537,20 @@ void sub_8010874(void)
gUnknown_02024C5C[i] = 0xFF;
gLockedMove[i] = 0;
gUnknown_02024C2C[i] = 0;
- ewram17100[i] = 0;
+ eFlashFireArr.arr[i] = 0;
}
for (i = 0; i < 2; i++)
{
gSideAffecting[i] = 0;
-
- r4 = (u8 *)&gSideTimer[i];
- for (j = 0; j < 12; j++)
- r4[j] = 0;
+ MEMSET_ALT(&gSideTimer[i], 0, 12, j, r4);
}
gBankAttacker = 0;
gBankTarget = 0;
gBattleWeather = 0;
- r4 = (u8 *)&gWishFutureKnock;
- for (i = 0; i < (u32)0x2C; i++)
- r4[i] = 0;
+ MEMSET_ALT(&gWishFutureKnock, 0, 0x2C, i, r4);
gHitMarker = 0;
if ((gBattleTypeFlags & BATTLE_TYPE_LINK) == 0 && gSaveBlock2.optionsBattleSceneOff == TRUE)
@@ -1629,12 +1581,12 @@ void sub_8010874(void)
for (i = 0; i < 8; i++)
{
- ewram[i + 0x160AC] = 0;
- ewram[i + 0x160CC] = 0;
- ewram[i + 0x160E8] = 0;
- ewram[i + 0x160F0] = 0;
- ewram[i + 0x16100] = 0;
- ewram[i + 0x16108] = 0;
+ ewram160ACarr(i) = 0;
+ ewram160CCarr(i) = 0;
+ ewram160E8arr(i) = 0;
+ ewram160F0arr(i) = 0;
+ ewram16100arr(i) = 0;
+ ewram16108arr(i) = 0;
}
ewram160C8 = 6;
@@ -1669,7 +1621,6 @@ void SwitchInClearStructs(void)
struct DisableStruct sp0 = gDisableStructs[gActiveBank];
s32 i;
u8 *ptr;
- u32 *ptr2;
if (gBattleMoves[gCurrentMove].effect != EFFECT_BATON_PASS)
{
@@ -1714,16 +1665,14 @@ void SwitchInClearStructs(void)
{
if (gUnknown_02024AD0[i].unk0 & (gBitTable[gActiveBank] << 16))
gUnknown_02024AD0[i].unk0 &= ~(gBitTable[gActiveBank] << 16);
- if ((gUnknown_02024AD0[i].unk0 & 0xE000) && ewram[0x16020 + i] == gActiveBank)
+ if ((gUnknown_02024AD0[i].unk0 & 0xE000) && ewram16020arr(i) == gActiveBank)
gUnknown_02024AD0[i].unk0 &= ~0xE000;
}
gActionSelectionCursor[gActiveBank] = 0;
gMoveSelectionCursor[gActiveBank] = 0;
- ptr = (u8 *)&gDisableStructs[gActiveBank];
- for (i = 0; i < (u32)0x1C; i++)
- ptr[i] = 0;
+ MEMSET_ALT(&gDisableStructs[gActiveBank], 0, 0x1C, i, ptr);
if (gBattleMoves[gCurrentMove].effect == EFFECT_BATON_PASS)
{
@@ -1741,17 +1690,16 @@ void SwitchInClearStructs(void)
gUnknown_02024C2C[gActiveBank] = 0;
gUnknown_02024C5C[gActiveBank] = 0xFF;
- ewram[0x160AC + gActiveBank * 2 + 0] = 0;
- ewram[0x160AC + gActiveBank * 2 + 1] = 0;
- ewram[0x16100 + gActiveBank * 4 + 0] = 0;
- ewram[0x16100 + gActiveBank * 4 + 1] = 0;
- ewram[0x16100 + gActiveBank * 4 + 2] = 0;
- ewram[0x16100 + gActiveBank * 4 + 3] = 0;
- ewram[0x160E8 + gActiveBank * 2 + 0] = 0;
- ewram[0x160E8 + gActiveBank * 2 + 1] = 0;
+ ewram160ACarr2(0, gActiveBank) = 0;
+ ewram160ACarr2(1, gActiveBank) = 0;
+ ewram16100arr2(0, gActiveBank) = 0;
+ ewram16100arr2(1, gActiveBank) = 0;
+ ewram16100arr2(2, gActiveBank) = 0;
+ ewram16100arr2(3, gActiveBank) = 0;
+ ewram160E8arr2(0, gActiveBank) = 0;
+ ewram160E8arr2(1, gActiveBank) = 0;
- ptr2 = (u32 *)(ewram + 0x17100);
- ptr2[gActiveBank] = 0;
+ eFlashFireArr.arr[gActiveBank] = 0;
gCurrentMove = 0;
}
@@ -1760,7 +1708,6 @@ void UndoEffectsAfterFainting(void)
{
s32 i;
u8 *ptr;
- u32 *ptr2;
for (i = 0; i < 8; i++)
gBattleMons[gActiveBank].statStages[i] = 6;
@@ -1772,15 +1719,13 @@ void UndoEffectsAfterFainting(void)
gBattleMons[i].status2 &= ~STATUS2_ESCAPE_PREVENTION;
if (gBattleMons[i].status2 & (gBitTable[gActiveBank] << 16))
gBattleMons[i].status2 &= ~(gBitTable[gActiveBank] << 16);
- if ((gBattleMons[i].status2 & STATUS2_WRAPPED) && ewram[0x16020 + i] == gActiveBank)
+ if ((gBattleMons[i].status2 & STATUS2_WRAPPED) && ewram16020arr(i) == gActiveBank)
gBattleMons[i].status2 &= ~STATUS2_WRAPPED;
}
gActionSelectionCursor[gActiveBank] = 0;
gMoveSelectionCursor[gActiveBank] = 0;
- ptr = (u8 *)&gDisableStructs[gActiveBank];
- for (i = 0; i < (u32)0x1C; i++)
- ptr[i] = 0;
+ MEMSET_ALT(&gDisableStructs[gActiveBank], 0, 0x1C, i, ptr);
gProtectStructs[gActiveBank].protected = 0;
gProtectStructs[gActiveBank].endured = 0;
gProtectStructs[gActiveBank].onlyStruggle = 0;
@@ -1809,17 +1754,16 @@ void UndoEffectsAfterFainting(void)
gUnknown_02024C2C[gActiveBank] = 0;
gUnknown_02024C5C[gActiveBank] = 0xFF;
- ewram[0x160E8 + gActiveBank * 2 + 0] = 0;
- ewram[0x160E8 + gActiveBank * 2 + 1] = 0;
- ewram[0x160AC + gActiveBank * 2 + 0] = 0;
- ewram[0x160AC + gActiveBank * 2 + 1] = 0;
- ewram[0x16100 + gActiveBank * 4 + 0] = 0;
- ewram[0x16100 + gActiveBank * 4 + 1] = 0;
- ewram[0x16100 + gActiveBank * 4 + 2] = 0;
- ewram[0x16100 + gActiveBank * 4 + 3] = 0;
+ ewram160E8arr2(0, gActiveBank) = 0;
+ ewram160E8arr2(1, gActiveBank) = 0;
+ ewram160ACarr2(0, gActiveBank) = 0;
+ ewram160ACarr2(1, gActiveBank) = 0;
+ ewram16100arr2(0, gActiveBank) = 0;
+ ewram16100arr2(1, gActiveBank) = 0;
+ ewram16100arr2(2, gActiveBank) = 0;
+ ewram16100arr2(3, gActiveBank) = 0;
- ptr2 = (u32 *)(ewram + 0x17100);
- ptr2[gActiveBank] = 0;
+ eFlashFireArr.arr[gActiveBank] = 0;
gBattleMons[gActiveBank].type1 = gBaseStats[gBattleMons[gActiveBank].species].type1;
gBattleMons[gActiveBank].type2 = gBaseStats[gBattleMons[gActiveBank].species].type2;
@@ -1873,18 +1817,13 @@ void sub_8011384(void)
if ((gBattleTypeFlags & BATTLE_TYPE_SAFARI)
&& GetBankSide(gActiveBank) == 0)
{
- ptr = (u8 *)&gBattleMons[gActiveBank];
- for (i = 0; i < (u32)0x58; i++)
- ptr[i] = 0;
+ MEMSET_ALT(&gBattleMons[gActiveBank], 0, 0x58, i, ptr);
}
else
{
u8 r0;
- ptr = (u8 *)&gBattleMons[gActiveBank];
- for (i = 0; i < (u32)0x58; i++)
- ptr[i] = gBattleBufferB[gActiveBank][4 + i];
-
+ MEMSET_ALT(&gBattleMons[gActiveBank], gBattleBufferB[gActiveBank][4 + i], 0x58, i, ptr);
gBattleMons[gActiveBank].type1 = gBaseStats[gBattleMons[gActiveBank].species].type1;
gBattleMons[gActiveBank].type2 = gBaseStats[gBattleMons[gActiveBank].species].type2;
gBattleMons[gActiveBank].ability = GetAbilityBySpecies(gBattleMons[gActiveBank].species, gBattleMons[gActiveBank].altAbility);
@@ -1943,11 +1882,7 @@ void bc_801333C(void)
if (gBattleExecBuffer == 0)
{
- struct
- {
- u16 hp;
- u32 status;
- } sp0[6];
+ struct HpAndStatus hpStatus[6];
if (gBattleTypeFlags & BATTLE_TYPE_TRAINER)
{
@@ -1956,17 +1891,17 @@ void bc_801333C(void)
if (GetMonData(&gEnemyParty[i], MON_DATA_SPECIES2) == 0
|| GetMonData(&gEnemyParty[i], MON_DATA_SPECIES2) == SPECIES_EGG)
{
- sp0[i].hp = 0xFFFF;
- sp0[i].status = 0;
+ hpStatus[i].hp = 0xFFFF;
+ hpStatus[i].status = 0;
}
else
{
- sp0[i].hp = GetMonData(&gEnemyParty[i], MON_DATA_HP);
- sp0[i].status = GetMonData(&gEnemyParty[i], MON_DATA_STATUS);
+ hpStatus[i].hp = GetMonData(&gEnemyParty[i], MON_DATA_HP);
+ hpStatus[i].status = GetMonData(&gEnemyParty[i], MON_DATA_STATUS);
}
}
gActiveBank = GetBankByPlayerAI(1);
- Emitcmd48(0, (u8 *)sp0, 0x80);
+ EmitDrawPartyStatusSummary(0, hpStatus, 0x80);
MarkBufferBankForExecution(gActiveBank);
for (i = 0; i < 6; i++)
@@ -1974,17 +1909,17 @@ void bc_801333C(void)
if (GetMonData(&gPlayerParty[i], MON_DATA_SPECIES2) == 0
|| GetMonData(&gPlayerParty[i], MON_DATA_SPECIES2) == SPECIES_EGG)
{
- sp0[i].hp = 0xFFFF;
- sp0[i].status = 0;
+ hpStatus[i].hp = 0xFFFF;
+ hpStatus[i].status = 0;
}
else
{
- sp0[i].hp = GetMonData(&gPlayerParty[i], MON_DATA_HP);
- sp0[i].status = GetMonData(&gPlayerParty[i], MON_DATA_STATUS);
+ hpStatus[i].hp = GetMonData(&gPlayerParty[i], MON_DATA_HP);
+ hpStatus[i].status = GetMonData(&gPlayerParty[i], MON_DATA_STATUS);
}
}
gActiveBank = GetBankByPlayerAI(0);
- Emitcmd48(0, (u8 *)sp0, 0x80);
+ EmitDrawPartyStatusSummary(0, hpStatus, 0x80);
MarkBufferBankForExecution(gActiveBank);
gBattleMainFunc = bc_battle_begin_message;
@@ -1999,13 +1934,13 @@ void bc_801333C(void)
if (GetMonData(&gPlayerParty[i], MON_DATA_SPECIES2) == 0
|| GetMonData(&gPlayerParty[i], MON_DATA_SPECIES2) == SPECIES_EGG)
{
- sp0[i].hp = 0xFFFF;
- sp0[i].status = 0;
+ hpStatus[i].hp = 0xFFFF;
+ hpStatus[i].status = 0;
}
else
{
- sp0[i].hp = GetMonData(&gPlayerParty[i], MON_DATA_HP);
- sp0[i].status = GetMonData(&gPlayerParty[i], MON_DATA_STATUS);
+ hpStatus[i].hp = GetMonData(&gPlayerParty[i], MON_DATA_HP);
+ hpStatus[i].status = GetMonData(&gPlayerParty[i], MON_DATA_STATUS);
}
}
@@ -2189,7 +2124,7 @@ void BattleBeginFirstTurn(void)
;
for (i = 0; i < 4; i++)
{
- ewram[0x16068 + i] = 6;
+ ewram16068arr(i) = 6;
gActionForBanks[i] = 0xFF;
gChosenMovesByBanks[i] = 0;
}
@@ -2281,7 +2216,7 @@ void BattleTurnPassed(void)
gChosenMovesByBanks[i] = 0;
}
for (i = 0; i < 4; i++)
- ewram[0x16068 + i] = 6;
+ ewram16068arr(i) = 6;
ewram160A6 = gAbsentBankFlags;
gBattleMainFunc = sub_8012324;
gRandomTurnNumber = Random();
@@ -2355,23 +2290,23 @@ void sub_8012258(u8 a)
u8 r1;
for (i = 0; i < 3; i++)
- gUnknown_02038470[i] = ewram[0x1606C + i + a * 3];
+ gUnknown_02038470[i] = ewram1606Carr(i, a);
r4 = pokemon_order_func(gBattlePartyID[a]);
- r1 = pokemon_order_func(ewram[0x16068 + a]);
+ r1 = pokemon_order_func(ewram16068arr(a));
sub_8094C98(r4, r1);
if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE)
{
for (i = 0; i < 3; i++)
{
- ewram[0x1606C + i + a * 3] = gUnknown_02038470[i];
- ewram[0x1606C + i + (a ^ 2) * 3] = gUnknown_02038470[i];
+ ewram1606Carr(i, a) = gUnknown_02038470[i];
+ ewram1606Carr(i, (a ^ 2)) = gUnknown_02038470[i];
}
}
else
{
for (i = 0; i < 3; i++)
{
- ewram[0x1606C + i + a * 3] = gUnknown_02038470[i];
+ ewram1606Carr(i, a) = gUnknown_02038470[i];
}
}
}
@@ -2390,7 +2325,7 @@ void sub_8012324(void)
switch (gBattleCommunication[gActiveBank])
{
case 0:
- ewram[0x016068 + gActiveBank] = 6;
+ ewram16068arr(gActiveBank) = 6;
if (!(gBattleTypeFlags & 0x40)
&& (r5 & 2)
&& !(ewram160A6 & gBitTable[GetBankByPlayerAI(r5 ^ 2)])
diff --git a/src/battle/battle_3.c b/src/battle/battle_3.c
index 346ca6d79..f37111af5 100644
--- a/src/battle/battle_3.c
+++ b/src/battle/battle_3.c
@@ -13,6 +13,7 @@
#include "battle_move_effects.h"
#include "string_util.h"
#include "flags.h"
+#include "ewram.h"
extern u8* gBattlescriptCurrInstr;
extern u8 gActiveBank;
@@ -198,8 +199,6 @@ extern u8 gUnknown_081D996F[]; //disobedient, uses a random move
extern u8 gUnknown_081D9989[]; //disobedient, went to sleep
extern u8 gUnknown_081D99A0[]; //disobedient, hits itself
-#define CHOICED_MOVE(bank)(((u16*)(&ewram[bank * 2 + 0x160e8])))
-
//array entries for battle communication
#define MOVE_EFFECT_BYTE 0x3
#define MULTISTRING_CHOOSER 0x5
@@ -722,12 +721,12 @@ u8 TurnBasedEffects(void)
gBattleMons[gActiveBank].status2 -= 0x2000;
if (gBattleMons[gActiveBank].status2 & STATUS2_WRAPPED) // damaged by wrap
{
- BATTLE_STRUCT->animArg1 = ewram[gActiveBank * 2 + 0x16004];
- BATTLE_STRUCT->animArg2 = ewram[gActiveBank * 2 + 0x16005];
+ BATTLE_STRUCT->animArg1 = ewram16004arr(0, gActiveBank);
+ BATTLE_STRUCT->animArg2 = ewram16004arr(1, gActiveBank);
gBattleTextBuff1[0] = 0xFD;
gBattleTextBuff1[1] = 2;
- gBattleTextBuff1[2] = ewram[gActiveBank * 2 + 0x16004];
- gBattleTextBuff1[3] = ewram[gActiveBank * 2 + 0x16005];
+ gBattleTextBuff1[2] = ewram16004arr(0, gActiveBank);
+ gBattleTextBuff1[3] = ewram16004arr(1, gActiveBank);
gBattleTextBuff1[4] = EOS;
gBattlescriptCurrInstr = BattleScript_WrapTurnDmg;
gBattleMoveDamage = gBattleMons[gActiveBank].maxHP / 16;
@@ -738,8 +737,8 @@ u8 TurnBasedEffects(void)
{
gBattleTextBuff1[0] = 0xFD;
gBattleTextBuff1[1] = 2;
- gBattleTextBuff1[2] = ewram[gActiveBank * 2 + 0x16004];
- gBattleTextBuff1[3] = ewram[gActiveBank * 2 + 0x16005];
+ gBattleTextBuff1[2] = ewram16004arr(0, gActiveBank);
+ gBattleTextBuff1[3] = ewram16004arr(1, gActiveBank);
gBattleTextBuff1[4] = EOS;
gBattlescriptCurrInstr = BattleScript_WrapEnds;
}
@@ -1378,7 +1377,7 @@ bool8 sub_8018018(u8 bank, u8 r1, u8 r2)
r2 = gBattlePartyID[r6];
for (i = 0; i < 6; i++)
{
- if (GetMonData(&party[i], MON_DATA_HP) && GetMonData(&party[i], MON_DATA_SPECIES2) && GetMonData(&party[i], MON_DATA_SPECIES2) != SPECIES_EGG && i != r1 && i != r2 && i != ewram[r7 + 0x16068] && i != ewram[r6 + 0x16068])
+ if (GetMonData(&party[i], MON_DATA_HP) && GetMonData(&party[i], MON_DATA_SPECIES2) && GetMonData(&party[i], MON_DATA_SPECIES2) != SPECIES_EGG && i != r1 && i != r2 && i != ewram16068arr(r7) && i != ewram16068arr(r6))
break;
}
return (i == 6);
@@ -1434,13 +1433,6 @@ u8 CastformDataTypeChange(u8 bank)
return formChange;
}
-struct Struct2017100
-{
- u32 arr[4];
-};
-
-#define ewram17100 (*(struct Struct2017100 *)(ewram + 0x17100))
-
u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg)
{
u8 effect = 0;
@@ -1726,14 +1718,14 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg)
case ABILITY_FLASH_FIRE:
if (moveType == TYPE_FIRE && !(gBattleMons[bank].status1 & STATUS_FREEZE))
{
- if (!(ewram17100.arr[bank] & 1))
+ if (!(eFlashFireArr.arr[bank] & 1))
{
gBattleCommunication[MULTISTRING_CHOOSER] = 0;
if (gProtectStructs[gBankAttacker].notFirstStrike)
gBattlescriptCurrInstr = BattleScript_FlashFireBoost;
else
gBattlescriptCurrInstr = BattleScript_FlashFireBoost_PPLoss;
- ewram17100.arr[bank] |= 1;
+ eFlashFireArr.arr[bank] |= 1;
effect = 2;
}
else
@@ -3131,7 +3123,7 @@ u8 GetMoveTarget(u16 move, u8 useMoveTarget) //get move target
targetBank = gBankAttacker;
break;
}
- ewram[gBankAttacker + 0x16010] = targetBank;
+ ewram16010arr(gBankAttacker) = targetBank;
return targetBank;
}
diff --git a/src/battle/battle_4.c b/src/battle/battle_4.c
index a3b7ac41f..6f3be7804 100644
--- a/src/battle/battle_4.c
+++ b/src/battle/battle_4.c
@@ -19,6 +19,7 @@
#include "task.h"
#include "decompress.h"
#include "naming_screen.h"
+#include "ewram.h"
//extern needed variables
extern u8 gCritMultiplier;
@@ -220,18 +221,6 @@ extern u8 gUnknown_081D8C65[];
extern u8 gUnknown_081D9156[];
extern u8 gUnknown_081D9468[];
-
-//useful macros
-//read via orr
-#define BSScriptRead32(ptr) ((ptr)[0] | (ptr)[1] << 8 | (ptr)[2] << 16 | (ptr)[3] << 24)
-#define BSScriptRead8(ptr) (((u8)((ptr)[0])))
-#define BSScriptReadPtr(ptr) ((void *)BSScriptRead32(ptr))
-
-//read via add
-#define BS2ScriptRead32(ptr) ((ptr)[0] + ((ptr)[1] << 8) + ((ptr)[2] << 16) + ((ptr)[3] << 24))
-#define BS2ScriptRead16(ptr) ((ptr)[0] + ((ptr)[1] << 8))
-#define BS2ScriptReadPtr(ptr) ((void *)BS2ScriptRead32(ptr))
-
#define TargetProtectAffected ((gProtectStructs[gBankTarget].protected && gBattleMoves[gCurrentMove].flags & FLAG_PROTECT_AFFECTED))
//array entries for battle communication
@@ -271,14 +260,12 @@ extern u8 gUnknown_081D9468[];
#define sBYTE2_32(value)(( (u8) (((s32)(value) & (0x00FF0000)) >> 0x10)))
#define sBYTE3_32(value)(( (u8) (((s32)(value) & (0xFF000000)) >> 0x18)))
-#define USED_HELD_ITEM(bank)((((u16*)(&unk_2000000[bank * 2 + 0x160cc]))))
-
#define RecordAbilitySetField6(ability, fieldValue) \
(gLastUsedAbility = ability, gBattleCommunication[6] = fieldValue, RecordAbilityBattle(gBankTarget, ability))
#define TARGET_TURN_DAMAGED (((gSpecialStatuses[gBankTarget].moveturnLostHP_physical || gSpecialStatuses[gBankTarget].moveturnLostHP_physical.moveturnLostHP_special)))
-#define HP_ON_SWITCHOUT (((u16*)(0x020160bc)))
+#define HP_ON_SWITCHOUT (((u16*)(ewram_addr + 0x160BC)))
static void atk00_attackcanceler(void);
static void atk01_accuracycheck(void);
@@ -1119,7 +1106,7 @@ static void JumpIfMoveFailed(u8 adder, u16 move)
{
gMoveHitWith[gBankTarget] = 0;
gUnknown_02024C44[gBankTarget] = 0;
- to_store = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ to_store = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
else
{
@@ -1200,13 +1187,13 @@ static bool8 AccuracyCalcHelper(u16 move)
static void atk01_accuracycheck(void)
{
- u16 move = BS2ScriptRead16(gBattlescriptCurrInstr + 5);
+ u16 move = T2_READ_16(gBattlescriptCurrInstr + 5);
if (move == 0xFFFE || move == 0xFFFF)
{
if (gStatuses3[gBankTarget] & STATUS3_ALWAYS_HITS && move == 0xFFFF && gDisableStructs[gBankTarget].bankWithSureHit == gBankAttacker)
gBattlescriptCurrInstr += 7;
else if (gStatuses3[gBankTarget] & (STATUS3_ON_AIR | STATUS3_UNDERGROUND | STATUS3_UNDERWATER))
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
else if (!JumpIfMoveAffectedByProtect(0))
gBattlescriptCurrInstr += 7;
}
@@ -1891,7 +1878,7 @@ static void atk0B_healthbarupdate(void)
if (gBattleMoveFlags & MOVESTATUS_NOEFFECT)
goto END;
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
+ gActiveBank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
if (gBattleMons[gActiveBank].status2 & STATUS2_SUBSTITUTE && gDisableStructs[gActiveBank].substituteHP && !(gHitMarker & HITMARKER_IGNORE_SUBSTITUTE))
{
@@ -1930,7 +1917,7 @@ static void atk0C_datahpupdate(void)
if (!(gBattleMoveFlags & MOVESTATUS_NOEFFECT))
{
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
+ gActiveBank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
if (gBattleMons[gActiveBank].status2 & STATUS2_SUBSTITUTE && gDisableStructs[gActiveBank].substituteHP && !(gHitMarker & HITMARKER_IGNORE_SUBSTITUTE))
{
if (gDisableStructs[gActiveBank].substituteHP >= gBattleMoveDamage)
@@ -1975,7 +1962,7 @@ static void atk0C_datahpupdate(void)
else
{
gTakenDmg[gActiveBank] += gBattleMoveDamage;
- if (BSScriptRead8(gBattlescriptCurrInstr + 1) == 0)
+ if (T2_READ_8(gBattlescriptCurrInstr + 1) == 0)
gTakenDmgBanks[gActiveBank] = gBankAttacker;
else
gTakenDmgBanks[gActiveBank] = gBankTarget;
@@ -1999,7 +1986,7 @@ static void atk0C_datahpupdate(void)
{
gProtectStructs[gActiveBank].physicalDmg = gHP_dealt;
gSpecialStatuses[gActiveBank].moveturnLostHP_physical = gHP_dealt;
- if (BSScriptRead8(gBattlescriptCurrInstr + 1) == 0)
+ if (T2_READ_8(gBattlescriptCurrInstr + 1) == 0)
{
gProtectStructs[gActiveBank].physicalBank = gBankAttacker;
gSpecialStatuses[gActiveBank].moveturnPhysicalBank = gBankAttacker;
@@ -2014,7 +2001,7 @@ static void atk0C_datahpupdate(void)
{
gProtectStructs[gActiveBank].specialDmg = gHP_dealt;
gSpecialStatuses[gActiveBank].moveturnLostHP_special = gHP_dealt;
- if (BSScriptRead8(gBattlescriptCurrInstr + 1) == 0)
+ if (T2_READ_8(gBattlescriptCurrInstr + 1) == 0)
{
gProtectStructs[gActiveBank].specialBank = gBankAttacker;
gSpecialStatuses[gActiveBank].moveturnSpecialBank = gBankAttacker;
@@ -2033,7 +2020,7 @@ static void atk0C_datahpupdate(void)
}
else
{
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
+ gActiveBank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
if (gSpecialStatuses[gActiveBank].moveturnLostHP == 0)
gSpecialStatuses[gActiveBank].moveturnLostHP = 0xFFFF;
}
@@ -2188,7 +2175,7 @@ static void atk10_printstring(void)
{
if (gBattleExecBuffer == 0)
{
- u16 var = BS2ScriptRead16(gBattlescriptCurrInstr + 1);
+ u16 var = T2_READ_16(gBattlescriptCurrInstr + 1);
PrepareStringBattle(var, gBankAttacker);
gBattlescriptCurrInstr += 3;
gBattleCommunication[MSG_DISPLAY] = 1;
@@ -2198,7 +2185,7 @@ static void atk10_printstring(void)
static void atk11_printstring_playeronly(void)
{
gActiveBank = gBankAttacker;
- EmitPrintStringPlayerOnly(0, BS2ScriptRead16(gBattlescriptCurrInstr + 1));
+ EmitPrintStringPlayerOnly(0, T2_READ_16(gBattlescriptCurrInstr + 1));
MarkBufferBankForExecution(gActiveBank);
gBattlescriptCurrInstr += 3;
gBattleCommunication[MSG_DISPLAY] = 1;
@@ -2214,7 +2201,7 @@ static void atk12_waitmessage(void)
}
else
{
- u16 to_wait = BS2ScriptRead16(gBattlescriptCurrInstr + 1);
+ u16 to_wait = T2_READ_16(gBattlescriptCurrInstr + 1);
if (++gPauseCounterBattle >= to_wait)
{
gPauseCounterBattle = 0;
@@ -2229,7 +2216,7 @@ static void atk13_printfromtable(void)
{
if (gBattleExecBuffer == 0)
{
- u16 *ptr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ u16 *ptr = (u16 *)T1_READ_PTR(gBattlescriptCurrInstr + 1);
ptr += gBattleCommunication[MULTISTRING_CHOOSER];
PrepareStringBattle(*(u16*)ptr, gBankAttacker);
gBattlescriptCurrInstr += 5;
@@ -2241,7 +2228,7 @@ static void atk14_printfromtable_playeronly(void)
{
if (gBattleExecBuffer == 0)
{
- u16 *ptr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ u16 *ptr = (u16 *)T1_READ_PTR(gBattlescriptCurrInstr + 1); // FIXME
ptr += gBattleCommunication[MULTISTRING_CHOOSER];
gActiveBank = gBankAttacker;
EmitPrintStringPlayerOnly(0, *(u16*)ptr);
@@ -2652,7 +2639,7 @@ void SetMoveEffect(bool8 primary, u8 certainArg)
{gBattlescriptCurrInstr++; return;}
gLastUsedItem = gBattleMons[gBankTarget].item;
- unk_2000000[gBankAttacker * 2 + 0x160cc] = gLastUsedItem;
+ USED_HELD_ITEM(bank) = gLastUsedItem;
gBattleMons[gBankTarget].item = 0;
gActiveBank = gBankAttacker;
@@ -2666,8 +2653,7 @@ void SetMoveEffect(bool8 primary, u8 certainArg)
b_movescr_stack_push(gBattlescriptCurrInstr + 1);
gBattlescriptCurrInstr = BattleScript_ItemSteal;
- ewram[gBankTarget * 2 + 0x160e8] = 0;
- //STORE_CHOICEMOVE(gBankTarget, 0);
+ CHOICED_MOVE(gBankTarget) = 0;
}
break;
case 32: //escape prevention
@@ -2742,8 +2728,7 @@ void SetMoveEffect(bool8 primary, u8 certainArg)
b_movescr_stack_push(gBattlescriptCurrInstr + 1);
gBattlescriptCurrInstr = BattleScript_KnockedOff;
- ewram[gEffectBank * 2 + 0x160e8] = 0;
- //STORE_CHOICEMOVE(gEffectBank, 0);
+ CHOICED_MOVE(gEffectBank) = 0;
}
break;
case 59: //overheat
@@ -2788,21 +2773,21 @@ void SetMoveEffect(bool8 primary, u8 certainArg)
ands r0, r3\n\
strb r0, [r7, 0x3]\n\
movs r6, 0x40\n\
- ldr r0, _0801E43C @ =0x02000000\n\
+ ldr r0, _0801E43C @ =gSharedMem\n\
ldr r1, _0801E440 @ =gBankTarget\n\
b _0801E450\n\
.align 2, 0\n\
_0801E430: .4byte gBattleCommunication\n\
_0801E434: .4byte gEffectBank\n\
_0801E438: .4byte gBankAttacker\n\
-_0801E43C: .4byte 0x02000000\n\
+_0801E43C: .4byte gSharedMem\n\
_0801E440: .4byte gBankTarget\n\
_0801E444:\n\
ldr r2, _0801E538 @ =gEffectBank\n\
ldr r0, _0801E53C @ =gBankTarget\n\
ldrb r0, [r0]\n\
strb r0, [r2]\n\
- ldr r0, _0801E540 @ =0x02000000\n\
+ ldr r0, _0801E540 @ =gSharedMem\n\
ldr r1, _0801E544 @ =gBankAttacker\n\
_0801E450:\n\
ldrb r1, [r1]\n\
@@ -2926,7 +2911,7 @@ _0801E536:\n\
.align 2, 0\n\
_0801E538: .4byte gEffectBank\n\
_0801E53C: .4byte gBankTarget\n\
-_0801E540: .4byte 0x02000000\n\
+_0801E540: .4byte gSharedMem\n\
_0801E544: .4byte gBankAttacker\n\
_0801E548: .4byte 0x00016003\n\
_0801E54C: .4byte gBattleMons\n\
@@ -3669,7 +3654,7 @@ _0801EAFA:\n\
beq _0801EB14\n\
bl _0801F5FA\n\
_0801EB14:\n\
- ldr r0, _0801EB30 @ =0x02000000\n\
+ ldr r0, _0801EB30 @ =gSharedMem\n\
ldrb r1, [r7, 0x3]\n\
ldr r2, _0801EB34 @ =0x000160ca\n\
adds r0, r2\n\
@@ -3681,7 +3666,7 @@ _0801EB14:\n\
bl _0801F4F2\n\
.align 2, 0\n\
_0801EB2C: .4byte gBattleCommunication\n\
-_0801EB30: .4byte 0x02000000\n\
+_0801EB30: .4byte gSharedMem\n\
_0801EB34: .4byte 0x000160ca\n\
_0801EB38: .4byte gHitMarker\n\
_0801EB3C:\n\
@@ -4090,7 +4075,7 @@ _0801EEE8:\n\
ldr r0, [r2]\n\
orrs r0, r1\n\
str r0, [r2]\n\
- ldr r2, _0801EF80 @ =0x02000000\n\
+ ldr r2, _0801EF80 @ =gSharedMem\n\
mov r3, r8\n\
ldrb r0, [r3]\n\
lsls r0, 1\n\
@@ -4155,7 +4140,7 @@ _0801EF70:\n\
bne _0801EF60\n\
b _0801F5FA\n\
.align 2, 0\n\
-_0801EF80: .4byte 0x02000000\n\
+_0801EF80: .4byte gSharedMem\n\
_0801EF84: .4byte 0x00016004\n\
_0801EF88: .4byte gCurrentMove\n\
_0801EF8C: .4byte 0x00016005\n\
@@ -4212,7 +4197,7 @@ _0801EFEC:\n\
beq _0801F008\n\
b _0801F5DC\n\
_0801F008:\n\
- ldr r2, _0801F02C @ =0x02000000\n\
+ ldr r2, _0801F02C @ =gSharedMem\n\
ldrb r1, [r7, 0x3]\n\
movs r0, 0x3F\n\
ands r0, r1\n\
@@ -4229,7 +4214,7 @@ _0801F008:\n\
ldr r0, _0801F03C @ =BattleScript_StatUp\n\
b _0801F5F8\n\
.align 2, 0\n\
-_0801F02C: .4byte 0x02000000\n\
+_0801F02C: .4byte gSharedMem\n\
_0801F030: .4byte 0x000160a4\n\
_0801F034: .4byte 0x000160a5\n\
_0801F038: .4byte gBattlescriptCurrInstr\n\
@@ -4250,7 +4235,7 @@ _0801F040:\n\
beq _0801F05E\n\
b _0801F5DC\n\
_0801F05E:\n\
- ldr r2, _0801F080 @ =0x02000000\n\
+ ldr r2, _0801F080 @ =gSharedMem\n\
ldrb r1, [r7, 0x3]\n\
movs r0, 0x3F\n\
ands r0, r1\n\
@@ -4267,7 +4252,7 @@ _0801F05E:\n\
ldr r0, _0801F090 @ =BattleScript_StatDown\n\
b _0801F5F8\n\
.align 2, 0\n\
-_0801F080: .4byte 0x02000000\n\
+_0801F080: .4byte gSharedMem\n\
_0801F084: .4byte 0x000160a4\n\
_0801F088: .4byte 0x000160a5\n\
_0801F08C: .4byte gBattlescriptCurrInstr\n\
@@ -4287,7 +4272,7 @@ _0801F094:\n\
beq _0801F0B0\n\
b _0801F5DC\n\
_0801F0B0:\n\
- ldr r2, _0801F0D4 @ =0x02000000\n\
+ ldr r2, _0801F0D4 @ =gSharedMem\n\
ldrb r1, [r7, 0x3]\n\
movs r0, 0x3F\n\
ands r0, r1\n\
@@ -4304,7 +4289,7 @@ _0801F0B0:\n\
ldr r0, _0801F0E4 @ =BattleScript_StatUp\n\
b _0801F5F8\n\
.align 2, 0\n\
-_0801F0D4: .4byte 0x02000000\n\
+_0801F0D4: .4byte gSharedMem\n\
_0801F0D8: .4byte 0x000160a4\n\
_0801F0DC: .4byte 0x000160a5\n\
_0801F0E0: .4byte gBattlescriptCurrInstr\n\
@@ -4325,7 +4310,7 @@ _0801F0E8:\n\
beq _0801F106\n\
b _0801F5DC\n\
_0801F106:\n\
- ldr r2, _0801F128 @ =0x02000000\n\
+ ldr r2, _0801F128 @ =gSharedMem\n\
ldrb r1, [r7, 0x3]\n\
movs r0, 0x3F\n\
ands r0, r1\n\
@@ -4342,7 +4327,7 @@ _0801F106:\n\
ldr r0, _0801F138 @ =BattleScript_StatDown\n\
b _0801F5F8\n\
.align 2, 0\n\
-_0801F128: .4byte 0x02000000\n\
+_0801F128: .4byte gSharedMem\n\
_0801F12C: .4byte 0x000160a4\n\
_0801F130: .4byte 0x000160a5\n\
_0801F134: .4byte gBattlescriptCurrInstr\n\
@@ -4530,7 +4515,7 @@ _0801F2B0:\n\
b _0801F5DC\n\
_0801F2B6:\n\
lsls r0, r1, 1\n\
- ldr r5, _0801F344 @ =0x020160f0\n\
+ ldr r5, _0801F344 @ =gSharedMem + 0x160F0\n\
adds r0, r5\n\
ldr r1, _0801F348 @ =gLastUsedItem\n\
strh r2, [r0]\n\
@@ -4595,7 +4580,7 @@ _0801F2B6:\n\
b _0801F5FA\n\
.align 2, 0\n\
_0801F340: .4byte gBankAttacker\n\
-_0801F344: .4byte 0x020160f0\n\
+_0801F344: .4byte gSharedMem + 0x160F0\n\
_0801F348: .4byte gLastUsedItem\n\
_0801F34C: .4byte gActiveBank\n\
_0801F350: .4byte gBattlescriptCurrInstr\n\
@@ -4866,7 +4851,7 @@ _0801F540:\n\
bl b_movescr_stack_push\n\
ldr r0, _0801F5CC @ =BattleScript_KnockedOff\n\
str r0, [r4]\n\
- ldr r1, _0801F5D0 @ =0x02000000\n\
+ ldr r1, _0801F5D0 @ =gSharedMem\n\
mov r2, r8\n\
ldrb r0, [r2]\n\
lsls r0, 1\n\
@@ -4888,7 +4873,7 @@ _0801F5C0: .4byte gBitTable\n\
_0801F5C4: .4byte gBattlePartyID\n\
_0801F5C8: .4byte gBattlescriptCurrInstr\n\
_0801F5CC: .4byte BattleScript_KnockedOff\n\
-_0801F5D0: .4byte 0x02000000\n\
+_0801F5D0: .4byte gSharedMem\n\
_0801F5D4: .4byte 0x000160e8\n\
_0801F5D8: .4byte 0x000160e9\n\
_0801F5DC:\n\
@@ -4961,7 +4946,7 @@ static void atk17_seteffectsecondary(void)
static void atk18_status_effect_clear(void)
{
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
+ gActiveBank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
if (gBattleCommunication[MOVE_EFFECT_BYTE] <= 6)
gBattleMons[gActiveBank].status1 &= (~gStatusFlagsForMoveEffects[gBattleCommunication[MOVE_EFFECT_BYTE]]);
else
@@ -4981,7 +4966,7 @@ static void atk19_faint_pokemon(void)
gActiveBank = GetBattleBank(gBattlescriptCurrInstr[1]);
if (gHitMarker & HITMARKER_FAINTED(gActiveBank))
{
- r4 = BSScriptReadPtr(gBattlescriptCurrInstr + 3);
+ r4 = T1_READ_PTR(gBattlescriptCurrInstr + 3);
b_movescr_stack_pop_cursor();
gBattlescriptCurrInstr = r4;
@@ -5011,12 +4996,12 @@ static void atk19_faint_pokemon(void)
if (!(gAbsentBankFlags & gBitTable[gActiveBank])
&& gBattleMons[gActiveBank].hp == 0)
{
- ewram[0x160AC + bank * 2 + 0] = 0;
- ewram[0x160AC + bank * 2 + 1] = 0;
- ewram[0x16100 + bank * 4 + 0] = 0;
- ewram[0x16100 + bank * 4 + 1] = 0;
- ewram[0x16100 + bank * 4 + 2] = 0;
- ewram[0x16100 + bank * 4 + 3] = 0;
+ ewram160ACarr2(0, bank) = 0;
+ ewram160ACarr2(1, bank) = 0;
+ ewram16100arr2(0, bank) = 0;
+ ewram16100arr2(1, bank) = 0;
+ ewram16100arr2(2, bank) = 0;
+ ewram16100arr2(3, bank) = 0;
gHitMarker |= HITMARKER_FAINTED(gActiveBank);
b_movescr_stack_push(gBattlescriptCurrInstr + 7);
@@ -5052,7 +5037,7 @@ static void atk19_faint_pokemon(void)
&& gBattleMons[gBankAttacker].hp != 0
&& gCurrentMove != MOVE_STRUGGLE)
{
- u8 moveIndex = ewram[0x1608C + gBankAttacker];
+ u8 moveIndex = ewram1608Carr(gBankAttacker);
gBattleMons[gBankAttacker].pp[moveIndex] = 0;
b_movescr_stack_push(gBattlescriptCurrInstr);
@@ -5079,7 +5064,7 @@ static void atk1A_faint_animation(void)
{
if (gBattleExecBuffer == 0)
{
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
+ gActiveBank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
Emitcmd10(0);
MarkBufferBankForExecution(gActiveBank);
gBattlescriptCurrInstr += 2;
@@ -5091,7 +5076,7 @@ static void atk1B_faint_effects_clear(void)
//Clears things like attraction or trapping to other banks
if (gBattleExecBuffer == 0)
{
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
+ gActiveBank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
gBattleMons[gActiveBank].status1 = 0;
EmitSetAttributes(0, REQUEST_STATUS_BATTLE, 0, 0x4, &gBattleMons[gActiveBank].status1);
MarkBufferBankForExecution(gActiveBank);
@@ -5102,9 +5087,9 @@ static void atk1B_faint_effects_clear(void)
static void atk1C_jumpifstatus(void)
{
- u8 bank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
- u32 flags = BS2ScriptRead32(gBattlescriptCurrInstr + 2);
- void* jump_loc = BS2ScriptReadPtr(gBattlescriptCurrInstr + 6);
+ u8 bank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
+ u32 flags = T2_READ_32(gBattlescriptCurrInstr + 2);
+ void* jump_loc = T2_READ_PTR(gBattlescriptCurrInstr + 6);
if (gBattleMons[bank].status1 & flags && gBattleMons[bank].hp)
gBattlescriptCurrInstr = jump_loc;
else
@@ -5113,9 +5098,9 @@ static void atk1C_jumpifstatus(void)
static void atk1D_jumpifstatus2(void)
{
- u8 bank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
- u32 flags = BS2ScriptRead32(gBattlescriptCurrInstr + 2);
- void* jump_loc = BS2ScriptReadPtr(gBattlescriptCurrInstr + 6);
+ u8 bank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
+ u32 flags = T2_READ_32(gBattlescriptCurrInstr + 2);
+ void* jump_loc = T2_READ_PTR(gBattlescriptCurrInstr + 6);
if (gBattleMons[bank].status2 & flags && gBattleMons[bank].hp)
gBattlescriptCurrInstr = jump_loc;
else
@@ -5125,9 +5110,9 @@ static void atk1D_jumpifstatus2(void)
static void atk1E_jumpifability(void)
{
u8 bank;
- u8 ability = BSScriptRead8(gBattlescriptCurrInstr + 2);
- void* jump_loc = BS2ScriptReadPtr(gBattlescriptCurrInstr + 3);
- if (BSScriptRead8(gBattlescriptCurrInstr + 1) == 8)
+ u8 ability = T2_READ_8(gBattlescriptCurrInstr + 2);
+ void* jump_loc = T2_READ_PTR(gBattlescriptCurrInstr + 3);
+ if (T2_READ_8(gBattlescriptCurrInstr + 1) == 8)
{
bank = AbilityBattleEffects(ABILITYEFFECT_CHECK_BANK_SIDE, gBankAttacker, ability, 0, 0);
if (bank)
@@ -5135,12 +5120,12 @@ static void atk1E_jumpifability(void)
gLastUsedAbility = ability;
gBattlescriptCurrInstr = jump_loc;
RecordAbilityBattle(bank -1, gLastUsedAbility);
- unk_2000000[0x160f8] = bank - 1;
+ ewram160F8 = bank - 1;
}
else
gBattlescriptCurrInstr += 7;
}
- else if (BSScriptRead8(gBattlescriptCurrInstr + 1) == 9)
+ else if (T2_READ_8(gBattlescriptCurrInstr + 1) == 9)
{
bank = AbilityBattleEffects(ABILITYEFFECT_CHECK_OTHER_SIDE, gBankAttacker, ability, 0, 0);
if (bank)
@@ -5148,20 +5133,20 @@ static void atk1E_jumpifability(void)
gLastUsedAbility = ability;
gBattlescriptCurrInstr = jump_loc;
RecordAbilityBattle(bank - 1, gLastUsedAbility);
- unk_2000000[0x160f8] = bank - 1;
+ ewram160F8 = bank - 1;
}
else
gBattlescriptCurrInstr += 7;
}
else
{
- bank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
+ bank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
if (gBattleMons[bank].ability == ability)
{
gLastUsedAbility = ability;
gBattlescriptCurrInstr = jump_loc;
RecordAbilityBattle(bank, gLastUsedAbility);
- unk_2000000[0x160f8] = bank;
+ ewram160F8 = bank;
}
else
gBattlescriptCurrInstr += 7;
@@ -5173,13 +5158,13 @@ static void atk1F_jumpifsideaffecting(void)
u8 side;
u16 flags;
void* jump_loc;
- if (BSScriptRead8(gBattlescriptCurrInstr + 1) == 1)
+ if (T2_READ_8(gBattlescriptCurrInstr + 1) == 1)
side = GetBankIdentity(gBankAttacker) & 1;
else
side = GetBankIdentity(gBankTarget) & 1;
- flags = BS2ScriptRead16(gBattlescriptCurrInstr + 2);
- jump_loc = BS2ScriptReadPtr(gBattlescriptCurrInstr + 4);
+ flags = T2_READ_16(gBattlescriptCurrInstr + 2);
+ jump_loc = T2_READ_PTR(gBattlescriptCurrInstr + 4);
if (gSideAffecting[side] & flags)
gBattlescriptCurrInstr = jump_loc;
@@ -5190,37 +5175,37 @@ static void atk1F_jumpifsideaffecting(void)
static void atk20_jumpifstat(void)
{
u8 ret = 0;
- u8 bank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
- u8 value = gBattleMons[bank].statStages[BSScriptRead8(gBattlescriptCurrInstr + 3)];
- switch (BSScriptRead8(gBattlescriptCurrInstr + 2))
+ u8 bank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
+ u8 value = gBattleMons[bank].statStages[T2_READ_8(gBattlescriptCurrInstr + 3)];
+ switch (T2_READ_8(gBattlescriptCurrInstr + 2))
{
case CMP_EQUAL:
- if (value == BSScriptRead8(gBattlescriptCurrInstr + 4))
+ if (value == T2_READ_8(gBattlescriptCurrInstr + 4))
ret++;
break;
case CMP_NOT_EQUAL:
- if (value != BSScriptRead8(gBattlescriptCurrInstr + 4))
+ if (value != T2_READ_8(gBattlescriptCurrInstr + 4))
ret++;
break;
case CMP_GREATER_THAN:
- if (value > BSScriptRead8(gBattlescriptCurrInstr + 4))
+ if (value > T2_READ_8(gBattlescriptCurrInstr + 4))
ret++;
break;
case CMP_LESS_THAN:
- if (value < BSScriptRead8(gBattlescriptCurrInstr + 4))
+ if (value < T2_READ_8(gBattlescriptCurrInstr + 4))
ret++;
break;
case CMP_COMMON_BITS:
- if (value & BSScriptRead8(gBattlescriptCurrInstr + 4))
+ if (value & T2_READ_8(gBattlescriptCurrInstr + 4))
ret++;
break;
case CMP_NO_COMMON_BITS:
- if (!(value & BSScriptRead8(gBattlescriptCurrInstr + 4)))
+ if (!(value & T2_READ_8(gBattlescriptCurrInstr + 4)))
ret++;
break;
}
if (ret)
- gBattlescriptCurrInstr = BS2ScriptReadPtr(gBattlescriptCurrInstr + 5);
+ gBattlescriptCurrInstr = T2_READ_PTR(gBattlescriptCurrInstr + 5);
else
gBattlescriptCurrInstr += 9;
}
@@ -5230,10 +5215,10 @@ static void atk21_jumpifstatus3(void)
u32 flags;
void* jump_loc;
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
- flags = BS2ScriptRead32(gBattlescriptCurrInstr + 2);
- jump_loc = BS2ScriptReadPtr(gBattlescriptCurrInstr + 7);
- if (BSScriptRead8(gBattlescriptCurrInstr + 6))
+ gActiveBank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
+ flags = T2_READ_32(gBattlescriptCurrInstr + 2);
+ jump_loc = T2_READ_PTR(gBattlescriptCurrInstr + 7);
+ if (T2_READ_8(gBattlescriptCurrInstr + 6))
{
if ((gStatuses3[gActiveBank] & flags) != 0)
gBattlescriptCurrInstr += 11;
@@ -5251,9 +5236,9 @@ static void atk21_jumpifstatus3(void)
static void atk22_jumpiftype(void) //u8 bank, u8 type, *ptr
{
- u8 bank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
- u8 type = BSScriptRead8(gBattlescriptCurrInstr + 2);
- void* jump_loc = BS2ScriptReadPtr(gBattlescriptCurrInstr + 3);
+ u8 bank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
+ u8 type = T2_READ_8(gBattlescriptCurrInstr + 2);
+ void* jump_loc = T2_READ_PTR(gBattlescriptCurrInstr + 3);
if (gBattleMons[bank].type1 == type || gBattleMons[bank].type2 == type)
gBattlescriptCurrInstr = jump_loc;
@@ -5268,7 +5253,7 @@ static void atk23_getexp(void)
u8 hold_effect;
int via_expshare = 0, sent_in;
u16* exp = &BATTLE_STRUCT->exp;
- gBank1 = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
+ gBank1 = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
sent_in = gSentPokesToOpponent[(gBank1 & 2) >> 1];
switch (BATTLE_STRUCT->atk23StateTracker)
{
@@ -5555,7 +5540,7 @@ static void atk23_getexp(void)
mov r5, r8\n\
push {r5-r7}\n\
movs r6, 0\n\
- ldr r0, _0802004C @ =0x0201605c\n\
+ ldr r0, _0802004C @ =gSharedMem + 0x1605C\n\
mov r10, r0\n\
ldr r0, _08020050 @ =gBattlescriptCurrInstr\n\
ldr r0, [r0]\n\
@@ -5584,7 +5569,7 @@ _08020040:\n\
ldr r0, [r0]\n\
mov pc, r0\n\
.align 2, 0\n\
-_0802004C: .4byte 0x0201605c\n\
+_0802004C: .4byte gSharedMem + 0x1605C\n\
_08020050: .4byte gBattlescriptCurrInstr\n\
_08020054: .4byte gBank1\n\
_08020058: .4byte gSentPokesToOpponent\n\
@@ -5613,7 +5598,7 @@ _0802007C:\n\
cmp r0, 0\n\
beq _080200BC\n\
_08020098:\n\
- ldr r0, _080200B4 @ =0x02000000\n\
+ ldr r0, _080200B4 @ =gSharedMem\n\
ldr r1, _080200B8 @ =0x0001600f\n\
adds r0, r1\n\
movs r1, 0x6\n\
@@ -5623,10 +5608,10 @@ _08020098:\n\
_080200A8: .4byte gBank1\n\
_080200AC: .4byte gBattleTypeFlags\n\
_080200B0: .4byte 0x00000982\n\
-_080200B4: .4byte 0x02000000\n\
+_080200B4: .4byte gSharedMem\n\
_080200B8: .4byte 0x0001600f\n\
_080200BC:\n\
- ldr r2, _080200E8 @ =0x02000000\n\
+ ldr r2, _080200E8 @ =gSharedMem\n\
ldr r3, _080200EC @ =0x0001600f\n\
adds r1, r2, r3\n\
ldrb r0, [r1]\n\
@@ -5648,7 +5633,7 @@ _080200BC:\n\
strb r0, [r2]\n\
bl _08020996\n\
.align 2, 0\n\
-_080200E8: .4byte 0x02000000\n\
+_080200E8: .4byte gSharedMem\n\
_080200EC: .4byte 0x0001600f\n\
_080200F0: .4byte 0x00016113\n\
_080200F4: .4byte gBitTable\n\
@@ -5775,7 +5760,7 @@ _080201F6:\n\
ldr r0, _08020248 @ =gExpShareExp\n\
strh r6, [r0]\n\
_080201FA:\n\
- ldr r1, _0802024C @ =0x02000000\n\
+ ldr r1, _0802024C @ =gSharedMem\n\
ldr r3, _08020250 @ =0x0001600f\n\
adds r2, r1, r3\n\
ldrb r0, [r2]\n\
@@ -5796,7 +5781,7 @@ _08020216:\n\
beq _08020220\n\
b _08020996\n\
_08020220:\n\
- ldr r0, _0802024C @ =0x02000000\n\
+ ldr r0, _0802024C @ =gSharedMem\n\
ldr r1, _08020254 @ =0x00016018\n\
adds r0, r1\n\
ldrb r1, [r0]\n\
@@ -5817,7 +5802,7 @@ _08020220:\n\
b _08020274\n\
.align 2, 0\n\
_08020248: .4byte gExpShareExp\n\
-_0802024C: .4byte 0x02000000\n\
+_0802024C: .4byte gSharedMem\n\
_08020250: .4byte 0x0001600f\n\
_08020254: .4byte 0x00016018\n\
_08020258: .4byte 0x0001605f\n\
@@ -5830,7 +5815,7 @@ _0802026C:\n\
lsls r0, 24\n\
lsrs r4, r0, 24\n\
_08020274:\n\
- ldr r5, _08020294 @ =0x02000000\n\
+ ldr r5, _08020294 @ =gSharedMem\n\
cmp r4, 0x19\n\
beq _080202A0\n\
ldr r3, _08020298 @ =0x0001605f\n\
@@ -5846,7 +5831,7 @@ _08020274:\n\
adds r1, r5, r0\n\
b _080202C8\n\
.align 2, 0\n\
-_08020294: .4byte 0x02000000\n\
+_08020294: .4byte gSharedMem\n\
_08020298: .4byte 0x0001605f\n\
_0802029C: .4byte 0x0001600f\n\
_080202A0:\n\
@@ -5904,7 +5889,7 @@ _080202E8:\n\
adds r0, 0x1\n\
strb r0, [r5]\n\
_08020316:\n\
- ldr r5, _0802035C @ =0x02000000\n\
+ ldr r5, _0802035C @ =gSharedMem\n\
ldr r1, _08020360 @ =0x00016018\n\
adds r0, r5, r1\n\
ldrb r1, [r0]\n\
@@ -5936,7 +5921,7 @@ _0802034C: .4byte gBattleTypeFlags\n\
_08020350: .4byte gBattleMons\n\
_08020354: .4byte 0x0001601b\n\
_08020358: .4byte 0x00000161\n\
-_0802035C: .4byte 0x02000000\n\
+_0802035C: .4byte gSharedMem\n\
_08020360: .4byte 0x00016018\n\
_08020364: .4byte gPlayerParty\n\
_08020368: .4byte 0x0001605f\n\
@@ -5980,7 +5965,7 @@ _0802039C:\n\
bl __divsi3\n\
str r0, [r4]\n\
_080203B8:\n\
- ldr r0, _080203F8 @ =0x02000000\n\
+ ldr r0, _080203F8 @ =gSharedMem\n\
ldr r2, _080203FC @ =0x00016018\n\
adds r0, r2\n\
ldrb r1, [r0]\n\
@@ -6007,7 +5992,7 @@ _080203B8:\n\
_080203EC: .4byte gBattleMoveDamage\n\
_080203F0: .4byte gExpShareExp\n\
_080203F4: .4byte gBattleTypeFlags\n\
-_080203F8: .4byte 0x02000000\n\
+_080203F8: .4byte gSharedMem\n\
_080203FC: .4byte 0x00016018\n\
_08020400: .4byte gPlayerParty\n\
_08020404:\n\
@@ -6022,7 +6007,7 @@ _0802040A:\n\
cmp r1, 0\n\
beq _08020488\n\
ldr r1, _08020448 @ =gBattlePartyID\n\
- ldr r0, _0802044C @ =0x02000000\n\
+ ldr r0, _0802044C @ =gSharedMem\n\
ldr r3, _08020450 @ =0x00016018\n\
adds r2, r0, r3\n\
ldrh r1, [r1, 0x4]\n\
@@ -6045,7 +6030,7 @@ _0802043C: .4byte 0x00000149\n\
_08020440: .4byte gBattleMoveDamage\n\
_08020444: .4byte gBattleTypeFlags\n\
_08020448: .4byte gBattlePartyID\n\
-_0802044C: .4byte 0x02000000\n\
+_0802044C: .4byte gSharedMem\n\
_08020450: .4byte 0x00016018\n\
_08020454: .4byte gBitTable\n\
_08020458: .4byte gAbsentBankFlags\n\
@@ -6072,7 +6057,7 @@ _0802047C:\n\
.align 2, 0\n\
_08020484: .4byte 0x000160a2\n\
_08020488:\n\
- ldr r0, _08020530 @ =0x02000000\n\
+ ldr r0, _08020530 @ =gSharedMem\n\
ldr r3, _08020534 @ =0x000160a2\n\
adds r0, r3\n\
strb r1, [r0]\n\
@@ -6083,7 +6068,7 @@ _08020490:\n\
strb r2, [r1]\n\
movs r5, 0x4\n\
strb r5, [r1, 0x1]\n\
- ldr r4, _08020530 @ =0x02000000\n\
+ ldr r4, _08020530 @ =gSharedMem\n\
ldr r0, _08020534 @ =0x000160a2\n\
adds r6, r4, r0\n\
ldrb r0, [r6]\n\
@@ -6147,7 +6132,7 @@ _08020490:\n\
ldrh r1, [r1]\n\
bl MonGainEVs\n\
_0802051E:\n\
- ldr r1, _08020530 @ =0x02000000\n\
+ ldr r1, _08020530 @ =gSharedMem\n\
ldr r3, _08020554 @ =0x0001605f\n\
adds r2, r1, r3\n\
ldrb r0, [r2]\n\
@@ -6157,7 +6142,7 @@ _0802051E:\n\
adds r1, r0\n\
b _08020618\n\
.align 2, 0\n\
-_08020530: .4byte 0x02000000\n\
+_08020530: .4byte gSharedMem\n\
_08020534: .4byte 0x000160a2\n\
_08020538: .4byte gBattleTextBuff1\n\
_0802053C: .4byte 0x00016018\n\
@@ -6176,7 +6161,7 @@ _0802055C:\n\
b _08020996\n\
_08020566:\n\
ldr r1, _08020624 @ =gBattleBufferB\n\
- ldr r4, _08020628 @ =0x02000000\n\
+ ldr r4, _08020628 @ =gSharedMem\n\
ldr r3, _0802062C @ =0x000160a2\n\
adds r3, r4\n\
mov r8, r3\n\
@@ -6252,7 +6237,7 @@ _08020566:\n\
ldrb r0, [r4]\n\
bl MarkBufferBankForExecution\n\
_08020612:\n\
- ldr r1, _08020628 @ =0x02000000\n\
+ ldr r1, _08020628 @ =gSharedMem\n\
ldr r3, _08020644 @ =0x0001600f\n\
adds r1, r3\n\
_08020618:\n\
@@ -6263,7 +6248,7 @@ _08020618:\n\
.align 2, 0\n\
_08020620: .4byte gBattleExecBuffer\n\
_08020624: .4byte gBattleBufferB\n\
-_08020628: .4byte 0x02000000\n\
+_08020628: .4byte gSharedMem\n\
_0802062C: .4byte 0x000160a2\n\
_08020630: .4byte 0x00016018\n\
_08020634: .4byte gPlayerParty\n\
@@ -6279,7 +6264,7 @@ _08020648:\n\
b _08020996\n\
_08020652:\n\
ldr r1, _080208B0 @ =gActiveBank\n\
- ldr r4, _080208B4 @ =0x02000000\n\
+ ldr r4, _080208B4 @ =gSharedMem\n\
ldr r2, _080208B8 @ =0x000160a2\n\
adds r0, r4, r2\n\
ldrb r0, [r0]\n\
@@ -6331,7 +6316,7 @@ _080206A8:\n\
ldr r5, _080208B0 @ =gActiveBank\n\
ldrb r0, [r5]\n\
strb r0, [r1, 0x2]\n\
- ldr r0, _080208B4 @ =0x02000000\n\
+ ldr r0, _080208B4 @ =gSharedMem\n\
ldr r3, _080208C8 @ =0x00016018\n\
adds r6, r0, r3\n\
ldrb r0, [r6]\n\
@@ -6475,7 +6460,7 @@ _080206A8:\n\
strh r0, [r4, 0xA]\n\
_080207EC:\n\
ldr r0, _080208C4 @ =gBattlePartyID\n\
- ldr r1, _080208B4 @ =0x02000000\n\
+ ldr r1, _080208B4 @ =gSharedMem\n\
ldr r3, _080208C8 @ =0x00016018\n\
adds r7, r1, r3\n\
ldrb r2, [r7]\n\
@@ -6564,7 +6549,7 @@ _080207EC:\n\
.align 2, 0\n\
_080208AC: .4byte gBattleExecBuffer\n\
_080208B0: .4byte gActiveBank\n\
-_080208B4: .4byte 0x02000000\n\
+_080208B4: .4byte gSharedMem\n\
_080208B8: .4byte 0x000160a2\n\
_080208BC: .4byte gBattleBufferB\n\
_080208C0: .4byte gBattleTypeFlags\n\
@@ -6584,7 +6569,7 @@ _080208F0:\n\
movs r0, 0\n\
str r0, [r1]\n\
_080208F6:\n\
- ldr r0, _08020908 @ =0x02000000\n\
+ ldr r0, _08020908 @ =gSharedMem\n\
ldr r1, _0802090C @ =0x0001600f\n\
adds r0, r1\n\
movs r1, 0x5\n\
@@ -6592,14 +6577,14 @@ _080208F6:\n\
b _08020996\n\
.align 2, 0\n\
_08020904: .4byte gBattleMoveDamage\n\
-_08020908: .4byte 0x02000000\n\
+_08020908: .4byte gSharedMem\n\
_0802090C: .4byte 0x0001600f\n\
_08020910:\n\
ldr r0, _08020924 @ =gBattleMoveDamage\n\
ldr r0, [r0]\n\
cmp r0, 0\n\
beq _08020930\n\
- ldr r0, _08020928 @ =0x02000000\n\
+ ldr r0, _08020928 @ =gSharedMem\n\
ldr r2, _0802092C @ =0x0001600f\n\
adds r0, r2\n\
movs r1, 0x3\n\
@@ -6607,10 +6592,10 @@ _08020910:\n\
b _08020996\n\
.align 2, 0\n\
_08020924: .4byte gBattleMoveDamage\n\
-_08020928: .4byte 0x02000000\n\
+_08020928: .4byte gSharedMem\n\
_0802092C: .4byte 0x0001600f\n\
_08020930:\n\
- ldr r2, _08020950 @ =0x02000000\n\
+ ldr r2, _08020950 @ =gSharedMem\n\
ldr r3, _08020954 @ =0x00016018\n\
adds r1, r2, r3\n\
ldrb r0, [r1]\n\
@@ -6626,7 +6611,7 @@ _08020930:\n\
strb r0, [r1]\n\
b _08020996\n\
.align 2, 0\n\
-_08020950: .4byte 0x02000000\n\
+_08020950: .4byte gSharedMem\n\
_08020954: .4byte 0x00016018\n\
_08020958: .4byte 0x0001600f\n\
_0802095C:\n\
@@ -6724,14 +6709,14 @@ static void atk24(void)
if (gBattleTypeFlags & BATTLE_TYPE_MULTI)
{
if (found2 + found1 > 1)
- gBattlescriptCurrInstr = BS2ScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T2_READ_PTR(gBattlescriptCurrInstr + 1);
else
gBattlescriptCurrInstr += 5;
}
else
{
if (found2 != 0 && found1 != 0)
- gBattlescriptCurrInstr = BS2ScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T2_READ_PTR(gBattlescriptCurrInstr + 1);
else
gBattlescriptCurrInstr += 5;
}
@@ -6979,7 +6964,7 @@ static void atk25_move_values_cleanup(void)
static void atk26_set_multihit(void)
{
- gMultiHitCounter = BSScriptRead8(gBattlescriptCurrInstr + 1);
+ gMultiHitCounter = T2_READ_8(gBattlescriptCurrInstr + 1);
gBattlescriptCurrInstr += 2;
}
@@ -6988,20 +6973,20 @@ static void atk27_decrement_multihit(void)
if (--gMultiHitCounter == 0)
gBattlescriptCurrInstr += 5;
else
- gBattlescriptCurrInstr = BS2ScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T2_READ_PTR(gBattlescriptCurrInstr + 1);
}
static void atk28_goto(void)
{
- gBattlescriptCurrInstr = BS2ScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T2_READ_PTR(gBattlescriptCurrInstr + 1);
}
static void atk29_jumpifbyte(void)
{
- u8 caseID = BSScriptRead8(gBattlescriptCurrInstr + 1);
- u8* ptr = BS2ScriptReadPtr(gBattlescriptCurrInstr + 2);
- u8 value = BSScriptRead8(gBattlescriptCurrInstr + 6);
- u8* jump_loc = BS2ScriptReadPtr(gBattlescriptCurrInstr + 7);
+ u8 caseID = T2_READ_8(gBattlescriptCurrInstr + 1);
+ u8* ptr = T2_READ_PTR(gBattlescriptCurrInstr + 2);
+ u8 value = T2_READ_8(gBattlescriptCurrInstr + 6);
+ u8* jump_loc = T2_READ_PTR(gBattlescriptCurrInstr + 7);
gBattlescriptCurrInstr += 11;
switch (caseID)
{
@@ -7034,10 +7019,10 @@ static void atk29_jumpifbyte(void)
static void atk2A_jumpifhalfword(void)
{
- u8 caseID = BSScriptRead8(gBattlescriptCurrInstr + 1);
- u16* ptr = BS2ScriptReadPtr(gBattlescriptCurrInstr + 2);
- u16 value = BS2ScriptRead16(gBattlescriptCurrInstr + 6);
- u8* jump_loc = BS2ScriptReadPtr(gBattlescriptCurrInstr + 8);
+ u8 caseID = T2_READ_8(gBattlescriptCurrInstr + 1);
+ u16* ptr = T2_READ_PTR(gBattlescriptCurrInstr + 2);
+ u16 value = T2_READ_16(gBattlescriptCurrInstr + 6);
+ u8* jump_loc = T2_READ_PTR(gBattlescriptCurrInstr + 8);
gBattlescriptCurrInstr += 12;
switch (caseID)
{
@@ -7068,12 +7053,13 @@ static void atk2A_jumpifhalfword(void)
}
}
+// Strange that there's an instance of T1_READ_32 in what seems to be a T2 function. see global.h for the distinction.
static void atk2B_jumpifword(void)
{
- u8 caseID = BSScriptRead8(gBattlescriptCurrInstr + 1);
- u32* ptr = BS2ScriptReadPtr(gBattlescriptCurrInstr + 2);
- u32 value = BSScriptRead32(gBattlescriptCurrInstr + 6);
- u8* jump_loc = BS2ScriptReadPtr(gBattlescriptCurrInstr + 10);
+ u8 caseID = T2_READ_8(gBattlescriptCurrInstr + 1);
+ u32* ptr = T2_READ_PTR(gBattlescriptCurrInstr + 2);
+ u32 value = T1_READ_32(gBattlescriptCurrInstr + 6);
+ u8* jump_loc = T2_READ_PTR(gBattlescriptCurrInstr + 10);
gBattlescriptCurrInstr += 14;
switch (caseID)
{
@@ -7107,10 +7093,10 @@ static void atk2B_jumpifword(void)
static void atk2C_jumpifarrayequal(void)
{
//Mem1, Mem2, Size, Jump Loc
- u8* mem1 = BS2ScriptReadPtr(gBattlescriptCurrInstr + 1);
- u8* mem2 = BS2ScriptReadPtr(gBattlescriptCurrInstr + 5);
- u32 size = BSScriptRead8(gBattlescriptCurrInstr + 9);
- u8* jump_loc = BS2ScriptReadPtr(gBattlescriptCurrInstr + 10);
+ u8* mem1 = T2_READ_PTR(gBattlescriptCurrInstr + 1);
+ u8* mem2 = T2_READ_PTR(gBattlescriptCurrInstr + 5);
+ u32 size = T2_READ_8(gBattlescriptCurrInstr + 9);
+ u8* jump_loc = T2_READ_PTR(gBattlescriptCurrInstr + 10);
u8 i;
for (i = 0; i < size; i++)
@@ -7131,10 +7117,10 @@ static void atk2D_jumpifarraynotequal(void)
{
//Mem1, Mem2, Size, Jump Loc
u8 equal_bytes = 0;
- u8* mem1 = BS2ScriptReadPtr(gBattlescriptCurrInstr + 1);
- u8* mem2 = BS2ScriptReadPtr(gBattlescriptCurrInstr + 5);
- u32 size = BSScriptRead8(gBattlescriptCurrInstr + 9);
- u8* jump_loc = BS2ScriptReadPtr(gBattlescriptCurrInstr + 10);
+ u8* mem1 = T2_READ_PTR(gBattlescriptCurrInstr + 1);
+ u8* mem2 = T2_READ_PTR(gBattlescriptCurrInstr + 5);
+ u32 size = T2_READ_8(gBattlescriptCurrInstr + 9);
+ u8* jump_loc = T2_READ_PTR(gBattlescriptCurrInstr + 10);
u8 i;
for (i = 0; i < size; i++)
@@ -7154,30 +7140,30 @@ static void atk2D_jumpifarraynotequal(void)
static void atk2E_setbyte(void)
{
- u8* mem = BS2ScriptReadPtr(gBattlescriptCurrInstr + 1);
- *mem = BSScriptRead8(gBattlescriptCurrInstr + 5);
+ u8* mem = T2_READ_PTR(gBattlescriptCurrInstr + 1);
+ *mem = T2_READ_8(gBattlescriptCurrInstr + 5);
gBattlescriptCurrInstr += 6;
}
static void atk2F_addbyte(void)
{
- u8* mem = BS2ScriptReadPtr(gBattlescriptCurrInstr + 1);
- *mem += BSScriptRead8(gBattlescriptCurrInstr + 5);
+ u8* mem = T2_READ_PTR(gBattlescriptCurrInstr + 1);
+ *mem += T2_READ_8(gBattlescriptCurrInstr + 5);
gBattlescriptCurrInstr += 6;
}
static void atk30_subbyte(void)
{
- u8* mem = BS2ScriptReadPtr(gBattlescriptCurrInstr + 1);
- *mem -= BSScriptRead8(gBattlescriptCurrInstr + 5);
+ u8* mem = T2_READ_PTR(gBattlescriptCurrInstr + 1);
+ *mem -= T2_READ_8(gBattlescriptCurrInstr + 5);
gBattlescriptCurrInstr += 6;
}
static void atk31_copyarray(void)
{
- u8* mem1 = BS2ScriptReadPtr(gBattlescriptCurrInstr + 1);
- u8* mem2 = BS2ScriptReadPtr(gBattlescriptCurrInstr + 5);
- s32 size = BSScriptRead8(gBattlescriptCurrInstr + 9);
+ u8* mem1 = T2_READ_PTR(gBattlescriptCurrInstr + 1);
+ u8* mem2 = T2_READ_PTR(gBattlescriptCurrInstr + 5);
+ s32 size = T2_READ_8(gBattlescriptCurrInstr + 9);
s32 i;
for (i = 0; i < size; i++)
@@ -7190,10 +7176,10 @@ static void atk31_copyarray(void)
static void atk32_copyarray_withindex(void)
{
- u8* mem1 = BS2ScriptReadPtr(gBattlescriptCurrInstr + 1);
- u8* mem2 = BS2ScriptReadPtr(gBattlescriptCurrInstr + 5);
- u8* index = BS2ScriptReadPtr(gBattlescriptCurrInstr + 9);
- s32 size = BSScriptRead8(gBattlescriptCurrInstr + 13);
+ u8* mem1 = T2_READ_PTR(gBattlescriptCurrInstr + 1);
+ u8* mem2 = T2_READ_PTR(gBattlescriptCurrInstr + 5);
+ u8* index = T2_READ_PTR(gBattlescriptCurrInstr + 9);
+ s32 size = T2_READ_8(gBattlescriptCurrInstr + 13);
s32 i;
for (i = 0; i < size; i++)
@@ -7206,15 +7192,15 @@ static void atk32_copyarray_withindex(void)
static void atk33_orbyte(void)
{
- u8* mem = BS2ScriptReadPtr(gBattlescriptCurrInstr + 1);
- *mem |= BSScriptRead8(gBattlescriptCurrInstr + 5);
+ u8* mem = T2_READ_PTR(gBattlescriptCurrInstr + 1);
+ *mem |= T2_READ_8(gBattlescriptCurrInstr + 5);
gBattlescriptCurrInstr += 6;
}
static void atk34_orhalfword(void)
{
- u16* mem = BS2ScriptReadPtr(gBattlescriptCurrInstr + 1);
- u16 val = BS2ScriptRead16(gBattlescriptCurrInstr + 5);
+ u16* mem = T2_READ_PTR(gBattlescriptCurrInstr + 1);
+ u16 val = T2_READ_16(gBattlescriptCurrInstr + 5);
*mem |= val;
gBattlescriptCurrInstr += 7;
@@ -7222,8 +7208,8 @@ static void atk34_orhalfword(void)
static void atk35_orword(void)
{
- u32* mem = BS2ScriptReadPtr(gBattlescriptCurrInstr + 1);
- u32 val = BS2ScriptRead32(gBattlescriptCurrInstr + 5);
+ u32* mem = T2_READ_PTR(gBattlescriptCurrInstr + 1);
+ u32 val = T2_READ_32(gBattlescriptCurrInstr + 5);
*mem |= val;
gBattlescriptCurrInstr += 9;
@@ -7231,15 +7217,15 @@ static void atk35_orword(void)
static void atk36_bicbyte(void)
{
- u8* mem = BS2ScriptReadPtr(gBattlescriptCurrInstr + 1);
- *mem &= ~(BSScriptRead8(gBattlescriptCurrInstr + 5));
+ u8* mem = T2_READ_PTR(gBattlescriptCurrInstr + 1);
+ *mem &= ~(T2_READ_8(gBattlescriptCurrInstr + 5));
gBattlescriptCurrInstr += 6;
}
static void atk37_bichalfword(void)
{
- u16* mem = BS2ScriptReadPtr(gBattlescriptCurrInstr + 1);
- u16 val = BS2ScriptRead16(gBattlescriptCurrInstr + 5);
+ u16* mem = T2_READ_PTR(gBattlescriptCurrInstr + 1);
+ u16 val = T2_READ_16(gBattlescriptCurrInstr + 5);
*mem &= ~val;
gBattlescriptCurrInstr += 7;
@@ -7247,8 +7233,8 @@ static void atk37_bichalfword(void)
static void atk38_bicword(void)
{
- u32* mem = BS2ScriptReadPtr(gBattlescriptCurrInstr + 1);
- u32 val = BS2ScriptRead32(gBattlescriptCurrInstr + 5);
+ u32* mem = T2_READ_PTR(gBattlescriptCurrInstr + 1);
+ u32 val = T2_READ_32(gBattlescriptCurrInstr + 5);
*mem &= ~val;
gBattlescriptCurrInstr += 9;
@@ -7258,7 +7244,7 @@ static void atk39_pause(void)
{
if (gBattleExecBuffer == 0)
{
- u16 value = BS2ScriptRead16(gBattlescriptCurrInstr + 1);
+ u16 value = T2_READ_16(gBattlescriptCurrInstr + 1);
if (++gPauseCounterBattle >= value)
{
gPauseCounterBattle = 0;
@@ -7275,7 +7261,7 @@ static void atk3A_waitstate(void)
static void atk3B_healthbar_update(void)
{
- if (!BSScriptRead8(gBattlescriptCurrInstr + 1))
+ if (!T2_READ_8(gBattlescriptCurrInstr + 1))
gActiveBank = gBankTarget;
else
gActiveBank = gBankAttacker;
@@ -7315,39 +7301,38 @@ static void atk3F_end3(void) //pops the main function stack
static void atk41_call(void)
{
b_movescr_stack_push(gBattlescriptCurrInstr + 5);
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
static void atk42_jumpiftype2(void) //u8 bank, u8 type, *ptr
{
- u8 bank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
+ u8 bank = GetBattleBank(T1_READ_8(gBattlescriptCurrInstr + 1));
- if (BSScriptRead8(gBattlescriptCurrInstr + 2) == gBattleMons[bank].type1 || BSScriptRead8(gBattlescriptCurrInstr + 2) == gBattleMons[bank].type2)
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 3);
+ if (T1_READ_8(gBattlescriptCurrInstr + 2) == gBattleMons[bank].type1 || T1_READ_8(gBattlescriptCurrInstr + 2) == gBattleMons[bank].type2)
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 3);
else
gBattlescriptCurrInstr += 7;
}
static void atk43_jumpifabilitypresent(void)
{
- if (AbilityBattleEffects(ABILITYEFFECT_CHECK_ON_FIELD, 0, BSScriptRead8(gBattlescriptCurrInstr + 1), 0, 0))
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 2);
+ if (AbilityBattleEffects(ABILITYEFFECT_CHECK_ON_FIELD, 0, T2_READ_8(gBattlescriptCurrInstr + 1), 0, 0))
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 2);
else
gBattlescriptCurrInstr += 6;
}
static void atk44(void)
{
- unk_2000000[gBankAttacker + 0x16060] = 1;
+ ewram16060(gBankAttacker) = 1;
}
#ifdef NONMATCHING
-
static void atk45_playanimation(void)
{
- #define ANIMATION_ID BSScriptRead8(gBattlescriptCurrInstr + 2)
- #define ARGUMENT (u16*) BS2ScriptReadPtr(gBattlescriptCurrInstr + 3)
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
+ #define ANIMATION_ID T2_READ_8(gBattlescriptCurrInstr + 2)
+ #define ARGUMENT (u16*) T2_READ_PTR(gBattlescriptCurrInstr + 3)
+ gActiveBank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
if ( ANIMATION_ID == 1 || ANIMATION_ID == 0x11 || ANIMATION_ID == 2) {
EmitBattleAnimation(0, ANIMATION_ID, *argument);
@@ -7477,10 +7462,10 @@ static void atk46_playanimation2(void)
u16* arg3;
u32 something;
- arg1 = BSScriptRead8(gBattlescriptCurrInstr + 1);
+ arg1 = T2_READ_8(gBattlescriptCurrInstr + 1);
gActiveBank = GetBattleBank(arg1);
- arg2 = BS2ScriptReadPtr(gBattlescriptCurrInstr + 2);
- arg3 = BS2ScriptReadPtr(gBattlescriptCurrInstr + 6);
+ arg2 = T2_READ_PTR(gBattlescriptCurrInstr + 2);
+ arg3 = T2_READ_PTR(gBattlescriptCurrInstr + 6);
if (*arg2 == 1 || *arg2 == 0x11 || *arg2 == 2)
{
@@ -7645,9 +7630,9 @@ static void atk48_playstatchangeanimation(void)
u32 stats_to_check;
u8 arg3;
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
- stats_to_check = BSScriptRead8(gBattlescriptCurrInstr + 2);
- arg3 = BSScriptRead8(gBattlescriptCurrInstr + 3);
+ gActiveBank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
+ stats_to_check = T2_READ_8(gBattlescriptCurrInstr + 2);
+ arg3 = T2_READ_8(gBattlescriptCurrInstr + 3);
if (arg3 & 1)
{
u16 r1 = 0x15;
@@ -7657,7 +7642,7 @@ static void atk48_playstatchangeanimation(void)
{
if (!(stats_to_check & 1))
continue;
- if (!(BSScriptRead8(gBattlescriptCurrInstr + 3)))
+ if (!(T2_READ_8(gBattlescriptCurrInstr + 3)))
{
u8 ability;
if (gSideTimer[GetBankIdentity(gActiveBank) & 1].mistTimer)
@@ -7676,7 +7661,7 @@ static void atk48_playstatchangeanimation(void)
r1 += 1;
curr_stat++;
}
- if (changeable_stats > 1 && BSScriptRead8(gBattlescriptCurrInstr + 3) & 2)
+ if (changeable_stats > 1 && T2_READ_8(gBattlescriptCurrInstr + 3) & 2)
stat_animID = 0x39;
else
stat_animID = 0x3A;
@@ -7700,19 +7685,19 @@ static void atk48_playstatchangeanimation(void)
r1 += 1;
curr_stat++;
}
- if (changeable_stats > 1 && BSScriptRead8(gBattlescriptCurrInstr + 3) & 2)
+ if (changeable_stats > 1 && T2_READ_8(gBattlescriptCurrInstr + 3) & 2)
stat_animID = 0x37;
else
stat_animID = 0x38;
}
- if ((BSScriptRead8(gBattlescriptCurrInstr + 3) & 2 && changeable_stats <= 1)
+ if ((T2_READ_8(gBattlescriptCurrInstr + 3) & 2 && changeable_stats <= 1)
|| changeable_stats == 0 || BATTLE_STRUCT->filler2[0] != 0)
gBattlescriptCurrInstr += 4;
else
{
EmitBattleAnimation(0, 1, stat_animID);
MarkBufferBankForExecution(gActiveBank);
- if ((BSScriptRead8(gBattlescriptCurrInstr + 3) & 4) && changeable_stats > 1)
+ if ((T2_READ_8(gBattlescriptCurrInstr + 3) & 4) && changeable_stats > 1)
BATTLE_STRUCT->filler2[0] = 1;
gBattlescriptCurrInstr += 4;
}
@@ -7934,7 +7919,7 @@ _0802178C: .4byte gUnknown_02024A98\n\
_08021790:\n\
cmp r3, 0\n\
beq _080217E0\n\
- ldr r0, _080217D0 @ =0x02000000\n\
+ ldr r0, _080217D0 @ =gSharedMem\n\
ldr r1, _080217D4 @ =0x000160dc\n\
adds r4, r0, r1\n\
ldrb r0, [r4]\n\
@@ -7964,7 +7949,7 @@ _080217CC:\n\
ldr r1, _080217DC @ =gBattlescriptCurrInstr\n\
b _080217E2\n\
.align 2, 0\n\
-_080217D0: .4byte 0x02000000\n\
+_080217D0: .4byte gSharedMem\n\
_080217D4: .4byte 0x000160dc\n\
_080217D8: .4byte gActiveBank\n\
_080217DC: .4byte gBattlescriptCurrInstr\n\
@@ -7998,14 +7983,14 @@ static void atk49_moveendturn(void)
if (gLastUsedMove != 0xFFFF)
last_move = gLastUsedMove;
- arg1 = BSScriptRead8(gBattlescriptCurrInstr + 1);
- arg2 = BSScriptRead8(gBattlescriptCurrInstr + 2);
+ arg1 = T2_READ_8(gBattlescriptCurrInstr + 1);
+ arg2 = T2_READ_8(gBattlescriptCurrInstr + 2);
if (gBattleMons[gBankTarget].item == ITEM_ENIGMA_BERRY)
hold_effect_atk = gEnigmaBerries[gBankAttacker].holdEffect;
else
hold_effect_atk = ItemId_GetHoldEffect(gBattleMons[gBankTarget].item);
- choiced_move_atk = (u16*)(gBankAttacker * 0x020160e8);
+ choiced_move_atk = (u16*)(gBankAttacker * (ewram_addr + 0x160E8));
if (BATTLE_STRUCT->dynamicMoveType)
move_type = BATTLE_STRUCT->dynamicMoveType & 0x3F;
else
@@ -8081,7 +8066,7 @@ static void atk49_moveendturn(void)
case 7: //changed held items
for (i = 0; i < gNoOfAllBanks; i++)
{
- #define CHANGED_ITEM (((*u16)(0x020160f0)))
+ #define CHANGED_ITEM (((*u16)(gSharedMem + 0x160F0)))
if (CHANGED_ITEM(i))
gBattleMons[i].item = CHANGED_ITEM(i);
}
@@ -8177,7 +8162,7 @@ _0802184E:\n\
ldr r0, _0802186C @ =gBankAttacker\n\
ldrb r1, [r0]\n\
lsls r1, 1\n\
- ldr r0, _08021870 @ =0x020160e8\n\
+ ldr r0, _08021870 @ =gSharedMem + 0x160E8\n\
adds r1, r0\n\
str r1, [sp, 0xC]\n\
subs r0, 0xCC\n\
@@ -8190,13 +8175,13 @@ _0802184E:\n\
b _080218D2\n\
.align 2, 0\n\
_0802186C: .4byte gBankAttacker\n\
-_08021870: .4byte 0x020160e8\n\
+_08021870: .4byte gSharedMem + 0x160E8\n\
_08021874:\n\
strb r2, [r7]\n\
ldr r0, [r5]\n\
orrs r0, r6\n\
str r0, [r5]\n\
- ldr r0, _080218AC @ =0x02000000\n\
+ ldr r0, _080218AC @ =gSharedMem\n\
ldr r3, _080218B0 @ =0x0001600c\n\
adds r0, r3\n\
strb r4, [r0]\n\
@@ -8217,7 +8202,7 @@ _08021874:\n\
ldr r0, _080218BC @ =gUnknown_081D9B2D\n\
bl _0802229C\n\
.align 2, 0\n\
-_080218AC: .4byte 0x02000000\n\
+_080218AC: .4byte gSharedMem\n\
_080218B0: .4byte 0x0001600c\n\
_080218B4: .4byte gBattleScriptsEffectsTable\n\
_080218B8: .4byte gBattlescriptCurrInstr\n\
@@ -8233,13 +8218,13 @@ _080218C0:\n\
ldrb r0, [r0, 0x2]\n\
str r0, [sp, 0x4]\n\
_080218D2:\n\
- ldr r5, _080218E0 @ =0x02000000\n\
+ ldr r5, _080218E0 @ =gSharedMem\n\
mov r12, r5\n\
b _080218EE\n\
.align 2, 0\n\
_080218D8: .4byte gBattleMoves\n\
_080218DC: .4byte gCurrentMove\n\
-_080218E0: .4byte 0x02000000\n\
+_080218E0: .4byte gSharedMem\n\
_080218E4:\n\
mov r0, r10\n\
cmp r0, 0\n\
@@ -8364,7 +8349,7 @@ _080219C8:\n\
movs r5, 0x1\n\
mov r10, r5\n\
_080219FE:\n\
- ldr r2, _08021A2C @ =0x02000000\n\
+ ldr r2, _08021A2C @ =gSharedMem\n\
ldr r0, _08021A30 @ =0x0001600c\n\
adds r1, r2, r0\n\
b _08021E00\n\
@@ -8378,7 +8363,7 @@ _08021A1C: .4byte gBattleMoves\n\
_08021A20: .4byte gCurrentMove\n\
_08021A24: .4byte gBattlescriptCurrInstr\n\
_08021A28: .4byte gUnknown_081D9132\n\
-_08021A2C: .4byte 0x02000000\n\
+_08021A2C: .4byte gSharedMem\n\
_08021A30: .4byte 0x0001600c\n\
_08021A34:\n\
ldr r2, _08021AD0 @ =gBattleMons\n\
@@ -8486,13 +8471,13 @@ _08021AF0:\n\
movs r4, 0x1\n\
mov r10, r4\n\
_08021B0C:\n\
- ldr r2, _08021B18 @ =0x02000000\n\
+ ldr r2, _08021B18 @ =gSharedMem\n\
ldr r5, _08021B1C @ =0x0001600c\n\
adds r1, r2, r5\n\
b _08021E00\n\
.align 2, 0\n\
_08021B14: .4byte gBankTarget\n\
-_08021B18: .4byte 0x02000000\n\
+_08021B18: .4byte gSharedMem\n\
_08021B1C: .4byte 0x0001600c\n\
_08021B20:\n\
ldr r0, _08021B40 @ =gBankTarget\n\
@@ -8526,18 +8511,18 @@ _08021B44:\n\
beq _08021B68\n\
movs r4, 0x1\n\
mov r10, r4\n\
- ldr r5, _08021B64 @ =0x02000000\n\
+ ldr r5, _08021B64 @ =gSharedMem\n\
mov r12, r5\n\
b _0802224E\n\
.align 2, 0\n\
-_08021B64: .4byte 0x02000000\n\
+_08021B64: .4byte gSharedMem\n\
_08021B68:\n\
- ldr r2, _08021B70 @ =0x02000000\n\
+ ldr r2, _08021B70 @ =gSharedMem\n\
ldr r0, _08021B74 @ =0x0001600c\n\
adds r1, r2, r0\n\
b _08021E00\n\
.align 2, 0\n\
-_08021B70: .4byte 0x02000000\n\
+_08021B70: .4byte gSharedMem\n\
_08021B74: .4byte 0x0001600c\n\
_08021B78:\n\
ldr r0, _08021B98 @ =gBankAttacker\n\
@@ -8651,7 +8636,7 @@ _08021C40:\n\
b _08022244\n\
_08021C4C:\n\
movs r5, 0\n\
- ldr r2, _08021C70 @ =0x020160f0\n\
+ ldr r2, _08021C70 @ =gSharedMem + 0x160F0\n\
ldr r3, _08021C74 @ =gBattleMons\n\
_08021C52:\n\
ldrh r1, [r2]\n\
@@ -8669,7 +8654,7 @@ _08021C5C:\n\
b _08022244\n\
.align 2, 0\n\
_08021C6C: .4byte gNoOfAllBanks\n\
-_08021C70: .4byte 0x020160f0\n\
+_08021C70: .4byte gSharedMem + 0x160F0\n\
_08021C74: .4byte gBattleMons\n\
_08021C78:\n\
movs r0, 0x3\n\
@@ -8681,18 +8666,18 @@ _08021C78:\n\
beq _08021C98\n\
movs r2, 0x1\n\
mov r10, r2\n\
- ldr r3, _08021C94 @ =0x02000000\n\
+ ldr r3, _08021C94 @ =gSharedMem\n\
mov r12, r3\n\
b _0802224E\n\
.align 2, 0\n\
-_08021C94: .4byte 0x02000000\n\
+_08021C94: .4byte gSharedMem\n\
_08021C98:\n\
- ldr r2, _08021CA0 @ =0x02000000\n\
+ ldr r2, _08021CA0 @ =gSharedMem\n\
ldr r4, _08021CA4 @ =0x0001600c\n\
adds r1, r2, r4\n\
b _08021E00\n\
.align 2, 0\n\
-_08021CA0: .4byte 0x02000000\n\
+_08021CA0: .4byte gSharedMem\n\
_08021CA4: .4byte 0x0001600c\n\
_08021CA8:\n\
movs r0, 0x4\n\
@@ -8705,12 +8690,12 @@ _08021CA8:\n\
movs r5, 0x1\n\
mov r10, r5\n\
_08021CBC:\n\
- ldr r2, _08021CC4 @ =0x02000000\n\
+ ldr r2, _08021CC4 @ =gSharedMem\n\
ldr r0, _08021CC8 @ =0x0001600c\n\
adds r1, r2, r0\n\
b _08021E00\n\
.align 2, 0\n\
-_08021CC4: .4byte 0x02000000\n\
+_08021CC4: .4byte gSharedMem\n\
_08021CC8: .4byte 0x0001600c\n\
_08021CCC:\n\
ldr r1, _08021D04 @ =gStatuses3\n\
@@ -8798,7 +8783,7 @@ _08021D44:\n\
orrs r1, r2\n\
strb r1, [r0]\n\
_08021D7E:\n\
- ldr r2, _08021DA4 @ =0x02000000\n\
+ ldr r2, _08021DA4 @ =gSharedMem\n\
ldr r4, _08021DA8 @ =0x0001600c\n\
adds r1, r2, r4\n\
b _08021E00\n\
@@ -8810,7 +8795,7 @@ _08021D94: .4byte 0x000400c0\n\
_08021D98: .4byte gActiveBank\n\
_08021D9C: .4byte 0xfffbff3f\n\
_08021DA0: .4byte gSpecialStatuses\n\
-_08021DA4: .4byte 0x02000000\n\
+_08021DA4: .4byte gSharedMem\n\
_08021DA8: .4byte 0x0001600c\n\
_08021DAC:\n\
ldr r2, _08021E0C @ =gSpecialStatuses\n\
@@ -8851,7 +8836,7 @@ _08021DAC:\n\
ands r0, r1\n\
str r0, [r2]\n\
_08021DFA:\n\
- ldr r2, _08021E28 @ =0x02000000\n\
+ ldr r2, _08021E28 @ =gSharedMem\n\
ldr r3, _08021E2C @ =0x0001600c\n\
adds r1, r2, r3\n\
_08021E00:\n\
@@ -8868,7 +8853,7 @@ _08021E18: .4byte gStatuses3\n\
_08021E1C: .4byte 0x000400c0\n\
_08021E20: .4byte gActiveBank\n\
_08021E24: .4byte 0xfffbff3f\n\
-_08021E28: .4byte 0x02000000\n\
+_08021E28: .4byte gSharedMem\n\
_08021E2C: .4byte 0x0001600c\n\
_08021E30:\n\
movs r4, 0\n\
@@ -9362,7 +9347,7 @@ _0802223A:\n\
ldr r0, [r5]\n\
orrs r0, r6\n\
str r0, [r5]\n\
- ldr r2, _080222D0 @ =0x02000000\n\
+ ldr r2, _080222D0 @ =gSharedMem\n\
mov r12, r2\n\
_08022244:\n\
ldr r1, _080222D4 @ =0x0001600c\n\
@@ -9432,7 +9417,7 @@ _080222C0: .4byte gBattleMoves\n\
_080222C4: .4byte gCurrentMove\n\
_080222C8: .4byte gBankTarget\n\
_080222CC: .4byte gBattleMons\n\
-_080222D0: .4byte 0x02000000\n\
+_080222D0: .4byte gSharedMem\n\
_080222D4: .4byte 0x0001600c\n\
_080222D8: .4byte gBattlescriptCurrInstr\n\
.syntax divided"
@@ -9531,9 +9516,9 @@ static void atk4C_copy_poke_data(void)
if (gBattleExecBuffer)
return;
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
+ gActiveBank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
- gBattlePartyID[gActiveBank] = unk_2000000[0x16068 + gActiveBank];
+ gBattlePartyID[gActiveBank] = ewram16068arr(gActiveBank);
EmitGetAttributes(0, 0, gBitTable[gBattlePartyID[gActiveBank]]);
MarkBufferBankForExecution(gActiveBank);
@@ -9558,7 +9543,7 @@ static void atk4D_switch_data_update(void)
if (gBattleExecBuffer)
return;
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
+ gActiveBank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
OldData = gBattleMons[gActiveBank];
monData = (u8*)(&gBattleMons[gActiveBank]);
for (i = 0; i < sizeof(struct BattlePokemon); i++)
@@ -9599,13 +9584,13 @@ static void atk4E_switchin_anim(void)
if (gBattleExecBuffer)
return;
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
+ gActiveBank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
if (GetBankSide(gActiveBank) == 1 && !(gBattleTypeFlags & (BATTLE_TYPE_LINK | BATTLE_TYPE_EREADER_TRAINER | BATTLE_TYPE_BATTLE_TOWER)))
{
GetSetPokedexFlag(SpeciesToNationalPokedexNum(gBattleMons[gActiveBank].species), 2);
}
gAbsentBankFlags &= ~(gBitTable[gActiveBank]);
- EmitSendOutPoke(0, gBattlePartyID[gActiveBank], BSScriptRead8(gBattlescriptCurrInstr + 2));
+ EmitSendOutPoke(0, gBattlePartyID[gActiveBank], T2_READ_8(gBattlescriptCurrInstr + 2));
MarkBufferBankForExecution(gActiveBank);
gBattlescriptCurrInstr += 3;
}
@@ -9616,12 +9601,12 @@ static void atk4F_jump_if_cannot_switch(void)
register struct Pokemon *party;
u8 r7;
//0x80 byte is used as a way of telling the function whether to not check status2/status3
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1) & 0x7F);
- if (!(BSScriptRead8(gBattlescriptCurrInstr + 1) & 0x80)
+ gActiveBank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1) & 0x7F);
+ if (!(T2_READ_8(gBattlescriptCurrInstr + 1) & 0x80)
&& ((gBattleMons[gActiveBank].status2 & (STATUS2_WRAPPED | STATUS2_ESCAPE_PREVENTION))
|| (gStatuses3[gActiveBank] & STATUS3_ROOTED)))
{
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 2);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 2);
return;
}
if (gBattleTypeFlags & BATTLE_TYPE_MULTI)
@@ -9642,7 +9627,7 @@ static void atk4F_jump_if_cannot_switch(void)
break;
}
if (val == to_cmp)
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 2);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 2);
else
gBattlescriptCurrInstr += 6;
}
@@ -9675,7 +9660,7 @@ static void atk4F_jump_if_cannot_switch(void)
break;
}
if (val == 6)
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 2);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 2);
else
gBattlescriptCurrInstr += 6;
}
@@ -9683,8 +9668,7 @@ static void atk4F_jump_if_cannot_switch(void)
void sub_8022A3C(u8 unkown)
{
- //BATTLE_STRUCT->unk16064[gActiveBank] = gBattlePartyID[gActiveBank];
- ewram[gActiveBank + 0x16064] = gBattlePartyID[gActiveBank];
+ BATTLE_PARTY_ID(gActiveBank) = gBattlePartyID[gActiveBank];
EmitChoosePokemon(0, 1, unkown, 0, BATTLE_STRUCT->unk1606C[gActiveBank]);
MarkBufferBankForExecution(gActiveBank);
}
@@ -9694,9 +9678,9 @@ static void atk50_openpartyscreen(void)
{
int i = 0;
int r9 = 0;
- u8* fail_loc = BSScriptReadPtr(gBattlescriptCurrInstr + 2);
+ u8* fail_loc = T1_READ_PTR(gBattlescriptCurrInstr + 2);
- if (BSScriptRead8(gBattlescriptCurrInstr + 1) == 5)
+ if (T2_READ_8(gBattlescriptCurrInstr + 1) == 5)
{
if ((gBattleTypeFlags & (BATTLE_TYPE_DOUBLE | BATTLE_TYPE_MULTI)) != BATTLE_TYPE_DOUBLE)
{
@@ -9946,7 +9930,7 @@ _08022C2C:\n\
lsls r0, 25\n\
cmp r0, 0\n\
blt _08022C6C\n\
- ldr r0, _08022C64 @ =0x02000000\n\
+ ldr r0, _08022C64 @ =gSharedMem\n\
ldr r1, _08022C68 @ =0x0001606a\n\
adds r0, r1\n\
ldrb r0, [r0]\n\
@@ -9963,7 +9947,7 @@ _08022C2C:\n\
b _08022C7E\n\
.align 2, 0\n\
_08022C60: .4byte gSpecialStatuses\n\
-_08022C64: .4byte 0x02000000\n\
+_08022C64: .4byte gSharedMem\n\
_08022C68: .4byte 0x0001606a\n\
_08022C6C:\n\
movs r0, 0\n\
@@ -10031,7 +10015,7 @@ _08022CE8:\n\
lsls r0, 25\n\
cmp r0, 0\n\
blt _08022D28\n\
- ldr r0, _08022D20 @ =0x02000000\n\
+ ldr r0, _08022D20 @ =gSharedMem\n\
ldr r1, _08022D24 @ =0x00016068\n\
adds r0, r1\n\
ldrb r0, [r0]\n\
@@ -10048,7 +10032,7 @@ _08022CE8:\n\
b _08022D40\n\
.align 2, 0\n\
_08022D1C: .4byte gSpecialStatuses\n\
-_08022D20: .4byte 0x02000000\n\
+_08022D20: .4byte gSharedMem\n\
_08022D24: .4byte 0x00016068\n\
_08022D28:\n\
movs r0, 0x1\n\
@@ -10115,7 +10099,7 @@ _08022DA0:\n\
lsls r0, 25\n\
cmp r0, 0\n\
blt _08022DE0\n\
- ldr r0, _08022DD8 @ =0x02000000\n\
+ ldr r0, _08022DD8 @ =gSharedMem\n\
ldr r1, _08022DDC @ =0x0001606b\n\
adds r0, r1\n\
ldrb r0, [r0]\n\
@@ -10132,7 +10116,7 @@ _08022DA0:\n\
b _08022DF6\n\
.align 2, 0\n\
_08022DD4: .4byte gSpecialStatuses\n\
-_08022DD8: .4byte 0x02000000\n\
+_08022DD8: .4byte gSharedMem\n\
_08022DDC: .4byte 0x0001606b\n\
_08022DE0:\n\
movs r0, 0\n\
@@ -10202,7 +10186,7 @@ _08022E60:\n\
lsls r0, 25\n\
cmp r0, 0\n\
blt _08022EA0\n\
- ldr r0, _08022E98 @ =0x02000000\n\
+ ldr r0, _08022E98 @ =gSharedMem\n\
ldr r1, _08022E9C @ =0x00016069\n\
adds r0, r1\n\
ldrb r0, [r0]\n\
@@ -10219,7 +10203,7 @@ _08022E60:\n\
b _08022EB8\n\
.align 2, 0\n\
_08022E94: .4byte gSpecialStatuses\n\
-_08022E98: .4byte 0x02000000\n\
+_08022E98: .4byte gSharedMem\n\
_08022E9C: .4byte 0x00016069\n\
_08022EA0:\n\
movs r0, 0x2\n\
@@ -10402,7 +10386,7 @@ _08023008:\n\
lsls r0, 25\n\
cmp r0, 0\n\
blt _0802303A\n\
- ldr r0, _0802309C @ =0x02000000\n\
+ ldr r0, _0802309C @ =gSharedMem\n\
ldr r1, _080230A0 @ =0x00016068\n\
adds r0, r1\n\
ldrb r0, [r0]\n\
@@ -10463,7 +10447,7 @@ _0802303A:\n\
b _080230EE\n\
.align 2, 0\n\
_08023098: .4byte gSpecialStatuses\n\
-_0802309C: .4byte 0x02000000\n\
+_0802309C: .4byte gSharedMem\n\
_080230A0: .4byte 0x00016068\n\
_080230A4: .4byte gBitTable\n\
_080230A8: .4byte gActiveBank\n\
@@ -10482,7 +10466,7 @@ _080230BC:\n\
lsls r0, 25\n\
cmp r0, 0\n\
blt _080230EE\n\
- ldr r0, _08023100 @ =0x02000000\n\
+ ldr r0, _08023100 @ =gSharedMem\n\
ldr r1, _08023104 @ =0x00016069\n\
adds r0, r1\n\
ldrb r0, [r0]\n\
@@ -10505,7 +10489,7 @@ _080230EE:\n\
b _08023110\n\
.align 2, 0\n\
_080230FC: .4byte gSpecialStatuses\n\
-_08023100: .4byte 0x02000000\n\
+_08023100: .4byte gSharedMem\n\
_08023104: .4byte 0x00016069\n\
_08023108: .4byte gBattlescriptCurrInstr\n\
_0802310C:\n\
@@ -10626,7 +10610,7 @@ _080231F4: .4byte gHitMarker\n\
_080231F8:\n\
ldr r4, _080232A0 @ =gActiveBank\n\
strb r7, [r4]\n\
- ldr r3, _080232A4 @ =0x02000000\n\
+ ldr r3, _080232A4 @ =gSharedMem\n\
ldrb r0, [r4]\n\
ldr r2, _080232A8 @ =0x00016064\n\
adds r1, r0, r2\n\
@@ -10707,7 +10691,7 @@ _0802328A:\n\
b _08023302\n\
.align 2, 0\n\
_080232A0: .4byte gActiveBank\n\
-_080232A4: .4byte 0x02000000\n\
+_080232A4: .4byte gSharedMem\n\
_080232A8: .4byte 0x00016064\n\
_080232AC: .4byte gBattlePartyID\n\
_080232B0: .4byte 0x00016068\n\
@@ -10765,14 +10749,14 @@ static void atk51_switch_handle_order(void)
if (gBattleExecBuffer)
return;
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
- switch (BSScriptRead8(gBattlescriptCurrInstr + 2))
+ gActiveBank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
+ switch (T2_READ_8(gBattlescriptCurrInstr + 2))
{
case 0:
for (i = 0; i < gNoOfAllBanks; i++)
{
if (gBattleBufferB[i][0] == 0x22)
- ewram[i + 0x16068] = gBattleBufferB[i][1];
+ ewram16068arr(i) = gBattleBufferB[i][1];
}
break;
case 1:
@@ -10781,17 +10765,15 @@ static void atk51_switch_handle_order(void)
break;
case 2:
gBattleCommunication[0] = gBattleBufferB[gActiveBank][1];
- ewram[gActiveBank + 0x16068] = gBattleBufferB[gActiveBank][1];
+ ewram16068arr(gActiveBank) = gBattleBufferB[gActiveBank][1];
if (gBattleTypeFlags & BATTLE_TYPE_MULTI)
{
-
- ewram[(gActiveBank) * 3 + (0x1606C + 0)] &= 0xF;
- ewram[(gActiveBank) * 3 + (0x1606C + 0)] |= (gBattleBufferB[gActiveBank][2] & 0xF0);
- ewram[(gActiveBank) * 3 + (0x1606C + 1)] = gBattleBufferB[gActiveBank][3];
-
- ewram[(gActiveBank ^ 2) * 3 + (0x1606C + 0)] &= (0xF0);
- ewram[(gActiveBank ^ 2) * 3 + (0x1606C + 0)] |= (gBattleBufferB[gActiveBank][2] & 0xF0) >> 4;
- ewram[(gActiveBank ^ 2) * 3 + (0x1606C + 2)] = gBattleBufferB[gActiveBank][3];
+ ewram1606Carr(0, gActiveBank) &= 0xF;
+ ewram1606Carr(0, gActiveBank) |= (gBattleBufferB[gActiveBank][2] & 0xF0);
+ ewram1606Carr(1, gActiveBank) = gBattleBufferB[gActiveBank][3];
+ ewram1606Carr(0, (gActiveBank ^ 2)) &= (0xF0);
+ ewram1606Carr(0, (gActiveBank ^ 2)) |= (gBattleBufferB[gActiveBank][2] & 0xF0) >> 4;
+ ewram1606Carr(2, (gActiveBank ^ 2)) = gBattleBufferB[gActiveBank][3];
}
else
sub_8012258(gActiveBank);
@@ -10816,7 +10798,7 @@ static void atk52_switch_in_effects(void)
{
int i;
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
+ gActiveBank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
sub_80157C4(gActiveBank);
gHitMarker &= ~(HITMARKER_FAINTED(gActiveBank));
gSpecialStatuses[gActiveBank].flag40 = 0;
@@ -10836,9 +10818,9 @@ static void atk52_switch_in_effects(void)
BATTLE_STRUCT->scriptingActive = gActiveBank;
b_movescr_stack_push_cursor();
- if (BSScriptRead8(gBattlescriptCurrInstr + 1) == 0)
+ if (T2_READ_8(gBattlescriptCurrInstr + 1) == 0)
gBattlescriptCurrInstr = gUnknown_081D919F;
- else if (BSScriptRead8(gBattlescriptCurrInstr + 1) == 1)
+ else if (T2_READ_8(gBattlescriptCurrInstr + 1) == 1)
gBattlescriptCurrInstr = gUnknown_081D9171;
else
gBattlescriptCurrInstr = gUnknown_081D91CD;
@@ -10865,7 +10847,7 @@ static void atk52_switch_in_effects(void)
*(HP_ON_SWITCHOUT + GetBankSide(i)) = gBattleMons[i].hp;
}
- if (BSScriptRead8(gBattlescriptCurrInstr + 1) == 5)
+ if (T2_READ_8(gBattlescriptCurrInstr + 1) == 5)
{
u32 hitmark = gHitMarker >> 0x1C;
gBank1++;
@@ -10885,7 +10867,7 @@ static void atk52_switch_in_effects(void)
static void atk53_trainer_slide(void)
{
- if (!BSScriptRead8(gBattlescriptCurrInstr + 1))
+ if (!T2_READ_8(gBattlescriptCurrInstr + 1))
gActiveBank = GetBankByPlayerAI(0);
else
gActiveBank = GetBankByPlayerAI(1);
@@ -10898,7 +10880,7 @@ static void atk53_trainer_slide(void)
static void atk54_effectiveness_sound(void)
{
gActiveBank = gBankAttacker;
- EmitEffectivenessSound(0, BS2ScriptRead16(gBattlescriptCurrInstr + 1));
+ EmitEffectivenessSound(0, T2_READ_16(gBattlescriptCurrInstr + 1));
MarkBufferBankForExecution(gActiveBank);
gBattlescriptCurrInstr += 3;
}
@@ -10906,14 +10888,14 @@ static void atk54_effectiveness_sound(void)
static void atk55_play_sound(void)
{
gActiveBank = gBankAttacker;
- Emitcmd44(0, BS2ScriptRead16(gBattlescriptCurrInstr + 1));
+ Emitcmd44(0, T2_READ_16(gBattlescriptCurrInstr + 1));
MarkBufferBankForExecution(gActiveBank);
gBattlescriptCurrInstr += 3;
}
static void atk56_fainting_cry(void)
{
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
+ gActiveBank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
EmitFaintingCry(0);
MarkBufferBankForExecution(gActiveBank);
gBattlescriptCurrInstr += 2;
@@ -10929,7 +10911,7 @@ static void atk57(void)
static void atk58_return_to_ball(void)
{
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
+ gActiveBank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
EmitReturnPokeToBall(0, 1);
MarkBufferBankForExecution(gActiveBank);
gBattlescriptCurrInstr += 2;
@@ -10937,10 +10919,10 @@ static void atk58_return_to_ball(void)
void atk59_learnmove_inbattle(void)
{
- u8* loc1 = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
- u8* loc2 = BSScriptReadPtr(gBattlescriptCurrInstr + 5);
+ u8* loc1 = T1_READ_PTR(gBattlescriptCurrInstr + 1);
+ u8* loc2 = T1_READ_PTR(gBattlescriptCurrInstr + 5);
- u16 ret = MonTryLearningNewMove(&gPlayerParty[BATTLE_STRUCT->expGetterID], BSScriptRead8(gBattlescriptCurrInstr + 9));
+ u16 ret = MonTryLearningNewMove(&gPlayerParty[BATTLE_STRUCT->expGetterID], T2_READ_8(gBattlescriptCurrInstr + 9));
while (ret == 0xFFFE)
ret = MonTryLearningNewMove(&gPlayerParty[BATTLE_STRUCT->expGetterID], 0);
@@ -11053,7 +11035,7 @@ static void atk5A(void)
{
u8 *ptr;
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
ptr = gBattleTextBuff2;
{
ptr[0] = 0xFD;
@@ -11123,7 +11105,7 @@ static void atk5B_80256E0(void)
{
PlaySE(SE_SELECT);
if (gBattleCommunication[1] != 0)
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
else
gBattlescriptCurrInstr += 5;
sub_8023AD8();
@@ -11131,7 +11113,7 @@ static void atk5B_80256E0(void)
else if (gMain.newKeys & B_BUTTON)
{
PlaySE(SE_SELECT);
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
sub_8023AD8();
}
}
@@ -11139,7 +11121,7 @@ static void atk5B_80256E0(void)
static void atk5C_hitanimation(void)
{
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
+ gActiveBank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
if (gBattleMoveFlags & MOVESTATUS_NOEFFECT)
gBattlescriptCurrInstr += 2;
else if (!(gHitMarker & HITMARKER_IGNORE_SUBSTITUTE) || !(gBattleMons[gActiveBank].status2 & STATUS2_SUBSTITUTE) || gDisableStructs[gActiveBank].substituteHP == 0)
@@ -11152,7 +11134,7 @@ static void atk5C_hitanimation(void)
gBattlescriptCurrInstr += 2;
}
-#define MONEY_UNKNOWN ((*(u8*)(0x02017000 + 0x94)))
+#define MONEY_UNKNOWN ((*(u8*)(ewram_addr + 0x17000 + 0x94)))
#ifdef NONMATCHING
static void atk5D_getmoneyreward(void)
@@ -11226,7 +11208,7 @@ static void atk5D_getmoneyreward(void)
lsls r1, 3\n\
cmp r2, r1\n\
bne _08024058\n\
- ldr r0, _0802404C @ =0x02017000\n\
+ ldr r0, _0802404C @ =gSharedMem + 0x17000\n\
adds r1, r0, 0\n\
adds r1, 0x94\n\
ldrb r2, [r1]\n\
@@ -11243,7 +11225,7 @@ static void atk5D_getmoneyreward(void)
b _08024140\n\
.align 2, 0\n\
_08024048: .4byte gTrainerBattleOpponent\n\
-_0802404C: .4byte 0x02017000\n\
+_0802404C: .4byte gSharedMem + 0x17000\n\
_08024050: .4byte 0xfffff056\n\
_08024054: .4byte gSaveBlock1 + 0x490\n\
_08024058:\n\
@@ -11313,7 +11295,7 @@ _080240C4:\n\
ldrb r1, [r3]\n\
mov r12, r0\n\
lsls r4, r5, 2\n\
- ldr r5, _08024124 @ =0x02000000\n\
+ ldr r5, _08024124 @ =gSharedMem\n\
ldr r7, _08024128 @ =gBattleTypeFlags\n\
ldr r0, _0802412C @ =gSaveBlock1 + 0x490\n\
mov r8, r0\n\
@@ -11357,7 +11339,7 @@ _080240FE:\n\
b _08024140\n\
.align 2, 0\n\
_08024120: .4byte gTrainerMoney\n\
-_08024124: .4byte 0x02000000\n\
+_08024124: .4byte gSharedMem\n\
_08024128: .4byte gBattleTypeFlags\n\
_0802412C: .4byte gSaveBlock1 + 0x490\n\
_08024130: .4byte gTrainers\n\
@@ -11412,7 +11394,7 @@ _08024190: .4byte gBattlescriptCurrInstr\n\
static void atk5E_8025A70(void)
{
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
+ gActiveBank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
switch (gBattleCommunication[0])
{
case 0:
@@ -11453,26 +11435,20 @@ static void atk60_increment_gamestat(void)
{
if (GetBankSide(gBankAttacker) == 0)
{
- IncrementGameStat(BSScriptRead8(gBattlescriptCurrInstr + 1));
+ IncrementGameStat(T2_READ_8(gBattlescriptCurrInstr + 1));
}
gBattlescriptCurrInstr += 2;
}
-struct hp_status
-{
- u16 hp;
- u32 status;
-};
-
static void atk61_8025BA4(void)
{
int i;
struct Pokemon* party;
- struct hp_status hpStatus[6];
+ struct HpAndStatus hpStatus[6];
if (gBattleExecBuffer)
return;
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
+ gActiveBank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
if (GetBankSide(gActiveBank) == 0)
party = gPlayerParty;
else
@@ -11491,14 +11467,14 @@ static void atk61_8025BA4(void)
hpStatus[i].status = GetMonData(&party[i], MON_DATA_STATUS);
}
}
- Emitcmd48(0, (u8*)(hpStatus), 1);
+ EmitDrawPartyStatusSummary(0, hpStatus, 1);
MarkBufferBankForExecution(gActiveBank);
gBattlescriptCurrInstr += 2;
}
static void atk62_08025C6C(void)
{
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
+ gActiveBank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
Emitcmd49(0);
MarkBufferBankForExecution(gActiveBank);
gBattlescriptCurrInstr += 2;
@@ -11506,7 +11482,7 @@ static void atk62_08025C6C(void)
static void atk63_jumptorandomattack(void)
{
- if (BSScriptRead8(gBattlescriptCurrInstr + 1))
+ if (T2_READ_8(gBattlescriptCurrInstr + 1))
gCurrentMove = gRandomMove;
else
gUnknown_02024BE8 = gCurrentMove = gRandomMove;
@@ -11517,7 +11493,7 @@ static void atk64_statusanimation(void)
{
if (gBattleExecBuffer == 0)
{
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
+ gActiveBank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
if (!(gStatuses3[gActiveBank] & STATUS3_SEMI_INVULNERABLE) && gDisableStructs[gActiveBank].substituteHP == 0 && !(gHitMarker & HITMARKER_NO_ANIMATIONS))
{
EmitStatusAnimation(0, 0, gBattleMons[gActiveBank].status1);
@@ -11532,8 +11508,8 @@ static void atk65_status2animation(void)
if (gBattleExecBuffer == 0)
{
u32 possible_to_anim;
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
- possible_to_anim = BSScriptRead32(gBattlescriptCurrInstr + 2);
+ gActiveBank = GetBattleBank(T1_READ_8(gBattlescriptCurrInstr + 1));
+ possible_to_anim = T1_READ_32(gBattlescriptCurrInstr + 2);
if (!(gStatuses3[gActiveBank] & STATUS3_SEMI_INVULNERABLE) && gDisableStructs[gActiveBank].substituteHP == 0 && !(gHitMarker & HITMARKER_NO_ANIMATIONS))
{
EmitStatusAnimation(0, 1, gBattleMons[gActiveBank].status2 & possible_to_anim);
@@ -11548,11 +11524,11 @@ static void atk66_chosenstatusanimation(void)
if (gBattleExecBuffer == 0)
{
u32 status;
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
- status = BSScriptRead32(gBattlescriptCurrInstr + 3);
+ gActiveBank = GetBattleBank(T1_READ_8(gBattlescriptCurrInstr + 1));
+ status = T1_READ_32(gBattlescriptCurrInstr + 3);
if (!(gStatuses3[gActiveBank] & STATUS3_SEMI_INVULNERABLE) && gDisableStructs[gActiveBank].substituteHP == 0 && !(gHitMarker & HITMARKER_NO_ANIMATIONS))
{
- EmitStatusAnimation(0, BSScriptRead8(gBattlescriptCurrInstr + 2), status);
+ EmitStatusAnimation(0, T1_READ_8(gBattlescriptCurrInstr + 2), status);
MarkBufferBankForExecution(gActiveBank);
}
gBattlescriptCurrInstr += 7;
@@ -11656,8 +11632,7 @@ static void atk69_dmg_adjustment2(void) //literally a copy of atk07 except there
void atk6A_removeitem(void)
{
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
- #define USED_HELD_ITEMS(bank) (*(u16 *)&ewram[0x160CC + 2 * (bank)])
+ gActiveBank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
USED_HELD_ITEMS(gActiveBank) = gBattleMons[gActiveBank].item;
gBattleMons[gActiveBank].item = 0;
@@ -11703,7 +11678,7 @@ static void atk6C_lvlbox_display(void)
sub sp, 0x4\n\
movs r1, 0\n\
movs r7, 0\n\
- ldr r0, _08024928 @ =0x02000000\n\
+ ldr r0, _08024928 @ =gSharedMem\n\
mov r10, r0\n\
ldr r4, _0802492C @ =0x0001609c\n\
add r4, r10\n\
@@ -11718,7 +11693,7 @@ _0802491C:\n\
beq _0802493E\n\
b _08024C38\n\
.align 2, 0\n\
-_08024928: .4byte 0x02000000\n\
+_08024928: .4byte gSharedMem\n\
_0802492C: .4byte 0x0001609c\n\
_08024930:\n\
cmp r0, 0x2\n\
@@ -11754,7 +11729,7 @@ _0802495A:\n\
adds r0, r5, 0\n\
bl StringAppend\n\
adds r5, r0, 0\n\
- ldr r0, _080249A8 @ =0x02000000\n\
+ ldr r0, _080249A8 @ =gSharedMem\n\
ldr r2, _080249AC @ =0x00016018\n\
adds r0, r2\n\
ldrb r1, [r0]\n\
@@ -11779,7 +11754,7 @@ _0802495A:\n\
_0802499C: .4byte gStringVar4\n\
_080249A0: .4byte gUnknown_08400D9F\n\
_080249A4: .4byte gUnknown_0840165C\n\
-_080249A8: .4byte 0x02000000\n\
+_080249A8: .4byte gSharedMem\n\
_080249AC: .4byte 0x00016018\n\
_080249B0: .4byte gPlayerParty\n\
_080249B4: .4byte gLevelUpStatBoxStats\n\
@@ -11793,37 +11768,37 @@ _080249BC:\n\
.4byte _08024A04\n\
.4byte _08024A10\n\
_080249D4:\n\
- ldr r0, _080249DC @ =0x02017180\n\
+ ldr r0, _080249DC @ =gSharedMem + 0x17180\n\
ldrh r0, [r0]\n\
b _08024A14\n\
.align 2, 0\n\
-_080249DC: .4byte 0x02017180\n\
+_080249DC: .4byte gSharedMem + 0x17180\n\
_080249E0:\n\
- ldr r0, _080249E8 @ =0x02017180\n\
+ ldr r0, _080249E8 @ =gSharedMem + 0x17180\n\
ldrh r0, [r0, 0x8]\n\
b _08024A14\n\
.align 2, 0\n\
-_080249E8: .4byte 0x02017180\n\
+_080249E8: .4byte gSharedMem + 0x17180\n\
_080249EC:\n\
- ldr r0, _080249F4 @ =0x02017180\n\
+ ldr r0, _080249F4 @ =gSharedMem + 0x17180\n\
ldrh r0, [r0, 0x2]\n\
b _08024A14\n\
.align 2, 0\n\
-_080249F4: .4byte 0x02017180\n\
+_080249F4: .4byte gSharedMem + 0x17180\n\
_080249F8:\n\
- ldr r0, _08024A00 @ =0x02017180\n\
+ ldr r0, _08024A00 @ =gSharedMem + 0x17180\n\
ldrh r0, [r0, 0xA]\n\
b _08024A14\n\
.align 2, 0\n\
-_08024A00: .4byte 0x02017180\n\
+_08024A00: .4byte gSharedMem + 0x17180\n\
_08024A04:\n\
- ldr r0, _08024A0C @ =0x02017180\n\
+ ldr r0, _08024A0C @ =gSharedMem + 0x17180\n\
ldrh r0, [r0, 0x4]\n\
b _08024A14\n\
.align 2, 0\n\
-_08024A0C: .4byte 0x02017180\n\
+_08024A0C: .4byte gSharedMem + 0x17180\n\
_08024A10:\n\
- ldr r0, _08024A54 @ =0x02017180\n\
+ ldr r0, _08024A54 @ =gSharedMem + 0x17180\n\
ldrh r0, [r0, 0x6]\n\
_08024A14:\n\
subs r0, r1, r0\n\
@@ -11860,7 +11835,7 @@ _08024A2C:\n\
ldr r1, _08024A58 @ =gUnknown_08400DAC\n\
b _08024A5E\n\
.align 2, 0\n\
-_08024A54: .4byte 0x02017180\n\
+_08024A54: .4byte gSharedMem + 0x17180\n\
_08024A58: .4byte gUnknown_08400DAC\n\
_08024A5C:\n\
ldr r1, _08024AA4 @ =gUnknown_08400DAA\n\
@@ -11927,14 +11902,14 @@ _08024AC4:\n\
bl InitWindow\n\
adds r0, r4, 0\n\
bl sub_8002F44\n\
- ldr r1, _08024AEC @ =0x02000000\n\
+ ldr r1, _08024AEC @ =gSharedMem\n\
ldr r2, _08024AF0 @ =0x0001609c\n\
adds r1, r2\n\
b _08024BEA\n\
.align 2, 0\n\
_08024AE4: .4byte gUnknown_03004210\n\
_08024AE8: .4byte gStringVar4\n\
-_08024AEC: .4byte 0x02000000\n\
+_08024AEC: .4byte gSharedMem\n\
_08024AF0: .4byte 0x0001609c\n\
_08024AF4:\n\
ldr r0, _08024B94 @ =gMain\n\
@@ -12048,7 +12023,7 @@ _08024BC0:\n\
bl InitWindow\n\
adds r0, r4, 0\n\
bl sub_8002F44\n\
- ldr r1, _08024BFC @ =0x02000000\n\
+ ldr r1, _08024BFC @ =gSharedMem\n\
ldr r0, _08024C00 @ =0x0001609c\n\
adds r1, r0\n\
_08024BEA:\n\
@@ -12059,7 +12034,7 @@ _08024BEA:\n\
.align 2, 0\n\
_08024BF4: .4byte gUnknown_03004210\n\
_08024BF8: .4byte gStringVar4\n\
-_08024BFC: .4byte 0x02000000\n\
+_08024BFC: .4byte gSharedMem\n\
_08024C00: .4byte 0x0001609c\n\
_08024C04:\n\
ldr r0, _08024C2C @ =gMain\n\
@@ -12116,7 +12091,7 @@ static void atk6E_set_atk_to_player0(void)
static void atk6F_set_visible(void)
{
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
+ gActiveBank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
EmitSpriteInvisibility(0, 0);
MarkBufferBankForExecution(gActiveBank);
gBattlescriptCurrInstr += 2;
@@ -12124,7 +12099,7 @@ static void atk6F_set_visible(void)
static void atk70_record_ability(void)
{
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
+ gActiveBank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
RecordAbilityBattle(gActiveBank, gLastUsedAbility);
gBattlescriptCurrInstr += 1; //buggy, should be += 2, one byte for command, one byte for argument...
}
@@ -12147,7 +12122,7 @@ static void atk71_buffer_move_to_learn(void)
static void atk72_jump_if_can_run_frombattle(void)
{
if (sub_8014AB8(gBank1))
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
else
gBattlescriptCurrInstr += 5;
}
@@ -12158,7 +12133,7 @@ static void atk73_hp_thresholds(void)
s32 result;
if (!(gBattleTypeFlags & BATTLE_TYPE_DOUBLE))
{
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
+ gActiveBank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
opposing_bank = gActiveBank ^ 1;
result = gBattleMons[opposing_bank].hp * 100 / gBattleMons[opposing_bank].maxHP;
@@ -12185,9 +12160,9 @@ static void atk74_hp_thresholds2(void)
s32 result;
if (!(gBattleTypeFlags & BATTLE_TYPE_DOUBLE))
{
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
+ gActiveBank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
opposing_bank = gActiveBank ^ 1;
- hp_switchout = ewram[2 * GetBankSide(opposing_bank) + 0x160bc]; //BATTLE_STRUCT->HP_OnSwitchout[GetBankSide(opposing_bank)];
+ hp_switchout = ewram160BCarr(GetBankSide(opposing_bank)); //BATTLE_STRUCT->HP_OnSwitchout[GetBankSide(opposing_bank)];
result = (hp_switchout - gBattleMons[opposing_bank].hp) * 100 / hp_switchout;
if (gBattleMons[opposing_bank].hp >= hp_switchout)
@@ -12212,8 +12187,8 @@ static void atk75_8026A58(void)
static void atk76_various(void)
{
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
- switch (BSScriptRead8(gBattlescriptCurrInstr + 2))
+ gActiveBank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
+ switch (T2_READ_8(gBattlescriptCurrInstr + 2))
{
case 0:
CancelMultiTurnMoves(gActiveBank);
@@ -12261,7 +12236,7 @@ static void atk76_various(void)
else
gActiveBank = 2;
- choiced_move = (u16*)(&ewram[gActiveBank * 2 + 0x160e8]);
+ choiced_move = CHOICED_MOVE(gActiveBank);
for (i = 0; i < 4; i++)
{
if (gBattleMons[gActiveBank].moves[i] == *choiced_move)
@@ -12360,7 +12335,7 @@ static void atk79_setatkhptozero(void)
static void atk7A_jumpwhiletargetvalid(void) //used by intimidate to loop through all targets
{
- u8* jump_loc = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ u8* jump_loc = T1_READ_PTR(gBattlescriptCurrInstr + 1);
if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE)
{
@@ -12383,9 +12358,9 @@ static void atk7A_jumpwhiletargetvalid(void) //used by intimidate to loop throug
static void atk7B_healhalfHP_if_possible(void)
{
- u8* fail_loc = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ u8* fail_loc = T1_READ_PTR(gBattlescriptCurrInstr + 1);
- if (BSScriptRead8(gBattlescriptCurrInstr + 5) == 1)
+ if (T2_READ_8(gBattlescriptCurrInstr + 5) == 1)
gBankTarget = gBankAttacker;
gBattleMoveDamage = gBattleMons[gBankTarget].maxHP / 2;
@@ -12401,11 +12376,11 @@ static void atk7B_healhalfHP_if_possible(void)
static void atk7C_8025508(void)
{
- u16 r7 = ewram[gBankAttacker * 2 + 0x160ac] | (ewram[gBankAttacker * 2 + 0x160ad] << 8);
- u16 r6 = ewram[gBankAttacker * 4 + 0x16100] | (ewram[gBankAttacker * 4 + 0x16101] << 8);
- u16 r5 = ewram[gBankAttacker * 4 + 0x16102] | (ewram[gBankAttacker * 4 + 0x16103] << 8);
+ u16 r7 = ewram160ACarr2(0, gBankAttacker) | (ewram160ACarr2(1, gBankAttacker) << 8);
+ u16 r6 = ewram16100arr2(0, gBankAttacker) | (ewram16100arr2(1, gBankAttacker) << 8);
+ u16 r5 = ewram16100arr2(2, gBankAttacker) | (ewram16100arr2(3, gBankAttacker) << 8);
- if (r7 !=0 && r7 != 0xFFFF)
+ if (r7 != 0 && r7 != 0xFFFF)
{
gHitMarker &= ~(HITMARKER_ATTACKSTRING_PRINTED);
gCurrentMove = r7;
@@ -12502,7 +12477,7 @@ static void atk7F_setseeded(void)
static void atk80_manipulatedamage(void)
{
- switch (BSScriptRead8(gBattlescriptCurrInstr + 1))
+ switch (T2_READ_8(gBattlescriptCurrInstr + 1))
{
case 0:
gBattleMoveDamage *= -1;
@@ -12524,7 +12499,7 @@ static void atk80_manipulatedamage(void)
static void atk81_setrest(void)
{
- u8* fail_loc = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ u8* fail_loc = T1_READ_PTR(gBattlescriptCurrInstr + 1);
gActiveBank = gBankTarget = gBankAttacker;
gBattleMoveDamage = gBattleMons[gBankTarget].maxHP * (-1);
if (gBattleMons[gBankTarget].hp == gBattleMons[gBankTarget].maxHP)
@@ -12545,7 +12520,7 @@ static void atk81_setrest(void)
static void atk82_jumpifnotfirstturn(void)
{
- u8* jump_loc = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ u8* jump_loc = T1_READ_PTR(gBattlescriptCurrInstr + 1);
if (gDisableStructs[gBankAttacker].isFirstTurn)
gBattlescriptCurrInstr += 5;
@@ -12582,7 +12557,7 @@ bool8 UproarWakeUpCheck(u8 bank)
static void atk84_jump_if_cant_sleep(void)
{
- u8* jump_loc = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ u8* jump_loc = T1_READ_PTR(gBattlescriptCurrInstr + 1);
if (UproarWakeUpCheck(gBankTarget))
gBattlescriptCurrInstr = jump_loc;
else if (gBattleMons[gBankTarget].ability == ABILITY_INSOMNIA || gBattleMons[gBankTarget].ability == ABILITY_VITAL_SPIRIT)
@@ -12621,7 +12596,7 @@ static void atk85_stockpile(void)
static void atk86_stockpiletobasedamage(void)
{
- u8* jump_loc = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ u8* jump_loc = T1_READ_PTR(gBattlescriptCurrInstr + 1);
if (gDisableStructs[gBankAttacker].stockpileCounter == 0)
{
gBattlescriptCurrInstr = jump_loc;
@@ -12646,7 +12621,7 @@ static void atk86_stockpiletobasedamage(void)
static void atk87_stockpiletohpheal(void)
{
- u8* jump_loc = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ u8* jump_loc = T1_READ_PTR(gBattlescriptCurrInstr + 1);
if (gDisableStructs[gBankAttacker].stockpileCounter == 0)
{
gBattlescriptCurrInstr = jump_loc;
@@ -12979,7 +12954,7 @@ _08025F10: .4byte gBattlescriptCurrInstr\n\
_08025F14:\n\
mov r0, r8\n\
bl b_movescr_stack_push\n\
- ldr r0, _08025F40 @ =0x02000000\n\
+ ldr r0, _08025F40 @ =gSharedMem\n\
ldr r6, _08025F44 @ =gActiveBank\n\
ldrb r1, [r6]\n\
ldr r2, _08025F48 @ =0x00016003\n\
@@ -12999,7 +12974,7 @@ _08025F14:\n\
strb r1, [r0]\n\
b _08025F74\n\
.align 2, 0\n\
-_08025F40: .4byte 0x02000000\n\
+_08025F40: .4byte gSharedMem\n\
_08025F44: .4byte gActiveBank\n\
_08025F48: .4byte 0x00016003\n\
_08025F4C: .4byte gBattlescriptCurrInstr\n\
@@ -13074,7 +13049,7 @@ _08025FDC: .4byte gBattlescriptCurrInstr\n\
_08025FE0:\n\
mov r0, r8\n\
bl b_movescr_stack_push\n\
- ldr r0, _08026028 @ =0x02000000\n\
+ ldr r0, _08026028 @ =gSharedMem\n\
ldr r2, _0802602C @ =gActiveBank\n\
ldrb r1, [r2]\n\
ldr r3, _08026030 @ =0x00016003\n\
@@ -13106,7 +13081,7 @@ _08025FE0:\n\
strb r1, [r0]\n\
b _08025F74\n\
.align 2, 0\n\
-_08026028: .4byte 0x02000000\n\
+_08026028: .4byte gSharedMem\n\
_0802602C: .4byte gActiveBank\n\
_08026030: .4byte 0x00016003\n\
_08026034: .4byte gBattlescriptCurrInstr\n\
@@ -13131,7 +13106,7 @@ _08026040:\n\
bne _08025F74\n\
mov r0, r8\n\
bl b_movescr_stack_push\n\
- ldr r0, _08026094 @ =0x02000000\n\
+ ldr r0, _08026094 @ =gSharedMem\n\
ldr r3, _08026090 @ =gActiveBank\n\
ldrb r1, [r3]\n\
ldr r6, _08026098 @ =0x00016003\n\
@@ -13153,7 +13128,7 @@ _08026040:\n\
b _08025F74\n\
.align 2, 0\n\
_08026090: .4byte gActiveBank\n\
-_08026094: .4byte 0x02000000\n\
+_08026094: .4byte gSharedMem\n\
_08026098: .4byte 0x00016003\n\
_0802609C: .4byte gBattlescriptCurrInstr\n\
_080260A0: .4byte BattleScript_AbilityNoSpecificStatLoss\n\
@@ -13179,7 +13154,7 @@ _080260A8:\n\
_080260CA:\n\
mov r0, r8\n\
bl b_movescr_stack_push\n\
- ldr r0, _08026100 @ =0x02000000\n\
+ ldr r0, _08026100 @ =gSharedMem\n\
ldr r3, _080260FC @ =gActiveBank\n\
ldrb r1, [r3]\n\
ldr r6, _08026104 @ =0x00016003\n\
@@ -13201,7 +13176,7 @@ _080260CA:\n\
b _08025F74\n\
.align 2, 0\n\
_080260FC: .4byte gActiveBank\n\
-_08026100: .4byte 0x02000000\n\
+_08026100: .4byte gSharedMem\n\
_08026104: .4byte 0x00016003\n\
_08026108: .4byte gBattlescriptCurrInstr\n\
_0802610C: .4byte BattleScript_AbilityNoSpecificStatLoss\n\
@@ -13433,8 +13408,8 @@ _080262C0: .4byte gBattleMoveFlags\n\
static void atk89_statbuffchange(void)
{
- u8* jump_loc = BSScriptReadPtr(gBattlescriptCurrInstr + 2);
- if (ChangeStatBuffs(BATTLE_STRUCT->statChanger & 0xF0, BATTLE_STRUCT->statChanger & 0xF, BSScriptRead8(gBattlescriptCurrInstr + 1), jump_loc) == 0)
+ u8* jump_loc = T1_READ_PTR(gBattlescriptCurrInstr + 2);
+ if (ChangeStatBuffs(BATTLE_STRUCT->statChanger & 0xF0, BATTLE_STRUCT->statChanger & 0xF, T2_READ_8(gBattlescriptCurrInstr + 1), jump_loc) == 0)
gBattlescriptCurrInstr += 6;
}
@@ -13469,8 +13444,8 @@ static void atk8C_confuseifrepeatingattackends(void)
static void atk8D_setmultihit_counter(void)
{
- if (BSScriptRead8(gBattlescriptCurrInstr + 1))
- gMultiHitCounter = BSScriptRead8(gBattlescriptCurrInstr + 1);
+ if (T2_READ_8(gBattlescriptCurrInstr + 1))
+ gMultiHitCounter = T2_READ_8(gBattlescriptCurrInstr + 1);
else
{
gMultiHitCounter = Random() & 3;
@@ -13484,12 +13459,12 @@ static void atk8D_setmultihit_counter(void)
static void atk8E_prepare_multihit(void)
{
- ewram[0x160e0] = 0xFD;
- ewram[0x160e1] = 1;
- ewram[0x160e2] = 1;
- ewram[0x160e3] = 1;
- ewram[0x160e4] = 0;
- ewram[0x160e5] = 0xFF;
+ ewram160E0(0) = 0xFD;
+ ewram160E0(1) = 1;
+ ewram160E0(2) = 1;
+ ewram160E0(3) = 1;
+ ewram160E0(4) = 0;
+ ewram160E0(5) = 0xFF;
gBattlescriptCurrInstr++;
}
@@ -13497,17 +13472,17 @@ static bool8 sub_80264C0(void)
{
if (gBattleMons[gBankAttacker].level >= gBattleMons[gBankTarget].level)
{
- ewram[gBankTarget + 0x16064] = gBattlePartyID[gBankTarget];
+ ewram16064arr(gBankTarget) = gBattlePartyID[gBankTarget];
}
else
{
u16 random = Random() & 0xFF;
if ((u32)((random * (gBattleMons[gBankAttacker].level + gBattleMons[gBankTarget].level) >> 8) + 1) <= (gBattleMons[gBankTarget].level / 4))
{
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
return 0;
}
- ewram[gBankTarget + 0x16064] = gBattlePartyID[gBankTarget];
+ ewram16064arr(gBankTarget) = gBattlePartyID[gBankTarget];
}
gBattlescriptCurrInstr = gUnknown_081D90FC;
return 1;
@@ -13555,7 +13530,7 @@ static void atk8F_forcerandomswitch(void)
if ((valid < 2 && (gBattleTypeFlags & (BATTLE_TYPE_DOUBLE | BATTLE_TYPE_MULTI)) != BATTLE_TYPE_DOUBLE)
|| (valid < 3 && (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) && !(gBattleTypeFlags & BATTLE_TYPE_MULTI)))
{
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
else if (sub_80264C0())
{
@@ -13588,7 +13563,7 @@ static void atk8F_forcerandomswitch(void)
} while (i == gBattlePartyID[gBankTarget] || !MON_CAN_BATTLE(&party[i]));
}
}
- ewram[gBankTarget + 0x16068] = i;
+ ewram16068arr(gBankTarget) = i;
if (!IsLinkDoubleBattle())
sub_8012258(gBankTarget);
sub_8094B6C(gBankTarget, i, 0);
@@ -13631,7 +13606,7 @@ static void atk90_conversion_type_change(void)
if (checked_move == valid_moves)
{
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
else
{
@@ -13750,7 +13725,7 @@ MOVESTATUS_MISSED_LABEL:
gBattleCommunication[MULTISTRING_CHOOSER] = 1;
else
gBattleCommunication[MULTISTRING_CHOOSER] = 0;
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
#else
@@ -14205,7 +14180,7 @@ static void atk97_try_infatuation(void)
|| gStatuses3[gBankTarget] & STATUS3_SEMI_INVULNERABLE || gBattleMons[gBankTarget].status2 & STATUS2_INFATUATION || GetGenderFromSpeciesAndPersonality(atk_species, atk_pid) == 0xFF
|| GetGenderFromSpeciesAndPersonality(def_species, def_pid) == 0xFF)
{
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
else
{
@@ -14220,9 +14195,9 @@ static void atk98_status_icon_update(void)
if (gBattleExecBuffer)
return;
- if (BSScriptRead8(gBattlescriptCurrInstr + 1) != 4)
+ if (T2_READ_8(gBattlescriptCurrInstr + 1) != 4)
{
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
+ gActiveBank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
EmitStatusIconUpdate(0, gBattleMons[gActiveBank].status1, gBattleMons[gActiveBank].status2);
MarkBufferBankForExecution(gActiveBank);
gBattlescriptCurrInstr += 2;
@@ -14362,7 +14337,7 @@ static void atk9D_copyattack(void)
if (IsMoveUncopyable(gLastUsedMove[gBankTarget]) || gBattleMons[gBankAttacker].status2 & STATUS2_TRANSFORMED
|| gLastUsedMove[gBankTarget] == 0 || gLastUsedMove[gBankTarget] == 0xFFFF)
{
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
else
{
@@ -14390,7 +14365,7 @@ static void atk9D_copyattack(void)
gBattlescriptCurrInstr += 5;
}
else
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
}
@@ -14527,7 +14502,7 @@ static void atkA1_counterdamagecalculator(void)
else
{
gSpecialStatuses[gBankAttacker].flag20 = 1;
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
}
@@ -14547,7 +14522,7 @@ static void atkA2_mirrorcoatdamagecalculator(void) //a copy of atkA1 with the ph
else
{
gSpecialStatuses[gBankAttacker].flag20 = 1;
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
}
@@ -14574,7 +14549,7 @@ static void atkA3_disablelastusedattack(void)
}
else
{
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
}
@@ -14598,7 +14573,7 @@ static void atkA4_setencore(void)
}
else
{
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
}
@@ -14619,14 +14594,14 @@ static void atkA5_painsplitdmgcalc(void)
gBattlescriptCurrInstr += 5;
}
else
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
#ifdef NONMATCHING
static void atkA6_settypetorandomresistance(void)
{
if (gMoveHitWith[gBankAttacker] == 0 || gMoveHitWith[gBankAttacker] == 0xFFFF || (IsTwoTurnsMove(gMoveHitWith[gBankAttacker]) && !gProtectStructs[gBankAttacker].physicalDmg && !gProtectStructs[gBankAttacker].specialDmg))
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
else
{
int type = 0, rands = 0;
@@ -14668,7 +14643,7 @@ static void atkA6_settypetorandomresistance(void)
type += 3, rands += 3;
} while (rands < 336);
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
}
@@ -14957,7 +14932,7 @@ static void atkA8_copymovepermanently(void)
break;
}
if (i != 4) //sketch fail
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
else //sketch worked
{
struct move_pp moves_data;
@@ -14981,7 +14956,7 @@ static void atkA8_copymovepermanently(void)
}
}
else //sketch fail
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
static bool8 IsTwoTurnsMove(u16 move)
@@ -15042,7 +15017,7 @@ static void atkA9_sleeptalk_choose_move(void)
gCurrMovePos = random_pos;
gHitMarker &= ~(HITMARKER_ATTACKSTRING_PRINTED);
gBankTarget = GetMoveTarget(gRandomMove, 0);
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
}
@@ -15122,7 +15097,7 @@ static void atkAD_spite_ppreduce(void)
return;
}
}
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
static void atkAE_heal_party_status(void)
@@ -15206,7 +15181,7 @@ static void atkAF_cursetarget(void)
{
if (gBattleMons[gBankTarget].status2 & STATUS2_CURSED || gStatuses3[gBankTarget] & STATUS3_SEMI_INVULNERABLE)
{
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
else
{
@@ -15224,7 +15199,7 @@ static void atkB0_set_spikes(void)
if (gSideTimer[side].spikesAmount == 3)
{
gSpecialStatuses[gBankAttacker].flag20 = 1;
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
else
{
@@ -15258,7 +15233,7 @@ static void atkB2_setperishsong(void)
sub_80153D0(gBankAttacker);
if (not_affected_pokes == gNoOfAllBanks)
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
else
gBattlescriptCurrInstr += 5;
}
@@ -15296,8 +15271,8 @@ static void atkB3_rolloutdamagecalculation(void)
static void atkB4_jumpifconfusedandstatmaxed(void)
{
- if (gBattleMons[gBankTarget].status2 & STATUS2_CONFUSION && gBattleMons[gBankTarget].statStages[BSScriptRead8(gBattlescriptCurrInstr + 1)] == 0xC)
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 2);
+ if (gBattleMons[gBankTarget].status2 & STATUS2_CONFUSION && gBattleMons[gBankTarget].statStages[T2_READ_8(gBattlescriptCurrInstr + 1)] == 0xC)
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 2);
else
gBattlescriptCurrInstr += 6;
}
@@ -15449,7 +15424,7 @@ static void atkBA_jumpifnopursuitswitchdmg(void)
gBankTarget = GetBankByPlayerAI(2);
}
- if (gActionForBanks[gBankTarget] == 0 && gBankAttacker == ewram[gBankTarget + 0x16010] && !(gBattleMons[gBankTarget].status1 & (STATUS_SLEEP | STATUS_FREEZE))
+ if (gActionForBanks[gBankTarget] == 0 && gBankAttacker == ewram16010arr(gBankTarget) && !(gBattleMons[gBankTarget].status1 & (STATUS_SLEEP | STATUS_FREEZE))
&& gBattleMons[gBankAttacker].hp && !gDisableStructs[gBankTarget].truantCounter && gChosenMovesByBanks[gBankTarget] == MOVE_PURSUIT)
{
int i;
@@ -15464,7 +15439,7 @@ static void atkBA_jumpifnopursuitswitchdmg(void)
gHitMarker &= ~(HITMARKER_ATTACKSTRING_PRINTED);
}
else
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
static void atkBB_setsunny(void)
@@ -15499,7 +15474,7 @@ static void atkBC_maxattackhalvehp(void) //belly drum
}
else
{
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
}
@@ -15518,11 +15493,11 @@ static void atkBE_breakfree(void) //rapid spin
if (gBattleMons[gBankAttacker].status2 & STATUS2_WRAPPED)
{
gBattleMons[gBankAttacker].status2 &= ~(STATUS2_WRAPPED);
- gBankTarget = ewram[gBankAttacker + 0x16020];
+ gBankTarget = ewram16020arr(gBankAttacker);
gBattleTextBuff1[0] = 0xFD;
gBattleTextBuff1[1] = 2;
- gBattleTextBuff1[2] = ewram[gBankAttacker * 2 + 0x16004];
- gBattleTextBuff1[3] = ewram[gBankAttacker * 2 + 0x16005];
+ gBattleTextBuff1[2] = ewram16004arr(0, gBankAttacker);
+ gBattleTextBuff1[3] = ewram16004arr(1, gBankAttacker);
gBattleTextBuff1[4] = 0xFF;
b_movescr_stack_push_cursor();
gBattlescriptCurrInstr = BattleScript_WrapFree;
@@ -15569,7 +15544,7 @@ static void atkC0_recoverbasedonsunlight(void)
}
else
{
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
}
@@ -15681,7 +15656,7 @@ push {r4-r7,lr}\n\
bl __divsi3\n\
adds r0, 0x1E\n\
strh r0, [r5]\n\
- ldr r5, _080298A0 @ =0x02000000\n\
+ ldr r5, _080298A0 @ =gSharedMem\n\
lsls r0, r4, 4\n\
subs r0, r4\n\
movs r1, 0x3F\n\
@@ -15716,7 +15691,7 @@ _08029876:\n\
_08029894: .4byte gBattleMons\n\
_08029898: .4byte gBankAttacker\n\
_0802989C: .4byte gDynamicBasePower\n\
-_080298A0: .4byte 0x02000000\n\
+_080298A0: .4byte gSharedMem\n\
_080298A4: .4byte 0x0001601c\n\
_080298A8: .4byte gBattlescriptCurrInstr\n\
.syntax divided");
@@ -15738,7 +15713,7 @@ static void atkC3_setfutureattack(void)
{
if (gWishFutureKnock.futureSightCounter[gBankTarget] != 0)
{
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
else
{
@@ -15771,7 +15746,7 @@ static void atkC4_beat_up(void)
party = gEnemyParty;
if (gBattleMons[gBankTarget].hp == 0)
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
else
{
while (gBattleCommunication[0] < 6)
@@ -15801,9 +15776,9 @@ static void atkC4_beat_up(void)
gBattleCommunication[0]++;
}
else if (gBattleCommunication[0] != 0)
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
else
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 5);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 5);
}
}
#else
@@ -16125,7 +16100,7 @@ static void atkC9_jumpifattackandspecialattackcannotfall(void) //memento
if (gBattleMons[gBankTarget].statStages[STAT_STAGE_ATK] == 0
&& gBattleMons[gBankTarget].statStages[STAT_STAGE_SPATK] == 0
&& gBattleCommunication[6] != 1)
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
else
{
gActiveBank = gBankAttacker;
@@ -16171,13 +16146,13 @@ static void atkCD_cureifburnedparalysedorpoisoned(void) //refresh
MarkBufferBankForExecution(gActiveBank);
}
else
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
static void atkCE_settorment(void)
{
if (gBattleMons[gBankTarget].status2 & STATUS2_TORMENT)
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
else
{
gBattleMons[gBankTarget].status2 |= STATUS2_TORMENT;
@@ -16190,7 +16165,7 @@ static void atkCF_jumpifnodamage(void)
if (gProtectStructs[gBankAttacker].physicalDmg || gProtectStructs[gBankAttacker].specialDmg)
gBattlescriptCurrInstr += 5;
else
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
static void atkD0_settaunt(void)
@@ -16202,7 +16177,7 @@ static void atkD0_settaunt(void)
gBattlescriptCurrInstr += 5;
}
else
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
static void atkD1_set_helpinghand(void)
@@ -16215,7 +16190,7 @@ static void atkD1_set_helpinghand(void)
gBattlescriptCurrInstr += 5;
}
else
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
#ifdef NONMATCHING
@@ -16227,7 +16202,7 @@ static void atkD2_swap_items(void)
if (gBattleTypeFlags)
}
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
#else
@@ -16397,7 +16372,7 @@ _0802A364: .4byte BattleScript_NoItemSteal\n\
_0802A368: .4byte gLastUsedAbility\n\
_0802A36C:\n\
lsls r0, r4, 1\n\
- ldr r4, _0802A458 @ =0x020160f0\n\
+ ldr r4, _0802A458 @ =gSharedMem + 0x160F0\n\
adds r6, r0, r4\n\
ldrh r5, [r5, 0x2E]\n\
mov r10, r5\n\
@@ -16511,7 +16486,7 @@ _0802A36C:\n\
movs r0, 0x2\n\
b _0802A498\n\
.align 2, 0\n\
-_0802A458: .4byte 0x020160f0\n\
+_0802A458: .4byte gSharedMem + 0x160F0\n\
_0802A45C: .4byte gBankAttacker\n\
_0802A460: .4byte gActiveBank\n\
_0802A464: .4byte 0xfffe9f10\n\
@@ -16560,12 +16535,12 @@ static void atkD3_copy_ability(void) //role play
gBattlescriptCurrInstr += 5;
}
else
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
static void atkD4_wish_effect(void)
{
- switch (BSScriptRead8(gBattlescriptCurrInstr + 1))
+ switch (T2_READ_8(gBattlescriptCurrInstr + 1))
{
case 0: //use wish
if (gWishFutureKnock.wishCounter[gBankAttacker] == 0)
@@ -16575,7 +16550,7 @@ static void atkD4_wish_effect(void)
gBattlescriptCurrInstr += 6;
}
else
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 2);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 2);
break;
case 1: //heal effect
gBattleTextBuff1[0] = 0xFD;
@@ -16588,7 +16563,7 @@ static void atkD4_wish_effect(void)
gBattleMoveDamage = 1;
gBattleMoveDamage *= -1;
if (gBattleMons[gBankTarget].hp == gBattleMons[gBankTarget].maxHP)
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 2);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 2);
else
gBattlescriptCurrInstr += 6;
break;
@@ -16598,7 +16573,7 @@ static void atkD4_wish_effect(void)
static void atkD5_setroots(void) //ingrain
{
if (gStatuses3[gBankAttacker] & STATUS3_ROOTED)
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
else
{
gStatuses3[gBankAttacker] |= STATUS3_ROOTED;
@@ -16617,7 +16592,7 @@ static void atkD6_doubledamagedealtifdamaged(void)
static void atkD7_setyawn(void)
{
if (gStatuses3[gBankTarget] & STATUS3_YAWN || (u8) gBattleMons[gBankTarget].status1)
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
else
{
gStatuses3[gBankTarget] |= 0x1000;
@@ -16629,7 +16604,7 @@ static void atkD8_setdamagetohealthdifference(void)
{
if (gBattleMons[gBankTarget].hp <= gBattleMons[gBankAttacker].hp)
{
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
else
{
@@ -16655,7 +16630,7 @@ static void atkDA_abilityswap(void)
if ((gBattleMons[gBankAttacker].ability == 0 && gBattleMons[gBankTarget].ability == 0)
|| gBattleMons[gBankAttacker].ability == ABILITY_WONDER_GUARD || gBattleMons[gBankTarget].ability == ABILITY_WONDER_GUARD
|| gBattleMoveFlags & MOVESTATUS_NOEFFECT)
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
else
{
u8 atk_ability = gBattleMons[gBankAttacker].ability;
@@ -16670,7 +16645,7 @@ static void atkDB_imprisoneffect(void)
u8 r8 = 0;
if ((gStatuses3[gBankAttacker] & STATUS3_IMPRISIONED))
{
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
else
{
@@ -16701,14 +16676,14 @@ static void atkDB_imprisoneffect(void)
}
}
if (bank == gNoOfAllBanks)
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
}
static void atkDC_setgrudge(void)
{
if (gStatuses3[gBankAttacker] & STATUS3_GRUDGE)
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
else
{
gStatuses3[gBankAttacker] |= STATUS3_GRUDGE;
@@ -16782,7 +16757,7 @@ static void atkDE_asistattackselect(void)
gBattlescriptCurrInstr += 5;
}
else
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
#else
@@ -16845,7 +16820,7 @@ _0802AAAE:\n\
mov r9, r6\n\
mov r1, r10\n\
lsls r0, r1, 1\n\
- ldr r1, _0802ABB0 @ =0x02016024\n\
+ ldr r1, _0802ABB0 @ =gSharedMem + 0x16024\n\
adds r6, r0, r1\n\
_0802AAF8:\n\
movs r7, 0\n\
@@ -16916,7 +16891,7 @@ _0802AB54:\n\
muls r0, r1\n\
asrs r0, 8\n\
lsls r0, 1\n\
- ldr r1, _0802ABB0 @ =0x02016024\n\
+ ldr r1, _0802ABB0 @ =gSharedMem + 0x16024\n\
adds r0, r1\n\
ldrh r0, [r0]\n\
strh r0, [r4]\n\
@@ -16936,7 +16911,7 @@ _0802ABA0: .4byte gPlayerParty\n\
_0802ABA4: .4byte gEnemyParty\n\
_0802ABA8: .4byte gBattlePartyID\n\
_0802ABAC: .4byte 0x0000ffff\n\
-_0802ABB0: .4byte 0x02016024\n\
+_0802ABB0: .4byte gSharedMem + 0x16024\n\
_0802ABB4: .4byte sUnknown_081FACFE\n\
_0802ABB8: .4byte gHitMarker\n\
_0802ABBC: .4byte 0xfffffbff\n\
@@ -16978,7 +16953,7 @@ static void atkDF_setmagiccoat(void)
gBankTarget = gBankAttacker;
gSpecialStatuses[gBankAttacker].flag20 = 1;
if (gCurrentMoveTurn == gNoOfAllBanks - 1) //last turn
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
else
{
gProtectStructs[gBankAttacker].bounceMove = 1;
@@ -16990,7 +16965,7 @@ static void atkE0_setstealstatchange(void)
{
gSpecialStatuses[gBankAttacker].flag20 = 1;
if (gCurrentMoveTurn == gNoOfAllBanks - 1) //last turn
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
else
{
gProtectStructs[gBankAttacker].stealMove = 1;
@@ -17002,7 +16977,7 @@ static void atkE1_intimidate_string_loader(void)
{
u8 side;
- BATTLE_STRUCT->scriptingActive = ewram[0x160dd];
+ BATTLE_STRUCT->scriptingActive = ewram160DD;
side = GetBankSide(BATTLE_STRUCT->scriptingActive);
gBattleTextBuff1[0] = 0xFD;
gBattleTextBuff1[1] = 9;
@@ -17018,19 +16993,19 @@ static void atkE1_intimidate_string_loader(void)
}
if (gBankTarget >= gNoOfAllBanks)
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
else
gBattlescriptCurrInstr += 5;
}
static void atkE2_switchout_abilities(void)
{
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
+ gActiveBank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
switch (gBattleMons[gActiveBank].ability)
{
case ABILITY_NATURAL_CURE:
gBattleMons[gActiveBank].status1 = 0;
- EmitSetAttributes(0, REQUEST_STATUS_BATTLE, gBitTable[ewram[gActiveBank + 0x16064]], 4, &gBattleMons[gActiveBank].status1);
+ EmitSetAttributes(0, REQUEST_STATUS_BATTLE, gBitTable[ewram16064arr(gActiveBank)], 4, &gBattleMons[gActiveBank].status1);
MarkBufferBankForExecution(gActiveBank);
break;
}
@@ -17039,9 +17014,9 @@ static void atkE2_switchout_abilities(void)
static void atkE3_jumpiffainted(void)
{
- gActiveBank = GetBattleBank(BSScriptRead8(gBattlescriptCurrInstr + 1));
+ gActiveBank = GetBattleBank(T2_READ_8(gBattlescriptCurrInstr + 1));
if (gBattleMons[gActiveBank].hp == 0)
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 2);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 2);
else
gBattlescriptCurrInstr += 6;
}
@@ -17155,7 +17130,7 @@ static void atkE8_settypebasedhalvers(void) //water/mud sport
if (worked)
gBattlescriptCurrInstr += 5;
else
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
static void atkE9_setweatherballtype(void)
@@ -17193,7 +17168,7 @@ static void atkEA_recycleitem(void)
gBattlescriptCurrInstr += 5;
}
else
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
static void atkEB_settypetoterrain(void)
@@ -17209,7 +17184,7 @@ static void atkEB_settypetoterrain(void)
gBattlescriptCurrInstr += 5;
}
else
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
static void atkEC_pursuit_sth(void)
@@ -17225,7 +17200,7 @@ static void atkEC_pursuit_sth(void)
gBankAttacker = gActiveBank;
}
else
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
static void atkED_802B4B4(void)
@@ -17401,7 +17376,7 @@ static void atkF0_copy_caught_poke(void)
static void atkF1_setpoke_as_caught(void)
{
if (GetSetPokedexFlag(SpeciesToNationalPokedexNum(gBattleMons[gBankTarget].species), 1))
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
else
{
GetSetPokedexFlag(SpeciesToNationalPokedexNum(gBattleMons[gBankTarget].species), 3);
@@ -17605,14 +17580,14 @@ static void atkF3_nickname_caught_poke(void)
if (gMain.callback2 == sub_800F808 && !gPaletteFade.active )
{
SetMonData(&gEnemyParty[gBattlePartyID[gBankAttacker ^ 1]], MON_DATA_NICKNAME, BATTLE_STRUCT->caughtNick);
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
}
break;
case 4:
if (CalculatePlayerPartyCount() == 6)
gBattlescriptCurrInstr += 5;
else
- gBattlescriptCurrInstr = BSScriptReadPtr(gBattlescriptCurrInstr + 1);
+ gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
break;
}
}
diff --git a/src/battle/battle_7.c b/src/battle/battle_7.c
index ad96510cf..fe1d0b159 100644
--- a/src/battle/battle_7.c
+++ b/src/battle/battle_7.c
@@ -18,16 +18,7 @@
#include "task.h"
#include "text.h"
#include "gba/m4a_internal.h"
-
-struct Struct2019348
-{
- u8 filler0[2];
- u16 unk2;
- u8 filler4[4];
- u32 unk8;
- u32 unkC;
- u32 unk10;
-};
+#include "ewram.h"
extern u8 gBattleBufferA[][0x200];
extern u8 gActiveBank;
@@ -71,8 +62,6 @@ extern const struct CompressedSpriteSheet gUnknown_0820A4B4[];
extern const struct SpritePalette gUnknown_0820A4D4[];
extern const u8 gUnknown_08D09C48[];
-#define ewram19348 (*(struct Struct2019348 *)(ewram + 0x19348))
-
extern void c3_0802FDF4(u8);
extern void sub_80440EC();
extern void sub_804777C();
@@ -295,7 +284,7 @@ void BattleLoadOpponentMonSprite(struct Pokemon *pkmn, u8 b)
&gMonFrontPicTable[species],
gMonFrontPicCoords[species].coords,
gMonFrontPicCoords[species].y_offset,
- 0x02000000,
+ eVoidSharedArr2,
gUnknown_081FAF4C[var],
species,
r7);
@@ -304,14 +293,14 @@ void BattleLoadOpponentMonSprite(struct Pokemon *pkmn, u8 b)
lzPaletteData = GetMonSpritePal(pkmn);
else
lzPaletteData = GetMonSpritePalFromOtIdPersonality(species, otId, personalityValue);
- LZDecompressWram(lzPaletteData, ewram);
- LoadPalette(ewram, paletteOffset, 0x20);
- LoadPalette(ewram, 0x80 + b * 16, 0x20);
+ LZDecompressWram(lzPaletteData, gSharedMem);
+ LoadPalette(gSharedMem, paletteOffset, 0x20);
+ LoadPalette(gSharedMem, 0x80 + b * 16, 0x20);
if (species == SPECIES_CASTFORM)
{
paletteOffset = 0x100 + b * 16;
- LZDecompressWram(lzPaletteData, ewram + 0x16400);
- LoadPalette(ewram + 0x16400 + gBattleMonForms[b] * 32, paletteOffset, 0x20);
+ LZDecompressWram(lzPaletteData, ewram16400);
+ LoadPalette(ewram16400 + gBattleMonForms[b] * 32, paletteOffset, 0x20);
}
if (ewram17800[b].transformedSpecies != 0)
{
@@ -347,7 +336,7 @@ void BattleLoadPlayerMonSprite(struct Pokemon *pkmn, u8 b)
&gMonBackPicTable[species],
gMonBackPicCoords[species].coords,
gMonBackPicCoords[species].y_offset,
- 0x02000000,
+ eVoidSharedArr2,
gUnknown_081FAF4C[var],
species,
r7);
@@ -356,14 +345,14 @@ void BattleLoadPlayerMonSprite(struct Pokemon *pkmn, u8 b)
lzPaletteData = GetMonSpritePal(pkmn);
else
lzPaletteData = GetMonSpritePalFromOtIdPersonality(species, otId, personalityValue);
- LZDecompressWram(lzPaletteData, ewram);
- LoadPalette(ewram, paletteOffset, 0x20);
- LoadPalette(ewram, 0x80 + b * 16, 0x20);
+ LZDecompressWram(lzPaletteData, gSharedMem);
+ LoadPalette(gSharedMem, paletteOffset, 0x20);
+ LoadPalette(gSharedMem, 0x80 + b * 16, 0x20);
if (species == SPECIES_CASTFORM)
{
paletteOffset = 0x100 + b * 16;
- LZDecompressWram(lzPaletteData, ewram + 0x16400);
- LoadPalette(ewram + 0x16400 + gBattleMonForms[b] * 32, paletteOffset, 0x20);
+ LZDecompressWram(lzPaletteData, ewram16400);
+ LoadPalette(ewram16400 + gBattleMonForms[b] * 32, paletteOffset, 0x20);
}
if (ewram17800[b].transformedSpecies != 0)
{
@@ -390,7 +379,7 @@ void sub_8031A6C(u16 a, u8 b)
&gTrainerFrontPicTable[a],
gTrainerFrontPicCoords[a].coords,
gTrainerFrontPicCoords[a].y_offset,
- (void *)0x02000000,
+ eVoidSharedArr,
gUnknown_081FAF4C[status],
0);
spriteSheet.data = gUnknown_081FAF4C[status];
@@ -409,7 +398,7 @@ void LoadPlayerTrainerBankSprite(u16 a, u8 b)
&gTrainerBackPicTable[a],
gTrainerBackPicCoords[a].coords,
gTrainerBackPicCoords[a].y_offset,
- (void *)0x02000000,
+ eVoidSharedArr,
gUnknown_081FAF4C[status],
0);
LoadCompressedPalette(gTrainerBackPicPaletteTable[a].data, 0x100 + b * 16, 32);
@@ -506,7 +495,7 @@ bool8 sub_8031C30(u8 a)
void load_gfxc_health_bar(void)
{
- LZDecompressWram(gUnknown_08D09C48, (void *)0x02000000);
+ LZDecompressWram(gUnknown_08D09C48, eVoidSharedArr);
}
u8 battle_load_something(u8 *pState, u8 *b)
@@ -623,7 +612,7 @@ void sub_8031FC4(u8 a, u8 b, bool8 c)
{
StartSpriteAnim(&gSprites[gObjectBankIDs[a]], ewram17840.unk0);
paletteOffset = 0x100 + a * 16;
- LoadPalette(ewram + 0x16400 + ewram17840.unk0 * 32, paletteOffset, 32);
+ LoadPalette(ewram16400 + ewram17840.unk0 * 32, paletteOffset, 32);
gBattleMonForms[a] = ewram17840.unk0;
if (ewram17800[a].transformedSpecies != 0)
{
@@ -637,7 +626,7 @@ void sub_8031FC4(u8 a, u8 b, bool8 c)
const void *src;
void *dst;
- if (IsContest())
+ if (NotInBattle())
{
r10 = 0;
species = ewram19348.unk2;
@@ -647,7 +636,7 @@ void sub_8031FC4(u8 a, u8 b, bool8 c)
&gMonBackPicTable[species],
gMonBackPicCoords[species].coords,
gMonBackPicCoords[species].y_offset,
- 0x02000000,
+ eVoidSharedArr2,
gUnknown_081FAF4C[0],
species,
ewram19348.unk10);
@@ -667,7 +656,7 @@ void sub_8031FC4(u8 a, u8 b, bool8 c)
&gMonBackPicTable[species],
gMonBackPicCoords[species].coords,
gMonBackPicCoords[species].y_offset,
- 0x02000000,
+ eVoidSharedArr2,
gUnknown_081FAF4C[r10],
species,
gPID_perBank[a]);
@@ -680,7 +669,7 @@ void sub_8031FC4(u8 a, u8 b, bool8 c)
&gMonFrontPicTable[species],
gMonFrontPicCoords[species].coords,
gMonFrontPicCoords[species].y_offset,
- 0x02000000,
+ eVoidSharedArr2,
gUnknown_081FAF4C[r10],
species,
gPID_perBank[a]);
@@ -691,18 +680,18 @@ void sub_8031FC4(u8 a, u8 b, bool8 c)
DmaCopy32(3, src, dst, 0x800);
paletteOffset = 0x100 + a * 16;
lzPaletteData = GetMonSpritePalFromOtIdPersonality(species, otId, personalityValue);
- LZDecompressWram(lzPaletteData, ewram);
- LoadPalette(ewram, paletteOffset, 32);
+ LZDecompressWram(lzPaletteData, gSharedMem);
+ LoadPalette(gSharedMem, paletteOffset, 32);
if (species == SPECIES_CASTFORM)
{
- u16 *paletteSrc = (u16 *)(ewram + 0x16400);
+ u16 *paletteSrc = (u16 *)ewram16400; // TODO: avoid casting?
LZDecompressWram(lzPaletteData, paletteSrc);
LoadPalette(paletteSrc + gBattleMonForms[b] * 16, paletteOffset, 32);
}
BlendPalette(paletteOffset, 16, 6, 0x7FFF);
CpuCopy32(gPlttBufferFaded + paletteOffset, gPlttBufferUnfaded + paletteOffset, 32);
- if (!IsContest())
+ if (!NotInBattle())
{
ewram17800[a].transformedSpecies = species;
gBattleMonForms[a] = gBattleMonForms[b];
@@ -722,11 +711,11 @@ void BattleLoadSubstituteSprite(u8 a, u8 b)
if (b == 0)
{
- if (IsContest())
+ if (NotInBattle())
r4 = 0;
else
r4 = GetBankIdentity(a);
- if (IsContest())
+ if (NotInBattle())
LZDecompressVram(gSubstituteDollTilemap, gUnknown_081FAF4C[r4]);
else if (GetBankSide(a) != 0)
LZDecompressVram(gSubstituteDollGfx, gUnknown_081FAF4C[r4]);
@@ -742,7 +731,7 @@ void BattleLoadSubstituteSprite(u8 a, u8 b)
}
else
{
- if (!IsContest())
+ if (!NotInBattle())
{
if (GetBankSide(a) != 0)
BattleLoadOpponentMonSprite(&gEnemyParty[gBattlePartyID[a]], a);
diff --git a/src/battle/battle_ai.c b/src/battle/battle_ai.c
index 1869bbe36..cb6c10676 100644
--- a/src/battle/battle_ai.c
+++ b/src/battle/battle_ai.c
@@ -11,6 +11,7 @@
#include "rom_8077ABC.h"
#include "species.h"
#include "util.h"
+#include "ewram.h"
extern u16 gBattleTypeFlags;
extern u16 gBattleWeather;
@@ -267,10 +268,9 @@ const u16 sDiscouragedPowerfulMoveEffects[] =
void BattleAI_HandleItemUseBeforeAISetup(void)
{
s32 i;
- u8 *data = (u8 *)UNK_2016A00_STRUCT;
+ u8 *data;
- for (i = 0; (u32)i < sizeof(struct UnkBattleStruct1); i++)
- data[i] = 0;
+ MEMSET_ALT(UNK_2016A00_STRUCT, 0, sizeof(struct UnkBattleStruct1), i, data);
if ((gBattleTypeFlags & BATTLE_TYPE_TRAINER)
&& gTrainerBattleOpponent != 0x400
@@ -292,21 +292,23 @@ void BattleAI_HandleItemUseBeforeAISetup(void)
void BattleAI_SetupAIData(void)
{
s32 i;
- u8 *data = (u8 *)AI_THINKING_STRUCT;
- u8 r7;
+ u8 limitations;
+ u8 *data;
// clear AI data and set default move score to 100. strange that they didn't use memset here.
- for (i = 0; (u32)i < sizeof(struct AI_ThinkingStruct); i++)
- data[i] = 0;
+ MEMSET_ALT(AI_THINKING_STRUCT, 0, sizeof(struct AI_ThinkingStruct), i, data);
+
for (i = 0; i < MAX_MON_MOVES; i++)
AI_THINKING_STRUCT->score[i] = 100;
- r7 = CheckMoveLimitations(gActiveBank, 0, 0xFF);
+ limitations = CheckMoveLimitations(gActiveBank, 0, 0xFF);
- // probably sets up the moves to consider and ignores non-valid moves such as NO_MOVE or glitch moves.
+ // do not consider moves the AI cannot select
+ // also, roll simulated RNG for moves that have a degree of
+ // randomness.
for (i = 0; i < MAX_MON_MOVES; i++)
{
- if (gBitTable[i] & r7)
+ if (gBitTable[i] & limitations)
AI_THINKING_STRUCT->score[i] = 0;
AI_THINKING_STRUCT->simulatedRNG[i] = 100 - (Random() % 16);
@@ -411,7 +413,7 @@ void BattleAI_DoAIProcessing(void)
break;
case AIState_Processing:
if (AI_THINKING_STRUCT->moveConsidered != MOVE_NONE)
- sBattleAICmdTable[*(u8 *)gAIScriptPtr](); // run AI command.
+ sBattleAICmdTable[*gAIScriptPtr](); // run AI command.
else
{
AI_THINKING_STRUCT->score[AI_THINKING_STRUCT->movesetIndex] = 0; // definitely do not consider any move that has 0 PP.
@@ -469,7 +471,7 @@ void RecordItemBattle(u8 a, u8 b)
static void BattleAICmd_if_random_less_than(void)
{
if (Random() % 256 < gAIScriptPtr[1])
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 2);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 2);
else
gAIScriptPtr += 6;
}
@@ -477,7 +479,7 @@ static void BattleAICmd_if_random_less_than(void)
static void BattleAICmd_if_random_greater_than(void)
{
if (Random() % 256 > gAIScriptPtr[1])
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 2);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 2);
else
gAIScriptPtr += 6;
}
@@ -485,7 +487,7 @@ static void BattleAICmd_if_random_greater_than(void)
static void BattleAICmd_if_random_equal(void)
{
if (Random() % 256 == gAIScriptPtr[1])
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 2);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 2);
else
gAIScriptPtr += 6;
}
@@ -493,7 +495,7 @@ static void BattleAICmd_if_random_equal(void)
static void BattleAICmd_if_random_not_equal(void)
{
if (Random() % 256 != gAIScriptPtr[1])
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 2);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 2);
else
gAIScriptPtr += 6;
}
@@ -518,7 +520,7 @@ static void BattleAICmd_if_hp_less_than(void)
index = gBankTarget;
if ((u32)(100 * gBattleMons[index].hp / gBattleMons[index].maxHP) < gAIScriptPtr[2])
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 3);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 3);
else
gAIScriptPtr += 7;
}
@@ -533,7 +535,7 @@ static void BattleAICmd_if_hp_more_than(void)
index = gBankTarget;
if ((u32)(100 * gBattleMons[index].hp / gBattleMons[index].maxHP) > gAIScriptPtr[2])
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 3);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 3);
else
gAIScriptPtr += 7;
}
@@ -548,7 +550,7 @@ static void BattleAICmd_if_hp_equal(void)
index = gBankTarget;
if ((u32)(100 * gBattleMons[index].hp / gBattleMons[index].maxHP) == gAIScriptPtr[2])
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 3);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 3);
else
gAIScriptPtr += 7;
}
@@ -563,7 +565,7 @@ static void BattleAICmd_if_hp_not_equal(void)
index = gBankTarget;
if ((u32)(100 * gBattleMons[index].hp / gBattleMons[index].maxHP) != gAIScriptPtr[2])
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 3);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 3);
else
gAIScriptPtr += 7;
}
@@ -578,10 +580,10 @@ static void BattleAICmd_if_status(void)
else
index = gBankTarget;
- arg = AIScriptRead32(gAIScriptPtr + 2);
+ arg = T1_READ_32(gAIScriptPtr + 2);
if ((gBattleMons[index].status1 & arg) != 0)
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 6);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 6);
else
gAIScriptPtr += 10;
}
@@ -596,10 +598,10 @@ static void BattleAICmd_if_not_status(void)
else
index = gBankTarget;
- arg = AIScriptRead32(gAIScriptPtr + 2);
+ arg = T1_READ_32(gAIScriptPtr + 2);
if ((gBattleMons[index].status1 & arg) == 0)
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 6);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 6);
else
gAIScriptPtr += 10;
}
@@ -614,10 +616,10 @@ static void BattleAICmd_if_status2(void)
else
index = gBankTarget;
- arg = AIScriptRead32(gAIScriptPtr + 2);
+ arg = T1_READ_32(gAIScriptPtr + 2);
if ((gBattleMons[index].status2 & arg) != 0)
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 6);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 6);
else
gAIScriptPtr += 10;
}
@@ -632,10 +634,10 @@ static void BattleAICmd_if_not_status2(void)
else
index = gBankTarget;
- arg = AIScriptRead32(gAIScriptPtr + 2);
+ arg = T1_READ_32(gAIScriptPtr + 2);
if ((gBattleMons[index].status2 & arg) == 0)
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 6);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 6);
else
gAIScriptPtr += 10;
}
@@ -650,10 +652,10 @@ static void BattleAICmd_if_status3(void)
else
index = gBankTarget;
- arg = AIScriptRead32(gAIScriptPtr + 2);
+ arg = T1_READ_32(gAIScriptPtr + 2);
if ((gStatuses3[index] & arg) != 0)
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 6);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 6);
else
gAIScriptPtr += 10;
}
@@ -668,10 +670,10 @@ static void BattleAICmd_if_not_status3(void)
else
index = gBankTarget;
- arg = AIScriptRead32(gAIScriptPtr + 2);
+ arg = T1_READ_32(gAIScriptPtr + 2);
if ((gStatuses3[index] & arg) == 0)
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 6);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 6);
else
gAIScriptPtr += 10;
}
@@ -687,10 +689,10 @@ static void BattleAICmd_if_status4(void)
index = gBankTarget;
arg1 = GetBankIdentity(index) & 1;
- arg2 = AIScriptRead32(gAIScriptPtr + 2);
+ arg2 = T1_READ_32(gAIScriptPtr + 2);
if ((gSideAffecting[arg1] & arg2) != 0)
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 6);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 6);
else
gAIScriptPtr += 10;
}
@@ -706,10 +708,10 @@ static void BattleAICmd_if_not_status4(void)
index = gBankTarget;
arg1 = GetBankIdentity(index) & 1;
- arg2 = AIScriptRead32(gAIScriptPtr + 2);
+ arg2 = T1_READ_32(gAIScriptPtr + 2);
if ((gSideAffecting[arg1] & arg2) == 0)
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 6);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 6);
else
gAIScriptPtr += 10;
}
@@ -717,7 +719,7 @@ static void BattleAICmd_if_not_status4(void)
static void BattleAICmd_if_less_than(void)
{
if (AI_THINKING_STRUCT->funcResult < gAIScriptPtr[1])
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 2);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 2);
else
gAIScriptPtr += 6;
}
@@ -725,7 +727,7 @@ static void BattleAICmd_if_less_than(void)
static void BattleAICmd_if_more_than(void)
{
if (AI_THINKING_STRUCT->funcResult > gAIScriptPtr[1])
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 2);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 2);
else
gAIScriptPtr += 6;
}
@@ -733,7 +735,7 @@ static void BattleAICmd_if_more_than(void)
static void BattleAICmd_if_equal(void)
{
if (AI_THINKING_STRUCT->funcResult == gAIScriptPtr[1])
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 2);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 2);
else
gAIScriptPtr += 6;
}
@@ -741,80 +743,80 @@ static void BattleAICmd_if_equal(void)
static void BattleAICmd_if_not_equal(void)
{
if (AI_THINKING_STRUCT->funcResult != gAIScriptPtr[1])
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 2);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 2);
else
gAIScriptPtr += 6;
}
static void BattleAICmd_if_less_than_32(void)
{
- u8 *temp = AIScriptReadPtr(gAIScriptPtr + 1);
+ u8 *temp = T1_READ_PTR(gAIScriptPtr + 1);
if (AI_THINKING_STRUCT->funcResult < *temp)
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 5);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 5);
else
gAIScriptPtr += 9;
}
static void BattleAICmd_if_more_than_32(void)
{
- u8 *temp = AIScriptReadPtr(gAIScriptPtr + 1);
+ u8 *temp = T1_READ_PTR(gAIScriptPtr + 1);
if (AI_THINKING_STRUCT->funcResult > *temp)
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 5);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 5);
else
gAIScriptPtr += 9;
}
static void BattleAICmd_if_equal_32(void)
{
- u8 *temp = AIScriptReadPtr(gAIScriptPtr + 1);
+ u8 *temp = T1_READ_PTR(gAIScriptPtr + 1);
if (AI_THINKING_STRUCT->funcResult == *temp)
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 5);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 5);
else
gAIScriptPtr += 9;
}
static void BattleAICmd_if_not_equal_32(void)
{
- u8 *temp = AIScriptReadPtr(gAIScriptPtr + 1);
+ u8 *temp = T1_READ_PTR(gAIScriptPtr + 1);
if (AI_THINKING_STRUCT->funcResult != *temp)
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 5);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 5);
else
gAIScriptPtr += 9;
}
static void BattleAICmd_if_move(void)
{
- u16 move = AIScriptRead16(gAIScriptPtr + 1);
+ u16 move = T1_READ_16(gAIScriptPtr + 1);
if (AI_THINKING_STRUCT->moveConsidered == move)
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 3);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 3);
else
gAIScriptPtr += 7;
}
static void BattleAICmd_if_not_move(void)
{
- u16 move = AIScriptRead16(gAIScriptPtr + 1);
+ u16 move = T1_READ_16(gAIScriptPtr + 1);
if (AI_THINKING_STRUCT->moveConsidered != move)
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 3);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 3);
else
gAIScriptPtr += 7;
}
static void BattleAICmd_if_in_bytes(void)
{
- u8 *ptr = AIScriptReadPtr(gAIScriptPtr + 1);
+ u8 *ptr = T1_READ_PTR(gAIScriptPtr + 1);
while (*ptr != 0xFF)
{
if (AI_THINKING_STRUCT->funcResult == *ptr)
{
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 5);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 5);
return;
}
ptr++;
@@ -824,7 +826,7 @@ static void BattleAICmd_if_in_bytes(void)
static void BattleAICmd_if_not_in_bytes(void)
{
- u8 *ptr = AIScriptReadPtr(gAIScriptPtr + 1);
+ u8 *ptr = T1_READ_PTR(gAIScriptPtr + 1);
while (*ptr != 0xFF)
{
@@ -835,18 +837,18 @@ static void BattleAICmd_if_not_in_bytes(void)
}
ptr++;
}
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 5);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 5);
}
static void BattleAICmd_if_in_words(void)
{
- u16 *ptr = (u16 *)AIScriptReadPtr(gAIScriptPtr + 1);
+ u16 *ptr = (u16 *)T1_READ_PTR(gAIScriptPtr + 1);
while (*ptr != 0xFFFF)
{
if (AI_THINKING_STRUCT->funcResult == *ptr)
{
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 5);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 5);
return;
}
ptr++;
@@ -856,7 +858,7 @@ static void BattleAICmd_if_in_words(void)
static void BattleAICmd_if_not_in_words(void)
{
- u16 *ptr = (u16 *)AIScriptReadPtr(gAIScriptPtr + 1);
+ u16 *ptr = (u16 *)T1_READ_PTR(gAIScriptPtr + 1);
while (*ptr != 0xFFFF)
{
@@ -867,7 +869,7 @@ static void BattleAICmd_if_not_in_words(void)
}
ptr++;
}
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 5);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 5);
}
static void BattleAICmd_if_user_can_damage(void)
@@ -883,7 +885,7 @@ static void BattleAICmd_if_user_can_damage(void)
if (i == MAX_MON_MOVES)
gAIScriptPtr += 5;
else
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 1);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 1);
}
static void BattleAICmd_if_user_cant_damage(void)
@@ -899,7 +901,7 @@ static void BattleAICmd_if_user_cant_damage(void)
if (i != MAX_MON_MOVES)
gAIScriptPtr += 5;
else
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 1);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 1);
}
static void BattleAICmd_get_turn_count(void)
@@ -951,8 +953,8 @@ static void BattleAICmd_is_most_powerful_move(void)
&& sDiscouragedPowerfulMoveEffects[i] == 0xFFFF)
{
gDynamicBasePower = 0;
- ewram[0x1601C] = 0; // why is this a manual array?
- ewram[0x1601F] = 1;
+ eDynamicMoveType = 0;
+ eDmgMultiplier = 1;
gBattleMoveFlags = 0;
gCritMultiplier = 1;
@@ -1015,7 +1017,7 @@ static void BattleAICmd_is_most_powerful_move(void)
ldrh r1, [r0]\n\
ldr r4, _0810832C @ =0x0000ffff\n\
ldr r6, _08108330 @ =gBattleMoves\n\
- ldr r5, _08108334 @ =0x02016800\n\
+ ldr r5, _08108334 @ =gSharedMem + 0x16800\n\
cmp r1, r4\n\
beq _0810822E\n\
ldrh r1, [r5, 0x2]\n\
@@ -1148,7 +1150,7 @@ _081082BA:\n\
mov r4, sp\n\
add r4, r8\n\
ldr r2, _08108358 @ =gBattleMoveDamage\n\
- ldr r0, _08108334 @ =0x02016800\n\
+ ldr r0, _08108334 @ =gSharedMem + 0x16800\n\
adds r0, 0x18\n\
adds r0, r6, r0\n\
ldrb r1, [r0]\n\
@@ -1166,7 +1168,7 @@ _081082BA:\n\
_08108328: .4byte sDiscouragedPowerfulMoveEffects\n\
_0810832C: .4byte 0x0000ffff\n\
_08108330: .4byte gBattleMoves\n\
-_08108334: .4byte 0x02016800\n\
+_08108334: .4byte gSharedMem + 0x16800\n\
_08108338: .4byte gDynamicBasePower\n\
_0810833C: .4byte 0xfffff81c\n\
_08108340: .4byte gBattleMoveFlags\n\
@@ -1186,7 +1188,7 @@ _08108364:\n\
cmp r6, 0x3\n\
ble _08108276\n\
movs r6, 0\n\
- ldr r1, _081083A4 @ =0x02016800\n\
+ ldr r1, _081083A4 @ =gSharedMem + 0x16800\n\
ldrb r0, [r1, 0x1]\n\
lsls r0, 2\n\
add r0, sp\n\
@@ -1217,7 +1219,7 @@ _0810839A:\n\
str r0, [r5, 0x8]\n\
b _081083B8\n\
.align 2, 0\n\
-_081083A4: .4byte 0x02016800\n\
+_081083A4: .4byte gSharedMem + 0x16800\n\
_081083A8: .4byte gAIScriptPtr\n\
_081083AC:\n\
movs r0, 0x1\n\
@@ -1258,7 +1260,7 @@ static void BattleAICmd_get_move(void)
static void BattleAICmd_if_arg_equal(void)
{
if (gAIScriptPtr[1] == AI_THINKING_STRUCT->funcResult)
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 2);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 2);
else
gAIScriptPtr += 6;
}
@@ -1266,7 +1268,7 @@ static void BattleAICmd_if_arg_equal(void)
static void BattleAICmd_if_arg_not_equal(void)
{
if (gAIScriptPtr[1] != AI_THINKING_STRUCT->funcResult)
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 2);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 2);
else
gAIScriptPtr += 6;
}
@@ -1274,7 +1276,7 @@ static void BattleAICmd_if_arg_not_equal(void)
static void BattleAICmd_if_would_go_first(void)
{
if (GetWhoStrikesFirst(gBankAttacker, gBankTarget, 1) == gAIScriptPtr[1])
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 2);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 2);
else
gAIScriptPtr += 6;
}
@@ -1282,7 +1284,7 @@ static void BattleAICmd_if_would_go_first(void)
static void BattleAICmd_if_would_not_go_first(void)
{
if (GetWhoStrikesFirst(gBankAttacker, gBankTarget, 1) != gAIScriptPtr[1])
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 2);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 2);
else
gAIScriptPtr += 6;
}
@@ -1486,7 +1488,7 @@ static void BattleAICmd_if_damage_bonus(void)
damageVar = gBattleMoveDamage;
if (damageVar == gAIScriptPtr[1])
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 2);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 2);
else
gAIScriptPtr += 6;
}
@@ -1517,7 +1519,7 @@ static void BattleAICmd_if_status_in_party(void)
break;
}
- statusToCompareTo = AIScriptRead32(gAIScriptPtr + 2);
+ statusToCompareTo = T1_READ_32(gAIScriptPtr + 2);
for (i = 0; i < 6; i++)
{
@@ -1527,7 +1529,7 @@ static void BattleAICmd_if_status_in_party(void)
if (species != SPECIES_NONE && species != SPECIES_EGG && hp != 0 && status == statusToCompareTo)
{
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 6); // WHAT. why is this being merged into the above switch
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 6); // WHAT. why is this being merged into the above switch
return;
}
}
@@ -1553,7 +1555,7 @@ static void BattleAICmd_if_status_not_in_party(void)
break;
}
- statusToCompareTo = AIScriptRead32(gAIScriptPtr + 2);
+ statusToCompareTo = T1_READ_32(gAIScriptPtr + 2);
for (i = 0; i < 6; i++)
{
@@ -1565,7 +1567,7 @@ static void BattleAICmd_if_status_not_in_party(void)
if (species != SPECIES_NONE && species != SPECIES_EGG && hp != 0 && status == statusToCompareTo)
gAIScriptPtr += 10; // doesnt return?
}
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 6);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 6);
}
static void BattleAICmd_get_weather(void)
@@ -1585,7 +1587,7 @@ static void BattleAICmd_get_weather(void)
static void BattleAICmd_if_effect(void)
{
if (gBattleMoves[AI_THINKING_STRUCT->moveConsidered].effect == gAIScriptPtr[1])
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 2);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 2);
else
gAIScriptPtr += 6;
}
@@ -1593,7 +1595,7 @@ static void BattleAICmd_if_effect(void)
static void BattleAICmd_if_not_effect(void)
{
if (gBattleMoves[AI_THINKING_STRUCT->moveConsidered].effect != gAIScriptPtr[1])
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 2);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 2);
else
gAIScriptPtr += 6;
}
@@ -1608,7 +1610,7 @@ static void BattleAICmd_if_stat_level_less_than(void)
party = gBankTarget;
if (gBattleMons[party].statStages[gAIScriptPtr[2]] < gAIScriptPtr[3])
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 4);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 4);
else
gAIScriptPtr += 8;
}
@@ -1623,7 +1625,7 @@ static void BattleAICmd_if_stat_level_more_than(void)
party = gBankTarget;
if (gBattleMons[party].statStages[gAIScriptPtr[2]] > gAIScriptPtr[3])
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 4);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 4);
else
gAIScriptPtr += 8;
}
@@ -1638,7 +1640,7 @@ static void BattleAICmd_if_stat_level_equal(void)
party = gBankTarget;
if (gBattleMons[party].statStages[gAIScriptPtr[2]] == gAIScriptPtr[3])
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 4);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 4);
else
gAIScriptPtr += 8;
}
@@ -1653,7 +1655,7 @@ static void BattleAICmd_if_stat_level_not_equal(void)
party = gBankTarget;
if (gBattleMons[party].statStages[gAIScriptPtr[2]] != gAIScriptPtr[3])
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 4);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 4);
else
gAIScriptPtr += 8;
}
@@ -1682,7 +1684,7 @@ static void BattleAICmd_if_can_faint(void)
gBattleMoveDamage = 1;
if (gBattleMons[gBankTarget].hp <= gBattleMoveDamage)
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 1);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 1);
else
gAIScriptPtr += 5;
}
@@ -1709,7 +1711,7 @@ static void BattleAICmd_if_cant_faint(void)
// this macro is missing the damage 0 = 1 assumption.
if (gBattleMons[gBankTarget].hp > gBattleMoveDamage)
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 1);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 1);
else
gAIScriptPtr += 5;
}
@@ -1731,7 +1733,7 @@ static void BattleAICmd_if_has_move(void)
if (i == MAX_MON_MOVES)
gAIScriptPtr += 8;
else
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 4);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 4);
break;
case 0:
case 2:
@@ -1743,7 +1745,7 @@ static void BattleAICmd_if_has_move(void)
if (i == 8)
gAIScriptPtr += 8;
else
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 4);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 4);
break;
}
}
@@ -1765,7 +1767,7 @@ static void BattleAICmd_if_dont_have_move(void)
if (i != MAX_MON_MOVES)
gAIScriptPtr += 8;
else
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 4);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 4);
break;
case 0:
case 2:
@@ -1777,7 +1779,7 @@ static void BattleAICmd_if_dont_have_move(void)
if (i != 8)
gAIScriptPtr += 8;
else
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 4);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 4);
break;
}
}
@@ -1796,7 +1798,7 @@ static void BattleAICmd_if_move_effect(void)
break;
}
if (i != MAX_MON_MOVES)
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 3);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 3);
else
gAIScriptPtr += 7;
break;
@@ -1807,7 +1809,7 @@ static void BattleAICmd_if_move_effect(void)
if (gBattleMons[gBankAttacker].moves[i] != 0 && gBattleMoves[UNK_2016A00_STRUCT->movesUsed[gBankTarget >> 1][i]].effect == gAIScriptPtr[2])
break;
}
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 3);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 3);
}
}
@@ -1827,7 +1829,7 @@ static void BattleAICmd_if_not_move_effect(void)
if (i != MAX_MON_MOVES)
gAIScriptPtr += 7;
else
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 3);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 3);
break;
case 0:
case 2:
@@ -1856,7 +1858,7 @@ static void BattleAICmd_if_last_move_did_damage(void)
gAIScriptPtr += 7;
return;
}
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 3);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 3);
return;
}
else if (gAIScriptPtr[2] != 1) // ignore the macro if its not 0 or 1.
@@ -1866,7 +1868,7 @@ static void BattleAICmd_if_last_move_did_damage(void)
}
else if (gDisableStructs[index].encoredMove != 0)
{
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 3);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 3);
return;
}
gAIScriptPtr += 7;
@@ -1879,7 +1881,7 @@ static void BattleAICmd_if_encored(void)
case 0: // _08109348
if (gDisableStructs[gActiveBank].disabledMove == AI_THINKING_STRUCT->moveConsidered)
{
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 2);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 2);
return;
}
gAIScriptPtr += 6;
@@ -1887,7 +1889,7 @@ static void BattleAICmd_if_encored(void)
case 1: // _08109370
if (gDisableStructs[gActiveBank].encoredMove == AI_THINKING_STRUCT->moveConsidered)
{
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 2);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 2);
return;
}
gAIScriptPtr += 6;
@@ -1908,7 +1910,7 @@ static void BattleAICmd_if_random_100(void)
u8 safariFleeRate = BATTLE_STRUCT->safariFleeRate * 5; // safari flee rate, from 0-20
if ((u8)(Random() % 100) < safariFleeRate)
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 1);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 1);
else
gAIScriptPtr += 5;
}
@@ -1997,8 +1999,7 @@ static void BattleAICmd_get_used_item(void)
else
index = gBankTarget;
- // this hack and a half matches. whatever. i dont care. someone else fix this mess later. PS: still cant fix this.
- AI_THINKING_STRUCT->funcResult = ewram[MULTI_DIM_ARR(index, B_16, 0x160CC)];
+ AI_THINKING_STRUCT->funcResult = AI_ARRAY_160CC(index);
gAIScriptPtr += 2;
}
@@ -2065,12 +2066,12 @@ static void BattleAICmd_nullsub_57(void)
static void BattleAICmd_call(void)
{
AIStackPushVar(gAIScriptPtr + 5);
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 1);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 1);
}
static void BattleAICmd_jump(void)
{
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 1);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 1);
}
static void BattleAICmd_end(void)
@@ -2086,7 +2087,7 @@ static void BattleAICmd_if_level_compare(void)
case 0: // greater than
if (gBattleMons[gBankAttacker].level > gBattleMons[gBankTarget].level)
{
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 2);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 2);
return;
}
gAIScriptPtr += 6;
@@ -2094,7 +2095,7 @@ static void BattleAICmd_if_level_compare(void)
case 1: // less than
if (gBattleMons[gBankAttacker].level < gBattleMons[gBankTarget].level)
{
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 2);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 2);
return;
}
gAIScriptPtr += 6;
@@ -2102,7 +2103,7 @@ static void BattleAICmd_if_level_compare(void)
case 2: // equal
if (gBattleMons[gBankAttacker].level == gBattleMons[gBankTarget].level)
{
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 2);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 2);
return;
}
gAIScriptPtr += 6;
@@ -2113,7 +2114,7 @@ static void BattleAICmd_if_level_compare(void)
static void BattleAICmd_if_taunted(void)
{
if (gDisableStructs[gBankTarget].tauntTimer1 != 0)
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 1);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 1);
else
gAIScriptPtr += 5;
}
@@ -2121,7 +2122,7 @@ static void BattleAICmd_if_taunted(void)
static void BattleAICmd_if_not_taunted(void)
{
if (gDisableStructs[gBankTarget].tauntTimer1 == 0)
- gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 1);
+ gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 1);
else
gAIScriptPtr += 5;
}
diff --git a/src/battle/battle_anim.c b/src/battle/battle_anim.c
index 111d72813..1a78b2863 100644
--- a/src/battle/battle_anim.c
+++ b/src/battle/battle_anim.c
@@ -12,11 +12,11 @@
#include "sound.h"
#include "sprite.h"
#include "task.h"
+#include "ewram.h"
// sprites start at 10000 and thus must be subtracted of 10000 to account for the true index.
#define GET_TRUE_SPRITE_INDEX(i) (i - 10000)
-extern u8 unk_2000000[];
extern u16 gBattlePartyID[4];
extern u8 gObjectBankIDs[];
extern u8 gBankAttacker;
@@ -217,7 +217,7 @@ void DoMoveAnim(const u8 *const moveAnims[], u16 move, u8 c)
{
s32 i;
- if (IsContest() == 0)
+ if (NotInBattle() == 0)
{
sub_8079E24();
sub_8043EB4(0);
@@ -335,7 +335,7 @@ static void RunAnimScriptCommand(void)
{
do
{
- sScriptCmdTable[SCRIPT_READ_8(gBattleAnimScriptPtr)]();
+ sScriptCmdTable[T1_READ_8(gBattleAnimScriptPtr)]();
} while (gAnimFramesToWait == 0 && gAnimScriptActive != FALSE);
}
@@ -344,7 +344,7 @@ static void ScriptCmd_loadsprite(void)
u16 index;
gBattleAnimScriptPtr++;
- index = SCRIPT_READ_16(gBattleAnimScriptPtr);
+ index = T1_READ_16(gBattleAnimScriptPtr);
LoadCompressedObjectPic(&gBattleAnimPicTable[GET_TRUE_SPRITE_INDEX(index)]);
LoadCompressedObjectPalette(&gBattleAnimPaletteTable[GET_TRUE_SPRITE_INDEX(index)]);
gBattleAnimScriptPtr += 2;
@@ -358,7 +358,7 @@ static void ScriptCmd_unloadsprite(void)
u16 index;
gBattleAnimScriptPtr++;
- index = SCRIPT_READ_16(gBattleAnimScriptPtr);
+ index = T1_READ_16(gBattleAnimScriptPtr);
FreeSpriteTilesByTag(gBattleAnimPicTable[GET_TRUE_SPRITE_INDEX(index)].tag);
FreeSpritePaletteByTag(gBattleAnimPicTable[GET_TRUE_SPRITE_INDEX(index)].tag);
gBattleAnimScriptPtr += 2;
@@ -378,15 +378,15 @@ static void ScriptCmd_sprite(void)
s8 r1;
gBattleAnimScriptPtr++;
- r7 = (struct SpriteTemplate *)(SCRIPT_READ_32(gBattleAnimScriptPtr));
+ r7 = (struct SpriteTemplate *)(T2_READ_32(gBattleAnimScriptPtr));
gBattleAnimScriptPtr += 4;
- r4 = SCRIPT_READ_8(gBattleAnimScriptPtr);
+ r4 = T1_READ_8(gBattleAnimScriptPtr);
gBattleAnimScriptPtr++;
- r0 = SCRIPT_READ_8(gBattleAnimScriptPtr);
+ r0 = T1_READ_8(gBattleAnimScriptPtr);
gBattleAnimScriptPtr++;
for (i = 0; i < r0; i++)
{
- gBattleAnimArgs[i] = SCRIPT_READ_16(gBattleAnimScriptPtr);
+ gBattleAnimArgs[i] = T1_READ_16(gBattleAnimScriptPtr);
gBattleAnimScriptPtr += 2;
}
if (r4 & 0x80)
@@ -559,16 +559,16 @@ static void ScriptCmd_createtask(void)
s32 i;
gBattleAnimScriptPtr++;
- taskFunc = (TaskFunc)SCRIPT_READ_32(gBattleAnimScriptPtr);
+ taskFunc = (TaskFunc)T2_READ_32(gBattleAnimScriptPtr);
gBattleAnimScriptPtr += 4;
- taskPriority = SCRIPT_READ_8(gBattleAnimScriptPtr);
+ taskPriority = T1_READ_8(gBattleAnimScriptPtr);
gBattleAnimScriptPtr++;
- numArgs = SCRIPT_READ_8(gBattleAnimScriptPtr);
+ numArgs = T1_READ_8(gBattleAnimScriptPtr);
gBattleAnimScriptPtr++;
for (i = 0; i < numArgs; i++)
{
- gBattleAnimArgs[i] = SCRIPT_READ_16(gBattleAnimScriptPtr);
+ gBattleAnimArgs[i] = T1_READ_16(gBattleAnimScriptPtr);
gBattleAnimScriptPtr += 2;
}
@@ -580,7 +580,7 @@ static void ScriptCmd_createtask(void)
static void ScriptCmd_delay(void)
{
gBattleAnimScriptPtr++;
- gAnimFramesToWait = SCRIPT_READ_8(gBattleAnimScriptPtr);
+ gAnimFramesToWait = T1_READ_8(gBattleAnimScriptPtr);
if (gAnimFramesToWait == 0)
gAnimFramesToWait = -1;
gBattleAnimScriptPtr++;
@@ -654,7 +654,7 @@ static void ScriptCmd_end(void)
if (continuousAnim == FALSE) // may have been used for debug?
{
m4aMPlayVolumeControl(&gMPlay_BGM, 0xFFFF, 256);
- if (IsContest() == 0)
+ if (NotInBattle() == 0)
{
sub_8079E24();
sub_8043EB4(1);
@@ -666,7 +666,7 @@ static void ScriptCmd_end(void)
static void ScriptCmd_playse(void)
{
gBattleAnimScriptPtr++;
- PlaySE(SCRIPT_READ_16(gBattleAnimScriptPtr));
+ PlaySE(T1_READ_16(gBattleAnimScriptPtr));
gBattleAnimScriptPtr += 2;
}
@@ -680,7 +680,7 @@ static void ScriptCmd_monbg(void)
u8 taskId;
gBattleAnimScriptPtr++;
- r6 = SCRIPT_READ_8(gBattleAnimScriptPtr);
+ r6 = T1_READ_8(gBattleAnimScriptPtr);
if (r6 == 0)
r6 = 2;
else if (r6 == 1)
@@ -693,7 +693,7 @@ static void ScriptCmd_monbg(void)
{
r0 = GetBankIdentity(r5);
r0 += 0xFF;
- if (r0 <= 1 || IsContest() != 0)
+ if (r0 <= 1 || NotInBattle() != 0)
r7 = 0;
else
r7 = 1;
@@ -723,7 +723,7 @@ static void ScriptCmd_monbg(void)
{
r0 = GetBankIdentity(r5);
r0 += 0xFF;
- if (r0 <= 1 || IsContest() != 0)
+ if (r0 <= 1 || NotInBattle() != 0)
r7 = 0;
else
r7 = 1;
@@ -753,7 +753,7 @@ static void ScriptCmd_monbg(void)
#ifdef NONMATCHING
bool8 IsAnimBankSpriteVisible(u8 a)
{
- if (IsContest())
+ if (NotInBattle())
{
if (a == gBattleAnimBankAttacker)
return TRUE;
@@ -762,7 +762,7 @@ bool8 IsAnimBankSpriteVisible(u8 a)
}
if (!AnimBankSpriteExists(a))
return FALSE;
- if (IsContest())
+ if (NotInBattle())
return TRUE; // this line wont ever be reached.
if (!(EWRAM_17800[a].unk0 & 1))
return TRUE;
@@ -779,7 +779,7 @@ bool8 IsAnimBankSpriteVisible(u8 a)
lsls r0, 24\n\
lsrs r4, r0, 24\n\
adds r5, r4, 0\n\
- bl IsContest\n\
+ bl NotInBattle\n\
lsls r0, 24\n\
cmp r0, 0\n\
beq _08075FDC\n\
@@ -796,12 +796,12 @@ _08075FDC:\n\
lsls r0, 24\n\
cmp r0, 0\n\
beq _0807602C\n\
- bl IsContest\n\
+ bl NotInBattle\n\
lsls r0, 24\n\
cmp r0, 0\n\
bne _0807601C\n\
lsls r0, r5, 2\n\
- ldr r1, _08076020 @ =0x02017800\n\
+ ldr r1, _08076020 @ =gSharedMem + 0x17800\n\
adds r0, r1\n\
ldrb r1, [r0]\n\
movs r0, 0x1\n\
@@ -825,7 +825,7 @@ _0807601C:\n\
movs r0, 0x1\n\
b _0807602E\n\
.align 2, 0\n\
-_08076020: .4byte 0x02017800\n\
+_08076020: .4byte gSharedMem + 0x17800\n\
_08076024: .4byte gSprites\n\
_08076028: .4byte gObjectBankIDs\n\
_0807602C:\n\
@@ -877,7 +877,7 @@ void sub_8076034(u8 a, u8 b)
spriteId = gObjectBankIDs[a];
gUnknown_030042C0 = -(gSprites[spriteId].pos1.x + gSprites[spriteId].pos2.x) + 32;
- if (IsContest() != 0 && sub_80AEB1C(EWRAM_19348) != 0)
+ if (NotInBattle() != 0 && sub_80AEB1C(EWRAM_19348) != 0)
gUnknown_030042C0--;
gUnknown_030041B4 = -(gSprites[spriteId].pos1.y + gSprites[spriteId].pos2.y) + 32;
gSprites[gObjectBankIDs[a]].invisible = TRUE;
@@ -889,12 +889,12 @@ void sub_8076034(u8 a, u8 b)
addr3 = (u16 *)PLTT + s.unk8 * 16;
DmaCopy32(3, gPlttBufferUnfaded + 0x100 + a * 16, addr3, 32);
- if (IsContest() != 0)
+ if (NotInBattle() != 0)
r2 = 0;
else
r2 = GetBankIdentity(a);
sub_80E4EF8(0, 0, r2, s.unk8, (u32)s.unk0, (((s32)s.unk4 - VRAM) / 2048), REG_BG1CNT_BITFIELD.charBaseBlock);
- if (IsContest() != 0)
+ if (NotInBattle() != 0)
sub_8076380();
}
else
@@ -996,7 +996,7 @@ void sub_8076464(u8 a)
struct UnknownStruct2 s;
sub_8078914(&s);
- if (a == 0 || IsContest() != 0)
+ if (a == 0 || NotInBattle() != 0)
{
u16 *addr2;
@@ -1090,7 +1090,7 @@ static void ScriptCmd_clearmonbg(void)
u8 taskId;
gBattleAnimScriptPtr++;
- r4 = SCRIPT_READ_8(gBattleAnimScriptPtr);
+ r4 = T1_READ_8(gBattleAnimScriptPtr);
if (r4 == 0)
r4 = 2;
else if (r4 == 1)
@@ -1121,7 +1121,7 @@ static void sub_807672C(u8 taskId)
{
var = GetBankIdentity(gTasks[taskId].data[2]);
var += 0xFF;
- if (var <= 1 || IsContest() != 0)
+ if (var <= 1 || NotInBattle() != 0)
r4 = 0;
else
r4 = 1;
@@ -1149,7 +1149,7 @@ static void ScriptCmd_monbg_22(void)
u8 r1;
gBattleAnimScriptPtr++;
- r5 = SCRIPT_READ_8(gBattleAnimScriptPtr);
+ r5 = T1_READ_8(gBattleAnimScriptPtr);
if (r5 == 0)
r5 = 2;
else if (r5 == 1)
@@ -1162,7 +1162,7 @@ static void ScriptCmd_monbg_22(void)
{
r0 = GetBankIdentity(r4);
r0 += 0xFF;
- if (r0 <= 1 || IsContest() != 0)
+ if (r0 <= 1 || NotInBattle() != 0)
r1 = 0;
else
r1 = 1;
@@ -1174,7 +1174,7 @@ static void ScriptCmd_monbg_22(void)
{
r0 = GetBankIdentity(r4);
r0 += 0xFF;
- if (r0 <= 1 || IsContest() != 0)
+ if (r0 <= 1 || NotInBattle() != 0)
r1 = 0;
else
r1 = 1;
@@ -1191,7 +1191,7 @@ static void ScriptCmd_clearmonbg_23(void)
u8 taskId;
gBattleAnimScriptPtr++;
- r5 = SCRIPT_READ_8(gBattleAnimScriptPtr);
+ r5 = T1_READ_8(gBattleAnimScriptPtr);
if (r5 == 0)
r5 = 2;
else if (r5 == 1)
@@ -1224,7 +1224,7 @@ static void sub_80769A4(u8 taskId)
r4 = gTasks[taskId].data[2];
r0 = GetBankIdentity(r4);
r0 += 0xFF;
- if (r0 <= 1 || IsContest() != 0)
+ if (r0 <= 1 || NotInBattle() != 0)
r5 = 0;
else
r5 = 1;
@@ -1268,12 +1268,9 @@ static void ScriptCmd_blendoff(void)
static void ScriptCmd_call(void)
{
- u32 addr;
-
gBattleAnimScriptPtr++;
gBattleAnimScriptRetAddr = gBattleAnimScriptPtr + 4;
- addr = SCRIPT_READ_32(gBattleAnimScriptPtr);
- gBattleAnimScriptPtr = (u8 *)addr;
+ gBattleAnimScriptPtr = T2_READ_PTR(gBattleAnimScriptPtr);
}
static void ScriptCmd_return(void)
@@ -1288,36 +1285,31 @@ static void ScriptCmd_setvar(void)
u8 r2;
gBattleAnimScriptPtr++;
- r2 = SCRIPT_READ_8(gBattleAnimScriptPtr);
+ r2 = T1_READ_8(gBattleAnimScriptPtr);
gBattleAnimScriptPtr++;
- r4 = SCRIPT_READ_16(gBattleAnimScriptPtr);
+ r4 = T1_READ_16(gBattleAnimScriptPtr);
gBattleAnimScriptPtr = addr + 4;
gBattleAnimArgs[r2] = r4;
}
static void ScriptCmd_ifelse(void)
{
- u32 addr;
-
gBattleAnimScriptPtr++;
if (gUnknown_0202F7C4 & 1)
gBattleAnimScriptPtr += 4;
- addr = SCRIPT_READ_32(gBattleAnimScriptPtr);
- gBattleAnimScriptPtr = (u8 *)addr;
+ gBattleAnimScriptPtr = T2_READ_PTR(gBattleAnimScriptPtr);
}
static void ScriptCmd_jumpif(void)
{
u8 r1;
- u32 addr;
gBattleAnimScriptPtr++;
- r1 = SCRIPT_READ_8(gBattleAnimScriptPtr);
+ r1 = T1_READ_8(gBattleAnimScriptPtr);
gBattleAnimScriptPtr++;
if (r1 == gUnknown_0202F7C4)
{
- addr = SCRIPT_READ_32(gBattleAnimScriptPtr);
- gBattleAnimScriptPtr = (u8 *)addr;
+ gBattleAnimScriptPtr = T2_READ_PTR(gBattleAnimScriptPtr);
}
else
{
@@ -1327,15 +1319,11 @@ static void ScriptCmd_jumpif(void)
static void ScriptCmd_jump(void)
{
- u32 addr;
-
gBattleAnimScriptPtr++;
- addr = SCRIPT_READ_32(gBattleAnimScriptPtr);
- gBattleAnimScriptPtr = (u8 *)addr;
+ gBattleAnimScriptPtr = T2_READ_PTR(gBattleAnimScriptPtr);
}
-// Uses of this function that rely on a TRUE return are expecting inBattle to not be ticked as defined in contest behavior. As a result, if misused, this function cannot reliably discern between field and contest status and could result in undefined behavior.
-bool8 IsContest(void)
+bool8 NotInBattle(void)
{
if (!gMain.inBattle)
return TRUE;
@@ -1349,7 +1337,7 @@ static void ScriptCmd_fadetobg(void)
u8 taskId;
gBattleAnimScriptPtr++;
- r4 = SCRIPT_READ_8(gBattleAnimScriptPtr);
+ r4 = T1_READ_8(gBattleAnimScriptPtr);
gBattleAnimScriptPtr++;
taskId = CreateTask(task_p5_load_battle_screen_elements, 5);
gTasks[taskId].data[0] = r4;
@@ -1369,7 +1357,7 @@ static void ScriptCmd_fadetobg_25(void)
r6 = gBattleAnimScriptPtr[2];
gBattleAnimScriptPtr += 3;
taskId = CreateTask(task_p5_load_battle_screen_elements, 5);
- if (IsContest() != 0)
+ if (NotInBattle() != 0)
gTasks[taskId].data[0] = r6;
else if (GetBankSide(gBattleAnimBankTarget) == 0)
gTasks[taskId].data[0] = r7;
@@ -1416,15 +1404,15 @@ static void task_p5_load_battle_screen_elements(u8 taskId)
static void sub_8076DB8(u16 a)
{
- if (IsContest())
+ if (NotInBattle())
{
void *tilemap = gBattleAnimBackgroundTable[a].tilemap;
void *dmaSrc;
void *dmaDest;
- LZDecompressWram(tilemap, IsContest() ? EWRAM_14800 : EWRAM_18000);
- sub_80763FC(sub_80789BC(), IsContest() ? EWRAM_14800 : EWRAM_18000, 0x100, 0);
- dmaSrc = IsContest() ? EWRAM_14800 : EWRAM_18000;
+ LZDecompressWram(tilemap, NotInBattle() ? EWRAM_14800 : EWRAM_18000);
+ sub_80763FC(sub_80789BC(), NotInBattle() ? EWRAM_14800 : EWRAM_18000, 0x100, 0);
+ dmaSrc = NotInBattle() ? EWRAM_14800 : EWRAM_18000;
dmaDest = (void *)(VRAM + 0xD000);
DmaCopy32(3, dmaSrc, dmaDest, 0x800);
LZDecompressVram(gBattleAnimBackgroundTable[a].image, (void *)(VRAM + 0x2000));
@@ -1440,7 +1428,7 @@ static void sub_8076DB8(u16 a)
static void dp01t_11_3_message_for_player_only(void)
{
- if (IsContest())
+ if (NotInBattle())
sub_80AB2AC();
else
sub_800D7B8();
@@ -1485,7 +1473,7 @@ static void ScriptCmd_waitbgfadein(void)
static void ScriptCmd_changebg(void)
{
gBattleAnimScriptPtr++;
- sub_8076DB8(SCRIPT_READ_8(gBattleAnimScriptPtr));
+ sub_8076DB8(T1_READ_8(gBattleAnimScriptPtr));
gBattleAnimScriptPtr++;
}
@@ -1493,14 +1481,14 @@ static void ScriptCmd_changebg(void)
/*
s8 sub_8076F98(s8 a)
{
- if (!IsContest() && (EWRAM_17810[gBattleAnimBankAttacker].unk0 & 0x10))
+ if (!NotInBattle() && (EWRAM_17810[gBattleAnimBankAttacker].unk0 & 0x10))
{
a = GetBankSide(gBattleAnimBankAttacker) ? 0xC0 : 0x3F;
}
//_08076FDC
else
{
- if (IsContest())
+ if (NotInBattle())
{
if (gBattleAnimBankAttacker == gBattleAnimBankTarget && gBattleAnimBankAttacker == 2
&& a == 0x3F)
@@ -1536,7 +1524,7 @@ s8 sub_8076F98(s8 a)
push {r4,lr}\n\
lsls r0, 24\n\
lsrs r4, r0, 24\n\
- bl IsContest\n\
+ bl NotInBattle\n\
lsls r0, 24\n\
cmp r0, 0\n\
bne _08076FDC\n\
@@ -1545,7 +1533,7 @@ s8 sub_8076F98(s8 a)
lsls r0, r2, 1\n\
adds r0, r2\n\
lsls r0, 2\n\
- ldr r1, _08076FD8 @ =0x02017810\n\
+ ldr r1, _08076FD8 @ =gSharedMem + 0x17810\n\
adds r0, r1\n\
ldrb r1, [r0]\n\
movs r0, 0x10\n\
@@ -1562,9 +1550,9 @@ s8 sub_8076F98(s8 a)
b _0807706E\n\
.align 2, 0\n\
_08076FD4: .4byte gBattleAnimBankAttacker\n\
-_08076FD8: .4byte 0x02017810\n\
+_08076FD8: .4byte gSharedMem + 0x17810\n\
_08076FDC:\n\
- bl IsContest\n\
+ bl NotInBattle\n\
lsls r0, 24\n\
cmp r0, 0\n\
beq _08077004\n\
@@ -1661,7 +1649,7 @@ _08077088:\n\
s8 sub_8077094(s8 a)
{
- if (!IsContest() && (EWRAM_17810[gBattleAnimBankAttacker].unk0 & 0x10))
+ if (!NotInBattle() && (EWRAM_17810[gBattleAnimBankAttacker].unk0 & 0x10))
{
if (GetBankSide(gBattleAnimBankAttacker) != 0)
a = 0x3F;
@@ -1670,7 +1658,7 @@ s8 sub_8077094(s8 a)
}
else
{
- if (GetBankSide(gBattleAnimBankAttacker) != 0 || IsContest() != 0)
+ if (GetBankSide(gBattleAnimBankAttacker) != 0 || NotInBattle() != 0)
a = -a;
}
return a;
@@ -1706,8 +1694,8 @@ static void ScriptCmd_panse_19(void)
s8 r0;
gBattleAnimScriptPtr++;
- r4 = SCRIPT_READ_16(gBattleAnimScriptPtr);
- r0 = SCRIPT_READ_8(gBattleAnimScriptPtr + 2);
+ r4 = T1_READ_16(gBattleAnimScriptPtr);
+ r0 = T1_READ_8(gBattleAnimScriptPtr + 2);
PlaySE12WithPanning(r4, sub_8076F98(r0));
gBattleAnimScriptPtr += 3;
}
@@ -1717,7 +1705,7 @@ static void ScriptCmd_setpan(void)
s8 r0;
gBattleAnimScriptPtr++;
- r0 = SCRIPT_READ_8(gBattleAnimScriptPtr);
+ r0 = T1_READ_8(gBattleAnimScriptPtr);
SE12PanpotControl(sub_8076F98(r0));
gBattleAnimScriptPtr++;
}
@@ -1734,11 +1722,11 @@ static void ScriptCmd_panse_1B(void)
u8 taskId;
gBattleAnimScriptPtr++;
- songNum = SCRIPT_READ_16(gBattleAnimScriptPtr);
- r0 = SCRIPT_READ_8(gBattleAnimScriptPtr + 2);
- r4 = SCRIPT_READ_8(gBattleAnimScriptPtr + 3);
- r6 = SCRIPT_READ_8(gBattleAnimScriptPtr + 4);
- r7 = SCRIPT_READ_8(gBattleAnimScriptPtr + 5);
+ songNum = T1_READ_16(gBattleAnimScriptPtr);
+ r0 = T1_READ_8(gBattleAnimScriptPtr + 2);
+ r4 = T1_READ_8(gBattleAnimScriptPtr + 3);
+ r6 = T1_READ_8(gBattleAnimScriptPtr + 4);
+ r7 = T1_READ_8(gBattleAnimScriptPtr + 5);
panning = sub_8076F98(r0);
r8 = sub_8076F98(r4);
r4 = sub_807712C(panning, r8, r6);
@@ -1899,11 +1887,11 @@ static void ScriptCmd_panse_26(void)
u8 taskId;
gBattleAnimScriptPtr++;
- r8 = SCRIPT_READ_16(gBattleAnimScriptPtr);
- r4 = SCRIPT_READ_8(gBattleAnimScriptPtr + 2);
- r5 = SCRIPT_READ_8(gBattleAnimScriptPtr + 3);
- r6 = SCRIPT_READ_8(gBattleAnimScriptPtr + 4);
- r10 = SCRIPT_READ_8(gBattleAnimScriptPtr + 5);
+ r8 = T1_READ_16(gBattleAnimScriptPtr);
+ r4 = T1_READ_8(gBattleAnimScriptPtr + 2);
+ r5 = T1_READ_8(gBattleAnimScriptPtr + 3);
+ r6 = T1_READ_8(gBattleAnimScriptPtr + 4);
+ r10 = T1_READ_8(gBattleAnimScriptPtr + 5);
taskId = CreateTask(c3_08073CEC, 1);
gTasks[taskId].data[0] = r4;
gTasks[taskId].data[1] = r5;
@@ -1928,11 +1916,11 @@ static void ScriptCmd_panse_27(void)
u8 taskId;
gBattleAnimScriptPtr++;
- r9 = SCRIPT_READ_16(gBattleAnimScriptPtr);
- r0 = SCRIPT_READ_8(gBattleAnimScriptPtr + 2);
- r4 = SCRIPT_READ_8(gBattleAnimScriptPtr + 3);
- r8 = SCRIPT_READ_8(gBattleAnimScriptPtr + 4);
- r7 = SCRIPT_READ_8(gBattleAnimScriptPtr + 5);
+ r9 = T1_READ_16(gBattleAnimScriptPtr);
+ r0 = T1_READ_8(gBattleAnimScriptPtr + 2);
+ r4 = T1_READ_8(gBattleAnimScriptPtr + 3);
+ r8 = T1_READ_8(gBattleAnimScriptPtr + 4);
+ r7 = T1_READ_8(gBattleAnimScriptPtr + 5);
r6 = sub_8077094(r0);
r5 = sub_8077094(r4);
r4_2 = sub_8077094(r8);
@@ -1957,10 +1945,10 @@ static void ScriptCmd_panse_1C(void)
u8 taskId;
gBattleAnimScriptPtr++;
- r5 = SCRIPT_READ_16(gBattleAnimScriptPtr);
- r0 = SCRIPT_READ_8(gBattleAnimScriptPtr + 2);
- r8 = SCRIPT_READ_8(gBattleAnimScriptPtr + 3);
- r9 = SCRIPT_READ_8(gBattleAnimScriptPtr + 4);
+ r5 = T1_READ_16(gBattleAnimScriptPtr);
+ r0 = T1_READ_8(gBattleAnimScriptPtr + 2);
+ r8 = T1_READ_8(gBattleAnimScriptPtr + 3);
+ r9 = T1_READ_8(gBattleAnimScriptPtr + 4);
r4 = sub_8076F98(r0);
taskId = CreateTask(sub_80774FC, 1);
gTasks[taskId].data[0] = r5;
@@ -2007,9 +1995,9 @@ static void ScriptCmd_panse_1D(void)
u8 taskId;
gBattleAnimScriptPtr++;
- r5 = SCRIPT_READ_16(gBattleAnimScriptPtr);
- r0 = SCRIPT_READ_8(gBattleAnimScriptPtr + 2);
- r8 = SCRIPT_READ_8(gBattleAnimScriptPtr + 3);
+ r5 = T1_READ_16(gBattleAnimScriptPtr);
+ r0 = T1_READ_8(gBattleAnimScriptPtr + 2);
+ r8 = T1_READ_8(gBattleAnimScriptPtr + 3);
r4 = sub_8076F98(r0);
taskId = CreateTask(sub_80775CC, 1);
gTasks[taskId].data[0] = r5;
@@ -2041,13 +2029,13 @@ static void ScriptCmd_createtask_1F(void)
u8 taskId;
gBattleAnimScriptPtr++;
- func = (TaskFunc)SCRIPT_READ_32(gBattleAnimScriptPtr);
+ func = (TaskFunc)T2_READ_32(gBattleAnimScriptPtr);
gBattleAnimScriptPtr += 4;
- numArgs = SCRIPT_READ_8(gBattleAnimScriptPtr);
+ numArgs = T1_READ_8(gBattleAnimScriptPtr);
gBattleAnimScriptPtr++;
for (i = 0; i < numArgs; i++)
{
- gBattleAnimArgs[i] = SCRIPT_READ_16(gBattleAnimScriptPtr);
+ gBattleAnimArgs[i] = T1_READ_16(gBattleAnimScriptPtr);
gBattleAnimScriptPtr += 2;
}
taskId = CreateTask(func, 1);
@@ -2090,11 +2078,11 @@ static void ScriptCmd_jumpvareq(void)
u8 *addr;
gBattleAnimScriptPtr++;
- r2 = SCRIPT_READ_8(gBattleAnimScriptPtr);
- r1 = SCRIPT_READ_16(gBattleAnimScriptPtr + 1);
+ r2 = T1_READ_8(gBattleAnimScriptPtr);
+ r1 = T1_READ_16(gBattleAnimScriptPtr + 1);
if (r1 == gBattleAnimArgs[r2])
{
- addr = (u8 *)SCRIPT_READ_32(gBattleAnimScriptPtr + 3);
+ addr = T2_READ_PTR(gBattleAnimScriptPtr + 3);
gBattleAnimScriptPtr = addr;
}
else
@@ -2108,9 +2096,9 @@ static void ScriptCmd_jumpunkcond(void)
u8 *addr;
gBattleAnimScriptPtr++;
- if (IsContest())
+ if (NotInBattle())
{
- addr = (u8 *)SCRIPT_READ_32(gBattleAnimScriptPtr);
+ addr = T2_READ_PTR(gBattleAnimScriptPtr);
gBattleAnimScriptPtr = addr;
}
else
@@ -2125,14 +2113,14 @@ static void ScriptCmd_monbgprio_28(void)
u8 r0;
u8 r4;
- r2 = SCRIPT_READ_8(gBattleAnimScriptPtr + 1);
+ r2 = T1_READ_8(gBattleAnimScriptPtr + 1);
gBattleAnimScriptPtr += 2;
if (r2 != 0)
r0 = gBattleAnimBankTarget;
else
r0 = gBattleAnimBankAttacker;
r4 = GetBankIdentity(r0);
- if (!IsContest() && (r4 == 0 || r4 == 3))
+ if (!NotInBattle() && (r4 == 0 || r4 == 3))
{
REG_BG1CNT_BITFIELD.priority = 1;
REG_BG2CNT_BITFIELD.priority = 2;
@@ -2142,7 +2130,7 @@ static void ScriptCmd_monbgprio_28(void)
static void ScriptCmd_monbgprio_29(void)
{
gBattleAnimScriptPtr++;
- if (!IsContest())
+ if (!NotInBattle())
{
REG_BG1CNT_BITFIELD.priority = 1;
REG_BG2CNT_BITFIELD.priority = 2;
@@ -2155,7 +2143,7 @@ static void ScriptCmd_monbgprio_2A(void)
u8 r4;
u8 r0;
- r6 = SCRIPT_READ_8(gBattleAnimScriptPtr + 1);
+ r6 = T1_READ_8(gBattleAnimScriptPtr + 1);
gBattleAnimScriptPtr += 2;
if (GetBankSide(gBattleAnimBankAttacker) != GetBankSide(gBattleAnimBankTarget))
{
@@ -2164,7 +2152,7 @@ static void ScriptCmd_monbgprio_2A(void)
else
r0 = gBattleAnimBankAttacker;
r4 = GetBankIdentity(r0);
- if (!IsContest() && (r4 == 0 || r4 == 3))
+ if (!NotInBattle() && (r4 == 0 || r4 == 3))
{
REG_BG1CNT_BITFIELD.priority = 1;
REG_BG2CNT_BITFIELD.priority = 2;
@@ -2177,7 +2165,7 @@ static void ScriptCmd_invisible(void)
u8 r0;
u8 spriteId;
- r0 = SCRIPT_READ_8(gBattleAnimScriptPtr + 1);
+ r0 = T1_READ_8(gBattleAnimScriptPtr + 1);
spriteId = GetAnimBankSpriteId(r0);
if (spriteId != 0xFF)
{
@@ -2191,7 +2179,7 @@ static void ScriptCmd_visible(void)
u8 r0;
u8 spriteId;
- r0 = SCRIPT_READ_8(gBattleAnimScriptPtr + 1);
+ r0 = T1_READ_8(gBattleAnimScriptPtr + 1);
spriteId = GetAnimBankSpriteId(r0);
if (spriteId != 0xFF)
{
@@ -2206,9 +2194,9 @@ static void ScriptCmd_doublebattle_2D(void)
u8 r4;
u8 spriteId;
- r7 = SCRIPT_READ_8(gBattleAnimScriptPtr + 1);
+ r7 = T1_READ_8(gBattleAnimScriptPtr + 1);
gBattleAnimScriptPtr += 2;
- if (!IsContest() && IsDoubleBattle()
+ if (!NotInBattle() && IsDoubleBattle()
&& GetBankSide(gBattleAnimBankAttacker) == GetBankSide(gBattleAnimBankTarget))
{
if (r7 == 0)
@@ -2240,9 +2228,9 @@ static void ScriptCmd_doublebattle_2E(void)
u8 r4;
u8 spriteId;
- r7 = SCRIPT_READ_8(gBattleAnimScriptPtr + 1);
+ r7 = T1_READ_8(gBattleAnimScriptPtr + 1);
gBattleAnimScriptPtr += 2;
- if (!IsContest() && IsDoubleBattle()
+ if (!NotInBattle() && IsDoubleBattle()
&& GetBankSide(gBattleAnimBankAttacker) == GetBankSide(gBattleAnimBankTarget))
{
if (r7 == 0)
diff --git a/src/battle/battle_anim_807B69C.c b/src/battle/battle_anim_807B69C.c
index bf3eb7ef1..7fcd1e23f 100644
--- a/src/battle/battle_anim_807B69C.c
+++ b/src/battle/battle_anim_807B69C.c
@@ -7,6 +7,7 @@
#include "sprite.h"
#include "task.h"
#include "trig.h"
+#include "ewram.h"
extern u8 gBattleAnimBankAttacker;
extern u8 gBattleAnimBankTarget;
@@ -183,7 +184,7 @@ void sub_807B920(u8 taskId)
s16 y = sub_8077ABC(gBattleAnimBankTarget, 3) - 36;
u8 spriteId;
- if (IsContest())
+ if (NotInBattle())
x -= 6;
REG_BLDCNT = 0x3F40;
REG_BLDALPHA = 0x1000;
diff --git a/src/battle/battle_anim_80A7E7C.c b/src/battle/battle_anim_80A7E7C.c
index e0c79dc8e..19ac7143e 100644
--- a/src/battle/battle_anim_80A7E7C.c
+++ b/src/battle/battle_anim_80A7E7C.c
@@ -769,7 +769,7 @@ void sub_80A8E04(u8 taskId)
TASK.data[4] = gBattleAnimArgs[1];
TASK.data[5] = spriteId;
TASK.data[6] = gBattleAnimArgs[3];
- if (IsContest())
+ if (NotInBattle())
{
TASK.data[7] = 1;
}
@@ -786,7 +786,7 @@ void sub_80A8E04(u8 taskId)
}
if (TASK.data[7])
{
- if (!IsContest())
+ if (!NotInBattle())
{
TASK.data[3] *= -1;
TASK.data[4] *= -1;
diff --git a/src/battle/battle_controller_linkopponent.c b/src/battle/battle_controller_linkopponent.c
index edfd7e675..107c374a0 100644
--- a/src/battle/battle_controller_linkopponent.c
+++ b/src/battle/battle_controller_linkopponent.c
@@ -15,6 +15,7 @@
#include "task.h"
#include "text.h"
#include "util.h"
+#include "ewram.h"
struct UnknownStruct3
{
@@ -637,9 +638,8 @@ u32 dp01_getattr_by_ch1_for_player_pokemon__(u8 a, u8 *buffer)
GetMonData(&gEnemyParty[a], MON_DATA_NICKNAME, nickname);
StringCopy10(battlePokemon.nickname, nickname);
GetMonData(&gEnemyParty[a], MON_DATA_OT_NAME, battlePokemon.otName);
- src = (u8 *)&battlePokemon;
- for (size = 0; size < sizeof(battlePokemon); size++)
- buffer[size] = src[size];
+
+ MEMCPY_ALT(&battlePokemon, buffer, sizeof(battlePokemon), size, src);
break;
case 1:
data16 = GetMonData(&gEnemyParty[a], MON_DATA_SPECIES);
@@ -660,9 +660,7 @@ u32 dp01_getattr_by_ch1_for_player_pokemon__(u8 a, u8 *buffer)
moveData.pp[size] = GetMonData(&gEnemyParty[a], MON_DATA_PP1 + size);
}
moveData.ppBonuses = GetMonData(&gEnemyParty[a], MON_DATA_PP_BONUSES);
- src = (u8 *)&moveData;
- for (size = 0; size < sizeof(moveData); size++)
- buffer[size] = src[size];
+ MEMCPY_ALT(&moveData, buffer, sizeof(moveData), size, src);
break;
case 4:
case 5:
@@ -936,38 +934,38 @@ void sub_8038900(u8 a)
{
u8 iv;
- SetMonData(&gEnemyParty[a], MON_DATA_SPECIES, (u8 *)&battlePokemon->species);
- SetMonData(&gEnemyParty[a], MON_DATA_HELD_ITEM, (u8 *)&battlePokemon->item);
+ SetMonData(&gEnemyParty[a], MON_DATA_SPECIES, &battlePokemon->species);
+ SetMonData(&gEnemyParty[a], MON_DATA_HELD_ITEM, &battlePokemon->item);
for (i = 0; i < 4; i++)
{
- SetMonData(&gEnemyParty[a], MON_DATA_MOVE1 + i, (u8 *)&battlePokemon->moves[i]);
- SetMonData(&gEnemyParty[a], MON_DATA_PP1 + i, (u8 *)&battlePokemon->pp[i]);
+ SetMonData(&gEnemyParty[a], MON_DATA_MOVE1 + i, &battlePokemon->moves[i]);
+ SetMonData(&gEnemyParty[a], MON_DATA_PP1 + i, &battlePokemon->pp[i]);
}
- SetMonData(&gEnemyParty[a], MON_DATA_PP_BONUSES, (u8 *)&battlePokemon->ppBonuses);
- SetMonData(&gEnemyParty[a], MON_DATA_FRIENDSHIP, (u8 *)&battlePokemon->friendship);
- SetMonData(&gEnemyParty[a], MON_DATA_EXP, (u8 *)&battlePokemon->experience);
+ SetMonData(&gEnemyParty[a], MON_DATA_PP_BONUSES, &battlePokemon->ppBonuses);
+ SetMonData(&gEnemyParty[a], MON_DATA_FRIENDSHIP, &battlePokemon->friendship);
+ SetMonData(&gEnemyParty[a], MON_DATA_EXP, &battlePokemon->experience);
iv = battlePokemon->hpIV;
- SetMonData(&gEnemyParty[a], MON_DATA_HP_IV, (u8 *)&iv);
+ SetMonData(&gEnemyParty[a], MON_DATA_HP_IV, &iv);
iv = battlePokemon->attackIV;
- SetMonData(&gEnemyParty[a], MON_DATA_ATK_IV, (u8 *)&iv);
+ SetMonData(&gEnemyParty[a], MON_DATA_ATK_IV, &iv);
iv = battlePokemon->defenseIV;
- SetMonData(&gEnemyParty[a], MON_DATA_DEF_IV, (u8 *)&iv);
+ SetMonData(&gEnemyParty[a], MON_DATA_DEF_IV, &iv);
iv = battlePokemon->speedIV;
- SetMonData(&gEnemyParty[a], MON_DATA_SPEED_IV, (u8 *)&iv);
+ SetMonData(&gEnemyParty[a], MON_DATA_SPEED_IV, &iv);
iv = battlePokemon->spAttackIV;
- SetMonData(&gEnemyParty[a], MON_DATA_SPATK_IV, (u8 *)&iv);
+ SetMonData(&gEnemyParty[a], MON_DATA_SPATK_IV, &iv);
iv = battlePokemon->spDefenseIV;
- SetMonData(&gEnemyParty[a], MON_DATA_SPDEF_IV, (u8 *)&iv);
- SetMonData(&gEnemyParty[a], MON_DATA_PERSONALITY, (u8 *)&battlePokemon->personality);
- SetMonData(&gEnemyParty[a], MON_DATA_STATUS, (u8 *)&battlePokemon->status1);
- SetMonData(&gEnemyParty[a], MON_DATA_LEVEL, (u8 *)&battlePokemon->level);
- SetMonData(&gEnemyParty[a], MON_DATA_HP, (u8 *)&battlePokemon->hp);
- SetMonData(&gEnemyParty[a], MON_DATA_MAX_HP, (u8 *)&battlePokemon->maxHP);
- SetMonData(&gEnemyParty[a], MON_DATA_ATK, (u8 *)&battlePokemon->attack);
- SetMonData(&gEnemyParty[a], MON_DATA_DEF, (u8 *)&battlePokemon->defense);
- SetMonData(&gEnemyParty[a], MON_DATA_SPEED, (u8 *)&battlePokemon->speed);
- SetMonData(&gEnemyParty[a], MON_DATA_SPATK, (u8 *)&battlePokemon->spAttack);
- SetMonData(&gEnemyParty[a], MON_DATA_SPDEF, (u8 *)&battlePokemon->spDefense);
+ SetMonData(&gEnemyParty[a], MON_DATA_SPDEF_IV, &iv);
+ SetMonData(&gEnemyParty[a], MON_DATA_PERSONALITY, &battlePokemon->personality);
+ SetMonData(&gEnemyParty[a], MON_DATA_STATUS, &battlePokemon->status1);
+ SetMonData(&gEnemyParty[a], MON_DATA_LEVEL, &battlePokemon->level);
+ SetMonData(&gEnemyParty[a], MON_DATA_HP, &battlePokemon->hp);
+ SetMonData(&gEnemyParty[a], MON_DATA_MAX_HP, &battlePokemon->maxHP);
+ SetMonData(&gEnemyParty[a], MON_DATA_ATK, &battlePokemon->attack);
+ SetMonData(&gEnemyParty[a], MON_DATA_DEF, &battlePokemon->defense);
+ SetMonData(&gEnemyParty[a], MON_DATA_SPEED, &battlePokemon->speed);
+ SetMonData(&gEnemyParty[a], MON_DATA_SPATK, &battlePokemon->spAttack);
+ SetMonData(&gEnemyParty[a], MON_DATA_SPDEF, &battlePokemon->spDefense);
}
break;
case 1:
@@ -979,8 +977,8 @@ void sub_8038900(u8 a)
case 3:
for (i = 0; i < 4; i++)
{
- SetMonData(&gEnemyParty[a], MON_DATA_MOVE1 + i, (u8 *)&moveData->moves[i]);
- SetMonData(&gEnemyParty[a], MON_DATA_PP1 + i, (u8 *)&moveData->pp[i]);
+ SetMonData(&gEnemyParty[a], MON_DATA_MOVE1 + i, &moveData->moves[i]);
+ SetMonData(&gEnemyParty[a], MON_DATA_PP1 + i, &moveData->pp[i]);
}
SetMonData(&gEnemyParty[a], MON_DATA_PP_BONUSES, &moveData->ppBonuses);
break;
@@ -1145,9 +1143,9 @@ void LinkOpponentHandlecmd3(void)
u8 *dst;
u8 i;
- dst = (u8 *)&gEnemyParty[gBattlePartyID[gActiveBank]] + gBattleBufferA[gActiveBank][1];
- for (i = 0; i < gBattleBufferA[gActiveBank][2]; i++)
- dst[i] = gBattleBufferA[gActiveBank][3 + i];
+ MEMSET_ALT(&gEnemyParty[gBattlePartyID[gActiveBank]] + gBattleBufferA[gActiveBank][1],
+ gBattleBufferA[gActiveBank][3 + i], gBattleBufferA[gActiveBank][2], i, dst);
+
LinkOpponentBufferExecCompleted();
}
diff --git a/src/battle/battle_controller_linkpartner.c b/src/battle/battle_controller_linkpartner.c
index 335ebcb12..25deebf78 100644
--- a/src/battle/battle_controller_linkpartner.c
+++ b/src/battle/battle_controller_linkpartner.c
@@ -19,6 +19,7 @@
#include "task.h"
#include "text.h"
#include "util.h"
+#include "ewram.h"
struct UnknownStruct1
{
@@ -593,9 +594,7 @@ u32 dp01_getattr_by_ch1_for_player_pokemon(u8 a, u8 *buffer)
GetMonData(&gPlayerParty[a], MON_DATA_NICKNAME, nickname);
StringCopy10(battlePokemon.nickname, nickname);
GetMonData(&gPlayerParty[a], MON_DATA_OT_NAME, battlePokemon.otName);
- src = (u8 *)&battlePokemon;
- for (size = 0; size < sizeof(battlePokemon); size++)
- buffer[size] = src[size];
+ MEMCPY_ALT(&battlePokemon, buffer, sizeof(battlePokemon), size, src);
break;
case 1:
data16 = GetMonData(&gPlayerParty[a], MON_DATA_SPECIES);
@@ -616,9 +615,7 @@ u32 dp01_getattr_by_ch1_for_player_pokemon(u8 a, u8 *buffer)
moveData.pp[size] = GetMonData(&gPlayerParty[a], MON_DATA_PP1 + size);
}
moveData.ppBonuses = GetMonData(&gPlayerParty[a], MON_DATA_PP_BONUSES);
- src = (u8 *)&moveData;
- for (size = 0; size < sizeof(moveData); size++)
- buffer[size] = src[size];
+ MEMCPY_ALT(&moveData, buffer, sizeof(moveData), size, src);
break;
case 4:
case 5:
@@ -893,38 +890,38 @@ void sub_811EC68(u8 a)
{
u8 iv;
- SetMonData(&gPlayerParty[a], MON_DATA_SPECIES, (u8 *)&battlePokemon->species);
- SetMonData(&gPlayerParty[a], MON_DATA_HELD_ITEM, (u8 *)&battlePokemon->item);
+ SetMonData(&gPlayerParty[a], MON_DATA_SPECIES, &battlePokemon->species);
+ SetMonData(&gPlayerParty[a], MON_DATA_HELD_ITEM, &battlePokemon->item);
for (i = 0; i < 4; i++)
{
- SetMonData(&gPlayerParty[a], MON_DATA_MOVE1 + i, (u8 *)&battlePokemon->moves[i]);
- SetMonData(&gPlayerParty[a], MON_DATA_PP1 + i, (u8 *)&battlePokemon->pp[i]);
+ SetMonData(&gPlayerParty[a], MON_DATA_MOVE1 + i, &battlePokemon->moves[i]);
+ SetMonData(&gPlayerParty[a], MON_DATA_PP1 + i, &battlePokemon->pp[i]);
}
- SetMonData(&gPlayerParty[a], MON_DATA_PP_BONUSES, (u8 *)&battlePokemon->ppBonuses);
- SetMonData(&gPlayerParty[a], MON_DATA_FRIENDSHIP, (u8 *)&battlePokemon->friendship);
- SetMonData(&gPlayerParty[a], MON_DATA_EXP, (u8 *)&battlePokemon->experience);
+ SetMonData(&gPlayerParty[a], MON_DATA_PP_BONUSES, &battlePokemon->ppBonuses);
+ SetMonData(&gPlayerParty[a], MON_DATA_FRIENDSHIP, &battlePokemon->friendship);
+ SetMonData(&gPlayerParty[a], MON_DATA_EXP, &battlePokemon->experience);
iv = battlePokemon->hpIV;
- SetMonData(&gPlayerParty[a], MON_DATA_HP_IV, (u8 *)&iv);
+ SetMonData(&gPlayerParty[a], MON_DATA_HP_IV, &iv);
iv = battlePokemon->attackIV;
- SetMonData(&gPlayerParty[a], MON_DATA_ATK_IV, (u8 *)&iv);
+ SetMonData(&gPlayerParty[a], MON_DATA_ATK_IV, &iv);
iv = battlePokemon->defenseIV;
- SetMonData(&gPlayerParty[a], MON_DATA_DEF_IV, (u8 *)&iv);
+ SetMonData(&gPlayerParty[a], MON_DATA_DEF_IV, &iv);
iv = battlePokemon->speedIV;
- SetMonData(&gPlayerParty[a], MON_DATA_SPEED_IV, (u8 *)&iv);
+ SetMonData(&gPlayerParty[a], MON_DATA_SPEED_IV, &iv);
iv = battlePokemon->spAttackIV;
- SetMonData(&gPlayerParty[a], MON_DATA_SPATK_IV, (u8 *)&iv);
+ SetMonData(&gPlayerParty[a], MON_DATA_SPATK_IV, &iv);
iv = battlePokemon->spDefenseIV;
- SetMonData(&gPlayerParty[a], MON_DATA_SPDEF_IV, (u8 *)&iv);
- SetMonData(&gPlayerParty[a], MON_DATA_PERSONALITY, (u8 *)&battlePokemon->personality);
- SetMonData(&gPlayerParty[a], MON_DATA_STATUS, (u8 *)&battlePokemon->status1);
- SetMonData(&gPlayerParty[a], MON_DATA_LEVEL, (u8 *)&battlePokemon->level);
- SetMonData(&gPlayerParty[a], MON_DATA_HP, (u8 *)&battlePokemon->hp);
- SetMonData(&gPlayerParty[a], MON_DATA_MAX_HP, (u8 *)&battlePokemon->maxHP);
- SetMonData(&gPlayerParty[a], MON_DATA_ATK, (u8 *)&battlePokemon->attack);
- SetMonData(&gPlayerParty[a], MON_DATA_DEF, (u8 *)&battlePokemon->defense);
- SetMonData(&gPlayerParty[a], MON_DATA_SPEED, (u8 *)&battlePokemon->speed);
- SetMonData(&gPlayerParty[a], MON_DATA_SPATK, (u8 *)&battlePokemon->spAttack);
- SetMonData(&gPlayerParty[a], MON_DATA_SPDEF, (u8 *)&battlePokemon->spDefense);
+ SetMonData(&gPlayerParty[a], MON_DATA_SPDEF_IV, &iv);
+ SetMonData(&gPlayerParty[a], MON_DATA_PERSONALITY, &battlePokemon->personality);
+ SetMonData(&gPlayerParty[a], MON_DATA_STATUS, &battlePokemon->status1);
+ SetMonData(&gPlayerParty[a], MON_DATA_LEVEL, &battlePokemon->level);
+ SetMonData(&gPlayerParty[a], MON_DATA_HP, &battlePokemon->hp);
+ SetMonData(&gPlayerParty[a], MON_DATA_MAX_HP, &battlePokemon->maxHP);
+ SetMonData(&gPlayerParty[a], MON_DATA_ATK, &battlePokemon->attack);
+ SetMonData(&gPlayerParty[a], MON_DATA_DEF, &battlePokemon->defense);
+ SetMonData(&gPlayerParty[a], MON_DATA_SPEED, &battlePokemon->speed);
+ SetMonData(&gPlayerParty[a], MON_DATA_SPATK, &battlePokemon->spAttack);
+ SetMonData(&gPlayerParty[a], MON_DATA_SPDEF, &battlePokemon->spDefense);
}
break;
case 1:
@@ -936,8 +933,8 @@ void sub_811EC68(u8 a)
case 3:
for (i = 0; i < 4; i++)
{
- SetMonData(&gPlayerParty[a], MON_DATA_MOVE1 + i, (u8 *)&moveData->moves[i]);
- SetMonData(&gPlayerParty[a], MON_DATA_PP1 + i, (u8 *)&moveData->pp[i]);
+ SetMonData(&gPlayerParty[a], MON_DATA_MOVE1 + i, &moveData->moves[i]);
+ SetMonData(&gPlayerParty[a], MON_DATA_PP1 + i, &moveData->pp[i]);
}
SetMonData(&gPlayerParty[a], MON_DATA_PP_BONUSES, &moveData->ppBonuses);
break;
@@ -1103,9 +1100,9 @@ void LinkPartnerHandlecmd3(void)
u8 *dst;
u8 i;
- dst = (u8 *)&gPlayerParty[gBattlePartyID[gActiveBank]] + gBattleBufferA[gActiveBank][1];
- for (i = 0; i < gBattleBufferA[gActiveBank][2]; i++)
- dst[i] = gBattleBufferA[gActiveBank][3 + i];
+ MEMSET_ALT(&gPlayerParty[gBattlePartyID[gActiveBank]] + gBattleBufferA[gActiveBank][1],
+ gBattleBufferA[gActiveBank][3 + i], gBattleBufferA[gActiveBank][2], i, dst);
+
LinkPartnerBufferExecCompleted();
}
diff --git a/src/battle/battle_controller_opponent.c b/src/battle/battle_controller_opponent.c
index 6594e4183..823d6702a 100644
--- a/src/battle/battle_controller_opponent.c
+++ b/src/battle/battle_controller_opponent.c
@@ -20,6 +20,7 @@
#include "task.h"
#include "text.h"
#include "util.h"
+#include "ewram.h"
struct UnknownStruct3
{
@@ -601,9 +602,7 @@ u32 sub_8033598(u8 a, u8 *buffer)
GetMonData(&gEnemyParty[a], MON_DATA_NICKNAME, nickname);
StringCopy10(battlePokemon.nickname, nickname);
GetMonData(&gEnemyParty[a], MON_DATA_OT_NAME, battlePokemon.otName);
- src = (u8 *)&battlePokemon;
- for (size = 0; size < sizeof(battlePokemon); size++)
- buffer[size] = src[size];
+ MEMCPY_ALT(&battlePokemon, buffer, sizeof(battlePokemon), size, src);
break;
case 1:
data16 = GetMonData(&gEnemyParty[a], MON_DATA_SPECIES);
@@ -624,9 +623,7 @@ u32 sub_8033598(u8 a, u8 *buffer)
moveData.pp[size] = GetMonData(&gEnemyParty[a], MON_DATA_PP1 + size);
}
moveData.ppBonuses = GetMonData(&gEnemyParty[a], MON_DATA_PP_BONUSES);
- src = (u8 *)&moveData;
- for (size = 0; size < sizeof(moveData); size++)
- buffer[size] = src[size];
+ MEMCPY_ALT(&moveData, buffer, sizeof(moveData), size, src);
break;
case 4:
case 5:
@@ -864,12 +861,12 @@ u32 sub_8033598(u8 a, u8 *buffer)
void OpponentHandlecmd1(void)
{
struct BattlePokemon buffer;
- u8 *src = (u8 *)&gEnemyParty[gBattlePartyID[gActiveBank]] + gBattleBufferA[gActiveBank][1];
- u8 *dst = (u8 *)&buffer + gBattleBufferA[gActiveBank][1];
u8 i;
+ // TODO: Maybe fix this. Integrating this into MEMSET_ALT is too hard.
+ u8 *src = (u8 *)&gEnemyParty[gBattlePartyID[gActiveBank]] + gBattleBufferA[gActiveBank][1];
+ u8 *dst;
- for (i = 0; i < gBattleBufferA[gActiveBank][2]; i++)
- dst[i] = src[i];
+ MEMSET_ALT(&buffer + gBattleBufferA[gActiveBank][1], src[i], gBattleBufferA[gActiveBank][2], i, dst);
Emitcmd29(1, gBattleBufferA[gActiveBank][2], dst);
OpponentBufferExecCompleted();
}
@@ -908,38 +905,38 @@ void sub_8033E24(u8 a)
{
u8 iv;
- SetMonData(&gEnemyParty[a], MON_DATA_SPECIES, (u8 *)&battlePokemon->species);
- SetMonData(&gEnemyParty[a], MON_DATA_HELD_ITEM, (u8 *)&battlePokemon->item);
+ SetMonData(&gEnemyParty[a], MON_DATA_SPECIES, &battlePokemon->species);
+ SetMonData(&gEnemyParty[a], MON_DATA_HELD_ITEM, &battlePokemon->item);
for (i = 0; i < 4; i++)
{
- SetMonData(&gEnemyParty[a], MON_DATA_MOVE1 + i, (u8 *)&battlePokemon->moves[i]);
- SetMonData(&gEnemyParty[a], MON_DATA_PP1 + i, (u8 *)&battlePokemon->pp[i]);
+ SetMonData(&gEnemyParty[a], MON_DATA_MOVE1 + i, &battlePokemon->moves[i]);
+ SetMonData(&gEnemyParty[a], MON_DATA_PP1 + i, &battlePokemon->pp[i]);
}
- SetMonData(&gEnemyParty[a], MON_DATA_PP_BONUSES, (u8 *)&battlePokemon->ppBonuses);
- SetMonData(&gEnemyParty[a], MON_DATA_FRIENDSHIP, (u8 *)&battlePokemon->friendship);
- SetMonData(&gEnemyParty[a], MON_DATA_EXP, (u8 *)&battlePokemon->experience);
+ SetMonData(&gEnemyParty[a], MON_DATA_PP_BONUSES, &battlePokemon->ppBonuses);
+ SetMonData(&gEnemyParty[a], MON_DATA_FRIENDSHIP, &battlePokemon->friendship);
+ SetMonData(&gEnemyParty[a], MON_DATA_EXP, &battlePokemon->experience);
iv = battlePokemon->hpIV;
- SetMonData(&gEnemyParty[a], MON_DATA_HP_IV, (u8 *)&iv);
+ SetMonData(&gEnemyParty[a], MON_DATA_HP_IV, &iv);
iv = battlePokemon->attackIV;
- SetMonData(&gEnemyParty[a], MON_DATA_ATK_IV, (u8 *)&iv);
+ SetMonData(&gEnemyParty[a], MON_DATA_ATK_IV, &iv);
iv = battlePokemon->defenseIV;
- SetMonData(&gEnemyParty[a], MON_DATA_DEF_IV, (u8 *)&iv);
+ SetMonData(&gEnemyParty[a], MON_DATA_DEF_IV, &iv);
iv = battlePokemon->speedIV;
- SetMonData(&gEnemyParty[a], MON_DATA_SPEED_IV, (u8 *)&iv);
+ SetMonData(&gEnemyParty[a], MON_DATA_SPEED_IV, &iv);
iv = battlePokemon->spAttackIV;
- SetMonData(&gEnemyParty[a], MON_DATA_SPATK_IV, (u8 *)&iv);
+ SetMonData(&gEnemyParty[a], MON_DATA_SPATK_IV, &iv);
iv = battlePokemon->spDefenseIV;
- SetMonData(&gEnemyParty[a], MON_DATA_SPDEF_IV, (u8 *)&iv);
- SetMonData(&gEnemyParty[a], MON_DATA_PERSONALITY, (u8 *)&battlePokemon->personality);
- SetMonData(&gEnemyParty[a], MON_DATA_STATUS, (u8 *)&battlePokemon->status1);
- SetMonData(&gEnemyParty[a], MON_DATA_LEVEL, (u8 *)&battlePokemon->level);
- SetMonData(&gEnemyParty[a], MON_DATA_HP, (u8 *)&battlePokemon->hp);
- SetMonData(&gEnemyParty[a], MON_DATA_MAX_HP, (u8 *)&battlePokemon->maxHP);
- SetMonData(&gEnemyParty[a], MON_DATA_ATK, (u8 *)&battlePokemon->attack);
- SetMonData(&gEnemyParty[a], MON_DATA_DEF, (u8 *)&battlePokemon->defense);
- SetMonData(&gEnemyParty[a], MON_DATA_SPEED, (u8 *)&battlePokemon->speed);
- SetMonData(&gEnemyParty[a], MON_DATA_SPATK, (u8 *)&battlePokemon->spAttack);
- SetMonData(&gEnemyParty[a], MON_DATA_SPDEF, (u8 *)&battlePokemon->spDefense);
+ SetMonData(&gEnemyParty[a], MON_DATA_SPDEF_IV, &iv);
+ SetMonData(&gEnemyParty[a], MON_DATA_PERSONALITY, &battlePokemon->personality);
+ SetMonData(&gEnemyParty[a], MON_DATA_STATUS, &battlePokemon->status1);
+ SetMonData(&gEnemyParty[a], MON_DATA_LEVEL, &battlePokemon->level);
+ SetMonData(&gEnemyParty[a], MON_DATA_HP, &battlePokemon->hp);
+ SetMonData(&gEnemyParty[a], MON_DATA_MAX_HP, &battlePokemon->maxHP);
+ SetMonData(&gEnemyParty[a], MON_DATA_ATK, &battlePokemon->attack);
+ SetMonData(&gEnemyParty[a], MON_DATA_DEF, &battlePokemon->defense);
+ SetMonData(&gEnemyParty[a], MON_DATA_SPEED, &battlePokemon->speed);
+ SetMonData(&gEnemyParty[a], MON_DATA_SPATK, &battlePokemon->spAttack);
+ SetMonData(&gEnemyParty[a], MON_DATA_SPDEF, &battlePokemon->spDefense);
}
break;
case 1:
@@ -951,8 +948,8 @@ void sub_8033E24(u8 a)
case 3:
for (i = 0; i < 4; i++)
{
- SetMonData(&gEnemyParty[a], MON_DATA_MOVE1 + i, (u8 *)&moveData->moves[i]);
- SetMonData(&gEnemyParty[a], MON_DATA_PP1 + i, (u8 *)&moveData->pp[i]);
+ SetMonData(&gEnemyParty[a], MON_DATA_MOVE1 + i, &moveData->moves[i]);
+ SetMonData(&gEnemyParty[a], MON_DATA_PP1 + i, &moveData->pp[i]);
}
SetMonData(&gEnemyParty[a], MON_DATA_PP_BONUSES, &moveData->ppBonuses);
break;
@@ -1117,9 +1114,8 @@ void OpponentHandlecmd3(void)
u8 *dst;
u8 i;
- dst = (u8 *)&gEnemyParty[gBattlePartyID[gActiveBank]] + gBattleBufferA[gActiveBank][1];
- for (i = 0; i < gBattleBufferA[gActiveBank][2]; i++)
- dst[i] = gBattleBufferA[gActiveBank][3 + i];
+ MEMSET_ALT(&gEnemyParty[gBattlePartyID[gActiveBank]] + gBattleBufferA[gActiveBank][1], gBattleBufferA[gActiveBank][3 + i],
+ gBattleBufferA[gActiveBank][2], i, dst);
OpponentBufferExecCompleted();
}
@@ -1678,7 +1674,7 @@ _0803558A:\n\
void OpponentHandleOpenBag(void)
{
// What is this?
- Emitcmd35(1, ewram[0x160D4 + gActiveBank / 2 * 2]);
+ Emitcmd35(1, ewram160D4(gActiveBank));
OpponentBufferExecCompleted();
}
@@ -1686,7 +1682,7 @@ void OpponentHandlecmd22(void)
{
s32 r4;
- if (ewram[0x160C8 + GetBankIdentity(gActiveBank) / 2] == 6)
+ if (ewram160C8arr(GetBankIdentity(gActiveBank)) == 6)
{
u8 r6;
u8 r5;
@@ -1715,10 +1711,10 @@ void OpponentHandlecmd22(void)
}
else
{
- r4 = ewram[0x160C8 + GetBankIdentity(gActiveBank) / 2];
- ewram[0x160C8 + GetBankIdentity(gActiveBank) / 2] = 6;
+ r4 = ewram160C8arr(GetBankIdentity(gActiveBank));
+ ewram160C8arr(GetBankIdentity(gActiveBank)) = 6;
}
- ewram[0x16068 + gActiveBank] = r4;
+ ewram16068arr(gActiveBank) = r4;
Emitcmd34(1, r4, 0);
OpponentBufferExecCompleted();
}
diff --git a/src/battle/battle_controller_player.c b/src/battle/battle_controller_player.c
index 7f5c6c490..1aa73e90c 100644
--- a/src/battle/battle_controller_player.c
+++ b/src/battle/battle_controller_player.c
@@ -19,6 +19,7 @@
#include "task.h"
#include "text.h"
#include "util.h"
+#include "ewram.h"
//Possibly PokemonSubstruct1
struct UnknownStruct3
@@ -841,7 +842,7 @@ void sub_802CA60(void)
for (i = 0; i < 4; i++)
{
- SetMonData(&gPlayerParty[gBattlePartyID[gActiveBank]], MON_DATA_MOVE1 + i, (u8 *)&sp0.moves[i]);
+ SetMonData(&gPlayerParty[gBattlePartyID[gActiveBank]], MON_DATA_MOVE1 + i, &sp0.moves[i]);
SetMonData(&gPlayerParty[gBattlePartyID[gActiveBank]], MON_DATA_PP1 + i, &sp0.pp[i]);
}
SetMonData(&gPlayerParty[gBattlePartyID[gActiveBank]], MON_DATA_PP_BONUSES, &totalPPBonuses);
@@ -1149,7 +1150,7 @@ void sub_802D924(u8 taskId)
{
u8 savedActiveBank;
- SetMonData(pkmn, MON_DATA_EXP, (u8 *)&nextLvlExp);
+ SetMonData(pkmn, MON_DATA_EXP, &nextLvlExp);
CalculateMonStats(pkmn);
gainedExp -= nextLvlExp - currExp;
savedActiveBank = gActiveBank;
@@ -1166,7 +1167,7 @@ void sub_802D924(u8 taskId)
else
{
currExp += gainedExp;
- SetMonData(pkmn, MON_DATA_EXP, (u8 *)&currExp);
+ SetMonData(pkmn, MON_DATA_EXP, &currExp);
gBattleBankFunc[bank] = sub_802D90C;
DestroyTask(taskId);
}
@@ -1231,7 +1232,7 @@ void sub_802DB6C(u8 taskId)
u8 r5;
u32 asdf;
- SetMonData(pkmn, MON_DATA_EXP, (u8 *)&sp0);
+ SetMonData(pkmn, MON_DATA_EXP, &sp0);
CalculateMonStats(pkmn);
//r10 -= sp0 - sp4;
asdf = sp0 - sp4;
@@ -1247,7 +1248,7 @@ void sub_802DB6C(u8 taskId)
{
//u32 asdf = sp4 + r10;
sp4 += r10;
- SetMonData(pkmn, MON_DATA_EXP, (u8 *)&sp4);
+ SetMonData(pkmn, MON_DATA_EXP, &sp4);
gBattleBankFunc[r7] = sub_802D90C;
DestroyTask(taskId);
}
@@ -1773,9 +1774,7 @@ u32 dp01_getattr_by_ch1_for_player_pokemon_(u8 a, u8 *buffer)
GetMonData(&gPlayerParty[a], MON_DATA_NICKNAME, nickname);
StringCopy10(battlePokemon.nickname, nickname);
GetMonData(&gPlayerParty[a], MON_DATA_OT_NAME, battlePokemon.otName);
- src = (u8 *)&battlePokemon;
- for (size = 0; size < sizeof(battlePokemon); size++)
- buffer[size] = src[size];
+ MEMCPY_ALT(&battlePokemon, buffer, sizeof(battlePokemon), size, src);
break;
case 1:
data16 = GetMonData(&gPlayerParty[a], MON_DATA_SPECIES);
@@ -1796,9 +1795,7 @@ u32 dp01_getattr_by_ch1_for_player_pokemon_(u8 a, u8 *buffer)
moveData.pp[size] = GetMonData(&gPlayerParty[a], MON_DATA_PP1 + size);
}
moveData.ppBonuses = GetMonData(&gPlayerParty[a], MON_DATA_PP_BONUSES);
- src = (u8 *)&moveData;
- for (size = 0; size < sizeof(moveData); size++)
- buffer[size] = src[size];
+ MEMCPY_ALT(&moveData, buffer, sizeof(moveData), size, src);
break;
case 4:
case 5:
@@ -2035,13 +2032,13 @@ u32 dp01_getattr_by_ch1_for_player_pokemon_(u8 a, u8 *buffer)
void PlayerHandlecmd1(void)
{
- struct BattlePokemon battleMon; // I think this is a BattlePokemon
- u8 *src = (u8 *)&gPlayerParty[gBattlePartyID[gActiveBank]] + gBattleBufferA[gActiveBank][1];
- u8 *dst = (u8 *)&battleMon + gBattleBufferA[gActiveBank][1];
+ struct BattlePokemon battleMon;
u8 i;
+ // TODO: Maybe fix this. Integrating this into MEMSET_ALT is too hard.
+ u8 *src = (u8 *)&gPlayerParty[gBattlePartyID[gActiveBank]] + gBattleBufferA[gActiveBank][1];
+ u8 *dst;
- for (i = 0; i < gBattleBufferA[gActiveBank][2]; i++)
- dst[i] = src[i];
+ MEMSET_ALT(&battleMon + gBattleBufferA[gActiveBank][1], src[i], gBattleBufferA[gActiveBank][2], i, dst);
Emitcmd29(1, gBattleBufferA[gActiveBank][2], dst);
PlayerBufferExecCompleted();
}
@@ -2081,38 +2078,38 @@ void dp01_setattr_by_ch1_for_player_pokemon(u8 a)
{
u8 iv;
- SetMonData(&gPlayerParty[a], MON_DATA_SPECIES, (u8 *)&battlePokemon->species);
- SetMonData(&gPlayerParty[a], MON_DATA_HELD_ITEM, (u8 *)&battlePokemon->item);
+ SetMonData(&gPlayerParty[a], MON_DATA_SPECIES, &battlePokemon->species);
+ SetMonData(&gPlayerParty[a], MON_DATA_HELD_ITEM, &battlePokemon->item);
for (i = 0; i < 4; i++)
{
- SetMonData(&gPlayerParty[a], MON_DATA_MOVE1 + i, (u8 *)&battlePokemon->moves[i]);
- SetMonData(&gPlayerParty[a], MON_DATA_PP1 + i, (u8 *)&battlePokemon->pp[i]);
+ SetMonData(&gPlayerParty[a], MON_DATA_MOVE1 + i, &battlePokemon->moves[i]);
+ SetMonData(&gPlayerParty[a], MON_DATA_PP1 + i, &battlePokemon->pp[i]);
}
- SetMonData(&gPlayerParty[a], MON_DATA_PP_BONUSES, (u8 *)&battlePokemon->ppBonuses);
- SetMonData(&gPlayerParty[a], MON_DATA_FRIENDSHIP, (u8 *)&battlePokemon->friendship);
- SetMonData(&gPlayerParty[a], MON_DATA_EXP, (u8 *)&battlePokemon->experience);
+ SetMonData(&gPlayerParty[a], MON_DATA_PP_BONUSES, &battlePokemon->ppBonuses);
+ SetMonData(&gPlayerParty[a], MON_DATA_FRIENDSHIP, &battlePokemon->friendship);
+ SetMonData(&gPlayerParty[a], MON_DATA_EXP, &battlePokemon->experience);
iv = battlePokemon->hpIV;
- SetMonData(&gPlayerParty[a], MON_DATA_HP_IV, (u8 *)&iv);
+ SetMonData(&gPlayerParty[a], MON_DATA_HP_IV, &iv);
iv = battlePokemon->attackIV;
- SetMonData(&gPlayerParty[a], MON_DATA_ATK_IV, (u8 *)&iv);
+ SetMonData(&gPlayerParty[a], MON_DATA_ATK_IV, &iv);
iv = battlePokemon->defenseIV;
- SetMonData(&gPlayerParty[a], MON_DATA_DEF_IV, (u8 *)&iv);
+ SetMonData(&gPlayerParty[a], MON_DATA_DEF_IV, &iv);
iv = battlePokemon->speedIV;
- SetMonData(&gPlayerParty[a], MON_DATA_SPEED_IV, (u8 *)&iv);
+ SetMonData(&gPlayerParty[a], MON_DATA_SPEED_IV, &iv);
iv = battlePokemon->spAttackIV;
- SetMonData(&gPlayerParty[a], MON_DATA_SPATK_IV, (u8 *)&iv);
+ SetMonData(&gPlayerParty[a], MON_DATA_SPATK_IV, &iv);
iv = battlePokemon->spDefenseIV;
- SetMonData(&gPlayerParty[a], MON_DATA_SPDEF_IV, (u8 *)&iv);
- SetMonData(&gPlayerParty[a], MON_DATA_PERSONALITY, (u8 *)&battlePokemon->personality);
- SetMonData(&gPlayerParty[a], MON_DATA_STATUS, (u8 *)&battlePokemon->status1);
- SetMonData(&gPlayerParty[a], MON_DATA_LEVEL, (u8 *)&battlePokemon->level);
- SetMonData(&gPlayerParty[a], MON_DATA_HP, (u8 *)&battlePokemon->hp);
- SetMonData(&gPlayerParty[a], MON_DATA_MAX_HP, (u8 *)&battlePokemon->maxHP);
- SetMonData(&gPlayerParty[a], MON_DATA_ATK, (u8 *)&battlePokemon->attack);
- SetMonData(&gPlayerParty[a], MON_DATA_DEF, (u8 *)&battlePokemon->defense);
- SetMonData(&gPlayerParty[a], MON_DATA_SPEED, (u8 *)&battlePokemon->speed);
- SetMonData(&gPlayerParty[a], MON_DATA_SPATK, (u8 *)&battlePokemon->spAttack);
- SetMonData(&gPlayerParty[a], MON_DATA_SPDEF, (u8 *)&battlePokemon->spDefense);
+ SetMonData(&gPlayerParty[a], MON_DATA_SPDEF_IV, &iv);
+ SetMonData(&gPlayerParty[a], MON_DATA_PERSONALITY, &battlePokemon->personality);
+ SetMonData(&gPlayerParty[a], MON_DATA_STATUS, &battlePokemon->status1);
+ SetMonData(&gPlayerParty[a], MON_DATA_LEVEL, &battlePokemon->level);
+ SetMonData(&gPlayerParty[a], MON_DATA_HP, &battlePokemon->hp);
+ SetMonData(&gPlayerParty[a], MON_DATA_MAX_HP, &battlePokemon->maxHP);
+ SetMonData(&gPlayerParty[a], MON_DATA_ATK, &battlePokemon->attack);
+ SetMonData(&gPlayerParty[a], MON_DATA_DEF, &battlePokemon->defense);
+ SetMonData(&gPlayerParty[a], MON_DATA_SPEED, &battlePokemon->speed);
+ SetMonData(&gPlayerParty[a], MON_DATA_SPATK, &battlePokemon->spAttack);
+ SetMonData(&gPlayerParty[a], MON_DATA_SPDEF, &battlePokemon->spDefense);
}
break;
case 1:
@@ -2124,8 +2121,8 @@ void dp01_setattr_by_ch1_for_player_pokemon(u8 a)
case 3:
for (i = 0; i < 4; i++)
{
- SetMonData(&gPlayerParty[a], MON_DATA_MOVE1 + i, (u8 *)&moveData->moves[i]);
- SetMonData(&gPlayerParty[a], MON_DATA_PP1 + i, (u8 *)&moveData->pp[i]);
+ SetMonData(&gPlayerParty[a], MON_DATA_MOVE1 + i, &moveData->moves[i]);
+ SetMonData(&gPlayerParty[a], MON_DATA_PP1 + i, &moveData->pp[i]);
}
SetMonData(&gPlayerParty[a], MON_DATA_PP_BONUSES, &moveData->ppBonuses);
break;
@@ -2288,11 +2285,11 @@ void dp01_setattr_by_ch1_for_player_pokemon(u8 a)
void PlayerHandlecmd3(void)
{
- u8 *dst = (u8 *)&gPlayerParty[gBattlePartyID[gActiveBank]] + gBattleBufferA[gActiveBank][1];
u8 i;
+ u8 *dst;
- for (i = 0; i < gBattleBufferA[gActiveBank][2]; i++)
- dst[i] = gBattleBufferA[gActiveBank][3 + i];
+ MEMSET_ALT(&gPlayerParty[gBattlePartyID[gActiveBank]] + gBattleBufferA[gActiveBank][1], gBattleBufferA[gActiveBank][3 + i],
+ gBattleBufferA[gActiveBank][2], i, dst);
PlayerBufferExecCompleted();
}
@@ -2599,7 +2596,7 @@ void PlayerHandlecmd18(void)
sub_802E3E4(gActionSelectionCursor[gActiveBank], 0);
- StrCpyDecodeToDisplayedStringBattle((u8 *) gUnknown_08400CA8);
+ StrCpyDecodeToDisplayedStringBattle(gUnknown_08400CA8);
InitWindow(&gUnknown_03004210, gDisplayedStringBattle, SUB_803037C_TILE_DATA_OFFSET, 2, 35);
sub_8002F44(&gUnknown_03004210);
}
@@ -2648,9 +2645,9 @@ void PlayerHandlecmd22(void)
gUnknown_0300434C[gActiveBank] = CreateTask(TaskDummy, 0xFF);
gTasks[gUnknown_0300434C[gActiveBank]].data[0] = gBattleBufferA[gActiveBank][1] & 0xF;
- ewram[0x16054] = gBattleBufferA[gActiveBank][1] >> 4;
- ewram[0x1609D] = gBattleBufferA[gActiveBank][2];
- ewram[0x160C0] = gBattleBufferA[gActiveBank][3];
+ ewram16054 = gBattleBufferA[gActiveBank][1] >> 4;
+ EWRAM_1609D = gBattleBufferA[gActiveBank][2];
+ ewram160C0 = gBattleBufferA[gActiveBank][3];
for (i = 0; i < 3; i++)
gUnknown_02038470[i] = gBattleBufferA[gActiveBank][4 + i];
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, 0);
diff --git a/src/battle/battle_controller_safari.c b/src/battle/battle_controller_safari.c
index e05578c31..5b89cf9ba 100644
--- a/src/battle/battle_controller_safari.c
+++ b/src/battle/battle_controller_safari.c
@@ -12,6 +12,7 @@
#include "sound.h"
#include "text.h"
#include "util.h"
+#include "ewram.h"
extern struct Window gUnknown_03004210;
extern u8 gDisplayedStringBattle[];
@@ -483,7 +484,7 @@ void SafariHandlecmd18(void)
nullsub_8(i);
sub_802E3E4(gActionSelectionCursor[gActiveBank], 0);
- StrCpyDecodeToDisplayedStringBattle((u8 *) gUnknown_08400CBB);
+ StrCpyDecodeToDisplayedStringBattle(gUnknown_08400CBB);
InitWindow(&gUnknown_03004210, gDisplayedStringBattle, SUB_812BB10_TILE_DATA_OFFSET, 2, 35);
sub_8002F44(&gUnknown_03004210);
diff --git a/src/battle/battle_controller_wally.c b/src/battle/battle_controller_wally.c
index 3531c1771..9392832d7 100644
--- a/src/battle/battle_controller_wally.c
+++ b/src/battle/battle_controller_wally.c
@@ -17,6 +17,7 @@
#include "task.h"
#include "text.h"
#include "util.h"
+#include "ewram.h"
//Possibly PokemonSubstruct1
struct UnknownStruct3
@@ -239,10 +240,10 @@ void unref_sub_8137220(void)
void SetBankFuncToWallyBufferRunCommand(void)
{
gBattleBankFunc[gActiveBank] = WallyBufferRunCommand;
- ewram[0x160A8] = 0;
- ewram[0x160A9] = 0;
- ewram[0x160AA] = 0;
- ewram[0x160AB] = 0;
+ ewram160A8 = 0;
+ ewram160A9 = 0;
+ ewram160AA = 0;
+ ewram160AB = 0;
}
void WallyBufferRunCommand(void)
@@ -260,59 +261,59 @@ void sub_81372BC(void)
{
u8 r4;
- switch (ewram[0x160A8])
+ switch (ewram160A8)
{
case 0:
- ewram[0x160AA] = 64;
- ewram[0x160A8]++;
+ ewram160AA = 64;
+ ewram160A8++;
// fall through
case 1:
- r4 = --ewram[0x160AA];
+ r4 = --ewram160AA;
if (r4 == 0)
{
PlaySE(SE_SELECT);
Emitcmd33(1, 0, 0);
WallyBufferExecCompleted();
- ewram[0x160A8]++;
- ewram[0x160A9] = r4;
- ewram[0x160AA] = 64;
+ ewram160A8++;
+ ewram160A9 = r4;
+ ewram160AA = 64;
}
break;
case 2:
- r4 = --ewram[0x160AA];
+ r4 = --ewram160AA;
if (r4 == 0)
{
PlaySE(SE_SELECT);
Emitcmd33(1, 0, 0);
WallyBufferExecCompleted();
- ewram[0x160A8]++;
- ewram[0x160A9] = r4;
- ewram[0x160AA] = 64;
+ ewram160A8++;
+ ewram160A9 = r4;
+ ewram160AA = 64;
}
break;
case 3:
- r4 = --ewram[0x160AA];
+ r4 = --ewram160AA;
if (r4 == 0)
{
Emitcmd33(1, 9, 0);
WallyBufferExecCompleted();
- ewram[0x160A8]++;
- ewram[0x160A9] = r4;
- ewram[0x160AA] = 64;
+ ewram160A8++;
+ ewram160A9 = r4;
+ ewram160AA = 64;
}
break;
case 4:
- if (--ewram[0x160AA] == 0)
+ if (--ewram160AA == 0)
{
PlaySE(SE_SELECT);
nullsub_8(0);
sub_802E3E4(1, 0);
- ewram[0x160AA] = 64;
- ewram[0x160A8]++;
+ ewram160AA = 64;
+ ewram160A8++;
}
break;
case 5:
- if (--ewram[0x160AA] == 0)
+ if (--ewram160AA == 0)
{
PlaySE(SE_SELECT);
DestroyMenuCursor();
@@ -569,9 +570,7 @@ u32 sub_8137A84(u8 a, u8 *buffer)
GetMonData(&gPlayerParty[a], MON_DATA_NICKNAME, nickname);
StringCopy10(battlePokemon.nickname, nickname);
GetMonData(&gPlayerParty[a], MON_DATA_OT_NAME, battlePokemon.otName);
- src = (u8 *)&battlePokemon;
- for (size = 0; size < sizeof(battlePokemon); size++)
- buffer[size] = src[size];
+ MEMCPY_ALT(&battlePokemon, buffer, sizeof(battlePokemon), size, src);
break;
case 1:
data16 = GetMonData(&gPlayerParty[a], MON_DATA_SPECIES);
@@ -592,9 +591,7 @@ u32 sub_8137A84(u8 a, u8 *buffer)
moveData.pp[size] = GetMonData(&gPlayerParty[a], MON_DATA_PP1 + size);
}
moveData.ppBonuses = GetMonData(&gPlayerParty[a], MON_DATA_PP_BONUSES);
- src = (u8 *)&moveData;
- for (size = 0; size < sizeof(moveData); size++)
- buffer[size] = src[size];
+ MEMCPY_ALT(&moveData, buffer, sizeof(moveData), size, src);
break;
case 4:
case 5:
@@ -868,38 +865,38 @@ void sub_8138294(u8 a)
{
u8 iv;
- SetMonData(&gPlayerParty[a], MON_DATA_SPECIES, (u8 *)&battlePokemon->species);
- SetMonData(&gPlayerParty[a], MON_DATA_HELD_ITEM, (u8 *)&battlePokemon->item);
+ SetMonData(&gPlayerParty[a], MON_DATA_SPECIES, &battlePokemon->species);
+ SetMonData(&gPlayerParty[a], MON_DATA_HELD_ITEM, &battlePokemon->item);
for (i = 0; i < 4; i++)
{
- SetMonData(&gPlayerParty[a], MON_DATA_MOVE1 + i, (u8 *)&battlePokemon->moves[i]);
- SetMonData(&gPlayerParty[a], MON_DATA_PP1 + i, (u8 *)&battlePokemon->pp[i]);
+ SetMonData(&gPlayerParty[a], MON_DATA_MOVE1 + i, &battlePokemon->moves[i]);
+ SetMonData(&gPlayerParty[a], MON_DATA_PP1 + i, &battlePokemon->pp[i]);
}
- SetMonData(&gPlayerParty[a], MON_DATA_PP_BONUSES, (u8 *)&battlePokemon->ppBonuses);
- SetMonData(&gPlayerParty[a], MON_DATA_FRIENDSHIP, (u8 *)&battlePokemon->friendship);
- SetMonData(&gPlayerParty[a], MON_DATA_EXP, (u8 *)&battlePokemon->experience);
+ SetMonData(&gPlayerParty[a], MON_DATA_PP_BONUSES, &battlePokemon->ppBonuses);
+ SetMonData(&gPlayerParty[a], MON_DATA_FRIENDSHIP, &battlePokemon->friendship);
+ SetMonData(&gPlayerParty[a], MON_DATA_EXP, &battlePokemon->experience);
iv = battlePokemon->hpIV;
- SetMonData(&gPlayerParty[a], MON_DATA_HP_IV, (u8 *)&iv);
+ SetMonData(&gPlayerParty[a], MON_DATA_HP_IV, &iv);
iv = battlePokemon->attackIV;
- SetMonData(&gPlayerParty[a], MON_DATA_ATK_IV, (u8 *)&iv);
+ SetMonData(&gPlayerParty[a], MON_DATA_ATK_IV, &iv);
iv = battlePokemon->defenseIV;
- SetMonData(&gPlayerParty[a], MON_DATA_DEF_IV, (u8 *)&iv);
+ SetMonData(&gPlayerParty[a], MON_DATA_DEF_IV, &iv);
iv = battlePokemon->speedIV;
- SetMonData(&gPlayerParty[a], MON_DATA_SPEED_IV, (u8 *)&iv);
+ SetMonData(&gPlayerParty[a], MON_DATA_SPEED_IV, &iv);
iv = battlePokemon->spAttackIV;
- SetMonData(&gPlayerParty[a], MON_DATA_SPATK_IV, (u8 *)&iv);
+ SetMonData(&gPlayerParty[a], MON_DATA_SPATK_IV, &iv);
iv = battlePokemon->spDefenseIV;
- SetMonData(&gPlayerParty[a], MON_DATA_SPDEF_IV, (u8 *)&iv);
- SetMonData(&gPlayerParty[a], MON_DATA_PERSONALITY, (u8 *)&battlePokemon->personality);
- SetMonData(&gPlayerParty[a], MON_DATA_STATUS, (u8 *)&battlePokemon->status1);
- SetMonData(&gPlayerParty[a], MON_DATA_LEVEL, (u8 *)&battlePokemon->level);
- SetMonData(&gPlayerParty[a], MON_DATA_HP, (u8 *)&battlePokemon->hp);
- SetMonData(&gPlayerParty[a], MON_DATA_MAX_HP, (u8 *)&battlePokemon->maxHP);
- SetMonData(&gPlayerParty[a], MON_DATA_ATK, (u8 *)&battlePokemon->attack);
- SetMonData(&gPlayerParty[a], MON_DATA_DEF, (u8 *)&battlePokemon->defense);
- SetMonData(&gPlayerParty[a], MON_DATA_SPEED, (u8 *)&battlePokemon->speed);
- SetMonData(&gPlayerParty[a], MON_DATA_SPATK, (u8 *)&battlePokemon->spAttack);
- SetMonData(&gPlayerParty[a], MON_DATA_SPDEF, (u8 *)&battlePokemon->spDefense);
+ SetMonData(&gPlayerParty[a], MON_DATA_SPDEF_IV, &iv);
+ SetMonData(&gPlayerParty[a], MON_DATA_PERSONALITY, &battlePokemon->personality);
+ SetMonData(&gPlayerParty[a], MON_DATA_STATUS, &battlePokemon->status1);
+ SetMonData(&gPlayerParty[a], MON_DATA_LEVEL, &battlePokemon->level);
+ SetMonData(&gPlayerParty[a], MON_DATA_HP, &battlePokemon->hp);
+ SetMonData(&gPlayerParty[a], MON_DATA_MAX_HP, &battlePokemon->maxHP);
+ SetMonData(&gPlayerParty[a], MON_DATA_ATK, &battlePokemon->attack);
+ SetMonData(&gPlayerParty[a], MON_DATA_DEF, &battlePokemon->defense);
+ SetMonData(&gPlayerParty[a], MON_DATA_SPEED, &battlePokemon->speed);
+ SetMonData(&gPlayerParty[a], MON_DATA_SPATK, &battlePokemon->spAttack);
+ SetMonData(&gPlayerParty[a], MON_DATA_SPDEF, &battlePokemon->spDefense);
}
break;
case 1:
@@ -911,8 +908,8 @@ void sub_8138294(u8 a)
case 3:
for (i = 0; i < 4; i++)
{
- SetMonData(&gPlayerParty[a], MON_DATA_MOVE1 + i, (u8 *)&moveData->moves[i]);
- SetMonData(&gPlayerParty[a], MON_DATA_PP1 + i, (u8 *)&moveData->pp[i]);
+ SetMonData(&gPlayerParty[a], MON_DATA_MOVE1 + i, &moveData->moves[i]);
+ SetMonData(&gPlayerParty[a], MON_DATA_PP1 + i, &moveData->pp[i]);
}
SetMonData(&gPlayerParty[a], MON_DATA_PP_BONUSES, &moveData->ppBonuses);
break;
@@ -1294,16 +1291,16 @@ void WallyHandlecmd19(void)
void WallyHandlecmd20(void)
{
- switch (ewram[0x160A9])
+ switch (ewram160A9)
{
case 0:
sub_80304A8();
- ewram[0x160A9]++;
- ewram[0x160AB] = 80;
+ ewram160A9++;
+ ewram160AB = 80;
// fall through
case 1:
- ewram[0x160AB]--;
- if (ewram[0x160AB] == 0)
+ ewram160AB--;
+ if (ewram160AB == 0)
{
DestroyMenuCursor();
PlaySE(SE_SELECT);
diff --git a/src/battle/battle_interface.c b/src/battle/battle_interface.c
index 8bfeedd4d..0bd2e882f 100644
--- a/src/battle/battle_interface.c
+++ b/src/battle/battle_interface.c
@@ -13,6 +13,7 @@
#include "string_util.h"
#include "task.h"
#include "text.h"
+#include "ewram.h"
struct UnknownStruct5
{
@@ -28,12 +29,6 @@ struct UnknownStruct7
u8 filler0[0x180];
};
-extern u8 ewram[];
-#define ewram520 ((struct UnknownStruct7 *)(ewram + 0x00520))
-#define ewram16088 (*(u8 *) (ewram + 0x16088))
-#define ewram16089 (*(u8 *) (ewram + 0x16089))
-#define ewram17850 ((struct UnknownStruct5 *)(ewram + 0x17850))
-
extern u8 gDisplayedStringBattle[];
extern u8 gNoOfAllBanks;
extern u16 gBattlePartyID[];
@@ -482,7 +477,7 @@ u8 battle_make_oam_normal_battle(u8 a)
SetSubspriteTables(sprite, &gSubspriteTables_820A684[GetBankSide(a)]);
sprite->subspriteMode = 2;
sprite->oam.priority = 1;
- CpuCopy32(sub_8043CDC(1), (void *)(OBJ_VRAM0 + sprite->oam.tileNum * 32), 64);
+ CpuCopy32(sub_8043CDC(1), OBJ_VRAM0 + sprite->oam.tileNum * 32, 64);
gSprites[spriteId1].data5 = spriteId3;
gSprites[spriteId1].data6 = a;
@@ -705,11 +700,11 @@ static void sub_8043FC0(u8 a, u8 b)
*(ptr++) = 0x13;
*(ptr++) = 0xF;
*(ptr++) = EOS;
- sub_80034D4((u8 *)0x02000000, str);
+ sub_80034D4(ewram0_9(0), str);
two = 2;
for (i = 0; i < two; i++)
- CpuCopy32((void *)(0x02000020 + i * 64), r7[i] + gSprites[a].oam.tileNum * 32, 32);
+ CpuCopy32((void *)(ewram0_9(1) + i * 64), r7[i] + gSprites[a].oam.tileNum * 32, 32);
}
#ifdef NONMATCHING
@@ -743,7 +738,7 @@ void sub_80440EC(u8 a, s16 b, u8 c)
ptr = sub_8003504(ptr, b, 0x13, 1);
*(ptr++) = 0xBA;
*(ptr++) = 0xFF;
- sub_80034D4((u8 *)0x02000000, str);
+ sub_80034D4(ewram0_9(0), str);
}
else
{
@@ -753,14 +748,14 @@ void sub_80440EC(u8 a, s16 b, u8 c)
r4 = gUnknown_0820A85C;
c = 2;
sub_8003504(ptr, b, 0xF, 1);
- sub_80034D4((u8 *)0x02000000, str);
+ sub_80034D4(ewram0_9(0), str);
}
//asm(""::"r"(a));
//_080441B6
for (i = 0; i < c; i++) // _080440BC
{
void *temp = r4[i] + gSprites[a].oam.tileNum * 32;
- CpuCopy32((void *)(0x02000020 + i * 0x40), temp, 0x20);
+ CpuCopy32((void *)(ewram0_9(1) + i * 0x40), temp, 0x20);
}
}
#else
@@ -878,7 +873,7 @@ _080441B6:\n\
lsls r0, 2\n\
adds r6, r0, r1\n\
adds r7, r4, 0\n\
- ldr r5, _08044208 @ =0x02000020\n\
+ ldr r5, _08044208 @ =gSharedMem + 0x20\n\
mov r4, r8\n\
_080441D6:\n\
ldrh r0, [r6, 0x4]\n\
@@ -904,7 +899,7 @@ _080441F0:\n\
_080441FC: .4byte gUnknown_0820A85C\n\
_08044200: .4byte gUnknown_0820A854\n\
_08044204: .4byte gSprites\n\
-_08044208: .4byte 0x02000020\n\
+_08044208: .4byte gSharedMem + 0x20\n\
_0804420C: .4byte 0x04000008\n\
.syntax divided\n");
}
@@ -940,14 +935,14 @@ static void sub_8044210(u8 a, s16 b, u8 c)
sub_8003504(ptr, b, 0xF, 1);
if (GetBankSide(r4) == 0)
{
- CpuCopy32(sub_8043CDC(0x74), (void *)(OBJ_VRAM0 + (gSprites[a].oam.tileNum + 0x34) * 32), 32);
+ CpuCopy32(sub_8043CDC(0x74), OBJ_VRAM0 + (gSprites[a].oam.tileNum + 0x34) * 32, 32);
}
}
r4 = gSprites[a].data5;
- sub_80034D4((u8 *)0x02000000, str);
+ sub_80034D4(ewram0_9(0), str);
for (i = 0; i < r10; i++)
{
- CpuCopy32((void *)(0x02000020 + i * 0x40), r7[i] + gSprites[r4].oam.tileNum * 32, 0x20);
+ CpuCopy32((void *)(ewram0_9(1) + i * 0x40), r7[i] + gSprites[r4].oam.tileNum * 32, 0x20);
}
}
@@ -1000,23 +995,23 @@ void sub_8044338(u8 a, struct Pokemon *pkmn)
}
//_08044486
r5 = gSprites[a].data5;
- ConvertIntToDecimalStringN(str + 6, ewram[0x16089], 1, 2);
- ConvertIntToDecimalStringN(str + 9, ewram[0x16088], 1, 2);
+ ConvertIntToDecimalStringN(str + 6, ewram16089, 1, 2);
+ ConvertIntToDecimalStringN(str + 9, ewram16088, 1, 2);
str[5] = 0;
str[8] = 0xBA;
- sub_80034D4((u8 *)0x02000000, str);
+ sub_80034D4(ewram0_9(0), str);
for (r7 = 0; r7 < 5; r7++)
{
if (r7 <= 1)
{
int foo = (gSprites[r5].oam.tileNum + 2 + r7);
- CpuCopy32((u8 *)0x02000020 + r7 * 0x40, (u8 *)0x06010000 + foo * 32, 32);
+ CpuCopy32(ewram0_9(1) + r7 * 0x40, (u8 *)0x06010000 + foo * 32, 32);
}
else
{
int foo = (r7 + gSprites[r5].oam.tileNum);
- CpuCopy32((u8 *)0x02000020 + r7 * 0x40, (u8 *)0x060100C0 + foo * 32, 32);
+ CpuCopy32(ewram0_9(1) + r7 * 0x40, (u8 *)0x060100C0 + foo * 32, 32);
}
}
}
@@ -1054,7 +1049,7 @@ void sub_8044338(u8 a, struct Pokemon *pkmn)
lsls r1, r0, 1\n\
adds r1, r0\n\
lsls r1, 7\n\
- ldr r3, _080443D4 @ =0x02000520\n\
+ ldr r3, _080443D4 @ =gSharedMem + 0x520\n\
adds r6, r1, r3\n\
movs r0, 0x5\n\
mov r8, r0\n\
@@ -1099,7 +1094,7 @@ _080443C8:\n\
.align 2, 0\n\
_080443CC: .4byte gUnknown_0820A864\n\
_080443D0: .4byte gSprites\n\
-_080443D4: .4byte 0x02000520\n\
+_080443D4: .4byte gSharedMem + 0x520\n\
_080443D8: .4byte gNatureNames\n\
_080443DC:\n\
adds r0, r1, 0\n\
@@ -1198,7 +1193,7 @@ _08044486:\n\
ldrh r5, [r0, 0x38]\n\
lsls r5, 24\n\
lsrs r5, 24\n\
- ldr r4, _08044504 @ =0x02000000\n\
+ ldr r4, _08044504 @ =gSharedMem\n\
ldr r2, _08044508 @ =0x00016089\n\
adds r0, r4, r2\n\
ldrb r1, [r0]\n\
@@ -1227,7 +1222,7 @@ _08044486:\n\
adds r0, r5\n\
lsls r0, 2\n\
adds r5, r0, r6\n\
- ldr r4, _08044510 @ =0x02000020\n\
+ ldr r4, _08044510 @ =gSharedMem + 0x20\n\
_080444DA:\n\
cmp r7, 0x1\n\
bgt _08044514\n\
@@ -1247,10 +1242,10 @@ _080444DA:\n\
_080444F8: .4byte 0x04000008\n\
_080444FC: .4byte gSprites\n\
_08044500: .4byte 0x06010000\n\
-_08044504: .4byte 0x02000000\n\
+_08044504: .4byte gSharedMem\n\
_08044508: .4byte 0x00016089\n\
_0804450C: .4byte 0x00016088\n\
-_08044510: .4byte 0x02000020\n\
+_08044510: .4byte gSharedMem + 0x20\n\
_08044514:\n\
ldrh r1, [r5, 0x4]\n\
lsls r1, 22\n\
@@ -1309,7 +1304,7 @@ void sub_804454C(void)
{
spriteId = gSprites[gHealthboxIDs[i]].data5;
- CpuFill32(0, (void *)(OBJ_VRAM0 + gSprites[spriteId].oam.tileNum * 32), 0x100);
+ CpuFill32(0, OBJ_VRAM0 + gSprites[spriteId].oam.tileNum * 32, 0x100);
sub_8044210(gHealthboxIDs[i], GetMonData(&gPlayerParty[gBattlePartyID[i]], MON_DATA_HP), 0);
sub_8044210(gHealthboxIDs[i], GetMonData(&gPlayerParty[gBattlePartyID[i]], MON_DATA_MAX_HP), 1);
}
@@ -1317,7 +1312,7 @@ void sub_804454C(void)
{
draw_status_ailment_maybe(gHealthboxIDs[i]);
sub_8045A5C(gHealthboxIDs[i], &gPlayerParty[gBattlePartyID[i]], 5);
- CpuCopy32(sub_8043CDC(0x75), (void *)(OBJ_VRAM0 + 0x680 + gSprites[gHealthboxIDs[i]].oam.tileNum * 32), 32);
+ CpuCopy32(sub_8043CDC(0x75), OBJ_VRAM0 + 0x680 + gSprites[gHealthboxIDs[i]].oam.tileNum * 32, 32);
}
}
else
@@ -1332,7 +1327,7 @@ void sub_804454C(void)
{
spriteId = gSprites[gHealthboxIDs[i]].data5;
- CpuFill32(0, (void *)(OBJ_VRAM0 + gSprites[spriteId].oam.tileNum * 32), 0x100);
+ CpuFill32(0, OBJ_VRAM0 + gSprites[spriteId].oam.tileNum * 32, 0x100);
sub_8044210(gHealthboxIDs[i], GetMonData(&gEnemyParty[gBattlePartyID[i]], MON_DATA_HP), 0);
sub_8044210(gHealthboxIDs[i], GetMonData(&gEnemyParty[gBattlePartyID[i]], MON_DATA_MAX_HP), 1);
}
@@ -2414,7 +2409,7 @@ static void sub_80451A0(u8 a, struct Pokemon *pkmn)
ptr[1] = 0x13;
ptr[2] = 0x37;
ptr[3] = EOS;
- ptr = (u8 *)0x02000520 + GetBankIdentity(gSprites[a].data6) * 0x180;
+ ptr = ewram520_2 + GetBankIdentity(gSprites[a].data6) * 0x180;
sub_80034D4(ptr, gDisplayedStringBattle);
i = 0;
@@ -2505,9 +2500,9 @@ static void sub_8045458(u8 a, u8 b)
{
r4 = gSprites[a].data5;
if (b != 0)
- CpuCopy32(sub_8043CDC(0x46), (void *)(OBJ_VRAM0 + (gSprites[r4].oam.tileNum + 8) * 32), 32);
+ CpuCopy32(sub_8043CDC(0x46), OBJ_VRAM0 + (gSprites[r4].oam.tileNum + 8) * 32, 32);
else
- CpuFill32(0, (void *)(OBJ_VRAM0 + (gSprites[r4].oam.tileNum + 8) * 32), 32);
+ CpuFill32(0, OBJ_VRAM0 + (gSprites[r4].oam.tileNum + 8) * 32, 32);
}
}
}
@@ -2568,10 +2563,10 @@ static void draw_status_ailment_maybe(u8 a)
r6 = sub_8043CDC(0x27);
for (i = 0; i < 3; i++)
- CpuCopy32(r6, (void *)(OBJ_VRAM0 + (gSprites[a].oam.tileNum + r8 + i) * 32), 32);
+ CpuCopy32(r6, OBJ_VRAM0 + (gSprites[a].oam.tileNum + r8 + i) * 32, 32);
if (!ewram17800[r7].unk0_4)
- CpuCopy32(sub_8043CDC(1), (void *)(OBJ_VRAM0 + gSprites[r10].oam.tileNum * 32), 64);
+ CpuCopy32(sub_8043CDC(1), OBJ_VRAM0 + gSprites[r10].oam.tileNum * 32, 64);
sub_8045458(a, 1);
return;
@@ -2582,13 +2577,13 @@ static void draw_status_ailment_maybe(u8 a)
// I don't like writing the array index like this, but I can't get it to match otherwise.
FillPalette(r0[gBattleInterfaceStatusIcons_DynPal], r4_2 + 0x100, 2);
CpuCopy16(gPlttBufferUnfaded + 0x100 + r4_2, (void *)(OBJ_PLTT + r4_2 * 2), 2);
- CpuCopy32(r6, (void *)(OBJ_VRAM0 + (gSprites[a].oam.tileNum + r8) * 32), 96);
+ CpuCopy32(r6, OBJ_VRAM0 + (gSprites[a].oam.tileNum + r8) * 32, 96);
if (IsDoubleBattle() == TRUE || GetBankSide(r7) == TRUE)
{
if (!ewram17800[r7].unk0_4)
{
- CpuCopy32(sub_8043CDC(0), (void *)(OBJ_VRAM0 + gSprites[r10].oam.tileNum * 32), 32);
- CpuCopy32(sub_8043CDC(0x41), (void *)(OBJ_VRAM0 + (gSprites[r10].oam.tileNum + 1) * 32), 32);
+ CpuCopy32(sub_8043CDC(0), OBJ_VRAM0 + gSprites[r10].oam.tileNum * 32, 32);
+ CpuCopy32(sub_8043CDC(0x41), OBJ_VRAM0 + (gSprites[r10].oam.tileNum + 1) * 32, 32);
}
}
sub_8045458(a, 0);
@@ -2662,18 +2657,18 @@ static void sub_80458B0(u8 a)
s32 r7;
u8 *addr;
- r6 = (u8 *)0x02000520 + GetBankIdentity(gSprites[a].data6) * 0x180;
+ r6 = ewram520_2 + GetBankIdentity(gSprites[a].data6) * 0x180;
r8 = 7;
sub_80034D4(r6, BattleText_SafariBalls);
for (i = 0; i < r8; i++)
CpuCopy32(sub_8043CDC(0x2B), r6 + i * 64, 32);
for (r7 = 3; r7 < 3 + r8; r7++)
{
- addr = (void *)(OBJ_VRAM0 + (gSprites[a].oam.tileNum + MACRO1(r7)) * 32);
+ addr = OBJ_VRAM0 + (gSprites[a].oam.tileNum + MACRO1(r7)) * 32;
CpuCopy32(r6, addr, 32);
r6 += 32;
- addr = (void *)(OBJ_VRAM0 + (8 + gSprites[a].oam.tileNum + MACRO1(r7)) * 32);
+ addr = OBJ_VRAM0 + (8 + gSprites[a].oam.tileNum + MACRO1(r7)) * 32;
CpuCopy32(r6, addr, 32);
r6 += 32;
}
@@ -2691,13 +2686,13 @@ static void sub_8045998(u8 a)
r7 = sub_8003504(r7, gNumSafariBalls, 10, 1);
StringAppend(r7, BattleText_HighlightRed);
status = GetBankIdentity(gSprites[a].data6);
- r7 = (u8 *)0x02000520 + status * 0x180;
+ r7 = ewram520_2 + status * 0x180;
r6 = 5;
sub_80034D4(r7, gDisplayedStringBattle);
- r7 = (u8 *)0x02000520 + status * 0x180 + 32;
+ r7 = ewram520_2 + status * 0x180 + 32;
for (i = 6; i < 6 + r6; i++)
{
- CpuCopy32(r7, (void *)(OBJ_VRAM0 + (gSprites[a].oam.tileNum + 0x18 + MACRO1(i)) * 32), 32);
+ CpuCopy32(r7, OBJ_VRAM0 + (gSprites[a].oam.tileNum + 0x18 + MACRO1(i)) * 32, 32);
r7 += 64;
}
}
@@ -2821,9 +2816,9 @@ static void sub_8045D58(u8 a, u8 b)
{
u8 r4 = gSprites[ewram17850[a].unk0].data5;
if (i < 2)
- CpuCopy32(sub_8043CDC(r8) + sp8[i] * 32, (void *)(OBJ_VRAM0 + (gSprites[r4].oam.tileNum + 2 + i) * 32), 32);
+ CpuCopy32(sub_8043CDC(r8) + sp8[i] * 32, OBJ_VRAM0 + (gSprites[r4].oam.tileNum + 2 + i) * 32, 32);
else
- CpuCopy32(sub_8043CDC(r8) + sp8[i] * 32, (void *)(OBJ_VRAM0 + 64 + (i + gSprites[r4].oam.tileNum) * 32), 32);
+ CpuCopy32(sub_8043CDC(r8) + sp8[i] * 32, OBJ_VRAM0 + 64 + (i + gSprites[r4].oam.tileNum) * 32, 32);
}
break;
case 1:
@@ -2837,9 +2832,9 @@ static void sub_8045D58(u8 a, u8 b)
for (i = 0; i < 8; i++)
{
if (i < 4)
- CpuCopy32(sub_8043CDC(0xC) + sp8[i] * 32, (void *)(OBJ_VRAM0 + (gSprites[ewram17850[a].unk0].oam.tileNum + 0x24 + i) * 32), 32);
+ CpuCopy32(sub_8043CDC(0xC) + sp8[i] * 32, OBJ_VRAM0 + (gSprites[ewram17850[a].unk0].oam.tileNum + 0x24 + i) * 32, 32);
else
- CpuCopy32(sub_8043CDC(0xC) + sp8[i] * 32, (void *)(OBJ_VRAM0 + 0xB80 + (i + gSprites[ewram17850[a].unk0].oam.tileNum) * 32), 32);
+ CpuCopy32(sub_8043CDC(0xC) + sp8[i] * 32, OBJ_VRAM0 + 0xB80 + (i + gSprites[ewram17850[a].unk0].oam.tileNum) * 32, 32);
}
break;
}
diff --git a/src/battle/battle_message.c b/src/battle/battle_message.c
index 79855a614..4e8067a49 100644
--- a/src/battle/battle_message.c
+++ b/src/battle/battle_message.c
@@ -12,6 +12,7 @@
#include "battle_setup.h"
#include "battle_tower.h"
#include "flags.h"
+#include "ewram.h"
#define BATTLESTRING_TO_SUB 12
#define BATTLESTRINGS_NO 351
@@ -651,7 +652,7 @@ u32 StrCpyDecodeBattle(const u8* src, u8* dst)
if (gTrainerBattleOpponent == 0x400)
{
memset(text, 0xFF, 8);
- memcpy(text, &ewram[0x17002], 7);
+ memcpy(text, ewram17002, 7);
toCpy = text;
}
else if (gBattleTypeFlags & BATTLE_TYPE_BATTLE_TOWER)
diff --git a/src/battle/battle_party_menu.c b/src/battle/battle_party_menu.c
index 2f6dc6816..97e9dc0fc 100644
--- a/src/battle/battle_party_menu.c
+++ b/src/battle/battle_party_menu.c
@@ -18,9 +18,7 @@
#include "strings.h"
#include "task.h"
#include "text.h"
-
-extern u8 ewram[];
-#define UNK_201606C_ARRAY (ewram + 0x1606C) // lazy define but whatever.
+#include "ewram.h"
extern u8 sub_806BD58(u8, u8);
extern void PartyMenuPrintMonsLevelOrStatus(void);
@@ -206,7 +204,7 @@ void sub_8094B6C(u8 a, u8 b, u8 c)
if (IsLinkDoubleBattle())
{
- u8 *arr = ewram + 0x1606C + a * 3;
+ u8 *arr = &ewram1606Carr(0, a);
for (i = 0, j = 0; i < 3; i++)
{
diff --git a/src/battle/battle_records.c b/src/battle/battle_records.c
index fd1f528ac..54697593b 100644
--- a/src/battle/battle_records.c
+++ b/src/battle/battle_records.c
@@ -243,7 +243,7 @@ static void PrintLinkBattleRecord(struct LinkBattleRecord *record, u8 y)
void ShowLinkBattleRecords(void) {
s32 i;
MenuDrawTextWindow(1, 0, 28, 18);
- sub_8072BD8((u8 *) gOtherText_BattleResults, 0, 1, 240);
+ sub_8072BD8(gOtherText_BattleResults, 0, 1, 240);
PrintLinkBattleWinsLossesDraws(gSaveBlock1.linkBattleRecords);
#if ENGLISH
diff --git a/src/battle/battle_setup.c b/src/battle/battle_setup.c
index 91a0667d9..8327ed59d 100644
--- a/src/battle/battle_setup.c
+++ b/src/battle/battle_setup.c
@@ -880,19 +880,20 @@ static void CB2_EndFirstBattle(void)
SetMainCallback2(c2_exit_to_overworld_1_continue_scripts_restart_music);
}
+// why not just use the macros? maybe its because they didnt want to uncast const every time?
static u32 TrainerBattleLoadArg32(const u8 *ptr)
{
- return ptr[0] | (ptr[1] << 8) | (ptr[2] << 16) | (ptr[3] << 24);
+ return T1_READ_32(ptr);
}
static u16 TrainerBattleLoadArg16(const u8 *ptr)
{
- return ptr[0] | (ptr[1] << 8);
+ return T1_READ_16(ptr);
}
static u8 TrainerBattleLoadArg8(const u8 *ptr)
{
- return ptr[0];
+ return T1_READ_8(ptr);
}
static u16 CurrentOpponentTrainerFlag(void)
@@ -1123,8 +1124,8 @@ void ScrSpecial_StartTrainerEyeRematch(void)
ScriptContext1_Stop();
}
-static u8 *GetTrainerIntroSpeech(void);
-static u8 *GetTrainerNonBattlingSpeech(void);
+static const u8 *GetTrainerIntroSpeech(void);
+static const u8 *GetTrainerNonBattlingSpeech(void);
void ScrSpecial_ShowTrainerIntroSpeech(void)
{
@@ -1207,15 +1208,15 @@ void PlayTrainerEncounterMusic(void)
}
//Returns an empty string if a null pointer was passed, otherwise returns str
-static u8 *SanitizeString(const u8 *str)
+static const u8 *SanitizeString(const u8 *str)
{
if (str)
- return (u8 *) str;
+ return str;
else
- return (u8 *) gOtherText_CancelWithTerminator;
+ return gOtherText_CancelWithTerminator;
}
-static u8 *GetTrainerIntroSpeech(void)
+static const u8 *GetTrainerIntroSpeech(void)
{
return SanitizeString(sTrainerIntroSpeech);
}
@@ -1233,12 +1234,12 @@ u8 *sub_8082830(void)
return gStringVar4;
}
-u8 *unref_sub_808286C(void)
+const u8 *unref_sub_808286C(void)
{
return SanitizeString(sTrainerVictorySpeech);
}
-static u8 *GetTrainerNonBattlingSpeech(void)
+static const u8 *GetTrainerNonBattlingSpeech(void)
{
return SanitizeString(sTrainerCannotBattleSpeech);
}
diff --git a/src/battle/battle_transition.c b/src/battle/battle_transition.c
index 53d32d03a..d0a9bfb92 100644
--- a/src/battle/battle_transition.c
+++ b/src/battle/battle_transition.c
@@ -12,11 +12,11 @@
#include "songs.h"
#include "trainer.h"
#include "field_camera.h"
+#include "ewram.h"
void sub_807DE10(void);
void dp12_8087EA4(void);
-extern u8 ewram[];
extern u16 gUnknown_03005560[];
extern u16 gUnknown_03004DE0[][0x3C0];
@@ -45,7 +45,6 @@ struct TransitionData
s16 data[11];
};
-#define TRANSITION_STRUCT (*(struct TransitionData *) (ewram + 0xC000))
typedef bool8 (*TransitionState)(struct Task* task);
typedef bool8 (*TransitionSpriteCallback)(struct Sprite* sprite);
@@ -1734,8 +1733,8 @@ static void Mugshots_CreateOpponentPlayerSprites(struct Task* task)
task->tMugshotOpponentID = CreateTrainerSprite(sMugshotsTrainerPicIDsTable[mugshotID],
sMugshotsOpponentCoords[mugshotID][0] - 32,
sMugshotsOpponentCoords[mugshotID][1] + 42,
- 0, &ewram[0xC03C]);
- task->tMugshotPlayerID = CreateTrainerSprite(gSaveBlock2.playerGender, 272, 106, 0, &ewram[0xC03C]);
+ 0, ewramC03C);
+ task->tMugshotPlayerID = CreateTrainerSprite(gSaveBlock2.playerGender, 272, 106, 0, ewramC03C);
opponentSprite = &gSprites[task->tMugshotOpponentID];
playerSprite = &gSprites[task->tMugshotPlayerID];
diff --git a/src/battle/calculate_base_damage.c b/src/battle/calculate_base_damage.c
index f5c679876..42c26dee0 100644
--- a/src/battle/calculate_base_damage.c
+++ b/src/battle/calculate_base_damage.c
@@ -11,8 +11,8 @@
#include "species.h"
#include "moves.h"
#include "battle_move_effects.h"
+#include "ewram.h"
-extern u32 dword_2017100[];
extern u16 gBattleTypeFlags;
extern struct BattlePokemon gBattleMons[4];
extern u16 gCurrentMove;
@@ -301,7 +301,7 @@ s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *de
}
// flash fire triggered
- if ((dword_2017100[bankAtk] & 1) && type == TYPE_FIRE)
+ if ((eFlashFireArr.arr[bankAtk] & 1) && type == TYPE_FIRE)
damage = (15 * damage) / 10;
}
diff --git a/src/battle/pokeball.c b/src/battle/pokeball.c
index ee3b95678..afdf47979 100644
--- a/src/battle/pokeball.c
+++ b/src/battle/pokeball.c
@@ -14,6 +14,7 @@
#include "task.h"
#include "trig.h"
#include "util.h"
+#include "ewram.h"
extern struct MusicPlayerInfo gMPlay_BGM;
extern u16 gBattleTypeFlags;
diff --git a/src/battle/reshow_battle_screen.c b/src/battle/reshow_battle_screen.c
index 343c8f183..396c4435e 100644
--- a/src/battle/reshow_battle_screen.c
+++ b/src/battle/reshow_battle_screen.c
@@ -7,6 +7,7 @@
#include "text.h"
#include "rom_8077ABC.h"
#include "data2.h"
+#include "ewram.h"
extern struct SpriteTemplate gUnknown_02024E8C;
extern struct Window gUnknown_03004210;
@@ -55,9 +56,6 @@ static void sub_807B184(u8 bank);
static void sub_807B508(u8 bank);
static void sub_807B06C(void);
-#define gReshowState ewram[0x1FFFF]
-#define gHelperState ewram[0x1FFFE]
-
void nullsub_14(void)
{
diff --git a/src/data/credits_de.h b/src/data/credits_de.h
new file mode 100755
index 000000000..570c0d4c5
--- /dev/null
+++ b/src/data/credits_de.h
@@ -0,0 +1,624 @@
+static const u8 Text_Version_Ruby[] = _("POKéMON RUBIN-EDITION");
+static const u8 Text_Version_Sapphire[] = _("POKéMON SAPHIR-EDITION");
+static const u8 Category_Credits[] = _("{PALETTE 9}Credits");
+static const u8 Category_ExecutiveDirector[] = _("{PALETTE 9}Executive Director");
+static const u8 Category_Director[] = _("{PALETTE 9}Director");
+static const u8 Category_ArtDirector[] = _("{PALETTE 9}Art Director");
+static const u8 Category_BattleDirector[] = _("{PALETTE 9}Battle Director");
+static const u8 Category_MainProgrammer[] = _("{PALETTE 9}Main Programmer");
+static const u8 Category_BattleSystemProgrammer[] = _("{PALETTE 9}Battle System Programmer");
+static const u8 Category_FieldSystemProgrammer[] = _("{PALETTE 9}Field System Programmer");
+static const u8 Category_Programmers[] = _("{PALETTE 9}Programmers");
+static const u8 Category_MainGraphicDesigner[] = _("{PALETTE 9}Main Graphic Designer");
+static const u8 Category_POKeMONGraphicDesigners[] = _("{PALETTE 9}POKéMON & Graphic Designers");
+static const u8 Category_POKeMONDesigners[] = _("{PALETTE 9}POKéMON Designers");
+static const u8 Category_MusicComposition[] = _("{PALETTE 9}Music Composition");
+static const u8 Category_SoundEffectsPOKeMONVoices[] = _("{PALETTE 9}Sound Effects & POKéMON Voices");
+static const u8 Category_GameDesigners[] = _("{PALETTE 9}Game Designers");
+static const u8 Category_PlotScenario[] = _("{PALETTE 9}Plot Scenario");
+static const u8 Category_GameScenario[] = _("{PALETTE 9}Game Scenario");
+static const u8 Category_ScriptDesigners[] = _("{PALETTE 9}Script Designers");
+static const u8 Category_MapDesigners[] = _("{PALETTE 9}Map Designers");
+static const u8 Category_MapDataDesigners[] = _("{PALETTE 9}Map Data Designers");
+static const u8 Category_ParametricDesigners[] = _("{PALETTE 9}Parametric Designers");
+static const u8 Category_POKeDEXText[] = _("{PALETTE 9}POKéDEX Text");
+static const u8 Category_EnvironmentToolProgrammers[] = _("{PALETTE 9}Environment & Tool Programmers");
+static const u8 Category_ProductTesting[] = _("{PALETTE 9}Product Testing");
+static const u8 Category_SpecialThanks[] = _("{PALETTE 9}Special Thanks");
+static const u8 Category_Coordinators[] = _("{PALETTE 9}Coordinators");
+static const u8 Category_Producers[] = _("{PALETTE 9}Producers");
+static const u8 Category_ExecutiveProducers[] = _("{PALETTE 9}Executive Producers");
+static const u8 Category_InformationSupervisors[] = _("{PALETTE 9}Information Supervisors");
+static const u8 Category_TaskManagers[] = _("{PALETTE 9}Task Managers");
+static const u8 Category_BrailleCodeCheck[] = _("{PALETTE 9}Braille Code Check");
+static const u8 Category_GermanVersionCoordinators[] = _("{PALETTE 9}German Version Coordinators");
+static const u8 Category_Translators[] = _("{PALETTE 9}Translators");
+static const u8 Category_ProductSupport[] = _("{PALETTE 9}Product Support");
+static const u8 Category_Artwork[] = _("{PALETTE 9}Artwork");
+static const u8 Category_TextEditor[] = _("{PALETTE 9}Text Editor");
+static const u8 Category_NOEProductTesting[] = _("{PALETTE 9}NOE Product Testing");
+static const u8 Category_GraphicDesigners[] = _("{PALETTE 9}Graphic Designers");
+static const u8 Text_SatoshiTajiri[] = _("Satoshi Tajiri");
+static const u8 Text_Masuda[] = _("Junichi Masuda");
+static const u8 Text_Sugimori[] = _("Ken Sugimori");
+static const u8 Text_Morimoto[] = _("Shigeki Morimoto");
+static const u8 Text_TetsuyaWatanabe[] = _("Tetsuya Watanabe");
+static const u8 Text_Sogabe[] = _("Hisashi Sogabe");
+static const u8 Text_Tamada[] = _("Sousuke Tamada");
+static const u8 Text_Mori[] = _("Akito Mori");
+static const u8 Text_Kagaya[] = _("Keita Kagaya");
+static const u8 Text_Matsuda[] = _("Yoshinori Matsuda");
+static const u8 Text_HiroyukiNakamura[] = _("Hiroyuki Nakamura");
+static const u8 Text_Taya[] = _("Masao Taya");
+static const u8 Text_Nohara[] = _("Satoshi Nohara");
+static const u8 Text_TomomichiOhta[] = _("Tomomichi Ohta");
+static const u8 Text_Iwasawa[] = _("Miyuki Iwasawa");
+static const u8 Text_TakenoriOhta[] = _("Takenori Ohta");
+static const u8 Text_Yoshida[] = _("Hironobu Yoshida");
+static const u8 Text_Fujiwara[] = _("Motofumi Fujiwara");
+static const u8 Text_SatoshiOhta[] = _("Satoshi Ohta");
+static const u8 Text_Iwashita[] = _("Asuka Iwashita");
+static const u8 Text_Tomita[] = _("Aimi Tomita");
+static const u8 Text_Unno[] = _("Takao Unno");
+static const u8 Text_Eo[] = _("Kanako Eo");
+static const u8 Text_Okutani[] = _("Jun Okutani");
+static const u8 Text_Nishida[] = _("Atsuko Nishida");
+static const u8 Text_Saito[] = _("Muneo Saito");
+static const u8 Text_Yoshikawa[] = _("Rena Yoshikawa");
+static const u8 Text_Ichinose[] = _("Go Ichinose");
+static const u8 Text_Aoki[] = _("Morikazu Aoki");
+static const u8 Text_Nishino[] = _("Koji Nishino");
+static const u8 Text_Matsushima[] = _("Kenji Matsushima");
+static const u8 Text_TetsujiOhta[] = _("Tetsuji Ohta");
+static const u8 Text_Sato[] = _("Hitomi Sato");
+static const u8 Text_Kawachimaru[] = _("Takeshi Kawachimaru");
+static const u8 Text_Shimoyamada[] = _("Teruyuki Shimoyamada");
+static const u8 Text_Ohmori[] = _("Shigeru Ohmori");
+static const u8 Text_Takahashi[] = _("Tadashi Takahashi");
+static const u8 Text_ToshinobuMatsumiya[] = _("Toshinobu Matsumiya");
+static const u8 Text_Tomisawa[] = _("Akihito Tomisawa");
+static const u8 Text_Enomoto[] = _("Hiroki Enomoto");
+static const u8 Text_Terada[] = _("Kazuyuki Terada");
+static const u8 Text_Sakurai[] = _("Yuri Sakurai");
+static const u8 Text_Sagawa[] = _("Hiromi Sagawa");
+static const u8 Text_Tominaga[] = _("Kenji Tominaga");
+static const u8 Text_YoshioTajiri[] = _("Yoshio Tajiri");
+static const u8 Text_Sasaki[] = _("Teiko Sasaki");
+static const u8 Text_Hamano[] = _("Sachiko Hamano");
+static const u8 Text_ChieMatsumiya[] = _("Chie Matsumiya");
+static const u8 Text_Shinozaki[] = _("Akiko Shinozaki");
+static const u8 Text_Fujii[] = _("Atsuko Fujii");
+static const u8 Text_SuperMarioClub[] = _("NCL Super Mario Club");
+static const u8 Text_Tada[] = _("Atsushi Tada");
+static const u8 Text_Ohnishi[] = _("Takahiro Ohnishi");
+static const u8 Text_Okamura[] = _("Norihide Okamura");
+static const u8 Text_HiroNakamura[] = _("Hiro Nakamura");
+static const u8 Text_Uesugi[] = _("Hiroyuki Uesugi");
+static const u8 Text_Murakawa[] = _("Teruki Murakawa");
+static const u8 Text_Kinashi[] = _("Akira Kinashi");
+static const u8 Text_Takizawa[] = _("Michiko Takizawa");
+static const u8 Text_Takada[] = _("Makiko Takada");
+static const u8 Text_Kondo[] = _("Takanao Kondo");
+static const u8 Text_Mashima[] = _("Ai Mashima");
+static const u8 Text_Nomoto[] = _("Gakuji Nomoto");
+static const u8 Text_Izushi[] = _("Takehiro Izushi");
+static const u8 Text_Yamagami[] = _("Hitoshi Yamagami");
+static const u8 Text_KyokoWatanabe[] = _("Kyoko Watanabe");
+static const u8 Text_Nakano[] = _("Takao Nakano");
+static const u8 Text_Jinnai[] = _("Hiroyuki Jinnai");
+static const u8 Text_Tsuru[] = _("Hiroaki Tsuru");
+static const u8 Text_Ishihara[] = _("Tsunekaz Ishihara");
+static const u8 Text_Iwata[] = _("Satoru Iwata");
+static const u8 Text_Suyama[] = _("Kazuya Suyama");
+static const u8 Text_Mitsuhara[] = _("Satoshi Mitsuhara");
+static const u8 Text_JapanBrailleLibrary[] = _("Japan Braille Library");
+static const u8 Text_Komura[] = _("Tomotaka Komura");
+static const u8 Text_Ohashi[] = _("Mikiko Ohashi");
+static const u8 Text_Yamamoto[] = _("Souichi Yamamoto");
+static const u8 Text_Funakoshi[] = _("Masanori Funakoshi");
+static const u8 Text_Nakamichi[] = _("Kimiko Nakamichi");
+static const u8 Text_Hara[] = _("Daisuke Hara");
+static const u8 Text_Ford[] = _("Sayoko Blodgett-Ford");
+static const u8 Text_Barlow[] = _("Nicola Pratt-Barlow");
+static const u8 Text_Uyama[] = _("Koji Uyama");
+static const u8 Text_EBU[] = _("European Blind Union");
+static const u8 Text_Saeki[] = _("Naoko Saeki");
+static const u8 Text_Sadahisa[] = _("Kayo Sadahisa");
+static const u8 Text_Schafer[] = _("Daniel Schäfers");
+static const u8 Text_Deimel[] = _("Martina Deimel");
+static const u8 Text_Jahn[] = _("Andrea Jähn");
+static const u8 Text_Victoria[] = _("Ángel Victoria");
+static const u8 Text_Mawer[] = _("Matthew Mawer");
+static const u8 Text_Danieli[] = _("Alessio Danieli");
+static const u8 Text_Schnitzer[] = _("Rudi Schnitzer");
+static const u8 Text_Pujos[] = _("Gabriera Pujós");
+static const u8 Text_CreditsTerminator[] = _("");
+
+static const struct CreditsEntry CreditsTerminator[] = {0, Text_CreditsTerminator};
+static const struct CreditsEntry CreditsCredits[] = {11, Category_Credits};
+static const struct CreditsEntry CreditsExecutiveDirector[] = {8, Category_ExecutiveDirector};
+static const struct CreditsEntry CreditsDirector[] = {12, Category_Director};
+static const struct CreditsEntry CreditsArtDirector[] = {10, Category_ArtDirector};
+static const struct CreditsEntry CreditsBattleDirector[] = {10, Category_BattleDirector};
+static const struct CreditsEntry CreditsMainProgrammer[] = {10, Category_MainProgrammer};
+static const struct CreditsEntry CreditsBattleSystemProgrammer[] = {8, Category_BattleSystemProgrammer};
+static const struct CreditsEntry CreditsFieldSystemProgrammer[] = {7, Category_FieldSystemProgrammer};
+static const struct CreditsEntry CreditsProgrammers[] = {12, Category_Programmers};
+static const struct CreditsEntry CreditsMainGraphicDesigner[] = {7, Category_MainGraphicDesigner};
+static const struct CreditsEntry CreditsPOKeMONGraphicDesigners[] = {6, Category_POKeMONGraphicDesigners};
+static const struct CreditsEntry CreditsPOKeMONDesigners[] = {10, Category_POKeMONDesigners};
+static const struct CreditsEntry CreditsMusicComposition[] = {13, Category_MusicComposition};
+static const struct CreditsEntry CreditsSoundEffectsPOKeMONVoices[] = {4, Category_SoundEffectsPOKeMONVoices};
+static const struct CreditsEntry CreditsGameDesigners[] = {11, Category_GameDesigners};
+static const struct CreditsEntry CreditsPlotScenario[] = {11, Category_PlotScenario};
+static const struct CreditsEntry CreditsGameScenario[] = {13, Category_GameScenario};
+static const struct CreditsEntry CreditsScriptDesigners[] = {10, Category_ScriptDesigners};
+static const struct CreditsEntry CreditsMapDesigners[] = {11, Category_MapDesigners};
+static const struct CreditsEntry CreditsMapDataDesigners[] = {9, Category_MapDataDesigners};
+static const struct CreditsEntry CreditsParametricDesigners[] = {9, Category_ParametricDesigners};
+static const struct CreditsEntry CreditsPOKeDEXText[] = {11, Category_POKeDEXText};
+static const struct CreditsEntry CreditsEnvironmentToolProgrammers[] = {6, Category_EnvironmentToolProgrammers};
+static const struct CreditsEntry CreditsProductTesting[] = {11, Category_ProductTesting};
+static const struct CreditsEntry CreditsSpecialThanks[] = {10, Category_SpecialThanks};
+static const struct CreditsEntry CreditsCoordinators[] = {11, Category_Coordinators};
+static const struct CreditsEntry CreditsProducers[] = {11, Category_Producers};
+static const struct CreditsEntry CreditsExecutiveProducers[] = {7, Category_ExecutiveProducers};
+static const struct CreditsEntry CreditsInformationSupervisors[] = {10, Category_InformationSupervisors};
+static const struct CreditsEntry CreditsTaskManagers[] = {8, Category_TaskManagers};
+static const struct CreditsEntry CreditsBrailleCodeCheck[] = {10, Category_BrailleCodeCheck};
+static const struct CreditsEntry CreditsSatoshiTajiri[] = {11, Text_SatoshiTajiri};
+static const struct CreditsEntry CreditsMasuda[] = {11, Text_Masuda};
+static const struct CreditsEntry CreditsSugimori[] = {11, Text_Sugimori};
+static const struct CreditsEntry CreditsMorimoto[] = {11, Text_Morimoto};
+static const struct CreditsEntry CreditsTetsuyaWatanabe[] = {11, Text_TetsuyaWatanabe};
+static const struct CreditsEntry CreditsSogabe[] = {11, Text_Sogabe};
+static const struct CreditsEntry CreditsTamada[] = {11, Text_Tamada};
+static const struct CreditsEntry CreditsMori[] = {11, Text_Mori};
+static const struct CreditsEntry CreditsKagaya[] = {11, Text_Kagaya};
+static const struct CreditsEntry CreditsMatsuda[] = {11, Text_Matsuda};
+static const struct CreditsEntry CreditsHiroyukiNakamura[] = {11, Text_HiroyukiNakamura};
+static const struct CreditsEntry CreditsTaya[] = {11, Text_Taya};
+static const struct CreditsEntry CreditsNohara[] = {11, Text_Nohara};
+static const struct CreditsEntry CreditsTomomichiOhta[] = {11, Text_TomomichiOhta};
+static const struct CreditsEntry CreditsIwasawa[] = {11, Text_Iwasawa};
+static const struct CreditsEntry CreditsTakenoriOhta[] = {11, Text_TakenoriOhta};
+static const struct CreditsEntry CreditsYoshida[] = {11, Text_Yoshida};
+static const struct CreditsEntry CreditsFujiwara[] = {11, Text_Fujiwara};
+static const struct CreditsEntry CreditsSatoshiOhta[] = {11, Text_SatoshiOhta};
+static const struct CreditsEntry CreditsIwashita[] = {11, Text_Iwashita};
+static const struct CreditsEntry CreditsTomita[] = {11, Text_Tomita};
+static const struct CreditsEntry CreditsUnno[] = {11, Text_Unno};
+static const struct CreditsEntry CreditsEo[] = {11, Text_Eo};
+static const struct CreditsEntry CreditsOkutani[] = {11, Text_Okutani};
+static const struct CreditsEntry CreditsNishida[] = {11, Text_Nishida};
+static const struct CreditsEntry CreditsSaito[] = {11, Text_Saito};
+static const struct CreditsEntry CreditsYoshikawa[] = {11, Text_Yoshikawa};
+static const struct CreditsEntry CreditsIchinose[] = {11, Text_Ichinose};
+static const struct CreditsEntry CreditsAoki[] = {11, Text_Aoki};
+static const struct CreditsEntry CreditsNishino[] = {11, Text_Nishino};
+static const struct CreditsEntry CreditsMatsushima[] = {11, Text_Matsushima};
+static const struct CreditsEntry CreditsTetsujiOhta[] = {11, Text_TetsujiOhta};
+static const struct CreditsEntry CreditsSato[] = {11, Text_Sato};
+static const struct CreditsEntry CreditsKawachimaru[] = {11, Text_Kawachimaru};
+static const struct CreditsEntry CreditsShimoyamada[] = {11, Text_Shimoyamada};
+static const struct CreditsEntry CreditsOhmori[] = {11, Text_Ohmori};
+static const struct CreditsEntry CreditsTakahashi[] = {11, Text_Takahashi};
+static const struct CreditsEntry CreditsToshinobuMatsumiya[] = {11, Text_ToshinobuMatsumiya};
+static const struct CreditsEntry CreditsTomisawa[] = {11, Text_Tomisawa};
+static const struct CreditsEntry CreditsEnomoto[] = {11, Text_Enomoto};
+static const struct CreditsEntry CreditsTerada[] = {11, Text_Terada};
+static const struct CreditsEntry CreditsSakurai[] = {11, Text_Sakurai};
+static const struct CreditsEntry CreditsSagawa[] = {11, Text_Sagawa};
+static const struct CreditsEntry CreditsTominaga[] = {11, Text_Tominaga};
+static const struct CreditsEntry CreditsYoshioTajiri[] = {11, Text_YoshioTajiri};
+static const struct CreditsEntry CreditsSasaki[] = {11, Text_Sasaki};
+static const struct CreditsEntry CreditsHamano[] = {11, Text_Hamano};
+static const struct CreditsEntry CreditsChieMatsumiya[] = {11, Text_ChieMatsumiya};
+static const struct CreditsEntry CreditsShinozaki[] = {11, Text_Shinozaki};
+static const struct CreditsEntry CreditsFujii[] = {11, Text_Fujii};
+static const struct CreditsEntry CreditsSuperMarioClub[] = {11, Text_SuperMarioClub};
+static const struct CreditsEntry CreditsTada[] = {11, Text_Tada};
+static const struct CreditsEntry CreditsOhnishi[] = {11, Text_Ohnishi};
+static const struct CreditsEntry CreditsOkamura[] = {11, Text_Okamura};
+static const struct CreditsEntry CreditsHiroNakamura[] = {11, Text_HiroNakamura};
+static const struct CreditsEntry CreditsUesugi[] = {11, Text_Uesugi};
+static const struct CreditsEntry CreditsMurakawa[] = {11, Text_Murakawa};
+static const struct CreditsEntry CreditsKinashi[] = {11, Text_Kinashi};
+static const struct CreditsEntry CreditsTakizawa[] = {11, Text_Takizawa};
+static const struct CreditsEntry CreditsTakada[] = {11, Text_Takada};
+static const struct CreditsEntry CreditsKondo[] = {11, Text_Kondo};
+static const struct CreditsEntry CreditsMashima[] = {11, Text_Mashima};
+static const struct CreditsEntry CreditsNomoto[] = {11, Text_Nomoto};
+static const struct CreditsEntry CreditsIzushi[] = {11, Text_Izushi};
+static const struct CreditsEntry CreditsYamagami[] = {11, Text_Yamagami};
+static const struct CreditsEntry CreditsKyokoWatanabe[] = {11, Text_KyokoWatanabe};
+static const struct CreditsEntry CreditsNakano[] = {11, Text_Nakano};
+static const struct CreditsEntry CreditsJinnai[] = {11, Text_Jinnai};
+static const struct CreditsEntry CreditsTsuru[] = {11, Text_Tsuru};
+static const struct CreditsEntry CreditsIshihara[] = {11, Text_Ishihara};
+static const struct CreditsEntry CreditsIwata[] = {11, Text_Iwata};
+static const struct CreditsEntry CreditsSuyama[] = {11, Text_Suyama};
+static const struct CreditsEntry CreditsMitsuhara[] = {11, Text_Mitsuhara};
+static const struct CreditsEntry CreditsJapanBrailleLibrary[] = {9, Text_JapanBrailleLibrary};
+static const struct CreditsEntry CreditsKomura[] = {11, Text_Komura};
+static const struct CreditsEntry CreditsOhashi[] = {11, Text_Ohashi};
+static const struct CreditsEntry CreditsTranslators[] = {0, Category_Translators};
+static const struct CreditsEntry CreditsProductSupport[] = {0, Category_ProductSupport};
+static const struct CreditsEntry CreditsArtwork[] = {0, Category_Artwork};
+static const struct CreditsEntry CreditsTextEditor[] = {0, Category_TextEditor};
+static const struct CreditsEntry CreditsGraphicDesigners[] = {0, Category_GraphicDesigners};
+static const struct CreditsEntry CreditsYamamoto[] = {0, Text_Yamamoto};
+static const struct CreditsEntry CreditsFunakoshi[] = {0, Text_Funakoshi};
+static const struct CreditsEntry CreditsNakamichi[] = {0, Text_Nakamichi};
+static const struct CreditsEntry CreditsHara[] = {0, Text_Hara};
+static const struct CreditsEntry CreditsFord[] = {0, Text_Ford};
+static const struct CreditsEntry CreditsBarlow[] = {0, Text_Barlow};
+static const struct CreditsEntry CreditsUyama[] = {0, Text_Uyama};
+static const struct CreditsEntry CreditsEBU[] = {0, Text_EBU};
+#ifdef SAPPHIRE
+static const struct CreditsEntry CreditsVersion[] = {0, Text_Version_Sapphire};
+#else
+static const struct CreditsEntry CreditsVersion[] = {0, Text_Version_Ruby};
+#endif
+static const struct CreditsEntry CreditsNOEProductTesting[] = {0, Category_NOEProductTesting};
+static const struct CreditsEntry CreditsSaeki[] = {0, Text_Saeki};
+static const struct CreditsEntry CreditsSadahisa[] = {0, Text_Sadahisa};
+static const struct CreditsEntry CreditsGermanVersionCoordinators[] = {0, Category_GermanVersionCoordinators};
+static const struct CreditsEntry CreditsSchafer[] = {0, Text_Schafer};
+static const struct CreditsEntry CreditsDeimel[] = {0, Text_Deimel};
+static const struct CreditsEntry CreditsJahn[] = {0, Text_Jahn};
+static const struct CreditsEntry CreditsVictoria[] = {0, Text_Victoria};
+static const struct CreditsEntry CreditsMawer[] = {0, Text_Mawer};
+static const struct CreditsEntry CreditsDanieli[] = {0, Text_Danieli};
+static const struct CreditsEntry CreditsSchnitzer[] = {0, Text_Schnitzer};
+static const struct CreditsEntry CreditsPujos[] = {0, Text_Pujos};
+
+#define LINES_PER_PAGE 5
+#define _ CreditsTerminator
+const struct CreditsEntry *const gCreditsEntryPointerTable[][LINES_PER_PAGE] =
+{
+ {
+ _,
+ CreditsVersion,
+ CreditsCredits,
+ _,
+ _
+ },
+ {
+ _,
+ CreditsDirector,
+ CreditsMasuda,
+ _,
+ _
+ },
+ {
+ _,
+ CreditsArtDirector,
+ CreditsSugimori,
+ _,
+ _
+ },
+ {
+ _,
+ CreditsBattleDirector,
+ CreditsMorimoto,
+ _,
+ _
+ },
+ {
+ _,
+ CreditsMainProgrammer,
+ CreditsTetsuyaWatanabe,
+ _,
+ _
+ },
+ {
+ CreditsBattleSystemProgrammer,
+ CreditsSogabe,
+ CreditsFieldSystemProgrammer,
+ CreditsTamada,
+ _
+ },
+ {
+ CreditsProgrammers,
+ CreditsMori,
+ CreditsKagaya,
+ CreditsMatsuda,
+ _
+ },
+ {
+ CreditsProgrammers,
+ CreditsHiroyukiNakamura,
+ CreditsTaya,
+ CreditsNohara,
+ _
+ },
+ {
+ CreditsProgrammers,
+ CreditsTomomichiOhta,
+ CreditsIwasawa,
+ CreditsTakenoriOhta,
+ _
+ },
+ {
+ _,
+ CreditsMainGraphicDesigner,
+ CreditsYoshida,
+ _,
+ _
+ },
+ {
+ CreditsPOKeMONGraphicDesigners,
+ CreditsSugimori,
+ CreditsYoshida,
+ _,
+ _
+ },
+ {
+ CreditsPOKeMONGraphicDesigners,
+ CreditsFujiwara,
+ CreditsSatoshiOhta,
+ CreditsIwashita,
+ _
+ },
+ {
+ CreditsPOKeMONGraphicDesigners,
+ CreditsTomita,
+ CreditsUnno,
+ CreditsEo,
+ _
+ },
+ {
+ CreditsPOKeMONDesigners,
+ CreditsMorimoto,
+ CreditsOkutani,
+ CreditsNishida,
+ _
+ },
+ {
+ CreditsPOKeMONDesigners,
+ CreditsSaito,
+ CreditsYoshikawa,
+ _,
+ _
+ },
+ {
+ CreditsMusicComposition,
+ CreditsIchinose,
+ CreditsAoki,
+ CreditsMasuda,
+ _
+ },
+ {
+ _,
+ CreditsSoundEffectsPOKeMONVoices,
+ CreditsAoki,
+ _,
+ _
+ },
+ {
+ CreditsGameDesigners,
+ CreditsMasuda,
+ CreditsMorimoto,
+ CreditsNishino,
+ _
+ },
+ {
+ CreditsGameDesigners,
+ CreditsMatsushima,
+ CreditsTetsujiOhta,
+ CreditsSato,
+ CreditsKawachimaru
+ },
+ {
+ CreditsGameDesigners,
+ CreditsShimoyamada,
+ CreditsOhmori,
+ CreditsTakahashi,
+ _
+ },
+ {
+ CreditsPlotScenario,
+ CreditsMasuda,
+ CreditsTomisawa,
+ CreditsNishino,
+ _
+ },
+ {
+ CreditsGameScenario,
+ CreditsToshinobuMatsumiya,
+ CreditsTomisawa,
+ _,
+ _
+ },
+ {
+ CreditsScriptDesigners,
+ CreditsNohara,
+ CreditsTetsujiOhta,
+ CreditsTomomichiOhta,
+ _
+ },
+ {
+ CreditsMapDesigners,
+ CreditsOhmori,
+ CreditsTetsujiOhta,
+ CreditsNishino,
+ _
+ },
+ {
+ CreditsMapDataDesigners,
+ CreditsTetsujiOhta,
+ CreditsTakahashi,
+ _,
+ _
+ },
+ {
+ CreditsParametricDesigners,
+ CreditsNishino,
+ CreditsMorimoto,
+ CreditsTetsujiOhta,
+ CreditsShimoyamada
+ },
+ {
+ _,
+ CreditsPOKeDEXText,
+ CreditsMatsushima,
+ _,
+ _
+ },
+ {
+ CreditsEnvironmentToolProgrammers,
+ CreditsSogabe,
+ CreditsTamada,
+ CreditsHiroyukiNakamura,
+ CreditsMori
+ },
+ {
+ CreditsProductTesting,
+ CreditsSuperMarioClub,
+ CreditsTada,
+ CreditsOhnishi,
+ CreditsOkamura
+ },
+ {
+ CreditsSpecialThanks,
+ CreditsTominaga,
+ CreditsYoshioTajiri,
+ CreditsSasaki,
+ _
+ },
+ {
+ CreditsSpecialThanks,
+ CreditsHamano,
+ CreditsChieMatsumiya,
+ CreditsShinozaki,
+ CreditsFujii
+ },
+ {
+ CreditsSpecialThanks,
+ CreditsSuyama,
+ CreditsMitsuhara,
+ CreditsKomura,
+ CreditsOhashi
+ },
+ {
+ CreditsSpecialThanks,
+ CreditsTakizawa,
+ CreditsTakada,
+ CreditsKondo,
+ CreditsMashima
+ },
+ {
+ CreditsInformationSupervisors,
+ CreditsEnomoto,
+ CreditsTerada,
+ CreditsSakurai,
+ CreditsSagawa
+ },
+ {
+ CreditsCoordinators,
+ CreditsKyokoWatanabe,
+ CreditsNakano,
+ _,
+ _
+ },
+ {
+ CreditsTaskManagers,
+ CreditsYamagami,
+ CreditsNomoto,
+ _,
+ _
+ },
+ {
+ CreditsProducers,
+ CreditsJinnai,
+ CreditsIzushi,
+ CreditsTsuru,
+ _
+ },
+ {
+ _,
+ CreditsExecutiveDirector,
+ CreditsSatoshiTajiri,
+ _,
+ _
+ },
+ {
+ _,
+ CreditsExecutiveProducers,
+ CreditsIwata,
+ _,
+ _
+ },
+ {
+ _,
+ CreditsExecutiveProducers,
+ CreditsIshihara,
+ _,
+ _
+ },
+ {
+ CreditsGermanVersionCoordinators,
+ CreditsUesugi,
+ CreditsSadahisa,
+ _,
+ _
+ },
+ {
+ CreditsTranslators,
+ CreditsSchafer,
+ CreditsDeimel,
+ CreditsJahn,
+ _
+ },
+ {
+ CreditsProgrammers,
+ CreditsMurakawa,
+ CreditsYamamoto,
+ CreditsKinashi,
+ _
+ },
+ {
+ CreditsGraphicDesigners,
+ CreditsYamamoto,
+ CreditsKinashi,
+ _,
+ _
+ },
+ {
+ CreditsProductSupport,
+ CreditsNakamichi,
+ CreditsSaeki,
+ CreditsHara,
+ _
+ },
+ {
+ CreditsNOEProductTesting,
+ CreditsVictoria,
+ CreditsMawer,
+ CreditsDanieli,
+ CreditsSchnitzer
+ },
+ {
+ _,
+ CreditsBrailleCodeCheck,
+ CreditsEBU,
+ _,
+ _
+ },
+ {
+ CreditsSpecialThanks,
+ CreditsHiroNakamura,
+ CreditsFord,
+ CreditsBarlow,
+ _
+ },
+ {
+ CreditsSpecialThanks,
+ CreditsUyama,
+ CreditsPujos,
+ _,
+ _
+ },
+};
+#undef _
diff --git a/src/data/credits_en.h b/src/data/credits_en.h
new file mode 100755
index 000000000..8ce0bad03
--- /dev/null
+++ b/src/data/credits_en.h
@@ -0,0 +1,654 @@
+const u8 Category_Credits[] = _("{PALETTE 9}Credits");
+const u8 Category_ExecutiveDirector[] = _("{PALETTE 9}Executive Director");
+const u8 Category_Director[] = _("{PALETTE 9}Director");
+const u8 Category_ArtDirector[] = _("{PALETTE 9}Art Director");
+const u8 Category_BattleDirector[] = _("{PALETTE 9}Battle Director");
+const u8 Category_MainProgrammer[] = _("{PALETTE 9}Main Programmer");
+const u8 Category_BattleSystemProgrammer[] = _("{PALETTE 9}Battle System Programmer");
+const u8 Category_FieldSystemProgrammer[] = _("{PALETTE 9}Field System Programmer");
+const u8 Category_Programmers[] = _("{PALETTE 9}Programmers");
+const u8 Category_MainGraphicDesigner[] = _("{PALETTE 9}Main Graphic Designer");
+const u8 Category_POKeMONGraphicDesigners[] = _("{PALETTE 9}POKéMON & Graphic Designers");
+const u8 Category_POKeMONDesigners[] = _("{PALETTE 9}POKéMON Designers");
+const u8 Category_MusicComposition[] = _("{PALETTE 9}Music Composition");
+const u8 Category_SoundEffectsPOKeMONVoices[] = _("{PALETTE 9}Sound Effects & POKéMON Voices");
+const u8 Category_GameDesigners[] = _("{PALETTE 9}Game Designers");
+const u8 Category_PlotScenario[] = _("{PALETTE 9}Plot Scenario");
+const u8 Category_GameScenario[] = _("{PALETTE 9}Game Scenario");
+const u8 Category_ScriptDesigners[] = _("{PALETTE 9}Script Designers");
+const u8 Category_MapDesigners[] = _("{PALETTE 9}Map Designers");
+const u8 Category_MapDataDesigners[] = _("{PALETTE 9}Map Data Designers");
+const u8 Category_ParametricDesigners[] = _("{PALETTE 9}Parametric Designers");
+const u8 Category_POKeDEXText[] = _("{PALETTE 9}POKéDEX Text");
+const u8 Category_EnvironmentToolProgrammers[] = _("{PALETTE 9}Environment & Tool Programmers");
+const u8 Category_ProductTesting[] = _("{PALETTE 9}Product Testing");
+const u8 Category_SpecialThanks[] = _("{PALETTE 9}Special Thanks");
+const u8 Category_Coordinators[] = _("{PALETTE 9}Coordinators");
+const u8 Category_Producers[] = _("{PALETTE 9}Producers");
+const u8 Category_ExecutiveProducers[] = _("{PALETTE 9}Executive Producers");
+const u8 Category_InformationSupervisors[] = _("{PALETTE 9}Information Supervisors");
+const u8 Category_TaskManagers[] = _("{PALETTE 9}Task Managers");
+const u8 Category_BrailleCodeCheck[] = _("{PALETTE 9}Braille Code Check");
+const u8 Category_EnglishVersionCoordinators[] = _("{PALETTE 9}English Version Coordinators");
+const u8 Category_Translator[] = _("{PALETTE 9}Translator");
+const u8 Category_ProductSupport[] = _("{PALETTE 9}Product Support");
+const u8 Category_Artwork[] = _("{PALETTE 9}Artwork");
+const u8 Category_TextEditor[] = _("{PALETTE 9}Text Editor");
+const u8 Category_NOAProductTesting[] = _("{PALETTE 9}NOA Product Testing");
+const u8 Category_GraphicDesigners[] = _("{PALETTE 9}Graphic Designers");
+const u8 Text_SatoshiTajiri[] = _("Satoshi Tajiri");
+const u8 Text_Masuda[] = _("Junichi Masuda");
+const u8 Text_Sugimori[] = _("Ken Sugimori");
+const u8 Text_Morimoto[] = _("Shigeki Morimoto");
+const u8 Text_TetsuyaWatanabe[] = _("Tetsuya Watanabe");
+const u8 Text_Sogabe[] = _("Hisashi Sogabe");
+const u8 Text_Tamada[] = _("Sousuke Tamada");
+const u8 Text_Mori[] = _("Akito Mori");
+const u8 Text_Kagaya[] = _("Keita Kagaya");
+const u8 Text_Matsuda[] = _("Yoshinori Matsuda");
+const u8 Text_HiroyukiNakamura[] = _("Hiroyuki Nakamura");
+const u8 Text_Taya[] = _("Masao Taya");
+const u8 Text_Nohara[] = _("Satoshi Nohara");
+const u8 Text_TomomichiOhta[] = _("Tomomichi Ohta");
+const u8 Text_Iwasawa[] = _("Miyuki Iwasawa");
+const u8 Text_TakenoriOhta[] = _("Takenori Ohta");
+const u8 Text_Yoshida[] = _("Hironobu Yoshida");
+const u8 Text_Fujiwara[] = _("Motofumi Fujiwara");
+const u8 Text_SatoshiOhta[] = _("Satoshi Ohta");
+const u8 Text_Iwashita[] = _("Asuka Iwashita");
+const u8 Text_Tomita[] = _("Aimi Tomita");
+const u8 Text_Unno[] = _("Takao Unno");
+const u8 Text_Eo[] = _("Kanako Eo");
+const u8 Text_Okutani[] = _("Jun Okutani");
+const u8 Text_Nishida[] = _("Atsuko Nishida");
+const u8 Text_Saito[] = _("Muneo Saito");
+const u8 Text_Yoshikawa[] = _("Rena Yoshikawa");
+const u8 Text_Ichinose[] = _("Go Ichinose");
+const u8 Text_Aoki[] = _("Morikazu Aoki");
+const u8 Text_Nishino[] = _("Koji Nishino");
+const u8 Text_Matsushima[] = _("Kenji Matsushima");
+const u8 Text_TetsujiOhta[] = _("Tetsuji Ohta");
+const u8 Text_Sato[] = _("Hitomi Sato");
+const u8 Text_Kawachimaru[] = _("Takeshi Kawachimaru");
+const u8 Text_Shimoyamada[] = _("Teruyuki Shimoyamada");
+const u8 Text_Ohmori[] = _("Shigeru Ohmori");
+const u8 Text_Takahashi[] = _("Tadashi Takahashi");
+const u8 Text_ToshinobuMatsumiya[] = _("Toshinobu Matsumiya");
+const u8 Text_Tomisawa[] = _("Akihito Tomisawa");
+const u8 Text_Enomoto[] = _("Hiroki Enomoto");
+const u8 Text_Terada[] = _("Kazuyuki Terada");
+const u8 Text_Sakurai[] = _("Yuri Sakurai");
+const u8 Text_Sagawa[] = _("Hiromi Sagawa");
+const u8 Text_Tominaga[] = _("Kenji Tominaga");
+const u8 Text_YoshioTajiri[] = _("Yoshio Tajiri");
+const u8 Text_Sasaki[] = _("Teiko Sasaki");
+const u8 Text_Hamano[] = _("Sachiko Hamano");
+const u8 Text_ChieMatsumiya[] = _("Chie Matsumiya");
+const u8 Text_Shinozaki[] = _("Akiko Shinozaki");
+const u8 Text_Fujii[] = _("Atsuko Fujii");
+const u8 Text_SuperMarioClub[] = _("NCL Super Mario Club");
+const u8 Text_Tada[] = _("Atsushi Tada");
+const u8 Text_Ohnishi[] = _("Takahiro Ohnishi");
+const u8 Text_Okamura[] = _("Norihide Okamura");
+const u8 Text_HiroNakamura[] = _("Hiro Nakamura");
+const u8 Text_Uesugi[] = _("Hiroyuki Uesugi");
+const u8 Text_Murakawa[] = _("Teruki Murakawa");
+const u8 Text_Kinashi[] = _("Akira Kinashi");
+const u8 Text_Takizawa[] = _("Michiko Takizawa");
+const u8 Text_Takada[] = _("Makiko Takada");
+const u8 Text_Kondo[] = _("Takanao Kondo");
+const u8 Text_Mashima[] = _("Ai Mashima");
+const u8 Text_Nomoto[] = _("Gakuji Nomoto");
+const u8 Text_Izushi[] = _("Takehiro Izushi");
+const u8 Text_Yamagami[] = _("Hitoshi Yamagami");
+const u8 Text_KyokoWatanabe[] = _("Kyoko Watanabe");
+const u8 Text_Nakano[] = _("Takao Nakano");
+const u8 Text_Jinnai[] = _("Hiroyuki Jinnai");
+const u8 Text_Tsuru[] = _("Hiroaki Tsuru");
+const u8 Text_Ishihara[] = _("Tsunekaz Ishihara");
+const u8 Text_Iwata[] = _("Satoru Iwata");
+const u8 Text_Suyama[] = _("Kazuya Suyama");
+const u8 Text_Mitsuhara[] = _("Satoshi Mitsuhara");
+const u8 Text_JapanBrailleLibrary[] = _("Japan Braille Library");
+const u8 Text_Komura[] = _("Tomotaka Komura");
+const u8 Text_Ohashi[] = _("Mikiko Ohashi");
+const u8 Text_McMahill[] = _("Seth McMahill");
+const u8 Text_Ogasawara[] = _("Nob Ogasawara");
+const u8 Text_Yamamoto[] = _("Souichi Yamamoto");
+const u8 Text_Funakoshi[] = _("Masanori Funakoshi");
+const u8 Text_Fujihara[] = _("Kazuhiro Fujihara");
+const u8 Text_Nakamichi[] = _("Kimiko Nakamichi");
+const u8 Text_Hara[] = _("Daisuke Hara");
+const u8 Text_Okada[] = _("Atsushi Okada");
+const u8 Text_Lillygren[] = _("Teresa Lillygren");
+const u8 Text_Hertzog[] = _("Thomas Hertzog");
+const u8 Text_Ridgeway[] = _("Ed Ridgeway");
+const u8 Text_NFotB[] = _("National Federation of the Blind");
+const u8 Text_Maurer[] = _("Patricia A. Maurer");
+const u8 Text_Ford[] = _("Sayoko Blodgett-Ford");
+const u8 Text_Barlow[] = _("Nicola Pratt-Barlow");
+const u8 Text_Uyama[] = _("Koji Uyama");
+const u8 Text_Howitt[] = _("Anthony Howitt");
+const u8 Text_Tilden[] = _("Gail Tilden");
+const u8 Text_EBU[] = _("European Blind Union");
+const u8 Text_ABA[] = _("Australian Braille Authority");
+const u8 Text_RNZFotB[] = _("Royal New Zealand Federation for the Blind");
+const u8 Text_CreditsTerminator[] = _("");
+#ifdef SAPPHIRE
+const u8 Text_Version[] = _("{PALETTE 9}POKéMON SAPPHIRE VERSION");
+#else
+const u8 Text_Version[] = _("{PALETTE 9}POKéMON RUBY VERSION");
+#endif
+
+const struct CreditsEntry CreditsTerminator[] = {0, Text_CreditsTerminator};
+#ifdef SAPPHIRE
+const struct CreditsEntry CreditsVersion[] = {7, Text_Version};
+#else
+const struct CreditsEntry CreditsVersion[] = {8, Text_Version};
+#endif
+const struct CreditsEntry CreditsCredits[] = {11, Category_Credits};
+const struct CreditsEntry CreditsExecutiveDirector[] = {8, Category_ExecutiveDirector};
+const struct CreditsEntry CreditsDirector[] = {12, Category_Director};
+const struct CreditsEntry CreditsArtDirector[] = {10, Category_ArtDirector};
+const struct CreditsEntry CreditsBattleDirector[] = {10, Category_BattleDirector};
+const struct CreditsEntry CreditsMainProgrammer[] = {10, Category_MainProgrammer};
+const struct CreditsEntry CreditsBattleSystemProgrammer[] = {8, Category_BattleSystemProgrammer};
+const struct CreditsEntry CreditsFieldSystemProgrammer[] = {7, Category_FieldSystemProgrammer};
+const struct CreditsEntry CreditsProgrammers[] = {12, Category_Programmers};
+const struct CreditsEntry CreditsMainGraphicDesigner[] = {7, Category_MainGraphicDesigner};
+const struct CreditsEntry CreditsPOKeMONGraphicDesigners[] = {6, Category_POKeMONGraphicDesigners};
+const struct CreditsEntry CreditsPOKeMONDesigners[] = {10, Category_POKeMONDesigners};
+const struct CreditsEntry CreditsMusicComposition[] = {13, Category_MusicComposition};
+const struct CreditsEntry CreditsSoundEffectsPOKeMONVoices[] = {4, Category_SoundEffectsPOKeMONVoices};
+const struct CreditsEntry CreditsGameDesigners[] = {11, Category_GameDesigners};
+const struct CreditsEntry CreditsPlotScenario[] = {11, Category_PlotScenario};
+const struct CreditsEntry CreditsGameScenario[] = {13, Category_GameScenario};
+const struct CreditsEntry CreditsScriptDesigners[] = {10, Category_ScriptDesigners};
+const struct CreditsEntry CreditsMapDesigners[] = {11, Category_MapDesigners};
+const struct CreditsEntry CreditsMapDataDesigners[] = {9, Category_MapDataDesigners};
+const struct CreditsEntry CreditsParametricDesigners[] = {9, Category_ParametricDesigners};
+const struct CreditsEntry CreditsPOKeDEXText[] = {11, Category_POKeDEXText};
+const struct CreditsEntry CreditsEnvironmentToolProgrammers[] = {6, Category_EnvironmentToolProgrammers};
+const struct CreditsEntry CreditsProductTesting[] = {11, Category_ProductTesting};
+const struct CreditsEntry CreditsSpecialThanks[] = {10, Category_SpecialThanks};
+const struct CreditsEntry CreditsCoordinators[] = {11, Category_Coordinators};
+const struct CreditsEntry CreditsProducers[] = {11, Category_Producers};
+const struct CreditsEntry CreditsExecutiveProducers[] = {7, Category_ExecutiveProducers};
+const struct CreditsEntry CreditsInformationSupervisors[] = {10, Category_InformationSupervisors};
+const struct CreditsEntry CreditsTaskManagers[] = {8, Category_TaskManagers};
+const struct CreditsEntry CreditsBrailleCodeCheck[] = {10, Category_BrailleCodeCheck};
+const struct CreditsEntry CreditsSatoshiTajiri[] = {11, Text_SatoshiTajiri};
+const struct CreditsEntry CreditsMasuda[] = {11, Text_Masuda};
+const struct CreditsEntry CreditsSugimori[] = {11, Text_Sugimori};
+const struct CreditsEntry CreditsMorimoto[] = {11, Text_Morimoto};
+const struct CreditsEntry CreditsTetsuyaWatanabe[] = {11, Text_TetsuyaWatanabe};
+const struct CreditsEntry CreditsSogabe[] = {11, Text_Sogabe};
+const struct CreditsEntry CreditsTamada[] = {11, Text_Tamada};
+const struct CreditsEntry CreditsMori[] = {11, Text_Mori};
+const struct CreditsEntry CreditsKagaya[] = {11, Text_Kagaya};
+const struct CreditsEntry CreditsMatsuda[] = {11, Text_Matsuda};
+const struct CreditsEntry CreditsHiroyukiNakamura[] = {11, Text_HiroyukiNakamura};
+const struct CreditsEntry CreditsTaya[] = {11, Text_Taya};
+const struct CreditsEntry CreditsNohara[] = {11, Text_Nohara};
+const struct CreditsEntry CreditsTomomichiOhta[] = {11, Text_TomomichiOhta};
+const struct CreditsEntry CreditsIwasawa[] = {11, Text_Iwasawa};
+const struct CreditsEntry CreditsTakenoriOhta[] = {11, Text_TakenoriOhta};
+const struct CreditsEntry CreditsYoshida[] = {11, Text_Yoshida};
+const struct CreditsEntry CreditsFujiwara[] = {11, Text_Fujiwara};
+const struct CreditsEntry CreditsSatoshiOhta[] = {11, Text_SatoshiOhta};
+const struct CreditsEntry CreditsIwashita[] = {11, Text_Iwashita};
+const struct CreditsEntry CreditsTomita[] = {11, Text_Tomita};
+const struct CreditsEntry CreditsUnno[] = {11, Text_Unno};
+const struct CreditsEntry CreditsEo[] = {11, Text_Eo};
+const struct CreditsEntry CreditsOkutani[] = {11, Text_Okutani};
+const struct CreditsEntry CreditsNishida[] = {11, Text_Nishida};
+const struct CreditsEntry CreditsSaito[] = {11, Text_Saito};
+const struct CreditsEntry CreditsYoshikawa[] = {11, Text_Yoshikawa};
+const struct CreditsEntry CreditsIchinose[] = {11, Text_Ichinose};
+const struct CreditsEntry CreditsAoki[] = {11, Text_Aoki};
+const struct CreditsEntry CreditsNishino[] = {11, Text_Nishino};
+const struct CreditsEntry CreditsMatsushima[] = {11, Text_Matsushima};
+const struct CreditsEntry CreditsTetsujiOhta[] = {11, Text_TetsujiOhta};
+const struct CreditsEntry CreditsSato[] = {11, Text_Sato};
+const struct CreditsEntry CreditsKawachimaru[] = {11, Text_Kawachimaru};
+const struct CreditsEntry CreditsShimoyamada[] = {11, Text_Shimoyamada};
+const struct CreditsEntry CreditsOhmori[] = {11, Text_Ohmori};
+const struct CreditsEntry CreditsTakahashi[] = {11, Text_Takahashi};
+const struct CreditsEntry CreditsToshinobuMatsumiya[] = {11, Text_ToshinobuMatsumiya};
+const struct CreditsEntry CreditsTomisawa[] = {11, Text_Tomisawa};
+const struct CreditsEntry CreditsEnomoto[] = {11, Text_Enomoto};
+const struct CreditsEntry CreditsTerada[] = {11, Text_Terada};
+const struct CreditsEntry CreditsSakurai[] = {11, Text_Sakurai};
+const struct CreditsEntry CreditsSagawa[] = {11, Text_Sagawa};
+const struct CreditsEntry CreditsTominaga[] = {11, Text_Tominaga};
+const struct CreditsEntry CreditsYoshiroTajiri[] = {11, Text_YoshioTajiri};
+const struct CreditsEntry CreditsSasaki[] = {11, Text_Sasaki};
+const struct CreditsEntry CreditsHamano[] = {11, Text_Hamano};
+const struct CreditsEntry CreditsChieMatsumiya[] = {11, Text_ChieMatsumiya};
+const struct CreditsEntry CreditsShinozaki[] = {11, Text_Shinozaki};
+const struct CreditsEntry CreditsFujii[] = {11, Text_Fujii};
+const struct CreditsEntry CreditsSuperMarioClub[] = {11, Text_SuperMarioClub};
+const struct CreditsEntry CreditsTada[] = {11, Text_Tada};
+const struct CreditsEntry CreditsOhnishi[] = {11, Text_Ohnishi};
+const struct CreditsEntry CreditsOkamura[] = {11, Text_Okamura};
+const struct CreditsEntry CreditsHiroNakamura[] = {11, Text_HiroNakamura};
+const struct CreditsEntry CreditsUesugi[] = {11, Text_Uesugi};
+const struct CreditsEntry CreditsMurakawa[] = {11, Text_Murakawa};
+const struct CreditsEntry CreditsKinashi[] = {11, Text_Kinashi};
+const struct CreditsEntry CreditsTakizawa[] = {11, Text_Takizawa};
+const struct CreditsEntry CreditsTakada[] = {11, Text_Takada};
+const struct CreditsEntry CreditsKondo[] = {11, Text_Kondo};
+const struct CreditsEntry CreditsMashima[] = {11, Text_Mashima};
+const struct CreditsEntry CreditsNomoto[] = {11, Text_Nomoto};
+const struct CreditsEntry CreditsIzushi[] = {11, Text_Izushi};
+const struct CreditsEntry CreditsYamagami[] = {11, Text_Yamagami};
+const struct CreditsEntry CreditsKyokoWatanabe[] = {11, Text_KyokoWatanabe};
+const struct CreditsEntry CreditsNakano[] = {11, Text_Nakano};
+const struct CreditsEntry CreditsJinnai[] = {11, Text_Jinnai};
+const struct CreditsEntry CreditsTsuru[] = {11, Text_Tsuru};
+const struct CreditsEntry CreditsIshihara[] = {11, Text_Ishihara};
+const struct CreditsEntry CreditsIwata[] = {11, Text_Iwata};
+const struct CreditsEntry CreditsSuyama[] = {11, Text_Suyama};
+const struct CreditsEntry CreditsMitsuhara[] = {11, Text_Mitsuhara};
+const struct CreditsEntry CreditsJapanBrailleLibrary[] = {9, Text_JapanBrailleLibrary};
+const struct CreditsEntry CreditsKomura[] = {11, Text_Komura};
+const struct CreditsEntry CreditsOhashi[] = {11, Text_Ohashi};
+const struct CreditsEntry CreditsEnglishVersionCoordinators[] = {0, Category_EnglishVersionCoordinators};
+const struct CreditsEntry CreditsTranslator[] = {0, Category_Translator};
+const struct CreditsEntry CreditsProductSupport[] = {0, Category_ProductSupport};
+const struct CreditsEntry CreditsArtwork[] = {0, Category_Artwork};
+const struct CreditsEntry CreditsTextEditor[] = {0, Category_TextEditor};
+const struct CreditsEntry CreditsNOAProductTesting[] = {0, Category_NOAProductTesting};
+const struct CreditsEntry CreditsGraphicDesigners[] = {0, Category_GraphicDesigners};
+const struct CreditsEntry CreditsMcMahill[] = {0, Text_McMahill};
+const struct CreditsEntry CreditsOgasawara[] = {0, Text_Ogasawara};
+const struct CreditsEntry CreditsYamamoto[] = {0, Text_Yamamoto};
+const struct CreditsEntry CreditsFunakoshi[] = {0, Text_Funakoshi};
+const struct CreditsEntry CreditsFujihara[] = {0, Text_Fujihara};
+const struct CreditsEntry CreditsNakamichi[] = {0, Text_Nakamichi};
+const struct CreditsEntry CreditsHara[] = {0, Text_Hara};
+const struct CreditsEntry CreditsOkada[] = {0, Text_Okada};
+const struct CreditsEntry CreditsLillygren[] = {0, Text_Lillygren};
+const struct CreditsEntry CreditsHertzog[] = {0, Text_Hertzog};
+const struct CreditsEntry CreditsRidgeway[] = {0, Text_Ridgeway};
+const struct CreditsEntry CreditsNFotB[] = {0, Text_NFotB};
+const struct CreditsEntry CreditsMaurer[] = {0, Text_Maurer};
+const struct CreditsEntry CreditsFord[] = {0, Text_Ford};
+const struct CreditsEntry CreditsBarlow[] = {0, Text_Barlow};
+const struct CreditsEntry CreditsUyama[] = {0, Text_Uyama};
+const struct CreditsEntry CreditsHowitt[] = {0, Text_Howitt};
+const struct CreditsEntry CreditsTilden[] = {0, Text_Tilden};
+const struct CreditsEntry CreditsEBU[] = {0, Text_EBU};
+const struct CreditsEntry CreditsABA[] = {0, Text_ABA};
+const struct CreditsEntry CreditsRNZFotB[] = {0, Text_RNZFotB};
+
+#define LINES_PER_PAGE 5
+#define _ CreditsTerminator
+const struct CreditsEntry *const gCreditsEntryPointerTable[][LINES_PER_PAGE] =
+{
+ {
+ _,
+ CreditsVersion,
+ CreditsCredits,
+ _,
+ _
+ },
+ {
+ _,
+ CreditsDirector,
+ CreditsMasuda,
+ _,
+ _,
+ },
+ {
+ _,
+ CreditsArtDirector,
+ CreditsSugimori,
+ _,
+ _,
+ },
+ {
+ _,
+ CreditsBattleDirector,
+ CreditsMorimoto,
+ _,
+ _,
+ },
+ {
+ _,
+ CreditsMainProgrammer,
+ CreditsTetsuyaWatanabe,
+ _,
+ _,
+ },
+ {
+ CreditsBattleSystemProgrammer,
+ CreditsSogabe,
+ CreditsFieldSystemProgrammer,
+ CreditsTamada,
+ _,
+ },
+ {
+ CreditsProgrammers,
+ CreditsMori,
+ CreditsKagaya,
+ CreditsMatsuda,
+ _,
+ },
+ {
+ CreditsProgrammers,
+ CreditsHiroyukiNakamura,
+ CreditsTaya,
+ CreditsNohara,
+ _,
+ },
+ {
+ CreditsProgrammers,
+ CreditsTomomichiOhta,
+ CreditsIwasawa,
+ CreditsTakenoriOhta,
+ _,
+ },
+ {
+ _,
+ CreditsMainGraphicDesigner,
+ CreditsYoshida,
+ _,
+ _,
+ },
+ {
+ CreditsPOKeMONGraphicDesigners,
+ CreditsSugimori,
+ CreditsYoshida,
+ _,
+ _,
+ },
+ {
+ CreditsPOKeMONGraphicDesigners,
+ CreditsFujiwara,
+ CreditsSatoshiOhta,
+ CreditsIwashita,
+ _,
+ },
+ {
+ CreditsPOKeMONGraphicDesigners,
+ CreditsTomita,
+ CreditsUnno,
+ CreditsEo,
+ _,
+ },
+ {
+ CreditsPOKeMONDesigners,
+ CreditsMorimoto,
+ CreditsOkutani,
+ CreditsNishida,
+ _,
+ },
+ {
+ CreditsPOKeMONDesigners,
+ CreditsSaito,
+ CreditsYoshikawa,
+ _,
+ _,
+ },
+ {
+ CreditsMusicComposition,
+ CreditsIchinose,
+ CreditsAoki,
+ CreditsMasuda,
+ _,
+ },
+ {
+ _,
+ CreditsSoundEffectsPOKeMONVoices,
+ CreditsAoki,
+ _,
+ _,
+ },
+ {
+ CreditsGameDesigners,
+ CreditsMasuda,
+ CreditsMorimoto,
+ CreditsNishino,
+ _,
+ },
+ {
+ CreditsGameDesigners,
+ CreditsMatsushima,
+ CreditsTetsujiOhta,
+ CreditsSato,
+ CreditsKawachimaru,
+ },
+ {
+ CreditsGameDesigners,
+ CreditsShimoyamada,
+ CreditsOhmori,
+ CreditsTakahashi,
+ _,
+ },
+ {
+ CreditsPlotScenario,
+ CreditsMasuda,
+ CreditsTomisawa,
+ CreditsNishino,
+ _,
+ },
+ {
+ CreditsGameScenario,
+ CreditsToshinobuMatsumiya,
+ CreditsTomisawa,
+ _,
+ _,
+ },
+ {
+ CreditsScriptDesigners,
+ CreditsNohara,
+ CreditsTetsujiOhta,
+ CreditsTomomichiOhta,
+ _,
+ },
+ {
+ CreditsMapDesigners,
+ CreditsOhmori,
+ CreditsTetsujiOhta,
+ CreditsNishino,
+ _,
+ },
+ {
+ CreditsMapDataDesigners,
+ CreditsTetsujiOhta,
+ CreditsTakahashi,
+ _,
+ _,
+ },
+ {
+ CreditsParametricDesigners,
+ CreditsNishino,
+ CreditsMorimoto,
+ CreditsTetsujiOhta,
+ CreditsShimoyamada,
+ },
+ {
+ _,
+ CreditsPOKeDEXText,
+ CreditsMatsushima,
+ _,
+ _,
+ },
+ {
+ CreditsEnvironmentToolProgrammers,
+ CreditsSogabe,
+ CreditsTamada,
+ CreditsHiroyukiNakamura,
+ CreditsMori,
+ },
+ {
+ CreditsProductTesting,
+ CreditsSuperMarioClub,
+ CreditsTada,
+ CreditsOhnishi,
+ CreditsOkamura,
+ },
+ {
+ CreditsSpecialThanks,
+ CreditsTominaga,
+ CreditsYoshiroTajiri,
+ CreditsSasaki,
+ _,
+ },
+ {
+ CreditsSpecialThanks,
+ CreditsHamano,
+ CreditsChieMatsumiya,
+ CreditsShinozaki,
+ CreditsFujii,
+ },
+ {
+ CreditsSpecialThanks,
+ CreditsSuyama,
+ CreditsMitsuhara,
+ CreditsKomura,
+ CreditsOhashi,
+ },
+ {
+ CreditsSpecialThanks,
+ CreditsTakizawa,
+ CreditsTakada,
+ CreditsKondo,
+ CreditsMashima,
+ },
+ {
+ CreditsInformationSupervisors,
+ CreditsEnomoto,
+ CreditsTerada,
+ CreditsSakurai,
+ CreditsSagawa,
+ },
+ {
+ CreditsCoordinators,
+ CreditsKyokoWatanabe,
+ CreditsNakano,
+ _,
+ _,
+ },
+ {
+ CreditsTaskManagers,
+ CreditsYamagami,
+ CreditsNomoto,
+ _,
+ _,
+ },
+ {
+ CreditsProducers,
+ CreditsJinnai,
+ CreditsIzushi,
+ CreditsTsuru,
+ _,
+ },
+ {
+ _,
+ CreditsExecutiveDirector,
+ CreditsSatoshiTajiri,
+ _,
+ _,
+ },
+ {
+ _,
+ CreditsExecutiveProducers,
+ CreditsIwata,
+ _,
+ _,
+ },
+ {
+ _,
+ CreditsExecutiveProducers,
+ CreditsIshihara,
+ _,
+ _,
+ },
+ {
+ CreditsEnglishVersionCoordinators,
+ CreditsHiroNakamura,
+ CreditsMcMahill,
+ _,
+ _,
+ },
+ {
+ _,
+ CreditsTranslator,
+ CreditsOgasawara,
+ _,
+ _,
+ },
+ {
+ CreditsProgrammers,
+ CreditsMurakawa,
+ CreditsYamamoto,
+ CreditsFunakoshi,
+ CreditsKinashi,
+ },
+ {
+ CreditsGraphicDesigners,
+ CreditsYamamoto,
+ CreditsKinashi,
+ _,
+ _,
+ },
+ {
+ CreditsProductSupport,
+ CreditsNakamichi,
+ CreditsHara,
+ _,
+ _,
+ },
+ {
+ _,
+ CreditsArtwork,
+ CreditsOkada,
+ _,
+ _,
+ },
+ {
+ _,
+ CreditsTextEditor,
+ CreditsLillygren,
+ _,
+ _,
+ },
+ {
+ CreditsNOAProductTesting,
+ CreditsHertzog,
+ CreditsRidgeway,
+ _,
+ _,
+ },
+ {
+ CreditsBrailleCodeCheck,
+ CreditsNFotB,
+ CreditsMaurer,
+ CreditsJapanBrailleLibrary,
+ CreditsEBU,
+ },
+ {
+ CreditsBrailleCodeCheck,
+ CreditsABA,
+ CreditsRNZFotB,
+ _,
+ _,
+ },
+ {
+ CreditsSpecialThanks,
+ CreditsFord,
+ CreditsBarlow,
+ CreditsUesugi,
+ CreditsUyama,
+ },
+ {
+ CreditsSpecialThanks,
+ CreditsHowitt,
+ CreditsTilden,
+ CreditsFujihara,
+ _,
+ },
+};
+#undef _
diff --git a/src/de_rom_8040FE0.c b/src/de_rom_8040FE0.c
index 8cf510d6f..53ad4a806 100644
--- a/src/de_rom_8040FE0.c
+++ b/src/de_rom_8040FE0.c
@@ -1,6 +1,7 @@
#include "global.h"
#include "battle.h"
#include "battle_tower.h"
+#include "ewram.h"
#if GERMAN
@@ -21,8 +22,6 @@ enum {
TRAINER_CLASS_MAY_3 = 63,
};
-extern struct SecretBaseRecord gSecretBaseRecord;
-
extern u8 gTrainerClassNames[][13];
extern struct Trainer gTrainers[];
@@ -70,7 +69,7 @@ u8 *de_sub_8041024(s32 arg0, u32 arg1) {
{
case 0x400:
nameIndex = GetSecretBaseTrainerNameIndex();
- gender = gSecretBaseRecord.gender;
+ gender = eSecretBaseRecord.gender;
if (nameIndex == TRAINER_CLASS_NAME_SCHOOL_KID)
{
return de_sub_8040FE0(gender);
@@ -166,7 +165,7 @@ _0804104A:\n\
bl GetSecretBaseTrainerNameIndex\n\
lsls r0, 24\n\
lsrs r5, r0, 24\n\
- ldr r0, _08041060 @ =0x02017000\n\
+ ldr r0, _08041060 @ =gSharedMem + 0x17000\n\
ldrb r0, [r0, 0x1]\n\
lsls r0, 27\n\
lsrs r2, r0, 31\n\
@@ -174,7 +173,7 @@ _0804104A:\n\
beq _080410B8\n\
b _080410F8\n\
.align 2, 0\n\
-_08041060: .4byte 0x02017000\n\
+_08041060: .4byte gSharedMem + 0x17000\n\
_08041064:\n\
bl de_sub_81364AC\n\
lsls r0, 24\n\
diff --git a/src/debug/matsuda_debug_menu.c b/src/debug/matsuda_debug_menu.c
index c7d81f502..3378e4e0a 100644
--- a/src/debug/matsuda_debug_menu.c
+++ b/src/debug/matsuda_debug_menu.c
@@ -15,6 +15,7 @@
#include "task.h"
#include "text.h"
#include "unknown_task.h"
+#include "ewram.h"
extern u8 gUnknown_0203856C;
extern u8 gUnknown_0203857D[][64];
@@ -45,7 +46,6 @@ extern u8 gUnknown_083C9282[];
extern const u8 gUnknown_083C928E[][2];
extern u8 gUnknown_083C9296[];
extern u8 gUnknown_083C92A8[];
-extern u8 unk_2000000[];
extern u8 gMatsudaDebugMenu_GoBackText[];
extern u8 gMatsudaDebugMenu_BattlePointsText[];
extern u8 gMatsudaDebugMenu_StartText[];
@@ -414,14 +414,14 @@ void sub_80AA280(u8 var) // no?
u8 i;
FillWindowRect_DefaultPalette(&gMenuWindow, 0, 0, 0, 0x1E, 3);
- StringCopy(unk_2000000, gMatsudaDebugMenu_StartText);
- StringAppend(unk_2000000, &gUnknown_0203857D[var][0]);
+ StringCopy(gSharedMem, gMatsudaDebugMenu_StartText);
+ StringAppend(gSharedMem, &gUnknown_0203857D[var][0]);
for (i = 0; i < 4; i++)
{
if (var == i)
{
- sub_8003460(&gMenuWindow, unk_2000000, (10 * i + 2), gUnknown_083C926E[i][0], gUnknown_083C926E[i][1]);
+ sub_8003460(&gMenuWindow, gSharedMem, (10 * i + 2), gUnknown_083C926E[i][0], gUnknown_083C926E[i][1]);
}
else
{
@@ -433,38 +433,38 @@ void sub_80AA280(u8 var) // no?
static void sub_80AA340(u8 var)
{
- ConvertIntToDecimalStringN(unk_2000000, gContestMons[var].cool, STR_CONV_MODE_RIGHT_ALIGN, 3);
- sub_8003460(&gMenuWindow, unk_2000000, 0x66, gUnknown_083C9282[0], gUnknown_083C9282[1]);
+ ConvertIntToDecimalStringN(gSharedMem, gContestMons[var].cool, STR_CONV_MODE_RIGHT_ALIGN, 3);
+ sub_8003460(&gMenuWindow, gSharedMem, 0x66, gUnknown_083C9282[0], gUnknown_083C9282[1]);
}
static void sub_80AA388(u8 var)
{
- ConvertIntToDecimalStringN(unk_2000000, gContestMons[var].cute, STR_CONV_MODE_RIGHT_ALIGN, 3);
- sub_8003460(&gMenuWindow, unk_2000000, 0x6C, gUnknown_083C9282[2], gUnknown_083C9282[3]);
+ ConvertIntToDecimalStringN(gSharedMem, gContestMons[var].cute, STR_CONV_MODE_RIGHT_ALIGN, 3);
+ sub_8003460(&gMenuWindow, gSharedMem, 0x6C, gUnknown_083C9282[2], gUnknown_083C9282[3]);
}
static void sub_80AA3D0(u8 var)
{
- ConvertIntToDecimalStringN(unk_2000000, gContestMons[var].beauty, STR_CONV_MODE_RIGHT_ALIGN, 3);
- sub_8003460(&gMenuWindow, unk_2000000, 0x72, gUnknown_083C9282[4], gUnknown_083C9282[5]);
+ ConvertIntToDecimalStringN(gSharedMem, gContestMons[var].beauty, STR_CONV_MODE_RIGHT_ALIGN, 3);
+ sub_8003460(&gMenuWindow, gSharedMem, 0x72, gUnknown_083C9282[4], gUnknown_083C9282[5]);
}
static void sub_80AA418(u8 var)
{
- ConvertIntToDecimalStringN(unk_2000000, gContestMons[var].smart, STR_CONV_MODE_RIGHT_ALIGN, 3);
- sub_8003460(&gMenuWindow, unk_2000000, 0x78, gUnknown_083C9282[6], gUnknown_083C9282[7]);
+ ConvertIntToDecimalStringN(gSharedMem, gContestMons[var].smart, STR_CONV_MODE_RIGHT_ALIGN, 3);
+ sub_8003460(&gMenuWindow, gSharedMem, 0x78, gUnknown_083C9282[6], gUnknown_083C9282[7]);
}
static void sub_80AA460(u8 var)
{
- ConvertIntToDecimalStringN(unk_2000000, gContestMons[var].tough, STR_CONV_MODE_RIGHT_ALIGN, 3);
- sub_8003460(&gMenuWindow, unk_2000000, 0x7E, gUnknown_083C9282[8], gUnknown_083C9282[9]);
+ ConvertIntToDecimalStringN(gSharedMem, gContestMons[var].tough, STR_CONV_MODE_RIGHT_ALIGN, 3);
+ sub_8003460(&gMenuWindow, gSharedMem, 0x7E, gUnknown_083C9282[8], gUnknown_083C9282[9]);
}
static void sub_80AA4A8(u8 var)
{
- ConvertIntToDecimalStringN(unk_2000000, gContestMons[var].sheen, STR_CONV_MODE_RIGHT_ALIGN, 3);
- sub_8003460(&gMenuWindow, unk_2000000, 0x84, gUnknown_083C9282[10], gUnknown_083C9282[11]);
+ ConvertIntToDecimalStringN(gSharedMem, gContestMons[var].sheen, STR_CONV_MODE_RIGHT_ALIGN, 3);
+ sub_8003460(&gMenuWindow, gSharedMem, 0x84, gUnknown_083C9282[10], gUnknown_083C9282[11]);
}
static void sub_80AA4F0(u8 var1, u8 var2)
@@ -489,8 +489,8 @@ static void sub_80AA614(u8 var1, u8 var2)
{
u16 var = sub_80AE770(var1, var2);
- ConvertIntToDecimalStringN(unk_2000000, var, STR_CONV_MODE_RIGHT_ALIGN, 3);
- sub_8003460(&gMenuWindow, unk_2000000, 0xE2, 3, 0xC);
+ ConvertIntToDecimalStringN(gSharedMem, var, STR_CONV_MODE_RIGHT_ALIGN, 3);
+ sub_8003460(&gMenuWindow, gSharedMem, 0xE2, 3, 0xC);
}
void sub_80AA658(u8 var)
@@ -516,10 +516,10 @@ void SetDebugMonForContest(void)
SetMonData(&gPlayerParty[0], MON_DATA_SMART, &gContestMons[gContestPlayerMonIndex].smart);
SetMonData(&gPlayerParty[0], MON_DATA_TOUGH, &gContestMons[gContestPlayerMonIndex].tough);
SetMonData(&gPlayerParty[0], MON_DATA_SHEEN, &gContestMons[gContestPlayerMonIndex].sheen);
- SetMonData(&gPlayerParty[0], MON_DATA_MOVE1, (const u8 *) &gContestMons[gContestPlayerMonIndex].moves[0]);
- SetMonData(&gPlayerParty[0], MON_DATA_MOVE2, (const u8 *) &gContestMons[gContestPlayerMonIndex].moves[1]);
- SetMonData(&gPlayerParty[0], MON_DATA_MOVE3, (const u8 *) &gContestMons[gContestPlayerMonIndex].moves[2]);
- SetMonData(&gPlayerParty[0], MON_DATA_MOVE4, (const u8 *) &gContestMons[gContestPlayerMonIndex].moves[3]);
+ SetMonData(&gPlayerParty[0], MON_DATA_MOVE1, &gContestMons[gContestPlayerMonIndex].moves[0]);
+ SetMonData(&gPlayerParty[0], MON_DATA_MOVE2, &gContestMons[gContestPlayerMonIndex].moves[1]);
+ SetMonData(&gPlayerParty[0], MON_DATA_MOVE3, &gContestMons[gContestPlayerMonIndex].moves[2]);
+ SetMonData(&gPlayerParty[0], MON_DATA_MOVE4, &gContestMons[gContestPlayerMonIndex].moves[3]);
}
void sub_80AA754(struct Sprite *sprite)
@@ -739,7 +739,7 @@ void sub_80AACC4(void)
{
SetDebugMonForContest();
if (!(gIsLinkContest & 1))
- sub_80AE82C(unk_2000000[0]);
+ sub_80AE82C(eMatsudaDebugVar);
SetMainCallback2(sub_80AB47C);
}
}
@@ -748,7 +748,7 @@ void sub_80AAD08(struct Sprite *sprite, s8 var2)
{
if (var2 == 1)
{
- unk_2000000[0] = sprite->data3;
+ eMatsudaDebugVar = sprite->data3;
SetMainCallback2(sub_80AACC4);
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, 0);
}
diff --git a/src/engine/decompress.c b/src/engine/decompress.c
index 3e5993118..0893a8492 100644
--- a/src/engine/decompress.c
+++ b/src/engine/decompress.c
@@ -3,8 +3,9 @@
#include "data2.h"
#include "species.h"
#include "text.h"
+#include "ewram.h"
-#define WRAM 0x02000000
+#define WRAM ewram_addr // using gSharedMem doesn't match
void LZDecompressWram(const void *src, void *dest)
{
diff --git a/src/engine/link.c b/src/engine/link.c
index 850201ccb..002d397d2 100644
--- a/src/engine/link.c
+++ b/src/engine/link.c
@@ -15,6 +15,7 @@
#include "strings2.h"
#include "task.h"
#include "text.h"
+#include "ewram.h"
#define SIO_MULTI_CNT ((struct SioMultiCnt *)REG_ADDR_SIOCNT)
@@ -35,8 +36,6 @@ struct LinkTestBGInfo
u32 dummy_C;
};
-extern u8 unk_2000000[];
-extern u8 unk_2004000[];
extern u16 gBattleTypeFlags;
extern u16 word_3004858;
@@ -404,7 +403,7 @@ static void LinkTestProcessKeyInput(void)
if (gMain.newKeys & A_BUTTON)
gShouldAdvanceLinkState = 1;
if (gMain.heldKeys & B_BUTTON)
- InitBlockSend(unk_2004000, 0x2004);
+ InitBlockSend(ewram4000, 0x2004);
if (gMain.newKeys & L_BUTTON)
BeginNormalPaletteFade(-1, 0, 0x10, 0, 2);
if (gMain.newKeys & START_BUTTON)
@@ -507,7 +506,7 @@ static void ProcessRecvCmds(u8 unusedParam)
case 0x8888:
if (sBlockRecv[i].size > BLOCK_BUFFER_SIZE)
{
- u16 *buffer = (u16 *)unk_2000000;
+ u16 *buffer = (u16 *)gSharedMem;
u16 j;
for (j = 0; j < CMD_LENGTH - 1; j++)
buffer[(sBlockRecv[i].pos / 2) + j] = gRecvCmds[j + 1][i];
@@ -954,7 +953,7 @@ static u16 LinkTestCalcBlockChecksum(void *data, u16 size)
static void PrintHexDigit(u8 tileNum, u8 x, u8 y)
{
- u16 *tilemap = (u16 *)BG_SCREEN_ADDR(gLinkTestBGInfo.screenBaseBlock);
+ u16 *tilemap = BG_SCREEN_ADDR(gLinkTestBGInfo.screenBaseBlock);
tilemap[(32 * y) + x] = (gLinkTestBGInfo.paletteNum << 12) | (tileNum + 1);
}
diff --git a/src/engine/main.c b/src/engine/main.c
index d7c11b6c8..ea381cb31 100644
--- a/src/engine/main.c
+++ b/src/engine/main.c
@@ -70,6 +70,7 @@ bool8 gLinkVSyncDisabled;
u32 IntrMain_Buffer[0x200];
u8 gPcmDmaCounter;
+EWRAM_DATA u8 gSharedMem[0x20000] = {0};
EWRAM_DATA void (**gFlashTimerIntrFunc)(void) = NULL;
static void UpdateLinkAndCallCallbacks(void);
diff --git a/src/engine/main_menu.c b/src/engine/main_menu.c
index e0af86f3d..bfbf0dcd6 100644
--- a/src/engine/main_menu.c
+++ b/src/engine/main_menu.c
@@ -22,6 +22,7 @@
#include "text.h"
#include "title_screen.h"
#include "unknown_task.h"
+#include "ewram.h"
#define BirchSpeechUpdateWindowText() ((u8)MenuUpdateWindowText_OverrideLineLength(24))
@@ -54,8 +55,6 @@ extern const u8 gUnknown_081E796C[];
extern const union AffineAnimCmd *const gSpriteAffineAnimTable_81E79AC[];
-extern u8 unk_2000000[];
-
//Menu layouts
enum
{
@@ -1419,14 +1418,14 @@ void AddBirchSpeechObjects(u8 taskId)
gTasks[taskId].tAzurillSpriteId = spriteId;
//Create Brendan sprite
- spriteId = CreateTrainerSprite(0, 120, 60, 0, unk_2000000);
+ spriteId = CreateTrainerSprite(0, 120, 60, 0, eBrendanSprite);
gSprites[spriteId].callback = nullsub_34;
gSprites[spriteId].invisible = 1;
gSprites[spriteId].oam.priority = 0;
gTasks[taskId].tBrendanSpriteId = spriteId;
//Create May sprite
- spriteId = CreateTrainerSprite(1, 120, 60, 0, unk_2000000 + 0x800);
+ spriteId = CreateTrainerSprite(1, 120, 60, 0, eMaySprite);
gSprites[spriteId].callback = nullsub_34;
gSprites[spriteId].invisible = 1;
gSprites[spriteId].oam.priority = 0;
diff --git a/src/engine/mystery_event_menu.c b/src/engine/mystery_event_menu.c
index 0e48dc177..a472eea3b 100644
--- a/src/engine/mystery_event_menu.c
+++ b/src/engine/mystery_event_menu.c
@@ -13,8 +13,7 @@
#include "strings2.h"
#include "task.h"
#include "text.h"
-
-extern u8 unk_2000000[];
+#include "ewram.h"
static EWRAM_DATA u8 gUnknown_02039338 = 0;
@@ -287,8 +286,8 @@ static void CB2_MysteryEventMenu(void)
case 11:
if (gReceivedRemoteLinkPlayers)
break;
- unkVal = RunMysteryEventScript(unk_2000000);
- CpuFill32(0, unk_2000000, 0x7D4);
+ unkVal = RunMysteryEventScript(gSharedMem);
+ CpuFill32(0, gSharedMem, 0x7D4);
if (!GetEventLoadMessage(gStringVar4, unkVal))
TrySavingData(NORMAL_SAVE);
gMain.state++;
diff --git a/src/engine/naming_screen.c b/src/engine/naming_screen.c
index a20a15569..92a61eb8f 100644
--- a/src/engine/naming_screen.c
+++ b/src/engine/naming_screen.c
@@ -17,6 +17,7 @@
#include "text.h"
#include "trig.h"
#include "util.h"
+#include "ewram.h"
#ifdef ENGLISH
#define COLUMN_COUNT 9
@@ -26,10 +27,6 @@
extern u16 gKeyRepeatStartDelay;
-extern u8 unk_2000000[];
-
-#define namingScreenData (*(struct NamingScreenData *)(unk_2000000))
-
extern u8 CreateMonIcon(u16 species, void (*callback)(struct Sprite *), s16 x, s16 y, u8 subpriority, u32 personality);
const u32 gSpriteImage_83CE094[] = INCBIN_U32("graphics/naming_screen/pc_icon/0.4bpp");
diff --git a/src/engine/record_mixing.c b/src/engine/record_mixing.c
index 87fc6a81d..3ae0c4ea3 100644
--- a/src/engine/record_mixing.c
+++ b/src/engine/record_mixing.c
@@ -24,10 +24,7 @@
#include "strings2.h"
#include "task.h"
#include "tv.h"
-
-extern u8 ewram[];
-#define unk_2018000 (*(struct PlayerRecords *)(ewram + 0x18000))
-#define unk_2008000 (*(struct PlayerRecords *)(ewram + 0x08000))
+#include "ewram.h"
extern struct RecordMixingDayCareMail gUnknown_02038738;
extern u16 gSpecialVar_0x8005;
@@ -69,31 +66,31 @@ void RecordMixing_PrepareExchangePacket(void)
sub_80BC300();
sub_80C045C();
- memcpy(unk_2018000.secretBases, recordMixingSecretBases, sizeof(unk_2018000.secretBases));
- memcpy(unk_2018000.tvShows, recordMixingTvShows, sizeof(unk_2018000.tvShows));
- memcpy(unk_2018000.filler1004, gUnknown_083D0274, sizeof(unk_2008000.filler1004));
- memcpy(unk_2018000.filler1044, gUnknown_083D0278, sizeof(unk_2008000.filler1044));
- memcpy(unk_2018000.easyChatPairs, recordMixingEasyChatPairs, sizeof(unk_2018000.easyChatPairs));
+ memcpy(ewram_2018000.secretBases, recordMixingSecretBases, sizeof(ewram_2018000.secretBases));
+ memcpy(ewram_2018000.tvShows, recordMixingTvShows, sizeof(ewram_2018000.tvShows));
+ memcpy(ewram_2018000.filler1004, gUnknown_083D0274, sizeof(ewram_2008000.filler1004));
+ memcpy(ewram_2018000.filler1044, gUnknown_083D0278, sizeof(ewram_2008000.filler1044));
+ memcpy(ewram_2018000.easyChatPairs, recordMixingEasyChatPairs, sizeof(ewram_2018000.easyChatPairs));
gUnknown_02038738.mail[0] = gSaveBlock1.daycareData.misc.mail[0];
gUnknown_02038738.mail[1] = gSaveBlock1.daycareData.misc.mail[1];
sub_8041324(gSaveBlock1.daycareData.mons, &gUnknown_02038738);
- memcpy(&unk_2018000.filler10AC, gUnknown_083D0280, sizeof(struct RecordMixingDayCareMail));
- memcpy(&unk_2018000.battleTowerRecord, gBattleTowerPlayerRecord, sizeof(struct BattleTowerRecord));
+ memcpy(&ewram_2018000.filler10AC, gUnknown_083D0280, sizeof(struct RecordMixingDayCareMail));
+ memcpy(&ewram_2018000.battleTowerRecord, gBattleTowerPlayerRecord, sizeof(struct BattleTowerRecord));
if (GetMultiplayerId() == 0)
- unk_2018000.filler11C8[0] = GetRecordMixingGift();
+ ewram_2018000.filler11C8[0] = GetRecordMixingGift();
}
void RecordMixing_ReceiveExchangePacket(u32 a)
{
- sub_80BD674(unk_2008000.secretBases, sizeof(struct PlayerRecords), a);
- sub_80BFD44((u8 *)unk_2008000.tvShows, sizeof(struct PlayerRecords), a);
- sub_80C0514(unk_2008000.filler1004, sizeof(struct PlayerRecords), a);
- sub_80B9B1C(unk_2008000.filler1044, sizeof(struct PlayerRecords), a);
- sub_80FA4E4(unk_2008000.easyChatPairs, sizeof(struct PlayerRecords), a);
- sub_80B9C6C((u8 *)&unk_2008000.filler10AC, sizeof(struct PlayerRecords), a, unk_2008000.tvShows);
- sub_80B9B70(&unk_2008000.battleTowerRecord, sizeof(struct PlayerRecords), a);
- sub_80B9F3C(unk_2008000.filler11C8, a);
+ sub_80BD674(ewram_2008000.secretBases, sizeof(struct PlayerRecords), a);
+ sub_80BFD44((u8 *)ewram_2008000.tvShows, sizeof(struct PlayerRecords), a);
+ sub_80C0514(ewram_2008000.filler1004, sizeof(struct PlayerRecords), a);
+ sub_80B9B1C(ewram_2008000.filler1044, sizeof(struct PlayerRecords), a);
+ sub_80FA4E4(ewram_2008000.easyChatPairs, sizeof(struct PlayerRecords), a);
+ sub_80B9C6C((u8 *)&ewram_2008000.filler10AC, sizeof(struct PlayerRecords), a, ewram_2008000.tvShows);
+ sub_80B9B70(&ewram_2008000.battleTowerRecord, sizeof(struct PlayerRecords), a);
+ sub_80B9F3C(ewram_2008000.filler11C8, a);
}
#define tCounter data[0]
@@ -250,11 +247,11 @@ void sub_80B95F0(u8 taskId)
task->tState = 0;
task->data[5] = GetMultiplayerId_();
task->func = Task_RecordMixing_SendPacket;
- StorePtrInTaskData(&unk_2018000, &task->data[2]);
+ StorePtrInTaskData(&ewram_2018000, &task->data[2]);
subTaskId = CreateTask(Task_RecordMixing_CopyReceiveBuffer, 0x50);
task->data[10] = subTaskId;
gTasks[subTaskId].data[0] = taskId;
- StorePtrInTaskData((u8 *)&unk_2008000, &gTasks[subTaskId].data[5]);
+ StorePtrInTaskData((u8 *)&ewram_2008000, &gTasks[subTaskId].data[5]);
}
break;
case 5: // wait 60 frames
diff --git a/src/engine/save.c b/src/engine/save.c
index eae3f4470..d5de2e408 100644
--- a/src/engine/save.c
+++ b/src/engine/save.c
@@ -5,14 +5,13 @@
#include "load_save.h"
#include "overworld.h"
#include "save_failed_screen.h"
+#include "ewram.h"
#define GETVALIDSTATUSBITFIELD ((1 << ARRAY_COUNT(gSaveSectionLocations)) - 1)
#define GETCHUNKSIZE(chunk, n) ((sizeof(chunk) - (0xF80 * (n - 1))) >= 0xF80 ? 0xF80 : (sizeof(chunk) - (0xF80 * (n - 1))))
#define GETBLOCKOFFSET(n) (0xF80 * (n - 1))
#define TOTALNUMSECTORS ((ARRAY_COUNT(gSaveSectionLocations) * 2) + (ARRAY_COUNT(gHallOfFameSaveSectionLocations) * 2)) // there are 2 slots, so double each array count and get the sum.
-extern struct SaveSection unk_2000000; // slow save RAM
-
u16 gLastWrittenSector;
u32 gLastSaveCounter;
u16 gLastKnownGoodSector;
@@ -24,7 +23,6 @@ u16 gSaveFileStatus;
u32 gGameContinueCallback;
extern struct PokemonStorage gPokemonStorage;
-extern struct HallOfFame gHallOfFame;
static EWRAM_DATA u32 gLastSaveSectorStatus = 0; // used but in an unferenced function, so unused
@@ -48,8 +46,8 @@ const struct SaveSectionLocation gSaveSectionLocations[] =
const struct SaveSectionLocation gHallOfFameSaveSectionLocations[] =
{
- {((u8 *) &gHallOfFame) + GETBLOCKOFFSET(1), GETCHUNKSIZE(struct HallOfFame, 1)}, // gHallOfFame is not a proper sym, so the struct must be used.
- {((u8 *) &gHallOfFame) + GETBLOCKOFFSET(2), GETCHUNKSIZE(struct HallOfFame, 2)}
+ {((u8 *) eHallOfFame) + GETBLOCKOFFSET(1), GETCHUNKSIZE(struct HallOfFame, 1)}, // eHallOfFame is not a proper sym, so the struct must be used.
+ {((u8 *) eHallOfFame) + GETBLOCKOFFSET(2), GETCHUNKSIZE(struct HallOfFame, 2)}
};
const u8 gFlashSectors[] = { 0x1E, 0x1F };
@@ -95,7 +93,7 @@ u8 save_write_to_flash(u16 a1, const struct SaveSectionLocation *location)
u32 retVal;
u16 i;
- gFastSaveSection = &unk_2000000;
+ gFastSaveSection = eSaveSection;
if (a1 != 0xFFFF) // for link
{
@@ -156,7 +154,7 @@ u8 HandleWriteSector(u16 a1, const struct SaveSectionLocation *location)
u8 HandleWriteSectorNBytes(u8 sector, u8 *data, u16 size)
{
u16 i;
- struct SaveSection *section = &unk_2000000;
+ struct SaveSection *section = eSaveSection;
for (i = 0; i < sizeof(struct SaveSection); i++)
((char *)section)[i] = 0;
@@ -186,7 +184,7 @@ u8 TryWriteSector(u8 sector, u8 *data)
u32 RestoreSaveBackupVarsAndIncrement(const struct SaveSectionLocation *location) // location is unused
{
- gFastSaveSection = &unk_2000000;
+ gFastSaveSection = eSaveSection;
gLastKnownGoodSector = gLastWrittenSector;
gLastSaveCounter = gSaveCounter;
gLastWrittenSector++;
@@ -199,7 +197,7 @@ u32 RestoreSaveBackupVarsAndIncrement(const struct SaveSectionLocation *location
u32 RestoreSaveBackupVars(const struct SaveSectionLocation *location) // only ever called once, and gSaveBlock2 is passed to this function. location is unused
{
- gFastSaveSection = &unk_2000000;
+ gFastSaveSection = eSaveSection;
gLastKnownGoodSector = gLastWrittenSector;
gLastSaveCounter = gSaveCounter;
gUnknown_03005EB4 = 0;
@@ -282,7 +280,7 @@ u8 sub_81255B8(u16 a1, const struct SaveSectionLocation *location)
for (i = 0; i < sizeof(struct UnkSaveSection); i++)
{
- if (ProgramFlashByte(sector, i, ((u8 *)gFastSaveSection)[i]))
+ if (ProgramFlashByte(sector, i, gFastSaveSection->data[i]))
{
status = 0xFF;
break;
@@ -369,7 +367,7 @@ u8 sub_81257F0(u16 a1, const struct SaveSectionLocation *location)
u8 sub_812587C(u16 a1, const struct SaveSectionLocation *location)
{
u8 retVal;
- gFastSaveSection = &unk_2000000;
+ gFastSaveSection = eSaveSection;
if (a1 != 0xFFFF)
{
retVal = 0xFF;
@@ -402,7 +400,7 @@ u8 sub_81258BC(u16 a1, const struct SaveSectionLocation *location)
{
u16 j;
for (j = 0; j < location[id].size; j++)
- ((u8 *)location[id].data)[j] = gFastSaveSection->data[j];
+ location[id].data[j] = gFastSaveSection->data[j];
}
}
@@ -537,7 +535,7 @@ u8 GetSaveValidStatus(const struct SaveSectionLocation *location)
u8 sub_8125B88(u8 a1, u8 *data, u16 size)
{
u16 i;
- struct SaveSection *section = &unk_2000000;
+ struct SaveSection *section = eSaveSection;
DoReadFlashWholeSection(a1, section);
if (section->security == UNKNOWN_CHECK_VALUE)
{
@@ -764,7 +762,7 @@ u8 unref_sub_8125FA0(void)
u8 unref_sub_8125FF0(u8 *data, u16 size)
{
u16 i;
- struct UnkSaveSection *section = (struct UnkSaveSection *)&unk_2000000;
+ struct UnkSaveSection *section = (struct UnkSaveSection *)eSaveSection;
for (i = 0; i < sizeof(struct SaveSection); i++)
((char *)section)[i] = 0;
@@ -774,7 +772,7 @@ u8 unref_sub_8125FF0(u8 *data, u16 size)
for (i = 0; i < size; i++)
section->data[i] = data[i];
- gLastSaveSectorStatus = ProgramFlashSectorAndVerifyNBytes(gFlashSectors[0], (u8 *)section, sizeof(struct SaveSection));
+ gLastSaveSectorStatus = ProgramFlashSectorAndVerifyNBytes(gFlashSectors[0], section, sizeof(struct SaveSection));
if (gLastSaveSectorStatus)
return 0xFF;
diff --git a/src/engine/save_failed_screen.c b/src/engine/save_failed_screen.c
index b91e8b5bf..ba2d46546 100644
--- a/src/engine/save_failed_screen.c
+++ b/src/engine/save_failed_screen.c
@@ -11,6 +11,7 @@
#include "strings.h"
#include "task.h"
#include "text.h"
+#include "ewram.h"
// In English 1.0, the text window is too small, causing text to overflow.
@@ -22,8 +23,6 @@
#define CLOCK_WIN_TOP (MSG_WIN_TOP - 4)
-extern u8 unk_2000000[];
-
static EWRAM_DATA u16 gSaveFailedType = 0;
static EWRAM_DATA u16 gSaveFailedClockInfo[9] = {0};
@@ -267,10 +266,10 @@ static void VBlankCB_UpdateClockGraphics(void)
static bool8 VerifySectorWipe(u16 sector)
{
- u32 *ptr = (u32 *)unk_2000000;
+ u32 *ptr = (u32 *)&gSharedMem;
u16 i;
- ReadFlash(sector, 0, (u8 *)ptr, 4096);
+ ReadFlash(sector, 0, ptr, 4096);
for (i = 0; i < 0x400; i++, ptr++)
if (*ptr)
diff --git a/src/engine/sprite.c b/src/engine/sprite.c
index 5d394502a..34ca3802d 100644
--- a/src/engine/sprite.c
+++ b/src/engine/sprite.c
@@ -833,13 +833,13 @@ static void RequestSpriteFrameImageCopy(u16 index, u16 tileNum, const struct Spr
if (gSpriteCopyRequestCount < MAX_SPRITE_COPY_REQUESTS)
{
gSpriteCopyRequests[gSpriteCopyRequestCount].src = images[index].data;
- gSpriteCopyRequests[gSpriteCopyRequestCount].dest = (u8 *)OBJ_VRAM0 + TILE_SIZE_4BPP * tileNum;
+ gSpriteCopyRequests[gSpriteCopyRequestCount].dest = OBJ_VRAM0 + TILE_SIZE_4BPP * tileNum;
gSpriteCopyRequests[gSpriteCopyRequestCount].size = images[index].size;
gSpriteCopyRequestCount++;
}
}
-void RequestSpriteCopy(const u8 *src, u8 *dest, u16 size)
+void RequestSpriteCopy(const void *src, u8 *dest, u16 size)
{
if (gSpriteCopyRequestCount < MAX_SPRITE_COPY_REQUESTS)
{
@@ -850,6 +850,7 @@ void RequestSpriteCopy(const u8 *src, u8 *dest, u16 size)
}
}
+// these two functions are unused.
void CopyFromSprites(u8 *dest)
{
u32 i;
@@ -1479,7 +1480,7 @@ u16 LoadSpriteSheet(const struct SpriteSheet *sheet)
else
{
AllocSpriteTileRange(sheet->tag, (u16)tileStart, sheet->size / TILE_SIZE_4BPP);
- CpuCopy16(sheet->data, (u8 *)OBJ_VRAM0 + TILE_SIZE_4BPP * tileStart, sheet->size);
+ CpuCopy16(sheet->data, OBJ_VRAM0 + TILE_SIZE_4BPP * tileStart, sheet->size);
return (u16)tileStart;
}
}
@@ -1517,7 +1518,7 @@ void LoadTilesForSpriteSheet(const struct SpriteSheet *sheet)
{
const u8 *data = sheet->data;
u16 tileStart = GetSpriteTileStartByTag(sheet->tag);
- CpuCopy16(data, (u8 *)OBJ_VRAM0 + TILE_SIZE_4BPP * tileStart, sheet->size);
+ CpuCopy16(data, OBJ_VRAM0 + TILE_SIZE_4BPP * tileStart, sheet->size);
}
void LoadTilesForSpriteSheets(struct SpriteSheet *sheets)
@@ -1603,7 +1604,7 @@ void RequestSpriteSheetCopy(const struct SpriteSheet *sheet)
{
const u8 *data = sheet->data;
u16 tileStart = GetSpriteTileStartByTag(sheet->tag);
- RequestSpriteCopy(data, (u8 *)OBJ_VRAM0 + tileStart * TILE_SIZE_4BPP, sheet->size);
+ RequestSpriteCopy(data, OBJ_VRAM0 + tileStart * TILE_SIZE_4BPP, sheet->size);
}
u16 LoadSpriteSheetDeferred(const struct SpriteSheet *sheet)
diff --git a/src/engine/string_util.c b/src/engine/string_util.c
index 9686256a1..7316f533a 100644
--- a/src/engine/string_util.c
+++ b/src/engine/string_util.c
@@ -376,7 +376,7 @@ u8 *StringExpandPlaceholders(u8 *dest, const u8 *src)
{
u8 c = *src++;
u8 placeholderId;
- u8 *expandedString;
+ const u8 *expandedString;
u8 length;
switch (c)
@@ -432,45 +432,45 @@ u8 *StringBraille(u8 *dest, const u8 *src)
}
}
-static u8 *ExpandPlaceholder_UnknownStringVar(void)
+static const u8 *ExpandPlaceholder_UnknownStringVar(void)
{
return gUnknownStringVar;
}
-static u8 *ExpandPlaceholder_PlayerName(void)
+static const u8 *ExpandPlaceholder_PlayerName(void)
{
return gSaveBlock2.playerName;
}
-static u8 *ExpandPlaceholder_StringVar1(void)
+static const u8 *ExpandPlaceholder_StringVar1(void)
{
return gStringVar1;
}
-static u8 *ExpandPlaceholder_StringVar2(void)
+static const u8 *ExpandPlaceholder_StringVar2(void)
{
return gStringVar2;
}
-static u8 *ExpandPlaceholder_StringVar3(void)
+static const u8 *ExpandPlaceholder_StringVar3(void)
{
return gStringVar3;
}
-static u8 *ExpandPlaceholder_KunChan(void)
+static const u8 *ExpandPlaceholder_KunChan(void)
{
if (gSaveBlock2.playerGender == MALE)
- return (u8 *) gExpandedPlaceholder_Kun;
+ return gExpandedPlaceholder_Kun;
else
- return (u8 *) gExpandedPlaceholder_Chan;
+ return gExpandedPlaceholder_Chan;
}
-static u8 *ExpandPlaceholder_RivalName(void)
+static const u8 *ExpandPlaceholder_RivalName(void)
{
if (gSaveBlock2.playerGender == MALE)
- return (u8 *) gExpandedPlaceholder_May;
+ return gExpandedPlaceholder_May;
else
- return (u8 *) gExpandedPlaceholder_Brendan;
+ return gExpandedPlaceholder_Brendan;
}
#define VERSION_DEPENDENT_PLACEHOLDER_LIST \
@@ -484,19 +484,19 @@ static u8 *ExpandPlaceholder_RivalName(void)
#ifdef SAPPHIRE
#define X(ph, r, s) \
-static u8 *ExpandPlaceholder_##ph(void) { return (u8 *) gExpandedPlaceholder_##s; }
+static const u8 *ExpandPlaceholder_##ph(void) { return gExpandedPlaceholder_##s; }
VERSION_DEPENDENT_PLACEHOLDER_LIST
#else
#define X(ph, r, s) \
-static u8 *ExpandPlaceholder_##ph(void) { return (u8 *) gExpandedPlaceholder_##r; }
+static const u8 *ExpandPlaceholder_##ph(void) { return gExpandedPlaceholder_##r; }
VERSION_DEPENDENT_PLACEHOLDER_LIST
#endif
#undef X
-u8 *GetExpandedPlaceholder(u32 id)
+const u8 *GetExpandedPlaceholder(u32 id)
{
- typedef u8 *(*ExpandPlaceholderFunc)(void);
+ typedef const u8 *(*ExpandPlaceholderFunc)(void);
static const ExpandPlaceholderFunc funcs[] =
{
@@ -517,7 +517,7 @@ u8 *GetExpandedPlaceholder(u32 id)
};
if (id >= ARRAY_COUNT(funcs))
- return (u8 *) gExpandedPlaceholder_Empty;
+ return gExpandedPlaceholder_Empty;
else
return funcs[id]();
}
diff --git a/src/engine/text.c b/src/engine/text.c
index 87903608f..1d1d31383 100644
--- a/src/engine/text.c
+++ b/src/engine/text.c
@@ -396,6 +396,8 @@ extern const u32 gFont4LatinGlyphs[];
extern const u32 gFont3JapaneseGlyphs[];
extern const u32 gFont4JapaneseGlyphs[];
+// Getting rid of the u8 recasting will make the ROM no longer match due to
+// a const being required to pass the elements directly to the rodata structs.
static const struct Font sFonts[] =
{
// Japanese fonts
@@ -405,15 +407,15 @@ static const struct Font sFonts[] =
{ 4, (u8 *)gFont3JapaneseGlyphs, 64, 512 },
{ 1, (u8 *)gFont4JapaneseGlyphs, 32, 0 },
{ 2, (u8 *)gFont4JapaneseGlyphs, 32, 0 },
- { 3, (u8 *)sBrailleGlyphs, 8, 0 },
+ { 3, (u8 *)sBrailleGlyphs, 8, 0 },
// Latin
- { 0, (u8 *)sFont0LatinGlyphs, 16, 8 },
- { 1, (u8 *)sFont1LatinGlyphs, 8, 0 },
- { 2, (u8 *)sFont1LatinGlyphs, 8, 0 },
- { 0, (u8 *)gFont3LatinGlyphs, 64, 32 },
- { 1, (u8 *)gFont4LatinGlyphs, 32, 0 },
- { 2, (u8 *)gFont4LatinGlyphs, 32, 0 },
- { 3, (u8 *)sBrailleGlyphs, 8, 0 },
+ { 0, (u8 *)sFont0LatinGlyphs, 16, 8 },
+ { 1, (u8 *)sFont1LatinGlyphs, 8, 0 },
+ { 2, (u8 *)sFont1LatinGlyphs, 8, 0 },
+ { 0, (u8 *)gFont3LatinGlyphs, 64, 32 },
+ { 1, (u8 *)gFont4LatinGlyphs, 32, 0 },
+ { 2, (u8 *)gFont4LatinGlyphs, 32, 0 },
+ { 3, (u8 *)sBrailleGlyphs, 8, 0 },
};
static const u8 sTextSpeedDelays[] = { 6, 3, 1 }; // slow, mid, fast
@@ -492,8 +494,8 @@ const struct WindowConfig gWindowConfig_81E6C3C =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(2), // tile data
- (u16 *)BG_SCREEN_ADDR(31), // tilemap
+ BG_CHAR_ADDR(2), // tile data
+ BG_SCREEN_ADDR(31), // tilemap
};
const struct WindowConfig gWindowConfig_81E6C58 =
@@ -513,8 +515,8 @@ const struct WindowConfig gWindowConfig_81E6C58 =
0, // tilemap top coordinate
26, // width
20, // height
- (u8 *)BG_CHAR_ADDR(0), // tile data
- (u16 *)BG_SCREEN_ADDR(24), // tilemap
+ BG_CHAR_ADDR(0), // tile data
+ BG_SCREEN_ADDR(24), // tilemap
};
const struct WindowConfig gWindowConfig_81E6C74 =
@@ -534,7 +536,7 @@ const struct WindowConfig gWindowConfig_81E6C74 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)OBJ_VRAM0, // tile data
+ OBJ_VRAM0, // tile data
NULL, // tilemap
};
@@ -555,8 +557,8 @@ const struct WindowConfig gWindowConfig_81E6C90 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(1), // tile data
- (u16 *)BG_SCREEN_ADDR(30), // tilemap
+ BG_CHAR_ADDR(1), // tile data
+ BG_SCREEN_ADDR(30), // tilemap
};
const struct WindowConfig gWindowConfig_81E6CAC =
@@ -597,8 +599,8 @@ const struct WindowConfig gWindowConfig_81E6CC8 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(2), // tile data
- (u16 *)BG_SCREEN_ADDR(15), // tilemap
+ BG_CHAR_ADDR(2), // tile data
+ BG_SCREEN_ADDR(15), // tilemap
};
const struct WindowConfig gWindowConfig_81E6CE4 =
@@ -618,8 +620,8 @@ const struct WindowConfig gWindowConfig_81E6CE4 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(2), // tile data
- (u16 *)BG_SCREEN_ADDR(31), // tilemap
+ BG_CHAR_ADDR(2), // tile data
+ BG_SCREEN_ADDR(31), // tilemap
};
const struct WindowConfig gWindowConfig_81E6D00 =
@@ -639,8 +641,8 @@ const struct WindowConfig gWindowConfig_81E6D00 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(0), // tile data
- (u16 *)BG_SCREEN_ADDR(31), // tilemap
+ BG_CHAR_ADDR(0), // tile data
+ BG_SCREEN_ADDR(31), // tilemap
};
const struct WindowConfig gWindowConfig_81E6D1C =
@@ -660,8 +662,8 @@ const struct WindowConfig gWindowConfig_81E6D1C =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(0), // tile data
- (u16 *)BG_SCREEN_ADDR(31), // tilemap
+ BG_CHAR_ADDR(0), // tile data
+ BG_SCREEN_ADDR(31), // tilemap
};
const struct WindowConfig gWindowConfig_81E6D38 =
@@ -702,8 +704,8 @@ const struct WindowConfig gWindowConfig_81E6D54 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(3), // tile data
- (u16 *)BG_SCREEN_ADDR(15), // tilemap
+ BG_CHAR_ADDR(3), // tile data
+ BG_SCREEN_ADDR(15), // tilemap
};
const struct WindowConfig gWindowConfig_81E6D70 =
@@ -723,8 +725,8 @@ const struct WindowConfig gWindowConfig_81E6D70 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(3), // tile data
- (u16 *)BG_SCREEN_ADDR(15), // tilemap
+ BG_CHAR_ADDR(3), // tile data
+ BG_SCREEN_ADDR(15), // tilemap
};
const struct WindowConfig gWindowConfig_81E6D8C =
@@ -744,8 +746,8 @@ const struct WindowConfig gWindowConfig_81E6D8C =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(0), // tile data
- (u16 *)BG_SCREEN_ADDR(14), // tilemap
+ BG_CHAR_ADDR(0), // tile data
+ BG_SCREEN_ADDR(14), // tilemap
};
const struct WindowConfig gWindowConfig_81E6DA8 =
@@ -765,8 +767,8 @@ const struct WindowConfig gWindowConfig_81E6DA8 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(0), // tile data
- (u16 *)BG_SCREEN_ADDR(11), // tilemap
+ BG_CHAR_ADDR(0), // tile data
+ BG_SCREEN_ADDR(11), // tilemap
};
const struct WindowConfig WindowConfig_TrainerCard_Back_Values =
@@ -786,8 +788,8 @@ const struct WindowConfig WindowConfig_TrainerCard_Back_Values =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(2), // tile data
- (u16 *)BG_SCREEN_ADDR(30), // tilemap
+ BG_CHAR_ADDR(2), // tile data
+ BG_SCREEN_ADDR(30), // tilemap
};
const struct WindowConfig WindowConfig_TrainerCard_Back_Labels =
@@ -807,8 +809,8 @@ const struct WindowConfig WindowConfig_TrainerCard_Back_Labels =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(2), // tile data
- (u16 *)BG_SCREEN_ADDR(30), // tilemap
+ BG_CHAR_ADDR(2), // tile data
+ BG_SCREEN_ADDR(30), // tilemap
};
const struct WindowConfig gWindowConfig_81E6DFC =
@@ -828,8 +830,8 @@ const struct WindowConfig gWindowConfig_81E6DFC =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(2), // tile data
- (u16 *)BG_SCREEN_ADDR(31), // tilemap
+ BG_CHAR_ADDR(2), // tile data
+ BG_SCREEN_ADDR(31), // tilemap
};
const struct WindowConfig gWindowConfig_81E6E18 =
@@ -849,8 +851,8 @@ const struct WindowConfig gWindowConfig_81E6E18 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(2), // tile data
- (u16 *)BG_SCREEN_ADDR(31), // tilemap
+ BG_CHAR_ADDR(2), // tile data
+ BG_SCREEN_ADDR(31), // tilemap
};
const struct WindowConfig gWindowConfig_81E6E34 =
@@ -870,8 +872,8 @@ const struct WindowConfig gWindowConfig_81E6E34 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(0), // tile data
- (u16 *)BG_SCREEN_ADDR(31), // tilemap
+ BG_CHAR_ADDR(0), // tile data
+ BG_SCREEN_ADDR(31), // tilemap
};
const struct WindowConfig gWindowConfig_81E6E50 =
@@ -891,8 +893,8 @@ const struct WindowConfig gWindowConfig_81E6E50 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(2), // tile data
- (u16 *)BG_SCREEN_ADDR(28), // tilemap
+ BG_CHAR_ADDR(2), // tile data
+ BG_SCREEN_ADDR(28), // tilemap
};
const struct WindowConfig gWindowConfig_81E6E6C =
@@ -912,8 +914,8 @@ const struct WindowConfig gWindowConfig_81E6E6C =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(2), // tile data
- (u16 *)BG_SCREEN_ADDR(30), // tilemap
+ BG_CHAR_ADDR(2), // tile data
+ BG_SCREEN_ADDR(30), // tilemap
};
const struct WindowConfig gWindowConfig_81E6E88 =
@@ -933,8 +935,8 @@ const struct WindowConfig gWindowConfig_81E6E88 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(0), // tile data
- (u16 *)BG_SCREEN_ADDR(31), // tilemap
+ BG_CHAR_ADDR(0), // tile data
+ BG_SCREEN_ADDR(31), // tilemap
};
const struct WindowConfig gWindowConfig_81E6EA4 =
@@ -954,8 +956,8 @@ const struct WindowConfig gWindowConfig_81E6EA4 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(0), // tile data
- (u16 *)BG_SCREEN_ADDR(28), // tilemap
+ BG_CHAR_ADDR(0), // tile data
+ BG_SCREEN_ADDR(28), // tilemap
};
const struct WindowConfig gWindowConfig_81E6EC0 =
@@ -975,8 +977,8 @@ const struct WindowConfig gWindowConfig_81E6EC0 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(2), // tile data
- (u16 *)BG_SCREEN_ADDR(29), // tilemap
+ BG_CHAR_ADDR(2), // tile data
+ BG_SCREEN_ADDR(29), // tilemap
};
const struct WindowConfig gWindowConfig_81E6EDC =
@@ -996,8 +998,8 @@ const struct WindowConfig gWindowConfig_81E6EDC =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(0), // tile data
- (u16 *)BG_SCREEN_ADDR(28), // tilemap
+ BG_CHAR_ADDR(0), // tile data
+ BG_SCREEN_ADDR(28), // tilemap
};
const struct WindowConfig gWindowConfig_81E6EF8 =
@@ -1017,8 +1019,8 @@ const struct WindowConfig gWindowConfig_81E6EF8 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(2), // tile data
- (u16 *)BG_SCREEN_ADDR(29), // tilemap
+ BG_CHAR_ADDR(2), // tile data
+ BG_SCREEN_ADDR(29), // tilemap
};
const struct WindowConfig gWindowConfig_81E6F14 =
@@ -1038,8 +1040,8 @@ const struct WindowConfig gWindowConfig_81E6F14 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(0), // tile data
- (u16 *)BG_SCREEN_ADDR(28), // tilemap
+ BG_CHAR_ADDR(0), // tile data
+ BG_SCREEN_ADDR(28), // tilemap
};
const struct WindowConfig gWindowConfig_81E6F30 =
@@ -1059,8 +1061,8 @@ const struct WindowConfig gWindowConfig_81E6F30 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(2), // tile data
- (u16 *)BG_SCREEN_ADDR(29), // tilemap
+ BG_CHAR_ADDR(2), // tile data
+ BG_SCREEN_ADDR(29), // tilemap
};
const struct WindowConfig gWindowConfig_81E6F4C =
@@ -1080,8 +1082,8 @@ const struct WindowConfig gWindowConfig_81E6F4C =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(0), // tile data
- (u16 *)BG_SCREEN_ADDR(30), // tilemap
+ BG_CHAR_ADDR(0), // tile data
+ BG_SCREEN_ADDR(30), // tilemap
};
const struct WindowConfig gWindowConfig_81E6F68 =
@@ -1101,8 +1103,8 @@ const struct WindowConfig gWindowConfig_81E6F68 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(2), // tile data
- (u16 *)BG_SCREEN_ADDR(13), // tilemap
+ BG_CHAR_ADDR(2), // tile data
+ BG_SCREEN_ADDR(13), // tilemap
};
const struct WindowConfig gWindowConfig_81E6F84 =
@@ -1122,8 +1124,8 @@ const struct WindowConfig gWindowConfig_81E6F84 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(2), // tile data
- (u16 *)BG_SCREEN_ADDR(31), // tilemap
+ BG_CHAR_ADDR(2), // tile data
+ BG_SCREEN_ADDR(31), // tilemap
};
const struct WindowConfig gWindowConfig_81E6FA0 =
@@ -1143,8 +1145,8 @@ const struct WindowConfig gWindowConfig_81E6FA0 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(0), // tile data
- (u16 *)BG_SCREEN_ADDR(24), // tilemap
+ BG_CHAR_ADDR(0), // tile data
+ BG_SCREEN_ADDR(24), // tilemap
};
const struct WindowConfig gWindowConfig_81E6FBC =
@@ -1164,8 +1166,8 @@ const struct WindowConfig gWindowConfig_81E6FBC =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(0), // tile data
- (u16 *)BG_SCREEN_ADDR(30), // tilemap
+ BG_CHAR_ADDR(0), // tile data
+ BG_SCREEN_ADDR(30), // tilemap
};
const struct WindowConfig gWindowConfig_81E6FD8 =
@@ -1185,8 +1187,8 @@ const struct WindowConfig gWindowConfig_81E6FD8 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(0), // tile data
- (u16 *)BG_SCREEN_ADDR(24), // tilemap
+ BG_CHAR_ADDR(0), // tile data
+ BG_SCREEN_ADDR(24), // tilemap
};
const struct WindowConfig gWindowConfig_81E6FF4 =
@@ -1206,8 +1208,8 @@ const struct WindowConfig gWindowConfig_81E6FF4 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(0), // tile data
- (u16 *)BG_SCREEN_ADDR(24), // tilemap
+ BG_CHAR_ADDR(0), // tile data
+ BG_SCREEN_ADDR(24), // tilemap
};
const struct WindowConfig gWindowConfig_81E7010 =
@@ -1227,8 +1229,8 @@ const struct WindowConfig gWindowConfig_81E7010 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(0), // tile data
- (u16 *)BG_SCREEN_ADDR(30), // tilemap
+ BG_CHAR_ADDR(0), // tile data
+ BG_SCREEN_ADDR(30), // tilemap
};
const struct WindowConfig gWindowConfig_81E702C =
@@ -1248,8 +1250,8 @@ const struct WindowConfig gWindowConfig_81E702C =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(2), // tile data
- (u16 *)BG_SCREEN_ADDR(15), // tilemap
+ BG_CHAR_ADDR(2), // tile data
+ BG_SCREEN_ADDR(15), // tilemap
};
const struct WindowConfig gWindowConfig_81E7048 =
@@ -1269,8 +1271,8 @@ const struct WindowConfig gWindowConfig_81E7048 =
0, // tilemap top coordinate
16, // width
32, // height
- (u8 *)BG_CHAR_ADDR(2), // tile data
- (u16 *)BG_SCREEN_ADDR(14), // tilemap
+ BG_CHAR_ADDR(2), // tile data
+ BG_SCREEN_ADDR(14), // tilemap
};
const struct WindowConfig gWindowConfig_81E7064 =
@@ -1290,8 +1292,8 @@ const struct WindowConfig gWindowConfig_81E7064 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(2), // tile data
- (u16 *)BG_SCREEN_ADDR(14), // tilemap
+ BG_CHAR_ADDR(2), // tile data
+ BG_SCREEN_ADDR(14), // tilemap
};
const struct WindowConfig gWindowConfig_81E7080 =
@@ -1311,8 +1313,8 @@ const struct WindowConfig gWindowConfig_81E7080 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(0), // tile data
- (u16 *)BG_SCREEN_ADDR(30), // tilemap
+ BG_CHAR_ADDR(0), // tile data
+ BG_SCREEN_ADDR(30), // tilemap
};
const struct WindowConfig gWindowConfig_81E709C =
@@ -1332,8 +1334,8 @@ const struct WindowConfig gWindowConfig_81E709C =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(0), // tile data
- (u16 *)BG_SCREEN_ADDR(31), // tilemap
+ BG_CHAR_ADDR(0), // tile data
+ BG_SCREEN_ADDR(31), // tilemap
};
const struct WindowConfig gWindowConfig_81E70B8 =
@@ -1353,8 +1355,8 @@ const struct WindowConfig gWindowConfig_81E70B8 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(0), // tile data
- (u16 *)BG_SCREEN_ADDR(30), // tilemap
+ BG_CHAR_ADDR(0), // tile data
+ BG_SCREEN_ADDR(30), // tilemap
};
const struct WindowConfig gWindowConfig_81E70D4 =
@@ -1374,8 +1376,8 @@ const struct WindowConfig gWindowConfig_81E70D4 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(0), // tile data
- (u16 *)BG_SCREEN_ADDR(30), // tilemap
+ BG_CHAR_ADDR(0), // tile data
+ BG_SCREEN_ADDR(30), // tilemap
};
const struct WindowConfig gWindowConfig_81E70F0 =
@@ -1416,8 +1418,8 @@ const struct WindowConfig gWindowConfig_81E710C =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(0), // tile data
- (u16 *)BG_SCREEN_ADDR(31), // tilemap
+ BG_CHAR_ADDR(0), // tile data
+ BG_SCREEN_ADDR(31), // tilemap
};
const struct WindowConfig gWindowConfig_81E7128 =
@@ -1437,8 +1439,8 @@ const struct WindowConfig gWindowConfig_81E7128 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(2), // tile data
- (u16 *)BG_SCREEN_ADDR(31), // tilemap
+ BG_CHAR_ADDR(2), // tile data
+ BG_SCREEN_ADDR(31), // tilemap
};
const struct WindowConfig gWindowConfig_81E7144 =
@@ -1458,8 +1460,8 @@ const struct WindowConfig gWindowConfig_81E7144 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(2), // tile data
- (u16 *)BG_SCREEN_ADDR(31), // tilemap
+ BG_CHAR_ADDR(2), // tile data
+ BG_SCREEN_ADDR(31), // tilemap
};
const struct WindowConfig gWindowConfig_81E7160 =
@@ -1479,8 +1481,8 @@ const struct WindowConfig gWindowConfig_81E7160 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(1), // tile data
- (u16 *)BG_SCREEN_ADDR(10), // tilemap
+ BG_CHAR_ADDR(1), // tile data
+ BG_SCREEN_ADDR(10), // tilemap
};
const struct WindowConfig gWindowConfig_81E717C =
@@ -1500,8 +1502,8 @@ const struct WindowConfig gWindowConfig_81E717C =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(3), // tile data
- (u16 *)BG_SCREEN_ADDR(31), // tilemap
+ BG_CHAR_ADDR(3), // tile data
+ BG_SCREEN_ADDR(31), // tilemap
};
const struct WindowConfig gWindowConfig_81E7198 =
@@ -1521,8 +1523,8 @@ const struct WindowConfig gWindowConfig_81E7198 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(2), // tile data
- (u16 *)BG_SCREEN_ADDR(15), // tilemap
+ BG_CHAR_ADDR(2), // tile data
+ BG_SCREEN_ADDR(15), // tilemap
};
const struct WindowConfig gWindowConfig_81E71B4 =
@@ -1542,8 +1544,8 @@ const struct WindowConfig gWindowConfig_81E71B4 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(2), // tile data
- (u16 *)BG_SCREEN_ADDR(15), // tilemap
+ BG_CHAR_ADDR(2), // tile data
+ BG_SCREEN_ADDR(15), // tilemap
};
const struct WindowConfig gWindowConfig_81E71D0 =
@@ -1563,8 +1565,8 @@ const struct WindowConfig gWindowConfig_81E71D0 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(1), // tile data
- (u16 *)BG_SCREEN_ADDR(28), // tilemap
+ BG_CHAR_ADDR(1), // tile data
+ BG_SCREEN_ADDR(28), // tilemap
};
const struct WindowConfig gWindowConfig_81E71EC =
@@ -1584,8 +1586,8 @@ const struct WindowConfig gWindowConfig_81E71EC =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(1), // tile data
- (u16 *)BG_SCREEN_ADDR(30), // tilemap
+ BG_CHAR_ADDR(1), // tile data
+ BG_SCREEN_ADDR(30), // tilemap
};
const struct WindowConfig gWindowConfig_81E7208 =
@@ -1605,8 +1607,8 @@ const struct WindowConfig gWindowConfig_81E7208 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(2), // tile data
- (u16 *)BG_SCREEN_ADDR(28), // tilemap
+ BG_CHAR_ADDR(2), // tile data
+ BG_SCREEN_ADDR(28), // tilemap
};
const struct WindowConfig gWindowConfig_81E7224 =
@@ -1626,8 +1628,8 @@ const struct WindowConfig gWindowConfig_81E7224 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(0), // tile data
- (u16 *)BG_SCREEN_ADDR(31), // tilemap
+ BG_CHAR_ADDR(0), // tile data
+ BG_SCREEN_ADDR(31), // tilemap
};
const struct WindowConfig gWindowConfig_81E7240 =
@@ -1647,8 +1649,8 @@ const struct WindowConfig gWindowConfig_81E7240 =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)BG_CHAR_ADDR(2), // tile data
- (u16 *)BG_SCREEN_ADDR(30), // tilemap
+ BG_CHAR_ADDR(2), // tile data
+ BG_SCREEN_ADDR(30), // tilemap
};
const struct WindowConfig gWindowConfig_81E725C =
@@ -1668,7 +1670,7 @@ const struct WindowConfig gWindowConfig_81E725C =
0, // tilemap top coordinate
30, // width
20, // height
- (u8 *)OBJ_VRAM0, // tile data
+ OBJ_VRAM0, // tile data
NULL, // tilemap
};
diff --git a/src/engine/tileset_anim.c b/src/engine/tileset_anim.c
index 34685381d..f892e5e9a 100644
--- a/src/engine/tileset_anim.c
+++ b/src/engine/tileset_anim.c
@@ -32,8 +32,8 @@ extern u8 *gTilesetAnimTable_BikeShop[];
struct Dma
{
- u8 *src;
- u8 *dest;
+ void *src;
+ void *dest;
u16 size;
};
@@ -95,7 +95,7 @@ static void ClearTilesetAnimDmas(void)
CpuFill32(0, &gTilesetAnimDmas, sizeof(gTilesetAnimDmas));
}
-static void QueueTilesetAnimDma(u8 *src, u8 *dest, u16 size)
+static void QueueTilesetAnimDma(void *src, void *dest, u16 size)
{
if (gNumTilesetAnimDmas < 20)
{
@@ -217,28 +217,28 @@ static void sub_8073070(u16 a1)
{
int v1;
v1 = a1 % 4;
- QueueTilesetAnimDma(gTilesetAnimTable_General_0[v1], (u8 *)(BG_VRAM + 0x3f80), 0x80);
+ QueueTilesetAnimDma(gTilesetAnimTable_General_0[v1], BG_TILE_ADDR(127), 0x80);
}
static void sub_8073098(u16 a1)
{
u8 v1;
v1 = a1 % 8;
- QueueTilesetAnimDma(gTilesetAnimTable_General_1[v1], (u8 *)(BG_VRAM + 0x3600), 0x3c0);
+ QueueTilesetAnimDma(gTilesetAnimTable_General_1[v1], BG_TILE_ADDR(108), 0x3c0);
}
static void sub_80730C0(u16 a1)
{
int v1;
v1 = a1 % 8;
- QueueTilesetAnimDma(gTilesetAnimTable_General_2[v1], (u8 *)(BG_VRAM + 0x3a00), 0x140);
+ QueueTilesetAnimDma(gTilesetAnimTable_General_2[v1], BG_TILE_ADDR(116), 0x140);
}
static void sub_80730E8(u16 a1)
{
int v1;
v1 = a1 % 4;
- QueueTilesetAnimDma(gTilesetAnimTable_General_3[v1], (u8 *)(BG_VRAM + 0x3e00), 0xc0);
+ QueueTilesetAnimDma(gTilesetAnimTable_General_3[v1], BG_TILE_ADDR(124), 0xc0);
}
void TilesetCB_Petalburg(void)
@@ -454,37 +454,37 @@ static void sub_807361C(u16 a1)
{
int v1;
v1 = a1 % 4;
- QueueTilesetAnimDma(gTilesetAnimTable_General_4[v1], (u8 *)(BG_VRAM + 0x3c00), 0x140);
+ QueueTilesetAnimDma(gTilesetAnimTable_General_4[v1], BG_TILE_ADDR(120), 0x140);
}
static void sub_8073644(u8 a1)
{
u8 v1;
v1 = a1 % 4;
- QueueTilesetAnimDma(gTilesetAnimTable_Lavaridge[v1], (u8 *)(BG_VRAM + 0x6400), 0x80);
+ QueueTilesetAnimDma(gTilesetAnimTable_Lavaridge[v1], BG_TILE_ADDR(200), 0x80);
v1 = (a1 + 2) % 4;
- QueueTilesetAnimDma(gTilesetAnimTable_Lavaridge[v1], (u8 *)(BG_VRAM + 0x6480), 0x80);
+ QueueTilesetAnimDma(gTilesetAnimTable_Lavaridge[v1], BG_TILE_ADDR(201), 0x80);
}
static void sub_807368C(u8 a1)
{
int v1;
v1 = a1 % 4;
- QueueTilesetAnimDma(gTilesetAnimTable_Pacifidlog_0[v1], (u8 *)(BG_VRAM + 0x7a00), 0x3c0);
+ QueueTilesetAnimDma(gTilesetAnimTable_Pacifidlog_0[v1], BG_TILE_ADDR(244), 0x3c0);
}
static void sub_80736B4(u8 a1)
{
int v1;
v1 = a1 % 4;
- QueueTilesetAnimDma(gTilesetAnimTable_Underwater[v1], (u8 *)(BG_VRAM + 0x7e00), 0x80);
+ QueueTilesetAnimDma(gTilesetAnimTable_Underwater[v1], BG_TILE_ADDR(252), 0x80);
}
static void sub_80736DC(u8 a1)
{
int v1;
v1 = a1 % 8;
- QueueTilesetAnimDma(gTilesetAnimTable_Pacifidlog_1[v1], (u8 *)(BG_VRAM + 0x7e00), 0x100);
+ QueueTilesetAnimDma(gTilesetAnimTable_Pacifidlog_1[v1], BG_TILE_ADDR(252), 0x100);
}
static void sub_8073704(u16 a1, u8 a2)
@@ -521,14 +521,14 @@ static void sub_80737E0(u16 a1)
{
int v1;
v1 = a1 % 2;
- QueueTilesetAnimDma(gTilesetAnimTable_Rustboro_1[v1], (u8 *)(BG_VRAM + 0x7800), 0x80);
+ QueueTilesetAnimDma(gTilesetAnimTable_Rustboro_1[v1], BG_TILE_ADDR(240), 0x80);
}
static void sub_8073808(u16 a1)
{
int v1;
v1 = a1 % 4;
- QueueTilesetAnimDma(gTilesetAnimTable_Cave[v1], (u8 *)(BG_VRAM + 0x5400), 0x80);
+ QueueTilesetAnimDma(gTilesetAnimTable_Cave[v1], BG_TILE_ADDR(168), 0x80);
}
static void sub_8073830(u16 a1, u8 a2)
@@ -543,7 +543,7 @@ static void sub_8073868(u16 a1)
{
int v1;
v1 = a1 % 4;
- QueueTilesetAnimDma(gTilesetAnimTable_Cave[v1], (u8 *)(BG_VRAM + 0x7400), 0x80);
+ QueueTilesetAnimDma(gTilesetAnimTable_Cave[v1], BG_TILE_ADDR(232), 0x80);
}
static void sub_8073890(u16 a1)
@@ -590,41 +590,41 @@ static void sub_8073904(u16 a1)
{
int v1;
v1 = a1 % 2;
- QueueTilesetAnimDma(gTilesetAnimTable_Building[v1], (u8 *)(BG_VRAM + 0x3e00), 0x80);
+ QueueTilesetAnimDma(gTilesetAnimTable_Building[v1], BG_TILE_ADDR(124), 0x80);
}
static void sub_807392C(u16 a1)
{
int v1;
v1 = a1 % 3;
- QueueTilesetAnimDma(gTilesetAnimTable_SootopolisGym_0[v1], (u8 *)(BG_VRAM + 0x7e00), 0x180);
- QueueTilesetAnimDma(gTilesetAnimTable_SootopolisGym_1[v1], (u8 *)(BG_VRAM + 0x7a00), 0x280);
+ QueueTilesetAnimDma(gTilesetAnimTable_SootopolisGym_0[v1], BG_TILE_ADDR(252), 0x180);
+ QueueTilesetAnimDma(gTilesetAnimTable_SootopolisGym_1[v1], BG_TILE_ADDR(244), 0x280);
}
static void sub_8073974(u16 a1)
{
int v1;
v1 = a1 % 4;
- QueueTilesetAnimDma(gTilesetAnimTable_EliteFour_0[v1], (u8 *)(BG_VRAM + 0x7f00), 0x20);
+ QueueTilesetAnimDma(gTilesetAnimTable_EliteFour_0[v1], BG_TILE_ADDR(254), 0x20);
}
static void sub_807399C(u16 a1)
{
int v1;
v1 = a1 % 2;
- QueueTilesetAnimDma(gTilesetAnimTable_EliteFour_1[v1], (u8 *)(BG_VRAM + 0x7c00), 0x80);
+ QueueTilesetAnimDma(gTilesetAnimTable_EliteFour_1[v1], BG_TILE_ADDR(248), 0x80);
}
static void sub_80739C4(u16 a1)
{
int v1;
v1 = a1 % 2;
- QueueTilesetAnimDma(gTilesetAnimTable_MauvilleGym[v1], (u8 *)(BG_VRAM + 0x5200), 0x200);
+ QueueTilesetAnimDma(gTilesetAnimTable_MauvilleGym[v1], BG_TILE_ADDR(164), 0x200);
}
static void sub_80739EC(u16 a1)
{
int v1;
v1 = a1 % 2;
- QueueTilesetAnimDma(gTilesetAnimTable_BikeShop[v1], (u8 *)(BG_VRAM + 0x7e00), 0x120);
+ QueueTilesetAnimDma(gTilesetAnimTable_BikeShop[v1], BG_TILE_ADDR(252), 0x120);
}
diff --git a/src/engine/trade.c b/src/engine/trade.c
index 905e9ff0c..41146a22c 100644
--- a/src/engine/trade.c
+++ b/src/engine/trade.c
@@ -39,6 +39,7 @@
#include "util.h"
#include "battle_interface.h"
#include "trade.h"
+#include "ewram.h"
#ifdef ENGLISH
#define sub_804A96C_alt sub_804A96C
@@ -112,7 +113,6 @@ struct TradeEwramSubstruct {
/*0x0087*/ u8 unk_0087;
/*0x0088*/ u8 filler_0088[2];
/*0x008a*/ u8 unk_008a;
- /*0x008b*/ u8 unk_008b;
/*0x008c*/ u16 linkData[20];
/*0x00b4*/ u8 unk_00b4;
/*0x00b5*/ u8 unk_00b5[11];
@@ -218,9 +218,6 @@ extern u8 *gUnknown_020296CC[13];
extern struct TradeEwramSubstruct *gUnknown_03004824;
extern struct MailStruct gUnknown_02029700[16];
-#define ewram_2010000 (*(struct TradeEwramStruct *)(ewram + 0x10000))
-
-
const u32 unref_data_820ABD4[] = {
0x00000890,
0x00003AC0,
@@ -1088,7 +1085,7 @@ static void sub_8047EC0(void)
ResetSpriteData();
FreeAllSpritePalettes();
ResetTasks();
- sub_804A964(&gUnknown_03004824->unk_00c8, (void *)BG_SCREEN_ADDR(5));
+ sub_804A964(&gUnknown_03004824->unk_00c8, BG_SCREEN_ADDR(5));
SetVBlankCallback(sub_80489F4);
InitMenuWindow(&gWindowConfig_81E6CE4);
SetUpWindowConfig(&gWindowConfig_81E6F84);
@@ -1268,7 +1265,7 @@ static void sub_80484F4(void)
ResetSpriteData();
FreeAllSpritePalettes();
ResetTasks();
- sub_804A964(&gUnknown_03004824->unk_00c8, (void *)BG_SCREEN_ADDR(5));
+ sub_804A964(&gUnknown_03004824->unk_00c8, BG_SCREEN_ADDR(5));
SetVBlankCallback(sub_80489F4);
InitMenuWindow(&gWindowConfig_81E6CE4);
SetUpWindowConfig(&gWindowConfig_81E6F84);
@@ -1484,12 +1481,12 @@ static void sub_8048B0C(u8 a0)
}
for (i = 0; i < 0x400; i ++)
gUnknown_03004824->unk_00c8.unk_12[i] = gUnknown_08EA15C8[i];
- dest = (u16 *)BG_SCREEN_ADDR(6);
+ dest = BG_SCREEN_ADDR(6);
DmaCopy16(3, gTradeStripesBG2Tilemap, dest, 0x800);
break;
case 1:
src = gTradeStripesBG3Tilemap;
- dest = (u16 *)BG_SCREEN_ADDR(7);
+ dest = BG_SCREEN_ADDR(7);
DmaCopy16(3, src, dest, 0x800);
sub_804A6DC(0);
sub_804A6DC(1);
@@ -1706,8 +1703,11 @@ static void sub_8048C70(void)
static void nullsub_5(u8 a0, u8 a1) {}
-static void sub_8048D24(u8 *dest, const u8 *src, u32 size)
+// why not just use memcpy?
+static void Trade_Memcpy(void *dataDest, void *dataSrc, u32 size)
{
+ u8 *dest = dataDest;
+ u8 *src = dataSrc;
int i;
for (i = 0; i < size; i ++) dest[i] = src[i];
}
@@ -1724,7 +1724,7 @@ static bool8 sub_8048D44(void)
switch (gUnknown_03004824->unk_0075)
{
case 0:
- sub_8048D24(gBlockSendBuffer, (const u8 *)&gPlayerParty[0], 2 * sizeof(struct Pokemon));
+ Trade_Memcpy(gBlockSendBuffer, &gPlayerParty[0], 2 * sizeof(struct Pokemon));
gUnknown_03004824->unk_0075 ++;
break;
case 1:
@@ -1751,13 +1751,13 @@ static bool8 sub_8048D44(void)
case 3:
if (GetBlockReceivedStatus() == 3)
{
- sub_8048D24((u8 *)&gEnemyParty[0], (const u8 *)gBlockRecvBuffer[mpId ^ 1], 2 * sizeof(struct Pokemon));
+ Trade_Memcpy(&gEnemyParty[0], gBlockRecvBuffer[mpId ^ 1], 2 * sizeof(struct Pokemon));
ResetBlockReceivedFlags();
gUnknown_03004824->unk_0075 ++;
}
break;
case 4:
- sub_8048D24(gBlockSendBuffer, (const u8 *)&gPlayerParty[2], 2 * sizeof(struct Pokemon));
+ Trade_Memcpy(gBlockSendBuffer, &gPlayerParty[2], 2 * sizeof(struct Pokemon));
gUnknown_03004824->unk_0075 ++;
break;
case 5:
@@ -1770,13 +1770,13 @@ static bool8 sub_8048D44(void)
case 6:
if (GetBlockReceivedStatus() == 3)
{
- sub_8048D24((u8 *)&gEnemyParty[2], (const u8 *)gBlockRecvBuffer[mpId ^ 1], 2 * sizeof(struct Pokemon));
+ Trade_Memcpy(&gEnemyParty[2], gBlockRecvBuffer[mpId ^ 1], 2 * sizeof(struct Pokemon));
ResetBlockReceivedFlags();
gUnknown_03004824->unk_0075 ++;
}
break;
case 7:
- sub_8048D24(gBlockSendBuffer, (const u8 *)&gPlayerParty[4], 2 * sizeof(struct Pokemon));
+ Trade_Memcpy(gBlockSendBuffer, &gPlayerParty[4], 2 * sizeof(struct Pokemon));
gUnknown_03004824->unk_0075 ++;
break;
case 8:
@@ -1789,13 +1789,13 @@ static bool8 sub_8048D44(void)
case 9:
if (GetBlockReceivedStatus() == 3)
{
- sub_8048D24((u8 *)&gEnemyParty[4], (const u8 *)gBlockRecvBuffer[mpId ^ 1], 2 * sizeof(struct Pokemon));
+ Trade_Memcpy(&gEnemyParty[4], gBlockRecvBuffer[mpId ^ 1], 2 * sizeof(struct Pokemon));
ResetBlockReceivedFlags();
gUnknown_03004824->unk_0075 ++;
}
break;
case 10:
- sub_8048D24(gBlockSendBuffer, (const u8 *)&gSaveBlock1.mail[0], 6 * sizeof(struct MailStruct) + 4);
+ Trade_Memcpy(gBlockSendBuffer, &gSaveBlock1.mail[0], 6 * sizeof(struct MailStruct) + 4);
gUnknown_03004824->unk_0075 ++;
break;
case 11:
@@ -1808,13 +1808,13 @@ static bool8 sub_8048D44(void)
case 12:
if (GetBlockReceivedStatus() == 3)
{
- sub_8048D24((u8 *)&gUnknown_02029700[0], (const u8 *)gBlockRecvBuffer[mpId ^ 1], 6 * sizeof(struct MailStruct));
+ Trade_Memcpy(&gUnknown_02029700[0], gBlockRecvBuffer[mpId ^ 1], 6 * sizeof(struct MailStruct));
ResetBlockReceivedFlags();
gUnknown_03004824->unk_0075 ++;
}
break;
case 13:
- sub_8048D24(gBlockSendBuffer, (const u8 *)gSaveBlock1.giftRibbons, 11);
+ Trade_Memcpy(gBlockSendBuffer, gSaveBlock1.giftRibbons, 11);
gUnknown_03004824->unk_0075 ++;
break;
case 14:
@@ -1827,7 +1827,7 @@ static bool8 sub_8048D44(void)
case 15:
if (GetBlockReceivedStatus() == 3)
{
- sub_8048D24((u8 *)gUnknown_03004824->unk_00b5, (const u8 *)gBlockRecvBuffer[mpId ^ 1], 11);
+ Trade_Memcpy(gUnknown_03004824->unk_00b5, gBlockRecvBuffer[mpId ^ 1], 11);
ResetBlockReceivedFlags();
gUnknown_03004824->unk_0075 ++;
}
@@ -1853,7 +1853,7 @@ static void sub_8049088(void)
{
u8 string[28];
StringCopy(string, gTradeText_TradeOkayPrompt);
- sub_804ACD8(string, (u8 *)BG_CHAR_ADDR(4) + gUnknown_03004824->unk_007e * 32, 20);
+ sub_804ACD8(string, BG_CHAR_ADDR(4) + gUnknown_03004824->unk_007e * 32, 20);
}
static void sub_80490BC(u8 mpId, u8 a1)
@@ -1915,7 +1915,7 @@ static void sub_80491E4(u8 mpId, u8 status)
gUnknown_03004824->unk_007b = 8;
break;
case 0xdddd:
- gUnknown_03004824->unk_008a = ((u8 *)gBlockRecvBuffer[0])[1 * sizeof(u16)] + 6;
+ gUnknown_03004824->unk_008a = gBlockRecvBuffer[0][1] + 6;
sub_8049E9C(gUnknown_03004824->tradeMenuCursorPosition);
sub_8049E9C(gUnknown_03004824->unk_008a);
gUnknown_03004824->unk_007b = 7;
@@ -2111,7 +2111,7 @@ static void sub_8049680(void)
DrawTextWindow(&gUnknown_03004824->window, 24, 14, 29, 19);
InitYesNoMenu(24, 14, 4);
gUnknown_03004824->unk_007b = 4;
- sub_804ACD8(gUnknown_0820C14C[4], (u8 *)(BG_CHAR_ADDR(4) + 32 * gUnknown_03004824->unk_007e), 20);
+ sub_804ACD8(gUnknown_0820C14C[4], BG_CHAR_ADDR(4) + 32 * gUnknown_03004824->unk_007e, 20);
}
}
if (gMain.newKeys & R_BUTTON)
@@ -2130,7 +2130,7 @@ static void sub_8049804(void)
sub_804A80C();
gUnknown_03004824->unk_007b = 0;
gSprites[gUnknown_03004824->tradeMenuCursorSpriteIdx].invisible = FALSE;
- sub_804ACD8(gUnknown_0820C14C[1], (u8 *)(BG_CHAR_ADDR(4) + 32 * gUnknown_03004824->unk_007e), 20);
+ sub_804ACD8(gUnknown_0820C14C[1], BG_CHAR_ADDR(4) + 32 * gUnknown_03004824->unk_007e, 20);
}
static void sub_8049860(void)
@@ -2498,7 +2498,7 @@ static void sub_8049ED4(u8 a0)
gUnknown_03004824->unk_0080[a0] ++;
break;
case 4:
- sub_804ACD8(gUnknown_0820C14C[5], (u8 *)(BG_CHAR_ADDR(4) + 32 * gUnknown_03004824->unk_007e), 20);
+ sub_804ACD8(gUnknown_0820C14C[5], BG_CHAR_ADDR(4) + 32 * gUnknown_03004824->unk_007e, 20);
sub_804A51C(a0, whichPokemon, gUnknown_0820C3D1[a0][0] + 4, gUnknown_0820C3D1[a0][1] + 1, gUnknown_0820C3D1[a0][0], gUnknown_0820C3D1[a0][1]);
gUnknown_03004824->unk_0080[a0] ++;
break;
@@ -3362,7 +3362,7 @@ static void sub_804A840(u8 whichParty)
sub_804A740(1);
sub_804A938(&gUnknown_03004824->unk_00c8);
}
- sub_804ACD8(gUnknown_0820C14C[1], (u8 *)(BG_CHAR_ADDR(4) + 32 * gUnknown_03004824->unk_007e), 20);
+ sub_804ACD8(gUnknown_0820C14C[1], BG_CHAR_ADDR(4) + 32 * gUnknown_03004824->unk_007e, 20);
gUnknown_03004824->unk_0080[whichParty] = 0;
}
@@ -4000,7 +4000,7 @@ static void sub_804B2D0(u8 whichParty, u8 a1)
case 0:
species = GetMonData(pokemon, MON_DATA_SPECIES2);
personality = GetMonData(pokemon, MON_DATA_PERSONALITY);
- HandleLoadSpecialPokePic(&gMonFrontPicTable[species], gMonFrontPicCoords[species].coords, gMonFrontPicCoords[species].y_offset, (u32)ewram, gUnknown_081FAF4C[whichParty * 2 + 1], species, personality);
+ HandleLoadSpecialPokePic(&gMonFrontPicTable[species], gMonFrontPicCoords[species].coords, gMonFrontPicCoords[species].y_offset, (u32)gSharedMem, gUnknown_081FAF4C[whichParty * 2 + 1], species, personality);
LoadCompressedObjectPalette(GetMonSpritePalStruct(pokemon));
gUnknown_03004828->tradeSpecies[whichParty] = species;
break;
@@ -4037,7 +4037,7 @@ static void sub_804B41C(void)
gMain.state ++;
LZDecompressVram(gUnknown_08D00000, (void *)VRAM);
CpuCopy16(gUnknown_08D00524, ewram, 0x1000);
- DmaCopy16Defvars(3, ewram, (void *)BG_SCREEN_ADDR(5), 0x500);
+ DmaCopy16Defvars(3, ewram, BG_SCREEN_ADDR(5), 0x500);
LoadCompressedPalette(gUnknown_08D004E0, 0, 32);
gUnknown_03004828->unk_00b6 = 0;
gUnknown_03004828->unk_00c4 = 0;
@@ -4175,7 +4175,7 @@ static __attribute__((naked)) void sub_804B41C(void)
"\tbl ResetTasks\n"
"\tbl CloseLink\n"
"\tldr r6, _0804B570 @ =gUnknown_03004828\n"
- "\tldr r5, _0804B574 @ =0x0201f000\n"
+ "\tldr r5, _0804B574 @ =gSharedMem + 0x1F000\n"
"\tstr r5, [r6]\n"
"\tbl ResetSpriteData\n"
"\tbl FreeAllSpritePalettes\n"
@@ -4277,7 +4277,7 @@ static __attribute__((naked)) void sub_804B41C(void)
"\tb _0804B76E_break\n"
"\t.align 2, 0\n"
"_0804B570: .4byte gUnknown_03004828\n"
- "_0804B574: .4byte 0x0201f000\n"
+ "_0804B574: .4byte gSharedMem + 0x1F000\n"
"_0804B578: .4byte sub_804B210\n"
"_0804B57C: .4byte gWindowConfig_81E6F84\n"
"_0804B580: .4byte gLinkType\n"
@@ -4678,8 +4678,8 @@ static void sub_804BBE8(u8 a0)
{
case 0:
LoadPalette(gUnknown_0820C9F8, 0x10, 0xa0);
- DmaCopyLarge16(3, gUnknown_0820CA98, (void *)BG_CHAR_ADDR(1), 0x1300, 0x1000);
- DmaCopy16Defvars(3, gUnknown_0820F798, (void *)BG_SCREEN_ADDR(18), 0x1000);
+ DmaCopyLarge16(3, gUnknown_0820CA98, BG_CHAR_ADDR(1), 0x1300, 0x1000);
+ DmaCopy16Defvars(3, gUnknown_0820F798, BG_SCREEN_ADDR(18), 0x1000);
gUnknown_03004828->bg2vofs = 0;
gUnknown_03004828->bg2hofs = 0xb4;
REG_DISPCNT = DISPCNT_MODE_0 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG0_ON | DISPCNT_BG1_ON | DISPCNT_BG2_ON | DISPCNT_OBJ_ON;
@@ -4691,15 +4691,15 @@ static void sub_804BBE8(u8 a0)
REG_BG1VOFS = 0x15c;
REG_BG1CNT = BGCNT_PRIORITY(2) | BGCNT_CHARBASE(0) | BGCNT_SCREENBASE(5) | BGCNT_TXT256x512;
- DmaCopy16Defvars(3, gUnknown_08210798, (void *)BG_SCREEN_ADDR(5), 0x1000);
- DmaCopyLarge16(3, gUnknown_0820CA98, (void *)BG_CHAR_ADDR(0), 0x1300, 0x1000);
+ DmaCopy16Defvars(3, gUnknown_08210798, BG_SCREEN_ADDR(5), 0x1000);
+ DmaCopyLarge16(3, gUnknown_0820CA98, BG_CHAR_ADDR(0), 0x1300, 0x1000);
REG_DISPCNT = DISPCNT_MODE_1 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG1_ON | DISPCNT_OBJ_ON;
break;
case 2:
gUnknown_03004828->bg1vofs = 0;
gUnknown_03004828->bg1hofs = 0;
REG_DISPCNT = DISPCNT_MODE_1 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG1_ON | DISPCNT_OBJ_ON;
- DmaCopy16Defvars(3, gUnknown_08211798, (void *)BG_SCREEN_ADDR(5), 0x800);
+ DmaCopy16Defvars(3, gUnknown_08211798, BG_SCREEN_ADDR(5), 0x800);
break;
case 3:
REG_DISPCNT = DISPCNT_MODE_0 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG1_ON | DISPCNT_OBJ_ON;
@@ -4708,8 +4708,8 @@ static void sub_804BBE8(u8 a0)
gUnknown_03004828->unk_010c = 0x78;
gUnknown_03004828->unk_010e = -0x46;
gUnknown_03004828->unk_011c = 0;
- DmaCopyLarge16(3, gUnknown_0820DD98, (void *)BG_CHAR_ADDR(1), 0x1a00, 0x1000);
- DmaCopy16Defvars(3, gUnknown_08211F98, (void *)BG_SCREEN_ADDR(18), 0x100);
+ DmaCopyLarge16(3, gUnknown_0820DD98, BG_CHAR_ADDR(1), 0x1a00, 0x1000);
+ DmaCopy16Defvars(3, gUnknown_08211F98, BG_SCREEN_ADDR(18), 0x100);
break;
case 4:
REG_DISPCNT = DISPCNT_MODE_1 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG2_ON | DISPCNT_OBJ_ON;
@@ -4719,20 +4719,20 @@ static void sub_804BBE8(u8 a0)
gUnknown_03004828->unk_0118 = 0x20;
gUnknown_03004828->unk_011a = 0x400;
gUnknown_03004828->unk_011c = 0;
- DmaCopyLarge16(3, gUnknown_08213738, (void *)BG_CHAR_ADDR(1), 0x2040, 0x1000);
- DmaCopy16Defvars(3, gUnknown_08215778, (void *)BG_SCREEN_ADDR(18), 0x100);
+ DmaCopyLarge16(3, gUnknown_08213738, BG_CHAR_ADDR(1), 0x2040, 0x1000);
+ DmaCopy16Defvars(3, gUnknown_08215778, BG_SCREEN_ADDR(18), 0x100);
break;
case 5:
gUnknown_03004828->bg1vofs = 0;
gUnknown_03004828->bg1hofs = 0;
REG_BG1CNT = BGCNT_PRIORITY(2) | BGCNT_CHARBASE(0) | BGCNT_SCREENBASE(5);
- LZDecompressVram(gUnknown_08D00000, (void *)BG_CHAR_ADDR(0));
- CpuCopy16(gUnknown_08D00524, buffer = (u16 *)ewram, 0x1000);
+ LZDecompressVram(gUnknown_08D00000, BG_CHAR_ADDR(0));
+ CpuCopy16(gUnknown_08D00524, buffer = (u16 *)gSharedMem, 0x1000);
LoadCompressedPalette(gUnknown_08D004E0, 0x70, 0x20);
FillPalette(0, 0, 2);
for (i = 0; i < 0x280; i ++)
buffer[i] |= 0x7000;
- DmaCopy16Defvars(3, ewram, (void *)BG_SCREEN_ADDR(5), 0x500);
+ DmaCopy16Defvars(3, gSharedMem, BG_SCREEN_ADDR(5), 0x500);
MenuZeroFillWindowRect(2, 15, 27, 18);
break;
case 6:
@@ -4745,16 +4745,16 @@ static void sub_804BBE8(u8 a0)
gUnknown_03004828->unk_010c = 0x78;
gUnknown_03004828->unk_010e = 0x50;
gUnknown_03004828->unk_011c = 0;
- DmaCopyLarge16(3, gUnknown_08213738, (void *)BG_CHAR_ADDR(1), 0x2040, 0x1000);
- DmaCopy16Defvars(3, gUnknown_08215778, (void *)BG_SCREEN_ADDR(18), 0x100);
+ DmaCopyLarge16(3, gUnknown_08213738, BG_CHAR_ADDR(1), 0x2040, 0x1000);
+ DmaCopy16Defvars(3, gUnknown_08215778, BG_SCREEN_ADDR(18), 0x100);
break;
case 7:
gUnknown_03004828->bg2vofs = 0;
gUnknown_03004828->bg2hofs = 0;
REG_BG2CNT = BGCNT_PRIORITY(2) | BGCNT_CHARBASE(1) | BGCNT_SCREENBASE(18) | BGCNT_TXT512x256;
LoadPalette(gUnknown_0820C9F8, 0x10, 0xa0);
- DmaCopyLarge16(3, gUnknown_0820CA98, (void *)BG_CHAR_ADDR(1), 0x1300, 0x1000);
- DmaCopy16Defvars(3, gUnknown_0820F798, (void *)BG_SCREEN_ADDR(18), 0x1000);
+ DmaCopyLarge16(3, gUnknown_0820CA98, BG_CHAR_ADDR(1), 0x1300, 0x1000);
+ DmaCopy16Defvars(3, gUnknown_0820F798, BG_SCREEN_ADDR(18), 0x1000);
break;
}
}
@@ -5416,7 +5416,6 @@ static void sub_804D948(u8 whichPlayerMon, u8 whichInGameTrade)
struct MailStruct mail;
u8 metLocation = 0xFE;
u8 isMail;
- u8 *item;
struct Pokemon *pokemon = &gEnemyParty[0];
CreateMon(pokemon, inGameTrade->species, level, 32, TRUE, inGameTrade->personality, TRUE, inGameTrade->otId);
@@ -5447,12 +5446,11 @@ static void sub_804D948(u8 whichPlayerMon, u8 whichInGameTrade)
sub_804DAD4(&mail, inGameTrade);
gUnknown_02029700[0] = mail;
SetMonData(pokemon, MON_DATA_MAIL, &isMail);
- SetMonData(pokemon, MON_DATA_HELD_ITEM, (u8 *)&inGameTrade->heldItem);
+ SetMonData(pokemon, MON_DATA_HELD_ITEM, &inGameTrade->heldItem);
}
else
{
- item = (u8 *)&inGameTrade->heldItem;
- SetMonData(pokemon, MON_DATA_HELD_ITEM, item);
+ SetMonData(pokemon, MON_DATA_HELD_ITEM, &inGameTrade->heldItem);
}
}
CalculateMonStats(&gEnemyParty[0]);
@@ -5705,10 +5703,10 @@ void sub_804E22C(void)
{
const u16 *src;
u16 *dest;
- LZDecompressVram(gUnknown_08D00000, (u8 *)VRAM);
- CpuCopy16(gUnknown_08D00524, ewram, 0x1000);
- src = (const u16 *)ewram;
- dest = (u16 *)(BG_SCREEN_ADDR(5));
+ LZDecompressVram(gUnknown_08D00000, (void *)VRAM);
+ CpuCopy16(gUnknown_08D00524, gSharedMem, 0x1000);
+ src = (const u16 *)gSharedMem;
+ dest = BG_SCREEN_ADDR(5);
DmaCopy16(3, src, dest, 0x500)
LoadCompressedPalette(gUnknown_08D004E0, 0, 32);
REG_BG1CNT = BGCNT_PRIORITY(2) | BGCNT_SCREENBASE(5);
diff --git a/src/engine/trainer_card.c b/src/engine/trainer_card.c
index 3e9dadbda..6d105f512 100644
--- a/src/engine/trainer_card.c
+++ b/src/engine/trainer_card.c
@@ -20,6 +20,7 @@
#include "task.h"
#include "unknown_task.h"
#include "util.h"
+#include "ewram.h"
typedef void (*Callback)(void);
@@ -47,9 +48,6 @@ struct Struct2000000
/*0x9C*/ u8 language; // 0x9C
};
-extern u8 ewram[];
-#define ewram0 (*(struct Struct2000000 *)(ewram))
-
extern struct LinkPlayerMapObject gLinkPlayerMapObjects[];
EWRAM_DATA struct TrainerCard gTrainerCards[4] = {0};
@@ -70,7 +68,7 @@ extern const u16 gUnknown_083B5F8C[][4];
const u8 gBadgesTiles[] = INCBIN_U8("graphics/trainer_card/badges.4bpp");
// XXX: what is this?
-u8 *const ewram_ = ewram;
+u8 *const ewram_ = gSharedMem;
bool8 sub_8093864(struct Task *);
bool8 sub_80938A8(struct Task *);
@@ -189,14 +187,14 @@ void sub_8093110(Callback arg1)
{
sub_80932AC(arg1);
SetMainCallback2(sub_8093174);
- ewram0.language = GAME_LANGUAGE;
+ ewram0_2.language = GAME_LANGUAGE;
}
void sub_8093130(u8 playerIndex, Callback arg2)
{
sub_80932E4(playerIndex, arg2);
SetMainCallback2(sub_8093174);
- ewram0.language = gLinkPlayers[gLinkPlayerMapObjects[playerIndex].linkPlayerId].language;
+ ewram0_2.language = gLinkPlayers[gLinkPlayerMapObjects[playerIndex].linkPlayerId].language;
}
static void sub_8093174(void)
@@ -258,13 +256,13 @@ static void sub_8093254(void)
LoadOam();
ProcessSpriteCopyRequests();
TransferPlttBuffer();
- ewram0.var_6++;
- if (ewram0.var_6 >= 60)
+ ewram0_2.var_6++;
+ if (ewram0_2.var_6 >= 60)
{
- ewram0.var_6 = 0;
- ewram0.var_5 ^= 1;
+ ewram0_2.var_6 = 0;
+ ewram0_2.var_5 ^= 1;
}
- if (ewram0.var_4)
+ if (ewram0_2.var_4)
DmaCopy16(3, gUnknown_03004DE0.filler0, gUnknown_03004DE0.unk780, sizeof(gUnknown_03004DE0.unk780));
}
@@ -290,20 +288,20 @@ void sub_8093324(void)
{
u8 taskId = FindTaskIdByFunc(nullsub_60);
struct Task *task = &gTasks[taskId];
- ewram0.var_1 = task->data[TD_0];
+ ewram0_2.var_1 = task->data[TD_0];
- LoadWordFromTwoHalfwords((u16 *)&task->data[TD_CALLBACK], (u32 *)&ewram0.var_60);
+ LoadWordFromTwoHalfwords((u16 *)&task->data[TD_CALLBACK], (u32 *)&ewram0_2.var_60);
- if (ewram0.var_1)
+ if (ewram0_2.var_1)
{
struct TrainerCard(*trainerCards)[4] = &gTrainerCards;
s16 var = task->data[TD_1];
struct TrainerCard *dest = &(*trainerCards)[var];
- memcpy(&ewram0.var_64, dest, sizeof(struct TrainerCard));
+ memcpy(&ewram0_2.var_64, dest, sizeof(struct TrainerCard));
}
else
{
- sub_8093390(&ewram0.var_64);
+ sub_8093390(&ewram0_2.var_64);
}
}
@@ -502,52 +500,52 @@ static void sub_8093688(void)
u8 i;
sub_8093324();
- ewram0.var_0 = 0;
- ewram0.var_3 = 0;
- ewram0.var_4 = FALSE;
- ewram0.var_2 = ewram0.var_64.stars;
- ewram0.var_5 = 0;
- ewram0.var_6 = 0;
+ ewram0_2.var_0 = 0;
+ ewram0_2.var_3 = 0;
+ ewram0_2.var_4 = FALSE;
+ ewram0_2.var_2 = ewram0_2.var_64.stars;
+ ewram0_2.var_5 = 0;
+ ewram0_2.var_6 = 0;
for (i = 0; i < 4; i++)
- EasyChat_GetWordText(ewram0.var_20[i], ewram0.var_64.var_28[i]);
+ EasyChat_GetWordText(ewram0_2.var_20[i], ewram0_2.var_64.var_28[i]);
sub_80936D4();
}
void sub_80936D4(void)
{
- ewram0.var_7 = 0;
- ewram0.var_8 = 0;
- ewram0.var_9 = 0;
- ewram0.var_a = 0;
- ewram0.var_b = 0;
- ewram0.var_c = 0;
- ewram0.var_d = 0;
- memset(ewram0.var_e, 0, sizeof(ewram0.var_e));
+ ewram0_2.var_7 = 0;
+ ewram0_2.var_8 = 0;
+ ewram0_2.var_9 = 0;
+ ewram0_2.var_a = 0;
+ ewram0_2.var_b = 0;
+ ewram0_2.var_c = 0;
+ ewram0_2.var_d = 0;
+ memset(ewram0_2.var_e, 0, sizeof(ewram0_2.var_e));
- if (ewram0.var_64.hasPokedex)
- ewram0.var_7++;
+ if (ewram0_2.var_64.hasPokedex)
+ ewram0_2.var_7++;
- if (ewram0.var_64.firstHallOfFameA != 0
- || ewram0.var_64.firstHallOfFameB != 0
- || ewram0.var_64.firstHallOfFameC != 0)
- ewram0.var_8++;
+ if (ewram0_2.var_64.firstHallOfFameA != 0
+ || ewram0_2.var_64.firstHallOfFameB != 0
+ || ewram0_2.var_64.firstHallOfFameC != 0)
+ ewram0_2.var_8++;
- if (ewram0.var_64.linkBattleWins != 0 || ewram0.var_64.linkBattleLosses != 0)
- ewram0.var_9++;
+ if (ewram0_2.var_64.linkBattleWins != 0 || ewram0_2.var_64.linkBattleLosses != 0)
+ ewram0_2.var_9++;
- if (ewram0.var_64.battleTowerWins != 0 || ewram0.var_64.battleTowerLosses != 0)
- ewram0.var_a++;
+ if (ewram0_2.var_64.battleTowerWins != 0 || ewram0_2.var_64.battleTowerLosses != 0)
+ ewram0_2.var_a++;
- if (ewram0.var_64.contestsWithFriends != 0)
- ewram0.var_b++;
+ if (ewram0_2.var_64.contestsWithFriends != 0)
+ ewram0_2.var_b++;
- if (ewram0.var_64.pokeblocksWithFriends != 0)
- ewram0.var_c++;
+ if (ewram0_2.var_64.pokeblocksWithFriends != 0)
+ ewram0_2.var_c++;
- if (ewram0.var_64.pokemonTrades != 0)
- ewram0.var_d++;
+ if (ewram0_2.var_64.pokemonTrades != 0)
+ ewram0_2.var_d++;
- if (!ewram0.var_1)
+ if (!ewram0_2.var_1)
{
u32 badgeFlag;
int i = 0;
@@ -556,7 +554,7 @@ void sub_80936D4(void)
while (1)
{
if (FlagGet(badgeFlag))
- ewram0.var_e[i]++;
+ ewram0_2.var_e[i]++;
badgeFlag++;
i++;
if (badgeFlag > BADGE08_GET)
@@ -613,24 +611,24 @@ static void sub_809380C()
static void sub_809382C(u8 taskId)
{
- while (gUnknown_083B5EBC[ewram0.var_0](&gTasks[taskId]) != 0)
+ while (gUnknown_083B5EBC[ewram0_2.var_0](&gTasks[taskId]) != 0)
;
}
bool8 sub_8093864(struct Task *task)
{
- ewram0.var_5 = gSaveBlock2.playTimeSeconds & 1;
- ewram0.var_6 = gSaveBlock2.playTimeVBlanks;
+ ewram0_2.var_5 = gSaveBlock2.playTimeSeconds & 1;
+ ewram0_2.var_6 = gSaveBlock2.playTimeVBlanks;
sub_80939A4();
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, 0);
- ewram0.var_0++;
+ ewram0_2.var_0++;
return FALSE;
}
bool8 sub_80938A8(struct Task *task)
{
if (!gPaletteFade.active)
- ewram0.var_0++;
+ ewram0_2.var_0++;
return FALSE;
}
@@ -638,19 +636,19 @@ bool8 sub_80938CC(struct Task *task)
{
if (gMain.newKeys & B_BUTTON)
{
- ewram0.var_0 = 5;
+ ewram0_2.var_0 = 5;
return TRUE;
}
else if (gMain.newKeys & A_BUTTON)
{
- if (ewram0.var_3 != 0)
+ if (ewram0_2.var_3 != 0)
{
- ewram0.var_0 = 5;
+ ewram0_2.var_0 = 5;
}
else
{
- ewram0.var_3 ^= 1;
- ewram0.var_0 = 3;
+ ewram0_2.var_3 ^= 1;
+ ewram0_2.var_0 = 3;
}
return TRUE;
}
@@ -661,14 +659,14 @@ bool8 sub_8093918(struct Task *task)
{
sub_8093A28();
PlaySE(SE_CARD);
- ewram0.var_0++;
+ ewram0_2.var_0++;
return FALSE;
}
bool8 sub_8093938(struct Task *task)
{
if (sub_8093A48())
- ewram0.var_0 = 2;
+ ewram0_2.var_0 = 2;
return FALSE;
}
@@ -676,14 +674,14 @@ bool8 sub_8093954(struct Task *task)
{
sub_80939C0();
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, 0);
- ewram0.var_0++;
+ ewram0_2.var_0++;
return FALSE;
}
bool8 sub_8093980(struct Task *task)
{
if (!gPaletteFade.active)
- SetMainCallback2((MainCallback)ewram0.var_60);
+ SetMainCallback2((MainCallback)ewram0_2.var_60);
return FALSE;
}
@@ -706,9 +704,9 @@ static void sub_80939DC(u8 taskId)
u8 buffer[32];
struct Task *task = &gTasks[taskId];
- if (ewram0.var_5 != task->data[TD_1])
+ if (ewram0_2.var_5 != task->data[TD_1])
{
- task->data[TD_1] = ewram0.var_5;
+ task->data[TD_1] = ewram0_2.var_5;
task->data[TD_0] ^= TRUE;
}
TrainerCard_Front_PrintPlayTime(buffer, task->data[TD_0]);
@@ -741,12 +739,12 @@ bool8 sub_8093AA0(struct Task *task)
{
s32 i;
- ewram0.var_4 = FALSE;
+ ewram0_2.var_4 = FALSE;
dp12_8087EA4();
for (i = 0; i < ARRAY_COUNT(gUnknown_03004DE0.unk780); i++)
gUnknown_03004DE0.unk780[i] = -4;
SetHBlankCallback(sub_8093D7C);
- ewram0.var_4 = TRUE;
+ ewram0_2.var_4 = TRUE;
task->data[0]++;
return FALSE;
}
@@ -763,7 +761,7 @@ bool8 sub_8093AF0(struct Task *task)
u32 sp0;
s16 i;
- ewram0.var_4 = 0;
+ ewram0_2.var_4 = 0;
task->data[1] += 3;
if (task->data[1] > 79)
task->data[1] = 79;
@@ -792,7 +790,7 @@ bool8 sub_8093AF0(struct Task *task)
}
for (; i < 160; i++)
gUnknown_03004DE0.filler0[i] = -4 + (u16)(r10 >> 16);
- ewram0.var_4 = 1;
+ ewram0_2.var_4 = 1;
if (task->data[1] > 0x4A)
task->data[0]++;
return FALSE;
@@ -810,7 +808,7 @@ bool8 sub_8093AF0(struct Task *task)
push {r5-r7}\n\
sub sp, 0x4\n\
mov r8, r0\n\
- ldr r1, _08093BFC @ =0x02000000\n\
+ ldr r1, _08093BFC @ =gSharedMem\n\
movs r0, 0\n\
strb r0, [r1, 0x4]\n\
mov r2, r8\n\
@@ -923,7 +921,7 @@ _08093BBE:\n\
ble _08093BBE\n\
_08093BD4:\n\
movs r0, 0x1\n\
- ldr r1, _08093BFC @ =0x02000000\n\
+ ldr r1, _08093BFC @ =gSharedMem\n\
strb r0, [r1, 0x4]\n\
mov r2, r8\n\
movs r4, 0xA\n\
@@ -944,7 +942,7 @@ _08093BEA:\n\
pop {r1}\n\
bx r1\n\
.align 2, 0\n\
-_08093BFC: .4byte 0x02000000\n\
+_08093BFC: .4byte gSharedMem\n\
_08093C00: .4byte 0xffff0000\n\
_08093C04: .4byte gUnknown_03004DE0\n\
_08093C08: .4byte 0x0000fffc\n\
@@ -955,7 +953,7 @@ bool8 sub_8093C0C(struct Task *task)
{
sub_80939C0();
sub_8093DAC();
- if (!ewram0.var_3)
+ if (!ewram0_2.var_3)
sub_80939A4();
task->data[0]++;
return TRUE;
@@ -972,7 +970,7 @@ bool8 sub_8093C38(struct Task *task)
push {r5-r7}\n\
sub sp, 0x4\n\
mov r8, r0\n\
- ldr r1, _08093D40 @ =0x02000000\n\
+ ldr r1, _08093D40 @ =gSharedMem\n\
movs r2, 0\n\
strb r2, [r1, 0x4]\n\
ldrh r0, [r0, 0xA]\n\
@@ -1083,7 +1081,7 @@ _08093D02:\n\
ble _08093D02\n\
_08093D18:\n\
movs r0, 0x1\n\
- ldr r1, _08093D40 @ =0x02000000\n\
+ ldr r1, _08093D40 @ =gSharedMem\n\
strb r0, [r1, 0x4]\n\
mov r2, r8\n\
movs r3, 0xA\n\
@@ -1104,7 +1102,7 @@ _08093D2E:\n\
pop {r1}\n\
bx r1\n\
.align 2, 0\n\
-_08093D40: .4byte 0x02000000\n\
+_08093D40: .4byte gSharedMem\n\
_08093D44: .4byte 0xffff0000\n\
_08093D48: .4byte gUnknown_03004DE0\n\
_08093D4C: .4byte 0x0000fffc\n\
@@ -1115,7 +1113,7 @@ bool8 sub_8093D50(struct Task *task)
{
u8 taskId;
- ewram0.var_4 = FALSE;
+ ewram0_2.var_4 = FALSE;
SetHBlankCallback(NULL);
sub_8093E04();
taskId = FindTaskIdByFunc(sub_8093A68);
@@ -1134,7 +1132,7 @@ void sub_8093D7C(void)
static void sub_8093DAC(void)
{
- if (ewram0.var_3)
+ if (ewram0_2.var_3)
sub_8093DEC();
else
sub_8093DC8();
@@ -1203,23 +1201,23 @@ extern const u16 *const gUnknown_083B5EF8[];
void sub_8093EA0(void)
{
- LoadPalette(gUnknown_083B5EF8[ewram0.var_2], 0, 48 * 2);
+ LoadPalette(gUnknown_083B5EF8[ewram0_2.var_2], 0, 48 * 2);
LoadPalette(gBadgesPalette, 48, 16 * 2);
LoadPalette(gUnknown_083B5F4C, 64, 16 * 2);
- if (ewram0.var_64.gender != MALE)
+ if (ewram0_2.var_64.gender != MALE)
LoadPalette(gUnknown_083B5F0C, 16, 16 * 2);
}
static void sub_8093EF8(void)
{
- LoadTrainerGfx_TrainerCard(ewram0.var_64.gender, 80, (void *)(VRAM + 0x1880));
+ LoadTrainerGfx_TrainerCard(ewram0_2.var_64.gender, 80, (void *)(VRAM + 0x1880));
}
static void sub_8093F14(void)
{
const void *arr[] = {gUnknown_08E8CAC0, gUnknown_08E8D4C0};
- CpuFastSet(arr[ewram0.var_1], (void *)(VRAM + 0x4800), 0x140);
+ CpuFastSet(arr[ewram0_2.var_1], (void *)(VRAM + 0x4800), 0x140);
}
// I don't really know where to put the data. It's in such a weird order.
@@ -1269,7 +1267,7 @@ static void sub_8093FD0(void)
{
u16 *ptr = (u16 *)(VRAM + 0x4000);
s16 i = 15;
- s16 var = 15 + ewram0.var_2;
+ s16 var = 15 + ewram0_2.var_2;
while (i < var)
{
@@ -1285,7 +1283,7 @@ static void sub_8093FD0(void)
static void sub_8094038(void)
{
- if (ewram0.var_1 == 0)
+ if (ewram0_2.var_1 == 0)
{
u16 *ptr = (u16 *)(VRAM + 0x4000);
s16 i;
@@ -1293,7 +1291,7 @@ static void sub_8094038(void)
for (i = 0, r2 = 4; i < 8; i++, r2 += 3)
{
- if (ewram0.var_e[i] != 0)
+ if (ewram0_2.var_e[i] != 0)
{
ptr[15 * 32 + r2 + 0] = gUnknown_083B5F8C[i][0] | 0x3000;
ptr[15 * 32 + r2 + 1] = gUnknown_083B5F8C[i][1] | 0x3000;
@@ -1332,8 +1330,8 @@ static void sub_8094140(void)
BasicInitMenuWindow(&WindowConfig_TrainerCard_Back_Values);
buffer = gStringVar1;
- StringCopy(buffer, ewram0.var_64.playerName);
- ConvertInternationalString(buffer, ewram0.language);
+ StringCopy(buffer, ewram0_2.var_64.playerName);
+ ConvertInternationalString(buffer, ewram0_2.language);
MenuPrint(buffer, 7, 5);
TrainerCard_Front_PrintTrainerID();
@@ -1366,26 +1364,26 @@ static void TrainerCard_Front_PrintTrainerID(void)
{
u8 buffer[8];
- ConvertIntToDecimalStringN(buffer, ewram0.var_64.trainerId, STR_CONV_MODE_LEADING_ZEROS, 5);
+ ConvertIntToDecimalStringN(buffer, ewram0_2.var_64.trainerId, STR_CONV_MODE_LEADING_ZEROS, 5);
MenuPrint(buffer, 20, 2);
}
static void TrainerCard_Front_PrintMoney(void)
{
- sub_80B7AEC(ewram0.var_64.money, 16, 8);
+ sub_80B7AEC(ewram0_2.var_64.money, 16, 8);
}
static void TrainerCard_Front_PrintPokedexCount(void)
{
u8 buffer[16];
- if (ewram0.var_7 == FALSE)
+ if (ewram0_2.var_7 == FALSE)
{
sub_8094110();
}
else
{
- ConvertIntToDecimalStringN(buffer, ewram0.var_64.pokedexSeen, STR_CONV_MODE_LEFT_ALIGN, 3);
+ ConvertIntToDecimalStringN(buffer, ewram0_2.var_64.pokedexSeen, STR_CONV_MODE_LEFT_ALIGN, 3);
MenuPrint_RightAligned(buffer, 16, 10);
}
}
@@ -1398,10 +1396,10 @@ static void TrainerCard_Front_PrintPlayTime(u8 *arg1, s16 colon)
playTimeHours = gSaveBlock2.playTimeHours;
playTimeMinutes = gSaveBlock2.playTimeMinutes;
- if (ewram0.var_1 != 0)
+ if (ewram0_2.var_1 != 0)
{
- playTimeHours = ewram0.var_64.playTimeHours;
- playTimeMinutes = ewram0.var_64.playTimeMinutes;
+ playTimeHours = ewram0_2.var_64.playTimeHours;
+ playTimeMinutes = ewram0_2.var_64.playTimeMinutes;
}
FormatPlayTime(buffer, playTimeHours, playTimeMinutes, colon);
sub_8072C74(arg1, buffer, 48, 1);
@@ -1411,20 +1409,20 @@ static void sub_809429C(void)
{
u8 *str;
- if (ewram0.var_1 != 0)
+ if (ewram0_2.var_1 != 0)
{
str = gStringVar1;
- str = StringCopy(str, ewram0.var_20[0]);
+ str = StringCopy(str, ewram0_2.var_20[0]);
str[0] = 00;
str++;
- str = StringCopy(str, ewram0.var_20[1]);
+ str = StringCopy(str, ewram0_2.var_20[1]);
MenuPrint(gStringVar1, 2, 14);
str = gStringVar1;
- str = StringCopy(str, ewram0.var_20[2]);
+ str = StringCopy(str, ewram0_2.var_20[2]);
str[0] = 00;
str++;
- str = StringCopy(str, ewram0.var_20[3]);
+ str = StringCopy(str, ewram0_2.var_20[3]);
MenuPrint(gStringVar1, 2, 16);
}
}
@@ -1434,8 +1432,8 @@ static void TrainerCard_Back_PrintName(void)
u8 *str;
str = gStringVar1;
- StringCopy(str, ewram0.var_64.playerName);
- ConvertInternationalString(str, ewram0.language);
+ StringCopy(str, ewram0_2.var_64.playerName);
+ ConvertInternationalString(str, ewram0_2.language);
#if ENGLISH
StringAppend(str, gOtherText_TrainersTrainerCard);
@@ -1448,7 +1446,7 @@ static void TrainerCard_Back_PrintName(void)
static void TrainerCard_Back_PrintHallOfFameTime_Label(void)
{
- if (ewram0.var_8 != 0)
+ if (ewram0_2.var_8 != 0)
MenuPrint(gOtherText_FirstHOF, 3, 5);
}
@@ -1456,21 +1454,21 @@ static void TrainerCard_Back_PrintHallOfFameTime(void)
{
u8 *str;
- if (ewram0.var_8 != 0)
+ if (ewram0_2.var_8 != 0)
{
str = gStringVar1;
- str = ConvertIntToDecimalStringN(str, ewram0.var_64.firstHallOfFameA, STR_CONV_MODE_RIGHT_ALIGN, 3);
+ str = ConvertIntToDecimalStringN(str, ewram0_2.var_64.firstHallOfFameA, STR_CONV_MODE_RIGHT_ALIGN, 3);
str = StringCopy(str, gUnknown_083B5EF4);
- str = ConvertIntToDecimalStringN(str, ewram0.var_64.firstHallOfFameB, STR_CONV_MODE_LEADING_ZEROS, 2);
+ str = ConvertIntToDecimalStringN(str, ewram0_2.var_64.firstHallOfFameB, STR_CONV_MODE_LEADING_ZEROS, 2);
str = StringCopy(str, gUnknown_083B5EF4);
- str = ConvertIntToDecimalStringN(str, ewram0.var_64.firstHallOfFameC, STR_CONV_MODE_LEADING_ZEROS, 2);
+ str = ConvertIntToDecimalStringN(str, ewram0_2.var_64.firstHallOfFameC, STR_CONV_MODE_LEADING_ZEROS, 2);
MenuPrint_RightAligned(gStringVar1, 28, 5);
}
}
static void TrainerCard_Back_PrintLinkBattlesLabel(void)
{
- if (ewram0.var_9 != 0)
+ if (ewram0_2.var_9 != 0)
MenuPrint(gOtherText_LinkCableBattles, 3, 7);
}
@@ -1478,19 +1476,19 @@ static void TrainerCard_Back_PrintLinkBattles(void)
{
u8 buffer[16];
- if (ewram0.var_9 != 0)
+ if (ewram0_2.var_9 != 0)
{
- ConvertIntToDecimalString(buffer, ewram0.var_64.linkBattleWins);
+ ConvertIntToDecimalString(buffer, ewram0_2.var_64.linkBattleWins);
MenuPrint_RightAligned(buffer, 22, 7);
- ConvertIntToDecimalString(buffer, ewram0.var_64.linkBattleLosses);
+ ConvertIntToDecimalString(buffer, ewram0_2.var_64.linkBattleLosses);
MenuPrint_RightAligned(buffer, 28, 7);
}
}
static void TrainerCard_Back_PrintBattleTower_Label(void)
{
- if (ewram0.var_a != 0)
+ if (ewram0_2.var_a != 0)
MenuPrint(gOtherText_BattleTowerWinRecord, 3, 15);
}
@@ -1498,19 +1496,19 @@ static void TrainerCard_Back_PrintBattleTower(void)
{
u8 buffer[16];
- if (ewram0.var_a != 0)
+ if (ewram0_2.var_a != 0)
{
- sub_8072C44(buffer, ewram0.var_64.battleTowerWins, 24, 1);
+ sub_8072C44(buffer, ewram0_2.var_64.battleTowerWins, 24, 1);
MenuPrint_PixelCoords(buffer, 112, 120, 0);
- sub_8072C44(buffer, ewram0.var_64.battleTowerLosses, 24, 1);
+ sub_8072C44(buffer, ewram0_2.var_64.battleTowerLosses, 24, 1);
MenuPrint_PixelCoords(buffer, 149, 120, 0);
}
}
static void TrainerCard_Back_PrintLinkContests_Label(void)
{
- if (ewram0.var_b != 0)
+ if (ewram0_2.var_b != 0)
MenuPrint(gOtherText_ContestRecord, 3, 13);
}
@@ -1518,16 +1516,16 @@ static void TrainerCard_Back_PrintLinkContests(void)
{
u8 buffer[8];
- if (ewram0.var_b != 0)
+ if (ewram0_2.var_b != 0)
{
- ConvertIntToDecimalStringN(buffer, ewram0.var_64.contestsWithFriends, STR_CONV_MODE_RIGHT_ALIGN, 3);
+ ConvertIntToDecimalStringN(buffer, ewram0_2.var_64.contestsWithFriends, STR_CONV_MODE_RIGHT_ALIGN, 3);
MenuPrint_RightAligned(buffer, 28, 13);
}
}
static void TrainerCard_Back_PrintLinkPokeblocks_Label(void)
{
- if (ewram0.var_c != 0)
+ if (ewram0_2.var_c != 0)
MenuPrint(gOtherText_MixingRecord, 3, 11);
}
@@ -1535,16 +1533,16 @@ static void TrainerCard_Back_PrintLinkPokeblocks(void)
{
u8 buffer[8];
- if (ewram0.var_c != 0)
+ if (ewram0_2.var_c != 0)
{
- ConvertIntToDecimalStringN(buffer, ewram0.var_64.pokeblocksWithFriends, STR_CONV_MODE_RIGHT_ALIGN, 5);
+ ConvertIntToDecimalStringN(buffer, ewram0_2.var_64.pokeblocksWithFriends, STR_CONV_MODE_RIGHT_ALIGN, 5);
MenuPrint_RightAligned(buffer, 28, 11);
}
}
static void TrainerCard_Back_PrintPokemonTrades_Label(void)
{
- if (ewram0.var_d != 0)
+ if (ewram0_2.var_d != 0)
MenuPrint(gOtherText_TradeRecord, 3, 9);
}
@@ -1552,9 +1550,9 @@ static void TrainerCard_Back_PrintPokemonTrades(void)
{
u8 buffer[8];
- if (ewram0.var_d != 0)
+ if (ewram0_2.var_d != 0)
{
- ConvertIntToDecimalStringN(buffer, ewram0.var_64.pokemonTrades, STR_CONV_MODE_RIGHT_ALIGN, 5);
+ ConvertIntToDecimalStringN(buffer, ewram0_2.var_64.pokemonTrades, STR_CONV_MODE_RIGHT_ALIGN, 5);
MenuPrint_RightAligned(buffer, 28, 9);
}
}
diff --git a/src/field/battle_tower.c b/src/field/battle_tower.c
index 06d692eae..3e60d3a9a 100644
--- a/src/field/battle_tower.c
+++ b/src/field/battle_tower.c
@@ -24,6 +24,7 @@
#include "trainer.h"
#include "tv.h"
#include "vars.h"
+#include "ewram.h"
#if ENGLISH
#include "../data/battle_tower/trainers.h"
@@ -278,9 +279,6 @@ extern u8 gBattleOutcome;
extern struct Pokemon gUnknown_030042FC[];
extern struct BattlePokemon gBattleMons[];
-#define ewram160FB (ewram[0x160FB])
-
-
void sub_8134548(void)
{
u8 var1 = 0;
@@ -1370,7 +1368,7 @@ void FillBattleTowerTrainerParty(void)
}
SetMonData(&gEnemyParty[partyIndex], MON_DATA_FRIENDSHIP, &friendship);
- SetMonData(&gEnemyParty[partyIndex], MON_DATA_HELD_ITEM, (u8 *)&sBattleTowerHeldItems[battleTowerMons[battleMonIndex].heldItem]);
+ SetMonData(&gEnemyParty[partyIndex], MON_DATA_HELD_ITEM, &sBattleTowerHeldItems[battleTowerMons[battleMonIndex].heldItem]);
// The pokemon was successfully added to the trainer's party, so it's safe to move on to
// the next party slot.
@@ -1589,7 +1587,7 @@ void sub_81354CC(void)
for (i = 0; i < PARTY_SIZE; i++)
{
heldItem = GetMonData(&gSaveBlock1.playerParty[i], MON_DATA_HELD_ITEM);
- SetMonData(&gPlayerParty[i], MON_DATA_HELD_ITEM, (u8 *)&heldItem);
+ SetMonData(&gPlayerParty[i], MON_DATA_HELD_ITEM, &heldItem);
}
break;
case 2:
@@ -1633,7 +1631,7 @@ void sub_813556C(void)
for (i = 0; i < PARTY_SIZE; i++)
{
heldItem = GetMonData(&gPlayerParty[i], MON_DATA_HELD_ITEM);
- SetMonData(&gSaveBlock1.playerParty[i], MON_DATA_HELD_ITEM, (u8 *)&heldItem);
+ SetMonData(&gSaveBlock1.playerParty[i], MON_DATA_HELD_ITEM, &heldItem);
}
CreateTask(sub_8135534, 1);
@@ -2185,7 +2183,7 @@ void AwardBattleTowerRibbons(void)
if (!GetMonData(pokemon, ribbonType))
{
gScriptResult = 1;
- SetMonData(pokemon, ribbonType, (u8 *)&gScriptResult);
+ SetMonData(pokemon, ribbonType, &gScriptResult);
}
}
}
diff --git a/src/field/berry_tag_screen.c b/src/field/berry_tag_screen.c
index 1413a02ca..55405138d 100644
--- a/src/field/berry_tag_screen.c
+++ b/src/field/berry_tag_screen.c
@@ -28,7 +28,7 @@ struct Struct2000000
/*0x1FFFF*/ u8 var_1FFFF;
};
-extern struct Struct2000000 unk_2000000;
+extern struct Struct2000000 gSharedMem;
extern u16 gUnknown_030041B4;
static EWRAM_DATA u8 gUnknown_0203932C = 0;
@@ -119,13 +119,13 @@ static bool8 sub_8146058(void)
case 5:
if (!MultistepInitMenuWindowContinue())
break;
- unk_2000000.var_1FFFF = 0;
+ gSharedMem.var_1FFFF = 0;
gMain.state += 1;
break;
case 6:
if (!sub_81462B8())
break;
- unk_2000000.var_1FFFF = 0;
+ gSharedMem.var_1FFFF = 0;
gMain.state += 1;
break;
case 7:
@@ -191,19 +191,19 @@ bool8 sub_81462B8(void)
u16 i;
void *addr;
- switch (unk_2000000.var_1FFFF)
+ switch (gSharedMem.var_1FFFF)
{
case 0:
LZDecompressVram(gBerryCheck_Gfx, (void *)VRAM);
- unk_2000000.var_1FFFF += 1;
+ gSharedMem.var_1FFFF += 1;
break;
case 1:
LZDecompressVram(gUnknown_08E788E4, (void *)VRAM + 0x2800);
- unk_2000000.var_1FFFF += 1;
+ gSharedMem.var_1FFFF += 1;
break;
case 2:
LZDecompressVram(gUnknown_08E78A84, (void *)VRAM + 0x3000);
- unk_2000000.var_1FFFF += 1;
+ gSharedMem.var_1FFFF += 1;
break;
case 3:
for (i = 0; i < 0x400; i++)
@@ -215,19 +215,19 @@ bool8 sub_81462B8(void)
}
addr = (void *)(VRAM + 0x3800);
DmaCopy16(3, gBGTilemapBuffers[2], addr, 0x800);
- unk_2000000.var_1FFFF += 1;
+ gSharedMem.var_1FFFF += 1;
break;
case 4:
LoadCompressedPalette(gBerryCheck_Pal, 0, 96 * 2);
- unk_2000000.var_1FFFF += 1;
+ gSharedMem.var_1FFFF += 1;
break;
case 5:
LoadCompressedObjectPic(&gUnknown_083C1F74);
- unk_2000000.var_1FFFF += 1;
+ gSharedMem.var_1FFFF += 1;
break;
case 6:
LoadCompressedObjectPalette(&gUnknown_083C1F7C);
- unk_2000000.var_1FFFF = 0;
+ gSharedMem.var_1FFFF = 0;
return TRUE;
}
diff --git a/src/field/choose_party.c b/src/field/choose_party.c
index adb210e7b..891ee48b8 100644
--- a/src/field/choose_party.c
+++ b/src/field/choose_party.c
@@ -17,6 +17,7 @@
#include "string_util.h"
#include "task.h"
#include "text.h"
+#include "ewram.h"
extern u8 gPlayerPartyCount;
extern u8 gLastFieldPokeMenuOpened;
@@ -34,7 +35,7 @@ extern void sub_806BC3C(u8, u8);
extern void ShowPokemonSummaryScreen(struct Pokemon *, u8, u8, void (*)(void), int);
extern u8 GetMonStatusAndPokerus();
extern void PartyMenuPrintHP();
-extern bool8 sub_80F9344(void);
+extern bool8 sub_80F9344(void);
static void ClearPartySelection(void);
static bool8 IsMonAllowedInBattleTower(struct Pokemon *);
diff --git a/src/field/daycare.c b/src/field/daycare.c
index d182e121b..dd74f59e0 100644
--- a/src/field/daycare.c
+++ b/src/field/daycare.c
@@ -189,7 +189,7 @@ static u16 sub_8041570(struct DayCareData * daycare_data, u8 slot)
if (GetMonData(&pokemon, MON_DATA_LEVEL) != MAX_LEVEL)
{
experience = GetMonData(&pokemon, MON_DATA_EXP) + daycare_data->misc.countersEtc.steps[slot];
- SetMonData(&pokemon, MON_DATA_EXP, (u8 *)&experience);
+ SetMonData(&pokemon, MON_DATA_EXP, &experience);
DayCare_LevelUpMoves(&pokemon);
}
gPlayerParty[PARTY_SIZE - 1] = pokemon;
@@ -214,7 +214,7 @@ u16 sub_8041648()
u8 Daycare_GetLevelAfterSteps(struct BoxPokemon * mon, u32 steps){
struct BoxPokemon temp = *mon;
u32 new_exp = GetBoxMonData(mon, MON_DATA_EXP) + steps;
- SetBoxMonData(&temp, MON_DATA_EXP, (u8 *) &new_exp);
+ SetBoxMonData(&temp, MON_DATA_EXP, &new_exp);
return GetLevelFromBoxMonExp(&temp);
}
@@ -961,7 +961,7 @@ void sub_8042044(struct Pokemon *mon, u16 species, u8 overwriteMetLocation) // s
metLevel = 0;
ball = ITEM_POKE_BALL;
language = LANGUAGE_JAPANESE;
- SetMonData(mon, MON_DATA_POKEBALL, (u8 *)&ball);
+ SetMonData(mon, MON_DATA_POKEBALL, &ball);
SetMonData(mon, MON_DATA_NICKNAME, gUnknown_08209AD4);
SetMonData(mon, MON_DATA_FRIENDSHIP, &gBaseStats[species].eggCycles);
SetMonData(mon, MON_DATA_MET_LEVEL, &metLevel);
@@ -986,7 +986,7 @@ static void sub_80420FC(struct Pokemon *mon, u16 species, struct DayCareData *da
metLevel = 0;
ball = ITEM_POKE_BALL;
language = LANGUAGE_JAPANESE;
- SetMonData(mon, MON_DATA_POKEBALL, (u8 *)&ball);
+ SetMonData(mon, MON_DATA_POKEBALL, &ball);
SetMonData(mon, MON_DATA_NICKNAME, gUnknown_08209AD4);
SetMonData(mon, MON_DATA_FRIENDSHIP, &gBaseStats[species].eggCycles);
SetMonData(mon, MON_DATA_MET_LEVEL, &metLevel);
@@ -1031,7 +1031,7 @@ static bool8 sub_80421B0(struct DayCareData *dayCareData)
return TRUE;
}
steps--;
- SetMonData(&gPlayerParty[i], MON_DATA_FRIENDSHIP, (u8 *)&steps);
+ SetMonData(&gPlayerParty[i], MON_DATA_FRIENDSHIP, &steps);
}
}
}
diff --git a/src/field/decoration.c b/src/field/decoration.c
index e067191e9..bdeaaf91d 100644
--- a/src/field/decoration.c
+++ b/src/field/decoration.c
@@ -18,6 +18,7 @@
#include "event_data.h"
#include "field_weather.h"
#include "decoration.h"
+#include "ewram.h"
EWRAM_DATA u8 *gUnknown_020388D0 = NULL;
EWRAM_DATA u8 gUnknown_020388D4 = 0;
@@ -1494,7 +1495,7 @@ const union AnimCmd *const gSpriteAnimTable_83EC930[] = {
};
const struct SpriteFrameImage gSpriteImageTable_83EC934[] = {
- {.data = (u8 *)&gUnknown_02038900.image, .size = sizeof gUnknown_02038900.image}
+ {.data = gUnknown_02038900.image, .size = sizeof(gUnknown_02038900.image)}
};
const struct SpriteTemplate gSpriteTemplate_83EC93C = {
@@ -1555,7 +1556,7 @@ const struct SpriteTemplate gSpriteTemplate_83ECA88 = {
const struct YesNoFuncTable gUnknown_083ECAA0 = {.yesFunc = sub_8101848, .noFunc = sub_80FED3C};
-u8 *const unref_label_083ECAA8[] = {ewram};
+u8 *const unref_label_083ECAA8[] = {gSharedMem};
// text
diff --git a/src/field/decoration_inventory.c b/src/field/decoration_inventory.c
index 083cb260c..687589373 100644
--- a/src/field/decoration_inventory.c
+++ b/src/field/decoration_inventory.c
@@ -8,7 +8,7 @@
#include "decoration.h"
#include "decoration_inventory.h"
-#define DECOR_INV(ptr) {.items = (u8 *)&ptr, .size = sizeof ptr}
+#define DECOR_INV(ptr) {.items = ptr, .size = sizeof ptr}
struct DecorationInventory const gDecorationInventories[] = {
DECOR_INV(gSaveBlock1.decorDesk),
diff --git a/src/field/dewford_trend.c b/src/field/dewford_trend.c
index aaf4dd66a..102784066 100644
--- a/src/field/dewford_trend.c
+++ b/src/field/dewford_trend.c
@@ -5,8 +5,7 @@
#include "link.h"
#include "rng.h"
#include "text.h"
-
-extern u8 unk_2000000[];
+#include "ewram.h"
extern u16 gScriptResult;
extern u16 gSpecialVar_0x8004;
diff --git a/src/field/easy_chat.c b/src/field/easy_chat.c
index 2668b57dd..8e7413516 100644
--- a/src/field/easy_chat.c
+++ b/src/field/easy_chat.c
@@ -161,7 +161,7 @@ u16 unref_sub_80EB5E0(u16 arg0)
{
case EC_GROUP_POKEMON: // 0
case EC_GROUP_POKEMON_2: // 21
- chars = (u8 *) gSpeciesNames[word];
+ chars = gSpeciesNames[word];
break;
case EC_GROUP_MOVE_1: // 18
case EC_GROUP_MOVE_2: // 19
diff --git a/src/field/field_effect.c b/src/field/field_effect.c
index d86d6e5cd..bd78fb632 100644
--- a/src/field/field_effect.c
+++ b/src/field/field_effect.c
@@ -37,7 +37,7 @@ const u16 gFieldEffectObjectPalette4[16] = INCBIN_U16("graphics/field_effect_obj
const u32 gSpriteImage_839E474[] = INCBIN_U32("graphics/misc/pokecenter_monitor/0.4bpp");
const u32 gSpriteImage_839E534[] = INCBIN_U32("graphics/misc/pokecenter_monitor/1.4bpp");
const u32 gSpriteImage_839E5F4[] = INCBIN_U32("graphics/misc/big_hof_monitor.4bpp");
-const u32 gSpriteImage_839E7F4[] = INCBIN_U32("graphics/misc/small_hof_monitor.4bpp");
+const u8 gSpriteImage_839E7F4[] = INCBIN_U8("graphics/misc/small_hof_monitor.4bpp");
const u16 gFieldEffectObjectPalette5[16] = INCBIN_U16("graphics/field_effect_objects/palettes/05.gbapal");
// Graphics for the lights streaking past your Pokemon when it uses a field move.
@@ -110,7 +110,7 @@ const struct SpriteFrameImage gSpriteImageTable_839F170[] = {
};
const struct SpriteFrameImage gSpriteImageTable_839F178[] = {
- {.data = (u8 *)gSpriteImage_839E7F4, .size = 0x200} // the macro breaks down here
+ {.data = gSpriteImage_839E7F4, .size = 0x200} // the macro breaks down here
};
const struct Subsprite Unknown_39F180[] = {
diff --git a/src/field/field_ground_effect.c b/src/field/field_ground_effect.c
index 5af8ea3e3..25b678ff9 100644
--- a/src/field/field_ground_effect.c
+++ b/src/field/field_ground_effect.c
@@ -458,76 +458,52 @@ bool8 AreZCoordsCompatible(u8 a, u8 b)
void GroundEffect_SpawnOnTallGrass(struct MapObject *mapObj, struct Sprite *sprite)
{
- u8 *ptr;
-
gFieldEffectArguments[0] = mapObj->coords2.x;
gFieldEffectArguments[1] = mapObj->coords2.y;
gFieldEffectArguments[2] = mapObj->elevation;
gFieldEffectArguments[3] = 2;
- gFieldEffectArguments[4] = (mapObj->localId << 8) | mapObj->mapNum;
+ gFieldEffectArguments[4] = mapObj->localId << 8 | mapObj->mapNum;
gFieldEffectArguments[5] = mapObj->mapGroup;
-
- ptr = (u8 *)&gSaveBlock1;
- gFieldEffectArguments[6] = ((u8)gSaveBlock1.location.mapNum << 8)
- | (u8)gSaveBlock1.location.mapGroup;
-
+ gFieldEffectArguments[6] = (u8)gSaveBlock1.location.mapNum << 8 | (u8)gSaveBlock1.location.mapGroup;
gFieldEffectArguments[7] = 1;
FieldEffectStart(FLDEFF_TALL_GRASS);
}
void sub_8063E94(struct MapObject *mapObj, struct Sprite *sprite)
{
- u8 *ptr;
-
gFieldEffectArguments[0] = mapObj->coords2.x;
gFieldEffectArguments[1] = mapObj->coords2.y;
gFieldEffectArguments[2] = mapObj->elevation;
gFieldEffectArguments[3] = 2;
- gFieldEffectArguments[4] = (mapObj->localId << 8) | mapObj->mapNum;
+ gFieldEffectArguments[4] = mapObj->localId << 8 | mapObj->mapNum;
gFieldEffectArguments[5] = mapObj->mapGroup;
-
- ptr = (u8 *)&gSaveBlock1;
- gFieldEffectArguments[6] = ((u8)gSaveBlock1.location.mapNum << 8)
- | (u8)gSaveBlock1.location.mapGroup;
-
+ gFieldEffectArguments[6] = (u8)gSaveBlock1.location.mapNum << 8 | (u8)gSaveBlock1.location.mapGroup;
gFieldEffectArguments[7] = 0;
FieldEffectStart(FLDEFF_TALL_GRASS);
}
void sub_8063EE0(struct MapObject *mapObj, struct Sprite *sprite)
{
- u8 *ptr;
-
gFieldEffectArguments[0] = mapObj->coords2.x;
gFieldEffectArguments[1] = mapObj->coords2.y;
gFieldEffectArguments[2] = mapObj->elevation;
gFieldEffectArguments[3] = 2;
- gFieldEffectArguments[4] = (mapObj->localId << 8) | mapObj->mapNum;
+ gFieldEffectArguments[4] = mapObj->localId << 8 | mapObj->mapNum;
gFieldEffectArguments[5] = mapObj->mapGroup;
-
- ptr = (u8 *)&gSaveBlock1;
- gFieldEffectArguments[6] = ((u8)gSaveBlock1.location.mapNum << 8)
- | (u8)gSaveBlock1.location.mapGroup;
-
+ gFieldEffectArguments[6] = (u8)gSaveBlock1.location.mapNum << 8 | (u8)gSaveBlock1.location.mapGroup;
gFieldEffectArguments[7] = 1;
FieldEffectStart(FLDEFF_LONG_GRASS);
}
void sub_8063F2C(struct MapObject *mapObj, struct Sprite *sprite)
{
- u8 *ptr;
-
gFieldEffectArguments[0] = mapObj->coords2.x;
gFieldEffectArguments[1] = mapObj->coords2.y;
gFieldEffectArguments[2] = mapObj->elevation;
gFieldEffectArguments[3] = 2;
gFieldEffectArguments[4] = (mapObj->localId << 8) | mapObj->mapNum;
gFieldEffectArguments[5] = mapObj->mapGroup;
-
- ptr = (u8 *)&gSaveBlock1;
- gFieldEffectArguments[6] = ((u8)gSaveBlock1.location.mapNum << 8)
- | (u8)gSaveBlock1.location.mapGroup;
-
+ gFieldEffectArguments[6] = (u8)gSaveBlock1.location.mapNum << 8 | (u8)gSaveBlock1.location.mapGroup;
gFieldEffectArguments[7] = 0;
FieldEffectStart(FLDEFF_LONG_GRASS);
}
diff --git a/src/field/field_map_obj.c b/src/field/field_map_obj.c
index 094e70107..74ef3b7fe 100644
--- a/src/field/field_map_obj.c
+++ b/src/field/field_map_obj.c
@@ -2775,11 +2775,11 @@ void npc_by_local_id_and_map_set_field_1_bit_x20(u8 localId, u8 mapNum, u8 mapGr
gMapObjects[mapObjectId].mapobj_bit_13 = d;
}
-void FieldObjectGetLocalIdAndMap(struct MapObject *mapObject, u8 *localId, u8 *mapNum, u8 *mapGroup)
+void FieldObjectGetLocalIdAndMap(struct MapObject *mapObject, void *localId, void *mapNum, void *mapGroup)
{
- *localId = mapObject->localId;
- *mapNum = mapObject->mapNum;
- *mapGroup = mapObject->mapGroup;
+ *(u8 *)localId = mapObject->localId;
+ *(u8 *)mapNum = mapObject->mapNum;
+ *(u8 *)mapGroup = mapObject->mapGroup;
}
void sub_805BCC0(s16 x, s16 y)
@@ -5187,7 +5187,7 @@ void FieldObjectCB_TreeDisguise(struct Sprite *sprite)
mapObject = &gMapObjects[sprite->data0];
if (mapObject->mapobj_unk_21 == 0 || (mapObject->mapobj_unk_21 == 1 && sprite->data7 == 0))
{
- FieldObjectGetLocalIdAndMap(mapObject, (u8 *)&gFieldEffectArguments[0], (u8 *)&gFieldEffectArguments[1], (u8 *)&gFieldEffectArguments[2]);
+ FieldObjectGetLocalIdAndMap(mapObject, &gFieldEffectArguments[0], &gFieldEffectArguments[1], &gFieldEffectArguments[2]);
mapObject->mapobj_unk_1A = FieldEffectStart(FLDEFF_TREE_DISGUISE);
mapObject->mapobj_unk_21 = 1;
sprite->data7 ++;
@@ -5207,7 +5207,7 @@ void FieldObjectCB_MountainDisguise(struct Sprite *sprite)
mapObject = &gMapObjects[sprite->data0];
if (mapObject->mapobj_unk_21 == 0 || (mapObject->mapobj_unk_21 == 1 && sprite->data7 == 0))
{
- FieldObjectGetLocalIdAndMap(mapObject, (u8 *)&gFieldEffectArguments[0], (u8 *)&gFieldEffectArguments[1], (u8 *)&gFieldEffectArguments[2]);
+ FieldObjectGetLocalIdAndMap(mapObject, &gFieldEffectArguments[0], &gFieldEffectArguments[1], &gFieldEffectArguments[2]);
mapObject->mapobj_unk_1A = FieldEffectStart(FLDEFF_MOUNTAIN_DISGUISE);
mapObject->mapobj_unk_21 = 1;
sprite->data7 ++;
@@ -7371,7 +7371,7 @@ bool8 sub_8062644(struct MapObject *mapObject, struct Sprite *sprite)
bool8 do_exclamation_mark_bubble_1(struct MapObject *mapObject, struct Sprite *sprite)
{
- FieldObjectGetLocalIdAndMap(mapObject, (u8 *)&gFieldEffectArguments[0], (u8 *)&gFieldEffectArguments[1], (u8 *)&gFieldEffectArguments[2]);
+ FieldObjectGetLocalIdAndMap(mapObject, &gFieldEffectArguments[0], &gFieldEffectArguments[1], &gFieldEffectArguments[2]);
FieldEffectStart(FLDEFF_EXCLAMATION_MARK_ICON_1);
sprite->data2 = 1;
return TRUE;
@@ -7379,7 +7379,7 @@ bool8 do_exclamation_mark_bubble_1(struct MapObject *mapObject, struct Sprite *s
bool8 do_exclamation_mark_bubble_2(struct MapObject *mapObject, struct Sprite *sprite)
{
- FieldObjectGetLocalIdAndMap(mapObject, (u8 *)&gFieldEffectArguments[0], (u8 *)&gFieldEffectArguments[1], (u8 *)&gFieldEffectArguments[2]);
+ FieldObjectGetLocalIdAndMap(mapObject, &gFieldEffectArguments[0], &gFieldEffectArguments[1], &gFieldEffectArguments[2]);
FieldEffectStart(FLDEFF_EXCLAMATION_MARK_ICON_2);
sprite->data2 = 1;
return TRUE;
@@ -7387,7 +7387,7 @@ bool8 do_exclamation_mark_bubble_2(struct MapObject *mapObject, struct Sprite *s
bool8 do_heart_bubble(struct MapObject *mapObject, struct Sprite *sprite)
{
- FieldObjectGetLocalIdAndMap(mapObject, (u8 *)&gFieldEffectArguments[0], (u8 *)&gFieldEffectArguments[1], (u8 *)&gFieldEffectArguments[2]);
+ FieldObjectGetLocalIdAndMap(mapObject, &gFieldEffectArguments[0], &gFieldEffectArguments[1], &gFieldEffectArguments[2]);
FieldEffectStart(FLDEFF_HEART_ICON);
sprite->data2 = 1;
return TRUE;
diff --git a/src/field/field_map_obj_helpers.c b/src/field/field_map_obj_helpers.c
index b453d3794..59e857aae 100644
--- a/src/field/field_map_obj_helpers.c
+++ b/src/field/field_map_obj_helpers.c
@@ -294,7 +294,7 @@ void sub_8064990(u8 a1, u8 dir)
u32 oe_exec_and_other_stuff(u8 fieldEffectId, struct MapObject *mapObject)
{
- FieldObjectGetLocalIdAndMap(mapObject, (u8 *)&gFieldEffectArguments[0], (u8 *)&gFieldEffectArguments[1], (u8 *)&gFieldEffectArguments[2]);
+ FieldObjectGetLocalIdAndMap(mapObject, &gFieldEffectArguments[0], &gFieldEffectArguments[1], &gFieldEffectArguments[2]);
return FieldEffectStart(fieldEffectId);
}
diff --git a/src/field/field_poison.c b/src/field/field_poison.c
index 1244b9c62..b6ff12ff9 100644
--- a/src/field/field_poison.c
+++ b/src/field/field_poison.c
@@ -128,7 +128,7 @@ s32 DoPoisonFieldEffect(void)
hp--;
if (hp == 0)
numFainting++; //Pokemon will now faint due to poison
- SetMonData(pkmn, MON_DATA_HP, (u8 *)&hp);
+ SetMonData(pkmn, MON_DATA_HP, &hp);
numPoisoned++;
}
pkmn++;
diff --git a/src/field/field_region_map.c b/src/field/field_region_map.c
index 7cb22e5df..73e101d8f 100644
--- a/src/field/field_region_map.c
+++ b/src/field/field_region_map.c
@@ -7,6 +7,7 @@
#include "sprite.h"
#include "strings2.h"
#include "text.h"
+#include "ewram.h"
struct RegionMapStruct
{
@@ -24,14 +25,11 @@ struct UnkStruct
u16 unk888;
};
-extern u8 ewram[];
-#define unk_2000000 (*(struct UnkStruct *)(ewram))
-
void FieldInitRegionMap(MainCallback callback)
{
SetVBlankCallback(NULL);
- unk_2000000.unk888 = 0;
- unk_2000000.callback = callback;
+ ewram0_5.unk888 = 0;
+ ewram0_5.callback = callback;
SetMainCallback2(CB2_FieldInitRegionMap);
}
@@ -49,7 +47,7 @@ void CB2_FieldInitRegionMap(void)
ResetSpriteData();
FreeAllSpritePalettes();
// TODO: remove this cast
- InitRegionMap((void *)&unk_2000000.unk8, 0);
+ InitRegionMap((void *)&ewram0_5.unk8, 0);
CreateRegionMapPlayerIcon(0, 0);
CreateRegionMapCursor(1, 1);
SetUpWindowConfig(&gWindowConfig_81E709C);
@@ -82,15 +80,15 @@ void CB2_FieldRegionMap(void)
void sub_813EFDC(void)
{
- switch (unk_2000000.unk888)
+ switch (ewram0_5.unk888)
{
case 0:
REG_DISPCNT = DISPCNT_MODE_1 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG0_ON | DISPCNT_BG2_ON | DISPCNT_OBJ_ON;
- unk_2000000.unk888++;
+ ewram0_5.unk888++;
break;
case 1:
if (!gPaletteFade.active)
- unk_2000000.unk888++;
+ ewram0_5.unk888++;
break;
case 2:
switch (sub_80FAB60())
@@ -100,18 +98,18 @@ void sub_813EFDC(void)
break;
case 4:
case 5:
- unk_2000000.unk888++;
+ ewram0_5.unk888++;
}
break;
case 3:
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, 0);
- unk_2000000.unk888++;
+ ewram0_5.unk888++;
break;
case 4:
if (!gPaletteFade.active)
{
FreeRegionMapIconResources();
- SetMainCallback2(unk_2000000.callback);
+ SetMainCallback2(ewram0_5.callback);
}
break;
}
@@ -120,6 +118,6 @@ void sub_813EFDC(void)
void sub_813F0C8(void)
{
MenuFillWindowRectWithBlankTile(17, 17, 28, 18);
- if (unk_2000000.unk8.unk16)
- MenuPrint(unk_2000000.unk8.str, 17, 17);
+ if (ewram0_5.unk8.unk16)
+ MenuPrint(ewram0_5.unk8.str, 17, 17);
}
diff --git a/src/field/field_specials.c b/src/field/field_specials.c
index d67cbe54f..46061febf 100644
--- a/src/field/field_specials.c
+++ b/src/field/field_specials.c
@@ -1905,13 +1905,13 @@ void PutZigzagoonInPlayerParty(void)
u16 monData;
CreateMon(&gPlayerParty[0], SPECIES_ZIGZAGOON, 7, 0x20, FALSE, 0, FALSE, 0);
monData = TRUE;
- SetMonData(&gPlayerParty[0], MON_DATA_ALT_ABILITY, (u8 *)&monData);
+ SetMonData(&gPlayerParty[0], MON_DATA_ALT_ABILITY, &monData);
monData = MOVE_TACKLE;
- SetMonData(&gPlayerParty[0], MON_DATA_MOVE1, (u8 *)&monData);
+ SetMonData(&gPlayerParty[0], MON_DATA_MOVE1, &monData);
monData = MOVE_NONE;
- SetMonData(&gPlayerParty[0], MON_DATA_MOVE2, (u8 *)&monData);
- SetMonData(&gPlayerParty[0], MON_DATA_MOVE3, (u8 *)&monData);
- SetMonData(&gPlayerParty[0], MON_DATA_MOVE4, (u8 *)&monData);
+ SetMonData(&gPlayerParty[0], MON_DATA_MOVE2, &monData);
+ SetMonData(&gPlayerParty[0], MON_DATA_MOVE3, &monData);
+ SetMonData(&gPlayerParty[0], MON_DATA_MOVE4, &monData);
}
bool8 IsStarterInParty(void)
diff --git a/src/field/field_tasks.c b/src/field/field_tasks.c
index da6f162c2..767753da2 100644
--- a/src/field/field_tasks.c
+++ b/src/field/field_tasks.c
@@ -1,7 +1,3 @@
-//
-
-//
-
#include "global.h"
#include "task.h"
#include "main.h"
diff --git a/src/field/field_weather.c b/src/field/field_weather.c
index 443a38357..042655644 100644
--- a/src/field/field_weather.c
+++ b/src/field/field_weather.c
@@ -1,14 +1,42 @@
#include "global.h"
+#include "blend_palette.h"
+#include "field_map_obj.h"
#include "field_weather.h"
#include "palette.h"
+#include "rng.h"
+#include "script.h"
+#include "songs.h"
+#include "sound.h"
#include "sprite.h"
#include "task.h"
+#include "trig.h"
+#include "ewram.h"
+
+#define MACRO1(a) ((((a) >> 1) & 0xF) | (((a) >> 2) & 0xF0) | (((a) >> 3) & 0xF00))
+
+struct RGBColor
+{
+ u16 r:5;
+ u16 g:5;
+ u16 b:5;
+};
+
+struct WeatherPaletteData
+{
+ u16 data[0][0x1000]; // unknown length
+};
struct Weather
{
- u8 filler_000[0x200];
+ struct Sprite *unknown_0[24];
+ struct Sprite *unknown_60[0x65]; // snowflakes?
+ struct Sprite *unknown_1F4[3];
u8 unknown_200[2][32];
- u8 filler_240[0x480];
+ u8 filler_240[0x460-0x240];
+ u8 unk460[2][32];
+ u8 filler4A0[0x6B6-0x4A0];
+ s8 unknown_6B6;
+ u8 filler_6B7[0xC0-0xB7];
s8 unknown_6C0;
s8 unknown_6C1;
u8 unknown_6C2;
@@ -20,23 +48,37 @@ struct Weather
u8 unknown_6C9;
u8 unknown_6CA;
u8 unknown_6CB;
- u8 filler_6CC[2];
+ u16 unknown_6CC;
u16 unknown_6CE;
u8 unknown_6D0;
u8 unknown_6D1;
- u8 filler_6D2[1];
+ u8 unknown_6D2;
u8 unknown_6D3;
u8 unknown_6D4;
u8 unknown_6D5;
- u8 filler_6D6[2];
+ u16 unknown_6D6;
u8 unknown_6D8;
- u8 filler_6D9[1];
+ u8 unknown_6D9;
u8 unknown_6DA;
- u8 filler_6DB[3];
+ u8 unknown_6DB;
+ u8 unknown_6DC;
+ u8 unknown_6DD;
u8 unknown_6DE;
- u8 filler_6DF[5];
+ u8 filler_6DF[1];
+ u16 unknown_6E0;
+ u16 unknown_6E2;
u8 unknown_6E4;
- u8 filler_6E5[0x15];
+ u8 unknown_6E5;
+ u16 unknown_6E6;
+ u16 unknown_6E8;
+ u8 unknown_6EA;
+ u8 unknown_6EB;
+ u8 unknown_6EC;
+ u8 unknown_6ED;
+ u16 unknown_6EE;
+ u16 unknown_6F0;
+ u16 unknown_6F2;
+ u8 unknown_6F4[6];
u8 unknown_6FA;
u8 unknown_6FB;
u8 filler_6FC[4];
@@ -48,18 +90,66 @@ struct Weather
u8 unknown_724;
u8 filler_725[9];
u8 unknown_72E;
+ u8 filler_72F;
+ u16 unknown_730;
+ u16 unknown_732;
+ u16 unknown_734;
+ u16 unknown_736;
+ u8 unknown_738;
+ u8 unknown_739;
+ u8 unknown_73A;
+ u8 filler_73B[0x3C-0x3B];
+ s16 unknown_73C;
+ s16 unknown_73E;
+ s16 unknown_740;
+ s16 unknown_742;
+ u8 filler_744[0xD-4];
+ s8 unknown_74D;
+ u8 unknown_74E;
};
#define gWeather gUnknown_0202F7E8
-extern struct Weather gWeather;
+extern struct Weather gUnknown_0202F7E8;
+extern u8 gUnknown_0202FF38[];
+extern u16 gUnknown_0202FF58;
extern u8 *gUnknown_083970E8;
extern u8 (*gUnknown_08396FC8[][4])(void);
extern u8 (*gUnknown_083970B8[])(void);
-IWRAM_DATA u8 *gUnknown_030006DC;
-extern u8 gUnknown_083970C8;
+IWRAM_DATA const u8 *gUnknown_030006DC;
+extern const u8 gUnknown_083970C8[];
+
+// This is a pointer to gWeather. All code sub_807DE78 and below uses this pointer,
+// while everything above accesses gWeather directly.
+extern struct Weather *const gUnknown_08396FC4;
+
+extern const struct SpriteSheet gUnknown_0839A9D4;
+extern const struct SpriteTemplate gSpriteTemplate_839A9F0;
+extern const u16 gUnknown_08397108[];
+//extern const s16 gUnknown_0839A9C8[][2];
+extern const struct Coords16 gUnknown_0839A9C8[];
+extern const struct SpriteSheet gUnknown_0839AACC;
+extern const struct SpriteTemplate gSpriteTemplate_839AAA4;
+extern const struct SpriteTemplate gSpriteTemplate_839AB04;
+
+const u8 DroughtPaletteData_0[] = INCBIN_U8("graphics/weather/drought0.bin.lz");
+const u8 DroughtPaletteData_1[] = INCBIN_U8("graphics/weather/drought1.bin.lz");
+const u8 DroughtPaletteData_2[] = INCBIN_U8("graphics/weather/drought2.bin.lz");
+const u8 DroughtPaletteData_3[] = INCBIN_U8("graphics/weather/drought3.bin.lz");
+const u8 DroughtPaletteData_4[] = INCBIN_U8("graphics/weather/drought4.bin.lz");
+const u8 DroughtPaletteData_5[] = INCBIN_U8("graphics/weather/drought5.bin.lz");
extern u8 (*gUnknown_0202FC48)[32];
extern u8 gUnknown_0202F9E8[32];
+const u8 *const gUnknown_08396FA8[] =
+{
+ DroughtPaletteData_0,
+ DroughtPaletteData_1,
+ DroughtPaletteData_2,
+ DroughtPaletteData_3,
+ DroughtPaletteData_4,
+ DroughtPaletteData_5,
+ gSharedMem,
+};
void sub_807C828(void)
{
@@ -87,7 +177,7 @@ void sub_807C828(void)
gWeather.unknown_6C6 = 3;
gWeather.unknown_6C8 = 0;
gWeather.unknown_6D3 = 1;
- gWeather.unknown_6C9 = CreateTask(&sub_807C9E4, 80);
+ gWeather.unknown_6C9 = CreateTask(sub_807C9E4, 80);
}
}
@@ -121,12 +211,12 @@ void sub_807C9B4(u8 effect)
gWeather.unknown_6C8 = 1;
}
-void sub_807C9E4(u8 task)
+void sub_807C9E4(u8 taskId)
{
if (gWeather.unknown_6C8)
{
gUnknown_08396FC8[gWeather.unknown_6D0][2]();
- gTasks[task].func = &sub_807CA34;
+ gTasks[taskId].func = sub_807CA34;
}
}
@@ -170,7 +260,7 @@ u32 sub_807CB0C(void)
void sub_807CB10(void)
{
u16 v0;
- u8(*v1)[32];
+ u8 (*v1)[32];
u16 v2;
u16 v4;
u16 v5;
@@ -180,30 +270,22 @@ void sub_807CB10(void)
u16 v11;
s16 dunno;
- gUnknown_030006DC = &gUnknown_083970C8;
+ gUnknown_030006DC = gUnknown_083970C8;
for (v0 = 0; v0 <= 1; v0++)
{
if (v0 == 0)
- {
- v1 = &gUnknown_0202F9E8;
- }
+ v1 = gWeather.unknown_200;
else
- {
- v1 = &gUnknown_0202F9E8 + 19;
- }
+ v1 = gWeather.unk460;
+
for (v2 = 0; (u16)v2 <= 0x1f; v2++)
{
v4 = v2 << 8;
if (v0 == 0)
- {
v5 = (v2 << 8) / 16;
- }
else
- {
v5 = 0;
- }
- v6 = 0;
- for (; v6 <= 2; v6++)
+ for (v6 = 0; v6 <= 2; v6++)
{
v4 = (v4 - v5);
v1[v6][v2] = v4 >> 8;
@@ -260,13 +342,9 @@ void sub_807CC24(void)
{
gWeather.unknown_6C3 = 0;
if (gWeather.unknown_6C0 < gWeather.unknown_6C1)
- {
gWeather.unknown_6C0++;
- }
else
- {
gWeather.unknown_6C0--;
- }
sub_807CEBC(0, 0x20, gWeather.unknown_6C0);
}
}
@@ -275,9 +353,7 @@ void sub_807CC24(void)
void sub_807CCAC(void)
{
if (++gWeather.unknown_6CB > 1)
- {
gWeather.unknown_6CA = 0;
- }
switch (gWeather.unknown_6D0)
{
case 3:
@@ -322,9 +398,7 @@ void sub_807CCAC(void)
u8 sub_807CDC4(void)
{
if (gWeather.unknown_6C7 == 0x10)
- {
return 0;
- }
if (++gWeather.unknown_6C7 >= 0x10)
{
sub_807CEBC(0, 0x20, 3);
@@ -338,9 +412,7 @@ u8 sub_807CDC4(void)
u8 sub_807CE24(void)
{
if (gWeather.unknown_6C7 == 0x10)
- {
return 0;
- }
if (++gWeather.unknown_6C7 >= 0x10)
{
sub_807CEBC(0, 0x20, -6);
@@ -354,9 +426,7 @@ u8 sub_807CE24(void)
u8 sub_807CE7C(void)
{
if (gWeather.unknown_6C7 == 0x10)
- {
return 0;
- }
++gWeather.unknown_6C7;
sub_807D424(0x10 - gWeather.unknown_6C7, gWeather.unknown_6C4);
return 1;
@@ -365,3 +435,1710 @@ u8 sub_807CE7C(void)
void nullsub_39(void)
{
}
+
+void sub_807CEBC(u8 a, u8 b, s8 c)
+{
+ u16 r4;
+ u16 palOffset;
+ u8 *r6;
+ u16 i;
+
+ if (c > 0)
+ {
+ c = c - 1;
+ palOffset = a * 16;
+ b += a;
+ r4 = a;
+ while (r4 < b)
+ {
+ if (gUnknown_030006DC[r4] == 0)
+ {
+ CpuFastCopy(gPlttBufferUnfaded + palOffset, gPlttBufferFaded + palOffset, 16 * sizeof(u16));
+ palOffset += 16;
+ }
+ else
+ {
+ u8 r, g, b;
+
+ if (gUnknown_030006DC[r4] == 2 || r4 - 16 == gWeather.unknown_6D5)
+ r6 = gWeather.unk460[c];
+ else
+ r6 = gWeather.unknown_200[c];
+ if (r4 == 16 || r4 > 0x1B)
+ {
+ for (i = 0; i < 16; i++)
+ {
+ if (gPlttBufferUnfaded[palOffset] == 0x2D9F)
+ {
+ palOffset++;
+ }
+ else
+ {
+ struct RGBColor color = *(struct RGBColor *)&gPlttBufferUnfaded[palOffset];
+
+ r = r6[color.r];
+ g = r6[color.g];
+ b = r6[color.b];
+ gPlttBufferFaded[palOffset++] = (b << 10) | (g << 5) | r;
+ }
+ }
+ }
+ else
+ {
+ for (i = 0; i < 16; i++)
+ {
+ struct RGBColor color = *(struct RGBColor *)&gPlttBufferUnfaded[palOffset];
+
+ r = r6[color.r];
+ g = r6[color.g];
+ b = r6[color.b];
+ gPlttBufferFaded[palOffset++] = (b << 10) | (g << 5) | r;
+ }
+ }
+ }
+ r4++;
+ }
+ }
+ else if (c < 0)
+ {
+ c = -c - 1;
+ palOffset = a * 16;
+ b += a;
+ r4 = a;
+ while (r4 < b)
+ {
+ if (gUnknown_030006DC[r4] == 0)
+ {
+ CpuFastCopy(gPlttBufferUnfaded + palOffset, gPlttBufferFaded + palOffset, 16 * sizeof(u16));
+ palOffset += 16;
+ }
+ else
+ {
+ if (r4 == 16 || r4 > 0x1B)
+ {
+ for (i = 0; i < 16; i++)
+ {
+ if (gPlttBufferUnfaded[palOffset] != 0x2D9F)
+ gPlttBufferFaded[palOffset] = eWeatherPaletteData.data[c][MACRO1(gPlttBufferUnfaded[palOffset])];
+ palOffset++;
+ }
+ }
+ else
+ {
+ for (i = 0; i < 16; i++)
+ {
+ gPlttBufferFaded[palOffset] = eWeatherPaletteData.data[c][MACRO1(gPlttBufferUnfaded[palOffset])];
+ palOffset++;
+ }
+ }
+ }
+ r4++;
+ }
+ }
+ else
+ {
+ CpuFastCopy(gPlttBufferUnfaded + a * 16, gPlttBufferFaded + a * 16, b * 16 * sizeof(u16));
+ }
+}
+
+void sub_807D1BC(u8 a1, u8 a2, s8 c, u8 d, u16 e)
+{
+ u16 palOffset;
+ u16 r4;
+ u16 i;
+ struct RGBColor color = *(struct RGBColor *)&e;
+ u8 r_ = color.r;
+ u8 g_ = color.g;
+ u8 b_ = color.b;
+
+ palOffset = a1 * 16;
+ a2 += a1;
+ c = c - 1;
+ r4 = a1;
+ while (r4 < a2)
+ {
+ if (gUnknown_030006DC[r4] == 0)
+ {
+ BlendPalette(palOffset, 16, d, e);
+ palOffset += 16;
+ }
+ else
+ {
+ u8 *r5;
+
+ if (gUnknown_030006DC[r4] == 1)
+ r5 = gWeather.unknown_200[c];
+ else
+ r5 = gWeather.unk460[c];
+
+ for (i = 0; i < 16; i++)
+ {
+ struct RGBColor color = *(struct RGBColor *)&gPlttBufferUnfaded[palOffset];
+ u8 r = r5[color.r];
+ u8 g = r5[color.g];
+ u8 b = r5[color.b];
+
+ r += ((r_ - r) * d) >> 4;
+ g += ((g_ - g) * d) >> 4;
+ b += ((b_ - b) * d) >> 4;
+ gPlttBufferFaded[palOffset++] = (b << 10) | (g << 5) | r;
+ }
+ }
+ r4++;
+ }
+}
+
+void sub_807D304(s8 a, u8 arg2, u16 c)
+{
+ struct RGBColor color;
+ u8 r_;
+ u8 g_;
+ u8 b_;
+ u16 r4;
+ u16 r5;
+ u16 r12;
+
+ a = -a - 1;
+ color = *(struct RGBColor *)&c;
+ r_ = color.r;
+ g_ = color.g;
+ b_ = color.b;
+ r5 = 0;
+ for (r4 = 0; r4 < 32; r4++)
+ {
+ if (gUnknown_030006DC[r4] == 0)
+ {
+ BlendPalette(r5, 16, arg2, c);
+ r5 += 16;
+ }
+ else
+ {
+ for (r12 = 0; r12 < 16; r12++)
+ {
+ u32 offset;
+ struct RGBColor color1;
+ struct RGBColor color2;
+ u8 r1, g1, b1;
+ u8 r2, g2, b2;
+
+ color1 = *(struct RGBColor *)&gPlttBufferUnfaded[r5];
+ r1 = color1.r;
+ g1 = color1.g;
+ b1 = color1.b;
+
+ offset = ((b1 & 0x1E) << 7) | ((g1 & 0x1E) << 3) | ((r1 & 0x1E) >> 1);
+ color2 = *(struct RGBColor *)&eWeatherPaletteData.data[a][offset];
+ r2 = color2.r;
+ g2 = color2.g;
+ b2 = color2.b;
+
+ r2 += ((r_ - r2) * arg2) >> 4;
+ g2 += ((g_ - g2) * arg2) >> 4;
+ b2 += ((b_ - b2) * arg2) >> 4;
+
+ gPlttBufferFaded[r5++] = (b2 << 10) | (g2 << 5) | r2;
+ }
+ }
+ }
+}
+
+bool8 sub_807D574(u8);
+
+void sub_807D424(u8 a, u16 b)
+{
+ struct RGBColor color;
+ u8 r_;
+ u8 g_;
+ u8 b_;
+ u16 r4;
+
+ BlendPalette(0, 0x100, a, b);
+ color = *(struct RGBColor *)&b;
+ r_ = color.r;
+ g_ = color.g;
+ b_ = color.b;
+
+ r4 = 16;
+ while (r4 < 32)
+ {
+ if (sub_807D574(r4))
+ {
+ u16 r12 = (r4 + 1) * 16;
+ u16 r6 = r4 * 16;
+
+ while (r6 < r12)
+ {
+ struct RGBColor color = *(struct RGBColor *)&gPlttBufferUnfaded[r6];
+ u8 r = color.r;
+ u8 g = color.g;
+ u8 b = color.b;
+
+ r += ((28 - r) * 3) >> 2;
+ g += ((31 - g) * 3) >> 2;
+ b += ((28 - b) * 3) >> 2;
+
+ r += ((r_ - r) * a) >> 4;
+ g += ((g_ - g) * a) >> 4;
+ b += ((b_ - b) * a) >> 4;
+
+ gPlttBufferFaded[r6] = (b << 10) | (g << 5) | r;
+ r6++;
+ }
+ }
+ else
+ {
+ BlendPalette(r4 * 16, 16, a, b);
+ }
+ r4++;
+ }
+}
+
+void sub_807D540(u8 a)
+{
+ if (gWeather.unknown_6FA < 6)
+ {
+ gWeather.unknown_6F4[gWeather.unknown_6FA] = a;
+ gWeather.unknown_6FA++;
+ }
+}
+
+bool8 sub_807D574(u8 a)
+{
+ u16 i;
+
+ for (i = 0; i < gWeather.unknown_6FA; i++)
+ {
+ if (gWeather.unknown_6F4[i] == a)
+ return TRUE;
+ }
+ return FALSE;
+}
+
+void sub_807D5BC(s8 a)
+{
+ if (gWeather.unknown_6C6 == 3)
+ {
+ sub_807CEBC(0, 32, a);
+ gWeather.unknown_6C0 = a;
+ }
+}
+
+void sub_807D5F0(u8 a, u8 b, u8 c)
+{
+ if (gWeather.unknown_6C6 == 3)
+ {
+ gWeather.unknown_6C6 = 0;
+ gWeather.unknown_6C0 = a;
+ gWeather.unknown_6C1 = b;
+ gWeather.unknown_6C3 = 0;
+ gWeather.unknown_6C2 = c;
+ sub_807D5BC(a);
+ }
+}
+
+void fade_screen(u8 a, u8 b)
+{
+ u32 r4;
+ u32 r1;
+ u32 r2;
+
+ switch (a)
+ {
+ case 0:
+ r4 = 0;
+ r1 = 0;
+ break;
+ case 2:
+ r4 = 0xFFFF;
+ r1 = 0;
+ break;
+ case 1:
+ r4 = 0;
+ r1 = 1;
+ break;
+ case 3:
+ r4 = 0xFFFF;
+ r1 = 1;
+ break;
+ default:
+ return;
+ }
+
+ switch (gWeather.unknown_6D0)
+ {
+ case 3:
+ case 4:
+ case 5:
+ case 6:
+ case 11:
+ case 12:
+ case 13:
+ r2 = 1;
+ break;
+ default:
+ r2 = 0;
+ break;
+ }
+
+ if (r1 != 0)
+ {
+ if (r2 != 0)
+ CpuFastCopy(gPlttBufferFaded, gPlttBufferUnfaded, 0x400);
+ BeginNormalPaletteFade(0xFFFFFFFF, b, 0, 16, r4);
+ gWeather.unknown_6C6 = 2;
+ }
+ else
+ {
+ gWeather.unknown_6C4 = r4;
+ if (r2 != 0)
+ gWeather.unknown_6C7 = 0;
+ else
+ BeginNormalPaletteFade(0xFFFFFFFF, b, 16, 0, r4);
+ gWeather.unknown_6C6 = 1;
+ gWeather.unknown_6CA = 1;
+ gWeather.unknown_6CB = 0;
+ sub_807DB64(gWeather.unknown_730, gWeather.unknown_732);
+ gWeather.unknown_6C8 = 1;
+ }
+}
+
+bool8 sub_807D770(void)
+{
+ return gWeather.unknown_6C6 ^ 1 ? TRUE : FALSE;
+}
+
+void sub_807D78C(u8 a)
+{
+ u16 r4 = 16 + a;
+ u16 i;
+
+ switch (gWeather.unknown_6C6)
+ {
+ case 1:
+ if (gWeather.unknown_6CA != 0)
+ {
+ if (gWeather.unknown_6D0 == 6)
+ sub_807D540(r4);
+ r4 *= 16;
+ for (i = 0; i < 16; i++)
+ gPlttBufferFaded[r4 + i] = gWeather.unknown_6C4;
+ }
+ break;
+ case 2:
+ r4 *= 16;
+ CpuFastCopy(gPlttBufferFaded + r4, gPlttBufferUnfaded + r4, 32);
+ BlendPalette(r4, 16, gPaletteFade.y, gPaletteFade.blendColor);
+ break;
+ default:
+ if (gWeather.unknown_6D0 != 6)
+ {
+ sub_807CEBC(r4, 1, gWeather.unknown_6C0);
+ }
+ else
+ {
+ r4 *= 16;
+ BlendPalette(r4, 16, 12, 0x73FC);
+ }
+ break;
+ }
+}
+
+void sub_807D874(u8 a)
+{
+ sub_807CEBC(a, 1, gWeather.unknown_6C0);
+}
+
+u8 unref_sub_807D894(void)
+{
+ if (gWeather.unknown_6C6 == 1)
+ return gWeather.unknown_6CA;
+ else
+ return 0;
+}
+
+void sub_807D8C0(const u16 *palette)
+{
+ LoadPalette(palette, 0x100 + gWeather.unknown_6D4 * 16, 32);
+ sub_807D78C(gWeather.unknown_6D4);
+}
+
+void sub_807D8F0(u8 *a, u8 *b)
+{
+ u8 r4 = *a;
+ u16 i;
+
+ if (r4 < 7)
+ {
+ r4--;
+ LZ77UnCompWram(gUnknown_08396FA8[r4], eWeatherPaletteData.data[r4]);
+ if (r4 == 0)
+ {
+ eWeatherPaletteData.data[r4][0] = 0x421;
+ for (i = 1; i < 0x1000; i++)
+ eWeatherPaletteData.data[r4][i] += eWeatherPaletteData.data[r4][i - 1];
+ }
+ else
+ {
+ for (i = 0; i < 0x1000; i++)
+ eWeatherPaletteData.data[r4][i] += eWeatherPaletteData.data[r4 - 1][i];
+ }
+ (*a)++;
+ if (*a == 7)
+ {
+ *a = 32;
+ *b = 32;
+ }
+ }
+}
+
+void sub_807D9A8(void)
+{
+ gWeather.unknown_74D = 1;
+ gWeather.unknown_74E = 1;
+}
+
+bool8 sub_807D9C8(void)
+{
+ if (gWeather.unknown_74D < 32)
+ {
+ sub_807D8F0(&gWeather.unknown_74D, &gWeather.unknown_74E);
+ if (gWeather.unknown_74D < 32)
+ return TRUE;
+ }
+ return FALSE;
+}
+
+void sub_807DA04(s8 a)
+{
+ sub_807D5BC(-a - 1);
+}
+
+void sub_807DA14(void)
+{
+ gWeather.unknown_73C = 0;
+ gWeather.unknown_740 = 0;
+ gWeather.unknown_742 = 0;
+ gWeather.unknown_73E = 0;
+ gUnknown_0202FF58 = 5;
+}
+
+void sub_807DA4C(void)
+{
+ switch (gWeather.unknown_742)
+ {
+ case 0:
+ if (++gWeather.unknown_740 > gUnknown_0202FF58)
+ {
+ gWeather.unknown_740 = 0;
+ sub_807DA04(gWeather.unknown_73C++);
+ if (gWeather.unknown_73C > 5)
+ {
+ gWeather.unknown_73E = gWeather.unknown_73C;
+ gWeather.unknown_742 = 1;
+ gWeather.unknown_740 = 0x3C;
+ }
+ }
+ break;
+ case 1:
+ gWeather.unknown_740 = (gWeather.unknown_740 + 3) & 0x7F;
+ gWeather.unknown_73C = ((gSineTable[gWeather.unknown_740] - 1) >> 6) + 2;
+ if (gWeather.unknown_73C != gWeather.unknown_73E)
+ sub_807DA04(gWeather.unknown_73C);
+ gWeather.unknown_73E = gWeather.unknown_73C;
+ break;
+ case 2:
+ if (++gWeather.unknown_740 > gUnknown_0202FF58)
+ {
+ gWeather.unknown_740 = 0;
+ sub_807DA04(--gWeather.unknown_73C);
+ if (gWeather.unknown_73C == 3)
+ gWeather.unknown_742 = 0;
+ }
+ break;
+ }
+}
+
+void sub_807DB64(u8 a, u8 b)
+{
+ gWeather.unknown_730 = a;
+ gWeather.unknown_732 = b;
+ gWeather.unknown_734 = a;
+ gWeather.unknown_736 = b;
+ REG_BLDALPHA = (b << 8) | a;
+}
+
+void sub_807DBA4(u8 a, u8 b, int c)
+{
+ gWeather.unknown_734 = a;
+ gWeather.unknown_736 = b;
+ gWeather.unknown_73A = c;
+ gWeather.unknown_739 = 0;
+ gWeather.unknown_738 = 0;
+}
+
+bool8 sub_807DBE8(void)
+{
+ if (gWeather.unknown_730 == gWeather.unknown_734
+ && gWeather.unknown_732 == gWeather.unknown_736)
+ return TRUE;
+ if (++gWeather.unknown_739 > gWeather.unknown_73A)
+ {
+ gWeather.unknown_739 = 0;
+ gWeather.unknown_738++;
+ if (gWeather.unknown_738 & 1)
+ {
+ if (gWeather.unknown_730 < gWeather.unknown_734)
+ gWeather.unknown_730++;
+ else if (gWeather.unknown_730 > gWeather.unknown_734)
+ gWeather.unknown_730--;
+ }
+ else
+ {
+ if (gWeather.unknown_732 < gWeather.unknown_736)
+ gWeather.unknown_732++;
+ else if (gWeather.unknown_732 > gWeather.unknown_736)
+ gWeather.unknown_732--;
+ }
+ }
+ REG_BLDALPHA = (gWeather.unknown_732 << 8) | gWeather.unknown_730;
+ if (gWeather.unknown_730 == gWeather.unknown_734
+ && gWeather.unknown_732 == gWeather.unknown_736)
+ return TRUE;
+ return FALSE;
+}
+
+void unref_sub_807DCB4(u8 a)
+{
+ switch (a)
+ {
+ case 1:
+ SetWeather(1);
+ break;
+ case 2:
+ SetWeather(2);
+ break;
+ case 3:
+ SetWeather(3);
+ break;
+ case 4:
+ SetWeather(4);
+ break;
+ case 5:
+ SetWeather(5);
+ break;
+ case 6:
+ SetWeather(6);
+ break;
+ case 7:
+ SetWeather(9);
+ break;
+ case 8:
+ SetWeather(7);
+ break;
+ case 9:
+ SetWeather(8);
+ break;
+ case 10:
+ SetWeather(11);
+ break;
+ }
+}
+
+u8 weather_get_current(void)
+{
+ return gWeather.unknown_6D0;
+}
+
+void sub_807DD5C(u16 sndEff)
+{
+ if (gUnknown_0202F7E8.unknown_6C6 != 2)
+ {
+ switch (sndEff)
+ {
+ case SE_T_KOAME:
+ gUnknown_0202F7E8.unknown_6DD = 0;
+ break;
+ case SE_T_OOAME:
+ gUnknown_0202F7E8.unknown_6DD = 1;
+ break;
+ case SE_T_AME:
+ gUnknown_0202F7E8.unknown_6DD = 2;
+ break;
+ default:
+ return;
+ }
+ PlaySE(sndEff);
+ }
+}
+
+void PlayRainSoundEffect(void)
+{
+ if (IsSpecialSEPlaying())
+ {
+ switch (gUnknown_0202F7E8.unknown_6DD)
+ {
+ case 0:
+ PlaySE(0x56);
+ break;
+ case 1:
+ PlaySE(0x54);
+ break;
+ case 2:
+ default:
+ PlaySE(0x52);
+ break;
+ }
+ }
+}
+
+u8 sub_807DDFC(void)
+{
+ return gUnknown_0202F7E8.unknown_6D3;
+}
+
+void sub_807DE10(void)
+{
+ gUnknown_0202F7E8.unknown_6C6 = 2;
+}
+
+void unref_sub_807DE24(void)
+{
+ gUnknown_0202F7E8.unknown_6C6 = 3;
+}
+
+void sub_807DE38(u8 a)
+{
+ CpuCopy16(gUnknown_083970C8, gUnknown_0202FF38, 32);
+ gUnknown_0202FF38[a] = 0;
+ gUnknown_030006DC = gUnknown_0202FF38;
+}
+
+void sub_807DE68(void)
+{
+ gUnknown_030006DC = gUnknown_083970C8;
+}
+
+void sub_807DE78(void)
+{
+ gUnknown_08396FC4->unknown_6C1 = 0;
+ gUnknown_08396FC4->unknown_6C2 = 20;
+ gUnknown_08396FC4->unknown_6D2 = 0;
+ gUnknown_08396FC4->unknown_6CC = 0;
+ if (gUnknown_08396FC4->unknown_6DE == 0)
+ sub_807DB64(0, 16);
+}
+
+void sub_807DEF4(void);
+
+void sub_807DEC4(void)
+{
+ sub_807DE78();
+ while (gUnknown_08396FC4->unknown_6D2 == 0)
+ sub_807DEF4();
+}
+
+void sub_807DFD4(void);
+
+void sub_807DEF4(void)
+{
+ switch (gUnknown_08396FC4->unknown_6CC)
+ {
+ case 0:
+ sub_807DFD4();
+ gUnknown_08396FC4->unknown_6CC++;
+ break;
+ case 1:
+ sub_807DBA4(12, 8, 1);
+ gUnknown_08396FC4->unknown_6CC++;
+ break;
+ case 2:
+ if (sub_807DBE8())
+ {
+ gUnknown_08396FC4->unknown_6D2 = 1;
+ gUnknown_08396FC4->unknown_6CC++;
+ }
+ break;
+ }
+}
+
+void sub_807E0A0(void);
+
+bool8 sub_807DF54(void)
+{
+ switch (gUnknown_08396FC4->unknown_6CE)
+ {
+ case 0:
+ sub_807DBA4(0, 16, 1);
+ gUnknown_08396FC4->unknown_6CE++;
+ return TRUE;
+ case 1:
+ if (sub_807DBE8())
+ {
+ sub_807E0A0();
+ gUnknown_08396FC4->unknown_6CE++;
+ }
+ return TRUE;
+ }
+ return FALSE;
+}
+
+void sub_807DF9C(void)
+{
+ gUnknown_08396FC4->unknown_6C1 = 0;
+ gUnknown_08396FC4->unknown_6C2 = 20;
+}
+
+void sub_807DFC0(void)
+{
+ sub_807DF9C();
+}
+
+void nullsub_55(void)
+{
+}
+
+int sub_807DFD0(void)
+{
+ return 0;
+}
+
+void sub_807DFD4(void)
+{
+ u16 i;
+
+ if (gUnknown_08396FC4->unknown_6DE == 1)
+ return;
+ LoadSpriteSheet(&gUnknown_0839A9D4);
+ sub_807D8C0(gUnknown_08397108);
+ for (i = 0; i < 3; i++)
+ {
+ u8 spriteId = CreateSprite(&gSpriteTemplate_839A9F0, 0, 0, 0xFF);
+
+ if (spriteId != 64)
+ {
+ struct Sprite *sprite;
+
+ gUnknown_08396FC4->unknown_1F4[i] = &gSprites[spriteId];
+ sprite = gUnknown_08396FC4->unknown_1F4[i];
+ sub_80603CC(gUnknown_0839A9C8[i].x + 7, gUnknown_0839A9C8[i].y + 7, &sprite->pos1.x, &sprite->pos1.y);
+ sprite->coordOffsetEnabled = TRUE;
+ }
+ else
+ {
+ gUnknown_08396FC4->unknown_1F4[i] = NULL;
+ }
+ }
+ gUnknown_08396FC4->unknown_6DE = 1;
+}
+
+void sub_807E0A0(void)
+{
+ u16 i;
+
+ if (gUnknown_08396FC4->unknown_6DE == 0)
+ return;
+ for (i = 0; i < 3; i++)
+ {
+ if (gUnknown_08396FC4->unknown_1F4[i] != NULL)
+ DestroySprite(gUnknown_08396FC4->unknown_1F4[i]);
+ }
+ FreeSpriteTilesByTag(0x1200);
+ gUnknown_08396FC4->unknown_6DE = 0;
+}
+
+void sub_807E0F4(struct Sprite *sprite)
+{
+ sprite->data0 = (sprite->data0 + 1) & 1;
+ if (sprite->data0 != 0)
+ sprite->pos1.x--;
+}
+
+void sub_807E110(void)
+{
+ gUnknown_08396FC4->unknown_6CC = 0;
+ gUnknown_08396FC4->unknown_6D2 = 0;
+ gUnknown_08396FC4->unknown_6C1 = 0;
+ gUnknown_08396FC4->unknown_6C2 = 0;
+}
+
+void sub_807E174(void);
+
+void sub_807E144(void)
+{
+ sub_807E110();
+ while (gUnknown_08396FC4->unknown_6D2 == 0)
+ sub_807E174();
+}
+
+void sub_807E174(void)
+{
+ switch (gUnknown_08396FC4->unknown_6CC)
+ {
+ case 0:
+ if (gUnknown_08396FC4->unknown_6C6 != 0)
+ gUnknown_08396FC4->unknown_6CC++;
+ break;
+ case 1:
+ sub_807D9A8();
+ gUnknown_08396FC4->unknown_6CC++;
+ break;
+ case 2:
+ if (sub_807D9C8() == FALSE)
+ gUnknown_08396FC4->unknown_6CC++;
+ break;
+ case 3:
+ sub_807DA14();
+ gUnknown_08396FC4->unknown_6CC++;
+ break;
+ case 4:
+ sub_807DA4C();
+ if (gUnknown_08396FC4->unknown_73C == 6)
+ {
+ gUnknown_08396FC4->unknown_6D2 = 1;
+ gUnknown_08396FC4->unknown_6CC++;
+ }
+ break;
+ default:
+ sub_807DA4C();
+ break;
+ }
+}
+
+int sub_807E258(void)
+{
+ return 0;
+}
+
+void task50_0807B6D4(u8);
+
+void sub_807E25C(void)
+{
+ CreateTask(task50_0807B6D4, 0x50);
+}
+
+#define tState data[0]
+#define tBlendY data[1]
+#define tBlendDelay data[2]
+#define tWinRange data[3]
+
+void task50_0807B6D4(u8 taskId)
+{
+ struct Task *task = &gTasks[taskId];
+
+ switch (task->tState)
+ {
+ case 0:
+ task->tBlendY = 0;
+ task->tBlendDelay = 0;
+ task->tWinRange = REG_WININ;
+ REG_WININ = WIN_RANGE(63, 63);
+ REG_BLDCNT = 0x9E;
+ REG_BLDY = 0;
+ task->tState++;
+ // fall through
+ case 1:
+ task->tBlendY += 3;
+ if (task->tBlendY > 16)
+ task->tBlendY = 16;
+ REG_BLDY = task->tBlendY;
+ if (task->tBlendY >= 16)
+ task->tState++;
+ break;
+ case 2:
+ task->tBlendDelay++;
+ if (task->tBlendDelay > 9)
+ {
+ task->tBlendDelay = 0;
+ task->tBlendY--;
+ if (task->tBlendY <= 0)
+ {
+ task->tBlendY = 0;
+ task->tState++;
+ }
+ REG_BLDY = task->tBlendY;
+ }
+ break;
+ case 3:
+ REG_BLDCNT = 0;
+ REG_BLDY = 0;
+ REG_WININ = task->tWinRange;
+ task->tState++;
+ break;
+ case 4:
+ EnableBothScriptContexts();
+ DestroyTask(taskId);
+ break;
+ }
+}
+
+#undef tState
+#undef tBlendY
+#undef tBlendDelay
+#undef tWinRange
+
+void sub_807E364(void)
+{
+ gUnknown_08396FC4->unknown_6CC = 0;
+ gUnknown_08396FC4->unknown_6D2 = 0;
+ gUnknown_08396FC4->unknown_6D6 = 0;
+ gUnknown_08396FC4->unknown_6DB = 8;
+ gUnknown_08396FC4->unknown_6DC = 0;
+ gUnknown_08396FC4->unknown_6D9 = 10;
+ gUnknown_08396FC4->unknown_6C1 = 3;
+ gUnknown_08396FC4->unknown_6C2 = 20;
+ sub_807DD5C(SE_T_KOAME);
+}
+
+void sub_807E400(void);
+
+void sub_807E3D0(void)
+{
+ sub_807E364();
+ while (gUnknown_08396FC4->unknown_6D2 == 0)
+ sub_807E400();
+}
+
+void sub_807E7A4(void);
+u8 sub_807E7B4(void);
+u8 sub_807E8E8(void);
+
+void sub_807E400(void)
+{
+ switch (gUnknown_08396FC4->unknown_6CC)
+ {
+ case 0:
+ sub_807E7A4();
+ gUnknown_08396FC4->unknown_6CC++;
+ break;
+ case 1:
+ if (sub_807E7B4() == 0)
+ gUnknown_08396FC4->unknown_6CC++;
+ break;
+ case 2:
+ if (sub_807E8E8() == FALSE)
+ {
+ gUnknown_08396FC4->unknown_6D2 = 1;
+ gUnknown_08396FC4->unknown_6CC++;
+ }
+ break;
+ }
+}
+
+void sub_807E974(void);
+
+bool8 sub_807E460(void)
+{
+ switch (gUnknown_08396FC4->unknown_6CE)
+ {
+ case 0:
+ if (gUnknown_08396FC4->unknown_6D1 == 3
+ || gUnknown_08396FC4->unknown_6D1 == 5
+ || gUnknown_08396FC4->unknown_6D1 == 13)
+ {
+ gUnknown_08396FC4->unknown_6CE = 0xFF;
+ return FALSE;
+ }
+ else
+ {
+ gUnknown_08396FC4->unknown_6D9 = 0;
+ gUnknown_08396FC4->unknown_6CE++;
+ }
+ // fall through
+ case 1:
+ if (sub_807E8E8() == FALSE)
+ {
+ sub_807E974();
+ gUnknown_08396FC4->unknown_6CE++;
+ return FALSE;
+ }
+ return TRUE;
+ }
+ return FALSE;
+}
+
+//extern const struct Coords16 gUnknown_0839AAC4[];
+extern const u16 gUnknown_0839AAC4[][2];
+//extern const struct Coords16 gUnknown_0839AABC[];
+extern const s16 gUnknown_0839AABC[][2];
+
+void sub_807E4EC(struct Sprite *sprite)
+{
+ u32 randVal;
+ u16 r6;
+ s32 r4;
+ s32 r0;
+
+ if (sprite->data1 == 0)
+ sprite->data1 = 361;
+ randVal = sprite->data1 * 1103515245 + 12345;
+ sprite->data1 = ((randVal & 0x7FFF0000) >> 16) % 600;
+
+ r6 = gUnknown_0839AAC4[gUnknown_08396FC4->unknown_6DC][0];
+
+ r4 = sprite->data1 % 30;
+ sprite->data2 = r4 * 8; // useless assignment
+
+ r0 = sprite->data1 / 30;
+ sprite->data3 = r0 * 8; // useless assignment
+
+ sprite->data2 = r4;
+ sprite->data2 <<= 7;
+
+ sprite->data3 = r0;
+ sprite->data3 <<= 7;
+
+ sprite->data2 -= gUnknown_0839AABC[gUnknown_08396FC4->unknown_6DC][0] * r6;
+ sprite->data3 -= gUnknown_0839AABC[gUnknown_08396FC4->unknown_6DC][1] * r6;
+
+ StartSpriteAnim(sprite, 0);
+ sprite->data4 = 0;
+ sprite->coordOffsetEnabled = FALSE;
+ sprite->data0 = r6;
+}
+
+void sub_807E5C0(struct Sprite *sprite)
+{
+ if (sprite->data4 == 0)
+ {
+ sprite->data2 += gUnknown_0839AABC[gUnknown_08396FC4->unknown_6DC][0];
+ sprite->data3 += gUnknown_0839AABC[gUnknown_08396FC4->unknown_6DC][1];
+ sprite->pos1.x = sprite->data2 >> 4;
+ sprite->pos1.y = sprite->data3 >> 4;
+
+ if (sprite->data5 != 0
+ && (sprite->pos1.x >= -8 && sprite->pos1.x <= 248)
+ && sprite->pos1.y >= -16 && sprite->pos1.y <= 176)
+ sprite->invisible = FALSE;
+ else
+ sprite->invisible = TRUE;
+
+ sprite->data0--;
+ if (sprite->data0 == 0)
+ {
+ StartSpriteAnim(sprite, gUnknown_08396FC4->unknown_6DC + 1);
+ sprite->data4 = 1;
+ sprite->pos1.x -= gSpriteCoordOffsetX;
+ sprite->pos1.y -= gSpriteCoordOffsetY;
+ sprite->coordOffsetEnabled = TRUE;
+ }
+ }
+ else if (sprite->animEnded)
+ {
+ sprite->invisible = TRUE;
+ sub_807E4EC(sprite);
+ }
+}
+
+void sub_807E6C4(struct Sprite *sprite)
+{
+ if (sprite->data0 == 0)
+ {
+ sub_807E4EC(sprite);
+ sprite->callback = sub_807E5C0;
+ }
+ else
+ {
+ sprite->data0--;
+ }
+}
+
+void sub_807E6F0(struct Sprite *sprite, u16 b)
+{
+ u16 r8 = gUnknown_0839AAC4[gUnknown_08396FC4->unknown_6DC][0];
+ u16 r6 = b / (gUnknown_0839AAC4[gUnknown_08396FC4->unknown_6DC][1] + r8);
+ u16 r4 = b % (gUnknown_0839AAC4[gUnknown_08396FC4->unknown_6DC][1] + r8);
+
+ while (--r6 != 0xFFFF)
+ sub_807E4EC(sprite);
+ if (r4 < r8)
+ {
+ while (--r4 != 0xFFFF)
+ sub_807E5C0(sprite);
+ sprite->data6 = 0;
+ }
+ else
+ {
+ sprite->data0 = r4 - r8;
+ sprite->invisible = TRUE;
+ sprite->data6 = 1;
+ }
+}
+
+void sub_807E7A4(void)
+{
+ LoadSpriteSheet(&gUnknown_0839AACC);
+}
+
+extern const struct Coords16 gUnknown_0839AA08[];
+
+bool8 sub_807E7B4(void)
+{
+ u8 r7;
+ u8 spriteId;
+
+ if (gUnknown_08396FC4->unknown_6DA == 24)
+ return FALSE;
+
+ r7 = gUnknown_08396FC4->unknown_6DA;
+ spriteId = CreateSpriteAtEnd(&gSpriteTemplate_839AAA4,
+ gUnknown_0839AA08[r7].x, gUnknown_0839AA08[r7].y, 78);
+ if (spriteId != 64)
+ {
+ gSprites[spriteId].data5 = 0;
+ gSprites[spriteId].data1 = r7 * 145;
+ while (gSprites[spriteId].data1 >= 600)
+ gSprites[spriteId].data1 -= 600;
+ sub_807E4EC(&gSprites[spriteId]);
+ sub_807E6F0(&gSprites[spriteId], r7 * 9);
+ gSprites[spriteId].invisible = TRUE;
+ gUnknown_08396FC4->unknown_0[r7] = &gSprites[spriteId];
+ }
+ else
+ {
+ gUnknown_08396FC4->unknown_0[r7] = NULL;
+ }
+
+ if (++gUnknown_08396FC4->unknown_6DA == 24)
+ {
+ u16 i;
+
+ for (i = 0; i < 24; i++)
+ {
+ if (gUnknown_08396FC4->unknown_0[i] != NULL)
+ {
+ if (gUnknown_08396FC4->unknown_0[i]->data6 == 0)
+ gUnknown_08396FC4->unknown_0[i]->callback = sub_807E5C0;
+ else
+ gUnknown_08396FC4->unknown_0[i]->callback = sub_807E6C4;
+ }
+ }
+ return FALSE;
+ }
+ return TRUE;
+}
+
+bool8 sub_807E8E8(void)
+{
+ if (gUnknown_08396FC4->unknown_6D8 == gUnknown_08396FC4->unknown_6D9)
+ return FALSE;
+
+ if (++gUnknown_08396FC4->unknown_6D6 > gUnknown_08396FC4->unknown_6DB)
+ {
+ gUnknown_08396FC4->unknown_6D6 = 0;
+ if (gUnknown_08396FC4->unknown_6D8 < gUnknown_08396FC4->unknown_6D9)
+ {
+ gUnknown_08396FC4->unknown_0[gUnknown_08396FC4->unknown_6D8++]->data5 = 1;
+ }
+ else
+ {
+ gUnknown_08396FC4->unknown_6D8--;
+ gUnknown_08396FC4->unknown_0[gUnknown_08396FC4->unknown_6D8]->data5 = 0;
+ gUnknown_08396FC4->unknown_0[gUnknown_08396FC4->unknown_6D8]->invisible = TRUE;
+ }
+ }
+ return TRUE;
+}
+
+void sub_807E974(void)
+{
+ u16 i;
+
+ for (i = 0; i < gUnknown_08396FC4->unknown_6DA; i++)
+ {
+ if (gUnknown_08396FC4->unknown_0[i] != NULL)
+ DestroySprite(gUnknown_08396FC4->unknown_0[i]);
+ }
+ gUnknown_08396FC4->unknown_6DA = 0;
+ FreeSpriteTilesByTag(0x1206);
+}
+
+void sub_807E9C8(void)
+{
+ gUnknown_08396FC4->unknown_6CC = 0;
+ gUnknown_08396FC4->unknown_6D2 = 0;
+ gUnknown_08396FC4->unknown_6C1 = 3;
+ gUnknown_08396FC4->unknown_6C2 = 20;
+ gUnknown_08396FC4->unknown_6E5 = 16;
+ gUnknown_08396FC4->unknown_6E0 = 0;
+}
+
+void snowflakes_progress2(void);
+void sub_807ED48(struct Sprite *);
+
+void sub_807EA18(void)
+{
+ sub_807E9C8();
+ while (gUnknown_08396FC4->unknown_6D2 == 0)
+ {
+ u16 i;
+
+ snowflakes_progress2();
+ for (i = 0; i < gUnknown_08396FC4->unknown_6E4; i++)
+ {
+ sub_807ED48(gUnknown_08396FC4->unknown_60[i]);
+ }
+ }
+}
+
+u8 snowflakes_progress(void);
+
+void snowflakes_progress2(void)
+{
+ if (gUnknown_08396FC4->unknown_6CC == 0 && snowflakes_progress() == FALSE)
+ {
+ gUnknown_08396FC4->unknown_6D2 = 1;
+ gUnknown_08396FC4->unknown_6CC++;
+ }
+}
+
+bool8 sub_807EAC0(void)
+{
+ switch (gUnknown_08396FC4->unknown_6CE)
+ {
+ case 0:
+ gUnknown_08396FC4->unknown_6E5 = 0;
+ gUnknown_08396FC4->unknown_6E0 = 0;
+ gUnknown_08396FC4->unknown_6CE++;
+ // fall through
+ case 1:
+ if (snowflakes_progress() == FALSE)
+ {
+ gUnknown_08396FC4->unknown_6CE++;
+ return FALSE;
+ }
+ return TRUE;
+ }
+ return FALSE;
+}
+
+bool8 snowflake_add(void);
+bool8 snowflake_remove(void);
+
+bool8 snowflakes_progress(void)
+{
+ if (gUnknown_08396FC4->unknown_6E4 == gUnknown_08396FC4->unknown_6E5)
+ return FALSE;
+
+ gUnknown_08396FC4->unknown_6E0++;
+ if (gUnknown_08396FC4->unknown_6E0 > 36)
+ {
+ gUnknown_08396FC4->unknown_6E0 = 0;
+ if (gUnknown_08396FC4->unknown_6E4 < gUnknown_08396FC4->unknown_6E5)
+ snowflake_add();
+ else
+ snowflake_remove();
+ }
+ return (gUnknown_08396FC4->unknown_6E4 != gUnknown_08396FC4->unknown_6E5);
+}
+
+void sub_807EC40(struct Sprite *);
+
+bool8 snowflake_add(void)
+{
+ u8 spriteId = CreateSpriteAtEnd(&gSpriteTemplate_839AB04, 0, 0, 78);
+
+ if (spriteId == 64)
+ return FALSE;
+ gSprites[spriteId].data4 = gUnknown_08396FC4->unknown_6E4;
+ sub_807EC40(&gSprites[spriteId]);
+ gSprites[spriteId].coordOffsetEnabled = TRUE;
+ gUnknown_08396FC4->unknown_60[gUnknown_08396FC4->unknown_6E4++] = &gSprites[spriteId];
+ return TRUE;
+}
+
+bool8 snowflake_remove(void)
+{
+ if (gUnknown_08396FC4->unknown_6E4 != 0)
+ {
+ DestroySprite(gUnknown_08396FC4->unknown_60[--gUnknown_08396FC4->unknown_6E4]);
+ return TRUE;
+ }
+ return FALSE;
+}
+
+void sub_807EC40(struct Sprite *sprite)
+{
+ u16 r4 = ((sprite->data4 * 5) & 7) * 30 + (Random() % 30);
+ u16 r6;
+
+ sprite->pos1.y = -3 - (gSpriteCoordOffsetY + sprite->centerToCornerVecY);
+ sprite->pos1.x = r4 - (gSpriteCoordOffsetX + sprite->centerToCornerVecX);
+ sprite->data0 = sprite->pos1.y * 128;
+ sprite->pos2.x = 0;
+ r6 = Random();
+ sprite->data1 = (r6 & 3) * 5 + 64;
+ sprite->data7 = (r6 & 3) * 5 + 64;
+ StartSpriteAnim(sprite, (r6 & 1) ? 0 : 1);
+ sprite->data3 = 0;
+ sprite->data2 = ((r6 & 3) == 0) ? 2 : 1;
+ sprite->data6 = (r6 & 0x1F) + 210;
+ sprite->data5 = 0;
+}
+
+void sub_807ECEC(struct Sprite *sprite)
+{
+ if (gUnknown_08396FC4->unknown_6E2 > 18)
+ {
+ sprite->invisible = FALSE;
+ sprite->callback = sub_807ED48;
+ sprite->pos1.y = 0xFA - (gSpriteCoordOffsetY + sprite->centerToCornerVecY);
+ sprite->data0 = sprite->pos1.y * 128;
+ gUnknown_08396FC4->unknown_6E2 = 0;
+ }
+}
+
+void sub_807ED48(struct Sprite *sprite)
+{
+ s16 r3;
+ s16 r2;
+
+ sprite->data0 += sprite->data1;
+ sprite->pos1.y = sprite->data0 >> 7;
+ sprite->data3 = (sprite->data3 + sprite->data2) & 0xFF;
+ sprite->pos2.x = gSineTable[sprite->data3] / 64;
+
+ r3 = (sprite->pos1.x + sprite->centerToCornerVecX + gSpriteCoordOffsetX) & 0x1FF;
+ if (r3 & 0x100)
+ r3 = -0x100 | r3; // hmm... what is this?
+ if (r3 < -3)
+ sprite->pos1.x = 242 - (gSpriteCoordOffsetX + sprite->centerToCornerVecX);
+ else if (r3 > 242)
+ sprite->pos1.x = -3 - (gSpriteCoordOffsetX + sprite->centerToCornerVecX);
+
+ r2 = (sprite->pos1.y + sprite->centerToCornerVecY + gSpriteCoordOffsetY) & 0xFF;
+ if (r2 > 163 && r2 < 171)
+ {
+ sprite->pos1.y = 250 - (gSpriteCoordOffsetY + sprite->centerToCornerVecY);
+ sprite->data0 = sprite->pos1.y * 128;
+ sprite->data5 = 0;
+ sprite->data6 = 220;
+ }
+ else if (r2 > 242 && r2 < 250)
+ {
+ sprite->pos1.y = 163;
+ sprite->data0 = sprite->pos1.y * 128;
+ sprite->data5 = 0;
+ sprite->data6 = 220;
+ sprite->invisible = TRUE;
+ sprite->callback = sub_807ECEC;
+ }
+
+ sprite->data5++;
+ if (sprite->data5 == sprite->data6)
+ {
+ sub_807EC40(sprite);
+ sprite->pos1.y = 250;
+ sprite->invisible = TRUE;
+ sprite->callback = sub_807ECEC;
+ }
+}
+
+void sub_807EE80(void)
+{
+ gUnknown_08396FC4->unknown_6CC = 0;
+ gUnknown_08396FC4->unknown_6D2 = 0;
+ gUnknown_08396FC4->unknown_6D6 = 0;
+ gUnknown_08396FC4->unknown_6DB = 4;
+ gUnknown_08396FC4->unknown_6DC = 0;
+ gUnknown_08396FC4->unknown_6D9 = 16;
+ gUnknown_08396FC4->unknown_6C1 = 3;
+ gUnknown_08396FC4->unknown_6C2 = 20;
+ gUnknown_08396FC4->unknown_6D2 = 0; // duplicate assignment
+ gUnknown_08396FC4->unknown_6ED = 0;
+ sub_807DD5C(0x51);
+}
+
+void sub_807EFC0(void);
+
+void sub_807EEF4(void)
+{
+ sub_807EE80();
+ while (gUnknown_08396FC4->unknown_6D2 == 0)
+ sub_807EFC0();
+}
+
+void sub_807EF24(void)
+{
+ gUnknown_08396FC4->unknown_6CC = 0;
+ gUnknown_08396FC4->unknown_6D2 = 0;
+ gUnknown_08396FC4->unknown_6D6 = 0;
+ gUnknown_08396FC4->unknown_6DB = 4;
+ gUnknown_08396FC4->unknown_6DC = 1;
+ gUnknown_08396FC4->unknown_6D9 = 24;
+ gUnknown_08396FC4->unknown_6C1 = 3;
+ gUnknown_08396FC4->unknown_6C2 = 20;
+ gUnknown_08396FC4->unknown_6D2 = 0; // duplicate assignment
+ sub_807DD5C(0x53);
+}
+
+void sub_807EF90(void)
+{
+ sub_807EF24();
+ while (gUnknown_08396FC4->unknown_6D2 == 0)
+ sub_807EFC0();
+}
+
+void sub_807F434(void);
+void sub_807F3F8(u16);
+
+void sub_807EFC0(void)
+{
+ sub_807F434();
+ switch (gUnknown_08396FC4->unknown_6CC)
+ {
+ case 0:
+ sub_807E7A4();
+ gUnknown_08396FC4->unknown_6CC++;
+ break;
+ case 1:
+ if (sub_807E7B4())
+ break;
+ gUnknown_08396FC4->unknown_6CC++;
+ break;
+ case 2:
+ if (sub_807E8E8())
+ break;
+ gUnknown_08396FC4->unknown_6D2 = 1;
+ gUnknown_08396FC4->unknown_6CC++;
+ break;
+ case 3:
+ if (gUnknown_08396FC4->unknown_6C6 == 0)
+ break;
+ gUnknown_08396FC4->unknown_6CC = 6;
+ break;
+ case 4:
+ gUnknown_08396FC4->unknown_6EA = 1;
+ gUnknown_08396FC4->unknown_6E6 = (Random() % 360) + 360;
+ gUnknown_08396FC4->unknown_6CC++;
+ // fall through
+ case 5:
+ if (--gUnknown_08396FC4->unknown_6E6 != 0)
+ break;
+ gUnknown_08396FC4->unknown_6CC++;
+ break;
+ case 6:
+ gUnknown_08396FC4->unknown_6EA = 1;
+ gUnknown_08396FC4->unknown_6EB = Random() % 2;
+ gUnknown_08396FC4->unknown_6CC++;
+ break;
+ case 7:
+ gUnknown_08396FC4->unknown_6EC = (Random() & 1) + 1;
+ gUnknown_08396FC4->unknown_6CC++;
+ // fall through
+ case 8:
+ sub_807D5BC(19);
+ if (gUnknown_08396FC4->unknown_6EB == 0 && gUnknown_08396FC4->unknown_6EC == 1)
+ sub_807F3F8(20);
+ gUnknown_08396FC4->unknown_6E6 = (Random() % 3) + 6;
+ gUnknown_08396FC4->unknown_6CC++;
+ break;
+ case 9:
+ if (--gUnknown_08396FC4->unknown_6E6 != 0)
+ break;
+ sub_807D5BC(3);
+ gUnknown_08396FC4->unknown_6EA = 1;
+ if (--gUnknown_08396FC4->unknown_6EC != 0)
+ {
+ gUnknown_08396FC4->unknown_6E6 = (Random() % 16) + 60;
+ gUnknown_08396FC4->unknown_6CC = 10;
+ }
+ else if (gUnknown_08396FC4->unknown_6EB == 0)
+ {
+ gUnknown_08396FC4->unknown_6CC = 4;
+ }
+ else
+ {
+ gUnknown_08396FC4->unknown_6CC = 11;
+ }
+ break;
+ case 10:
+ if (--gUnknown_08396FC4->unknown_6E6 != 0)
+ break;
+ gUnknown_08396FC4->unknown_6CC = 8;
+ break;
+ case 11:
+ gUnknown_08396FC4->unknown_6E6 = (Random() % 16) + 60;
+ gUnknown_08396FC4->unknown_6CC++;
+ break;
+ case 12:
+ if (--gUnknown_08396FC4->unknown_6E6 != 0)
+ break;
+ sub_807F3F8(100);
+ sub_807D5BC(19);
+ // Why use "% 16" everywhere else and "& 0xF" here. So dumb.
+ gUnknown_08396FC4->unknown_6E6 = (Random() & 0xF) + 30;
+ gUnknown_08396FC4->unknown_6CC++;
+ break;
+ case 13:
+ if (--gUnknown_08396FC4->unknown_6E6 != 0)
+ break;
+ sub_807D5F0(19, 3, 5);
+ gUnknown_08396FC4->unknown_6CC++;
+ break;
+ case 14:
+ if (gUnknown_08396FC4->unknown_6C6 != 3)
+ break;
+ gUnknown_08396FC4->unknown_6EA = 1;
+ gUnknown_08396FC4->unknown_6CC = 4;
+ break;
+ }
+}
+
+bool8 sub_807F34C(void)
+{
+ switch (gUnknown_08396FC4->unknown_6CE)
+ {
+ case 0:
+ gUnknown_08396FC4->unknown_6EA = 0;
+ gUnknown_08396FC4->unknown_6CE++;
+ // fall through
+ case 1:
+ sub_807EFC0();
+ if (gUnknown_08396FC4->unknown_6EA != 0)
+ {
+ if (gUnknown_08396FC4->unknown_6D1 == 3
+ || gUnknown_08396FC4->unknown_6D1 == 5
+ || gUnknown_08396FC4->unknown_6D1 == 13)
+ return FALSE;
+ gUnknown_08396FC4->unknown_6D9 = 0;
+ gUnknown_08396FC4->unknown_6CE++;
+ }
+ break;
+ case 2:
+ if (sub_807E8E8())
+ break;
+ sub_807E974();
+ gUnknown_08396FC4->unknown_6ED = 0;
+ gUnknown_08396FC4->unknown_6CE++;
+ return FALSE;
+ default:
+ return FALSE;
+ }
+ return TRUE;
+}
+
+void sub_807F3F8(u16 a)
+{
+ if (gUnknown_08396FC4->unknown_6ED == 0)
+ {
+ gUnknown_08396FC4->unknown_6E8 = Random() % a;
+ gUnknown_08396FC4->unknown_6ED = 1;
+ }
+}
+
+void sub_807F434(void)
+{
+ if (gUnknown_08396FC4->unknown_6ED == 1)
+ {
+ if (gUnknown_08396FC4->unknown_6E8 == 0)
+ {
+ if (IsSEPlaying())
+ return;
+ if (Random() & 1)
+ PlaySE(0x57);
+ else
+ PlaySE(0x58);
+ gUnknown_08396FC4->unknown_6ED = 0;
+ }
+ else
+ {
+ gUnknown_08396FC4->unknown_6E8--;
+ }
+ }
+}
+
+void sub_807F49C(void)
+{
+ gUnknown_08396FC4->unknown_6CC = 0;
+ gUnknown_08396FC4->unknown_6D2 = 0;
+ gUnknown_08396FC4->unknown_6C1 = 0;
+ gUnknown_08396FC4->unknown_6C2 = 20;
+ if (gUnknown_08396FC4->unknown_6FB == 0)
+ {
+ gUnknown_08396FC4->unknown_6F0 = 0;
+ gUnknown_08396FC4->unknown_6F2 = 0;
+ gUnknown_08396FC4->unknown_6EE = 0;
+ sub_807DB64(0, 16);
+ }
+}
+
+void sub_807F52C(void);
+
+void sub_807F4FC(void)
+{
+ sub_807F49C();
+ while (gUnknown_08396FC4->unknown_6D2 == 0)
+ sub_807F52C();
+}
+
+void sub_807F6E8(void);
+
+void sub_807F52C(void)
+{
+ gUnknown_08396FC4->unknown_6EE = (gSpriteCoordOffsetX - gUnknown_08396FC4->unknown_6F2) & 0xFF;
+ if (++gUnknown_08396FC4->unknown_6F0 > 3)
+ {
+ gUnknown_08396FC4->unknown_6F0 = 0;
+ gUnknown_08396FC4->unknown_6F2++;
+ }
+ switch (gUnknown_08396FC4->unknown_6CC)
+ {
+ case 0:
+ sub_807F6E8();
+ if (gUnknown_08396FC4->unknown_6D0 == 6)
+ sub_807DBA4(12, 8, 3);
+ else
+ sub_807DBA4(4, 16, 0);
+ gUnknown_08396FC4->unknown_6CC++;
+ break;
+ case 1:
+ if (sub_807DBE8())
+ {
+ gUnknown_08396FC4->unknown_6D2 = 1;
+ gUnknown_08396FC4->unknown_6CC++;
+ }
+ break;
+ }
+}
+
+void sub_807F7A4(void);
+
+bool8 sub_807F5EC(void)
+{
+ gUnknown_08396FC4->unknown_6EE = (gSpriteCoordOffsetX - gUnknown_08396FC4->unknown_6F2) & 0xFF;
+ if (++gUnknown_08396FC4->unknown_6F0 > 3)
+ {
+ gUnknown_08396FC4->unknown_6F0 = 0;
+ gUnknown_08396FC4->unknown_6F2++;
+ }
+ switch (gUnknown_08396FC4->unknown_6CE)
+ {
+ case 0:
+ sub_807DBA4(0, 16, 3);
+ gUnknown_08396FC4->unknown_6CE++;
+ break;
+ case 1:
+ if (!sub_807DBE8())
+ break;
+ gUnknown_08396FC4->unknown_6CE++;
+ break;
+ case 2:
+ sub_807F7A4();
+ gUnknown_08396FC4->unknown_6CE++;
+ break;
+ default:
+ return FALSE;
+ }
+ return TRUE;
+}
+
+void sub_807F688(struct Sprite *sprite)
+{
+ sprite->pos2.y = (u8)gSpriteCoordOffsetY;
+ sprite->pos1.x = gUnknown_08396FC4->unknown_6EE + 32 + sprite->data0 * 64;
+ if (sprite->pos1.x > 0x10F)
+ {
+ sprite->pos1.x = 480 + gUnknown_08396FC4->unknown_6EE - (4 - sprite->data0) * 64;
+ sprite->pos1.x &= 0x1FF;
+ }
+}
diff --git a/src/field/fldeff_cut.c b/src/field/fldeff_cut.c
index 00643a979..00cabe5c0 100644
--- a/src/field/fldeff_cut.c
+++ b/src/field/fldeff_cut.c
@@ -16,8 +16,7 @@
#include "sprite.h"
#include "task.h"
#include "trig.h"
-
-extern u8 gCutGrassSpriteArray[8]; // seems to be an array of 8 sprite IDs
+#include "ewram.h"
extern void (*gFieldCallback)(void);
extern void (*gUnknown_03005CE4)(void);
@@ -135,9 +134,9 @@ bool8 FldEff_CutGrass(void)
// populate sprite ID array
for(i = 0; i < 8; i++)
{
- gCutGrassSpriteArray[i] = CreateSprite((struct SpriteTemplate *)&gSpriteTemplate_CutGrass,
+ eCutGrassSpriteArray[i] = CreateSprite((struct SpriteTemplate *)&gSpriteTemplate_CutGrass,
gSprites[gPlayerAvatar.spriteId].oam.x + 8, gSprites[gPlayerAvatar.spriteId].oam.y + 20, 0);
- gSprites[gCutGrassSpriteArray[i]].data2 = 32 * i;
+ gSprites[eCutGrassSpriteArray[i]].data2 = 32 * i;
}
return 0;
}
@@ -273,8 +272,8 @@ void sub_80A2AB8(void)
u8 i;
for (i = 1; i < 8; i++)
- DestroySprite(&gSprites[gCutGrassSpriteArray[i]]);
- FieldEffectStop(&gSprites[gCutGrassSpriteArray[0]], FLDEFF_CUT_GRASS);
+ DestroySprite(&gSprites[eCutGrassSpriteArray[i]]);
+ FieldEffectStop(&gSprites[eCutGrassSpriteArray[0]], FLDEFF_CUT_GRASS);
sub_8064E2C();
ScriptContext2_Disable();
}
diff --git a/src/field/fldeff_softboiled.c b/src/field/fldeff_softboiled.c
index 22f9c13f5..b2c3d9bd1 100644
--- a/src/field/fldeff_softboiled.c
+++ b/src/field/fldeff_softboiled.c
@@ -9,6 +9,7 @@
#include "sprite.h"
#include "strings.h"
#include "task.h"
+#include "ewram.h"
struct Struct2001000 {
u8 unk0;
@@ -38,15 +39,9 @@ struct Struct201C000 {
#define WINDOW_RIGHT 29
#endif
-#define EWRAM_1000 (*(struct Struct2001000 *)(unk_2000000 + 0x1000))
-#define EWRAM_1B000_2 (*(struct Struct201B000 *)(unk_2000000 + 0x1B000))
-#define EWRAM_1C000 (*(struct Struct201C000 *)(unk_2000000 + 0x1C000))
-
// extern
extern u8 gUnknown_0202E8F6;
extern u8 gLastFieldPokeMenuOpened;
-
-extern u8 unk_2000000[];
extern u8 gUnknown_0202E8F4;
// Static
diff --git a/src/field/item_menu.c b/src/field/item_menu.c
index c508bcacf..09542cc6d 100644
--- a/src/field/item_menu.c
+++ b/src/field/item_menu.c
@@ -34,9 +34,9 @@
#include "task.h"
#include "text.h"
#include "unknown_task.h"
+#include "ewram.h"
// External stuff
-extern u8 ewram[];
extern void gpu_pal_allocator_reset__manage_upper_four(void);
extern void sub_80F9020(void);
extern void sub_80F9988();
@@ -158,12 +158,6 @@ extern struct PocketScrollState gBagPocketScrollStates[];
extern struct ItemSlot *gCurrentBagPocketItemSlots; // selected pocket item slots
extern const u8 Event_NoRegisteredItem[];
-#define ewramBerryPic (ewram + 0)
-#define ewramBerryPicTemp (ewram + 0x1000)
-#define ewramSavedItemsPocket ((struct ItemSlot *)(ewram + 0x1E000)) // saved items pocket (for Wally battle)
-#define ewramSavedPokeballsPocket ((struct ItemSlot *)(ewram + 0x1F000)) // saved Pokeballs pocket (for Wally battle)
-#define ewramBagSetupStep (ewram[0x1FFFF])
-
extern const struct CompressedSpriteSheet sMaleBagSpriteSheet;
extern const struct CompressedSpriteSheet sFemaleBagSpriteSheet;
extern const struct CompressedSpritePalette sBagSpritePalette;
diff --git a/src/field/party_menu.c b/src/field/party_menu.c
index a4c66d891..42bb66f6f 100644
--- a/src/field/party_menu.c
+++ b/src/field/party_menu.c
@@ -25,7 +25,6 @@
#include "pokemon_summary_screen.h"
#include "rom_8077ABC.h"
#include "rom_8094928.h"
-#include "script_pokemon_80F9.h"
#include "songs.h"
#include "sound.h"
#include "species.h"
@@ -35,6 +34,8 @@
#include "task.h"
#include "unknown_task.h"
#include "util.h"
+#include "script_pokemon_80F9.h"
+#include "ewram.h"
struct Coords8
{
@@ -483,9 +484,6 @@ struct Unk201FE00
u8 unkE02;
};
-#define ewram1C000 (*(struct Unk201C000 *)(ewram + 0x1C000))
-#define ewram1FE00 (*(struct Unk201FE00 *)(ewram + 0x1FE00))
-
extern u16 gBattleTypeFlags;
extern u8 gTileBuffer[];
extern u8 gUnknown_0202E8F4;
@@ -1111,7 +1109,7 @@ _0806B980:\n\
movs r3, 0x3\n\
bl sub_806BA94\n\
_0806B98C:\n\
- ldr r0, _0806B99C @ =0x0201b000\n\
+ ldr r0, _0806B99C @ =gSharedMem + 0x1B000\n\
ldr r1, _0806B9A0 @ =0x00000261\n\
adds r0, r1\n\
movs r1, 0x2\n\
@@ -1120,7 +1118,7 @@ _0806B98C:\n\
pop {r0}\n\
bx r0\n\
.align 2, 0\n\
-_0806B99C: .4byte 0x0201b000\n\
+_0806B99C: .4byte gSharedMem + 0x1B000\n\
_0806B9A0: .4byte 0x00000261\n\
.syntax divided\n");
}
@@ -2550,7 +2548,7 @@ void sub_806CF04(void)
{
asm(".syntax unified\n\
push {r4,r5,lr}\n\
- ldr r4, _0806CF94 @ =0x02001000\n\
+ ldr r4, _0806CF94 @ =gSharedMem + 0x1000\n\
ldrb r1, [r4, 0x3]\n\
lsls r0, r1, 4\n\
adds r0, r1\n\
@@ -2618,7 +2616,7 @@ void sub_806CF04(void)
pop {r0}\n\
bx r0\n\
.align 2, 0\n\
-_0806CF94: .4byte 0x02001000\n\
+_0806CF94: .4byte gSharedMem + 0x1000\n\
_0806CF98: .4byte gSprites + 0x20\n\
_0806CF9C: .4byte SpriteCB_sub_806D37C\n\
.syntax divided\n");
@@ -2855,7 +2853,7 @@ void sub_806D5B8(u8 monIndex)
ZeroFillWindowRect(&gUnknown_03004210, left, top, right, bottom);
var1 = 0;
- CpuFastSet(&var1, (void *)(OBJ_VRAM1 + monIndex * 0x400), 0x1000100);
+ CpuFastSet(&var1, OBJ_VRAM1 + monIndex * 0x400, 0x1000100);
}
void sub_806D668(u8 monIndex)
@@ -2869,7 +2867,7 @@ void sub_806D668(u8 monIndex)
ZeroFillWindowRect(&gUnknown_03004210, left, top, right, bottom);
var1 = 0;
- CpuFastSet(&var1, (void *)(OBJ_VRAM1 + 0x300 + monIndex * 0x400), 0x1000040);
+ CpuFastSet(&var1, OBJ_VRAM1 + 0x300 + monIndex * 0x400, 0x1000040);
}
bool8 LoadPartyMenuGraphics(u8 a)
@@ -3460,7 +3458,7 @@ void PartyMenuDoPrintMonNickname(u8 monIndex, int b, const u8 *nameBuffer)
u32 var1 = 0;
CpuFastSet(&var1, gTileBuffer, 0x1000100);
sub_8004E3C((struct WindowConfig *)&gWindowConfig_81E6CAC, gTileBuffer, nameBuffer);
- CpuFastSet(gTileBuffer, (void *)(OBJ_VRAM1 + (monIndex * 0x400)), 128);
+ CpuFastSet(gTileBuffer, OBJ_VRAM1 + (monIndex * 0x400), 128);
}
void PrintPartyMenuMonNickname(u8 monIndex, u8 b, struct Pokemon *pokemon)
@@ -3570,7 +3568,7 @@ void PartyMenuDoPrintLevel(u8 monIndex, u8 menuLayout, u8 level)
var1 = 0;
CpuFastSet(&var1, gUnknown_02039460, 0x1000020);
sub_8004E3C((struct WindowConfig *)&gWindowConfig_81E6CAC, gUnknown_02039460 - 0x100 /*gTileBuffer*/, gStringVar1);
- CpuFastSet(gUnknown_02039460, (void *)(OBJ_VRAM1 + 0x200 + (monIndex * 0x400)), 32);
+ CpuFastSet(gUnknown_02039460, OBJ_VRAM1 + 0x200 + (monIndex * 0x400), 32);
}
void PartyMenuPrintLevel(u8 monIndex, u8 menuLayout, struct Pokemon *pokemon)
@@ -3664,7 +3662,7 @@ void PartyMenuDoPrintHP(u8 monIndex, u8 b, u16 currentHP, u16 maxHP)
CpuFastSet(&var, gUnknown_02039460, 0x1000040);
sub_8004E3C((struct WindowConfig *)&gWindowConfig_81E6CAC, gUnknown_02039460 - 0x100 /*gTileBuffer*/, gStringVar1);
- CpuFastSet(gUnknown_02039460, (void *)(OBJ_VRAM1 + 0x300 + (monIndex * 0x400)), 64);
+ CpuFastSet(gUnknown_02039460, OBJ_VRAM1 + 0x300 + (monIndex * 0x400), 64);
}
void PartyMenuPrintHP(u8 monIndex, u8 b, struct Pokemon *pokemon)
@@ -4457,7 +4455,7 @@ void sub_806F8AC(u8 taskId)
ewram1B000.unk261 = 2;
sub_806E834(gStringVar4, 1);
sp14 += sp0.unk4;
- SetMonData(ewram1C000.pokemon, MON_DATA_HP, (u8 *)&sp14);
+ SetMonData(ewram1C000.pokemon, MON_DATA_HP, &sp14);
RemoveBagItem(ewram1C000.unk6, 1);
sub_8032638();
gTasks[taskId].func = sub_806FB44;
@@ -4478,7 +4476,7 @@ void sub_806FA18(u8 taskId)
PlaySE(SE_KAIFUKU);
ewram1C000.unkC = 0;
gTasks[taskId].data[11] -= gTasks[taskId].data[12];
- SetMonData(ewram1C000.pokemon, MON_DATA_HP, (u8 *)&gTasks[taskId].data[11]);
+ SetMonData(ewram1C000.pokemon, MON_DATA_HP, &gTasks[taskId].data[11]);
SetMonIconAnim(GetMonIconSpriteId(ewram1C000.unk4, ewram01000.unk1), ewram1C000.pokemon);
ewram1C000.unk5 = gSprites[ewram01000.unk2].data0;
ewram1C000.pokemon = &gPlayerParty[ewram1C000.unk5];
@@ -5035,7 +5033,7 @@ void PrintStatGrowthsInLevelUpWindow(u8 taskId) {
movs r2, 0x13\n\
mov r8, r2\n\
_0807086C:\n\
- ldr r1, _08070930 @ =0x0201c000\n\
+ ldr r1, _08070930 @ =gSharedMem + 0x1C000\n\
ldr r0, [r1]\n\
ldr r1, _08070934 @ =StatDataTypes\n\
adds r1, r7, r1\n\
@@ -5043,7 +5041,7 @@ _0807086C:\n\
bl GetMonData\n\
adds r1, r7, 0x6\n\
lsls r1, 1\n\
- ldr r2, _08070938 @ =0x0201b264\n\
+ ldr r2, _08070938 @ =gSharedMem + 0x1B264\n\
adds r1, r2, r1\n\
strh r0, [r1]\n\
lsls r6, r7, 1\n\
@@ -5125,9 +5123,9 @@ _0807086C:\n\
bx r0\n\
.align 2, 0\n\
_0807092C: .4byte gStringVar1\n\
-_08070930: .4byte 0x0201c000\n\
+_08070930: .4byte gSharedMem + 0x1C000\n\
_08070934: .4byte StatDataTypes\n\
-_08070938: .4byte 0x0201b264\n\
+_08070938: .4byte gSharedMem + 0x1B264\n\
_0807093C: .4byte StatNames\n\
_08070940: .4byte gOtherText_TallPlusAndRightArrow\n\
.syntax divided\n");
diff --git a/src/field/player_pc.c b/src/field/player_pc.c
index 83e6dd221..ce78a88d8 100644
--- a/src/field/player_pc.c
+++ b/src/field/player_pc.c
@@ -20,6 +20,7 @@
#include "mail.h"
#include "overworld.h"
#include "player_pc.h"
+#include "ewram.h"
extern void DisplayItemMessageOnField(u8, const u8*, TaskFunc, u16);
extern void DoPlayerPCDecoration(u8);
@@ -32,7 +33,7 @@ extern u8 sub_807D770(void);
extern void sub_808B020(void);
extern void sub_80F944C(void);
-static EWRAM_DATA u8 *gPcItemMenuOptionOrder = NULL;
+static EWRAM_DATA const u8 *gPcItemMenuOptionOrder = NULL;
static u8 gPcItemMenuOptionsNum;
@@ -211,14 +212,14 @@ void NewGameInitPCItems(void)
void BedroomPC(void)
{
- gPcItemMenuOptionOrder = (u8 *)gBedroomPC_OptionOrder;
+ gPcItemMenuOptionOrder = gBedroomPC_OptionOrder;
gPcItemMenuOptionsNum = 4;
DisplayItemMessageOnField(CreateTask(TaskDummy, 0), gOtherText_WhatWillYouDo, InitPlayerPCMenu, 0);
}
void PlayerPC(void)
{
- gPcItemMenuOptionOrder = (u8 *)gPlayerPC_OptionOrder;
+ gPcItemMenuOptionOrder = gPlayerPC_OptionOrder;
gPcItemMenuOptionsNum = 3;
DisplayItemMessageOnField(CreateTask(TaskDummy, 0), gOtherText_WhatWillYouDo, InitPlayerPCMenu, 0);
}
@@ -271,14 +272,14 @@ static void PlayerPC_ItemStorage(u8 taskId)
static void PlayerPC_Mailbox(u8 taskId)
{
MenuZeroFillWindowRect(0, 0, 10, 9);
- gMailboxInfo.count = GetMailboxMailCount();
+ eMailboxInfo.count = GetMailboxMailCount();
- if (gMailboxInfo.count == 0)
+ if (eMailboxInfo.count == 0)
DisplayItemMessageOnField(taskId, gOtherText_NoMailHere, ReshowPlayerPC, 0);
else
{
- gMailboxInfo.cursorPos = 0;
- gMailboxInfo.itemsAbove = 0;
+ eMailboxInfo.cursorPos = 0;
+ eMailboxInfo.itemsAbove = 0;
Mailbox_UpdateMailList();
ItemStorage_SetItemAndMailCount(taskId);
Mailbox_DrawMailboxMenu(taskId);
@@ -442,10 +443,10 @@ static void ItemStorage_SetItemAndMailCount(u8 taskId)
else
NUM_PAGE_ITEMS = NUM_ITEMS + 1; // there are not enough items to fill a full page; take the # of items and add 1 for the cancel button.
- if (gMailboxInfo.count > 7)
- gMailboxInfo.pageItems = 8;
+ if (eMailboxInfo.count > 7)
+ eMailboxInfo.pageItems = 8;
else
- gMailboxInfo.pageItems = gMailboxInfo.count + 1;
+ eMailboxInfo.pageItems = eMailboxInfo.count + 1;
}
static void ItemStorage_ProcessInput(u8 taskId)
@@ -1048,8 +1049,8 @@ static void Mailbox_UpdateMailList(void)
static void Mailbox_DrawMailList(u8 taskId) // taskId is unused
{
u16 yCoord = 0;
- u16 i = gMailboxInfo.itemsAbove;
- register struct MailboxStruct *tempMailbox asm("r1") = &gMailboxInfo;
+ u16 i = eMailboxInfo.itemsAbove;
+ register struct MailboxStruct *tempMailbox asm("r1") = &eMailboxInfo;
register struct MailboxStruct *mailbox asm("r6");
if(i < i + tempMailbox->pageItems)
@@ -1064,7 +1065,7 @@ static void Mailbox_DrawMailList(u8 taskId) // taskId is unused
if(i != mailbox->count)
{
- StringCopy(gStringVar1, (u8 *)gSaveBlock1.mail[i + 6].playerName);
+ StringCopy(gStringVar1, gSaveBlock1.mail[i + 6].playerName);
SanitizeNameString(gStringVar1);
MenuPrint(gStringVar1, 0x15, yCoord + 2);
}
@@ -1076,10 +1077,10 @@ static void Mailbox_DrawMailList(u8 taskId) // taskId is unused
}
beforeLabel:
- if(i - gMailboxInfo.itemsAbove != 8)
+ if(i - eMailboxInfo.itemsAbove != 8)
MenuFillWindowRectWithBlankTile(0x15, yCoord + 4, 0x1C, 0x12);
- switch(gMailboxInfo.itemsAbove)
+ switch(eMailboxInfo.itemsAbove)
{
default:
CreateVerticalScrollIndicators(0, 0xC8, 8);
@@ -1092,7 +1093,7 @@ weirdCase:
break;
}
- if(gMailboxInfo.itemsAbove + gMailboxInfo.pageItems <= gMailboxInfo.count)
+ if(eMailboxInfo.itemsAbove + eMailboxInfo.pageItems <= eMailboxInfo.count)
CreateVerticalScrollIndicators(1, 0xC8, 0x98);
else
DestroyVerticalScrollIndicator(1);
@@ -1107,7 +1108,7 @@ static void Mailbox_DrawMailboxMenu(u8 taskId)
MenuPrint(gPCText_Mailbox, 1, 1);
MenuDrawTextWindow(0x14, 0, 0x1D, 0x13);
Mailbox_DrawMailList(taskId);
- InitMenu(0, 0x15, 2, gMailboxInfo.pageItems, gMailboxInfo.cursorPos, 8);
+ InitMenu(0, 0x15, 2, eMailboxInfo.pageItems, eMailboxInfo.cursorPos, 8);
}
// Mailbox_ProcessInput
@@ -1117,29 +1118,29 @@ static void Mailbox_ProcessInput(u8 taskId)
{
if(gMain.newAndRepeatedKeys & DPAD_UP)
{
- if(gMailboxInfo.cursorPos != 0)
+ if(eMailboxInfo.cursorPos != 0)
{
PlaySE(SE_SELECT);
- gMailboxInfo.cursorPos = MoveMenuCursor(-1);
+ eMailboxInfo.cursorPos = MoveMenuCursor(-1);
}
- else if(gMailboxInfo.itemsAbove != 0)
+ else if(eMailboxInfo.itemsAbove != 0)
{
PlaySE(SE_SELECT);
- gMailboxInfo.itemsAbove--;
+ eMailboxInfo.itemsAbove--;
Mailbox_DrawMailList(taskId);
}
}
else if(gMain.newAndRepeatedKeys & DPAD_DOWN)
{
- if(gMailboxInfo.cursorPos != gMailboxInfo.pageItems - 1)
+ if(eMailboxInfo.cursorPos != eMailboxInfo.pageItems - 1)
{
PlaySE(SE_SELECT);
- gMailboxInfo.cursorPos = MoveMenuCursor(1);
+ eMailboxInfo.cursorPos = MoveMenuCursor(1);
}
- else if(gMailboxInfo.itemsAbove + gMailboxInfo.cursorPos != gMailboxInfo.count)
+ else if(eMailboxInfo.itemsAbove + eMailboxInfo.cursorPos != eMailboxInfo.count)
{
PlaySE(SE_SELECT);
- gMailboxInfo.itemsAbove++;
+ eMailboxInfo.itemsAbove++;
Mailbox_DrawMailList(taskId);
}
}
@@ -1148,7 +1149,7 @@ static void Mailbox_ProcessInput(u8 taskId)
HandleDestroyMenuCursors();
PlaySE(SE_SELECT);
- if(gMailboxInfo.itemsAbove + gMailboxInfo.cursorPos == gMailboxInfo.count)
+ if(eMailboxInfo.itemsAbove + eMailboxInfo.cursorPos == eMailboxInfo.count)
{
Mailbox_TurnOff(taskId);
}
@@ -1177,7 +1178,7 @@ static void Mailbox_CloseScrollIndicators(void)
static void Mailbox_PrintWhatToDoWithPlayerMailText(u8 taskId)
{
MenuZeroFillWindowRect(0, 0, 0x1D, 0x13);
- StringCopy(gStringVar1, gSaveBlock1.mail[gMailboxInfo.itemsAbove + 6 + gMailboxInfo.cursorPos].playerName);
+ StringCopy(gStringVar1, gSaveBlock1.mail[eMailboxInfo.itemsAbove + 6 + eMailboxInfo.cursorPos].playerName);
SanitizeNameString(gStringVar1);
StringExpandPlaceholders(gStringVar4, gOtherText_WhatWillYouDoMail);
DisplayItemMessageOnField(taskId, gStringVar4, Mailbox_PrintMailOptions, 0);
@@ -1237,7 +1238,7 @@ static void Mailbox_FadeAndReadMail(u8 taskId)
{
if(!gPaletteFade.active)
{
- HandleReadMail(&gSaveBlock1.mail[gMailboxInfo.itemsAbove + 6 + gMailboxInfo.cursorPos], Mailbox_ReturnToFieldFromReadMail, 1);
+ HandleReadMail(&gSaveBlock1.mail[eMailboxInfo.itemsAbove + 6 + eMailboxInfo.cursorPos], Mailbox_ReturnToFieldFromReadMail, 1);
DestroyTask(taskId);
}
}
@@ -1276,7 +1277,7 @@ static void Mailbox_DrawYesNoBeforeMove(u8 taskId)
static void Mailbox_DoMailMoveToBag(u8 taskId)
{
- struct MailStruct *mail = &gSaveBlock1.mail[gMailboxInfo.itemsAbove + 6 + gMailboxInfo.cursorPos];
+ struct MailStruct *mail = &gSaveBlock1.mail[eMailboxInfo.itemsAbove + 6 + eMailboxInfo.cursorPos];
MenuZeroFillWindowRect(0x14, 8, 0x1A, 0xD);
@@ -1290,10 +1291,10 @@ static void Mailbox_DoMailMoveToBag(u8 taskId)
ClearMailStruct(mail);
Mailbox_UpdateMailList();
- gMailboxInfo.count--;
+ eMailboxInfo.count--;
- if(gMailboxInfo.count < gMailboxInfo.pageItems + gMailboxInfo.itemsAbove && gMailboxInfo.itemsAbove != 0)
- gMailboxInfo.itemsAbove--;
+ if(eMailboxInfo.count < eMailboxInfo.pageItems + eMailboxInfo.itemsAbove && eMailboxInfo.itemsAbove != 0)
+ eMailboxInfo.itemsAbove--;
ItemStorage_SetItemAndMailCount(taskId);
}
@@ -1329,13 +1330,13 @@ static void Mailbox_DoGiveMailPokeMenu(u8 taskId) // Mailbox_DoGiveMailPokeMenu
static void Mailbox_UpdateMailListAfterDeposit(void)
{
u8 taskId = CreateTask(Mailbox_HandleReturnToProcessInput, 0);
- u8 oldCount = gMailboxInfo.count;
+ u8 oldCount = eMailboxInfo.count;
- gMailboxInfo.count = GetMailboxMailCount();
+ eMailboxInfo.count = GetMailboxMailCount();
Mailbox_UpdateMailList();
- if(oldCount != gMailboxInfo.count && gMailboxInfo.count < gMailboxInfo.pageItems + gMailboxInfo.itemsAbove && gMailboxInfo.itemsAbove != 0) // did the count update?
- gMailboxInfo.itemsAbove--;
+ if(oldCount != eMailboxInfo.count && eMailboxInfo.count < eMailboxInfo.pageItems + eMailboxInfo.itemsAbove && eMailboxInfo.itemsAbove != 0) // did the count update?
+ eMailboxInfo.itemsAbove--;
ItemStorage_SetItemAndMailCount(taskId);
Mailbox_DrawMailboxMenu(taskId);
diff --git a/src/field/pokeblock.c b/src/field/pokeblock.c
index 34f4ffa35..a4497295f 100644
--- a/src/field/pokeblock.c
+++ b/src/field/pokeblock.c
@@ -27,6 +27,7 @@
#include "safari_zone.h"
#include "event_data.h"
#include "pokeblock.h"
+#include "ewram.h"
struct UnkPokeblockStruct
{
@@ -36,9 +37,6 @@ struct UnkPokeblockStruct
u8 unk3;
};
-extern u8 ewram[];
-
-
static EWRAM_DATA u8 gUnknown_02039244 = 0;
static EWRAM_DATA struct UnkPokeblockStruct gUnknown_02039248 = {0};
static EWRAM_DATA u8 gUnknown_0203924C = 0;
@@ -301,7 +299,7 @@ static bool8 sub_810B6C0(void)
case 10:
if (MultistepInitMenuWindowContinue())
{
- ewram[0x1ffff] = 0;
+ ewram1FFFF = 0;
gMain.state++;
}
break;
@@ -319,7 +317,7 @@ static bool8 sub_810B6C0(void)
gMain.state++;
break;
case 13:
- ewram[0x1fffe] = sub_810BA50(0x38, 0x40, 0);
+ ewram1FFFE = sub_810BA50(0x38, 0x40, 0);
gMain.state++;
break;
case 14:
@@ -371,27 +369,27 @@ void sub_810B96C(void)
static bool8 sub_810B998(void)
{
- switch (ewram[0x1ffff])
+ switch (ewram1FFFF)
{
case 0:
- LZDecompressVram(gMenuPokeblock_Gfx, (u8 *)BG_CHAR_ADDR(2));
- ewram[0x1ffff]++;
+ LZDecompressVram(gMenuPokeblock_Gfx, BG_CHAR_ADDR(2));
+ ewram1FFFF++;
break;
case 1:
LZDecompressWram(gMenuPokeblock_Tilemap, gBGTilemapBuffers[2]);
- ewram[0x1ffff]++;
+ ewram1FFFF++;
break;
case 2:
LoadCompressedPalette(gMenuPokeblock_Pal, 0, 0xc0);
- ewram[0x1ffff]++;
+ ewram1FFFF++;
break;
case 3:
LoadCompressedObjectPic(&gUnknown_083F7F74);
- ewram[0x1ffff]++;
+ ewram1FFFF++;
break;
case 4:
LoadCompressedObjectPalette(&gUnknown_083F7F7C);
- ewram[0x1ffff] = 0;
+ ewram1FFFF = 0;
return TRUE;
}
return FALSE;
@@ -613,7 +611,7 @@ static void sub_810BDAC(bool8 flag)
static void sub_810BF38(bool8 flag)
{
PlaySE(SE_SELECT);
- gSprites[ewram[0x1fffe]].callback = sub_810C8D4;
+ gSprites[ewram1FFFE].callback = sub_810C8D4;
sub_810BDAC(flag);
}
diff --git a/src/field/region_map.c b/src/field/region_map.c
index daf0501f7..973e7decc 100644
--- a/src/field/region_map.c
+++ b/src/field/region_map.c
@@ -17,6 +17,7 @@
#include "string_util.h"
#include "text.h"
#include "trig.h"
+#include "ewram.h"
// Map Section IDs
#define MAPSEC_LITTLEROOT_TOWN 0
@@ -1350,12 +1351,6 @@ struct UnknownStruct3
struct RegionMap regionMap;
};
-extern u8 ewram[];
-#define ewram0 (*(struct UnknownStruct3 *)(ewram + 0))
-#define ewram888 (ewram + 0x888)
-#define ewramA6E (ewram[0xA6E])
-#define ewramBlankMapName (ewram + 0xA48)
-
static const u16 sFlyRegionMapFrame_Pal[] = INCBIN_U16("graphics/pokenav/map_frame.gbapal");
static const u8 sFlyRegionMapFrame_ImageLZ[] = INCBIN_U8("graphics/pokenav/map_frame.4bpp.lz");
static const u8 sFlyRegionMapFrame_TilemapLZ[] = INCBIN_U8("graphics/pokenav/map_frame.bin.lz");
@@ -1431,7 +1426,7 @@ static const struct UnknownStruct4 sUnknown_083E79C0[1] =
};
// XXX: what is this?
-static u8 *const ewram_ = ewram;
+static u8 *const ewram_ = gSharedMem;
static const struct SpritePalette sFlyTargetIconSpritePalette = {sFlyTargetIcons_Pal, 2};
@@ -1552,10 +1547,10 @@ void CB2_InitFlyRegionMap(void)
MenuZeroFillScreen();
break;
case 3:
- InitRegionMap(&ewram0.regionMap, 0);
+ InitRegionMap(&ewram0_3.regionMap, 0);
CreateRegionMapCursor(0, 0);
CreateRegionMapPlayerIcon(1, 1);
- ewram0.unk6 = ewram0.regionMap.mapSectionId;
+ ewram0_3.unk6 = ewram0_3.regionMap.mapSectionId;
StringFill(ewramBlankMapName, CHAR_SPACE, 12);
PrintFlyTargetName();
break;
@@ -1598,20 +1593,20 @@ static void VBlankCB_FlyRegionMap(void)
static void CB2_FlyRegionMap(void)
{
- ewram0.unk0();
+ ewram0_3.unk0();
AnimateSprites();
BuildOamBuffer();
}
static void sub_80FC244(void (*func)(void))
{
- ewram0.unk0 = func;
- ewram0.unk4 = 0;
+ ewram0_3.unk0 = func;
+ ewram0_3.unk4 = 0;
}
static void PrintFlyTargetName(void)
{
- if (ewram0.regionMap.unk16 == 2 || ewram0.regionMap.unk16 == 4)
+ if (ewram0_3.regionMap.unk16 == 2 || ewram0_3.regionMap.unk16 == 4)
{
u16 i = 0;
int zero;
@@ -1620,13 +1615,13 @@ static void PrintFlyTargetName(void)
{
const struct UnknownStruct4 *r4 = &sUnknown_083E79C0[i];
- if (ewram0.regionMap.mapSectionId == r4->mapSectionId)
+ if (ewram0_3.regionMap.mapSectionId == r4->mapSectionId)
{
if (FlagGet(r4->flag))
{
MenuDrawTextWindow(16, 14, 29, 19);
- MenuPrint(ewram0.regionMap.mapSectionName, 17, 15);
- MenuPrint_RightAligned(r4->unk0[ewram0.regionMap.everGrandeCityArea], 29, 17);
+ MenuPrint(ewram0_3.regionMap.mapSectionName, 17, 15);
+ MenuPrint_RightAligned(r4->unk0[ewram0_3.regionMap.everGrandeCityArea], 29, 17);
return;
}
break;
@@ -1637,7 +1632,7 @@ static void PrintFlyTargetName(void)
if (zero == 0)
{
MenuDrawTextWindow(16, 16, 29, 19);
- MenuPrint(ewram0.regionMap.mapSectionName, 17, 17);
+ MenuPrint(ewram0_3.regionMap.mapSectionName, 17, 17);
MenuZeroFillWindowRect(16, 14, 29, 15);
}
}
@@ -1738,7 +1733,7 @@ static void CreateSpecialAreaFlyTargetIcons(void)
static void SpriteCB_FlyTargetIcons(struct Sprite *sprite)
{
// Blink if our mapSectionId is the one selected on the map
- if (ewram0.regionMap.mapSectionId == sprite->data0)
+ if (ewram0_3.regionMap.mapSectionId == sprite->data0)
{
// Toggle visibility every 16 frames
sprite->data1++;
@@ -1757,11 +1752,11 @@ static void SpriteCB_FlyTargetIcons(struct Sprite *sprite)
static void sub_80FC5B4(void)
{
- switch (ewram0.unk4)
+ switch (ewram0_3.unk4)
{
case 0:
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, 0);
- ewram0.unk4++;
+ ewram0_3.unk4++;
break;
case 1:
if (UpdatePaletteFade() != 0)
@@ -1773,7 +1768,7 @@ static void sub_80FC5B4(void)
static void sub_80FC600(void)
{
- if (ewram0.unk4 == 0)
+ if (ewram0_3.unk4 == 0)
{
switch (sub_80FAB60())
{
@@ -1785,7 +1780,7 @@ static void sub_80FC600(void)
PrintFlyTargetName();
break;
case INPUT_EVENT_A_BUTTON:
- if (ewram0.regionMap.unk16 == 2 || ewram0.regionMap.unk16 == 4)
+ if (ewram0_3.regionMap.unk16 == 2 || ewram0_3.regionMap.unk16 == 4)
{
m4aSongNumStart(SE_SELECT);
ewramA6E = 1;
@@ -1803,11 +1798,11 @@ static void sub_80FC600(void)
static void sub_80FC69C(void)
{
- switch (ewram0.unk4)
+ switch (ewram0_3.unk4)
{
case 0:
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, 0);
- ewram0.unk4++;
+ ewram0_3.unk4++;
break;
case 1:
if (UpdatePaletteFade() != 0)
@@ -1815,7 +1810,7 @@ static void sub_80FC69C(void)
FreeRegionMapIconResources();
if (ewramA6E != 0)
{
- switch (ewram0.regionMap.mapSectionId)
+ switch (ewram0_3.regionMap.mapSectionId)
{
case MAPSEC_SOUTHERN_ISLAND:
sub_8053538(22);
@@ -1827,13 +1822,13 @@ static void sub_80FC69C(void)
sub_8053538((gSaveBlock2.playerGender == MALE) ? 12 : 13);
break;
case MAPSEC_EVER_GRANDE_CITY:
- sub_8053538((FlagGet(0x854) && ewram0.regionMap.everGrandeCityArea == 0) ? 20 : 11);
+ sub_8053538((FlagGet(0x854) && ewram0_3.regionMap.everGrandeCityArea == 0) ? 20 : 11);
break;
default:
- if (sUnknown_083E7920[ewram0.regionMap.mapSectionId][2] != 0)
- sub_8053538(sUnknown_083E7920[ewram0.regionMap.mapSectionId][2]);
+ if (sUnknown_083E7920[ewram0_3.regionMap.mapSectionId][2] != 0)
+ sub_8053538(sUnknown_083E7920[ewram0_3.regionMap.mapSectionId][2]);
else
- warp1_set_2(sUnknown_083E7920[ewram0.regionMap.mapSectionId][0], sUnknown_083E7920[ewram0.regionMap.mapSectionId][1], -1);
+ warp1_set_2(sUnknown_083E7920[ewram0_3.regionMap.mapSectionId][0], sUnknown_083E7920[ewram0_3.regionMap.mapSectionId][1], -1);
break;
}
sub_80865BC();
diff --git a/src/field/roamer.c b/src/field/roamer.c
index 948828d5e..c45c87601 100644
--- a/src/field/roamer.c
+++ b/src/field/roamer.c
@@ -173,13 +173,13 @@ void CreateRoamerMonInstance(void)
struct Pokemon *mon = &gEnemyParty[0];
struct Roamer *roamer = &gSaveBlock1.roamer;
CreateMonWithIVsPersonality(mon, roamer->species, roamer->level, roamer->ivs, roamer->personality);
- SetMonData(mon, MON_DATA_STATUS, (u8 *)&roamer->status);
- SetMonData(mon, MON_DATA_HP, (u8 *)&roamer->hp);
- SetMonData(mon, MON_DATA_COOL, (u8 *)&roamer->cool);
- SetMonData(mon, MON_DATA_BEAUTY, (u8 *)&roamer->beauty);
- SetMonData(mon, MON_DATA_CUTE, (u8 *)&roamer->cute);
- SetMonData(mon, MON_DATA_SMART, (u8 *)&roamer->smart);
- SetMonData(mon, MON_DATA_TOUGH, (u8 *)&roamer->tough);
+ SetMonData(mon, MON_DATA_STATUS, &roamer->status);
+ SetMonData(mon, MON_DATA_HP, &roamer->hp);
+ SetMonData(mon, MON_DATA_COOL, &roamer->cool);
+ SetMonData(mon, MON_DATA_BEAUTY, &roamer->beauty);
+ SetMonData(mon, MON_DATA_CUTE, &roamer->cute);
+ SetMonData(mon, MON_DATA_SMART, &roamer->smart);
+ SetMonData(mon, MON_DATA_TOUGH, &roamer->tough);
}
bool8 TryStartRoamerEncounter(void)
diff --git a/src/field/shop.c b/src/field/shop.c
index 375205935..493d8c748 100644
--- a/src/field/shop.c
+++ b/src/field/shop.c
@@ -26,13 +26,10 @@
#include "overworld.h"
#include "decoration_inventory.h"
#include "field_camera.h"
-
-#define ewram18000 ((u16 *)(ewram + 0x18000))
-#define ewram18300 ((u16 *)(ewram + 0x18300))
+#include "ewram.h"
extern bool8 sub_80A52C4(u8, u8);
-extern u8 ewram[];
extern u8 gBuyMenuFrame_Gfx[];
extern u16 gBuyMenuFrame_Tilemap[];
extern u16 gMenuMoneyPal[16];
@@ -54,7 +51,7 @@ static struct MartInfo gMartInfo;
// ewram
EWRAM_DATA u32 gMartTotalCost = 0;
-EWRAM_DATA s16 gUnknown_020386A4[16][4] = {0}; // game freak barely uses 2d arrays wtf?
+EWRAM_DATA s16 gUnknown_020386A4[16][4] = {0};
EWRAM_DATA struct ItemSlot gUnknown_02038724[3] = {0}; // tv.c uses this, so it cant be static
EWRAM_DATA u8 gUnknown_02038730 = 0;
EWRAM_DATA u8 gUnknown_02038731 = 0;
@@ -282,7 +279,7 @@ void BuyMenuDrawGraphics(void)
register const u32 zero asm("r6") = 0;
DmaFill32(3, zero, addr, OAM_SIZE);
LZDecompressVram(gBuyMenuFrame_Gfx, (void*)(VRAM + 0x7C00));
- LZDecompressWram(gBuyMenuFrame_Tilemap, (void *)0x02018000);
+ LZDecompressWram(gBuyMenuFrame_Tilemap, ewram18000_2);
LoadCompressedPalette(gMenuMoneyPal, 0xC0, sizeof(gMenuMoneyPal));
FreeAllSpritePalettes();
ResetPaletteFade();
diff --git a/src/field/slot_machine.c b/src/field/slot_machine.c
index e8e4f271b..89ec68b0a 100644
--- a/src/field/slot_machine.c
+++ b/src/field/slot_machine.c
@@ -3,6 +3,7 @@
#include "decompress.h"
#include "palette.h"
#include "task.h"
+#include "ewram.h"
struct UnkStruct2000000 {
/*0x00*/ u8 filler00[61];
@@ -15,8 +16,6 @@ struct UnkStruct1 {
/*0x02*/ s16 unk02;
};
-extern struct UnkStruct2000000 unk_2000000;
-
extern struct UnkStruct1 *gUnknown_083ED048[];
extern const u16 gPalette_83EDE24[];
@@ -40,7 +39,7 @@ void sub_8104CAC(u8 arg0) {
sub_8104DA4();
- task = &gTasks[unk_2000000.unk3D];
+ task = &gTasks[ewram0_8->unk3D];
task->data[1] = arg0;
i = 0;
@@ -71,9 +70,9 @@ void sub_8106448(void) {
u32 offsetRead, offsetWrite;
u32 size;
- LZDecompressWram(gSlotMachine_Gfx, (void *) 0x02010000);
+ LZDecompressWram(gSlotMachine_Gfx, ewram10000_2);
- offsetRead = 0x02010000;
+ offsetRead = (u32)ewram10000_2;
offsetWrite = BG_VRAM;
size = SLOTMACHINE_GFX_TILES * 32;
while (TRUE)
@@ -94,7 +93,7 @@ void sub_8106448(void) {
}
void sub_81064B8(void) {
- CpuCopy16(gUnknown_08E95AB8, (void *) BG_SCREEN_ADDR(29), 20 * 32 * 2);
+ CpuCopy16(gUnknown_08E95AB8, BG_SCREEN_ADDR(29), 20 * 32 * 2);
LoadSlotMachineWheelOverlay();
}
@@ -102,7 +101,7 @@ static void LoadSlotMachineWheelOverlay(void) {
s16 x, y, dx;
u16 *screen;
- screen = (u16 *) BG_SCREEN_ADDR(30);
+ screen = BG_SCREEN_ADDR(30);
for (x = 4; x < 18; x += 5)
{
@@ -125,7 +124,7 @@ static void LoadSlotMachineWheelOverlay(void) {
}
void sub_81065A8(s16 arg0, u16 arg1, u16 arg2, u16 arg3, u16 arg4) {
- u16 *vram = (u16 *) BG_SCREEN_ADDR(29);
+ u16 *vram = BG_SCREEN_ADDR(29);
vram[15 * 32 + arg0] = arg1;
vram[15 * 32 + 1 + arg0] = arg2;
@@ -137,9 +136,9 @@ void sub_81065DC(void) {
s16 y, x;
u16 *screen;
- CpuCopy16(gUnknown_08E95FB8, (void *) BG_SCREEN_ADDR(29), 20 * 32 * 2);
+ CpuCopy16(gUnknown_08E95FB8, BG_SCREEN_ADDR(29), 20 * 32 * 2);
- screen = (u16 *) BG_SCREEN_ADDR(30);
+ screen = BG_SCREEN_ADDR(30);
for (y = 0; y < 20; y++)
{
for (x = 0; x < 30; x++)
diff --git a/src/field/trainer_see.c b/src/field/trainer_see.c
index 5a8ebbafc..85bd7ad0b 100644
--- a/src/field/trainer_see.c
+++ b/src/field/trainer_see.c
@@ -257,7 +257,7 @@ static bool8 sub_8084398(u8 taskId, struct Task *task, struct MapObject *trainer
{
u8 direction;
- FieldObjectGetLocalIdAndMap(trainerObj, (u8 *)&gFieldEffectArguments[0], (u8 *)&gFieldEffectArguments[1], (u8 *)&gFieldEffectArguments[2]);
+ FieldObjectGetLocalIdAndMap(trainerObj, &gFieldEffectArguments[0], &gFieldEffectArguments[1], &gFieldEffectArguments[2]);
FieldEffectStart(FLDEFF_EXCLAMATION_MARK_ICON_1);
direction = GetFaceDirectionAnimId(trainerObj->mapobj_unk_18);
FieldObjectSetSpecialAnim(trainerObj, direction);
diff --git a/src/field/tv.c b/src/field/tv.c
index 87fc03065..a0287e7df 100644
--- a/src/field/tv.c
+++ b/src/field/tv.c
@@ -38,6 +38,7 @@
#include "string_util.h"
#include "strings.h"
#include "text.h"
+#include "ewram.h"
struct UnkTvStruct
{
@@ -95,9 +96,6 @@ extern u8 gBattleOutcome;
extern u16 gLastUsedItem;
-extern u8 ewram[];
-#define gUnknown_02007000 (*(ewramStruct_02007000 *)(ewram + 0x7000))
-
static EWRAM_DATA u16 gUnknown_020387E0 = 0;
static EWRAM_DATA u16 gUnknown_020387E2 = 0;
static EWRAM_DATA u8 gUnknown_020387E4 = 0;
diff --git a/src/field/use_pokeblock.c b/src/field/use_pokeblock.c
index bac231856..54ed89ef2 100644
--- a/src/field/use_pokeblock.c
+++ b/src/field/use_pokeblock.c
@@ -22,10 +22,10 @@
#ifdef GERMAN
extern const u16 ConditionUpDownPalette[16];
-extern const u32 ConditionUpDownTiles[0x80];
+extern const u8 ConditionUpDownTiles[0x200];
#else
const u16 ConditionUpDownPalette[] = INCBIN_U16("graphics/misc/condition_up_down.gbapal");
-const u32 ConditionUpDownTiles[] = INCBIN_U32("graphics/misc/condition_up_down.4bpp");
+const u8 ConditionUpDownTiles[] = INCBIN_U8("graphics/misc/condition_up_down.4bpp");
#endif
static const u32 sContestStatsMonData[] = {
@@ -49,7 +49,7 @@ static const u8 *const sContextStatNames[] = {
};
static const struct SpriteSheet gSpriteSheet_ConditionUpDown = {
- (u8 *)ConditionUpDownTiles,
+ ConditionUpDownTiles,
sizeof ConditionUpDownTiles,
GFX_TAG_CONDITIONUPDOWN
};
diff --git a/src/libs/agb_flash.c b/src/libs/agb_flash.c
index 340d469a7..5b171abcb 100644
--- a/src/libs/agb_flash.c
+++ b/src/libs/agb_flash.c
@@ -9,7 +9,7 @@ static u16 sSavedIme;
u8 gFlashTimeoutFlag;
u8 (*PollFlashStatus)(u8 *);
u16 (*WaitForFlashWrite)(u8 phase, u8 *addr, u8 lastData);
-u16 (*ProgramFlashSector)(u16 sectorNum, u8 *src);
+u16 (*ProgramFlashSector)(u16 sectorNum, void *src);
const struct FlashType *gFlash;
u16 (*ProgramFlashByte)(u16 sectorNum, u32 offset, u8 data);
u16 gFlashNumRemainingBytes;
@@ -135,7 +135,7 @@ void ReadFlash_Core(u8 *src, u8 *dest, u32 size)
}
}
-void ReadFlash(u16 sectorNum, u32 offset, u8 *dest, u32 size)
+void ReadFlash(u16 sectorNum, u32 offset, void *dest, u32 size)
{
u8 *src;
u16 i;
@@ -256,7 +256,7 @@ u32 VerifyFlashSectorNBytes(u16 sectorNum, u8 *src, u32 n)
return verifyFlashSector_Core(src, tgt, n);
}
-u32 ProgramFlashSectorAndVerify(u16 sectorNum, u8 *src) // 3rd is unused
+u32 ProgramFlashSectorAndVerify(u16 sectorNum, u8 *src)
{
u8 i;
u32 result;
@@ -275,18 +275,18 @@ u32 ProgramFlashSectorAndVerify(u16 sectorNum, u8 *src) // 3rd is unused
return result; // return 0 if verified and programmed.
}
-u32 ProgramFlashSectorAndVerifyNBytes(u16 sectorNum, u8 *src, u32 n)
+u32 ProgramFlashSectorAndVerifyNBytes(u16 sectorNum, void *dataSrc, u32 n)
{
u8 i;
u32 result;
for (i = 0; i < 3; i++)
{
- result = ProgramFlashSector(sectorNum, src);
+ result = ProgramFlashSector(sectorNum, dataSrc);
if (result != 0)
continue;
- result = VerifyFlashSectorNBytes(sectorNum, src, n);
+ result = VerifyFlashSectorNBytes(sectorNum, dataSrc, n);
if (result == 0)
break;
}
diff --git a/src/libs/agb_flash_mx.c b/src/libs/agb_flash_mx.c
index 67348901f..b4f710f36 100644
--- a/src/libs/agb_flash_mx.c
+++ b/src/libs/agb_flash_mx.c
@@ -157,7 +157,7 @@ static u16 ProgramByte(u8 *src, u8 *dest)
return WaitForFlashWrite(1, dest, *src);
}
-u16 ProgramFlashSector_MX(u16 sectorNum, u8 *src)
+u16 ProgramFlashSector_MX(u16 sectorNum, void *src)
{
u16 result;
u8 *dest;
diff --git a/src/pokemon/learn_move.c b/src/pokemon/learn_move.c
index 33252c66b..a47896ea5 100644
--- a/src/pokemon/learn_move.c
+++ b/src/pokemon/learn_move.c
@@ -16,8 +16,8 @@
#include "strings2.h"
#include "task.h"
#include "trig.h"
+#include "ewram.h"
-extern u8 ewram[];
extern u16 gSpecialVar_0x8004;
extern u16 gSpecialVar_0x8005;
extern u8 gTileBuffer[];
@@ -277,7 +277,7 @@ void CB2_InitLearnMove(void)
ResetSpriteData();
FreeAllSpritePalettes();
ResetTasks();
- sLearnMoveStruct = (struct LearnMoveStruct *)(ewram + 0x17000);
+ sLearnMoveStruct = eLearnMoveStruct;
ClearLearnMoveVars();
sLearnMoveStruct->partyMon = gSpecialVar_0x8004;
sub_8133558();
@@ -312,7 +312,7 @@ void sub_81327A4(void)
ResetSpriteData();
FreeAllSpritePalettes();
ResetTasks();
- sLearnMoveStruct = (struct LearnMoveStruct *)(ewram + 0x17000);
+ sLearnMoveStruct = eLearnMoveStruct;
sub_8133558();
sLearnMoveStruct->unk2C6 = gSpecialVar_0x8005;
SetVBlankCallback(VBlankCB_LearnMove);
diff --git a/src/pokemon/mail.c b/src/pokemon/mail.c
index c5dd119e3..13129bf7f 100644
--- a/src/pokemon/mail.c
+++ b/src/pokemon/mail.c
@@ -15,6 +15,7 @@
#include "task.h"
#include "text.h"
#include "unknown_task.h"
+#include "ewram.h"
struct UnkMailStruct
{
@@ -66,9 +67,6 @@ struct MailGraphics
u16 color12;
};
-extern u8 ewram[];
-#define ewram0 (*(struct Unk2000000 *)(ewram))
-
extern struct MailGraphics gMailGraphicsTable[];
extern u16 gUnknown_083E562C[][2];
@@ -90,61 +88,61 @@ void HandleReadMail(struct MailStruct *arg0, MainCallback arg1, bool8 arg2)
u16 mailDesign;
u16 buffer[2];
- ewram0.varFF = GAME_LANGUAGE;
- ewram0.var100 = 1;
- ewram0.var104 = (MainCallback)EasyChat_GetWordText;
- ewram0.var108 = (MainCallback)ConvertEasyChatWordsToString;
+ ewram0_4.varFF = GAME_LANGUAGE;
+ ewram0_4.var100 = 1;
+ ewram0_4.var104 = (MainCallback)EasyChat_GetWordText;
+ ewram0_4.var108 = (MainCallback)ConvertEasyChatWordsToString;
mailDesign = arg0->itemId - ITEM_ORANGE_MAIL;
if (mailDesign <= 11)
{
- ewram0.varFA = arg0->itemId - ITEM_ORANGE_MAIL;
+ ewram0_4.varFA = arg0->itemId - ITEM_ORANGE_MAIL;
}
else
{
- ewram0.varFA = 0;
+ ewram0_4.varFA = 0;
arg2 = FALSE;
}
- switch (ewram0.var100)
+ switch (ewram0_4.var100)
{
case 0:
default:
- ewram0.var10C = &gUnknown_083E5730[ewram0.varFA];
+ ewram0_4.var10C = &gUnknown_083E5730[ewram0_4.varFA];
break;
case 1:
- ewram0.var10C = &gUnknown_083E57A4[ewram0.varFA];
+ ewram0_4.var10C = &gUnknown_083E57A4[ewram0_4.varFA];
break;
}
if (((MailSpeciesToSpecies(arg0->species, buffer) << 16) + 0xFFFF0000) <= (410 << 16))
{
- switch (ewram0.varFA)
+ switch (ewram0_4.varFA)
{
case 6:
- ewram0.varFB = 1;
+ ewram0_4.varFB = 1;
break;
case 9:
- ewram0.varFB = 2;
+ ewram0_4.varFB = 2;
break;
default:
- ewram0.varFB = 0;
+ ewram0_4.varFB = 0;
break;
}
}
else
{
- ewram0.varFB = 0;
+ ewram0_4.varFB = 0;
}
- ewram0.varF4 = arg0;
- ewram0.varEC = arg1;
- ewram0.varF8 = arg2;
+ ewram0_4.varF4 = arg0;
+ ewram0_4.varEC = arg1;
+ ewram0_4.varF8 = arg2;
SetMainCallback2(sub_80F8D50);
}
@@ -214,31 +212,31 @@ static u8 sub_80F8A28(void)
RETURN_UP_STATE;
case 11:
- LoadPalette(gMailGraphicsTable[ewram0.varFA].palette, 0, 16 * 2);
+ LoadPalette(gMailGraphicsTable[ewram0_4.varFA].palette, 0, 16 * 2);
RETURN_UP_STATE;
case 12:
- LZ77UnCompVram(gMailGraphicsTable[ewram0.varFA].tileMap, (void *)(VRAM + 0x4000));
+ LZ77UnCompVram(gMailGraphicsTable[ewram0_4.varFA].tileMap, (void *)(VRAM + 0x4000));
RETURN_UP_STATE;
case 13:
- LZ77UnCompVram(gMailGraphicsTable[ewram0.varFA].tiles, (void *)(VRAM));
+ LZ77UnCompVram(gMailGraphicsTable[ewram0_4.varFA].tiles, (void *)(VRAM));
- gPlttBufferUnfaded[241] = gMailGraphicsTable[ewram0.varFA].color10;
- gPlttBufferUnfaded[248] = gMailGraphicsTable[ewram0.varFA].color12;
+ gPlttBufferUnfaded[241] = gMailGraphicsTable[ewram0_4.varFA].color10;
+ gPlttBufferUnfaded[248] = gMailGraphicsTable[ewram0_4.varFA].color12;
gPlttBufferUnfaded[10] = gUnknown_083E562C[gSaveBlock2.playerGender][0];
gPlttBufferUnfaded[11] = gUnknown_083E562C[gSaveBlock2.playerGender][1];
RETURN_UP_STATE;
case 14:
- if (ewram0.varF8 != 0)
+ if (ewram0_4.varF8 != 0)
{
sub_80F8DA0();
}
RETURN_UP_STATE;
case 15:
- if (ewram0.varF8 != 0)
+ if (ewram0_4.varF8 != 0)
{
sub_80F8E80();
}
@@ -251,18 +249,18 @@ static u8 sub_80F8A28(void)
{
u16 local1;
- local1 = sub_809D4A8(ewram0.varF4->species);
+ local1 = sub_809D4A8(ewram0_4.varF4->species);
- switch (ewram0.varFB)
+ switch (ewram0_4.varFB)
{
case 1:
sub_809D580(local1);
- ewram0.varFC = sub_809D3A4(local1, SpriteCallbackDummy, 96, 128, 0);
+ ewram0_4.varFC = sub_809D3A4(local1, SpriteCallbackDummy, 96, 128, 0);
break;
case 2:
sub_809D580(local1);
- ewram0.varFC = sub_809D3A4(local1, SpriteCallbackDummy, 40, 128, 0);
+ ewram0_4.varFC = sub_809D3A4(local1, SpriteCallbackDummy, 40, 128, 0);
break;
}
RETURN_UP_STATE;
@@ -283,7 +281,7 @@ static u8 sub_80F8A28(void)
REG_DISPCNT = DISPCNT_MODE_0 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG0_ON | DISPCNT_BG1_ON | DISPCNT_BG2_ON | DISPCNT_OBJ_ON;
BeginNormalPaletteFade(-1, 0, 16, 0, 0);
gPaletteFade.bufferTransferDisabled = 0;
- ewram0.varF0 = sub_80F8F58;
+ ewram0_4.varF0 = sub_80F8F58;
return TRUE;
default:
@@ -325,24 +323,24 @@ static void sub_80F8DA0(void)
u8 *ptr;
r6 = 0;
- for (i = 0; i < ewram0.var10C->var0; i++)
+ for (i = 0; i < ewram0_4.var10C->var0; i++)
{
- ConvertEasyChatWordsToString(ewram0.words[i], &ewram0.varF4->words[r6], ewram0.var10C->var4[i].unk_0_2, 1);
- r6 += ewram0.var10C->var4[i].unk_0_2;
+ ConvertEasyChatWordsToString(ewram0_4.words[i], &ewram0_4.varF4->words[r6], ewram0_4.var10C->var4[i].unk_0_2, 1);
+ r6 += ewram0_4.var10C->var4[i].unk_0_2;
}
- ptr = ewram0.varD8;
- if (ewram0.var100 == 0)
+ ptr = ewram0_4.varD8;
+ if (ewram0_4.var100 == 0)
{
- ptr = sub_80F8D7C(ptr, ewram0.varF4->playerName);
+ ptr = sub_80F8D7C(ptr, ewram0_4.varF4->playerName);
StringCopy(ptr, gOtherText_From);
- ewram0.varF9 = ewram0.var10C->var2 - StringLength(ewram0.varD8);
+ ewram0_4.varF9 = ewram0_4.var10C->var2 - StringLength(ewram0_4.varD8);
}
else
{
ptr = StringCopy(ptr, gOtherText_From);
- sub_80F8D7C(ptr, ewram0.varF4->playerName);
- ewram0.varF9 = ewram0.var10C->var2;
+ sub_80F8D7C(ptr, ewram0_4.varF4->playerName);
+ ewram0_4.varF9 = ewram0_4.var10C->var2;
}
}
@@ -352,25 +350,25 @@ static void sub_80F8E80(void)
u8 x;
u8 y = 0;
- for (pos = 0; pos < ewram0.var10C->var0; pos++)
+ for (pos = 0; pos < ewram0_4.var10C->var0; pos++)
{
- if (ewram0.words[pos][0] == 0xFF)
+ if (ewram0_4.words[pos][0] == 0xFF)
{
continue;
}
- if (ewram0.words[pos][0] == 0x00)
+ if (ewram0_4.words[pos][0] == 0x00)
{
continue;
}
- x = ewram0.var10C->var4[pos].unk_0_4;
- y += ewram0.var10C->var4[pos].unk_0_0;
- MenuPrint(ewram0.words[pos], ewram0.var10C->var3_4 + x, ewram0.var10C->var3_0 + y);
+ x = ewram0_4.var10C->var4[pos].unk_0_4;
+ y += ewram0_4.var10C->var4[pos].unk_0_0;
+ MenuPrint(ewram0_4.words[pos], ewram0_4.var10C->var3_4 + x, ewram0_4.var10C->var3_0 + y);
y += 2;
}
- MenuPrint(ewram0.varD8, ewram0.varF9, ewram0.var10C->var1);
+ MenuPrint(ewram0_4.varD8, ewram0_4.varF9, ewram0_4.var10C->var1);
}
static void sub_80F8F18(void)
@@ -382,13 +380,13 @@ static void sub_80F8F18(void)
static void sub_80F8F2C(void)
{
- if (ewram0.varFB != 0)
+ if (ewram0_4.varFB != 0)
{
AnimateSprites();
BuildOamBuffer();
}
- ewram0.varF0();
+ ewram0_4.varF0();
}
static void sub_80F8F58(void)
@@ -398,7 +396,7 @@ static void sub_80F8F58(void)
local0 = UpdatePaletteFade();
if (local0 == 0)
{
- ewram0.varF0 = sub_80F8F78;
+ ewram0_4.varF0 = sub_80F8F78;
}
}
@@ -407,7 +405,7 @@ static void sub_80F8F78(void)
if (gMain.newKeys & (A_BUTTON | B_BUTTON))
{
BeginNormalPaletteFade(-1, 0, 0, 16, 0);
- ewram0.varF0 = sub_80F8FB4;
+ ewram0_4.varF0 = sub_80F8FB4;
}
}
@@ -420,18 +418,18 @@ static void sub_80F8FB4(void)
return;
}
- SetMainCallback2(ewram0.varEC);
- switch (ewram0.varFB)
+ SetMainCallback2(ewram0_4.varEC);
+ switch (ewram0_4.varFB)
{
case 2:
case 1:
- local1 = sub_809D4A8(ewram0.varF4->species);
+ local1 = sub_809D4A8(ewram0_4.varF4->species);
sub_809D608(local1);
- sub_809D510(&gSprites[ewram0.varFC]);
+ sub_809D510(&gSprites[ewram0_4.varFC]);
break;
}
- memset(&ewram0, 0, 0x110);
+ memset(&ewram0_4, 0, 0x110);
ResetPaletteFade();
}
diff --git a/src/pokemon/pokeblock_feed.c b/src/pokemon/pokeblock_feed.c
index 5d6b215cd..5f218a6f6 100644
--- a/src/pokemon/pokeblock_feed.c
+++ b/src/pokemon/pokeblock_feed.c
@@ -19,8 +19,8 @@
#include "field_effect.h"
#include "sound.h"
#include "trig.h"
+#include "ewram.h"
-extern u8 ewram[];
extern struct MusicPlayerInfo gMPlay_BGM;
extern u8 gPokeblockMonID;
extern s16 gPokeblockGain;
@@ -540,7 +540,7 @@ static bool8 TransitionToPokeblockFeedScene(void)
case 6:
if (MultistepInitMenuWindowContinue())
{
- ewram[0x1FFFF] = 0;
+ ewram1FFFF = 0;
gMain.state++;
}
break;
@@ -551,11 +551,11 @@ static bool8 TransitionToPokeblockFeedScene(void)
}
break;
case 8:
- ewram[0x1FFFD] = sub_81480B4();
+ ewram1FFFD = sub_81480B4();
gMain.state++;
break;
case 9:
- ewram[0x1FFFE] = PokeblockFeed_CreatePokeSprite(&gPlayerParty[gPokeblockMonID]);
+ ewram1FFFE = PokeblockFeed_CreatePokeSprite(&gPlayerParty[gPokeblockMonID]);
gMain.state++;
break;
case 10:
@@ -611,13 +611,13 @@ static bool8 sub_8147B20(struct Pokemon* mon)
{
u16 species;
u32 PiD, TiD;
- switch (ewram[0x1FFFF])
+ switch (ewram1FFFF)
{
case 0:
species = GetMonData(mon, MON_DATA_SPECIES2);
PiD = GetMonData(mon, MON_DATA_PERSONALITY);
HandleLoadSpecialPokePic(&gMonFrontPicTable[species], gMonFrontPicCoords[species].coords, gMonFrontPicCoords[species].y_offset, 0x2000000, gUnknown_081FAF4C[1], species, PiD);
- ewram[0x1FFFF]++;
+ ewram1FFFF++;
break;
case 1:
{
@@ -629,37 +629,37 @@ static bool8 sub_8147B20(struct Pokemon* mon)
palette = GetMonSpritePalStructFromOtIdPersonality(species, TiD, PiD);
LoadCompressedObjectPalette(palette);
GetMonSpriteTemplate_803C56C(palette->tag, 1);
- ewram[0x1FFFF]++;
+ ewram1FFFF++;
}
break;
case 2:
LoadCompressedObjectPic(&gUnknown_083F7F74);
- ewram[0x1FFFF]++;
+ ewram1FFFF++;
break;
case 3:
LoadCompressedObjectPalette(&gUnknown_083F7F7C);
- ewram[0x1FFFF]++;
+ ewram1FFFF++;
break;
case 4:
LoadCompressedObjectPic(&sUnknown_084121DC);
- ewram[0x1FFFF]++;
+ ewram1FFFF++;
break;
case 5:
SetPokeblockFeedSpritePal(gScriptItemId);
LoadCompressedObjectPalette(&sPokeblockFeedSpritePal);
- ewram[0x1FFFF]++;
+ ewram1FFFF++;
break;
case 6:
LZDecompressVram(gBattleTerrainTiles_Building, (void*)(VRAM));
- ewram[0x1FFFF]++;
+ ewram1FFFF++;
break;
case 7:
LZDecompressVram(gUnknown_08E782FC, (void*)(VRAM + 0xE800));
- ewram[0x1FFFF]++;
+ ewram1FFFF++;
break;
case 8:
LoadCompressedPalette(gBattleTerrainPalette_BattleTower, 0x20, 0x60);
- ewram[0x1FFFF] = 0;
+ ewram1FFFF = 0;
return TRUE;
}
return FALSE;
@@ -684,13 +684,13 @@ static void sub_8147CC8(u8 taskID)
sub_81481DC();
break;
case 255:
- sub_8148108(ewram[0x1FFFD], gTasks[taskID].data[1]);
+ sub_8148108(ewram1FFFD, gTasks[taskID].data[1]);
break;
case 269:
- ewram[0x1FFFC] = CreatePokeblockSprite();
+ ewram1FFFC = CreatePokeblockSprite();
break;
case 281:
- sub_8148044(ewram[0x1FFFE]);
+ sub_8148044(ewram1FFFE);
break;
case 297:
gTasks[taskID].func = Task_PrintAtePokeblockText;
@@ -928,14 +928,11 @@ static bool8 sub_8148540(void)
}
}
-#define ewram1D000 ((u16 *)(ewram + 0x1D000))
-#define ewram1D400 ((u16 *)(ewram + 0x1D400))
-
static bool8 sub_81485CC(void)
{
u16 var = gUnknown_03005FA0[12] - gUnknown_03005FA0[4];
- gPokeblockFeedPokeSprite->pos2.x = ewram1D000[var];
+ gPokeblockFeedPokeSprite->pos2.x = ewram1D000_2[var];
gPokeblockFeedPokeSprite->pos2.y = ewram1D400[var];
if (--gUnknown_03005FA0[4] == 0)
@@ -960,7 +957,7 @@ static void sub_814862C(void)
for (i = 0; i < r7 - 1; i++)
{
- s16* r3 = &ewram1D000[r8 + i];
+ s16* r3 = &ewram1D000_2[r8 + i];
s16 r1 = *r3 - (var3);
s16* r5 = &ewram1D400[r8 + i];
@@ -970,7 +967,7 @@ static void sub_814862C(void)
*r5 -= r4 * (i + 1) / r7;
}
- ewram1D000[(r8 + r7) - 1] = var3;
+ ewram1D000_2[(r8 + r7) - 1] = var3;
ewram1D400[(r8 + r7) - 1] = r9;
}
@@ -999,12 +996,12 @@ void sub_8148710(void)
if (!var_24)
{
- ewram1D000[r4] = Sin(gUnknown_03005FA0[0], gUnknown_03005FA0[2] + r5 / 256) + r8;
+ ewram1D000_2[r4] = Sin(gUnknown_03005FA0[0], gUnknown_03005FA0[2] + r5 / 256) + r8;
ewram1D400[r4] = Cos(gUnknown_03005FA0[0], gUnknown_03005FA0[3] + r5 / 256) + r7;
}
else
{
- ewram1D000[r4] = Sin(gUnknown_03005FA0[0], gUnknown_03005FA0[2] - r5 / 256) + r8;
+ ewram1D000_2[r4] = Sin(gUnknown_03005FA0[0], gUnknown_03005FA0[2] - r5 / 256) + r8;
ewram1D400[r4] = Cos(gUnknown_03005FA0[0], gUnknown_03005FA0[3] - r5 / 256) + r7;
}
diff --git a/src/pokemon/pokedex.c b/src/pokemon/pokedex.c
index 947dfd218..18e98ca5f 100644
--- a/src/pokemon/pokedex.c
+++ b/src/pokemon/pokedex.c
@@ -24,6 +24,7 @@
#include "task.h"
#include "trig.h"
#include "unknown_task.h"
+#include "ewram.h"
#define NATIONAL_DEX_COUNT 386
@@ -954,86 +955,86 @@ static const struct OamData gOamData_83B557C =
};
static void *const gUnknown_083B5584[] =
{
- (void *)0x02008000,
- (void *)0x0200C000,
- (void *)0x02010000,
- (void *)0x02014000,
+ ePokedexPalAddr1,
+ ePokedexPalAddr2,
+ ePokedexPalAddr3,
+ ePokedexPalAddr4,
};
static const struct SpriteFrameImage gSpriteImageTable_83B5594[] =
{
- {(u8 *)0x02008000, 0x800},
- {(u8 *)0x02008800, 0x800},
- {(u8 *)0x02009000, 0x800},
- {(u8 *)0x02009800, 0x800},
- {(u8 *)0x0200A000, 0x800},
- {(u8 *)0x0200A800, 0x800},
- {(u8 *)0x0200B000, 0x800},
- {(u8 *)0x0200B800, 0x800},
- {(u8 *)0x0200C000, 0x800},
- {(u8 *)0x0200C800, 0x800},
- {(u8 *)0x0200D000, 0x800},
- {(u8 *)0x0200D800, 0x800},
- {(u8 *)0x0200E000, 0x800},
- {(u8 *)0x0200E800, 0x800},
- {(u8 *)0x0200F000, 0x800},
- {(u8 *)0x0200F800, 0x800},
+ {ewram8000, 0x800},
+ {ewram8800, 0x800},
+ {ewram9000, 0x800},
+ {ewram9800, 0x800},
+ {ewramA000, 0x800},
+ {ewramA800, 0x800},
+ {ewramB000, 0x800},
+ {ewramB800, 0x800},
+ {ewramC000, 0x800},
+ {ewramC800, 0x800},
+ {ewramD000, 0x800},
+ {ewramD800, 0x800},
+ {ewramE000, 0x800},
+ {ewramE800, 0x800},
+ {ewramF000, 0x800},
+ {ewramF800, 0x800},
};
static const struct SpriteFrameImage gSpriteImageTable_83B5614[] =
{
- {(u8 *)0x0200C000, 0x800},
- {(u8 *)0x0200C800, 0x800},
- {(u8 *)0x0200D000, 0x800},
- {(u8 *)0x0200D800, 0x800},
- {(u8 *)0x0200E000, 0x800},
- {(u8 *)0x0200E800, 0x800},
- {(u8 *)0x0200F000, 0x800},
- {(u8 *)0x0200F800, 0x800},
- {(u8 *)0x02010000, 0x800},
- {(u8 *)0x02010800, 0x800},
- {(u8 *)0x02011000, 0x800},
- {(u8 *)0x02011800, 0x800},
- {(u8 *)0x02012000, 0x800},
- {(u8 *)0x02012800, 0x800},
- {(u8 *)0x02013000, 0x800},
- {(u8 *)0x02013800, 0x800},
+ {ewramC000, 0x800},
+ {ewramC800, 0x800},
+ {ewramD000, 0x800},
+ {ewramD800, 0x800},
+ {ewramE000, 0x800},
+ {ewramE800, 0x800},
+ {ewramF000, 0x800},
+ {ewramF800, 0x800},
+ {ewram10000, 0x800},
+ {ewram10800, 0x800},
+ {ewram11000, 0x800},
+ {ewram11800, 0x800},
+ {ewram12000, 0x800},
+ {ewram12800, 0x800},
+ {ewram13000, 0x800},
+ {ewram13800, 0x800},
};
static const struct SpriteFrameImage gSpriteImageTable_83B5694[] =
{
- {(u8 *)0x02010000, 0x800},
- {(u8 *)0x02010800, 0x800},
- {(u8 *)0x02011000, 0x800},
- {(u8 *)0x02011800, 0x800},
- {(u8 *)0x02012000, 0x800},
- {(u8 *)0x02012800, 0x800},
- {(u8 *)0x02013000, 0x800},
- {(u8 *)0x02013800, 0x800},
- {(u8 *)0x02014000, 0x800},
- {(u8 *)0x02014800, 0x800},
- {(u8 *)0x02015000, 0x800},
- {(u8 *)0x02015800, 0x800},
- {(u8 *)0x02016000, 0x800},
- {(u8 *)0x02016800, 0x800},
- {(u8 *)0x02017000, 0x800},
- {(u8 *)0x02017800, 0x800},
+ {ewram10000, 0x800},
+ {ewram10800, 0x800},
+ {ewram11000, 0x800},
+ {ewram11800, 0x800},
+ {ewram12000, 0x800},
+ {ewram12800, 0x800},
+ {ewram13000, 0x800},
+ {ewram13800, 0x800},
+ {ewram14000, 0x800},
+ {ewram14800, 0x800},
+ {ewram15000, 0x800},
+ {ewram15800, 0x800},
+ {ewram16000_2, 0x800},
+ {ewram16800, 0x800},
+ {ewram17000, 0x800},
+ {ewram17800_2, 0x800},
};
static const struct SpriteFrameImage gSpriteImageTable_83B5714[] =
{
- {(u8 *)0x02014000, 0x800},
- {(u8 *)0x02014800, 0x800},
- {(u8 *)0x02015000, 0x800},
- {(u8 *)0x02015800, 0x800},
- {(u8 *)0x02016000, 0x800},
- {(u8 *)0x02016800, 0x800},
- {(u8 *)0x02017000, 0x800},
- {(u8 *)0x02017800, 0x800},
- {(u8 *)0x02018000, 0x800},
- {(u8 *)0x02018800, 0x800},
- {(u8 *)0x02019000, 0x800},
- {(u8 *)0x02019800, 0x800},
- {(u8 *)0x0201A000, 0x800},
- {(u8 *)0x0201A800, 0x800},
- {(u8 *)0x0201B000, 0x800},
- {(u8 *)0x0201B800, 0x800},
+ {ewram14000, 0x800},
+ {ewram14800, 0x800},
+ {ewram15000, 0x800},
+ {ewram15800, 0x800},
+ {ewram16000_2, 0x800},
+ {ewram16800, 0x800},
+ {ewram17000, 0x800},
+ {ewram17800_2, 0x800},
+ {ewram18000_2, 0x800},
+ {ewram18800, 0x800},
+ {ewram19000, 0x800},
+ {ewram19800, 0x800},
+ {ewram1A000, 0x800},
+ {ewram1A800, 0x800},
+ {ewram1B000_2, 0x800},
+ {ewram1B800, 0x800},
};
static const struct SpriteFrameImage *const gUnknown_083B5794[] =
{
@@ -1275,8 +1276,8 @@ static void sub_8091564(u16 weight, u8 i, u8 i1);
static void sub_8091738(u16, u16, u16);
static void sub_80917CC(u16 i, u16 i1);
static u16 sub_8091818(u8, u16, u16, u16);
-static u16 sub_80918EC(u16 a, s16 b, s16 c, u16 d);
-static u8 sub_8091A4C(u16 gender, s16, s16, u16);
+u16 sub_80918EC(u16 a, s16 b, s16 c, u16 d);
+u8 sub_8091A4C(u16 gender, s16, s16, u16);
static void sub_8091E54(u8);
static void sub_809204C(u8);
static void sub_809207C(u8);
@@ -1433,16 +1434,16 @@ void CB2_InitPokedex(void)
{
case 0:
default:
- gPokedexView = (struct PokedexView *)0x02018000;
+ gPokedexView = ePokedexView1;
break;
case 1:
- gPokedexView = (struct PokedexView *)0x02018800;
+ gPokedexView = ePokedexView2;
break;
case 2:
- gPokedexView = (struct PokedexView *)0x02019000;
+ gPokedexView = ePokedexView3;
break;
case 3:
- gPokedexView = (struct PokedexView *)0x02019800;
+ gPokedexView = ePokedexView4;
break;
}
ClearPokedexView(gPokedexView);
@@ -4557,7 +4558,7 @@ u16 sub_80918EC(u16 num, s16 x, s16 y, u16 paletteNum)
&gMonFrontPicTable[num],
gMonFrontPicCoords[num].coords,
gMonFrontPicCoords[num].y_offset,
- (void *)0x02000000,
+ (void*)ewram_addr,
gUnknown_083B5584[paletteNum],
num);
break;
@@ -4566,7 +4567,7 @@ u16 sub_80918EC(u16 num, s16 x, s16 y, u16 paletteNum)
&gMonFrontPicTable[num],
gMonFrontPicCoords[num].coords,
gMonFrontPicCoords[num].y_offset,
- 0x02000000,
+ ewram_addr,
gUnknown_083B5584[paletteNum],
num,
gSaveBlock2.pokedex.spindaPersonality,
@@ -4577,7 +4578,7 @@ u16 sub_80918EC(u16 num, s16 x, s16 y, u16 paletteNum)
&gMonFrontPicTable[num],
gMonFrontPicCoords[num].coords,
gMonFrontPicCoords[num].y_offset,
- 0x02000000,
+ ewram_addr,
gUnknown_083B5584[paletteNum],
num,
gSaveBlock2.pokedex.unownPersonality,
@@ -4591,7 +4592,7 @@ u16 sub_80918EC(u16 num, s16 x, s16 y, u16 paletteNum)
return spriteId;
}
-static u8 sub_8091A4C(u16 gender, s16 x, s16 y, u16 paletteNum)
+u8 sub_8091A4C(u16 gender, s16 x, s16 y, u16 paletteNum)
{
u8 spriteId;
@@ -4599,7 +4600,7 @@ static u8 sub_8091A4C(u16 gender, s16 x, s16 y, u16 paletteNum)
&gTrainerFrontPicTable[gender],
gTrainerFrontPicCoords[gender].coords,
gTrainerFrontPicCoords[gender].y_offset,
- (void *)0x02000000,
+ (void*)ewram_addr,
gUnknown_083B5584[0],
gender);
sub_80918B0(gender, 0);
diff --git a/src/pokemon/pokedex_cry_screen.c b/src/pokemon/pokedex_cry_screen.c
index 92fd832fc..912b9aabd 100644
--- a/src/pokemon/pokedex_cry_screen.c
+++ b/src/pokemon/pokedex_cry_screen.c
@@ -2,6 +2,7 @@
#include "pokedex_cry_screen.h"
#include "palette.h"
#include "sprite.h"
+#include "ewram.h"
struct Unk201C800 {
u8 unk_0;
@@ -11,10 +12,6 @@ struct Unk201C800 {
u16 unk_4;
};
-#define EWRAM_1C800 (*(struct Unk201C800 *)(unk_201C000 + 0x800))
-
-extern u8 unk_201C000[];
-
extern u8 gUnknown_03005E98;
// data/pokedex_cry_screen.o
@@ -49,7 +46,7 @@ u8 ShowPokedexCryScreen(struct CryRelatedStruct *cry, u8 arg1) {
u32 r12;
int x, y;
- vram = (void *) BG_SCREEN_ADDR(cry->unk2);
+ vram = BG_SCREEN_ADDR(cry->unk2);
r12 = (u32) (cry->unk0 << 18) >> 23;
diff --git a/src/pokemon/pokemon_1.c b/src/pokemon/pokemon_1.c
index 204baddbf..750a9892a 100644
--- a/src/pokemon/pokemon_1.c
+++ b/src/pokemon/pokemon_1.c
@@ -9,6 +9,7 @@
#include "sprite.h"
#include "string_util.h"
#include "text.h"
+#include "ewram.h"
//Extracts the upper 16 bits of a 32-bit number
#define HIHALF(n) (((n) & 0xFFFF0000) >> 16)
@@ -16,7 +17,6 @@
//Extracts the lower 16 bits of a 32-bit number
#define LOHALF(n) ((n) & 0xFFFF)
-extern u8 unk_2000000[];
extern u16 gMoveToLearn;
static EWRAM_DATA u8 sLearningMoveTableID = 0;
@@ -39,17 +39,17 @@ void ZeroMonData(struct Pokemon *mon)
u32 arg;
ZeroBoxMonData(&mon->box);
arg = 0;
- SetMonData(mon, MON_DATA_STATUS, (u8 *)&arg);
- SetMonData(mon, MON_DATA_LEVEL, (u8 *)&arg);
- SetMonData(mon, MON_DATA_HP, (u8 *)&arg);
- SetMonData(mon, MON_DATA_MAX_HP, (u8 *)&arg);
- SetMonData(mon, MON_DATA_ATK, (u8 *)&arg);
- SetMonData(mon, MON_DATA_DEF, (u8 *)&arg);
- SetMonData(mon, MON_DATA_SPEED, (u8 *)&arg);
- SetMonData(mon, MON_DATA_SPATK, (u8 *)&arg);
- SetMonData(mon, MON_DATA_SPDEF, (u8 *)&arg);
+ SetMonData(mon, MON_DATA_STATUS, &arg);
+ SetMonData(mon, MON_DATA_LEVEL, &arg);
+ SetMonData(mon, MON_DATA_HP, &arg);
+ SetMonData(mon, MON_DATA_MAX_HP, &arg);
+ SetMonData(mon, MON_DATA_ATK, &arg);
+ SetMonData(mon, MON_DATA_DEF, &arg);
+ SetMonData(mon, MON_DATA_SPEED, &arg);
+ SetMonData(mon, MON_DATA_SPATK, &arg);
+ SetMonData(mon, MON_DATA_SPDEF, &arg);
arg = 255;
- SetMonData(mon, MON_DATA_MAIL, (u8 *)&arg);
+ SetMonData(mon, MON_DATA_MAIL, &arg);
}
void ZeroPlayerPartyMons(void)
@@ -74,7 +74,7 @@ void CreateMon(struct Pokemon *mon, u16 species, u8 level, u8 fixedIV, u8 hasFix
CreateBoxMon(&mon->box, species, level, fixedIV, hasFixedPersonality, fixedPersonality, otIdType, fixedOtId);
SetMonData(mon, MON_DATA_LEVEL, &level);
arg = 255;
- SetMonData(mon, MON_DATA_MAIL, (u8 *)&arg);
+ SetMonData(mon, MON_DATA_MAIL, &arg);
CalculateMonStats(mon);
}
@@ -92,7 +92,7 @@ void CreateBoxMon(struct BoxPokemon *boxMon, u16 species, u8 level, u8 fixedIV,
else
personality = Random32();
- SetBoxMonData(boxMon, MON_DATA_PERSONALITY, (u8 *)&personality);
+ SetBoxMonData(boxMon, MON_DATA_PERSONALITY, &personality);
//Determine original trainer ID
if (otIdType == 2) //Pokemon cannot be shiny
@@ -116,24 +116,24 @@ void CreateBoxMon(struct BoxPokemon *boxMon, u16 species, u8 level, u8 fixedIV,
| (gSaveBlock2.playerTrainerId[3] << 24);
}
- SetBoxMonData(boxMon, MON_DATA_OT_ID, (u8 *)&value);
+ SetBoxMonData(boxMon, MON_DATA_OT_ID, &value);
checksum = CalculateBoxMonChecksum(boxMon);
- SetBoxMonData(boxMon, MON_DATA_CHECKSUM, (u8 *)&checksum);
+ SetBoxMonData(boxMon, MON_DATA_CHECKSUM, &checksum);
EncryptBoxMon(boxMon);
GetSpeciesName(speciesName, species);
SetBoxMonData(boxMon, MON_DATA_NICKNAME, speciesName);
SetBoxMonData(boxMon, MON_DATA_LANGUAGE, &gGameLanguage);
SetBoxMonData(boxMon, MON_DATA_OT_NAME, gSaveBlock2.playerName);
- SetBoxMonData(boxMon, MON_DATA_SPECIES, (u8 *)&species);
- SetBoxMonData(boxMon, MON_DATA_EXP, (u8 *)&gExperienceTables[gBaseStats[species].growthRate][level]);
+ SetBoxMonData(boxMon, MON_DATA_SPECIES, &species);
+ SetBoxMonData(boxMon, MON_DATA_EXP, &gExperienceTables[gBaseStats[species].growthRate][level]);
SetBoxMonData(boxMon, MON_DATA_FRIENDSHIP, &gBaseStats[species].friendship);
value = sav1_map_get_name();
- SetBoxMonData(boxMon, MON_DATA_MET_LOCATION, (u8 *)&value);
+ SetBoxMonData(boxMon, MON_DATA_MET_LOCATION, &value);
SetBoxMonData(boxMon, MON_DATA_MET_LEVEL, &level);
SetBoxMonData(boxMon, MON_DATA_MET_GAME, &gGameVersion);
value = 4;
- SetBoxMonData(boxMon, MON_DATA_POKEBALL, (u8 *)&value);
+ SetBoxMonData(boxMon, MON_DATA_POKEBALL, &value);
SetBoxMonData(boxMon, MON_DATA_OT_GENDER, &gSaveBlock2.playerGender);
if (fixedIV < 32)
@@ -151,26 +151,26 @@ void CreateBoxMon(struct BoxPokemon *boxMon, u16 species, u8 level, u8 fixedIV,
value = Random();
iv = value & 0x1F;
- SetBoxMonData(boxMon, MON_DATA_HP_IV, (u8 *)&iv);
+ SetBoxMonData(boxMon, MON_DATA_HP_IV, &iv);
iv = (value & 0x3E0) >> 5;
- SetBoxMonData(boxMon, MON_DATA_ATK_IV, (u8 *)&iv);
+ SetBoxMonData(boxMon, MON_DATA_ATK_IV, &iv);
iv = (value & 0x7C00) >> 10;
- SetBoxMonData(boxMon, MON_DATA_DEF_IV, (u8 *)&iv);
+ SetBoxMonData(boxMon, MON_DATA_DEF_IV, &iv);
value = Random();
iv = value & 0x1F;
- SetBoxMonData(boxMon, MON_DATA_SPEED_IV, (u8 *)&iv);
+ SetBoxMonData(boxMon, MON_DATA_SPEED_IV, &iv);
iv = (value & 0x3E0) >> 5;
- SetBoxMonData(boxMon, MON_DATA_SPATK_IV, (u8 *)&iv);
+ SetBoxMonData(boxMon, MON_DATA_SPATK_IV, &iv);
iv = (value & 0x7C00) >> 10;
- SetBoxMonData(boxMon, MON_DATA_SPDEF_IV, (u8 *)&iv);
+ SetBoxMonData(boxMon, MON_DATA_SPDEF_IV, &iv);
}
if (gBaseStats[species].ability2)
{
value = personality & 1;
- SetBoxMonData(boxMon, MON_DATA_ALT_ABILITY, (u8 *)&value);
+ SetBoxMonData(boxMon, MON_DATA_ALT_ABILITY, &value);
}
GiveBoxMonInitialMoveset(boxMon);
@@ -237,7 +237,7 @@ void CreateMaleMon(struct Pokemon *mon, u16 species, u8 level)
void CreateMonWithIVsPersonality(struct Pokemon *mon, u16 species, u8 level, u32 ivs, u32 personality)
{
CreateMon(mon, species, level, 0, 1, personality, 0, 0);
- SetMonData(mon, MON_DATA_IVS, (u8 *)&ivs);
+ SetMonData(mon, MON_DATA_IVS, &ivs);
CalculateMonStats(mon);
}
@@ -278,7 +278,7 @@ void CreateMonWithEVSpread(struct Pokemon *mon, u16 species, u8 level, u8 fixedI
for (i = 0; i < 6; i++)
{
if (evSpread & temp)
- SetMonData(mon, MON_DATA_HP_EV + i, (u8 *)&evAmount);
+ SetMonData(mon, MON_DATA_HP_EV + i, &evAmount);
temp <<= 1;
}
@@ -297,8 +297,8 @@ void sub_803ADE8(struct Pokemon *mon, struct UnknownPokemonStruct *src)
for (i = 0; i < 4; i++)
SetMonMoveSlot(mon, src->moves[i], i);
- SetMonData(mon, MON_DATA_PP_BONUSES, (u8 *)&src->ppBonuses);
- SetMonData(mon, MON_DATA_HELD_ITEM, (u8 *)&src->heldItem);
+ SetMonData(mon, MON_DATA_PP_BONUSES, &src->ppBonuses);
+ SetMonData(mon, MON_DATA_HELD_ITEM, &src->heldItem);
StringCopy(nickname, src->nickname);
@@ -310,13 +310,13 @@ void sub_803ADE8(struct Pokemon *mon, struct UnknownPokemonStruct *src)
SetMonData(mon, MON_DATA_LANGUAGE, &language);
StripExtCtrlCodes(nickname);
SetMonData(mon, MON_DATA_NICKNAME, nickname);
- SetMonData(mon, MON_DATA_FRIENDSHIP, (u8 *)&src->friendship);
- SetMonData(mon, MON_DATA_HP_EV, (u8 *)&src->hpEV);
- SetMonData(mon, MON_DATA_ATK_EV, (u8 *)&src->attackEV);
- SetMonData(mon, MON_DATA_DEF_EV, (u8 *)&src->defenseEV);
- SetMonData(mon, MON_DATA_SPEED_EV, (u8 *)&src->speedEV);
- SetMonData(mon, MON_DATA_SPATK_EV, (u8 *)&src->spAttackEV);
- SetMonData(mon, MON_DATA_SPDEF_EV, (u8 *)&src->spDefenseEV);
+ SetMonData(mon, MON_DATA_FRIENDSHIP, &src->friendship);
+ SetMonData(mon, MON_DATA_HP_EV, &src->hpEV);
+ SetMonData(mon, MON_DATA_ATK_EV, &src->attackEV);
+ SetMonData(mon, MON_DATA_DEF_EV, &src->defenseEV);
+ SetMonData(mon, MON_DATA_SPEED_EV, &src->speedEV);
+ SetMonData(mon, MON_DATA_SPATK_EV, &src->spAttackEV);
+ SetMonData(mon, MON_DATA_SPDEF_EV, &src->spDefenseEV);
value = src->altAbility;
SetMonData(mon, MON_DATA_ALT_ABILITY, &value);
value = src->hpIV;
@@ -401,7 +401,7 @@ u16 CalculateBoxMonChecksum(struct BoxPokemon *boxMon)
s32 n = (((2 * baseStat + iv + ev / 4) * level) / 100) + 5; \
u8 nature = GetNature(mon); \
n = nature_stat_mod(nature, n, statIndex); \
- SetMonData(mon, field, (u8 *)&n); \
+ SetMonData(mon, field, &n); \
}
void CalculateMonStats(struct Pokemon *mon)
@@ -424,7 +424,7 @@ void CalculateMonStats(struct Pokemon *mon)
s32 level = GetLevelFromMonExp(mon);
s32 newMaxHP;
- SetMonData(mon, MON_DATA_LEVEL, (u8 *)&level);
+ SetMonData(mon, MON_DATA_LEVEL, &level);
if (species == SPECIES_SHEDINJA)
{
@@ -436,11 +436,11 @@ void CalculateMonStats(struct Pokemon *mon)
newMaxHP = (((n + hpEV / 4) * level) / 100) + level + 10;
}
- unk_2000000[0x160FA] = newMaxHP - oldMaxHP;
- if (unk_2000000[0x160FA] == 0)
- unk_2000000[0x160FA] = 1;
+ eStatHp = newMaxHP - oldMaxHP;
+ if (eStatHp == 0)
+ eStatHp = 1;
- SetMonData(mon, MON_DATA_MAX_HP, (u8 *)&newMaxHP);
+ SetMonData(mon, MON_DATA_MAX_HP, &newMaxHP);
CALC_STAT(baseAttack, attackIV, attackEV, 1, MON_DATA_ATK)
CALC_STAT(baseDefense, defenseIV, defenseEV, 2, MON_DATA_DEF)
@@ -465,18 +465,18 @@ void CalculateMonStats(struct Pokemon *mon)
return;
}
- SetMonData(mon, MON_DATA_HP, (u8 *)&currentHP);
+ SetMonData(mon, MON_DATA_HP, &currentHP);
}
void sub_803B4B4(const struct BoxPokemon *src, struct Pokemon *dest)
{
u32 value = 0;
dest->box = *src;
- SetMonData(dest, MON_DATA_STATUS, (u8 *)&value);
- SetMonData(dest, MON_DATA_HP, (u8 *)&value);
- SetMonData(dest, MON_DATA_MAX_HP, (u8 *)&value);
+ SetMonData(dest, MON_DATA_STATUS, &value);
+ SetMonData(dest, MON_DATA_HP, &value);
+ SetMonData(dest, MON_DATA_MAX_HP, &value);
value = 255;
- SetMonData(dest, MON_DATA_MAIL, (u8 *)&value);
+ SetMonData(dest, MON_DATA_MAIL, &value);
CalculateMonStats(dest);
}
@@ -517,7 +517,7 @@ u16 GiveMoveToBoxMon(struct BoxPokemon *boxMon, u16 move)
u16 existingMove = GetBoxMonData(boxMon, MON_DATA_MOVE1 + i, NULL);
if (!existingMove)
{
- SetBoxMonData(boxMon, MON_DATA_MOVE1 + i, (u8 *)&move);
+ SetBoxMonData(boxMon, MON_DATA_MOVE1 + i, &move);
SetBoxMonData(boxMon, MON_DATA_PP1 + i, &gBattleMoves[move].pp);
return move;
}
@@ -546,7 +546,7 @@ u16 GiveMoveToBattleMon(struct BattlePokemon *mon, u16 move)
void SetMonMoveSlot(struct Pokemon *mon, u16 move, u8 slot)
{
- SetMonData(mon, MON_DATA_MOVE1 + slot, (u8 *)&move);
+ SetMonData(mon, MON_DATA_MOVE1 + slot, &move);
SetMonData(mon, MON_DATA_PP1 + slot, &gBattleMoves[move].pp);
}
@@ -636,7 +636,7 @@ void DeleteFirstMoveAndGiveMoveToMon(struct Pokemon *mon, u16 move)
for (i = 0; i < 4; i++)
{
- SetMonData(mon, MON_DATA_MOVE1 + i, (u8 *)&moves[i]);
+ SetMonData(mon, MON_DATA_MOVE1 + i, &moves[i]);
SetMonData(mon, MON_DATA_PP1 + i, &pp[i]);
}
@@ -663,7 +663,7 @@ void DeleteFirstMoveAndGiveMoveToBoxMon(struct BoxPokemon *boxMon, u16 move)
for (i = 0; i < 4; i++)
{
- SetBoxMonData(boxMon, MON_DATA_MOVE1 + i, (u8 *)&moves[i]);
+ SetBoxMonData(boxMon, MON_DATA_MOVE1 + i, &moves[i]);
SetBoxMonData(boxMon, MON_DATA_PP1 + i, &pp[i]);
}
diff --git a/src/pokemon/pokemon_2.c b/src/pokemon/pokemon_2.c
index 447d95768..68923a16e 100644
--- a/src/pokemon/pokemon_2.c
+++ b/src/pokemon/pokemon_2.c
@@ -12,13 +12,11 @@
#include "strings2.h"
#include "text.h"
#include "util.h"
+#include "ewram.h"
extern u8 gPlayerPartyCount;
extern u8 gEnemyPartyCount;
-extern u16 unk_20160BC[];
-extern struct SecretBaseRecord gSecretBaseRecord;
-extern u32 dword_2017100[];
extern u16 gBattleTypeFlags;
extern u8 gActiveBank;
extern struct BattlePokemon gBattleMons[4];
@@ -1062,30 +1060,31 @@ void CreateSecretBaseEnemyParty(struct SecretBaseRecord *secretBaseRecord)
s32 i, j;
ZeroEnemyPartyMons();
- memcpy(&gSecretBaseRecord, secretBaseRecord, sizeof(*secretBaseRecord));
+ memcpy(eSecretBaseRecord, secretBaseRecord, sizeof(*secretBaseRecord));
for (i = 0; i < 6; i++)
{
- if (gSecretBaseRecord.partySpecies[i])
+ if (eSecretBaseRecord->partySpecies[i])
{
CreateMon(&gEnemyParty[i],
- gSecretBaseRecord.partySpecies[i],
- gSecretBaseRecord.partyLevels[i],
+ eSecretBaseRecord->partySpecies[i],
+ eSecretBaseRecord->partyLevels[i],
15,
1,
- gSecretBaseRecord.partyPersonality[i],
+ eSecretBaseRecord->partyPersonality[i],
2,
0);
- SetMonData(&gEnemyParty[i], MON_DATA_HELD_ITEM, (u8 *)&gSecretBaseRecord.partyHeldItems[i]);
+ // these two SetMonData calls require the (u8 *) cast since SetMonData is declared in this function.
+ SetMonData(&gEnemyParty[i], MON_DATA_HELD_ITEM, (u8 *)&eSecretBaseRecord->partyHeldItems[i]);
for (j = 0; j < 6; j++)
- SetMonData(&gEnemyParty[i], MON_DATA_HP_EV + j, &gSecretBaseRecord.partyEVs[i]);
+ SetMonData(&gEnemyParty[i], MON_DATA_HP_EV + j, &eSecretBaseRecord->partyEVs[i]);
for (j = 0; j < 4; j++)
{
- SetMonData(&gEnemyParty[i], MON_DATA_MOVE1 + j, (u8 *)&gSecretBaseRecord.partyMoves[i * 4 + j]);
- SetMonData(&gEnemyParty[i], MON_DATA_PP1 + j, &gBattleMoves[gSecretBaseRecord.partyMoves[i * 4 + j]].pp);
+ SetMonData(&gEnemyParty[i], MON_DATA_MOVE1 + j, (u8 *)&eSecretBaseRecord->partyMoves[i * 4 + j]);
+ SetMonData(&gEnemyParty[i], MON_DATA_PP1 + j, &gBattleMoves[eSecretBaseRecord->partyMoves[i * 4 + j]].pp);
}
}
}
@@ -1096,13 +1095,13 @@ void CreateSecretBaseEnemyParty(struct SecretBaseRecord *secretBaseRecord)
u8 GetSecretBaseTrainerPicIndex(void)
{
- u8 trainerClass = gSecretBaseTrainerClasses[gSecretBaseRecord.gender][gSecretBaseRecord.trainerId[0] % 5];
+ u8 trainerClass = gSecretBaseTrainerClasses[eSecretBaseRecord->gender][eSecretBaseRecord->trainerId[0] % 5];
return gTrainerClassToPicIndex[trainerClass];
}
u8 GetSecretBaseTrainerNameIndex(void)
{
- u8 trainerClass = gSecretBaseTrainerClasses[gSecretBaseRecord.gender][gSecretBaseRecord.trainerId[0] % 5];
+ u8 trainerClass = gSecretBaseTrainerClasses[eSecretBaseRecord->gender][eSecretBaseRecord->trainerId[0] % 5];
return gTrainerClassToNameIndex[trainerClass];
}
@@ -1207,7 +1206,7 @@ void CopyPlayerPartyMonToBattleData(u8 battleIndex, u8 partyIndex)
GetMonData(&gPlayerParty[partyIndex], MON_DATA_NICKNAME, nickname);
StringCopy10(gBattleMons[battleIndex].nickname, nickname);
GetMonData(&gPlayerParty[partyIndex], MON_DATA_OT_NAME, gBattleMons[battleIndex].otName);
- *(unk_20160BC + GetBankSide(battleIndex)) = gBattleMons[battleIndex].hp;
+ ewram160BC[GetBankSide(battleIndex)] = gBattleMons[battleIndex].hp;
for (i = 0; i < 8; i++)
gBattleMons[battleIndex].statStages[i] = 6;
diff --git a/src/pokemon/pokemon_3.c b/src/pokemon/pokemon_3.c
index f3d0bee03..19786e506 100644
--- a/src/pokemon/pokemon_3.c
+++ b/src/pokemon/pokemon_3.c
@@ -22,6 +22,7 @@
#include "string_util.h"
#include "text.h"
#include "util.h"
+#include "ewram.h"
extern u8 gPlayerPartyCount;
extern u8 gEnemyPartyCount;
@@ -68,7 +69,7 @@ bool8 HealStatusConditions(struct Pokemon *mon, u32 unused, u32 healMask, u8 bat
if (status & healMask)
{
status &= ~healMask;
- SetMonData(mon, MON_DATA_STATUS, (u8 *)&status);
+ SetMonData(mon, MON_DATA_STATUS, &status);
if (gMain.inBattle && battleId != 4)
gBattleMons[battleId].status1 &= ~healMask;
return FALSE;
@@ -203,7 +204,7 @@ void sub_803F324(int stat)
u8 *sub_803F378(u16 itemId)
{
int i;
- u8 *itemEffect;
+ const u8 *itemEffect;
if (itemId == ITEM_ENIGMA_BERRY)
{
@@ -218,7 +219,7 @@ u8 *sub_803F378(u16 itemId)
}
else
{
- itemEffect = (u8 *) gItemEffectTable[itemId - 13];
+ itemEffect = gItemEffectTable[itemId - 13];
}
gStringBank = gBankInMenu;
@@ -355,7 +356,7 @@ u16 GetEvolutionTargetSpecies(struct Pokemon *mon, u8 type, u16 evolutionItem)
if (gEvolutionTable[species].evolutions[i].param == heldItem)
{
heldItem = 0;
- SetMonData(mon, MON_DATA_HELD_ITEM, (u8 *)&heldItem);
+ SetMonData(mon, MON_DATA_HELD_ITEM, &heldItem);
targetSpecies = gEvolutionTable[species].evolutions[i].targetSpecies;
}
break;
@@ -695,7 +696,7 @@ void AdjustFriendship(struct Pokemon *mon, u8 event)
friendship = 0;
if (friendship > 255)
friendship = 255;
- SetMonData(mon, MON_DATA_FRIENDSHIP, (u8 *)&friendship);
+ SetMonData(mon, MON_DATA_FRIENDSHIP, &friendship);
}
}
}
@@ -1299,16 +1300,16 @@ void SetWildMonHeldItem(void)
u16 species = GetMonData(&gEnemyParty[0], MON_DATA_SPECIES, 0);
if (gBaseStats[species].item1 == gBaseStats[species].item2)
{
- SetMonData(&gEnemyParty[0], MON_DATA_HELD_ITEM, (u8 *)&gBaseStats[species].item1);
+ SetMonData(&gEnemyParty[0], MON_DATA_HELD_ITEM, &gBaseStats[species].item1);
return;
}
if (rnd > 44)
{
if (rnd <= 94)
- SetMonData(&gEnemyParty[0], MON_DATA_HELD_ITEM, (u8 *)&gBaseStats[species].item1);
+ SetMonData(&gEnemyParty[0], MON_DATA_HELD_ITEM, &gBaseStats[species].item1);
else
- SetMonData(&gEnemyParty[0], MON_DATA_HELD_ITEM, (u8 *)&gBaseStats[species].item2);
+ SetMonData(&gEnemyParty[0], MON_DATA_HELD_ITEM, &gBaseStats[species].item2);
}
}
}
diff --git a/src/pokemon/pokemon_icon.c b/src/pokemon/pokemon_icon.c
index 9bb3386e1..e83f912ec 100644
--- a/src/pokemon/pokemon_icon.c
+++ b/src/pokemon/pokemon_icon.c
@@ -1215,8 +1215,11 @@ u8 UpdateMonIconFrame(struct Sprite *sprite)
break;
default:
RequestSpriteCopy(
- (u8 *)sprite->images + sSpriteImageSizes[sprite->oam.shape][sprite->oam.size] * frame,
- (u8 *)OBJ_VRAM0 + sprite->oam.tileNum * TILE_SIZE_4BPP,
+ // pointer arithmetic is needed to get the correct pointer to perform the sprite copy on.
+ // because sprite->images is a struct def, it has to be casted to (u8 *) before any
+ // arithmetic can be performed.
+ (u8 *)sprite->images + (sSpriteImageSizes[sprite->oam.shape][sprite->oam.size] * frame),
+ OBJ_VRAM0 + sprite->oam.tileNum * TILE_SIZE_4BPP,
sSpriteImageSizes[sprite->oam.shape][sprite->oam.size]);
{
register u8 duration asm("r0") = sprite->anims[sprite->animNum][sprite->animCmdIndex].frame.duration;
diff --git a/src/pokemon/pokemon_menu.c b/src/pokemon/pokemon_menu.c
index 7d70e7708..3a2c12db5 100644
--- a/src/pokemon/pokemon_menu.c
+++ b/src/pokemon/pokemon_menu.c
@@ -29,6 +29,7 @@
#include "fieldmap.h"
#include "item_menu.h"
#include "player_pc.h"
+#include "ewram.h"
/*
Pokemon menu:
@@ -49,7 +50,6 @@ extern u8 gUnknown_0202E8F5;
extern u8 gUnknown_0202E8F6;
extern u8 gUnknown_02038561;
extern u16 gUnknown_0202E8F8;
-extern u8 ewram[];
extern void (*gUnknown_03004AE4)(u8 taskID, u16 itemID, TaskFunc func);
extern TaskFunc gUnknown_03005CF0;
diff --git a/src/pokemon/pokemon_storage_system.c b/src/pokemon/pokemon_storage_system.c
index 5e97523e2..4a68b846a 100644
--- a/src/pokemon/pokemon_storage_system.c
+++ b/src/pokemon/pokemon_storage_system.c
@@ -2,6 +2,7 @@
#include "pokemon_storage_system.h"
#include "menu.h"
#include "string_util.h"
+#include "ewram.h"
struct StorageAction {
u8 *text;
@@ -10,15 +11,8 @@ struct StorageAction {
extern const struct StorageAction gUnknown_083B6DF4[];
-extern const u8 unk_2000000[];
-
EWRAM_DATA struct PokemonStorage gPokemonStorage = {0};
-#define gUnk2002694 (u8 *)(&unk_2000000[0x2694])
-#define gUnk20026A6 (u8 *)(&unk_2000000[0x26a6])
-#define gUnk20011fa (u8 *)(&unk_2000000[0x11fa])
-#define gUnk20026e4 (u8 *)(&unk_2000000[0x26e4])
-
void sub_8098898(u8 index) {
u8 *ptr;
diff --git a/src/pokemon/pokemon_summary_screen.c b/src/pokemon/pokemon_summary_screen.c
index 00a0bea29..d1d226b80 100644
--- a/src/pokemon/pokemon_summary_screen.c
+++ b/src/pokemon/pokemon_summary_screen.c
@@ -7,14 +7,13 @@
#include "string_util.h"
#include "strings2.h"
#include "tv.h"
-
-extern struct Pokemon *unk_2018000;
+#include "ewram.h"
bool8 PokemonSummaryScreen_CheckOT(struct Pokemon *mon)
{
u32 trainerId;
- if (unk_2018000 == gEnemyParty)
+ if (ewram18000_3 == gEnemyParty)
{
u8 enemyId = GetMultiplayerId() ^ 1;
trainerId = gLinkPlayers[enemyId].trainerId & 0xFFFF;
diff --git a/src/pokenav_before.c b/src/pokenav_before.c
index db9de522a..5cd1c8942 100644
--- a/src/pokenav_before.c
+++ b/src/pokenav_before.c
@@ -1,22 +1,23 @@
#include "global.h"
#include "main.h"
#include "pokenav.h"
+#include "ewram.h"
#include "battle.h"
#include "data2.h"
#include "de_rom_8040FE0.h"
+#include "flags.h"
#include "landmark.h"
#include "link.h"
#include "menu.h"
#include "overworld.h"
-#include "string_util.h"
#include "palette.h"
+#include "region_map.h"
+#include "songs.h"
+#include "string_util.h"
+#include "sound.h"
#include "task.h"
#include "text.h"
#include "unknown_task.h"
-#include "sound.h"
-#include "region_map.h"
-#include "songs.h"
-#include "flags.h"
extern u8 ewram[];
@@ -79,16 +80,12 @@ struct UnknownPokenav0 {
/* 0xD162 */ u8 varD162;
};
-#define ewram0 (*(struct UnknownPokenav0*)(ewram + 0))
-
struct UnknownPokenav0_1 {
u8 fill6dad[0x6dad];
s8 var6dad;
s8 var6dae;
};
-#define ewram0_1 (*(struct UnknownPokenav0_1*)(ewram + 0))
-
IWRAM_DATA void (*gUnknown_03000744)(void);
extern const u8 gUnknown_083E0314[];
@@ -304,9 +301,9 @@ void sub_80EBA5C() {
default:
gMain.state = 0;
case 0:
- ewram0.var6dac = is_c1_link_related_active();
- if (!ewram0.var6dac) {
- ewram0.var6dab = 0;
+ ewram0_10.var6dac = is_c1_link_related_active();
+ if (!ewram0_10.var6dac) {
+ ewram0_10.var6dab = 0;
gMain.state++;
SetMainCallback2(&sub_80EBBE8);
break;
@@ -354,7 +351,7 @@ void sub_80EBA5C() {
sub_80EBDBC(&sub_80EBDD8);
break;
case 14:
- ewram0.var6dab = 1;
+ ewram0_10.var6dab = 1;
PlaySE(SE_PN_ON);
SetMainCallback2(&sub_80EBD90);
SetVBlankCallback(&sub_80EBD18);
@@ -367,11 +364,11 @@ void sub_80EBA5C() {
void sub_80EBBE8() {
u8 var1;
- if (!ewram0.var6dab) {
- var1 = ewram0.var6dab;
+ if (!ewram0_10.var6dab) {
+ var1 = ewram0_10.var6dab;
do {
sub_80EBA5C();
- var1 = ewram0.var6dab;
+ var1 = ewram0_10.var6dab;
} while (!var1);
}
}
@@ -381,36 +378,36 @@ void sub_80EBC10() {
u16 *var1;
gKeyRepeatStartDelay = 0x14;
- ewram0.playerPartyCount = CalculatePlayerPartyCount();
- ewram0.var6ddc = 0;
- ewram0.var9344 = 0;
- ewram0.var8768 = 0;
- ewram0.varCED0 = 0;
+ ewram0_10.playerPartyCount = CalculatePlayerPartyCount();
+ ewram0_10.var6ddc = 0;
+ ewram0_10.var9344 = 0;
+ ewram0_10.var8768 = 0;
+ ewram0_10.varCED0 = 0;
for (i = 0; i < 5; ++i) {
- ewram0.var8fff[i] = 0;
- var1 = (u16 *)ewram0.var0;
+ ewram0_10.var8fff[i] = 0;
+ var1 = (u16 *)ewram0_10.var0;
var1[i*2 + 0x4820] = 0x9B;
var1[i*2 + 0x4821] = 0x5B;
}
- ewram0.var6e95 = 0;
+ ewram0_10.var6e95 = 0;
sub_80EBCA8();
}
void sub_80EBCA8() {
- ewram0.var6db2[0] = 1;
- ewram0.var6db2[1] = 2;
- ewram0.var6db2[2] = 3;
+ ewram0_10.var6db2[0] = 1;
+ ewram0_10.var6db2[1] = 2;
+ ewram0_10.var6db2[2] = 3;
if (FlagGet(SYS_RIBBON_GET)) {
- ewram0.var6db2[3] = 4;
+ ewram0_10.var6db2[3] = 4;
}
else {
- ewram0.var6db2[3] = 0;
+ ewram0_10.var6db2[3] = 0;
}
- ewram0.var6db2[4] = 5;
+ ewram0_10.var6db2[4] = 5;
}
void sub_80EBD18() {
@@ -449,7 +446,7 @@ void sub_80EBD80() {
}
void sub_80EBD90() {
- ewram0.var300();
+ ewram0_10.var300();
AnimateSprites();
BuildOamBuffer();
RunTasks();
@@ -458,78 +455,78 @@ void sub_80EBD90() {
}
void sub_80EBDBC(void (*func)(void)) {
- ewram0.var300 = func;
- ewram0.var304 = 0;
+ ewram0_10.var300 = func;
+ ewram0_10.var304 = 0;
}
void sub_80EBDD8() {
- switch (ewram0.var304) {
+ switch (ewram0_10.var304) {
case 0:
SetVBlankCallback(NULL);
REG_DISPCNT = 0;
- ewram0.var6dad = ewram0.var6ddc;
- ewram0.var6dae = 5;
- ewram0.var304++;
+ ewram0_10.var6dad = ewram0_10.var6ddc;
+ ewram0_10.var6dae = 5;
+ ewram0_10.var304++;
break;
case 1:
sub_80F3FF0();
- ewram0.var304++;
+ ewram0_10.var304++;
case 2:
if (sub_80F4024()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 3:
sub_80F2598();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 4:
sub_80EEE20();
- ewram0.var304++;
+ ewram0_10.var304++;
case 5:
if (sub_80EEE54()) return;
sub_80EEE08();
- ewram0.var304++;
+ ewram0_10.var304++;
return;
case 6:
sub_80EF248(0);
- ewram0.var304++;
+ ewram0_10.var304++;
case 7:
if (sub_80EF284(0)) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 8:
sub_80F1B8C(0);
- ewram0.var304++;
+ ewram0_10.var304++;
case 9:
if (sub_80F1BC8(0)) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 10:
SetVBlankCallback(&sub_80EBD18);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 11:
BeginNormalPaletteFade(-1, 0, 0x10, 0, 0);
- ewram0.var304++;
+ ewram0_10.var304++;
return;
case 12:
sub_80EED2C(0);
- ewram0.var304++;
+ ewram0_10.var304++;
return;
case 13:
if (gPaletteFade.active) return;
- ewram0.var304++;
+ ewram0_10.var304++;
return;
case 14:
sub_80F2C80(0);
- ewram0.var304++;
+ ewram0_10.var304++;
case 15:
if (sub_80F2CBC(0)) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 16:
sub_80F1DF0();
- ewram0.var304++;
+ ewram0_10.var304++;
return;
case 17:
if (!sub_80F1E50()) {
@@ -543,76 +540,76 @@ void sub_80EBDD8() {
}
void sub_80EC00C() {
- switch (ewram0.var304) {
+ switch (ewram0_10.var304) {
case 0:
if (!sub_80EEF78()) {
SetVBlankCallback(&sub_80EBD80);
sub_80EED1C();
- ewram0.var6dad = ewram0.var6ddc;
- ewram0.var6dae = 5;
+ ewram0_10.var6dad = ewram0_10.var6ddc;
+ ewram0_10.var6dae = 5;
sub_80EEE08();
- ewram0.var304++;
+ ewram0_10.var304++;
}
break;
case 1:
sub_80EF248(0);
- ewram0.var304++;
+ ewram0_10.var304++;
case 2:
if (sub_80EF284(0)) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 3:
sub_80F1B8C(0);
- ewram0.var304++;
+ ewram0_10.var304++;
case 4:
if (sub_80F1BC8(0)) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 5:
if (sub_8055870()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 6:
- BeginNormalPaletteFade(ewram0.var308, -1, 0x10, 0, 0);
+ BeginNormalPaletteFade(ewram0_10.var308, -1, 0x10, 0, 0);
SetVBlankCallback(&sub_80EBD18);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 7:
sub_80EED2C(0);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 8:
if (gPaletteFade.active) return;
- ewram0.var304++;
+ ewram0_10.var304++;
return;
case 9:
sub_80F2598();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 10:
sub_80F2C80(0);
- ewram0.var304++;
+ ewram0_10.var304++;
case 11:
if (sub_80F2CBC(0)) return;
- ewram0.var304++;
+ ewram0_10.var304++;
return;
case 12:
sub_80F1DF0();
- ewram0.var304++;
+ ewram0_10.var304++;
return;
case 13:
if (sub_80F1E50()) return;
- sub_80EF428(0, ewram0.var6dad);
+ sub_80EF428(0, ewram0_10.var6dad);
sub_80EBDBC(&sub_80EC268);
}
}
void sub_80EC210() {
- switch (ewram0.var304) {
+ switch (ewram0_10.var304) {
case 0:
sub_80F2D04(1);
- sub_80EE9C0(0, ewram0.var6ddc, 0);
- ewram0.var304++;
+ sub_80EE9C0(0, ewram0_10.var6ddc, 0);
+ ewram0_10.var304++;
break;
case 1:
if (sub_80EEA0C()) return;
@@ -622,18 +619,18 @@ void sub_80EC210() {
void sub_80EC268() {
u8 var1;
- switch (ewram0.var304) {
+ switch (ewram0_10.var304) {
case 0:
if (sub_80EEC10() != 0) {
PlaySE(0x5);
- sub_80EF428(0, ewram0.var6dad);
+ sub_80EF428(0, ewram0_10.var6dad);
sub_80EED9C();
break;
}
else {
if (gMain.newKeys & A_BUTTON) {
- ewram0.var6ddc = ewram0.var6dad;
- switch (ewram0.var6db2[ewram0.var6ddc] - 1) {
+ ewram0_10.var6ddc = ewram0_10.var6dad;
+ switch (ewram0_10.var6db2[ewram0_10.var6ddc] - 1) {
case 0:
PlaySE(5);
sub_80EBDBC(&sub_80EC4A0);
@@ -643,18 +640,18 @@ void sub_80EC268() {
sub_80EBDBC(&sub_80EC81C);
break;
case 4:
- ewram0.var304 = 1;
+ ewram0_10.var304 = 1;
break;
case 3:
- ewram0.var304 = 2;
+ ewram0_10.var304 = 2;
break;
case 2:
- ewram0.var304 = 6;
+ ewram0_10.var304 = 6;
break;
}
}
else if (gMain.newKeys & B_BUTTON) {
- ewram0.var304 = 1;
+ ewram0_10.var304 = 1;
}
break;
}
@@ -664,14 +661,14 @@ void sub_80EC268() {
break;
case 2:
sub_80F6208();
- ewram0.var304++;
+ ewram0_10.var304++;
case 3:
if (sub_80F6250()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 4:
if (sub_8055870()) return;
- if (ewram0.var8fe8 != 0) {
+ if (ewram0_10.var8fe8 != 0) {
PlaySE(0x5);
sub_80EBDBC(&sub_80EDB88);
break;
@@ -679,12 +676,12 @@ void sub_80EC268() {
else {
PlaySE(0x20);
sub_80EF428(0, 5);
- ewram0.var304 = 0xFF;
+ ewram0_10.var304 = 0xFF;
break;
}
case 6:
sub_80F6C20();
- if (ewram0.varD158 != 0) {
+ if (ewram0_10.varD158 != 0) {
PlaySE(0x5);
sub_80EBDBC(&sub_80EE3D8);
break;
@@ -692,20 +689,20 @@ void sub_80EC268() {
else {
PlaySE(0x20);
sub_80EF428(0, 6);
- ewram0.var304 = 0xFF;
+ ewram0_10.var304 = 0xFF;
break;
}
case 0xFF:
if ((var1 = sub_80EEC10()) != 0) {
PlaySE(0x5);
- sub_80EF428(0, ewram0.var6dad);
- ewram0.var304 = 0;
+ sub_80EF428(0, ewram0_10.var6dad);
+ ewram0_10.var304 = 0;
sub_80EED9C();
}
else {
if (!(gMain.newKeys & (A_BUTTON | B_BUTTON))) return;
- sub_80EF428(0, ewram0.var6dad);
- ewram0.var304 = var1;
+ sub_80EF428(0, ewram0_10.var6dad);
+ ewram0_10.var304 = var1;
break;
}
}
@@ -714,11 +711,11 @@ void sub_80EC268() {
void sub_80EC4A0() {
u32 var1;
u32 var2;
- switch (ewram0.var304) {
+ switch (ewram0_10.var304) {
case 0:
sub_80F1E84();
sub_80F2D04(0);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 1:
if (!sub_80F1F10()) {
@@ -727,59 +724,59 @@ void sub_80EC4A0() {
}
else var1 = 0x8;
sub_80EEFBC(var1);
- ewram0.var304++;
+ ewram0_10.var304++;
}
break;
case 2:
if (!(var2 = sub_80EEF34())) {
- BeginNormalPaletteFade(ewram0.var308, -1, 0x0, 0x10, var2);
- ewram0.var304++;
+ BeginNormalPaletteFade(ewram0_10.var308, -1, 0x0, 0x10, var2);
+ ewram0_10.var304++;
}
break;
case 3:
if (gPaletteFade.active) return;
SetVBlankCallback(NULL);
sub_80EED0C();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 4:
sub_80F2620();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 5:
sub_80EF814();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 6:
sub_80EF840();
- ewram0.var304++;
+ ewram0_10.var304++;
case 7:
if (sub_80EF874()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 8:
sub_80F2C80(0x4);
- ewram0.var304++;
+ ewram0_10.var304++;
case 9:
if (sub_80F2CBC(0x4)) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 0xA:
sub_80F2DD8();
SetVBlankCallback(&sub_80EBD30);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 0xB:
if (sub_8055870()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 0xC:
- BeginNormalPaletteFade(ewram0.var308, -1, 0x10, 0, 0);
- ewram0.var304++;
+ BeginNormalPaletteFade(ewram0_10.var308, -1, 0x10, 0, 0);
+ ewram0_10.var304++;
break;
case 0xD:
sub_80EED2C(0x1);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 0xE:
if (gPaletteFade.active) return;
@@ -790,7 +787,7 @@ void sub_80EC4A0() {
void sub_80EC67C() {
u32 var1;
u32 var2;
- switch (ewram0.var304) {
+ switch (ewram0_10.var304) {
case 0:
switch (sub_80FAB60()) {
case 1:
@@ -801,57 +798,57 @@ void sub_80EC67C() {
break;
case 4:
PlaySE(0x5);
- ewram0.var304 = 1;
+ ewram0_10.var304 = 1;
break;
case 5:
PlaySE(0x5);
- ewram0.var304 = 4;
+ ewram0_10.var304 = 4;
break;
}
break;
case 1:
- if (!ewram0.var6e90) {
+ if (!ewram0_10.var6e90) {
sub_80FAEC4();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
}
if (sub_80EFBDC(1)) return;
sub_80FAEC4();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 2:
if ((var2 = sub_80FAFC0())) return;
- if (!ewram0.var6e90) {
+ if (!ewram0_10.var6e90) {
sub_80EFBB0();
- ewram0.var304 = var2;
+ ewram0_10.var304 = var2;
break;
}
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 3:
if ((var1 = sub_80EFBDC(0))) return;
sub_80EFBB0();
- ewram0.var304 = var1;
+ ewram0_10.var304 = var1;
break;
case 4:
- BeginNormalPaletteFade(ewram0.var308, -1, 0, 0x10, 0);
- ewram0.var304++;
+ BeginNormalPaletteFade(ewram0_10.var308, -1, 0, 0x10, 0);
+ ewram0_10.var304++;
break;
case 5:
if (gPaletteFade.active) return;
sub_80F2DF4();
sub_80F2D04(0x4);
- gSaveBlock2.regionMapZoom = (ewram0.var6e90 == 1) ? 1 : 0;
+ gSaveBlock2.regionMapZoom = (ewram0_10.var6e90 == 1) ? 1 : 0;
sub_80EBDBC(&sub_80EC00C);
}
}
void sub_80EC81C() {
- switch (ewram0.var304) {
+ switch (ewram0_10.var304) {
case 0:
sub_80F2D04(0);
sub_80EE9C0(1, 0, 1);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 1:
if (sub_80EEA0C()) return;
@@ -860,18 +857,18 @@ void sub_80EC81C() {
}
void sub_80EC86C() {
- switch (ewram0.var304) {
+ switch (ewram0_10.var304) {
case 0:
if (sub_80EEC90()) {
PlaySE(0x5);
- sub_80EF428(1, ewram0.var6dad);
+ sub_80EF428(1, ewram0_10.var6dad);
sub_80EED9C();
break;
}
if (gMain.newKeys & A_BUTTON) {
PlaySE(0x5);
- ewram0.var6df0 = ewram0.var6dad;
- switch (ewram0.var6df0) {
+ ewram0_10.var6df0 = ewram0_10.var6dad;
+ switch (ewram0_10.var6df0) {
case 0:
sub_80EBDBC(&sub_80ED620);
break;
@@ -886,9 +883,9 @@ void sub_80EC86C() {
}
else if (gMain.newKeys & B_BUTTON) {
PlaySE(0x5);
- ewram0.var6df0 = 0x2;
- ewram0.var6dad = 0x2;
- ewram0.var304++;
+ ewram0_10.var6df0 = 0x2;
+ ewram0_10.var6dad = 0x2;
+ ewram0_10.var304++;
break;
}
break;
@@ -899,10 +896,10 @@ void sub_80EC86C() {
}
void sub_80EC960() {
- switch (ewram0.var304) {
+ switch (ewram0_10.var304) {
case 0:
sub_80EE9C0(2, 0, 5);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 1:
if (sub_80EEA0C()) return;
@@ -911,125 +908,125 @@ void sub_80EC960() {
}
void sub_80EC9A8() {
- switch (ewram0.var304) {
+ switch (ewram0_10.var304) {
case 0:
sub_80F2D04(5);
- sub_80EE9C0(1, ewram0.var6df0, 0xC);
- ewram0.var304++;
+ sub_80EE9C0(1, ewram0_10.var6df0, 0xC);
+ ewram0_10.var304++;
break;
case 1:
if (sub_80EEA0C()) return;
sub_80EBDBC(&sub_80EC86C);
- sub_80EF428(1, ewram0.var6dad);
+ sub_80EF428(1, ewram0_10.var6dad);
}
}
void sub_80ECA10() {
- switch (ewram0.var304) {
+ switch (ewram0_10.var304) {
case 0:
if (sub_80EEF78()) return;
SetVBlankCallback(&sub_80EBD80);
sub_80EED1C();
- ewram0.var6dad = ewram0.var6df0;
- ewram0.var6dae = 0x3;
+ ewram0_10.var6dad = ewram0_10.var6df0;
+ ewram0_10.var6dae = 0x3;
sub_80EEE08();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 1:
sub_80EF248(0x1);
- ewram0.var304++;
+ ewram0_10.var304++;
case 2:
if (sub_80EF284(0x1)) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 3:
sub_80F1B8C(0x1);
- ewram0.var304++;
+ ewram0_10.var304++;
case 4:
if (sub_80F1BC8(0x1)) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 5:
if (sub_8055870()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 6:
- BeginNormalPaletteFade(ewram0.var308, -1, 0x10, 0, 0);
+ BeginNormalPaletteFade(ewram0_10.var308, -1, 0x10, 0, 0);
SetVBlankCallback(&sub_80EBD18);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 7:
sub_80EED2C(0);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 8:
sub_80F2598();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 9:
if (gPaletteFade.active) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 0xA:
sub_80F2C80(0x1);
- ewram0.var304++;
+ ewram0_10.var304++;
case 0xB:
if (sub_80F2CBC(0x1)) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 0xC:
sub_80F1DF0();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 0xD:
if (sub_80F1E50()) return;
- sub_80EF428(1, ewram0.var6dad);
+ sub_80EF428(1, ewram0_10.var6dad);
sub_80EBDBC(&sub_80EC86C);
}
}
void sub_80ECC08() {
- switch (ewram0.var304) {
+ switch (ewram0_10.var304) {
case 0:
if (sub_80EEC90()) {
PlaySE(0x5);
- sub_80EF428(2, ewram0.var6dad);
+ sub_80EF428(2, ewram0_10.var6dad);
sub_80EED9C();
break;
}
if (gMain.newKeys & A_BUTTON) {
PlaySE(0x5);
- switch ((s8)ewram0.var6dad) {
+ switch ((s8)ewram0_10.var6dad) {
case 0:
- ewram0.var87D8 = 22;
+ ewram0_10.var87D8 = 22;
break;
case 1:
- ewram0.var87D8 = 23;
+ ewram0_10.var87D8 = 23;
break;
case 2:
- ewram0.var87D8 = 24;
+ ewram0_10.var87D8 = 24;
break;
case 3:
- ewram0.var87D8 = 33;
+ ewram0_10.var87D8 = 33;
break;
case 4:
- ewram0.var87D8 = 47;
+ ewram0_10.var87D8 = 47;
break;
case 5:
sub_80EBDBC(&sub_80EC9A8);
return;
}
- ewram0.var6dfc = ewram0.var6dad;
- ewram0.var76aa = 1;
+ ewram0_10.var6dfc = ewram0_10.var6dad;
+ ewram0_10.var76aa = 1;
sub_80EBDBC(&sub_80ED01C);
}
else if (gMain.newKeys & B_BUTTON) {
PlaySE(0x5);
- ewram0.var6dad = 0x5;
- ewram0.var304++;
+ ewram0_10.var6dad = 0x5;
+ ewram0_10.var304++;
}
break;
case 1:
@@ -1041,93 +1038,93 @@ void sub_80ECC08() {
void sub_80ECD80() {
u16 var1;
- switch (ewram0.var304) {
+ switch (ewram0_10.var304) {
case 0:
- BeginNormalPaletteFade(ewram0.var308, -1, 0, 0x10, 0);
- ewram0.var304++;
+ BeginNormalPaletteFade(ewram0_10.var308, -1, 0, 0x10, 0);
+ ewram0_10.var304++;
break;
case 1:
if (gPaletteFade.active) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 2:
if (sub_80EEF78()) return;
SetVBlankCallback(&sub_80EBD80);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 3:
sub_80EED1C();
sub_80F3130();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 4:
sub_80F2D6C(0x1);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 5:
sub_80F2D6C(0x5);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 6:
- ewram0.var6dad = ewram0.var6dfc;
- ewram0.var6dae = 0x6;
+ ewram0_10.var6dad = ewram0_10.var6dfc;
+ ewram0_10.var6dae = 0x6;
sub_80EEE08();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 7:
sub_80EF248(0x2);
- ewram0.var304++;
+ ewram0_10.var304++;
case 8:
if (sub_80EF284(0x2)) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 9:
sub_80F1B8C(0x2);
- ewram0.var304++;
+ ewram0_10.var304++;
case 10:
if (sub_80F1BC8(0x2)) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 11:
if (sub_8055870()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 12:
- BeginNormalPaletteFade(ewram0.var308, -1, 0x10, 0, 0);
+ BeginNormalPaletteFade(ewram0_10.var308, -1, 0x10, 0, 0);
SetVBlankCallback(&sub_80EBD18);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 13:
sub_80EED2C(0);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 14:
sub_80F2598();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 15:
if (gPaletteFade.active) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 16:
sub_80F2C80(0x1);
- ewram0.var304++;
+ ewram0_10.var304++;
case 17:
if ((var1 = sub_80F2CBC(0x1))) return;
- ewram0.var306 = var1;
- ewram0.var304++;
+ ewram0_10.var306 = var1;
+ ewram0_10.var304++;
break;
case 18:
sub_80F2C80(0x5);
- ewram0.var304++;
+ ewram0_10.var304++;
case 19:
if (sub_80F2CBC(0x5)) return;
sub_80F1DF0();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 20:
if (sub_80F1E50()) return;
- sub_80EF428(2, ewram0.var6dad);
+ sub_80EF428(2, ewram0_10.var6dad);
sub_80EBDBC(&sub_80ECC08);
}
}
@@ -1135,101 +1132,101 @@ void sub_80ECD80() {
void sub_80ED01C() {
u16 var1;
u16 var3;
- switch (ewram0.var304) {
+ switch (ewram0_10.var304) {
case 0:
sub_80F1E84();
sub_80F2D04(0x1);
sub_80F2D04(0x5);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 1:
if (sub_80F1F10()) return;
sub_80EEFBC(0);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 2:
if ((var1 = sub_80EEF34())) return;
- BeginNormalPaletteFade(ewram0.var308, -1, 0x0, 0x10, var1);
- ewram0.var304++;
+ BeginNormalPaletteFade(ewram0_10.var308, -1, 0x0, 0x10, var1);
+ ewram0_10.var304++;
break;
case 3:
if (gPaletteFade.active) return;
SetVBlankCallback(NULL);
sub_80EED0C();
sub_80EF814();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 4:
sub_80F2620();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 5:
sub_80F4D44();
- ewram0.var304++;
+ ewram0_10.var304++;
case 6:
if (!sub_80F4D88()) {
- ewram0.var304 += 2;
+ ewram0_10.var304 += 2;
break;
}
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 7:
if (sub_8055870()) return;
- ewram0.var304--;
+ ewram0_10.var304--;
break;
case 8:
if (sub_8055870()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 9:
sub_80F0264(0);
- ewram0.var304++;
+ ewram0_10.var304++;
case 10:
if (sub_80F02A0()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 11:
sub_80F3008(0);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 12:
if (sub_8055870()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 13:
- BeginNormalPaletteFade(ewram0.var308, -1, 0x10, 0, 0);
+ BeginNormalPaletteFade(ewram0_10.var308, -1, 0x10, 0, 0);
SetVBlankCallback(&sub_80EBD18);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 14:
sub_80EED2C(0x4);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 15:
if (gPaletteFade.active) return;
- ewram0.var306 = (u8)(gPaletteFade.active << 24);
- ewram0.var304++;
+ ewram0_10.var306 = (u8)(gPaletteFade.active << 24);
+ ewram0_10.var304++;
break;
case 16:
sub_80F2C80(0x1);
- ewram0.var304++;
+ ewram0_10.var304++;
case 17:
if ((var3 = sub_80F2CBC(0x1))) return;
- ewram0.var306 = var3;
- ewram0.var304++;
+ ewram0_10.var306 = var3;
+ ewram0_10.var304++;
break;
case 18:
- sub_80F2C80(ewram0.var6dfc + 7);
- ewram0.var304++;
+ sub_80F2C80(ewram0_10.var6dfc + 7);
+ ewram0_10.var304++;
case 19:
- if (sub_80F2CBC(ewram0.var6dfc + 7)) return;
+ if (sub_80F2CBC(ewram0_10.var6dfc + 7)) return;
sub_80EBDBC(&sub_80ED31C);
break;
}
}
void sub_80ED31C() {
- switch (ewram0.var304) {
+ switch (ewram0_10.var304) {
case 0:
switch (sub_80F5DD4()) {
case 1:
@@ -1238,7 +1235,7 @@ void sub_80ED31C() {
break;
case 2:
PlaySE(0x5);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
default:
if (gMain.newKeys & A_BUTTON) {
@@ -1256,50 +1253,50 @@ void sub_80ED31C() {
if (sub_80F0718()) return;
ShowMapNamePopUpWindow();
sub_80F3264();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 2:
if (sub_8055870()) return;
- ewram0.var304 = 0;
+ ewram0_10.var304 = 0;
break;
}
}
void sub_80ED3D0() {
- switch (ewram0.var304) {
+ switch (ewram0_10.var304) {
case 0:
SetVBlankCallback(NULL);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 1:
sub_80EED0C();
sub_80F6134();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 2:
sub_80EEFBC(0);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 3:
sub_80F0264(0);
- ewram0.var304++;
+ ewram0_10.var304++;
case 4:
if (sub_80F02A0()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 5:
if (sub_8055870()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 6:
sub_80F3008(0);
- BeginNormalPaletteFade(ewram0.var308, -1, 0x10, 0, 0);
+ BeginNormalPaletteFade(ewram0_10.var308, -1, 0x10, 0, 0);
SetVBlankCallback(&sub_80EBD18);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 7:
sub_80EED2C(0x4);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 8:
if (gPaletteFade.active) return;
@@ -1308,43 +1305,43 @@ void sub_80ED3D0() {
}
void sub_80ED4D8() {
- switch (ewram0.var304) {
+ switch (ewram0_10.var304) {
case 0:
- BeginNormalPaletteFade(ewram0.var308, -1, 0, 0x10, 0);
- ewram0.var304++;
+ BeginNormalPaletteFade(ewram0_10.var308, -1, 0, 0x10, 0);
+ ewram0_10.var304++;
break;
case 1:
if (gPaletteFade.active) return;
SetVBlankCallback(NULL);
sub_80EED0C();
sub_80F3130();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 2:
if (sub_8055870()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 3:
sub_80F4CF0();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 4:
sub_80EFF34();
- ewram0.var304++;
+ ewram0_10.var304++;
case 5:
if (sub_80EFF68()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 6:
sub_80F35B4();
sub_80EEFBC(0x2);
- BeginNormalPaletteFade(ewram0.var308, -1, 0x10, 0, 0);
+ BeginNormalPaletteFade(ewram0_10.var308, -1, 0x10, 0, 0);
SetVBlankCallback(sub_80EBD4C);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 7:
sub_80EED2C(0x2);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 8:
if (gPaletteFade.active) return;
@@ -1355,21 +1352,21 @@ void sub_80ED4D8() {
void sub_80ED620() {
u8 var1;
- switch (ewram0.var304) {
+ switch (ewram0_10.var304) {
case 0:
sub_80F1E84();
sub_80F2D04(0x1);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 1:
if (sub_80F1F10()) return;
sub_80EEFBC(0x1);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 2:
if (!(var1 = sub_80EEF34())) {
- BeginNormalPaletteFade(ewram0.var308, -1, 0x0, 0x10, var1);
- ewram0.var304++;
+ BeginNormalPaletteFade(ewram0_10.var308, -1, 0x0, 0x10, var1);
+ ewram0_10.var304++;
}
break;
case 3:
@@ -1377,57 +1374,57 @@ void sub_80ED620() {
SetVBlankCallback(NULL);
sub_80EED0C();
sub_80EF814();
- ewram0.var76aa = (u8)(gPaletteFade.active << 24);
- ewram0.var304++;
+ ewram0_10.var76aa = (u8)(gPaletteFade.active << 24);
+ ewram0_10.var304++;
break;
case 4:
sub_80F2620();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 5:
- ewram0.varD162 = 0x2;
+ ewram0_10.varD162 = 0x2;
sub_80F4BD0();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 6:
sub_80EFF34();
- ewram0.var304++;
+ ewram0_10.var304++;
case 7:
if (sub_80EFF68()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 8:
if (sub_8055870()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 9:
if (sub_8055870()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 10:
sub_80F33A8();
- BeginNormalPaletteFade(ewram0.var308, -1, 0x10, 0, 0);
+ BeginNormalPaletteFade(ewram0_10.var308, -1, 0x10, 0, 0);
SetVBlankCallback(&sub_80EBD4C);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 11:
sub_80EED2C(0x2);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 12:
if (gPaletteFade.active) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 13:
sub_80F2C80(0x1);
- ewram0.var304++;
+ ewram0_10.var304++;
case 14:
if (sub_80F2CBC(0x1)) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 15:
sub_80F2C80(0x6);
- ewram0.var304++;
+ ewram0_10.var304++;
case 16:
if (sub_80F2CBC(0x6)) return;
sub_80EBDBC(&sub_80ED858);
@@ -1451,68 +1448,68 @@ void sub_80F4FDC();
void sub_80ED858() {
u8 var1;
- switch (ewram0.var304) {
+ switch (ewram0_10.var304) {
case 0:
sub_80F4F78();
sub_80F5B38();
- ewram0.var304 = 0x1;
+ ewram0_10.var304 = 0x1;
break;
case 1:
if (sub_80F5B50()) return;
- ewram0.var304 = 0x2;
+ ewram0_10.var304 = 0x2;
break;
case 2:
sub_80F0174(0x1);
- ewram0.var304 = 0x3;
+ ewram0_10.var304 = 0x3;
break;
case 3:
if (sub_80F4FB4()) return;
sub_80F3C94();
sub_80F3D00();
- ewram0.var304 = 0x4;
+ ewram0_10.var304 = 0x4;
break;
case 4:
- if ( (gMain.heldKeys & 0x40) && (ewram0.var87CB) && (!(ewram0.var76aa) || (ewram0.var87DC)) ) {
+ if ( (gMain.heldKeys & 0x40) && (ewram0_10.var87CB) && (!(ewram0_10.var76aa) || (ewram0_10.var87DC)) ) {
PlaySE(0x5);
sub_80F5060(0x1);
move_anim_execute();
- ewram0.var304 = 0x5;
+ ewram0_10.var304 = 0x5;
}
- else if ( (gMain.heldKeys & 0x80) && (ewram0.var87CB) && (!(ewram0.var76aa) || (ewram0.var76aa >= ewram0.var87DC)) ) {
+ else if ( (gMain.heldKeys & 0x80) && (ewram0_10.var87CB) && (!(ewram0_10.var76aa) || (ewram0_10.var76aa >= ewram0_10.var87DC)) ) {
PlaySE(0x5);
sub_80F5060(0);
move_anim_execute();
- ewram0.var304 = 0x5;
+ ewram0_10.var304 = 0x5;
}
if (gMain.newKeys & B_BUTTON) {
PlaySE(0x5);
sub_80F4FDC();
move_anim_execute();
- ewram0.var304 = 0x9;
+ ewram0_10.var304 = 0x9;
}
else if (gMain.newKeys & A_BUTTON) {
- if (ewram0.var76aa) {
- if (ewram0.var6dac) {
+ if (ewram0_10.var76aa) {
+ if (ewram0_10.var6dac) {
PlaySE(0x5);
- ewram0.var304 = 0x7;
+ ewram0_10.var304 = 0x7;
}
}
- else if ((ewram0.var87DC == ewram0.var87DA - 1)) {
+ else if ((ewram0_10.var87DC == ewram0_10.var87DA - 1)) {
PlaySE(0x5);
- ewram0.var304 = 0x9;
+ ewram0_10.var304 = 0x9;
}
}
/*
if (gMain.heldKeys & 0x40) {
- if (ewram0.var87CB) {
- if (ewram0.var76aa) {
- if (!ewram0.var87DC) goto label1;
+ if (ewram0_10.var87CB) {
+ if (ewram0_10.var76aa) {
+ if (!ewram0_10.var87DC) goto label1;
}
PlaySE(0x5);
sub_80F5060(0x1);
move_anim_execute();
- ewram0.var304 = 0x5;
+ ewram0_10.var304 = 0x5;
}
else goto label1;
@@ -1521,14 +1518,14 @@ void sub_80ED858() {
break;
label1:
if (gMain.heldKeys & 0x80) {
- if (ewram0.var87CB) {
- if (ewram0.var76aa) {
- if (!(ewram0.var76aa < ewram0.var87DC)) goto label2;
+ if (ewram0_10.var87CB) {
+ if (ewram0_10.var76aa) {
+ if (!(ewram0_10.var76aa < ewram0_10.var87DC)) goto label2;
}
PlaySE(0x5);
sub_80F5060(0x1);
move_anim_execute();
- ewram0.var304 = 0x5;
+ ewram0_10.var304 = 0x5;
}
else goto label2;
}
@@ -1539,18 +1536,18 @@ label2:
PlaySE(0x5);
sub_80F4FDC();
move_anim_execute();
- ewram0.var304 = 0x9;
+ ewram0_10.var304 = 0x9;
}
else if (gMain.newKeys & A_BUTTON) {
- if (!ewram0.var76aa) {
- if ((ewram0.var87DC == ewram0.var87DA - 1)) {
+ if (!ewram0_10.var76aa) {
+ if ((ewram0_10.var87DC == ewram0_10.var87DA - 1)) {
PlaySE(0x5);
- ewram0.var304 = 0x9;
+ ewram0_10.var304 = 0x9;
}
}
else {
PlaySE(0x5);
- ewram0.var304 = 0x9;
+ ewram0_10.var304 = 0x9;
}
}
*/
@@ -1559,36 +1556,36 @@ label2:
case 5:
if (gpu_sync_bg_show()) return;
sub_80F3D00();
- ewram0.var304 = 0x6;
+ ewram0_10.var304 = 0x6;
break;
case 6:
if (sub_8055870()) return;
- ewram0.var304 = 0x4;
+ ewram0_10.var304 = 0x4;
break;
case 7:
sub_80EEFBC(0x3);
sub_80F3668();
- ewram0.var304 = 0x8;
+ ewram0_10.var304 = 0x8;
break;
case 8:
if (sub_80F7500()) return;
sub_80EEFBC(0x2);
sub_80F3698();
- ewram0.var304 = 0x4;
+ ewram0_10.var304 = 0x4;
break;
case 9:
if (!(var1 = sub_80F5038())) {
sub_80F0174(0);
sub_80F2F48();
- BeginNormalPaletteFade(ewram0.var308, -1, 0x0, 0x10, var1);
- ewram0.var304 = 0xB;
+ BeginNormalPaletteFade(ewram0_10.var308, -1, 0x0, 0x10, var1);
+ ewram0_10.var304 = 0xB;
}
break;
case 0xA:
if (gPaletteFade.active) return;
sub_80F3CE8();
sub_80F5BDC();
- if (!ewram0.var76aa) {
+ if (!ewram0_10.var76aa) {
sub_80F357C();
sub_80F2D6C(0x1);
sub_80F2D6C(0x6);
@@ -1607,7 +1604,7 @@ __attribute__((naked))
void sub_80ED858() {
asm_unified("push {r4,r5,lr}\n\
sub sp, 0x4\n\
- ldr r1, _080ED878 @ =0x02000000\n\
+ ldr r1, _080ED878 @ =gSharedMem\n\
movs r2, 0xC1\n\
lsls r2, 2\n\
adds r0, r1, r2\n\
@@ -1623,7 +1620,7 @@ _080ED86E:\n\
ldr r0, [r0]\n\
mov pc, r0\n\
.align 2, 0\n\
-_080ED878: .4byte 0x02000000\n\
+_080ED878: .4byte gSharedMem\n\
_080ED87C: .4byte _080ED880\n\
.align 2, 0\n\
_080ED880:\n\
@@ -1642,7 +1639,7 @@ _080ED880:\n\
_080ED8B0:\n\
bl sub_80F4F78\n\
bl sub_80F5B38\n\
- ldr r0, _080ED8C8 @ =0x02000000\n\
+ ldr r0, _080ED8C8 @ =gSharedMem\n\
movs r4, 0xC1\n\
lsls r4, 2\n\
adds r0, r4\n\
@@ -1650,7 +1647,7 @@ _080ED8B0:\n\
strh r1, [r0]\n\
b _080EDB7A\n\
.align 2, 0\n\
-_080ED8C8: .4byte 0x02000000\n\
+_080ED8C8: .4byte gSharedMem\n\
_080ED8CC:\n\
bl sub_80F5B50\n\
lsls r0, 24\n\
@@ -1658,7 +1655,7 @@ _080ED8CC:\n\
beq _080ED8D8\n\
b _080EDB7A\n\
_080ED8D8:\n\
- ldr r0, _080ED8E8 @ =0x02000000\n\
+ ldr r0, _080ED8E8 @ =gSharedMem\n\
movs r1, 0xC1\n\
lsls r1, 2\n\
adds r0, r1\n\
@@ -1666,11 +1663,11 @@ _080ED8D8:\n\
strh r1, [r0]\n\
b _080EDB7A\n\
.align 2, 0\n\
-_080ED8E8: .4byte 0x02000000\n\
+_080ED8E8: .4byte gSharedMem\n\
_080ED8EC:\n\
movs r0, 0x1\n\
bl sub_80F0174\n\
- ldr r0, _080ED900 @ =0x02000000\n\
+ ldr r0, _080ED900 @ =gSharedMem\n\
movs r2, 0xC1\n\
lsls r2, 2\n\
adds r0, r2\n\
@@ -1678,7 +1675,7 @@ _080ED8EC:\n\
strh r1, [r0]\n\
b _080EDB7A\n\
.align 2, 0\n\
-_080ED900: .4byte 0x02000000\n\
+_080ED900: .4byte gSharedMem\n\
_080ED904:\n\
bl sub_80F4FB4\n\
lsls r0, 24\n\
@@ -1781,7 +1778,7 @@ _080ED9CC:\n\
bl PlaySE\n\
bl sub_80F4FDC\n\
bl move_anim_execute\n\
- ldr r0, _080ED9F4 @ =0x02000000\n\
+ ldr r0, _080ED9F4 @ =gSharedMem\n\
movs r1, 0xC1\n\
lsls r1, 2\n\
adds r0, r1\n\
@@ -1789,7 +1786,7 @@ _080ED9CC:\n\
strh r1, [r0]\n\
b _080EDB7A\n\
.align 2, 0\n\
-_080ED9F4: .4byte 0x02000000\n\
+_080ED9F4: .4byte gSharedMem\n\
_080ED9F8:\n\
movs r0, 0x1\n\
ands r0, r2\n\
@@ -1854,7 +1851,7 @@ _080EDA68:\n\
b _080EDB7A\n\
_080EDA74:\n\
bl sub_80F3D00\n\
- ldr r0, _080EDA88 @ =0x02000000\n\
+ ldr r0, _080EDA88 @ =gSharedMem\n\
movs r4, 0xC1\n\
lsls r4, 2\n\
adds r0, r4\n\
@@ -1862,23 +1859,23 @@ _080EDA74:\n\
strh r1, [r0]\n\
b _080EDB7A\n\
.align 2, 0\n\
-_080EDA88: .4byte 0x02000000\n\
+_080EDA88: .4byte gSharedMem\n\
_080EDA8C:\n\
bl sub_8055870\n\
cmp r0, 0\n\
bne _080EDB7A\n\
- ldr r0, _080EDAA0 @ =0x02000000\n\
+ ldr r0, _080EDAA0 @ =gSharedMem\n\
movs r1, 0xC1\n\
lsls r1, 2\n\
adds r0, r1\n\
b _080EDADC\n\
.align 2, 0\n\
-_080EDAA0: .4byte 0x02000000\n\
+_080EDAA0: .4byte gSharedMem\n\
_080EDAA4:\n\
movs r0, 0x3\n\
bl sub_80EEFBC\n\
bl sub_80F3668\n\
- ldr r0, _080EDABC @ =0x02000000\n\
+ ldr r0, _080EDABC @ =gSharedMem\n\
movs r2, 0xC1\n\
lsls r2, 2\n\
adds r0, r2\n\
@@ -1886,7 +1883,7 @@ _080EDAA4:\n\
strh r1, [r0]\n\
b _080EDB7A\n\
.align 2, 0\n\
-_080EDABC: .4byte 0x02000000\n\
+_080EDABC: .4byte gSharedMem\n\
_080EDAC0:\n\
bl sub_80F7500\n\
lsls r0, 24\n\
@@ -1896,7 +1893,7 @@ _080EDAC0:\n\
bl sub_80EEFBC\n\
bl sub_80F3698\n\
_080EDAD4:\n\
- ldr r0, _080EDAE4 @ =0x02000000\n\
+ ldr r0, _080EDAE4 @ =gSharedMem\n\
movs r4, 0xC1\n\
lsls r4, 2\n\
adds r0, r4\n\
@@ -1905,7 +1902,7 @@ _080EDADC:\n\
strh r1, [r0]\n\
b _080EDB7A\n\
.align 2, 0\n\
-_080EDAE4: .4byte 0x02000000\n\
+_080EDAE4: .4byte gSharedMem\n\
_080EDAE8:\n\
bl sub_80F5038\n\
lsls r0, 24\n\
@@ -1915,7 +1912,7 @@ _080EDAE8:\n\
movs r0, 0\n\
bl sub_80F0174\n\
bl sub_80F2F48\n\
- ldr r5, _080EDB24 @ =0x02000000\n\
+ ldr r5, _080EDB24 @ =gSharedMem\n\
movs r1, 0xC2\n\
lsls r1, 2\n\
adds r0, r5, r1\n\
@@ -1933,7 +1930,7 @@ _080EDAE8:\n\
strh r0, [r1]\n\
b _080EDB7A\n\
.align 2, 0\n\
-_080EDB24: .4byte 0x02000000\n\
+_080EDB24: .4byte gSharedMem\n\
_080EDB28:\n\
ldr r0, _080EDB60 @ =gPaletteFade\n\
ldrb r1, [r0, 0x7]\n\
@@ -1943,7 +1940,7 @@ _080EDB28:\n\
bne _080EDB7A\n\
bl sub_80F3CE8\n\
bl sub_80F5BDC\n\
- ldr r0, _080EDB64 @ =0x02000000\n\
+ ldr r0, _080EDB64 @ =gSharedMem\n\
ldr r4, _080EDB68 @ =0x000076aa\n\
adds r0, r4\n\
ldrb r0, [r0]\n\
@@ -1959,7 +1956,7 @@ _080EDB28:\n\
b _080EDB7A\n\
.align 2, 0\n\
_080EDB60: .4byte gPaletteFade\n\
-_080EDB64: .4byte 0x02000000\n\
+_080EDB64: .4byte gSharedMem\n\
_080EDB68: .4byte 0x000076aa\n\
_080EDB6C: .4byte sub_80ECA10\n\
_080EDB70:\n\
@@ -1978,21 +1975,21 @@ _080EDB84: .4byte sub_80ED3D0\n");
void sub_80EDB88() {
u8 var1;
- switch (ewram0.var304) {
+ switch (ewram0_10.var304) {
case 0:
sub_80F1E84();
sub_80F2D04(0);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 1:
if (sub_80F1F10()) return;
sub_80EEFBC(0x4);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 2:
if (!(var1 = sub_80EEF34())) {
- BeginNormalPaletteFade(ewram0.var308, -1, 0x0, 0x10, var1);
- ewram0.var304++;
+ BeginNormalPaletteFade(ewram0_10.var308, -1, 0x0, 0x10, var1);
+ ewram0_10.var304++;
}
break;
case 3:
@@ -2000,60 +1997,60 @@ void sub_80EDB88() {
SetVBlankCallback(0);
sub_80EED0C();
sub_80EF814();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 4:
sub_80F2620();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 5:
sub_80F638C();
- ewram0.var304++;
+ ewram0_10.var304++;
case 6:
if (!sub_80F63D0()) {
- ewram0.var304 += 0x2;
+ ewram0_10.var304 += 0x2;
break;
}
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 7:
if (sub_8055870()) return;
- ewram0.var304--;
+ ewram0_10.var304--;
break;
case 8:
if (sub_8055870()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 9:
sub_80F0264(0x1);
- ewram0.var304++;
+ ewram0_10.var304++;
case 10:
if (sub_80F02A0()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 11:
sub_80F2C80(0x2);
- ewram0.var304++;
+ ewram0_10.var304++;
case 12:
if (sub_80F2CBC(0x2)) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 13:
sub_80F3008(0x1);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 14:
if (sub_8055870()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 15:
- BeginNormalPaletteFade(ewram0.var308, -1, 0x10, 0, 0);
+ BeginNormalPaletteFade(ewram0_10.var308, -1, 0x10, 0, 0);
SetVBlankCallback(&sub_80EBD18);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 16:
sub_80EED2C(0x4);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 17:
if (gPaletteFade.active) return;
@@ -2063,7 +2060,7 @@ void sub_80EDB88() {
}
void sub_80EDDBC() {
- switch (ewram0.var304) {
+ switch (ewram0_10.var304) {
case 0:
switch (sub_80F5DD4()) {
case 1:
@@ -2072,7 +2069,7 @@ void sub_80EDDBC() {
break;
case 2:
PlaySE(0x5);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
default:
if (gMain.newKeys & A_BUTTON) {
@@ -2090,27 +2087,27 @@ void sub_80EDDBC() {
if (sub_80F0718()) return;
ShowMapNamePopUpWindow();
sub_80F3264();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 2:
if (sub_8055870()) return;
- ewram0.var304 = 0;
+ ewram0_10.var304 = 0;
break;
}
}
void sub_80EDE70() {
- switch (ewram0.var304) {
+ switch (ewram0_10.var304) {
case 0:
- BeginNormalPaletteFade(ewram0.var308, -1, 0, 0x10, 0);
- ewram0.var304++;
+ BeginNormalPaletteFade(ewram0_10.var308, -1, 0, 0x10, 0);
+ ewram0_10.var304++;
break;
case 1:
if (gPaletteFade.active) return;
sub_80F3130();
sub_80F2D6C(0x2);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 2:
sub_80EBDBC(&sub_80EC00C);
@@ -2120,51 +2117,51 @@ void sub_80EDE70() {
}
void sub_80EDEE4() {
- switch (ewram0.var304) {
+ switch (ewram0_10.var304) {
case 0:
- BeginNormalPaletteFade(ewram0.var308, -1, 0, 0x10, 0);
- ewram0.var304++;
+ BeginNormalPaletteFade(ewram0_10.var308, -1, 0, 0x10, 0);
+ ewram0_10.var304++;
break;
case 1:
if (gPaletteFade.active) return;
SetVBlankCallback(NULL);
sub_80EED0C();
sub_80F3130();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 2:
sub_80F66E0();
sub_80EEE08();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 3:
if (sub_80F1080()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 4:
sub_80EEFBC(0x5);
sub_80F38B8();
- ewram0.var304++;
+ ewram0_10.var304++;
case 5:
if (sub_80F38EC()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 6:
if (sub_8055870()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 7:
- BeginNormalPaletteFade(ewram0.var308, -1, 0x10, 0, 0);
+ BeginNormalPaletteFade(ewram0_10.var308, -1, 0x10, 0, 0);
SetVBlankCallback(&sub_80EBD18);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 8:
sub_80EED2C(0x3);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 9:
if (gPaletteFade.active) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 10:
if (sub_80F170C()) return;
@@ -2176,17 +2173,17 @@ void sub_80EDEE4() {
void sub_80EE06C() {
u32 var1;
u16 var2;
- switch (ewram0.var304) {
+ switch (ewram0_10.var304) {
case 0:
sub_80F15A8();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 1:
if (gMain.newAndRepeatedKeys & 0x40) {
- if (ewram0.var87DC) {
+ if (ewram0_10.var87DC) {
PlaySE(0x5);
sub_80F6A4C(-1);
- ewram0.var304++;
+ ewram0_10.var304++;
}
else goto label1;
}
@@ -2194,10 +2191,10 @@ void sub_80EE06C() {
break;
label1:
if (gMain.newAndRepeatedKeys & 0x80) {
- if (ewram0.var87DC < ewram0.var8774) {
+ if (ewram0_10.var87DC < ewram0_10.var8774) {
PlaySE(0x5);
sub_80F6A4C(1);
- ewram0.var304++;
+ ewram0_10.var304++;
}
else goto label2;
}
@@ -2207,7 +2204,7 @@ label2:
if (gMain.newKeys & A_BUTTON) {
PlaySE(0x5);
sub_80EEFBC(0xB);
- ewram0.var304 = 0x4;
+ ewram0_10.var304 = 0x4;
}
else if (gMain.newKeys & B_BUTTON) {
PlaySE(0x5);
@@ -2216,21 +2213,21 @@ label2:
break;
case 2:
if (sub_80F6AF0()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 3:
var1 = sub_8055870();
if (var1) return;
- ewram0.var304 = var1;
+ ewram0_10.var304 = var1;
break;
case 4:
sub_80F3B00();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 5:
if (sub_80F3B58()) return;
sub_80F1494();
- ewram0.var304++;
+ ewram0_10.var304++;
sub_80EED9C();
break;
case 6:
@@ -2238,36 +2235,36 @@ label2:
case 1:
PlaySE(0x5);
sub_80F3B94();
- ewram0.var304 = 0x7;
+ ewram0_10.var304 = 0x7;
break;
default:
case 0:
if (gMain.newKeys & B_BUTTON) {
PlaySE(0x5);
sub_80F3B94();
- ewram0.var304 = 0x8;
+ ewram0_10.var304 = 0x8;
}
break;
}
break;
case 7:
if (sub_80F3BD4()) return;
- ewram0.var304 = 0x4;
+ ewram0_10.var304 = 0x4;
break;
case 8:
var2 = sub_80F3BD4();
if (var2) return;
sub_80EEFBC(0x5);
- ewram0.var304 = var2;
+ ewram0_10.var304 = var2;
break;
}
}
void sub_80EE294() {
- switch (ewram0.var304) {
+ switch (ewram0_10.var304) {
case 0:
- BeginNormalPaletteFade(ewram0.var308, -1, 0, 0x10, 0);
- ewram0.var304++;
+ BeginNormalPaletteFade(ewram0_10.var308, -1, 0, 0x10, 0);
+ ewram0_10.var304++;
break;
case 1:
if (gPaletteFade.active) return;
@@ -2275,33 +2272,33 @@ void sub_80EE294() {
sub_80EED0C();
sub_80F3C2C();
sub_80EEE08();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 2:
sub_80F6134();
sub_80F0264(0x1);
- ewram0.var304++;
+ ewram0_10.var304++;
case 3:
if (sub_80F02A0()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 4:
sub_80EEFBC(0x4);
sub_80F3008(0x1);
SetVBlankCallback(&sub_80EBD18);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 5:
if (sub_8055870()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 6:
- BeginNormalPaletteFade(ewram0.var308, -1, 0x10, 0, 0);
- ewram0.var304++;
+ BeginNormalPaletteFade(ewram0_10.var308, -1, 0x10, 0, 0);
+ ewram0_10.var304++;
break;
case 7:
sub_80EED2C(0x4);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 8:
if (gPaletteFade.active) return;
@@ -2312,21 +2309,21 @@ void sub_80EE294() {
void sub_80EE3D8() {
u8 var1;
- switch (ewram0.var304) {
+ switch (ewram0_10.var304) {
case 0:
sub_80F1E84();
sub_80F2D04(0);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 1:
if (sub_80F1F10()) return;
sub_80EEFBC(0x9);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 2:
if (!(var1 = sub_80EEF34())) {
- BeginNormalPaletteFade(ewram0.var308, -1, 0x0, 0x10, var1);
- ewram0.var304++;
+ BeginNormalPaletteFade(ewram0_10.var308, -1, 0x0, 0x10, var1);
+ ewram0_10.var304++;
}
break;
case 3:
@@ -2335,43 +2332,43 @@ void sub_80EE3D8() {
sub_80EED0C();
sub_80EF814();
sub_80EEE08();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 4:
sub_80F2620();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 5:
sub_80F0264(0x2);
- ewram0.var304++;
+ ewram0_10.var304++;
case 6:
if (sub_80F02A0()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 7:
sub_80F2C80(0x3);
- ewram0.var304++;
+ ewram0_10.var304++;
case 8:
if (sub_80F2CBC(0x3)) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 9:
sub_80F3008(0x2);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 10:
if (sub_8055870()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 11:
sub_80F6F10();
- BeginNormalPaletteFade(ewram0.var308, -1, 0x10, 0, 0);
+ BeginNormalPaletteFade(ewram0_10.var308, -1, 0x10, 0, 0);
SetVBlankCallback(&sub_80EBD68);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 12:
sub_80EED2C(0x5);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 13:
if (gPaletteFade.active) return;
@@ -2381,16 +2378,16 @@ void sub_80EE3D8() {
}
void sub_80EE58C() {
- switch (ewram0.var304) {
+ switch (ewram0_10.var304) {
case 0:
switch (sub_80F5DD4()) {
case 1:
PlaySE(0x5);
- sub_80F0FFC(ewram0.var876E);
+ sub_80F0FFC(ewram0_10.var876E);
break;
case 2:
PlaySE(0x5);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
default:
if (gMain.newKeys & A_BUTTON) {
@@ -2406,61 +2403,61 @@ void sub_80EE58C() {
break;
case 1:
if (sub_80F0718()) return;
- sub_80F0FFC(ewram0.var876E);
+ sub_80F0FFC(ewram0_10.var876E);
sub_80F3264();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 2:
if (sub_8055870()) return;
- ewram0.var304 = 0;
+ ewram0_10.var304 = 0;
break;
}
}
void sub_80EE658() {
- switch (ewram0.var304) {
+ switch (ewram0_10.var304) {
case 0:
sub_80F3294(0x1);
sub_80EEFBC(0xA);
sub_80F0B24();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 1:
if (sub_80F0B44()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 2:
sub_80F0F64();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 3:
if (sub_80F0FEC()) return;
sub_80F6FB8(0x1);
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 4:
sub_80F6DB8();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 5:
- sub_80F700C((u8 *)(ewram + 0x8788), *(u16 *)(ewram + 0x8788 - 0x1A));
- sub_80F42C4((u8 *)(ewram + 0x8788));
- ewram0.var304++;
+ sub_80F700C((u8 *)(gSharedMem + 0x8788), *(u16 *)(gSharedMem + 0x8788 - 0x1A));
+ sub_80F42C4((u8 *)(gSharedMem + 0x8788));
+ ewram0_10.var304++;
break;
case 6:
sub_80F0CD8();
- ewram0.var304++;
+ ewram0_10.var304++;
case 7:
if (sub_80F6E9C()) return;
if (sub_80F0D5C()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 8:
if (gMain.heldKeys & 0x40) {
- if (ewram0.var87DC) {
+ if (ewram0_10.var87DC) {
PlaySE(0x5);
sub_80F708C(-1);
- ewram0.var304 = 0x10;
+ ewram0_10.var304 = 0x10;
}
else goto label1;
}
@@ -2468,10 +2465,10 @@ void sub_80EE658() {
break;
label1:
if (gMain.heldKeys & 0x80) {
- if (ewram0.var87DC < ewram0.var8774) {
+ if (ewram0_10.var87DC < ewram0_10.var8774) {
PlaySE(0x5);
sub_80F708C(1);
- ewram0.var304 = 0x10;
+ ewram0_10.var304 = 0x10;
}
else goto label2;
}
@@ -2482,7 +2479,7 @@ label2:
PlaySE(0x5);
sub_80F4394();
sub_80F0EC0();
- ewram0.var304++;
+ ewram0_10.var304++;
}
break;
case 9:
@@ -2490,27 +2487,27 @@ label2:
if (sub_80F0EF4()) return;
sub_80F6FB8(0);
sub_80F2FB0();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 10:
sub_80F6134();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 11:
sub_80F0FA0();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 12:
if (sub_80F0FEC()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 13:
sub_80F0C28();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 14:
if (sub_80F0C48()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 15:
sub_80EEFBC(0x9);
@@ -2520,27 +2517,27 @@ label2:
break;
case 16:
if (sub_80F70FC()) return;
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 17:
if (sub_8055870()) return;
- ewram0.var304 = 0x8;
+ ewram0_10.var304 = 0x8;
break;
}
}
void sub_80EE8F4() {
- switch (ewram0.var304) {
+ switch (ewram0_10.var304) {
case 0:
- BeginNormalPaletteFade(ewram0.var308, -1, 0, 0x10, 0);
- ewram0.var304++;
+ BeginNormalPaletteFade(ewram0_10.var308, -1, 0, 0x10, 0);
+ ewram0_10.var304++;
break;
case 1:
if (gPaletteFade.active) return;
sub_80F3130();
sub_80F2D6C(0x2);
sub_80F6FFC();
- ewram0.var304++;
+ ewram0_10.var304++;
break;
case 2:
sub_80EBDBC(&sub_80EC00C);
@@ -2549,11 +2546,11 @@ void sub_80EE8F4() {
}
void sub_80EE96C() {
- u16 var1 = ewram0.var304;
+ u16 var1 = ewram0_10.var304;
if (!var1) {
PlaySE(0x6F);
BeginNormalPaletteFade(-1, 0, 0, 0x10, var1);
- ewram0.var304++;
+ ewram0_10.var304++;
}
else {
if (gPaletteFade.active) return;
@@ -2564,31 +2561,31 @@ void sub_80EE96C() {
void sub_80EE9C0(u8 param1, u8 param2, u8 param3) {
sub_80F1E84();
- ewram0.var6e14 = param1;
- ewram0.var6e15 = param2;
- ewram0.var6e16 = 0;
- ewram0.var6e17 = param3;
+ ewram0_10.var6e14 = param1;
+ ewram0_10.var6e15 = param2;
+ ewram0_10.var6e16 = 0;
+ ewram0_10.var6e17 = param3;
}
#if 0
bool8 sub_80EEA0C() {
- switch (ewram0.var6e16) {
+ switch (ewram0_10.var6e16) {
case 0:
if (sub_80F1F10()) return 1;
- if (ewram0.var6e17 != 0xC) {
- ewram0.var6e16 = 0x1;
+ if (ewram0_10.var6e17 != 0xC) {
+ ewram0_10.var6e16 = 0x1;
return 1;
}
else {
- ewram0.var6e16 = 0x3;
+ ewram0_10.var6e16 = 0x3;
return 1;
}
case 1:
- sub_80F2C80(ewram0.var6e17);
- ewram0.var6e16++;
+ sub_80F2C80(ewram0_10.var6e17);
+ ewram0_10.var6e16++;
case 2:
- if (sub_80F2CBC(ewram0.var6e17)) return 1;
- ewram0.var6e16++;
+ if (sub_80F2CBC(ewram0_10.var6e17)) return 1;
+ ewram0_10.var6e16++;
case 3:
}
@@ -2598,7 +2595,7 @@ __attribute__((naked))
bool8 sub_80EEA0C() {
asm_unified(
"push {r4,lr}\n\
- ldr r1, _080EEA28 @ =0x02000000\n\
+ ldr r1, _080EEA28 @ =gSharedMem\n\
ldr r2, _080EEA2C @ =0x00006e16\n\
adds r0, r1, r2\n\
ldrb r0, [r0]\n\
@@ -2613,7 +2610,7 @@ _080EEA1E:\n\
ldr r0, [r0]\n\
mov pc, r0\n\
.align 2, 0\n\
-_080EEA28: .4byte 0x02000000\n\
+_080EEA28: .4byte gSharedMem\n\
_080EEA2C: .4byte 0x00006e16\n\
_080EEA30: .4byte _080EEA34\n\
.align 2, 0\n\
@@ -2634,7 +2631,7 @@ _080EEA58:\n\
beq _080EEA64\n\
b _080EEC08\n\
_080EEA64:\n\
- ldr r1, _080EEA7C @ =0x02000000\n\
+ ldr r1, _080EEA7C @ =gSharedMem\n\
ldr r4, _080EEA80 @ =0x00006e17\n\
adds r0, r1, r4\n\
ldrb r0, [r0]\n\
@@ -2646,7 +2643,7 @@ _080EEA64:\n\
strb r0, [r1]\n\
b _080EEC08\n\
.align 2, 0\n\
-_080EEA7C: .4byte 0x02000000\n\
+_080EEA7C: .4byte gSharedMem\n\
_080EEA80: .4byte 0x00006e17\n\
_080EEA84: .4byte 0x00006e16\n\
_080EEA88:\n\
@@ -2658,7 +2655,7 @@ _080EEA88:\n\
.align 2, 0\n\
_080EEA94: .4byte 0x00006e16\n\
_080EEA98:\n\
- ldr r4, _080EEAC8 @ =0x02000000\n\
+ ldr r4, _080EEAC8 @ =gSharedMem\n\
ldr r1, _080EEACC @ =0x00006e17\n\
adds r0, r4, r1\n\
ldrb r0, [r0]\n\
@@ -2669,7 +2666,7 @@ _080EEA98:\n\
adds r0, 0x1\n\
strb r0, [r4]\n\
_080EEAAE:\n\
- ldr r4, _080EEAC8 @ =0x02000000\n\
+ ldr r4, _080EEAC8 @ =gSharedMem\n\
ldr r1, _080EEACC @ =0x00006e17\n\
adds r0, r4, r1\n\
ldrb r0, [r0]\n\
@@ -2683,7 +2680,7 @@ _080EEAC2:\n\
adds r1, r4, r2\n\
b _080EEB76\n\
.align 2, 0\n\
-_080EEAC8: .4byte 0x02000000\n\
+_080EEAC8: .4byte gSharedMem\n\
_080EEACC: .4byte 0x00006e17\n\
_080EEAD0: .4byte 0x00006e16\n\
_080EEAD4:\n\
@@ -2732,7 +2729,7 @@ _080EEB20:\n\
_080EEB26:\n\
strb r0, [r1]\n\
_080EEB28:\n\
- ldr r4, _080EEB5C @ =0x02000000\n\
+ ldr r4, _080EEB5C @ =gSharedMem\n\
ldr r1, _080EEB60 @ =0x00006e14\n\
adds r0, r4, r1\n\
ldrb r0, [r0]\n\
@@ -2743,7 +2740,7 @@ _080EEB28:\n\
adds r0, 0x1\n\
strb r0, [r4]\n\
_080EEB3E:\n\
- ldr r4, _080EEB5C @ =0x02000000\n\
+ ldr r4, _080EEB5C @ =gSharedMem\n\
ldr r1, _080EEB60 @ =0x00006e14\n\
adds r0, r4, r1\n\
ldrb r0, [r0]\n\
@@ -2756,14 +2753,14 @@ _080EEB3E:\n\
b _080EEB76\n\
.align 2, 0\n\
_080EEB58: .4byte 0x00006dae\n\
-_080EEB5C: .4byte 0x02000000\n\
+_080EEB5C: .4byte gSharedMem\n\
_080EEB60: .4byte 0x00006e14\n\
_080EEB64: .4byte 0x00006e16\n\
_080EEB68:\n\
bl sub_8055870\n\
cmp r0, 0\n\
bne _080EEC08\n\
- ldr r1, _080EEB80 @ =0x02000000\n\
+ ldr r1, _080EEB80 @ =gSharedMem\n\
ldr r4, _080EEB84 @ =0x00006e16\n\
adds r1, r4\n\
_080EEB76:\n\
@@ -2772,11 +2769,11 @@ _080EEB76:\n\
strb r0, [r1]\n\
b _080EEC08\n\
.align 2, 0\n\
-_080EEB80: .4byte 0x02000000\n\
+_080EEB80: .4byte gSharedMem\n\
_080EEB84: .4byte 0x00006e16\n\
_080EEB88:\n\
bl sub_80F1DF0\n\
- ldr r4, _080EEBA0 @ =0x02000000\n\
+ ldr r4, _080EEBA0 @ =gSharedMem\n\
ldr r1, _080EEBA4 @ =0x00006e14\n\
adds r0, r4, r1\n\
ldrb r0, [r0]\n\
@@ -2785,7 +2782,7 @@ _080EEB88:\n\
adds r4, r2\n\
b _080EEBCC\n\
.align 2, 0\n\
-_080EEBA0: .4byte 0x02000000\n\
+_080EEBA0: .4byte gSharedMem\n\
_080EEBA4: .4byte 0x00006e14\n\
_080EEBA8: .4byte 0x00006e16\n\
_080EEBAC:\n\
@@ -2793,7 +2790,7 @@ _080EEBAC:\n\
lsls r0, 24\n\
cmp r0, 0\n\
bne _080EEC08\n\
- ldr r4, _080EEBD4 @ =0x02000000\n\
+ ldr r4, _080EEBD4 @ =gSharedMem\n\
ldr r1, _080EEBD8 @ =0x00006e14\n\
adds r0, r4, r1\n\
ldrb r0, [r0]\n\
@@ -2809,7 +2806,7 @@ _080EEBCC:\n\
strb r0, [r4]\n\
b _080EEC08\n\
.align 2, 0\n\
-_080EEBD4: .4byte 0x02000000\n\
+_080EEBD4: .4byte gSharedMem\n\
_080EEBD8: .4byte 0x00006e14\n\
_080EEBDC: .4byte 0x00006dad\n\
_080EEBE0: .4byte 0x00006e16\n\
@@ -2818,7 +2815,7 @@ _080EEBE4:\n\
lsls r0, 24\n\
cmp r0, 0\n\
bne _080EEC08\n\
- ldr r1, _080EEC00 @ =0x02000000\n\
+ ldr r1, _080EEC00 @ =gSharedMem\n\
ldr r2, _080EEC04 @ =0x00006e16\n\
adds r1, r2\n\
ldrb r0, [r1]\n\
@@ -2828,7 +2825,7 @@ _080EEBFA:\n\
movs r0, 0\n\
b _080EEC0A\n\
.align 2, 0\n\
-_080EEC00: .4byte 0x02000000\n\
+_080EEC00: .4byte gSharedMem\n\
_080EEC04: .4byte 0x00006e16\n\
_080EEC08:\n\
movs r0, 0x1\n\
@@ -2845,19 +2842,19 @@ _080EEC0A:\n\
bool8 sub_80EEC10() {
if (gMain.newKeys & 0x40) {
do {
- if (--ewram0_1.var6dad < 0) {
- ewram0_1.var6dad = ewram0_1.var6dae - 1;
+ if (--ewram0_11.var6dad < 0) {
+ ewram0_11.var6dad = ewram0_11.var6dae - 1;
}
- } while (!ewram0.var6db2[ewram0_1.var6dad]);
+ } while (!ewram0_10.var6db2[ewram0_11.var6dad]);
return 1;
}
if (gMain.newKeys & 0x80) {
do {
- if (++ewram0_1.var6dad >= ewram0_1.var6dae) {
- ewram0_1.var6dad = 0;
+ if (++ewram0_11.var6dad >= ewram0_11.var6dae) {
+ ewram0_11.var6dad = 0;
}
- } while (!ewram0.var6db2[ewram0_1.var6dad]);
+ } while (!ewram0_10.var6db2[ewram0_11.var6dad]);
return 1;
}
return 0;
@@ -2865,14 +2862,14 @@ bool8 sub_80EEC10() {
bool8 sub_80EEC90() {
if (gMain.newKeys & 0x40) {
- if (--ewram0_1.var6dad < 0) {
- ewram0_1.var6dad = ewram0_1.var6dae - 1;
+ if (--ewram0_11.var6dad < 0) {
+ ewram0_11.var6dad = ewram0_11.var6dae - 1;
}
return 1;
}
if (gMain.newKeys & 0x80) {
- if (++ewram0_1.var6dad >= ewram0_1.var6dae) {
- ewram0_1.var6dad = 0;
+ if (++ewram0_11.var6dad >= ewram0_11.var6dae) {
+ ewram0_11.var6dad = 0;
}
return 1;
}
@@ -2909,14 +2906,14 @@ void sub_80EED2C(u8 param1) {
}
void sub_80EED9C(void) {
- gUnknown_03000744 = ewram0.var300;
- ewram0.var300 = &sub_80EEDC4;
- ewram0.var300();
+ gUnknown_03000744 = ewram0_10.var300;
+ ewram0_10.var300 = &sub_80EEDC4;
+ ewram0_10.var300();
}
void sub_80EEDC4(void) {
if (sub_8055870() != 0x1) {
- ewram0.var300 = gUnknown_03000744;
+ ewram0_10.var300 = gUnknown_03000744;
}
}
diff --git a/src/rom3.c b/src/rom3.c
index 3f4860ecc..16e605390 100644
--- a/src/rom3.c
+++ b/src/rom3.c
@@ -16,11 +16,7 @@
#include "util.h"
#include "battle_message.h"
#include "data2.h"
-
-extern u8 unk_2000000[];
-
-#define EWRAM_14000 ((u8 *)(unk_2000000 + 0x14000))
-#define EWRAM_15000 ((u8 *)(unk_2000000 + 0x15000))
+#include "ewram.h"
extern u16 gBattleTypeFlags;
extern u16 gBattleWeather;
@@ -92,7 +88,7 @@ void setup_poochyena_battle(void)
ZeroEnemyPartyMons();
CreateMon(&gEnemyParty[0], SPECIES_POOCHYENA, 2, 32, 0, 0, 0, 0);
i = ITEM_NONE;
- SetMonData(&gEnemyParty[0], MON_DATA_HELD_ITEM, (u8 *)&i);
+ SetMonData(&gEnemyParty[0], MON_DATA_HELD_ITEM, &i);
}
gUnknown_020239FC = 0;
gUnknown_02024C78 = 0;
@@ -403,16 +399,18 @@ void PrepareBufferDataTransferLink(u8 a, u16 size, u8 *data)
gTasks[gUnknown_020238C4].data[12] = gTasks[gUnknown_020238C4].data[14];
gTasks[gUnknown_020238C4].data[14] = 0;
}
- unk_2000000[gTasks[gUnknown_020238C4].data[14] + 0x14000] = a;
- unk_2000000[gTasks[gUnknown_020238C4].data[14] + 0x14001] = gActiveBank;
- unk_2000000[gTasks[gUnknown_020238C4].data[14] + 0x14002] = gBankAttacker;
- unk_2000000[gTasks[gUnknown_020238C4].data[14] + 0x14003] = gBankTarget;
- unk_2000000[gTasks[gUnknown_020238C4].data[14] + 0x14004] = r9;
- unk_2000000[gTasks[gUnknown_020238C4].data[14] + 0x14005] = (r9 & 0x0000FF00) >> 8;
- unk_2000000[gTasks[gUnknown_020238C4].data[14] + 0x14006] = gAbsentBankFlags;
- unk_2000000[gTasks[gUnknown_020238C4].data[14] + 0x14007] = gEffectBank;
+
+ ewram14000arr(0, gTasks[gUnknown_020238C4].data[14]) = a;
+ ewram14000arr(1, gTasks[gUnknown_020238C4].data[14]) = gActiveBank;
+ ewram14000arr(2, gTasks[gUnknown_020238C4].data[14]) = gBankAttacker;
+ ewram14000arr(3, gTasks[gUnknown_020238C4].data[14]) = gBankTarget;
+ ewram14000arr(4, gTasks[gUnknown_020238C4].data[14]) = r9;
+ ewram14000arr(5, gTasks[gUnknown_020238C4].data[14]) = (r9 & 0x0000FF00) >> 8;
+ ewram14000arr(6, gTasks[gUnknown_020238C4].data[14]) = gAbsentBankFlags;
+ ewram14000arr(7, gTasks[gUnknown_020238C4].data[14]) = gEffectBank;
+
for (i = 0; i < size; i++)
- unk_2000000[gTasks[gUnknown_020238C4].data[14] + 0x14008 + i] = data[i];
+ ewram14008arr(i, gTasks[gUnknown_020238C4].data[14]) = data[i];
gTasks[gUnknown_020238C4].data[14] = gTasks[gUnknown_020238C4].data[14] + r9 + 8;
}
@@ -452,8 +450,8 @@ void sub_800C1A8(u8 taskId)
gTasks[taskId].data[12] = 0;
gTasks[taskId].data[15] = 0;
}
- var = (unk_2000000[gTasks[taskId].data[15] + 0x14004] | (unk_2000000[gTasks[taskId].data[15] + 0x14005] << 8)) + 8;
- SendBlock(bitmask_all_link_players_but_self(), &unk_2000000[gTasks[taskId].data[15] + 0x14000], var);
+ var = (ewram14004arr(0, gTasks[taskId].data[15]) | (ewram14004arr(1, gTasks[taskId].data[15]) << 8)) + 8;
+ SendBlock(bitmask_all_link_players_but_self(), &ewram14000arr(0, gTasks[taskId].data[15]), var);
gTasks[taskId].data[11]++;
}
else
@@ -466,7 +464,7 @@ void sub_800C1A8(u8 taskId)
case 4:
if (sub_8007ECC())
{
- var = unk_2000000[gTasks[taskId].data[15] + 0x14004] | (unk_2000000[gTasks[taskId].data[15] + 0x14005] << 8);
+ var = (ewram14004arr(0, gTasks[taskId].data[15]) | (ewram14004arr(1, gTasks[taskId].data[15]) << 8));
gTasks[taskId].data[13] = 1;
gTasks[taskId].data[15] = gTasks[taskId].data[15] + var + 8;
gTasks[taskId].data[11] = 3;
@@ -489,7 +487,7 @@ void sub_800C35C(void)
u8 i; //r4
s32 j; //r2
u16 r6; //r6
- u8 *recvBuffer; //r3
+ u16 *recvBuffer; //r3
u8 *dest; //r5
u8 *src; //r4
@@ -500,10 +498,10 @@ void sub_800C35C(void)
if (GetBlockReceivedStatus() & gBitTable[i])
{
ResetBlockReceivedFlag(i);
- recvBuffer = (u8 *)&gBlockRecvBuffer[i];
+ recvBuffer = gBlockRecvBuffer[i];
#ifndef NONMATCHING
asm("");
- recvBuffer = (u8 *)&gBlockRecvBuffer[i];
+ recvBuffer = gBlockRecvBuffer[i];
#endif
r6 = gBlockRecvBuffer[i][2];
if (gTasks[gUnknown_020238C5].data[14] + 9 + r6 > 0x1000)
@@ -513,7 +511,7 @@ void sub_800C35C(void)
}
//_0800C402
dest = EWRAM_15000 + gTasks[gUnknown_020238C5].data[14];
- src = recvBuffer;
+ src = (u8 *)recvBuffer;
for (j = 0; j < r6 + 8; j++)
dest[j] = src[j];
gTasks[gUnknown_020238C5].data[14] = gTasks[gUnknown_020238C5].data[14] + r6 + 8;
@@ -537,28 +535,28 @@ void sub_800C47C(u8 taskId)
gTasks[taskId].data[12] = 0;
gTasks[taskId].data[15] = 0;
}
- r4 = unk_2000000[0x15000 + gTasks[taskId].data[15] + 1];
- r7 = unk_2000000[0x15000 + gTasks[taskId].data[15] + 4] | (unk_2000000[0x15000 + gTasks[taskId].data[15] + 5] << 8);
- switch (unk_2000000[0x15000 + gTasks[taskId].data[15] + 0])
+ r4 = ewram15000arr(1, gTasks[taskId].data[15]);
+ r7 = ewram15000arr(4, gTasks[taskId].data[15]) | (ewram15000arr(5, gTasks[taskId].data[15]) << 8);
+ switch (ewram15000arr(0, gTasks[taskId].data[15]))
{
case 0:
if (gBattleExecBuffer & gBitTable[r4])
return;
- memcpy(gBattleBufferA[r4], &unk_2000000[0x15000 + gTasks[taskId].data[15] + 8], r7);
+ memcpy(gBattleBufferA[r4], &ewram15000arr(8, gTasks[taskId].data[15]), r7);
sub_80155A4(r4);
if (!(gBattleTypeFlags & BATTLE_TYPE_WILD))
{
- gBankAttacker = unk_2000000[0x15000 + gTasks[taskId].data[15] + 2];
- gBankTarget = unk_2000000[0x15000 + gTasks[taskId].data[15] + 3];
- gAbsentBankFlags = unk_2000000[0x15000 + gTasks[taskId].data[15] + 6];
- gEffectBank = unk_2000000[0x15000 + gTasks[taskId].data[15] + 7];
+ gBankAttacker = ewram15000arr(2, gTasks[taskId].data[15]);
+ gBankTarget = ewram15000arr(3, gTasks[taskId].data[15]);
+ gAbsentBankFlags = ewram15000arr(6, gTasks[taskId].data[15]);
+ gEffectBank = ewram15000arr(7, gTasks[taskId].data[15]);
}
break;
case 1:
- memcpy(gBattleBufferB[r4], &unk_2000000[0x15000 + gTasks[taskId].data[15] + 8], r7);
+ memcpy(gBattleBufferB[r4], &ewram15000arr(8, gTasks[taskId].data[15]), r7);
break;
case 2:
- r2 = unk_2000000[0x15000 + gTasks[taskId].data[15] + 8];
+ r2 = ewram15000arr(8, gTasks[taskId].data[15]);
gBattleExecBuffer &= ~(gBitTable[r4] << (r2 * 4));
break;
}
@@ -1097,7 +1095,7 @@ void EmitTrainerBallThrow(u8 a)
PrepareBufferDataTransfer(a, gBattleBuffersTransferData, 4);
}
-void Emitcmd48(u8 a, u8 *b, u8 c)
+void EmitDrawPartyStatusSummary(u8 a, struct HpAndStatus *hpAndStatus, u8 c)
{
int i;
@@ -1106,7 +1104,7 @@ void Emitcmd48(u8 a, u8 *b, u8 c)
gBattleBuffersTransferData[2] = (c & 0x80) >> 7;
gBattleBuffersTransferData[3] = 48;
for (i = 0; i < 48; i++)
- gBattleBuffersTransferData[4 + i] = b[i];
+ gBattleBuffersTransferData[4 + i] = *(i + (u8*)(hpAndStatus));
PrepareBufferDataTransfer(a, gBattleBuffersTransferData, 52);
}
diff --git a/src/rom_800D42C.c b/src/rom_800D42C.c
index f51779e65..bf6d03fb7 100644
--- a/src/rom_800D42C.c
+++ b/src/rom_800D42C.c
@@ -2,6 +2,7 @@
#include "battle.h"
#include "link.h"
#include "text.h"
+#include "ewram.h"
extern u16 gBattleTypeFlags;
extern u8 gBattleOutcome;
diff --git a/src/rom_8077ABC.c b/src/rom_8077ABC.c
index ef9eb36a8..10d58dcb5 100644
--- a/src/rom_8077ABC.c
+++ b/src/rom_8077ABC.c
@@ -12,6 +12,7 @@
#include "task.h"
#include "trig.h"
#include "util.h"
+#include "ewram.h"
#define GET_UNOWN_LETTER(personality) ((\
(((personality & 0x03000000) >> 24) << 6) \
@@ -94,8 +95,6 @@ extern struct OamData gOamData_837DF9C[];
extern const union AnimCmd *const gDummySpriteAnimTable[];
extern const union AffineAnimCmd *const gDummySpriteAffineAnimTable[];
-extern struct Struct_unk_2019348 unk_2019348;
-extern struct TransformStatus gTransformStatuses[];
extern u16 gBattleMonPartyPositions[];
extern u16 gBattleTypeFlags;
extern u32 gTransformPersonalities[NUM_BATTLE_SLOTS];
@@ -187,7 +186,7 @@ u8 sub_8077ABC(u8 slot, u8 a2) {
u16 species;
struct TransformStatus *transform;
- if (IsContest()) {
+ if (NotInBattle()) {
if (a2 == 3 && slot == 3) {
a2 = 1;
}
@@ -203,22 +202,22 @@ u8 sub_8077ABC(u8 slot, u8 a2) {
case 3:
case 4:
default:
- if (IsContest()) {
- if (unk_2019348.field_4 & 1) {
- species = unk_2019348.field_2;
+ if (NotInBattle()) {
+ if (ewram19348.unk4 & 1) {
+ species = ewram19348.unk2;
} else {
- species = unk_2019348.field_0;
+ species = ewram19348.unk0;
}
} else {
if (GetBankSide(slot)) {
- transform = &gTransformStatuses[slot];
+ transform = &eTransformStatuses[slot];
if (!transform->species) {
species = GetMonData(&gEnemyParty[gBattleMonPartyPositions[slot]], MON_DATA_SPECIES);
} else {
species = transform->species;
}
} else {
- transform = &gTransformStatuses[slot];
+ transform = &eTransformStatuses[slot];
if (!transform->species) {
species = GetMonData(&gPlayerParty[gBattleMonPartyPositions[slot]], MON_DATA_SPECIES);
} else {
@@ -243,16 +242,16 @@ u8 sub_8077BFC(u8 slot, u16 species) {
u8 ret;
u16 var;
- if (!GetBankSide(slot) || IsContest()) {
+ if (!GetBankSide(slot) || NotInBattle()) {
if (species == SPECIES_UNOWN) {
- if (IsContest()) {
- if (unk_2019348.field_4 & 1) {
- personality = unk_2019348.field_10;
+ if (NotInBattle()) {
+ if (ewram19348.unk4 & 1) {
+ personality = ewram19348.unk10;
} else {
- personality = unk_2019348.field_8;
+ personality = ewram19348.unk8;
}
} else {
- transform = &gTransformStatuses[slot];
+ transform = &eTransformStatuses[slot];
if (!transform->species) {
personality = GetMonData(&gPlayerParty[gBattleMonPartyPositions[slot]], MON_DATA_PERSONALITY);
} else {
@@ -275,7 +274,7 @@ u8 sub_8077BFC(u8 slot, u16 species) {
}
} else {
if (species == SPECIES_UNOWN) {
- transform = &gTransformStatuses[slot];
+ transform = &eTransformStatuses[slot];
if (!transform->species) {
personality = GetMonData(&gEnemyParty[gBattleMonPartyPositions[slot]], MON_DATA_PERSONALITY);
} else {
@@ -302,7 +301,7 @@ u8 sub_8077BFC(u8 slot, u16 species) {
u8 sub_8077DD8(u8 slot, u16 species) {
u8 ret = 0;
if (GetBankSide(slot) == 1) {
- if (!IsContest()) {
+ if (!NotInBattle()) {
if (species == SPECIES_CASTFORM) {
ret = gCastformElevations[gBattleMonForms[slot]];
} else if (species > NUM_SPECIES) {
@@ -318,7 +317,7 @@ u8 sub_8077DD8(u8 slot, u16 species) {
u8 sub_8077E44(u8 slot, u16 species, u8 a3) {
u16 offset;
u8 y;
- if (GetBankSide(slot) == 0 || IsContest()) {
+ if (GetBankSide(slot) == 0 || NotInBattle()) {
offset = sub_8077BFC(slot, species);
} else {
offset = sub_8077BFC(slot, species);
@@ -338,14 +337,14 @@ u8 sub_8077EE4(u8 slot, u8 a2) {
u16 species;
struct TransformStatus *transform;
if (a2 == 3 || a2 == 4) {
- if (IsContest()) {
- if (unk_2019348.field_4 & 1) {
- species = unk_2019348.field_2;
+ if (NotInBattle()) {
+ if (ewram19348.unk4 & 1) {
+ species = ewram19348.unk2;
} else {
- species = unk_2019348.field_0;
+ species = ewram19348.unk0;
}
} else {
- transform = &gTransformStatuses[slot];
+ transform = &eTransformStatuses[slot];
if (!transform->species) {
species = gUnknown_0202F7CA[slot];
} else {
@@ -381,16 +380,16 @@ u8 sub_8077FC0(u8 slot) {
u8 r6;
struct TransformStatus *transform;
r6 = sub_8077ABC(slot, 1);
- if (!IsContest()) {
+ if (!NotInBattle()) {
if (GetBankSide(slot)) {
- transform = &gTransformStatuses[slot];
+ transform = &eTransformStatuses[slot];
if (!transform->species) {
var = GetMonData(&gEnemyParty[gBattleMonPartyPositions[slot]], MON_DATA_SPECIES);
} else {
var = transform->species;
}
} else {
- transform = &gTransformStatuses[slot];
+ transform = &eTransformStatuses[slot];
if (!transform->species) {
var = GetMonData(&gPlayerParty[gBattleMonPartyPositions[slot]], MON_DATA_SPECIES);
} else {
@@ -752,7 +751,7 @@ u8 GetBankByPlayerAI(u8 slot) {
}
bool8 AnimBankSpriteExists(u8 slot) {
- if (IsContest()) {
+ if (NotInBattle()) {
if (gBattleAnimBankAttacker == slot) {
return TRUE;
}
@@ -782,7 +781,7 @@ bool8 IsDoubleBattle() {
}
void sub_8078914(struct Struct_sub_8078914 *unk) {
- if (IsContest()) {
+ if (NotInBattle()) {
unk->field_0 = (u8 *)0x6008000;
unk->field_4 = (u8 *)0x600f000;
unk->field_8 = 0xe;
@@ -794,7 +793,7 @@ void sub_8078914(struct Struct_sub_8078914 *unk) {
}
void sub_8078954(struct Struct_sub_8078914 *unk) {
- if (IsContest()) {
+ if (NotInBattle()) {
unk->field_0 = (u8 *)0x6008000;
unk->field_4 = (u8 *)0x600f000;
unk->field_8 = 0xe;
@@ -810,7 +809,7 @@ void sub_8078954(struct Struct_sub_8078914 *unk) {
}
u8 sub_80789BC() {
- if (IsContest()) {
+ if (NotInBattle()) {
return 1;
}
return 2;
@@ -820,7 +819,7 @@ void sub_80789D4(bool8 a1) {
if (!a1) {
BG3CNT.size = 0;
BG3CNT.overflow = 1;
- } else if (IsContest()) {
+ } else if (NotInBattle()) {
BG3CNT.size = 0;
BG3CNT.overflow = 1;
} else {
@@ -1025,7 +1024,7 @@ void obj_id_set_rotscale(u8 sprite, s16 xScale, s16 yScale, u16 rotation) {
}
bool8 sub_8078E38() {
- if (IsContest()) {
+ if (NotInBattle()) {
if (gSprites[GetAnimBankSpriteId(0)].data2 == 0xc9 /* XXX SPECIES_UNOWN? */) {
return FALSE;
}
@@ -1035,16 +1034,14 @@ bool8 sub_8078E38() {
}
void sub_8078E70(u8 sprite, u8 a2) {
- struct Struct_2017810 *unk;
u8 r7 = gSprites[sprite].data0;
- if (IsContest() || IsAnimBankSpriteVisible(r7)) {
+ if (NotInBattle() || IsAnimBankSpriteVisible(r7)) {
gSprites[sprite].invisible = FALSE;
}
gSprites[sprite].oam.objMode = a2;
gSprites[sprite].affineAnimPaused = TRUE;
- if (!IsContest() && !gSprites[sprite].oam.affineMode) {
- unk = &unk_2017810[r7];
- gSprites[sprite].oam.matrixNum = unk->field_6;
+ if (!NotInBattle() && !gSprites[sprite].oam.affineMode) {
+ gSprites[sprite].oam.matrixNum = ewram17810[r7].unk6;
}
gSprites[sprite].oam.affineMode = 3;
CalcCenterToCornerVec(&gSprites[sprite], gSprites[sprite].oam.shape, gSprites[sprite].oam.size, gSprites[sprite].oam.affineMode);
@@ -1135,7 +1132,7 @@ u32 sub_80791A8(u8 a1, u8 a2, u8 a3, u8 a4, u8 a5, u8 a6, u8 a7) {
u32 var = 0;
u32 shift;
if (a1) {
- if (!IsContest()) {
+ if (!NotInBattle()) {
var = 0xe;
} else {
var = 1 << sub_80789BC();
@@ -1162,14 +1159,14 @@ u32 sub_80791A8(u8 a1, u8 a2, u8 a3, u8 a4, u8 a5, u8 a6, u8 a7) {
}
}
if (a6) {
- if (!IsContest()) {
+ if (!NotInBattle()) {
var |= 0x100;
} else {
var |= 0x4000;
}
}
if (a7) {
- if (!IsContest()) {
+ if (!NotInBattle()) {
var |= 0x200;
}
}
@@ -1179,7 +1176,7 @@ u32 sub_80791A8(u8 a1, u8 a2, u8 a3, u8 a4, u8 a5, u8 a6, u8 a7) {
u32 sub_80792C0(u8 a1, u8 a2, u8 a3, u8 a4) {
u32 var = 0;
u32 shift;
- if (IsContest()) {
+ if (NotInBattle()) {
if (a1) {
var |= 1 << 18;
return var;
@@ -1540,12 +1537,12 @@ u16 sub_8079B10(u8 sprite) {
u16 i;
for (i = 0; i < (sizeof(gBattleMonSprites) / sizeof(u8)); i++) {
if (gBattleMonSprites[i] == sprite) {
- if (IsContest()) {
- species = unk_2019348.field_0;
+ if (NotInBattle()) {
+ species = ewram19348.unk0;
return gMonBackPicCoords[species].y_offset;
} else {
if (!GetBankSide(i)) {
- transform = &gTransformStatuses[slot];
+ transform = &eTransformStatuses[slot];
if (!transform->species) {
species = GetMonData(&gPlayerParty[gBattleMonPartyPositions[i]], MON_DATA_SPECIES);
} else {
@@ -1553,7 +1550,7 @@ u16 sub_8079B10(u8 sprite) {
}
return gMonBackPicCoords[species].y_offset;
} else {
- transform = &gTransformStatuses[slot];
+ transform = &eTransformStatuses[slot];
if (!transform->species) {
species = GetMonData(&gEnemyParty[gBattleMonPartyPositions[i]], MON_DATA_SPECIES);
} else {
@@ -1653,7 +1650,7 @@ void sub_8079E24() {
u8 sub_8079E90(u8 slot) {
u8 status;
u8 ret;
- if (IsContest()) {
+ if (NotInBattle()) {
if (slot == 2) {
return 30;
} else {
@@ -1676,7 +1673,7 @@ u8 sub_8079E90(u8 slot) {
u8 sub_8079ED4(u8 slot) {
u8 status = GetBankIdentity(slot);
- if (IsContest()) {
+ if (NotInBattle()) {
return 2;
}
if (status == 0 || status == 3) {
@@ -1688,7 +1685,7 @@ u8 sub_8079ED4(u8 slot) {
u8 GetBankIdentity_permutated(u8 slot) {
u8 status;
- if (!IsContest()) {
+ if (!NotInBattle()) {
status = GetBankIdentity(slot);
if (status == 0 || status == 3) {
return 2;
@@ -1744,7 +1741,7 @@ u8 sub_8079F44(u16 species, u8 isBackpic, u8 a3, s16 a4, s16 a5, u8 a6, u32 a7,
} else {
sprite = CreateSprite(&gSpriteTemplate_837F5B0[a3], a4, a5 + gMonBackPicCoords[species].y_offset, a6);
}
- if (IsContest()) {
+ if (NotInBattle()) {
gSprites[sprite].affineAnims = &gSpriteAffineAnimTable_81E7C18;
StartSpriteAffineAnim(&gSprites[sprite], 0);
}
@@ -1763,13 +1760,13 @@ int sub_807A100(u8 slot, u8 a2) {
int ret;
const struct MonCoords *coords;
struct TransformStatus *transform;
- if (IsContest()) {
- if (unk_2019348.field_4 & 1) {
- species = unk_2019348.field_2;
- personality = unk_2019348.field_10;
+ if (NotInBattle()) {
+ if (ewram19348.unk4 & 1) {
+ species = ewram19348.unk2;
+ personality = ewram19348.unk10;
} else {
- species = unk_2019348.field_0;
- personality = unk_2019348.field_8;
+ species = ewram19348.unk0;
+ personality = ewram19348.unk8;
}
if (species == SPECIES_UNOWN) {
letter = GET_UNOWN_LETTER(personality);
@@ -1788,7 +1785,7 @@ int sub_807A100(u8 slot, u8 a2) {
}
} else {
if (!GetBankSide(slot)) {
- transform = &gTransformStatuses[slot];
+ transform = &eTransformStatuses[slot];
if (!transform->species) {
species = GetMonData(&gPlayerParty[gBattleMonPartyPositions[slot]], MON_DATA_SPECIES);
personality = GetMonData(&gPlayerParty[gBattleMonPartyPositions[slot]], MON_DATA_PERSONALITY);
@@ -1810,7 +1807,7 @@ int sub_807A100(u8 slot, u8 a2) {
coords = &gMonBackPicCoords[species];
}
} else {
- transform = &gTransformStatuses[slot];
+ transform = &eTransformStatuses[slot];
if (!transform->species) {
species = GetMonData(&gEnemyParty[gBattleMonPartyPositions[slot]], MON_DATA_SPECIES);
personality = GetMonData(&gEnemyParty[gBattleMonPartyPositions[slot]], MON_DATA_PERSONALITY);
@@ -1870,7 +1867,7 @@ void sub_807A3FC(u8 slot, u8 a2, s16 *a3, s16 *a4) {
}
v3 = sub_8077ABC(slot, v1);
v4 = sub_8077ABC(slot, v2);
- if (IsDoubleBattle() && !IsContest()) {
+ if (IsDoubleBattle() && !NotInBattle()) {
v5 = sub_8077ABC(slot ^ 2, v1);
v6 = sub_8077ABC(slot ^ 2, v2);
} else {
diff --git a/src/scene/berry_blender.c b/src/scene/berry_blender.c
index 7ffcc5185..398f62833 100644
--- a/src/scene/berry_blender.c
+++ b/src/scene/berry_blender.c
@@ -20,6 +20,7 @@
#include "menu_cursor.h"
#include "trig.h"
#include "pokeblock.h"
+#include "ewram.h"
//needed to match Blender_ControlHitPitch
struct MusicPlayerInfo
@@ -207,7 +208,6 @@ extern void de_sub_8073110();
extern struct MusicPlayerInfo gMPlay_SE2;
extern struct MusicPlayerInfo gMPlay_BGM;
-extern u8 ewram[];
extern u16 gScriptItemId;
extern u8 gUnknown_020297ED;
extern u8 byte_3002A68;
@@ -828,7 +828,7 @@ static bool8 sub_804E2EC(void)
switch (gBerryBlenderData->field_1)
{
case 0:
- LZDecompressWram(gUnknown_08E6C100, &ewram[0x10000]);
+ LZDecompressWram(gUnknown_08E6C100, ewram10000);
gBerryBlenderData->field_1++;
break;
case 1:
@@ -843,7 +843,7 @@ static bool8 sub_804E2EC(void)
break;
case 2:
{
- void* offsetRead = &ewram[0x10000];
+ void* offsetRead = ewram10000;
void* offsetWrite = (void*)(VRAM);
u32 size = 0x2000;
while (TRUE)
@@ -862,16 +862,16 @@ static bool8 sub_804E2EC(void)
}
break;
case 3:
- LZDecompressWram(gUnknown_08E6C920, &ewram[0x10000]);
+ LZDecompressWram(gUnknown_08E6C920, ewram10000);
gBerryBlenderData->field_1++;
break;
case 4:
- LZDecompressWram(gUnknown_08E6D354, &ewram[0x13000]);
+ LZDecompressWram(gUnknown_08E6D354, ewram13000);
gBerryBlenderData->field_1++;
break;
case 5:
{
- void* offsetRead = &ewram[0x10000];
+ void* offsetRead = ewram10000;
void* offsetWrite = (void*)(VRAM + 0xE000);
DmaCopy16(3, offsetRead, offsetWrite, 0x1000);
@@ -880,7 +880,7 @@ static bool8 sub_804E2EC(void)
break;
case 6:
{
- void* offsetRead = &ewram[0x11000];
+ void* offsetRead = ewram11000;
void* offsetWrite = (void*)(VRAM + 0xF000);
DmaCopy16(3, offsetRead, offsetWrite, 0x1000);
@@ -890,7 +890,7 @@ static bool8 sub_804E2EC(void)
case 7:
{
u16 i;
- u16* palStore = (u16*)(&ewram[0x13000]);
+ u16* palStore = (u16*)(ewram13000);
void* offsetRead;
void* offsetWrite;
@@ -898,7 +898,7 @@ static bool8 sub_804E2EC(void)
{
*(palStore + i) |= 0x100;
}
- offsetRead = &ewram[0x13000];
+ offsetRead = ewram13000;
offsetWrite = (void*)(VRAM + 0x6000);
DmaCopy16(3, offsetRead, offsetWrite, 0x500);
LoadPalette(sBlenderOuterPal, 0x80, 0x20);
@@ -937,7 +937,7 @@ void sub_804E538(void)
{
u8* field6F; //this temp value is needed to match
- gBerryBlenderData = (struct BerryBlenderData*)(&ewram[0x18000]);
+ gBerryBlenderData = eBerryBlenderData;
field6F = &gBerryBlenderData->field_6F;
gBerryBlenderData->field_0 = 0;
@@ -1111,7 +1111,7 @@ void sub_804E990(void)
s32 i;
REG_DISPCNT = 0;
- gBerryBlenderData = (struct BerryBlenderData*)(&ewram[0x18000]);
+ gBerryBlenderData = eBerryBlenderData;
gBerryBlenderData->field_0 = 0;
gBerryBlenderData->field_134 = 0;
for (i = 0; i < BLENDER_MAX_PLAYERS; i++)
@@ -3710,7 +3710,7 @@ static void sub_80527BC(void)
gUnknown_020297E0 = 0;
gUnknown_020297DC = 2;
for (i = 0; i < 200; i++)
- ewram[i] = 0;
+ gSharedMem[i] = 0;
gUnknown_020297E8 = 0;
}
for (i = 0; i < 100; i++)
@@ -3719,7 +3719,7 @@ static void sub_80527BC(void)
gUnknown_020297E0++;
else
{
- u16* ewramPtr = ((u16*)(ewram));
+ u16* ewramPtr = ((u16*)(gSharedMem));
ewramPtr[gUnknown_020297E4] = gUnknown_020297E0;
gUnknown_020297E4++;
gUnknown_020297E0 = 0;
diff --git a/src/scene/contest_painting.c b/src/scene/contest_painting.c
index 3662efdec..2600076c3 100644
--- a/src/scene/contest_painting.c
+++ b/src/scene/contest_painting.c
@@ -12,8 +12,7 @@
#include "strings.h"
#include "text.h"
#include "unknown_task.h"
-
-extern u8 unk_2000000[];
+#include "ewram.h"
static u8 gUnknown_03000750;
static u16 gUnknown_03000752;
@@ -26,9 +25,6 @@ u8 gUnknown_03005E40[0x4C];
struct ContestEntry *gUnknown_03005E8C;
u16 (*gUnknown_03005E90)[];
-extern struct ContestEntry unk_2015de0;
-extern struct Unk2015E00 unk_2015e00;
-
static const u16 gPictureFramePalettes[][16] =
{
INCBIN_U16("graphics/picture_frame/bg0.gbapal"),
@@ -113,7 +109,7 @@ void sub_8106630(u32 arg0)
{
asm(".syntax unified\n\
push {r4-r7,lr}\n\
- ldr r2, _0810665C @ =0x02015de0\n\
+ ldr r2, _0810665C @ =gSharedMem + 0x15DE0\n\
subs r4, r2, 0x2\n\
subs r5, r2, 0x1\n\
ldr r3, _08106660 @ =gSaveBlock1\n\
@@ -135,7 +131,7 @@ void sub_8106630(u32 arg0)
pop {r0}\n\
bx r0\n\
.align 2, 0\n\
-_0810665C: .4byte 0x02015de0\n\
+_0810665C: .4byte gSharedMem + 0x15DE0\n\
_08106660: .4byte gSaveBlock1\n\
_08106664: .4byte 0x00002dfc\n\
.syntax divided\n");
@@ -153,7 +149,7 @@ static void ShowContestPainting(void)
case 0:
remove_some_task();
SetVBlankCallback(NULL);
- gUnknown_03005E8C = &unk_2015de0;
+ gUnknown_03005E8C = &ewram15DE0;
ContestPaintingInitVars(TRUE);
ContestPaintingInitBG();
gMain.state++;
@@ -184,15 +180,15 @@ static void ShowContestPainting(void)
case 2:
SeedRng(gMain.vblankCounter1);
InitKeys();
- ContestPaintingInitWindow(unk_2000000[0x15DDF]);
+ ContestPaintingInitWindow(ewram15DDF);
gMain.state++;
break;
case 3:
- sub_8107090(unk_2000000[0x15DDE], unk_2000000[0x15DDF]);
+ sub_8107090(ewram15DDE, ewram15DDF);
gMain.state++;
break;
case 4:
- ContestPaintingPrintCaption(unk_2000000[0x15DDE], unk_2000000[0x15DDF]);
+ ContestPaintingPrintCaption(ewram15DDE, ewram15DDF);
LoadPalette(gUnknown_083F6140, 0, 1 * 2);
DmaClear32(3, PLTT, 0x400);
BeginFastPaletteFade(2);
@@ -753,8 +749,8 @@ static u8 sub_8106EE0(u8 arg0)
static void sub_8106F4C(void)
{
- gUnknown_03005E90 = &unk_2015e00.unk2017e00;
- gUnknown_03005E10 = &unk_2015e00.unk2015e00;
+ gUnknown_03005E90 = &ewram15E00.unk2017e00;
+ gUnknown_03005E10 = &ewram15E00.unk2015e00;
}
static void sub_8106F6C(u8 arg0)
diff --git a/src/scene/credits.c b/src/scene/credits.c
index cf10137c1..077fc5e0d 100644
--- a/src/scene/credits.c
+++ b/src/scene/credits.c
@@ -16,6 +16,7 @@
#include "starter_choose.h"
#include "task.h"
#include "trig.h"
+#include "ewram.h"
asm(".set REG_BASE, 0x4000000");
asm(".set OFFSET_REG_BLDCNT, 0x50");
@@ -159,21 +160,11 @@ struct Unk201C000
struct CreditsEntry
{
u8 var_0;
- u8 *text;
+ const u8 *text;
};
-extern u8 ewram[];
-
-#define EWRAM_1F800 ((u16 *)(ewram + 0x1F800))
-#define HALL_OF_FAME_SHEET_0 ((u8 *)(ewram + 0x1E000))
-#define HALL_OF_FAME_SHEET_1 ((u8 *)(ewram + 0x1E800))
-#define HALL_OF_FAME_SHEET_2 ((u8 *)(ewram + 0x1F000))
-#define ewram1c000 (*(struct Unk201C000 *)(ewram + 0x1C000))
-
-extern struct HallOfFame gHallOfFame;
extern u8 unk_201e800[0x800];
extern u8 unk_201f000[0x800];
-extern u16 unk_201f800[];
extern struct SpriteTemplate gUnknown_02024E8C;
@@ -194,18 +185,208 @@ extern void *gUnknown_0840B5A0[];
// data/credits
const u16 gUnknown_0840B7BC[] = INCBIN_U16("graphics/credits/palette_1.gbapal");
const u8 gUnknown_0840B7FC[] = INCBIN_U8("graphics/credits/ampersand.4bpp");
-extern u8 gUnknown_0840B83C[];
-extern u8 gUnknown_0840B84B[];
-extern u8 gUnknown_0840B85A[];
-extern u8 gUnknown_0840B869[];
-extern u8 gUnknown_0840B878[];
-extern struct CreditsEntry *gCreditsEntryPointerTable[][5];
-extern u8 gUnknown_0840CA00[][2];
-extern struct SpriteSheet gUnknown_0840CAA0;
-extern struct SpritePalette gUnknown_0840CAB0;
-extern const union AnimCmd *const gSpriteAnimTable_0840CA54[];
-extern const union AnimCmd *const gSpriteAnimTable_0840CA94[];
-extern struct SpriteTemplate gSpriteTemplate_840CAEC;
+
+void spritecb_814580C(struct Sprite *sprite);
+
+const u8 gUnknown_0840B83C[] =
+{
+ 0, 1, 0,
+ 0xFF, 1, 0xFF,
+ 0xFF, 1, 0xFF,
+ 0xFF, 1, 0xFF,
+ 0xFF, 1, 0xFF,
+};
+
+const u8 gUnknown_0840B84B[] =
+{
+ 1, 0xFF, 1,
+ 1, 0xFF, 1,
+ 1, 2, 1,
+ 1, 0xFF, 1,
+ 1, 0xFF, 1,
+};
+
+const u8 gUnknown_0840B85A[] =
+{
+ 1, 0, 0,
+ 1, 0xFF, 0xFF,
+ 1, 2, 2,
+ 1, 0xFF, 0xFF,
+ 1, 0x80, 0x80,
+};
+
+const u8 gUnknown_0840B869[] =
+{
+ 1, 3, 1,
+ 1, 4, 1,
+ 1, 5, 1,
+ 1, 0xC4, 1,
+ 1, 0xC3, 1,
+};
+
+const u8 gUnknown_0840B878[] =
+{
+ 1, 6, 7,
+ 1, 8, 9,
+ 1, 0xFF, 1,
+ 1, 0x88, 0x89,
+ 1, 0x86, 0x87,
+#ifdef GERMAN
+ 1, 0, 0,
+ 1, 0xFF, 0xFF,
+ 1, 0x80, 0x8A,
+ 1, 0xFF, 0xFF,
+ 1, 0xFF, 0xFF,
+ 0, 1, 0,
+ 0xFF, 1, 0xFF,
+ 0xFF, 1, 0xFF,
+ 0xFF, 1, 0xFF,
+ 0x80, 1, 0x80,
+#endif
+};
+
+#ifdef GERMAN
+#include "../data/credits_de.h"
+#else
+#include "../data/credits_en.h"
+#endif
+
+const u8 gUnknown_0840CA00[][2] =
+{
+ {104, 36},
+ {120, 36},
+ {136, 36},
+};
+
+static const union AnimCmd gSpriteAnim_840CA08[] =
+{
+ ANIMCMD_FRAME(0, 8),
+ ANIMCMD_FRAME(64, 8),
+ ANIMCMD_FRAME(128, 8),
+ ANIMCMD_FRAME(192, 8),
+ ANIMCMD_JUMP(0),
+};
+
+static const union AnimCmd gSpriteAnim_840CA1C[] =
+{
+ ANIMCMD_FRAME(0, 4),
+ ANIMCMD_FRAME(64, 4),
+ ANIMCMD_FRAME(128, 4),
+ ANIMCMD_FRAME(192, 4),
+ ANIMCMD_JUMP(0),
+};
+
+static const union AnimCmd gSpriteAnim_840CA30[] =
+{
+ ANIMCMD_FRAME(256, 4),
+ ANIMCMD_FRAME(320, 4),
+ ANIMCMD_FRAME(384, 4),
+ ANIMCMD_END,
+};
+
+static const union AnimCmd gSpriteAnim_840CA40[] =
+{
+ ANIMCMD_FRAME(384, 30),
+ ANIMCMD_FRAME(320, 30),
+ ANIMCMD_FRAME(256, 30),
+ ANIMCMD_FRAME(256, 30),
+ ANIMCMD_END,
+};
+
+static const union AnimCmd *const gSpriteAnimTable_0840CA54[] =
+{
+ gSpriteAnim_840CA08,
+ gSpriteAnim_840CA1C,
+ gSpriteAnim_840CA30,
+ gSpriteAnim_840CA40,
+};
+
+static const union AnimCmd gSpriteAnim_840CA64[] =
+{
+ ANIMCMD_FRAME(0, 8),
+ ANIMCMD_FRAME(64, 8),
+ ANIMCMD_FRAME(128, 8),
+ ANIMCMD_FRAME(192, 8),
+ ANIMCMD_JUMP(0),
+};
+
+static const union AnimCmd gSpriteAnim_840CA78[] =
+{
+ ANIMCMD_FRAME(0, 4),
+ ANIMCMD_FRAME(64, 4),
+ ANIMCMD_FRAME(128, 4),
+ ANIMCMD_FRAME(192, 4),
+ ANIMCMD_JUMP(0),
+};
+
+static const union AnimCmd gSpriteAnim_840CA8C[] =
+{
+ ANIMCMD_FRAME(0, 4),
+ ANIMCMD_END,
+};
+
+static const union AnimCmd *const gSpriteAnimTable_0840CA94[] =
+{
+ gSpriteAnim_840CA64,
+ gSpriteAnim_840CA78,
+ gSpriteAnim_840CA8C,
+};
+
+static const struct SpriteSheet gUnknown_0840CAA0[] = {{ewram1E000_2, 6144, 1001}, {0}};
+static const struct SpritePalette gUnknown_0840CAB0[] = {{ewram_1F800_2, 1001}, {0}};
+
+static const struct OamData gOamData_840CAC0 =
+{
+ .y = 160,
+ .affineMode = 0,
+ .objMode = 0,
+ .mosaic = 0,
+ .bpp = 0,
+ .shape = 0,
+ .x = 0,
+ .matrixNum = 0,
+ .size = 3,
+ .tileNum = 0,
+ .priority = 1,
+ .paletteNum = 0,
+ .affineParam = 0,
+};
+
+static const union AnimCmd gSpriteAnim_840CAC8[] =
+{
+ ANIMCMD_FRAME(0, 8),
+ ANIMCMD_END,
+};
+
+static const union AnimCmd gSpriteAnim_840CAD0[] =
+{
+ ANIMCMD_FRAME(64, 8),
+ ANIMCMD_END,
+};
+
+static const union AnimCmd gSpriteAnim_840CAD8[] =
+{
+ ANIMCMD_FRAME(128, 8),
+ ANIMCMD_END,
+};
+
+static const union AnimCmd *const gSpriteAnimTable_840CAE0[] =
+{
+ gSpriteAnim_840CAC8,
+ gSpriteAnim_840CAD0,
+ gSpriteAnim_840CAD8,
+};
+
+static const struct SpriteTemplate gSpriteTemplate_840CAEC =
+{
+ .tileTag = 1001,
+ .paletteTag = 1001,
+ .oam = &gOamData_840CAC0,
+ .anims = gSpriteAnimTable_840CAE0,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = spritecb_814580C,
+};
// graphics
extern u8 gCreditsCopyrightEnd_Gfx[];
@@ -441,8 +622,8 @@ void task_a_8143D04(u8 taskIdA)
EWRAM_1F800[2] = 0x529F; // light red
EWRAM_1F800[3] = 0x7E94; // light blue
- LoadSpriteSheet(&gUnknown_0840CAA0);
- LoadSpritePalette(&gUnknown_0840CAB0);
+ LoadSpriteSheet(gUnknown_0840CAA0);
+ LoadSpritePalette(gUnknown_0840CAB0);
gMain.state += 1;
break;
@@ -1160,7 +1341,7 @@ u16 sub_8145208(u8 arg0)
return out;
}
-void sub_814524C(u8 arg0[], u8 baseX, u8 baseY, u16 arg3, u16 palette)
+void sub_814524C(const u8 arg0[], u8 baseX, u8 baseY, u16 arg3, u16 palette)
{
u8 y, x;
const u16 tileOffset = (palette / 16) << 12;
diff --git a/src/scene/egg_hatch.c b/src/scene/egg_hatch.c
index 032dcd284..d363e4bcd 100644
--- a/src/scene/egg_hatch.c
+++ b/src/scene/egg_hatch.c
@@ -20,8 +20,8 @@
#include "trig.h"
#include "rng.h"
#include "trade.h"
+#include "ewram.h"
-extern u8 ewram[];
extern struct SpriteTemplate gUnknown_02024E8C;
struct EggHatchData
@@ -416,7 +416,7 @@ static u8 EggHatchCreateMonSprite(u8 a0, u8 switchID, u8 pokeID)
{
u16 species = GetMonData(mon, MON_DATA_SPECIES);
u32 pid = GetMonData(mon, MON_DATA_PERSONALITY);
- HandleLoadSpecialPokePic(&gMonFrontPicTable[species], gMonFrontPicCoords[species].coords, gMonFrontPicCoords[species].y_offset,(u32)(&ewram[0]), gUnknown_081FAF4C[2 * a0 + 1], species, pid);
+ HandleLoadSpecialPokePic(&gMonFrontPicTable[species], gMonFrontPicCoords[species].coords, gMonFrontPicCoords[species].y_offset, ewram0_6, gUnknown_081FAF4C[2 * a0 + 1], species, pid);
LoadCompressedObjectPalette(GetMonSpritePalStruct(mon));
}
break;
@@ -460,7 +460,7 @@ static void CB2_EggHatch_0(void)
{
case 0:
REG_DISPCNT = 0;
- gEggHatchData = (struct EggHatchData*)(&ewram[0x18000]);
+ gEggHatchData = eEggHatchData;
gEggHatchData->eggPartyID = gSpecialVar_0x8004;
gEggHatchData->eggShardVelocityID = 0;
ResetTasks();
@@ -479,8 +479,8 @@ static void CB2_EggHatch_0(void)
break;
case 2:
LZDecompressVram(&gUnknown_08D00000, (void*)(VRAM));
- CpuSet(&gUnknown_08D00524, &ewram[0], 0x800);
- DmaCopy16(3, &ewram[0], (void*)(VRAM + 0x2800), 0x500);
+ CpuSet(&gUnknown_08D00524, ewram0_7, 0x800);
+ DmaCopy16(3, ewram0_7, (void*)(VRAM + 0x2800), 0x500);
LoadCompressedPalette(&gUnknown_08D004E0, 0, 0x20);
gMain.state++;
break;
diff --git a/src/scene/evolution_scene.c b/src/scene/evolution_scene.c
index 24168dc56..755176c81 100644
--- a/src/scene/evolution_scene.c
+++ b/src/scene/evolution_scene.c
@@ -24,6 +24,7 @@
#include "pokemon_summary_screen.h"
#include "menu_cursor.h"
#include "strings2.h"
+#include "ewram.h"
struct EvoInfo
{
@@ -55,8 +56,6 @@ struct EvoInfo
u8 unkA0C4; // 0x201E8C4
};
-#define sEvoInfo ((*(struct EvoInfo*)(ewram + 0x14800)))
-
void EvolutionRenameMon(struct Pokemon *mon, u16 oldSpecies, u16 newSpecies);
void sub_8024CEC(void);
void sub_8023A80(void);
@@ -78,7 +77,6 @@ extern u8 gBattleTerrain;
extern u8 gReservedSpritePaletteCount;
extern u16 gMoveToLearn;
extern struct SpriteTemplate gUnknown_02024E8C;
-extern u8 gUnk_2009000[]; // won't match if I 'ewram' it
extern bool8 gAffineAnimsDisabled;
extern u8 gDisplayedStringBattle[];
extern u8 gBattleTextBuff2[];
@@ -276,7 +274,7 @@ void EvolutionScene(struct Pokemon* mon, u16 speciesToEvolve, bool8 canStopEvo,
gTasks[ID].tEvoWasStopped = FALSE;
gTasks[ID].tPartyID = partyID;
- memcpy(gUnk_2009000, &gPlttBufferUnfaded[0x20], 0x60);
+ memcpy(ewram9000_hack, &gPlttBufferUnfaded[0x20], 0x60);
REG_DISPCNT = DISPCNT_OBJ_ON | DISPCNT_BG_ALL_ON | DISPCNT_OBJ_1D_MAP;
SetHBlankCallback(EvoDummyFunc);
@@ -639,7 +637,7 @@ static void Task_EvolutionScene(u8 taskID)
{
m4aMPlayAllStop();
PlayCry1(gTasks[taskID].tPostEvoSpecies, 0);
- memcpy(&gPlttBufferUnfaded[0x20], gUnk_2009000, 0x60);
+ memcpy(&gPlttBufferUnfaded[0x20], ewram9000_hack, 0x60);
BeginNormalPaletteFade(0x1C, 0, 0x10, 0, 0);
gTasks[taskID].tState++;
}
@@ -981,7 +979,7 @@ static void Task_TradeEvolutionScene(u8 taskID)
if (IsSEPlaying())
{
PlayCry1(gTasks[taskID].tPostEvoSpecies, 0);
- memcpy(&gPlttBufferUnfaded[0x20], gUnk_2009000, 0x60);
+ memcpy(&gPlttBufferUnfaded[0x20], ewram9000_hack, 0x60);
BeginNormalPaletteFade(1, 0, 0x10, 0, 0);
gTasks[taskID].tState++;
}
@@ -1522,7 +1520,7 @@ __attribute__((naked))
void unref_sub_8113B50()
{
asm(".syntax unified\n\
- push {r4-r7,lr}\n\
+ push {r4-r7,lr}\n\
mov r7, r10\n\
mov r6, r9\n\
mov r5, r8\n\
@@ -1536,7 +1534,7 @@ void unref_sub_8113B50()
str r1, [sp, 0x10]\n\
movs r2, 0\n\
str r2, [sp, 0x8]\n\
- ldr r3, _08113C60 @ =0x02014800\n\
+ ldr r3, _08113C60 @ =gSharedMem + 0x14800\n\
mov r12, r3\n\
ldr r4, _08113C64 @ =0x000018c4\n\
add r4, r12\n\
@@ -1553,7 +1551,7 @@ _08113B7C:\n\
adds r0, r3, 0x4\n\
adds r0, r1, r0\n\
strb r2, [r0]\n\
- ldr r4, _08113C6C @ =0x02014844\n\
+ ldr r4, _08113C6C @ =gSharedMem + 0x14844\n\
adds r0, r1, r4\n\
strb r2, [r0]\n\
movs r6, 0\n\
@@ -1564,7 +1562,7 @@ _08113B7C:\n\
_08113B9C:\n\
mov r0, r9\n\
adds r1, r6, r0\n\
- ldr r5, _08113C70 @ =0x020158c4\n\
+ ldr r5, _08113C70 @ =gSharedMem + 0x158C4\n\
adds r0, r1, r5\n\
strb r2, [r0]\n\
mov r5, r10\n\
@@ -1573,7 +1571,7 @@ _08113B9C:\n\
mov r5, r8\n\
adds r0, r1, r5\n\
strb r2, [r0]\n\
- ldr r5, _08113C74 @ =0x020170c4\n\
+ ldr r5, _08113C74 @ =gSharedMem + 0x170C4\n\
adds r0, r1, r5\n\
strb r2, [r0]\n\
adds r7, r3, 0\n\
@@ -1654,7 +1652,7 @@ _08113C4A:\n\
asrs r0, r6, 1\n\
lsls r0, 2\n\
add r0, r10\n\
- ldr r1, _08113C98 @ =0x020188c4\n\
+ ldr r1, _08113C98 @ =gSharedMem + 0x188C4\n\
adds r0, r1\n\
str r2, [r0]\n\
cmp r3, 0\n\
@@ -1663,12 +1661,12 @@ _08113C4A:\n\
beq _08113CC6\n\
b _08113CF4\n\
.align 2, 0\n\
-_08113C60: .4byte 0x02014800\n\
+_08113C60: .4byte gSharedMem + 0x14800\n\
_08113C64: .4byte 0x000018c4\n\
_08113C68: .4byte 0x000020c4\n\
-_08113C6C: .4byte 0x02014844\n\
-_08113C70: .4byte 0x020158c4\n\
-_08113C74: .4byte 0x020170c4\n\
+_08113C6C: .4byte gSharedMem + 0x14844\n\
+_08113C70: .4byte gSharedMem + 0x158C4\n\
+_08113C74: .4byte gSharedMem + 0x170C4\n\
_08113C78: .4byte 0x000008c4\n\
_08113C7C: .4byte 0x000030c4\n\
_08113C80: .4byte 0x000038c4\n\
@@ -1677,7 +1675,7 @@ _08113C88: .4byte 0x000070c4\n\
_08113C8C: .4byte 0x000080c4\n\
_08113C90: .4byte 0x000090c4\n\
_08113C94: .4byte 0x0000a0c4\n\
-_08113C98: .4byte 0x020188c4\n\
+_08113C98: .4byte gSharedMem + 0x188C4\n\
_08113C9C:\n\
movs r0, 0x1\n\
ands r0, r6\n\
@@ -1784,7 +1782,7 @@ _08113D4A:\n\
mov r8, r2\n\
movs r3, 0\n\
str r3, [sp, 0x8]\n\
- ldr r0, _08113D84 @ =0x02014844\n\
+ ldr r0, _08113D84 @ =gSharedMem + 0x14844\n\
movs r4, 0x82\n\
lsls r4, 6\n\
adds r4, r0\n\
@@ -1811,7 +1809,7 @@ _08113D78:\n\
beq _08113DB4\n\
b _08113DE4\n\
.align 2, 0\n\
-_08113D84: .4byte 0x02014844\n\
+_08113D84: .4byte gSharedMem + 0x14844\n\
_08113D88:\n\
adds r0, r6, 0\n\
mov r1, r9\n\
@@ -1917,9 +1915,9 @@ _08113E28:\n\
str r1, [sp, 0x8]\n\
_08113E3A:\n\
ldr r3, [sp, 0x8]\n\
- ldr r4, _08113EBC @ =0x02014804\n\
+ ldr r4, _08113EBC @ =gSharedMem + 0x14804\n\
adds r2, r3, r4\n\
- ldr r5, _08113EC0 @ =0x02014844\n\
+ ldr r5, _08113EC0 @ =gSharedMem + 0x14844\n\
adds r1, r3, r5\n\
ldrb r0, [r2]\n\
adds r3, 0x1\n\
@@ -1934,7 +1932,7 @@ _08113E52:\n\
ldrb r2, [r2]\n\
cmp r0, r2\n\
bge _08113F54\n\
- ldr r0, _08113EC4 @ =0x02014800\n\
+ ldr r0, _08113EC4 @ =gSharedMem + 0x14800\n\
adds r0, 0x4\n\
ldr r1, [sp, 0x8]\n\
adds r0, r1, r0\n\
@@ -1945,7 +1943,7 @@ _08113E66:\n\
str r2, [sp, 0x14]\n\
movs r6, 0\n\
ldr r3, [sp, 0x8]\n\
- ldr r4, _08113EC0 @ =0x02014844\n\
+ ldr r4, _08113EC0 @ =gSharedMem + 0x14844\n\
adds r0, r3, r4\n\
ldr r5, [sp, 0xC]\n\
adds r5, 0x1\n\
@@ -1953,18 +1951,18 @@ _08113E66:\n\
ldrb r0, [r0]\n\
cmp r6, r0\n\
bge _08113F3E\n\
- ldr r0, _08113EC4 @ =0x02014800\n\
+ ldr r0, _08113EC4 @ =gSharedMem + 0x14800\n\
mov r10, r0\n\
lsls r0, r3, 5\n\
ldr r2, [sp, 0xC]\n\
adds r1, r2, r0\n\
mov r9, r0\n\
- ldr r0, _08113EC4 @ =0x02014800\n\
+ ldr r0, _08113EC4 @ =gSharedMem + 0x14800\n\
adds r0, 0xC4\n\
mov r3, r9\n\
adds r7, r3, r0\n\
mov r5, r9\n\
- ldr r4, _08113EC4 @ =0x02014800\n\
+ ldr r4, _08113EC4 @ =gSharedMem + 0x14800\n\
ldr r2, _08113EC8 @ =0x000010c4\n\
adds r0, r4, r2\n\
adds r1, r0\n\
@@ -1984,9 +1982,9 @@ _08113EA4:\n\
ldrb r0, [r0]\n\
b _08113ED6\n\
.align 2, 0\n\
-_08113EBC: .4byte 0x02014804\n\
-_08113EC0: .4byte 0x02014844\n\
-_08113EC4: .4byte 0x02014800\n\
+_08113EBC: .4byte gSharedMem + 0x14804\n\
+_08113EC0: .4byte gSharedMem + 0x14844\n\
+_08113EC4: .4byte gSharedMem + 0x14800\n\
_08113EC8: .4byte 0x000010c4\n\
_08113ECC: .4byte 0x000020c4\n\
_08113ED0:\n\
@@ -2004,7 +2002,7 @@ _08113ED6:\n\
add r0, r10\n\
adds r2, r5, r0\n\
ldrb r0, [r4]\n\
- ldr r1, _08113F04 @ =0x02014800\n\
+ ldr r1, _08113F04 @ =gSharedMem + 0x14800\n\
mov r12, r1\n\
ldrb r1, [r2]\n\
cmp r0, r1\n\
@@ -2015,7 +2013,7 @@ _08113ED6:\n\
.align 2, 0\n\
_08113EFC: .4byte 0x000018c4\n\
_08113F00: .4byte 0x000028c4\n\
-_08113F04: .4byte 0x02014800\n\
+_08113F04: .4byte gSharedMem + 0x14800\n\
_08113F08:\n\
ldrb r1, [r2]\n\
ldrb r0, [r4]\n\
@@ -2041,7 +2039,7 @@ _08113F2C:\n\
adds r5, 0x1\n\
adds r6, 0x1\n\
ldr r3, [sp, 0x8]\n\
- ldr r4, _08114054 @ =0x02014844\n\
+ ldr r4, _08114054 @ =gSharedMem + 0x14844\n\
adds r0, r3, r4\n\
ldrb r0, [r0]\n\
cmp r6, r0\n\
@@ -2059,9 +2057,9 @@ _08113F3E:\n\
blt _08113E66\n\
_08113F54:\n\
movs r6, 0\n\
- ldr r2, _08114058 @ =0x02014800\n\
+ ldr r2, _08114058 @ =gSharedMem + 0x14800\n\
ldr r1, [sp, 0x8]\n\
- ldr r3, _08114054 @ =0x02014844\n\
+ ldr r3, _08114054 @ =gSharedMem + 0x14844\n\
adds r0, r1, r3\n\
adds r4, r2, 0\n\
mov r12, r4\n\
@@ -2092,15 +2090,15 @@ _08113F6E:\n\
bl sub_811430C\n\
_08113F94:\n\
adds r6, 0x1\n\
- ldr r2, _08114058 @ =0x02014800\n\
+ ldr r2, _08114058 @ =gSharedMem + 0x14800\n\
ldrb r5, [r4]\n\
cmp r6, r5\n\
blt _08113F6E\n\
_08113F9E:\n\
ldr r0, [sp, 0x8]\n\
- ldr r1, _0811405C @ =0x02014804\n\
+ ldr r1, _0811405C @ =gSharedMem + 0x14804\n\
adds r2, r0, r1\n\
- ldr r3, _08114054 @ =0x02014844\n\
+ ldr r3, _08114054 @ =gSharedMem + 0x14844\n\
adds r1, r0, r3\n\
ldrb r0, [r2]\n\
ldrb r1, [r1]\n\
@@ -2122,12 +2120,12 @@ _08113FBA:\n\
blt _08113FBA\n\
_08113FCC:\n\
ldr r0, [sp, 0x8]\n\
- ldr r1, _0811405C @ =0x02014804\n\
+ ldr r1, _0811405C @ =gSharedMem + 0x14804\n\
adds r2, r0, r1\n\
- ldr r3, _08114054 @ =0x02014844\n\
+ ldr r3, _08114054 @ =gSharedMem + 0x14844\n\
adds r1, r0, r3\n\
ldrb r0, [r2]\n\
- ldr r4, _08114058 @ =0x02014800\n\
+ ldr r4, _08114058 @ =gSharedMem + 0x14800\n\
ldrb r5, [r1]\n\
cmp r0, r5\n\
bhi _08113FE2\n\
@@ -2167,16 +2165,16 @@ _08114004:\n\
ldr r2, [sp, 0x24]\n\
adds r1, r2\n\
mov r10, r1\n\
- ldr r0, _08114058 @ =0x02014800\n\
+ ldr r0, _08114058 @ =gSharedMem + 0x14800\n\
adds r0, 0xC4\n\
adds r2, r0\n\
mov r8, r2\n\
ldr r7, [sp, 0x24]\n\
- ldr r3, _08114058 @ =0x02014800\n\
+ ldr r3, _08114058 @ =gSharedMem + 0x14800\n\
ldr r4, _08114060 @ =0x000010c4\n\
adds r0, r3, r4\n\
adds r5, r7, r0\n\
- ldr r0, _08114064 @ =0x020168c4\n\
+ ldr r0, _08114064 @ =gSharedMem + 0x168C4\n\
add r0, r10\n\
mov r12, r0\n\
ldrb r1, [r0]\n\
@@ -2192,22 +2190,22 @@ _0811403E:\n\
b _0811406E\n\
.align 2, 0\n\
_08114050: .4byte 0x000008c4\n\
-_08114054: .4byte 0x02014844\n\
-_08114058: .4byte 0x02014800\n\
-_0811405C: .4byte 0x02014804\n\
+_08114054: .4byte gSharedMem + 0x14844\n\
+_08114058: .4byte gSharedMem + 0x14800\n\
+_0811405C: .4byte gSharedMem + 0x14804\n\
_08114060: .4byte 0x000010c4\n\
-_08114064: .4byte 0x020168c4\n\
+_08114064: .4byte gSharedMem + 0x168C4\n\
_08114068:\n\
mov r4, r12\n\
ldrb r1, [r4]\n\
ldrb r0, [r5]\n\
_0811406E:\n\
subs r3, r1, r0\n\
- ldr r1, _0811408C @ =0x02014800\n\
+ ldr r1, _0811408C @ =gSharedMem + 0x14800\n\
ldr r2, _08114090 @ =0x000018c4\n\
adds r0, r1, r2\n\
adds r4, r7, r0\n\
- ldr r2, _08114094 @ =0x020170c4\n\
+ ldr r2, _08114094 @ =gSharedMem + 0x170C4\n\
add r2, r10\n\
ldrb r0, [r4]\n\
ldrb r1, [r2]\n\
@@ -2217,9 +2215,9 @@ _0811406E:\n\
ldrb r0, [r2]\n\
b _0811409C\n\
.align 2, 0\n\
-_0811408C: .4byte 0x02014800\n\
+_0811408C: .4byte gSharedMem + 0x14800\n\
_08114090: .4byte 0x000018c4\n\
-_08114094: .4byte 0x020170c4\n\
+_08114094: .4byte gSharedMem + 0x170C4\n\
_08114098:\n\
ldrb r1, [r2]\n\
ldrb r0, [r4]\n\
@@ -2248,25 +2246,25 @@ _081140B2:\n\
_081140C4:\n\
ldr r3, [sp, 0xC]\n\
add r3, r9\n\
- ldr r2, _08114164 @ =0x02014800\n\
+ ldr r2, _08114164 @ =gSharedMem + 0x14800\n\
ldr r4, _08114168 @ =0x000030c4\n\
adds r1, r2, r4\n\
adds r1, r3, r1\n\
ldr r2, [sp, 0x10]\n\
add r2, r9\n\
- ldr r5, _0811416C @ =0x020168c4\n\
+ ldr r5, _0811416C @ =gSharedMem + 0x168C4\n\
adds r0, r2, r5\n\
ldrb r0, [r0]\n\
strb r0, [r1]\n\
- ldr r0, _08114164 @ =0x02014800\n\
+ ldr r0, _08114164 @ =gSharedMem + 0x14800\n\
ldr r4, _08114170 @ =0x000038c4\n\
adds r1, r0, r4\n\
adds r1, r3, r1\n\
- ldr r5, _08114174 @ =0x020170c4\n\
+ ldr r5, _08114174 @ =gSharedMem + 0x170C4\n\
adds r2, r5\n\
ldrb r0, [r2]\n\
strb r0, [r1]\n\
- ldr r0, _08114164 @ =0x02014800\n\
+ ldr r0, _08114164 @ =gSharedMem + 0x14800\n\
adds r0, 0xC4\n\
adds r3, r0\n\
movs r0, 0x1\n\
@@ -2280,9 +2278,9 @@ _081140C4:\n\
b _08114004\n\
_08114104:\n\
movs r6, 0\n\
- ldr r4, _08114164 @ =0x02014800\n\
+ ldr r4, _08114164 @ =gSharedMem + 0x14800\n\
ldr r2, [sp, 0x8]\n\
- ldr r3, _08114178 @ =0x02014804\n\
+ ldr r3, _08114178 @ =gSharedMem + 0x14804\n\
adds r0, r2, r3\n\
ldrb r0, [r0]\n\
cmp r6, r0\n\
@@ -2327,12 +2325,12 @@ _0811411E:\n\
bl sub_81141F0\n\
b _081141B4\n\
.align 2, 0\n\
-_08114164: .4byte 0x02014800\n\
+_08114164: .4byte gSharedMem + 0x14800\n\
_08114168: .4byte 0x000030c4\n\
-_0811416C: .4byte 0x020168c4\n\
+_0811416C: .4byte gSharedMem + 0x168C4\n\
_08114170: .4byte 0x000038c4\n\
-_08114174: .4byte 0x020170c4\n\
-_08114178: .4byte 0x02014804\n\
+_08114174: .4byte gSharedMem + 0x170C4\n\
+_08114178: .4byte gSharedMem + 0x14804\n\
_0811417C: .4byte 0x000020c4\n\
_08114180: .4byte 0x000028c4\n\
_08114184:\n\
@@ -2361,9 +2359,9 @@ _08114184:\n\
bl sub_81141F0\n\
_081141B4:\n\
adds r6, 0x1\n\
- ldr r4, _081141E8 @ =0x02014800\n\
+ ldr r4, _081141E8 @ =gSharedMem + 0x14800\n\
ldr r1, [sp, 0x8]\n\
- ldr r2, _081141EC @ =0x02014804\n\
+ ldr r2, _081141EC @ =gSharedMem + 0x14804\n\
adds r0, r1, r2\n\
ldrb r0, [r0]\n\
cmp r6, r0\n\
@@ -2386,8 +2384,8 @@ _081141CE:\n\
.align 2, 0\n\
_081141E0: .4byte 0x000010c4\n\
_081141E4: .4byte 0x000018c4\n\
-_081141E8: .4byte 0x02014800\n\
-_081141EC: .4byte 0x02014804\n\
+_081141E8: .4byte gSharedMem + 0x14800\n\
+_081141EC: .4byte gSharedMem + 0x14804\n\
.syntax divided");
}
@@ -2455,7 +2453,7 @@ void unref_sub_81143CC()
sub sp, 0x14\n\
movs r0, 0x1\n\
str r0, [sp, 0x4]\n\
- ldr r0, _08114408 @ =0x02014800\n\
+ ldr r0, _08114408 @ =gSharedMem + 0x14800\n\
ldr r2, _0811440C @ =0x0000a0c4\n\
adds r1, r0, r2\n\
ldrb r3, [r1]\n\
@@ -2478,7 +2476,7 @@ _081143F2:\n\
str r1, [sp, 0x8]\n\
bl _08114D84\n\
.align 2, 0\n\
-_08114408: .4byte 0x02014800\n\
+_08114408: .4byte gSharedMem + 0x14800\n\
_0811440C: .4byte 0x0000a0c4\n\
_08114410:\n\
ldr r5, [sp]\n\
@@ -2585,7 +2583,7 @@ _081144EC: .4byte 0x000020c4\n\
_081144F0:\n\
movs r2, 0\n\
str r2, [sp, 0x4]\n\
- ldr r4, _08114568 @ =0x02014800\n\
+ ldr r4, _08114568 @ =gSharedMem + 0x14800\n\
lsls r0, r3, 1\n\
ldr r5, [sp]\n\
lsls r1, r5, 6\n\
@@ -2645,7 +2643,7 @@ _08114548:\n\
blt _0811453E\n\
b _081148D2\n\
.align 2, 0\n\
-_08114568: .4byte 0x02014800\n\
+_08114568: .4byte gSharedMem + 0x14800\n\
_0811456C: .4byte 0x000060c4\n\
_08114570: .4byte 0x000080c4\n\
_08114574: .4byte 0x000030c4\n\
@@ -2719,7 +2717,7 @@ _081145FC: .4byte 0x000020c4\n\
_08114600:\n\
movs r2, 0\n\
str r2, [sp, 0x4]\n\
- ldr r4, _08114678 @ =0x02014800\n\
+ ldr r4, _08114678 @ =gSharedMem + 0x14800\n\
lsls r0, r3, 1\n\
ldr r5, [sp]\n\
lsls r1, r5, 6\n\
@@ -2779,7 +2777,7 @@ _08114658:\n\
blt _0811464E\n\
b _081148D2\n\
.align 2, 0\n\
-_08114678: .4byte 0x02014800\n\
+_08114678: .4byte gSharedMem + 0x14800\n\
_0811467C: .4byte 0x000060c4\n\
_08114680: .4byte 0x000080c4\n\
_08114684: .4byte 0x000030c4\n\
@@ -2787,7 +2785,7 @@ _08114688: .4byte 0x000020c4\n\
_0811468C:\n\
movs r2, 0\n\
str r2, [sp, 0x4]\n\
- ldr r5, _081146C0 @ =0x02014800\n\
+ ldr r5, _081146C0 @ =gSharedMem + 0x14800\n\
mov r0, r8\n\
adds r4, r3, r0\n\
ldr r1, _081146C4 @ =0x000030c4\n\
@@ -2812,12 +2810,12 @@ _081146B4:\n\
strb r1, [r0]\n\
b _081148D2\n\
.align 2, 0\n\
-_081146C0: .4byte 0x02014800\n\
+_081146C0: .4byte gSharedMem + 0x14800\n\
_081146C4: .4byte 0x000030c4\n\
_081146C8:\n\
movs r4, 0\n\
str r4, [sp, 0x4]\n\
- ldr r5, _081146FC @ =0x02014800\n\
+ ldr r5, _081146FC @ =gSharedMem + 0x14800\n\
mov r0, r8\n\
adds r4, r3, r0\n\
ldr r1, _08114700 @ =0x000030c4\n\
@@ -2842,12 +2840,12 @@ _081146F0:\n\
strb r1, [r0]\n\
b _081148D2\n\
.align 2, 0\n\
-_081146FC: .4byte 0x02014800\n\
+_081146FC: .4byte gSharedMem + 0x14800\n\
_08114700: .4byte 0x000030c4\n\
_08114704:\n\
movs r4, 0\n\
str r4, [sp, 0x4]\n\
- ldr r5, _08114738 @ =0x02014800\n\
+ ldr r5, _08114738 @ =gSharedMem + 0x14800\n\
mov r0, r8\n\
adds r4, r3, r0\n\
ldr r1, _0811473C @ =0x000030c4\n\
@@ -2872,12 +2870,12 @@ _0811472C:\n\
strb r1, [r0]\n\
b _081148D2\n\
.align 2, 0\n\
-_08114738: .4byte 0x02014800\n\
+_08114738: .4byte gSharedMem + 0x14800\n\
_0811473C: .4byte 0x000030c4\n\
_08114740:\n\
movs r4, 0\n\
str r4, [sp, 0x4]\n\
- ldr r5, _08114774 @ =0x02014800\n\
+ ldr r5, _08114774 @ =gSharedMem + 0x14800\n\
mov r0, r8\n\
adds r4, r3, r0\n\
ldr r1, _08114778 @ =0x000030c4\n\
@@ -2902,12 +2900,12 @@ _08114768:\n\
strb r1, [r0]\n\
b _081148D2\n\
.align 2, 0\n\
-_08114774: .4byte 0x02014800\n\
+_08114774: .4byte gSharedMem + 0x14800\n\
_08114778: .4byte 0x000030c4\n\
_0811477C:\n\
movs r4, 0\n\
str r4, [sp, 0x4]\n\
- ldr r6, _081147B4 @ =0x02014800\n\
+ ldr r6, _081147B4 @ =gSharedMem + 0x14800\n\
mov r0, r8\n\
adds r5, r3, r0\n\
ldr r1, _081147B8 @ =0x000030c4\n\
@@ -2933,7 +2931,7 @@ _0811477C:\n\
strb r4, [r0]\n\
b _08114844\n\
.align 2, 0\n\
-_081147B4: .4byte 0x02014800\n\
+_081147B4: .4byte gSharedMem + 0x14800\n\
_081147B8: .4byte 0x000030c4\n\
_081147BC: .4byte 0x000020c4\n\
_081147C0:\n\
@@ -2948,7 +2946,7 @@ _081147C0:\n\
_081147D0:\n\
movs r1, 0\n\
str r1, [sp, 0x4]\n\
- ldr r6, _08114804 @ =0x02014800\n\
+ ldr r6, _08114804 @ =gSharedMem + 0x14800\n\
mov r2, r8\n\
adds r5, r3, r2\n\
ldr r0, _08114808 @ =0x000030c4\n\
@@ -2972,13 +2970,13 @@ _081147D0:\n\
movs r1, 0x2\n\
b _08114842\n\
.align 2, 0\n\
-_08114804: .4byte 0x02014800\n\
+_08114804: .4byte gSharedMem + 0x14800\n\
_08114808: .4byte 0x000030c4\n\
_0811480C: .4byte 0x000020c4\n\
_08114810:\n\
movs r0, 0\n\
str r0, [sp, 0x4]\n\
- ldr r6, _0811484C @ =0x02014800\n\
+ ldr r6, _0811484C @ =gSharedMem + 0x14800\n\
mov r1, r8\n\
adds r5, r3, r1\n\
ldr r2, _08114850 @ =0x000030c4\n\
@@ -3007,13 +3005,13 @@ _08114844:\n\
mov r10, r5\n\
b _081148D2\n\
.align 2, 0\n\
-_0811484C: .4byte 0x02014800\n\
+_0811484C: .4byte gSharedMem + 0x14800\n\
_08114850: .4byte 0x000030c4\n\
_08114854: .4byte 0x000020c4\n\
_08114858:\n\
movs r0, 0\n\
str r0, [sp, 0x4]\n\
- ldr r6, _08114894 @ =0x02014800\n\
+ ldr r6, _08114894 @ =gSharedMem + 0x14800\n\
mov r1, r8\n\
adds r5, r3, r1\n\
ldr r2, _08114898 @ =0x000030c4\n\
@@ -3042,7 +3040,7 @@ _08114882:\n\
mov r10, r4\n\
b _081148D2\n\
.align 2, 0\n\
-_08114894: .4byte 0x02014800\n\
+_08114894: .4byte gSharedMem + 0x14800\n\
_08114898: .4byte 0x000030c4\n\
_0811489C: .4byte 0x000020c4\n\
_081148A0:\n\
@@ -3075,7 +3073,7 @@ _081148C4:\n\
adds r2, r3, 0x1\n\
mov r10, r2\n\
_081148D2:\n\
- ldr r0, _081148F4 @ =0x02014800\n\
+ ldr r0, _081148F4 @ =gSharedMem + 0x14800\n\
mov r4, r8\n\
adds r1, r3, r4\n\
ldr r5, _081148F8 @ =0x000008c4\n\
@@ -3093,7 +3091,7 @@ _081148E8:\n\
ldr r0, [r0]\n\
mov pc, r0\n\
.align 2, 0\n\
-_081148F4: .4byte 0x02014800\n\
+_081148F4: .4byte gSharedMem + 0x14800\n\
_081148F8: .4byte 0x000008c4\n\
_081148FC: .4byte _08114900\n\
.align 2, 0\n\
@@ -3179,7 +3177,7 @@ _081149B4: .4byte 0x000028c4\n\
_081149B8:\n\
movs r2, 0\n\
str r2, [sp, 0x4]\n\
- ldr r4, _08114A28 @ =0x02014800\n\
+ ldr r4, _08114A28 @ =gSharedMem + 0x14800\n\
lsls r0, r3, 1\n\
ldr r5, [sp]\n\
lsls r1, r5, 6\n\
@@ -3235,7 +3233,7 @@ _08114A0C:\n\
blt _08114A02\n\
b _08114D76\n\
.align 2, 0\n\
-_08114A28: .4byte 0x02014800\n\
+_08114A28: .4byte gSharedMem + 0x14800\n\
_08114A2C: .4byte 0x000070c4\n\
_08114A30: .4byte 0x000090c4\n\
_08114A34: .4byte 0x000038c4\n\
@@ -3308,7 +3306,7 @@ _08114ABC: .4byte 0x000028c4\n\
_08114AC0:\n\
movs r2, 0\n\
str r2, [sp, 0x4]\n\
- ldr r4, _08114B30 @ =0x02014800\n\
+ ldr r4, _08114B30 @ =gSharedMem + 0x14800\n\
lsls r0, r3, 1\n\
ldr r5, [sp]\n\
lsls r1, r5, 6\n\
@@ -3364,7 +3362,7 @@ _08114B14:\n\
blt _08114B0A\n\
b _08114D76\n\
.align 2, 0\n\
-_08114B30: .4byte 0x02014800\n\
+_08114B30: .4byte gSharedMem + 0x14800\n\
_08114B34: .4byte 0x000070c4\n\
_08114B38: .4byte 0x000090c4\n\
_08114B3C: .4byte 0x000038c4\n\
@@ -3372,7 +3370,7 @@ _08114B40: .4byte 0x000028c4\n\
_08114B44:\n\
movs r2, 0\n\
str r2, [sp, 0x4]\n\
- ldr r5, _08114B70 @ =0x02014800\n\
+ ldr r5, _08114B70 @ =gSharedMem + 0x14800\n\
mov r0, r8\n\
adds r4, r3, r0\n\
ldr r1, _08114B74 @ =0x000038c4\n\
@@ -3392,13 +3390,13 @@ _08114B64:\n\
movs r1, 0x9\n\
b _08114D74\n\
.align 2, 0\n\
-_08114B70: .4byte 0x02014800\n\
+_08114B70: .4byte gSharedMem + 0x14800\n\
_08114B74: .4byte 0x000038c4\n\
_08114B78: .4byte 0x000008c4\n\
_08114B7C:\n\
movs r4, 0\n\
str r4, [sp, 0x4]\n\
- ldr r5, _08114BA8 @ =0x02014800\n\
+ ldr r5, _08114BA8 @ =gSharedMem + 0x14800\n\
mov r0, r8\n\
adds r4, r3, r0\n\
ldr r1, _08114BAC @ =0x000038c4\n\
@@ -3418,13 +3416,13 @@ _08114B9C:\n\
movs r1, 0xA\n\
b _08114D74\n\
.align 2, 0\n\
-_08114BA8: .4byte 0x02014800\n\
+_08114BA8: .4byte gSharedMem + 0x14800\n\
_08114BAC: .4byte 0x000038c4\n\
_08114BB0: .4byte 0x000008c4\n\
_08114BB4:\n\
movs r4, 0\n\
str r4, [sp, 0x4]\n\
- ldr r5, _08114BE0 @ =0x02014800\n\
+ ldr r5, _08114BE0 @ =gSharedMem + 0x14800\n\
mov r0, r8\n\
adds r4, r3, r0\n\
ldr r1, _08114BE4 @ =0x000038c4\n\
@@ -3444,13 +3442,13 @@ _08114BD4:\n\
movs r1, 0xB\n\
b _08114D74\n\
.align 2, 0\n\
-_08114BE0: .4byte 0x02014800\n\
+_08114BE0: .4byte gSharedMem + 0x14800\n\
_08114BE4: .4byte 0x000038c4\n\
_08114BE8: .4byte 0x000008c4\n\
_08114BEC:\n\
movs r4, 0\n\
str r4, [sp, 0x4]\n\
- ldr r5, _08114C18 @ =0x02014800\n\
+ ldr r5, _08114C18 @ =gSharedMem + 0x14800\n\
mov r0, r8\n\
adds r4, r3, r0\n\
ldr r1, _08114C1C @ =0x000038c4\n\
@@ -3470,13 +3468,13 @@ _08114C0C:\n\
movs r1, 0xC\n\
b _08114D74\n\
.align 2, 0\n\
-_08114C18: .4byte 0x02014800\n\
+_08114C18: .4byte gSharedMem + 0x14800\n\
_08114C1C: .4byte 0x000038c4\n\
_08114C20: .4byte 0x000008c4\n\
_08114C24:\n\
movs r4, 0\n\
str r4, [sp, 0x4]\n\
- ldr r6, _08114C58 @ =0x02014800\n\
+ ldr r6, _08114C58 @ =gSharedMem + 0x14800\n\
mov r0, r8\n\
adds r5, r3, r0\n\
ldr r1, _08114C5C @ =0x000038c4\n\
@@ -3500,7 +3498,7 @@ _08114C24:\n\
strb r5, [r0]\n\
b _08114D76\n\
.align 2, 0\n\
-_08114C58: .4byte 0x02014800\n\
+_08114C58: .4byte gSharedMem + 0x14800\n\
_08114C5C: .4byte 0x000038c4\n\
_08114C60: .4byte 0x000028c4\n\
_08114C64: .4byte 0x000008c4\n\
@@ -3515,7 +3513,7 @@ _08114C74: .4byte 0x000008c4\n\
_08114C78:\n\
movs r2, 0\n\
str r2, [sp, 0x4]\n\
- ldr r6, _08114CA8 @ =0x02014800\n\
+ ldr r6, _08114CA8 @ =gSharedMem + 0x14800\n\
mov r4, r8\n\
adds r5, r3, r4\n\
ldr r0, _08114CAC @ =0x000038c4\n\
@@ -3537,14 +3535,14 @@ _08114C78:\n\
movs r1, 0x2\n\
b _08114D74\n\
.align 2, 0\n\
-_08114CA8: .4byte 0x02014800\n\
+_08114CA8: .4byte gSharedMem + 0x14800\n\
_08114CAC: .4byte 0x000038c4\n\
_08114CB0: .4byte 0x000028c4\n\
_08114CB4: .4byte 0x000008c4\n\
_08114CB8:\n\
movs r2, 0\n\
str r2, [sp, 0x4]\n\
- ldr r6, _08114CE8 @ =0x02014800\n\
+ ldr r6, _08114CE8 @ =gSharedMem + 0x14800\n\
mov r4, r8\n\
adds r5, r3, r4\n\
ldr r0, _08114CEC @ =0x000038c4\n\
@@ -3566,14 +3564,14 @@ _08114CB8:\n\
movs r1, 0x3\n\
b _08114D74\n\
.align 2, 0\n\
-_08114CE8: .4byte 0x02014800\n\
+_08114CE8: .4byte gSharedMem + 0x14800\n\
_08114CEC: .4byte 0x000038c4\n\
_08114CF0: .4byte 0x000028c4\n\
_08114CF4: .4byte 0x000008c4\n\
_08114CF8:\n\
movs r2, 0\n\
str r2, [sp, 0x4]\n\
- ldr r6, _08114D2C @ =0x02014800\n\
+ ldr r6, _08114D2C @ =gSharedMem + 0x14800\n\
mov r4, r8\n\
adds r5, r3, r4\n\
ldr r0, _08114D30 @ =0x000038c4\n\
@@ -3598,7 +3596,7 @@ _08114D1E:\n\
strb r4, [r0]\n\
b _08114D76\n\
.align 2, 0\n\
-_08114D2C: .4byte 0x02014800\n\
+_08114D2C: .4byte gSharedMem + 0x14800\n\
_08114D30: .4byte 0x000038c4\n\
_08114D34: .4byte 0x000028c4\n\
_08114D38: .4byte 0x000008c4\n\
@@ -3635,7 +3633,7 @@ _08114D74:\n\
strb r1, [r0]\n\
_08114D76:\n\
mov r3, r10\n\
- ldr r2, _08114DB0 @ =0x02014800\n\
+ ldr r2, _08114DB0 @ =gSharedMem + 0x14800\n\
adds r0, r2, 0\n\
adds r0, 0x84\n\
ldr r4, [sp]\n\
@@ -3664,7 +3662,7 @@ _08114D9A:\n\
bx r1\n\
.align 2, 0\n\
_08114DAC: .4byte 0x000008c4\n\
-_08114DB0: .4byte 0x02014800\n\
+_08114DB0: .4byte gSharedMem + 0x14800\n\
.syntax divided");
}
@@ -3703,7 +3701,7 @@ void sub_8114E48()
adds r4, r0, 0\n\
lsls r1, 24\n\
lsrs r6, r1, 24\n\
- ldr r1, _08114E6C @ =0x02014800\n\
+ ldr r1, _08114E6C @ =gSharedMem + 0x14800\n\
ldr r2, _08114E70 @ =0x0000a0c4\n\
adds r0, r1, r2\n\
ldrb r0, [r0]\n\
@@ -3719,7 +3717,7 @@ _08114E60:\n\
movs r1, 0x1\n\
b _08114EA6\n\
.align 2, 0\n\
-_08114E6C: .4byte 0x02014800\n\
+_08114E6C: .4byte gSharedMem + 0x14800\n\
_08114E70: .4byte 0x0000a0c4\n\
_08114E74:\n\
subs r0, r4, 0x1\n\
@@ -3831,7 +3829,7 @@ _08114F26:\n\
beq _08114F7C\n\
subs r0, r4, 0x1\n\
lsls r5, r0, 7\n\
- ldr r0, _08114F68 @ =0x020188c4\n\
+ ldr r0, _08114F68 @ =gSharedMem + 0x188C4\n\
mov r12, r0\n\
_08114F42:\n\
asrs r0, r3, 1\n\
@@ -3854,7 +3852,7 @@ _08114F5E:\n\
b _08114FCA\n\
.align 2, 0\n\
_08114F64: .4byte 0x000008c4\n\
-_08114F68: .4byte 0x020188c4\n\
+_08114F68: .4byte gSharedMem + 0x188C4\n\
_08114F6C:\n\
ldrb r1, [r1]\n\
movs r0, 0xF\n\
@@ -3874,7 +3872,7 @@ _08114F7C:\n\
beq _08114FC8\n\
adds r0, r4, 0x1\n\
lsls r5, r0, 7\n\
- ldr r6, _08114FB0 @ =0x020188c4\n\
+ ldr r6, _08114FB0 @ =gSharedMem + 0x188C4\n\
adds r2, r1, 0\n\
_08114F90:\n\
asrs r0, r3, 1\n\
@@ -3893,7 +3891,7 @@ _08114F90:\n\
beq _08114FBE\n\
b _08114F5E\n\
.align 2, 0\n\
-_08114FB0: .4byte 0x020188c4\n\
+_08114FB0: .4byte gSharedMem + 0x188C4\n\
_08114FB4:\n\
ldrb r1, [r1]\n\
movs r0, 0xF\n\
diff --git a/src/scene/hall_of_fame.c b/src/scene/hall_of_fame.c
index 6f7df576b..72bd051da 100644
--- a/src/scene/hall_of_fame.c
+++ b/src/scene/hall_of_fame.c
@@ -17,10 +17,10 @@
#include "decompress.h"
#include "rng.h"
#include "trig.h"
+#include "ewram.h"
static EWRAM_DATA u32 sUnknown_0203931C = 0;
-extern u8 ewram[];
extern bool8 gUnknown_02039324; // has hall of fame records
extern void (*gGameContinueCallback)(void);
extern struct MusicPlayerInfo gMPlay_BGM;
@@ -156,69 +156,69 @@ static const struct OamData sOamData_840B598 =
void* const gUnknown_0840B5A0[] =
{
- &ewram[0x08000],
- &ewram[0x0A000],
- &ewram[0x0C000],
- &ewram[0x0E000],
- &ewram[0x10000],
- &ewram[0x14000],
- &ewram[0x18000]
+ ewram8000,
+ ewramA000,
+ ewramC000,
+ ewramE000,
+ ewram10000,
+ ewram14000,
+ ewram18000_2
};
static const struct SpriteFrameImage sSpriteImageTable_840B5BC[] =
{
- {&ewram[0x8000], 0x800},
- {&ewram[0x8800], 0x800},
- {&ewram[0x9000], 0x800},
- {&ewram[0x9800], 0x800}
+ {ewram8000, 0x800},
+ {ewram8800, 0x800},
+ {ewram9000, 0x800},
+ {ewram9800, 0x800}
};
static const struct SpriteFrameImage sSpriteImageTable_840B5DC[] =
{
- {&ewram[0xA000], 0x800},
- {&ewram[0xA800], 0x800},
- {&ewram[0xB000], 0x800},
- {&ewram[0xB800], 0x800}
+ {ewramA000, 0x800},
+ {ewramA800, 0x800},
+ {ewramB000, 0x800},
+ {ewramB800, 0x800}
};
static const struct SpriteFrameImage sSpriteImageTable_840B5FC[] =
{
- {&ewram[0xC000], 0x800},
- {&ewram[0xC800], 0x800},
- {&ewram[0xD000], 0x800},
- {&ewram[0xD800], 0x800}
+ {ewramC000, 0x800},
+ {ewramC800, 0x800},
+ {ewramD000, 0x800},
+ {ewramD800, 0x800}
};
static const struct SpriteFrameImage sSpriteImageTable_840B61C[] =
{
- {&ewram[0xE000], 0x800},
- {&ewram[0xE800], 0x800},
- {&ewram[0xF000], 0x800},
- {&ewram[0xF800], 0x800}
+ {ewramE000, 0x800},
+ {ewramE800, 0x800},
+ {ewramF000, 0x800},
+ {ewramF800, 0x800}
};
static const struct SpriteFrameImage sSpriteImageTable_840B63C[] =
{
- {&ewram[0x10000], 0x800},
- {&ewram[0x10800], 0x800},
- {&ewram[0x11000], 0x800},
- {&ewram[0x11800], 0x800}
+ {ewram10000, 0x800},
+ {ewram10800, 0x800},
+ {ewram11000, 0x800},
+ {ewram11800, 0x800}
};
static const struct SpriteFrameImage sSpriteImageTable_840B65C[] =
{
- {&ewram[0x14000], 0x800},
- {&ewram[0x14800], 0x800},
- {&ewram[0x15000], 0x800},
- {&ewram[0x15800], 0x800}
+ {ewram14000, 0x800},
+ {ewram14800, 0x800},
+ {ewram15000, 0x800},
+ {ewram15800, 0x800}
};
static const struct SpriteFrameImage sSpriteImageTable_840B67C[] =
{
- {&ewram[0x18000], 0x800},
- {&ewram[0x18800], 0x800},
- {&ewram[0x19000], 0x800},
- {&ewram[0x19800], 0x800}
+ {ewram18000_2, 0x800},
+ {ewram18800, 0x800},
+ {ewram19000, 0x800},
+ {ewram19800, 0x800}
};
static const struct SpriteFrameImage* const sUnknown_0840B69C[7] =
@@ -486,7 +486,7 @@ static void sub_8141FC4(void)
static void sub_8141FF8(u8 taskID)
{
u16 i, j;
- struct HallofFameMons* fameMons = (struct HallofFameMons*)(&ewram[0x1C000]);
+ struct HallofFameMons* fameMons = eHallOfFameMons1;
gTasks[taskID].tPokesNumber = 0; // valid pokes
for (i = 0; i < 6; i++)
@@ -530,13 +530,13 @@ static void sub_8141FF8(u8 taskID)
static void sub_814217C(u8 taskID)
{
u16 i;
- struct HallofFameMons* fameMons = (struct HallofFameMons*)(&ewram[0x1C000]);
- struct HallofFameMons* lastSavedTeam = (struct HallofFameMons*)(&ewram[0x1E000]);
+ struct HallofFameMons* fameMons = eHallOfFameMons1;
+ struct HallofFameMons* lastSavedTeam = eHallOfFameMons2;
if (gUnknown_02039324 == FALSE)
{
for (i = 0; i < 0x2000; i++)
- ewram[i + 0x1E000] = 0;
+ ewram1E000(i) = 0;
}
else
sub_8125EC8(3);
@@ -548,8 +548,8 @@ static void sub_814217C(u8 taskID)
}
if (i >= HALL_OF_FAME_MAX_TEAMS)
{
- struct HallofFameMons* r5 = (struct HallofFameMons*)(&ewram[0x1E000]);
- struct HallofFameMons* r6 = (struct HallofFameMons*)(&ewram[0x1E000]);
+ struct HallofFameMons* r5 = eHallOfFameMons2;
+ struct HallofFameMons* r6 = eHallOfFameMons2;
r5++;
for (i = 0; i < HALL_OF_FAME_MAX_TEAMS - 1; i++, r6++, r5++)
{
@@ -592,7 +592,7 @@ static void sub_8142320(u8 taskID)
u8 spriteID;
s16 xPos, yPos, field4, field6;
- struct HallofFameMons* fameMons = (struct HallofFameMons*)(&ewram[0x1C000]);
+ struct HallofFameMons* fameMons = eHallOfFameMons1;
u16 currPokeID = gTasks[taskID].tDisplayedPoke;
struct HallofFameMon* currMon = &fameMons->mons[currPokeID];
@@ -623,7 +623,7 @@ static void sub_8142320(u8 taskID)
static void sub_8142404(u8 taskID)
{
- struct HallofFameMons* fameMons = (struct HallofFameMons*)(&ewram[0x1C000]);
+ struct HallofFameMons* fameMons = eHallOfFameMons1;
u16 currPokeID = gTasks[taskID].tDisplayedPoke;
struct HallofFameMon* currMon = &fameMons->mons[currPokeID];
@@ -639,7 +639,7 @@ static void sub_8142404(u8 taskID)
static void sub_8142484(u8 taskID)
{
- struct HallofFameMons* fameMons = (struct HallofFameMons*)(&ewram[0x1C000]);
+ struct HallofFameMons* fameMons = eHallOfFameMons1;
u16 currPokeID = gTasks[taskID].tDisplayedPoke;
struct HallofFameMon* currMon = &fameMons->mons[currPokeID];
@@ -808,7 +808,7 @@ void sub_81428CC(void)
REG_BLDY = 0;
sub_81435B8();
- fameMons = (struct HallofFameMons*)(&ewram[0x1C000]);
+ fameMons = eHallOfFameMons1;
fameMons->mons[0] = sDummyFameMon;
sub_80C5CD4(fameMons);
@@ -847,7 +847,7 @@ static void sub_8142A28(u8 taskID)
u16 *vram1, *vram2;
u16 i;
- struct HallofFameMons* savedTeams = (struct HallofFameMons*)(&ewram[0x1E000]);
+ struct HallofFameMons* savedTeams = eHallOfFameMons2;
for (i = 0; i < HALL_OF_FAME_MAX_TEAMS; i++, savedTeams++)
{
if (savedTeams->mons[0].species == 0)
@@ -872,7 +872,7 @@ static void sub_8142A28(u8 taskID)
static void sub_8142B04(u8 taskID)
{
- struct HallofFameMons* savedTeams = (struct HallofFameMons*)(&ewram[0x1E000]);
+ struct HallofFameMons* savedTeams = eHallOfFameMons2;
struct HallofFameMon* currMon;
u16 i;
u8* stringPtr;
@@ -937,7 +937,7 @@ static void sub_8142B04(u8 taskID)
static void sub_8142CC8(u8 taskID)
{
- struct HallofFameMons* savedTeams = (struct HallofFameMons*)(&ewram[0x1E000]);
+ struct HallofFameMons* savedTeams = eHallOfFameMons2;
struct HallofFameMon* currMon;
u16 i;
u16 currMonID;
@@ -1025,7 +1025,7 @@ static void sub_8142F78(u8 taskID)
struct HallofFameMons* fameMons;
CpuSet(gPlttBufferFaded, gPlttBufferUnfaded, 0x200);
- fameMons = (struct HallofFameMons*)(&ewram[0x1C000]);
+ fameMons = eHallOfFameMons1;
fameMons->mons[0] = sDummyFameMon;
sub_80C5E38(fameMons);
gTasks[taskID].func = sub_8142FCC;
@@ -1258,7 +1258,7 @@ static void sub_81433E0(void)
*((u16*)(VRAM + 0x3000) + i) = 2;
}
- offsetWrite4 = (u32)(&ewram[0]);
+ offsetWrite4 = ewram0_6;
size4 = 0x4000;
while (TRUE)
{
diff --git a/src/scene/intro.c b/src/scene/intro.c
index a6dd23c92..03a573c90 100644
--- a/src/scene/intro.c
+++ b/src/scene/intro.c
@@ -20,6 +20,7 @@
#include "title_screen.h"
#include "trig.h"
#include "unknown_task.h"
+#include "ewram.h"
extern struct SpriteTemplate gUnknown_02024E8C;
extern u16 gUnknown_02039358;
@@ -765,7 +766,11 @@ const struct SpritePalette gIntro3MiscPal_Table[] =
{gIntro3Misc2Palette, 2004},
{NULL},
};
-const u32 unusedData = 0x02000000;
+
+// Game Freak probably used the raw address here.
+// Treating this like a u8 * causes the compiler
+// to remove it at link time.
+const u32 unusedSharedMemPtr = (u32)gSharedMem;
static void MainCB2_EndIntro(void);
void Task_IntroLoadPart1Graphics(u8);
@@ -1207,7 +1212,7 @@ static void Task_IntroWaitToSetupPart3DoubleFight(u8 taskId)
gTasks[taskId].func = Task_IntroLoadPart3Streaks;
}
-extern u8 unk_2000000[][32];
+//extern u8 gSharedMem[][32];
static void Task_IntroLoadPart3Streaks(u8 taskId)
{
@@ -1217,12 +1222,12 @@ static void Task_IntroLoadPart3Streaks(u8 taskId)
intro_reset_and_hide_bgs();
for (i = 0; i < 32; i++)
{
- unk_2000000[0][i] = 0;
- unk_2000000[1][i] = 17;
- unk_2000000[2][i] = 34;
+ ewram0arr[0][i] = 0;
+ ewram0arr[1][i] = 17;
+ ewram0arr[2][i] = 34;
}
vram = (void *)VRAM;
- DmaCopy16(3, unk_2000000, vram, 0x60);
+ DmaCopy16(3, gSharedMem, vram, 0x60);
for (i = 0; i < 0x280; i++)
((u16 *)(VRAM + 0x3000))[i] = 0xF001;
for (i = 0; i < 0x80; i++)
diff --git a/src/script_pokemon_util_80C4BF0.c b/src/script_pokemon_util_80C4BF0.c
index f98293a90..011978a0c 100644
--- a/src/script_pokemon_util_80C4BF0.c
+++ b/src/script_pokemon_util_80C4BF0.c
@@ -22,6 +22,7 @@
#include "script_pokemon_80C4.h"
#include "species.h"
#include "task.h"
+#include "ewram.h"
#define CONTEST_ENTRY_PIC_LEFT 10
#define CONTEST_ENTRY_PIC_TOP 3
diff --git a/src/script_pokemon_util_80F99CC.c b/src/script_pokemon_util_80F99CC.c
index e303d5173..21ff220d2 100644
--- a/src/script_pokemon_util_80F99CC.c
+++ b/src/script_pokemon_util_80F99CC.c
@@ -17,6 +17,7 @@
#include "string_util.h"
#include "task.h"
#include "text.h"
+#include "ewram.h"
extern u8 gPlayerPartyCount;
extern u16 gSpecialVar_0x8004;
@@ -272,7 +273,7 @@ void HandleMoveTutorPartyMenu(u8 var)
void sub_80F9EEC(void)
{
sub_809D9F0(&gPlayerParty[0], gSpecialVar_0x8004, gPlayerPartyCount - 1, c2_exit_to_overworld_2_switch, 0);
- unk_2018000.unk8 = 3;
+ UNK_2018000_STRUCT.unk8 = 3;
gFieldCallback = sub_8080990;
}