Skip to content

Commit f83ef11

Browse files
authored
Merge pull request #147 from Kelebek1/fragment15
fragment15
2 parents 51c4886 + 7bd6c5f commit f83ef11

31 files changed

+3937
-227
lines changed

include/global.h

+97-14
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,12 @@ typedef union unk_D_86002F58_004_000_010_02C {
4141
u32 raw;
4242
} unk_D_86002F58_004_000_010_02C; // size = 0x4
4343

44+
typedef struct unk_D_86002F58_004_000_010_024 {
45+
/* 0x00 */ u16 unk_00;
46+
/* 0x02 */ char unk02[0x6];
47+
/* 0x08 */ struct unk_D_86002F58_004_000_004* unk_08;
48+
} unk_D_86002F58_004_000_010_024; // size >= 0xC
49+
4450
typedef struct unk_D_86002F58_004_000_010 {
4551
/* 0x00 */ u8 unk_00;
4652
/* 0x01 */ u8 unk_01;
@@ -50,7 +56,7 @@ typedef struct unk_D_86002F58_004_000_010 {
5056
/* 0x18 */ s32 unk_18;
5157
/* 0x1C */ s32 unk_1C;
5258
/* 0x20 */ s32 unk_20;
53-
/* 0x24 */ u16* unk_24;
59+
/* 0x24 */ unk_D_86002F58_004_000_010_024* unk_24;
5460
/* 0x28 */ s32 unk_28;
5561
/* 0x2C */ unk_D_86002F58_004_000_010_02C unk_2C;
5662
/* 0x30 */ OSMesgQueue unk_30;
@@ -117,6 +123,7 @@ typedef struct unk_D_86002F58_004_000_054 {
117123

118124
typedef struct unk_D_86002F58_004_000_0A8 {
119125
/* 0x00 */ u16 unk_00;
126+
/* 0x02 */ u8 unk_02;
120127
/* 0x04 */ Vec3f unk_04;
121128
} unk_D_86002F58_004_000_0A8; // size = 0x10
122129

@@ -160,16 +167,17 @@ typedef struct unk_D_86002F34_000_014 {
160167
/* 0x04 */ u8* unk_04;
161168
} unk_D_86002F34_000_014; // size >= 0x8
162169

170+
typedef s32 (*func_D_86002F34_000_010)(s32, struct unk_D_86002F34_000*);
171+
163172
typedef struct unk_D_86002F34_000 {
164173
/* 0x00 */ u8 unk_00;
165174
/* 0x01 */ u8 unk_01;
166175
/* 0x02 */ u8 unk_02;
167176
/* 0x03 */ u8 unk_03;
168-
/* 0x04 */ char pad04[0x2];
169-
/* 0x06 */ s16 unk_06;
177+
/* 0x04 */ struct unk_D_86002F34_000* unk_04;
170178
/* 0x08 */ struct unk_D_86002F34_000* unk_08;
171179
/* 0x0C */ struct unk_D_86002F34_00C* unk_0C;
172-
/* 0x10 */ s32 (*unk_10)(s32, struct unk_D_86002F34_000*);
180+
/* 0x10 */ func_D_86002F34_000_010 unk_10;
173181
/* 0x14 */ unk_D_86002F34_000_014* unk_14;
174182
} unk_D_86002F34_000; // size = 0x18
175183

@@ -235,7 +243,8 @@ typedef struct unk_D_86002F34_00C {
235243
/* 0x40 */ unk_D_86002F34_00C_040 unk_40;
236244
/* 0x60 */ unk_D_86002F34_00C_060 unk_60;
237245
/* 0xCC */ unk_D_86002F34_00C_0CC unk_CC;
238-
} unk_D_86002F34_00C; // size >= 0xEC
246+
/* 0xEC */ char unkEC[0x4];
247+
} unk_D_86002F34_00C; // size = 0xF0
239248

240249
typedef struct unk_D_86002F34_alt1 {
241250
/* 0x00 */ unk_D_86002F34_000 unk_00;
@@ -249,7 +258,7 @@ typedef struct unk_D_86002F34_alt1 {
249258

250259
typedef struct unk_D_86002F34_alt2 {
251260
/* 0x00 */ unk_D_86002F34_000 unk_00;
252-
/* 0x18 */ u32 unk_18;
261+
/* 0x18 */ unk_D_86002F34_000* unk_18;
253262
} unk_D_86002F34_alt2; // size >= 0x1C
254263

255264
typedef struct unk_D_86002F34_alt3 {
@@ -270,7 +279,7 @@ typedef struct unk_D_86002F34_alt5 {
270279
/* 0x00 */ unk_D_86002F34_000 unk_00;
271280
/* 0x18 */ Vec3f unk_18;
272281
/* 0x24 */ Vec3s unk_24;
273-
} unk_D_86002F34_alt5; // size >= 0x2C
282+
} unk_D_86002F34_alt5; // size = 0x2C
274283

275284
typedef struct unk_D_86002F34_alt6 {
276285
/* 0x00 */ unk_D_86002F34_000 unk_00;
@@ -280,26 +289,26 @@ typedef struct unk_D_86002F34_alt6 {
280289
/* 0x30 */ u8 unk_30;
281290
/* 0x31 */ u8 unk_31;
282291
/* 0x32 */ s16 unk_32;
283-
} unk_D_86002F34_alt6; // size >= 0x58
292+
} unk_D_86002F34_alt6; // size = 0x34
284293

285294
typedef struct unk_D_86002F34_alt7 {
286295
/* 0x00 */ unk_D_86002F34_000 unk_00;
287296
/* 0x18 */ Gfx* unk_18;
288297
/* 0x1C */ s16 unk_1C;
289-
} unk_D_86002F34_alt7; // size >= 0x20
298+
} unk_D_86002F34_alt7; // size = 0x20
290299

291300
typedef struct unk_D_86002F34_alt8 {
292301
/* 0x00 */ unk_D_86002F34_000 unk_00;
293302
/* 0x18 */ Gfx* unk_18;
294303
/* 0x1C */ MtxF unk_1C;
295-
} unk_D_86002F34_alt8; // size >= 0x5C
304+
} unk_D_86002F34_alt8; // size = 0x5C
296305

297306
typedef struct unk_D_86002F34_alt9 {
298307
/* 0x00 */ unk_D_86002F34_000 unk_00;
299308
/* 0x18 */ Gfx* unk_18;
300309
/* 0x1C */ Vec3f unk_1C;
301310
/* 0x28 */ f32 unk_28;
302-
} unk_D_86002F34_alt9; // size >= 0x2C
311+
} unk_D_86002F34_alt9; // size = 0x2C
303312

304313
typedef struct unk_D_86002F34_alt10 {
305314
/* 0x00 */ unk_D_86002F34_000 unk_00;
@@ -331,7 +340,80 @@ typedef struct unk_D_86002F34_alt12 {
331340
/* 0x1A */ s16 unk_1A;
332341
/* 0x1C */ s16 unk_1C;
333342
/* 0x1E */ s16 unk_1E;
334-
} unk_D_86002F34_alt12; // size >= 0x20
343+
} unk_D_86002F34_alt12; // size = 0x20
344+
345+
typedef struct unk_D_86002F34_alt13 {
346+
/* 0x00 */ unk_D_86002F34_000 unk_00;
347+
/* 0x18 */ s16 unk_18;
348+
} unk_D_86002F34_alt13; // size = 0x1C
349+
350+
typedef struct unk_D_86002F34_alt14 {
351+
/* 0x00 */ unk_D_86002F34_000 unk_00;
352+
} unk_D_86002F34_alt14; // size = 0x18
353+
354+
typedef struct unk_D_86002F34_alt15 {
355+
/* 0x00 */ unk_D_86002F34_000 unk_00;
356+
} unk_D_86002F34_alt15; // size = 0x18
357+
358+
typedef struct unk_D_86002F34_alt16 {
359+
/* 0x00 */ unk_D_86002F34_000 unk_00;
360+
/* 0x18 */ u32 unk_18;
361+
} unk_D_86002F34_alt16; // size = 0x1C
362+
363+
typedef struct unk_D_86002F34_alt17 {
364+
/* 0x00 */ unk_D_86002F34_000 unk_00;
365+
} unk_D_86002F34_alt17; // size = 0x18
366+
367+
typedef struct unk_D_86002F34_alt18 {
368+
/* 0x00 */ unk_D_86002F34_000 unk_00;
369+
/* 0x18 */ u8 r;
370+
/* 0x19 */ u8 g;
371+
/* 0x1A */ u8 b;
372+
/* 0x1B */ u8 a;
373+
/* 0x1C */ s16 unk_1C;
374+
/* 0x1E */ s16 unk_1E;
375+
} unk_D_86002F34_alt18; // size = 0x20
376+
377+
typedef struct unk_D_86002F34_alt19 {
378+
/* 0x00 */ unk_D_86002F34_000 unk_00;
379+
/* 0x18 */ u8 r;
380+
/* 0x19 */ u8 g;
381+
/* 0x1A */ u8 b;
382+
} unk_D_86002F34_alt19; // size = 0x1C
383+
384+
typedef struct unk_D_86002F34_alt20 {
385+
/* 0x00 */ unk_D_86002F34_000 unk_00;
386+
/* 0x18 */ s16 unk_18;
387+
/* 0x1A */ s16 unk_1A;
388+
} unk_D_86002F34_alt20; // size = 0x1C
389+
390+
typedef struct unk_D_86002F34_alt21 {
391+
/* 0x00 */ unk_D_86002F34_000 unk_00;
392+
/* 0x18 */ s16 unk_18;
393+
/* 0x1A */ s16 unk_1A;
394+
} unk_D_86002F34_alt21; // size = 0x1C
395+
396+
typedef struct unk_D_86002F34_alt22 {
397+
/* 0x00 */ unk_D_86002F34_000 unk_00;
398+
/* 0x18 */ Vec3f unk_18;
399+
} unk_D_86002F34_alt22; // size = 0x24
400+
401+
typedef struct unk_D_86002F34_alt23 {
402+
/* 0x00 */ unk_D_86002F34_000 unk_00;
403+
/* 0x18 */ s16 unk_18;
404+
} unk_D_86002F34_alt23; // size = 0x1C
405+
406+
typedef struct unk_D_86002F34_alt24 {
407+
/* 0x00 */ unk_D_86002F34_000 unk_00;
408+
/* 0x18 */ s16 unk_18;
409+
/* 0x1A */ s16 unk_1A;
410+
/* 0x1C */ s16 unk_1C;
411+
/* 0x1E */ s16 unk_1E;
412+
/* 0x20 */ s16 unk_20;
413+
/* 0x22 */ s16 unk_22;
414+
/* 0x24 */ s32 unk_24;
415+
/* 0x28 */ Color_RGBA8_u32 unk_28;
416+
} unk_D_86002F34_alt24; // size = 0x2C
335417

336418
typedef void* (*func_unk_D_800ABE10)(s32, s32);
337419

@@ -355,11 +437,12 @@ typedef struct unk_D_86002F34 {
355437
/* 0x00 */ unk_D_86002F34_000 unk_00;
356438
/* 0x18 */ unk_D_86002F34_018* unk_18;
357439
/* 0x1C */ unk_D_86002F34_01C* unk_1C;
358-
/* 0x20 */ char unk20[0x4];
440+
/* 0x20 */ Vtx* unk_20;
359441
/* 0x24 */ u8 unk_24;
360442
/* 0x25 */ u8 unk_25;
443+
/* 0x26 */ s16 unk_26;
361444
/* 0x28 */ func_unk_D_800ABE10 unk_28;
362-
} unk_D_86002F34; // size >= 0x2C
445+
} unk_D_86002F34; // size = 0x2C
363446

364447
// Are unk_D_86002F30 and unk_D_800AC840 the same?
365448
typedef struct unk_D_86002F30 {

include/sections.h

+6
Original file line numberDiff line numberDiff line change
@@ -464,6 +464,8 @@ extern u8 common_menu1_ui_ROM_START[];
464464
extern u8 common_menu1_ui_ROM_END[];
465465
extern u8 common_menu2_ui_ROM_START[];
466466
extern u8 common_menu2_ui_ROM_END[];
467+
extern u8 snap_mode_ui_ROM_START[];
468+
extern u8 snap_mode_ui_ROM_END[];
467469
extern u8 area_select_ui_ROM_START[]; // 4D1330
468470
extern u8 area_select_ui_ROM_END[]; // 4D1330
469471
extern u8 menu_select_ui_ROM_START[]; // 4EB0C0
@@ -518,6 +520,10 @@ extern u8 badge_ui_ROM_START[];
518520
extern u8 badge_ui_ROM_END[];
519521
extern u8 gym_leader_castle_ui_ROM_START[];
520522
extern u8 gym_leader_castle_ui_ROM_END[];
523+
extern u8 _70D3A0_ROM_START[];
524+
extern u8 _70D3A0_ROM_END[];
525+
extern u8 D_70110[];
526+
extern u8 D_70290[];
521527

522528
extern u8 D_124570[];
523529

include/variables.h

+5
Original file line numberDiff line numberDiff line change
@@ -199,5 +199,10 @@ extern u32 D_304F120[];
199199

200200
extern s32 D_800FC820;
201201
extern u8* D_800FF9C0;
202+
extern s32 D_80075BCC[];
203+
204+
typedef struct unk_70D3A0 {
205+
/* 0x00 */ char unk00[0x10];
206+
} unk_70D3A0; // size = 0x10
202207

203208
#endif

linker_scripts/us/symbol_addrs.txt

+9
Original file line numberDiff line numberDiff line change
@@ -332,3 +332,12 @@ D_04008000 = 0x04008000;
332332
D_04009000 = 0x04009000;
333333
D_0400A000 = 0x0400A000;
334334
D_0400B000 = 0x0400B000;
335+
D_8790604A = 0x8790604A; // size:0x2
336+
D_87906050 = 0x87906050;
337+
D_80075BCC = 0x80075BCC;
338+
D_80075E40 = 0x80075E40;
339+
D_80075950 = 0x80075950; // size:0x1C
340+
D_8007596C = 0x8007596C;
341+
D_8690B360 = 0x8690B360; // size:0x18
342+
D_8690B390 = 0x8690B390; // size:0x24
343+
D_8690B5D0 = 0x8690B5D0; // size:0x24

0 commit comments

Comments
 (0)