mirror of
https://github.com/HarbourMasters/Starship
synced 2026-05-23 06:54:39 -04:00
Identified and organized libultra (#15)
* libultra sorted out * missed some things * forgot some things * one more thing * not actually libultra * also split out the data into three sections * finer split * parameter is a thing, apparently
This commit is contained in:
@@ -187,33 +187,39 @@ $(shell mkdir -p $(BUILD_DIR)/linker_scripts/$(VERSION) $(BUILD_DIR)/linker_scri
|
||||
# directory flags
|
||||
|
||||
# per-file flags
|
||||
|
||||
build/src/libultra/206B0.o: OPTFLAGS := -O2 -g0
|
||||
build/src/libultra/rmon/sprintf.o: OPTFLAGS := -O2 -g0
|
||||
build/src/libultra/libc/string.o: OPTFLAGS := -O2 -g0
|
||||
build/src/libultra/libc/ldiv.o: OPTFLAGS := -O2 -g0
|
||||
build/src/libultra/rmon/xlitob.o: OPTFLAGS := -O2 -g0
|
||||
|
||||
build/src/libultra/2BDF0.o: OPTFLAGS := -O1 -g0
|
||||
build/src/libultra/2C700.o: OPTFLAGS := -O1 -g0
|
||||
build/src/libultra/2D300.o: OPTFLAGS := -O1 -g0
|
||||
build/src/libultra/io/pidma.o: OPTFLAGS := -O1 -g0
|
||||
build/src/main/1EB50.o: OPTFLAGS := -O1 -g0
|
||||
build/src/libultra/os/stopthread.o: OPTFLAGS := -O1 -g0
|
||||
build/src/libultra/gu/guSqrtf.o: OPTFLAGS := -O1 -g0
|
||||
build/src/main/sprintf.o: OPTFLAGS := -O2 -g0
|
||||
build/src/main/math64.o: OPTFLAGS := -O2 -g0
|
||||
|
||||
build/src/libultra/gu/sqrtf.o: OPTFLAGS := -O3 -g0
|
||||
build/src/libultra/gu/ortho.o: OPTFLAGS := -O3 -g0
|
||||
build/src/libultra/gu/lookat.o: OPTFLAGS := -O3 -g0
|
||||
|
||||
build/src/libultra/io/pidma.o: OPTFLAGS := -O1 -g0
|
||||
build/src/libultra/io/aisetnextbuf.o: OPTFLAGS := -O1 -g0
|
||||
build/src/libultra/io/pimgr.o: OPTFLAGS := -O1 -g0
|
||||
build/src/libultra/io/motor.o: OPTFLAGS := -O1 -g0
|
||||
build/src/libultra/io/controller.o: OPTFLAGS := -O1 -g0
|
||||
build/src/libultra/io/ai.o: OPTFLAGS := -O1 -g0
|
||||
build/src/libultra/io/aigetlen.o: OPTFLAGS := -O1 -g0
|
||||
build/src/libultra/io/aisetfreq.o: OPTFLAGS := -O1 -g0
|
||||
|
||||
build/src/libultra/libc/ldiv.o: OPTFLAGS := -O2 -g0
|
||||
build/src/libultra/libc/string.o: OPTFLAGS := -O2 -g0
|
||||
build/src/libultra/libc/xlitob.o: OPTFLAGS := -O2 -g0
|
||||
build/src/libultra/libc/ll.o: OPTFLAGS := -O1 -g0
|
||||
build/src/libultra/libc/ll.o: MIPS_VERSION := -mips3 -32
|
||||
|
||||
build/src/libultra/os/getactivequeue.o: OPTFLAGS := -O1 -g0
|
||||
build/src/libultra/os/stopthread.o: OPTFLAGS := -O1 -g0
|
||||
|
||||
build/src/libultra/rmon/rmonmem.o: OPTFLAGS := -O1 -g0
|
||||
build/src/libultra/rmon/rmontask.o: OPTFLAGS := -O1 -g0
|
||||
build/src/libultra/rmon/rmonregs.o: OPTFLAGS := -O1 -g0
|
||||
|
||||
# cc & asm-processor
|
||||
CC := $(ASM_PROC) $(ASM_PROC_FLAGS) $(IDO) -- $(AS) $(ASFLAGS) --
|
||||
build/src/libultra/gu/sqrtf.o: CC := $(IDO)
|
||||
build/src/libultra/gu/lookat.o: CC := $(IDO)
|
||||
build/src/libultra/gu/ortho.o: CC := $(IDO)
|
||||
build/src/libultra/libc/ll.o: CC := $(IDO)
|
||||
|
||||
+1
-7
@@ -76,9 +76,7 @@ f32 Math_FAtan2F(f32, f32);
|
||||
f32 Math_FAsinF(f32);
|
||||
f32 Math_FAcosF(f32);
|
||||
|
||||
void func_800227A0(s32, OSMesgQueue*, OSMesg*, s32);
|
||||
|
||||
s32 func_80022B60(void);
|
||||
void osCreatePiMgr(s32, OSMesgQueue*, OSMesg*, s32);
|
||||
|
||||
f32 __sinf(f32);
|
||||
f32 __cosf(f32);
|
||||
@@ -87,10 +85,6 @@ s64 __ull_div(s64, s64);
|
||||
s64 __ll_mul(s64, s64);
|
||||
s64 __ll_rshift(s64, s64);
|
||||
|
||||
void __osSiCreateAccessQueue(void);
|
||||
|
||||
OSMesgQueue* osPiGetCmdQueue(void);
|
||||
|
||||
s32 func_8002DE78(void*, s32, s32); // Not real signature
|
||||
|
||||
void func_80060FBC(u8*, f32*);
|
||||
|
||||
@@ -30,6 +30,7 @@ D_800D55E4_fake = 0x800D55E4; // force_migration:True
|
||||
D_800D8570 = 0x800D8570; // force_migration:True
|
||||
D_800D8594 = 0x800D8594; // force_migration:True
|
||||
D_800C9524 = 0x800C9524; // force_migration:True
|
||||
D_800C93EC = 0x800C93EC; // force_migration:True
|
||||
|
||||
D_8019B1EC_E07F2C = 0x8019B1EC; // force_migration:True segment:segment_DF4260
|
||||
D_801C171C_E50E4C = 0x801C171C; // force_migration:True segment:segment_E16C50
|
||||
|
||||
@@ -34,7 +34,10 @@ osDpSetStatus = 0x80022190;
|
||||
osCreateThread = 0x800221A0;
|
||||
osStartThread = 0x800222F0;
|
||||
osCreateViManager = 0x80022440;
|
||||
osCreatePiMgr = 0x800227A0;
|
||||
ramromMain = 0x8002296C;
|
||||
osSetThreadPri = 0x80022A80;
|
||||
osInitialize = 0x80022B60;
|
||||
osGetTime = 0x80023000;
|
||||
__sinf = 0x80023090;
|
||||
__cosf = 0x80023250;
|
||||
@@ -57,9 +60,12 @@ osEepromProbe = 0x80023F50;
|
||||
memcpy = 0x80023FC0;
|
||||
strlen = 0x80023FEC;
|
||||
strchr = 0x80024014;
|
||||
_Putfld = 0x80024060;
|
||||
_Printf = 0x800246D0;
|
||||
osSetTime = 0x80024D20;
|
||||
__osGetActiveQueue = 0x80024D50;
|
||||
osAiSetFrequency = 0x80024D60;
|
||||
osCartRomInit = 0x80024EC0;
|
||||
osEPiStartDma = 0x80024FB0;
|
||||
osAiGetLength = 0x80025090;
|
||||
osAiSetNextBuffer = 0x800250A0;
|
||||
@@ -105,9 +111,13 @@ __osInsertTimer = 0x80027A74;
|
||||
osGetThreadPri = 0x80027C00;
|
||||
__osViGetCurrentContext = 0x80027C20;
|
||||
__osViSwapContext = 0x80027C30;
|
||||
__osPiCreateAccessQueue = 0x80028090;
|
||||
__osPiGetAccess = 0x800280E0;
|
||||
__osPiRelAccess = 0x80028124;
|
||||
osPiRawStartDma = 0x80028150;
|
||||
osEPiRawStartDma = 0x80028230;
|
||||
__osDevMgrMain = 0x80028460;
|
||||
__osRdbSend = 0x800288F0;
|
||||
__osSetSR = 0x80028BB0;
|
||||
__osGetSR = 0x80028BC0;
|
||||
__osSetFpcCsr = 0x80028BD0;
|
||||
@@ -149,6 +159,7 @@ __osRunningThread = 0x800C7EB0;
|
||||
__osViCurr = 0x800C7F40;
|
||||
__osViNext = 0x800C7F44;
|
||||
__osTimerList = 0x800C7F50;
|
||||
__osPiAccessQueueEnabled = 0x800C7F60;
|
||||
ldigs = 0x800C7F80;
|
||||
udigs = 0x800C7F94;
|
||||
__osRcpImTable = 0x800E95E0;
|
||||
@@ -163,6 +174,17 @@ _MotorStopData = 0x801566B0;
|
||||
_MotorStartData = 0x801567B0;
|
||||
_motorstopbuf= 0x801568B0;
|
||||
_motorstartbuf = 0x801568D0;
|
||||
piThread = 0x80157C10;
|
||||
piThreadStack = 0x80157DC0;
|
||||
ramromThread = 0x80158DC0;
|
||||
ramromThreadStack = 0x80158F70;
|
||||
getRamromQ = 0x80159370;
|
||||
getRamromBuf= 0x80159388;
|
||||
freeRamromQ = 0x80159390;
|
||||
freeRamromBuf = 0x801593A8;
|
||||
piEventQueue = 0x801593B0;
|
||||
piEventBuf = 0x801593C8;
|
||||
__osPiAccessQueue = 0x801595E8;
|
||||
__osEepPifRam = 0x801793E0;
|
||||
__osCurrentTime = 0x80179520;
|
||||
__osBaseCounter = 0x80179528;
|
||||
|
||||
@@ -1,93 +0,0 @@
|
||||
#include "global.h"
|
||||
|
||||
f32 func_8001FAB0(f32 x) {
|
||||
return __sinf(x) / __cosf(x);
|
||||
}
|
||||
|
||||
f32 func_8001FAE4(f32 x) {
|
||||
return func_8001FE60(x);
|
||||
}
|
||||
|
||||
f32 func_8001FB04(f32 x) {
|
||||
return func_8001FE98(x);
|
||||
}
|
||||
|
||||
f64 func_8001FB24(f64 x) {
|
||||
return (x < 0.0) ? -x : x;
|
||||
}
|
||||
|
||||
f32 func_8001FB58(f32 x) {
|
||||
return (x < 0.0f) ? -x : x;
|
||||
}
|
||||
|
||||
f32 func_8001FB88(f32 x) {
|
||||
return func_8001FF40(x);
|
||||
}
|
||||
|
||||
f32 func_8001FBA8(f32 x) {
|
||||
return func_8001FED0(x);
|
||||
}
|
||||
|
||||
f32 func_8001FBC8(f32 x) {
|
||||
return func_8001FF08(x);
|
||||
}
|
||||
|
||||
f32 Math_FAtanF(f32 x) {
|
||||
s32 sector;
|
||||
s32 i;
|
||||
f32 sq;
|
||||
f32 conv = 0.0f;
|
||||
f32 z;
|
||||
|
||||
if (x > 1.0f) {
|
||||
sector = 1;
|
||||
x = 1.0f / x;
|
||||
} else if (x < -1.0f) {
|
||||
sector = -1;
|
||||
x = 1.0f / x;
|
||||
} else {
|
||||
sector = 0;
|
||||
}
|
||||
|
||||
sq = SQ(x);
|
||||
|
||||
for (z = i = 24; i != 0; i--) {
|
||||
conv = SQ(z) * sq / (2.0f * z + 1.0f + conv);
|
||||
z -= 1.0f;
|
||||
}
|
||||
|
||||
if (sector > 0) {
|
||||
return M_PI / 2 - (x / (1.0f + conv));
|
||||
} else if (sector < 0) {
|
||||
return -M_PI / 2 - (x / (1.0f + conv));
|
||||
} else {
|
||||
return x / (1.0f + conv);
|
||||
}
|
||||
}
|
||||
|
||||
f32 Math_FAtan2F(f32 y, f32 x) {
|
||||
if ((y == 0.0f) && (x == 0.0f)) {
|
||||
return 0.0f;
|
||||
}
|
||||
if (x == 0.0f) {
|
||||
if (y < 0.0f) {
|
||||
return -M_PI / 2;
|
||||
}
|
||||
return M_PI / 2;
|
||||
}
|
||||
if (x < 0.0f) {
|
||||
if (y < 0.0f) {
|
||||
return -(M_PI - Math_FAtanF(fabs(y / x)));
|
||||
}
|
||||
return M_PI - Math_FAtanF(fabs(y / x));
|
||||
}
|
||||
return Math_FAtanF(y / x);
|
||||
}
|
||||
|
||||
f32 Math_FAsinF(f32 x) {
|
||||
return Math_FAtan2F(x, sqrtf(1 - SQ(x)));
|
||||
}
|
||||
|
||||
f32 Math_FAcosF(f32 x) {
|
||||
return M_PI / 2.0f - Math_FAsinF(x);
|
||||
}
|
||||
@@ -1,9 +0,0 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/28330/__osTimerServicesInit.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/28330/__osTimerInterrupt.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/28330/__osSetTimerIntr.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/28330/__osInsertTimer.s")
|
||||
@@ -1,3 +0,0 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/28820/__osViGetCurrentContext.s")
|
||||
@@ -1,3 +0,0 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/28B90/func_80027F90.s")
|
||||
@@ -1,7 +0,0 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/28C90/func_80028090.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/28C90/func_800280E0.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/28C90/func_80028124.s")
|
||||
@@ -1,3 +0,0 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/294F0/func_800288F0.s")
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/297E0/func_80028BE0.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/297E0/func_80028C30.s")
|
||||
@@ -1,11 +0,0 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2A7A0/func_80029BA0.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2A7A0/func_80029BF8.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2A7A0/func_80029C6C.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2A7A0/func_80029CD8.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2A7A0/func_80029DA8.s")
|
||||
@@ -1,11 +0,0 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2AAB0/func_80029EB0.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2AAB0/func_80029F80.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2AAB0/func_80029FF4.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2AAB0/func_8002A044.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2AAB0/func_8002A0B0.s")
|
||||
@@ -1,3 +0,0 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2AD80/func_8002A180.s")
|
||||
@@ -1,3 +0,0 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2B830/func_8002AC30.s")
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2BD50/func_8002B150.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2BD50/func_8002B15C.s")
|
||||
@@ -1,33 +0,0 @@
|
||||
#include "common.h"
|
||||
|
||||
// OPTFLAGS := -O1 -g0
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2BDF0/func_8002B1F0.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2BDF0/func_8002B238.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2BDF0/func_8002B28C.s")
|
||||
|
||||
void func_8002B2C0(s32* arg0, s32* arg1, s32 arg2) {
|
||||
while (arg2--) {
|
||||
*arg0++ = *arg1++;
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2BDF0/func_8002B2F4.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2BDF0/func_8002B330.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2BDF0/func_8002B52C.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2BDF0/func_8002B778.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2BDF0/func_8002B7F8.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2BDF0/D_800C95E0.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2BDF0/func_8002B804.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2BDF0/func_8002B8AC.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2BDF0/func_8002B91C.s")
|
||||
@@ -1,49 +0,0 @@
|
||||
#include "global.h"
|
||||
|
||||
// OPTFLAGS := -O1 -g0
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2C700/func_8002BB00.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2C700/func_8002BB7C.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2C700/func_8002BBFC.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2C700/func_8002BD04.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2C700/func_8002BE38.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2C700/func_8002C12C.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2C700/func_8002C194.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2C700/func_8002C2DC.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2C700/func_8002C570.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2C700/func_8002C5BC.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2C700/func_8002C698.s")
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ char pad_0[0x4];
|
||||
/* 0x04 */ u8 unk4;
|
||||
} Unkstruct_func_8002C6B8_1;
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ char pad_0[0x4];
|
||||
/* 0x04 */ s8 unk4;
|
||||
/* 0x05 */ char pad_5;
|
||||
/* 0x06 */ s16 unk6;
|
||||
/* 0x08 */ char pad_[0x4];
|
||||
/* 0x12 */ s32 unk12;
|
||||
} Unkstruct_func_8002C6B8_2;
|
||||
|
||||
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;
|
||||
}
|
||||
@@ -1,49 +0,0 @@
|
||||
#include "global.h"
|
||||
|
||||
s32 func_8002B238(s32);
|
||||
void func_8002C700(s32, s32);
|
||||
void func_8002C818(s32);
|
||||
void func_8002C8C0(s32);
|
||||
s32 func_8002E340(void);
|
||||
void func_8002E3A8(void);
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2D300/func_8002C700.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2D300/func_8002C784.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2D300/func_8002C818.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2D300/func_8002C8C0.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2D300/func_8002C968.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2D300/func_8002CAC4.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2D300/func_8002CC14.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2D300/func_8002CCCC.s")
|
||||
|
||||
s32 func_8002CD80(s32 arg0) {
|
||||
s32 ret;
|
||||
|
||||
if (func_8002E340() != 0) {
|
||||
return 0;
|
||||
} else {
|
||||
func_8002C818(0);
|
||||
func_8002C700(0x2B, arg0);
|
||||
func_8002E3A8();
|
||||
ret = func_8002B238(0x04000000);
|
||||
func_8002C8C0(0);
|
||||
return ret;
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2D300/func_8002CDE4.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2D300/func_8002CF44.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2D300/func_8002D054.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2D300/func_8002D16C.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2D300/func_8002D230.s")
|
||||
@@ -1,9 +0,0 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2E9E0/func_8002DDE0.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2E9E0/func_8002DE78.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2E9E0/func_8002DF20.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2E9E0/func_8002E040.s")
|
||||
@@ -1,3 +0,0 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2EDE0/func_8002E1E0.s")
|
||||
@@ -1,3 +0,0 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/2EE30/func_8002E230.s")
|
||||
@@ -1,3 +0,0 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/conteepprobe/osEepromProbe.s")
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/conteepread/osEepromRead.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/conteepread/func_800236A0.s")
|
||||
@@ -1,7 +0,0 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/conteepwrite/osEepromWrite.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/conteepwrite/func_80023960.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/conteepwrite/__osEepStatus.s")
|
||||
@@ -0,0 +1,11 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/debug/kdebugserver/func_80029BA0.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/debug/kdebugserver/func_80029BF8.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/debug/kdebugserver/func_80029C6C.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/debug/kdebugserver/func_80029CD8.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/debug/kdebugserver/func_80029DA8.s")
|
||||
@@ -0,0 +1,9 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/gu/mtxutil/guMtxF2L.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/gu/mtxutil/guMtxIdentF.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/gu/mtxutil/guMtxIdent.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/gu/mtxutil/guMtxL2F.s")
|
||||
@@ -0,0 +1,3 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/host/readhost/func_80029EB0.s")
|
||||
@@ -0,0 +1,50 @@
|
||||
#include "global.h"
|
||||
|
||||
#ifdef NON_MATCHING // needs data import
|
||||
s32 osAiSetNextBuffer(void* bufPtr, u32 size) {
|
||||
static u8 hdwrBugFlag = FALSE;
|
||||
char* bptr;
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
if (__osAiDeviceBusy()) {
|
||||
return -1;
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef _DEBUG
|
||||
if ((u32) bufPtr & (8 - 1)) {
|
||||
__osError(ERR_OSAISETNEXTBUFFER_ADDR, 1, bufPtr);
|
||||
return -1;
|
||||
}
|
||||
|
||||
if ((u32) size & (8 - 1)) {
|
||||
__osError(ERR_OSAISETNEXTBUFFER_SIZE, 1, size);
|
||||
return -1;
|
||||
}
|
||||
#endif
|
||||
|
||||
bptr = bufPtr;
|
||||
|
||||
if (hdwrBugFlag) {
|
||||
bptr = (u8*) bufPtr - 0x2000;
|
||||
}
|
||||
|
||||
if ((((u32) bufPtr + size) & 0x3fff) == 0x2000) {
|
||||
hdwrBugFlag = TRUE;
|
||||
} else {
|
||||
hdwrBugFlag = FALSE;
|
||||
}
|
||||
|
||||
#if BUILD_VERSION < VERSION_J
|
||||
if (__osAiDeviceBusy()) {
|
||||
return -1;
|
||||
}
|
||||
#endif
|
||||
|
||||
IO_WRITE(AI_DRAM_ADDR_REG, osVirtualToPhysical(bptr));
|
||||
IO_WRITE(AI_LEN_REG, size);
|
||||
return 0;
|
||||
}
|
||||
#else
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/aisetnextbuf/osAiSetNextBuffer.s")
|
||||
#endif
|
||||
@@ -0,0 +1,3 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/cartrominit/osCartRomInit.s")
|
||||
@@ -0,0 +1,3 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/conteepprobe/osEepromProbe.s")
|
||||
@@ -0,0 +1,5 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/conteepread/osEepromRead.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/conteepread/func_800236A0.s")
|
||||
@@ -0,0 +1,7 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/conteepwrite/osEepromWrite.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/conteepwrite/func_80023960.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/conteepwrite/__osEepStatus.s")
|
||||
@@ -0,0 +1,9 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/contramwrite/__osContRamWrite.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/contramwrite/func_800267C4.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/contramwrite/__osContRamRead.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/contramwrite/func_80026B5C.s")
|
||||
@@ -1,5 +1,6 @@
|
||||
#include "global.h"
|
||||
#include "PR/controller.h"
|
||||
#include "siint.h"
|
||||
|
||||
extern s32 __osContinitialized;
|
||||
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/leodiskinit/func_80027F90.s")
|
||||
@@ -0,0 +1,7 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/leointerrupt/__osLeoInterrupt.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/leointerrupt/func_8002A8B4.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/leointerrupt/func_8002A99C.s")
|
||||
@@ -0,0 +1,3 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/pfsgetstatus/func_8002AC30.s")
|
||||
@@ -0,0 +1,7 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/piacs/__osPiCreateAccessQueue.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/piacs/__osPiGetAccess.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/piacs/__osPiRelAccess.s")
|
||||
@@ -1,4 +1,5 @@
|
||||
#include "global.h"
|
||||
#include "piint.h"
|
||||
|
||||
s32 osPiStartDma(OSIoMesg* mb, s32 pri, s32 rw, u32 devAddr, void* dramAddr, u32 size, OSMesgQueue* piHandle) {
|
||||
register s32 result;
|
||||
|
||||
@@ -0,0 +1,93 @@
|
||||
#include "global.h"
|
||||
#include "piint.h"
|
||||
#include "PR/rdb.h"
|
||||
|
||||
void ramromMain(void* /*arg*/);
|
||||
extern OSMesgQueue* D_800C7DF0;
|
||||
extern char piEventBuf[];
|
||||
extern OSMesgQueue piEventQueue;
|
||||
extern OSThread piThread;
|
||||
extern char piThreadStack[];
|
||||
extern OSThread ramromThread;
|
||||
extern char ramromThreadStack[];
|
||||
|
||||
#ifdef NON_MATCHING
|
||||
OSDevMgr __osPiDevMgr = { 0 };
|
||||
|
||||
void osCreatePiMgr(OSPri pri, OSMesgQueue* cmdQ, OSMesg* cmdBuf, s32 cmdMsgCnt) {
|
||||
u32 savedMask;
|
||||
OSPri oldPri;
|
||||
OSPri myPri;
|
||||
|
||||
if (__osPiDevMgr.active) {
|
||||
return;
|
||||
}
|
||||
osCreateMesgQueue(cmdQ, cmdBuf, cmdMsgCnt);
|
||||
osCreateMesgQueue(&piEventQueue, (OSMesg*) piEventBuf, 1);
|
||||
|
||||
if (!__osPiAccessQueueEnabled) {
|
||||
__osPiCreateAccessQueue();
|
||||
}
|
||||
|
||||
osSetEventMesg(OS_EVENT_PI, &piEventQueue, (OSMesg) 0x22222222);
|
||||
oldPri = -1;
|
||||
myPri = osGetThreadPri(NULL);
|
||||
|
||||
if (myPri < pri) {
|
||||
oldPri = myPri;
|
||||
osSetThreadPri(NULL, pri);
|
||||
}
|
||||
|
||||
savedMask = __osDisableInt();
|
||||
__osPiDevMgr.active = 1;
|
||||
__osPiDevMgr.thread = &piThread;
|
||||
__osPiDevMgr.cmdQueue = cmdQ;
|
||||
__osPiDevMgr.evtQueue = &piEventQueue;
|
||||
__osPiDevMgr.acsQueue = &__osPiAccessQueue;
|
||||
__osPiDevMgr.dma = __osPiRawStartDma;
|
||||
__osPiDevMgr.edma = __osEPiRawStartDma;
|
||||
osCreateThread(&piThread, 0, __osDevMgrMain, &__osPiDevMgr, &piThreadStack[OS_PIM_STACKSIZE], pri);
|
||||
osStartThread(&piThread);
|
||||
osCreateThread(&ramromThread, 0, ramromMain, NULL, &ramromThreadStack[1024], (OSPri) pri - 1);
|
||||
osStartThread(&ramromThread);
|
||||
|
||||
__osRestoreInt(savedMask);
|
||||
|
||||
if (oldPri != -1) {
|
||||
osSetThreadPri(NULL, oldPri);
|
||||
}
|
||||
}
|
||||
#else
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/pimgr/osCreatePiMgr.s")
|
||||
#endif
|
||||
|
||||
extern char freeRamromBuf[];
|
||||
extern OSMesgQueue freeRamromQ;
|
||||
extern char getRamromBuf[];
|
||||
extern OSMesgQueue getRamromQ;
|
||||
|
||||
void ramromMain(void* arg) {
|
||||
u32 sent;
|
||||
u8 tmp[3];
|
||||
|
||||
osCreateMesgQueue(&getRamromQ, getRamromBuf, 1);
|
||||
osCreateMesgQueue(&freeRamromQ, freeRamromBuf, 1);
|
||||
osSetEventMesg(18 /*OS_EVENT_RDB_REQ_RAMROM*/, &getRamromQ, NULL);
|
||||
osSetEventMesg(19 /*OS_EVENT_RDB_FREE_RAMROM*/, &freeRamromQ, NULL);
|
||||
|
||||
while (TRUE) {
|
||||
osRecvMesg(&getRamromQ, NULL, OS_MESG_BLOCK);
|
||||
|
||||
__osPiGetAccess();
|
||||
|
||||
sent = 0;
|
||||
|
||||
while (sent < 1) {
|
||||
sent += __osRdbSend(tmp, 1, RDB_TYPE_GtoH_RAMROM);
|
||||
}
|
||||
|
||||
osRecvMesg(&freeRamromQ, NULL, OS_MESG_BLOCK);
|
||||
|
||||
__osPiRelAccess();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/siacs/__osSiCreateAccessQueue.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/siacs/__osSiGetAccess.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/siacs/__osSiRelAccess.s")
|
||||
@@ -0,0 +1,3 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/sirawread/func_80028BE0.s")
|
||||
@@ -0,0 +1,3 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/sirawwrite/func_80028C30.s")
|
||||
@@ -0,0 +1,3 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/sprawread/func_8002E230.s")
|
||||
@@ -0,0 +1,3 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/sprawwrite/func_8002E1E0.s")
|
||||
@@ -0,0 +1,3 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/io/vigetcurrcontext/__osViGetCurrentContext.s")
|
||||
@@ -1,7 +0,0 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/leointerrupt/__osLeoInterrupt.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/leointerrupt/func_8002A8B4.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/leointerrupt/func_8002A99C.s")
|
||||
@@ -0,0 +1,9 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/libc/xldtob/func_80029080.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/libc/xldtob/D_800C9580.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/libc/xldtob/_Ldtob.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/libc/xldtob/D_800C95D0.s")
|
||||
@@ -0,0 +1,5 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/libc/xprintf/_Putfld.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/libc/xprintf/_Printf.s")
|
||||
@@ -1,9 +0,0 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/mtxutil/guMtxF2L.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/mtxutil/guMtxIdentF.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/mtxutil/guMtxIdent.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/mtxutil/guMtxL2F.s")
|
||||
@@ -0,0 +1,6 @@
|
||||
#include "PR/os_internal.h"
|
||||
#include "osint.h"
|
||||
|
||||
OSThread* __osGetActiveQueue(void) {
|
||||
return __osActiveQueue;
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/os/initialize/osInitialize.s")
|
||||
@@ -0,0 +1,3 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/os/initrdb/func_8002A180.s")
|
||||
@@ -0,0 +1,3 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/os/rdbsend/__osRdbSend.s")
|
||||
@@ -0,0 +1,9 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/os/timerintr/__osTimerServicesInit.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/os/timerintr/__osTimerInterrupt.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/os/timerintr/__osSetTimerIntr.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/os/timerintr/__osInsertTimer.s")
|
||||
@@ -0,0 +1,29 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonbrk/func_8002D300.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonbrk/func_8002D3AC.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonbrk/func_8002D494.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonbrk/func_8002D654.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonbrk/func_8002D660.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonbrk/func_8002D7BC.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonbrk/func_8002D9E4.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonbrk/func_8002DA78.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonbrk/func_8002DB3C.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonbrk/func_8002DB7C.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonbrk/func_8002DC38.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonbrk/func_8002DC68.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonbrk/func_8002DCD0.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonbrk/func_8002DD00.s")
|
||||
@@ -0,0 +1,5 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmoncmds/func_8002B150.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmoncmds/func_8002B15C.s")
|
||||
@@ -0,0 +1,9 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonmain/func_8002DDE0.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonmain/func_8002DE78.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonmain/func_8002DF20.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonmain/func_8002E040.s")
|
||||
@@ -0,0 +1,31 @@
|
||||
#include "global.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonmem/func_8002B1F0.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonmem/func_8002B238.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonmem/func_8002B28C.s")
|
||||
|
||||
void func_8002B2C0(s32* arg0, s32* arg1, s32 arg2) {
|
||||
while (arg2--) {
|
||||
*arg0++ = *arg1++;
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonmem/func_8002B2F4.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonmem/func_8002B330.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonmem/func_8002B52C.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonmem/func_8002B778.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonmem/func_8002B7F8.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonmem/D_800C9660.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonmem/func_8002B804.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonmem/func_8002B8AC.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonmem/func_8002B91C.s")
|
||||
@@ -0,0 +1,49 @@
|
||||
#include "global.h"
|
||||
|
||||
s32 func_8002B238(s32);
|
||||
void func_8002C700(s32, s32);
|
||||
void func_8002C818(s32);
|
||||
void func_8002C8C0(s32);
|
||||
s32 func_8002E340(void);
|
||||
void func_8002E3A8(void);
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonregs/func_8002C700.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonregs/func_8002C784.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonregs/func_8002C818.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonregs/func_8002C8C0.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonregs/func_8002C968.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonregs/func_8002CAC4.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonregs/func_8002CC14.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonregs/func_8002CCCC.s")
|
||||
|
||||
s32 func_8002CD80(s32 arg0) {
|
||||
s32 ret;
|
||||
|
||||
if (func_8002E340() != 0) {
|
||||
return 0;
|
||||
} else {
|
||||
func_8002C818(0);
|
||||
func_8002C700(0x2B, arg0);
|
||||
func_8002E3A8();
|
||||
ret = func_8002B238(0x04000000);
|
||||
func_8002C8C0(0);
|
||||
return ret;
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonregs/func_8002CDE4.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonregs/func_8002CF44.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonregs/func_8002D054.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonregs/func_8002D16C.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonregs/func_8002D230.s")
|
||||
@@ -0,0 +1,9 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonsio/func_80029F80.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonsio/func_80029FF4.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonsio/func_8002A044.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmonsio/func_8002A0B0.s")
|
||||
@@ -0,0 +1,47 @@
|
||||
#include "global.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmontask/func_8002BB00.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmontask/func_8002BB7C.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmontask/func_8002BBFC.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmontask/func_8002BD04.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmontask/func_8002BE38.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmontask/func_8002C12C.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmontask/func_8002C194.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmontask/func_8002C2DC.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmontask/func_8002C570.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmontask/func_8002C5BC.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/rmontask/func_8002C698.s")
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ char pad_0[0x4];
|
||||
/* 0x04 */ u8 unk4;
|
||||
} Unkstruct_func_8002C6B8_1;
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ char pad_0[0x4];
|
||||
/* 0x04 */ s8 unk4;
|
||||
/* 0x05 */ char pad_5;
|
||||
/* 0x06 */ s16 unk6;
|
||||
/* 0x08 */ char pad_[0x4];
|
||||
/* 0x12 */ s32 unk12;
|
||||
} Unkstruct_func_8002C6B8_2;
|
||||
|
||||
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;
|
||||
}
|
||||
@@ -1,9 +0,0 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/xldtob/func_80029080.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/xldtob/D_800C9580.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/xldtob/_Ldtob.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/libultra/rmon/xldtob/D_800C95D0.s")
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/233A0/func_800227A0.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/233A0/func_8002296C.s")
|
||||
@@ -1,3 +0,0 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/23760/func_80022B60.s")
|
||||
@@ -1,7 +0,0 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/24C60/func_80024060.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/24C60/_Printf.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/24C60/D_800C93EC.s")
|
||||
@@ -1,3 +0,0 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/25950/func_80024D50.s")
|
||||
@@ -1,3 +0,0 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/25AC0/func_80024EC0.s")
|
||||
@@ -1,3 +0,0 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/25CA0/osAiSetNextBuffer.s")
|
||||
@@ -1,7 +0,0 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/25E10/__osSiCreateAccessQueue.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/25E10/__osSiGetAccess.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/25E10/__osSiRelAccess.s")
|
||||
@@ -1,9 +0,0 @@
|
||||
#include "common.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/271C0/__osContRamWrite.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/271C0/func_800267C4.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/271C0/__osContRamRead.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/271C0/func_80026B5C.s")
|
||||
@@ -1,31 +0,0 @@
|
||||
#define _MIPS_SZLONG 32
|
||||
|
||||
#include "global.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/2DF00/func_8002D300.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/2DF00/func_8002D3AC.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/2DF00/func_8002D494.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/2DF00/func_8002D654.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/2DF00/func_8002D660.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/2DF00/func_8002D7BC.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/2DF00/func_8002D9E4.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/2DF00/func_8002DA78.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/2DF00/func_8002DB3C.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/2DF00/func_8002DB7C.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/2DF00/func_8002DC38.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/2DF00/func_8002DC68.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/2DF00/func_8002DCD0.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/2DF00/func_8002DD00.s")
|
||||
+2
-2
@@ -42,7 +42,7 @@ void func_80004D00(void* arg0) {
|
||||
osCreateViManager(254);
|
||||
func_80003EE0();
|
||||
func_800034E8(1);
|
||||
func_800227A0(150, &D_800E2010, &D_800E2028, 50);
|
||||
osCreatePiMgr(150, &D_800E2010, &D_800E2028, 50);
|
||||
osCreateThread(&D_8013A040, 3, &func_80004ABC, arg0, &D_8013B1F0, 100);
|
||||
osStartThread(&D_8013A040);
|
||||
func_80008018();
|
||||
@@ -53,7 +53,7 @@ loop_1:
|
||||
|
||||
void bootproc(void) {
|
||||
func_8001EF10();
|
||||
func_80022B60();
|
||||
osInitialize();
|
||||
func_80003A50();
|
||||
osCreateThread(&D_80138E90, 1, &func_80004D00, 0, &D_8013A040, 255);
|
||||
osStartThread(&D_80138E90);
|
||||
|
||||
+81
-13
@@ -1,25 +1,93 @@
|
||||
#include "common.h"
|
||||
#include "global.h"
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/math64/func_8001FAB0.s")
|
||||
f32 func_8001FAB0(f32 x) {
|
||||
return __sinf(x) / __cosf(x);
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/math64/func_8001FAE4.s")
|
||||
f32 func_8001FAE4(f32 x) {
|
||||
return func_8001FE60(x);
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/math64/func_8001FB04.s")
|
||||
f32 func_8001FB04(f32 x) {
|
||||
return func_8001FE98(x);
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/math64/func_8001FB24.s")
|
||||
f64 func_8001FB24(f64 x) {
|
||||
return (x < 0.0) ? -x : x;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/math64/func_8001FB58.s")
|
||||
f32 func_8001FB58(f32 x) {
|
||||
return (x < 0.0f) ? -x : x;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/math64/func_8001FB88.s")
|
||||
f32 func_8001FB88(f32 x) {
|
||||
return func_8001FF40(x);
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/math64/func_8001FBA8.s")
|
||||
f32 func_8001FBA8(f32 x) {
|
||||
return func_8001FED0(x);
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/math64/func_8001FBC8.s")
|
||||
f32 func_8001FBC8(f32 x) {
|
||||
return func_8001FF08(x);
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/math64/Math_FAtanF.s")
|
||||
f32 Math_FAtanF(f32 x) {
|
||||
s32 sector;
|
||||
s32 i;
|
||||
f32 sq;
|
||||
f32 conv = 0.0f;
|
||||
f32 z;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/math64/Math_FAtan2F.s")
|
||||
if (x > 1.0f) {
|
||||
sector = 1;
|
||||
x = 1.0f / x;
|
||||
} else if (x < -1.0f) {
|
||||
sector = -1;
|
||||
x = 1.0f / x;
|
||||
} else {
|
||||
sector = 0;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/math64/Math_FAsinF.s")
|
||||
sq = SQ(x);
|
||||
|
||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/math64/Math_FAcosF.s")
|
||||
for (z = i = 24; i != 0; i--) {
|
||||
conv = SQ(z) * sq / (2.0f * z + 1.0f + conv);
|
||||
z -= 1.0f;
|
||||
}
|
||||
|
||||
if (sector > 0) {
|
||||
return M_PI / 2 - (x / (1.0f + conv));
|
||||
} else if (sector < 0) {
|
||||
return -M_PI / 2 - (x / (1.0f + conv));
|
||||
} else {
|
||||
return x / (1.0f + conv);
|
||||
}
|
||||
}
|
||||
|
||||
f32 Math_FAtan2F(f32 y, f32 x) {
|
||||
if ((y == 0.0f) && (x == 0.0f)) {
|
||||
return 0.0f;
|
||||
}
|
||||
if (x == 0.0f) {
|
||||
if (y < 0.0f) {
|
||||
return -M_PI / 2;
|
||||
}
|
||||
return M_PI / 2;
|
||||
}
|
||||
if (x < 0.0f) {
|
||||
if (y < 0.0f) {
|
||||
return -(M_PI - Math_FAtanF(fabs(y / x)));
|
||||
}
|
||||
return M_PI - Math_FAtanF(fabs(y / x));
|
||||
}
|
||||
return Math_FAtanF(y / x);
|
||||
}
|
||||
|
||||
f32 Math_FAsinF(f32 x) {
|
||||
return Math_FAtan2F(x, sqrtf(1 - SQ(x)));
|
||||
}
|
||||
|
||||
f32 Math_FAcosF(f32 x) {
|
||||
return M_PI / 2.0f - Math_FAsinF(x);
|
||||
}
|
||||
|
||||
+100
-84
@@ -5,33 +5,36 @@
|
||||
vram: 0x80000450
|
||||
bss_size: 0x9B1F0
|
||||
subsegments:
|
||||
- [0x1050, textbin]
|
||||
- [0x1270, textbin]
|
||||
|
||||
- [0x3440, c, 3440]
|
||||
- [0x3A80, c, 3A80]
|
||||
- [0x41D0, c, 41D0]
|
||||
- [0x4650, c, 4650]
|
||||
- [0x5A20, c, 5A20] # -O2 -g3
|
||||
- [0x6280, c, 6280] # -O2 -g3
|
||||
- [0x7B20, c, 7B20]
|
||||
- [0x7D30, c, 7D30]
|
||||
- [0x7FC0, c, 7FC0]
|
||||
- [0x8CC0, c, 8CC0]
|
||||
- [0xC870, c, C870]
|
||||
- [0xF0A0, c, F0A0]
|
||||
# Microcode
|
||||
- [0x01050, textbin, rspboot]
|
||||
- [0x01120, textbin, aspmain]
|
||||
- [0x02010, textbin, f3dex]
|
||||
|
||||
# Nintendo libraries
|
||||
- [0x03440, c, 3440]
|
||||
- [0x03A80, c, 3A80]
|
||||
- [0x041D0, c, 41D0]
|
||||
- [0x04650, c, 4650]
|
||||
- [0x05A20, c, 5A20]
|
||||
- [0x06280, c, 6280]
|
||||
- [0x07B20, c, 7B20]
|
||||
- [0x07D30, c, 7D30]
|
||||
- [0x07FC0, c, 7FC0]
|
||||
- [0x08CC0, c, 8CC0]
|
||||
- [0x0C870, c, C870]
|
||||
- [0x0F0A0, c, F0A0]
|
||||
- [0x12490, c, 12490]
|
||||
- [0x14AA0, c, 14AA0]
|
||||
- [0x17650, c, 17650] # Sound related
|
||||
- [0x1EB50, c, 1EB50] # Audio Thread
|
||||
- [0x1FA60, c]
|
||||
- [0x1FA70, hasm]
|
||||
- [0x1FB10, hasm]
|
||||
- [0x205E0, c, ../libultra/rmon/sprintf]
|
||||
- [0x206B0, c, math64] # math64
|
||||
- [0x20A60, hasm, fp.text] # fp.text.s
|
||||
- [0x1FA60, c, 1FA60]
|
||||
- [0x1FA70, hasm, decompress] # May be blanked out osDriveRomInit
|
||||
- [0x1FB10, hasm, rdramcheck]
|
||||
- [0x205E0, c, sprintf]
|
||||
- [0x206B0, c, math64]
|
||||
- [0x20A60, hasm, fp.text]
|
||||
|
||||
# LIBULTRA
|
||||
# Libultra
|
||||
- [0x20BC0, c, ../libultra/io/controller]
|
||||
- [0x20F80, c, ../libultra/io/contreaddata]
|
||||
- [0x211E0, c, ../libultra/os/recvmesg]
|
||||
@@ -45,10 +48,10 @@
|
||||
- [0x22340, hasm, ../libultra/os/invaldcache]
|
||||
- [0x223F0, c, ../libultra/io/pidma]
|
||||
- [0x22500, c, ../libultra/io/viblack]
|
||||
- [0x22570, hasm, writebackdcacheall]
|
||||
- [0x22570, hasm, ../libultra/os/writebackdcacheall]
|
||||
- [0x225A0, c, ../libultra/io/viswapbuf]
|
||||
- [0x225F0, c, ../libultra/io/virepeatline]
|
||||
- [0x22660, hasm] # padding
|
||||
- [0x22660, hasm, ../libultra/os/parameter]
|
||||
- [0x226C0, c, ../libultra/io/visetmode]
|
||||
- [0x22730, c, ../libultra/io/visetspecial]
|
||||
- [0x228F0, c, ../libultra/os/createmesgqueue]
|
||||
@@ -61,93 +64,95 @@
|
||||
- [0x22DA0, c, ../libultra/os/createthread]
|
||||
- [0x22EF0, c, ../libultra/os/startthread]
|
||||
- [0x23040, c, ../libultra/io/vimgr]
|
||||
- [0x233A0, c]
|
||||
- [0x233A0, c, ../libultra/io/pimgr]
|
||||
- [0x23680, c, ../libultra/os/setthreadpri]
|
||||
- [0x23760, c]
|
||||
- [0x23760, c, ../libultra/os/initialize]
|
||||
- [0x23C00, c, ../libultra/os/gettime]
|
||||
- [0x23C90, c, ../libultra/gu/sinf]
|
||||
- [0x23E50, c, ../libultra/gu/cosf]
|
||||
- [0x23FC0, c, ../libultra/gu/guSqrtf]
|
||||
- [0x23FC0, c, ../libultra/gu/sqrtf]
|
||||
- [0x23FD0, c, ../libultra/os/settimer]
|
||||
- [0x240B0, c, ../libultra/conteepread]
|
||||
- [0x243B0, c, ../libultra/conteepwrite]
|
||||
- [0x240B0, c, ../libultra/io/conteepread]
|
||||
- [0x243B0, c, ../libultra/io/conteepwrite]
|
||||
- [0x24890, c, ../libultra/libc/ll]
|
||||
- [0x24B50, c, ../libultra/conteepprobe]
|
||||
- [0x24B50, c, ../libultra/io/conteepprobe]
|
||||
- [0x24BC0, c, ../libultra/libc/string]
|
||||
- [0x24C60, c, 24C60]
|
||||
- [0x24C60, c, ../libultra/libc/xprintf]
|
||||
- [0x25920, c, ../libultra/os/settime]
|
||||
- [0x25950, c]
|
||||
- [0x25950, c, ../libultra/os/getactivequeue]
|
||||
- [0x25960, c, ../libultra/io/aisetfreq]
|
||||
- [0x25AC0, c]
|
||||
- [0x25AC0, c, ../libultra/io/cartrominit]
|
||||
- [0x25BB0, c, ../libultra/io/epidma]
|
||||
- [0x25C90, c, ../libultra/io/aigetlen]
|
||||
- [0x25CA0, c]
|
||||
- [0x25D50, hasm, getcount]
|
||||
- [0x25CA0, c, ../libultra/io/aisetnextbuf]
|
||||
- [0x25D50, hasm, ../libultra/os/getcount]
|
||||
- [0x25D60, c, ../libultra/io/sirawdma]
|
||||
- [0x25E10, c]
|
||||
- [0x25ED0, hasm, interrupt]
|
||||
- [0x25E10, c, ../libultra/io/siacs]
|
||||
- [0x25ED0, hasm, ../libultra/os/interrupt]
|
||||
- [0x25F10, c, ../libultra/os/thread]
|
||||
- [0x25F50, hasm]
|
||||
- [0x25F50, hasm, ../libultra/os/exceptasm]
|
||||
- [0x26CD0, c, ../libultra/io/pfsisplug]
|
||||
- [0x27040, c, ../libultra/io/crc]
|
||||
- [0x271C0, c]
|
||||
- [0x278D0, c, ../libultra/mtxutil]
|
||||
- [0x271C0, c, ../libultra/io/contramwrite]
|
||||
- [0x278D0, c, ../libultra/gu/mtxutil]
|
||||
- [0x27B40, c, ../libultra/os/jammesg]
|
||||
- [0x27C90, c, ../libultra/io/pigetcmdq]
|
||||
- [0x27CC0, c, ../libultra/io/vi]
|
||||
- [0x27E00, c, ../libultra/io/spgetstat]
|
||||
- [0x27E10, c, ../libultra/io/spsetstat]
|
||||
- [0x27E20, hasm, ../libultra/bcopy]
|
||||
- [0x27E20, hasm, ../libultra/libc/bcopy]
|
||||
- [0x28130, c, ../libultra/os/virtualtophysical]
|
||||
- [0x281B0, hasm, writebackdcache]
|
||||
- [0x281B0, hasm, ../libultra/os/writebackdcache]
|
||||
- [0x28230, c, ../libultra/io/spsetpc]
|
||||
- [0x28270, c, ../libultra/io/sprawdma]
|
||||
- [0x28300, c, ../libultra/io/sp]
|
||||
- [0x28330, c, ../libultra/28330]
|
||||
- [0x28330, c, ../libultra/os/timerintr]
|
||||
- [0x28800, c, ../libultra/os/getthreadpri]
|
||||
- [0x28820, c, ../libultra/28820]
|
||||
- [0x28820, c, ../libultra/io/vigetcurrcontext]
|
||||
- [0x28830, c, ../libultra/io/viswapcontext]
|
||||
- [0x28B90, c, ../libultra/28B90]
|
||||
- [0x28C90, c, ../libultra/28C90]
|
||||
- [0x28B90, c, ../libultra/io/leodiskinit]
|
||||
- [0x28C90, c, ../libultra/io/piacs]
|
||||
- [0x28D50, c, ../libultra/io/pirawdma]
|
||||
- [0x28E30, c, ../libultra/io/epirawdma]
|
||||
- [0x29060, c, ../libultra/io/devmgr]
|
||||
- [0x294F0, c, ../libultra/294F0]
|
||||
- [0x297B0, hasm, ../libultra/setsr]
|
||||
- [0x297C0, hasm, ../libultra/getsr]
|
||||
- [0x297D0, hasm, ../libultra/setfpccsr]
|
||||
- [0x297E0, c, ../libultra/297E0]
|
||||
- [0x29880, hasm, ../libultra/maptlbrdb]
|
||||
- [0x294F0, c, ../libultra/os/rdbsend]
|
||||
- [0x297B0, hasm, ../libultra/os/setsr]
|
||||
- [0x297C0, hasm, ../libultra/os/getsr]
|
||||
- [0x297D0, hasm, ../libultra/os/setfpccsr]
|
||||
- [0x297E0, c, ../libultra/io/sirawread]
|
||||
- [0x29830, c, ../libultra/io/sirawwrite]
|
||||
- [0x29880, hasm, ../libultra/os/maptlbrdb]
|
||||
- [0x298E0, c, ../libultra/io/pirawread]
|
||||
- [0x29940, hasm, ../libultra/bzero]
|
||||
- [0x299E0, c, ../libultra/rmon/xlitob]
|
||||
- [0x29C80, c, ../libultra/rmon/xldtob]
|
||||
- [0x29940, hasm, ../libultra/libc/bzero]
|
||||
- [0x299E0, c, ../libultra/libc/xlitob]
|
||||
- [0x29C80, c, ../libultra/libc/xldtob]
|
||||
- [0x2A740, c, ../libultra/io/ai]
|
||||
- [0x2A770, c, ../libultra/io/si]
|
||||
- [0x2A7A0, c, ../libultra/2A7A0]
|
||||
- [0x2AAB0, c, ../libultra/2AAB0]
|
||||
- [0x2AD80, c, ../libultra/2AD80]
|
||||
- [0x2AE10, c, ../libultra/leointerrupt]
|
||||
- [0x2B690, hasm, ../libultra/setintmask]
|
||||
- [0x2A7A0, c, ../libultra/debug/kdebugserver]
|
||||
- [0x2AAB0, c, ../libultra/host/readhost]
|
||||
- [0x2AB80, c, ../libultra/rmon/rmonsio]
|
||||
- [0x2AD80, c, ../libultra/os/initrdb]
|
||||
- [0x2AE10, c, ../libultra/io/leointerrupt]
|
||||
- [0x2B690, hasm, ../libultra/os/setintmask]
|
||||
- [0x2B730, c, ../libultra/os/destroythread]
|
||||
- [0x2B830, c, ../libultra/2B830]
|
||||
- [0x2B940, hasm, ../libultra/probetlb]
|
||||
- [0x2BA00, hasm, ../libultra/setcompare]
|
||||
- [0x2B830, c, ../libultra/io/pfsgetstatus]
|
||||
- [0x2B940, hasm, ../libultra/os/probetlb]
|
||||
- [0x2BA00, hasm, ../libultra/os/setcompare]
|
||||
- [0x2BA10, c, ../libultra/os/resetglobalintmask]
|
||||
- [0x2BA70, c, ../libultra/io/epirawwrite]
|
||||
- [0x2BAC0, c, ../libultra/io/epirawread]
|
||||
- [0x2BB10, c, ../libultra/os/setglobalintmask]
|
||||
- [0x2BB60, c, ../libultra/os/yieldthread]
|
||||
- [0x2BBB0, c, ../libultra/libc/ldiv]
|
||||
- [0x2BD40, hasm, ../libultra/getcause]
|
||||
- [0x2BD50, c, ../libultra/2BD50]
|
||||
- [0x2BDF0, c, ../libultra/2BDF0]
|
||||
- [0x2C700, c, ../libultra/2C700] # -O1 -g0
|
||||
- [0x2D300, c, ../libultra/2D300] # -O1 -g0
|
||||
- [0x2DF00, c, 2DF00]
|
||||
- [0x2E9E0, c, ../libultra/2E9E0]
|
||||
- [0x2EDE0, c, ../libultra/2EDE0]
|
||||
- [0x2EE30, c, ../libultra/2EE30]
|
||||
- [0x2BD40, hasm, ../libultra/os/getcause]
|
||||
- [0x2BD50, c, ../libultra/rmon/rmoncmds]
|
||||
- [0x2BDF0, c, ../libultra/rmon/rmonmem]
|
||||
- [0x2C700, c, ../libultra/rmon/rmontask]
|
||||
- [0x2D300, c, ../libultra/rmon/rmonregs]
|
||||
- [0x2DF00, c, ../libultra/rmon/rmonbrk]
|
||||
- [0x2E9E0, c, ../libultra/rmon/rmonmain]
|
||||
- [0x2EDE0, c, ../libultra/io/sprawwrite]
|
||||
- [0x2EE30, c, ../libultra/io/sprawread]
|
||||
- [0x2EE80, c, ../libultra/os/stopthread]
|
||||
- [0x2EF40, hasm, ../libultra/rmon/rmonrcp]
|
||||
|
||||
@@ -160,7 +165,7 @@
|
||||
- [0x496C0, c, sf_496C0]
|
||||
- [0x52730, c, sf_52730]
|
||||
- [0x59780, c, sf_59780]
|
||||
- [0x5A2C0, c, sf_5A2C0] # -02 -g3
|
||||
- [0x5A2C0, c, sf_5A2C0]
|
||||
- [0x61B30, c, sf_61B30]
|
||||
- [0x6B3B0, c, sf_6B3B0]
|
||||
- [0x77E40, c, sf_77E40]
|
||||
@@ -172,15 +177,23 @@
|
||||
- [0xA4290, c, sf_A4290]
|
||||
- [0xA48A0, c, sf_A48A0]
|
||||
- [0xA4B50, c, sf_A4B50]
|
||||
- [0xB99D0, c, sf_B99D0] # -02 -g3, no rodata
|
||||
- [0xB99D0, c, sf_B99D0] # no rodata
|
||||
- [0xBB360, c, sf_BB360]
|
||||
- [0xBD360, c, sf_versus]
|
||||
- [0xC3430, c, sf_C3430]
|
||||
|
||||
# DATA - Libultra
|
||||
- [0xC3EE0, data, libraries]
|
||||
# DATA - Microcode
|
||||
- [0xC3EE0, data, aspmain]
|
||||
- [0xC4210, data, audiotables]
|
||||
- [0xC49D0, data, f3dex]
|
||||
|
||||
# RODATA - Libultra
|
||||
# DATA - Nintendo Libraries
|
||||
- [0xC51D0, data, nlib]
|
||||
|
||||
# DATA - Libultra
|
||||
- [0xC88C0, data, ../libultra/libultra]
|
||||
|
||||
# RODATA - Nintendo Libraries
|
||||
- [0xC8CC0, .rodata, 5A20]
|
||||
- [0xC8D10, .rodata, 6280]
|
||||
- [0xC8D20, .rodata, 7D30]
|
||||
@@ -193,17 +206,20 @@
|
||||
- [0xC99D0, .rodata, 17650]
|
||||
- [0xC9CF0, .rodata, 1EB50]
|
||||
- [0xC9F10, .rodata, math64]
|
||||
|
||||
# RODATA - Libultra
|
||||
- [0xC9F30, .rodata, ../libultra/gu/perspective]
|
||||
- [0xC9F40, .rodata, ../libultra/gu/sinf]
|
||||
- [0xC9F90, .rodata, ../libultra/gu/cosf]
|
||||
- [0xC9FE0, .rodata, 24C60]
|
||||
- [0xCA0E0, rodata, 25F50] # handwritten
|
||||
- [0xC9FE0, .rodata, ../libultra/libc/xprintf]
|
||||
- [0xCA0E0, rodata, ../libultra/os/exceptasm]
|
||||
- [0xCA150, .rodata, ../libultra/io/devmgr]
|
||||
- [0xCA170, rodata, __libm_qnan_f]
|
||||
- [0xCA180, .rodata, ../libultra/rmon/xldtob]
|
||||
- [0xCA1E0, .rodata, ../libultra/2BDF0]
|
||||
- [0xCA5A0, .rodata, 2DF00]
|
||||
- [0xCA650, rodata, ../libultra/rmon/rmonrcp]
|
||||
- [0xCA170, rodata, ../libultra/gu/libm_vals]
|
||||
- [0xCA180, .rodata, ../libultra/libc/xldtob]
|
||||
- [0xCA1E0, rodata, ../libultra/os/setintmask]
|
||||
- [0xCA260, .rodata, ../libultra/rmon/rmonmem]
|
||||
- [0xCA5A0, .rodata, ../libultra/rmon/rmonbrk]
|
||||
- [0xCA650, rodata, ../libultra/rmon/rmonrcp]
|
||||
|
||||
# DATA - game engine
|
||||
- [0xCA690, data, engine]
|
||||
|
||||
Reference in New Issue
Block a user