c: __osViGetCurrentContext

This commit is contained in:
Mittenz
2020-08-19 19:26:26 -05:00
parent ca8efa863f
commit ac8a1f63ac
6 changed files with 993 additions and 28 deletions
+1 -1
View File
@@ -77,7 +77,7 @@ void *osViGetNextFramebuffer(void){
ptr = (void *)osVirtualToPhysical(ptr); \
}
OSTask D_8012D1A0;
extern OSTask D_8012D1A0;
OSTask *_VirtualToPhysicalTask(OSTask *intp)
{
OSTask *tp;
+5 -27
View File
@@ -3,9 +3,7 @@
#include "macros.h"
#include "libultra_internal.h"
extern OSThread* __osRunningThread;
extern OSThread* __RunQueue;
#include "viint.h"
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/__osSiDeviceBusy.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/__osSumcalc.s")
@@ -17,28 +15,8 @@ GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/__osCheckId.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/__osPfsRWInode.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/__osPfsSelectBank.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/__osDpDeviceBusy.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/__osViGetCurrentContext.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/__osViSwapContext.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/func_800D63F0.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/__osSpSetPc.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/__osSpRawStartDma.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/__osSpDeviceBusy.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/__osResetGlobalIntMask.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/osEPiRawWriteIo.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/osYieldThread.s")
/*extern void __osEnqueueAndYield(OSThread **);
extern void __osRestoreInt(u32);
void osYieldThread(void){
register u32 saveMask = __osDisableInt();
__osRunningThread->state = OS_STATE_RUNNABLE;
__osEnqueueAndYield(&__RunQueue);
__osRestoreInt(saveMask);
}*/
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/osDestroyThread.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/_Litob.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/_Genld.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/_Ldtob.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/__osSetCompare.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/lldiv.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/ldiv.s")
__OSViContext *__osViGetCurrentContext(void){
return __osViCurr;
}
+34
View File
@@ -0,0 +1,34 @@
/* The comment below is needed for this file to be picked up by generate_ld */
/* RAM_POS: 0x800D6090 */
#include "macros.h"
#include "libultra_internal.h"
#include "viint.h"
extern OSThread* __osRunningThread;
extern OSThread* __RunQueue;
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/__osViSwapContext.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/func_800D63F0.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/__osSpSetPc.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/__osSpRawStartDma.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/__osSpDeviceBusy.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/__osResetGlobalIntMask.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/osEPiRawWriteIo.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/osYieldThread.s")
/*extern void __osEnqueueAndYield(OSThread **);
extern void __osRestoreInt(u32);
void osYieldThread(void){
register u32 saveMask = __osDisableInt();
__osRunningThread->state = OS_STATE_RUNNABLE;
__osEnqueueAndYield(&__RunQueue);
__osRestoreInt(saveMask);
}*/
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/osDestroyThread.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/_Litob.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/_Genld.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/_Ldtob.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/__osSetCompare.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/lldiv.s")
GLOBAL_ASM("lib/asm/non_matchings/unknown_0D3020/ldiv.s")