From 9fa0a7f1da1b70bee995f53c6c96c43189018772 Mon Sep 17 00:00:00 2001 From: mrb0nk500 Date: Wed, 1 Feb 2023 18:45:02 -0400 Subject: global: Import Dolphin SDK This version comes from the Metroid Prime decompilation project. https://github.com/PrimeDecomp/prime --- src/Dolphin/os/__ppc_eabi_init.cpp | 70 +++++++++++++++++++------------------- 1 file changed, 35 insertions(+), 35 deletions(-) (limited to 'src/Dolphin/os/__ppc_eabi_init.cpp') diff --git a/src/Dolphin/os/__ppc_eabi_init.cpp b/src/Dolphin/os/__ppc_eabi_init.cpp index a0e7574..67c85be 100644 --- a/src/Dolphin/os/__ppc_eabi_init.cpp +++ b/src/Dolphin/os/__ppc_eabi_init.cpp @@ -1,5 +1,3 @@ -// This file was taken from the Metroid Prime decompilation project. -// https://github.com/PrimeDecomp/prime/blob/main/src/Dolphin/os/__ppc_eabi_init.cpp #include "dolphin/__ppc_eabi_init.h" #include "dolphin/PPCArch.h" @@ -10,37 +8,39 @@ void __OSPSInit(); void __OSCacheInit(); asm void __init_hardware(void) { - nofralloc - mfmsr r0 - ori r0, r0, 0x2000 - mtmsr r0 + // clang-format off + nofralloc + mfmsr r0 + ori r0, r0, 0x2000 + mtmsr r0 - mflr r31 - bl __OSPSInit - bl __OSCacheInit - mtlr r31 - blr + mflr r31 + bl __OSPSInit + bl __OSCacheInit + mtlr r31 + blr + // clang-format on } asm void __flush_cache(register void* address, register unsigned int size) { - // clang-format off - nofralloc - lis r5, ~0 - ori r5, r5, ~14 - and r5, r5, r3 - subf r3, r5, r3 - add r4, r4, r3 + // clang-format off + nofralloc + lis r5, ~0 + ori r5, r5, ~14 + and r5, r5, r3 + subf r3, r5, r3 + add r4, r4, r3 -loop: - dcbst r0, r5 - sync - icbi r0, r5 - addic r5, r5, 8 - subic. r4, r4, 8 - bge loop - isync - blr - // clang-format on +loop: + dcbst r0, r5 + sync + icbi r0, r5 + addic r5, r5, 8 + subic. r4, r4, 8 + bge loop + isync + blr + // clang-format on } void __init_user() { __init_cpp(); } @@ -50,14 +50,14 @@ __declspec(section ".init") extern voidfunctionptr _ctors[]; __declspec(section ".init") extern voidfunctionptr _dtors[]; void __init_cpp(void) { - voidfunctionptr* constructor; + voidfunctionptr* constructor; - /* - * call static initializers - */ - for (constructor = _ctors; *constructor; constructor++) { - (*constructor)(); - } + /* + * call static initializers + */ + for (constructor = _ctors; *constructor; constructor++) { + (*constructor)(); + } } void _ExitProcess(void) { PPCHalt(); } -- cgit v1.2.3-13-gbd6f