mirror of
https://github.com/pret/pmd-red.git
synced 2026-09-13 11:35:57 -05:00
other_menus2.s
This commit is contained in:
@@ -1,242 +0,0 @@
|
||||
#include "asm/constants/gba_constants.inc"
|
||||
#include "asm/macros.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_8037A48
|
||||
sub_8037A48:
|
||||
push {r4-r6,lr}
|
||||
sub sp, 0x28
|
||||
movs r6, 0x1
|
||||
movs r0, 0
|
||||
mov r1, sp
|
||||
movs r2, 0x14
|
||||
bl sub_800D670
|
||||
add r4, sp, 0x14
|
||||
movs r0, 0x1
|
||||
adds r1, r4, 0
|
||||
movs r2, 0x14
|
||||
bl sub_800D670
|
||||
ldr r1, _08037AAC
|
||||
movs r3, 0x8
|
||||
adds r2, r1, 0
|
||||
adds r0, r2, 0x4
|
||||
_08037A6C:
|
||||
str r3, [r0]
|
||||
subs r0, 0x4
|
||||
cmp r0, r1
|
||||
bge _08037A6C
|
||||
ldr r0, [sp, 0x10]
|
||||
str r0, [r2]
|
||||
ldr r0, [r4, 0x10]
|
||||
str r0, [r2, 0x4]
|
||||
ldr r5, _08037AB0
|
||||
mov r0, sp
|
||||
adds r1, r5, 0
|
||||
bl strcmp
|
||||
cmp r0, 0
|
||||
beq _08037A8C
|
||||
movs r0, 0x1
|
||||
_08037A8C:
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08037AA6
|
||||
adds r0, r4, 0
|
||||
adds r1, r5, 0
|
||||
bl strcmp
|
||||
cmp r0, 0
|
||||
beq _08037AA0
|
||||
movs r0, 0x1
|
||||
_08037AA0:
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08037AB4
|
||||
_08037AA6:
|
||||
movs r0, 0
|
||||
b _08037B1E
|
||||
.align 2, 0
|
||||
_08037AAC: .4byte gUnknown_202EC40
|
||||
_08037AB0: .4byte gUnknown_80E6E50
|
||||
_08037AB4:
|
||||
ldr r1, [sp, 0x10]
|
||||
cmp r1, 0
|
||||
bne _08037AC0
|
||||
ldr r0, [r4, 0x10]
|
||||
cmp r0, 0x1
|
||||
beq _08037B1C
|
||||
_08037AC0:
|
||||
cmp r1, 0x1
|
||||
bne _08037ACA
|
||||
ldr r0, [r4, 0x10]
|
||||
cmp r0, 0
|
||||
beq _08037B1C
|
||||
_08037ACA:
|
||||
cmp r1, 0x2
|
||||
bne _08037AD4
|
||||
ldr r0, [r4, 0x10]
|
||||
cmp r0, 0x3
|
||||
beq _08037B1C
|
||||
_08037AD4:
|
||||
cmp r1, 0x3
|
||||
bne _08037ADE
|
||||
ldr r0, [r4, 0x10]
|
||||
cmp r0, 0x2
|
||||
beq _08037B1C
|
||||
_08037ADE:
|
||||
cmp r1, 0x9
|
||||
bne _08037AE8
|
||||
ldr r0, [r4, 0x10]
|
||||
cmp r0, 0xA
|
||||
beq _08037B1C
|
||||
_08037AE8:
|
||||
cmp r1, 0xA
|
||||
bne _08037AF2
|
||||
ldr r0, [r4, 0x10]
|
||||
cmp r0, 0x9
|
||||
beq _08037B1C
|
||||
_08037AF2:
|
||||
cmp r1, 0x4
|
||||
bne _08037AFC
|
||||
ldr r0, [r4, 0x10]
|
||||
cmp r0, 0x5
|
||||
beq _08037B1C
|
||||
_08037AFC:
|
||||
cmp r1, 0x5
|
||||
bne _08037B06
|
||||
ldr r0, [r4, 0x10]
|
||||
cmp r0, 0x4
|
||||
beq _08037B1C
|
||||
_08037B06:
|
||||
cmp r1, 0x6
|
||||
bne _08037B10
|
||||
ldr r0, [r4, 0x10]
|
||||
cmp r0, 0x7
|
||||
beq _08037B1C
|
||||
_08037B10:
|
||||
cmp r1, 0x7
|
||||
bne _08037B1A
|
||||
ldr r0, [r4, 0x10]
|
||||
cmp r0, 0x6
|
||||
beq _08037B1C
|
||||
_08037B1A:
|
||||
movs r6, 0
|
||||
_08037B1C:
|
||||
adds r0, r6, 0
|
||||
_08037B1E:
|
||||
add sp, 0x28
|
||||
pop {r4-r6}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8037A48
|
||||
|
||||
thumb_func_start sub_8037B28
|
||||
sub_8037B28:
|
||||
push {r4,r5,lr}
|
||||
sub sp, 0x14
|
||||
adds r4, r0, 0
|
||||
movs r5, 0
|
||||
bl sub_800D414
|
||||
ldr r0, _08037B58
|
||||
str r5, [r0]
|
||||
ldr r5, _08037B5C
|
||||
mov r0, sp
|
||||
movs r1, 0
|
||||
movs r2, 0x14
|
||||
bl MemoryFill8
|
||||
mov r0, sp
|
||||
adds r1, r5, 0
|
||||
bl strcpy
|
||||
str r4, [sp, 0x10]
|
||||
mov r0, sp
|
||||
movs r1, 0x14
|
||||
bl sub_800D59C
|
||||
b _08037B7A
|
||||
.align 2, 0
|
||||
_08037B58: .4byte gUnknown_202EC38
|
||||
_08037B5C: .4byte gUnknown_80E6E50
|
||||
_08037B60:
|
||||
cmp r5, 0x3
|
||||
beq _08037BCC
|
||||
cmp r5, 0x4
|
||||
beq _08037BD8
|
||||
cmp r5, 0x5
|
||||
beq _08037BF0
|
||||
ldr r2, _08037BC0
|
||||
ldr r1, [r2]
|
||||
ldr r0, _08037BC4
|
||||
cmp r1, r0
|
||||
bgt _08037BE4
|
||||
adds r0, r1, 0x1
|
||||
str r0, [r2]
|
||||
_08037B7A:
|
||||
movs r4, 0
|
||||
_08037B7C:
|
||||
bl sub_80373C4
|
||||
bl sub_8012AE8
|
||||
cmp r0, 0x3
|
||||
bgt _08037B8C
|
||||
cmp r0, 0x2
|
||||
bge _08037BF0
|
||||
_08037B8C:
|
||||
adds r4, 0x1
|
||||
cmp r4, 0
|
||||
ble _08037B7C
|
||||
bl sub_800D33C
|
||||
adds r5, r0, 0
|
||||
bl sub_800D570
|
||||
cmp r5, 0x2
|
||||
bne _08037B60
|
||||
bl sub_800D600
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08037BFC
|
||||
bl sub_8037A48
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08037BC8
|
||||
movs r4, 0x4
|
||||
bl sub_800D520
|
||||
bl sub_800D510
|
||||
b _08037C06
|
||||
.align 2, 0
|
||||
_08037BC0: .4byte gUnknown_202EC38
|
||||
_08037BC4: .4byte 0x00000707
|
||||
_08037BC8:
|
||||
movs r4, 0
|
||||
b _08037C06
|
||||
_08037BCC:
|
||||
bl sub_800D520
|
||||
bl sub_800D510
|
||||
movs r0, 0x2
|
||||
b _08037C08
|
||||
_08037BD8:
|
||||
bl sub_800D520
|
||||
bl sub_800D510
|
||||
movs r0, 0x3
|
||||
b _08037C08
|
||||
_08037BE4:
|
||||
bl sub_800D520
|
||||
bl sub_800D510
|
||||
movs r0, 0xF
|
||||
b _08037C08
|
||||
_08037BF0:
|
||||
bl sub_800D520
|
||||
bl sub_800D510
|
||||
movs r0, 0x1
|
||||
b _08037C08
|
||||
_08037BFC:
|
||||
movs r4, 0x5
|
||||
bl sub_800D520
|
||||
bl sub_800D510
|
||||
_08037C06:
|
||||
adds r0, r4, 0
|
||||
_08037C08:
|
||||
add sp, 0x14
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8037B28
|
||||
|
||||
.align 2,0
|
||||
@@ -1,7 +1,8 @@
|
||||
#ifndef GUARD_OTHER_MENUS2_H
|
||||
#define GUARD_OTHER_MENUS2_H
|
||||
|
||||
u32 sub_8037C10(bool8);
|
||||
s32 sub_8037B28(s32);
|
||||
s32 sub_8037C10(bool8);
|
||||
s32 sub_8037D64(u32 mode, void *, void *);
|
||||
s32 sub_80381F4(u32 mode, void *, void *);
|
||||
|
||||
|
||||
@@ -180,7 +180,6 @@ SECTIONS {
|
||||
src/main_menu2.o(.text);
|
||||
src/trade_items_menu.o(.text);
|
||||
src/other_menus1.o(.text);
|
||||
asm/other_menus2.o(.text);
|
||||
src/other_menus2.o(.text);
|
||||
src/adventure_log_menu.o(.text);
|
||||
src/unk_menu_203B360.o(.text);
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
ALIGNED(4) const u8 gUnknown_80E6E50[] = _("CHUNSOFT"); // TODO: MAKE STATIC WHEN other_menus2.s IS DED
|
||||
ALIGNED(4) static const u8 sChunsoft[] = _("CHUNSOFT");
|
||||
|
||||
// TODO: These belongs to files after
|
||||
ALIGNED(4) static const u8 fill1[] = _("pksdir0");
|
||||
ALIGNED(4) static const u8 fill2[] = _("pksdir0");
|
||||
ALIGNED(4) static const u8 fill3[] = _("pksdir0");
|
||||
ALIGNED(4) static const u8 fill4[] = _("pksdir0");
|
||||
// TODO: These belong to files after. Two of the .c files were stripped away? They were before unk_menu_203B360.c
|
||||
ALIGNED(4) static const u8 fill1[] = _("pksdir0"); // adventure_log_menu.c
|
||||
ALIGNED(4) static const u8 fill2[] = _("pksdir0"); // ?.c
|
||||
ALIGNED(4) static const u8 fill3[] = _("pksdir0"); // ?.c
|
||||
@@ -306,7 +306,6 @@ extern void sub_8031E10(void);
|
||||
extern u8 sub_800D588(void);
|
||||
extern u32 sub_8023CE8(void);
|
||||
extern bool8 sub_8031D70(u32 mailIndex, s32);
|
||||
extern s32 sub_8037B28(u32);
|
||||
|
||||
extern u32 GetDungeonTeamRankPts(DungeonLocation *, u32);
|
||||
extern void sprintfStatic(char *buffer, const char *text, ...);
|
||||
|
||||
@@ -18,17 +18,12 @@
|
||||
#include "sprite.h"
|
||||
#include "text1.h"
|
||||
|
||||
// TODO: MAKE STATIC WHEN other_menus1.s IS DED
|
||||
/*static*/ EWRAM_DATA_2 unkStruct_203B35C *sUnknown_203B35C = {0};
|
||||
static EWRAM_DATA_2 unkStruct_203B35C *sUnknown_203B35C = {0};
|
||||
|
||||
#include "data/other_menus1.h"
|
||||
|
||||
// other_menus1.s
|
||||
extern void sub_8037900(void);
|
||||
// text.s
|
||||
extern void xxx_call_update_bg_vram();
|
||||
// other_menus2.s
|
||||
extern s32 sub_8037B28(u32);
|
||||
extern void xxx_call_update_bg_vram(); // egg's PR should remove this
|
||||
|
||||
static void sub_80371B8(void);
|
||||
static void sub_8037400(void);
|
||||
@@ -36,6 +31,7 @@ static void sub_80376CC(void);
|
||||
static void sub_8037748(void);
|
||||
static u32 sub_8037798(void);
|
||||
static void sub_8037810(void);
|
||||
static void sub_8037900(void);
|
||||
|
||||
void sub_8036FDC(s32 param_1)
|
||||
{
|
||||
@@ -104,7 +100,7 @@ UNUSED static u32 sub_80370F0(void)
|
||||
sub_80371B8();
|
||||
break;
|
||||
case 2:
|
||||
if (sUnknown_203B35C->unk0 < 2 && sUnknown_203B35C->linkStatus == COMMS_GOOD && !sub_8037C10(FALSE))
|
||||
if (sUnknown_203B35C->unk0 < 2 && sUnknown_203B35C->linkStatus == COMMS_GOOD && sub_8037C10(FALSE) == 0)
|
||||
return 41; // TODO: what screen is this?
|
||||
|
||||
if (!sub_80130A8(&sUnknown_203B35C->unk1C[0]))
|
||||
@@ -133,7 +129,7 @@ static void sub_80371B8(void)
|
||||
sub_8037400();
|
||||
|
||||
if (sUnknown_203B35C->unk0 < 2 && sUnknown_203B35C->linkStatus == COMMS_GOOD) {
|
||||
if (sub_8037C10(FALSE)) {
|
||||
if (sub_8037C10(FALSE) != 0) {
|
||||
sub_80376CC();
|
||||
sub_8035CC0(sUnknown_203B35C->unk15C, 0);
|
||||
// Success!
|
||||
|
||||
@@ -11,10 +11,16 @@
|
||||
#include "save.h"
|
||||
#include "structs/str_dungeon.h"
|
||||
|
||||
typedef struct unkStruct_800D670
|
||||
{
|
||||
u8 buffer[16];
|
||||
u32 unk10;
|
||||
} unkStruct_800D670;
|
||||
|
||||
// rescue_password_menu.c
|
||||
extern s32 gCommsTimeout; // Counts to 100 and then errors if other player hasn't connected
|
||||
|
||||
extern u32 gUnknown_202EC40[2];
|
||||
extern s32 gUnknown_202EC40[2];
|
||||
extern s32 gUnknown_202EC48;
|
||||
|
||||
extern struct UnkStruct_203B184 *gUnknown_203B184;
|
||||
@@ -30,44 +36,199 @@ extern void sub_800D570(void);
|
||||
extern u8 sub_800D588(void);
|
||||
extern void sub_800D59C(s32 *, u32);
|
||||
extern u8 sub_800D600(void);
|
||||
extern void sub_800D670(u32, s32 *, u32);
|
||||
extern void sub_800D670(s32 idx, void *dst, s32 size);
|
||||
extern void sub_800D68C(u32);
|
||||
|
||||
u32 sub_8037C10(bool8 a0)
|
||||
// Inline needed for 8-bit return cast
|
||||
static inline bool8 IsNotChunsoft(unkStruct_800D670 *unk)
|
||||
{
|
||||
u32 ret;
|
||||
return strcmp(unk->buffer, sChunsoft) != 0;
|
||||
}
|
||||
|
||||
if (a0)
|
||||
{
|
||||
bool8 sub_8037A48(void)
|
||||
{
|
||||
bool8 found;
|
||||
unkStruct_800D670 stack;
|
||||
unkStruct_800D670 stack_1;
|
||||
s32 i;
|
||||
|
||||
found = TRUE;
|
||||
sub_800D670(0, &stack, sizeof(unkStruct_800D670));
|
||||
sub_800D670(1, &stack_1, sizeof(unkStruct_800D670));
|
||||
|
||||
for (i = 0; i < 2; i++)
|
||||
gUnknown_202EC40[i] = 8;
|
||||
|
||||
gUnknown_202EC40[0] = stack.unk10;
|
||||
gUnknown_202EC40[1] = stack_1.unk10;
|
||||
|
||||
if (IsNotChunsoft(&stack) || IsNotChunsoft(&stack_1))
|
||||
return FALSE;
|
||||
|
||||
if ((stack.unk10 == 0 && stack_1.unk10 == 1)
|
||||
|| (stack.unk10 == 1 && stack_1.unk10 == 0)) {
|
||||
//found = TRUE;
|
||||
}
|
||||
else if ((stack.unk10 == 2 && stack_1.unk10 == 3)
|
||||
|| (stack.unk10 == 3 && stack_1.unk10 == 2)) {
|
||||
//found = TRUE;
|
||||
}
|
||||
else if ((stack.unk10 == 9 && stack_1.unk10 == 10)
|
||||
|| (stack.unk10 == 10 && stack_1.unk10 == 9)) {
|
||||
//found = TRUE;
|
||||
}
|
||||
else if ((stack.unk10 == 4 && stack_1.unk10 == 5)
|
||||
|| (stack.unk10 == 5 && stack_1.unk10 == 4)) {
|
||||
//found = TRUE;
|
||||
}
|
||||
else if ((stack.unk10 == 6 && stack_1.unk10 == 7)
|
||||
|| (stack.unk10 == 7 && stack_1.unk10 == 6)) {
|
||||
//found = TRUE;
|
||||
}
|
||||
else {
|
||||
found = FALSE;
|
||||
}
|
||||
|
||||
return found;
|
||||
}
|
||||
|
||||
// https://decomp.me/scratch/IJ9zV (inverted loop, try to match without gotos...)
|
||||
NAKED s32 sub_8037B28(s32 mode)
|
||||
{
|
||||
asm_unified("push {r4,r5,lr}\n"
|
||||
" sub sp, 0x14\n"
|
||||
" adds r4, r0, 0\n"
|
||||
" movs r5, 0\n"
|
||||
" bl sub_800D414\n"
|
||||
" ldr r0, _08037B58\n"
|
||||
" str r5, [r0]\n"
|
||||
" ldr r5, _08037B5C\n"
|
||||
" mov r0, sp\n"
|
||||
" movs r1, 0\n"
|
||||
" movs r2, 0x14\n"
|
||||
" bl MemoryFill8\n"
|
||||
" mov r0, sp\n"
|
||||
" adds r1, r5, 0\n"
|
||||
" bl strcpy\n"
|
||||
" str r4, [sp, 0x10]\n"
|
||||
" mov r0, sp\n"
|
||||
" movs r1, 0x14\n"
|
||||
" bl sub_800D59C\n"
|
||||
" b _08037B7A\n"
|
||||
" .align 2, 0\n"
|
||||
"_08037B58: .4byte gUnknown_202EC38\n"
|
||||
"_08037B5C: .4byte sChunsoft\n"
|
||||
"_08037B60:\n"
|
||||
" cmp r5, 0x3\n"
|
||||
" beq _08037BCC\n"
|
||||
" cmp r5, 0x4\n"
|
||||
" beq _08037BD8\n"
|
||||
" cmp r5, 0x5\n"
|
||||
" beq _08037BF0\n"
|
||||
" ldr r2, _08037BC0\n"
|
||||
" ldr r1, [r2]\n"
|
||||
" ldr r0, _08037BC4\n"
|
||||
" cmp r1, r0\n"
|
||||
" bgt _08037BE4\n"
|
||||
" adds r0, r1, 0x1\n"
|
||||
" str r0, [r2]\n"
|
||||
"_08037B7A:\n"
|
||||
" movs r4, 0\n"
|
||||
"_08037B7C:\n"
|
||||
" bl sub_80373C4\n"
|
||||
" bl sub_8012AE8\n"
|
||||
" cmp r0, 0x3\n"
|
||||
" bgt _08037B8C\n"
|
||||
" cmp r0, 0x2\n"
|
||||
" bge _08037BF0\n"
|
||||
"_08037B8C:\n"
|
||||
" adds r4, 0x1\n"
|
||||
" cmp r4, 0\n"
|
||||
" ble _08037B7C\n"
|
||||
" bl sub_800D33C\n"
|
||||
" adds r5, r0, 0\n"
|
||||
" bl sub_800D570\n"
|
||||
" cmp r5, 0x2\n"
|
||||
" bne _08037B60\n"
|
||||
" bl sub_800D600\n"
|
||||
" lsls r0, 24\n"
|
||||
" cmp r0, 0\n"
|
||||
" beq _08037BFC\n"
|
||||
" bl sub_8037A48\n"
|
||||
" lsls r0, 24\n"
|
||||
" cmp r0, 0\n"
|
||||
" bne _08037BC8\n"
|
||||
" movs r4, 0x4\n"
|
||||
" bl sub_800D520\n"
|
||||
" bl sub_800D510\n"
|
||||
" b _08037C06\n"
|
||||
" .align 2, 0\n"
|
||||
"_08037BC0: .4byte gUnknown_202EC38\n"
|
||||
"_08037BC4: .4byte 0x00000707\n"
|
||||
"_08037BC8:\n"
|
||||
" movs r4, 0\n"
|
||||
" b _08037C06\n"
|
||||
"_08037BCC:\n"
|
||||
" bl sub_800D520\n"
|
||||
" bl sub_800D510\n"
|
||||
" movs r0, 0x2\n"
|
||||
" b _08037C08\n"
|
||||
"_08037BD8:\n"
|
||||
" bl sub_800D520\n"
|
||||
" bl sub_800D510\n"
|
||||
" movs r0, 0x3\n"
|
||||
" b _08037C08\n"
|
||||
"_08037BE4:\n"
|
||||
" bl sub_800D520\n"
|
||||
" bl sub_800D510\n"
|
||||
" movs r0, 0xF\n"
|
||||
" b _08037C08\n"
|
||||
"_08037BF0:\n"
|
||||
" bl sub_800D520\n"
|
||||
" bl sub_800D510\n"
|
||||
" movs r0, 0x1\n"
|
||||
" b _08037C08\n"
|
||||
"_08037BFC:\n"
|
||||
" movs r4, 0x5\n"
|
||||
" bl sub_800D520\n"
|
||||
" bl sub_800D510\n"
|
||||
"_08037C06:\n"
|
||||
" adds r0, r4, 0\n"
|
||||
"_08037C08:\n"
|
||||
" add sp, 0x14\n"
|
||||
" pop {r4,r5}\n"
|
||||
" pop {r1}\n"
|
||||
" bx r1");
|
||||
}
|
||||
|
||||
s32 sub_8037C10(bool8 a0)
|
||||
{
|
||||
s32 ret;
|
||||
|
||||
if (a0) {
|
||||
if (sub_800D588())
|
||||
{
|
||||
ret = gUnknown_202EC40[0];
|
||||
}
|
||||
else
|
||||
{
|
||||
ret = gUnknown_202EC40[1];
|
||||
}
|
||||
}
|
||||
else if (sub_800D588())
|
||||
{
|
||||
ret = gUnknown_202EC40[1];
|
||||
}
|
||||
else
|
||||
{
|
||||
ret = gUnknown_202EC40[0];
|
||||
else {
|
||||
if (sub_800D588())
|
||||
ret = gUnknown_202EC40[1];
|
||||
else
|
||||
ret = gUnknown_202EC40[0];
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static void sub_8037C44(s32 mode, void *data)
|
||||
{
|
||||
s32 index;
|
||||
s32 i;
|
||||
|
||||
for(index = 0; index < 2; index++)
|
||||
{
|
||||
sub_800D68C(index);
|
||||
}
|
||||
switch(mode) {
|
||||
for (i = 0; i < 2; i++)
|
||||
sub_800D68C(i);
|
||||
|
||||
switch (mode) {
|
||||
case 0:
|
||||
case 1:
|
||||
sub_800D59C(data, sizeof(unkStruct_8035D94));
|
||||
@@ -84,15 +245,14 @@ static void sub_8037C44(s32 mode, void *data)
|
||||
break;
|
||||
case 9:
|
||||
case 10:
|
||||
sub_800D59C(data, 0xb4);
|
||||
sub_800D59C(data, 0xB4);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_8037CC4(s32 mode, void *param_2, void *param_3)
|
||||
{
|
||||
switch(mode)
|
||||
{
|
||||
switch (mode) {
|
||||
case 0:
|
||||
case 1:
|
||||
sub_800D670(0, param_2, sizeof(unkStruct_8035D94));
|
||||
@@ -112,13 +272,13 @@ static void sub_8037CC4(s32 mode, void *param_2, void *param_3)
|
||||
break;
|
||||
case 9:
|
||||
case 10:
|
||||
sub_800D670(0, param_2, 180);
|
||||
sub_800D670(1, param_3, 180);
|
||||
sub_800D670(0, param_2, 0xB4);
|
||||
sub_800D670(1, param_3, 0xB4);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// TODO: same as sub_80381F4
|
||||
// TODO: same as sub_80381F4. Try to fix this fakematch https://decomp.me/scratch/vkGqo
|
||||
s32 sub_8037D64(u32 mode, void *param_2, void *param_3)
|
||||
{
|
||||
u32 iVar2;
|
||||
@@ -171,8 +331,8 @@ static s32 sub_8037DF0(void)
|
||||
s32 iStack_c;
|
||||
|
||||
linkStatus = COMMS_GOOD;
|
||||
sub_800D670(0,&iStack_10,4);
|
||||
sub_800D670(1,&iStack_c,4);
|
||||
sub_800D670(0, &iStack_10, 4);
|
||||
sub_800D670(1, &iStack_c, 4);
|
||||
if ((iStack_10 != 0) || (iStack_c != 0)) {
|
||||
linkStatus = (!sub_800D588()) ? iStack_c : iStack_10;
|
||||
if (linkStatus == COMMS_GOOD) {
|
||||
@@ -432,7 +592,7 @@ UNUSED static s32 sub_80381E8(u32 mode, void * param_2, void * param_3)
|
||||
return sub_803815C(mode, param_2, param_3);
|
||||
}
|
||||
|
||||
// TODO: clean this up
|
||||
// TODO: clean this up... fix fakematch without gotos. see above funcs https://decomp.me/scratch/JGv2m
|
||||
s32 sub_80381F4(u32 mode, void *param_2, void *param_3)
|
||||
{
|
||||
u32 iVar2;
|
||||
|
||||
@@ -221,7 +221,6 @@ extern void sub_802A828();
|
||||
extern void sub_802A850();
|
||||
extern void sub_8031E10();
|
||||
extern void SetThankYouMailMenuState(u32);
|
||||
extern s32 sub_8037B28(u32);
|
||||
extern u8 sub_800D588(void);
|
||||
extern u32 GetDungeonTeamRankPts(DungeonLocation *, u32);
|
||||
extern void sub_8031D70(u8, u32);
|
||||
|
||||
@@ -21,8 +21,6 @@ static EWRAM_DATA_2 struct TradeItemsMenu *sTradeItemsMenu = {0};
|
||||
|
||||
#include "data/trade_items_menu.h"
|
||||
|
||||
extern s32 sub_8037B28(u32);
|
||||
|
||||
void sub_8036F74(void);
|
||||
void sub_8036F30();
|
||||
void TradeItem_AddItem();
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#include "global.h"
|
||||
#include "globaldata.h"
|
||||
#include "constants/main_menu.h"
|
||||
#include "input.h"
|
||||
#include "main_menu1.h"
|
||||
|
||||
@@ -39,7 +39,6 @@ extern u32 sub_8031DCC();
|
||||
extern void sub_8031E10();
|
||||
extern void sub_8031E00();
|
||||
extern void sub_8031E10(void);
|
||||
extern s32 sub_8037B28(u32);
|
||||
extern void sub_8031D70(u8, u32);
|
||||
extern u32 sub_8023CE8(void);
|
||||
extern void sub_8030F58(u32);
|
||||
|
||||
@@ -74,7 +74,6 @@ extern void SetWonderMailMainMenuState(u8);
|
||||
extern void sub_8031E10(void);
|
||||
extern u8 sub_800D588(void);
|
||||
extern void sub_802EF48(void);
|
||||
extern s32 sub_8037B28(u32);
|
||||
|
||||
void PrintWonderMailMainMenuError(u32);
|
||||
void HandleWonderMailMainScreen(void);
|
||||
|
||||
Reference in New Issue
Block a user