mirror of
https://github.com/zeldaret/tp
synced 2026-06-17 07:08:04 -04:00
470 lines
16 KiB
C++
470 lines
16 KiB
C++
//
|
|
// Generated By: dol2asm
|
|
// Translation Unit: ppc/Generic/targimpl
|
|
//
|
|
|
|
#include "dol2asm.h"
|
|
#include "dolphin/types.h"
|
|
#include "TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl.h"
|
|
|
|
//
|
|
// Forward References:
|
|
//
|
|
|
|
extern "C" extern u8 gTRKRestoreFlags[9 + 3 /* padding */];
|
|
SECTION_BSS u8 TRK_saved_exceptionID[2 + 2 /* padding */];
|
|
extern "C" extern u8 gTRKState[164];
|
|
extern "C" extern u8 gTRKCPUState[1072];
|
|
|
|
extern "C" void __TRK_get_MSR();
|
|
extern "C" static void __TRK_set_MSR();
|
|
extern "C" static void TRK_ppc_memcpy();
|
|
extern "C" void TRKInterruptHandler();
|
|
extern "C" static void TRKExceptionHandler();
|
|
extern "C" void TRKSwapAndGo();
|
|
extern "C" static void TRKInterruptHandlerEnableInterrupts();
|
|
extern "C" static void ReadFPSCR();
|
|
extern "C" static void WriteFPSCR();
|
|
extern "C" void TRKTargetAccessARAM();
|
|
extern "C" void TRKTargetSetInputPendingPtr();
|
|
extern "C" void TRKTargetStop();
|
|
extern "C" void TRKTargetSetStopped();
|
|
extern "C" void TRKTargetStopped();
|
|
extern "C" void TRKTargetSupportRequest();
|
|
extern "C" void TRKTargetGetPC();
|
|
extern "C" void TRKTargetStepOutOfRange();
|
|
extern "C" void TRKTargetSingleStep();
|
|
extern "C" void TRKTargetAddExceptionInfo();
|
|
extern "C" void TRKTargetAddStopInfo();
|
|
extern "C" void TRKTargetInterrupt();
|
|
extern "C" static void TRKPostInterruptEvent();
|
|
extern "C" void TRKTargetAccessExtended2();
|
|
extern "C" void TRKTargetAccessExtended1();
|
|
extern "C" void TRKTargetAccessFP();
|
|
extern "C" void TRKTargetAccessDefault();
|
|
extern "C" static void TRKTargetReadInstruction();
|
|
extern "C" void TRKTargetAccessMemory();
|
|
extern "C" static void TRKValidMemory32();
|
|
extern "C" extern u8 gTRKRestoreFlags[9 + 3 /* padding */];
|
|
SECTION_BSS u8 TRK_saved_exceptionID[2 + 2 /* padding */];
|
|
extern "C" extern u8 gTRKState[164];
|
|
extern "C" extern u8 gTRKCPUState[1072];
|
|
|
|
//
|
|
// External References:
|
|
//
|
|
|
|
|
|
SECTION_INIT void memset();
|
|
extern "C" void TRKConstructEvent();
|
|
extern "C" void TRKPostEvent();
|
|
extern "C" void TRKReadBuffer_ui32();
|
|
extern "C" void TRKReadBuffer1_ui64();
|
|
extern "C" void TRKAppendBuffer_ui32();
|
|
extern "C" void TRKAppendBuffer_ui8();
|
|
extern "C" void TRKAppendBuffer1_ui64();
|
|
extern "C" void HandlePositionFileSupportRequest();
|
|
extern "C" void HandleCloseFileSupportRequest();
|
|
extern "C" void HandleOpenFileSupportRequest();
|
|
extern "C" void TRKSuppAccessFile();
|
|
extern "C" void TRKDoNotifyStopped();
|
|
extern "C" void TRK_flush_cache();
|
|
extern "C" void TRKSaveExtended1Block();
|
|
extern "C" void TRKRestoreExtended1Block();
|
|
extern "C" void TRK__write_aram();
|
|
extern "C" void TRK__read_aram();
|
|
extern "C" void TRKTargetTranslate();
|
|
extern "C" void TRKUARTInterruptHandler();
|
|
extern "C" void MWTRACE();
|
|
|
|
//
|
|
// Declarations:
|
|
//
|
|
|
|
/* 8036F638-8036F640 0008+00 s=2 e=1 z=0 None .text __TRK_get_MSR */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
extern "C" asm void __TRK_get_MSR() {
|
|
nofralloc
|
|
#include "asm/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl/__TRK_get_MSR.s"
|
|
}
|
|
#pragma pop
|
|
|
|
|
|
/* 8036F640-8036F648 0008+00 s=1 e=0 z=0 None .text __TRK_set_MSR */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
extern "C" asm static void __TRK_set_MSR() {
|
|
nofralloc
|
|
#include "asm/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl/__TRK_set_MSR.s"
|
|
}
|
|
#pragma pop
|
|
|
|
|
|
/* 8036F648-8036F684 003C+00 s=1 e=0 z=0 None .text TRK_ppc_memcpy */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
extern "C" asm static void TRK_ppc_memcpy() {
|
|
nofralloc
|
|
#include "asm/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl/TRK_ppc_memcpy.s"
|
|
}
|
|
#pragma pop
|
|
|
|
|
|
/* ############################################################################################## */
|
|
/* 803D3238-803D3244 0009+03 s=1 e=1 z=0 None .data gTRKRestoreFlags */
|
|
SECTION_DATA u8 gTRKRestoreFlags[9 + 3 /* padding */] = {
|
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
/* padding */
|
|
0x00, 0x00, 0x00,
|
|
};
|
|
|
|
/* 803D3244-803D3254 0010+00 s=10 e=0 z=0 None .data gTRKExceptionStatus */
|
|
SECTION_DATA static u8 gTRKExceptionStatus[16] = {
|
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
|
|
};
|
|
|
|
/* 8044F290-8044F294 0002+02 s=1 e=0 z=0 .bss .bss TRK_saved_exceptionID */
|
|
static u8 TRK_saved_exceptionID[2 + 2 /* padding */];
|
|
|
|
/* 8044F294-8044F338 00A4+00 s=11 e=1 z=0 None .bss gTRKState */
|
|
u8 gTRKState[164];
|
|
|
|
/* 8044F338-8044F768 0430+00 s=12 e=6 z=0 None .bss gTRKCPUState */
|
|
u8 gTRKCPUState[1072];
|
|
|
|
/* 8044F768-8044F7FC 0094+00 s=1 e=0 z=0 None .bss gTRKSaveState */
|
|
static u8 gTRKSaveState[148];
|
|
|
|
/* 8036F684-8036F818 0194+00 s=0 e=1 z=0 None .text TRKInterruptHandler */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
extern "C" asm void TRKInterruptHandler() {
|
|
nofralloc
|
|
#include "asm/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl/TRKInterruptHandler.s"
|
|
}
|
|
#pragma pop
|
|
|
|
|
|
/* 8036F818-8036F8B4 009C+00 s=1 e=0 z=0 None .text TRKExceptionHandler */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
extern "C" asm static void TRKExceptionHandler() {
|
|
nofralloc
|
|
#include "asm/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl/TRKExceptionHandler.s"
|
|
}
|
|
#pragma pop
|
|
|
|
|
|
/* 8036F8B4-8036F978 00C4+00 s=0 e=1 z=0 None .text TRKSwapAndGo */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
extern "C" asm void TRKSwapAndGo() {
|
|
nofralloc
|
|
#include "asm/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl/TRKSwapAndGo.s"
|
|
}
|
|
#pragma pop
|
|
|
|
|
|
/* 8036F978-8036F9CC 0054+00 s=1 e=0 z=0 None .text TRKInterruptHandlerEnableInterrupts */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
extern "C" asm static void TRKInterruptHandlerEnableInterrupts() {
|
|
nofralloc
|
|
#include "asm/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl/TRKInterruptHandlerEnableInterrupts.s"
|
|
}
|
|
#pragma pop
|
|
|
|
|
|
/* 8036F9CC-8036F9F0 0024+00 s=1 e=0 z=0 None .text ReadFPSCR */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
extern "C" asm static void ReadFPSCR() {
|
|
nofralloc
|
|
#include "asm/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl/ReadFPSCR.s"
|
|
}
|
|
#pragma pop
|
|
|
|
|
|
/* 8036F9F0-8036FA14 0024+00 s=1 e=0 z=0 None .text WriteFPSCR */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
extern "C" asm static void WriteFPSCR() {
|
|
nofralloc
|
|
#include "asm/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl/WriteFPSCR.s"
|
|
}
|
|
#pragma pop
|
|
|
|
|
|
/* 8036FA14-8036FAD8 00C4+00 s=0 e=2 z=0 None .text TRKTargetAccessARAM */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
extern "C" asm void TRKTargetAccessARAM() {
|
|
nofralloc
|
|
#include "asm/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl/TRKTargetAccessARAM.s"
|
|
}
|
|
#pragma pop
|
|
|
|
|
|
/* 8036FAD8-8036FAE8 0010+00 s=0 e=1 z=0 None .text TRKTargetSetInputPendingPtr */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
extern "C" asm void TRKTargetSetInputPendingPtr() {
|
|
nofralloc
|
|
#include "asm/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl/TRKTargetSetInputPendingPtr.s"
|
|
}
|
|
#pragma pop
|
|
|
|
|
|
/* 8036FAE8-8036FB00 0018+00 s=0 e=1 z=0 None .text TRKTargetStop */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
extern "C" asm void TRKTargetStop() {
|
|
nofralloc
|
|
#include "asm/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl/TRKTargetStop.s"
|
|
}
|
|
#pragma pop
|
|
|
|
|
|
/* 8036FB00-8036FB10 0010+00 s=0 e=1 z=0 None .text TRKTargetSetStopped */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
extern "C" asm void TRKTargetSetStopped() {
|
|
nofralloc
|
|
#include "asm/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl/TRKTargetSetStopped.s"
|
|
}
|
|
#pragma pop
|
|
|
|
|
|
/* 8036FB10-8036FB20 0010+00 s=0 e=3 z=0 None .text TRKTargetStopped */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
extern "C" asm void TRKTargetStopped() {
|
|
nofralloc
|
|
#include "asm/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl/TRKTargetStopped.s"
|
|
}
|
|
#pragma pop
|
|
|
|
|
|
/* 8036FB20-8036FD20 0200+00 s=0 e=1 z=0 None .text TRKTargetSupportRequest */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
extern "C" asm void TRKTargetSupportRequest() {
|
|
nofralloc
|
|
#include "asm/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl/TRKTargetSupportRequest.s"
|
|
}
|
|
#pragma pop
|
|
|
|
|
|
/* 8036FD20-8036FD30 0010+00 s=0 e=1 z=0 None .text TRKTargetGetPC */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
extern "C" asm void TRKTargetGetPC() {
|
|
nofralloc
|
|
#include "asm/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl/TRKTargetGetPC.s"
|
|
}
|
|
#pragma pop
|
|
|
|
|
|
/* ############################################################################################## */
|
|
/* 803A2B60-803A2B70 0010+00 s=1 e=0 z=0 None .rodata gTRKMemMap */
|
|
SECTION_RODATA static u8 const gTRKMemMap[16] = {
|
|
0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01,
|
|
};
|
|
|
|
/* 803A2B70-803A2B98 0028+00 s=2 e=0 z=0 None .rodata @276 */
|
|
SECTION_RODATA static u8 const lit_276[40] = {
|
|
0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00,
|
|
0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00,
|
|
0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00,
|
|
};
|
|
|
|
/* 803A2B98-803A2BC0 0028+00 s=1 e=0 z=0 None .rodata @283 */
|
|
SECTION_RODATA static u8 const lit_283[40] = {
|
|
0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00,
|
|
0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00,
|
|
0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00,
|
|
};
|
|
|
|
/* 803A2BC0-803A2BE8 0028+00 s=1 e=0 z=0 None .rodata @290 */
|
|
SECTION_RODATA static u8 const lit_290[40] = {
|
|
0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00,
|
|
0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00,
|
|
0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00,
|
|
};
|
|
|
|
/* 803A2BE8-803A2BF8 0010+00 s=3 e=0 z=0 None .rodata @422 */
|
|
SECTION_RODATA static u8 const lit_422[16] = {
|
|
0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x44, 0x6F, 0x53, 0x74, 0x65, 0x70, 0x28, 0x29, 0x0A, 0x00,
|
|
};
|
|
|
|
/* 803D3254-803D3268 0014+00 s=3 e=0 z=0 None .data gTRKStepStatus */
|
|
SECTION_DATA static u8 gTRKStepStatus[20] = {
|
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
0x00, 0x00, 0x00, 0x00,
|
|
};
|
|
|
|
/* 8036FD30-8036FDE8 00B8+00 s=0 e=1 z=0 None .text TRKTargetStepOutOfRange */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
extern "C" asm void TRKTargetStepOutOfRange() {
|
|
nofralloc
|
|
#include "asm/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl/TRKTargetStepOutOfRange.s"
|
|
}
|
|
#pragma pop
|
|
|
|
|
|
/* 8036FDE8-8036FE94 00AC+00 s=0 e=1 z=0 None .text TRKTargetSingleStep */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
extern "C" asm void TRKTargetSingleStep() {
|
|
nofralloc
|
|
#include "asm/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl/TRKTargetSingleStep.s"
|
|
}
|
|
#pragma pop
|
|
|
|
|
|
/* 8036FE94-8036FF18 0084+00 s=0 e=1 z=0 None .text TRKTargetAddExceptionInfo */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
extern "C" asm void TRKTargetAddExceptionInfo() {
|
|
nofralloc
|
|
#include "asm/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl/TRKTargetAddExceptionInfo.s"
|
|
}
|
|
#pragma pop
|
|
|
|
|
|
/* 8036FF18-8036FFA4 008C+00 s=0 e=1 z=0 None .text TRKTargetAddStopInfo */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
extern "C" asm void TRKTargetAddStopInfo() {
|
|
nofralloc
|
|
#include "asm/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl/TRKTargetAddStopInfo.s"
|
|
}
|
|
#pragma pop
|
|
|
|
|
|
/* 8036FFA4-80370134 0190+00 s=0 e=1 z=0 None .text TRKTargetInterrupt */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
extern "C" asm void TRKTargetInterrupt() {
|
|
nofralloc
|
|
#include "asm/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl/TRKTargetInterrupt.s"
|
|
}
|
|
#pragma pop
|
|
|
|
|
|
/* 80370134-803701E0 00AC+00 s=2 e=0 z=0 None .text TRKPostInterruptEvent */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
extern "C" asm static void TRKPostInterruptEvent() {
|
|
nofralloc
|
|
#include "asm/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl/TRKPostInterruptEvent.s"
|
|
}
|
|
#pragma pop
|
|
|
|
|
|
/* ############################################################################################## */
|
|
/* 8044F7FC-8044F810 0010+04 s=2 e=0 z=0 None .bss TRKvalue128_temp */
|
|
static u8 TRKvalue128_temp[16 + 4 /* padding */];
|
|
|
|
/* 803701E0-80370618 0438+00 s=0 e=2 z=0 None .text TRKTargetAccessExtended2 */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
extern "C" asm void TRKTargetAccessExtended2() {
|
|
nofralloc
|
|
#include "asm/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl/TRKTargetAccessExtended2.s"
|
|
}
|
|
#pragma pop
|
|
|
|
|
|
/* 80370618-80370788 0170+00 s=0 e=2 z=0 None .text TRKTargetAccessExtended1 */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
extern "C" asm void TRKTargetAccessExtended1() {
|
|
nofralloc
|
|
#include "asm/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl/TRKTargetAccessExtended1.s"
|
|
}
|
|
#pragma pop
|
|
|
|
|
|
/* 80370788-80370C94 050C+00 s=0 e=2 z=0 None .text TRKTargetAccessFP */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
extern "C" asm void TRKTargetAccessFP() {
|
|
nofralloc
|
|
#include "asm/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl/TRKTargetAccessFP.s"
|
|
}
|
|
#pragma pop
|
|
|
|
|
|
/* 80370C94-80370D88 00F4+00 s=0 e=2 z=0 None .text TRKTargetAccessDefault */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
extern "C" asm void TRKTargetAccessDefault() {
|
|
nofralloc
|
|
#include "asm/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl/TRKTargetAccessDefault.s"
|
|
}
|
|
#pragma pop
|
|
|
|
|
|
/* 80370D88-80370DD4 004C+00 s=3 e=0 z=0 None .text TRKTargetReadInstruction */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
extern "C" asm static void TRKTargetReadInstruction() {
|
|
nofralloc
|
|
#include "asm/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl/TRKTargetReadInstruction.s"
|
|
}
|
|
#pragma pop
|
|
|
|
|
|
/* 80370DD4-80370F20 014C+00 s=1 e=2 z=0 None .text TRKTargetAccessMemory */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
extern "C" asm void TRKTargetAccessMemory() {
|
|
nofralloc
|
|
#include "asm/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl/TRKTargetAccessMemory.s"
|
|
}
|
|
#pragma pop
|
|
|
|
|
|
/* 80370F20-803711C4 02A4+00 s=1 e=0 z=0 None .text TRKValidMemory32 */
|
|
#pragma push
|
|
#pragma optimization_level 0
|
|
#pragma optimizewithasm off
|
|
extern "C" asm static void TRKValidMemory32() {
|
|
nofralloc
|
|
#include "asm/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl/TRKValidMemory32.s"
|
|
}
|
|
#pragma pop
|
|
|
|
|