diff options
-rw-r--r-- | asm/trade.s | 40 | ||||
-rw-r--r-- | ld_script.txt | 2 | ||||
-rw-r--r-- | src/trade.c | 20 |
3 files changed, 20 insertions, 42 deletions
diff --git a/asm/trade.s b/asm/trade.s index 56eeeb7ae..8c5afd24f 100644 --- a/asm/trade.s +++ b/asm/trade.s @@ -493,45 +493,7 @@ _0804A2AC: .4byte gUnknown_0820C3D1 _0804A2B0: .4byte gUnknown_03004824 thumb_func_end sub_8049ED4 - .section .text.sub_804A33C - - thumb_func_start sub_804A938 -sub_804A938: @ 804A938 - movs r1, 0x1 - strb r1, [r0, 0x10] - bx lr - thumb_func_end sub_804A938 - - thumb_func_start sub_804A940 -sub_804A940: @ 804A940 - push {r4,lr} - adds r4, r0, 0 - ldrb r0, [r4, 0x10] - cmp r0, 0 - beq _0804A95C - adds r0, r4, 0 - adds r0, 0x12 - ldr r1, [r4, 0x8] - movs r2, 0x80 - lsls r2, 3 - bl CpuSet - movs r0, 0 - strb r0, [r4, 0x10] -_0804A95C: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_804A940 - - thumb_func_start sub_804A964 -sub_804A964: @ 804A964 - movs r2, 0 - strb r2, [r0, 0x10] - str r1, [r0, 0x8] - bx lr - thumb_func_end sub_804A964 - -.section .text.sub_804A9F4 + .section .text.sub_804A9F4 thumb_func_start sub_804A9F4 sub_804A9F4: @ 804A9F4 diff --git a/ld_script.txt b/ld_script.txt index 170ee9cca..b82c7b92f 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -81,8 +81,6 @@ SECTIONS { src/trade.o(.text); asm/trade.o(.text); src/trade.o(.text.sub_804A2B4); - asm/trade.o(.text.sub_804A33C); - src/trade.o(.text.sub_804A96C); asm/trade.o(.text.sub_804A9F4); src/trade.o(.text.sub_804DAD4); asm/trade.o(.text.sub_804DB2C); diff --git a/src/trade.c b/src/trade.c index 9a6273238..702bc109d 100644 --- a/src/trade.c +++ b/src/trade.c @@ -2455,7 +2455,25 @@ void sub_804A840(u8 whichParty) gUnknown_03004824->unk_0080[whichParty] = 0; } -asm(".section .text.sub_804A96C"); +void sub_804A938(struct UnkStructD *unkStructD) +{ + unkStructD->unk_10 = 1; +} + +void sub_804A940(struct UnkStructD *unkStructD) +{ + if (unkStructD->unk_10) + { + CpuCopy16(unkStructD->unk_12, unkStructD->vramAddr, sizeof(unkStructD->unk_12)); + unkStructD->unk_10 = 0; + } +} + +void sub_804A964(struct UnkStructD *unkStructD, void *dest) +{ + unkStructD->unk_10 = 0; + unkStructD->vramAddr = dest; +} /*static*/ void sub_804A96C(struct UnkStructD *arg0, u8 left, u8 top, const u16 *tilemap, u8 width, u8 height, u16 sp8) { int y, x; |