Mario Kart 64
Loading...
Searching...
No Matches
libultra_internal.h
Go to the documentation of this file.
1#ifndef _LIBULTRA_INTERNAL_H_
2#define _LIBULTRA_INTERNAL_H_
3#include <ultra64.h>
4#include "macros.h"
5
6typedef struct __OSEventState
7{
8 OSMesgQueue *messageQueue;
9 OSMesg message;
11
17
18// Original OSThread_ListHead definitions
23
24
25// Original EEPROM definitions
26extern ALIGNED8 u32 D_80365E00[15];
27extern u32 D_80365E3C;
28
29typedef struct {
30 u32 initialized; // probably something like initialized?
32 OSMesgQueue *cmdQueue;
33 OSMesgQueue *eventQueue;
34 OSMesgQueue *accessQueue;
35 s32 (*dma_func)(s32, u32, void *, size_t);
36 s32 (*edma_func)(OSPiHandle*, s32, u32, void *, size_t);
37} OSMgrArgs;
38
47void __osSiGetAccess(void);
48void __osSiRelAccess(void);
51void __osPiGetAccess(void);
55s32 __osSiRawReadIo(void *, u32 *);
56s32 __osSiRawWriteIo(void *, u32);
57s32 osPiRawReadIo(u32 a0, u32 *a1);
60s32 __osSpSetPc(void *);
63s32 __osSpRawStartDma(u32 dir, void *sp_ptr, void *dram_ptr, size_t size);
66void __osViInit(void);
69void __osViSwapContext(void);
77#endif
s16 D_8015F6E8
Definition code_800029B0.c:86
s32 __osSiRawWriteIo(void *, u32)
Definition __osSiRawWriteIo.c:4
s32 __osSpSetPc(void *)
Definition __osSpSetPc.c:4
s32 __osSpDeviceBusy(void)
Definition __osSpDeviceBusy.c:4
void __osSetSR(u32)
OSThread * __osActiveQueue
Definition __osDequeueThread.c:5
s32 __osAtomicDec(u32 *)
Definition __osAtomicDec.c:3
void __osViSwapContext(void)
Definition __osViSwapContext.c:7
struct __osThreadTail OSThreadTail
u32 __osSpGetStatus(void)
Definition __osSpGetStatus.c:4
void __osSetTimerIntr(u64)
Definition osTimer.c:59
u32 __osGetCause(void)
OSThread * __osRunningThread
Definition __osDequeueThread.c:6
void __osSpSetStatus(u32)
Definition __osSpSetStatus.c:4
u32 __osProbeTLB(void *)
s32 __osSiRawReadIo(void *, u32 *)
Definition __osSiRawReadIo.c:4
void __osDispatchThread(void)
void __osSetCompare(u32)
s32 __osSiRawStartDma(s32, void *)
Definition __osSiRawStartDma.c:4
void __osSetHWIntrRoutine(OSHWIntr interrupt, s32(*handler)(void))
Definition __osSetHWIntrRoutine.c:8
void __osDequeueThread(OSThread **, OSThread *)
Definition __osDequeueThread.c:9
void __osViInit(void)
Definition __osViInit.c:16
s32 __osDisableInt(void)
OSThread * __osRunQueue
Definition __osDequeueThread.c:4
u64 __osInsertTimer(OSTimer *)
Definition osTimer.c:68
OSThreadTail __osThreadTail
Definition __osDequeueThread.c:3
void __osSiRelAccess(void)
Definition __osSiCreateAccessQueue.c:23
s32 __osAiDeviceBusy(void)
Definition __osAiDeviceBusy.c:4
OSThread * __osPopThread(OSThread **)
s32 __osSiDeviceBusy(void)
Definition __osSiDeviceBusy.c:4
u32 __osGetSR(void)
s32 osPiRawReadIo(u32 a0, u32 *a1)
Definition osPiRawReadIo.c:6
ALIGNED8 u32 D_80365E00[15]
OSViContext * __osViGetCurrentContext2(void)
void __osSiCreateAccessQueue(void)
Definition __osSiCreateAccessQueue.c:9
void __osEnqueueThread(OSThread **, OSThread *)
void __osSetFpcCsr(u32)
struct __OSEventState __OSEventState
void __osSiGetAccess(void)
Definition __osSiCreateAccessQueue.c:15
void __osRestoreInt(s32)
s32 __osSpRawStartDma(u32 dir, void *sp_ptr, void *dram_ptr, size_t size)
Definition __osSpRawStartDma.c:4
u32 D_80365E3C
OSViContext * __osViGetCurrentContext(void)
Definition __osViGetCurrentContext.c:5
s32 __osLeoInterrupt()
Definition __osLeoInterrupt.c:12
void __osPiCreateAccessQueue(void)
Definition __osPiCreateAccessQueue.c:9
void __osPiGetAccess(void)
Definition __osPiCreateAccessQueue.c:15
void __osEnqueueAndYield(OSThread **)
unsigned long long int u64
Definition llconv.c:2
#define ALIGNED8
Definition macros.h:45
s32 OSPri
Definition os_thread.h:21
Definition libultra_internal.h:29
OSMesgQueue * eventQueue
Definition libultra_internal.h:33
OSMesgQueue * accessQueue
Definition libultra_internal.h:34
u32 initialized
Definition libultra_internal.h:30
OSMesgQueue * cmdQueue
Definition libultra_internal.h:32
OSThread * mgrThread
Definition libultra_internal.h:31
Definition os_pi.h:28
Definition os_thread.h:51
Definition os_time.h:10
Definition os_vi.h:60
Definition libultra_internal.h:7
OSMesg message
Definition libultra_internal.h:9
OSMesgQueue * messageQueue
Definition libultra_internal.h:8
Definition libultra_internal.h:13
OSThread * next
Definition libultra_internal.h:14
OSPri priority
Definition libultra_internal.h:15
signed int s32
Definition ultratypes.h:15
unsigned int u32
Definition ultratypes.h:16