48#define OFFSET(addr, align) (((u32)(addr) & ((align)-1)))
50#define DOLPHIN_ALIGNMENT 32
53#define OS_CACHED_REGION_PREFIX 0x8000
54#define OS_UNCACHED_REGION_PREFIX 0xC000
55#define OS_PHYSICAL_MASK 0x3FFF
57#define OS_BASE_CACHED (OS_CACHED_REGION_PREFIX << 16)
58#define OS_BASE_UNCACHED (OS_UNCACHED_REGION_PREFIX << 16)
62volatile int __OSTVMode
AT_ADDRESS(OS_BASE_CACHED | 0x00CC);
68volatile u16 __OSDeviceCode
AT_ADDRESS(OS_BASE_CACHED | 0x30E6);
69u16 __OSWirelessPadFixMode
AT_ADDRESS(OS_BASE_CACHED | 0x30E0);
73int __gUnknown800030C0[2]
AT_ADDRESS(OS_BASE_CACHED | 0x30C0);
74u8 __gUnknown800030E3
AT_ADDRESS(OS_BASE_CACHED | 0x30E3);
76#define __OSBusClock (*(u32 *)(OS_BASE_CACHED | 0x00F8))
77#define __OSCoreClock (*(u32 *)(OS_BASE_CACHED | 0x00FC))
80#define OS_BUS_CLOCK __OSBusClock
81#define OS_CORE_CLOCK __OSCoreClock
82#define OS_TIMER_CLOCK (OS_BUS_CLOCK/4)
84#define OSTicksToSeconds(ticks) ((ticks) / (OS_TIMER_CLOCK))
85#define OSTicksToMilliseconds(ticks) ((ticks) / (OS_TIMER_CLOCK/1000))
86#define OSTicksToMicroseconds(ticks) ((ticks) * 8 / (OS_TIMER_CLOCK/125000))
87#define OSSecondsToTicks(sec) ((sec) * (OS_TIMER_CLOCK))
88#define OSMillisecondsToTicks(msec) ((msec) * (OS_TIMER_CLOCK / 1000))
89#define OSNanosecondsToTicks(nsec) (((nsec) * (OS_TIMER_CLOCK / 125000)) / 8000)
90#define OSMicrosecondsToTicks(usec) (((usec) * (OS_TIMER_CLOCK / 125000)) / 8)
163#define OS_CONSOLE_MASK 0xF0000000
164#define OS_CONSOLE_RETAIL 0x00000000
165#define OS_CONSOLE_DEVELOPMENT 0x10000000
166#define OS_CONSOLE_TDEV 0x20000000
168#define OS_CONSOLE_RETAIL4 0x00000004
169#define OS_CONSOLE_RETAIL3 0x00000003
170#define OS_CONSOLE_RETAIL2 0x00000002
171#define OS_CONSOLE_RETAIL1 0x00000001
172#define OS_CONSOLE_TDEVHW4 0x20000007
173#define OS_CONSOLE_TDEVHW3 0x20000006
174#define OS_CONSOLE_TDEVHW2 0x20000005
175#define OS_CONSOLE_TDEVHW1 0x20000004
176#define OS_CONSOLE_DEVHW4 0x10000007
177#define OS_CONSOLE_DEVHW3 0x10000006
178#define OS_CONSOLE_DEVHW2 0x10000005
179#define OS_CONSOLE_DEVHW1 0x10000004
180#define OS_CONSOLE_MINNOW 0x10000003
181#define OS_CONSOLE_ARTHUR 0x10000002
182#define OS_CONSOLE_PC_EMULATOR 0x10000001
183#define OS_CONSOLE_EMULATOR 0x10000000
185#define OS_SOUND_MODE_MONO 0
186#define OS_SOUND_MODE_STEREO 1
209#define OS_REPORT(...) OSReport(__VA_ARGS__)
210#define OS_WARNING(...) OSReport_Warning(__VA_ARGS__)
211#define OS_REPORT_ERROR(...) OSReport_Error(__VA_ARGS__)
212#define OS_PANIC(line, msg) OSPanic(__FILE__, line, msg)
214#define OS_REPORT(...)
215#define OS_WARNING(...)
216#define OS_REPORT_ERROR(...)
226#define OSRoundUp32B(x) (((u32)(x) + 32 - 1) & ~(32 - 1))
227#define OSRoundDown32B(x) (((u32)(x)) & ~(32 - 1))
237#define OSPhysicalToCached(paddr) ((void*) ((u32)(OS_BASE_CACHED + (u32)(paddr))))
238#define OSPhysicalToUncached(paddr) ((void*) ((u32)(OS_BASE_UNCACHED + (u32)(paddr))))
239#define OSCachedToPhysical(caddr) ((u32) ((u32)(caddr) - OS_BASE_CACHED))
240#define OSUncachedToPhysical(ucaddr) ((u32) ((u32)(ucaddr) - OS_BASE_UNCACHED))
241#define OSCachedToUncached(caddr) ((void*) ((u8*)(caddr) + (OS_BASE_UNCACHED - OS_BASE_CACHED)))
242#define OSUncachedToCached(ucaddr) ((void*) ((u8*)(ucaddr) - (OS_BASE_UNCACHED - OS_BASE_CACHED)))
254 #define LINE(l0, l1, l2) (l0)
255#elif SDK_REVISION < 2
256 #define LINE(l0, l1, l2) (l1)
258 #define LINE(l0, l1, l2) (l2)
262#define ASSERTLINE(line, cond) \
263 ((cond) || (OSPanic(__FILE__, line, "Failed assertion " #cond), 0))
265#define ASSERTMSGLINE(line, cond, msg) \
266 ((cond) || (OSPanic(__FILE__, line, msg), 0))
269#define ASSERTMSG1LINE(line, cond, msg, arg1) \
270 ((cond) || (OSPanic(__FILE__, line, msg, arg1), 0))
272#define ASSERTMSG2LINE(line, cond, msg, arg1, arg2) \
273 ((cond) || (OSPanic(__FILE__, line, msg, arg1, arg2), 0))
275#define ASSERTMSGLINEV(line, cond, ...) \
276 ((cond) || (OSPanic(__FILE__, line, __VA_ARGS__), 0))
279#define ASSERTLINE(line, cond) (void)0
280#define ASSERTMSGLINE(line, cond, msg) (void)0
281#define ASSERTMSG1LINE(line, cond, msg, arg1) (void)0
282#define ASSERTMSG2LINE(line, cond, msg, arg1, arg2) (void)0
283#define ASSERTMSGLINEV(line, cond, ...) (void)0
286#define ASSERT(cond) ASSERTLINE(__LINE__, cond)
291 register u32* tmpPtr = &
tmp;
295 psq_st inF, 0(tmpPtr), 0x1, 5
311 register u32* tmpPtr = &
tmp;
315 psq_st inF, 0(tmpPtr), 0x1, 2
u32 mode
Definition GXTev.c:56
static OSContext context
Definition JUTException.cpp:181
void OSVReport(const char *msg, va_list list)
Definition OSError.c:19
void OSPanic(const char *file, int line, const char *msg,...)
Definition OSError.c:23
void OSReport(const char *msg,...)
Definition OSError.c:12
u8 __OSException
Definition OSException.h:31
BOOL __OSIsGcam
Definition OS.c:63
unsigned int size
Definition __os.h:106
s16 name
Definition d_a_e_pz.cpp:1764
static char * tmp[5]
Definition d_a_npc_ashB.cpp:231
void OSReportForceEnableOn()
Definition m_Do_printf.cpp:58
void OSReportEnable()
Definition m_Do_printf.cpp:53
void OSReport_System(const char *fmt,...)
Definition m_Do_printf.cpp:211
void OSReport_FatalError(const char *fmt,...)
Definition m_Do_printf.cpp:163
void OSReport_Error(const char *fmt,...)
Definition m_Do_printf.cpp:179
void OSReportForceEnableOff()
Definition m_Do_printf.cpp:63
void OSAttention(const char *fmt,...)
Definition m_Do_printf.cpp:40
void OSReportDisable()
Definition m_Do_printf.cpp:48
void OSReport_Warning(const char *fmt,...)
Definition m_Do_printf.cpp:195
BOOL OSDisableInterrupts(void)
Definition OSInterrupt.c:85
void OSf32tos16(f32 *f, s16 *out)
Definition os.h:304
void OSReportInit(void)
Definition m_Do_printf.cpp:89
OSTime OSGetTime(void)
Definition OSTime.c:14
BOOL OSRestoreInterrupts(BOOL level)
void __OSPSInit(void)
Definition OS.c:605
va_list list
Definition os.h:192
u32 OSUncachedToPhysical(void *ucaddr)
Definition OSAddress.c:26
OSExecParams __OSRebootParams
Definition OS.c:43
void OSTicksToCalendarTime(OSTime ticks, OSCalendarTime *td)
Definition OSTime.c:137
u32 OSGetPhysicalMemSize(void)
Definition OSMemory.c:19
int const char * msg
Definition os.h:193
u8 __OSReport_System_disable
Definition m_Do_printf.cpp:18
struct OSCalendarTime OSCalendarTime
s64 OSTime
Definition os.h:16
void OSSetSoundMode(u32 mode)
Definition OSRtc.c:306
int line
Definition os.h:193
BOOL OSEnableInterrupts(void)
Definition OSInterrupt.c:96
int const char void OSFatal(GXColor fg, GXColor bg, const char *msg)
Definition OSFatal.c:159
OSTime __OSStartTime
Definition OS.c:57
void * OSCachedToUncached(void *caddr)
Definition OSAddress.c:31
void OSResetStopwatch(OSStopwatch *sw)
Definition OSStopwatch.c:44
void * OSAllocFromArenaHi(u32 size, u32 align)
Definition OSArena.c:42
void OSRegisterVersion(const char *id)
Definition OS.c:629
u32 OSGetSoundMode(void)
Definition OSRtc.c:298
u32 OSTick
Definition os.h:17
void * OSPhysicalToCached(u32 paddr)
Definition OSAddress.c:11
u8 __OSf32tou8(register f32 inF)
Definition os.h:308
OSTime OSCheckStopwatch(OSStopwatch *sw)
Definition OSStopwatch.c:34
u32 __OSPhysicalMemSize AT_ADDRESS(OS_BASE_CACHED|0x0028)
void OSStopStopwatch(OSStopwatch *sw)
Definition OSStopwatch.c:17
u8 __OSReport_Warning_disable
Definition m_Do_printf.cpp:16
u8 __OSReport_disable
Definition m_Do_printf.cpp:12
void * OSPhysicalToUncached(u32 paddr)
Definition OSAddress.c:16
void OSInitStopwatch(OSStopwatch *sw, char *name)
Definition OSStopwatch.c:4
void __OSFPRInit(void)
Definition OS.c:86
void OSVAttention(const char *fmt, va_list args)
Definition m_Do_printf.cpp:35
void * OSGetArenaLo(void)
Definition OSArena.c:16
__declspec(weak) void OSReport(const char *msg
u32 OSGetConsoleType(void)
Definition OS.c:181
s16 __OSf32tos16(register f32 inF)
Definition os.h:288
void OSSwitchFiberEx(u32, u32, u32, u32, u32, u32)
Definition m_Do_printf.cpp:24
void OSStartStopwatch(OSStopwatch *sw)
Definition OSStopwatch.c:12
u32 OSCachedToPhysical(void *caddr)
Definition OSAddress.c:21
struct OSBootInfo_s OSBootInfo
OSTick OSGetTick(void)
Definition OSTime.c:29
void OSSetArenaHi(void *newHi)
Definition OSArena.c:22
void * OSAllocFromArenaLo(u32 size, u32 align)
Definition OSArena.c:30
int __OSInIPL
Definition OS.c:58
void * OSGetArenaHi(void)
Definition OSArena.c:10
u8 __OSReport_enable
Definition m_Do_printf.cpp:21
OSTime OSCalendarTimeToTicks(OSCalendarTime *td)
Definition OSTime.c:173
struct OSStopwatch OSStopwatch
void OSSetArenaLo(void *newLo)
Definition OSArena.c:26
u32 __OSGetDIConfig(void)
Definition OS.c:625
OSTime __OSGetSystemTime(void)
Definition OSTime.c:59
void OSf32tou8(f32 *f, u8 *out)
Definition os.h:324
void OSDefaultExceptionHandler(__OSException exception, OSContext *context)
void OSDumpStopwatch(OSStopwatch *sw)
Definition OSStopwatch.c:48
void * OSUncachedToCached(void *ucaddr)
Definition OSAddress.c:36
static void OSInitFastCast(void)
Definition os.h:328
u8 __OSReport_Error_disable
Definition m_Do_printf.cpp:14
void OSInit(void)
Definition OS.c:230
u32 version
Definition os.h:128
u32 FSTMaxLength
Definition os.h:134
DVDDiskID DVDDiskID
Definition os.h:126
void * FSTLocation
Definition os.h:133
void * arenaHi
Definition os.h:132
u32 magic
Definition os.h:127
u32 consoleType
Definition os.h:130
u32 memorySize
Definition os.h:129
void * arenaLo
Definition os.h:131
int msec
Definition os.h:120
int mday
Definition os.h:115
int sec
Definition os.h:112
int yday
Definition os.h:119
int mon
Definition os.h:116
int wday
Definition os.h:118
int year
Definition os.h:117
int usec
Definition os.h:121
int min
Definition os.h:113
int hour
Definition os.h:114
Definition OSContext.h:137
OSTime min
Definition os.h:141
OSTime last
Definition os.h:143
u32 hits
Definition os.h:139
OSTime max
Definition os.h:142
char * name
Definition os.h:138
u32 _padding
Definition os.h:145
BOOL running
Definition os.h:144
OSTime total
Definition os.h:140
Definition d_menu_dmap_map.cpp:90
int BOOL
Definition types.h:30
unsigned long u32
Definition types.h:9
signed short int s16
Definition types.h:6
signed long long int s64
Definition types.h:10
float f32
Definition types.h:22
unsigned short int u16
Definition types.h:7
unsigned char u8
Definition types.h:5