Match some more Libultra (#639)

This commit is contained in:
JoshDuMan 2022-02-08 09:05:20 -05:00 committed by GitHub
parent 44d51a0771
commit 348d12c4e3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
99 changed files with 628 additions and 883 deletions

203
include/PR/controller.h Normal file
View File

@ -0,0 +1,203 @@
#ifndef _CONTROLLER_H
#define _CONTROLLER_H
#include "os_internal.h"
#include "rcp.h"
//should go somewhere else but
typedef struct {
/* 0x0 */ u32 ramarray[15];
/* 0x3C */ u32 pifstatus;
} OSPifRam;
typedef struct {
/* 0x0 */ u8 dummy;
/* 0x1 */ u8 txsize;
/* 0x2 */ u8 rxsize;
/* 0x3 */ u8 cmd;
/* 0x4 */ u16 button;
/* 0x6 */ s8 stick_x;
/* 0x7 */ s8 stick_y;
} __OSContReadFormat;
typedef struct
{
/* 0x0 */ u8 dummy;
/* 0x1 */ u8 txsize;
/* 0x2 */ u8 rxsize;
/* 0x3 */ u8 cmd;
/* 0x4 */ u8 typeh;
/* 0x5 */ u8 typel;
/* 0x6 */ u8 status;
/* 0x7 */ u8 dummy1;
} __OSContRequesFormat;
typedef struct
{
/* 0x0 */ u8 txsize;
/* 0x1 */ u8 rxsize;
/* 0x2 */ u8 cmd;
/* 0x3 */ u8 typeh;
/* 0x4 */ u8 typel;
/* 0x5 */ u8 status;
} __OSContRequesFormatShort;
typedef struct
{
/* 0x0 */ u8 dummy;
/* 0x1 */ u8 txsize;
/* 0x2 */ u8 rxsize;
/* 0x3 */ u8 cmd;
/* 0x4 */ u16 address;
/* 0x6 */ u8 data[BLOCKSIZE];
/* 0x26 */ u8 datacrc;
} __OSContRamReadFormat;
typedef union {
/* 0x0 */ struct
{
/* 0x0 */ u8 bank;
/* 0x1 */ u8 page;
} inode_t;
/* 0x0 */ u16 ipage;
} __OSInodeUnit;
typedef struct
{
/* 0x0 */ u32 game_code;
/* 0x4 */ u16 company_code;
/* 0x6 */ __OSInodeUnit start_page;
/* 0x8 */ u8 status;
/* 0x9 */ s8 reserved;
/* 0xA */ u16 data_sum;
/* 0xC */ u8 ext_name[PFS_FILE_EXT_LEN];
/* 0x10 */ u8 game_name[PFS_FILE_NAME_LEN];
} __OSDir;
typedef struct
{
/* 0x0 */ __OSInodeUnit inode_page[128];
} __OSInode;
typedef struct
{
/* 0x0 */ u32 repaired;
/* 0x4 */ u32 random;
/* 0x8 */ u64 serial_mid;
/* 0x10 */ u64 serial_low;
/* 0x18 */ u16 deviceid;
/* 0x1A */ u8 banks;
/* 0x1B */ u8 version;
/* 0x1C */ u16 checksum;
/* 0x1E */ u16 inverted_checksum;
} __OSPackId;
typedef struct
{
/* 0x0 */ u8 txsize;
/* 0x1 */ u8 rxsize;
/* 0x2 */ u8 cmd;
/* 0x3 */ u8 address;
/* 0x4 */ u8 data[EEPROM_BLOCK_SIZE];
} __OSContEepromFormat;
//from: http://en64.shoutwiki.com/wiki/SI_Registers_Detailed#CONT_CMD_Usage
#define CONT_CMD_REQUEST_STATUS 0
#define CONT_CMD_READ_BUTTON 1
#define CONT_CMD_READ_MEMPACK 2
#define CONT_CMD_WRITE_MEMPACK 3
#define CONT_CMD_READ_EEPROM 4
#define CONT_CMD_WRITE_EEPROM 5
#define CONT_CMD_RESET 0xff
#define CONT_CMD_REQUEST_STATUS_TX 1
#define CONT_CMD_READ_BUTTON_TX 1
#define CONT_CMD_READ_MEMPACK_TX 3
#define CONT_CMD_WRITE_MEMPACK_TX 35
#define CONT_CMD_READ_EEPROM_TX 2
#define CONT_CMD_WRITE_EEPROM_TX 10
#define CONT_CMD_RESET_TX 1
#define CONT_CMD_REQUEST_STATUS_RX 3
#define CONT_CMD_READ_BUTTON_RX 4
#define CONT_CMD_READ_MEMPACK_RX 33
#define CONT_CMD_WRITE_MEMPACK_RX 1
#define CONT_CMD_READ_EEPROM_RX 8
#define CONT_CMD_WRITE_EEPROM_RX 1
#define CONT_CMD_RESET_RX 3
#define CONT_CMD_NOP 0xff
#define CONT_CMD_END 0xfe //indicates end of a command
#define CONT_CMD_EXE 1 //set pif ram status byte to this to do a command
#define DIR_STATUS_EMPTY 0
#define DIR_STATUS_UNKNOWN 1
#define DIR_STATUS_OCCUPIED 2
typedef struct
{
/* 0x0 */ __OSInode inode;
/* 0x100 */ u8 bank;
/* 0x101 */ u8 map[256];
} __OSInodeCache;
extern s32 __osEepStatus(OSMesgQueue *, OSContStatus *);
u16 __osSumcalc(u8 *ptr, int length);
s32 __osIdCheckSum(u16 *ptr, u16 *csum, u16 *icsum);
s32 __osRepairPackId(OSPfs *pfs, __OSPackId *badid, __OSPackId *newid);
s32 __osCheckPackId(OSPfs *pfs, __OSPackId *temp);
s32 __osGetId(OSPfs *pfs);
s32 __osCheckId(OSPfs *pfs);
s32 __osPfsRWInode(OSPfs *pfs, __OSInode *inode, u8 flag, u8 bank);
s32 __osPfsSelectBank(OSPfs *pfs);
s32 __osPfsDeclearPage(OSPfs *pfs, __OSInode *inode, int file_size_in_pages, int *first_page, u8 bank, int *decleared, int *last_page);
s32 __osPfsReleasePages(OSPfs *pfs, __OSInode *inode, u8 start_page, u16 *sum, u8 bank, __OSInodeUnit *last_page, int flag);
s32 __osBlockSum(OSPfs *pfs, u8 page_no, u16 *sum, u8 bank);
s32 __osContRamRead(OSMesgQueue *mq, int channel, u16 address, u8 *buffer);
s32 __osContRamWrite(OSMesgQueue *mq, int channel, u16 address, u8 *buffer, int force);
void __osContGetInitData(u8 *pattern, OSContStatus *data);
void __osPackRequestData(u8 cmd);
void __osPfsRequestData(u8 cmd);
void __osPfsGetInitData(u8* pattern, OSContStatus* data);
u8 __osContAddressCrc(u16 addr);
u8 __osContDataCrc(u8 *data);
s32 __osPfsGetStatus(OSMesgQueue *queue, int channel);
extern u8 __osContLastCmd;
extern OSTimer __osEepromTimer;
extern OSMesg __osEepromTimerMsg;
extern OSMesgQueue __osEepromTimerQ;
extern OSPifRam __osEepPifRam;
extern OSPifRam __osContPifRam;
extern OSPifRam __osPfsPifRam;
extern u8 __osMaxControllers;
//some version of this almost certainly existed since there's plenty of times where it's used right before a return 0
#define ERRCK(fn) \
ret = fn; \
if (ret != 0) \
return ret;
#define SET_ACTIVEBANK_TO_ZERO \
if (pfs->activebank != 0) \
{ \
pfs->activebank = 0; \
ERRCK(__osPfsSelectBank(pfs)) \
}
#define PFS_CHECK_ID \
if (__osCheckId(pfs) == PFS_ERR_NEW_PACK) \
return PFS_ERR_NEW_PACK;
#endif
#define PFS_CHECK_STATUS \
if ((pfs->status & PFS_INITIALIZED) == 0) \
return PFS_ERR_INVALID;
#define PFS_GET_STATUS \
__osSiGetAccess(); \
ret = __osPfsGetStatus(queue, channel); \
__osSiRelAccess(); \
if (ret != 0) \
return ret;

10
include/PR/siint.h Normal file
View File

@ -0,0 +1,10 @@
#ifndef _SIINT_H
#define _SIINT_H
#include "PR/os_internal.h"
#include "PR/rcp.h"
void __osSiGetAccess(void);
void __osSiRelAccess(void);
int __osSiDeviceBusy(void);
void __osSiCreateAccessQueue(void);
#endif

View File

@ -224,7 +224,7 @@ void render_curtains(void) {
}
if (gCurtainScale < 1.9) {
Mtx m;
Matrix4f m;
f32 scale;
s8 rgb;
@ -232,8 +232,8 @@ void render_curtains(void) {
gDPSetColorImage(gMasterGfxPos++, G_IM_FMT_RGBA, G_IM_SIZ_16b, SCREEN_WIDTH, osVirtualToPhysical(nuGfxCfb_ptr));
gSPDisplayList(gMasterGfxPos++, &D_800760C0);
guFrustumF(m.m[0], -80.0f, 80.0f, -60.0f, 60.0f, 160.0f, 640.0f, 1.0f);
guMtxF2L(m.m[0], &D_8009BAA8[0]);
guFrustumF(m, -80.0f, 80.0f, -60.0f, 60.0f, 160.0f, 640.0f, 1.0f);
guMtxF2L(m, &D_8009BAA8[0]);
gSPMatrix(gMasterGfxPos++, &D_8009BAA8[0], G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_PROJECTION);
@ -242,9 +242,9 @@ void render_curtains(void) {
scale = 1.0f;
}
guPositionF(m.m[0], 0.0f, 0.0f, 0.0f, scale * 0.1, 0.0f, 0.0f, -320.0f);
guPositionF(m, 0.0f, 0.0f, 0.0f, scale * 0.1, 0.0f, 0.0f, -320.0f);
guMtxF2L(m.m[0], &D_8009BAA8[1]);
guMtxF2L(m, &D_8009BAA8[1]);
gSPMatrix(gMasterGfxPos++, &D_8009BAA8[1], G_MTX_PUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
rgb = 255.0f - (gCurtainFade * 255.0f);

View File

@ -11,10 +11,10 @@ s32 osContStartQuery(OSMesgQueue* mq) {
osSiGetAccess();
if (D_8009A61C != 0) {
osPackRequestData(0);
osSiRawStartDma(1, &D_800B0ED0);
__osSiRawStartDma(1, &D_800B0ED0);
osRecvMesg(mq, NULL, 1);
}
ret = osSiRawStartDma(0, &D_800B0ED0);
ret = __osSiRawStartDma(0, &D_800B0ED0);
D_8009A61C = 0;
osSiRelAccess();

View File

@ -1,3 +0,0 @@
#include "common.h"
INCLUDE_ASM(void, "os/41050_len_120", osSpTaskYield, void);

View File

@ -1,3 +0,0 @@
#include "common.h"
INCLUDE_ASM(s32, "os/44380_len_4e0", osPfsFreeBlocks, OSPfs* pfs, s32* unk1);

View File

@ -1,3 +0,0 @@
#include "common.h"
INCLUDE_ASM(s32, "os/45a30_len_20", osAfterPreNMI, void);

View File

@ -1,7 +0,0 @@
#include "common.h"
INCLUDE_ASM(s32, "os/46880_len_260", osPiRawStartDma);
INCLUDE_ASM(s32, "os/46880_len_260", osPiGetCmdQueue);
INCLUDE_ASM(s32, "os/46880_len_260", osEPiRawReadIo);

View File

@ -1,3 +0,0 @@
#include "common.h"
INCLUDE_ASM(s32, "os/46ae0_len_170", osEPiRawWriteIo);

View File

@ -1,3 +0,0 @@
#include "common.h"
INCLUDE_ASM(s32, "os/46c50_len_20", osAiDeviceBusy);

View File

@ -1,3 +0,0 @@
#include "common.h"
INCLUDE_ASM(s32, "os/47a80_len_10", osSetCompare);

View File

@ -1,9 +0,0 @@
#include "common.h"
INCLUDE_ASM(s32, "os/47a90_len_50", osSetFpcCsr);
INCLUDE_ASM(s32, "os/47a90_len_50", osSetSR);
INCLUDE_ASM(s32, "os/47a90_len_50", osSetWatchLo);
INCLUDE_ASM(s32, "os/47a90_len_50", osSpDeviceBusy);

View File

@ -1,9 +0,0 @@
#include "common.h"
INCLUDE_ASM(s32, "os/47ae0_len_e0", osSpGetStatus);
INCLUDE_ASM(s32, "os/47ae0_len_e0", osSpSetStatus);
INCLUDE_ASM(s32, "os/47ae0_len_e0", osSpSetPc);
INCLUDE_ASM(s32, "os/47ae0_len_e0", osSpRawStartDma);

View File

@ -1,3 +0,0 @@
#include "common.h"
INCLUDE_ASM(s32, "os/47bc0_len_50", osSiRawReadIo);

View File

@ -1,3 +0,0 @@
#include "common.h"
INCLUDE_ASM(s32, "os/47c10_len_50", osSiRawWriteIo);

View File

@ -4,7 +4,7 @@
INCLUDE_ASM(s32, "os/47c60_len_f0", osContAddressCrc);
u8 osContDataCrc(u8* data) {
u8 __osContDataCrc(u8* data) {
s32 ret;
u32 bit;
u32 byte;

View File

@ -1,3 +0,0 @@
#include "common.h"
INCLUDE_ASM(void, "os/47d50_len_e0", osDestroyThread, OSThread* thread);

View File

@ -1,3 +0,0 @@
#include "common.h"
INCLUDE_ASM(void, "os/47fc0_len_60", guNormalize, float* x, float* y, float* z);

5
src/os/afterprenmi.c Normal file
View File

@ -0,0 +1,5 @@
#include "PR/os_internal.h"
s32 osAfterPreNMI(void) {
return __osSpSetPc(0);
}

13
src/os/ai.c Normal file
View File

@ -0,0 +1,13 @@
#include "PR/os_internal.h"
#include "PR/rcp.h"
s32 __osAiDeviceBusy(void) {
register s32 status = IO_READ(AI_STATUS_REG);
if (status & AI_STATUS_FIFO_FULL) {
return TRUE;
}
return FALSE;
}

37
src/os/destroythread.c Normal file
View File

@ -0,0 +1,37 @@
#include "PR/os_internal.h"
#include "PR/osint.h"
void osDestroyThread(OSThread *t) {
register u32 saveMask;
register OSThread *pred;
register OSThread *succ;
saveMask = __osDisableInt();
if (t == NULL) {
t = __osRunningThread;
} else if (t->state != OS_STATE_STOPPED) {
__osDequeueThread(t->queue, t);
}
if (__osActiveQueue == t) {
__osActiveQueue = __osActiveQueue->tlnext;
} else {
pred = __osActiveQueue;
while (pred->priority != -1) {
succ = pred->tlnext;
if (succ == t) {
pred->tlnext = t->tlnext;
break;
}
pred = succ;
succ = pred->tlnext;
}
}
if (t == __osRunningThread) {
__osDispatchThread();
}
__osRestoreInt(saveMask);
}

11
src/os/epirawread.c Normal file
View File

@ -0,0 +1,11 @@
#include "PR/piint.h"
s32 __osEPiRawReadIo(OSPiHandle* pihandle, u32 devAddr, u32* data) {
u32 stat;
u32 domain;
EPI_SYNC(pihandle, stat, domain);
*data = IO_READ(pihandle->baseAddress | devAddr);
return 0;
}

11
src/os/epirawwrite.c Normal file
View File

@ -0,0 +1,11 @@
#include "PR/piint.h"
s32 __osEPiRawWriteIo(OSPiHandle* pihandle, u32 devAddr, u32 data) {
u32 stat;
u32 domain;
EPI_SYNC(pihandle, stat, domain);
IO_WRITE(pihandle->baseAddress | devAddr, data);
return 0;
}

View File

@ -1,6 +1,6 @@
#include "PR/rcp.h"
s32 osSiDeviceBusy(void) {
s32 __osSiDeviceBusy(void) {
register u32 status = IO_READ(SI_STATUS_REG);
if (status & (SI_STATUS_DMA_BUSY | SI_STATUS_RD_BUSY)) {

View File

@ -1,3 +0,0 @@
#include "common.h"
INCLUDE_ASM(s32, "os/osSiRawStartDma", osSiRawStartDma);

View File

@ -1,3 +1,6 @@
#include "common.h"
#include "PR/os_internal.h"
#include "PR/rcp.h"
INCLUDE_ASM(void, "os/osSpTaskYield", osSpTaskYield);
void osSpTaskYield(void) {
__osSpSetStatus(SP_SET_YIELD);
}

View File

@ -1,3 +0,0 @@
#include "common.h"
INCLUDE_ASM(OSYieldResult, "os/osSpTaskYielded", osSpTaskYielded, OSTask* tp);

35
src/os/pfsfreeblocks.c Normal file
View File

@ -0,0 +1,35 @@
#include "macros.h"
#include "PR/os_internal.h"
#include "PR/controller.h"
s32 osPfsFreeBlocks(OSPfs* pfs, s32* leftoverBytes) {
s32 j;
s32 pages = 0;
__OSInode inode;
s32 ret = 0;
u8 bank;
s32 offset;
if (!(pfs->status & PFS_INITIALIZED)) {
return (PFS_ERR_INVALID);
}
if ((ret = __osCheckId(pfs)) != 0) {
return ret;
}
for (bank = 0; bank < pfs->banks; bank++) {
if ((ret = __osPfsRWInode(pfs, &inode, PFS_READ, bank)) != 0) {
return ret;
}
offset = ((bank > 0) ? 1 : pfs->inode_start_page);
for (j = offset; j < ARRAY_COUNT(inode.inode_page); j++) {
if (inode.inode_page[j].ipage == 3) {
pages++;
}
}
}
*leftoverBytes = pages * PFS_ONE_PAGE * BLOCKSIZE;
return 0;
}

9
src/os/pigetcmdq.c Normal file
View File

@ -0,0 +1,9 @@
#include "PR/piint.h"
OSMesgQueue *osPiGetCmdQueue(void) {
if (!__osPiDevMgr.active) {
return NULL;
}
return __osPiDevMgr.cmdQueue;
}

22
src/os/pirawdma.c Normal file
View File

@ -0,0 +1,22 @@
#include "PR/piint.h"
s32 __osPiRawStartDma(s32 direction, u32 devAddr, void* dramAddr, u32 size) {
register u32 stat;
WAIT_ON_IOBUSY(stat);
IO_WRITE(PI_DRAM_ADDR_REG, osVirtualToPhysical(dramAddr));
IO_WRITE(PI_CART_ADDR_REG, K1_TO_PHYS((u32)osRomBase | devAddr));
switch (direction) {
case OS_READ:
IO_WRITE(PI_WR_LEN_REG, size - 1);
break;
case OS_WRITE:
IO_WRITE(PI_RD_LEN_REG, size - 1);
break;
default:
return -1;
}
return 0;
}

23
src/os/sirawdma.c Normal file
View File

@ -0,0 +1,23 @@
#include "PR/os_internal.h"
#include "PR/siint.h"
s32 __osSiRawStartDma(s32 direction, void *dramAddr)
{
if (IO_READ(SI_STATUS_REG) & (SI_STATUS_DMA_BUSY | SI_STATUS_RD_BUSY))
return -1;
if (direction == OS_WRITE)
osWritebackDCache(dramAddr, 64);
IO_WRITE(SI_DRAM_ADDR_REG, osVirtualToPhysical(dramAddr));
if (direction == OS_READ)
IO_WRITE(SI_PIF_ADDR_RD64B_REG, 0x1FC007C0);
else
IO_WRITE(SI_PIF_ADDR_WR64B_REG, 0x1FC007C0);
if (direction == OS_READ)
osInvalDCache(dramAddr, 64);
return 0;
}

10
src/os/sirawread.c Normal file
View File

@ -0,0 +1,10 @@
#include "PR/os_internal.h"
#include "PR/siint.h"
s32 __osSiRawReadIo(u32 devAddr, u32 *data) {
if (__osSiDeviceBusy())
return -1;
*data = IO_READ(devAddr);
return 0;
}

11
src/os/sirawwrite.c Normal file
View File

@ -0,0 +1,11 @@
#include "PR/os_internal.h"
#include "PR/siint.h"
s32 __osSiRawWriteIo(u32 devAddr, u32 data) {
if (__osSiDeviceBusy()) {
return -1;
}
IO_WRITE(devAddr, data);
return 0;
}

11
src/os/sp.c Normal file
View File

@ -0,0 +1,11 @@
#include "PR/rcp.h"
int __osSpDeviceBusy(void) {
register u32 stat = IO_READ(SP_STATUS_REG);
if (stat & (SP_STATUS_DMA_BUSY | SP_STATUS_DMA_FULL | SP_STATUS_IO_FULL)) {
return TRUE;
}
return FALSE;
}

5
src/os/spgetstat.c Normal file
View File

@ -0,0 +1,5 @@
#include "PR/rcp.h"
u32 __osSpGetStatus(void) {
return IO_READ(SP_STATUS_REG);
}

19
src/os/sprawdma.c Normal file
View File

@ -0,0 +1,19 @@
#include "PR/os_internal.h"
#include "PR/rcp.h"
#include "PR/osint.h"
// TODO: this comes from a header
#ident "$Revision: 1.17 $"
s32 __osSpRawStartDma(s32 direction, u32 devAddr, void *dramAddr, u32 size)
{
if (__osSpDeviceBusy())
return -1;
IO_WRITE(SP_MEM_ADDR_REG, devAddr);
IO_WRITE(SP_DRAM_ADDR_REG, osVirtualToPhysical(dramAddr));
if (direction == OS_READ)
IO_WRITE(SP_WR_LEN_REG, size - 1);
else
IO_WRITE(SP_RD_LEN_REG, size - 1);
return 0;
}

12
src/os/spsetpc.c Normal file
View File

@ -0,0 +1,12 @@
#include "PR/rcp.h"
s32 __osSpSetPc(u32 pc) {
register u32 status = IO_READ(SP_STATUS_REG);
if (!(status & SP_STATUS_HALT)) {
return -1;
}
IO_WRITE(SP_PC_REG, pc);
return 0;
}

6
src/os/sptaskyield.c Normal file
View File

@ -0,0 +1,6 @@
#include "PR/os_internal.h"
#include "PR/rcp.h"
void __osSpSetStatus(u32 data) {
IO_WRITE(SP_STATUS_REG, data);
}

18
src/os/sptaskyielded.c Normal file
View File

@ -0,0 +1,18 @@
#include "PR/os_internal.h"
#include "PR/sptask.h"
#include "PR/rcp.h"
OSYieldResult osSpTaskYielded(OSTask *tp) {
u32 status;
OSYieldResult result;
status = __osSpGetStatus();
result = status >> 8;
result &= 1;
if (status & SP_STATUS_YIELD) {
tp->t.flags = ~(OS_TASK_DP_WAIT) & (tp->t.flags | result);
}
return result;
}

View File

@ -18,7 +18,7 @@ D_800FBB60 = 0x800FBB60;
D_800FBBE0 = 0x800FBBE0;
D_80200000 = 0x80200000;
osTvType = 0x80000300;
D_80000308 = 0x80000308;
osRomBase = 0x80000308;
D_8000030C = 0x8000030C;
osMemSize = 0x80000318;
D_8000031C = 0x8000031C;

View File

@ -29,9 +29,9 @@ glabel func_8006CA70
/* 47ED0 8006CAD0 AC225904 */ sw $v0, %lo(D_80095904)($at)
/* 47ED4 8006CAD4 14600004 */ bnez $v1, .L8006CAE8
/* 47ED8 8006CAD8 24020002 */ addiu $v0, $zero, 2
/* 47EDC 8006CADC 3C028009 */ lui $v0, %hi(D_80095970)
/* 47EDC 8006CADC 3C028009 */ lui $v0, %hi(vi)
/* 47EE0 8006CAE0 0801B2C1 */ j .L8006CB04
/* 47EE4 8006CAE4 24425970 */ addiu $v0, $v0, %lo(D_80095970)
/* 47EE4 8006CAE4 24425970 */ addiu $v0, $v0, %lo(vi)
.L8006CAE8:
/* 47EE8 8006CAE8 14620004 */ bne $v1, $v0, .L8006CAFC
/* 47EEC 8006CAEC 00000000 */ nop

View File

@ -762,7 +762,7 @@ D_80095932 = 0x80095932;
D_80095902 = 0x80095902;
D_80095934 = 0x80095934;
D_80095904 = 0x80095904;
D_80095970 = 0x80095970;
vi = 0x80095970;
D_800959C0 = 0x800959C0;
D_80095938 = 0x80095938;
D_80099E20 = 0x80099E20;

View File

@ -80,7 +80,7 @@ dlabel D_80095940
dlabel D_80095954
.ascii "0123456789ABCDEF\0\0\0\0\0\0\0\0\0\0\0\0"
dlabel D_80095970
dlabel vi
.short 0x0000
dlabel D_80095972
@ -102,7 +102,7 @@ dlabel D_800959A8
.word 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
dlabel __osViCurr
.word D_80095970
.word vi
dlabel __osViNext
.word D_800959A0, 0x00000000, 0x00000000

View File

@ -141,7 +141,7 @@ glabel func_80240504_EE6AB4
/* EE6CAC 802406FC 00A32821 */ addu $a1, $a1, $v1
/* EE6CB0 80240700 00452821 */ addu $a1, $v0, $a1
/* EE6CB4 80240704 46200020 */ cvt.s.d $f0, $f0
/* EE6CB8 80240708 0C01B1B0 */ jal osSpDeviceBusy
/* EE6CB8 80240708 0C01B1B0 */ jal __osSpDeviceBusy
/* EE6CBC 8024070C E7A00034 */ swc1 $f0, 0x34($sp)
/* EE6CC0 80240710 0000202D */ daddu $a0, $zero, $zero
/* EE6CC4 80240714 27A50050 */ addiu $a1, $sp, 0x50

View File

@ -16,7 +16,7 @@ glabel osContStartReadData
/* 3CDCC 800619CC 00000000 */ nop
/* 3CDD0 800619D0 3C05800B */ lui $a1, %hi(D_800B0ED0)
/* 3CDD4 800619D4 24A50ED0 */ addiu $a1, $a1, %lo(D_800B0ED0)
/* 3CDD8 800619D8 0C019730 */ jal osSiRawStartDma
/* 3CDD8 800619D8 0C019730 */ jal __osSiRawStartDma
/* 3CDDC 800619DC 24040001 */ addiu $a0, $zero, 1
/* 3CDE0 800619E0 02002021 */ addu $a0, $s0, $zero
/* 3CDE4 800619E4 00002821 */ addu $a1, $zero, $zero
@ -25,7 +25,7 @@ glabel osContStartReadData
.L800619F0:
/* 3CDF0 800619F0 3C05800B */ lui $a1, %hi(D_800B0ED0)
/* 3CDF4 800619F4 24A50ED0 */ addiu $a1, $a1, %lo(D_800B0ED0)
/* 3CDF8 800619F8 0C019730 */ jal osSiRawStartDma
/* 3CDF8 800619F8 0C019730 */ jal __osSiRawStartDma
/* 3CDFC 800619FC 00002021 */ addu $a0, $zero, $zero
/* 3CE00 80061A00 24030001 */ addiu $v1, $zero, 1
/* 3CE04 80061A04 3C01800A */ lui $at, %hi(D_8009A61C)

View File

@ -107,12 +107,12 @@ glabel osSpTaskLoad
.L80065B8C:
/* 40F8C 80065B8C 0C018614 */ jal osWritebackDCache
/* 40F90 80065B90 24050040 */ addiu $a1, $zero, 0x40
/* 40F94 80065B94 0C01B1BC */ jal osSpSetStatus
/* 40F94 80065B94 0C01B1BC */ jal __osSpSetStatus
/* 40F98 80065B98 24042B00 */ addiu $a0, $zero, 0x2b00
/* 40F9C 80065B9C 2410FFFF */ addiu $s0, $zero, -1
/* 40FA0 80065BA0 3C040400 */ lui $a0, 0x400
.L80065BA4:
/* 40FA4 80065BA4 0C01B1C0 */ jal osSpSetPc
/* 40FA4 80065BA4 0C01B1C0 */ jal __osSpSetPc
/* 40FA8 80065BA8 34841000 */ ori $a0, $a0, 0x1000
/* 40FAC 80065BAC 1050FFFD */ beq $v0, $s0, .L80065BA4
/* 40FB0 80065BB0 3C040400 */ lui $a0, 0x400
@ -122,12 +122,12 @@ glabel osSpTaskLoad
/* 40FBC 80065BBC 3C050400 */ lui $a1, 0x400
/* 40FC0 80065BC0 34A50FC0 */ ori $a1, $a1, 0xfc0
/* 40FC4 80065BC4 02203021 */ addu $a2, $s1, $zero
/* 40FC8 80065BC8 0C01B1CC */ jal osSpRawStartDma
/* 40FC8 80065BC8 0C01B1CC */ jal __osSpRawStartDma
/* 40FCC 80065BCC 24070040 */ addiu $a3, $zero, 0x40
/* 40FD0 80065BD0 1050FFFA */ beq $v0, $s0, .L80065BBC
/* 40FD4 80065BD4 24040001 */ addiu $a0, $zero, 1
.L80065BD8:
/* 40FD8 80065BD8 0C01B1B0 */ jal osSpDeviceBusy
/* 40FD8 80065BD8 0C01B1B0 */ jal __osSpDeviceBusy
/* 40FDC 80065BDC 00000000 */ nop
/* 40FE0 80065BE0 1440FFFD */ bnez $v0, .L80065BD8
/* 40FE4 80065BE4 24040001 */ addiu $a0, $zero, 1
@ -136,7 +136,7 @@ glabel osSpTaskLoad
/* 40FEC 80065BEC 8E260008 */ lw $a2, 8($s1)
/* 40FF0 80065BF0 8E27000C */ lw $a3, 0xc($s1)
/* 40FF4 80065BF4 3C050400 */ lui $a1, 0x400
/* 40FF8 80065BF8 0C01B1CC */ jal osSpRawStartDma
/* 40FF8 80065BF8 0C01B1CC */ jal __osSpRawStartDma
/* 40FFC 80065BFC 34A51000 */ ori $a1, $a1, 0x1000
/* 41000 80065C00 1050FFFA */ beq $v0, $s0, .L80065BEC
/* 41004 80065C04 24040001 */ addiu $a0, $zero, 1

View File

@ -5,11 +5,11 @@ glabel osSpTaskStartGo
/* 4101C 80065C1C 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 41020 80065C20 AFBF0010 */ sw $ra, 0x10($sp)
.L80065C24:
/* 41024 80065C24 0C01B1B0 */ jal osSpDeviceBusy
/* 41024 80065C24 0C01B1B0 */ jal __osSpDeviceBusy
/* 41028 80065C28 00000000 */ nop
/* 4102C 80065C2C 1440FFFD */ bnez $v0, .L80065C24
/* 41030 80065C30 00000000 */ nop
/* 41034 80065C34 0C01B1BC */ jal osSpSetStatus
/* 41034 80065C34 0C01B1BC */ jal __osSpSetStatus
/* 41038 80065C38 24040125 */ addiu $a0, $zero, 0x125
/* 4103C 80065C3C 8FBF0010 */ lw $ra, 0x10($sp)
/* 41040 80065C40 03E00008 */ jr $ra

View File

@ -1,12 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel osSpTaskYield
/* 41050 80065C50 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 41054 80065C54 AFBF0010 */ sw $ra, 0x10($sp)
/* 41058 80065C58 0C01B1BC */ jal osSpSetStatus
/* 4105C 80065C5C 24040400 */ addiu $a0, $zero, 0x400
/* 41060 80065C60 8FBF0010 */ lw $ra, 0x10($sp)
/* 41064 80065C64 03E00008 */ jr $ra
/* 41068 80065C68 27BD0018 */ addiu $sp, $sp, 0x18
/* 4106C 80065C6C 00000000 */ nop

View File

@ -10,7 +10,7 @@ glabel viMgrMain
/* 42024 80066C24 AFB30024 */ sw $s3, 0x24($sp)
/* 42028 80066C28 AFB20020 */ sw $s2, 0x20($sp)
/* 4202C 80066C2C AFB1001C */ sw $s1, 0x1c($sp)
/* 42030 80066C30 0C01B2E8 */ jal osViGetCurrentContext
/* 42030 80066C30 0C01B2E8 */ jal __osViGetCurrentContext
/* 42034 80066C34 AFA00010 */ sw $zero, 0x10($sp)
/* 42038 80066C38 94420002 */ lhu $v0, 2($v0)
/* 4203C 80066C3C 3C01800B */ lui $at, %hi(D_800AF910)
@ -48,7 +48,7 @@ glabel viMgrMain
/* 420B0 80066CB0 3042FFFF */ andi $v0, $v0, 0xffff
/* 420B4 80066CB4 1440000C */ bnez $v0, .L80066CE8
/* 420B8 80066CB8 00000000 */ nop
/* 420BC 80066CBC 0C01B2E8 */ jal osViGetCurrentContext
/* 420BC 80066CBC 0C01B2E8 */ jal __osViGetCurrentContext
/* 420C0 80066CC0 00000000 */ nop
/* 420C4 80066CC4 8C440010 */ lw $a0, 0x10($v0)
/* 420C8 80066CC8 10800004 */ beqz $a0, .L80066CDC

View File

@ -46,7 +46,7 @@ glabel __osMotorAccess
/* 4329C 80067E9C 3C01800A */ lui $at, %hi(D_8009A61C)
/* 432A0 80067EA0 A022A61C */ sb $v0, %lo(D_8009A61C)($at)
/* 432A4 80067EA4 00052980 */ sll $a1, $a1, 6
/* 432A8 80067EA8 0C019730 */ jal osSiRawStartDma
/* 432A8 80067EA8 0C019730 */ jal __osSiRawStartDma
/* 432AC 80067EAC 00B02821 */ addu $a1, $a1, $s0
/* 432B0 80067EB0 8E240004 */ lw $a0, 4($s1)
/* 432B4 80067EB4 00002821 */ addu $a1, $zero, $zero
@ -55,7 +55,7 @@ glabel __osMotorAccess
/* 432C0 80067EC0 8E250008 */ lw $a1, 8($s1)
/* 432C4 80067EC4 00002021 */ addu $a0, $zero, $zero
/* 432C8 80067EC8 00052980 */ sll $a1, $a1, 6
/* 432CC 80067ECC 0C019730 */ jal osSiRawStartDma
/* 432CC 80067ECC 0C019730 */ jal __osSiRawStartDma
/* 432D0 80067ED0 00B02821 */ addu $a1, $a1, $s0
/* 432D4 80067ED4 8E240004 */ lw $a0, 4($s1)
/* 432D8 80067ED8 00002821 */ addu $a1, $zero, $zero

View File

@ -82,7 +82,7 @@ glabel osMotorInit
/* 43460 80068060 24020003 */ addiu $v0, $zero, 3
/* 43464 80068064 A3A20033 */ sb $v0, 0x33($sp)
/* 43468 80068068 240200C0 */ addiu $v0, $zero, 0xc0
/* 4346C 8006806C 0C01B218 */ jal osContAddressCrc
/* 4346C 8006806C 0C01B218 */ jal __osContAddressCrc
/* 43470 80068070 A3A20034 */ sb $v0, 0x34($sp)
/* 43474 80068074 12200008 */ beqz $s1, .L80068098
/* 43478 80068078 A3A20035 */ sb $v0, 0x35($sp)

View File

@ -90,7 +90,7 @@ glabel osPfsAllocateFile
/* 436CC 800682CC 27A50020 */ addiu $a1, $sp, 0x20
/* 436D0 800682D0 00003021 */ addu $a2, $zero, $zero
/* 436D4 800682D4 323000FF */ andi $s0, $s1, 0xff
/* 436D8 800682D8 0C01A7A3 */ jal osPfsRWInode
/* 436D8 800682D8 0C01A7A3 */ jal __osPfsRWInode
/* 436DC 800682DC 02003821 */ addu $a3, $s0, $zero
/* 436E0 800682E0 00401821 */ addu $v1, $v0, $zero
/* 436E4 800682E4 14600048 */ bnez $v1, .L80068408
@ -119,7 +119,7 @@ glabel osPfsAllocateFile
/* 43740 80068340 8FA30244 */ lw $v1, 0x244($sp)
/* 43744 80068344 24060001 */ addiu $a2, $zero, 1
/* 43748 80068348 32E700FF */ andi $a3, $s7, 0xff
/* 4374C 8006834C 0C01A7A3 */ jal osPfsRWInode
/* 4374C 8006834C 0C01A7A3 */ jal __osPfsRWInode
/* 43750 80068350 A0430001 */ sb $v1, 1($v0)
/* 43754 80068354 00401821 */ addu $v1, $v0, $zero
/* 43758 80068358 10600006 */ beqz $v1, .L80068374
@ -139,7 +139,7 @@ glabel osPfsAllocateFile
/* 43788 80068388 02402021 */ addu $a0, $s2, $zero
/* 4378C 8006838C 27A50020 */ addiu $a1, $sp, 0x20
/* 43790 80068390 24060001 */ addiu $a2, $zero, 1
/* 43794 80068394 0C01A7A3 */ jal osPfsRWInode
/* 43794 80068394 0C01A7A3 */ jal __osPfsRWInode
/* 43798 80068398 322700FF */ andi $a3, $s1, 0xff
/* 4379C 8006839C 00401821 */ addu $v1, $v0, $zero
/* 437A0 800683A0 10600011 */ beqz $v1, .L800683E8

View File

@ -57,7 +57,7 @@ glabel osPfsDeleteFile
.L80068688:
/* 43A88 80068688 27A50018 */ addiu $a1, $sp, 0x18
/* 43A8C 8006868C 00003021 */ addu $a2, $zero, $zero
/* 43A90 80068690 0C01A7A3 */ jal osPfsRWInode
/* 43A90 80068690 0C01A7A3 */ jal __osPfsRWInode
/* 43A94 80068694 02003821 */ addu $a3, $s0, $zero
/* 43A98 80068698 1440002B */ bnez $v0, .L80068748
/* 43A9C 8006869C 02202021 */ addu $a0, $s1, $zero
@ -70,7 +70,7 @@ glabel osPfsDeleteFile
/* 43AB8 800686B8 02202021 */ addu $a0, $s1, $zero
/* 43ABC 800686BC 27A50018 */ addiu $a1, $sp, 0x18
/* 43AC0 800686C0 24060001 */ addiu $a2, $zero, 1
/* 43AC4 800686C4 0C01A7A3 */ jal osPfsRWInode
/* 43AC4 800686C4 0C01A7A3 */ jal __osPfsRWInode
/* 43AC8 800686C8 02003821 */ addu $a3, $s0, $zero
/* 43ACC 800686CC 1440001E */ bnez $v0, .L80068748
/* 43AD0 800686D0 00000000 */ nop

View File

@ -23,7 +23,7 @@ glabel osPfsFileState
/* 44068 80068C68 30420001 */ andi $v0, $v0, 1
/* 4406C 80068C6C 10400048 */ beqz $v0, .L80068D90
/* 44070 80068C70 24020005 */ addiu $v0, $zero, 5
/* 44074 80068C74 0C01A775 */ jal osCheckId
/* 44074 80068C74 0C01A775 */ jal __osCheckId
/* 44078 80068C78 02202021 */ addu $a0, $s1, $zero
/* 4407C 80068C7C 14400044 */ bnez $v0, .L80068D90
/* 44080 80068C80 00000000 */ nop
@ -68,7 +68,7 @@ glabel osPfsFileState
/* 4410C 80068D0C 02202021 */ addu $a0, $s1, $zero
/* 44110 80068D10 00409021 */ addu $s2, $v0, $zero
/* 44114 80068D14 27A50010 */ addiu $a1, $sp, 0x10
/* 44118 80068D18 0C01A7A3 */ jal osPfsRWInode
/* 44118 80068D18 0C01A7A3 */ jal __osPfsRWInode
/* 4411C 80068D1C 00003021 */ addu $a2, $zero, $zero
/* 44120 80068D20 1440001B */ bnez $v0, .L80068D90
/* 44124 80068D24 00000000 */ nop

View File

@ -34,7 +34,7 @@ glabel osPfsReadWriteFile
/* 43C54 80068854 30420001 */ andi $v0, $v0, 1
/* 43C58 80068858 104000E7 */ beqz $v0, .L80068BF8
/* 43C5C 8006885C 24020005 */ addiu $v0, $zero, 5
/* 43C60 80068860 0C01A775 */ jal osCheckId
/* 43C60 80068860 0C01A775 */ jal __osCheckId
/* 43C64 80068864 02002021 */ addu $a0, $s0, $zero
/* 43C68 80068868 24030002 */ addiu $v1, $zero, 2
/* 43C6C 8006886C 104300E2 */ beq $v0, $v1, .L80068BF8
@ -120,7 +120,7 @@ glabel osPfsReadWriteFile
/* 43D90 80068990 02002021 */ addu $a0, $s0, $zero
/* 43D94 80068994 A3A30138 */ sb $v1, 0x138($sp)
/* 43D98 80068998 02402821 */ addu $a1, $s2, $zero
/* 43D9C 8006899C 0C01A7A3 */ jal osPfsRWInode
/* 43D9C 8006899C 0C01A7A3 */ jal __osPfsRWInode
/* 43DA0 800689A0 00003021 */ addu $a2, $zero, $zero
/* 43DA4 800689A4 1440001A */ bnez $v0, .L80068A10
/* 43DA8 800689A8 00401821 */ addu $v1, $v0, $zero
@ -178,7 +178,7 @@ glabel osPfsReadWriteFile
/* 43E60 80068A60 A3A30138 */ sb $v1, 0x138($sp)
/* 43E64 80068A64 02002021 */ addu $a0, $s0, $zero
/* 43E68 80068A68 02202821 */ addu $a1, $s1, $zero
/* 43E6C 80068A6C 0C01A7A3 */ jal osPfsRWInode
/* 43E6C 80068A6C 0C01A7A3 */ jal __osPfsRWInode
/* 43E70 80068A70 00003021 */ addu $a2, $zero, $zero
/* 43E74 80068A74 1440001A */ bnez $v0, .L80068AE0
/* 43E78 80068A78 00401821 */ addu $v1, $v0, $zero

View File

@ -22,7 +22,7 @@ glabel osPfsFindFile
/* 44204 80068E04 30420001 */ andi $v0, $v0, 1
/* 44208 80068E08 1040004E */ beqz $v0, .L80068F44
/* 4420C 80068E0C 00A0B821 */ addu $s7, $a1, $zero
/* 44210 80068E10 0C01A775 */ jal osCheckId
/* 44210 80068E10 0C01A775 */ jal __osCheckId
/* 44214 80068E14 02002021 */ addu $a0, $s0, $zero
/* 44218 80068E18 00403821 */ addu $a3, $v0, $zero
/* 4421C 80068E1C 14E0004A */ bnez $a3, .L80068F48

View File

@ -1,79 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel osPfsFreeBlocks
/* 44380 80068F80 27BDFED0 */ addiu $sp, $sp, -0x130
/* 44384 80068F84 AFB20118 */ sw $s2, 0x118($sp)
/* 44388 80068F88 00809021 */ addu $s2, $a0, $zero
/* 4438C 80068F8C AFBF0128 */ sw $ra, 0x128($sp)
/* 44390 80068F90 AFB50124 */ sw $s5, 0x124($sp)
/* 44394 80068F94 AFB40120 */ sw $s4, 0x120($sp)
/* 44398 80068F98 AFB3011C */ sw $s3, 0x11c($sp)
/* 4439C 80068F9C AFB10114 */ sw $s1, 0x114($sp)
/* 443A0 80068FA0 AFB00110 */ sw $s0, 0x110($sp)
/* 443A4 80068FA4 8E420000 */ lw $v0, ($s2)
/* 443A8 80068FA8 00A0A821 */ addu $s5, $a1, $zero
/* 443AC 80068FAC 30420001 */ andi $v0, $v0, 1
/* 443B0 80068FB0 14400003 */ bnez $v0, .L80068FC0
/* 443B4 80068FB4 00009821 */ addu $s3, $zero, $zero
/* 443B8 80068FB8 0801A41A */ j .L80069068
/* 443BC 80068FBC 24020005 */ addiu $v0, $zero, 5
.L80068FC0:
/* 443C0 80068FC0 0C01A775 */ jal osCheckId
/* 443C4 80068FC4 02402021 */ addu $a0, $s2, $zero
/* 443C8 80068FC8 14400027 */ bnez $v0, .L80069068
/* 443CC 80068FCC 00000000 */ nop
/* 443D0 80068FD0 92420064 */ lbu $v0, 0x64($s2)
/* 443D4 80068FD4 0262102B */ sltu $v0, $s3, $v0
/* 443D8 80068FD8 10400020 */ beqz $v0, .L8006905C
/* 443DC 80068FDC 00008821 */ addu $s1, $zero, $zero
/* 443E0 80068FE0 27B40010 */ addiu $s4, $sp, 0x10
/* 443E4 80068FE4 02402021 */ addu $a0, $s2, $zero
.L80068FE8:
/* 443E8 80068FE8 323000FF */ andi $s0, $s1, 0xff
/* 443EC 80068FEC 27A50010 */ addiu $a1, $sp, 0x10
/* 443F0 80068FF0 00003021 */ addu $a2, $zero, $zero
/* 443F4 80068FF4 0C01A7A3 */ jal osPfsRWInode
/* 443F8 80068FF8 02003821 */ addu $a3, $s0, $zero
/* 443FC 80068FFC 1440001A */ bnez $v0, .L80069068
/* 44400 80069000 00000000 */ nop
/* 44404 80069004 16000002 */ bnez $s0, .L80069010
/* 44408 80069008 24020001 */ addiu $v0, $zero, 1
/* 4440C 8006900C 8E420060 */ lw $v0, 0x60($s2)
.L80069010:
/* 44410 80069010 00402021 */ addu $a0, $v0, $zero
/* 44414 80069014 28820080 */ slti $v0, $a0, 0x80
/* 44418 80069018 1040000A */ beqz $v0, .L80069044
/* 4441C 8006901C 00041040 */ sll $v0, $a0, 1
/* 44420 80069020 00541821 */ addu $v1, $v0, $s4
.L80069024:
/* 44424 80069024 94620000 */ lhu $v0, ($v1)
/* 44428 80069028 24840001 */ addiu $a0, $a0, 1
/* 4442C 8006902C 38420003 */ xori $v0, $v0, 3
/* 44430 80069030 2C420001 */ sltiu $v0, $v0, 1
/* 44434 80069034 02629821 */ addu $s3, $s3, $v0
/* 44438 80069038 28820080 */ slti $v0, $a0, 0x80
/* 4443C 8006903C 1440FFF9 */ bnez $v0, .L80069024
/* 44440 80069040 24630002 */ addiu $v1, $v1, 2
.L80069044:
/* 44444 80069044 92430064 */ lbu $v1, 0x64($s2)
/* 44448 80069048 26310001 */ addiu $s1, $s1, 1
/* 4444C 8006904C 322200FF */ andi $v0, $s1, 0xff
/* 44450 80069050 0043102B */ sltu $v0, $v0, $v1
/* 44454 80069054 5440FFE4 */ bnel $v0, $zero, .L80068FE8
/* 44458 80069058 02402021 */ addu $a0, $s2, $zero
.L8006905C:
/* 4445C 8006905C 00131200 */ sll $v0, $s3, 8
/* 44460 80069060 AEA20000 */ sw $v0, ($s5)
/* 44464 80069064 00001021 */ addu $v0, $zero, $zero
.L80069068:
/* 44468 80069068 8FBF0128 */ lw $ra, 0x128($sp)
/* 4446C 8006906C 8FB50124 */ lw $s5, 0x124($sp)
/* 44470 80069070 8FB40120 */ lw $s4, 0x120($sp)
/* 44474 80069074 8FB3011C */ lw $s3, 0x11c($sp)
/* 44478 80069078 8FB20118 */ lw $s2, 0x118($sp)
/* 4447C 8006907C 8FB10114 */ lw $s1, 0x114($sp)
/* 44480 80069080 8FB00110 */ lw $s0, 0x110($sp)
/* 44484 80069084 03E00008 */ jr $ra
/* 44488 80069088 27BD0130 */ addiu $sp, $sp, 0x130
/* 4448C 8006908C 00000000 */ nop

View File

@ -19,7 +19,7 @@ glabel osPfsNumFiles
/* 444C8 800690C8 0801A45C */ j .L80069170
/* 444CC 800690CC 24020005 */ addiu $v0, $zero, 5
.L800690D0:
/* 444D0 800690D0 0C01A775 */ jal osCheckId
/* 444D0 800690D0 0C01A775 */ jal __osCheckId
/* 444D4 800690D4 02002021 */ addu $a0, $s0, $zero
/* 444D8 800690D8 14400025 */ bnez $v0, .L80069170
/* 444DC 800690DC 00000000 */ nop

View File

@ -19,7 +19,7 @@ glabel osPfsGetStatus
/* 448F8 800694F8 24040001 */ addiu $a0, $zero, 1
/* 448FC 800694FC 3C11800E */ lui $s1, %hi(D_800DA000)
/* 44900 80069500 2631A000 */ addiu $s1, $s1, %lo(D_800DA000)
/* 44904 80069504 0C019730 */ jal osSiRawStartDma
/* 44904 80069504 0C019730 */ jal __osSiRawStartDma
/* 44908 80069508 02202821 */ addu $a1, $s1, $zero
/* 4490C 8006950C 02402021 */ addu $a0, $s2, $zero
/* 44910 80069510 27B00018 */ addiu $s0, $sp, 0x18
@ -27,7 +27,7 @@ glabel osPfsGetStatus
/* 44918 80069518 0C0195BC */ jal osRecvMesg
/* 4491C 8006951C 24060001 */ addiu $a2, $zero, 1
/* 44920 80069520 00002021 */ addu $a0, $zero, $zero
/* 44924 80069524 0C019730 */ jal osSiRawStartDma
/* 44924 80069524 0C019730 */ jal __osSiRawStartDma
/* 44928 80069528 02202821 */ addu $a1, $s1, $zero
/* 4492C 8006952C 02402021 */ addu $a0, $s2, $zero
/* 44930 80069530 02002821 */ addu $a1, $s0, $zero

View File

@ -1,7 +1,7 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel osCheckId
glabel __osCheckId
/* 451D4 80069DD4 27BDFFC8 */ addiu $sp, $sp, -0x38
/* 451D8 80069DD8 AFB00030 */ sw $s0, 0x30($sp)
/* 451DC 80069DDC 00808021 */ addu $s0, $a0, $zero

View File

@ -1,7 +1,7 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel osPfsRWInode
glabel __osPfsRWInode
/* 4528C 80069E8C 27BDFFB0 */ addiu $sp, $sp, -0x50
/* 45290 80069E90 AFB20030 */ sw $s2, 0x30($sp)
/* 45294 80069E94 00809021 */ addu $s2, $a0, $zero

View File

@ -65,20 +65,20 @@ glabel osContRamRead
.L8006A2B0:
/* 456B0 8006A2B0 02C02021 */ addu $a0, $s6, $zero
/* 456B4 8006A2B4 001610C2 */ srl $v0, $s6, 3
/* 456B8 8006A2B8 0C01B218 */ jal osContAddressCrc
/* 456B8 8006A2B8 0C01B218 */ jal __osContAddressCrc
/* 456BC 8006A2BC A2020004 */ sb $v0, 4($s0)
/* 456C0 8006A2C0 8FA8001C */ lw $t0, 0x1c($sp)
/* 456C4 8006A2C4 24040001 */ addiu $a0, $zero, 1
/* 456C8 8006A2C8 03C02821 */ addu $a1, $fp, $zero
/* 456CC 8006A2CC 00481025 */ or $v0, $v0, $t0
/* 456D0 8006A2D0 0C019730 */ jal osSiRawStartDma
/* 456D0 8006A2D0 0C019730 */ jal __osSiRawStartDma
/* 456D4 8006A2D4 A2020005 */ sb $v0, 5($s0)
/* 456D8 8006A2D8 02802021 */ addu $a0, $s4, $zero
/* 456DC 8006A2DC 00002821 */ addu $a1, $zero, $zero
/* 456E0 8006A2E0 0C0195BC */ jal osRecvMesg
/* 456E4 8006A2E4 24060001 */ addiu $a2, $zero, 1
/* 456E8 8006A2E8 00002021 */ addu $a0, $zero, $zero
/* 456EC 8006A2EC 0C019730 */ jal osSiRawStartDma
/* 456EC 8006A2EC 0C019730 */ jal __osSiRawStartDma
/* 456F0 8006A2F0 03C02821 */ addu $a1, $fp, $zero
/* 456F4 8006A2F4 02802021 */ addu $a0, $s4, $zero
/* 456F8 8006A2F8 00002821 */ addu $a1, $zero, $zero
@ -90,7 +90,7 @@ glabel osContRamRead
/* 45710 8006A310 56200015 */ bnel $s1, $zero, .L8006A368
/* 45714 8006A314 24110001 */ addiu $s1, $zero, 1
/* 45718 8006A318 26120006 */ addiu $s2, $s0, 6
/* 4571C 8006A31C 0C01B233 */ jal osContDataCrc
/* 4571C 8006A31C 0C01B233 */ jal __osContDataCrc
/* 45720 8006A320 02402021 */ addu $a0, $s2, $zero
/* 45724 8006A324 92030026 */ lbu $v1, 0x26($s0)
/* 45728 8006A328 304200FF */ andi $v0, $v0, 0xff

View File

@ -74,7 +74,7 @@ glabel osContRamWrite
.L8006A4C0:
/* 458C0 8006A4C0 02C02021 */ addu $a0, $s6, $zero
/* 458C4 8006A4C4 001610C2 */ srl $v0, $s6, 3
/* 458C8 8006A4C8 0C01B218 */ jal osContAddressCrc
/* 458C8 8006A4C8 0C01B218 */ jal __osContAddressCrc
/* 458CC 8006A4CC A2020004 */ sb $v0, 4($s0)
/* 458D0 8006A4D0 02E02021 */ addu $a0, $s7, $zero
/* 458D4 8006A4D4 8FA80014 */ lw $t0, 0x14($sp)
@ -85,9 +85,9 @@ glabel osContRamWrite
/* 458E8 8006A4E8 A2020005 */ sb $v0, 5($s0)
/* 458EC 8006A4EC 3C05800E */ lui $a1, %hi(D_800DA000)
/* 458F0 8006A4F0 24A5A000 */ addiu $a1, $a1, %lo(D_800DA000)
/* 458F4 8006A4F4 0C019730 */ jal osSiRawStartDma
/* 458F4 8006A4F4 0C019730 */ jal __osSiRawStartDma
/* 458F8 8006A4F8 24040001 */ addiu $a0, $zero, 1
/* 458FC 8006A4FC 0C01B233 */ jal osContDataCrc
/* 458FC 8006A4FC 0C01B233 */ jal __osContDataCrc
/* 45900 8006A500 02E02021 */ addu $a0, $s7, $zero
/* 45904 8006A504 02802021 */ addu $a0, $s4, $zero
/* 45908 8006A508 00002821 */ addu $a1, $zero, $zero
@ -96,7 +96,7 @@ glabel osContRamWrite
/* 45914 8006A514 00409021 */ addu $s2, $v0, $zero
/* 45918 8006A518 3C05800E */ lui $a1, %hi(D_800DA000)
/* 4591C 8006A51C 24A5A000 */ addiu $a1, $a1, %lo(D_800DA000)
/* 45920 8006A520 0C019730 */ jal osSiRawStartDma
/* 45920 8006A520 0C019730 */ jal __osSiRawStartDma
/* 45924 8006A524 00002021 */ addu $a0, $zero, $zero
/* 45928 8006A528 02802021 */ addu $a0, $s4, $zero
/* 4592C 8006A52C 00002821 */ addu $a1, $zero, $zero

View File

@ -1,12 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel osAfterPreNMI
/* 45A30 8006A630 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 45A34 8006A634 AFBF0010 */ sw $ra, 0x10($sp)
/* 45A38 8006A638 0C01B1C0 */ jal osSpSetPc
/* 45A3C 8006A63C 00002021 */ addu $a0, $zero, $zero
/* 45A40 8006A640 8FBF0010 */ lw $ra, 0x10($sp)
/* 45A44 8006A644 03E00008 */ jr $ra
/* 45A48 8006A648 27BD0018 */ addiu $sp, $sp, 0x18
/* 45A4C 8006A64C 00000000 */ nop

View File

@ -9,17 +9,17 @@ glabel __osInitialize_common
/* 45B18 8006A718 0C01B19C */ jal __osGetSR
/* 45B1C 8006A71C AC22A660 */ sw $v0, %lo(D_8009A660)($at)
/* 45B20 8006A720 3C042000 */ lui $a0, 0x2000
/* 45B24 8006A724 0C01B1A8 */ jal osSetSR
/* 45B24 8006A724 0C01B1A8 */ jal __osSetSR
/* 45B28 8006A728 00442025 */ or $a0, $v0, $a0
/* 45B2C 8006A72C 3C040100 */ lui $a0, 0x100
/* 45B30 8006A730 0C01B1A4 */ jal osSetFpcCsr
/* 45B30 8006A730 0C01B1A4 */ jal __osSetFpcCsr
/* 45B34 8006A734 34840800 */ ori $a0, $a0, 0x800
/* 45B38 8006A738 0C01B1AC */ jal osSetWatchLo
/* 45B38 8006A738 0C01B1AC */ jal __osSetWatchLo
/* 45B3C 8006A73C 3C040490 */ lui $a0, 0x490
/* 45B40 8006A740 3C041FC0 */ lui $a0, 0x1fc0
.L8006A744:
/* 45B44 8006A744 348407FC */ ori $a0, $a0, 0x7fc
/* 45B48 8006A748 0C01B1F0 */ jal osSiRawReadIo
/* 45B48 8006A748 0C01B1F0 */ jal __osSiRawReadIo
/* 45B4C 8006A74C 27A50010 */ addiu $a1, $sp, 0x10
/* 45B50 8006A750 1440FFFC */ bnez $v0, .L8006A744
/* 45B54 8006A754 3C041FC0 */ lui $a0, 0x1fc0
@ -27,7 +27,7 @@ glabel __osInitialize_common
/* 45B58 8006A758 8FA50010 */ lw $a1, 0x10($sp)
/* 45B5C 8006A75C 3C041FC0 */ lui $a0, 0x1fc0
/* 45B60 8006A760 348407FC */ ori $a0, $a0, 0x7fc
/* 45B64 8006A764 0C01B204 */ jal osSiRawWriteIo
/* 45B64 8006A764 0C01B204 */ jal __osSiRawWriteIo
/* 45B68 8006A768 34A50008 */ ori $a1, $a1, 8
/* 45B6C 8006A76C 1440FFFA */ bnez $v0, .L8006A758
/* 45B70 8006A770 00000000 */ nop

View File

@ -1,108 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel __osEPiRawReadIo
/* 46970 8006B570 3C02A460 */ lui $v0, 0xa460
/* 46974 8006B574 34420010 */ ori $v0, $v0, 0x10
/* 46978 8006B578 8C420000 */ lw $v0, ($v0)
/* 4697C 8006B57C 30420003 */ andi $v0, $v0, 3
/* 46980 8006B580 10400006 */ beqz $v0, .L8006B59C
/* 46984 8006B584 3C03A460 */ lui $v1, 0xa460
/* 46988 8006B588 34630010 */ ori $v1, $v1, 0x10
.L8006B58C:
/* 4698C 8006B58C 8C620000 */ lw $v0, ($v1)
/* 46990 8006B590 30420003 */ andi $v0, $v0, 3
/* 46994 8006B594 1440FFFD */ bnez $v0, .L8006B58C
/* 46998 8006B598 00000000 */ nop
.L8006B59C:
/* 4699C 8006B59C 90880009 */ lbu $t0, 9($a0)
/* 469A0 8006B5A0 00081080 */ sll $v0, $t0, 2
/* 469A4 8006B5A4 3C078009 */ lui $a3, %hi(__osCurrentHandle)
/* 469A8 8006B5A8 00E23821 */ addu $a3, $a3, $v0
/* 469AC 8006B5AC 8CE73D70 */ lw $a3, %lo(__osCurrentHandle)($a3)
/* 469B0 8006B5B0 90820004 */ lbu $v0, 4($a0)
/* 469B4 8006B5B4 90E30004 */ lbu $v1, 4($a3)
/* 469B8 8006B5B8 1062003F */ beq $v1, $v0, .L8006B6B8
/* 469BC 8006B5BC 00000000 */ nop
/* 469C0 8006B5C0 1500001A */ bnez $t0, .L8006B62C
/* 469C4 8006B5C4 00E01821 */ addu $v1, $a3, $zero
/* 469C8 8006B5C8 90620005 */ lbu $v0, 5($v1)
/* 469CC 8006B5CC 90870005 */ lbu $a3, 5($a0)
/* 469D0 8006B5D0 10470003 */ beq $v0, $a3, .L8006B5E0
/* 469D4 8006B5D4 3C02A460 */ lui $v0, 0xa460
/* 469D8 8006B5D8 34420014 */ ori $v0, $v0, 0x14
/* 469DC 8006B5DC AC470000 */ sw $a3, ($v0)
.L8006B5E0:
/* 469E0 8006B5E0 90620006 */ lbu $v0, 6($v1)
/* 469E4 8006B5E4 90870006 */ lbu $a3, 6($a0)
/* 469E8 8006B5E8 10470003 */ beq $v0, $a3, .L8006B5F8
/* 469EC 8006B5EC 3C02A460 */ lui $v0, 0xa460
/* 469F0 8006B5F0 3442001C */ ori $v0, $v0, 0x1c
/* 469F4 8006B5F4 AC470000 */ sw $a3, ($v0)
.L8006B5F8:
/* 469F8 8006B5F8 90620007 */ lbu $v0, 7($v1)
/* 469FC 8006B5FC 90870007 */ lbu $a3, 7($a0)
/* 46A00 8006B600 10470003 */ beq $v0, $a3, .L8006B610
/* 46A04 8006B604 3C02A460 */ lui $v0, 0xa460
/* 46A08 8006B608 34420020 */ ori $v0, $v0, 0x20
/* 46A0C 8006B60C AC470000 */ sw $a3, ($v0)
.L8006B610:
/* 46A10 8006B610 90620008 */ lbu $v0, 8($v1)
/* 46A14 8006B614 90870008 */ lbu $a3, 8($a0)
/* 46A18 8006B618 1047001D */ beq $v0, $a3, .L8006B690
/* 46A1C 8006B61C 00000000 */ nop
/* 46A20 8006B620 3C02A460 */ lui $v0, 0xa460
/* 46A24 8006B624 0801ADA3 */ j .L8006B68C
/* 46A28 8006B628 34420018 */ ori $v0, $v0, 0x18
.L8006B62C:
/* 46A2C 8006B62C 90620005 */ lbu $v0, 5($v1)
/* 46A30 8006B630 90870005 */ lbu $a3, 5($a0)
/* 46A34 8006B634 10470003 */ beq $v0, $a3, .L8006B644
/* 46A38 8006B638 3C02A460 */ lui $v0, 0xa460
/* 46A3C 8006B63C 34420024 */ ori $v0, $v0, 0x24
/* 46A40 8006B640 AC470000 */ sw $a3, ($v0)
.L8006B644:
/* 46A44 8006B644 90620006 */ lbu $v0, 6($v1)
/* 46A48 8006B648 90870006 */ lbu $a3, 6($a0)
/* 46A4C 8006B64C 10470003 */ beq $v0, $a3, .L8006B65C
/* 46A50 8006B650 3C02A460 */ lui $v0, 0xa460
/* 46A54 8006B654 3442002C */ ori $v0, $v0, 0x2c
/* 46A58 8006B658 AC470000 */ sw $a3, ($v0)
.L8006B65C:
/* 46A5C 8006B65C 90620007 */ lbu $v0, 7($v1)
/* 46A60 8006B660 90870007 */ lbu $a3, 7($a0)
/* 46A64 8006B664 10470003 */ beq $v0, $a3, .L8006B674
/* 46A68 8006B668 3C02A460 */ lui $v0, 0xa460
/* 46A6C 8006B66C 34420030 */ ori $v0, $v0, 0x30
/* 46A70 8006B670 AC470000 */ sw $a3, ($v0)
.L8006B674:
/* 46A74 8006B674 90620008 */ lbu $v0, 8($v1)
/* 46A78 8006B678 90870008 */ lbu $a3, 8($a0)
/* 46A7C 8006B67C 10470004 */ beq $v0, $a3, .L8006B690
/* 46A80 8006B680 00000000 */ nop
/* 46A84 8006B684 3C02A460 */ lui $v0, 0xa460
/* 46A88 8006B688 34420028 */ ori $v0, $v0, 0x28
.L8006B68C:
/* 46A8C 8006B68C AC470000 */ sw $a3, ($v0)
.L8006B690:
/* 46A90 8006B690 90820004 */ lbu $v0, 4($a0)
/* 46A94 8006B694 A0620004 */ sb $v0, 4($v1)
/* 46A98 8006B698 90820005 */ lbu $v0, 5($a0)
/* 46A9C 8006B69C A0620005 */ sb $v0, 5($v1)
/* 46AA0 8006B6A0 90820006 */ lbu $v0, 6($a0)
/* 46AA4 8006B6A4 A0620006 */ sb $v0, 6($v1)
/* 46AA8 8006B6A8 90820007 */ lbu $v0, 7($a0)
/* 46AAC 8006B6AC A0620007 */ sb $v0, 7($v1)
/* 46AB0 8006B6B0 90820008 */ lbu $v0, 8($a0)
/* 46AB4 8006B6B4 A0620008 */ sb $v0, 8($v1)
.L8006B6B8:
/* 46AB8 8006B6B8 8C82000C */ lw $v0, 0xc($a0)
/* 46ABC 8006B6BC 3C03A000 */ lui $v1, 0xa000
/* 46AC0 8006B6C0 00451025 */ or $v0, $v0, $a1
/* 46AC4 8006B6C4 00431025 */ or $v0, $v0, $v1
/* 46AC8 8006B6C8 8C420000 */ lw $v0, ($v0)
/* 46ACC 8006B6CC ACC20000 */ sw $v0, ($a2)
/* 46AD0 8006B6D0 03E00008 */ jr $ra
/* 46AD4 8006B6D4 00001021 */ addu $v0, $zero, $zero
/* 46AD8 8006B6D8 00000000 */ nop
/* 46ADC 8006B6DC 00000000 */ nop

View File

@ -1,13 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel osPiGetCmdQueue
/* 46950 8006B550 3C038009 */ lui $v1, %hi(__osPiDevMgr)
/* 46954 8006B554 8C633D50 */ lw $v1, %lo(__osPiDevMgr)($v1)
/* 46958 8006B558 10600003 */ beqz $v1, .L8006B568
/* 4695C 8006B55C 00001021 */ addu $v0, $zero, $zero
/* 46960 8006B560 3C028009 */ lui $v0, %hi(__osPiDevMgr+0x8)
/* 46964 8006B564 8C423D58 */ lw $v0, %lo(__osPiDevMgr+0x8)($v0)
.L8006B568:
/* 46968 8006B568 03E00008 */ jr $ra
/* 4696C 8006B56C 00000000 */ nop

View File

@ -1,62 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel osPiRawStartDma
/* 46880 8006B480 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 46884 8006B484 AFB00010 */ sw $s0, 0x10($sp)
/* 46888 8006B488 00808021 */ addu $s0, $a0, $zero
/* 4688C 8006B48C AFB10014 */ sw $s1, 0x14($sp)
/* 46890 8006B490 00A08821 */ addu $s1, $a1, $zero
/* 46894 8006B494 3C02A460 */ lui $v0, 0xa460
/* 46898 8006B498 34420010 */ ori $v0, $v0, 0x10
/* 4689C 8006B49C AFBF001C */ sw $ra, 0x1c($sp)
/* 468A0 8006B4A0 AFB20018 */ sw $s2, 0x18($sp)
/* 468A4 8006B4A4 8C420000 */ lw $v0, ($v0)
/* 468A8 8006B4A8 00C02021 */ addu $a0, $a2, $zero
/* 468AC 8006B4AC 30420003 */ andi $v0, $v0, 3
/* 468B0 8006B4B0 10400007 */ beqz $v0, .L8006B4D0
/* 468B4 8006B4B4 00E09021 */ addu $s2, $a3, $zero
/* 468B8 8006B4B8 3C03A460 */ lui $v1, 0xa460
/* 468BC 8006B4BC 34630010 */ ori $v1, $v1, 0x10
.L8006B4C0:
/* 468C0 8006B4C0 8C620000 */ lw $v0, ($v1)
/* 468C4 8006B4C4 30420003 */ andi $v0, $v0, 3
/* 468C8 8006B4C8 1440FFFD */ bnez $v0, .L8006B4C0
/* 468CC 8006B4CC 00000000 */ nop
.L8006B4D0:
/* 468D0 8006B4D0 0C0187A4 */ jal osVirtualToPhysical
/* 468D4 8006B4D4 00000000 */ nop
/* 468D8 8006B4D8 3C06A460 */ lui $a2, 0xa460
/* 468DC 8006B4DC 34C60004 */ ori $a2, $a2, 4
/* 468E0 8006B4E0 3C051FFF */ lui $a1, 0x1fff
/* 468E4 8006B4E4 3C038000 */ lui $v1, %hi(D_80000308)
/* 468E8 8006B4E8 8C630308 */ lw $v1, %lo(D_80000308)($v1)
/* 468EC 8006B4EC 34A5FFFF */ ori $a1, $a1, 0xffff
/* 468F0 8006B4F0 3C04A460 */ lui $a0, 0xa460
/* 468F4 8006B4F4 AC820000 */ sw $v0, ($a0)
/* 468F8 8006B4F8 00711825 */ or $v1, $v1, $s1
/* 468FC 8006B4FC 00651824 */ and $v1, $v1, $a1
/* 46900 8006B500 ACC30000 */ sw $v1, ($a2)
/* 46904 8006B504 12000005 */ beqz $s0, .L8006B51C
/* 46908 8006B508 24020001 */ addiu $v0, $zero, 1
/* 4690C 8006B50C 12020006 */ beq $s0, $v0, .L8006B528
/* 46910 8006B510 3C03A460 */ lui $v1, 0xa460
/* 46914 8006B514 0801AD4E */ j .L8006B538
/* 46918 8006B518 2402FFFF */ addiu $v0, $zero, -1
.L8006B51C:
/* 4691C 8006B51C 3C03A460 */ lui $v1, 0xa460
/* 46920 8006B520 0801AD4B */ j .L8006B52C
/* 46924 8006B524 3463000C */ ori $v1, $v1, 0xc
.L8006B528:
/* 46928 8006B528 34630008 */ ori $v1, $v1, 8
.L8006B52C:
/* 4692C 8006B52C 2642FFFF */ addiu $v0, $s2, -1
/* 46930 8006B530 AC620000 */ sw $v0, ($v1)
/* 46934 8006B534 00001021 */ addu $v0, $zero, $zero
.L8006B538:
/* 46938 8006B538 8FBF001C */ lw $ra, 0x1c($sp)
/* 4693C 8006B53C 8FB20018 */ lw $s2, 0x18($sp)
/* 46940 8006B540 8FB10014 */ lw $s1, 0x14($sp)
/* 46944 8006B544 8FB00010 */ lw $s0, 0x10($sp)
/* 46948 8006B548 03E00008 */ jr $ra
/* 4694C 8006B54C 27BD0020 */ addiu $sp, $sp, 0x20

View File

@ -1,108 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel __osEPiRawWriteIo
/* 46AE0 8006B6E0 3C02A460 */ lui $v0, 0xa460
/* 46AE4 8006B6E4 34420010 */ ori $v0, $v0, 0x10
/* 46AE8 8006B6E8 8C420000 */ lw $v0, ($v0)
/* 46AEC 8006B6EC 30420003 */ andi $v0, $v0, 3
/* 46AF0 8006B6F0 10400006 */ beqz $v0, .L8006B70C
/* 46AF4 8006B6F4 3C03A460 */ lui $v1, 0xa460
/* 46AF8 8006B6F8 34630010 */ ori $v1, $v1, 0x10
.L8006B6FC:
/* 46AFC 8006B6FC 8C620000 */ lw $v0, ($v1)
/* 46B00 8006B700 30420003 */ andi $v0, $v0, 3
/* 46B04 8006B704 1440FFFD */ bnez $v0, .L8006B6FC
/* 46B08 8006B708 00000000 */ nop
.L8006B70C:
/* 46B0C 8006B70C 90880009 */ lbu $t0, 9($a0)
/* 46B10 8006B710 00081080 */ sll $v0, $t0, 2
/* 46B14 8006B714 3C078009 */ lui $a3, %hi(__osCurrentHandle)
/* 46B18 8006B718 00E23821 */ addu $a3, $a3, $v0
/* 46B1C 8006B71C 8CE73D70 */ lw $a3, %lo(__osCurrentHandle)($a3)
/* 46B20 8006B720 90820004 */ lbu $v0, 4($a0)
/* 46B24 8006B724 90E30004 */ lbu $v1, 4($a3)
/* 46B28 8006B728 1062003F */ beq $v1, $v0, .L8006B828
/* 46B2C 8006B72C 00000000 */ nop
/* 46B30 8006B730 1500001A */ bnez $t0, .L8006B79C
/* 46B34 8006B734 00E01821 */ addu $v1, $a3, $zero
/* 46B38 8006B738 90620005 */ lbu $v0, 5($v1)
/* 46B3C 8006B73C 90870005 */ lbu $a3, 5($a0)
/* 46B40 8006B740 10470003 */ beq $v0, $a3, .L8006B750
/* 46B44 8006B744 3C02A460 */ lui $v0, 0xa460
/* 46B48 8006B748 34420014 */ ori $v0, $v0, 0x14
/* 46B4C 8006B74C AC470000 */ sw $a3, ($v0)
.L8006B750:
/* 46B50 8006B750 90620006 */ lbu $v0, 6($v1)
/* 46B54 8006B754 90870006 */ lbu $a3, 6($a0)
/* 46B58 8006B758 10470003 */ beq $v0, $a3, .L8006B768
/* 46B5C 8006B75C 3C02A460 */ lui $v0, 0xa460
/* 46B60 8006B760 3442001C */ ori $v0, $v0, 0x1c
/* 46B64 8006B764 AC470000 */ sw $a3, ($v0)
.L8006B768:
/* 46B68 8006B768 90620007 */ lbu $v0, 7($v1)
/* 46B6C 8006B76C 90870007 */ lbu $a3, 7($a0)
/* 46B70 8006B770 10470003 */ beq $v0, $a3, .L8006B780
/* 46B74 8006B774 3C02A460 */ lui $v0, 0xa460
/* 46B78 8006B778 34420020 */ ori $v0, $v0, 0x20
/* 46B7C 8006B77C AC470000 */ sw $a3, ($v0)
.L8006B780:
/* 46B80 8006B780 90620008 */ lbu $v0, 8($v1)
/* 46B84 8006B784 90870008 */ lbu $a3, 8($a0)
/* 46B88 8006B788 1047001D */ beq $v0, $a3, .L8006B800
/* 46B8C 8006B78C 00000000 */ nop
/* 46B90 8006B790 3C02A460 */ lui $v0, 0xa460
/* 46B94 8006B794 0801ADFF */ j .L8006B7FC
/* 46B98 8006B798 34420018 */ ori $v0, $v0, 0x18
.L8006B79C:
/* 46B9C 8006B79C 90620005 */ lbu $v0, 5($v1)
/* 46BA0 8006B7A0 90870005 */ lbu $a3, 5($a0)
/* 46BA4 8006B7A4 10470003 */ beq $v0, $a3, .L8006B7B4
/* 46BA8 8006B7A8 3C02A460 */ lui $v0, 0xa460
/* 46BAC 8006B7AC 34420024 */ ori $v0, $v0, 0x24
/* 46BB0 8006B7B0 AC470000 */ sw $a3, ($v0)
.L8006B7B4:
/* 46BB4 8006B7B4 90620006 */ lbu $v0, 6($v1)
/* 46BB8 8006B7B8 90870006 */ lbu $a3, 6($a0)
/* 46BBC 8006B7BC 10470003 */ beq $v0, $a3, .L8006B7CC
/* 46BC0 8006B7C0 3C02A460 */ lui $v0, 0xa460
/* 46BC4 8006B7C4 3442002C */ ori $v0, $v0, 0x2c
/* 46BC8 8006B7C8 AC470000 */ sw $a3, ($v0)
.L8006B7CC:
/* 46BCC 8006B7CC 90620007 */ lbu $v0, 7($v1)
/* 46BD0 8006B7D0 90870007 */ lbu $a3, 7($a0)
/* 46BD4 8006B7D4 10470003 */ beq $v0, $a3, .L8006B7E4
/* 46BD8 8006B7D8 3C02A460 */ lui $v0, 0xa460
/* 46BDC 8006B7DC 34420030 */ ori $v0, $v0, 0x30
/* 46BE0 8006B7E0 AC470000 */ sw $a3, ($v0)
.L8006B7E4:
/* 46BE4 8006B7E4 90620008 */ lbu $v0, 8($v1)
/* 46BE8 8006B7E8 90870008 */ lbu $a3, 8($a0)
/* 46BEC 8006B7EC 10470004 */ beq $v0, $a3, .L8006B800
/* 46BF0 8006B7F0 00000000 */ nop
/* 46BF4 8006B7F4 3C02A460 */ lui $v0, 0xa460
/* 46BF8 8006B7F8 34420028 */ ori $v0, $v0, 0x28
.L8006B7FC:
/* 46BFC 8006B7FC AC470000 */ sw $a3, ($v0)
.L8006B800:
/* 46C00 8006B800 90820004 */ lbu $v0, 4($a0)
/* 46C04 8006B804 A0620004 */ sb $v0, 4($v1)
/* 46C08 8006B808 90820005 */ lbu $v0, 5($a0)
/* 46C0C 8006B80C A0620005 */ sb $v0, 5($v1)
/* 46C10 8006B810 90820006 */ lbu $v0, 6($a0)
/* 46C14 8006B814 A0620006 */ sb $v0, 6($v1)
/* 46C18 8006B818 90820007 */ lbu $v0, 7($a0)
/* 46C1C 8006B81C A0620007 */ sb $v0, 7($v1)
/* 46C20 8006B820 90820008 */ lbu $v0, 8($a0)
/* 46C24 8006B824 A0620008 */ sb $v0, 8($v1)
.L8006B828:
/* 46C28 8006B828 8C82000C */ lw $v0, 0xc($a0)
/* 46C2C 8006B82C 3C03A000 */ lui $v1, 0xa000
/* 46C30 8006B830 00451025 */ or $v0, $v0, $a1
/* 46C34 8006B834 00431025 */ or $v0, $v0, $v1
/* 46C38 8006B838 AC460000 */ sw $a2, ($v0)
/* 46C3C 8006B83C 03E00008 */ jr $ra
/* 46C40 8006B840 00001021 */ addu $v0, $zero, $zero
/* 46C44 8006B844 00000000 */ nop
/* 46C48 8006B848 00000000 */ nop
/* 46C4C 8006B84C 00000000 */ nop

View File

@ -1,12 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel __osAiDeviceBusy
/* 46C50 8006B850 3C02A450 */ lui $v0, 0xa450
/* 46C54 8006B854 3442000C */ ori $v0, $v0, 0xc
/* 46C58 8006B858 8C420000 */ lw $v0, ($v0)
/* 46C5C 8006B85C 03E00008 */ jr $ra
/* 46C60 8006B860 28420000 */ slti $v0, $v0, 0
/* 46C64 8006B864 00000000 */ nop
/* 46C68 8006B868 00000000 */ nop
/* 46C6C 8006B86C 00000000 */ nop

View File

@ -1,12 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel osSpDeviceBusy
/* 47AC0 8006C6C0 3C02A404 */ lui $v0, 0xa404
/* 47AC4 8006C6C4 34420010 */ ori $v0, $v0, 0x10
/* 47AC8 8006C6C8 8C420000 */ lw $v0, ($v0)
/* 47ACC 8006C6CC 3042001C */ andi $v0, $v0, 0x1c
/* 47AD0 8006C6D0 03E00008 */ jr $ra
/* 47AD4 8006C6D4 0002102B */ sltu $v0, $zero, $v0
/* 47AD8 8006C6D8 00000000 */ nop
/* 47ADC 8006C6DC 00000000 */ nop

View File

@ -1,8 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel osSpGetStatus
/* 47AE0 8006C6E0 3C02A404 */ lui $v0, 0xa404
/* 47AE4 8006C6E4 34420010 */ ori $v0, $v0, 0x10
/* 47AE8 8006C6E8 03E00008 */ jr $ra
/* 47AEC 8006C6EC 8C420000 */ lw $v0, ($v0)

View File

@ -1,43 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel osSpRawStartDma
/* 47B30 8006C730 27BDFFD8 */ addiu $sp, $sp, -0x28
/* 47B34 8006C734 AFB20018 */ sw $s2, 0x18($sp)
/* 47B38 8006C738 00809021 */ addu $s2, $a0, $zero
/* 47B3C 8006C73C AFB00010 */ sw $s0, 0x10($sp)
/* 47B40 8006C740 00A08021 */ addu $s0, $a1, $zero
/* 47B44 8006C744 AFB10014 */ sw $s1, 0x14($sp)
/* 47B48 8006C748 00C08821 */ addu $s1, $a2, $zero
/* 47B4C 8006C74C AFB3001C */ sw $s3, 0x1c($sp)
/* 47B50 8006C750 AFBF0020 */ sw $ra, 0x20($sp)
/* 47B54 8006C754 0C01B1B0 */ jal osSpDeviceBusy
/* 47B58 8006C758 00E09821 */ addu $s3, $a3, $zero
/* 47B5C 8006C75C 14400010 */ bnez $v0, .L8006C7A0
/* 47B60 8006C760 2402FFFF */ addiu $v0, $zero, -1
/* 47B64 8006C764 3C02A404 */ lui $v0, 0xa404
/* 47B68 8006C768 02202021 */ addu $a0, $s1, $zero
/* 47B6C 8006C76C 0C0187A4 */ jal osVirtualToPhysical
/* 47B70 8006C770 AC500000 */ sw $s0, ($v0)
/* 47B74 8006C774 3C03A404 */ lui $v1, 0xa404
/* 47B78 8006C778 34630004 */ ori $v1, $v1, 4
/* 47B7C 8006C77C AC620000 */ sw $v0, ($v1)
/* 47B80 8006C780 16400003 */ bnez $s2, .L8006C790
/* 47B84 8006C784 3C03A404 */ lui $v1, 0xa404
/* 47B88 8006C788 0801B1E5 */ j .L8006C794
/* 47B8C 8006C78C 3463000C */ ori $v1, $v1, 0xc
.L8006C790:
/* 47B90 8006C790 34630008 */ ori $v1, $v1, 8
.L8006C794:
/* 47B94 8006C794 2662FFFF */ addiu $v0, $s3, -1
/* 47B98 8006C798 AC620000 */ sw $v0, ($v1)
/* 47B9C 8006C79C 00001021 */ addu $v0, $zero, $zero
.L8006C7A0:
/* 47BA0 8006C7A0 8FBF0020 */ lw $ra, 0x20($sp)
/* 47BA4 8006C7A4 8FB3001C */ lw $s3, 0x1c($sp)
/* 47BA8 8006C7A8 8FB20018 */ lw $s2, 0x18($sp)
/* 47BAC 8006C7AC 8FB10014 */ lw $s1, 0x14($sp)
/* 47BB0 8006C7B0 8FB00010 */ lw $s0, 0x10($sp)
/* 47BB4 8006C7B4 03E00008 */ jr $ra
/* 47BB8 8006C7B8 27BD0028 */ addiu $sp, $sp, 0x28
/* 47BBC 8006C7BC 00000000 */ nop

View File

@ -1,18 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel osSpSetPc
/* 47B00 8006C700 3C02A404 */ lui $v0, 0xa404
/* 47B04 8006C704 34420010 */ ori $v0, $v0, 0x10
/* 47B08 8006C708 8C420000 */ lw $v0, ($v0)
/* 47B0C 8006C70C 30420001 */ andi $v0, $v0, 1
/* 47B10 8006C710 10400004 */ beqz $v0, .L8006C724
/* 47B14 8006C714 3C02A408 */ lui $v0, 0xa408
/* 47B18 8006C718 AC440000 */ sw $a0, ($v0)
/* 47B1C 8006C71C 0801B1CA */ j .L8006C728
/* 47B20 8006C720 00001021 */ addu $v0, $zero, $zero
.L8006C724:
/* 47B24 8006C724 2402FFFF */ addiu $v0, $zero, -1
.L8006C728:
/* 47B28 8006C728 03E00008 */ jr $ra
/* 47B2C 8006C72C 00000000 */ nop

View File

@ -1,8 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel osSpSetStatus
/* 47AF0 8006C6F0 3C02A404 */ lui $v0, 0xa404
/* 47AF4 8006C6F4 34420010 */ ori $v0, $v0, 0x10
/* 47AF8 8006C6F8 03E00008 */ jr $ra
/* 47AFC 8006C6FC AC440000 */ sw $a0, ($v0)

View File

@ -1,25 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel osSiRawReadIo
/* 47BC0 8006C7C0 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 47BC4 8006C7C4 AFB00010 */ sw $s0, 0x10($sp)
/* 47BC8 8006C7C8 00808021 */ addu $s0, $a0, $zero
/* 47BCC 8006C7CC AFB10014 */ sw $s1, 0x14($sp)
/* 47BD0 8006C7D0 AFBF0018 */ sw $ra, 0x18($sp)
/* 47BD4 8006C7D4 0C01B5F8 */ jal osSiDeviceBusy
/* 47BD8 8006C7D8 00A08821 */ addu $s1, $a1, $zero
/* 47BDC 8006C7DC 14400006 */ bnez $v0, .L8006C7F8
/* 47BE0 8006C7E0 2402FFFF */ addiu $v0, $zero, -1
/* 47BE4 8006C7E4 3C02A000 */ lui $v0, 0xa000
/* 47BE8 8006C7E8 02021025 */ or $v0, $s0, $v0
/* 47BEC 8006C7EC 8C430000 */ lw $v1, ($v0)
/* 47BF0 8006C7F0 00001021 */ addu $v0, $zero, $zero
/* 47BF4 8006C7F4 AE230000 */ sw $v1, ($s1)
.L8006C7F8:
/* 47BF8 8006C7F8 8FBF0018 */ lw $ra, 0x18($sp)
/* 47BFC 8006C7FC 8FB10014 */ lw $s1, 0x14($sp)
/* 47C00 8006C800 8FB00010 */ lw $s0, 0x10($sp)
/* 47C04 8006C804 03E00008 */ jr $ra
/* 47C08 8006C808 27BD0020 */ addiu $sp, $sp, 0x20
/* 47C0C 8006C80C 00000000 */ nop

View File

@ -1,25 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel osSiRawWriteIo
/* 47C10 8006C810 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 47C14 8006C814 AFB00010 */ sw $s0, 0x10($sp)
/* 47C18 8006C818 00808021 */ addu $s0, $a0, $zero
/* 47C1C 8006C81C AFB10014 */ sw $s1, 0x14($sp)
/* 47C20 8006C820 AFBF0018 */ sw $ra, 0x18($sp)
/* 47C24 8006C824 0C01B5F8 */ jal osSiDeviceBusy
/* 47C28 8006C828 00A08821 */ addu $s1, $a1, $zero
/* 47C2C 8006C82C 54400005 */ bnel $v0, $zero, .L8006C844
/* 47C30 8006C830 2402FFFF */ addiu $v0, $zero, -1
/* 47C34 8006C834 3C02A000 */ lui $v0, 0xa000
/* 47C38 8006C838 02021025 */ or $v0, $s0, $v0
/* 47C3C 8006C83C AC510000 */ sw $s1, ($v0)
/* 47C40 8006C840 00001021 */ addu $v0, $zero, $zero
.L8006C844:
/* 47C44 8006C844 8FBF0018 */ lw $ra, 0x18($sp)
/* 47C48 8006C848 8FB10014 */ lw $s1, 0x14($sp)
/* 47C4C 8006C84C 8FB00010 */ lw $s0, 0x10($sp)
/* 47C50 8006C850 03E00008 */ jr $ra
/* 47C54 8006C854 27BD0020 */ addiu $sp, $sp, 0x20
/* 47C58 8006C858 00000000 */ nop
/* 47C5C 8006C85C 00000000 */ nop

View File

@ -1,7 +1,7 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel osContAddressCrc
glabel __osContAddressCrc
/* 47C60 8006C860 00001821 */ addu $v1, $zero, $zero
/* 47C64 8006C864 24050400 */ addiu $a1, $zero, 0x400
/* 47C68 8006C868 3084FFFF */ andi $a0, $a0, 0xffff

View File

@ -1,67 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel osDestroyThread
/* 47D50 8006C950 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 47D54 8006C954 AFB00010 */ sw $s0, 0x10($sp)
/* 47D58 8006C958 00808021 */ addu $s0, $a0, $zero
/* 47D5C 8006C95C AFBF0018 */ sw $ra, 0x18($sp)
/* 47D60 8006C960 0C01ACD8 */ jal __osDisableInt
/* 47D64 8006C964 AFB10014 */ sw $s1, 0x14($sp)
/* 47D68 8006C968 16000004 */ bnez $s0, .L8006C97C
/* 47D6C 8006C96C 00408821 */ addu $s1, $v0, $zero
/* 47D70 8006C970 3C108009 */ lui $s0, %hi(__osRunningThread)
/* 47D74 8006C974 0801B266 */ j .L8006C998
/* 47D78 8006C978 8E104660 */ lw $s0, %lo(__osRunningThread)($s0)
.L8006C97C:
/* 47D7C 8006C97C 96030010 */ lhu $v1, 0x10($s0)
/* 47D80 8006C980 24020001 */ addiu $v0, $zero, 1
/* 47D84 8006C984 10620004 */ beq $v1, $v0, .L8006C998
/* 47D88 8006C988 00000000 */ nop
/* 47D8C 8006C98C 8E040008 */ lw $a0, 8($s0)
/* 47D90 8006C990 0C019880 */ jal __osDequeueThread
/* 47D94 8006C994 02002821 */ addu $a1, $s0, $zero
.L8006C998:
/* 47D98 8006C998 3C028009 */ lui $v0, %hi(__osActiveQueue)
/* 47D9C 8006C99C 8C42465C */ lw $v0, %lo(__osActiveQueue)($v0)
/* 47DA0 8006C9A0 14500008 */ bne $v0, $s0, .L8006C9C4
/* 47DA4 8006C9A4 00402021 */ addu $a0, $v0, $zero
/* 47DA8 8006C9A8 8E02000C */ lw $v0, 0xc($s0)
/* 47DAC 8006C9AC 3C018009 */ lui $at, %hi(__osActiveQueue)
/* 47DB0 8006C9B0 0801B27D */ j .L8006C9F4
/* 47DB4 8006C9B4 AC22465C */ sw $v0, %lo(__osActiveQueue)($at)
.L8006C9B8:
/* 47DB8 8006C9B8 8E02000C */ lw $v0, 0xc($s0)
/* 47DBC 8006C9BC 0801B27D */ j .L8006C9F4
/* 47DC0 8006C9C0 AC82000C */ sw $v0, 0xc($a0)
.L8006C9C4:
/* 47DC4 8006C9C4 8C830004 */ lw $v1, 4($a0)
/* 47DC8 8006C9C8 2402FFFF */ addiu $v0, $zero, -1
/* 47DCC 8006C9CC 10620009 */ beq $v1, $v0, .L8006C9F4
/* 47DD0 8006C9D0 00000000 */ nop
/* 47DD4 8006C9D4 2403FFFF */ addiu $v1, $zero, -1
.L8006C9D8:
/* 47DD8 8006C9D8 8C82000C */ lw $v0, 0xc($a0)
/* 47DDC 8006C9DC 1050FFF6 */ beq $v0, $s0, .L8006C9B8
/* 47DE0 8006C9E0 00000000 */ nop
/* 47DE4 8006C9E4 00402021 */ addu $a0, $v0, $zero
/* 47DE8 8006C9E8 8C820004 */ lw $v0, 4($a0)
/* 47DEC 8006C9EC 1443FFFA */ bne $v0, $v1, .L8006C9D8
/* 47DF0 8006C9F0 00000000 */ nop
.L8006C9F4:
/* 47DF4 8006C9F4 3C028009 */ lui $v0, %hi(__osRunningThread)
/* 47DF8 8006C9F8 8C424660 */ lw $v0, %lo(__osRunningThread)($v0)
/* 47DFC 8006C9FC 16020003 */ bne $s0, $v0, .L8006CA0C
/* 47E00 8006CA00 00000000 */ nop
/* 47E04 8006CA04 0C01AC75 */ jal __osDispatchThread
/* 47E08 8006CA08 00000000 */ nop
.L8006CA0C:
/* 47E0C 8006CA0C 0C01ACF4 */ jal __osRestoreInt
/* 47E10 8006CA10 02202021 */ addu $a0, $s1, $zero
/* 47E14 8006CA14 8FBF0018 */ lw $ra, 0x18($sp)
/* 47E18 8006CA18 8FB10014 */ lw $s1, 0x14($sp)
/* 47E1C 8006CA1C 8FB00010 */ lw $s0, 0x10($sp)
/* 47E20 8006CA20 03E00008 */ jr $ra
/* 47E24 8006CA24 27BD0020 */ addiu $sp, $sp, 0x20
/* 47E28 8006CA28 00000000 */ nop
/* 47E2C 8006CA2C 00000000 */ nop

View File

@ -4,8 +4,8 @@
glabel __osViInit
/* 47E90 8006CA90 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 47E94 8006CA94 AFB00010 */ sw $s0, 0x10($sp)
/* 47E98 8006CA98 3C108009 */ lui $s0, %hi(D_80095970)
/* 47E9C 8006CA9C 26105970 */ addiu $s0, $s0, %lo(D_80095970)
/* 47E98 8006CA98 3C108009 */ lui $s0, %hi(vi)
/* 47E9C 8006CA9C 26105970 */ addiu $s0, $s0, %lo(vi)
/* 47EA0 8006CAA0 02002021 */ addu $a0, $s0, $zero
/* 47EA4 8006CAA4 AFBF0014 */ sw $ra, 0x14($sp)
/* 47EA8 8006CAA8 0C01925C */ jal bzero

View File

@ -1,7 +1,7 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel osViGetCurrentContext
glabel __osViGetCurrentContext
/* 47FA0 8006CBA0 3C028009 */ lui $v0, %hi(__osViCurr)
/* 47FA4 8006CBA4 03E00008 */ jr $ra
/* 47FA8 8006CBA8 8C4259D0 */ lw $v0, %lo(__osViCurr)($v0)

View File

@ -47,7 +47,7 @@ glabel corrupted
/* 48674 8006D274 10E2000C */ beq $a3, $v0, .L8006D2A8
/* 48678 8006D278 02802021 */ addu $a0, $s4, $zero
/* 4867C 8006D27C 02202821 */ addu $a1, $s1, $zero
/* 48680 8006D280 0C01A7A3 */ jal osPfsRWInode
/* 48680 8006D280 0C01A7A3 */ jal __osPfsRWInode
/* 48684 8006D284 00003021 */ addu $a2, $zero, $zero
/* 48688 8006D288 00402021 */ addu $a0, $v0, $zero
/* 4868C 8006D28C 0004182B */ sltu $v1, $zero, $a0

View File

@ -36,7 +36,7 @@ glabel corrupted_init
/* 484F0 8006D0F0 02402021 */ addu $a0, $s2, $zero
/* 484F4 8006D0F4 27A50010 */ addiu $a1, $sp, 0x10
/* 484F8 8006D0F8 00003021 */ addu $a2, $zero, $zero
/* 484FC 8006D0FC 0C01A7A3 */ jal osPfsRWInode
/* 484FC 8006D0FC 0C01A7A3 */ jal __osPfsRWInode
/* 48500 8006D100 02003821 */ addu $a3, $s0, $zero
/* 48504 8006D104 00402021 */ addu $a0, $v0, $zero
/* 48508 8006D108 0004182B */ sltu $v1, $zero, $a0

View File

@ -15,7 +15,7 @@ glabel osPfsChecker
/* 48048 8006CC48 AFB40488 */ sw $s4, 0x488($sp)
/* 4804C 8006CC4C AFB30484 */ sw $s3, 0x484($sp)
/* 48050 8006CC50 AFB20480 */ sw $s2, 0x480($sp)
/* 48054 8006CC54 0C01A775 */ jal osCheckId
/* 48054 8006CC54 0C01A775 */ jal __osCheckId
/* 48058 8006CC58 AFB00478 */ sw $s0, 0x478($sp)
/* 4805C 8006CC5C 00408021 */ addu $s0, $v0, $zero
/* 48060 8006CC60 24020002 */ addiu $v0, $zero, 2
@ -86,7 +86,7 @@ glabel osPfsChecker
/* 48148 8006CD48 00609821 */ addu $s3, $v1, $zero
/* 4814C 8006CD4C 02202021 */ addu $a0, $s1, $zero
/* 48150 8006CD50 27A50118 */ addiu $a1, $sp, 0x118
/* 48154 8006CD54 0C01A7A3 */ jal osPfsRWInode
/* 48154 8006CD54 0C01A7A3 */ jal __osPfsRWInode
/* 48158 8006CD58 00003021 */ addu $a2, $zero, $zero
/* 4815C 8006CD5C 00408021 */ addu $s0, $v0, $zero
/* 48160 8006CD60 0260B021 */ addu $s6, $s3, $zero
@ -204,7 +204,7 @@ glabel osPfsChecker
/* 482EC 8006CEEC 27A50118 */ addiu $a1, $sp, 0x118
/* 482F0 8006CEF0 00003021 */ addu $a2, $zero, $zero
/* 482F4 8006CEF4 327200FF */ andi $s2, $s3, 0xff
/* 482F8 8006CEF8 0C01A7A3 */ jal osPfsRWInode
/* 482F8 8006CEF8 0C01A7A3 */ jal __osPfsRWInode
/* 482FC 8006CEFC 02403821 */ addu $a3, $s2, $zero
/* 48300 8006CF00 00408021 */ addu $s0, $v0, $zero
/* 48304 8006CF04 0010182B */ sltu $v1, $zero, $s0
@ -281,7 +281,7 @@ glabel osPfsChecker
/* 483F8 8006CFF8 02202021 */ addu $a0, $s1, $zero
/* 483FC 8006CFFC 27A50018 */ addiu $a1, $sp, 0x18
/* 48400 8006D000 24060001 */ addiu $a2, $zero, 1
/* 48404 8006D004 0C01A7A3 */ jal osPfsRWInode
/* 48404 8006D004 0C01A7A3 */ jal __osPfsRWInode
/* 48408 8006D008 326700FF */ andi $a3, $s3, 0xff
/* 4840C 8006D00C 00408021 */ addu $s0, $v0, $zero
/* 48410 8006D010 1600FF1B */ bnez $s0, .L8006CC80

View File

@ -25,14 +25,14 @@ glabel osPfsIsPlug
/* 4878C 8006D38C 0C01B52F */ jal osPfsRequestData
/* 48790 8006D390 00002021 */ addu $a0, $zero, $zero
/* 48794 8006D394 24040001 */ addiu $a0, $zero, 1
/* 48798 8006D398 0C019730 */ jal osSiRawStartDma
/* 48798 8006D398 0C019730 */ jal __osSiRawStartDma
/* 4879C 8006D39C 02802821 */ addu $a1, $s4, $zero
/* 487A0 8006D3A0 02402021 */ addu $a0, $s2, $zero
/* 487A4 8006D3A4 02202821 */ addu $a1, $s1, $zero
/* 487A8 8006D3A8 0C0195BC */ jal osRecvMesg
/* 487AC 8006D3AC 24060001 */ addiu $a2, $zero, 1
/* 487B0 8006D3B0 00002021 */ addu $a0, $zero, $zero
/* 487B4 8006D3B4 0C019730 */ jal osSiRawStartDma
/* 487B4 8006D3B4 0C019730 */ jal __osSiRawStartDma
/* 487B8 8006D3B8 02802821 */ addu $a1, $s4, $zero
/* 487BC 8006D3BC 02402021 */ addu $a0, $s2, $zero
/* 487C0 8006D3C0 02202821 */ addu $a1, $s1, $zero

View File

@ -70,7 +70,7 @@ glabel osContInit
/* 3D078 80061C78 24040001 */ addiu $a0, $zero, 1
/* 3D07C 80061C7C 3C11800B */ lui $s1, %hi(D_800B0ED0)
/* 3D080 80061C80 26310ED0 */ addiu $s1, $s1, %lo(D_800B0ED0)
/* 3D084 80061C84 0C019730 */ jal osSiRawStartDma
/* 3D084 80061C84 0C019730 */ jal __osSiRawStartDma
/* 3D088 80061C88 02202821 */ addu $a1, $s1, $zero
/* 3D08C 80061C8C 02802021 */ addu $a0, $s4, $zero
/* 3D090 80061C90 27B00058 */ addiu $s0, $sp, 0x58
@ -78,7 +78,7 @@ glabel osContInit
/* 3D098 80061C98 0C0195BC */ jal osRecvMesg
/* 3D09C 80061C9C 24060001 */ addiu $a2, $zero, 1
/* 3D0A0 80061CA0 00002021 */ addu $a0, $zero, $zero
/* 3D0A4 80061CA4 0C019730 */ jal osSiRawStartDma
/* 3D0A4 80061CA4 0C019730 */ jal __osSiRawStartDma
/* 3D0A8 80061CA8 02202821 */ addu $a1, $s1, $zero
/* 3D0AC 80061CAC 02802021 */ addu $a0, $s4, $zero
/* 3D0B0 80061CB0 02002821 */ addu $a1, $s0, $zero

View File

@ -65,8 +65,8 @@ glabel osCreatePiManager
/* 3BEC8 80060AC8 24634380 */ addiu $v1, $v1, %lo(gOsPiMessageQueue)
/* 3BECC 80060ACC 3C018009 */ lui $at, %hi(__osPiDevMgr+0x10)
/* 3BED0 80060AD0 AC233D60 */ sw $v1, %lo(__osPiDevMgr+0x10)($at)
/* 3BED4 80060AD4 3C038007 */ lui $v1, %hi(osPiRawStartDma)
/* 3BED8 80060AD8 2463B480 */ addiu $v1, $v1, %lo(osPiRawStartDma)
/* 3BED4 80060AD4 3C038007 */ lui $v1, %hi(__osPiRawStartDma)
/* 3BED8 80060AD8 2463B480 */ addiu $v1, $v1, %lo(__osPiRawStartDma)
/* 3BEDC 80060ADC 3C018009 */ lui $at, %hi(__osPiDevMgr+0x14)
/* 3BEE0 80060AE0 AC233D64 */ sw $v1, %lo(__osPiDevMgr+0x14)($at)
/* 3BEE4 80060AE4 3C038006 */ lui $v1, %hi(osEPiRawStartDma)

View File

@ -1,53 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel osSiRawStartDma
/* 410C0 80065CC0 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 410C4 80065CC4 3C02A480 */ lui $v0, 0xa480
/* 410C8 80065CC8 34420018 */ ori $v0, $v0, 0x18
/* 410CC 80065CCC AFBF0018 */ sw $ra, 0x18($sp)
/* 410D0 80065CD0 AFB10014 */ sw $s1, 0x14($sp)
/* 410D4 80065CD4 AFB00010 */ sw $s0, 0x10($sp)
/* 410D8 80065CD8 8C420000 */ lw $v0, ($v0)
/* 410DC 80065CDC 00808021 */ addu $s0, $a0, $zero
/* 410E0 80065CE0 30420003 */ andi $v0, $v0, 3
/* 410E4 80065CE4 10400003 */ beqz $v0, .L80065CF4
/* 410E8 80065CE8 00A08821 */ addu $s1, $a1, $zero
/* 410EC 80065CEC 08019754 */ j .L80065D50
/* 410F0 80065CF0 2402FFFF */ addiu $v0, $zero, -1
.L80065CF4:
/* 410F4 80065CF4 24020001 */ addiu $v0, $zero, 1
/* 410F8 80065CF8 16020003 */ bne $s0, $v0, .L80065D08
/* 410FC 80065CFC 02202021 */ addu $a0, $s1, $zero
/* 41100 80065D00 0C018614 */ jal osWritebackDCache
/* 41104 80065D04 24050040 */ addiu $a1, $zero, 0x40
.L80065D08:
/* 41108 80065D08 0C0187A4 */ jal osVirtualToPhysical
/* 4110C 80065D0C 02202021 */ addu $a0, $s1, $zero
/* 41110 80065D10 3C03A480 */ lui $v1, 0xa480
/* 41114 80065D14 AC620000 */ sw $v0, ($v1)
/* 41118 80065D18 56000003 */ bnel $s0, $zero, .L80065D28
/* 4111C 80065D1C 3C03A480 */ lui $v1, 0xa480
/* 41120 80065D20 0801974B */ j .L80065D2C
/* 41124 80065D24 34630004 */ ori $v1, $v1, 4
.L80065D28:
/* 41128 80065D28 34630010 */ ori $v1, $v1, 0x10
.L80065D2C:
/* 4112C 80065D2C 3C021FC0 */ lui $v0, 0x1fc0
/* 41130 80065D30 344207C0 */ ori $v0, $v0, 0x7c0
/* 41134 80065D34 AC620000 */ sw $v0, ($v1)
/* 41138 80065D38 16000005 */ bnez $s0, .L80065D50
/* 4113C 80065D3C 00001021 */ addu $v0, $zero, $zero
/* 41140 80065D40 02202021 */ addu $a0, $s1, $zero
/* 41144 80065D44 0C0185C8 */ jal osInvalDCache
/* 41148 80065D48 24050040 */ addiu $a1, $zero, 0x40
/* 4114C 80065D4C 00001021 */ addu $v0, $zero, $zero
.L80065D50:
/* 41150 80065D50 8FBF0018 */ lw $ra, 0x18($sp)
/* 41154 80065D54 8FB10014 */ lw $s1, 0x14($sp)
/* 41158 80065D58 8FB00010 */ lw $s0, 0x10($sp)
/* 4115C 80065D5C 03E00008 */ jr $ra
/* 41160 80065D60 27BD0020 */ addiu $sp, $sp, 0x20
/* 41164 80065D64 00000000 */ nop
/* 41168 80065D68 00000000 */ nop
/* 4116C 80065D6C 00000000 */ nop

View File

@ -1,12 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel osSpTaskYield
/* 41050 80065C50 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 41054 80065C54 AFBF0010 */ sw $ra, 0x10($sp)
/* 41058 80065C58 0C01B1BC */ jal osSpSetStatus
/* 4105C 80065C5C 24040400 */ addiu $a0, $zero, 0x400
/* 41060 80065C60 8FBF0010 */ lw $ra, 0x10($sp)
/* 41064 80065C64 03E00008 */ jr $ra
/* 41068 80065C68 27BD0018 */ addiu $sp, $sp, 0x18
/* 4106C 80065C6C 00000000 */ nop

View File

@ -1,25 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel osSpTaskYielded
/* 41070 80065C70 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 41074 80065C74 AFB00010 */ sw $s0, 0x10($sp)
/* 41078 80065C78 AFBF0014 */ sw $ra, 0x14($sp)
/* 4107C 80065C7C 0C01B1B8 */ jal osSpGetStatus
/* 41080 80065C80 00808021 */ addu $s0, $a0, $zero
/* 41084 80065C84 00022202 */ srl $a0, $v0, 8
/* 41088 80065C88 30420080 */ andi $v0, $v0, 0x80
/* 4108C 80065C8C 10400006 */ beqz $v0, .L80065CA8
/* 41090 80065C90 30840001 */ andi $a0, $a0, 1
/* 41094 80065C94 8E020004 */ lw $v0, 4($s0)
/* 41098 80065C98 2403FFFD */ addiu $v1, $zero, -3
/* 4109C 80065C9C 00441025 */ or $v0, $v0, $a0
/* 410A0 80065CA0 00431024 */ and $v0, $v0, $v1
/* 410A4 80065CA4 AE020004 */ sw $v0, 4($s0)
.L80065CA8:
/* 410A8 80065CA8 00801021 */ addu $v0, $a0, $zero
/* 410AC 80065CAC 8FBF0014 */ lw $ra, 0x14($sp)
/* 410B0 80065CB0 8FB00010 */ lw $s0, 0x10($sp)
/* 410B4 80065CB4 03E00008 */ jr $ra
/* 410B8 80065CB8 27BD0018 */ addiu $sp, $sp, 0x18
/* 410BC 80065CBC 00000000 */ nop

View File

@ -1,8 +1,13 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purpose registers
.section .text, "ax"
glabel __osSetCompare
/* 47A80 8006C680 40845800 */ mtc0 $a0, $11
/* 47A84 8006C684 03E00008 */ jr $ra
/* 47A88 8006C688 00000000 */ nop
/* 47A8C 8006C68C 00000000 */ nop

View File

@ -1,7 +1,13 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purpose registers
glabel osSetWatchLo
.section .text, "ax"
glabel __osSetWatchLo
/* 47AB0 8006C6B0 40849000 */ mtc0 $a0, $18
/* 47AB4 8006C6B4 00000000 */ nop
/* 47AB8 8006C6B8 03E00008 */ jr $ra

View File

@ -1,5 +1,11 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purpose registers
.section .text, "ax"
glabel guNormalize
/* 47FC0 8006CBC0 C4840000 */ lwc1 $f4, ($a0)
@ -23,6 +29,3 @@ glabel guNormalize
/* 48008 8006CC08 E4B20000 */ swc1 $f18, ($a1)
/* 4800C 8006CC0C 03E00008 */ jr $ra
/* 48010 8006CC10 E4C40000 */ swc1 $f4, ($a2)
/* 48014 8006CC14 00000000 */ nop
/* 48018 8006CC18 00000000 */ nop
/* 4801C 8006CC1C 00000000 */ nop

View File

@ -1,7 +1,13 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purpose registers
glabel osSetFpcCsr
.section .text, "ax"
glabel __osSetFpcCsr
/* 47A90 8006C690 4442F800 */ cfc1 $v0, $31
/* 47A94 8006C694 44C4F800 */ ctc1 $a0, $31
/* 47A98 8006C698 03E00008 */ jr $ra

View File

@ -1,7 +1,13 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purpose registers
glabel osSetSR
.section .text, "ax"
glabel __osSetSR
/* 47AA0 8006C6A0 40846000 */ mtc0 $a0, $12
/* 47AA4 8006C6A4 00000000 */ nop
/* 47AA8 8006C6A8 03E00008 */ jr $ra

View File

@ -165,9 +165,9 @@ segments:
- [0x40D50, c, os/seteventmesg, gcc_272 -O3]
- [0x40E00, hasm, os/osGetCount]
- [0x40E10, c, os/40E10]
- [0x41050, c, os/osSpTaskYield]
- [0x41070, c, os/osSpTaskYielded]
- [0x410C0, c, os/osSiRawStartDma]
- [0x41050, c, os/osSpTaskYield, gcc_272 -O3]
- [0x41070, c, os/sptaskyielded, gcc_272 -O3]
- [0x410C0, c, os/sirawdma, gcc_272 -O3]
- [0x41170, c, os/41170_len_f0]
- [0x41260, c, os/createthread, gcc_272 -O3]
- [0x41330, c, os/osGetThreadPri]
@ -215,7 +215,7 @@ segments:
- [0x439C0, c, os/439c0_len_220]
- [0x43BE0, c, os/43be0_len_5e0]
- [0x441C0, c, os/441c0_len_1c0]
- [0x44380, c, os/44380_len_4e0]
- [0x44380, c, os/pfsfreeblocks, gcc_272 -O3]
- [0x44490, c, os/44490]
- [0x44860, c, os/44860_len_60]
- [0x448C0, c, os/448c0_len_210]
@ -223,30 +223,38 @@ segments:
- [0x44B40, c, os/44b40_len_a90]
- [0x455D0, c, os/455d0_len_1f0]
- [0x457C0, c, os/457c0_len_270]
- [0x45A30, c, os/45a30_len_20]
- [0x45A30, c, os/afterprenmi, gcc_272 -O3]
- [0x45A50, c, os/45a50_len_3a0]
- [0x45DF0, hasm, os/exceptasm]
- [0x46760, hasm, os/__osDisableInt]
- [0x467D0, hasm, os/__osRestoreInt]
- [0x467F0, c, os/setglobalintmask, gcc_272 -O3]
- [0x467F0, c, os/resetglobalintmask, gcc_272 -O3]
- [0x46880, c, os/46880_len_260]
- [0x46AE0, c, os/46ae0_len_170]
- [0x46C50, c, os/46c50_len_20]
- [0x46880, c, os/pirawdma, gcc_272 -O3]
- [0x46950, c, os/pigetcmdq, gcc_272 -O3]
- [0x46970, c, os/epirawread, gcc_272 -O3]
- [0x46AE0, c, os/epirawwrite, gcc_272 -O3]
- [0x46C50, c, os/ai, gcc_272 -O3]
- [0x46C70, c, os/46c70_len_e00]
- [0x47A60, hasm, os/__osGetCause]
- [0x47A70, hasm, os/__osGetSR]
- [0x47A80, c, os/47a80_len_10]
- [0x47A90, c, os/47a90_len_50]
- [0x47AE0, c, os/47ae0_len_e0]
- [0x47BC0, c, os/47bc0_len_50]
- [0x47C10, c, os/47c10_len_50]
- [0x47A80, hasm, os/__osSetCompare]
- [0x47A90, hasm, os/setfpccsr]
- [0x47AA0, hasm, os/setsr]
- [0x47AB0, hasm, os/__osSetWatchLo]
- [0x47AC0, c, os/sp, gcc_272 -O3]
- [0x47AE0, c, os/spgetstat, gcc_272 -O3]
- [0x47AF0, c, os/sptaskyield, gcc_272 -O3]
- [0x47B00, c, os/spsetpc, gcc_272 -O3]
- [0x47B30, c, os/sprawdma, gcc_272 -O3]
- [0x47BC0, c, os/sirawread, gcc_272 -O3]
- [0x47C10, c, os/sirawwrite, gcc_272 -O3]
- [0x47C60, c, os/47c60_len_f0] # MOVE_ADDU
- [0x47D50, c, os/47d50_len_e0]
- [0x47D50, c, os/destroythread, gcc_272 -O3]
- [0x47E30, hasm, os/osMapTLBRdb]
- [0x47E90, c, os/47e90_len_110]
- [0x47FA0, c, os/47fa0_len_20]
- [0x47FC0, c, os/47fc0_len_60]
- [0x47FC0, hasm, os/guNormalize]
- [0x48020, c, os/48020_len_a00]
- [0x48A20, c, os/ldiv]
- [0x48BE0, c, os/osSiDeviceBusy]

View File

@ -989,7 +989,7 @@ osSpTaskLoad = 0x80065A10; // type:func rom:0x40E10
osSpTaskStartGo = 0x80065C1C; // type:func rom:0x4101C
osSpTaskYield = 0x80065C50; // type:func rom:0x41050
osSpTaskYielded = 0x80065C70; // type:func rom:0x41070
osSiRawStartDma = 0x80065CC0; // type:func rom:0x410C0
__osSiRawStartDma = 0x80065CC0; // type:func rom:0x410C0
osSiCreateAccessQueue = 0x80065D70; // type:func rom:0x41170
osSiGetAccess = 0x80065DC4; // type:func rom:0x411C4
osSiRelAccess = 0x80065E30; // type:func rom:0x41230
@ -1062,8 +1062,8 @@ osIdCheckSum = 0x80069774; // type:func rom:0x44B74
osRepairPackId = 0x800697B8; // type:func rom:0x44BB8
osCheckPackId = 0x80069AA4; // type:func rom:0x44EA4
osGetId = 0x80069C08; // type:func rom:0x45008
osCheckId = 0x80069DD4; // type:func rom:0x451D4
osPfsRWInode = 0x80069E8C; // type:func rom:0x4528C
__osCheckId = 0x80069DD4; // type:func rom:0x451D4
__osPfsRWInode = 0x80069E8C; // type:func rom:0x4528C
osContRamRead = 0x8006A1D0; // type:func rom:0x455D0
osContRamWrite = 0x8006A3C0; // type:func rom:0x457C0
osAfterPreNMI = 0x8006A630; // type:func rom:0x45A30
@ -1084,7 +1084,7 @@ __osDisableInt = 0x8006B360; // rom:0x46760
__osRestoreInt = 0x8006B3D0; // rom:0x467D0
__osSetGlobalIntMask = 0x8006B3F0; // type:func rom:0x467F0
__osResetGlobalIntMask = 0x8006B430; // type:func rom:0x46830
osPiRawStartDma = 0x8006B480; // type:func rom:0x46880
__osPiRawStartDma = 0x8006B480; // type:func rom:0x46880
osPiGetCmdQueue = 0x8006B550; // type:func rom:0x46950
__osEPiRawReadIo = 0x8006B570; // type:func rom:0x46970
__osEPiRawWriteIo = 0x8006B6E0; // type:func rom:0x46AE0
@ -1097,22 +1097,22 @@ _Genld = 0x8006C0B4; // type:func rom:0x474B4
__osGetCause = 0x8006C660; // type:func rom:0x47A60
__osGetSR = 0x8006C670; // type:func rom:0x47A70
__osSetCompare = 0x8006C680; // type:func rom:0x47A80
osSetFpcCsr = 0x8006C690; // type:func rom:0x47A90
osSetSR = 0x8006C6A0; // type:func rom:0x47AA0
osSetWatchLo = 0x8006C6B0; // type:func rom:0x47AB0
osSpDeviceBusy = 0x8006C6C0; // type:func rom:0x47AC0
osSpGetStatus = 0x8006C6E0; // type:func rom:0x47AE0
osSpSetStatus = 0x8006C6F0; // type:func rom:0x47AF0
osSpSetPc = 0x8006C700; // type:func rom:0x47B00
osSpRawStartDma = 0x8006C730; // type:func rom:0x47B30
osSiRawReadIo = 0x8006C7C0; // type:func rom:0x47BC0
osSiRawWriteIo = 0x8006C810; // type:func rom:0x47C10
osContAddressCrc = 0x8006C860; // type:func rom:0x47C60
osContDataCrc = 0x8006C8CC; // type:func rom:0x47CCC
__osSetFpcCsr = 0x8006C690; // type:func rom:0x47A90
__osSetSR = 0x8006C6A0; // type:func rom:0x47AA0
__osSetWatchLo = 0x8006C6B0; // type:func rom:0x47AB0
__osSpDeviceBusy = 0x8006C6C0; // type:func rom:0x47AC0
__osSpGetStatus = 0x8006C6E0; // type:func rom:0x47AE0
__osSpSetStatus = 0x8006C6F0; // type:func rom:0x47AF0
__osSpSetPc = 0x8006C700; // type:func rom:0x47B00
__osSpRawStartDma = 0x8006C730; // type:func rom:0x47B30
__osSiRawReadIo = 0x8006C7C0; // type:func rom:0x47BC0
__osSiRawWriteIo = 0x8006C810; // type:func rom:0x47C10
__osContAddressCrc = 0x8006C860; // type:func rom:0x47C60
__osContDataCrc = 0x8006C8CC; // type:func rom:0x47CCC
osDestroyThread = 0x8006C950; // type:func rom:0x47D50
osMapTLBRdb = 0x8006CA30; // type:func rom:0x47E30
__osViInit = 0x8006CA90; // type:func rom:0x47E90
osViGetCurrentContext = 0x8006CBA0; // type:func rom:0x47FA0
__osViGetCurrentContext = 0x8006CBA0; // type:func rom:0x47FA0
guNormalize = 0x8006CBC0; // type:func rom:0x47FC0
osPfsChecker = 0x8006CC20; // type:func rom:0x48020
corrupted_init = 0x8006D080; // type:func rom:0x48480
@ -1122,7 +1122,7 @@ osPfsRequestData = 0x8006D4BC; // type:func rom:0x488BC
osPfsGetInitData = 0x8006D560; // type:func rom:0x48960
ldiv = 0x8006D620; // type:func rom:0x48A20
lldiv = 0x8006D6A4; // type:func rom:0x48AA4
osSiDeviceBusy = 0x8006D7E0; // type:func rom:0x48BE0
__osSiDeviceBusy = 0x8006D7E0; // type:func rom:0x48BE0
func_8006D800 = 0x8006D800; // type:func rom:0x48C00
func_8006DDC0 = 0x8006DDC0; // type:func rom:0x491C0
func_8006E310 = 0x8006E310; // type:func rom:0x49710
@ -19440,7 +19440,7 @@ D_0A004350 = 0xA004350; // type:data
D_7012ACA1 = 0x7012ACA1; // type:data
D_7012BC11 = 0x7012BC11; // type:data
osTvType = 0x80000300; //
D_80000308 = 0x80000308; // type:data
osRomBase = 0x80000308; // type:data
D_8000030C = 0x8000030C; // type:data
osMemSize = 0x80000318; // type:data
D_8000031C = 0x8000031C; // type:data

View File

@ -319,7 +319,7 @@ D_800FBB60 = 0x800FBB60;
D_800FBBE0 = 0x800FBBE0;
D_80200000 = 0x80200000;
osTvType = 0x80000300;
D_80000308 = 0x80000308;
osRomBase = 0x80000308;
D_8000030C = 0x8000030C;
osMemSize = 0x80000318;
D_8000031C = 0x8000031C;