tp/asm/os/OSReboot.s

51 lines
2.1 KiB
ArmAsm

.include "macros.inc"
.section .text, "ax" # 8033f5d0
.global __OSReboot
__OSReboot:
/* 8033F5D0 0033C510 7C 08 02 A6 */ mflr r0
/* 8033F5D4 0033C514 90 01 00 04 */ stw r0, 4(r1)
/* 8033F5D8 0033C518 94 21 FD 18 */ stwu r1, -0x2e8(r1)
/* 8033F5DC 0033C51C 93 E1 02 E4 */ stw r31, 0x2e4(r1)
/* 8033F5E0 0033C520 3B E4 00 00 */ addi r31, r4, 0
/* 8033F5E4 0033C524 93 C1 02 E0 */ stw r30, 0x2e0(r1)
/* 8033F5E8 0033C528 3B C3 00 00 */ addi r30, r3, 0
/* 8033F5EC 0033C52C 4B FF E1 09 */ bl __RAS_OSDisableInterrupts_begin
/* 8033F5F0 0033C530 3C 60 81 28 */ lis r3, 0x8128
/* 8033F5F4 0033C534 4B FF BC B1 */ bl OSSetArenaLo
/* 8033F5F8 0033C538 3C 60 81 2F */ lis r3, 0x812f
/* 8033F5FC 0033C53C 4B FF BC A1 */ bl OSSetArenaHi
/* 8033F600 0033C540 38 61 00 18 */ addi r3, r1, 0x18
/* 8033F604 0033C544 4B FF C9 FD */ bl OSClearContext
/* 8033F608 0033C548 38 61 00 18 */ addi r3, r1, 0x18
/* 8033F60C 0033C54C 4B FF C8 2D */ bl OSSetCurrentContext
/* 8033F610 0033C550 38 00 00 00 */ li r0, 0
/* 8033F614 0033C554 90 01 00 10 */ stw r0, 0x10(r1)
/* 8033F618 0033C558 38 7F 00 00 */ addi r3, r31, 0
/* 8033F61C 0033C55C 67 C4 80 00 */ oris r4, r30, 0x8000
/* 8033F620 0033C560 38 A1 00 10 */ addi r5, r1, 0x10
/* 8033F624 0033C564 4B FF DC 21 */ bl __OSBootDol
/* 8033F628 0033C568 80 01 02 EC */ lwz r0, 0x2ec(r1)
/* 8033F62C 0033C56C 83 E1 02 E4 */ lwz r31, 0x2e4(r1)
/* 8033F630 0033C570 83 C1 02 E0 */ lwz r30, 0x2e0(r1)
/* 8033F634 0033C574 38 21 02 E8 */ addi r1, r1, 0x2e8
/* 8033F638 0033C578 7C 08 03 A6 */ mtlr r0
/* 8033F63C 0033C57C 4E 80 00 20 */ blr
.global OSSetSaveRegion
OSSetSaveRegion:
/* 8033F640 0033C580 90 6D 91 08 */ stw r3, lbl_80451688-_SDA_BASE_(r13)
/* 8033F644 0033C584 90 8D 91 0C */ stw r4, lbl_8045168C-_SDA_BASE_(r13)
/* 8033F648 0033C588 4E 80 00 20 */ blr
.global OSGetSaveRegion
OSGetSaveRegion:
/* 8033F64C 0033C58C 80 0D 91 08 */ lwz r0, lbl_80451688-_SDA_BASE_(r13)
/* 8033F650 0033C590 90 03 00 00 */ stw r0, 0(r3)
/* 8033F654 0033C594 80 0D 91 0C */ lwz r0, lbl_8045168C-_SDA_BASE_(r13)
/* 8033F658 0033C598 90 04 00 00 */ stw r0, 0(r4)
/* 8033F65C 0033C59C 4E 80 00 20 */ blr