mirror of
https://github.com/zeldaret/tp
synced 2026-05-28 00:16:11 -04:00
268 lines
8.2 KiB
C++
268 lines
8.2 KiB
C++
//
|
|
// Generated By: dol2asm
|
|
// Translation Unit: OSInterrupt
|
|
//
|
|
|
|
#include "dol2asm.h"
|
|
#include "dolphin/types.h"
|
|
#include "dolphin/os/OSInterrupt.h"
|
|
|
|
//
|
|
// Forward References:
|
|
//
|
|
|
|
|
|
// False False
|
|
extern "C" void OSDisableInterrupts();
|
|
// False False
|
|
extern "C" void __RAS_OSDisableInterrupts_end();
|
|
// False False
|
|
extern "C" void OSEnableInterrupts();
|
|
// False False
|
|
extern "C" void OSRestoreInterrupts();
|
|
// False False
|
|
extern "C" void __OSSetInterruptHandler();
|
|
// False False
|
|
extern "C" void __OSGetInterruptHandler();
|
|
// False False
|
|
extern "C" void __OSInterruptInit();
|
|
// True False
|
|
extern "C" static void SetInterruptMask();
|
|
// False False
|
|
extern "C" void __OSMaskInterrupts();
|
|
// False False
|
|
extern "C" void __OSUnmaskInterrupts();
|
|
// True False
|
|
extern "C" static void __OSDispatchInterrupt();
|
|
// True False
|
|
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:
|
|
//
|
|
|
|
|
|
// False False
|
|
SECTION_INIT void memset();
|
|
// False False
|
|
extern "C" void __OSSetExceptionHandler();
|
|
// False False
|
|
extern "C" void OSLoadContext();
|
|
// False False
|
|
extern "C" void OSDisableScheduler();
|
|
// False False
|
|
extern "C" void OSEnableScheduler();
|
|
// False False
|
|
extern "C" void __OSReschedule();
|
|
// False False
|
|
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
|
|
// False False
|
|
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
|
|
// False False
|
|
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
|
|
// False False
|
|
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
|
|
// False False
|
|
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 */
|
|
// 8033D744: 80451670 (InterruptHandlerTable)
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
// False False
|
|
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 */
|
|
// 8033D760: 80451670 (InterruptHandlerTable)
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
// False False
|
|
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 */
|
|
// 8033D788: 80451670 (InterruptHandlerTable)
|
|
// 8033D794: 80451670 (InterruptHandlerTable)
|
|
// 8033D798: 80003458 (memset)
|
|
// 8033D7BC: 8033DABC (__OSMaskInterrupts)
|
|
// 8033D7C0: 8033DF10 (ExternalInterruptHandler)
|
|
// 8033D7C4: 8033DF10 (ExternalInterruptHandler)
|
|
// 8033D7CC: 8033A6E8 (__OSSetExceptionHandler)
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
// False False
|
|
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
|
|
// True False
|
|
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 */
|
|
// 8033DAD8: 8033D6F4 (OSDisableInterrupts)
|
|
// 8033DB10: 8033D7E4 (SetInterruptMask)
|
|
// 8033DB20: 8033D71C (OSRestoreInterrupts)
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
// False False
|
|
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 */
|
|
// 8033DB60: 8033D6F4 (OSDisableInterrupts)
|
|
// 8033DB98: 8033D7E4 (SetInterruptMask)
|
|
// 8033DBA8: 8033D71C (OSRestoreInterrupts)
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
// False False
|
|
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 */
|
|
// 8033DC14: 8033BF20 (OSLoadContext)
|
|
// 8033DE58: 803D0758 (InterruptPrioTable)
|
|
// 8033DE5C: 803D0758 (InterruptPrioTable)
|
|
// 8033DE90: 80451670 (InterruptHandlerTable)
|
|
// 8033DEAC: 80451678 (__OSLastInterrupt)
|
|
// 8033DEB0: 803426FC (OSGetTime)
|
|
// 8033DEB4: 80451684 (data_80451684)
|
|
// 8033DEB8: 80451680 (__OSLastInterruptTime)
|
|
// 8033DEC0: 80451674 (__OSLastInterruptSrr0)
|
|
// 8033DEC4: 80340CC4 (OSDisableScheduler)
|
|
// 8033DEDC: 80340D04 (OSEnableScheduler)
|
|
// 8033DEE0: 80341220 (__OSReschedule)
|
|
// 8033DEE8: 8033BF20 (OSLoadContext)
|
|
// 8033DEF0: 8033BF20 (OSLoadContext)
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
// True False
|
|
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 */
|
|
// 8033DF5C: 8033DBCC (__OSDispatchInterrupt)
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
// True False
|
|
extern "C" asm static void ExternalInterruptHandler() {
|
|
nofralloc
|
|
#include "asm/dolphin/os/OSInterrupt/ExternalInterruptHandler.s"
|
|
}
|
|
#pragma pop
|
|
|
|
|