through sub_80E6BF8

This commit is contained in:
PikalaxALT 2017-11-03 20:59:29 -04:00
parent af197ccd3b
commit ca2bc94c2b
7 changed files with 70 additions and 75 deletions

View File

@ -5,65 +5,6 @@
.text
thumb_func_start sub_80E6BE8
sub_80E6BE8: @ 80E6BE8
push {lr}
ldr r0, =sub_80E715C
bl sub_80B37D4
pop {r0}
bx r0
.pool
thumb_func_end sub_80E6BE8
thumb_func_start sub_80E6BF8
sub_80E6BF8: @ 80E6BF8
push {r4,lr}
ldr r2, =gUnknown_03001134
ldr r0, =gSaveBlock1Ptr
ldr r1, [r0]
ldr r3, =0x00001a9c
adds r0, r1, r3
str r0, [r2]
ldr r2, =gUnknown_03001138
ldr r4, =0x000027cc
adds r0, r1, r4
str r0, [r2]
ldr r2, =gUnknown_0300113C
ldr r3, =0x00002b50
adds r0, r1, r3
str r0, [r2]
ldr r2, =gUnknown_03001140
ldr r4, =0x00002e28
adds r0, r1, r4
str r0, [r2]
ldr r2, =gUnknown_03001144
ldr r3, =0x00002e68
adds r0, r1, r3
str r0, [r2]
ldr r2, =gUnknown_03001148
ldr r0, =gUnknown_02039F9C
str r0, [r2]
ldr r2, =gUnknown_0300114C
ldr r0, =gSaveBlock2Ptr
ldr r0, [r0]
ldr r4, =0x0000064c
adds r3, r0, r4
str r3, [r2]
ldr r2, =gUnknown_03001150
ldr r4, =0x00003b58
adds r1, r4
str r1, [r2]
ldr r1, =gUnknown_03001154
adds r0, 0xDC
str r0, [r1]
ldr r0, =gUnknown_03001158
str r3, [r0]
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end sub_80E6BF8
thumb_func_start sub_80E6CA0
sub_80E6CA0: @ 80E6CA0
push {r4,r5,lr}

12
include/cable_club.h Normal file
View File

@ -0,0 +1,12 @@
#ifndef GUARD_CABLE_CLUB_H
#define GUARD_CABLE_CLUB_H
// Exported type declarations
// Exported RAM declarations
// Exported ROM declarations
void sub_80B37D4(TaskFunc taskFunc);
#endif //GUARD_CABLE_CLUB_H

View File

@ -192,7 +192,8 @@ struct SaveBlock2
/*0xAC*/ u32 encryptionKey;
// TODO: fix and verify labels
/*0xB0*/ u8 field_B0[316];
/*0xB0*/ u8 field_B0[0x2c];
/*0xDC*/ u8 field_0DC[0x110];
/*0x1EC*/ struct BerryCrush berryCrush;
/*0x1FC*/ struct PokemonJumpResults pokeJump;
/*0x20C*/ struct BerryPickingResults berryPick;
@ -579,13 +580,12 @@ struct SaveBlock1
/*0x2BB0*/ u16 unk2BB0[6];
/*0x2BBC*/ u16 unk2BBC[6];
/*0x2BC8*/ u16 unk2BC8[6];
/*0x2BD4*/ u16 unk2BD4[3];
/*0x2BD4*/ u16 unk2BD4[6];
/*0x2BE0*/ struct MailStruct mail[16];
/*0x2E20*/ u8 additionalPhrases[5]; // bitfield for 33 additional phrases in easy chat system
/*0x2E25*/ u8 unk2E25[3]; // possibly padding?
/*0x2E28*/ OldMan oldMan;
/*0x2e64*/ struct EasyChatPair easyChatPairs[5]; //Dewford trend [0] and some other stuff
/*0x2e8c*/ u8 filler_2E8C[0x4];
/*0x2e90*/ struct ContestWinner contestWinners[13]; // 0 - 5 used in contest hall, 6 - 7 unused?, 8 - 12 museum
/*0x3030*/ struct DaycareData daycare;
/*0x3150*/ struct LinkBattleRecord linkBattleRecords[5];

19
include/record_mixing.h Normal file
View File

@ -0,0 +1,19 @@
#ifndef GUARD_RECORD_MIXING_H
#define GUARD_RECORD_MIXING_H
// Exported type declarations
struct DayCareMailRecordMixing {
struct MailStruct mail;
u8 OT_name[OT_NAME_LENGTH + 1];
u8 monName[11];
u8 language_maybe : 4;
u8 unknown : 4;
u32 stepsTaken;
};
// Exported RAM declarations
// Exported ROM declarations
#endif //GUARD_RECORD_MIXING_H

View File

@ -146,6 +146,7 @@ SECTIONS {
asm/naming_screen.o(.text);
src/money.o(.text);
asm/contest_effect.o(.text);
src/record_mixing.o(.text);
asm/record_mixing.o(.text);
src/secret_base.o(.text);
src/tv.o(.text);

View File

@ -1,6 +1,9 @@
// Includes
#include "global.h"
#include "task.h"
#include "cable_club.h"
#include "record_mixing.h"
// Static type declarations
@ -9,10 +12,10 @@
IWRAM_DATA bool8 gUnknown_03001130;
IWRAM_DATA struct SecretBaseRecord *gUnknown_03001134;
IWRAM_DATA TVShow *gUnknown_03001138;
IWRAM_DATA struct UnknownSaveStruct2ABC *gUnknown_0300113C;
IWRAM_DATA PokeNews *gUnknown_0300113C;
IWRAM_DATA OldMan *gUnknown_03001140;
IWRAM_DATA struct EasyChatPair *gUnknown_03001144;
IWRAM_DATA struct DaycareData *gUnknown_03001148;
IWRAM_DATA struct DayCareMailRecordMixing *gUnknown_03001148;
IWRAM_DATA void *gUnknown_0300114C; // gSaveBlock2Ptr->field_64C
IWRAM_DATA LilycoveLady *gUnknown_03001150;
IWRAM_DATA void *gUnknown_03001154; // gSaveBlock2Ptr->field_0DC;
@ -21,8 +24,37 @@ IWRAM_DATA u32 gUnknown_0300115C;
IWRAM_DATA u8 gUnknown_03001160[8];
IWRAM_DATA u32 gUnknown_03001168[3];
EWRAM_DATA struct DayCareMailRecordMixing gUnknown_02039F9C[2] = {};
EWRAM_DATA struct {
/*0x0000*/ u8 filler_0000[0x5110];
} *gUnknown_0203A014 = NULL;
EWRAM_DATA struct {
/*0x0000*/ u8 filler_0000[0x1444];
} *gUnknown_0203A018 = NULL;
// Static ROM declarations
void sub_80E715C(u8 taskId);
// .rodata
// .text
void sub_80E6BE8(void)
{
sub_80B37D4(sub_80E715C);
}
void sub_80E6BF8(void)
{
gUnknown_03001134 = gSaveBlock1Ptr->secretBases;
gUnknown_03001138 = gSaveBlock1Ptr->tvShows;
gUnknown_0300113C = gSaveBlock1Ptr->pokeNews;
gUnknown_03001140 = &gSaveBlock1Ptr->oldMan;
gUnknown_03001144 = gSaveBlock1Ptr->easyChatPairs;
gUnknown_03001148 = gUnknown_02039F9C;
gUnknown_0300114C = gSaveBlock2Ptr->field_64C;
gUnknown_03001150 = &gSaveBlock1Ptr->lilycoveLady;
gUnknown_03001154 = gSaveBlock2Ptr->field_0DC;
gUnknown_03001158 = gSaveBlock2Ptr->field_64C;
}

View File

@ -1033,17 +1033,7 @@ gUnknown_02039F94: @ 2039F94
.space 0x4
.include "src/money.o"
.align 2
gUnknown_02039F9C: @ 2039F9C
.space 0x78
gUnknown_0203A014: @ 203A014
.space 0x4
gUnknown_0203A018: @ 203A018
.space 0x4
.include "src/record_mixing.o"
.include "src/secret_base.o"
.include "src/tv.o"