List of Operations System Functions

# Operating System (OS) Function List

### Initialization

OS_Init |  | Initializes the system.
OS_InitChina |  | Initializes the system for applications designed for China.
OS_ShowAttentionChina |  | Displays the startup screen for applications designed for China.
NitroStartUp |  | Describes initialization processes to be run before static constructor calls.
NitroStaticInit |  | Describes the static initializer.

### Reset

OS_InitReset |  | Initializes the software reset system.
OS_ResetSystem |  | Resets the software and reruns the program.
OS_GetResetParameter |  | Gets the reset parameter value.

### Jumping to the System Menu or NAND Applications

OS_JumpToSystemMenu |  | Performs a hardware reset and returns to the System Menu.
OS_RebootSystem |  | Performs a hardware reset and then restarts the calling application.
OS_JumpToWirelessSetting |  | Performs a hardware reset and jumps to the Internet → Wireless Communications item in the System Settings.
OS_JumpToInternetSetting |  | Performs a hardware reset and jumps to the Internet item in the System Settings.
OS_JumpToEULAViewer |  | Performs a hardware reset and jumps to the Internet → User Agreement item in the System Settings.
OS_IsRebooted |  | Determines whether the active application has been restarted by `OS_RebootSystem`.
OS_IsBootFromSystemMenu |  | Checks whether the active application was started from the System Menu.

### System State

OS_EnableInterrupts |  | Enables CPSR IRQ interrupts.
OS_DisableInterrupts |  | Disables CPSR IRQ interrupts.
OS_RestoreInterrupts |  | Puts CPSR IRQ interrupts into the specified state.
OS_EnableInterrupts_IrqAndFiq |  | Enables IRQ and FIQ interrupts in CPSR.
OS_DisableInterrupts_IrqAndFiq |  | Prohibits IRQ and FIQ interrupts in CPSR.
OS_RestoreInterrupts_IrqAndFiq |  | Sets IRQ and FIQ interrupts in CPSR to a specified status.
OS_GetCpsrIrq |  | Gets current CPSR IRQ and FIQ interrupts.
OS_GetProcMode |  | Gets current processor mode.
OS_Halt |  | Sets the processor to HALT status.
OS_Terminate |  | Sets the processor to HALT status and loops.
OS_Exit |  | Displays the exit status and calls the `OS_Terminate` function.
OS_FExit |  | Displays the exit status and calls the `OS_Terminate` function. (Output is specified.)
OS_SpinWait |  | Sets the processor to idle. (Based on the 2x multiplier of the base cycle.)
OS_SpinWaitCpuCycles |  | Sets the processor to idle. (Based on CPU cycles.)
OS_SpinWaitSysCycles |  | Sets the processor to idle. (Based on the base cycle.)

### TCM

OS_EnableITCM |  | Enables the Instruction TCM.
OS_DisableITCM |  | Disables the Instruction TCM.
OS_GetITCMAddress |  | Gets ITCM address.
OS_EnableDTCM |  | Enables data TCM.
OS_DisableDTCM |  | Disables data TCM.
OS_SetITCMParam |  | Sets instruction TCM parameters.
OS_GetITCMParam |  | Gets instruction TCM parameters.
OS_SetDTCMParam |  | Sets data TCM parameters.
OS_GetDTCMParam |  | Gets data TCM parameters.
OS_SetDTCMAddress |  | Sets the data TCM address.
OS_GetDTCMAddress |  | Gets the data TCM address.

### Protection Unit

OS_EnableProtectionUnit |  | Enables the protection unit.
OS_DisableProtectionUnit |  | Disables the protection unit.
OS_SetProtectionRegion |  | Sets the protection region.
OS_SetProtectionRegionParam |  | Sets the protection region parameters.
OS_GetProtectionRegionAddress |  | Gets the base address of the protection region.
OS_GetProtectionRegionSize |  | Gets the size of the protection region.
OS_GetProtectionRegionParam |  | Gets the parameters of the protection region.
OS_DumpProtectionRegion |  | Displays the status of the protection region settings. (Used in debugging.)

### Exceptions

OS_InitException |  | Initializes the exception display system.
OS_SetUserExceptionHandler |  | Sets the user handler to be used when an exception is generated.
OS_SetExceptionVectorLower |  | Sets the exception vector position as a normalized address.
OS_SetExceptionVectorUpper |  | Sets the exception vector position as a high vector.

### Interrupts

Types of Interrupts |  | Lists the NITRO and TWL interrupt types.
OS_GetIrq |  | Gets the current IRQ interrupt permission status.
OS_EnableIrq |  | Enables all IRQ interrupts.
OS_DisableIrq |  | Disables all IRQ interrupts.
OS_RestoreIrq |  | Puts all interrupts into a specified state.
OS_SetIrqMask |  | Sets IRQ interrupt parameters.
OS_GetIrqMask |  | Gets currently established IRQ interrupt parameters.
OS_EnableIrqMask |  | Enables IRQ of the specified interrupt parameters.
OS_DisableIrqMask |  | Disables IRQ of the specified interrupt parameters.
OS_ResetRequestIrqMask |  | Releases the specified interrupt cause parameters.
OS_GetRequestIrqMask |  | Gets current interrupt request.
OS_InitIrqTable |  | Initializes IRQ handler table.
OS_SetIrqFunction |  | Sets handler corresponding to the specified IRQ.
OS_GetIrqFunction |  | Gets a handler corresponding to the specified IRQ.
OS_SetIrqCheckFlag |  | Sets the interrupt check flag.
OS_ClearIrqCheckFlag |  | Clears the interrupt check flag.
OS_GetIrqCheckFlag |  | Gets the interrupt check flag.
OS_WaitIrq |  | Waits for the specified IRQ.
OS_WaitAnyIrq |  | Waits for all IRQs.
OS_WaitInterrupt |  | Waits for the specified IRQ. (A thread switch is not performed.)
OS_WaitVBlankIntr |  | Waits for V-Blank. (A thread switch is performed.)
OS_GetVBlankCount |  | Gets the value of the V-Blank counter.

### Timer

OS_StartTimer |  | Starts the timer. The counter value is 16-bit.
OS_StartTimer32 |  | When two timers are used, starts the 32-bit long timer.
OS_StartTimer48 |  | When three timers are used, starts the 48-bit long timer.
OS_StartTimer64 |  | When four timers are used, starts the 64-bit long timer.
OS_StopTimer |  | Stops the timer. The counter value is 16-bit.
OS_StopTimer32 |  | Stops both timers. Used when there is a 32-bit timer.
OS_StopTimer48 |  | Stops all three timers. Used when there is a 48-bit timer.
OS_StopTimer64 |  | Stops all four timers. Used when there is a 64-bit timer.

### Alarms

OS_InitAlarm |  | Allocates a timer for an alarm system and initializes it.
OS_EndAlarm |  | Frees a timer that was allocated to an alarm system.
OS_IsAlarmAvailable |  | Checks whether an alarm system is initialized and available.
OS_CreateAlarm |  | Initializes the alarm structure.
OS_SetAlarm |  | Sets an alarm.
OS_SetPeriodicAlarm |  | Sets a periodic alarm.
OS_SetAlarmTag |  | Sets a tag to an alarm.
OS_CancelAlarm |  | Cancels an alarm.
OS_CancelAlarms |  | Cancels alarms that have a specified tag.
OS_CancelAllAlarms |  | Cancels all alarms.

### V-Count Alarms

OS_InitVAlarm |  | Initializes a V-Count alarm system.
OS_EndVAlarm |  | Ends a V-Count alarm system.
OS_IsVAlarmAvailable |  | Checks whether a V-Count alarm system is initialized and available.
OS_CreateVAlarm |  | Initializes a V-Count alarm structure.
OS_SetVAlarm |  | Sets a V-Count alarm.
OS_SetOneTimeVAlarm |  | Sets a V-Count alarm. (Function added to maintain backward compatibility.)
OS_SetPeriodicVAlarm |  | Sets a periodic V-Count alarm.
OS_SetVAlarmTag |  | Sets a tag to a V-Count alarm.
OS_CancelVAlarm |  | Cancels a V-Count alarm.
OS_CancelVAlarms |  | Cancels V-Count alarms that have a specified tag.
OS_CancelAllVAlarms |  | Cancels all V-Count alarms.

### Time

OS_InitTick |  | Allocates a timer for ticks.
OS_IsTickAvailable |  | Checks whether a tick is initialized and available.
OS_GetTick |  | Gets a tick value.
OS_GetTickLo |  | Gets the low-order 16-bit value of a tick.
OS_SetTick |  | Sets a tick value.
OS_MicroSecondsToTicks* |  | Converts from microseconds to a tick value.
OS_MilliSecondsToTicks* |  | Converts from milliseconds to a tick value.
OS_SecondsToTicks* |  | Converts from seconds to a tick value.
OS_TicksToMicroSeconds* |  | Converts from a tick value to microseconds.
OS_TicksToMilliSeconds* |  | Converts from a tick value to milliseconds.
OS_TicksToSeconds* |  | Converts from a tick value to seconds.

### Thread

OS_InitThread |  | Initializes a thread.
OS_IsThreadAvailable |  | Checks whether a thread is initialized and available.
OS_CreateThread |  | Creates threads.
OS_InitThreadQueue |  | Creates a thread queue.
OS_ExitThread |  | Exits the current thread. Calls the destructor thread.
OS_KillThread |  | Ends the specified thread. Calls the destructor thread.
OS_KillThreadWithPriority |  | Sets the priority for the specified thread, and then exits. Calls the destructor thread.
OS_DestroyThread |  | Ends the specified thread. The thread destructor is not called.
OS_JoinThread |  | Joins a thread and waits for it to terminate.
OS_IsThreadTerminated |  | Determines whether the thread has completed.
OS_SelectThread |  | Specifies the next thread to be run.
OS_SetSwitchThreadCallback |  | Sets the callback during thread-switching.
OS_RescheduleThread |  | Schedules threads.
OS_YieldThread |  | Allows threads with the same priority level to run and performs thread scheduling.
OS_SleepThread |  | Puts the current thread into a sleep state.
OS_SleepThreadDirect |  | Puts the specified thread into a sleep state.
OS_Sleep |  | Puts threads into a sleep state for a specified time.
OS_WakeupThread |  | Puts all threads registered in the queue into an operable state.
OS_WakeupThreadDirect |  | Puts the specified thread into an operable state.
OS_SetThreadPriority |  | Sets thread priority.
OS_GetThreadPriority |  | Gets thread priority.
OS_GetCurrentThread |  | Gets the current thread.
OS_GetNumberOfThread |  | Gets the number of existing threads.
OS_DisableScheduler |  | Stops thread rescheduling temporarily.
OS_EnableScheduler |  | Restarts thread rescheduling.
OS_SetThreadParameter |  | Sets user parameters.
OS_GetThreadParameter |  | Gets user parameters.
OS_SetThreadDestructor |  | Sets the thread destructor.
OS_GetThreadDestructor |  | Gets the thread destructor.
OS_SetThreadDestructorStack |  | Sets the stack to run the thread destructor.
OS_DumpThreadList |  | Displays all threads (for debugging).

### Exclusion Control

OS_InitMutex |  | Initializes the mutex structure used for exclusive control.
OS_LockMutex |  | Locks a thread using mutex.
OS_UnlockMutex |  | Releases a lock set on a thread by mutex.
OS_TryLockMutex |  | Tries to lock the thread using mutex.
OS_LockMutexR |  | Locks a thread using mutex. (read lock)
OS_LockMutexW |  | Locks a thread using mutex. (write lock)
OS_UnlockMutexR |  | Releases a lock set on a thread by mutex. (read lock)
OS_UnlockMutexW |  | Releases a lock set on a thread by mutex. (write lock)
OS_UnlockMutexRW |  | Releases a lock set on a thread by mutex. (read/write lock)
OS_TryLockMutexR |  | Tries to lock the thread using mutex. (read lock)
OS_TryLockMutexW |  | Tries to lock the thread using mutex. (write lock)
OS_LockMutexFromRToW |  | Changes a `read lock` mutex to `write lock`.
OS_LockMutexFromWToR |  | Changes a `write lock` mutex to `read lock`.
OS_TryLockMutexFromRToW |  | Tries to change the `read lock` mutex to `write lock`.
OS_TryLockMutexFromWToR |  | Tries to change the `write lock` mutex to `read lock`.
OS_InitLock |  | Performs exclusive-control initialization.
OS_LockCard |  | Spin-locks the card for exclusive control.
OS_LockCartridge |  | Spin-locks the Game Pak for exclusive control.
OS_UnlockCard |  | Releases a spin lock for a card.
OS_UnlockCartridge |  | Releases a spin lock for a Game Pak.
OS_TryLockCard |  | Attempts to spin-lock a card for exclusive control.
OS_TryLockCartridge |  | Attempts to spin-lock a Game Pak for exclusive control.
OS_GetLockID |  | Gets the lock ID for a spin lock.
OS_ReleaseLockID |  | Releases the lock ID for a spin lock.

### Context

OS_InitContext |  | Initializes context.
OS_SaveContext |  | Saves current context.
OS_LoadContext |  | Loads current context.
OS_DumpContext |  | Displays contents of the context structure (for debugging).

### Messages

OS_InitMessageQueue |  | Initializes the message queue structure.
OS_SendMessage |  | Inserts a message at the end of the message queue.
OS_JamMessage |  | Inserts a message at the beginning of the message queue.
OS_ReceiveMessage |  | Extracts a message from the message queue.
OS_ReadMessage |  | Copies the message that is first in the message queue.

### Events

OS_InitEvent |  | Initializes the event structure.
OS_WaitEvent* |  | Waits for an event.
OS_SignalEvent |  | Signals a thread that is waiting for an event.
OS_PollEvent* |  | Finds out whether the completion conditions have been met to stop waiting for an event.
OS_ClearEvent |  | Clears the specified event flag.
OS_ClearAllEvent |  | Clears all event flags.

### Cache

DC_Enable |  | Allows all data caches to be used.
DC_Disable |  | Prohibits all data caches from being used.
DC_Restore |  | Specifies whether to allow use of all data caches.
DC_InvalidateAll |  | Invalidates the data in the entire data cache region.
DC_StoreAll (DC_CleanAll) |  | Stores all data from data cache regions to memory.
DC_FlushAll (DC_CleanAndInvalidateAll) |  | Flushes all data in all data caches.
DC_InvalidateRange |  | Invalidates data in the specified data cache region.
DC_StoreRange (DC_CleanRange) |  | Stores data in the specified region of data cache to memory.
DC_FlushRange (DC_CleanAndInvalidateRange) |  | Flushes the data cache in the specified region.
DC_TouchRange |  | Does nothing.
DC_LockdownRange |  | Locks the specified range of data cache.
DC_Unlockdown |  | Releases the data cache in block-sized units.
DC_UnlockdownAll |  | Releases the entire data cache.
DC_WaitWriteBufferEmpty |  | Waits for the write buffer to empty.
IC_Enable |  | Allows the use of all instruction caches.
IC_Disable |  | Prohibits the use of all instruction caches.
IC_Restore |  | Specifies whether to permit use of all instruction caches.
IC_InvalidateAll |  | Invalidates instruction code in the entire instruction cache region.
IC_InvalidateRange |  | Disables the specified range of instruction cache.
IC_PrefetchRange |  | Pre-fetches the specified range of instruction cache.
IC_LockdownRange |  | Locks down the specified range of instruction cache.
IC_Unlockdown |  | Releases the instruction cache in block-sized units.
IC_UnlockdownAll |  | Releases the entire instruction cache.

### Arena

OS_InitArena |  | Initializes the arena.
OS_EnableMainExArena |  | Enables use of the main memory extended arena.
OS_DisableMainExArena |  | Disables the main memory extended arena.
OS_SetArenaHi |  | Sets the upper boundary of the arena.
OS_Set*ArenaHi |  | Sets the upper boundary of the arena. (Arena specification)
OS_SetArenaLo |  | Sets the lower boundary of the arena.
OS_Set*ArenaLo |  | Sets the lower boundary of the arena. (Arena specification)
OS_GetArenaHi |  | Obtains the upper boundary of the arena.
OS_Get*ArenaHi |  | Gets the upper boundary of the arena. (Arena specification)
OS_GetArenaLo |  | Obtains the lower boundary of the arena.
OS_Get*ArenaLo |  | Gets the lower boundary of the arena. (Arena specification)
OS_AllocFromArenaHi |  | Allocates a region of the specified size from the upper arena.
OS_AllocFrom*ArenaHi |  | Allocates a region of the specified size from the upper arena. (Arena specification)
OS_AllocFromArenaLo |  | Allocates a region of the specified size from the lower arena.
OS_AllocFrom*ArenaLo |  | Allocates a region of the specified size from the lower arena. (Arena specification)
OS_DumpArenaInfo |  | Displays the arena information. (Used in debugging.)
OS_DumpAllArenaInfo |  | Displays information for all arenas. (Used in debugging.)

### Memory Allocation

OS_InitAlloc |  | Initializes memory allocation.
OS_ClearAlloc |  | Clears memory allocation.
OS_CreateHeap |  | Creates a heap.
OS_CreateExtraHeap |  | Creates a heap. (Special use: Top of main memory 16 KB)
OS_DestroyHeap |  | Destroys a heap.
OS_ClearHeap |  | Initializes a heap
OS_ClearExtraHeap |  | Initializes a heap. (Special use: Top of main memory 16 KB)
OS_AddToHeap |  | Adds the specified memory block to the heap.
OS_AddExtraAreaToHeap |  | Adds a memory block to a heap region. (Special use: Top of main memory 16 KB)
OS_SetCurrentHeap |  | Sets the current heap.
OS_AllocFromHeap |  | Allocates memory from the heap.
OS_AllocFrom* |  | Allocates memory from the heap. (Arena specification)
OS_Alloc |  | Allocates memory from the heap. (Main memory arena)
OS_AllocFixed |  | Allocates the specified region.
OS_FreeToHeap |  | Frees memory to the heap.
OS_FreeTo* |  | Deallocates memory to the heap. (Arena specification)
OS_Free |  | Deallocates memory to the heap. (Main memory arena)
OS_FreeAllToHeap |  | Frees all allocated memory to the heap.
OS_FreeAllTo* |  | Deallocates all allocated memory to the heap. (Arena specification)
OS_FreeAll |  | Deallocates all allocated memory to the heap. (Main memory arena)
OS_CheckHeap |  | Checks the heap.
OS_DumpHeap |  | Displays heap contents (for debugging).
OS_ReferentSize |  | Gets the size of the memory block (excluding the header).
OS_VisitAllocated |  | Applies the specified function to all memory blocks.
OS_GetTotalAllocSize |  | Gets the total size of the memory blocks allocated to the heap. The header is not included.
OS_GetTotalOccupiedSize |  | Gets the total size of the memory blocks (including the header) allocated to the heap.
OS_GetTotalFreeSize |  | Gets the total size of free blocks in heaps.
OS_GetMaxFreeSize |  | Gets the size of the largest free block in heaps.
OS_IsOnMainMemory |  | Checks whether the memory address specified by the pointer exists on the main memory.
OS_IsOnExtendedMainMemory |  | Checks whether the memory address specified by the pointer exists on the extended main memory.
OS_IsOnWramA |  | Checks whether the memory address indicated by the pointer exists in WRAM-A.
OS_IsOnWramB |  | Checks whether the memory address specified by the pointer exists on the WRAM B.
OS_IsOnWramC |  | Checks whether the memory address specified by the pointer exists on the WRAM C.
OS_IsOnWram0 |  | Checks whether the memory address specified by the pointer exists on the WRAM 0.
OS_IsOnWram1 |  | Checks whether the memory address specified by the pointer exists on the WRAM 1.
OS_IsOnWram |  | Checks whether the memory address specified by the pointer exists on the WRAM.
OS_IsOnVram |  | Checks whether the memory address specified by the pointer exists on the VRAM.
OS_IsOnItcm |  | Checks whether the memory address indicated by the pointer exists in ITCM.
OS_IsOnDtcm |  | Checks whether the memory address indicated by the pointer exists in DTCM.
OS_IsOnArm7PrvWram |  | Checks whether the memory address indicated by the pointer exists in ARM7-dedicated WRAM.

### System Information

OS_GetOwnerInfo |  | Gets owner information.
OS_GetOwnerInfoEx |  | Gets owner information.
OSOwnerInfo |  | Structure that specifies owner information.
OSOwnerInfoEx |  | Structure that specifies owner information.
OS_GetOwnerRtcOffset |  | Gets RTC modification offset information.
OS_GetMacAddress |  | Gets the unique MAC address for the Nintendo DS system.
OS_GetFavoriteColorTable |  | Gets a pointer to an array containing the RGBA color values that correspond to the IPL favorite color menu.
OS_GetFavoriteColor |  | Gets the color value of the "favorite color" from the owner information.
OS_FAVORITE_COLOR_* |  | Definition value of the "favorite color" from the owner information.
OS_IsAvailableWireless |  | Determine whether wireless communications features configured in the TWL console settings are available.
OS_IsAgreeEULA |  | Determines whether the EULA has been agreed to on this system.
OS_GetAgreedEULAVersion |  | Gets the EULA version that the end user of this system has agreed to.
OS_IsParentalControledApp |  | Determines whether Parental Controls should be applied when an application is started up.
OS_IsRestrictPictoChatBoot |  | Determines whether there is a restriction on starting PictoChat.
OS_IsRestrictDSDownloadBoot |  | Determines whether there is a restriction on starting DS download play.
OS_IsRestrictBrowserBoot |  | Determines whether there is a restriction on starting the Nintendo DSi browser.
OS_IsRestrictPrepaidPoint |  | Determines whether there is a restriction on using Nintendo DSi Points.
OS_IsRestrictPhotoExchange |  | Determines whether there is a restriction on exchanging photo data.
OS_IsRestrictUGC |  | Determines whether there is a restriction on exchanging user-generated content.
OS_IsForceDisableWireless |  | Determines whether use of wireless communications was prohibited when a TWL version was produced.
OS_GetRegion |  | Gets the region information.
OS_GetRegionCodeA3 |  | Gets a string that corresponds to the region code.
OS_GetRegionCodeA2 |  | Converts the TWL's proprietary country and region code numbers into `ISO 3166-1 alpha-2` format.
OS_GetLowEntropyData |  | Different values are generated from system status each time it is run, and these values are returned.

### Boot Information

OS_GetBootType |  | Gets the current boot type.
OS_GetBootInfo |  | Gets information about the current boot.

### Operating Environment

OS_IsRunOnEmulator |  | Checks whether the application is running on the ensata emulator. (Used in debugging)
OS_IsRunOnDebugger |  | Checks whether the application is running on the debugger. (Used in debugging)
OS_IsRunOnTwl |  | Checks whether the application is running in TWL mode.
OS_GetConsoleType |  | Checks the operation environment of the application. Returns a constant value for FINALROM builds.
OS_GetRunningConsoleType |  | Checks the operation environment of the application.
OS_IsCodecTwlMode |  | Gets the operating mode of the CODEC.

### Debug (String Display)

OS_PutString |  | Outputs a string.
OS_FPutString |  | Outputs a string. (Output is specified.)
OS_Printf |  | Displays the string with formatting.
OS_FPrintf |  | Displays the string with formatting. (Output is specified.)
OS_TPrintf |  | Displays the string with formatting. This is a simplified version of `OS_Printf`.
OS_TFPrintf |  | Displays the string with formatting. This is a simplified version of `OS_Printf`. (Output is specified.)
OS_VPrintf |  | Displays the string with formatting. Uses the list of arguments.
OS_VFPrintf |  | Displays the string with formatting. Uses the list of arguments. (Output is specified.)
OS_TVPrintf |  | Displays the string with formatting. This is a simplified version of `OS_VPrintf`.
OS_TVFPrintf |  | Displays the string with formatting. This is a simplified version of `OS_VPrintf`. (Output is specified.)
OS_SPrintf |  | This function has been replaced with the `STD_TSPrintf` function.
OS_VSPrintf |  | This function has been replaced with the `STD_TVSPrintf` function.
OS_SNPrintf |  | This function has been replaced with the `STD_TSNPrintf` function.
OS_VSNPrintf |  | This function has been replaced with the `STD_TVSNPrintf` function.
OS_TPrintfEx |  | Displays the string with formatting. This is an extended version of `OS_TPrintf`.
OS_TFPrintfEx |  | Displays the string with formatting. This is an extended version of `OS_TPrintf`. (Output is specified.)
OS_TVPrintfEx |  | Displays the string with formatting. This is an extended version of `OS_TVPrintf`.
OS_TVFPrintfEx |  | Displays the string with formatting. This is an extended version of `OS_TVPrintf`. (Output is specified.)
OS_VSNPrintfEx |  | Outputs the formatted string to the memory with the argument list. (The size is specified.)
OS_Warning |  | Displays a warning.
OS_FWarning |  | Displays a warning. (Output is specified.)
OS_TWarning |  | Displays a warning. This is the simple version of `OS_Warning`.
OS_TFWarning |  | Displays a warning. This is the simple version of `OS_Warning`. (Output is specified.)
OS_SetPrintOutput |  | Specifies the output destination for output functions.
OS_SetPrintBlockingMode |  | Sets the output blocking mode.
OS_GetPrintBlockingMode |  | Gets the output blocking mode settings.
OS_InitPrintServer |  | Initializes for display of debug message from ARM7. There is normally no need for this.
OS_PrintServer |  | Displays debug messages from ARM7. There is normally no need for this.

### Debug (Assert)

SDK_ASSERT* |  | Checks the requirements, displays a warning, and stops the application.
SDK_WARNING |  | Checks the conditions and displays a warning.
OS_Panic |  | Stops the application.
OS_FPanic |  | Stops the application. (Output is specified.)
OS_TPanic |  | Stops the application. This is a simplified version of `OS_Panic`.
OS_TFPanic |  | Stops the application. This is a simplified version of `OS_Panic`. (Output is specified.)
SDK_COMPILER_ASSERT |  | Conditions are inspected when compiling, and if conditions are not met, a compile error is raised.

### Debug (Function Call Trace)

OS_InitCallTrace |  | Sets the buffer of the function call trace.
OS_DumpCallTrace |  | Displays the contents of the function call trace buffer.
OS_DumpThreadCallTrace |  | Displays the contents of the function call trace buffer for the specified thread.
OS_CalcCallTraceLines |  | Calculates the number of lines for the function call trace from the buffer size.
OS_CalcCallTraceBufferSize |  | Calculates the buffer size for the function call trace from the number of lines.
OS_ClearCallTraceBuffer |  | Clears the contents of the function call trace buffer.
OS_EnableCallTrace |  | Enables the function call trace.
OS_DisableCallTrace |  | Disables the function call trace.
OS_RestoreCallTrace |  | Sets the function call trace to enabled or disabled.

### Debug (Function Cost Measurement)

OS_InitFunctionCost |  | Sets the function cost measurement buffer.
OS_CalcFunctionCostLines |  | Calculates the amount of information for the function cost measurement from the buffer size.
OS_CalcFunctionCostBufferSize |  | Calculates the buffer size for the function cost measurement from the number of lines.
OS_ClearFunctionCostBuffer |  | Clears the contents of the function cost measurement buffer.
OS_CheckFunctionCostBuffer |  | Checks whether the high-order position of the function cost calculation buffer was overwritten.
OS_EnableFunctionCost |  | Enables function cost calculation.
OS_DisableFunctionCost |  | Disables function cost calculation.
OS_RestoreFunctionCost |  | Sets function cost measurement to enabled or disabled.
OS_InitStatistics |  | Initializes the function cost calculation buffer.
OS_CheckStatisticsBuffer |  | Checks whether the high-order position of the function cost statistics buffer was overwritten.
OS_CalcStatistics |  | Gets the contents of the measurement buffer, and writes them to the function cost calculation buffer.
OS_CalcThreadStatistics |  | Gets the contents of the measurement buffer and writes them to the function cost calculation buffer with a thread specification.
OS_DumpStatistics |  | Outputs the contents of the function cost calculation buffer.

### Debug (Stack Check)

OS_SetThreadStackWarningOffset |  | Sets the warning level for the thread stack overflow check.
OS_CheckStack |  | Checks the thread stack overflow.
OS_GetStackStatus |  | Gets the stack overflow status of the thread.
OS_SetIrqStackChecker |  | Sets the magic number to check whether the stack used for IRQ mode has overflowed.
OS_SetIrqStackWarningOffset |  | Sets the warning level to check whether the stack used for IRQ mode has overflowed.
OS_CheckIrqStack |  | Checks whether the stack used for IRQ mode has overflowed.
OS_GetIrqStackStatus |  | Gets the overflow status of the stack used for IRQ mode.

### Debug (Argument)

OS_GetArgc |  | Gets the number of arguments.
OS_GetArgv |  | Gets the string position of arguments.
OS_GetOpt* |  | Gets information for the argument options for the command line.
OS_ConvertToArguments |  | Converts strings to argument data.
OS_SetArgumentBuffer |  | Sets argument data.
OS_GetArgumentBuffer |  | Gets argument data.

CONFIDENTIAL