Mangle Course

This commit is contained in:
Aetias
2024-04-22 23:57:26 +02:00
parent bfe10f43d2
commit b9e9392f29
11 changed files with 545 additions and 376 deletions
+35 -35
View File
@@ -46,41 +46,41 @@
.extern func_ov00_020792a0
.extern func_ov00_02079898
.extern func_ov00_020798bc
.extern func_ov00_0207ca00
.extern func_ov00_0207ca28
.extern func_ov00_0207caa8
.extern func_ov00_0207cb30
.extern func_ov00_0207cb7c
.extern func_ov00_0207cbd8
.extern func_ov00_0207cbe8
.extern func_ov00_0207cc24
.extern func_ov00_0207cc6c
.extern func_ov00_0207ce20
.extern func_ov00_0207d404
.extern func_ov00_0207d47c
.extern func_ov00_0207d4e4
.extern func_ov00_0207d518
.extern func_ov00_0207d5c4
.extern func_ov00_0207d5f0
.extern func_ov00_0207d61c
.extern func_ov00_0207d628
.extern func_ov00_0207d778
.extern func_ov00_0207d788
.extern func_ov00_0207d7bc
.extern func_ov00_0207d7dc
.extern func_ov00_0207d828
.extern func_ov00_0207d848
.extern func_ov00_0207d894
.extern func_ov00_0207d8b4
.extern func_ov00_0207d8d4
.extern func_ov00_0207d8ec
.extern func_ov00_0207d90c
.extern func_ov00_0207d924
.extern func_ov00_0207d944
.extern func_ov00_0207d95c
.extern func_ov00_0207d97c
.extern func_ov00_0207d994
.extern func_ov00_0207d9b4
.extern _ZN6Course18GetDungeonProgressEP14CourseProgress
.extern _ZN6Course18func_ov00_0207ca28Eiii
.extern _ZN6Course18func_ov00_0207caa8Eiii
.extern _ZN6Course18func_ov00_0207cb30Ei
.extern _ZN6Course18func_ov00_0207cb7cEiPS_i
.extern _ZN6Course18func_ov00_0207cbd8Ei
.extern _ZN6Course18func_ov00_0207cbe8Ei
.extern _ZN6Course18func_ov00_0207cc24Ei
.extern _ZN6Course18func_ov00_0207cc6cEv
.extern _ZN6Course18func_ov00_0207ce20Eiiii
.extern _ZN6Course18func_ov00_0207d404Eiii
.extern _ZN6Course18func_ov00_0207d47cEv
.extern _ZN6Course18func_ov00_0207d4e4Ei
.extern _ZN6Course18func_ov00_0207d518EiPiS0_
.extern _ZN6Course18func_ov00_0207d5c4Ev
.extern _ZN6Course18func_ov00_0207d5f0Ev
.extern _ZN6Course18func_ov00_0207d61cEv
.extern _ZN6Course15GetUnk_c8_Unk_4Ev
.extern _ZN6Course18func_ov00_0207d778Ev
.extern _ZN6Course18func_ov00_0207d788Ev
.extern _ZN6Course18func_ov00_0207d7bcEv
.extern _ZN6Course18func_ov00_0207d7dcEii
.extern _ZN6Course18func_ov00_0207d828Ei
.extern _ZN6Course18func_ov00_0207d848Eii
.extern _ZN6Course18func_ov00_0207d894Ei
.extern _ZN6Course18func_ov00_0207d8b4Ev
.extern _ZN6Course18func_ov00_0207d8d4Ei
.extern _ZN6Course18func_ov00_0207d8ecEv
.extern _ZN6Course18func_ov00_0207d90cEi
.extern _ZN6Course18func_ov00_0207d924Ev
.extern _ZN6Course18func_ov00_0207d944Ei
.extern _ZN6Course18func_ov00_0207d95cEv
.extern _ZN6Course18func_ov00_0207d97cEi
.extern _ZN6Course18func_ov00_0207d994Ev
.extern _ZN6Course18func_ov00_0207d9b4Ei
.extern func_ov00_0207de68
.extern func_ov00_0207de88
.extern func_ov00_0207e08c
+56 -56
View File
@@ -6,22 +6,22 @@
.global _ZN10MapManager18func_ov00_020820ecEPi
arm_func_start _ZN10MapManager18func_ov00_020820ecEPi
_ZN10MapManager18func_ov00_020820ecEPi: ; 0x020820ec
ldr ip, _020820f8 ; =func_ov00_0207ca00
ldr ip, _020820f8 ; =_ZN6Course18GetDungeonProgressEP14CourseProgress
ldr r0, [r0]
bx ip
.align 2, 0
arm_func_end _ZN10MapManager18func_ov00_020820ecEPi
_020820f8: .word func_ov00_0207ca00
_020820f8: .word _ZN6Course18GetDungeonProgressEP14CourseProgress
.global _ZN10MapManager18func_ov00_020820fcEiii
arm_func_start _ZN10MapManager18func_ov00_020820fcEiii
_ZN10MapManager18func_ov00_020820fcEiii: ; 0x020820fc
ldr ip, _02082108 ; =func_ov00_0207ca28
ldr ip, _02082108 ; =_ZN6Course18func_ov00_0207ca28Eiii
ldr r0, [r0]
bx ip
.align 2, 0
arm_func_end _ZN10MapManager18func_ov00_020820fcEiii
_02082108: .word func_ov00_0207ca28
_02082108: .word _ZN6Course18func_ov00_0207ca28Eiii
.global _ZN10MapManager18func_ov00_0208210cEii
arm_func_start _ZN10MapManager18func_ov00_0208210cEii
@@ -468,7 +468,7 @@ _ZN10MapManager18func_ov00_02082614Eii: ; 0x02082614
mov r3, r1
mov r1, r2
mov r2, #0
bl func_ov00_0207ce20
bl _ZN6Course18func_ov00_0207ce20Eiiii
ldmia sp!, {r3, pc}
arm_func_end _ZN10MapManager18func_ov00_02082614Eii
@@ -874,12 +874,12 @@ _02082ac8: .word data_027e0d38
.global _ZN10MapManager18func_ov00_02082accEv
arm_func_start _ZN10MapManager18func_ov00_02082accEv
_ZN10MapManager18func_ov00_02082accEv: ; 0x02082acc
ldr ip, _02082ad8 ; =func_ov00_0207d7bc
ldr ip, _02082ad8 ; =_ZN6Course18func_ov00_0207d7bcEv
ldr r0, [r0]
bx ip
.align 2, 0
arm_func_end _ZN10MapManager18func_ov00_02082accEv
_02082ad8: .word func_ov00_0207d7bc
_02082ad8: .word _ZN6Course18func_ov00_0207d7bcEv
.global _ZN10MapManager18func_ov00_02082adcEv
arm_func_start _ZN10MapManager18func_ov00_02082adcEv
@@ -926,7 +926,7 @@ _ZN10MapManager18func_ov00_02082b3cEi: ; 0x02082b3c
ldrb r2, [r5, #0x12]
ldr r1, [r6]
add r0, sp, #0
bl func_ov00_0207cb7c
bl _ZN6Course18func_ov00_0207cb7cEiPS_i
mov r0, r6
bl _ZN10MapManager20GetCourseData_Unk_1cEv
ldrb r1, [sp]
@@ -981,11 +981,11 @@ _02082bac:
ldrb r7, [r5, #0x12]
ldr r0, [r6]
mov r4, #0
bl func_ov00_0207d778
bl _ZN6Course18func_ov00_0207d778Ev
mov r1, r7
mov r7, r0
ldr r0, [r6]
bl func_ov00_0207d788
bl _ZN6Course18func_ov00_0207d788Ev
cmp r7, r0
ldrb r2, [sp]
ldr r1, [r6]
@@ -1155,7 +1155,7 @@ _ZN10MapManager18func_ov00_02082e1cEPiS0_: ; 0x02082e1c
mov r6, r2
cmp r1, #0
beq _02083050
bl func_ov00_0207d47c
bl _ZN6Course18func_ov00_0207d47cEv
cmp r0, #0
bne _02083038
mvn r1, #0xff
@@ -1219,18 +1219,18 @@ _02082f1c:
add r2, sp, #0xc
add r3, sp, #8
mov r1, r4
bl func_ov00_0207d518
bl _ZN6Course18func_ov00_0207d518EiPiS0_
cmp r0, #0
ldr r0, [r8]
bne _02082fc0
add r2, sp, #0xc
add r3, sp, #8
mov r1, r5
bl func_ov00_0207d518
bl _ZN6Course18func_ov00_0207d518EiPiS0_
ldr r1, [r8]
add r0, sp, #6
mov r2, r5
bl func_ov00_0207cb7c
bl _ZN6Course18func_ov00_0207cb7cEiPS_i
ldrb r1, [sp, #7]
add r0, sp, #4
add r2, sp, #0x28
@@ -1239,7 +1239,7 @@ _02082f1c:
mov r1, r8
bl _ZN10MapManager18func_ov00_02083a54EiPS_iii
ldr r0, [r8]
bl func_ov00_0207d5c4
bl _ZN6Course18func_ov00_0207d5c4Ev
ldrb r1, [sp, #4]
ldr r3, [sp, #0xc]
mov r1, r1, lsl #0xc
@@ -1252,12 +1252,12 @@ _02082f1c:
add r0, r3, r0, asr #12
str r0, [r7]
ldr r0, [r8]
bl func_ov00_0207d5f0
bl _ZN6Course18func_ov00_0207d5f0Ev
ldrb r1, [sp, #5]
ldr r3, [sp, #8]
b _02083008
_02082fc0:
bl func_ov00_0207d5c4
bl _ZN6Course18func_ov00_0207d5c4Ev
ldr r2, [r8, #4]
ldr r1, [sp, #0xc]
ldrb r2, [r2, #0x1b]
@@ -1271,7 +1271,7 @@ _02082fc0:
add r0, r1, r0, asr #12
str r0, [r7]
ldr r0, [r8]
bl func_ov00_0207d5f0
bl _ZN6Course18func_ov00_0207d5f0Ev
ldr r1, [r8, #4]
ldr r3, [sp, #8]
ldrb r1, [r1, #0x1c]
@@ -1513,12 +1513,12 @@ _ZN10MapManager21GetCourseData_Unk_25cEv: ; 0x0208330c
.global _ZN10MapManager18func_ov00_02083318Ei
arm_func_start _ZN10MapManager18func_ov00_02083318Ei
_ZN10MapManager18func_ov00_02083318Ei: ; 0x02083318
ldr ip, _02083324 ; =func_ov00_0207d4e4
ldr ip, _02083324 ; =_ZN6Course18func_ov00_0207d4e4Ei
ldr r0, [r0]
bx ip
.align 2, 0
arm_func_end _ZN10MapManager18func_ov00_02083318Ei
_02083324: .word func_ov00_0207d4e4
_02083324: .word _ZN6Course18func_ov00_0207d4e4Ei
.global _ZN10MapManager18func_ov00_02083328Ev
arm_func_start _ZN10MapManager18func_ov00_02083328Ev
@@ -1528,7 +1528,7 @@ _ZN10MapManager18func_ov00_02083328Ev: ; 0x02083328
bl _ZN10MapManager18func_ov00_02082d08Ev
mov r1, r0
ldr r0, [r4]
bl func_ov00_0207d4e4
bl _ZN6Course18func_ov00_0207d4e4Ei
ldmia sp!, {r4, pc}
arm_func_end _ZN10MapManager18func_ov00_02083328Ev
@@ -1738,7 +1738,7 @@ _ZN10MapManager18func_ov00_020834bcEP5Vec3pii: ; 0x020834bc
add r2, r4, r3
mov r4, r1
ldrb r1, [r2, #0x20]
bl func_ov00_0207cbd8
bl _ZN6Course18func_ov00_0207cbd8Ei
ldr r1, [r0]
str r1, [r4]
ldr r1, [r0, #4]
@@ -1768,7 +1768,7 @@ _ZN10MapManager18func_ov00_02083524EP5Vec3pii: ; 0x02083524
add r2, ip, r3
mov r4, r1
ldrb r1, [r2, #0x20]
bl func_ov00_0207cbd8
bl _ZN6Course18func_ov00_0207cbd8Ei
ldr r1, [r0]
str r1, [r4]
ldr r1, [r0, #4]
@@ -1781,12 +1781,12 @@ _ZN10MapManager18func_ov00_02083524EP5Vec3pii: ; 0x02083524
.global _ZN10MapManager18func_ov00_02083560EiPS_j
arm_func_start _ZN10MapManager18func_ov00_02083560EiPS_j
_ZN10MapManager18func_ov00_02083560EiPS_j: ; 0x02083560
ldr ip, _0208356c ; =func_ov00_0207cb7c
ldr ip, _0208356c ; =_ZN6Course18func_ov00_0207cb7cEiPS_i
ldr r1, [r1]
bx ip
.align 2, 0
arm_func_end _ZN10MapManager18func_ov00_02083560EiPS_j
_0208356c: .word func_ov00_0207cb7c
_0208356c: .word _ZN6Course18func_ov00_0207cb7cEiPS_i
.global _ZN10MapManager18func_ov00_02083570Eii
arm_func_start _ZN10MapManager18func_ov00_02083570Eii
@@ -1807,29 +1807,29 @@ _ZN10MapManager18func_ov00_02083588Ev: ; 0x02083588
bl _ZN10MapManager18func_ov00_02082d08Ev
mov r1, r0
ldr r0, [r4]
bl func_ov00_0207cc6c
bl _ZN6Course18func_ov00_0207cc6cEv
ldmia sp!, {r4, pc}
arm_func_end _ZN10MapManager18func_ov00_02083588Ev
.global _ZN10MapManager18func_ov00_020835a4Ev
arm_func_start _ZN10MapManager18func_ov00_020835a4Ev
_ZN10MapManager18func_ov00_020835a4Ev: ; 0x020835a4
ldr ip, _020835b0 ; =func_ov00_0207d61c
ldr ip, _020835b0 ; =_ZN6Course18func_ov00_0207d61cEv
ldr r0, [r0]
bx ip
.align 2, 0
arm_func_end _ZN10MapManager18func_ov00_020835a4Ev
_020835b0: .word func_ov00_0207d61c
_020835b0: .word _ZN6Course18func_ov00_0207d61cEv
.global _ZN10MapManager18func_ov00_020835b4Ev
arm_func_start _ZN10MapManager18func_ov00_020835b4Ev
_ZN10MapManager18func_ov00_020835b4Ev: ; 0x020835b4
ldr ip, _020835c0 ; =func_ov00_0207d628
ldr ip, _020835c0 ; =_ZN6Course15GetUnk_c8_Unk_4Ev
ldr r0, [r0]
bx ip
.align 2, 0
arm_func_end _ZN10MapManager18func_ov00_020835b4Ev
_020835c0: .word func_ov00_0207d628
_020835c0: .word _ZN6Course15GetUnk_c8_Unk_4Ev
.global _ZN10MapManager18func_ov00_020835c4Eii
arm_func_start _ZN10MapManager18func_ov00_020835c4Eii
@@ -1840,49 +1840,49 @@ _ZN10MapManager18func_ov00_020835c4Eii: ; 0x020835c4
ldr r0, [r0]
mov r3, r2
mov r2, #0
bl func_ov00_0207d404
bl _ZN6Course18func_ov00_0207d404Eiii
ldmia sp!, {r3, pc}
arm_func_end _ZN10MapManager18func_ov00_020835c4Eii
.global _ZN10MapManager18func_ov00_020835e4EiPiS0_
arm_func_start _ZN10MapManager18func_ov00_020835e4EiPiS0_
_ZN10MapManager18func_ov00_020835e4EiPiS0_: ; 0x020835e4
ldr ip, _020835f0 ; =func_ov00_0207caa8
ldr ip, _020835f0 ; =_ZN6Course18func_ov00_0207caa8Eiii
ldr r0, [r0]
bx ip
.align 2, 0
arm_func_end _ZN10MapManager18func_ov00_020835e4EiPiS0_
_020835f0: .word func_ov00_0207caa8
_020835f0: .word _ZN6Course18func_ov00_0207caa8Eiii
.global _ZN10MapManager18func_ov00_020835f4Ei
arm_func_start _ZN10MapManager18func_ov00_020835f4Ei
_ZN10MapManager18func_ov00_020835f4Ei: ; 0x020835f4
ldr ip, _02083600 ; =func_ov00_0207cb30
ldr ip, _02083600 ; =_ZN6Course18func_ov00_0207cb30Ei
ldr r0, [r0]
bx ip
.align 2, 0
arm_func_end _ZN10MapManager18func_ov00_020835f4Ei
_02083600: .word func_ov00_0207cb30
_02083600: .word _ZN6Course18func_ov00_0207cb30Ei
.global _ZN10MapManager18func_ov00_02083604Ei
arm_func_start _ZN10MapManager18func_ov00_02083604Ei
_ZN10MapManager18func_ov00_02083604Ei: ; 0x02083604
ldr ip, _02083610 ; =func_ov00_0207cbe8
ldr ip, _02083610 ; =_ZN6Course18func_ov00_0207cbe8Ei
ldr r0, [r0]
bx ip
.align 2, 0
arm_func_end _ZN10MapManager18func_ov00_02083604Ei
_02083610: .word func_ov00_0207cbe8
_02083610: .word _ZN6Course18func_ov00_0207cbe8Ei
.global _ZN10MapManager18func_ov00_02083614Ei
arm_func_start _ZN10MapManager18func_ov00_02083614Ei
_ZN10MapManager18func_ov00_02083614Ei: ; 0x02083614
ldr ip, _02083620 ; =func_ov00_0207cc24
ldr ip, _02083620 ; =_ZN6Course18func_ov00_0207cc24Ei
ldr r0, [r0]
bx ip
.align 2, 0
arm_func_end _ZN10MapManager18func_ov00_02083614Ei
_02083620: .word func_ov00_0207cc24
_02083620: .word _ZN6Course18func_ov00_0207cc24Ei
.global _ZN10MapManager14GetEntrancePosEP5Vec3pi
arm_func_start _ZN10MapManager14GetEntrancePosEP5Vec3pi
@@ -3579,7 +3579,7 @@ _ZN10MapManager18func_ov00_0208499cEv: ; 0x0208499c
movne r0, #0
ldmneia sp!, {r4, pc}
ldr r0, [r4]
bl func_ov00_0207d47c
bl _ZN6Course18func_ov00_0207d47cEv
ldmia sp!, {r4, pc}
arm_func_end _ZN10MapManager18func_ov00_0208499cEv
@@ -3771,17 +3771,17 @@ _02084b8c:
_02084bb0:
ldr r0, [r0]
mov r2, r3
bl func_ov00_0207d8b4
bl _ZN6Course18func_ov00_0207d8b4Ev
ldmia sp!, {r3, pc}
_02084bc0:
ldr r0, [r0]
mov r2, r3
bl func_ov00_0207d7dc
bl _ZN6Course18func_ov00_0207d7dcEii
ldmia sp!, {r3, pc}
_02084bd0:
ldr r0, [r0]
mov r2, r3
bl func_ov00_0207d848
bl _ZN6Course18func_ov00_0207d848Eii
ldmia sp!, {r3, pc}
arm_func_end _ZN10MapManager18func_ov00_02084b38Eiii
@@ -3812,15 +3812,15 @@ _02084c0c:
ldmia sp!, {r3, pc}
_02084c30:
ldr r0, [r0]
bl func_ov00_0207d8d4
bl _ZN6Course18func_ov00_0207d8d4Ei
ldmia sp!, {r3, pc}
_02084c3c:
ldr r0, [r0]
bl func_ov00_0207d828
bl _ZN6Course18func_ov00_0207d828Ei
ldmia sp!, {r3, pc}
_02084c48:
ldr r0, [r0]
bl func_ov00_0207d894
bl _ZN6Course18func_ov00_0207d894Ei
ldmia sp!, {r3, pc}
_02084c54:
mov r0, #0
@@ -3830,22 +3830,22 @@ _02084c54:
.global _ZN10MapManager18func_ov00_02084c5cEii
arm_func_start _ZN10MapManager18func_ov00_02084c5cEii
_ZN10MapManager18func_ov00_02084c5cEii: ; 0x02084c5c
ldr ip, _02084c68 ; =func_ov00_0207d8ec
ldr ip, _02084c68 ; =_ZN6Course18func_ov00_0207d8ecEv
ldr r0, [r0]
bx ip
.align 2, 0
arm_func_end _ZN10MapManager18func_ov00_02084c5cEii
_02084c68: .word func_ov00_0207d8ec
_02084c68: .word _ZN6Course18func_ov00_0207d8ecEv
.global _ZN10MapManager18func_ov00_02084c6cEi
arm_func_start _ZN10MapManager18func_ov00_02084c6cEi
_ZN10MapManager18func_ov00_02084c6cEi: ; 0x02084c6c
ldr ip, _02084c78 ; =func_ov00_0207d90c
ldr ip, _02084c78 ; =_ZN6Course18func_ov00_0207d90cEi
ldr r0, [r0]
bx ip
.align 2, 0
arm_func_end _ZN10MapManager18func_ov00_02084c6cEi
_02084c78: .word func_ov00_0207d90c
_02084c78: .word _ZN6Course18func_ov00_0207d90cEi
.global _ZN10MapManager18func_ov00_02084c7cEi
arm_func_start _ZN10MapManager18func_ov00_02084c7cEi
@@ -3854,7 +3854,7 @@ _ZN10MapManager18func_ov00_02084c7cEi: ; 0x02084c7c
cmp r1, #0
ldmltia sp!, {r3, pc}
ldr r0, [r0]
bl func_ov00_0207d924
bl _ZN6Course18func_ov00_0207d924Ev
ldmia sp!, {r3, pc}
arm_func_end _ZN10MapManager18func_ov00_02084c7cEi
@@ -3866,7 +3866,7 @@ _ZN10MapManager18func_ov00_02084c94Ei: ; 0x02084c94
movlt r0, #0
ldmltia sp!, {r3, pc}
ldr r0, [r0]
bl func_ov00_0207d944
bl _ZN6Course18func_ov00_0207d944Ei
ldmia sp!, {r3, pc}
arm_func_end _ZN10MapManager18func_ov00_02084c94Ei
@@ -3877,7 +3877,7 @@ _ZN10MapManager18func_ov00_02084cb0Ei: ; 0x02084cb0
cmp r1, #0
ldmltia sp!, {r3, pc}
ldr r0, [r0]
bl func_ov00_0207d95c
bl _ZN6Course18func_ov00_0207d95cEv
ldmia sp!, {r3, pc}
arm_func_end _ZN10MapManager18func_ov00_02084cb0Ei
@@ -3889,7 +3889,7 @@ _ZN10MapManager18func_ov00_02084cc8Ei: ; 0x02084cc8
movlt r0, #0
ldmltia sp!, {r3, pc}
ldr r0, [r0]
bl func_ov00_0207d97c
bl _ZN6Course18func_ov00_0207d97cEi
ldmia sp!, {r3, pc}
arm_func_end _ZN10MapManager18func_ov00_02084cc8Ei
@@ -3900,7 +3900,7 @@ _ZN10MapManager18func_ov00_02084ce4Ei: ; 0x02084ce4
cmp r1, #0
ldmltia sp!, {r3, pc}
ldr r0, [r0]
bl func_ov00_0207d994
bl _ZN6Course18func_ov00_0207d994Ev
ldmia sp!, {r3, pc}
arm_func_end _ZN10MapManager18func_ov00_02084ce4Ei
@@ -3912,7 +3912,7 @@ _ZN10MapManager18func_ov00_02084cfcEi: ; 0x02084cfc
movlt r0, #0
ldmltia sp!, {r3, pc}
ldr r0, [r0]
bl func_ov00_0207d9b4
bl _ZN6Course18func_ov00_0207d9b4Ei
ldmia sp!, {r3, pc}
arm_func_end _ZN10MapManager18func_ov00_02084cfcEi
+231 -231
View File
@@ -2893,9 +2893,9 @@ _0207c9d8:
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov00_0207c91c
.global func_ov00_0207ca00
arm_func_start func_ov00_0207ca00
func_ov00_0207ca00: ; 0x0207ca00
.global _ZN6Course18GetDungeonProgressEP14CourseProgress
arm_func_start _ZN6Course18GetDungeonProgressEP14CourseProgress
_ZN6Course18GetDungeonProgressEP14CourseProgress: ; 0x0207ca00
ldr r2, [r0, #0x268]
str r2, [r1]
ldr r2, [r0, #4]
@@ -2906,11 +2906,11 @@ func_ov00_0207ca00: ; 0x0207ca00
ldrb r0, [r0, #0x25d]
strb r0, [r1, #5]
bx lr
arm_func_end func_ov00_0207ca00
arm_func_end _ZN6Course18GetDungeonProgressEP14CourseProgress
.global func_ov00_0207ca28
arm_func_start func_ov00_0207ca28
func_ov00_0207ca28: ; 0x0207ca28
.global _ZN6Course18func_ov00_0207ca28Eiii
arm_func_start _ZN6Course18func_ov00_0207ca28Eiii
_ZN6Course18func_ov00_0207ca28Eiii: ; 0x0207ca28
stmdb sp!, {r3, lr}
ldr ip, [r0, #4]
add r0, r0, r1, lsl #2
@@ -2928,25 +2928,25 @@ _0207ca54:
mov r3, #0
bl func_ov00_020972e4
ldmia sp!, {r3, pc}
arm_func_end func_ov00_0207ca28
arm_func_end _ZN6Course18func_ov00_0207ca28Eiii
.global func_ov00_0207ca68
arm_func_start func_ov00_0207ca68
func_ov00_0207ca68: ; 0x0207ca68
.global _ZN6Course13SetCourseNameEPc
arm_func_start _ZN6Course13SetCourseNameEPc
_ZN6Course13SetCourseNameEPc: ; 0x0207ca68
ldr ip, _0207ca74 ; =strcpy
add r0, r0, #0xc
bx ip
.align 2, 0
arm_func_end func_ov00_0207ca68
arm_func_end _ZN6Course13SetCourseNameEPc
_0207ca74: .word strcpy
.global func_ov00_0207ca78
arm_func_start func_ov00_0207ca78
func_ov00_0207ca78: ; 0x0207ca78
.global _ZN6Course18func_ov00_0207ca78Ev
arm_func_start _ZN6Course18func_ov00_0207ca78Ev
_ZN6Course18func_ov00_0207ca78Ev: ; 0x0207ca78
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
mov r4, r2
bl func_ov00_0207d9cc
bl _ZN6Course18func_ov00_0207d9ccEi
movs r1, r0
ldmeqia sp!, {r3, r4, r5, pc}
strb r4, [r1]
@@ -2955,11 +2955,11 @@ func_ov00_0207ca78: ; 0x0207ca78
mov r2, #1
bl func_ov00_020a3510
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov00_0207ca78
arm_func_end _ZN6Course18func_ov00_0207ca78Ev
.global func_ov00_0207caa8
arm_func_start func_ov00_0207caa8
func_ov00_0207caa8: ; 0x0207caa8
.global _ZN6Course18func_ov00_0207caa8Eiii
arm_func_start _ZN6Course18func_ov00_0207caa8Eiii
_ZN6Course18func_ov00_0207caa8Eiii: ; 0x0207caa8
stmdb sp!, {r3, r4, r5, lr}
sub sp, sp, #0x10
cmp r1, #0
@@ -2994,11 +2994,11 @@ func_ov00_0207caa8: ; 0x0207caa8
strh r1, [r4, #6]
add sp, sp, #0x10
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov00_0207caa8
arm_func_end _ZN6Course18func_ov00_0207caa8Eiii
.global func_ov00_0207cb30
arm_func_start func_ov00_0207cb30
func_ov00_0207cb30: ; 0x0207cb30
.global _ZN6Course18func_ov00_0207cb30Ei
arm_func_start _ZN6Course18func_ov00_0207cb30Ei
_ZN6Course18func_ov00_0207cb30Ei: ; 0x0207cb30
stmdb sp!, {r3, lr}
sub sp, sp, #0x10
cmp r1, #0
@@ -3018,12 +3018,12 @@ func_ov00_0207cb30: ; 0x0207cb30
add sp, sp, #0x10
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov00_0207cb30
arm_func_end _ZN6Course18func_ov00_0207cb30Ei
_0207cb78: .word 0x0000ffff
.global func_ov00_0207cb7c
arm_func_start func_ov00_0207cb7c
func_ov00_0207cb7c: ; 0x0207cb7c
.global _ZN6Course18func_ov00_0207cb7cEiPS_i
arm_func_start _ZN6Course18func_ov00_0207cb7cEiPS_i
_ZN6Course18func_ov00_0207cb7cEiPS_i: ; 0x0207cb7c
stmdb sp!, {r3, r4, r5, lr}
mov lr, #0
mov r5, r1
@@ -3049,20 +3049,20 @@ _0207cb90:
strb r1, [r0]
strb r2, [r0, #1]
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov00_0207cb7c
arm_func_end _ZN6Course18func_ov00_0207cb7cEiPS_i
.global func_ov00_0207cbd8
arm_func_start func_ov00_0207cbd8
func_ov00_0207cbd8: ; 0x0207cbd8
.global _ZN6Course18func_ov00_0207cbd8Ei
arm_func_start _ZN6Course18func_ov00_0207cbd8Ei
_ZN6Course18func_ov00_0207cbd8Ei: ; 0x0207cbd8
stmdb sp!, {r3, lr}
bl func_ov00_0207d9cc
bl _ZN6Course18func_ov00_0207d9ccEi
add r0, r0, #0x14
ldmia sp!, {r3, pc}
arm_func_end func_ov00_0207cbd8
arm_func_end _ZN6Course18func_ov00_0207cbd8Ei
.global func_ov00_0207cbe8
arm_func_start func_ov00_0207cbe8
func_ov00_0207cbe8: ; 0x0207cbe8
.global _ZN6Course18func_ov00_0207cbe8Ei
arm_func_start _ZN6Course18func_ov00_0207cbe8Ei
_ZN6Course18func_ov00_0207cbe8Ei: ; 0x0207cbe8
stmdb sp!, {r3, lr}
sub sp, sp, #0x10
cmp r1, #0
@@ -3078,11 +3078,11 @@ func_ov00_0207cbe8: ; 0x0207cbe8
bl func_ov00_020a3710
add sp, sp, #0x10
ldmia sp!, {r3, pc}
arm_func_end func_ov00_0207cbe8
arm_func_end _ZN6Course18func_ov00_0207cbe8Ei
.global func_ov00_0207cc24
arm_func_start func_ov00_0207cc24
func_ov00_0207cc24: ; 0x0207cc24
.global _ZN6Course18func_ov00_0207cc24Ei
arm_func_start _ZN6Course18func_ov00_0207cc24Ei
_ZN6Course18func_ov00_0207cc24Ei: ; 0x0207cc24
stmdb sp!, {r3, lr}
sub sp, sp, #0x10
cmp r1, #0
@@ -3101,22 +3101,22 @@ func_ov00_0207cc24: ; 0x0207cc24
moveq r0, #0
add sp, sp, #0x10
ldmia sp!, {r3, pc}
arm_func_end func_ov00_0207cc24
arm_func_end _ZN6Course18func_ov00_0207cc24Ei
.global func_ov00_0207cc6c
arm_func_start func_ov00_0207cc6c
func_ov00_0207cc6c: ; 0x0207cc6c
.global _ZN6Course18func_ov00_0207cc6cEv
arm_func_start _ZN6Course18func_ov00_0207cc6cEv
_ZN6Course18func_ov00_0207cc6cEv: ; 0x0207cc6c
stmdb sp!, {r3, lr}
bl func_ov00_0207d9cc
bl _ZN6Course18func_ov00_0207d9ccEi
cmp r0, #0
moveq r0, #0
ldrne r0, [r0, #8]
ldmia sp!, {r3, pc}
arm_func_end func_ov00_0207cc6c
arm_func_end _ZN6Course18func_ov00_0207cc6cEv
.global func_ov00_0207cc84
arm_func_start func_ov00_0207cc84
func_ov00_0207cc84: ; 0x0207cc84
.global _ZN6Course14GetMCSFilePathEiii
arm_func_start _ZN6Course14GetMCSFilePathEiii
_ZN6Course14GetMCSFilePathEiii: ; 0x0207cc84
stmdb sp!, {r3, lr}
mov lr, r0
mov ip, r2
@@ -3178,7 +3178,7 @@ _0207cd3c:
bl func_0200c8d0
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov00_0207cc84
arm_func_end _ZN6Course14GetMCSFilePathEiii
_0207cd58: .word data_ov00_020e2508
_0207cd5c: .word data_ov00_020e2058
_0207cd60: .word data_ov00_020e2070
@@ -3187,9 +3187,9 @@ _0207cd68: .word data_ov00_020e20a4
_0207cd6c: .word data_ov00_020e20c0
_0207cd70: .word data_ov00_020e20d8
.global func_ov00_0207cd74
arm_func_start func_ov00_0207cd74
func_ov00_0207cd74: ; 0x0207cd74
.global _ZN6Course14GetMRCFilePathEiii
arm_func_start _ZN6Course14GetMRCFilePathEiii
_ZN6Course14GetMRCFilePathEiii: ; 0x0207cd74
stmdb sp!, {r4, lr}
mov r4, r2
cmp r3, #3
@@ -3233,7 +3233,7 @@ _0207cde0:
bl func_0200c8d0
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov00_0207cd74
arm_func_end _ZN6Course14GetMRCFilePathEiii
_0207ce08: .word data_ov00_020e250c
_0207ce0c: .word data_ov00_020e20ec
_0207ce10: .word data_ov00_020e2104
@@ -3241,9 +3241,9 @@ _0207ce14: .word data_ov00_020e211c
_0207ce18: .word data_027e0f7c
_0207ce1c: .word data_ov00_020e2134
.global func_ov00_0207ce20
arm_func_start func_ov00_0207ce20
func_ov00_0207ce20: ; 0x0207ce20
.global _ZN6Course18func_ov00_0207ce20Eiiii
arm_func_start _ZN6Course18func_ov00_0207ce20Eiiii
_ZN6Course18func_ov00_0207ce20Eiiii: ; 0x0207ce20
stmdb sp!, {r3, lr}
sub sp, sp, #8
ldr ip, [sp, #0x10]
@@ -3252,14 +3252,14 @@ func_ov00_0207ce20: ; 0x0207ce20
mov r3, r2
ldr r1, [r0]
mov r2, ip
bl func_ov00_0207ce4c
bl _ZN6Course18func_ov00_0207ce4cEccccii
add sp, sp, #8
ldmia sp!, {r3, pc}
arm_func_end func_ov00_0207ce20
arm_func_end _ZN6Course18func_ov00_0207ce20Eiiii
.global func_ov00_0207ce4c
arm_func_start func_ov00_0207ce4c
func_ov00_0207ce4c: ; 0x0207ce4c
.global _ZN6Course18func_ov00_0207ce4cEccccii
arm_func_start _ZN6Course18func_ov00_0207ce4cEccccii
_ZN6Course18func_ov00_0207ce4cEccccii: ; 0x0207ce4c
stmdb sp!, {r4, r5, r6, r7, r8, lr}
sub sp, sp, #8
ldr r4, _0207d3ac ; =data_027e0f7c
@@ -3344,7 +3344,7 @@ _0207cf38:
mov r4, #4
moveq r2, #0
str r4, [sp, #4]
bl func_ov00_0207ce4c
bl _ZN6Course18func_ov00_0207ce4cEccccii
add sp, sp, #8
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0207cf98:
@@ -3357,7 +3357,7 @@ _0207cf98:
mov r2, r5
mov r3, r4
str r7, [sp]
bl func_ov00_0207ce20
bl _ZN6Course18func_ov00_0207ce20Eiiii
add sp, sp, #8
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0207cfc8:
@@ -3627,7 +3627,7 @@ _0207d364:
add sp, sp, #8
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov00_0207ce4c
arm_func_end _ZN6Course18func_ov00_0207ce4cEccccii
_0207d3ac: .word data_027e0f7c
_0207d3b0: .word 0x66666667
_0207d3b4: .word data_ov00_020e233c
@@ -3651,9 +3651,9 @@ _0207d3f8: .word data_ov00_020e22b8
_0207d3fc: .word data_ov00_020e22d4
_0207d400: .word data_ov00_020e22e8
.global func_ov00_0207d404
arm_func_start func_ov00_0207d404
func_ov00_0207d404: ; 0x0207d404
.global _ZN6Course18func_ov00_0207d404Eiii
arm_func_start _ZN6Course18func_ov00_0207d404Eiii
_ZN6Course18func_ov00_0207d404Eiii: ; 0x0207d404
stmdb sp!, {r4, r5, r6, lr}
sub sp, sp, #0x18
mov r6, r0
@@ -3680,26 +3680,26 @@ func_ov00_0207d404: ; 0x0207d404
ldr r1, [sp, #8]
mov r0, r6
mov r3, r5
bl func_ov00_0207ce4c
bl _ZN6Course18func_ov00_0207ce4cEccccii
mov r0, #1
add sp, sp, #0x18
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov00_0207d404
arm_func_end _ZN6Course18func_ov00_0207d404Eiii
.global func_ov00_0207d47c
arm_func_start func_ov00_0207d47c
func_ov00_0207d47c: ; 0x0207d47c
ldr ip, _0207d48c ; =func_ov00_0207d490
.global _ZN6Course18func_ov00_0207d47cEv
arm_func_start _ZN6Course18func_ov00_0207d47cEv
_ZN6Course18func_ov00_0207d47cEv: ; 0x0207d47c
ldr ip, _0207d48c ; =_ZN6Course18func_ov00_0207d490Eii
ldrb r1, [r0, #0x1c]
ldrb r2, [r0, #0x1d]
bx ip
.align 2, 0
arm_func_end func_ov00_0207d47c
_0207d48c: .word func_ov00_0207d490
arm_func_end _ZN6Course18func_ov00_0207d47cEv
_0207d48c: .word _ZN6Course18func_ov00_0207d490Eii
.global func_ov00_0207d490
arm_func_start func_ov00_0207d490
func_ov00_0207d490: ; 0x0207d490
.global _ZN6Course18func_ov00_0207d490Eii
arm_func_start _ZN6Course18func_ov00_0207d490Eii
_ZN6Course18func_ov00_0207d490Eii: ; 0x0207d490
ldrb r3, [r0, #0x25c]
cmp r3, #0
moveq r0, #1
@@ -3722,29 +3722,29 @@ func_ov00_0207d490: ; 0x0207d490
_0207d4dc:
mov r0, #0
bx lr
arm_func_end func_ov00_0207d490
arm_func_end _ZN6Course18func_ov00_0207d490Eii
.global func_ov00_0207d4e4
arm_func_start func_ov00_0207d4e4
func_ov00_0207d4e4: ; 0x0207d4e4
.global _ZN6Course18func_ov00_0207d4e4Ei
arm_func_start _ZN6Course18func_ov00_0207d4e4Ei
_ZN6Course18func_ov00_0207d4e4Ei: ; 0x0207d4e4
stmdb sp!, {r3, r4, lr}
sub sp, sp, #4
mov r4, r0
mov r2, r1
add r0, sp, #0
mov r1, r4
bl func_ov00_0207cb7c
bl _ZN6Course18func_ov00_0207cb7cEiPS_i
ldrb r1, [sp]
ldrb r2, [sp, #1]
mov r0, r4
bl func_ov00_0207d490
bl _ZN6Course18func_ov00_0207d490Eii
add sp, sp, #4
ldmia sp!, {r3, r4, pc}
arm_func_end func_ov00_0207d4e4
arm_func_end _ZN6Course18func_ov00_0207d4e4Ei
.global func_ov00_0207d518
arm_func_start func_ov00_0207d518
func_ov00_0207d518: ; 0x0207d518
.global _ZN6Course18func_ov00_0207d518EiPiS0_
arm_func_start _ZN6Course18func_ov00_0207d518EiPiS0_
_ZN6Course18func_ov00_0207d518EiPiS0_: ; 0x0207d518
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r4, r1
mov r7, r0
@@ -3756,11 +3756,11 @@ func_ov00_0207d518: ; 0x0207d518
add r0, sp, #0
mov r1, r7
mov r2, r4
bl func_ov00_0207cb7c
bl _ZN6Course18func_ov00_0207cb7cEiPS_i
ldrb r1, [sp]
ldrb r2, [sp, #1]
mov r0, r7
bl func_ov00_0207d490
bl _ZN6Course18func_ov00_0207d490Eii
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
@@ -3788,11 +3788,11 @@ func_ov00_0207d518: ; 0x0207d518
str r1, [r5]
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov00_0207d518
arm_func_end _ZN6Course18func_ov00_0207d518EiPiS0_
.global func_ov00_0207d5c4
arm_func_start func_ov00_0207d5c4
func_ov00_0207d5c4: ; 0x0207d5c4
.global _ZN6Course18func_ov00_0207d5c4Ev
arm_func_start _ZN6Course18func_ov00_0207d5c4Ev
_ZN6Course18func_ov00_0207d5c4Ev: ; 0x0207d5c4
stmdb sp!, {r3, lr}
ldrb r1, [r0, #0x86]
ldrb r0, [r0, #0x87]
@@ -3804,11 +3804,11 @@ func_ov00_0207d5c4: ; 0x0207d5c4
mov r1, #0x40000
bl Divide
ldmia sp!, {r3, pc}
arm_func_end func_ov00_0207d5c4
arm_func_end _ZN6Course18func_ov00_0207d5c4Ev
.global func_ov00_0207d5f0
arm_func_start func_ov00_0207d5f0
func_ov00_0207d5f0: ; 0x0207d5f0
.global _ZN6Course18func_ov00_0207d5f0Ev
arm_func_start _ZN6Course18func_ov00_0207d5f0Ev
_ZN6Course18func_ov00_0207d5f0Ev: ; 0x0207d5f0
stmdb sp!, {r3, lr}
ldrb r1, [r0, #0x87]
ldrb r0, [r0, #0x86]
@@ -3820,27 +3820,27 @@ func_ov00_0207d5f0: ; 0x0207d5f0
mov r1, #0x30000
bl Divide
ldmia sp!, {r3, pc}
arm_func_end func_ov00_0207d5f0
arm_func_end _ZN6Course18func_ov00_0207d5f0Ev
.global func_ov00_0207d61c
arm_func_start func_ov00_0207d61c
func_ov00_0207d61c: ; 0x0207d61c
.global _ZN6Course18func_ov00_0207d61cEv
arm_func_start _ZN6Course18func_ov00_0207d61cEv
_ZN6Course18func_ov00_0207d61cEv: ; 0x0207d61c
ldr r0, [r0, #0xc8]
ldr r0, [r0]
bx lr
arm_func_end func_ov00_0207d61c
arm_func_end _ZN6Course18func_ov00_0207d61cEv
.global func_ov00_0207d628
arm_func_start func_ov00_0207d628
func_ov00_0207d628: ; 0x0207d628
.global _ZN6Course15GetUnk_c8_Unk_4Ev
arm_func_start _ZN6Course15GetUnk_c8_Unk_4Ev
_ZN6Course15GetUnk_c8_Unk_4Ev: ; 0x0207d628
ldr r0, [r0, #0xc8]
ldr r0, [r0, #4]
bx lr
arm_func_end func_ov00_0207d628
arm_func_end _ZN6Course15GetUnk_c8_Unk_4Ev
.global func_ov00_0207d634
arm_func_start func_ov00_0207d634
func_ov00_0207d634: ; 0x0207d634
.global _ZN6Course18func_ov00_0207d634Ei
arm_func_start _ZN6Course18func_ov00_0207d634Ei
_ZN6Course18func_ov00_0207d634Ei: ; 0x0207d634
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
ldrb r4, [r6, #0x1c]
@@ -3868,20 +3868,20 @@ _0207d67c:
mov r0, r6
mov r1, r4
mov r2, r5
bl func_ov00_0207d490
bl _ZN6Course18func_ov00_0207d490Eii
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
mov r0, r6
mov r1, r4
mov r2, r5
bl func_ov00_0207d6ac
bl _ZN6Course18func_ov00_0207d6acEii
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov00_0207d634
arm_func_end _ZN6Course18func_ov00_0207d634Ei
.global func_ov00_0207d6ac
arm_func_start func_ov00_0207d6ac
func_ov00_0207d6ac: ; 0x0207d6ac
.global _ZN6Course18func_ov00_0207d6acEii
arm_func_start _ZN6Course18func_ov00_0207d6acEii
_ZN6Course18func_ov00_0207d6acEii: ; 0x0207d6ac
cmp r1, #0
cmpge r2, #0
blt _0207d6c4
@@ -3900,35 +3900,35 @@ _0207d6cc:
movne r0, #1
moveq r0, #0
bx lr
arm_func_end func_ov00_0207d6ac
arm_func_end _ZN6Course18func_ov00_0207d6acEii
.global func_ov00_0207d6ec
arm_func_start func_ov00_0207d6ec
func_ov00_0207d6ec: ; 0x0207d6ec
.global _ZN6Course18func_ov00_0207d6ecEv
arm_func_start _ZN6Course18func_ov00_0207d6ecEv
_ZN6Course18func_ov00_0207d6ecEv: ; 0x0207d6ec
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
mov r5, r1
bl func_ov00_0207d634
bl _ZN6Course18func_ov00_0207d634Ei
cmp r0, #0
moveq r0, #0xff
ldmeqia sp!, {r4, r5, r6, pc}
mov r0, r6
mov r1, r5
bl func_ov00_0207d758
bl _ZN6Course18func_ov00_0207d758Ei
mov r4, r0
mov r0, r6
mov r1, r5
bl func_ov00_0207d738
bl _ZN6Course18func_ov00_0207d738Ei
mov r1, #0xa
mla r1, r0, r1, r6
add r0, r1, r4
ldrb r0, [r0, #0x20]
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov00_0207d6ec
arm_func_end _ZN6Course18func_ov00_0207d6ecEv
.global func_ov00_0207d738
arm_func_start func_ov00_0207d738
func_ov00_0207d738: ; 0x0207d738
.global _ZN6Course18func_ov00_0207d738Ei
arm_func_start _ZN6Course18func_ov00_0207d738Ei
_ZN6Course18func_ov00_0207d738Ei: ; 0x0207d738
cmp r1, #0
ldrb r0, [r0, #0x1c]
beq _0207d750
@@ -3938,11 +3938,11 @@ func_ov00_0207d738: ; 0x0207d738
_0207d750:
add r0, r0, #1
bx lr
arm_func_end func_ov00_0207d738
arm_func_end _ZN6Course18func_ov00_0207d738Ei
.global func_ov00_0207d758
arm_func_start func_ov00_0207d758
func_ov00_0207d758: ; 0x0207d758
.global _ZN6Course18func_ov00_0207d758Ei
arm_func_start _ZN6Course18func_ov00_0207d758Ei
_ZN6Course18func_ov00_0207d758Ei: ; 0x0207d758
cmp r1, #2
ldrb r0, [r0, #0x1d]
beq _0207d770
@@ -3952,58 +3952,58 @@ func_ov00_0207d758: ; 0x0207d758
_0207d770:
add r0, r0, #1
bx lr
arm_func_end func_ov00_0207d758
arm_func_end _ZN6Course18func_ov00_0207d758Ei
.global func_ov00_0207d778
arm_func_start func_ov00_0207d778
func_ov00_0207d778: ; 0x0207d778
.global _ZN6Course18func_ov00_0207d778Ev
arm_func_start _ZN6Course18func_ov00_0207d778Ev
_ZN6Course18func_ov00_0207d778Ev: ; 0x0207d778
stmdb sp!, {r3, lr}
bl func_ov00_0207da14
bl _ZN6Course18func_ov00_0207da14Ev
ldrh r0, [r0, #4]
ldmia sp!, {r3, pc}
arm_func_end func_ov00_0207d778
arm_func_end _ZN6Course18func_ov00_0207d778Ev
.global func_ov00_0207d788
arm_func_start func_ov00_0207d788
func_ov00_0207d788: ; 0x0207d788
.global _ZN6Course18func_ov00_0207d788Ev
arm_func_start _ZN6Course18func_ov00_0207d788Ev
_ZN6Course18func_ov00_0207d788Ev: ; 0x0207d788
stmdb sp!, {r3, lr}
bl func_ov00_0207d9cc
bl _ZN6Course18func_ov00_0207d9ccEi
cmp r0, #0
ldreq r0, _0207d7a0 ; =0x0000ffff
ldrneh r0, [r0, #4]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov00_0207d788
arm_func_end _ZN6Course18func_ov00_0207d788Ev
_0207d7a0: .word 0x0000ffff
.global func_ov00_0207d7a4
arm_func_start func_ov00_0207d7a4
func_ov00_0207d7a4: ; 0x0207d7a4
.global _ZN6Course18func_ov00_0207d7a4Ev
arm_func_start _ZN6Course18func_ov00_0207d7a4Ev
_ZN6Course18func_ov00_0207d7a4Ev: ; 0x0207d7a4
stmdb sp!, {r3, lr}
bl func_ov00_0207d9cc
bl _ZN6Course18func_ov00_0207d9ccEi
cmp r0, #0
moveq r0, #0
ldrne r0, [r0, #0xc]
ldmia sp!, {r3, pc}
arm_func_end func_ov00_0207d7a4
arm_func_end _ZN6Course18func_ov00_0207d7a4Ev
.global func_ov00_0207d7bc
arm_func_start func_ov00_0207d7bc
func_ov00_0207d7bc: ; 0x0207d7bc
.global _ZN6Course18func_ov00_0207d7bcEv
arm_func_start _ZN6Course18func_ov00_0207d7bcEv
_ZN6Course18func_ov00_0207d7bcEv: ; 0x0207d7bc
stmdb sp!, {r3, lr}
bl func_ov00_0207da14
bl _ZN6Course18func_ov00_0207da14Ev
ldr r2, _0207d7d8 ; =data_027e103c
ldrh r1, [r0, #4]
ldr r0, [r2]
bl func_ov00_020cf414
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov00_0207d7bc
arm_func_end _ZN6Course18func_ov00_0207d7bcEv
_0207d7d8: .word data_027e103c
.global func_ov00_0207d7dc
arm_func_start func_ov00_0207d7dc
func_ov00_0207d7dc: ; 0x0207d7dc
.global _ZN6Course18func_ov00_0207d7dcEii
arm_func_start _ZN6Course18func_ov00_0207d7dcEii
_ZN6Course18func_ov00_0207d7dcEii: ; 0x0207d7dc
cmp r2, #0
beq _0207d804
add ip, r0, #0x264
@@ -4024,11 +4024,11 @@ _0207d804:
and r0, r1, r0
str r0, [r3, r2, lsl #2]
bx lr
arm_func_end func_ov00_0207d7dc
arm_func_end _ZN6Course18func_ov00_0207d7dcEii
.global func_ov00_0207d828
arm_func_start func_ov00_0207d828
func_ov00_0207d828: ; 0x0207d828
.global _ZN6Course18func_ov00_0207d828Ei
arm_func_start _ZN6Course18func_ov00_0207d828Ei
_ZN6Course18func_ov00_0207d828Ei: ; 0x0207d828
mov r2, r1, lsr #0x5
add r0, r0, r2, lsl #2
ldr r2, [r0, #0x264]
@@ -4037,11 +4037,11 @@ func_ov00_0207d828: ; 0x0207d828
tst r2, r0, lsl r1
moveq r0, #0
bx lr
arm_func_end func_ov00_0207d828
arm_func_end _ZN6Course18func_ov00_0207d828Ei
.global func_ov00_0207d848
arm_func_start func_ov00_0207d848
func_ov00_0207d848: ; 0x0207d848
.global _ZN6Course18func_ov00_0207d848Eii
arm_func_start _ZN6Course18func_ov00_0207d848Eii
_ZN6Course18func_ov00_0207d848Eii: ; 0x0207d848
cmp r2, #0
beq _0207d870
add ip, r0, #0x268
@@ -4062,11 +4062,11 @@ _0207d870:
and r0, r1, r0
str r0, [r3, r2, lsl #2]
bx lr
arm_func_end func_ov00_0207d848
arm_func_end _ZN6Course18func_ov00_0207d848Eii
.global func_ov00_0207d894
arm_func_start func_ov00_0207d894
func_ov00_0207d894: ; 0x0207d894
.global _ZN6Course18func_ov00_0207d894Ei
arm_func_start _ZN6Course18func_ov00_0207d894Ei
_ZN6Course18func_ov00_0207d894Ei: ; 0x0207d894
mov r2, r1, lsr #0x5
add r0, r0, r2, lsl #2
ldr r2, [r0, #0x268]
@@ -4075,131 +4075,131 @@ func_ov00_0207d894: ; 0x0207d894
tst r2, r0, lsl r1
moveq r0, #0
bx lr
arm_func_end func_ov00_0207d894
arm_func_end _ZN6Course18func_ov00_0207d894Ei
.global func_ov00_0207d8b4
arm_func_start func_ov00_0207d8b4
func_ov00_0207d8b4: ; 0x0207d8b4
.global _ZN6Course18func_ov00_0207d8b4Ev
arm_func_start _ZN6Course18func_ov00_0207d8b4Ev
_ZN6Course18func_ov00_0207d8b4Ev: ; 0x0207d8b4
stmdb sp!, {r3, r4, r5, lr}
mov r5, r1
mov r4, r2
bl func_ov00_0207da14
bl _ZN6Course18func_ov00_0207da14Ev
mov r1, r5
mov r2, r4
bl func_ov00_0209740c
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov00_0207d8b4
arm_func_end _ZN6Course18func_ov00_0207d8b4Ev
.global func_ov00_0207d8d4
arm_func_start func_ov00_0207d8d4
func_ov00_0207d8d4: ; 0x0207d8d4
.global _ZN6Course18func_ov00_0207d8d4Ei
arm_func_start _ZN6Course18func_ov00_0207d8d4Ei
_ZN6Course18func_ov00_0207d8d4Ei: ; 0x0207d8d4
stmdb sp!, {r4, lr}
mov r4, r1
bl func_ov00_0207da14
bl _ZN6Course18func_ov00_0207da14Ev
mov r1, r4
bl func_ov00_02097458
ldmia sp!, {r4, pc}
arm_func_end func_ov00_0207d8d4
arm_func_end _ZN6Course18func_ov00_0207d8d4Ei
.global func_ov00_0207d8ec
arm_func_start func_ov00_0207d8ec
func_ov00_0207d8ec: ; 0x0207d8ec
.global _ZN6Course18func_ov00_0207d8ecEv
arm_func_start _ZN6Course18func_ov00_0207d8ecEv
_ZN6Course18func_ov00_0207d8ecEv: ; 0x0207d8ec
stmdb sp!, {r3, r4, r5, lr}
mov r5, r1
mov r4, r2
bl func_ov00_0207da14
bl _ZN6Course18func_ov00_0207da14Ev
mov r1, r5
mov r2, r4
bl func_ov00_02097478
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov00_0207d8ec
arm_func_end _ZN6Course18func_ov00_0207d8ecEv
.global func_ov00_0207d90c
arm_func_start func_ov00_0207d90c
func_ov00_0207d90c: ; 0x0207d90c
.global _ZN6Course18func_ov00_0207d90cEi
arm_func_start _ZN6Course18func_ov00_0207d90cEi
_ZN6Course18func_ov00_0207d90cEi: ; 0x0207d90c
stmdb sp!, {r4, lr}
mov r4, r1
bl func_ov00_0207da14
bl _ZN6Course18func_ov00_0207da14Ev
mov r1, r4
bl func_ov00_020974c4
ldmia sp!, {r4, pc}
arm_func_end func_ov00_0207d90c
arm_func_end _ZN6Course18func_ov00_0207d90cEi
.global func_ov00_0207d924
arm_func_start func_ov00_0207d924
func_ov00_0207d924: ; 0x0207d924
.global _ZN6Course18func_ov00_0207d924Ev
arm_func_start _ZN6Course18func_ov00_0207d924Ev
_ZN6Course18func_ov00_0207d924Ev: ; 0x0207d924
stmdb sp!, {r3, r4, r5, lr}
mov r5, r1
mov r4, r2
bl func_ov00_0207da14
bl _ZN6Course18func_ov00_0207da14Ev
mov r1, r5
mov r2, r4
bl func_ov00_020974e4
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov00_0207d924
arm_func_end _ZN6Course18func_ov00_0207d924Ev
.global func_ov00_0207d944
arm_func_start func_ov00_0207d944
func_ov00_0207d944: ; 0x0207d944
.global _ZN6Course18func_ov00_0207d944Ei
arm_func_start _ZN6Course18func_ov00_0207d944Ei
_ZN6Course18func_ov00_0207d944Ei: ; 0x0207d944
stmdb sp!, {r4, lr}
mov r4, r1
bl func_ov00_0207da14
bl _ZN6Course18func_ov00_0207da14Ev
mov r1, r4
bl func_ov00_02097530
ldmia sp!, {r4, pc}
arm_func_end func_ov00_0207d944
arm_func_end _ZN6Course18func_ov00_0207d944Ei
.global func_ov00_0207d95c
arm_func_start func_ov00_0207d95c
func_ov00_0207d95c: ; 0x0207d95c
.global _ZN6Course18func_ov00_0207d95cEv
arm_func_start _ZN6Course18func_ov00_0207d95cEv
_ZN6Course18func_ov00_0207d95cEv: ; 0x0207d95c
stmdb sp!, {r3, r4, r5, lr}
mov r5, r1
mov r4, r2
bl func_ov00_0207da14
bl _ZN6Course18func_ov00_0207da14Ev
mov r1, r5
mov r2, r4
bl func_ov00_02097550
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov00_0207d95c
arm_func_end _ZN6Course18func_ov00_0207d95cEv
.global func_ov00_0207d97c
arm_func_start func_ov00_0207d97c
func_ov00_0207d97c: ; 0x0207d97c
.global _ZN6Course18func_ov00_0207d97cEi
arm_func_start _ZN6Course18func_ov00_0207d97cEi
_ZN6Course18func_ov00_0207d97cEi: ; 0x0207d97c
stmdb sp!, {r4, lr}
mov r4, r1
bl func_ov00_0207da14
bl _ZN6Course18func_ov00_0207da14Ev
mov r1, r4
bl func_ov00_0209759c
ldmia sp!, {r4, pc}
arm_func_end func_ov00_0207d97c
arm_func_end _ZN6Course18func_ov00_0207d97cEi
.global func_ov00_0207d994
arm_func_start func_ov00_0207d994
func_ov00_0207d994: ; 0x0207d994
.global _ZN6Course18func_ov00_0207d994Ev
arm_func_start _ZN6Course18func_ov00_0207d994Ev
_ZN6Course18func_ov00_0207d994Ev: ; 0x0207d994
stmdb sp!, {r3, r4, r5, lr}
mov r5, r1
mov r4, r2
bl func_ov00_0207da14
bl _ZN6Course18func_ov00_0207da14Ev
mov r1, r5
mov r2, r4
bl func_ov00_020975bc
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov00_0207d994
arm_func_end _ZN6Course18func_ov00_0207d994Ev
.global func_ov00_0207d9b4
arm_func_start func_ov00_0207d9b4
func_ov00_0207d9b4: ; 0x0207d9b4
.global _ZN6Course18func_ov00_0207d9b4Ei
arm_func_start _ZN6Course18func_ov00_0207d9b4Ei
_ZN6Course18func_ov00_0207d9b4Ei: ; 0x0207d9b4
stmdb sp!, {r4, lr}
mov r4, r1
bl func_ov00_0207da14
bl _ZN6Course18func_ov00_0207da14Ev
mov r1, r4
bl func_ov00_02097608
ldmia sp!, {r4, pc}
arm_func_end func_ov00_0207d9b4
arm_func_end _ZN6Course18func_ov00_0207d9b4Ei
.global func_ov00_0207d9cc
arm_func_start func_ov00_0207d9cc
func_ov00_0207d9cc: ; 0x0207d9cc
.global _ZN6Course18func_ov00_0207d9ccEi
arm_func_start _ZN6Course18func_ov00_0207d9ccEi
_ZN6Course18func_ov00_0207d9ccEi: ; 0x0207d9cc
ldrb r2, [r0, #0xb0]
mov ip, #0
cmp r2, #0
@@ -4221,22 +4221,22 @@ _0207d9fc:
_0207da0c:
mov r0, #0
bx lr
arm_func_end func_ov00_0207d9cc
arm_func_end _ZN6Course18func_ov00_0207d9ccEi
.global func_ov00_0207da14
arm_func_start func_ov00_0207da14
func_ov00_0207da14: ; 0x0207da14
.global _ZN6Course18func_ov00_0207da14Ev
arm_func_start _ZN6Course18func_ov00_0207da14Ev
_ZN6Course18func_ov00_0207da14Ev: ; 0x0207da14
ldrb r3, [r0, #0x1c]
mov r1, #0xa
ldrb r2, [r0, #0x1d]
mla r1, r3, r1, r0
add r1, r1, r2
ldr ip, _0207da34 ; =func_ov00_0207d9cc
ldr ip, _0207da34 ; =_ZN6Course18func_ov00_0207d9ccEi
ldrb r1, [r1, #0x20]
bx ip
.align 2, 0
arm_func_end func_ov00_0207da14
_0207da34: .word func_ov00_0207d9cc
arm_func_end _ZN6Course18func_ov00_0207da14Ev
_0207da34: .word _ZN6Course18func_ov00_0207d9ccEi
.global func_ov00_0207da38
arm_func_start func_ov00_0207da38
@@ -4457,7 +4457,7 @@ func_ov00_0207dce4: ; 0x0207dce4
mov r2, r3, lsl #0xc
str r5, [sp]
str r2, [sp, #4]
bl func_ov00_0207cbd8
bl _ZN6Course18func_ov00_0207cbd8Ei
mov ip, r5
add r5, sp, #0x20
ldmia r0, {r0, r1, r2}
+10 -10
View File
@@ -428,16 +428,16 @@
.extern func_ov00_0207c000
.extern func_ov00_0207c030
.extern func_ov00_0207c074
.extern func_ov00_0207ca68
.extern func_ov00_0207ca78
.extern func_ov00_0207cb7c
.extern func_ov00_0207cc84
.extern func_ov00_0207cd74
.extern func_ov00_0207ce20
.extern func_ov00_0207d4e4
.extern func_ov00_0207d7a4
.extern func_ov00_0207d7bc
.extern func_ov00_0207d9cc
.extern _ZN6Course13SetCourseNameEPc
.extern _ZN6Course18func_ov00_0207ca78Ev
.extern _ZN6Course18func_ov00_0207cb7cEiPS_i
.extern _ZN6Course14GetMCSFilePathEiii
.extern _ZN6Course14GetMRCFilePathEiii
.extern _ZN6Course18func_ov00_0207ce20Eiiii
.extern _ZN6Course18func_ov00_0207d4e4Ei
.extern _ZN6Course18func_ov00_0207d7a4Ev
.extern _ZN6Course18func_ov00_0207d7bcEv
.extern _ZN6Course18func_ov00_0207d9ccEi
.extern func_ov00_0207dce4
.extern func_ov00_0207dda0
.extern func_ov00_0207ddf8
+23 -23
View File
@@ -3141,7 +3141,7 @@ func_ov04_02102264: ; 0x02102264
beq _021022fc
ldr r1, [r5]
add r0, sp, #0x18
blx func_ov00_0207cb7c
blx _ZN6Course18func_ov00_0207cb7cEiPS_i
add r0, sp, #0x18
ldrb r2, [r0]
ldr r1, [r5]
@@ -3221,7 +3221,7 @@ _02102382:
ldr r2, [sp, #0x120]
add r1, sp, #0xd8
mov r3, #1
blx func_ov00_0207cc84
blx _ZN6Course14GetMCSFilePathEiii
ldr r0, _021024a8 ; =data_02057878
mov r2, #0
str r0, [sp, #0x84]
@@ -3242,7 +3242,7 @@ _02102382:
ldr r2, [sp, #0x120]
add r1, sp, #0xd8
mov r3, #2
blx func_ov00_0207cc84
blx _ZN6Course14GetMCSFilePathEiii
mov r2, #0
ldr r0, _021024a8 ; =data_02057878
str r2, [sp, #0x78]
@@ -3264,7 +3264,7 @@ _02102382:
ldr r2, [sp, #0x120]
add r1, sp, #0xd8
mov r3, #2
blx func_ov00_0207cc84
blx _ZN6Course14GetMCSFilePathEiii
mov r2, #0
ldr r0, _021024a8 ; =data_02057878
str r2, [sp, #0x64]
@@ -3286,7 +3286,7 @@ _02102382:
ldr r2, [sp, #0x120]
add r1, #2
mov r3, #3
blx func_ov00_0207cc84
blx _ZN6Course14GetMCSFilePathEiii
ldr r0, [r5, #4]
add r1, sp, #0x18
ldr r2, [r0]
@@ -23699,7 +23699,7 @@ _0210c218:
add r0, sp, #8
add r1, r4, #0
add r2, r6, #0
blx func_ov00_0207cb7c
blx _ZN6Course18func_ov00_0207cb7cEiPS_i
strb r6, [r5, #0x13]
add r0, sp, #8
ldrb r1, [r0, #1]
@@ -23719,7 +23719,7 @@ _0210c218:
add r0, r4, #0
add r1, r6, #0
add r3, sp
blx func_ov00_0207ce20
blx _ZN6Course18func_ov00_0207ce20Eiiii
add r0, r5, #0
ldr r2, [r0]
ldr r1, _0210c3e4 ; =0x000004c0
@@ -23733,7 +23733,7 @@ _0210c218:
add r0, r4, #0
add r1, r6, #0
add r3, sp
blx func_ov00_0207ce20
blx _ZN6Course18func_ov00_0207ce20Eiiii
ldr r0, _0210c3ec ; =data_027e0f6c
ldr r1, _0210c3e8 ; =0x00000440
ldr r0, [r0]
@@ -23750,7 +23750,7 @@ _0210c218:
add r0, r4, #0
add r1, r6, #0
add r3, sp
blx func_ov00_0207ce20
blx _ZN6Course18func_ov00_0207ce20Eiiii
mov r0, #0
str r0, [sp, #0xc]
ldr r0, _0210c3d8 ; =0x00000540
@@ -23773,7 +23773,7 @@ _0210c218:
add r0, r4, #0
add r1, r6, #0
mov r2, #1
blx func_ov00_0207ca78
blx _ZN6Course18func_ov00_0207ca78Ev
add r0, r5, #0
ldr r1, [r0]
ldr r1, [r1, #0x14]
@@ -23802,7 +23802,7 @@ _0210c342:
add r0, r4, #0
add r1, r6, #0
add r3, sp
blx func_ov00_0207ce20
blx _ZN6Course18func_ov00_0207ce20Eiiii
ldr r0, _0210c3f0 ; =data_027e103c
ldr r1, _0210c3d8 ; =0x00000540
ldr r0, [r0]
@@ -23814,7 +23814,7 @@ _0210c342:
cmp r0, #0
beq _0210c370
add r0, r4, #0
blx func_ov00_0207d7bc
blx _ZN6Course18func_ov00_0207d7bcEv
_0210c370:
ldr r0, _0210c3f4 ; =data_027e0d38
ldr r1, [r0]
@@ -23906,7 +23906,7 @@ func_ov04_0210c3fc: ; 0x0210c3fc
ldr r2, [r5, #0x24]
add r0, r6, #0
add r3, sp, #0x2c
blx func_ov00_0207ce20
blx _ZN6Course18func_ov00_0207ce20Eiiii
mov r2, #0
ldr r0, _0210c4f8 ; =data_02057878
str r2, [sp, #0x20]
@@ -23927,7 +23927,7 @@ func_ov04_0210c3fc: ; 0x0210c3fc
ldr r2, [r5, #0x24]
add r0, r6, #0
add r3, sp, #0x6c
blx func_ov00_0207ce20
blx _ZN6Course18func_ov00_0207ce20Eiiii
mov r1, #0
ldr r0, _0210c4f8 ; =data_02057878
str r1, [sp, #0xc]
@@ -24922,7 +24922,7 @@ func_ov04_0210cc20: ; 0x0210cc20
ldrb r1, [r4, #0x13]
ldr r2, [r4, #0x24]
add r3, sp, #0x10
blx func_ov00_0207ce20
blx _ZN6Course18func_ov00_0207ce20Eiiii
mov r0, #0
str r0, [sp, #0xc]
add r0, sp, #0x10
@@ -24951,7 +24951,7 @@ func_ov04_0210cc58: ; 0x0210cc58
bne _0210cc72
add r0, r1, #0
add r1, r2, #0
blx func_ov00_0207d7a4
blx _ZN6Course18func_ov00_0207d7a4Ev
add r1, r0, #0
ldr r0, _0210cc78 ; =gOverlayManager
bl func_ov03_020faa64
@@ -28840,7 +28840,7 @@ func_ov04_0210ee84: ; 0x0210ee84
sub sp, #0xa8
add r4, r1, #0
add r5, r0, #0
blx func_ov00_0207ca68
blx _ZN6Course13SetCourseNameEPc
ldr r0, [r4, #0x20]
mov r2, #0x2c
str r0, [r5, #4]
@@ -28925,7 +28925,7 @@ _0210ef12:
add r0, r5, #0
add r1, sp, #0x28
add r3, r2, #0
blx func_ov00_0207cc84
blx _ZN6Course14GetMCSFilePathEiii
mov r1, #0
ldr r0, _0210ef88 ; =data_02057878
str r1, [sp, #0x1c]
@@ -28973,7 +28973,7 @@ func_ov04_0210ef90: ; 0x0210ef90
mov r3, #0
add r5, r0, #0
add r4, r1, #0
blx func_ov00_0207cd74
blx _ZN6Course14GetMRCFilePathEiii
mov r1, #0
ldr r0, _0210f004 ; =data_02057878
str r1, [sp, #0x14]
@@ -29104,7 +29104,7 @@ func_ov04_0210f07c: ; 0x0210f07c
ldrb r1, [r4]
cmp r1, #0xff
beq _0210f0f4
blx func_ov00_0207d9cc
blx _ZN6Course18func_ov00_0207d9ccEi
cmp r0, #0
bne _0210f0f4
ldr r1, _0210f0f8 ; =data_027e0ce0
@@ -29296,20 +29296,20 @@ _0210f1ea:
add r0, #2
add r1, r5, #0
add r2, r7, #0
blx func_ov00_0207cb7c
blx _ZN6Course18func_ov00_0207cb7cEiPS_i
add r0, sp, #0x18
ldrb r0, [r0, #2]
add r1, r5, #0
add r2, r7, #0
str r0, [sp, #4]
add r0, sp, #0x18
blx func_ov00_0207cb7c
blx _ZN6Course18func_ov00_0207cb7cEiPS_i
add r0, sp, #0x18
ldrb r0, [r0, #1]
add r1, r7, #0
str r0, [sp]
add r0, r5, #0
blx func_ov00_0207d4e4
blx _ZN6Course18func_ov00_0207d4e4Ei
cmp r0, #0
beq _0210f284
add r1, r5, #0
+6 -6
View File
@@ -419,12 +419,12 @@
.extern func_ov00_0207c444
.extern func_ov00_0207c474
.extern func_ov00_0207c518
.extern func_ov00_0207ca78
.extern func_ov00_0207cb7c
.extern func_ov00_0207ce20
.extern func_ov00_0207d634
.extern func_ov00_0207d6ec
.extern func_ov00_0207d7bc
.extern _ZN6Course18func_ov00_0207ca78Ev
.extern _ZN6Course18func_ov00_0207cb7cEiPS_i
.extern _ZN6Course18func_ov00_0207ce20Eiiii
.extern _ZN6Course18func_ov00_0207d634Ei
.extern _ZN6Course18func_ov00_0207d6ecEv
.extern _ZN6Course18func_ov00_0207d7bcEv
.extern func_ov00_0207da38
.extern func_ov00_0207dce4
.extern func_ov00_0207dda0
+11 -11
View File
@@ -11705,7 +11705,7 @@ _02129058:
add r0, sp, #8
mov r1, r4
mov r2, r6
bl func_ov00_0207cb7c
bl _ZN6Course18func_ov00_0207cb7cEiPS_i
strb r6, [r7, #0x13]
ldrb r3, [sp, #9]
ldrb r2, [sp, #8]
@@ -11724,7 +11724,7 @@ _02129058:
mov r0, r4
mov r1, r6
add r3, r3, #0xa8
bl func_ov00_0207ce20
bl _ZN6Course18func_ov00_0207ce20Eiiii
mov r0, #0
str r0, [sp, #0xc]
add r0, sp, #0x400
@@ -11749,7 +11749,7 @@ _02129058:
mov r0, r4
mov r1, r6
add r3, sp, #0x10
bl func_ov00_0207ce20
bl _ZN6Course18func_ov00_0207ce20Eiiii
ldr r0, _0212923c ; =data_027e0f6c
add r1, sp, #0x10
ldr r0, [r0]
@@ -11761,7 +11761,7 @@ _02129058:
mov r0, r4
mov r1, r6
mov r2, #1
bl func_ov00_0207ca78
bl _ZN6Course18func_ov00_0207ca78Ev
mov r0, r7
ldr r1, [r0]
ldr r1, [r1, #0x14]
@@ -11773,7 +11773,7 @@ _02129058:
mov r1, r6
mov r0, r4
add r3, r3, #0xa8
bl func_ov00_0207ce20
bl _ZN6Course18func_ov00_0207ce20Eiiii
ldr r0, _02129240 ; =data_027e103c
add r1, sp, #0x400
ldr r0, [r0]
@@ -11783,7 +11783,7 @@ _02129058:
cmp r0, #0
beq _02129210
mov r0, r4
bl func_ov00_0207d7bc
bl _ZN6Course18func_ov00_0207d7bcEv
_02129210:
mov r0, r7
mov r1, r4
@@ -11869,7 +11869,7 @@ func_ov15_0212925c: ; 0x0212925c
_02129300:
mov r0, r8
mov r1, r7
bl func_ov00_0207d634
bl _ZN6Course18func_ov00_0207d634Ei
cmp r0, #0
beq _021296ac
ldr r1, _021296c4 ; =data_027e0ce0
@@ -11895,7 +11895,7 @@ _0212935c:
str r0, [r1, #0x188]
mov r0, r8
mov r1, r7
bl func_ov00_0207d6ec
bl _ZN6Course18func_ov00_0207d6ecEv
mov r1, #0
str r1, [sp, #0x10]
mov r1, #0x47
@@ -11922,7 +11922,7 @@ _0212935c:
str r0, [sp, #0x18]
mov r0, r8
mov r1, r7
bl func_ov00_0207d634
bl _ZN6Course18func_ov00_0207d634Ei
cmp r0, #0
beq _021293f8
mov r0, r9
@@ -12044,7 +12044,7 @@ _0212953c:
_02129598:
mov r0, r8
mov r1, r7
bl func_ov00_0207d634
bl _ZN6Course18func_ov00_0207d634Ei
cmp r0, #0
beq _021295ec
mov r0, r9
@@ -12096,7 +12096,7 @@ _0212960c:
bl func_ov00_02093a5c
mov r0, r8
mov r1, r7
bl func_ov00_0207d634
bl _ZN6Course18func_ov00_0207d634Ei
cmp r0, #0
beq _0212969c
mov r0, r9
+2 -2
View File
@@ -231,8 +231,8 @@
.extern func_ov00_0207c2e8
.extern func_ov00_0207c444
.extern func_ov00_0207c474
.extern func_ov00_0207d634
.extern func_ov00_0207d6ec
.extern _ZN6Course18func_ov00_0207d634Ei
.extern _ZN6Course18func_ov00_0207d6ecEv
.extern func_ov00_0207da38
.extern func_ov00_0207ddf4
.extern func_ov00_0207e060
+2 -2
View File
@@ -345,7 +345,7 @@ func_ov18_0215b86c: ; 0x0215b86c
_0215b934:
mov r0, r8
mov r1, r7
bl func_ov00_0207d634
bl _ZN6Course18func_ov00_0207d634Ei
cmp r0, #0
beq _0215bd54
ldr r1, _0215bd74 ; =data_027e0ce0
@@ -371,7 +371,7 @@ _0215b990:
str r0, [r1, #0x190]
mov r0, r8
mov r1, r7
bl func_ov00_0207d6ec
bl _ZN6Course18func_ov00_0207d6ecEv
mov r1, #0
str r1, [sp, #0xc]
mov r1, #0x47
+114
View File
@@ -0,0 +1,114 @@
#pragma once
#include "global.h"
#include "types.h"
#include "Physics/AABB.hpp"
#include "System/SysNew.hpp"
typedef unk32 CourseType;
enum CourseType_ {
CourseType_Normal = 0,
CourseType_Dungeon = 1,
CourseType_Sea = 2,
CourseType_TempleOfTheOceanKing = 3,
CourseType_Battle = 4,
};
struct CourseProgress {
/* 0 */ unk32 flags;
/* 4 */ s8 numKeys;
/* 5 */ bool blueWarpOpen;
/* 6 */
};
class Course : public SysObject {
/* 000 */ unk32 mIndex;
/* 004 */ CourseType mType;
/* 008 */ unk32 mUnk_008;
/* 00c */ char mName[0x10];
/* 01c */ unk8 mUnk_01c;
/* 01d */ unk8 mUnk_01d;
/* 01e */ unk8 mUnk_01e;
/* 01f */ unk8 mUnk_01f;
/* 020 */ unk8 mUnk_020[0x64];
/* 084 */ s8 mUnk_084;
/* 084 */ s8 mUnk_085;
/* 084 */ s8 mUnk_086;
/* 084 */ s8 mUnk_087;
/* 088 */ unk32 mUnk_088;
/* 08c */ unk32 mUnk_08c;
/* 090 */ unk32 mUnk_090;
/* 094 */ unk32 mUnk_094;
/* 098 */ AABB mBounds;
/* 0b0 */ s8 mUnk_0b0;
/* 0b1 */ unk8 mUnk_0b1;
/* 0b2 */ unk8 mUnk_0b2;
/* 0b3 */ unk8 mUnk_0b3;
/* 0b4 */ unk32 mUnk_0b4;
/* 0b8 */ unk32 mUnk_0b8;
/* 0bc */ unk32 mUnk_0bc;
/* 0c0 */ unk32 mUnk_0c0;
/* 0c4 */ unk32 mUnk_0c4;
/* 0c8 */ void *mUnk_0c8;
/* 0cc */ unk32 mUnk_0cc;
/* 0d0 */ unk8 mUnk_0d0[0x18c];
/* 25c */ bool mUnk_25c;
/* 25d */ bool mBlueWarpOpen;
/* 25e */ unk8 mUnk_25e;
/* 25f */ unk8 mUnk_25f;
/* 260 */ unk32 mNumKeys;
/* 264 */ unk32 mUnk_264;
/* 268 */ unk32 mFlags; // knows which doors are open in a dungeon
/* 26c */
unk8 GetDungeonProgress(CourseProgress *param_2);
unk8 func_ov00_0207ca28(unk32 param_2, unk32 param_3, unk32 param_4);
char * SetCourseName(char *src);
static unk8 func_ov00_0207ca78();
bool func_ov00_0207caa8(unk32 param_2, unk32 param_3, unk32 param_4);
unk32 func_ov00_0207cb30(unk32 param_2);
static unk8 func_ov00_0207cb7c(unk32 param_1, Course *param_2, unk32 param_3);
Vec3p * func_ov00_0207cbd8(unk32 param_2);
void func_ov00_0207cbe8(unk32 param_2);
unk8 func_ov00_0207cc24(unk32 param_2);
unk32 func_ov00_0207cc6c();
void GetMCSFilePath(unk32 buf, s32 fileIndex, unk32 fileType);
void GetMRCFilePath(unk32 param_2, unk32 buf, unk32 param_4);
unk8 func_ov00_0207ce20(unk32 param_2, unk32 param_3, unk32 param_4, unk32 param_5);
static unk8 func_ov00_0207ce4c(unk8 param_1, unk8 param_2, unk8 param_3, unk8 param_4, unk32 param_5, unk32 param_6);
bool func_ov00_0207d404(unk32 param_2, unk32 param_3, unk32 param_4);
bool func_ov00_0207d47c();
bool func_ov00_0207d490(unk32 param_2, unk32 param_3);
bool func_ov00_0207d4e4(unk32 param_2);
bool func_ov00_0207d518(s32 param_2, s32 *param_3, s32 *param_4);
unk8 func_ov00_0207d5c4();
unk8 func_ov00_0207d5f0();
unk8 func_ov00_0207d61c();
unk8 GetUnk_c8_Unk_4();
bool func_ov00_0207d634(unk32 param_2);
unk8 func_ov00_0207d6ac(unk32 param_2, unk32 param_3);
static unk8 func_ov00_0207d6ec();
unk8 func_ov00_0207d738(unk32 param_2);
unk8 func_ov00_0207d758(unk32 param_2);
static unk8 func_ov00_0207d778();
static unk8 func_ov00_0207d788();
static unk8 func_ov00_0207d7a4();
void func_ov00_0207d7bc();
unk8 func_ov00_0207d7dc(unk32 param_2, unk32 param_3);
unk8 func_ov00_0207d828(unk32 param_2);
unk8 func_ov00_0207d848(unk32 param_2, unk32 param_3);
unk8 func_ov00_0207d894(unk32 param_2);
static unk8 func_ov00_0207d8b4();
bool func_ov00_0207d8d4(unk32 param_2);
static unk8 func_ov00_0207d8ec();
bool func_ov00_0207d90c(unk32 param_2);
static unk8 func_ov00_0207d924();
bool func_ov00_0207d944(unk32 param_2);
static unk8 func_ov00_0207d95c();
bool func_ov00_0207d97c(unk32 param_2);
static unk8 func_ov00_0207d994();
bool func_ov00_0207d9b4(unk32 param_2);
unk32 func_ov00_0207d9cc(unk32 param_2);
s32 func_ov00_0207da14();
};
+55
View File
@@ -0,0 +1,55 @@
#include "Map/Course.hpp"
#ifdef STUBS
unk8 Course::GetDungeonProgress(CourseProgress *param_2) {}
unk8 Course::func_ov00_0207ca28(unk32 param_2, unk32 param_3, unk32 param_4) {}
char * Course::SetCourseName(char *src) {}
unk8 Course::func_ov00_0207ca78() {}
bool Course::func_ov00_0207caa8(unk32 param_2, unk32 param_3, unk32 param_4) {}
unk32 Course::func_ov00_0207cb30(unk32 param_2) {}
unk8 Course::func_ov00_0207cb7c(unk32 param_1, Course *param_2, unk32 param_3) {}
Vec3p * Course::func_ov00_0207cbd8(unk32 param_2) {}
void Course::func_ov00_0207cbe8(unk32 param_2) {}
unk8 Course::func_ov00_0207cc24(unk32 param_2) {}
unk32 Course::func_ov00_0207cc6c() {}
void Course::GetMCSFilePath(unk32 buf, s32 fileIndex, unk32 fileType) {}
void Course::GetMRCFilePath(unk32 param_2, unk32 buf, unk32 param_4) {}
unk8 Course::func_ov00_0207ce20(unk32 param_2, unk32 param_3, unk32 param_4, unk32 param_5) {}
unk8 Course::func_ov00_0207ce4c(unk8 param_1, unk8 param_2, unk8 param_3, unk8 param_4, unk32 param_5, unk32 param_6) {}
bool Course::func_ov00_0207d404(unk32 param_2, unk32 param_3, unk32 param_4) {}
bool Course::func_ov00_0207d47c() {}
bool Course::func_ov00_0207d490(unk32 param_2, unk32 param_3) {}
bool Course::func_ov00_0207d4e4(unk32 param_2) {}
bool Course::func_ov00_0207d518(s32 param_2, s32 *param_3, s32 *param_4) {}
unk8 Course::func_ov00_0207d5c4() {}
unk8 Course::func_ov00_0207d5f0() {}
unk8 Course::func_ov00_0207d61c() {}
unk8 Course::GetUnk_c8_Unk_4() {}
bool Course::func_ov00_0207d634(unk32 param_2) {}
unk8 Course::func_ov00_0207d6ac(unk32 param_2, unk32 param_3) {}
unk8 Course::func_ov00_0207d6ec() {}
unk8 Course::func_ov00_0207d738(unk32 param_2) {}
unk8 Course::func_ov00_0207d758(unk32 param_2) {}
unk8 Course::func_ov00_0207d778() {}
unk8 Course::func_ov00_0207d788() {}
unk8 Course::func_ov00_0207d7a4() {}
void Course::func_ov00_0207d7bc() {}
unk8 Course::func_ov00_0207d7dc(unk32 param_2, unk32 param_3) {}
unk8 Course::func_ov00_0207d828(unk32 param_2) {}
unk8 Course::func_ov00_0207d848(unk32 param_2, unk32 param_3) {}
unk8 Course::func_ov00_0207d894(unk32 param_2) {}
unk8 Course::func_ov00_0207d8b4() {}
bool Course::func_ov00_0207d8d4(unk32 param_2) {}
unk8 Course::func_ov00_0207d8ec() {}
bool Course::func_ov00_0207d90c(unk32 param_2) {}
unk8 Course::func_ov00_0207d924() {}
bool Course::func_ov00_0207d944(unk32 param_2) {}
unk8 Course::func_ov00_0207d95c() {}
bool Course::func_ov00_0207d97c(unk32 param_2) {}
unk8 Course::func_ov00_0207d994() {}
bool Course::func_ov00_0207d9b4(unk32 param_2) {}
unk32 Course::func_ov00_0207d9cc(unk32 param_2) {}
s32 Course::func_ov00_0207da14() {}
#endif