wut/libraries/wutcrt/crt0_rpl.s
2018-05-30 22:13:49 +01:00

35 lines
447 B
ArmAsm

.extern main
.extern exit
.extern __init_wut
.extern __fini_wut
.global _start
_start:
stwu 1, -0x14(1)
mflr 0
stw 0, 0x18(1)
stw 3, 0xC(1)
stw 4, 0x10(1)
cmpwi 3, 2
beq unload
load:
# Load
bl __init_wut
bl __eabi
lwz 3, 0xC(1)
lwz 4, 0x10(1)
bl rpl_main
addi 1, 1, 0x14
blr
unload:
# Handle unload
lwz 3, 0xC(1)
lwz 4, 0x10(1)
bl rpl_main
bl __fini_wut
addi 1, 1, 0x14
b exit