summaryrefslogtreecommitdiff
path: root/libagbsyscall/libagbsyscall.s
diff options
context:
space:
mode:
Diffstat (limited to 'libagbsyscall/libagbsyscall.s')
-rw-r--r--libagbsyscall/libagbsyscall.s19
1 files changed, 11 insertions, 8 deletions
diff --git a/libagbsyscall/libagbsyscall.s b/libagbsyscall/libagbsyscall.s
index 00c40d08e..0c90da9ed 100644
--- a/libagbsyscall/libagbsyscall.s
+++ b/libagbsyscall/libagbsyscall.s
@@ -1,9 +1,12 @@
.include "../constants/gba_constants.inc"
.include "../asm/macros/function.inc"
+
+ .syntax unified
.text
.set SOFT_RESET_DIRECT_BUF, 0x03007FFA
+ .set USER_STACK, 0x03007F00
.set RESET_EX_WRAM_FLAG, 0x1
.ifdef NO_GRANULAR_AGBSYSCALL
@@ -106,7 +109,7 @@ SoundDriverVSyncOn:
thumb_func_start Mod
Mod:
svc #6
- mov r0, r1
+ adds r0, r1, #0
bx lr
thumb_func_end Mod
.endif
@@ -145,7 +148,7 @@ HuffUnComp:
.endif
.ifdef L_SoftResetExram
- arm_func_start SoftResetExram
+ thumb_func_start SoftResetExram
SoftResetExram:
ldr r3, =REG_IME
movs r2, #0
@@ -153,14 +156,14 @@ SoftResetExram:
ldr r3, =SOFT_RESET_DIRECT_BUF
movs r2, #1
strb r2, [r3, #0]
- subs r3, #SOFT_RESET_DIRECT_BUF - 0x3007f00
+ subs r3, #SOFT_RESET_DIRECT_BUF - USER_STACK
mov sp, r3
movs r2, #RESET_EX_WRAM_FLAG
bics r0, r2
svc #1
svc #0
.pool
- arm_func_end SoftResetExram
+ thumb_func_end SoftResetExram
.endif
.ifdef L_MusicPlayerFadeOut
@@ -231,7 +234,7 @@ DivArm:
thumb_func_start ModArm
ModArm:
svc #7
- mov r0, r1
+ adds r0, r1, #0
bx lr
thumb_func_end ModArm
.endif
@@ -271,7 +274,7 @@ Diff8bitUnFilterWram:
.ifdef L_MultiBoot
thumb_func_start MultiBoot
MultiBoot:
- mov r1, #1
+ movs r1, #1
svc #37
bx lr
thumb_func_end MultiBoot
@@ -326,7 +329,7 @@ SoftResetRom:
ldr r3, =SOFT_RESET_DIRECT_BUF
movs r2, #0
strb r2, [r3, #0]
- sub r3, #SOFT_RESET_DIRECT_BUF - 0x3007f00
+ subs r3, #SOFT_RESET_DIRECT_BUF - USER_STACK
mov sp, r3
svc #1
svc #0
@@ -413,7 +416,7 @@ SoftReset:
ldr r3, =REG_IME
movs r2, #0
strb r2, [r3, #0]
- ldr r1, =0x3007f00
+ ldr r1, =USER_STACK
mov sp, r1
svc #1
svc #0