libultra symbols

This commit is contained in:
Alejandro Javier Asenjo Nitti
2023-10-14 04:00:11 -03:00
parent a7c56fbb06
commit 8c32a98ba6
30 changed files with 85 additions and 101 deletions
+32 -1
View File
@@ -1,3 +1,34 @@
bootproc = 0x80004DA8;
D_800C90F0 = 0x800C90F0;
D_800D934C = 0x800D934C; // force_migration:True
D_800D934C = 0x800D934C; // force_migration:True
osContInit = 0x8001FFC0;
osRecvMesg = 0x800205E0;
osSendMesg = 0x80020720;
osContStartQuery = 0x80020870;
osContGetQuery = 0x800208F4;
guPerspectiveF = 0x80020F40;
guPerspective = 0x80021170;
guLookAtF = 0x800211D0;
guLookAt = 0x80021488;
guOrthoF = 0x80021500;
guOrtho = 0x80021654;
osInvalICache = 0x800216C0;
osInvalDCache = 0x80021740;
osPiStartDma = 0x800217F0;
osViBlack = 0x80021900;
osWritebackDCacheAll = 0x80021970;
osViSwapBuffer = 0x800219A0;
osViRepeatLine = 0x800219F0;
osViSetMode = 0x80021AC0;
osViSetSpecialFeatures = 0x80021B30;
osCreateMesgQueue = 0x80021CF0;
osSetEventMesg = 0x80021D20;
osViSetEvent = 0x80021D90;
osSpTaskYielded = 0x80021E00;
osSpTaskYield = 0x80021E80;
osDpSetStatus = 0x80022190;
osCreateThread = 0x800221A0;
osStartThread = 0x800222F0;
osCreateViManager = 0x80022440;
osSetThreadPri = 0x80022A80;
osGetTime = 0x80023000;
-16
View File
@@ -6,23 +6,7 @@
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2BDF0/func_8002B28C.s")
// Matches with IDO 5.3/7.1 -O1 -g0
#ifdef NON_MATCHING
void func_8002B2C0(s32* arg0, s32* arg1, s32 arg2, u32 arg3) {
s32 pad;
arg3 = arg2;
arg2--;
while (arg3 > 0) {
arg3 = arg2;
arg2--;
*arg0++ = *arg1++;
}
}
#else
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2BDF0/func_8002B2C0.s")
#endif
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2BDF0/func_8002B2F4.s")
-31
View File
@@ -1,9 +1,5 @@
#include "common.h"
// One -01 -g0, likely part of libultra
s32 func_8002DE78(s32, s32, s32);
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2C700/func_8002BB00.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2C700/func_8002BB7C.s")
@@ -26,31 +22,4 @@ s32 func_8002DE78(s32, s32, s32);
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2C700/func_8002C698.s")
typedef struct {
char pad_0[0x4];
u8 unk4;
} Unkstruct_func_8002C6B8_1;
typedef struct {
char pad_0[0x4];
s8 unk4;
char pad_5;
s16 unk6;
char pad_[0x4];
s32 unk12;
} Unkstruct_func_8002C6B8_2;
// matches with -O1 -g0 IDO 5.3/7.1
#ifdef NON_MATCHING
s32 func_8002C6B8(Unkstruct_func_8002C6B8_1* arg0) {
Unkstruct_func_8002C6B8_2 temp;
temp.unk4 = arg0->unk4;
temp.unk12 = 0;
temp.unk6 = 0;
func_8002DE78(&temp, 16, 1);
return 0;
}
#else
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2C700/func_8002C6B8.s")
#endif
+2 -2
View File
@@ -1,5 +1,5 @@
#include "common.h"
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/gu/lookat/func_800211D0.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/gu/lookat/guLookAtF.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/gu/lookat/func_80021488.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/gu/lookat/guLookAt.s")
+2 -2
View File
@@ -1,5 +1,5 @@
#include "common.h"
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/gu/ortho/func_80021500.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/gu/ortho/guOrthoF.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/gu/ortho/func_80021654.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/gu/ortho/guOrtho.s")
+2 -2
View File
@@ -1,5 +1,5 @@
#include "common.h"
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/contquery/func_80020870.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/contquery/osContStartQuery.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/contquery/func_800208F4.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/contquery/osContGetQuery.s")
+1 -1
View File
@@ -1,6 +1,6 @@
#include "common.h"
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/controller/func_8001FFC0.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/controller/osContInit.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/controller/func_800201B8.s")
+1 -1
View File
@@ -1,3 +1,3 @@
#include "common.h"
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/dpsetstat/func_80022190.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/dpsetstat/osDpSetStatus.s")
+1 -1
View File
@@ -1,3 +1,3 @@
#include "common.h"
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/pidma/func_800217F0.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/pidma/osPiStartDma.s")
+1 -1
View File
@@ -1,3 +1,3 @@
#include "common.h"
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/sptaskyield/func_80021E80.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/sptaskyield/osSpTaskYield.s")
+1 -1
View File
@@ -1,3 +1,3 @@
#include "common.h"
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/sptaskyielded/func_80021E00.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/sptaskyielded/osSpTaskYielded.s")
+1 -1
View File
@@ -1,3 +1,3 @@
#include "common.h"
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/viblack/func_80021900.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/viblack/osViBlack.s")
+1 -1
View File
@@ -1,5 +1,5 @@
#include "common.h"
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/vimgr/func_80022440.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/vimgr/osCreateViManager.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/vimgr/func_800225C8.s")
+1 -1
View File
@@ -1,3 +1,3 @@
#include "common.h"
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/virepeatline/func_800219F0.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/virepeatline/osViRepeatLine.s")
+1 -1
View File
@@ -1,3 +1,3 @@
#include "common.h"
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/visetevent/func_80021D90.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/visetevent/osViSetEvent.s")
+1 -1
View File
@@ -1,3 +1,3 @@
#include "common.h"
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/visetmode/func_80021AC0.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/visetmode/osViSetMode.s")
+1 -1
View File
@@ -1,3 +1,3 @@
#include "common.h"
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/visetspecial/func_80021B30.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/visetspecial/osViSetSpecialFeatures.s")
+1 -1
View File
@@ -1,3 +1,3 @@
#include "common.h"
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/viswapbuf/func_800219A0.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/viswapbuf/osViSwapBuffer.s")
+1 -1
View File
@@ -1,3 +1,3 @@
#include "common.h"
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/os/createmesgqueue/func_80021CF0.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/os/createmesgqueue/osCreateMesgQueue.s")
+1 -1
View File
@@ -1,3 +1,3 @@
#include "common.h"
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/os/createthread/func_800221A0.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/os/createthread/osCreateThread.s")
+1 -1
View File
@@ -1,3 +1,3 @@
#include "common.h"
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/os/gettime/func_80023000.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/os/gettime/osGetTime.s")
+1 -1
View File
@@ -1,3 +1,3 @@
#include "common.h"
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/os/recvmesg/func_800205E0.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/os/recvmesg/osRecvMesg.s")
+1 -1
View File
@@ -1,3 +1,3 @@
#include "common.h"
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/os/sendmesg/func_80020720.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/os/sendmesg/osSendMesg.s")
+1 -1
View File
@@ -1,3 +1,3 @@
#include "common.h"
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/os/seteventmesg/func_80021D20.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/os/seteventmesg/osSetEventMesg.s")
+1 -1
View File
@@ -1,3 +1,3 @@
#include "common.h"
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/os/setthreadpri/func_80022A80.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/os/setthreadpri/osSetThreadPri.s")
+1 -1
View File
@@ -1,3 +1,3 @@
#include "common.h"
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/os/startthread/func_800222F0.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/os/startthread/osStartThread.s")
+7 -7
View File
@@ -2,8 +2,8 @@
extern s32 func_800071FC(s32*);
extern s32 func_800072E0(s32*);
extern void func_8001FFC0(s32*, u8*, s32*);
extern s32 func_80020720(s32*, s32, s32);
extern void osContInit(s32*, u8*, s32*);
extern s32 osSendMesg(s32*, s32, s32);
extern s8 D_800DD8B0;
extern s8 D_800DD8B1;
@@ -24,7 +24,7 @@ extern s32 D_80144F60;
void func_8000291C(void) {
u8 sp1F;
func_8001FFC0(&D_800E2128, &sp1F, &D_800DD8F0);
osContInit(&D_800E2128, &sp1F, &D_800DD8F0);
D_800DD8B0 = sp1F & 1;
D_800DD8B8 = 0;
D_800DD8B1 = (sp1F >> 1) & 1;
@@ -41,18 +41,18 @@ void func_8000291C(void) {
void func_80002BE8(void) {
if ((D_80137E80 == 0) && (func_800072E0(&D_80144F60) == 0)) {
func_80020720(&D_800E2318, 15, 0);
osSendMesg(&D_800E2318, 15, 0);
return;
}
func_80020720(&D_800E2318, 14, 0);
osSendMesg(&D_800E2318, 14, 0);
}
void func_80002C50(void) {
if ((D_80137E80 == 0) && (func_800071FC(&D_80144F60) == 0)) {
func_80020720(&D_800E2318, 15, 0);
osSendMesg(&D_800E2318, 15, 0);
return;
}
func_80020720(&D_800E2318, 14, 0);
osSendMesg(&D_800E2318, 14, 0);
}
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/3440/func_80002CB8.s")
+10 -10
View File
@@ -11,11 +11,11 @@ s32 func_80003A50(void);
void func_80003EE0(void);
void func_80004ABC(s32);
void func_80008018(void);
void func_800221A0(s32*, s32, void*, s32, s32*, s32);
void func_800222F0(s32*);
void func_80022440(s32);
void osCreateThread(s32*, s32, void*, s32, s32*, s32);
void osStartThread(s32*);
void osCreateViManager(s32);
void func_800227A0(s32, s32*, s32*, s32);
void func_80022A80(s32, s32);
void osSetThreadPri(s32, s32);
s32 func_8001EF10(void);
s32 func_80022B60(void);
@@ -49,14 +49,14 @@ s32 func_80022B60(void);
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/4650/func_80004ABC.s")
void func_80004D00(s32 arg0) {
func_80022440(0xFE);
osCreateViManager(0xFE);
func_80003EE0();
func_800034E8(1);
func_800227A0(0x96, &D_800E2010, &D_800E2028, 0x32);
func_800221A0(&D_8013A040, 3, &func_80004ABC, arg0, &D_8013B1F0, 0x64);
func_800222F0(&D_8013A040);
osCreateThread(&D_8013A040, 3, &func_80004ABC, arg0, &D_8013B1F0, 0x64);
osStartThread(&D_8013A040);
func_80008018();
func_80022A80(0, 0);
osSetThreadPri(0, 0);
loop_1:
goto loop_1;
}
@@ -65,6 +65,6 @@ void bootproc(void) {
func_8001EF10();
func_80022B60();
func_80003A50();
func_800221A0(&D_80138E90, 1, &func_80004D00, 0, &D_8013A040, 0xFF);
func_800222F0(&D_80138E90);
osCreateThread(&D_80138E90, 1, &func_80004D00, 0, &D_8013A040, 0xFF);
osStartThread(&D_80138E90);
}
+4 -4
View File
@@ -15,16 +15,16 @@ extern s32 D_8013B3B4;
extern void func_80005680(s32, s32);
extern f32 func_8001FBE8(f32);
extern u64 func_80023000(void);
extern u64 osGetTime(void);
f32 func_80004E20(f32 arg0, f32 arg1) {
return arg0 - ((s32)(arg0 / arg1) * arg1);
}
void func_80004E4C(void) {
D_8013B3A4 = (s32)func_80023000() % 30000;
D_8013B3A8 = (s32)func_80023000() % 30000;
D_8013B3AC = (s32)func_80023000() % 30000;
D_8013B3A4 = (s32)osGetTime() % 30000;
D_8013B3A8 = (s32)osGetTime() % 30000;
D_8013B3AC = (s32)osGetTime() % 30000;
}
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/5A20/func_80004EB0.s")
+6 -6
View File
@@ -7,9 +7,9 @@ typedef struct {
s16 unk9D2;
} UnkStruct_D_80145360;
void func_80021CF0(s32*, s32*, s32);
void func_800221A0(UnkStruct_D_80145360*, s32, s32*, s32, s32*, s32);
void func_800222F0(UnkStruct_D_80145360*);
void osCreateMesgQueue(s32*, s32*, s32);
void osCreateThread(UnkStruct_D_80145360*, s32, s32*, s32, s32*, s32);
void osStartThread(UnkStruct_D_80145360*);
extern UnkStruct_D_80145360 D_80145360;
extern s32 D_80145D10;
@@ -100,7 +100,7 @@ void func_80008018(void) {
D_80145360.unk9CC = (osMemSize | 0x80000000) + 0xFFFDA800;
D_80145360.unk9D0 = 0x140;
D_80145360.unk9D2 = 0xF0;
func_80021CF0(&D_80145D10, &D_80145D28, 1);
func_800221A0(&D_80145360, 2, &func_80007D58, 0, &D_80145D10, 0x7F);
func_800222F0(&D_80145360);
osCreateMesgQueue(&D_80145D10, &D_80145D28, 1);
osCreateThread(&D_80145360, 2, &func_80007D58, 0, &D_80145D10, 0x7F);
osStartThread(&D_80145360);
}