Finish porting link_rfu_2

This commit is contained in:
PikalaxALT
2020-01-14 12:27:56 -05:00
parent d9ea5a0815
commit b76b38c257
12 changed files with 1702 additions and 4809 deletions
-4661
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -5722,7 +5722,7 @@ sub_8057910: @ 8057910
lsrs r0, 24
cmp r0, 0x3C
bls _0805792E
bl sub_80FA190
bl LinkRfu_FatalError
_0805792E:
pop {r0}
bx r0
+3
View File
@@ -0,0 +1,3 @@
gUnknown_3005440
Rfu
gUnknown_3005E00
-45
View File
@@ -6,48 +6,3 @@
.section .rodata
.align 2
.align 2
gUnknown_843EDE4:: @ 843EDE4
.asciz "PokemonSioInfo"
.byte 0, 1, 7, 0x14, 0xFF
.align 2
gUnknown_843EDF8:: @ 843EDF8
.asciz "LINK LOSS DISCONNECT!"
.align 2
gUnknown_843EE10:: @ 843EE10
.asciz "LINK LOSS RECOVERY NOW"
.align 2
gUnknown_843EE28:: @ 843EE28
.asciz " "
gUnknown_843EE47:: @ 843EE47
.asciz " "
gUnknown_843EE57:: @ 843EE57
.asciz " "
.asciz " "
.asciz "*"
.align 2
gUnknown_843EE64:: @ 843EE64
.asciz "NOWSLOT"
.align 2
.asciz " "
.align 2
.asciz "CLOCK DRIFT"
.align 2
.asciz "BUSY SEND "
.align 2
.asciz "CMD REJECT "
.align 2
.asciz "CLOCK SLAVE"
.align 2
.asciz "CHILD "
.align 2
.asciz "PARENT"
.align 2
.asciz "SEARCH"
+16
View File
@@ -65,6 +65,19 @@
#define LINKCMD_SEND_HELD_KEYS_2 0xCAFE
#define LINKCMD_0xCCCC 0xCCCC
#define LINKTYPE_0x1111 0x1111 // trade
#define LINKTYPE_0x1122 0x1122 // trade
#define LINKTYPE_0x1133 0x1133 // trade
#define LINKTYPE_0x1144 0x1144 // trade
#define LINKTYPE_BATTLE 0x2211
#define LINKTYPE_0x2222 0x2222 // unused battle?
#define LINKTYPE_SINGLE_BATTLE 0x2233
#define LINKTYPE_DOUBLE_BATTLE 0x2244
#define LINKTYPE_MULTI_BATTLE 0x2255
#define LINKTYPE_BATTLE_TOWER_50 0x2266
#define LINKTYPE_BATTLE_TOWER_OPEN 0x2277
#define LINKTYPE_BATTLE_TOWER 0x2288
#define MASTER_HANDSHAKE 0x8FFF
#define SLAVE_HANDSHAKE 0xB9A0
@@ -262,5 +275,8 @@ bool8 IsWirelessAdapterConnected(void);
bool8 sub_800A474(u8 a0);
void LinkVSync(void);
bool8 HandleLinkConnection(void);
void sub_800B0B4(void);
void sub_800B110(u32 who);
void sub_800ACBC(u32 status, u8 lastSendQueueCount, u8 lastRecvQueueCount, u8 unk_06);
#endif // GUARD_LINK_H
+8 -1
View File
@@ -109,7 +109,7 @@ extern struct UnkRfuStruct_1 gUnknown_3005E10;
void AddTextPrinterToWindow1(const u8 *str);
bool32 MG_PrintTextOnWindow1AndWaitButton(u8 * cmdPtr, const u8 * src);
void sub_80FA190(void);
void LinkRfu_FatalError(void);
void MG_DrawCheckerboardPattern(void);
void task_add_05_task_del_08FA224_when_no_RfuFunc(void);
bool8 IsLinkRfuTaskFinished(void);
@@ -167,6 +167,13 @@ bool8 sub_80FC888(struct UnkRfuStruct_2_Sub_c1c *q1, u8 *q2);
bool8 sub_80FC828(struct UnkRfuStruct_2_Sub_c1c *q1, const u8 *q2);
bool8 sub_80FC6E8(struct UnkRfuStruct_2_Sub_124 * a0, u8 *a1);
bool8 sub_80FC63C(struct UnkRfuStruct_2_Sub_9e8 * a0, u8 *a1);
u8 sub_80FEA34(u8 a0, u16 a1);
void sub_80FDA30(u32 a0);
void sub_80FCB54(struct UnkLinkRfuStruct_02022B14 *data, u8 r9, bool32 r2, s32 r3);
void rfu_syncVBlank_(void);
s32 sub_80FD430(void (*func1)(u8, u8), void (*func2)(u16));
void sub_80FEB3C(void);
void sub_80FAFE0(u8 a0);
#include "mevent_server.h"
extern const struct mevent_server_cmd gMEventSrvScript_OtherTrainerCanceled[];
+1
View File
@@ -6,5 +6,6 @@ extern bool8 gGiftIsFromEReader;
void MainCB_FreeAllBuffersAndReturnToInitTitleScreen(void);
void PrintMysteryGiftOrEReaderTopMenu(bool8, bool32);
void c2_mystery_gift(void);
void c2_mystery_gift_e_reader_run(void);
#endif //GUARD_MYSTERY_GIFT_MENU_H
-2
View File
@@ -226,7 +226,6 @@ SECTIONS {
src/save_menu_util.o(.text);
src/map_preview_screen.o(.text);
src/link_rfu_2.o(.text);
asm/link_rfu_2.o(.text);
asm/link_rfu_4.o(.text);
src/link_rfu.o(.text);
asm/easy_chat_2.o(.text);
@@ -512,7 +511,6 @@ SECTIONS {
data/box_party_pokemon_dropdown.o(.rodata);
src/map_preview_screen.o(.rodata);
src/link_rfu_2.o(.rodata);
data/link_rfu_2.o(.rodata);
data/link_rfu_4.o(.rodata);
data/link_rfu.o(.rodata);
src/pokedex_screen.o(.rodata);
+1666 -79
View File
File diff suppressed because it is too large Load Diff
+4 -4
View File
@@ -96,12 +96,12 @@ static bool32 mevent_receive_func(struct mevent_srv_sub * svr)
svr->recvCRC = header.crc;
if (svr->recvSize > ME_SEND_BUF_SIZE)
{
sub_80FA190();
LinkRfu_FatalError();
return FALSE;
}
else if (svr->recvIdent != header.ident)
{
sub_80FA190();
LinkRfu_FatalError();
return FALSE;
}
else
@@ -133,7 +133,7 @@ static bool32 mevent_receive_func(struct mevent_srv_sub * svr)
case 2:
if (CalcCRC16WithTable(svr->recvBfr, svr->recvSize) != svr->recvCRC)
{
sub_80FA190();
LinkRfu_FatalError();
return FALSE;
}
else
@@ -192,7 +192,7 @@ static bool32 mevent_send_func(struct mevent_srv_sub * svr)
if (IsLinkTaskFinished())
{
if (CalcCRC16WithTable(svr->sendBfr, svr->sendSize) != svr->sendCRC)
sub_80FA190();
LinkRfu_FatalError();
else
++svr->seqno;
}
+1 -10
View File
@@ -75,17 +75,8 @@ gUnknown_3005078: @ 3005078
gUnknown_3005430: @ 3005430
.space 0x10
gUnknown_3005440: @ 3005440
.space 0x10
@ This name is necessary to match assert statements in link_rfu_2
Rfu: @ 3005450
.space 0x9AC
.align 4
gUnknown_3005E00: @ 3005E00
.space 0x10
.include "link_rfu_2.o"
.align 4
.include "link_rfu.o"
.align 4
+2 -6
View File
@@ -330,14 +330,10 @@ gUnknown_203ABE8: @ 203ABE8
.align 2
.include "src/map_preview_screen.o"
.align 2
.include "src/link_rfu_2.o"
.align 2
gUnknown_203ABF0: @ 203ABF0
.space 0x18
gUnknown_203AC08: @ 203AC08
.space 0xDC
gUnknown_203ACE4: @ 203ACE4
.space 0x4