diff options
author | Marcus Huderle <huderlem@gmail.com> | 2017-11-11 13:20:03 -0800 |
---|---|---|
committer | Marcus Huderle <huderlem@gmail.com> | 2017-11-11 13:20:03 -0800 |
commit | 92fda2cc0d5afa76e94927cb72ceac9700f54c1b (patch) | |
tree | 24a7840f1c49602a6ad033ea6cc1cb27b7e12be4 | |
parent | 955c5a8e90c9afba35114c583628f74f849a0da4 (diff) | |
parent | 999c4d59793e761ca71ab7b27272de46d78de138 (diff) |
Merge remote-tracking branch 'upstream/master' into pokenav
169 files changed, 9579 insertions, 13765 deletions
@@ -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 *)¤tHP); + SetMonData(mon, MON_DATA_HP, ¤tHP); } 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; } |