mirror of
https://github.com/pret/pmd-sky.git
synced 2026-04-25 15:42:34 -05:00
208 lines
4.0 KiB
ArmAsm
208 lines
4.0 KiB
ArmAsm
.include "asm/macros.inc"
|
|
.include "main_0204C408.inc"
|
|
|
|
.text
|
|
|
|
arm_func_start sub_0204C6C8
|
|
sub_0204C6C8: ; 0x0204C6C8
|
|
stmdb sp!, {r3, r4, r5, r6, r7, lr}
|
|
mov r7, r0
|
|
mov r6, r1
|
|
mov r0, #0
|
|
mov r5, r2
|
|
mov r1, r7
|
|
mov r2, r0
|
|
bl LoadScriptVariableValueAtIndex
|
|
mov r4, r0
|
|
mov r1, r7
|
|
mov r0, #0
|
|
mov r2, #1
|
|
bl LoadScriptVariableValueAtIndex
|
|
cmp r4, #0x35
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
|
|
cmp r4, r6
|
|
movlt r0, #1
|
|
ldmltia sp!, {r3, r4, r5, r6, r7, pc}
|
|
bne _0204C72C
|
|
cmp r5, #0
|
|
blt _0204C72C
|
|
cmp r0, r5
|
|
movlt r0, #1
|
|
ldmltia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_0204C72C:
|
|
mov r0, #0
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
arm_func_end sub_0204C6C8
|
|
|
|
arm_func_start sub_0204C734
|
|
sub_0204C734: ; 0x0204C734
|
|
stmdb sp!, {r3, r4, r5, r6, r7, lr}
|
|
mov r7, r0
|
|
mov r6, r1
|
|
mov r0, #0
|
|
mov r5, r2
|
|
mov r1, r7
|
|
mov r2, r0
|
|
bl LoadScriptVariableValueAtIndex
|
|
mov r4, r0
|
|
mov r1, r7
|
|
mov r0, #0
|
|
mov r2, #1
|
|
bl LoadScriptVariableValueAtIndex
|
|
cmp r4, #0x35
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
|
|
cmp r4, r6
|
|
movlt r0, #1
|
|
ldmltia sp!, {r3, r4, r5, r6, r7, pc}
|
|
bne _0204C7A4
|
|
cmp r5, #0
|
|
blt _0204C79C
|
|
cmp r0, r5
|
|
bgt _0204C7A4
|
|
mov r0, #1
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_0204C79C:
|
|
mov r0, #1
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_0204C7A4:
|
|
mov r0, #0
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
arm_func_end sub_0204C734
|
|
|
|
arm_func_start sub_0204C7AC
|
|
sub_0204C7AC: ; 0x0204C7AC
|
|
stmdb sp!, {r3, r4, r5, r6, r7, lr}
|
|
mov r7, r0
|
|
mov r6, r1
|
|
mov r0, #0
|
|
mov r5, r2
|
|
mov r1, r7
|
|
mov r2, r0
|
|
bl LoadScriptVariableValueAtIndex
|
|
mov r4, r0
|
|
mov r1, r7
|
|
mov r0, #0
|
|
mov r2, #1
|
|
bl LoadScriptVariableValueAtIndex
|
|
cmp r4, r6
|
|
bne _0204C800
|
|
cmp r5, #0
|
|
movlt r0, #1
|
|
ldmltia sp!, {r3, r4, r5, r6, r7, pc}
|
|
cmp r0, r5
|
|
moveq r0, #1
|
|
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_0204C800:
|
|
mov r0, #0
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
arm_func_end sub_0204C7AC
|
|
|
|
arm_func_start sub_0204C808
|
|
sub_0204C808: ; 0x0204C808
|
|
stmdb sp!, {r3, r4, r5, r6, r7, lr}
|
|
mov r7, r0
|
|
mov r6, r1
|
|
mov r0, #0
|
|
mov r5, r2
|
|
mov r1, r7
|
|
mov r2, r0
|
|
bl LoadScriptVariableValueAtIndex
|
|
mov r4, r0
|
|
mov r1, r7
|
|
mov r0, #0
|
|
mov r2, #1
|
|
bl LoadScriptVariableValueAtIndex
|
|
cmp r4, #0x35
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
|
|
cmp r4, r6
|
|
movgt r0, #1
|
|
ldmgtia sp!, {r3, r4, r5, r6, r7, pc}
|
|
bne _0204C878
|
|
cmp r5, #0
|
|
blt _0204C870
|
|
cmp r0, r5
|
|
blt _0204C878
|
|
mov r0, #1
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_0204C870:
|
|
mov r0, #1
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_0204C878:
|
|
mov r0, #0
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
arm_func_end sub_0204C808
|
|
|
|
arm_func_start sub_0204C880
|
|
sub_0204C880: ; 0x0204C880
|
|
stmdb sp!, {r3, r4, r5, r6, r7, lr}
|
|
mov r7, r0
|
|
mov r6, r1
|
|
mov r0, #0
|
|
mov r5, r2
|
|
mov r1, r7
|
|
mov r2, r0
|
|
bl LoadScriptVariableValueAtIndex
|
|
mov r4, r0
|
|
mov r1, r7
|
|
mov r0, #0
|
|
mov r2, #1
|
|
bl LoadScriptVariableValueAtIndex
|
|
cmp r4, #0x35
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
|
|
cmp r4, r6
|
|
movgt r0, #1
|
|
ldmgtia sp!, {r3, r4, r5, r6, r7, pc}
|
|
bne _0204C8E4
|
|
cmp r5, #0
|
|
blt _0204C8E4
|
|
cmp r0, r5
|
|
movgt r0, #1
|
|
ldmgtia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_0204C8E4:
|
|
mov r0, #0
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
arm_func_end sub_0204C880
|
|
|
|
arm_func_start GetSpecialEpisodeType
|
|
GetSpecialEpisodeType: ; 0x0204C8EC
|
|
ldr ip, _0204C8FC ; =LoadScriptVariableValue
|
|
mov r0, #0
|
|
mov r1, #0x4a
|
|
bx ip
|
|
.align 2, 0
|
|
_0204C8FC: .word LoadScriptVariableValue
|
|
arm_func_end GetSpecialEpisodeType
|
|
|
|
arm_func_start SetSpecialEpisodeType
|
|
SetSpecialEpisodeType: ; 0x0204C900
|
|
ldr ip, _0204C914 ; =SaveScriptVariableValue
|
|
mov r2, r0
|
|
mov r0, #0
|
|
mov r1, #0x4a
|
|
bx ip
|
|
.align 2, 0
|
|
_0204C914: .word SaveScriptVariableValue
|
|
arm_func_end SetSpecialEpisodeType
|
|
|
|
arm_func_start sub_0204C918
|
|
sub_0204C918: ; 0x0204C918
|
|
ldr r0, _0204C924 ; =DEBUG_SPECIAL_EPISODE_NUMBER
|
|
ldr r0, [r0]
|
|
bx lr
|
|
.align 2, 0
|
|
_0204C924: .word DEBUG_SPECIAL_EPISODE_NUMBER
|
|
arm_func_end sub_0204C918
|
|
|
|
arm_func_start sub_0204C928
|
|
sub_0204C928: ; 0x0204C928
|
|
ldr r1, _0204C934 ; =DEBUG_SPECIAL_EPISODE_NUMBER
|
|
str r0, [r1]
|
|
bx lr
|
|
.align 2, 0
|
|
_0204C934: .word DEBUG_SPECIAL_EPISODE_NUMBER
|
|
arm_func_end sub_0204C928
|