diff options
-rw-r--r-- | asm/code_80118A4.s | 163 | ||||
-rw-r--r-- | asm/fatal_system.s | 157 | ||||
-rwxr-xr-x | ld_script.txt | 2 | ||||
-rw-r--r-- | src/code_80118A4_1.c | 15 |
4 files changed, 174 insertions, 163 deletions
diff --git a/asm/code_80118A4.s b/asm/code_80118A4.s index e96623d..13edd86 100644 --- a/asm/code_80118A4.s +++ b/asm/code_80118A4.s @@ -307,167 +307,4 @@ _08011B2E: _08011B38: .4byte gUnknown_203B150 thumb_func_end sub_8011B20 - thumb_func_start sub_8011B3C -sub_8011B3C: - ldr r0, _08011B44 - ldrb r0, [r0] - bx lr - .align 2, 0 -_08011B44: .4byte gUnknown_203B150 - thumb_func_end sub_8011B3C - - thumb_func_start nullsub_137 -nullsub_137: - bx lr - thumb_func_end nullsub_137 - - 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 @ Don't pad with nop 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 diff --git a/ld_script.txt b/ld_script.txt index a914b12..d1d67ff 100755 --- a/ld_script.txt +++ b/ld_script.txt @@ -71,6 +71,8 @@ SECTIONS { asm/code_800D090.o(.text); src/code_80118A4.o(.text); asm/code_80118A4.o(.text); + src/code_80118A4_1.o(.text); + asm/fatal_system.o(.text); src/save.o(.text); asm/save.o(.text); src/save1.o(.text); diff --git a/src/code_80118A4_1.c b/src/code_80118A4_1.c new file mode 100644 index 0000000..9d6bc5e --- /dev/null +++ b/src/code_80118A4_1.c @@ -0,0 +1,15 @@ +#include "global.h" + +extern u8 gUnknown_203B150; + +// unused +u8 sub_8011B3C(void) +{ + return gUnknown_203B150; +} + +// unused +void nullsub_137(void) +{ + +} |