Skip to content

Commit 157454b

Browse files
authored
fragment28 (#168)
1 parent 0afcaf3 commit 157454b

19 files changed

+10735
-78
lines changed

include/macros.h

+1
Original file line numberDiff line numberDiff line change
@@ -75,4 +75,5 @@
7575
#define ASSET_LOAD2(rom, arg0, arg1) (\
7676
func_800044F4(rom##_ROM_START, rom##_ROM_END, arg0, arg1) \
7777
)
78+
7879
#endif

include/sections.h

+2
Original file line numberDiff line numberDiff line change
@@ -539,6 +539,8 @@ extern u8 _70D3A0_ROM_END[];
539539
extern u8 D_70110[];
540540
extern u8 D_70290[];
541541
extern u8 D_70B10[];
542+
extern u8 _6EB340_ROM_START[];
543+
extern u8 _6EB340_ROM_END[];
542544

543545
extern u8 D_124570[];
544546

include/variables.h

+11-1
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,7 @@ extern u8 D_4007B60[];
164164
extern u8 D_4007BA8[];
165165
extern u8 D_4004448[];
166166
extern u8 D_4004FB8[];
167+
extern u8 D_4003AD0[];
167168

168169

169170

@@ -197,7 +198,8 @@ extern struct unk_D_86002F58_004_000_000 D_800AC858;
197198
extern struct unk_D_86002F58_004_000* D_8006F09C;
198199

199200
typedef struct unk_D_8006FF00 {
200-
/* 0x00 */ char unk_00[0x4];
201+
/* 0x00 */ u8 unk_00;
202+
/* 0x02 */ s16 unk_02;
201203
/* 0x04 */ char* name;
202204
/* 0x08 */ char unk_08[0x4];
203205
/* 0x0C */ u8 unk_0C;
@@ -282,4 +284,12 @@ typedef struct unk_D_70B10 {
282284
extern unk_func_88500020 D_800758E0;
283285
extern unk_func_88500020 D_800758F0;
284286

287+
typedef struct unk_D_8007596C {
288+
/* 0x00 */ u16 unk_00;
289+
/* 0x02 */ u16 unk_02;
290+
} unk_D_8007596C; // size = 0x4
291+
extern unk_D_8007596C D_8007596C[151];
292+
293+
extern u32 D_8C000000; // start of some rom area
294+
285295
#endif

linker_scripts/us/symbol_addrs.txt

+1
Original file line numberDiff line numberDiff line change
@@ -388,3 +388,4 @@ D_04006298 = 0x04006298;
388388
D_040065C0 = 0x040065C0;
389389
D_4004448 = 0x4004448;
390390
D_4004FB8 = 0x4004FB8;
391+
D_4003AD0 = 0x4003AD0;

linker_scripts/us/undefined_syms.ld

+1
Original file line numberDiff line numberDiff line change
@@ -36,3 +36,4 @@ D_04006298 = 0x04006298;
3636
D_040065C0 = 0x040065C0;
3737
D_4004448 = 0x4004448;
3838
D_4004FB8 = 0x4004FB8;
39+
D_4003AD0 = 0x4003AD0;

src/1AB70.h

+5
Original file line numberDiff line numberDiff line change
@@ -26,10 +26,15 @@ typedef struct unk_func_8001B1FC {
2626
/* 0x2C */ unk_D_80068BB0* unk_2C;
2727
} unk_func_8001B1FC; // size = 0x30
2828

29+
s32 func_8001A024(unk_D_86002F58_004_000_010*, s32, s32, s32);
30+
void func_8001A324(s32, s32, s32, s32);
31+
void func_8001ABAC(s32, s32);
32+
void* func_8001AFD8(s32, s32);
2933
void func_8001B058(void);
3034
void func_8001B0DC(unk_func_88201DA0_034_008*, s32, s32);
3135
unk_func_8001B1FC* func_8001B1FC(unk_D_86002F58_004_000_010*, s32, s32, s32, s32, s32, s32, u8*);
3236
void func_8001B2D8(unk_func_8001B1FC* arg0, unk_func_80026268_arg0* arg1, s32 arg2);
37+
void func_8001B480(void*, s32, s32);
3338
u8* func_8001B9D4(void*);
3439

3540
#endif // _1AB70_H_

src/22630.h

+5-1
Original file line numberDiff line numberDiff line change
@@ -150,11 +150,15 @@ u8 func_80024F68(s32);
150150
s32 func_80024FB0(s32 arg0);
151151
s32 func_80025084(s32);
152152
s32 func_8002513C(s32);
153-
char* func_800251B0(s32, s8*);
153+
char* func_800251B0(s32, char*);
154154
s32 func_80025370(s32);
155155
s32 func_8002539C(s32);
156156
void func_80025540(s32);
157+
s32 func_8002564C(s32, s32);
157158
void func_800256F4(s32, s32, s32);
159+
s32 func_80025840(s32);
160+
s32 func_80025988(s32);
161+
s32 func_80025AD0(s32);
158162
void func_80026E4C(s32);
159163

160164
#endif // _6BC0_H_

src/37370.c

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
#include "global.h"
1+
#include "37370.h"
22

33
#pragma GLOBAL_ASM("asm/us/nonmatchings/37370/func_80036770.s")
44

src/37370.h

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
#ifndef _37370_H_
2+
#define _37370_H_
3+
4+
#include "global.h"
5+
6+
void func_80036770(s32);
7+
8+
#endif // _37370_H_

src/3D140.h

+1
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ typedef struct amConfig {
2323
void amCreateAudioMgr(ALSynConfig*, amConfig*, u32, s32, s32);
2424
OSTask* func_8003CADC(OSTask*);
2525
void __clearAudioDMA(void);
26+
void func_8003D2B8(s32);
2627
void func_8003D32C(void);
2728
s32 func_8003D494(void);
2829
s32 func_8003D4A0(s32);

src/fragments/26/fragment26.c

+2-2
Original file line numberDiff line numberDiff line change
@@ -1706,8 +1706,8 @@ s32 func_88506CE4(unk_func_88200FA0_030_030* arg0) {
17061706
return -1;
17071707
}
17081708

1709-
void func_88506DCC(unk_func_8821421C_038_034* arg0, s32 arg1, s32 arg2, void (*arg3)(), s32 arg4, s32 arg5, s32 arg6,
1710-
MemoryPool* arg7) {
1709+
void func_88506DCC(unk_func_8821421C_038_034* arg0, s32 arg1, s32 arg2, unk_func_88200FA0_030_030_040 arg3, s32 arg4,
1710+
s32 arg5, s32 arg6, MemoryPool* arg7) {
17111711
func_885060BC(&arg0->unk_00, arg1, arg2, arg3, arg4, arg5, arg6, 1, arg7);
17121712
arg0->unk_00.unk_00.unk_1C = func_88507018;
17131713
arg0->unk_00.unk_00.unk_18 = func_8850734C;

src/fragments/26/fragment26.h

+7-4
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ struct unk_func_882025E0;
2020
struct unk_func_8850CD44;
2121
struct unk_func_8830867C_02C_048_000;
2222
struct unk_func_8850BD40;
23+
struct unk_func_88200FA0_030_030;
2324

2425
typedef s32 (*unk_func_88001300_018)(struct unk_func_88001300_000*, s32, s32);
2526
typedef s32 (*unk_func_88001300_01C)(struct unk_func_88001300_000*);
@@ -201,7 +202,7 @@ typedef struct unk_func_88503298 {
201202
/* 0x30 */ unk_func_8850878C* unk_30;
202203
} unk_func_88503298; // size = 0x34
203204

204-
typedef void (*unk_func_88200FA0_030_030_040)();
205+
typedef void (*unk_func_88200FA0_030_030_040)(s32, s32, char*, s32, s32, struct unk_func_88200FA0_030_030*);
205206

206207
typedef struct unk_func_88200FA0_030_030 {
207208
/* 0x00 */ unk_func_88001300_000 unk_00;
@@ -699,11 +700,12 @@ typedef struct unk_func_8830867C_048_048 {
699700
} unk_func_8830867C_048_048; // size = 0x28
700701

701702
typedef void (*func88500020)(unk_func_88500020*, s32, s32);
703+
typedef void (*func88500338)(unk_func_88500020* arg0, s32 arg1, s32 arg2, s32 arg3);
702704
typedef void (*func88500668)(unk_func_882025E0*, s32);
703705
typedef void (*func8850068C)(unk_func_88001300_000_000*, unk_func_88001300_000_000*);
704706
typedef void (*func885007CC)(unk_func_88001300_000*, s32);
705-
typedef void (*func88500828)(unk_func_88001300*, s32, s32);
706-
typedef void (*func885008C4)(unk_func_88001300*);
707+
typedef void (*func88500828)(unk_func_88001300_000*, s32, s32);
708+
typedef void (*func885008C4)(unk_func_88001300_000*);
707709
typedef void (*func8850093C)(s32, s32);
708710
typedef void (*func88500994)(unk_func_88500994*, s32, s32);
709711
typedef void (*func88500A3C)(unk_func_88500994*, unk_func_88001300_000*);
@@ -775,6 +777,7 @@ typedef void (*func8850CD44)(unk_func_8850CD44*, s32, MemoryPool*);
775777
typedef void (*func8850CF00)(unk_func_8850CD44*, Controller*);
776778

777779
void func_88500020(unk_func_88500020*, s32, s32);
780+
void func_88500338(unk_func_88500020* arg0, s32 arg1, s32 arg2, s32 arg3);
778781
void func_88500668(unk_func_88001300_000_000*, s32);
779782
void func_8850068C(unk_func_88001300_000_000*, unk_func_88001300_000_000*);
780783
void func_885007CC(unk_func_88001300_000*, s32);
@@ -844,7 +847,7 @@ s32 func_88506438(unk_func_88200FA0_030_030*, s32, s32);
844847
s32 func_885065E0(unk_func_88200FA0_030_030*, Controller*);
845848
void func_88506BFC(unk_func_88200FA0_030_030*, s32);
846849
s32 func_88506CE4(unk_func_88200FA0_030_030*);
847-
void func_88506DCC(unk_func_8821421C_038_034*, s32, s32, void (*)(), s32, s32, s32, MemoryPool*);
850+
void func_88506DCC(unk_func_8821421C_038_034*, s32, s32, unk_func_88200FA0_030_030_040, s32, s32, s32, MemoryPool*);
848851
void func_88506EE4(unk_func_8820BE14_02C_038*, unk_func_88200FA0_030_038*);
849852
void func_88506F1C(unk_func_8830867C_02C_034*, unk_func_88200FA0_030_038*, MemoryPool*);
850853
void func_88506F50(unk_func_8821421C_038_034*, unk_func_8821421C_038_050**);

src/fragments/28/fragment28.h

+195
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,195 @@
1+
#ifndef _FRAGMENT28_H_
2+
#define _FRAGMENT28_H_
3+
4+
#include "global.h"
5+
#include "src/fragments/26/fragment26.h"
6+
7+
typedef struct unk_func_888044BC_038_02C_02C_000 {
8+
/* 0x00 */ u8 unk_00;
9+
} unk_func_888044BC_038_02C_02C_000; // size >= 0x4
10+
11+
typedef struct unk_func_888044BC_038_02C_02C {
12+
/* 0x00 */ unk_func_888044BC_038_02C_02C_000** unk_00;
13+
/* 0x04 */ char unk04[0x4];
14+
/* 0x08 */ s32 unk_08;
15+
} unk_func_888044BC_038_02C_02C; // size >= 0x0C
16+
17+
typedef struct unk_func_888044BC_038_02C_044 {
18+
/* 0x00 */ unk_func_88001300_000 unk_00;
19+
} unk_func_888044BC_038_02C_044; // size >= 0x2C
20+
21+
typedef struct unk_func_888044BC_038_02C_000 {
22+
/* 0x00 */ unk_func_88001300_000 unk_00;
23+
/* 0x2C */ unk_func_888044BC_038_02C_02C* unk_2C;
24+
/* 0x30 */ char unk30[0x4];
25+
/* 0x34 */ u16* unk_34;
26+
/* 0x38 */ s32 unk_38;
27+
/* 0x3C */ s16 unk_3C;
28+
/* 0x3E */ s16 unk_3E;
29+
/* 0x40 */ char unk40[0x4];
30+
/* 0x44 */ unk_func_888044BC_038_02C_044* unk_44;
31+
/* 0x48 */ char unk48[0x2];
32+
/* 0x4A */ s16 unk_4A;
33+
/* 0x4C */ char unk4C[0x4];
34+
/* 0x50 */ unk_func_88001300_000_010 unk_50;
35+
/* 0x54 */ s16 unk_54;
36+
/* 0x58 */ s32 unk_58;
37+
/* 0x5C */ s32 unk_5C;
38+
/* 0x60 */ char unk60[0xC];
39+
/* 0x6C */ s32 unk_6C;
40+
} unk_func_888044BC_038_02C_000; // size = 0x70
41+
42+
typedef struct unk_func_888044BC_038_02C {
43+
/* 0x00 */ unk_func_888044BC_038_02C_000 unk_00;
44+
/* 0x70 */ unk_func_88205880_A030 unk_70;
45+
/* 0x7C */ unk_func_88205880_A030 unk_7C;
46+
/* 0x88 */ s32 unk_88;
47+
/* 0x8C */ s32 unk_8C;
48+
} unk_func_888044BC_038_02C; // size = 0x90
49+
50+
typedef struct unk_func_888044BC_038 {
51+
/* 0x00 */ unk_func_88001300_000 unk_00;
52+
/* 0x2C */ unk_func_888044BC_038_02C* unk_2C;
53+
} unk_func_888044BC_038; // size = 0x30
54+
55+
typedef struct unk_func_888044BC_03C_02C {
56+
/* 0x00 */ unk_func_88001300_000 unk_00;
57+
/* 0x2C */ s32 unk_2C;
58+
/* 0x30 */ char unk_30[8];
59+
/* 0x38 */ unk_func_88200FA0_030_038* unk_38;
60+
/* 0x3C */ s32 unk_3C;
61+
/* 0x40 */ s32 unk_40;
62+
/* 0x44 */ s32 unk_44;
63+
} unk_func_888044BC_03C_02C; // size = 0x48
64+
65+
typedef struct unk_func_888044BC_03C {
66+
/* 0x00 */ unk_func_88001300_000 unk_00;
67+
/* 0x2C */ unk_func_888044BC_03C_02C* unk_2C;
68+
} unk_func_888044BC_03C; // size = 0x30
69+
70+
typedef struct unk_func_888044BC_040_030 {
71+
/* 0x00 */ unk_func_88001300_000 unk_00;
72+
/* 0x2C */ s32 unk_2C;
73+
} unk_func_888044BC_040_030; // size = 0x30
74+
75+
typedef struct unk_func_888044BC_040 {
76+
/* 0x00 */ unk_func_88001300_000 unk_00;
77+
/* 0x2C */ char unk2C[0x4];
78+
/* 0x30 */ unk_func_888044BC_040_030* unk_30;
79+
/* 0x34 */ unk_func_88200FA0_030_030* unk_34;
80+
/* 0x38 */ unk_func_88200FA0_030_038 unk_38;
81+
} unk_func_888044BC_040; // size = 0x44
82+
83+
typedef struct unk_func_888044BC_044_02C {
84+
/* 0x00 */ unk_func_88001300_000 unk_00;
85+
/* 0x2C */ s32 unk_2C;
86+
} unk_func_888044BC_044_02C; // size = 0x30
87+
88+
typedef struct unk_func_888044BC_044 {
89+
/* 0x00 */ unk_func_88001300_000 unk_00;
90+
/* 0x2C */ unk_func_888044BC_044_02C* unk_2C;
91+
} unk_func_888044BC_044; // size = 0x30
92+
93+
typedef struct unk_func_888044BC_048 {
94+
/* 0x00 */ unk_func_88001300_000 unk_00;
95+
/* 0x2C */ unk_func_8850878C* unk_2C;
96+
} unk_func_888044BC_048; // size = 0x30
97+
98+
typedef struct unk_func_888044BC_04C_02C {
99+
/* 0x00 */ unk_func_88001300_000 unk_00;
100+
/* 0x2C */ s32 unk_2C;
101+
} unk_func_888044BC_04C_02C; // size = 0x30
102+
103+
typedef struct unk_func_888044BC_04C {
104+
/* 0x00 */ unk_func_88001300_000 unk_00;
105+
/* 0x2C */ unk_func_888044BC_04C_02C* unk_2C;
106+
} unk_func_888044BC_04C; // size = 0x30
107+
108+
typedef struct unk_func_888044BC_050 {
109+
/* 0x00 */ unk_func_88001300_000 unk_00;
110+
/* 0x2C */ unk_func_888044BC_038_02C* unk_2C;
111+
/* 0x30 */ s32 unk_30;
112+
} unk_func_888044BC_050; // size = 0x34
113+
114+
typedef struct unk_func_888044BC {
115+
/* 0x00 */ unk_func_88001300_000 unk_00;
116+
/* 0x2C */ unk_func_88500994* unk_2C;
117+
/* 0x30 */ unk_func_88500994* unk_30;
118+
/* 0x34 */ unk_func_88001300_02C* unk_34;
119+
/* 0x38 */ unk_func_888044BC_038* unk_38;
120+
/* 0x3C */ unk_func_888044BC_03C* unk_3C;
121+
/* 0x40 */ unk_func_888044BC_040* unk_40;
122+
/* 0x44 */ unk_func_888044BC_044* unk_44;
123+
/* 0x48 */ unk_func_888044BC_048* unk_48;
124+
/* 0x4C */ unk_func_888044BC_04C* unk_4C;
125+
/* 0x50 */ unk_func_888044BC_050* unk_50;
126+
/* 0x54 */ unk_func_888044BC_050* unk_54;
127+
} unk_func_888044BC; // size = 0x58
128+
129+
void func_88800020(s32 arg0, s32 arg1, s32 arg2);
130+
s32 func_888002F8(unk_func_888044BC_050* arg0, s32 arg1, s32 arg2);
131+
void func_88800A3C(s32 arg0, s32 arg1, char* arg2, UNUSED s32 arg3, s32 arg4, unk_func_888044BC_038_02C* arg5);
132+
void func_88800E20(unk_func_888044BC_038_02C* arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4, MemoryPool* arg5);
133+
s32 func_88801030(unk_func_888044BC_038_02C* arg0);
134+
void func_88801054(unk_func_888044BC_038_02C* arg0);
135+
void func_88801164(unk_func_888044BC_038* arg0, s32 arg1, s32 arg2, s32 arg3, MemoryPool* arg4);
136+
s32 func_88801214(unk_func_888044BC_038* arg0, Controller* arg1);
137+
void func_8880123C(s32 arg0, s32 arg1, s32 arg2, s32 arg3, Color_RGBA8 arg4);
138+
void func_888018E0(unk_func_888044BC_03C_02C* arg0, s32 arg1, s32 arg2);
139+
void func_8880193C(unk_func_888044BC_03C_02C* arg0, s32 arg1);
140+
void func_888019A4(unk_func_888044BC_03C_02C* arg0, s32 arg1, s32 arg2);
141+
void func_88801CB4(unk_func_888044BC_03C* arg0, s32 arg1, s32 arg2, s32 arg3, MemoryPool* arg4);
142+
void func_88801DB8(unk_func_888044BC_040_030* arg0, s32 arg1, s32 arg2);
143+
s32 func_88801E1C(unk_func_888044BC_040_030* arg0, s32 arg1, s32 arg2);
144+
void func_88802228(unk_func_888044BC_040_030* arg0);
145+
void func_88802238(s32 arg0, s32 arg1, char* arg2, UNUSED s32 arg3, UNUSED s32 arg4, unk_func_88200FA0_030_030* arg5);
146+
void func_8880231C(unk_func_888044BC_040* arg0, s32 arg1, s32 arg2, MemoryPool* arg3);
147+
s32 func_88802598(unk_func_888044BC_040* arg0, Controller* arg1);
148+
void func_888025C0(unk_func_888044BC_044_02C* arg0, s32 arg1, s32 arg2);
149+
void func_8880261C(unk_func_888044BC_044_02C* arg0, s32 arg1);
150+
void func_88802624(s32 arg0, s32 arg1, s32 arg2);
151+
void func_888026D8(s32 arg0, s32 arg1, s32 arg2);
152+
s32 func_8880276C(unk_func_888044BC_044_02C* arg0, s32 arg1, s32 arg2);
153+
void func_88802B88(unk_func_888044BC_044* arg0, s32 arg1, s32 arg2, MemoryPool* arg3);
154+
void func_88802C80(unk_func_888044BC_048* arg0, s32 arg1, s32 arg2, MemoryPool* arg3);
155+
void func_88802DAC(unk_func_888044BC_048* arg0, s32 arg1, s32 arg2);
156+
void func_88802E68(unk_func_888044BC_04C_02C* arg0, s32 arg1, s32 arg2);
157+
void func_88802EC4(unk_func_888044BC_04C_02C* arg0, s32 arg1);
158+
s32 func_88802F10(unk_func_888044BC_04C_02C* arg0, s32 arg1, s32 arg2);
159+
void func_8880316C(unk_func_888044BC_04C* arg0, s32 arg1, s32 arg2, MemoryPool* arg3);
160+
void func_888031FC(unk_func_888044BC* arg0, s32 arg1, s32 arg2, u8* arg3, MemoryPool* arg4);
161+
s32 func_88803614(void);
162+
u8 func_888038E0(void);
163+
void func_88803BCC(u8* arg0, s32 arg1);
164+
s32 func_88803C74(void);
165+
s32 func_88803ECC(void);
166+
s32 func_88803FB0(u8 arg0);
167+
void func_88804020(void);
168+
void func_8880412C(void);
169+
s32 func_88804190(void);
170+
s32 func_88804218(u8 arg0);
171+
void func_88804288(void);
172+
s32 func_8880431C(void);
173+
void func_88804370(void);
174+
s32 func_888044BC(UNUSED s32 arg0, UNUSED s32 arg1);
175+
176+
177+
s32 func_888047D0(s32 arg0);
178+
s32 func_88804B1C(s32 arg0);
179+
void func_88804E68(void);
180+
void func_88804EC8(void);
181+
void func_8880554C(void);
182+
Gfx* func_88805960(Gfx* arg0, s16 arg1, s16 arg2);
183+
Gfx* func_88805AEC(Gfx* arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4, s32 arg5, s32 arg6);
184+
void func_888069B0(void);
185+
void func_88806EAC(void);
186+
void func_88806EC8(void);
187+
void func_88806F20(Vec3f* arg0, Vec3f* arg1);
188+
void func_88807090(void);
189+
s32 func_888071C8(s32 arg0);
190+
s32 func_8880725C(UNUSED u8 arg0);
191+
s32 func_88807AC0(void);
192+
void func_88807D04(s32 arg0, MainPoolState* arg1, UNUSED s32 arg2, s32 arg3, s32 arg4, char* arg5, char** arg6);
193+
void func_8880812C(void);
194+
195+
#endif // _FRAGMENT28_H_

0 commit comments

Comments
 (0)