2298 lines
52 KiB
NASM
Executable File
2298 lines
52 KiB
NASM
Executable File
; Listing generated by Microsoft (R) Optimizing Compiler Version 14.00.50727
|
|
|
|
TTL d:\MyProject\VS2005\Tcpmp\tcpmp\asap\atari800\src\pokeysnd.c
|
|
CODE32
|
|
|
|
AREA |.drectve|, DRECTVE
|
|
DCB "-defaultlib:LIBCMT "
|
|
DCB "-defaultlib:OLDNAMES "
|
|
|
|
EXPORT |snd_playback_freq| [ DATA ]
|
|
EXPORT |snd_num_pokeys| [ DATA ]
|
|
EXPORT |enable_new_pokey| [ DATA ]
|
|
EXPORT |Pokey_process_ptr| [ DATA ]
|
|
EXPORT |Update_pokey_sound| [ DATA ]
|
|
|
|
AREA |.bss|, NOINIT
|
|
|P4| % 0x4
|
|
|P5| % 0x4
|
|
|P9| % 0x4
|
|
|P17| % 0x4
|
|
|snd_flags| % 0x4
|
|
|mz_quality| % 0x4
|
|
|
|
AREA |.data|, DATA
|
|
|bit4| DCB 0x1
|
|
DCB 0x1
|
|
DCB 0x1
|
|
DCB 0x1
|
|
DCB 0x0
|
|
DCB 0x0
|
|
DCB 0x0
|
|
DCB 0x1
|
|
DCB 0x0
|
|
DCB 0x0
|
|
DCB 0x1
|
|
DCB 0x1
|
|
DCB 0x0
|
|
DCB 0x1
|
|
DCB 0x0
|
|
|snd_num_pokeys| DCB 0x1
|
|
|bit5| DCB 0x1
|
|
DCB 0x1
|
|
DCB 0x1
|
|
DCB 0x1
|
|
DCB 0x0
|
|
DCB 0x1
|
|
DCB 0x1
|
|
DCB 0x0
|
|
DCB 0x1
|
|
DCB 0x0
|
|
DCB 0x0
|
|
DCB 0x1
|
|
DCB 0x1
|
|
DCB 0x0
|
|
DCB 0x0
|
|
DCB 0x0
|
|
DCB 0x0
|
|
DCB 0x0
|
|
DCB 0x1
|
|
DCB 0x1
|
|
DCB 0x1
|
|
DCB 0x0
|
|
DCB 0x0
|
|
DCB 0x1
|
|
DCB 0x0
|
|
DCB 0x0
|
|
DCB 0x0
|
|
DCB 0x1
|
|
DCB 0x0
|
|
DCB 0x1
|
|
DCB 0x0
|
|
% 1
|
|
|snd_freq17| DCD 0x1b4f5e
|
|
|snd_playback_freq| DCD 0xac44
|
|
|enable_new_pokey| DCD 0x1
|
|
|Pokey_process_ptr| DCD |null_pokey_process|
|
|
|Update_pokey_sound| DCD |null_pokey_sound|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1408| DCD |$LN5@null_pokey|
|
|
DCD 0x40000403
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|null_pokey_process| PROC
|
|
; File d:\myproject\vs2005\tcpmp\tcpmp\asap\atari800\src\pokeysnd.c
|
|
; Line 163
|
|
|$LN5@null_pokey|
|
|
mov r12, sp
|
|
stmdb sp!, {r0, r1}
|
|
stmdb sp!, {r12, lr}
|
|
|$M1405|
|
|
ldmia sp, {sp, pc}
|
|
|$M1406|
|
|
|
|
ENDP ; |null_pokey_process|
|
|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1413| DCD |$LN5@null_pokey@2|
|
|
DCD 0x40000403
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|null_pokey_sound| PROC
|
|
; Line 167
|
|
|$LN5@null_pokey@2|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r3}
|
|
stmdb sp!, {r12, lr}
|
|
|$M1410|
|
|
ldmia sp, {sp, pc}
|
|
|$M1411|
|
|
|
|
ENDP ; |null_pokey_sound|
|
|
|
|
EXPORT |Pokey_DoInit|
|
|
IMPORT |Pokey_sound_init_mz|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1420| DCD |$LN7@Pokey_DoIn|
|
|
DCD 0x40003002
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|Pokey_DoInit| PROC
|
|
; Line 238
|
|
|$LN7@Pokey_DoIn|
|
|
str lr, [sp, #-4]!
|
|
sub sp, sp, #0x14
|
|
|$M1417|
|
|
; Line 239
|
|
ldr r3, [pc, #0xAC]
|
|
ldr r3, [r3]
|
|
cmp r3, #0
|
|
beq |$LN2@Pokey_DoIn|
|
|
; Line 245
|
|
ldr r3, [pc, #0x98]
|
|
ldr r3, [r3]
|
|
str r3, [sp]
|
|
ldr r3, [pc, #0x88]
|
|
ldr r3, [r3]
|
|
ldr r2, [pc, #0x7C]
|
|
ldrb r2, [r2]
|
|
ldr r1, [pc, #0x70]
|
|
ldr r1, [r1]
|
|
mov r1, r1, lsl #16
|
|
mov r1, r1, lsr #16
|
|
ldr r0, [pc, #0x5C]
|
|
ldr r0, [r0]
|
|
bl Pokey_sound_init_mz
|
|
str r0, [sp, #0xC]
|
|
ldr r3, [sp, #0xC]
|
|
str r3, [sp, #8]
|
|
b |$LN3@Pokey_DoIn|
|
|
; Line 246
|
|
b |$LN1@Pokey_DoIn|
|
|
|$LN2@Pokey_DoIn|
|
|
; Line 248
|
|
ldr r3, [pc, #0x48]
|
|
ldr r3, [r3]
|
|
ldr r2, [pc, #0x3C]
|
|
ldrb r2, [r2]
|
|
ldr r1, [pc, #0x30]
|
|
ldr r1, [r1]
|
|
mov r1, r1, lsl #16
|
|
mov r1, r1, lsr #16
|
|
ldr r0, [pc, #0x1C]
|
|
ldr r0, [r0]
|
|
bl Pokey_sound_init_rf
|
|
str r0, [sp, #0x10]
|
|
ldr r3, [sp, #0x10]
|
|
str r3, [sp, #8]
|
|
|$LN1@Pokey_DoIn|
|
|
|$LN3@Pokey_DoIn|
|
|
; Line 249
|
|
ldr r0, [sp, #8]
|
|
add sp, sp, #0x14
|
|
ldr pc, [sp], #4
|
|
|$LN8@Pokey_DoIn|
|
|
DCD |snd_freq17|
|
|
DCD |snd_playback_freq|
|
|
DCD |snd_num_pokeys|
|
|
DCD |snd_flags|
|
|
DCD |mz_quality|
|
|
DCD |enable_new_pokey|
|
|
|$M1418|
|
|
|
|
ENDP ; |Pokey_DoInit|
|
|
|
|
EXPORT |Pokey_sound_init|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1427| DCD |$LN5@Pokey_soun|
|
|
DCD 0x40001c04
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|Pokey_sound_init| PROC
|
|
; Line 257
|
|
|$LN5@Pokey_soun|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r3}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #8
|
|
|$M1424|
|
|
; Line 258
|
|
ldr r2, [sp, #0x10]
|
|
ldr r3, [pc, #0x50]
|
|
str r2, [r3]
|
|
; Line 259
|
|
ldrh r3, [sp, #0x14]
|
|
mov r2, r3
|
|
ldr r3, [pc, #0x3C]
|
|
str r2, [r3]
|
|
; Line 260
|
|
ldrb r2, [sp, #0x18]
|
|
ldr r3, [pc, #0x2C]
|
|
strb r2, [r3]
|
|
; Line 261
|
|
ldr r2, [sp, #0x1C]
|
|
ldr r3, [pc, #0x1C]
|
|
str r2, [r3]
|
|
; Line 266
|
|
bl Pokey_DoInit
|
|
str r0, [sp, #4]
|
|
ldr r3, [sp, #4]
|
|
str r3, [sp]
|
|
; Line 267
|
|
ldr r0, [sp]
|
|
add sp, sp, #8
|
|
ldmia sp, {sp, pc}
|
|
|$LN6@Pokey_soun|
|
|
DCD |snd_flags|
|
|
DCD |snd_num_pokeys|
|
|
DCD |snd_playback_freq|
|
|
DCD |snd_freq17|
|
|
|$M1425|
|
|
|
|
ENDP ; |Pokey_sound_init|
|
|
|
|
EXPORT |Pokey_set_mzquality|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1433| DCD |$LN5@Pokey_set_|
|
|
DCD 0x40000803
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|Pokey_set_mzquality| PROC
|
|
; Line 270
|
|
|$LN5@Pokey_set_|
|
|
mov r12, sp
|
|
stmdb sp!, {r0}
|
|
stmdb sp!, {r12, lr}
|
|
|$M1430|
|
|
; Line 271
|
|
ldr r2, [sp, #8]
|
|
ldr r3, [pc, #4]
|
|
str r2, [r3]
|
|
; Line 272
|
|
ldmia sp, {sp, pc}
|
|
|$LN6@Pokey_set_|
|
|
DCD |mz_quality|
|
|
|$M1431|
|
|
|
|
ENDP ; |Pokey_set_mzquality|
|
|
|
|
EXPORT |Pokey_process|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1439| DCD |$LN5@Pokey_proc|
|
|
DCD 0x40000b03
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|Pokey_process| PROC
|
|
; Line 275
|
|
|$LN5@Pokey_proc|
|
|
mov r12, sp
|
|
stmdb sp!, {r0, r1}
|
|
stmdb sp!, {r12, lr}
|
|
|$M1436|
|
|
; Line 276
|
|
ldr r1, [sp, #0xC]
|
|
ldr r0, [sp, #8]
|
|
ldr r3, [pc, #0xC]
|
|
ldr r3, [r3]
|
|
mov lr, pc
|
|
mov pc, r3
|
|
; Line 280
|
|
ldmia sp, {sp, pc}
|
|
|$LN6@Pokey_proc|
|
|
DCD |Pokey_process_ptr|
|
|
|$M1437|
|
|
|
|
ENDP ; |Pokey_process|
|
|
|
|
IMPORT |__imp___rt_udiv|
|
|
|
|
AREA |.bss|, NOINIT
|
|
|Num_pokeys| % 0x1
|
|
|AUDV| % 0x8
|
|
|Div_n_max| % 0x20
|
|
|Div_n_cnt| % 0x20
|
|
|Outbit| % 0x8
|
|
|Outvol| % 0x8
|
|
|Samp_n_cnt| % 0x8
|
|
|Samp_n_max| % 0x4
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1450| DCD |$LN10@Pokey_soun@2|
|
|
DCD 0x40007404
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|Pokey_sound_init_rf| PROC
|
|
; Line 284
|
|
|$LN10@Pokey_soun@2|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r3}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #0xC
|
|
|$M1447|
|
|
; Line 287
|
|
ldr r2, [pc, #0x1B4]
|
|
ldr r3, [pc, #0x1AC]
|
|
str r2, [r3]
|
|
; Line 298
|
|
ldr r3, [sp, #0x20]
|
|
tst r3, #1
|
|
beq |$LN6@Pokey_soun@2|
|
|
ldr r3, [pc, #0x194]
|
|
str r3, [sp, #8]
|
|
b |$LN7@Pokey_soun@2|
|
|
|$LN6@Pokey_soun@2|
|
|
ldr r3, [pc, #0x184]
|
|
str r3, [sp, #8]
|
|
|$LN7@Pokey_soun@2|
|
|
ldr r2, [sp, #8]
|
|
ldr r3, [pc, #0x174]
|
|
str r2, [r3]
|
|
; Line 305
|
|
ldr r2, [pc, #0x168]
|
|
mov r3, #0
|
|
str r3, [r2]
|
|
; Line 306
|
|
ldr r2, [pc, #0x158]
|
|
mov r3, #0
|
|
str r3, [r2]
|
|
; Line 307
|
|
ldr r2, [pc, #0x148]
|
|
mov r3, #0
|
|
str r3, [r2]
|
|
; Line 308
|
|
ldr r2, [pc, #0x138]
|
|
mov r3, #0
|
|
str r3, [r2]
|
|
; Line 311
|
|
ldr r3, [sp, #0x14]
|
|
mov r1, r3, lsl #8
|
|
ldrh r0, [sp, #0x18]
|
|
ldr r3, [pc, #0x11C]
|
|
ldr r3, [r3]
|
|
mov lr, pc
|
|
mov pc, r3
|
|
ldr r3, [pc, #0x108]
|
|
str r0, [r3]
|
|
; Line 313
|
|
ldr r2, [pc, #0xFC]
|
|
mov r3, #0
|
|
str r3, [r2]
|
|
; Line 314
|
|
ldr r2, [pc, #0xF0]
|
|
mov r3, #0
|
|
str r3, [r2, #4]
|
|
; Line 316
|
|
mov r3, #0
|
|
strb r3, [sp]
|
|
b |$LN3@Pokey_soun@2|
|
|
|$LN2@Pokey_soun@2|
|
|
ldrb r3, [sp]
|
|
add r3, r3, #1
|
|
and r3, r3, #0xFF
|
|
strb r3, [sp]
|
|
|$LN3@Pokey_soun@2|
|
|
ldrb r3, [sp]
|
|
cmp r3, #8
|
|
bge |$LN1@Pokey_soun@2|
|
|
; Line 317
|
|
ldrb r3, [sp]
|
|
mov r2, r3
|
|
ldr r3, [pc, #0xB0]
|
|
add r2, r3, r2
|
|
mov r3, #0
|
|
strb r3, [r2]
|
|
; Line 318
|
|
ldrb r3, [sp]
|
|
mov r2, r3
|
|
ldr r3, [pc, #0x94]
|
|
add r2, r3, r2
|
|
mov r3, #0
|
|
strb r3, [r2]
|
|
; Line 319
|
|
ldrb r3, [sp]
|
|
mov r1, r3
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x70]
|
|
add r2, r3, r2
|
|
mov r3, #0
|
|
str r3, [r2]
|
|
; Line 320
|
|
ldrb r3, [sp]
|
|
mov r1, r3
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x4C]
|
|
add r2, r3, r2
|
|
mvn r3, #2, 2
|
|
str r3, [r2]
|
|
; Line 321
|
|
ldrb r3, [sp]
|
|
mov r2, r3
|
|
ldr r3, [pc, #0x30]
|
|
add r2, r3, r2
|
|
mov r3, #0
|
|
strb r3, [r2]
|
|
; Line 325
|
|
b |$LN2@Pokey_soun@2|
|
|
|$LN1@Pokey_soun@2|
|
|
; Line 328
|
|
ldrb r2, [sp, #0x1C]
|
|
ldr r3, [pc, #0x14]
|
|
strb r2, [r3]
|
|
; Line 330
|
|
mov r3, #0
|
|
str r3, [sp, #4]
|
|
; Line 331
|
|
ldr r0, [sp, #4]
|
|
add sp, sp, #0xC
|
|
ldmia sp, {sp, pc}
|
|
|$LN11@Pokey_soun@2|
|
|
DCD |Num_pokeys|
|
|
DCD |AUDV|
|
|
DCD |Div_n_max|
|
|
DCD |Div_n_cnt|
|
|
DCD |Outbit|
|
|
DCD |Outvol|
|
|
DCD |Samp_n_cnt|
|
|
DCD |Samp_n_max|
|
|
DCD |__imp___rt_udiv|
|
|
DCD |P17|
|
|
DCD |P9|
|
|
DCD |P5|
|
|
DCD |P4|
|
|
DCD |Pokey_process_ptr|
|
|
DCD |Pokey_process_8|
|
|
DCD |Pokey_process_16|
|
|
DCD |Update_pokey_sound|
|
|
DCD |Update_pokey_sound_rf|
|
|
|$M1448|
|
|
|
|
ENDP ; |Pokey_sound_init_rf|
|
|
|
|
IMPORT |AUDC|
|
|
IMPORT |Base_mult|
|
|
IMPORT |AUDF|
|
|
IMPORT |AUDCTL|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1458| DCD |$LN55@Update_pok|
|
|
DCD 0x40024404
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|Update_pokey_sound_rf| PROC
|
|
; Line 355
|
|
|$LN55@Update_pok|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r3}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #0x10
|
|
|$M1455|
|
|
; Line 356
|
|
mov r3, #0
|
|
str r3, [sp, #4]
|
|
; Line 362
|
|
ldrb r3, [sp, #0x20]
|
|
mov r3, r3, lsl #2
|
|
and r3, r3, #0xFF
|
|
strb r3, [sp]
|
|
; Line 365
|
|
ldrh r3, [sp, #0x18]
|
|
and r3, r3, #0xF
|
|
str r3, [sp, #0xC]
|
|
ldr r3, [sp, #0xC]
|
|
cmp r3, #8
|
|
bhi |$LN35@Update_pok|
|
|
ldr r2, [sp, #0xC]
|
|
mov r3, r2, lsl #2
|
|
add r3, r3, pc
|
|
ldr r3, [r3, #4]
|
|
add pc, pc, r3
|
|
|$LN52@Update_pok|
|
|
|$LN51@Update_pok|
|
|
DCD 0x20
|
|
DCD 0x58
|
|
DCD 0x8c
|
|
DCD 0x98
|
|
DCD 0xcc
|
|
DCD 0x104
|
|
DCD 0x138
|
|
DCD 0x144
|
|
DCD 0x178
|
|
|$LN46@Update_pok|
|
|
; Line 368
|
|
mov r3, #1
|
|
strb r3, [sp, #8]
|
|
; Line 369
|
|
ldrb r3, [sp, #0x20]
|
|
mov r2, r3
|
|
ldr r3, [pc, #0x868]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
tst r3, #0x10
|
|
beq |$LN45@Update_pok|
|
|
; Line 370
|
|
ldrb r3, [sp, #8]
|
|
orr r3, r3, #2
|
|
and r3, r3, #0xFF
|
|
strb r3, [sp, #8]
|
|
|$LN45@Update_pok|
|
|
; Line 371
|
|
b |$LN47@Update_pok|
|
|
|$LN44@Update_pok|
|
|
; Line 374
|
|
ldrb r3, [sp, #0x1C]
|
|
and r2, r3, #0xF
|
|
ldrb r3, [sp, #0x24]
|
|
mul r1, r2, r3
|
|
ldrb r3, [sp]
|
|
mov r2, r3
|
|
ldr r3, [pc, #0x83C]
|
|
add r2, r3, r2
|
|
and r3, r1, #0xFF
|
|
strb r3, [r2]
|
|
; Line 375
|
|
mov r3, #1
|
|
strb r3, [sp, #8]
|
|
; Line 376
|
|
b |$LN47@Update_pok|
|
|
|$LN43@Update_pok|
|
|
; Line 379
|
|
mov r3, #2
|
|
strb r3, [sp, #8]
|
|
; Line 380
|
|
b |$LN47@Update_pok|
|
|
|$LN42@Update_pok|
|
|
; Line 383
|
|
ldrb r3, [sp, #0x1C]
|
|
and r2, r3, #0xF
|
|
ldrb r3, [sp, #0x24]
|
|
mul r1, r2, r3
|
|
ldrb r3, [sp]
|
|
add r2, r3, #1
|
|
ldr r3, [pc, #0x7FC]
|
|
add r2, r3, r2
|
|
and r3, r1, #0xFF
|
|
strb r3, [r2]
|
|
; Line 384
|
|
mov r3, #2
|
|
strb r3, [sp, #8]
|
|
; Line 385
|
|
b |$LN47@Update_pok|
|
|
|$LN41@Update_pok|
|
|
; Line 388
|
|
mov r3, #4
|
|
strb r3, [sp, #8]
|
|
; Line 389
|
|
ldrb r3, [sp, #0x20]
|
|
mov r2, r3
|
|
ldr r3, [pc, #0x7BC]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
tst r3, #8
|
|
beq |$LN40@Update_pok|
|
|
; Line 390
|
|
ldrb r3, [sp, #8]
|
|
orr r3, r3, #8
|
|
and r3, r3, #0xFF
|
|
strb r3, [sp, #8]
|
|
|$LN40@Update_pok|
|
|
; Line 391
|
|
b |$LN47@Update_pok|
|
|
|$LN39@Update_pok|
|
|
; Line 394
|
|
ldrb r3, [sp, #0x1C]
|
|
and r2, r3, #0xF
|
|
ldrb r3, [sp, #0x24]
|
|
mul r1, r2, r3
|
|
ldrb r3, [sp]
|
|
add r2, r3, #2
|
|
ldr r3, [pc, #0x790]
|
|
add r2, r3, r2
|
|
and r3, r1, #0xFF
|
|
strb r3, [r2]
|
|
; Line 395
|
|
mov r3, #4
|
|
strb r3, [sp, #8]
|
|
; Line 396
|
|
b |$LN47@Update_pok|
|
|
|$LN38@Update_pok|
|
|
; Line 399
|
|
mov r3, #8
|
|
strb r3, [sp, #8]
|
|
; Line 400
|
|
b |$LN47@Update_pok|
|
|
|$LN37@Update_pok|
|
|
; Line 403
|
|
ldrb r3, [sp, #0x1C]
|
|
and r2, r3, #0xF
|
|
ldrb r3, [sp, #0x24]
|
|
mul r1, r2, r3
|
|
ldrb r3, [sp]
|
|
add r2, r3, #3
|
|
ldr r3, [pc, #0x750]
|
|
add r2, r3, r2
|
|
and r3, r1, #0xFF
|
|
strb r3, [r2]
|
|
; Line 404
|
|
mov r3, #8
|
|
strb r3, [sp, #8]
|
|
; Line 405
|
|
b |$LN47@Update_pok|
|
|
|$LN36@Update_pok|
|
|
; Line 408
|
|
mov r3, #0xF
|
|
strb r3, [sp, #8]
|
|
; Line 409
|
|
b |$LN47@Update_pok|
|
|
|$LN35@Update_pok|
|
|
; Line 411
|
|
mov r3, #0
|
|
strb r3, [sp, #8]
|
|
|$LN47@Update_pok|
|
|
; Line 425
|
|
ldrb r3, [sp, #8]
|
|
tst r3, #1
|
|
beq |$LN34@Update_pok|
|
|
; Line 427
|
|
ldrb r3, [sp, #0x20]
|
|
mov r2, r3
|
|
ldr r3, [pc, #0x6F8]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
tst r3, #0x40
|
|
beq |$LN33@Update_pok|
|
|
; Line 428
|
|
ldrb r3, [sp]
|
|
mov r2, r3
|
|
ldr r3, [pc, #0x6EC]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
add r3, r3, #4
|
|
str r3, [sp, #4]
|
|
; Line 429
|
|
b |$LN32@Update_pok|
|
|
|$LN33@Update_pok|
|
|
; Line 430
|
|
ldrb r3, [sp]
|
|
mov r2, r3
|
|
ldr r3, [pc, #0x6CC]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
add r0, r3, #1
|
|
ldrb r3, [sp, #0x20]
|
|
mov r1, r3
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x6A8]
|
|
add r3, r3, r2
|
|
ldr r3, [r3]
|
|
mul r3, r0, r3
|
|
str r3, [sp, #4]
|
|
|$LN32@Update_pok|
|
|
; Line 432
|
|
ldrb r3, [sp]
|
|
mov r1, r3
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x674]
|
|
add r3, r3, r2
|
|
ldr r2, [sp, #4]
|
|
ldr r3, [r3]
|
|
cmp r2, r3
|
|
beq |$LN31@Update_pok|
|
|
; Line 433
|
|
ldrb r3, [sp]
|
|
mov r1, r3
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x64C]
|
|
add r2, r3, r2
|
|
ldr r3, [sp, #4]
|
|
str r3, [r2]
|
|
; Line 435
|
|
ldrb r3, [sp]
|
|
mov r1, r3
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x628]
|
|
add r3, r3, r2
|
|
ldr r2, [r3]
|
|
ldr r3, [sp, #4]
|
|
cmp r2, r3
|
|
bls |$LN30@Update_pok|
|
|
; Line 436
|
|
ldrb r3, [sp]
|
|
mov r1, r3
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x600]
|
|
add r2, r3, r2
|
|
ldr r3, [sp, #4]
|
|
str r3, [r2]
|
|
|$LN30@Update_pok|
|
|
|$LN31@Update_pok|
|
|
|$LN34@Update_pok|
|
|
; Line 441
|
|
ldrb r3, [sp, #8]
|
|
tst r3, #2
|
|
beq |$LN29@Update_pok|
|
|
; Line 443
|
|
ldrb r3, [sp, #0x20]
|
|
mov r2, r3
|
|
ldr r3, [pc, #0x5E4]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
tst r3, #0x10
|
|
beq |$LN28@Update_pok|
|
|
; Line 444
|
|
ldrb r3, [sp, #0x20]
|
|
mov r2, r3
|
|
ldr r3, [pc, #0x5C8]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
tst r3, #0x40
|
|
beq |$LN27@Update_pok|
|
|
; Line 446
|
|
ldrb r3, [sp]
|
|
add r2, r3, #1
|
|
ldr r3, [pc, #0x5BC]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
mov r2, r3
|
|
mov r3, #1, 24
|
|
mul r1, r2, r3
|
|
ldrb r3, [sp]
|
|
mov r2, r3
|
|
ldr r3, [pc, #0x59C]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
add r3, r1, r3
|
|
add r3, r3, #7
|
|
str r3, [sp, #4]
|
|
; Line 447
|
|
b |$LN26@Update_pok|
|
|
|$LN27@Update_pok|
|
|
; Line 449
|
|
ldrb r3, [sp]
|
|
add r2, r3, #1
|
|
ldr r3, [pc, #0x578]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
mov r2, r3
|
|
mov r3, #1, 24
|
|
mul r1, r2, r3
|
|
ldrb r3, [sp]
|
|
mov r2, r3
|
|
ldr r3, [pc, #0x558]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
add r3, r1, r3
|
|
add r0, r3, #1
|
|
ldrb r3, [sp, #0x20]
|
|
mov r1, r3
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x530]
|
|
add r3, r3, r2
|
|
ldr r3, [r3]
|
|
mul r3, r0, r3
|
|
str r3, [sp, #4]
|
|
|$LN26@Update_pok|
|
|
; Line 451
|
|
b |$LN25@Update_pok|
|
|
|$LN28@Update_pok|
|
|
; Line 452
|
|
ldrb r3, [sp]
|
|
add r2, r3, #1
|
|
ldr r3, [pc, #0x514]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
add r0, r3, #1
|
|
ldrb r3, [sp, #0x20]
|
|
mov r1, r3
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x4F0]
|
|
add r3, r3, r2
|
|
ldr r3, [r3]
|
|
mul r3, r0, r3
|
|
str r3, [sp, #4]
|
|
|$LN25@Update_pok|
|
|
; Line 454
|
|
ldrb r3, [sp]
|
|
add r1, r3, #1
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x4BC]
|
|
add r3, r3, r2
|
|
ldr r2, [sp, #4]
|
|
ldr r3, [r3]
|
|
cmp r2, r3
|
|
beq |$LN24@Update_pok|
|
|
; Line 455
|
|
ldrb r3, [sp]
|
|
add r1, r3, #1
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x494]
|
|
add r2, r3, r2
|
|
ldr r3, [sp, #4]
|
|
str r3, [r2]
|
|
; Line 457
|
|
ldrb r3, [sp]
|
|
add r1, r3, #1
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x470]
|
|
add r3, r3, r2
|
|
ldr r2, [r3]
|
|
ldr r3, [sp, #4]
|
|
cmp r2, r3
|
|
bls |$LN23@Update_pok|
|
|
; Line 458
|
|
ldrb r3, [sp]
|
|
add r1, r3, #1
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x448]
|
|
add r2, r3, r2
|
|
ldr r3, [sp, #4]
|
|
str r3, [r2]
|
|
|$LN23@Update_pok|
|
|
|$LN24@Update_pok|
|
|
|$LN29@Update_pok|
|
|
; Line 463
|
|
ldrb r3, [sp, #8]
|
|
tst r3, #4
|
|
beq |$LN22@Update_pok|
|
|
; Line 465
|
|
ldrb r3, [sp, #0x20]
|
|
mov r2, r3
|
|
ldr r3, [pc, #0x42C]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
tst r3, #0x20
|
|
beq |$LN21@Update_pok|
|
|
; Line 466
|
|
ldrb r3, [sp]
|
|
add r2, r3, #2
|
|
ldr r3, [pc, #0x420]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
add r3, r3, #4
|
|
str r3, [sp, #4]
|
|
; Line 467
|
|
b |$LN20@Update_pok|
|
|
|$LN21@Update_pok|
|
|
; Line 468
|
|
ldrb r3, [sp]
|
|
add r2, r3, #2
|
|
ldr r3, [pc, #0x400]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
add r0, r3, #1
|
|
ldrb r3, [sp, #0x20]
|
|
mov r1, r3
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x3DC]
|
|
add r3, r3, r2
|
|
ldr r3, [r3]
|
|
mul r3, r0, r3
|
|
str r3, [sp, #4]
|
|
|$LN20@Update_pok|
|
|
; Line 470
|
|
ldrb r3, [sp]
|
|
add r1, r3, #2
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x3A8]
|
|
add r3, r3, r2
|
|
ldr r2, [sp, #4]
|
|
ldr r3, [r3]
|
|
cmp r2, r3
|
|
beq |$LN19@Update_pok|
|
|
; Line 471
|
|
ldrb r3, [sp]
|
|
add r1, r3, #2
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x380]
|
|
add r2, r3, r2
|
|
ldr r3, [sp, #4]
|
|
str r3, [r2]
|
|
; Line 473
|
|
ldrb r3, [sp]
|
|
add r1, r3, #2
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x35C]
|
|
add r3, r3, r2
|
|
ldr r2, [r3]
|
|
ldr r3, [sp, #4]
|
|
cmp r2, r3
|
|
bls |$LN18@Update_pok|
|
|
; Line 474
|
|
ldrb r3, [sp]
|
|
add r1, r3, #2
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x334]
|
|
add r2, r3, r2
|
|
ldr r3, [sp, #4]
|
|
str r3, [r2]
|
|
|$LN18@Update_pok|
|
|
|$LN19@Update_pok|
|
|
|$LN22@Update_pok|
|
|
; Line 479
|
|
ldrb r3, [sp, #8]
|
|
tst r3, #8
|
|
beq |$LN17@Update_pok|
|
|
; Line 481
|
|
ldrb r3, [sp, #0x20]
|
|
mov r2, r3
|
|
ldr r3, [pc, #0x318]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
tst r3, #8
|
|
beq |$LN16@Update_pok|
|
|
; Line 482
|
|
ldrb r3, [sp, #0x20]
|
|
mov r2, r3
|
|
ldr r3, [pc, #0x2FC]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
tst r3, #0x20
|
|
beq |$LN15@Update_pok|
|
|
; Line 484
|
|
ldrb r3, [sp]
|
|
add r2, r3, #3
|
|
ldr r3, [pc, #0x2F0]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
mov r2, r3
|
|
mov r3, #1, 24
|
|
mul r1, r2, r3
|
|
ldrb r3, [sp]
|
|
add r2, r3, #2
|
|
ldr r3, [pc, #0x2D0]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
add r3, r1, r3
|
|
add r3, r3, #7
|
|
str r3, [sp, #4]
|
|
; Line 485
|
|
b |$LN14@Update_pok|
|
|
|$LN15@Update_pok|
|
|
; Line 487
|
|
ldrb r3, [sp]
|
|
add r2, r3, #3
|
|
ldr r3, [pc, #0x2AC]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
mov r2, r3
|
|
mov r3, #1, 24
|
|
mul r1, r2, r3
|
|
ldrb r3, [sp]
|
|
add r2, r3, #2
|
|
ldr r3, [pc, #0x28C]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
add r3, r1, r3
|
|
add r0, r3, #1
|
|
ldrb r3, [sp, #0x20]
|
|
mov r1, r3
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x264]
|
|
add r3, r3, r2
|
|
ldr r3, [r3]
|
|
mul r3, r0, r3
|
|
str r3, [sp, #4]
|
|
|$LN14@Update_pok|
|
|
; Line 489
|
|
b |$LN13@Update_pok|
|
|
|$LN16@Update_pok|
|
|
; Line 490
|
|
ldrb r3, [sp]
|
|
add r2, r3, #3
|
|
ldr r3, [pc, #0x248]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
add r0, r3, #1
|
|
ldrb r3, [sp, #0x20]
|
|
mov r1, r3
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x224]
|
|
add r3, r3, r2
|
|
ldr r3, [r3]
|
|
mul r3, r0, r3
|
|
str r3, [sp, #4]
|
|
|$LN13@Update_pok|
|
|
; Line 492
|
|
ldrb r3, [sp]
|
|
add r1, r3, #3
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x1F0]
|
|
add r3, r3, r2
|
|
ldr r2, [sp, #4]
|
|
ldr r3, [r3]
|
|
cmp r2, r3
|
|
beq |$LN12@Update_pok|
|
|
; Line 493
|
|
ldrb r3, [sp]
|
|
add r1, r3, #3
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x1C8]
|
|
add r2, r3, r2
|
|
ldr r3, [sp, #4]
|
|
str r3, [r2]
|
|
; Line 495
|
|
ldrb r3, [sp]
|
|
add r1, r3, #3
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x1A4]
|
|
add r3, r3, r2
|
|
ldr r2, [r3]
|
|
ldr r3, [sp, #4]
|
|
cmp r2, r3
|
|
bls |$LN11@Update_pok|
|
|
; Line 496
|
|
ldrb r3, [sp]
|
|
add r1, r3, #3
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x17C]
|
|
add r2, r3, r2
|
|
ldr r3, [sp, #4]
|
|
str r3, [r2]
|
|
|$LN11@Update_pok|
|
|
|$LN12@Update_pok|
|
|
|$LN17@Update_pok|
|
|
; Line 502
|
|
mov r3, #0
|
|
strb r3, [sp, #9]
|
|
b |$LN10@Update_pok|
|
|
|$LN9@Update_pok|
|
|
ldrb r3, [sp, #9]
|
|
add r3, r3, #1
|
|
and r3, r3, #0xFF
|
|
strb r3, [sp, #9]
|
|
|$LN10@Update_pok|
|
|
ldrb r3, [sp, #9]
|
|
cmp r3, #3
|
|
bgt |$LN8@Update_pok|
|
|
; Line 503
|
|
ldrb r3, [sp, #8]
|
|
mov r1, r3
|
|
ldrb r3, [sp, #9]
|
|
mov r2, r3
|
|
mov r3, #1
|
|
mov r3, r3, lsl r2
|
|
tst r1, r3
|
|
beq |$LN7@Update_pok|
|
|
; Line 576
|
|
ldrb r3, [sp, #9]
|
|
mov r2, r3
|
|
ldrb r3, [sp]
|
|
add r2, r2, r3
|
|
ldr r3, [pc, #0x124]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
tst r3, #0x10
|
|
bne |$LN5@Update_pok|
|
|
ldrb r3, [sp, #9]
|
|
mov r2, r3
|
|
ldrb r3, [sp]
|
|
add r2, r2, r3
|
|
ldr r3, [pc, #0x100]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
tst r3, #0xF
|
|
bne |$LN6@Update_pok|
|
|
|$LN5@Update_pok|
|
|
; Line 578
|
|
ldrb r3, [sp, #9]
|
|
mov r2, r3
|
|
ldrb r3, [sp]
|
|
add r2, r2, r3
|
|
ldr r3, [pc, #0xD8]
|
|
add r2, r3, r2
|
|
mov r3, #1
|
|
strb r3, [r2]
|
|
; Line 590
|
|
ldrb r3, [sp, #9]
|
|
cmp r3, #2
|
|
bne |$LN2@Update_pok|
|
|
ldrb r3, [sp, #0x20]
|
|
mov r2, r3
|
|
ldr r3, [pc, #0xB0]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
tst r3, #4
|
|
beq |$LN3@Update_pok|
|
|
|$LN2@Update_pok|
|
|
ldrb r3, [sp, #9]
|
|
cmp r3, #3
|
|
bne |$LN1@Update_pok|
|
|
ldrb r3, [sp, #0x20]
|
|
mov r2, r3
|
|
ldr r3, [pc, #0x88]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
tst r3, #2
|
|
beq |$LN3@Update_pok|
|
|
|$LN1@Update_pok|
|
|
ldrb r3, [sp, #9]
|
|
cmp r3, #0
|
|
beq |$LN3@Update_pok|
|
|
ldrb r3, [sp, #9]
|
|
cmp r3, #1
|
|
bne |$LN4@Update_pok|
|
|
|$LN3@Update_pok|
|
|
; Line 592
|
|
ldrb r3, [sp, #9]
|
|
mov r2, r3
|
|
ldrb r3, [sp]
|
|
add r1, r2, r3
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x40]
|
|
add r2, r3, r2
|
|
mvn r3, #2, 2
|
|
str r3, [r2]
|
|
; Line 593
|
|
ldrb r3, [sp, #9]
|
|
mov r2, r3
|
|
ldrb r3, [sp]
|
|
add r1, r2, r3
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x14]
|
|
add r2, r3, r2
|
|
mvn r3, #2, 2
|
|
str r3, [r2]
|
|
|$LN4@Update_pok|
|
|
|$LN6@Update_pok|
|
|
|$LN7@Update_pok|
|
|
; Line 597
|
|
b |$LN9@Update_pok|
|
|
|$LN8@Update_pok|
|
|
; Line 600
|
|
add sp, sp, #0x10
|
|
ldmia sp, {sp, pc}
|
|
|$LN56@Update_pok|
|
|
DCD |Div_n_cnt|
|
|
DCD |Div_n_max|
|
|
DCD |AUDCTL|
|
|
DCD |Outvol|
|
|
DCD |AUDC|
|
|
DCD |Base_mult|
|
|
DCD |AUDF|
|
|
DCD |AUDV|
|
|
|$M1456|
|
|
|
|
ENDP ; |Update_pokey_sound_rf|
|
|
|
|
IMPORT |poly17_lookup|
|
|
IMPORT |poly9_lookup|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1480| DCD |$LN72@Pokey_proc@2|
|
|
DCD 0x40031704
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|Pokey_process_8| PROC
|
|
; Line 622
|
|
|$LN72@Pokey_proc@2|
|
|
mov r12, sp
|
|
stmdb sp!, {r0, r1}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #0x4C
|
|
|$M1477|
|
|
; Line 623
|
|
ldr r3, [sp, #0x54]
|
|
str r3, [sp, #0x20]
|
|
; Line 624
|
|
ldr r3, [sp, #0x58]
|
|
mov r3, r3, lsl #16
|
|
mov r3, r3, lsr #16
|
|
strh r3, [sp, #0xE]
|
|
; Line 651
|
|
ldr r3, [pc, #0xBE8]
|
|
add r3, r3, #1
|
|
str r3, [sp, #8]
|
|
; Line 655
|
|
ldr r3, [pc, #0xBE8]
|
|
str r3, [sp, #0x18]
|
|
; Line 656
|
|
ldr r3, [pc, #0xBDC]
|
|
str r3, [sp, #0x24]
|
|
; Line 661
|
|
mov r3, #0
|
|
strb r3, [sp, #0x1E]
|
|
; Line 666
|
|
mov r3, #0
|
|
strb r3, [sp, #0x14]
|
|
; Line 669
|
|
ldr r3, [pc, #0xBB8]
|
|
ldrb r3, [r3]
|
|
strb r3, [sp]
|
|
|$LN55@Pokey_proc@2|
|
|
; Line 671
|
|
ldr r3, [sp, #0x18]
|
|
ldrb r3, [r3]
|
|
cmp r3, #0
|
|
ldr r3, [sp, #0x18]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0x18]
|
|
beq |$LN52@Pokey_proc@2|
|
|
; Line 672
|
|
ldr r3, [sp, #0x24]
|
|
ldrb r3, [r3]
|
|
mov r2, r3
|
|
ldrb r3, [sp, #0x1E]
|
|
add r3, r3, r2
|
|
and r3, r3, #0xFF
|
|
strb r3, [sp, #0x1E]
|
|
|$LN52@Pokey_proc@2|
|
|
; Line 673
|
|
ldr r3, [sp, #0x24]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0x24]
|
|
; Line 675
|
|
ldr r3, [sp, #0x18]
|
|
ldrb r3, [r3]
|
|
cmp r3, #0
|
|
ldr r3, [sp, #0x18]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0x18]
|
|
beq |$LN51@Pokey_proc@2|
|
|
; Line 676
|
|
ldr r3, [sp, #0x24]
|
|
ldrb r3, [r3]
|
|
mov r2, r3
|
|
ldrb r3, [sp, #0x1E]
|
|
add r3, r3, r2
|
|
and r3, r3, #0xFF
|
|
strb r3, [sp, #0x1E]
|
|
|$LN51@Pokey_proc@2|
|
|
; Line 677
|
|
ldr r3, [sp, #0x24]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0x24]
|
|
; Line 679
|
|
ldr r3, [sp, #0x18]
|
|
ldrb r3, [r3]
|
|
cmp r3, #0
|
|
ldr r3, [sp, #0x18]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0x18]
|
|
beq |$LN50@Pokey_proc@2|
|
|
; Line 680
|
|
ldr r3, [sp, #0x24]
|
|
ldrb r3, [r3]
|
|
mov r2, r3
|
|
ldrb r3, [sp, #0x1E]
|
|
add r3, r3, r2
|
|
and r3, r3, #0xFF
|
|
strb r3, [sp, #0x1E]
|
|
|$LN50@Pokey_proc@2|
|
|
; Line 681
|
|
ldr r3, [sp, #0x24]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0x24]
|
|
; Line 683
|
|
ldr r3, [sp, #0x18]
|
|
ldrb r3, [r3]
|
|
cmp r3, #0
|
|
ldr r3, [sp, #0x18]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0x18]
|
|
beq |$LN49@Pokey_proc@2|
|
|
; Line 684
|
|
ldr r3, [sp, #0x24]
|
|
ldrb r3, [r3]
|
|
mov r2, r3
|
|
ldrb r3, [sp, #0x1E]
|
|
add r3, r3, r2
|
|
and r3, r3, #0xFF
|
|
strb r3, [sp, #0x1E]
|
|
|$LN49@Pokey_proc@2|
|
|
; Line 685
|
|
ldr r3, [sp, #0x24]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0x24]
|
|
; Line 691
|
|
ldrb r3, [sp]
|
|
sub r3, r3, #1
|
|
and r3, r3, #0xFF
|
|
strb r3, [sp]
|
|
; Line 692
|
|
ldrb r3, [sp]
|
|
cmp r3, #0
|
|
beq |$LN48@Pokey_proc@2|
|
|
; Line 693
|
|
ldr r3, [sp, #0x18]
|
|
ldrb r3, [r3]
|
|
cmp r3, #0
|
|
ldr r3, [sp, #0x18]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0x18]
|
|
beq |$LN47@Pokey_proc@2|
|
|
; Line 694
|
|
ldr r3, [sp, #0x24]
|
|
ldrb r3, [r3]
|
|
mov r2, r3
|
|
ldrb r3, [sp, #0x14]
|
|
add r3, r3, r2
|
|
and r3, r3, #0xFF
|
|
strb r3, [sp, #0x14]
|
|
|$LN47@Pokey_proc@2|
|
|
; Line 695
|
|
ldr r3, [sp, #0x24]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0x24]
|
|
; Line 697
|
|
ldr r3, [sp, #0x18]
|
|
ldrb r3, [r3]
|
|
cmp r3, #0
|
|
ldr r3, [sp, #0x18]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0x18]
|
|
beq |$LN46@Pokey_proc@2|
|
|
; Line 698
|
|
ldr r3, [sp, #0x24]
|
|
ldrb r3, [r3]
|
|
mov r2, r3
|
|
ldrb r3, [sp, #0x14]
|
|
add r3, r3, r2
|
|
and r3, r3, #0xFF
|
|
strb r3, [sp, #0x14]
|
|
|$LN46@Pokey_proc@2|
|
|
; Line 699
|
|
ldr r3, [sp, #0x24]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0x24]
|
|
; Line 701
|
|
ldr r3, [sp, #0x18]
|
|
ldrb r3, [r3]
|
|
cmp r3, #0
|
|
ldr r3, [sp, #0x18]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0x18]
|
|
beq |$LN45@Pokey_proc@2|
|
|
; Line 702
|
|
ldr r3, [sp, #0x24]
|
|
ldrb r3, [r3]
|
|
mov r2, r3
|
|
ldrb r3, [sp, #0x14]
|
|
add r3, r3, r2
|
|
and r3, r3, #0xFF
|
|
strb r3, [sp, #0x14]
|
|
|$LN45@Pokey_proc@2|
|
|
; Line 703
|
|
ldr r3, [sp, #0x24]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0x24]
|
|
; Line 705
|
|
ldr r3, [sp, #0x18]
|
|
ldrb r3, [r3]
|
|
cmp r3, #0
|
|
ldr r3, [sp, #0x18]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0x18]
|
|
beq |$LN44@Pokey_proc@2|
|
|
; Line 706
|
|
ldr r3, [sp, #0x24]
|
|
ldrb r3, [r3]
|
|
mov r2, r3
|
|
ldrb r3, [sp, #0x14]
|
|
add r3, r3, r2
|
|
and r3, r3, #0xFF
|
|
strb r3, [sp, #0x14]
|
|
|$LN44@Pokey_proc@2|
|
|
; Line 707
|
|
ldr r3, [sp, #0x24]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0x24]
|
|
; Line 709
|
|
b |$LN43@Pokey_proc@2|
|
|
|$LN48@Pokey_proc@2|
|
|
; Line 710
|
|
b |$LN53@Pokey_proc@2|
|
|
|$LN43@Pokey_proc@2|
|
|
; Line 713
|
|
ldrb r3, [sp]
|
|
sub r3, r3, #1
|
|
and r3, r3, #0xFF
|
|
strb r3, [sp]
|
|
; Line 714
|
|
ldrb r3, [sp]
|
|
cmp r3, #0
|
|
bne |$LN55@Pokey_proc@2|
|
|
|$LN53@Pokey_proc@2|
|
|
|$LN42@Pokey_proc@2|
|
|
; Line 722
|
|
ldrh r3, [sp, #0xE]
|
|
cmp r3, #0
|
|
beq |$LN41@Pokey_proc@2|
|
|
; Line 730
|
|
mov r3, #0x7F
|
|
strb r3, [sp, #0xC]
|
|
; Line 731
|
|
ldr r3, [sp, #8]
|
|
ldrb r3, [r3]
|
|
mov r2, r3
|
|
ldr r3, [sp, #8]
|
|
add r3, r3, #1
|
|
ldrb r3, [r3]
|
|
mov r3, r3, lsl #8
|
|
orr r2, r2, r3
|
|
ldr r3, [sp, #8]
|
|
add r3, r3, #2
|
|
ldrb r3, [r3]
|
|
mov r3, r3, lsl #16
|
|
orr r2, r2, r3
|
|
ldr r3, [sp, #8]
|
|
add r3, r3, #3
|
|
ldrb r3, [r3]
|
|
mov r3, r3, lsl #24
|
|
orr r3, r2, r3
|
|
str r3, [sp, #4]
|
|
; Line 733
|
|
ldr r3, [pc, #0x928]
|
|
str r3, [sp, #0x10]
|
|
; Line 735
|
|
mov r3, #0
|
|
strb r3, [sp]
|
|
|$LN40@Pokey_proc@2|
|
|
; Line 738
|
|
ldr r3, [sp, #0x10]
|
|
ldr r2, [r3]
|
|
ldr r3, [sp, #4]
|
|
cmp r2, r3
|
|
bhi |$LN37@Pokey_proc@2|
|
|
; Line 739
|
|
ldr r3, [sp, #0x10]
|
|
ldr r3, [r3]
|
|
str r3, [sp, #4]
|
|
; Line 740
|
|
ldrb r3, [sp]
|
|
mov r3, r3, lsl #2
|
|
and r3, r3, #0xFF
|
|
strb r3, [sp, #0xC]
|
|
|$LN37@Pokey_proc@2|
|
|
; Line 742
|
|
ldr r3, [sp, #0x10]
|
|
add r3, r3, #4
|
|
str r3, [sp, #0x10]
|
|
; Line 743
|
|
ldr r3, [sp, #0x10]
|
|
ldr r2, [r3]
|
|
ldr r3, [sp, #4]
|
|
cmp r2, r3
|
|
bhi |$LN36@Pokey_proc@2|
|
|
; Line 744
|
|
ldr r3, [sp, #0x10]
|
|
ldr r3, [r3]
|
|
str r3, [sp, #4]
|
|
; Line 745
|
|
ldrb r3, [sp]
|
|
mov r3, r3, lsl #2
|
|
add r3, r3, #1
|
|
and r3, r3, #0xFF
|
|
strb r3, [sp, #0xC]
|
|
|$LN36@Pokey_proc@2|
|
|
; Line 747
|
|
ldr r3, [sp, #0x10]
|
|
add r3, r3, #4
|
|
str r3, [sp, #0x10]
|
|
; Line 748
|
|
ldr r3, [sp, #0x10]
|
|
ldr r2, [r3]
|
|
ldr r3, [sp, #4]
|
|
cmp r2, r3
|
|
bhi |$LN35@Pokey_proc@2|
|
|
; Line 749
|
|
ldr r3, [sp, #0x10]
|
|
ldr r3, [r3]
|
|
str r3, [sp, #4]
|
|
; Line 750
|
|
ldrb r3, [sp]
|
|
mov r3, r3, lsl #2
|
|
add r3, r3, #2
|
|
and r3, r3, #0xFF
|
|
strb r3, [sp, #0xC]
|
|
|$LN35@Pokey_proc@2|
|
|
; Line 752
|
|
ldr r3, [sp, #0x10]
|
|
add r3, r3, #4
|
|
str r3, [sp, #0x10]
|
|
; Line 753
|
|
ldr r3, [sp, #0x10]
|
|
ldr r2, [r3]
|
|
ldr r3, [sp, #4]
|
|
cmp r2, r3
|
|
bhi |$LN34@Pokey_proc@2|
|
|
; Line 754
|
|
ldr r3, [sp, #0x10]
|
|
ldr r3, [r3]
|
|
str r3, [sp, #4]
|
|
; Line 755
|
|
ldrb r3, [sp]
|
|
mov r3, r3, lsl #2
|
|
add r3, r3, #3
|
|
and r3, r3, #0xFF
|
|
strb r3, [sp, #0xC]
|
|
|$LN34@Pokey_proc@2|
|
|
; Line 757
|
|
ldr r3, [sp, #0x10]
|
|
add r3, r3, #4
|
|
str r3, [sp, #0x10]
|
|
; Line 759
|
|
ldrb r3, [sp]
|
|
add r3, r3, #1
|
|
and r3, r3, #0xFF
|
|
strb r3, [sp]
|
|
; Line 760
|
|
ldrb r3, [sp]
|
|
mov r2, r3
|
|
ldr r3, [pc, #0x7C8]
|
|
ldrb r3, [r3]
|
|
cmp r2, r3
|
|
blt |$LN40@Pokey_proc@2|
|
|
; Line 763
|
|
ldrb r3, [sp, #0xC]
|
|
cmp r3, #0x7F
|
|
beq |$LN33@Pokey_proc@2|
|
|
; Line 766
|
|
ldr r3, [pc, #0x7AC]
|
|
ldrb r3, [r3]
|
|
strb r3, [sp]
|
|
|$LN32@Pokey_proc@2|
|
|
; Line 770
|
|
ldr r3, [sp, #0x10]
|
|
sub r3, r3, #4
|
|
str r3, [sp, #0x10]
|
|
; Line 771
|
|
ldr r3, [sp, #0x10]
|
|
ldr r2, [r3]
|
|
ldr r3, [sp, #4]
|
|
sub r2, r2, r3
|
|
ldr r3, [sp, #0x10]
|
|
str r2, [r3]
|
|
; Line 772
|
|
ldr r3, [sp, #0x10]
|
|
sub r3, r3, #4
|
|
str r3, [sp, #0x10]
|
|
; Line 773
|
|
ldr r3, [sp, #0x10]
|
|
ldr r2, [r3]
|
|
ldr r3, [sp, #4]
|
|
sub r2, r2, r3
|
|
ldr r3, [sp, #0x10]
|
|
str r2, [r3]
|
|
; Line 774
|
|
ldr r3, [sp, #0x10]
|
|
sub r3, r3, #4
|
|
str r3, [sp, #0x10]
|
|
; Line 775
|
|
ldr r3, [sp, #0x10]
|
|
ldr r2, [r3]
|
|
ldr r3, [sp, #4]
|
|
sub r2, r2, r3
|
|
ldr r3, [sp, #0x10]
|
|
str r2, [r3]
|
|
; Line 776
|
|
ldr r3, [sp, #0x10]
|
|
sub r3, r3, #4
|
|
str r3, [sp, #0x10]
|
|
; Line 777
|
|
ldr r3, [sp, #0x10]
|
|
ldr r2, [r3]
|
|
ldr r3, [sp, #4]
|
|
sub r2, r2, r3
|
|
ldr r3, [sp, #0x10]
|
|
str r2, [r3]
|
|
; Line 779
|
|
ldrb r3, [sp]
|
|
sub r3, r3, #1
|
|
and r3, r3, #0xFF
|
|
strb r3, [sp]
|
|
; Line 780
|
|
ldrb r3, [sp]
|
|
cmp r3, #0
|
|
bne |$LN32@Pokey_proc@2|
|
|
; Line 783
|
|
ldr r3, [sp, #8]
|
|
ldrb r3, [r3]
|
|
mov r2, r3
|
|
ldr r3, [sp, #8]
|
|
add r3, r3, #1
|
|
ldrb r3, [r3]
|
|
mov r3, r3, lsl #8
|
|
orr r2, r2, r3
|
|
ldr r3, [sp, #8]
|
|
add r3, r3, #2
|
|
ldrb r3, [r3]
|
|
mov r3, r3, lsl #16
|
|
orr r2, r2, r3
|
|
ldr r3, [sp, #8]
|
|
add r3, r3, #3
|
|
ldrb r3, [r3]
|
|
mov r3, r3, lsl #24
|
|
orr r2, r2, r3
|
|
ldr r3, [sp, #4]
|
|
sub r3, r2, r3
|
|
str r3, [sp, #0x28]
|
|
ldr r3, [sp, #0x28]
|
|
and r3, r3, #0xFF
|
|
and r2, r3, #0xFF
|
|
ldr r3, [sp, #8]
|
|
strb r2, [r3]
|
|
ldr r3, [sp, #0x28]
|
|
mov r3, r3, lsl #16
|
|
mov r1, r3, lsr #24
|
|
ldr r3, [sp, #8]
|
|
add r2, r3, #1
|
|
and r3, r1, #0xFF
|
|
strb r3, [r2]
|
|
ldr r3, [sp, #0x28]
|
|
mov r3, r3, lsl #8
|
|
mov r1, r3, lsr #24
|
|
ldr r3, [sp, #8]
|
|
add r2, r3, #2
|
|
and r3, r1, #0xFF
|
|
strb r3, [r2]
|
|
ldr r3, [sp, #0x28]
|
|
mov r1, r3, lsr #24
|
|
ldr r3, [sp, #8]
|
|
add r2, r3, #3
|
|
and r3, r1, #0xFF
|
|
strb r3, [r2]
|
|
; Line 790
|
|
ldr r3, [pc, #0x664]
|
|
ldr r2, [r3]
|
|
ldr r3, [sp, #4]
|
|
add r1, r2, r3
|
|
mov r0, #0xF
|
|
ldr r3, [pc, #0x66C]
|
|
ldr r3, [r3]
|
|
mov lr, pc
|
|
mov pc, r3
|
|
ldr r3, [pc, #0x640]
|
|
str r1, [r3]
|
|
; Line 791
|
|
ldr r3, [pc, #0x640]
|
|
ldr r2, [r3]
|
|
ldr r3, [sp, #4]
|
|
add r1, r2, r3
|
|
mov r0, #0x1F
|
|
ldr r3, [pc, #0x640]
|
|
ldr r3, [r3]
|
|
mov lr, pc
|
|
mov pc, r3
|
|
ldr r3, [pc, #0x61C]
|
|
str r1, [r3]
|
|
; Line 792
|
|
ldr r3, [pc, #0x604]
|
|
ldr r2, [r3]
|
|
ldr r3, [sp, #4]
|
|
add r1, r2, r3
|
|
mov r0, #1, 24
|
|
orr r0, r0, #0xFF
|
|
ldr r3, [pc, #0x610]
|
|
ldr r3, [r3]
|
|
mov lr, pc
|
|
mov pc, r3
|
|
ldr r3, [pc, #0x5DC]
|
|
str r1, [r3]
|
|
; Line 793
|
|
ldr r3, [pc, #0x5CC]
|
|
ldr r2, [r3]
|
|
ldr r3, [sp, #4]
|
|
add r1, r2, r3
|
|
mvn r0, #0xFF, 8
|
|
eor r0, r0, #0xFE, 16
|
|
ldr r3, [pc, #0x5E0]
|
|
ldr r3, [r3]
|
|
mov lr, pc
|
|
mov pc, r3
|
|
ldr r3, [pc, #0x5A4]
|
|
str r1, [r3]
|
|
; Line 796
|
|
ldrb r3, [sp, #0xC]
|
|
mov r1, r3
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x5B0]
|
|
add r0, r3, r2
|
|
ldrb r3, [sp, #0xC]
|
|
mov r1, r3
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x59C]
|
|
add r3, r3, r2
|
|
ldr r2, [r0]
|
|
ldr r3, [r3]
|
|
add r0, r2, r3
|
|
ldrb r3, [sp, #0xC]
|
|
mov r1, r3
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x574]
|
|
add r3, r3, r2
|
|
str r0, [r3]
|
|
; Line 799
|
|
ldrb r3, [sp, #0xC]
|
|
mov r2, r3
|
|
ldr r3, [pc, #0x55C]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
strb r3, [sp, #0x1D]
|
|
; Line 802
|
|
ldrb r3, [sp, #0xC]
|
|
mov r2, r3
|
|
ldr r3, [pc, #0x51C]
|
|
add r3, r3, r2
|
|
str r3, [sp, #0x18]
|
|
; Line 805
|
|
mov r3, #0
|
|
strb r3, [sp, #0x1C]
|
|
; Line 812
|
|
ldrb r3, [sp, #0x1D]
|
|
tst r3, #0x10
|
|
bne |$LN29@Pokey_proc@2|
|
|
; Line 815
|
|
ldrb r3, [sp, #0x1D]
|
|
tst r3, #0x80
|
|
bne |$LN27@Pokey_proc@2|
|
|
ldr r2, [pc, #0x514]
|
|
ldr r3, [pc, #0x50C]
|
|
ldr r3, [r3]
|
|
add r3, r2, r3
|
|
ldrb r3, [r3]
|
|
cmp r3, #0
|
|
beq |$LN28@Pokey_proc@2|
|
|
|$LN27@Pokey_proc@2|
|
|
; Line 817
|
|
ldrb r3, [sp, #0x1D]
|
|
tst r3, #0x20
|
|
beq |$LN26@Pokey_proc@2|
|
|
; Line 819
|
|
mov r3, #1
|
|
strb r3, [sp, #0x1C]
|
|
b |$LN25@Pokey_proc@2|
|
|
|$LN26@Pokey_proc@2|
|
|
; Line 822
|
|
ldrb r3, [sp, #0x1D]
|
|
tst r3, #0x40
|
|
beq |$LN24@Pokey_proc@2|
|
|
; Line 824
|
|
ldr r3, [sp, #0x18]
|
|
ldrb r3, [r3]
|
|
cmp r3, #0
|
|
bne |$LN58@Pokey_proc@2|
|
|
mov r3, #1
|
|
str r3, [sp, #0x34]
|
|
b |$LN59@Pokey_proc@2|
|
|
|$LN58@Pokey_proc@2|
|
|
mov r3, #0
|
|
str r3, [sp, #0x34]
|
|
|$LN59@Pokey_proc@2|
|
|
ldr r2, [pc, #0x4A8]
|
|
ldr r3, [pc, #0x4A0]
|
|
ldr r3, [r3]
|
|
add r3, r2, r3
|
|
ldrb r3, [r3]
|
|
mov r2, r3
|
|
ldr r3, [sp, #0x34]
|
|
cmp r2, r3
|
|
bne |$LN60@Pokey_proc@2|
|
|
mov r3, #1
|
|
str r3, [sp, #0x38]
|
|
b |$LN61@Pokey_proc@2|
|
|
|$LN60@Pokey_proc@2|
|
|
mov r3, #0
|
|
str r3, [sp, #0x38]
|
|
|$LN61@Pokey_proc@2|
|
|
ldr r3, [sp, #0x38]
|
|
and r3, r3, #0xFF
|
|
strb r3, [sp, #0x1C]
|
|
; Line 826
|
|
b |$LN23@Pokey_proc@2|
|
|
|$LN24@Pokey_proc@2|
|
|
; Line 828
|
|
ldrb r3, [sp, #0xC]
|
|
mov r2, r3, asr #2
|
|
ldr r3, [pc, #0x440]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
tst r3, #0x80
|
|
beq |$LN22@Pokey_proc@2|
|
|
; Line 830
|
|
ldr r3, [sp, #0x18]
|
|
ldrb r3, [r3]
|
|
cmp r3, #0
|
|
bne |$LN62@Pokey_proc@2|
|
|
mov r3, #1
|
|
str r3, [sp, #0x3C]
|
|
b |$LN63@Pokey_proc@2|
|
|
|$LN62@Pokey_proc@2|
|
|
mov r3, #0
|
|
str r3, [sp, #0x3C]
|
|
|$LN63@Pokey_proc@2|
|
|
ldr r2, [pc, #0x418]
|
|
ldr r3, [pc, #0x410]
|
|
ldr r3, [r3]
|
|
add r3, r2, r3
|
|
ldrb r3, [r3]
|
|
and r2, r3, #1
|
|
ldr r3, [sp, #0x3C]
|
|
cmp r2, r3
|
|
bne |$LN64@Pokey_proc@2|
|
|
mov r3, #1
|
|
str r3, [sp, #0x40]
|
|
b |$LN65@Pokey_proc@2|
|
|
|$LN64@Pokey_proc@2|
|
|
mov r3, #0
|
|
str r3, [sp, #0x40]
|
|
|$LN65@Pokey_proc@2|
|
|
ldr r3, [sp, #0x40]
|
|
and r3, r3, #0xFF
|
|
strb r3, [sp, #0x1C]
|
|
; Line 832
|
|
b |$LN21@Pokey_proc@2|
|
|
|$LN22@Pokey_proc@2|
|
|
; Line 834
|
|
ldr r3, [sp, #0x18]
|
|
ldrb r3, [r3]
|
|
cmp r3, #0
|
|
bne |$LN66@Pokey_proc@2|
|
|
mov r3, #1
|
|
str r3, [sp, #0x44]
|
|
b |$LN67@Pokey_proc@2|
|
|
|$LN66@Pokey_proc@2|
|
|
mov r3, #0
|
|
str r3, [sp, #0x44]
|
|
|$LN67@Pokey_proc@2|
|
|
ldr r3, [pc, #0x3A0]
|
|
ldr r3, [r3]
|
|
mov r2, r3, lsr #3
|
|
ldr r3, [pc, #0x398]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
mov r2, r3
|
|
ldr r3, [pc, #0x384]
|
|
ldr r3, [r3]
|
|
and r3, r3, #7
|
|
mov r3, r2, asr r3
|
|
and r2, r3, #1
|
|
ldr r3, [sp, #0x44]
|
|
cmp r2, r3
|
|
bne |$LN68@Pokey_proc@2|
|
|
mov r3, #1
|
|
str r3, [sp, #0x48]
|
|
b |$LN69@Pokey_proc@2|
|
|
|$LN68@Pokey_proc@2|
|
|
mov r3, #0
|
|
str r3, [sp, #0x48]
|
|
|$LN69@Pokey_proc@2|
|
|
ldr r3, [sp, #0x48]
|
|
and r3, r3, #0xFF
|
|
strb r3, [sp, #0x1C]
|
|
|$LN21@Pokey_proc@2|
|
|
|$LN23@Pokey_proc@2|
|
|
|$LN25@Pokey_proc@2|
|
|
|$LN28@Pokey_proc@2|
|
|
|$LN29@Pokey_proc@2|
|
|
; Line 841
|
|
ldrb r3, [sp, #0xC]
|
|
mov r2, r3, asr #2
|
|
ldr r3, [pc, #0x338]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
tst r3, #4
|
|
beq |$LN20@Pokey_proc@2|
|
|
; Line 843
|
|
ldrb r3, [sp, #0xC]
|
|
and r3, r3, #3
|
|
cmp r3, #2
|
|
bne |$LN19@Pokey_proc@2|
|
|
; Line 845
|
|
ldrb r3, [sp, #0xC]
|
|
and r2, r3, #0xFD
|
|
ldr r3, [pc, #0x308]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
cmp r3, #0
|
|
beq |$LN18@Pokey_proc@2|
|
|
; Line 847
|
|
ldrb r3, [sp, #0xC]
|
|
and r2, r3, #0xFD
|
|
ldr r3, [pc, #0x2EC]
|
|
add r2, r3, r2
|
|
mov r3, #0
|
|
strb r3, [r2]
|
|
; Line 852
|
|
ldrb r3, [sp, #0xC]
|
|
tst r3, #4
|
|
beq |$LN17@Pokey_proc@2|
|
|
; Line 854
|
|
ldrb r3, [sp, #0xC]
|
|
and r2, r3, #0xFD
|
|
ldr r3, [pc, #0x2C4]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
mov r2, r3
|
|
ldrb r3, [sp, #0x14]
|
|
sub r3, r3, r2
|
|
and r3, r3, #0xFF
|
|
strb r3, [sp, #0x14]
|
|
; Line 855
|
|
b |$LN16@Pokey_proc@2|
|
|
|$LN17@Pokey_proc@2|
|
|
; Line 857
|
|
ldrb r3, [sp, #0xC]
|
|
and r2, r3, #0xFD
|
|
ldr r3, [pc, #0x298]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
mov r2, r3
|
|
ldrb r3, [sp, #0x1E]
|
|
sub r3, r3, r2
|
|
and r3, r3, #0xFF
|
|
strb r3, [sp, #0x1E]
|
|
|$LN16@Pokey_proc@2|
|
|
|$LN18@Pokey_proc@2|
|
|
|$LN19@Pokey_proc@2|
|
|
|$LN20@Pokey_proc@2|
|
|
; Line 863
|
|
ldrb r3, [sp, #0xC]
|
|
mov r2, r3, asr #2
|
|
ldr r3, [pc, #0x278]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
tst r3, #2
|
|
beq |$LN15@Pokey_proc@2|
|
|
; Line 865
|
|
ldrb r3, [sp, #0xC]
|
|
and r3, r3, #3
|
|
cmp r3, #3
|
|
bne |$LN14@Pokey_proc@2|
|
|
; Line 867
|
|
ldrb r3, [sp, #0xC]
|
|
and r2, r3, #0xFD
|
|
ldr r3, [pc, #0x248]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
cmp r3, #0
|
|
beq |$LN13@Pokey_proc@2|
|
|
; Line 869
|
|
ldrb r3, [sp, #0xC]
|
|
and r2, r3, #0xFD
|
|
ldr r3, [pc, #0x22C]
|
|
add r2, r3, r2
|
|
mov r3, #0
|
|
strb r3, [r2]
|
|
; Line 874
|
|
ldrb r3, [sp, #0xC]
|
|
tst r3, #4
|
|
beq |$LN12@Pokey_proc@2|
|
|
; Line 876
|
|
ldrb r3, [sp, #0xC]
|
|
and r2, r3, #0xFD
|
|
ldr r3, [pc, #0x204]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
mov r2, r3
|
|
ldrb r3, [sp, #0x14]
|
|
sub r3, r3, r2
|
|
and r3, r3, #0xFF
|
|
strb r3, [sp, #0x14]
|
|
; Line 877
|
|
b |$LN11@Pokey_proc@2|
|
|
|$LN12@Pokey_proc@2|
|
|
; Line 879
|
|
ldrb r3, [sp, #0xC]
|
|
and r2, r3, #0xFD
|
|
ldr r3, [pc, #0x1D8]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
mov r2, r3
|
|
ldrb r3, [sp, #0x1E]
|
|
sub r3, r3, r2
|
|
and r3, r3, #0xFF
|
|
strb r3, [sp, #0x1E]
|
|
|$LN11@Pokey_proc@2|
|
|
|$LN13@Pokey_proc@2|
|
|
|$LN14@Pokey_proc@2|
|
|
|$LN15@Pokey_proc@2|
|
|
; Line 885
|
|
ldrb r3, [sp, #0x1C]
|
|
cmp r3, #0
|
|
beq |$LN10@Pokey_proc@2|
|
|
; Line 886
|
|
ldr r3, [sp, #0x18]
|
|
ldrb r3, [r3]
|
|
cmp r3, #0
|
|
beq |$LN9@Pokey_proc@2|
|
|
; Line 892
|
|
ldrb r3, [sp, #0xC]
|
|
tst r3, #4
|
|
beq |$LN8@Pokey_proc@2|
|
|
; Line 894
|
|
ldrb r3, [sp, #0xC]
|
|
mov r2, r3
|
|
ldr r3, [pc, #0x188]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
mov r2, r3
|
|
ldrb r3, [sp, #0x14]
|
|
sub r3, r3, r2
|
|
and r3, r3, #0xFF
|
|
strb r3, [sp, #0x14]
|
|
; Line 895
|
|
b |$LN7@Pokey_proc@2|
|
|
|$LN8@Pokey_proc@2|
|
|
; Line 897
|
|
ldrb r3, [sp, #0xC]
|
|
mov r2, r3
|
|
ldr r3, [pc, #0x15C]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
mov r2, r3
|
|
ldrb r3, [sp, #0x1E]
|
|
sub r3, r3, r2
|
|
and r3, r3, #0xFF
|
|
strb r3, [sp, #0x1E]
|
|
|$LN7@Pokey_proc@2|
|
|
; Line 900
|
|
ldr r2, [sp, #0x18]
|
|
mov r3, #0
|
|
strb r3, [r2]
|
|
; Line 902
|
|
b |$LN6@Pokey_proc@2|
|
|
|$LN9@Pokey_proc@2|
|
|
; Line 904
|
|
ldr r2, [sp, #0x18]
|
|
mov r3, #1
|
|
strb r3, [r2]
|
|
; Line 911
|
|
ldrb r3, [sp, #0xC]
|
|
tst r3, #4
|
|
beq |$LN5@Pokey_proc@2|
|
|
; Line 913
|
|
ldrb r3, [sp, #0xC]
|
|
mov r2, r3
|
|
ldr r3, [pc, #0x10C]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
mov r2, r3
|
|
ldrb r3, [sp, #0x14]
|
|
add r3, r3, r2
|
|
and r3, r3, #0xFF
|
|
strb r3, [sp, #0x14]
|
|
; Line 914
|
|
b |$LN4@Pokey_proc@2|
|
|
|$LN5@Pokey_proc@2|
|
|
; Line 916
|
|
ldrb r3, [sp, #0xC]
|
|
mov r2, r3
|
|
ldr r3, [pc, #0xE0]
|
|
add r3, r3, r2
|
|
ldrb r3, [r3]
|
|
mov r2, r3
|
|
ldrb r3, [sp, #0x1E]
|
|
add r3, r3, r2
|
|
and r3, r3, #0xFF
|
|
strb r3, [sp, #0x1E]
|
|
|$LN4@Pokey_proc@2|
|
|
|$LN6@Pokey_proc@2|
|
|
|$LN10@Pokey_proc@2|
|
|
; Line 920
|
|
b |$LN3@Pokey_proc@2|
|
|
|$LN33@Pokey_proc@2|
|
|
; Line 959
|
|
ldrb r3, [sp, #0x1E]
|
|
str r3, [sp, #0x30]
|
|
; Line 964
|
|
ldrb r3, [sp, #0x14]
|
|
str r3, [sp, #0x2C]
|
|
; Line 1050
|
|
ldr r3, [sp, #0x30]
|
|
and r2, r3, #0xFF
|
|
ldr r3, [sp, #0x20]
|
|
strb r2, [r3]
|
|
ldr r3, [sp, #0x20]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0x20]
|
|
; Line 1052
|
|
ldr r3, [pc, #0x84]
|
|
ldrb r3, [r3]
|
|
cmp r3, #1
|
|
ble |$LN2@Pokey_proc@2|
|
|
; Line 1054
|
|
ldr r3, [sp, #0x2C]
|
|
and r2, r3, #0xFF
|
|
ldr r3, [sp, #0x20]
|
|
strb r2, [r3]
|
|
ldr r3, [sp, #0x20]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0x20]
|
|
|$LN2@Pokey_proc@2|
|
|
; Line 1064
|
|
ldr r3, [pc, #0x5C]
|
|
ldr r2, [r3]
|
|
ldr r3, [pc, #0x58]
|
|
ldr r3, [r3]
|
|
add r2, r2, r3
|
|
ldr r3, [pc, #0x48]
|
|
str r2, [r3]
|
|
; Line 1067
|
|
ldrh r3, [sp, #0xE]
|
|
sub r3, r3, #1
|
|
mov r3, r3, lsl #16
|
|
mov r3, r3, lsr #16
|
|
strh r3, [sp, #0xE]
|
|
; Line 1072
|
|
ldr r3, [pc, #0x28]
|
|
ldrb r3, [r3]
|
|
cmp r3, #1
|
|
ble |$LN1@Pokey_proc@2|
|
|
; Line 1073
|
|
ldrh r3, [sp, #0xE]
|
|
sub r3, r3, #1
|
|
mov r3, r3, lsl #16
|
|
mov r3, r3, lsr #16
|
|
strh r3, [sp, #0xE]
|
|
|$LN1@Pokey_proc@2|
|
|
|$LN3@Pokey_proc@2|
|
|
; Line 1076
|
|
b |$LN42@Pokey_proc@2|
|
|
|$LN41@Pokey_proc@2|
|
|
; Line 1093
|
|
add sp, sp, #0x4C
|
|
ldmia sp, {sp, pc}
|
|
|$LN73@Pokey_proc@2|
|
|
DCD |Num_pokeys|
|
|
DCD |Samp_n_cnt|
|
|
DCD |Samp_n_max|
|
|
DCD |AUDV|
|
|
DCD |Outvol|
|
|
DCD |AUDCTL|
|
|
DCD |P17|
|
|
DCD |poly17_lookup|
|
|
DCD |P9|
|
|
DCD |poly9_lookup|
|
|
DCD |P4|
|
|
DCD |bit4|
|
|
DCD |P5|
|
|
DCD |bit5|
|
|
DCD |AUDC|
|
|
DCD |Div_n_cnt|
|
|
DCD |Div_n_max|
|
|
DCD |__imp___rt_udiv|
|
|
|$M1478|
|
|
|
|
ENDP ; |Pokey_process_8|
|
|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1486| DCD |$LN11@Pokey_proc@3|
|
|
DCD 0x40003604
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|Pokey_process_16| PROC
|
|
; Line 1139
|
|
|$LN11@Pokey_proc@3|
|
|
mov r12, sp
|
|
stmdb sp!, {r0, r1}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #0xC
|
|
|$M1483|
|
|
; Line 1140
|
|
ldr r3, [sp, #0x14]
|
|
str r3, [sp, #4]
|
|
; Line 1143
|
|
ldr r1, [sp, #0x18]
|
|
ldr r0, [sp, #4]
|
|
bl Pokey_process_8
|
|
; Line 1145
|
|
ldr r3, [sp, #0x18]
|
|
sub r3, r3, #1
|
|
str r3, [sp]
|
|
b |$LN6@Pokey_proc@3|
|
|
|$LN5@Pokey_proc@3|
|
|
ldr r3, [sp]
|
|
sub r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN6@Pokey_proc@3|
|
|
ldr r3, [sp]
|
|
cmp r3, #0
|
|
blt |$LN4@Pokey_proc@3|
|
|
; Line 1146
|
|
ldr r2, [sp, #4]
|
|
ldr r3, [sp]
|
|
add r3, r2, r3
|
|
ldrb r3, [r3]
|
|
sub r2, r3, #0x80
|
|
mov r3, #1, 24
|
|
mul r3, r2, r3
|
|
str r3, [sp, #8]
|
|
; Line 1148
|
|
ldr r2, [sp, #8]
|
|
mov r3, #0x7F, 24
|
|
orr r3, r3, #0xFF
|
|
cmp r2, r3
|
|
ble |$LN3@Pokey_proc@3|
|
|
; Line 1149
|
|
mov r3, #0x7F, 24
|
|
orr r3, r3, #0xFF
|
|
str r3, [sp, #8]
|
|
b |$LN2@Pokey_proc@3|
|
|
|$LN3@Pokey_proc@3|
|
|
; Line 1150
|
|
ldr r3, [sp, #8]
|
|
cmn r3, #2, 18
|
|
bge |$LN1@Pokey_proc@3|
|
|
; Line 1151
|
|
mvn r3, #0xFF
|
|
mov r3, r3, lsl #7
|
|
str r3, [sp, #8]
|
|
|$LN1@Pokey_proc@3|
|
|
|$LN2@Pokey_proc@3|
|
|
; Line 1153
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #4]
|
|
add r2, r3, r2
|
|
ldr r3, [sp, #8]
|
|
mov r3, r3, lsl #16
|
|
mov r3, r3, lsr #16
|
|
strh r3, [r2]
|
|
; Line 1154
|
|
b |$LN5@Pokey_proc@3|
|
|
|$LN4@Pokey_proc@3|
|
|
; Line 1155
|
|
add sp, sp, #0xC
|
|
ldmia sp, {sp, pc}
|
|
|$M1484|
|
|
|
|
ENDP ; |Pokey_process_16|
|
|
|
|
END
|