donut-decomp/asm/MSL_C.PPCEABI.bare.H/signal_8000d918.s

59 lines
2.4 KiB
ArmAsm

.include "macros.inc"
.section .text, "ax" # 0x80006A00 - 0x80406260 ; 0x003FF860
.global raise
raise:
/* 8000D918 00009758 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8000D91C 0000975C 7C 08 02 A6 */ mflr r0
/* 8000D920 00009760 90 01 00 14 */ stw r0, 0x14(r1)
/* 8000D924 00009764 38 03 FF FF */ addi r0, r3, -0x1
/* 8000D928 00009768 28 00 00 06 */ cmplwi r0, 0x6
/* 8000D92C 0000976C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8000D930 00009770 93 C1 00 08 */ stw r30, 0x8(r1)
/* 8000D934 00009774 7C 7E 1B 78 */ mr r30, r3
/* 8000D938 00009778 40 81 00 0C */ ble lbl_8000D944
/* 8000D93C 0000977C 38 60 FF FF */ li r3, -0x1
/* 8000D940 00009780 48 00 00 68 */ b lbl_8000D9A8
.global lbl_8000D944
lbl_8000D944:
/* 8000D944 00009784 3C 80 80 49 */ lis r4, signal_funcs@ha
/* 8000D948 00009788 54 05 10 3A */ slwi r5, r0, 2
/* 8000D94C 0000978C 38 84 6B B8 */ addi r4, r4, signal_funcs@l
/* 8000D950 00009790 7F E4 28 2E */ lwzx r31, r4, r5
/* 8000D954 00009794 28 1F 00 01 */ cmplwi r31, 0x1
/* 8000D958 00009798 41 82 00 0C */ beq lbl_8000D964
/* 8000D95C 0000979C 38 00 00 00 */ li r0, 0x0
/* 8000D960 000097A0 7C 04 29 2E */ stwx r0, r4, r5
.global lbl_8000D964
lbl_8000D964:
/* 8000D964 000097A4 28 1F 00 01 */ cmplwi r31, 0x1
/* 8000D968 000097A8 41 82 00 14 */ beq lbl_8000D97C
/* 8000D96C 000097AC 2C 1F 00 00 */ cmpwi r31, 0x0
/* 8000D970 000097B0 40 82 00 14 */ bne lbl_8000D984
/* 8000D974 000097B4 2C 03 00 01 */ cmpwi r3, 0x1
/* 8000D978 000097B8 40 82 00 0C */ bne lbl_8000D984
.global lbl_8000D97C
lbl_8000D97C:
/* 8000D97C 000097BC 38 60 00 00 */ li r3, 0x0
/* 8000D980 000097C0 48 00 00 28 */ b lbl_8000D9A8
.global lbl_8000D984
lbl_8000D984:
/* 8000D984 000097C4 2C 1F 00 00 */ cmpwi r31, 0x0
/* 8000D988 000097C8 40 82 00 0C */ bne lbl_8000D994
/* 8000D98C 000097CC 38 60 00 00 */ li r3, 0x0
/* 8000D990 000097D0 48 01 AC 11 */ bl exit
.global lbl_8000D994
lbl_8000D994:
/* 8000D994 000097D4 7F EC FB 78 */ mr r12, r31
/* 8000D998 000097D8 7F C3 F3 78 */ mr r3, r30
/* 8000D99C 000097DC 7D 89 03 A6 */ mtctr r12
/* 8000D9A0 000097E0 4E 80 04 21 */ bctrl
/* 8000D9A4 000097E4 38 60 00 00 */ li r3, 0x0
.global lbl_8000D9A8
lbl_8000D9A8:
/* 8000D9A8 000097E8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8000D9AC 000097EC 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8000D9B0 000097F0 83 C1 00 08 */ lwz r30, 0x8(r1)
/* 8000D9B4 000097F4 7C 08 03 A6 */ mtlr r0
/* 8000D9B8 000097F8 38 21 00 10 */ addi r1, r1, 0x10
/* 8000D9BC 000097FC 4E 80 00 20 */ blr