summaryrefslogtreecommitdiff
path: root/asm/fatal_system.s
diff options
context:
space:
mode:
Diffstat (limited to 'asm/fatal_system.s')
-rw-r--r--asm/fatal_system.s157
1 files changed, 157 insertions, 0 deletions
diff --git a/asm/fatal_system.s b/asm/fatal_system.s
new file mode 100644
index 0000000..3a53878
--- /dev/null
+++ b/asm/fatal_system.s
@@ -0,0 +1,157 @@
+ .include "constants/gba_constants.inc"
+ .include "asm/macros.inc"
+
+ .syntax unified
+
+ .text
+
+ thumb_func_start FatalErrorPrintFuncFileLine
+FatalErrorPrintFuncFileLine:
+ push {lr}
+ sub sp, 0x100
+ adds r2, r0, 0
+ cmp r2, 0
+ beq _08011B5E
+ mov r0, sp
+ bl PrintFuncFileLine
+ b _08011B66
+_08011B5E:
+ ldr r2, _08011B6C
+ mov r0, sp
+ bl PrintFuncFileLine
+_08011B66:
+ add sp, 0x100
+ pop {r0}
+ bx r0
+ .align 2, 0
+_08011B6C: .4byte gUnknown_80D421C
+ thumb_func_end FatalErrorPrintFuncFileLine
+
+ thumb_func_start FatalErrorFormatMessage
+FatalErrorFormatMessage:
+ push {r0-r3}
+ push {lr}
+ sub sp, 0x100
+ ldr r1, [sp, 0x104]
+ add r2, sp, 0x108
+ mov r0, sp
+ bl vsprintf
+ add sp, 0x100
+ pop {r3}
+ add sp, 0x10
+ bx r3
+ thumb_func_end FatalErrorFormatMessage
+
+ thumb_func_start sub_8011B88
+sub_8011B88:
+ push {r0-r3}
+ push {lr}
+ sub sp, 0x100
+ ldr r1, [sp, 0x104]
+ add r2, sp, 0x108
+ mov r0, sp
+ bl vsprintf
+ add sp, 0x100
+ pop {r3}
+ add sp, 0x10
+ bx r3
+ thumb_func_end sub_8011B88
+
+ thumb_func_start nullsub_28
+nullsub_28:
+ bx lr
+ thumb_func_end nullsub_28
+
+ thumb_func_start sub_8011BA4
+sub_8011BA4:
+ movs r0, 0
+ bx lr
+ thumb_func_end sub_8011BA4
+
+ thumb_func_start sub_8011BA8
+sub_8011BA8:
+ movs r0, 0
+ bx lr
+ thumb_func_end sub_8011BA8
+
+ thumb_func_start sub_8011BAC
+sub_8011BAC:
+ ldr r0, _08011BB0
+ bx lr
+ .align 2, 0
+_08011BB0: .4byte gUnknown_80D4288
+ thumb_func_end sub_8011BAC
+
+ thumb_func_start sub_8011BB4
+sub_8011BB4:
+ push {lr}
+ bl Hang
+ pop {r0}
+ bx r0
+ thumb_func_end sub_8011BB4
+
+ thumb_func_start Log
+Log:
+ push {r1-r3}
+ add sp, 0xC
+ bx lr
+ thumb_func_end Log
+
+ thumb_func_start sub_8011BC8
+sub_8011BC8:
+ push {r2,r3}
+ add sp, 0x8
+ bx lr
+ thumb_func_end sub_8011BC8
+
+ thumb_func_start nullsub_29
+nullsub_29:
+ bx lr
+ thumb_func_end nullsub_29
+
+ thumb_func_start nullsub_30
+nullsub_30:
+ bx lr
+ thumb_func_end nullsub_30
+
+ thumb_func_start nullsub_31
+nullsub_31:
+ bx lr
+ thumb_func_end nullsub_31
+
+ thumb_func_start nullsub_32
+nullsub_32:
+ bx lr
+ thumb_func_end nullsub_32
+
+ thumb_func_start FatalErrorHang
+FatalErrorHang:
+ push {lr}
+ bl Hang
+ pop {r0}
+ bx r0
+ thumb_func_end FatalErrorHang
+
+ thumb_func_start FatalError
+FatalError:
+ push {r1-r3}
+ push {r4,lr}
+ sub sp, 0x100
+ adds r1, r0, 0
+ ldr r4, [sp, 0x108]
+ ldr r0, _08011C14
+ bl FatalErrorPrintFuncFileLine
+ add r2, sp, 0x10C
+ mov r0, sp
+ adds r1, r4, 0
+ bl vsprintf
+ ldr r0, _08011C18
+ mov r1, sp
+ bl FatalErrorFormatMessage
+ bl FatalErrorHang
+ .align 2, 0
+_08011C14: .4byte gUnknown_80D42C0
+_08011C18: .4byte gUnknown_80D42D4
+ thumb_func_end FatalError
+
+ .align 2,0