tp/libs/dolphin/os/OSInterrupt.cpp

241 lines
6.1 KiB
C++

//
// Generated By: dol2asm
// Translation Unit: OSInterrupt
//
#include "dolphin/os/OSInterrupt.h"
#include "dol2asm.h"
#include "dolphin/types.h"
//
// Forward References:
//
extern "C" extern u8 __OSLastInterruptSrr0[4];
extern "C" extern u8 __OSLastInterrupt[2 + 6 /* padding */];
extern "C" extern u8 __OSLastInterruptTime[4];
extern "C" extern u8 data_80451684[4];
extern "C" void OSDisableInterrupts();
extern "C" void __RAS_OSDisableInterrupts_end();
extern "C" void OSEnableInterrupts();
extern "C" void OSRestoreInterrupts();
extern "C" void __OSSetInterruptHandler();
extern "C" void __OSGetInterruptHandler();
extern "C" void __OSInterruptInit();
extern "C" static void SetInterruptMask();
extern "C" void __OSMaskInterrupts();
extern "C" void __OSUnmaskInterrupts();
extern "C" static void __OSDispatchInterrupt();
extern "C" static void ExternalInterruptHandler();
extern "C" extern u8 __OSLastInterruptSrr0[4];
extern "C" extern u8 __OSLastInterrupt[2 + 6 /* padding */];
extern "C" extern u8 __OSLastInterruptTime[4];
extern "C" extern u8 data_80451684[4];
//
// External References:
//
SECTION_INIT void memset();
extern "C" void __OSSetExceptionHandler();
extern "C" void OSLoadContext();
extern "C" void OSDisableScheduler();
extern "C" void OSEnableScheduler();
extern "C" void __OSReschedule();
extern "C" void OSGetTime();
//
// Declarations:
//
/* 8033D6F4-8033D700 000C+00 s=2 e=200 z=5 None .text OSDisableInterrupts */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void OSDisableInterrupts() {
nofralloc
#include "asm/dolphin/os/OSInterrupt/OSDisableInterrupts.s"
}
#pragma pop
/* 8033D700-8033D708 0008+00 s=0 e=1 z=0 None .text __RAS_OSDisableInterrupts_end */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void __RAS_OSDisableInterrupts_end() {
nofralloc
#include "asm/dolphin/os/OSInterrupt/__RAS_OSDisableInterrupts_end.s"
}
#pragma pop
/* 8033D708-8033D71C 0014+00 s=0 e=10 z=1 None .text OSEnableInterrupts */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void OSEnableInterrupts() {
nofralloc
#include "asm/dolphin/os/OSInterrupt/OSEnableInterrupts.s"
}
#pragma pop
/* 8033D71C-8033D740 0024+00 s=2 e=197 z=6 None .text OSRestoreInterrupts */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void OSRestoreInterrupts() {
nofralloc
#include "asm/dolphin/os/OSInterrupt/OSRestoreInterrupts.s"
}
#pragma pop
/* ############################################################################################## */
/* 80451670-80451674 0004+00 s=4 e=0 z=0 None .sbss InterruptHandlerTable */
static u8 InterruptHandlerTable[4];
/* 8033D740-8033D75C 001C+00 s=0 e=12 z=0 None .text __OSSetInterruptHandler */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void __OSSetInterruptHandler() {
nofralloc
#include "asm/dolphin/os/OSInterrupt/__OSSetInterruptHandler.s"
}
#pragma pop
/* 8033D75C-8033D770 0014+00 s=0 e=1 z=0 None .text __OSGetInterruptHandler */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void __OSGetInterruptHandler() {
nofralloc
#include "asm/dolphin/os/OSInterrupt/__OSGetInterruptHandler.s"
}
#pragma pop
/* 8033D770-8033D7E4 0074+00 s=0 e=1 z=0 None .text __OSInterruptInit */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void __OSInterruptInit() {
nofralloc
#include "asm/dolphin/os/OSInterrupt/__OSInterruptInit.s"
}
#pragma pop
/* 8033D7E4-8033DABC 02D8+00 s=2 e=0 z=0 None .text SetInterruptMask */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm static void SetInterruptMask() {
nofralloc
#include "asm/dolphin/os/OSInterrupt/SetInterruptMask.s"
}
#pragma pop
/* 8033DABC-8033DB44 0088+00 s=1 e=15 z=0 None .text __OSMaskInterrupts */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void __OSMaskInterrupts() {
nofralloc
#include "asm/dolphin/os/OSInterrupt/__OSMaskInterrupts.s"
}
#pragma pop
/* 8033DB44-8033DBCC 0088+00 s=0 e=18 z=0 None .text __OSUnmaskInterrupts */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm void __OSUnmaskInterrupts() {
nofralloc
#include "asm/dolphin/os/OSInterrupt/__OSUnmaskInterrupts.s"
}
#pragma pop
/* ############################################################################################## */
/* 803D0758-803D0788 002C+04 s=1 e=0 z=0 None .data InterruptPrioTable */
SECTION_DATA static u8 InterruptPrioTable[44 + 4 /* padding */] = {
0x00,
0x00,
0x01,
0x00,
0x00,
0x00,
0x00,
0x40,
0xF8,
0x00,
0x00,
0x00,
0x00,
0x00,
0x02,
0x00,
0x00,
0x00,
0x00,
0x80,
0x00,
0x00,
0x30,
0x00,
0x00,
0x00,
0x00,
0x20,
0x03,
0xFF,
0x8C,
0x00,
0x04,
0x00,
0x00,
0x00,
0x00,
0x00,
0x40,
0x00,
0xFF,
0xFF,
0xFF,
0xFF,
/* padding */
0x00,
0x00,
0x00,
0x00,
};
/* 80451674-80451678 0004+00 s=1 e=1 z=0 None .sbss __OSLastInterruptSrr0 */
u8 __OSLastInterruptSrr0[4];
/* 80451678-80451680 0002+06 s=1 e=1 z=0 None .sbss __OSLastInterrupt */
u8 __OSLastInterrupt[2 + 6 /* padding */];
/* 80451680-80451684 0004+00 s=1 e=1 z=0 None .sbss __OSLastInterruptTime */
u8 __OSLastInterruptTime[4];
/* 80451684-80451688 0004+00 s=1 e=1 z=0 None .sbss None */
u8 data_80451684[4];
/* 8033DBCC-8033DF10 0344+00 s=1 e=0 z=0 None .text __OSDispatchInterrupt */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm static void __OSDispatchInterrupt() {
nofralloc
#include "asm/dolphin/os/OSInterrupt/__OSDispatchInterrupt.s"
}
#pragma pop
/* 8033DF10-8033DF60 0050+00 s=1 e=0 z=0 None .text ExternalInterruptHandler */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
extern "C" asm static void ExternalInterruptHandler() {
nofralloc
#include "asm/dolphin/os/OSInterrupt/ExternalInterruptHandler.s"
}
#pragma pop