Operating System (OS)

Restrictions on DOL Files and Boot-Related Terminology

ROM Font

Interrupts and Callback Functions

Relocatable Module System

Reset Functions and Shutdown Functions

Thread State Transitions

Sample Demos

[Function List]

Address Conversion

OSPhysicalToCached
OSPhysicalToUncached
OSCachedToPhysical
OSUncachedToPhysical
OSCachedToUncached
OSUncachedToCached

OSRoundUp32B
OSRoundDown32B

Alarms

OSCancelAlarm
OSCancelAlarms
OSCreateAlarm
OSSetAlarm
OSSetAlarmTag
OSSetPeriodicAlarm
OSSetAlarmUserData
OSGetAlarmUserData

Arena

OSAllocFromMEM1ArenaHi
OSAllocFromMEM1ArenaLo
OSAllocFromMEM2ArenaHi
OSAllocFromMEM2ArenaLo
OSGetMEM1ArenaHi
OSGetMEM1ArenaLo
OSGetMEM2ArenaHi
OSGetMEM2ArenaLo
OSSetMEM1ArenaHi
OSSetMEM1ArenaLo
OSSetMEM2ArenaHi
OSSetMEM2ArenaLo

Cache

DCFlushRange
DCFlushRangeNoSync
DCFreeze
DCInvalidateRange
DCStoreRange
DCStoreRangeNoSync
DCTouchRange
DCUnfreeze
DCZeroRange
ICFreeze
ICInvalidateRange
ICUnfreeze
LCDisable
LCEnable
LCGetBase
LCFlushQueue
LCLoadBlocks
LCLoadData
LCQueueLength
LCQueueWait
LCStoreBlocks
LCStoreData

Error

ASSERT
ASSERTMSG
OSFatal
OSHalt
OSReport
OSSetErrorHandler

Execution

OSExecl
OSExecv

Fast Cast

OSf32tos16
OSf32tos8
OSf32tou16
OSf32tou8
OSInitFastCast
OSs16tof32
OSs8tof32
OSu16tof32
OSu8tof32
OSSetGQR[n]

Font

OSGetFontEncode
OSGetFontTexel
OSGetFontTexture
OSGetFontWidth
OSInitFont
OSLoadFont

Idle Function

OSGetIdleFunction
OSSetIdleFunction

Initialization

OSGetConsoleSimulatedMem1Size
OSGetConsoleSimulatedMem2Size
OSGetConsoleType
OSGetAppGamename
OSGetAppType
OSGetPhysicalMem1Size
OSGetPhysicalMem2Size
OSInit

Interrupts

OSDisableInterrupts
OSEnableInterrupts
OSRestoreInterrupts

Memory Allocation
(MEM Library is recommended)

OSAddToHeap
OSAlloc
OSAllocFixed
OSAllocFromHeap
OSCheckHeap
OSCreateHeap
OSDestroyHeap
OSDumpHeap
OSFree
OSFreeToHeap
OSInitAlloc
OSSetCurrentHeap

Memory Protection

OSProtectRange

OSDisableCodeExecOnMEM1Hi8MB
OSDisableCodeExecOnMEM1Hi16MB
OSEnableCodeExecOnMEM2Lo8MB
OSEnableCodeExecOnMEM2Lo16MB

Resetting

OSIsRestart
OSGetResetCode
OSGetSaveRegion
OSGetSavedRegion
OSSetSaveRegion

OSRebootSystem
OSRestart
OSShutdownSystem

RESET

OSGetResetButtonState
OSSetResetCallback
OSSetPowerCallback

Relocatable Module System
(You can also use the RSO library)

OSLink
OSLinkFixed
OSUnlink
OSSearchModule
OSSetStringTable

Stack

OSClearStack
OSGetStackPointer
OSSwitchFiber
OSSwitchFiberEx
OSSwitchStack

Stopwatch

OSInitStopwatch
OSStartStopwatch
OSStopStopwatch
OSCheckStopwatch
OSResetStopwatch
OSDumpStopwatch

Synchronization

PPCSync

Time

OSDiffTick

OSGetTime
OSGetTick

OSTicksToCycles
OSTicksToSeconds
OSTicksToMilliseconds
OSTicksToMicroseconds
OSTicksToNanoseconds
OSSecondsToTicks
OSMillisecondsToTicks
OSMicrosecondsToTicks
OSNanosecondsToTicks

OSCalendarTimeToTicks
OSTicksToCalendarTime

Thread

OSCancelThread
OSCheckActiveThreads
OSCreateThread
OSDetachThread
OSDisableScheduler
OSEnableScheduler
OSExitThread
OSGetCurrentThread
OSGetThreadPriority
OSGetThreadSpecific
OSInitThreadQueue
OSIsThreadSuspended
OSIsThreadTerminated
OSJoinThread
OSResumeThread
OSSetThreadPriority
OSSetThreadSpecific
OSSetSwitchThreadCallback
OSSleepThread
OSSuspendThread
OSWakeupThread
OSYieldThread
OSSleepMicroseconds
OSSleepMilliseconds
OSSleepNanoseconds
OSSleepSeconds
OSSleepTicks

Thread Synchronization

Mutexes and Condition Variables

OSInitCond
OSInitMutex
OSLockMutex
OSSignalCond
OSTryLockMutex
OSUnlockMutex
OSWaitCond

Message Queues

OSInitMessageQueue
OSJamMessage
OSReceiveMessage
OSSendMessage

Semaphores

OSGetSemaphoreCount
OSInitSemaphore
OSSignalSemaphore
OSTryWaitSemaphore
OSWaitSemaphore

Hash

OSCalcCRC16
OSCalcCRC32

Transitions to the Wii Menu or NAND Applications

OSReturnToMenu
OSReturnToDataManager
OSReturnToSetting
OSLaunchManualViewer


CONFIDENTIAL