diff options
-rw-r--r-- | asm/trade.s | 57 | ||||
-rw-r--r-- | src/trade.c | 26 |
2 files changed, 26 insertions, 57 deletions
diff --git a/asm/trade.s b/asm/trade.s index ffacff8b3..8cfc23345 100644 --- a/asm/trade.s +++ b/asm/trade.s @@ -1788,61 +1788,4 @@ _0804BB70: .4byte gUnknown_02029700 _0804BB74: .4byte gReceivedRemoteLinkPlayers thumb_func_end sub_804BA94 - thumb_func_start sub_804BB78 -sub_804BB78: @ 804BB78 - push {r4,lr} - ldr r4, _0804BB8C @ =gUnknown_03004828 - ldr r0, [r4] - adds r0, 0xBD - ldrb r0, [r0] - cmp r0, 0x1 - beq _0804BB90 - cmp r0, 0x2 - beq _0804BBB6 - b _0804BBC0 - .align 2, 0 -_0804BB8C: .4byte gUnknown_03004828 -_0804BB90: - bl sub_8007ECC - lsls r0, 24 - cmp r0, 0 - beq _0804BBB6 - bl bitmask_all_link_players_but_self - lsls r0, 24 - lsrs r0, 24 - ldr r1, [r4] - adds r1, 0x9E - movs r2, 0x14 - bl SendBlock - ldr r1, [r4] - adds r1, 0xBD - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] -_0804BBB6: - ldr r0, _0804BBC8 @ =gUnknown_03004828 - ldr r0, [r0] - adds r0, 0xBD - movs r1, 0 - strb r1, [r0] -_0804BBC0: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0804BBC8: .4byte gUnknown_03004828 - thumb_func_end sub_804BB78 - - thumb_func_start sub_804BBCC -sub_804BBCC: @ 804BBCC - push {lr} - bl sub_804C29C - bl RunTasks - bl AnimateSprites - bl BuildOamBuffer - bl UpdatePaletteFade - pop {r0} - bx r0 - thumb_func_end sub_804BBCC - .align 2, 0 @ Don't pad with nop. diff --git a/src/trade.c b/src/trade.c index 3da3e2d11..ada0f5ace 100644 --- a/src/trade.c +++ b/src/trade.c @@ -3502,6 +3502,32 @@ static bool8 sub_804ABF8(void) asm(".section .text.sub_804DAD4"); +void sub_804BB78(void) +{ + switch (gUnknown_03004828->unk_00bd) + { + case 1: + if (sub_8007ECC()) + { + Trade_SendData(gUnknown_03004828); + gUnknown_03004828->unk_00bd ++; + } + // fallthrough + case 2: + gUnknown_03004828->unk_00bd = 0; + break; + } +} + +void sub_804BBCC(void) +{ + sub_804C29C(); + RunTasks(); + AnimateSprites(); + BuildOamBuffer(); + UpdatePaletteFade(); +} + void sub_804BBE8(u8 a0) { int i; |