From cedeeefadead2a335dd44bee2ae3b375640fabc1 Mon Sep 17 00:00:00 2001 From: Max Date: Fri, 2 Oct 2020 11:40:20 -0400 Subject: split OSNandbootInfo, OSNet, OSStateFlags, and __ppc_eabi_init --- asm/Runtime/__ppc_eabi_init.s | 61 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 asm/Runtime/__ppc_eabi_init.s (limited to 'asm/Runtime') diff --git a/asm/Runtime/__ppc_eabi_init.s b/asm/Runtime/__ppc_eabi_init.s new file mode 100644 index 0000000..1b7ffb2 --- /dev/null +++ b/asm/Runtime/__ppc_eabi_init.s @@ -0,0 +1,61 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80006980 - 0x803E1E60 + +.global __init_user +__init_user: +/* 802744A4 00270104 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 802744A8 00270108 7C 08 02 A6 */ mflr r0 +/* 802744AC 0027010C 90 01 00 14 */ stw r0, 0x14(r1) +/* 802744B0 00270110 48 00 00 15 */ bl __init_cpp +/* 802744B4 00270114 80 01 00 14 */ lwz r0, 0x14(r1) +/* 802744B8 00270118 7C 08 03 A6 */ mtlr r0 +/* 802744BC 0027011C 38 21 00 10 */ addi r1, r1, 0x10 +/* 802744C0 00270120 4E 80 00 20 */ blr + +.global __init_cpp +__init_cpp: +/* 802744C4 00270124 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 802744C8 00270128 7C 08 02 A6 */ mflr r0 +/* 802744CC 0027012C 90 01 00 14 */ stw r0, 0x14(r1) +/* 802744D0 00270130 93 E1 00 0C */ stw r31, 0xc(r1) +/* 802744D4 00270134 3F E0 80 3E */ lis r31, lbl_803E1E60@ha +/* 802744D8 00270138 3B FF 1E 60 */ addi r31, r31, lbl_803E1E60@l +/* 802744DC 0027013C 48 00 00 10 */ b lbl_802744EC +lbl_802744E0: +/* 802744E0 00270140 7D 89 03 A6 */ mtctr r12 +/* 802744E4 00270144 4E 80 04 21 */ bctrl +/* 802744E8 00270148 3B FF 00 04 */ addi r31, r31, 4 +lbl_802744EC: +/* 802744EC 0027014C 81 9F 00 00 */ lwz r12, 0(r31) +/* 802744F0 00270150 2C 0C 00 00 */ cmpwi r12, 0 +/* 802744F4 00270154 40 82 FF EC */ bne lbl_802744E0 +/* 802744F8 00270158 80 01 00 14 */ lwz r0, 0x14(r1) +/* 802744FC 0027015C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80274500 00270160 7C 08 03 A6 */ mtlr r0 +/* 80274504 00270164 38 21 00 10 */ addi r1, r1, 0x10 +/* 80274508 00270168 4E 80 00 20 */ blr + +.global exit +exit: +/* 8027450C 0027016C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80274510 00270170 7C 08 02 A6 */ mflr r0 +/* 80274514 00270174 90 01 00 14 */ stw r0, 0x14(r1) +/* 80274518 00270178 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8027451C 0027017C 3F E0 80 3E */ lis r31, lbl_803E22A0@ha +/* 80274520 00270180 3B FF 22 A0 */ addi r31, r31, lbl_803E22A0@l +/* 80274524 00270184 48 00 00 10 */ b lbl_80274534 +lbl_80274528: +/* 80274528 00270188 7D 89 03 A6 */ mtctr r12 +/* 8027452C 0027018C 4E 80 04 21 */ bctrl +/* 80274530 00270190 3B FF 00 04 */ addi r31, r31, 4 +lbl_80274534: +/* 80274534 00270194 81 9F 00 00 */ lwz r12, 0(r31) +/* 80274538 00270198 2C 0C 00 00 */ cmpwi r12, 0 +/* 8027453C 0027019C 40 82 FF EC */ bne lbl_80274528 +/* 80274540 002701A0 4B FF 3D 29 */ bl PPCHalt +/* 80274544 002701A4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80274548 002701A8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8027454C 002701AC 7C 08 03 A6 */ mtlr r0 +/* 80274550 002701B0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80274554 002701B4 4E 80 00 20 */ blr -- cgit v1.2.3