more documenting of funcs

This commit is contained in:
Seth Barberee
2022-12-26 18:42:47 -06:00
parent 9e4a18aba4
commit a3add15181
12 changed files with 56 additions and 54 deletions

View File

@@ -9,7 +9,7 @@
sub_80951BC:
push {r4,lr}
adds r4, r0, 0
bl sub_8095190
bl FindOpenMailSlot
adds r2, r0, 0
movs r0, 0x1
negs r0, r0

View File

@@ -1653,7 +1653,7 @@ _08038110:
movs r0, 0x7
b _08038126
_08038114:
bl sub_8095190
bl FindOpenMailSlot
movs r1, 0x1
negs r1, r1
cmp r0, r1

View File

@@ -27,6 +27,7 @@ enum WonderMailMethod {
};
enum WonderMailTypes {
WONDER_MAIL_TYPE_NONE = 0,
WONDER_MAIL_TYPE_SOS = 1,
//WONDER_MAIL_TYPE_SOS = 2, // SOS MAIL is 1 and 2?
WONDER_MAIL_TYPE_AOK = 4,

View File

@@ -29,11 +29,14 @@ struct RescuePasswordMenu
#define PASSWORD_ENTRY_DUPLICATE_AOK_MAIL 0x9
#define PASSWORD_ENTRY_DUPLICATE_THANK_YOU_MAIL 0xB
#define PASSWORD_ENTRY_NO_SPACE 0xD
#define PASSWORD_ENTRY_INCORRECT_PASSWORD 0x11
#define PASSWORD_ENTRY_NOT_SOS_MAIL 0x12
#define PASSWORD_ENTRY_NOT_AOK_MAIL 0x13
#define PASSWORD_ENTRY_NOT_THANK_YOU_MAIL 0x14
#define PASSWORD_ENTRY_NOT_WONDER_MAIL 0x15
#define PASSWORD_ENTRY_SOS_MAIL_SUCCESS 0x16
#define PASSWORD_ENTRY_AOK_MAIL_SUCCESS 0x17

View File

@@ -1,4 +1,5 @@
#include "global.h"
#include "constants/wonder_mail.h"
#include "pokemon.h"
#include "code_8094F88.h"
#include "memory.h"
@@ -55,9 +56,9 @@ void sub_8095118(void)
// NOTE: we use a temp variable here to force the match
unused = &gUnknown_203B480[iVar1];
gUnknown_203B480[iVar1].mailType = 0;
gUnknown_203B480[iVar1].mailType = WONDER_MAIL_TYPE_NONE;
unused = &gUnknown_203B480[iVar1];
gUnknown_203B480[iVar1].unk20.itemIndex = 0;
gUnknown_203B480[iVar1].unk20.itemIndex = ITEM_ID_NOTHING;
unused = &gUnknown_203B480[iVar1];
gUnknown_203B480[iVar1].unk2D = 0;
}
@@ -75,12 +76,12 @@ void nullsub_207(void)
{
}
s32 sub_8095190(void)
s32 FindOpenMailSlot(void)
{
int index;
s32 index;
for(index = 2; index < 0x20; index++){
if(gUnknown_203B480[index].mailType == 0)
if(gUnknown_203B480[index].mailType == WONDER_MAIL_TYPE_NONE)
return index;
}
return -1;

View File

@@ -85,7 +85,7 @@ extern u32 sub_8039068(u32, u8 *r1, struct unkStruct_203B480 *r0);
extern void sub_8095274(u32);
extern void sub_80951BC(struct unkStruct_203B480 *r0);
extern u8 sub_800D588(void);
extern s32 sub_8095190(void);
extern s32 FindOpenMailSlot(void);
extern u8 gUnknown_80E44A4[];
extern u8 gUnknown_80E4500[];
@@ -209,7 +209,7 @@ void sub_8033A2C(void)
case 3:
gUnknown_203B33C->unk40 = 3;
gUnknown_203B33C->unk528 = 3;
if(sub_8095190() == -1)
if(FindOpenMailSlot() == -1)
SetFriendRescueMenuState(0xF);
else
SetFriendRescueMenuState(0xE);

View File

@@ -37,7 +37,6 @@ extern bool8 sub_80951FC(struct unkStruct_203B480 *r0);
extern u8 sub_8012FD8(u32 *r0);
extern void sub_8013114(u32 *, s32 *);
extern u32 sub_80154F0(void);
extern s32 sub_809539C(u8, u32);
extern void sub_8095274(u32);
extern u32 sub_8031DCC(void);
extern void sub_80391F8(void);
@@ -49,11 +48,10 @@ extern struct MainMenu *GetMainMenu(void);
extern void SetMenuItems(void *, struct UnkTextStruct2 *, u32, const struct UnkTextStruct2 *, const struct MenuItem *, u32, u32, u32);
extern void sub_8035CF4(u32 *r0, u32, u32);
bool8 IsInvalidItemReward(u8);
bool8 sub_80952F0(u8, u32);
bool8 sub_8095298(s32);
bool8 sub_803D204(u8 *, struct unkStruct_203B480 *);
extern s32 GetDungeonFloorCount(u8);
extern s32 sub_8095190(void);
extern s32 FindOpenMailSlot(void);
extern struct UnkTextStruct2 gUnknown_80E71FC;
extern struct UnkTextStruct2 gUnknown_80E7278;
@@ -203,8 +201,8 @@ s32 UpdateRescuePasswordMenu(void)
gRescuePasswordMenu->state = 8;
nextMenu = MENU_NO_SCREEN_CHANGE;
break;
case 0xd:
nextMenu = 0xD;
case PASSWORD_ENTRY_NO_SPACE:
nextMenu = PASSWORD_ENTRY_NO_SPACE;
DisplayRescuePasswordError(nextMenu);
gRescuePasswordMenu->state = 8;
nextMenu = MENU_NO_SCREEN_CHANGE;
@@ -248,7 +246,7 @@ s32 UpdateRescuePasswordMenu(void)
local_44.mailType = 5;
sub_80951FC(&local_44);
puVar5 = sub_8095228(sub_809539C(1, local_44.unk10));
puVar5->mailType = 7;
puVar5->mailType = WONDER_MAIL_TYPE_OKD;
MemoryFill8((u8 *)&gUnknown_203B484, 0, sizeof(struct unkStruct_203B484));
break;
case PASSWORD_ENTRY_NOT_THANK_YOU_MAIL:
@@ -257,8 +255,8 @@ s32 UpdateRescuePasswordMenu(void)
gRescuePasswordMenu->state = 8;
nextMenu = MENU_NO_SCREEN_CHANGE;
break;
case 0xb:
nextMenu = 0xb;
case PASSWORD_ENTRY_DUPLICATE_THANK_YOU_MAIL:
nextMenu = PASSWORD_ENTRY_DUPLICATE_THANK_YOU_MAIL;
DisplayRescuePasswordError(nextMenu);
gRescuePasswordMenu->state = 8;
nextMenu = MENU_NO_SCREEN_CHANGE;
@@ -286,7 +284,7 @@ s32 UpdateRescuePasswordMenu(void)
switch(sub_80154F0())
{
case 3:
nextMenu = 0x15;
nextMenu = PASSWORD_ENTRY_NOT_WONDER_MAIL;
DisplayRescuePasswordError(nextMenu);
gRescuePasswordMenu->state = 8;
nextMenu = MENU_NO_SCREEN_CHANGE;
@@ -381,7 +379,7 @@ void DisplayRescuePasswordError(u32 passwordError)
case PASSWORD_ENTRY_DUPLICATE_SOS_MAIL:
SetMenuItems(&gRescuePasswordMenu->unk8,gRescuePasswordMenu->unk148,0,&gUnknown_80E7344,gUnknown_80E735C,0,0xd,0);
break;
case 0xd:
case PASSWORD_ENTRY_NO_SPACE:
SetMenuItems(&gRescuePasswordMenu->unk8,gRescuePasswordMenu->unk148,0,&gUnknown_80E7588,gUnknown_80E75A0,0,0xd,0);
break;
case PASSWORD_ENTRY_NOT_AOK_MAIL:
@@ -396,7 +394,7 @@ void DisplayRescuePasswordError(u32 passwordError)
case PASSWORD_ENTRY_DUPLICATE_THANK_YOU_MAIL:
SetMenuItems(&gRescuePasswordMenu->unk8,gRescuePasswordMenu->unk148,0,&gUnknown_80E74C8,gUnknown_80E74E0,0,0xd,0);
break;
case 0x15:
case PASSWORD_ENTRY_NOT_WONDER_MAIL:
SetMenuItems(&gRescuePasswordMenu->unk8,gRescuePasswordMenu->unk148,0,&gUnknown_80E752C,gUnknown_80E7544,0,0xd,0);
break;
default:
@@ -464,11 +462,11 @@ u32 sub_8039068(u32 mailMode, u8 *passwordBuffer, struct unkStruct_203B480 *para
if (param_3->mailType != WONDER_MAIL_TYPE_SOS) {
return PASSWORD_ENTRY_NOT_SOS_MAIL;
}
else if ( (sub_80952F0(2, param_3->unk10)) || (sub_80952F0(4, param_3->unk10)) || (sub_80952F0(6, param_3->unk10)) || (sub_8095298(param_3->unk10))) {
else if ( (sub_80952F0(2, param_3->unk10)) || (sub_80952F0(WONDER_MAIL_TYPE_AOK, param_3->unk10)) || (sub_80952F0(WONDER_MAIL_TYPE_COMPLETED, param_3->unk10)) || (sub_8095298(param_3->unk10))) {
return PASSWORD_ENTRY_DUPLICATE_SOS_MAIL;
}
else if (sub_8095190() == -1) {
return 0xd;
else if (FindOpenMailSlot() == -1) {
return PASSWORD_ENTRY_NO_SPACE;
}
else {
return PASSWORD_ENTRY_SOS_MAIL_SUCCESS;

View File

@@ -1145,7 +1145,7 @@ void HandleMailCommunicationMenu(void)
switch(gUnknown_203B2C4->wonderMailMode)
{
case WONDER_MAIL_MODE_SEND:
mail = sub_8095228(sub_80953D4(5));
mail = sub_8095228(sub_80953D4(WONDER_MAIL_TYPE_THANK_YOU));
if(mail->unk20.itemIndex != ITEM_ID_NOTHING)
{
SetThankYouMailMenuState(ITEM_EXISTS_ON_THANK_YOU_MAIL);

View File

@@ -28,7 +28,7 @@ extern u8 sub_80A2824(u8);
extern char gUnknown_202E5D8[0x50];
extern char gAvailablePokemonNames[0x50];
extern s32 sub_8095190(void);
extern s32 FindOpenMailSlot(void);
extern void sub_80141B4(const char *r0, u32, struct OpenedFile **r1, u32);
extern void nullsub_130(void);
extern void sub_8028348(void);
@@ -844,7 +844,7 @@ void sub_8028BF0(void)
case 0:
gUnknown_203B2C0->unk40 = 3;
gUnknown_203B2C0->unk538 = 0;
if(sub_8095190() != -1)
if(FindOpenMailSlot() != -1)
{
sub_8028B04(8);
}
@@ -949,7 +949,7 @@ void sub_8028D4C()
}
break;
case 6:
if(HasNoWonderMailType(4))
if(HasNoWonderMailType(WONDER_MAIL_TYPE_AOK))
{
sub_8028B04(14);
}
@@ -959,7 +959,7 @@ void sub_8028D4C()
}
break;
case 7:
if(HasNoWonderMailType(0))
if(HasNoWonderMailType(WONDER_MAIL_TYPE_NONE))
{
sub_8028B04(16);
}

View File

@@ -663,16 +663,16 @@ void sub_802B8D4(void)
s32 GetNumPKMNNews(void)
{
s32 iVar2;
s32 index;
s32 newsCount;
newsCount = 0;
for(iVar2 = 0; iVar2 < NUM_POKEMON_NEWS; iVar2++)
for(index = 0; index < NUM_POKEMON_NEWS; index++)
{
if(CheckPKMNNewsSlot(iVar2))
if(CheckPKMNNewsSlot(index))
{
gUnknown_203B2CC->receivedNewsletters[newsCount] = iVar2;
gUnknown_203B2CC->receivedNewsletters[newsCount] = index;
newsCount++;
}
}
@@ -681,11 +681,11 @@ s32 GetNumPKMNNews(void)
bool8 HasNoPKMNNews(void)
{
s32 iVar2;
s32 index;
for(iVar2 = 0; iVar2 < NUM_POKEMON_NEWS; iVar2++)
for(index = 0; index < NUM_POKEMON_NEWS; index++)
{
if(CheckPKMNNewsSlot(iVar2))
if(CheckPKMNNewsSlot(index))
{
return FALSE;
}

View File

@@ -10,8 +10,7 @@
struct unkStruct_203B320
{
// size: 0xC4
u8 unk0[4];
u8 fill4[0x20 - 4];
u8 unk0[0x20];
u32 wonderMailType;
u32 unk24;
u8 fill28[0x3C - 0x28];
@@ -273,7 +272,7 @@ void sub_803092C(void)
case WONDER_MAIL_TYPE_AOK:
local.unk3C[11] = 3;
break;
case 5:
case WONDER_MAIL_TYPE_THANK_YOU:
local.unk3C[11] = 4;
break;
case 1:
@@ -296,11 +295,11 @@ s32 sub_8030A74(void)
s32 index;
s32 count = 0;
switch(gUnknown_203B320->wonderMailType) {
case 0:
case WONDER_MAIL_TYPE_NONE:
for (index = 0; index < 0x20; index++)
{
struct unkStruct_203B480 *p = gUnknown_203B480 + index;
if (p->mailType != 0) {
if (p->mailType != WONDER_MAIL_TYPE_NONE) {
gUnknown_203B320->unk0[count] = index;
count++;
}
@@ -356,11 +355,11 @@ s32 sub_8030A74(void)
}
}
break;
case 5:
case WONDER_MAIL_TYPE_THANK_YOU:
for (index = 0; index < 0x20; index++)
{
struct unkStruct_203B480 *p = gUnknown_203B480 + index;
if (p->mailType == 5) {
if (p->mailType == WONDER_MAIL_TYPE_THANK_YOU) {
gUnknown_203B320->unk0[count] = index;
count++;
}
@@ -386,10 +385,10 @@ bool8 HasNoWonderMailType(u32 wonderMailType)
s32 index;
switch(wonderMailType) {
case 0:
case WONDER_MAIL_TYPE_NONE:
for (index = 0; index < 0x20; index++)
{
if (gUnknown_203B480[index].mailType != 0) {
if (gUnknown_203B480[index].mailType != WONDER_MAIL_TYPE_NONE) {
return FALSE;
}
}
@@ -435,10 +434,10 @@ bool8 HasNoWonderMailType(u32 wonderMailType)
}
break;
case 5:
case WONDER_MAIL_TYPE_THANK_YOU:
for (index = 0; index < 0x20; index++)
{
if (gUnknown_203B480[index].mailType == 5) {
if (gUnknown_203B480[index].mailType == WONDER_MAIL_TYPE_THANK_YOU) {
return FALSE;
}
}

View File

@@ -343,7 +343,7 @@ void sub_8039B58(void)
s32 temp;
if (sub_80144A4(&temp) == 0) {
if (gUnknown_203B3E8->wonderMailStatus == 0) {
if (gUnknown_203B3E8->wonderMailStatus == COMMS_GOOD) {
switch(gUnknown_203B3E8->unk24C){
case 9:
SetWonderMailMainMenuState(WONDER_MAIL_SENT);
@@ -533,7 +533,7 @@ void nullsub_54(void)
void WonderMailMainMenuCallback(void)
{
int iVar2;
int linkStatus;
struct unkStruct_803B344 *temp;
switch(gUnknown_203B3E8->state) {
@@ -601,11 +601,11 @@ void WonderMailMainMenuCallback(void)
sub_80141B4(gUnknown_80E7C48,0,0,0);
break;
case 9:
gUnknown_203B3E8->wonderMailStatus = 0;
gUnknown_203B3E8->wonderMailStatus = COMMS_GOOD;
sub_8011830();
iVar2 = sub_8037B28(gUnknown_203B3E8->unk24C);
gUnknown_203B3E8->wonderMailStatus = iVar2;
if (iVar2 == 0) {
linkStatus = sub_8037B28(gUnknown_203B3E8->unk24C);
gUnknown_203B3E8->wonderMailStatus = linkStatus;
if (linkStatus == COMMS_GOOD) {
switch(gUnknown_203B3E8->unk24C)
{
case 9:
@@ -624,14 +624,14 @@ void WonderMailMainMenuCallback(void)
gUnknown_203B3E8->wonderMailStatus = sub_8037D64(gUnknown_203B3E8->unk24C,&gUnknown_203B3E8->unk254,&gUnknown_203B3E8->unk308);
break;
}
if (gUnknown_203B3E8->wonderMailStatus == 0)
if (gUnknown_203B3E8->wonderMailStatus == COMMS_GOOD)
{
switch(gUnknown_203B3E8->unk24C)
{
case 9:
case 10:
gUnknown_203B3E8->wonderMailStatus = sub_80381F4(gUnknown_203B3E8->unk24C,&gUnknown_203B3E8->unk254,&gUnknown_203B3E8->unk308);
if (sub_800D588() != '\0') {
if (sub_800D588() != 0) {
gUnknown_203B3E8->unk3C0 = gUnknown_203B3E8->unk308;
}
else {