mirror of https://github.com/zeldaret/tp.git
153 lines
4.0 KiB
C
153 lines
4.0 KiB
C
//
|
|
// Generated By: dol2asm
|
|
// Translation Unit: OSExec
|
|
//
|
|
|
|
#include "dolphin/os/OSExec.h"
|
|
#include "dol2asm.h"
|
|
#include "dolphin/types.h"
|
|
|
|
//
|
|
// External References:
|
|
//
|
|
|
|
SECTION_INIT void memset();
|
|
SECTION_INIT void memcpy();
|
|
void OSReport();
|
|
void OSSetArenaLo();
|
|
void OSAllocFromArenaLo();
|
|
void ICInvalidateRange();
|
|
void ICFlashInvalidate();
|
|
void OSDisableInterrupts();
|
|
void OSEnableInterrupts();
|
|
void __OSMaskInterrupts();
|
|
void __OSUnmaskInterrupts();
|
|
void OSGetSaveRegion();
|
|
void __OSDoHotReset();
|
|
void DVDInit();
|
|
void DVDReadAbsAsyncPrio();
|
|
void DVDCancelStreamAsync();
|
|
void DVDGetCommandBlockStatus();
|
|
void DVDSetAutoInvalidation();
|
|
void DVDResume();
|
|
void DVDGetCurrentDiskID();
|
|
void DVDCheckDisk();
|
|
void __DVDPrepareResetAsync();
|
|
void AISetStreamPlayState();
|
|
void AISetStreamVolLeft();
|
|
void AISetStreamVolRight();
|
|
void sprintf();
|
|
void strncmp();
|
|
void strcpy();
|
|
void strlen();
|
|
extern u8 __OSIsGcam[4];
|
|
|
|
//
|
|
// Declarations:
|
|
//
|
|
|
|
/* 8033CA80-8033CC08 3373C0 0188+00 1/1 0/0 0/0 .text PackArgs */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
static asm s32 PackArgs(void* param_0, u32 param_1, void* param_2) {
|
|
nofralloc
|
|
#include "asm/dolphin/os/OSExec/PackArgs.s"
|
|
}
|
|
#pragma pop
|
|
|
|
/* 8033CC08-8033CC44 337548 003C+00 1/1 0/0 0/0 .text Run */
|
|
static asm void Run(void) {
|
|
// clang-format off
|
|
nofralloc
|
|
|
|
mflr r0
|
|
stw r0, 4(r1)
|
|
stwu r1, -0x18(r1)
|
|
stw r31, 0x14(r1)
|
|
mr r31, r3
|
|
bl ICFlashInvalidate
|
|
sync
|
|
isync
|
|
mtlr r31
|
|
blr
|
|
|
|
lwz r0, 0x1c(r1)
|
|
lwz r31, 0x14(r1)
|
|
addi r1, r1, 0x18
|
|
mtlr r0
|
|
blr
|
|
// clang-format on
|
|
}
|
|
|
|
/* 8033CC44-8033CCB0 337584 006C+00 1/1 0/0 0/0 .text ReadDisc */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
static asm void ReadDisc(void* param_0, s32 param_1, s32 param_2) {
|
|
nofralloc
|
|
#include "asm/dolphin/os/OSExec/ReadDisc.s"
|
|
}
|
|
#pragma pop
|
|
|
|
/* ############################################################################################## */
|
|
/* 80451658-8045165C 000B58 0004+00 2/2 0/0 0/0 .sbss Prepared */
|
|
static BOOL Prepared;
|
|
|
|
/* 8033CCB0-8033CCBC 3375F0 000C+00 1/1 0/0 0/0 .text Callback */
|
|
static void Callback(void) {
|
|
Prepared = TRUE;
|
|
}
|
|
|
|
/* 8033CCBC-8033CCFC 3375FC 0040+00 0/0 1/1 0/0 .text __OSGetExecParams */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
asm void __OSGetExecParams(void* param_0) {
|
|
nofralloc
|
|
#include "asm/dolphin/os/OSExec/__OSGetExecParams.s"
|
|
}
|
|
#pragma pop
|
|
|
|
/* ############################################################################################## */
|
|
/* 8045165C-80451660 000B5C 0004+00 2/2 0/0 0/0 .sbss apploaderPosition$69 */
|
|
static s32 apploaderPosition;
|
|
|
|
/* 8033CCFC-8033CDC0 33763C 00C4+00 1/1 0/0 0/0 .text GetApploaderPosition */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
static asm void GetApploaderPosition(void) {
|
|
nofralloc
|
|
#include "asm/dolphin/os/OSExec/GetApploaderPosition.s"
|
|
}
|
|
#pragma pop
|
|
|
|
/* ############################################################################################## */
|
|
/* 803CFC38-803CFC48 02CD58 000B+05 1/1 0/0 0/0 .data @115 */
|
|
SECTION_DATA static char lit_115[] = "2004/02/01";
|
|
|
|
/* 8033CDC0-8033D244 337700 0484+00 1/1 0/0 0/0 .text __OSBootDolSimple */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
asm void __OSBootDolSimple(u32 param_0, u32 param_1, void* param_2, void* param_3, s32 param_4, u32 param_5, void* param_6) {
|
|
nofralloc
|
|
#include "asm/dolphin/os/OSExec/__OSBootDolSimple.s"
|
|
}
|
|
#pragma pop
|
|
|
|
/* ############################################################################################## */
|
|
/* 804509A8-804509B0 000428 0003+05 1/1 0/0 0/0 .sdata @213 */
|
|
SECTION_SDATA static char lit_213[] = "%d";
|
|
|
|
/* 8033D244-8033D3E0 337B84 019C+00 0/0 1/1 0/0 .text __OSBootDol */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
asm void __OSBootDol(s32 param_0, u32 param_1, s32 param_2) {
|
|
nofralloc
|
|
#include "asm/dolphin/os/OSExec/__OSBootDol.s"
|
|
}
|
|
#pragma pop
|