tp/libs/dolphin/os/OSThread.cpp

2453 lines
34 KiB
C++

//
// Generated By: dol2asm
// Translation Unit: OSThread
//
#include "dolphin/os/OSThread.h"
#include "dol2asm.h"
#include "dolphin/types.h"
//
// Forward References:
//
extern "C" extern u8 IdleThread[792];
extern "C" extern u8 data_804516D0[8];
extern "C" static void DefaultSwitchThreadCallback();
extern "C" void OSSetSwitchThreadCallback();
extern "C" void __OSThreadInit();
extern "C" void OSInitThreadQueue();
extern "C" void OSGetCurrentThread();
extern "C" void OSIsThreadTerminated();
extern "C" void OSDisableScheduler();
extern "C" void OSEnableScheduler();
extern "C" static void UnsetRun();
extern "C" void __OSGetEffectivePriority();
extern "C" static void SetEffectivePriority();
extern "C" void __OSPromoteThread();
extern "C" static void SelectThread();
extern "C" void __OSReschedule();
extern "C" void OSYieldThread();
extern "C" void OSCreateThread();
extern "C" void OSExitThread();
extern "C" void OSCancelThread();
extern "C" void OSDetachThread();
extern "C" void OSResumeThread();
extern "C" void OSSuspendThread();
extern "C" void OSSleepThread();
extern "C" void OSWakeupThread();
extern "C" void OSSetThreadPriority();
extern "C" void OSGetThreadPriority();
extern "C" static void CheckThreadQueue();
extern "C" void OSCheckActiveThreads();
extern "C" static void OSClearStack();
extern "C" extern u8 IdleThread[792];
extern "C" extern u8 data_804516D0[8];
//
// External References:
//
extern "C" extern u8 __OSErrorTable[68 + 12 /* padding */];
extern "C" extern u32 __OSFpscrEnableBits;
extern "C" void OSReport();
extern "C" void OSPanic();
extern "C" void OSSetCurrentContext();
extern "C" void OSGetCurrentContext();
extern "C" void OSSaveContext();
extern "C" void OSLoadContext();
extern "C" void OSGetStackPointer();
extern "C" void OSClearContext();
extern "C" void OSInitContext();
extern "C" void OSDisableInterrupts();
extern "C" void OSEnableInterrupts();
extern "C" void OSRestoreInterrupts();
extern "C" void __OSUnlockAllMutex();
extern "C" void __OSCheckDeadLock();
extern "C" void __OSCheckMutexes();
extern "C" extern u8 __OSErrorTable[68 + 12 /* padding */];
extern "C" extern u32 __OSFpscrEnableBits;
extern "C" void _epilog();
//
// Declarations:
//
/* 80340AA4-80340AA8 0004+00 s=2 e=0 z=0 None .text DefaultSwitchThreadCallback */
extern "C" static void DefaultSwitchThreadCallback() {
/* empty function */
}
/* ############################################################################################## */
/* 804509B8-804509BC 0004+00 s=3 e=0 z=0 None .sdata SwitchThreadCallback */
SECTION_SDATA static void* SwitchThreadCallback = (void*)DefaultSwitchThreadCallback;
/* 80340AA8-80340B1C 0074+00 s=0 e=1 z=0 None .text OSSetSwitchThreadCallback */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void OSSetSwitchThreadCallback() {
nofralloc
#include "asm/dolphin/os/OSThread/OSSetSwitchThreadCallback.s"
}
#pragma pop
/* ############################################################################################## */
/* 8044BB78-8044BC78 0100+00 s=6 e=0 z=0 None .bss RunQueue */
static u8 RunQueue[256];
/* 8044BC78-8044BF90 0318+00 s=0 e=0 z=0 None .bss IdleThread */
u8 IdleThread[792];
/* 8044BF90-8044C2A8 0318+00 s=1 e=0 z=0 None .bss DefaultThread */
static u8 DefaultThread[792];
/* 8044C2A8-8044C570 02C8+00 s=2 e=0 z=0 None .bss IdleContext */
static u8 IdleContext[712];
/* 804516C0-804516C4 0004+00 s=7 e=0 z=0 None .sbss RunQueueBits */
static u8 RunQueueBits[4];
/* 804516C4-804516C8 0004+00 s=11 e=0 z=0 None .sbss RunQueueHint */
static u8 RunQueueHint[4];
/* 804516C8-804516D0 0004+04 s=4 e=0 z=0 None .sbss Reschedule */
static u8 Reschedule[4 + 4 /* padding */];
/* 80340B1C-80340C74 0158+00 s=0 e=1 z=0 None .text __OSThreadInit */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void __OSThreadInit() {
nofralloc
#include "asm/dolphin/os/OSThread/__OSThreadInit.s"
}
#pragma pop
/* 80340C74-80340C84 0010+00 s=1 e=9 z=0 None .text OSInitThreadQueue */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void OSInitThreadQueue() {
nofralloc
#include "asm/dolphin/os/OSThread/OSInitThreadQueue.s"
}
#pragma pop
/* 80340C84-80340C90 000C+00 s=0 e=20 z=0 None .text OSGetCurrentThread */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void OSGetCurrentThread() {
nofralloc
#include "asm/dolphin/os/OSThread/OSGetCurrentThread.s"
}
#pragma pop
/* 80340C90-80340CC4 0034+00 s=0 e=1 z=0 None .text OSIsThreadTerminated */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void OSIsThreadTerminated() {
nofralloc
#include "asm/dolphin/os/OSThread/OSIsThreadTerminated.s"
}
#pragma pop
/* 80340CC4-80340D04 0040+00 s=0 e=8 z=0 None .text OSDisableScheduler */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void OSDisableScheduler() {
nofralloc
#include "asm/dolphin/os/OSThread/OSDisableScheduler.s"
}
#pragma pop
/* 80340D04-80340D44 0040+00 s=0 e=10 z=0 None .text OSEnableScheduler */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void OSEnableScheduler() {
nofralloc
#include "asm/dolphin/os/OSThread/OSEnableScheduler.s"
}
#pragma pop
/* 80340D44-80340DAC 0068+00 s=3 e=0 z=0 None .text UnsetRun */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm static void UnsetRun() {
nofralloc
#include "asm/dolphin/os/OSThread/UnsetRun.s"
}
#pragma pop
/* 80340DAC-80340DE8 003C+00 s=4 e=2 z=0 None .text __OSGetEffectivePriority */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void __OSGetEffectivePriority() {
nofralloc
#include "asm/dolphin/os/OSThread/__OSGetEffectivePriority.s"
}
#pragma pop
/* 80340DE8-80340FA8 01C0+00 s=5 e=0 z=0 None .text SetEffectivePriority */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm static void SetEffectivePriority() {
nofralloc
#include "asm/dolphin/os/OSThread/SetEffectivePriority.s"
}
#pragma pop
/* 80340FA8-80340FF8 0050+00 s=0 e=1 z=0 None .text __OSPromoteThread */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void __OSPromoteThread() {
nofralloc
#include "asm/dolphin/os/OSThread/__OSPromoteThread.s"
}
#pragma pop
/* 80340FF8-80341220 0228+00 s=9 e=0 z=0 None .text SelectThread */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm static void SelectThread() {
nofralloc
#include "asm/dolphin/os/OSThread/SelectThread.s"
}
#pragma pop
/* 80341220-80341250 0030+00 s=0 e=3 z=0 None .text __OSReschedule */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void __OSReschedule() {
nofralloc
#include "asm/dolphin/os/OSThread/__OSReschedule.s"
}
#pragma pop
/* 80341250-8034128C 003C+00 s=0 e=2 z=0 None .text OSYieldThread */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void OSYieldThread() {
nofralloc
#include "asm/dolphin/os/OSThread/OSYieldThread.s"
}
#pragma pop
/* 8034128C-80341474 01E8+00 s=0 e=5 z=3 None .text OSCreateThread */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void OSCreateThread() {
nofralloc
#include "asm/dolphin/os/OSThread/OSCreateThread.s"
}
#pragma pop
/* 80341474-80341558 00E4+00 s=1 e=1 z=0 None .text OSExitThread */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void OSExitThread() {
nofralloc
#include "asm/dolphin/os/OSThread/OSExitThread.s"
}
#pragma pop
/* 80341558-80341714 01BC+00 s=0 e=4 z=3 None .text OSCancelThread */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void OSCancelThread() {
nofralloc
#include "asm/dolphin/os/OSThread/OSCancelThread.s"
}
#pragma pop
/* 80341714-803417B4 00A0+00 s=0 e=2 z=0 None .text OSDetachThread */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void OSDetachThread() {
nofralloc
#include "asm/dolphin/os/OSThread/OSDetachThread.s"
}
#pragma pop
/* 803417B4-80341A3C 0288+00 s=0 e=13 z=3 None .text OSResumeThread */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void OSResumeThread() {
nofralloc
#include "asm/dolphin/os/OSThread/OSResumeThread.s"
}
#pragma pop
/* 80341A3C-80341BAC 0170+00 s=0 e=7 z=4 None .text OSSuspendThread */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void OSSuspendThread() {
nofralloc
#include "asm/dolphin/os/OSThread/OSSuspendThread.s"
}
#pragma pop
/* 80341BAC-80341C98 00EC+00 s=0 e=12 z=0 None .text OSSleepThread */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void OSSleepThread() {
nofralloc
#include "asm/dolphin/os/OSThread/OSSleepThread.s"
}
#pragma pop
/* 80341C98-80341D9C 0104+00 s=3 e=13 z=0 None .text OSWakeupThread */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void OSWakeupThread() {
nofralloc
#include "asm/dolphin/os/OSThread/OSWakeupThread.s"
}
#pragma pop
/* 80341D9C-80341E5C 00C0+00 s=0 e=1 z=0 None .text OSSetThreadPriority */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void OSSetThreadPriority() {
nofralloc
#include "asm/dolphin/os/OSThread/OSSetThreadPriority.s"
}
#pragma pop
/* 80341E5C-80341E64 0008+00 s=0 e=4 z=0 None .text OSGetThreadPriority */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void OSGetThreadPriority() {
nofralloc
#include "asm/dolphin/os/OSThread/OSGetThreadPriority.s"
}
#pragma pop
/* 80341E64-80341F00 009C+00 s=1 e=0 z=0 None .text CheckThreadQueue */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm static void CheckThreadQueue() {
nofralloc
#include "asm/dolphin/os/OSThread/CheckThreadQueue.s"
}
#pragma pop
/* ############################################################################################## */
/* 803D0838-803D0898 005F+01 s=1 e=0 z=0 None .data @831 */
SECTION_DATA static u8 lit_831[95 + 1 /* padding */] = {
0x4F,
0x53,
0x43,
0x68,
0x65,
0x63,
0x6B,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x54,
0x68,
0x72,
0x65,
0x61,
0x64,
0x73,
0x3A,
0x20,
0x46,
0x61,
0x69,
0x6C,
0x65,
0x64,
0x20,
0x52,
0x75,
0x6E,
0x51,
0x75,
0x65,
0x75,
0x65,
0x5B,
0x70,
0x72,
0x69,
0x6F,
0x5D,
0x2E,
0x68,
0x65,
0x61,
0x64,
0x20,
0x21,
0x3D,
0x20,
0x4E,
0x55,
0x4C,
0x4C,
0x20,
0x26,
0x26,
0x20,
0x52,
0x75,
0x6E,
0x51,
0x75,
0x65,
0x75,
0x65,
0x5B,
0x70,
0x72,
0x69,
0x6F,
0x5D,
0x2E,
0x74,
0x61,
0x69,
0x6C,
0x20,
0x21,
0x3D,
0x20,
0x4E,
0x55,
0x4C,
0x4C,
0x20,
0x69,
0x6E,
0x20,
0x25,
0x64,
0x0A,
0x00,
/* padding */
0x00,
};
/* 803D0898-803D08A4 000B+01 s=1 e=0 z=0 None .data @832 */
SECTION_DATA static u8 lit_832[11 + 1 /* padding */] = {
0x4F,
0x53,
0x54,
0x68,
0x72,
0x65,
0x61,
0x64,
0x2E,
0x63,
0x00,
/* padding */
0x00,
};
/* 803D08A4-803D0904 005F+01 s=1 e=0 z=0 None .data @834 */
SECTION_DATA static u8 lit_834[95 + 1 /* padding */] = {
0x4F,
0x53,
0x43,
0x68,
0x65,
0x63,
0x6B,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x54,
0x68,
0x72,
0x65,
0x61,
0x64,
0x73,
0x3A,
0x20,
0x46,
0x61,
0x69,
0x6C,
0x65,
0x64,
0x20,
0x52,
0x75,
0x6E,
0x51,
0x75,
0x65,
0x75,
0x65,
0x5B,
0x70,
0x72,
0x69,
0x6F,
0x5D,
0x2E,
0x68,
0x65,
0x61,
0x64,
0x20,
0x3D,
0x3D,
0x20,
0x4E,
0x55,
0x4C,
0x4C,
0x20,
0x26,
0x26,
0x20,
0x52,
0x75,
0x6E,
0x51,
0x75,
0x65,
0x75,
0x65,
0x5B,
0x70,
0x72,
0x69,
0x6F,
0x5D,
0x2E,
0x74,
0x61,
0x69,
0x6C,
0x20,
0x3D,
0x3D,
0x20,
0x4E,
0x55,
0x4C,
0x4C,
0x20,
0x69,
0x6E,
0x20,
0x25,
0x64,
0x0A,
0x00,
/* padding */
0x00,
};
/* 803D0904-803D094C 0046+02 s=1 e=0 z=0 None .data @835 */
SECTION_DATA static u8 lit_835[70 + 2 /* padding */] = {
0x4F,
0x53,
0x43,
0x68,
0x65,
0x63,
0x6B,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x54,
0x68,
0x72,
0x65,
0x61,
0x64,
0x73,
0x3A,
0x20,
0x46,
0x61,
0x69,
0x6C,
0x65,
0x64,
0x20,
0x43,
0x68,
0x65,
0x63,
0x6B,
0x54,
0x68,
0x72,
0x65,
0x61,
0x64,
0x51,
0x75,
0x65,
0x75,
0x65,
0x28,
0x26,
0x52,
0x75,
0x6E,
0x51,
0x75,
0x65,
0x75,
0x65,
0x5B,
0x70,
0x72,
0x69,
0x6F,
0x5D,
0x29,
0x20,
0x69,
0x6E,
0x20,
0x25,
0x64,
0x0A,
0x00,
/* padding */
0x00,
0x00,
};
/* 803D094C-803D09CC 007E+02 s=1 e=0 z=0 None .data @836 */
SECTION_DATA static u8 lit_836[126 + 2 /* padding */] = {
0x4F,
0x53,
0x43,
0x68,
0x65,
0x63,
0x6B,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x54,
0x68,
0x72,
0x65,
0x61,
0x64,
0x73,
0x3A,
0x20,
0x46,
0x61,
0x69,
0x6C,
0x65,
0x64,
0x20,
0x5F,
0x5F,
0x4F,
0x53,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x54,
0x68,
0x72,
0x65,
0x61,
0x64,
0x51,
0x75,
0x65,
0x75,
0x65,
0x2E,
0x68,
0x65,
0x61,
0x64,
0x20,
0x3D,
0x3D,
0x20,
0x4E,
0x55,
0x4C,
0x4C,
0x20,
0x7C,
0x7C,
0x20,
0x5F,
0x5F,
0x4F,
0x53,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x54,
0x68,
0x72,
0x65,
0x61,
0x64,
0x51,
0x75,
0x65,
0x75,
0x65,
0x2E,
0x68,
0x65,
0x61,
0x64,
0x2D,
0x3E,
0x6C,
0x69,
0x6E,
0x6B,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x2E,
0x70,
0x72,
0x65,
0x76,
0x20,
0x3D,
0x3D,
0x20,
0x4E,
0x55,
0x4C,
0x4C,
0x20,
0x69,
0x6E,
0x20,
0x25,
0x64,
0x0A,
0x00,
/* padding */
0x00,
0x00,
};
/* 803D09CC-803D0A4C 007E+02 s=1 e=0 z=0 None .data @837 */
SECTION_DATA static u8 lit_837[126 + 2 /* padding */] = {
0x4F,
0x53,
0x43,
0x68,
0x65,
0x63,
0x6B,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x54,
0x68,
0x72,
0x65,
0x61,
0x64,
0x73,
0x3A,
0x20,
0x46,
0x61,
0x69,
0x6C,
0x65,
0x64,
0x20,
0x5F,
0x5F,
0x4F,
0x53,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x54,
0x68,
0x72,
0x65,
0x61,
0x64,
0x51,
0x75,
0x65,
0x75,
0x65,
0x2E,
0x74,
0x61,
0x69,
0x6C,
0x20,
0x3D,
0x3D,
0x20,
0x4E,
0x55,
0x4C,
0x4C,
0x20,
0x7C,
0x7C,
0x20,
0x5F,
0x5F,
0x4F,
0x53,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x54,
0x68,
0x72,
0x65,
0x61,
0x64,
0x51,
0x75,
0x65,
0x75,
0x65,
0x2E,
0x74,
0x61,
0x69,
0x6C,
0x2D,
0x3E,
0x6C,
0x69,
0x6E,
0x6B,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x2E,
0x6E,
0x65,
0x78,
0x74,
0x20,
0x3D,
0x3D,
0x20,
0x4E,
0x55,
0x4C,
0x4C,
0x20,
0x69,
0x6E,
0x20,
0x25,
0x64,
0x0A,
0x00,
/* padding */
0x00,
0x00,
};
/* 803D0A4C-803D0AC8 007A+02 s=1 e=0 z=0 None .data @838 */
SECTION_DATA static u8 lit_838[122 + 2 /* padding */] = {
0x4F,
0x53,
0x43,
0x68,
0x65,
0x63,
0x6B,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x54,
0x68,
0x72,
0x65,
0x61,
0x64,
0x73,
0x3A,
0x20,
0x46,
0x61,
0x69,
0x6C,
0x65,
0x64,
0x20,
0x74,
0x68,
0x72,
0x65,
0x61,
0x64,
0x2D,
0x3E,
0x6C,
0x69,
0x6E,
0x6B,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x2E,
0x6E,
0x65,
0x78,
0x74,
0x20,
0x3D,
0x3D,
0x20,
0x4E,
0x55,
0x4C,
0x4C,
0x20,
0x7C,
0x7C,
0x20,
0x74,
0x68,
0x72,
0x65,
0x61,
0x64,
0x20,
0x3D,
0x3D,
0x20,
0x74,
0x68,
0x72,
0x65,
0x61,
0x64,
0x2D,
0x3E,
0x6C,
0x69,
0x6E,
0x6B,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x2E,
0x6E,
0x65,
0x78,
0x74,
0x2D,
0x3E,
0x6C,
0x69,
0x6E,
0x6B,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x2E,
0x70,
0x72,
0x65,
0x76,
0x20,
0x69,
0x6E,
0x20,
0x25,
0x64,
0x0A,
0x00,
/* padding */
0x00,
0x00,
};
/* 803D0AC8-803D0B44 007A+02 s=1 e=0 z=0 None .data @839 */
SECTION_DATA static u8 lit_839[122 + 2 /* padding */] = {
0x4F,
0x53,
0x43,
0x68,
0x65,
0x63,
0x6B,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x54,
0x68,
0x72,
0x65,
0x61,
0x64,
0x73,
0x3A,
0x20,
0x46,
0x61,
0x69,
0x6C,
0x65,
0x64,
0x20,
0x74,
0x68,
0x72,
0x65,
0x61,
0x64,
0x2D,
0x3E,
0x6C,
0x69,
0x6E,
0x6B,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x2E,
0x70,
0x72,
0x65,
0x76,
0x20,
0x3D,
0x3D,
0x20,
0x4E,
0x55,
0x4C,
0x4C,
0x20,
0x7C,
0x7C,
0x20,
0x74,
0x68,
0x72,
0x65,
0x61,
0x64,
0x20,
0x3D,
0x3D,
0x20,
0x74,
0x68,
0x72,
0x65,
0x61,
0x64,
0x2D,
0x3E,
0x6C,
0x69,
0x6E,
0x6B,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x2E,
0x70,
0x72,
0x65,
0x76,
0x2D,
0x3E,
0x6C,
0x69,
0x6E,
0x6B,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x2E,
0x6E,
0x65,
0x78,
0x74,
0x20,
0x69,
0x6E,
0x20,
0x25,
0x64,
0x0A,
0x00,
/* padding */
0x00,
0x00,
};
/* 803D0B44-803D0B98 0051+03 s=1 e=0 z=0 None .data @840 */
SECTION_DATA static u8 lit_840[81 + 3 /* padding */] = {
0x4F,
0x53,
0x43,
0x68,
0x65,
0x63,
0x6B,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x54,
0x68,
0x72,
0x65,
0x61,
0x64,
0x73,
0x3A,
0x20,
0x46,
0x61,
0x69,
0x6C,
0x65,
0x64,
0x20,
0x2A,
0x28,
0x74,
0x68,
0x72,
0x65,
0x61,
0x64,
0x2D,
0x3E,
0x73,
0x74,
0x61,
0x63,
0x6B,
0x45,
0x6E,
0x64,
0x29,
0x20,
0x3D,
0x3D,
0x20,
0x4F,
0x53,
0x5F,
0x54,
0x48,
0x52,
0x45,
0x41,
0x44,
0x5F,
0x53,
0x54,
0x41,
0x43,
0x4B,
0x5F,
0x4D,
0x41,
0x47,
0x49,
0x43,
0x20,
0x69,
0x6E,
0x20,
0x25,
0x64,
0x0A,
0x00,
/* padding */
0x00,
0x00,
0x00,
};
/* 803D0B98-803D0C0C 0071+03 s=1 e=0 z=0 None .data @841 */
SECTION_DATA static u8 lit_841[113 + 3 /* padding */] = {
0x4F,
0x53,
0x43,
0x68,
0x65,
0x63,
0x6B,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x54,
0x68,
0x72,
0x65,
0x61,
0x64,
0x73,
0x3A,
0x20,
0x46,
0x61,
0x69,
0x6C,
0x65,
0x64,
0x20,
0x4F,
0x53,
0x5F,
0x50,
0x52,
0x49,
0x4F,
0x52,
0x49,
0x54,
0x59,
0x5F,
0x4D,
0x49,
0x4E,
0x20,
0x3C,
0x3D,
0x20,
0x74,
0x68,
0x72,
0x65,
0x61,
0x64,
0x2D,
0x3E,
0x70,
0x72,
0x69,
0x6F,
0x72,
0x69,
0x74,
0x79,
0x20,
0x26,
0x26,
0x20,
0x74,
0x68,
0x72,
0x65,
0x61,
0x64,
0x2D,
0x3E,
0x70,
0x72,
0x69,
0x6F,
0x72,
0x69,
0x74,
0x79,
0x20,
0x3C,
0x3D,
0x20,
0x4F,
0x53,
0x5F,
0x50,
0x52,
0x49,
0x4F,
0x52,
0x49,
0x54,
0x59,
0x5F,
0x4D,
0x41,
0x58,
0x2B,
0x31,
0x20,
0x69,
0x6E,
0x20,
0x25,
0x64,
0x0A,
0x00,
/* padding */
0x00,
0x00,
0x00,
};
/* 803D0C0C-803D0C48 0039+03 s=1 e=0 z=0 None .data @842 */
SECTION_DATA static u8 lit_842[57 + 3 /* padding */] = {
0x4F,
0x53,
0x43,
0x68,
0x65,
0x63,
0x6B,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x54,
0x68,
0x72,
0x65,
0x61,
0x64,
0x73,
0x3A,
0x20,
0x46,
0x61,
0x69,
0x6C,
0x65,
0x64,
0x20,
0x30,
0x20,
0x3C,
0x3D,
0x20,
0x74,
0x68,
0x72,
0x65,
0x61,
0x64,
0x2D,
0x3E,
0x73,
0x75,
0x73,
0x70,
0x65,
0x6E,
0x64,
0x20,
0x69,
0x6E,
0x20,
0x25,
0x64,
0x0A,
0x00,
/* padding */
0x00,
0x00,
0x00,
};
/* 803D0C48-803D0C94 0049+03 s=1 e=0 z=0 None .data @843 */
SECTION_DATA static u8 lit_843[73 + 3 /* padding */] = {
0x4F,
0x53,
0x43,
0x68,
0x65,
0x63,
0x6B,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x54,
0x68,
0x72,
0x65,
0x61,
0x64,
0x73,
0x3A,
0x20,
0x46,
0x61,
0x69,
0x6C,
0x65,
0x64,
0x20,
0x43,
0x68,
0x65,
0x63,
0x6B,
0x54,
0x68,
0x72,
0x65,
0x61,
0x64,
0x51,
0x75,
0x65,
0x75,
0x65,
0x28,
0x26,
0x74,
0x68,
0x72,
0x65,
0x61,
0x64,
0x2D,
0x3E,
0x71,
0x75,
0x65,
0x75,
0x65,
0x4A,
0x6F,
0x69,
0x6E,
0x29,
0x20,
0x69,
0x6E,
0x20,
0x25,
0x64,
0x0A,
0x00,
/* padding */
0x00,
0x00,
0x00,
};
/* 803D0C94-803D0CE8 0051+03 s=1 e=0 z=0 None .data @844 */
SECTION_DATA static u8 lit_844[81 + 3 /* padding */] = {
0x4F,
0x53,
0x43,
0x68,
0x65,
0x63,
0x6B,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x54,
0x68,
0x72,
0x65,
0x61,
0x64,
0x73,
0x3A,
0x20,
0x46,
0x61,
0x69,
0x6C,
0x65,
0x64,
0x20,
0x74,
0x68,
0x72,
0x65,
0x61,
0x64,
0x2D,
0x3E,
0x71,
0x75,
0x65,
0x75,
0x65,
0x20,
0x3D,
0x3D,
0x20,
0x26,
0x52,
0x75,
0x6E,
0x51,
0x75,
0x65,
0x75,
0x65,
0x5B,
0x74,
0x68,
0x72,
0x65,
0x61,
0x64,
0x2D,
0x3E,
0x70,
0x72,
0x69,
0x6F,
0x72,
0x69,
0x74,
0x79,
0x5D,
0x20,
0x69,
0x6E,
0x20,
0x25,
0x64,
0x0A,
0x00,
/* padding */
0x00,
0x00,
0x00,
};
/* 803D0CE8-803D0D3C 0052+02 s=1 e=0 z=0 None .data @845 */
SECTION_DATA static u8 lit_845[82 + 2 /* padding */] = {
0x4F,
0x53,
0x43,
0x68,
0x65,
0x63,
0x6B,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x54,
0x68,
0x72,
0x65,
0x61,
0x64,
0x73,
0x3A,
0x20,
0x46,
0x61,
0x69,
0x6C,
0x65,
0x64,
0x20,
0x49,
0x73,
0x4D,
0x65,
0x6D,
0x62,
0x65,
0x72,
0x28,
0x26,
0x52,
0x75,
0x6E,
0x51,
0x75,
0x65,
0x75,
0x65,
0x5B,
0x74,
0x68,
0x72,
0x65,
0x61,
0x64,
0x2D,
0x3E,
0x70,
0x72,
0x69,
0x6F,
0x72,
0x69,
0x74,
0x79,
0x5D,
0x2C,
0x20,
0x74,
0x68,
0x72,
0x65,
0x61,
0x64,
0x29,
0x20,
0x69,
0x6E,
0x20,
0x25,
0x64,
0x0A,
0x00,
/* padding */
0x00,
0x00,
};
/* 803D0D3C-803D0D98 0059+03 s=1 e=0 z=0 None .data @846 */
SECTION_DATA static u8 lit_846[89 + 3 /* padding */] = {
0x4F,
0x53,
0x43,
0x68,
0x65,
0x63,
0x6B,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x54,
0x68,
0x72,
0x65,
0x61,
0x64,
0x73,
0x3A,
0x20,
0x46,
0x61,
0x69,
0x6C,
0x65,
0x64,
0x20,
0x74,
0x68,
0x72,
0x65,
0x61,
0x64,
0x2D,
0x3E,
0x70,
0x72,
0x69,
0x6F,
0x72,
0x69,
0x74,
0x79,
0x20,
0x3D,
0x3D,
0x20,
0x5F,
0x5F,
0x4F,
0x53,
0x47,
0x65,
0x74,
0x45,
0x66,
0x66,
0x65,
0x63,
0x74,
0x69,
0x76,
0x65,
0x50,
0x72,
0x69,
0x6F,
0x72,
0x69,
0x74,
0x79,
0x28,
0x74,
0x68,
0x72,
0x65,
0x61,
0x64,
0x29,
0x20,
0x69,
0x6E,
0x20,
0x25,
0x64,
0x0A,
0x00,
/* padding */
0x00,
0x00,
0x00,
};
/* 803D0D98-803D0DDC 0042+02 s=1 e=0 z=0 None .data @847 */
SECTION_DATA static u8 lit_847[66 + 2 /* padding */] = {
0x4F,
0x53,
0x43,
0x68,
0x65,
0x63,
0x6B,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x54,
0x68,
0x72,
0x65,
0x61,
0x64,
0x73,
0x3A,
0x20,
0x46,
0x61,
0x69,
0x6C,
0x65,
0x64,
0x20,
0x21,
0x49,
0x73,
0x53,
0x75,
0x73,
0x70,
0x65,
0x6E,
0x64,
0x65,
0x64,
0x28,
0x74,
0x68,
0x72,
0x65,
0x61,
0x64,
0x2D,
0x3E,
0x73,
0x75,
0x73,
0x70,
0x65,
0x6E,
0x64,
0x29,
0x20,
0x69,
0x6E,
0x20,
0x25,
0x64,
0x0A,
0x00,
/* padding */
0x00,
0x00,
};
/* 803D0DDC-803D0E18 003A+02 s=1 e=0 z=0 None .data @848 */
SECTION_DATA static u8 lit_848[58 + 2 /* padding */] = {
0x4F,
0x53,
0x43,
0x68,
0x65,
0x63,
0x6B,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x54,
0x68,
0x72,
0x65,
0x61,
0x64,
0x73,
0x3A,
0x20,
0x46,
0x61,
0x69,
0x6C,
0x65,
0x64,
0x20,
0x74,
0x68,
0x72,
0x65,
0x61,
0x64,
0x2D,
0x3E,
0x71,
0x75,
0x65,
0x75,
0x65,
0x20,
0x3D,
0x3D,
0x20,
0x4E,
0x55,
0x4C,
0x4C,
0x20,
0x69,
0x6E,
0x20,
0x25,
0x64,
0x0A,
0x00,
/* padding */
0x00,
0x00,
};
/* 803D0E18-803D0E54 003A+02 s=1 e=0 z=0 None .data @849 */
SECTION_DATA static u8 lit_849[58 + 2 /* padding */] = {
0x4F,
0x53,
0x43,
0x68,
0x65,
0x63,
0x6B,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x54,
0x68,
0x72,
0x65,
0x61,
0x64,
0x73,
0x3A,
0x20,
0x46,
0x61,
0x69,
0x6C,
0x65,
0x64,
0x20,
0x74,
0x68,
0x72,
0x65,
0x61,
0x64,
0x2D,
0x3E,
0x71,
0x75,
0x65,
0x75,
0x65,
0x20,
0x21,
0x3D,
0x20,
0x4E,
0x55,
0x4C,
0x4C,
0x20,
0x69,
0x6E,
0x20,
0x25,
0x64,
0x0A,
0x00,
/* padding */
0x00,
0x00,
};
/* 803D0E54-803D0E98 0044+00 s=1 e=0 z=0 None .data @850 */
SECTION_DATA static u8 lit_850[68] = {
0x4F, 0x53, 0x43, 0x68, 0x65, 0x63, 0x6B, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x54,
0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x3A, 0x20, 0x46, 0x61, 0x69, 0x6C, 0x65, 0x64,
0x20, 0x43, 0x68, 0x65, 0x63, 0x6B, 0x54, 0x68, 0x72, 0x65, 0x61, 0x64, 0x51, 0x75,
0x65, 0x75, 0x65, 0x28, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x2D, 0x3E, 0x71, 0x75,
0x65, 0x75, 0x65, 0x29, 0x20, 0x69, 0x6E, 0x20, 0x25, 0x64, 0x0A, 0x00,
};
/* 803D0E98-803D0EDC 0044+00 s=1 e=0 z=0 None .data @851 */
SECTION_DATA static u8 lit_851[68] = {
0x4F, 0x53, 0x43, 0x68, 0x65, 0x63, 0x6B, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x54,
0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x3A, 0x20, 0x46, 0x61, 0x69, 0x6C, 0x65, 0x64,
0x20, 0x49, 0x73, 0x4D, 0x65, 0x6D, 0x62, 0x65, 0x72, 0x28, 0x74, 0x68, 0x72, 0x65,
0x61, 0x64, 0x2D, 0x3E, 0x71, 0x75, 0x65, 0x75, 0x65, 0x2C, 0x20, 0x74, 0x68, 0x72,
0x65, 0x61, 0x64, 0x29, 0x20, 0x69, 0x6E, 0x20, 0x25, 0x64, 0x0A, 0x00,
};
/* 803D0EDC-803D0F18 003B+01 s=1 e=0 z=0 None .data @852 */
SECTION_DATA static u8 lit_852[59 + 1 /* padding */] = {
0x4F,
0x53,
0x43,
0x68,
0x65,
0x63,
0x6B,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x54,
0x68,
0x72,
0x65,
0x61,
0x64,
0x73,
0x3A,
0x20,
0x46,
0x61,
0x69,
0x6C,
0x65,
0x64,
0x20,
0x74,
0x68,
0x72,
0x65,
0x61,
0x64,
0x2D,
0x3E,
0x70,
0x72,
0x69,
0x6F,
0x72,
0x69,
0x74,
0x79,
0x20,
0x3D,
0x3D,
0x20,
0x33,
0x32,
0x20,
0x69,
0x6E,
0x20,
0x25,
0x64,
0x0A,
0x00,
/* padding */
0x00,
};
/* 803D0F18-803D0F58 003F+01 s=1 e=0 z=0 None .data @853 */
SECTION_DATA static u8 lit_853[63 + 1 /* padding */] = {
0x4F,
0x53,
0x43,
0x68,
0x65,
0x63,
0x6B,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x54,
0x68,
0x72,
0x65,
0x61,
0x64,
0x73,
0x3A,
0x20,
0x46,
0x61,
0x69,
0x6C,
0x65,
0x64,
0x20,
0x21,
0x5F,
0x5F,
0x4F,
0x53,
0x43,
0x68,
0x65,
0x63,
0x6B,
0x44,
0x65,
0x61,
0x64,
0x4C,
0x6F,
0x63,
0x6B,
0x28,
0x74,
0x68,
0x72,
0x65,
0x61,
0x64,
0x29,
0x20,
0x69,
0x6E,
0x20,
0x25,
0x64,
0x0A,
0x00,
/* padding */
0x00,
};
/* 803D0F58-803D0FC0 0067+01 s=1 e=0 z=0 None .data @854 */
SECTION_DATA static u8 lit_854[103 + 1 /* padding */] = {
0x4F,
0x53,
0x43,
0x68,
0x65,
0x63,
0x6B,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x54,
0x68,
0x72,
0x65,
0x61,
0x64,
0x73,
0x3A,
0x20,
0x46,
0x61,
0x69,
0x6C,
0x65,
0x64,
0x20,
0x74,
0x68,
0x72,
0x65,
0x61,
0x64,
0x2D,
0x3E,
0x71,
0x75,
0x65,
0x75,
0x65,
0x4D,
0x75,
0x74,
0x65,
0x78,
0x2E,
0x68,
0x65,
0x61,
0x64,
0x20,
0x3D,
0x3D,
0x20,
0x4E,
0x55,
0x4C,
0x4C,
0x20,
0x26,
0x26,
0x20,
0x74,
0x68,
0x72,
0x65,
0x61,
0x64,
0x2D,
0x3E,
0x71,
0x75,
0x65,
0x75,
0x65,
0x4D,
0x75,
0x74,
0x65,
0x78,
0x2E,
0x74,
0x61,
0x69,
0x6C,
0x20,
0x3D,
0x3D,
0x20,
0x4E,
0x55,
0x4C,
0x4C,
0x20,
0x69,
0x6E,
0x20,
0x25,
0x64,
0x0A,
0x00,
/* padding */
0x00,
};
/* 803D0FC0-803D1008 0045+03 s=1 e=0 z=0 None .data @855 */
SECTION_DATA static u8 lit_855[69 + 3 /* padding */] = {
0x4F,
0x53,
0x43,
0x68,
0x65,
0x63,
0x6B,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x54,
0x68,
0x72,
0x65,
0x61,
0x64,
0x73,
0x3A,
0x20,
0x46,
0x61,
0x69,
0x6C,
0x65,
0x64,
0x2E,
0x20,
0x75,
0x6E,
0x6B,
0x6F,
0x77,
0x6E,
0x20,
0x74,
0x68,
0x72,
0x65,
0x61,
0x64,
0x20,
0x73,
0x74,
0x61,
0x74,
0x65,
0x20,
0x28,
0x25,
0x64,
0x29,
0x20,
0x6F,
0x66,
0x20,
0x74,
0x68,
0x72,
0x65,
0x61,
0x64,
0x20,
0x25,
0x70,
0x0A,
0x00,
/* padding */
0x00,
0x00,
0x00,
};
/* 803D1008-803D1048 003D+03 s=1 e=0 z=0 None .data @856 */
SECTION_DATA static u8 lit_856[61 + 3 /* padding */] = {
0x4F,
0x53,
0x43,
0x68,
0x65,
0x63,
0x6B,
0x41,
0x63,
0x74,
0x69,
0x76,
0x65,
0x54,
0x68,
0x72,
0x65,
0x61,
0x64,
0x73,
0x3A,
0x20,
0x46,
0x61,
0x69,
0x6C,
0x65,
0x64,
0x20,
0x5F,
0x5F,
0x4F,
0x53,
0x43,
0x68,
0x65,
0x63,
0x6B,
0x4D,
0x75,
0x74,
0x65,
0x78,
0x65,
0x73,
0x28,
0x74,
0x68,
0x72,
0x65,
0x61,
0x64,
0x29,
0x20,
0x69,
0x6E,
0x20,
0x25,
0x64,
0x0A,
0x00,
/* padding */
0x00,
0x00,
0x00,
};
/* 804509BC-804509C0 0001+03 s=1 e=0 z=0 None .sdata @833 */
SECTION_SDATA static u8 lit_833[1 + 3 /* padding */] = {
0x00,
/* padding */
0x00,
0x00,
0x00,
};
/* 80341F00-80342650 0750+00 s=0 e=1 z=0 None .text OSCheckActiveThreads */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void OSCheckActiveThreads() {
nofralloc
#include "asm/dolphin/os/OSThread/OSCheckActiveThreads.s"
}
#pragma pop
/* 80342650-803426FC 00AC+00 s=1 e=0 z=0 None .text OSClearStack */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm static void OSClearStack() {
nofralloc
#include "asm/dolphin/os/OSThread/OSClearStack.s"
}
#pragma pop
/* ############################################################################################## */
/* 804516D0-804516D8 0008+00 s=0 e=2 z=0 None .sbss None */
u8 data_804516D0[8];