mirror of
https://github.com/izzy2lost/2ship2harkinian-Android.git
synced 2026-06-19 01:20:08 -07:00
First batch of functions
This commit is contained in:
+1
-1
@@ -1774,7 +1774,7 @@ s32 func_8010A0A4(GlobalContext* globalCtx);
|
||||
// void func_8010A0F0(void);
|
||||
// void func_8010A164(void);
|
||||
// void func_8010A194(void);
|
||||
// void func_8010A208(void);
|
||||
s32 func_8010A208(GlobalContext* play);
|
||||
// void func_8010A238(void);
|
||||
// void func_8010A2AC(void);
|
||||
void func_8010A2DC(GlobalContext* globalCtx);
|
||||
|
||||
+1
-1
@@ -983,7 +983,7 @@ extern u8 D_801BDBC8;
|
||||
// extern UNK_TYPE2 D_801BEBFA;
|
||||
// extern UNK_TYPE2 D_801BEBFC;
|
||||
// extern UNK_TYPE2 D_801BEC10;
|
||||
extern UNK_PTR D_801BEC14;
|
||||
extern MinimapList D_801BEC14;
|
||||
// extern UNK_TYPE4 D_801BEC1C;
|
||||
// extern UNK_TYPE4 D_801BEC20;
|
||||
// extern UNK_TYPE1 D_801BEC24;
|
||||
|
||||
@@ -0,0 +1,82 @@
|
||||
#ifndef Z64_MAP_D_H
|
||||
#define Z64_MAP_D_H
|
||||
#include "ultra64.h"
|
||||
|
||||
/* z_map_data */
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ s32 unk0;
|
||||
/* 0x04 */ u8 unk4;
|
||||
/* 0x05 */ u8 unk5;
|
||||
/* 0x06 */ u8 unk6;
|
||||
/* 0x07 */ u8 unk7;
|
||||
/* 0x08 */ u8 unk8;
|
||||
/* 0x09 */ u8 unk9;
|
||||
/* 0x0A */ s16 unkA;
|
||||
} T_D_801BED4C; // size 0x0C?
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ u8 unk0;
|
||||
/* 0x01 */ u8 unk1;
|
||||
/* 0x02 */ s16 unk2;
|
||||
/* 0x04 */ s16 unk4;
|
||||
/* 0x06 */ u8 unk6;
|
||||
/* 0x07 */ u8 unk7;
|
||||
/* 0x08 */ s16 unk8;
|
||||
} T_D_801BED88; // size 0x0A
|
||||
|
||||
/* z_map_disp */
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ s16 unk0;
|
||||
/* 0x00 */ s16 unk2;
|
||||
/* 0x00 */ s16 unk4;
|
||||
/* 0x00 */ s16 unk6;
|
||||
} T_D_801BEBB8_unk48;
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ MinimapList* unk0; //unk0 -> sub1 -> s16[5]
|
||||
/* 0x04 */ s32 unk4;
|
||||
/* 0x08 */ char unk8[4];
|
||||
/* 0x0C */ s16 unkC;
|
||||
/* 0x0E */ s16 unkE;
|
||||
/* 0x10 */ s32 unk10;
|
||||
/* 0x14 */ s32 unk14; //unk4 same type as unk14
|
||||
/* 0x18 */ s32 unk18;
|
||||
/* 0x1C */ s16 unk1C; //same as 0C
|
||||
/* 0x1E */ s16 unk1E; //same as 0E
|
||||
/* 0x20 */ char unk20[4];
|
||||
/* 0x24 */ s32 unk24;
|
||||
/* 0x28 */ char unk28[8];
|
||||
/* 0x30 */ s16 unk30; //scene minBounds.x
|
||||
/* 0x32 */ s16 unk32; //scene minBounds.z
|
||||
/* 0x34 */ s16 unk34; //scene boundsWidth.x
|
||||
/* 0x36 */ s16 unk36; //scene boundsWidth.z
|
||||
/* 0x38 */ s16 unk38; //scene boundsMidpoint.x
|
||||
/* 0x3A */ s16 unk3A; //scene boundsMidpoint.z
|
||||
/* 0x3C */ s16* unk3C;
|
||||
/* 0x40 */ s16 unk40;
|
||||
/* 0x42 */ char unk42[2];
|
||||
/* 0x44 */ s16 unk44;
|
||||
/* 0x48 */ s16* unk48;
|
||||
} T_D_801BEBB8;
|
||||
|
||||
typedef struct{
|
||||
/* 0x00 */ u16 unk0;
|
||||
/* 0x02 */ s16 unk2;
|
||||
/* 0x04 */ char unk4[2];
|
||||
/* 0x06 */ s16 unk6;
|
||||
/* 0x08 */ u16 unk8;
|
||||
} T_func_801030F4; //probably above, size 0x0A?
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ s16 unk0; //scene
|
||||
/* 0x02 */ s16 unk2;
|
||||
} T_D_801BEC5C;
|
||||
|
||||
/* z_map_data */
|
||||
s32 func_801096D4(s32 arg0);
|
||||
void func_8010983C(s32 arg0, s32 *arg1);
|
||||
void func_801097C8(s32 arg0, s32* arg1, s32* arg2);
|
||||
void func_80109754(s32 arg0, s32 *arg1, s32 *arg2);
|
||||
#endif
|
||||
+1
-1
@@ -469,7 +469,7 @@ typedef struct {
|
||||
} Path; // size = 0x8
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ UNK_TYPE2 unk0;
|
||||
/* 0x00 */ u16 unk0;
|
||||
/* 0x02 */ UNK_TYPE2 unk2;
|
||||
/* 0x04 */ UNK_TYPE2 unk4;
|
||||
/* 0x06 */ UNK_TYPE2 unk6;
|
||||
|
||||
+132
-19
@@ -1,44 +1,157 @@
|
||||
#include "global.h"
|
||||
#include "z64map.h"
|
||||
|
||||
extern T_D_801BED4C D_801BED4C[];
|
||||
extern T_D_801BED88 D_801BED88[];
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/code/z_map_data/func_801094A0.s")
|
||||
// extern ? D_801BED40;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/code/z_map_data/func_801094C8.s")
|
||||
// void func_801094A0(s32 arg0, ?* arg1) {
|
||||
// *arg1 = (unaligned s32) *((arg0 * 4) + &D_801BED40);
|
||||
// }
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/code/z_map_data/func_801094F8.s")
|
||||
void func_801094C8(s32 arg0, s32 *arg1, s32 *arg2) {
|
||||
*arg1 = D_801BED4C[arg0].unk4;
|
||||
*arg2 = D_801BED4C[arg0].unk5;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/code/z_map_data/func_80109528.s")
|
||||
void func_801094F8(s32 arg0, s32* arg1, s32* arg2) {
|
||||
*arg1 = D_801BED4C[arg0].unk6;
|
||||
*arg2 = D_801BED4C[arg0].unk7;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/code/z_map_data/func_8010954C.s")
|
||||
void func_80109528(s32 arg0, s32* arg1) {
|
||||
*arg1 = D_801BED4C[arg0].unk8;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/code/z_map_data/func_8010956C.s")
|
||||
u8 func_8010954C(s32 arg0) {
|
||||
return D_801BED4C[arg0].unk9;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/code/z_map_data/func_8010958C.s")
|
||||
s16 func_8010956C(s32 arg0) {
|
||||
return D_801BED4C[arg0].unkA;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/code/z_map_data/func_801095AC.s")
|
||||
s32 func_8010958C(s32 arg0) {
|
||||
return D_801BED4C[arg0].unk0;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/code/z_map_data/func_801095DC.s")
|
||||
void func_801095AC(s32 arg0, s32 *arg1, s32 *arg2) {
|
||||
*arg1 = D_801BED88[arg0-0x100].unk0;
|
||||
*arg2 = D_801BED88[arg0-0x100].unk1;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/code/z_map_data/func_8010960C.s")
|
||||
void func_801095DC(s32 arg0, s32* arg1, s32* arg2) {
|
||||
*arg1 = D_801BED88[arg0-0x100].unk2;
|
||||
*arg2 = D_801BED88[arg0-0x100].unk4;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/code/z_map_data/func_80109630.s")
|
||||
void func_8010960C(s32 arg0, s32* arg1) {
|
||||
*arg1 = D_801BED88[arg0-0x100].unk6;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/code/z_map_data/func_80109650.s")
|
||||
u8 func_80109630(s32 arg0) {
|
||||
return D_801BED88[arg0-0x100].unk7;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/code/z_map_data/func_80109670.s")
|
||||
s16 func_80109650(s32 arg0) {
|
||||
return D_801BED88[arg0-0x100].unk8;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/code/z_map_data/func_801096D4.s")
|
||||
s32 func_80109670(s32 arg0) {
|
||||
s32 cond = arg0 - 0x100;
|
||||
s32 var_s1 = 0;
|
||||
s32 i;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/code/z_map_data/func_80109714.s")
|
||||
for(i = 1; i < cond + 1; i++) {
|
||||
var_s1 += func_801096D4((i-1) + 0x100);
|
||||
}
|
||||
return var_s1;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/code/z_map_data/func_80109754.s")
|
||||
s32 func_801096D4(s32 arg0) {
|
||||
return (D_801BED88[arg0 - 0x100].unk0 * D_801BED88[arg0 - 0x100].unk1) / 2;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/code/z_map_data/func_801097C8.s")
|
||||
s32 func_80109714(s32 arg0) {
|
||||
if ((arg0 >= 0) && (arg0 < 5)) {
|
||||
return 0;
|
||||
}
|
||||
if ((arg0 >= 0x100) && (arg0 < 0x162)) {
|
||||
return 1;
|
||||
}
|
||||
return 2;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/code/z_map_data/func_8010983C.s")
|
||||
void func_80109754(s32 arg0, s32 *arg1, s32 *arg2) {
|
||||
switch (func_80109714(arg0)) {
|
||||
case 0:
|
||||
func_801094C8(arg0, arg1, arg2);
|
||||
return;
|
||||
case 1:
|
||||
func_801095AC(arg0, arg1, arg2);
|
||||
return;
|
||||
default:
|
||||
*arg2 = 0;
|
||||
*arg1 = 0;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/code/z_map_data/func_801098A0.s")
|
||||
void func_801097C8(s32 arg0, s32* arg1, s32* arg2) {
|
||||
switch (func_80109714(arg0)) {
|
||||
case 0:
|
||||
func_801094F8(arg0, arg1, arg2);
|
||||
return;
|
||||
case 1:
|
||||
func_801095DC(arg0, arg1, arg2);
|
||||
return;
|
||||
default:
|
||||
*arg2 = 0;
|
||||
*arg1 = 0;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/code/z_map_data/func_80109908.s")
|
||||
void func_8010983C(s32 arg0, s32 *arg1) {
|
||||
switch(func_80109714(arg0)){
|
||||
default:
|
||||
*arg1 = 0;
|
||||
return;
|
||||
case 0:
|
||||
*arg1 = func_8010956C(arg0);
|
||||
return;
|
||||
case 1:
|
||||
*arg1 = func_80109650(arg0);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
void func_801098A0(s32 arg0, s32* arg1) {
|
||||
switch (func_80109714(arg0)) {
|
||||
case 0:
|
||||
func_80109528(arg0, arg1);
|
||||
return;
|
||||
case 1:
|
||||
func_8010960C(arg0, arg1);
|
||||
return;
|
||||
default:
|
||||
*arg1 = 0;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
u8 func_80109908(s32 arg0) {
|
||||
switch (func_80109714(arg0)) {
|
||||
case 0:
|
||||
return func_8010954C(arg0);
|
||||
case 1:
|
||||
return func_80109630(arg0);
|
||||
default:
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/code/z_map_data/func_80109964.s")
|
||||
|
||||
|
||||
+698
-6
File diff suppressed because it is too large
Load Diff
@@ -1024,7 +1024,7 @@
|
||||
0x801BEBFA:("D_801BEBFA","UNK_TYPE2","",0x2),
|
||||
0x801BEBFC:("D_801BEBFC","UNK_TYPE2","",0x2),
|
||||
0x801BEC10:("D_801BEC10","UNK_TYPE2","",0x2),
|
||||
0x801BEC14:("D_801BEC14","UNK_PTR","",0x4),
|
||||
0x801BEC14:("D_801BEC14","MinimapList","",0x8),
|
||||
0x801BEC1C:("D_801BEC1C","UNK_TYPE4","",0x4),
|
||||
0x801BEC20:("D_801BEC20","UNK_TYPE4","",0x4),
|
||||
0x801BEC24:("D_801BEC24","UNK_TYPE1","",0x1),
|
||||
|
||||
Reference in New Issue
Block a user