3490 lines
81 KiB
NASM
Executable File
3490 lines
81 KiB
NASM
Executable File
; Listing generated by Microsoft (R) Optimizing Compiler Version 14.00.50727
|
|
|
|
TTL d:\MyProject\VS2005\Tcpmp\tcpmp\amr\26204\dec_util.c
|
|
CODE32
|
|
|
|
AREA |.drectve|, DRECTVE
|
|
DCB "-defaultlib:LIBCMT "
|
|
DCB "-defaultlib:OLDNAMES "
|
|
|
|
EXPORT |D_UTIL_random|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1759| DCD |$LN5@D_UTIL_ran|
|
|
DCD 0x40001504
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_UTIL_random| PROC
|
|
; File d:\myproject\vs2005\tcpmp\tcpmp\amr\26204\dec_util.c
|
|
; Line 52
|
|
|$LN5@D_UTIL_ran|
|
|
mov r12, sp
|
|
stmdb sp!, {r0}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #4
|
|
|$M1756|
|
|
; Line 54
|
|
ldr r3, [sp, #0xC]
|
|
ldrsh r2, [r3]
|
|
mov r3, #0x1F, 22
|
|
orr r3, r3, #0x4D
|
|
mul r3, r2, r3
|
|
add r3, r3, #0x36, 24
|
|
add r3, r3, #0x19
|
|
mov r2, r3, lsl #16
|
|
mov r2, r2, asr #16
|
|
ldr r3, [sp, #0xC]
|
|
strh r2, [r3]
|
|
; Line 55
|
|
ldr r3, [sp, #0xC]
|
|
ldrsh r3, [r3]
|
|
strh r3, [sp]
|
|
; Line 56
|
|
ldrsh r0, [sp]
|
|
add sp, sp, #4
|
|
ldmia sp, {sp, pc}
|
|
|$M1757|
|
|
|
|
ENDP ; |D_UTIL_random|
|
|
|
|
EXPORT |D_UTIL_pow2|
|
|
IMPORT |D_ROM_pow2|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1765| DCD |$LN8@D_UTIL_pow|
|
|
DCD 0x40005104
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_UTIL_pow2| PROC
|
|
; Line 84
|
|
|$LN8@D_UTIL_pow|
|
|
mov r12, sp
|
|
stmdb sp!, {r0, r1}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #0x18
|
|
|$M1762|
|
|
; Line 88
|
|
ldrsh r2, [sp, #0x24]
|
|
mov r3, #0x20
|
|
mul r3, r2, r3
|
|
str r3, [sp, #0x10]
|
|
; Line 89
|
|
ldr r3, [sp, #0x10]
|
|
mov r3, r3, asr #15
|
|
str r3, [sp, #8]
|
|
; Line 90
|
|
ldr r3, [sp, #0x10]
|
|
mov r3, r3, lsl #16
|
|
mov r3, r3, asr #16
|
|
strh r3, [sp]
|
|
; Line 91
|
|
ldrsh r2, [sp]
|
|
mov r3, #0x7F, 24
|
|
orr r3, r3, #0xFF
|
|
and r3, r2, r3
|
|
mov r3, r3, lsl #16
|
|
mov r3, r3, asr #16
|
|
strh r3, [sp]
|
|
; Line 92
|
|
ldr r1, [sp, #8]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0xD4]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
mov r3, r3, lsl #16
|
|
str r3, [sp, #0x10]
|
|
; Line 93
|
|
ldr r1, [sp, #8]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0xB4]
|
|
add r3, r3, r2
|
|
ldrsh r0, [r3]
|
|
ldr r3, [sp, #8]
|
|
add r1, r3, #1
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x98]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
sub r3, r0, r3
|
|
str r3, [sp, #0xC]
|
|
; Line 94
|
|
ldrsh r3, [sp]
|
|
ldr r2, [sp, #0xC]
|
|
mul r3, r2, r3
|
|
mov r2, r3, lsl #1
|
|
ldr r3, [sp, #0x10]
|
|
sub r3, r3, r2
|
|
str r3, [sp, #0xC]
|
|
; Line 95
|
|
ldrsh r3, [sp, #0x20]
|
|
rsb r3, r3, #0x1E
|
|
str r3, [sp, #4]
|
|
; Line 96
|
|
ldr r3, [sp, #4]
|
|
cmp r3, #0x1F
|
|
bgt |$LN3@D_UTIL_pow|
|
|
; Line 98
|
|
ldr r2, [sp, #0xC]
|
|
ldr r3, [sp, #4]
|
|
mov r3, r2, asr r3
|
|
str r3, [sp, #0x10]
|
|
; Line 100
|
|
ldr r3, [sp, #4]
|
|
sub r2, r3, #1
|
|
mov r3, #1
|
|
mov r2, r3, lsl r2
|
|
ldr r3, [sp, #0xC]
|
|
tst r2, r3
|
|
beq |$LN2@D_UTIL_pow|
|
|
; Line 102
|
|
ldr r3, [sp, #0x10]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0x10]
|
|
|$LN2@D_UTIL_pow|
|
|
; Line 105
|
|
b |$LN1@D_UTIL_pow|
|
|
|$LN3@D_UTIL_pow|
|
|
; Line 107
|
|
mov r3, #0
|
|
str r3, [sp, #0x10]
|
|
|$LN1@D_UTIL_pow|
|
|
; Line 110
|
|
ldr r3, [sp, #0x10]
|
|
str r3, [sp, #0x14]
|
|
; Line 111
|
|
ldr r0, [sp, #0x14]
|
|
add sp, sp, #0x18
|
|
ldmia sp, {sp, pc}
|
|
|$LN9@D_UTIL_pow|
|
|
DCD |D_ROM_pow2|
|
|
|$M1763|
|
|
|
|
ENDP ; |D_UTIL_pow2|
|
|
|
|
EXPORT |D_UTIL_norm_l|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1772| DCD |$LN13@D_UTIL_nor|
|
|
DCD 0x40002a04
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_UTIL_norm_l| PROC
|
|
; Line 134
|
|
|$LN13@D_UTIL_nor|
|
|
mov r12, sp
|
|
stmdb sp!, {r0}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #8
|
|
|$M1769|
|
|
; Line 137
|
|
ldr r3, [sp, #0x10]
|
|
cmp r3, #0
|
|
bne |$LN8@D_UTIL_nor|
|
|
; Line 139
|
|
mov r3, #0
|
|
strh r3, [sp]
|
|
; Line 141
|
|
b |$LN7@D_UTIL_nor|
|
|
|$LN8@D_UTIL_nor|
|
|
; Line 143
|
|
ldr r3, [sp, #0x10]
|
|
cmn r3, #1
|
|
bne |$LN6@D_UTIL_nor|
|
|
; Line 145
|
|
mov r3, #0x1F
|
|
strh r3, [sp]
|
|
; Line 147
|
|
b |$LN5@D_UTIL_nor|
|
|
|$LN6@D_UTIL_nor|
|
|
; Line 149
|
|
ldr r3, [sp, #0x10]
|
|
cmp r3, #0
|
|
bge |$LN4@D_UTIL_nor|
|
|
; Line 151
|
|
ldr r3, [sp, #0x10]
|
|
mvn r3, r3
|
|
str r3, [sp, #0x10]
|
|
|$LN4@D_UTIL_nor|
|
|
; Line 154
|
|
mov r3, #0
|
|
strh r3, [sp]
|
|
b |$LN3@D_UTIL_nor|
|
|
|$LN2@D_UTIL_nor|
|
|
ldrsh r3, [sp]
|
|
add r3, r3, #1
|
|
mov r3, r3, lsl #16
|
|
mov r3, r3, asr #16
|
|
strh r3, [sp]
|
|
|$LN3@D_UTIL_nor|
|
|
ldr r3, [sp, #0x10]
|
|
cmp r3, #1, 2
|
|
bge |$LN1@D_UTIL_nor|
|
|
; Line 156
|
|
ldr r3, [sp, #0x10]
|
|
mov r3, r3, lsl #1
|
|
str r3, [sp, #0x10]
|
|
; Line 157
|
|
b |$LN2@D_UTIL_nor|
|
|
|$LN1@D_UTIL_nor|
|
|
|$LN5@D_UTIL_nor|
|
|
|$LN7@D_UTIL_nor|
|
|
; Line 161
|
|
ldrsh r3, [sp]
|
|
strh r3, [sp, #4]
|
|
; Line 162
|
|
ldrsh r0, [sp, #4]
|
|
add sp, sp, #8
|
|
ldmia sp, {sp, pc}
|
|
|$M1770|
|
|
|
|
ENDP ; |D_UTIL_norm_l|
|
|
|
|
EXPORT |D_UTIL_norm_s|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1778| DCD |$LN13@D_UTIL_nor@2|
|
|
DCD 0x40002e04
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_UTIL_norm_s| PROC
|
|
; Line 183
|
|
|$LN13@D_UTIL_nor@2|
|
|
mov r12, sp
|
|
stmdb sp!, {r0}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #8
|
|
|$M1775|
|
|
; Line 186
|
|
ldrsh r3, [sp, #0x10]
|
|
cmp r3, #0
|
|
bne |$LN8@D_UTIL_nor@2|
|
|
; Line 188
|
|
mov r3, #0
|
|
strh r3, [sp]
|
|
; Line 190
|
|
b |$LN7@D_UTIL_nor@2|
|
|
|$LN8@D_UTIL_nor@2|
|
|
; Line 192
|
|
ldrsh r3, [sp, #0x10]
|
|
cmn r3, #1
|
|
bne |$LN6@D_UTIL_nor@2|
|
|
; Line 194
|
|
mov r3, #0xF
|
|
strh r3, [sp]
|
|
; Line 196
|
|
b |$LN5@D_UTIL_nor@2|
|
|
|$LN6@D_UTIL_nor@2|
|
|
; Line 198
|
|
ldrsh r3, [sp, #0x10]
|
|
cmp r3, #0
|
|
bpl |$LN4@D_UTIL_nor@2|
|
|
; Line 200
|
|
ldrsh r3, [sp, #0x10]
|
|
mvn r3, r3
|
|
mov r3, r3, lsl #16
|
|
mov r3, r3, asr #16
|
|
strh r3, [sp, #0x10]
|
|
|$LN4@D_UTIL_nor@2|
|
|
; Line 203
|
|
mov r3, #0
|
|
strh r3, [sp]
|
|
b |$LN3@D_UTIL_nor@2|
|
|
|$LN2@D_UTIL_nor@2|
|
|
ldrsh r3, [sp]
|
|
add r3, r3, #1
|
|
mov r3, r3, lsl #16
|
|
mov r3, r3, asr #16
|
|
strh r3, [sp]
|
|
|$LN3@D_UTIL_nor@2|
|
|
ldrsh r3, [sp, #0x10]
|
|
cmp r3, #1, 18
|
|
bge |$LN1@D_UTIL_nor@2|
|
|
; Line 205
|
|
ldrsh r3, [sp, #0x10]
|
|
mov r3, r3, lsl #1
|
|
mov r3, r3, lsl #16
|
|
mov r3, r3, asr #16
|
|
strh r3, [sp, #0x10]
|
|
; Line 206
|
|
b |$LN2@D_UTIL_nor@2|
|
|
|$LN1@D_UTIL_nor@2|
|
|
|$LN5@D_UTIL_nor@2|
|
|
|$LN7@D_UTIL_nor@2|
|
|
; Line 209
|
|
ldrsh r3, [sp]
|
|
strh r3, [sp, #4]
|
|
; Line 210
|
|
ldrsh r0, [sp, #4]
|
|
add sp, sp, #8
|
|
ldmia sp, {sp, pc}
|
|
|$M1776|
|
|
|
|
ENDP ; |D_UTIL_norm_s|
|
|
|
|
EXPORT |D_UTIL_dot_product12|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1784| DCD |$LN8@D_UTIL_dot|
|
|
DCD 0x40003904
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_UTIL_dot_product12| PROC
|
|
; Line 230
|
|
|$LN8@D_UTIL_dot|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r3}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #0x14
|
|
|$M1781|
|
|
; Line 233
|
|
mov r3, #0
|
|
str r3, [sp, #4]
|
|
; Line 235
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN3@D_UTIL_dot|
|
|
|$LN2@D_UTIL_dot|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN3@D_UTIL_dot|
|
|
ldrsh r2, [sp, #0x24]
|
|
ldr r3, [sp]
|
|
cmp r3, r2
|
|
bge |$LN1@D_UTIL_dot|
|
|
; Line 237
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x1C]
|
|
add r3, r3, r2
|
|
ldrsh r0, [r3]
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x20]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
mul r2, r0, r3
|
|
ldr r3, [sp, #4]
|
|
add r3, r3, r2
|
|
str r3, [sp, #4]
|
|
; Line 238
|
|
b |$LN2@D_UTIL_dot|
|
|
|$LN1@D_UTIL_dot|
|
|
; Line 239
|
|
ldr r3, [sp, #4]
|
|
mov r3, r3, lsl #1
|
|
add r3, r3, #1
|
|
str r3, [sp, #4]
|
|
; Line 242
|
|
ldr r0, [sp, #4]
|
|
bl D_UTIL_norm_l
|
|
strh r0, [sp, #0x10]
|
|
ldrsh r3, [sp, #0x10]
|
|
str r3, [sp, #8]
|
|
; Line 243
|
|
ldr r2, [sp, #4]
|
|
ldr r3, [sp, #8]
|
|
mov r3, r2, lsl r3
|
|
str r3, [sp, #4]
|
|
; Line 244
|
|
ldr r3, [sp, #8]
|
|
rsb r3, r3, #0x1E
|
|
mov r2, r3, lsl #16
|
|
mov r2, r2, asr #16
|
|
ldr r3, [sp, #0x28]
|
|
strh r2, [r3]
|
|
; Line 246
|
|
ldr r3, [sp, #4]
|
|
str r3, [sp, #0xC]
|
|
; Line 247
|
|
ldr r0, [sp, #0xC]
|
|
add sp, sp, #0x14
|
|
ldmia sp, {sp, pc}
|
|
|$M1782|
|
|
|
|
ENDP ; |D_UTIL_dot_product12|
|
|
|
|
EXPORT |D_UTIL_normalised_inverse_sqrt|
|
|
IMPORT |D_ROM_isqrt|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1789| DCD |$LN7@D_UTIL_nor@3|
|
|
DCD 0x40006304
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_UTIL_normalised_inverse_sqrt| PROC
|
|
; Line 274
|
|
|$LN7@D_UTIL_nor@3|
|
|
mov r12, sp
|
|
stmdb sp!, {r0, r1}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #0xC
|
|
|$M1786|
|
|
; Line 278
|
|
ldr r3, [sp, #0x14]
|
|
ldr r3, [r3]
|
|
cmp r3, #0
|
|
bgt |$LN2@D_UTIL_nor@3|
|
|
; Line 280
|
|
ldr r2, [sp, #0x18]
|
|
mov r3, #0
|
|
strh r3, [r2]
|
|
; Line 281
|
|
ldr r2, [sp, #0x14]
|
|
mvn r3, #2, 2
|
|
str r3, [r2]
|
|
; Line 282
|
|
b |$LN3@D_UTIL_nor@3|
|
|
|$LN2@D_UTIL_nor@3|
|
|
; Line 285
|
|
ldr r3, [sp, #0x18]
|
|
ldrsh r3, [r3]
|
|
and r3, r3, #1
|
|
cmp r3, #1
|
|
bne |$LN1@D_UTIL_nor@3|
|
|
; Line 287
|
|
ldr r3, [sp, #0x14]
|
|
ldr r3, [r3]
|
|
mov r2, r3, asr #1
|
|
ldr r3, [sp, #0x14]
|
|
str r2, [r3]
|
|
|$LN1@D_UTIL_nor@3|
|
|
; Line 289
|
|
ldr r3, [sp, #0x18]
|
|
ldrsh r3, [r3]
|
|
sub r3, r3, #1
|
|
mov r3, r3, asr #1
|
|
rsb r3, r3, #0
|
|
mov r2, r3, lsl #16
|
|
mov r2, r2, asr #16
|
|
ldr r3, [sp, #0x18]
|
|
strh r2, [r3]
|
|
; Line 290
|
|
ldr r3, [sp, #0x14]
|
|
ldr r3, [r3]
|
|
mov r2, r3, asr #9
|
|
ldr r3, [sp, #0x14]
|
|
str r2, [r3]
|
|
; Line 291
|
|
ldr r3, [sp, #0x14]
|
|
ldr r3, [r3]
|
|
mov r3, r3, asr #16
|
|
str r3, [sp, #4]
|
|
; Line 292
|
|
ldr r3, [sp, #0x14]
|
|
ldr r3, [r3]
|
|
mov r2, r3, asr #1
|
|
ldr r3, [sp, #0x14]
|
|
str r2, [r3]
|
|
; Line 293
|
|
ldr r3, [sp, #0x14]
|
|
ldr r3, [r3]
|
|
mov r3, r3, lsl #16
|
|
mov r3, r3, asr #16
|
|
strh r3, [sp]
|
|
; Line 294
|
|
ldrsh r2, [sp]
|
|
mov r3, #0x7F, 24
|
|
orr r3, r3, #0xFF
|
|
and r3, r2, r3
|
|
mov r3, r3, lsl #16
|
|
mov r3, r3, asr #16
|
|
strh r3, [sp]
|
|
; Line 295
|
|
ldr r3, [sp, #4]
|
|
sub r3, r3, #0x10
|
|
str r3, [sp, #4]
|
|
; Line 296
|
|
ldr r1, [sp, #4]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x78]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
mov r2, r3, lsl #16
|
|
ldr r3, [sp, #0x14]
|
|
str r2, [r3]
|
|
; Line 297
|
|
ldr r1, [sp, #4]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x54]
|
|
add r3, r3, r2
|
|
ldrsh r0, [r3]
|
|
ldr r3, [sp, #4]
|
|
add r1, r3, #1
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x38]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
sub r3, r0, r3
|
|
str r3, [sp, #8]
|
|
; Line 298
|
|
ldrsh r3, [sp]
|
|
ldr r2, [sp, #8]
|
|
mul r3, r2, r3
|
|
mov r2, r3, lsl #1
|
|
ldr r3, [sp, #0x14]
|
|
ldr r3, [r3]
|
|
sub r2, r3, r2
|
|
ldr r3, [sp, #0x14]
|
|
str r2, [r3]
|
|
|$LN3@D_UTIL_nor@3|
|
|
; Line 301
|
|
add sp, sp, #0xC
|
|
ldmia sp, {sp, pc}
|
|
|$LN8@D_UTIL_nor@3|
|
|
DCD |D_ROM_isqrt|
|
|
|$M1787|
|
|
|
|
ENDP ; |D_UTIL_normalised_inverse_sqrt|
|
|
|
|
EXPORT |D_UTIL_inverse_sqrt|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1796| DCD |$LN7@D_UTIL_inv|
|
|
DCD 0x40002704
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_UTIL_inverse_sqrt| PROC
|
|
; Line 324
|
|
|$LN7@D_UTIL_inv|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r3}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #0x10
|
|
|$M1793|
|
|
; Line 328
|
|
ldr r0, [sp, #0x18]
|
|
bl D_UTIL_norm_l
|
|
strh r0, [sp, #0xC]
|
|
ldrsh r3, [sp, #0xC]
|
|
strh r3, [sp, #4]
|
|
; Line 329
|
|
ldrsh r2, [sp, #4]
|
|
ldr r3, [sp, #0x18]
|
|
mov r3, r3, lsl r2
|
|
str r3, [sp, #0x18]
|
|
; Line 330
|
|
ldrsh r3, [sp, #4]
|
|
rsb r3, r3, #0x1F
|
|
mov r3, r3, lsl #16
|
|
mov r3, r3, asr #16
|
|
strh r3, [sp, #4]
|
|
; Line 331
|
|
add r1, sp, #4
|
|
add r0, sp, #0x18
|
|
bl D_UTIL_normalised_inverse_sqrt
|
|
; Line 333
|
|
ldrsh r3, [sp, #4]
|
|
cmp r3, #0
|
|
bpl |$LN2@D_UTIL_inv|
|
|
; Line 335
|
|
ldrsh r3, [sp, #4]
|
|
rsb r2, r3, #0
|
|
ldr r3, [sp, #0x18]
|
|
mov r3, r3, asr r2
|
|
str r3, [sp]
|
|
; Line 337
|
|
b |$LN1@D_UTIL_inv|
|
|
|$LN2@D_UTIL_inv|
|
|
; Line 339
|
|
ldrsh r2, [sp, #4]
|
|
ldr r3, [sp, #0x18]
|
|
mov r3, r3, lsl r2
|
|
str r3, [sp]
|
|
|$LN1@D_UTIL_inv|
|
|
; Line 342
|
|
ldr r3, [sp]
|
|
str r3, [sp, #8]
|
|
; Line 343
|
|
ldr r0, [sp, #8]
|
|
add sp, sp, #0x10
|
|
ldmia sp, {sp, pc}
|
|
|$M1794|
|
|
|
|
ENDP ; |D_UTIL_inverse_sqrt|
|
|
|
|
EXPORT |D_UTIL_log2|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1801| DCD |$LN5@D_UTIL_log|
|
|
DCD 0x40001204
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_UTIL_log2| PROC
|
|
; Line 418
|
|
|$LN5@D_UTIL_log|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r2}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #4
|
|
|$M1798|
|
|
; Line 421
|
|
ldr r0, [sp, #0xC]
|
|
bl D_UTIL_norm_l
|
|
strh r0, [sp, #2]
|
|
ldrsh r3, [sp, #2]
|
|
strh r3, [sp]
|
|
; Line 422
|
|
ldr r3, [sp, #0x14]
|
|
ldr r2, [sp, #0x10]
|
|
ldrsh r1, [sp]
|
|
ldrsh lr, [sp]
|
|
ldr r0, [sp, #0xC]
|
|
mov r0, r0, lsl lr
|
|
bl D_UTIL_normalised_log2
|
|
; Line 423
|
|
add sp, sp, #4
|
|
ldmia sp, {sp, pc}
|
|
|$M1799|
|
|
|
|
ENDP ; |D_UTIL_log2|
|
|
|
|
IMPORT |D_ROM_log2|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1806| DCD |$LN6@D_UTIL_nor@4|
|
|
DCD 0x40004b04
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_UTIL_normalised_log2| PROC
|
|
; Line 375
|
|
|$LN6@D_UTIL_nor@4|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r3}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #0x10
|
|
|$M1803|
|
|
; Line 379
|
|
ldr r3, [sp, #0x18]
|
|
cmp r3, #0
|
|
bgt |$LN1@D_UTIL_nor@4|
|
|
; Line 381
|
|
ldr r2, [sp, #0x20]
|
|
mov r3, #0
|
|
strh r3, [r2]
|
|
; Line 382
|
|
ldr r2, [sp, #0x24]
|
|
mov r3, #0
|
|
strh r3, [r2]
|
|
; Line 383
|
|
b |$LN2@D_UTIL_nor@4|
|
|
|$LN1@D_UTIL_nor@4|
|
|
; Line 386
|
|
ldrsh r3, [sp, #0x1C]
|
|
rsb r3, r3, #0x1E
|
|
mov r2, r3, lsl #16
|
|
mov r2, r2, asr #16
|
|
ldr r3, [sp, #0x20]
|
|
strh r2, [r3]
|
|
; Line 388
|
|
ldr r3, [sp, #0x18]
|
|
mov r3, r3, asr #10
|
|
str r3, [sp, #0x18]
|
|
; Line 389
|
|
ldr r3, [sp, #0x18]
|
|
mov r3, r3, asr #15
|
|
str r3, [sp, #8]
|
|
; Line 390
|
|
ldr r3, [sp, #0x18]
|
|
str r3, [sp, #4]
|
|
; Line 391
|
|
ldr r2, [sp, #4]
|
|
mov r3, #0x7F, 24
|
|
orr r3, r3, #0xFF
|
|
and r3, r2, r3
|
|
str r3, [sp, #4]
|
|
; Line 392
|
|
ldr r3, [sp, #8]
|
|
sub r3, r3, #0x20
|
|
str r3, [sp, #8]
|
|
; Line 393
|
|
ldr r1, [sp, #8]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x84]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
mov r3, r3, lsl #16
|
|
str r3, [sp]
|
|
; Line 394
|
|
ldr r1, [sp, #8]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x64]
|
|
add r3, r3, r2
|
|
ldrsh r0, [r3]
|
|
ldr r3, [sp, #8]
|
|
add r1, r3, #1
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x48]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
sub r3, r0, r3
|
|
str r3, [sp, #0xC]
|
|
; Line 395
|
|
ldr r2, [sp, #0xC]
|
|
ldr r3, [sp, #4]
|
|
mul r3, r2, r3
|
|
mov r2, r3, lsl #1
|
|
ldr r3, [sp]
|
|
sub r3, r3, r2
|
|
str r3, [sp]
|
|
; Line 396
|
|
ldr r3, [sp]
|
|
mov r3, r3, asr #16
|
|
mov r2, r3, lsl #16
|
|
mov r2, r2, asr #16
|
|
ldr r3, [sp, #0x24]
|
|
strh r2, [r3]
|
|
|$LN2@D_UTIL_nor@4|
|
|
; Line 399
|
|
add sp, sp, #0x10
|
|
ldmia sp, {sp, pc}
|
|
|$LN7@D_UTIL_nor@4|
|
|
DCD |D_ROM_log2|
|
|
|$M1804|
|
|
|
|
ENDP ; |D_UTIL_normalised_log2|
|
|
|
|
EXPORT |D_UTIL_l_extract|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1812| DCD |$LN5@D_UTIL_l_e|
|
|
DCD 0x40001503
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_UTIL_l_extract| PROC
|
|
; Line 441
|
|
|$LN5@D_UTIL_l_e|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r2}
|
|
stmdb sp!, {r12, lr}
|
|
|$M1809|
|
|
; Line 442
|
|
ldr r3, [sp, #8]
|
|
mov r3, r3, asr #16
|
|
mov r2, r3, lsl #16
|
|
mov r2, r2, asr #16
|
|
ldr r3, [sp, #0xC]
|
|
strh r2, [r3]
|
|
; Line 443
|
|
ldr r3, [sp, #8]
|
|
mov r1, r3, asr #1
|
|
ldr r3, [sp, #0xC]
|
|
ldrsh r2, [r3]
|
|
mov r3, #2, 18
|
|
mul r3, r2, r3
|
|
sub r3, r1, r3
|
|
mov r2, r3, lsl #16
|
|
mov r2, r2, asr #16
|
|
ldr r3, [sp, #0x10]
|
|
strh r2, [r3]
|
|
; Line 446
|
|
ldmia sp, {sp, pc}
|
|
|$M1810|
|
|
|
|
ENDP ; |D_UTIL_l_extract|
|
|
|
|
EXPORT |D_UTIL_mpy_32_16|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1818| DCD |$LN5@D_UTIL_mpy|
|
|
DCD 0x40001504
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_UTIL_mpy_32_16| PROC
|
|
; Line 467
|
|
|$LN5@D_UTIL_mpy|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r2}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #8
|
|
|$M1815|
|
|
; Line 470
|
|
ldrsh r2, [sp, #0x10]
|
|
ldrsh r3, [sp, #0x18]
|
|
mul r3, r2, r3
|
|
str r3, [sp]
|
|
; Line 471
|
|
ldrsh r2, [sp, #0x14]
|
|
ldrsh r3, [sp, #0x18]
|
|
mul r3, r2, r3
|
|
mov r2, r3, asr #15
|
|
ldr r3, [sp]
|
|
add r3, r3, r2
|
|
str r3, [sp]
|
|
; Line 473
|
|
ldr r3, [sp]
|
|
mov r3, r3, lsl #1
|
|
str r3, [sp, #4]
|
|
; Line 474
|
|
ldr r0, [sp, #4]
|
|
add sp, sp, #8
|
|
ldmia sp, {sp, pc}
|
|
|$M1816|
|
|
|
|
ENDP ; |D_UTIL_mpy_32_16|
|
|
|
|
EXPORT |D_UTIL_mpy_32|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1824| DCD |$LN5@D_UTIL_mpy@2|
|
|
DCD 0x40001c04
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_UTIL_mpy_32| PROC
|
|
; Line 495
|
|
|$LN5@D_UTIL_mpy@2|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r3}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #8
|
|
|$M1821|
|
|
; Line 498
|
|
ldrsh r2, [sp, #0x10]
|
|
ldrsh r3, [sp, #0x18]
|
|
mul r3, r2, r3
|
|
str r3, [sp]
|
|
; Line 499
|
|
ldrsh r2, [sp, #0x10]
|
|
ldrsh r3, [sp, #0x1C]
|
|
mul r3, r2, r3
|
|
mov r2, r3, asr #15
|
|
ldr r3, [sp]
|
|
add r3, r3, r2
|
|
str r3, [sp]
|
|
; Line 500
|
|
ldrsh r2, [sp, #0x14]
|
|
ldrsh r3, [sp, #0x18]
|
|
mul r3, r2, r3
|
|
mov r2, r3, asr #15
|
|
ldr r3, [sp]
|
|
add r3, r3, r2
|
|
str r3, [sp]
|
|
; Line 502
|
|
ldr r3, [sp]
|
|
mov r3, r3, lsl #1
|
|
str r3, [sp, #4]
|
|
; Line 503
|
|
ldr r0, [sp, #4]
|
|
add sp, sp, #8
|
|
ldmia sp, {sp, pc}
|
|
|$M1822|
|
|
|
|
ENDP ; |D_UTIL_mpy_32|
|
|
|
|
EXPORT |D_UTIL_saturate|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1834| DCD |$LN13@D_UTIL_sat|
|
|
DCD 0x40002e04
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_UTIL_saturate| PROC
|
|
; Line 518
|
|
|$LN13@D_UTIL_sat|
|
|
mov r12, sp
|
|
stmdb sp!, {r0}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #0x10
|
|
|$M1831|
|
|
; Line 520
|
|
ldr r2, [sp, #0x18]
|
|
mov r3, #0x7F, 24
|
|
orr r3, r3, #0xFF
|
|
cmp r2, r3
|
|
bge |$LN9@D_UTIL_sat|
|
|
mov r3, #1
|
|
str r3, [sp, #8]
|
|
b |$LN10@D_UTIL_sat|
|
|
|$LN9@D_UTIL_sat|
|
|
mov r3, #0
|
|
str r3, [sp, #8]
|
|
|$LN10@D_UTIL_sat|
|
|
ldr r3, [sp, #0x18]
|
|
cmn r3, #2, 18
|
|
ble |$LN7@D_UTIL_sat|
|
|
mov r3, #1
|
|
str r3, [sp, #0xC]
|
|
b |$LN8@D_UTIL_sat|
|
|
|$LN7@D_UTIL_sat|
|
|
mov r3, #0
|
|
str r3, [sp, #0xC]
|
|
|$LN8@D_UTIL_sat|
|
|
ldr r2, [sp, #8]
|
|
ldr r3, [sp, #0xC]
|
|
tst r2, r3
|
|
beq |$LN4@D_UTIL_sat|
|
|
; Line 522
|
|
ldr r3, [sp, #0x18]
|
|
mov r3, r3, lsl #16
|
|
mov r3, r3, asr #16
|
|
strh r3, [sp]
|
|
; Line 524
|
|
b |$LN3@D_UTIL_sat|
|
|
|$LN4@D_UTIL_sat|
|
|
; Line 526
|
|
ldr r3, [sp, #0x18]
|
|
cmp r3, #0
|
|
ble |$LN2@D_UTIL_sat|
|
|
; Line 528
|
|
mov r3, #0x7F, 24
|
|
orr r3, r3, #0xFF
|
|
strh r3, [sp]
|
|
; Line 530
|
|
b |$LN1@D_UTIL_sat|
|
|
|$LN2@D_UTIL_sat|
|
|
; Line 532
|
|
mvn r3, #0xFF
|
|
mov r3, r3, lsl #7
|
|
strh r3, [sp]
|
|
|$LN1@D_UTIL_sat|
|
|
|$LN3@D_UTIL_sat|
|
|
; Line 536
|
|
ldrsh r3, [sp]
|
|
strh r3, [sp, #4]
|
|
; Line 537
|
|
ldrsh r0, [sp, #4]
|
|
add sp, sp, #0x10
|
|
ldmia sp, {sp, pc}
|
|
|$M1832|
|
|
|
|
ENDP ; |D_UTIL_saturate|
|
|
|
|
EXPORT |D_UTIL_signal_up_scale|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1839| DCD |$LN8@D_UTIL_sig|
|
|
DCD 0x40002404
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_UTIL_signal_up_scale| PROC
|
|
; Line 554
|
|
|$LN8@D_UTIL_sig|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r2}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #0xC
|
|
|$M1836|
|
|
; Line 557
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN3@D_UTIL_sig|
|
|
|$LN2@D_UTIL_sig|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN3@D_UTIL_sig|
|
|
ldrsh r2, [sp, #0x18]
|
|
ldr r3, [sp]
|
|
cmp r3, r2
|
|
bge |$LN1@D_UTIL_sig|
|
|
; Line 559
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x14]
|
|
add r3, r3, r2
|
|
ldrsh r2, [r3]
|
|
ldrsh r3, [sp, #0x1C]
|
|
mov r3, r2, lsl r3
|
|
str r3, [sp, #4]
|
|
; Line 560
|
|
ldr r0, [sp, #4]
|
|
bl D_UTIL_saturate
|
|
strh r0, [sp, #8]
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x14]
|
|
add r2, r3, r2
|
|
ldrsh r3, [sp, #8]
|
|
strh r3, [r2]
|
|
; Line 561
|
|
b |$LN2@D_UTIL_sig|
|
|
|$LN1@D_UTIL_sig|
|
|
; Line 564
|
|
add sp, sp, #0xC
|
|
ldmia sp, {sp, pc}
|
|
|$M1837|
|
|
|
|
ENDP ; |D_UTIL_signal_up_scale|
|
|
|
|
EXPORT |D_UTIL_signal_down_scale|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1844| DCD |$LN8@D_UTIL_sig@2|
|
|
DCD 0x40002804
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_UTIL_signal_down_scale| PROC
|
|
; Line 582
|
|
|$LN8@D_UTIL_sig@2|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r2}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #8
|
|
|$M1841|
|
|
; Line 585
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN3@D_UTIL_sig@2|
|
|
|$LN2@D_UTIL_sig@2|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN3@D_UTIL_sig@2|
|
|
ldrsh r2, [sp, #0x14]
|
|
ldr r3, [sp]
|
|
cmp r3, r2
|
|
bge |$LN1@D_UTIL_sig@2|
|
|
; Line 587
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x10]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
mov r3, r3, lsl #16
|
|
str r3, [sp, #4]
|
|
; Line 588
|
|
ldrsh r2, [sp, #0x18]
|
|
ldr r3, [sp, #4]
|
|
mov r3, r3, asr r2
|
|
str r3, [sp, #4]
|
|
; Line 589
|
|
ldr r3, [sp, #4]
|
|
add r3, r3, #2, 18
|
|
mov r3, r3, asr #16
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x10]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 590
|
|
b |$LN2@D_UTIL_sig@2|
|
|
|$LN1@D_UTIL_sig@2|
|
|
; Line 593
|
|
add sp, sp, #8
|
|
ldmia sp, {sp, pc}
|
|
|$M1842|
|
|
|
|
ENDP ; |D_UTIL_signal_down_scale|
|
|
|
|
EXPORT |D_UTIL_interpol|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1854| DCD |$LN16@D_UTIL_int|
|
|
DCD 0x40006504
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_UTIL_interpol| PROC
|
|
; Line 793
|
|
|$LN16@D_UTIL_int|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r3}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #0x18
|
|
|$M1851|
|
|
; Line 797
|
|
ldrsh r1, [sp, #0x30]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x20]
|
|
sub r3, r3, r2
|
|
add r3, r3, #2
|
|
str r3, [sp, #0x20]
|
|
; Line 798
|
|
mov r3, #0
|
|
str r3, [sp, #4]
|
|
; Line 801
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
ldrsh r3, [sp, #0x2C]
|
|
sub r2, r3, #1
|
|
ldrsh r3, [sp, #0x28]
|
|
sub r3, r2, r3
|
|
str r3, [sp, #8]
|
|
b |$LN7@D_UTIL_int|
|
|
|$LN6@D_UTIL_int|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
ldrsh r2, [sp, #0x2C]
|
|
ldr r3, [sp, #8]
|
|
add r3, r3, r2
|
|
mov r3, r3, lsl #16
|
|
mov r3, r3, asr #16
|
|
str r3, [sp, #8]
|
|
|$LN7@D_UTIL_int|
|
|
ldrsh r1, [sp, #0x30]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp]
|
|
cmp r3, r2
|
|
bge |$LN5@D_UTIL_int|
|
|
; Line 803
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x20]
|
|
add r3, r3, r2
|
|
ldrsh r0, [r3]
|
|
ldr r1, [sp, #8]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x24]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
mul r2, r0, r3
|
|
ldr r3, [sp, #4]
|
|
add r3, r3, r2
|
|
str r3, [sp, #4]
|
|
; Line 804
|
|
b |$LN6@D_UTIL_int|
|
|
|$LN5@D_UTIL_int|
|
|
; Line 806
|
|
ldr r2, [sp, #4]
|
|
mov r3, #2, 4
|
|
sub r3, r3, #6, 20
|
|
cmp r2, r3
|
|
bge |$LN12@D_UTIL_int|
|
|
mov r3, #1
|
|
str r3, [sp, #0x10]
|
|
b |$LN13@D_UTIL_int|
|
|
|$LN12@D_UTIL_int|
|
|
mov r3, #0
|
|
str r3, [sp, #0x10]
|
|
|$LN13@D_UTIL_int|
|
|
ldr r2, [sp, #4]
|
|
mvn r3, #1, 16
|
|
mov r3, r3, lsl #13
|
|
cmp r2, r3
|
|
ble |$LN10@D_UTIL_int|
|
|
mov r3, #1
|
|
str r3, [sp, #0x14]
|
|
b |$LN11@D_UTIL_int|
|
|
|$LN10@D_UTIL_int|
|
|
mov r3, #0
|
|
str r3, [sp, #0x14]
|
|
|$LN11@D_UTIL_int|
|
|
ldr r2, [sp, #0x10]
|
|
ldr r3, [sp, #0x14]
|
|
tst r2, r3
|
|
beq |$LN4@D_UTIL_int|
|
|
; Line 808
|
|
ldr r3, [sp, #4]
|
|
add r3, r3, #2, 20
|
|
mov r3, r3, asr #14
|
|
str r3, [sp, #4]
|
|
b |$LN3@D_UTIL_int|
|
|
|$LN4@D_UTIL_int|
|
|
; Line 810
|
|
ldr r2, [sp, #4]
|
|
mov r3, #2, 4
|
|
sub r3, r3, #6, 20
|
|
cmp r2, r3
|
|
ble |$LN2@D_UTIL_int|
|
|
; Line 812
|
|
mov r3, #0x7F, 24
|
|
orr r3, r3, #0xFF
|
|
str r3, [sp, #4]
|
|
; Line 814
|
|
b |$LN1@D_UTIL_int|
|
|
|$LN2@D_UTIL_int|
|
|
; Line 816
|
|
mvn r3, #0xFF
|
|
mov r3, r3, lsl #7
|
|
str r3, [sp, #4]
|
|
|$LN1@D_UTIL_int|
|
|
|$LN3@D_UTIL_int|
|
|
; Line 819
|
|
ldr r3, [sp, #4]
|
|
mov r3, r3, lsl #16
|
|
mov r3, r3, asr #16
|
|
strh r3, [sp, #0xC]
|
|
; Line 820
|
|
ldrsh r0, [sp, #0xC]
|
|
add sp, sp, #0x18
|
|
ldmia sp, {sp, pc}
|
|
|$M1852|
|
|
|
|
ENDP ; |D_UTIL_interpol|
|
|
|
|
EXPORT |D_UTIL_hp400_12k8|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1859| DCD |$LN8@D_UTIL_hp4|
|
|
DCD 0x40009304
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_UTIL_hp400_12k8| PROC
|
|
; Line 911
|
|
|$LN8@D_UTIL_hp4|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r2}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #0x18
|
|
|$M1856|
|
|
; Line 916
|
|
ldr r3, [sp, #0x28]
|
|
ldrsh r3, [r3]
|
|
strh r3, [sp, #0xE]
|
|
; Line 917
|
|
ldr r3, [sp, #0x28]
|
|
add r3, r3, #2
|
|
ldrsh r3, [r3]
|
|
strh r3, [sp, #8]
|
|
; Line 918
|
|
ldr r3, [sp, #0x28]
|
|
add r3, r3, #4
|
|
ldrsh r3, [r3]
|
|
strh r3, [sp, #0xA]
|
|
; Line 919
|
|
ldr r3, [sp, #0x28]
|
|
add r3, r3, #6
|
|
ldrsh r3, [r3]
|
|
strh r3, [sp]
|
|
; Line 920
|
|
ldr r3, [sp, #0x28]
|
|
add r3, r3, #8
|
|
ldrsh r3, [r3]
|
|
strh r3, [sp, #0x10]
|
|
; Line 921
|
|
ldr r3, [sp, #0x28]
|
|
add r3, r3, #0xA
|
|
ldrsh r3, [r3]
|
|
strh r3, [sp, #0xC]
|
|
; Line 923
|
|
mov r3, #0
|
|
str r3, [sp, #4]
|
|
b |$LN3@D_UTIL_hp4|
|
|
|$LN2@D_UTIL_hp4|
|
|
ldr r3, [sp, #4]
|
|
add r3, r3, #1
|
|
str r3, [sp, #4]
|
|
|$LN3@D_UTIL_hp4|
|
|
ldrsh r2, [sp, #0x24]
|
|
ldr r3, [sp, #4]
|
|
cmp r3, r2
|
|
bge |$LN1@D_UTIL_hp4|
|
|
; Line 925
|
|
ldrsh r3, [sp, #0xC]
|
|
strh r3, [sp, #2]
|
|
; Line 926
|
|
ldrsh r3, [sp, #0x10]
|
|
strh r3, [sp, #0xC]
|
|
; Line 927
|
|
ldr r1, [sp, #4]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x20]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
strh r3, [sp, #0x10]
|
|
; Line 931
|
|
ldrsh r2, [sp]
|
|
mov r3, #0x72, 24
|
|
orr r3, r3, #0x60
|
|
mul r3, r2, r3
|
|
add r3, r3, #2, 20
|
|
str r3, [sp, #0x14]
|
|
; Line 932
|
|
ldrsh r1, [sp, #8]
|
|
mvn r3, #0xDD, 30
|
|
mov r3, r3, lsl #4
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x14]
|
|
add r3, r3, r2
|
|
str r3, [sp, #0x14]
|
|
; Line 933
|
|
ldr r3, [sp, #0x14]
|
|
mov r3, r3, asr #14
|
|
str r3, [sp, #0x14]
|
|
; Line 934
|
|
ldrsh r1, [sp, #0xA]
|
|
mov r3, #0x39, 22
|
|
orr r3, r3, #0xC0
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x14]
|
|
add r3, r3, r2
|
|
str r3, [sp, #0x14]
|
|
; Line 935
|
|
ldrsh r1, [sp, #0xE]
|
|
mvn r3, #0xDD, 30
|
|
mov r3, r3, lsl #5
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x14]
|
|
add r3, r3, r2
|
|
str r3, [sp, #0x14]
|
|
; Line 936
|
|
ldrsh r1, [sp, #0x10]
|
|
mov r3, #7, 24
|
|
orr r3, r3, #0x26
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x14]
|
|
add r3, r3, r2
|
|
str r3, [sp, #0x14]
|
|
; Line 937
|
|
ldrsh r1, [sp, #0xC]
|
|
mvn r3, #0xE, 24
|
|
eor r3, r3, #0x4B
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x14]
|
|
add r3, r3, r2
|
|
str r3, [sp, #0x14]
|
|
; Line 938
|
|
ldrsh r1, [sp, #2]
|
|
mov r3, #7, 24
|
|
orr r3, r3, #0x26
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x14]
|
|
add r3, r3, r2
|
|
str r3, [sp, #0x14]
|
|
; Line 939
|
|
ldr r3, [sp, #0x14]
|
|
mov r3, r3, lsl #1
|
|
str r3, [sp, #0x14]
|
|
; Line 940
|
|
ldrsh r3, [sp, #0xA]
|
|
strh r3, [sp, #0xE]
|
|
; Line 941
|
|
ldrsh r3, [sp]
|
|
strh r3, [sp, #8]
|
|
; Line 942
|
|
add r2, sp, #0
|
|
add r1, sp, #0xA
|
|
ldr r0, [sp, #0x14]
|
|
bl D_UTIL_l_extract
|
|
; Line 945
|
|
ldr r3, [sp, #0x14]
|
|
add r3, r3, #2, 18
|
|
mov r3, r3, asr #16
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp, #4]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x20]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 946
|
|
b |$LN2@D_UTIL_hp4|
|
|
|$LN1@D_UTIL_hp4|
|
|
; Line 947
|
|
ldrsh r2, [sp, #0xE]
|
|
ldr r3, [sp, #0x28]
|
|
strh r2, [r3]
|
|
; Line 948
|
|
ldr r3, [sp, #0x28]
|
|
add r2, r3, #2
|
|
ldrsh r3, [sp, #8]
|
|
strh r3, [r2]
|
|
; Line 949
|
|
ldr r3, [sp, #0x28]
|
|
add r2, r3, #4
|
|
ldrsh r3, [sp, #0xA]
|
|
strh r3, [r2]
|
|
; Line 950
|
|
ldr r3, [sp, #0x28]
|
|
add r2, r3, #6
|
|
ldrsh r3, [sp]
|
|
strh r3, [r2]
|
|
; Line 951
|
|
ldr r3, [sp, #0x28]
|
|
add r2, r3, #8
|
|
ldrsh r3, [sp, #0x10]
|
|
strh r3, [r2]
|
|
; Line 952
|
|
ldr r3, [sp, #0x28]
|
|
add r2, r3, #0xA
|
|
ldrsh r3, [sp, #0xC]
|
|
strh r3, [r2]
|
|
; Line 955
|
|
add sp, sp, #0x18
|
|
ldmia sp, {sp, pc}
|
|
|$M1857|
|
|
|
|
ENDP ; |D_UTIL_hp400_12k8|
|
|
|
|
EXPORT |D_UTIL_bp_6k_7k|
|
|
IMPORT |D_ROM_fir_6k_7k|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1864| DCD |$LN20@D_UTIL_bp_|
|
|
DCD 0x40008804
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_UTIL_bp_6k_7k| PROC
|
|
; Line 1031
|
|
|$LN20@D_UTIL_bp_|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r2}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #0x71, 30
|
|
|$M1861|
|
|
; Line 1035
|
|
mov r3, #0
|
|
str r3, [sp, #0x1B8]
|
|
b |$LN15@D_UTIL_bp_|
|
|
|$LN14@D_UTIL_bp_|
|
|
ldr r3, [sp, #0x1B8]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0x1B8]
|
|
|$LN15@D_UTIL_bp_|
|
|
ldr r3, [sp, #0x1B8]
|
|
cmp r3, #0x1E
|
|
bge |$LN13@D_UTIL_bp_|
|
|
; Line 1037
|
|
ldr r1, [sp, #0x1B8]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x1D4]
|
|
add r0, r3, r2
|
|
ldr r1, [sp, #0x1B8]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0
|
|
add r2, r3, r2
|
|
ldrsh r3, [r0]
|
|
str r3, [r2]
|
|
; Line 1038
|
|
b |$LN14@D_UTIL_bp_|
|
|
|$LN13@D_UTIL_bp_|
|
|
; Line 1040
|
|
mov r3, #0
|
|
str r3, [sp, #0x1B8]
|
|
b |$LN12@D_UTIL_bp_|
|
|
|$LN11@D_UTIL_bp_|
|
|
ldr r3, [sp, #0x1B8]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0x1B8]
|
|
|$LN12@D_UTIL_bp_|
|
|
add r2, sp, #1, 24
|
|
ldrsh r2, [r2, #0xD0]
|
|
ldr r3, [sp, #0x1B8]
|
|
cmp r3, r2
|
|
bge |$LN10@D_UTIL_bp_|
|
|
; Line 1042
|
|
ldr r1, [sp, #0x1B8]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x1CC]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
mov r0, r3, asr #2
|
|
ldr r3, [sp, #0x1B8]
|
|
add r3, r3, #0x1F
|
|
sub r1, r3, #1
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0
|
|
add r3, r3, r2
|
|
str r0, [r3]
|
|
; Line 1043
|
|
b |$LN11@D_UTIL_bp_|
|
|
|$LN10@D_UTIL_bp_|
|
|
; Line 1045
|
|
mov r3, #0
|
|
str r3, [sp, #0x1B8]
|
|
b |$LN9@D_UTIL_bp_|
|
|
|$LN8@D_UTIL_bp_|
|
|
ldr r3, [sp, #0x1B8]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0x1B8]
|
|
|$LN9@D_UTIL_bp_|
|
|
add r2, sp, #1, 24
|
|
ldrsh r2, [r2, #0xD0]
|
|
ldr r3, [sp, #0x1B8]
|
|
cmp r3, r2
|
|
bge |$LN7@D_UTIL_bp_|
|
|
; Line 1047
|
|
mov r3, #0
|
|
str r3, [sp, #0x1BC]
|
|
; Line 1049
|
|
mov r3, #0
|
|
str r3, [sp, #0x1C0]
|
|
b |$LN6@D_UTIL_bp_|
|
|
|$LN5@D_UTIL_bp_|
|
|
ldr r3, [sp, #0x1C0]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0x1C0]
|
|
|$LN6@D_UTIL_bp_|
|
|
ldr r3, [sp, #0x1C0]
|
|
cmp r3, #0x1F
|
|
bge |$LN4@D_UTIL_bp_|
|
|
; Line 1051
|
|
ldr r2, [sp, #0x1B8]
|
|
ldr r3, [sp, #0x1C0]
|
|
add r1, r2, r3
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0
|
|
add r0, r3, r2
|
|
ldr r1, [sp, #0x1C0]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0xC0]
|
|
add r3, r3, r2
|
|
ldrsh r2, [r3]
|
|
ldr r3, [r0]
|
|
mul r2, r3, r2
|
|
ldr r3, [sp, #0x1BC]
|
|
add r3, r3, r2
|
|
str r3, [sp, #0x1BC]
|
|
; Line 1052
|
|
b |$LN5@D_UTIL_bp_|
|
|
|$LN4@D_UTIL_bp_|
|
|
; Line 1054
|
|
ldr r3, [sp, #0x1BC]
|
|
add r3, r3, #1, 18
|
|
mov r3, r3, asr #15
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp, #0x1B8]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x1CC]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 1055
|
|
b |$LN8@D_UTIL_bp_|
|
|
|$LN7@D_UTIL_bp_|
|
|
; Line 1057
|
|
mov r3, #0
|
|
str r3, [sp, #0x1B8]
|
|
b |$LN3@D_UTIL_bp_|
|
|
|$LN2@D_UTIL_bp_|
|
|
ldr r3, [sp, #0x1B8]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0x1B8]
|
|
|$LN3@D_UTIL_bp_|
|
|
ldr r3, [sp, #0x1B8]
|
|
cmp r3, #0x1E
|
|
bge |$LN1@D_UTIL_bp_|
|
|
; Line 1059
|
|
add r2, sp, #1, 24
|
|
ldrsh r2, [r2, #0xD0]
|
|
ldr r3, [sp, #0x1B8]
|
|
add r1, r2, r3
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0
|
|
add r3, r3, r2
|
|
ldr r3, [r3]
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp, #0x1B8]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x1D4]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 1060
|
|
b |$LN2@D_UTIL_bp_|
|
|
|$LN1@D_UTIL_bp_|
|
|
; Line 1063
|
|
add sp, sp, #0x71, 30
|
|
ldmia sp, {sp, pc}
|
|
|$LN21@D_UTIL_bp_|
|
|
DCD |D_ROM_fir_6k_7k|
|
|
|$M1862|
|
|
|
|
ENDP ; |D_UTIL_bp_6k_7k|
|
|
|
|
EXPORT |D_UTIL_dec_synthesis|
|
|
IMPORT |D_LPC_a_weight|
|
|
IMPORT |D_LPC_isp_a_conversion|
|
|
IMPORT |D_LPC_isf_extrapolation|
|
|
IMPORT |D_ROM_hp_gain|
|
|
IMPORT |memcpy|
|
|
IMPORT |__imp___rt_sdiv|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1892| DCD |$LN52@D_UTIL_dec|
|
|
DCD 0x40027504
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_UTIL_dec_synthesis| PROC
|
|
; Line 1132
|
|
|$LN52@D_UTIL_dec|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r3}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #0xCF, 30
|
|
|$M1889|
|
|
; Line 1154
|
|
mov r2, #0x20
|
|
ldr r3, [sp, #0x368]
|
|
add r1, r3, #0x5F, 28
|
|
add r0, sp, #0xC8
|
|
bl memcpy
|
|
; Line 1155
|
|
mov r2, #0x20
|
|
ldr r3, [sp, #0x368]
|
|
add r1, r3, #0x61, 28
|
|
add r0, sp, #0x86, 30
|
|
bl memcpy
|
|
; Line 1156
|
|
mov r3, #0x40
|
|
str r3, [sp, #8]
|
|
add r3, sp, #0x86, 30
|
|
add r3, r3, #0x20
|
|
str r3, [sp, #4]
|
|
add r3, sp, #0xC8
|
|
add r3, r3, #0x20
|
|
str r3, [sp]
|
|
add r3, sp, #3, 24
|
|
ldrsh r3, [r3, #0x4C]
|
|
ldr r2, [sp, #0x348]
|
|
mov r1, #0x10
|
|
ldr r0, [sp, #0x344]
|
|
bl D_UTIL_synthesis_32
|
|
; Line 1157
|
|
mov r2, #0x20
|
|
add r3, sp, #0xC8
|
|
add r1, r3, #0x80
|
|
ldr r3, [sp, #0x368]
|
|
add r0, r3, #0x5F, 28
|
|
bl memcpy
|
|
; Line 1158
|
|
mov r2, #0x20
|
|
add r3, sp, #0x86, 30
|
|
add r1, r3, #0x80
|
|
ldr r3, [sp, #0x368]
|
|
add r0, r3, #0x61, 28
|
|
bl memcpy
|
|
; Line 1160
|
|
ldr r3, [sp, #0x368]
|
|
add r3, r3, #6, 24
|
|
add r3, r3, #0x6E
|
|
str r3, [sp, #4]
|
|
mov r3, #0x40
|
|
str r3, [sp]
|
|
mov r3, #0x57, 24
|
|
orr r3, r3, #0xA
|
|
add r2, sp, #0xC
|
|
add r1, sp, #0x86, 30
|
|
add r1, r1, #0x20
|
|
add r0, sp, #0xC8
|
|
add r0, r0, #0x20
|
|
bl D_UTIL_deemph_32
|
|
; Line 1161
|
|
ldr r3, [sp, #0x368]
|
|
add r2, r3, #0x19, 26
|
|
mov r1, #0x40
|
|
add r0, sp, #0xC
|
|
bl D_UTIL_hp50_12k8
|
|
; Line 1162
|
|
ldr r3, [sp, #0x368]
|
|
add r3, r3, #5, 24
|
|
add r3, r3, #0xA
|
|
ldr r2, [sp, #0x350]
|
|
mov r1, #0x40
|
|
add r0, sp, #0xC
|
|
bl D_UTIL_oversamp_16k
|
|
; Line 1175
|
|
mov r3, #0
|
|
str r3, [sp, #0xBC]
|
|
b |$LN39@D_UTIL_dec|
|
|
|$LN38@D_UTIL_dec|
|
|
ldr r3, [sp, #0xBC]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0xBC]
|
|
|$LN39@D_UTIL_dec|
|
|
ldr r3, [sp, #0xBC]
|
|
cmp r3, #0x50
|
|
bge |$LN37@D_UTIL_dec|
|
|
; Line 1177
|
|
ldr r3, [sp, #0x368]
|
|
add r3, r3, #6, 24
|
|
add r0, r3, #0x72
|
|
bl D_UTIL_random
|
|
add r12, sp, #3, 24
|
|
strh r0, [r12, #0x18]
|
|
add r3, sp, #3, 24
|
|
ldrsh r3, [r3, #0x18]
|
|
mov r3, r3, asr #3
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp, #0xBC]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x5B, 30
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 1178
|
|
b |$LN38@D_UTIL_dec|
|
|
|$LN37@D_UTIL_dec|
|
|
; Line 1181
|
|
mov r2, #3
|
|
mov r1, #0x40
|
|
ldr r0, [sp, #0x348]
|
|
bl D_UTIL_signal_down_scale
|
|
; Line 1182
|
|
add r3, sp, #3, 24
|
|
ldrsh r3, [r3, #0x4C]
|
|
sub r3, r3, #3
|
|
mov r3, r3, lsl #16
|
|
mov r3, r3, asr #16
|
|
add r12, sp, #3, 24
|
|
strh r3, [r12, #0x4C]
|
|
; Line 1183
|
|
add r3, sp, #0xC0
|
|
mov r2, #0x40
|
|
ldr r1, [sp, #0x348]
|
|
ldr r0, [sp, #0x348]
|
|
bl D_UTIL_dot_product12
|
|
str r0, [sp, #0x31C]
|
|
ldr r3, [sp, #0x31C]
|
|
mov r3, r3, asr #16
|
|
mov r3, r3, lsl #16
|
|
mov r3, r3, asr #16
|
|
add r12, sp, #1, 24
|
|
strh r3, [r12, #0x68]
|
|
; Line 1184
|
|
ldrsh r2, [sp, #0xC0]
|
|
add r3, sp, #3, 24
|
|
ldrsh r3, [r3, #0x4C]
|
|
mov r3, r3, lsl #1
|
|
sub r3, r2, r3
|
|
mov r3, r3, lsl #16
|
|
mov r3, r3, asr #16
|
|
strh r3, [sp, #0xC0]
|
|
; Line 1187
|
|
add r3, sp, #0xBA
|
|
mov r2, #0x50
|
|
add r1, sp, #0x5B, 30
|
|
add r0, sp, #0x5B, 30
|
|
bl D_UTIL_dot_product12
|
|
str r0, [sp, #0x320]
|
|
ldr r3, [sp, #0x320]
|
|
mov r3, r3, asr #16
|
|
mov r3, r3, lsl #16
|
|
mov r3, r3, asr #16
|
|
str r3, [sp, #0xC4]
|
|
; Line 1189
|
|
add r2, sp, #1, 24
|
|
ldrsh r2, [r2, #0x68]
|
|
ldr r3, [sp, #0xC4]
|
|
cmp r3, r2
|
|
ble |$LN36@D_UTIL_dec|
|
|
; Line 1191
|
|
ldr r3, [sp, #0xC4]
|
|
mov r3, r3, asr #1
|
|
str r3, [sp, #0xC4]
|
|
; Line 1192
|
|
ldrsh r3, [sp, #0xBA]
|
|
add r3, r3, #1
|
|
mov r3, r3, lsl #16
|
|
mov r3, r3, asr #16
|
|
strh r3, [sp, #0xBA]
|
|
|$LN36@D_UTIL_dec|
|
|
; Line 1195
|
|
ldr r3, [sp, #0xC4]
|
|
mov r1, r3, lsl #15
|
|
add r0, sp, #1, 24
|
|
ldrsh r0, [r0, #0x68]
|
|
ldr r3, [pc, #0x768]
|
|
ldr r3, [r3]
|
|
mov lr, pc
|
|
mov pc, r3
|
|
str r0, [sp, #0xC4]
|
|
; Line 1197
|
|
ldr r2, [sp, #0xC4]
|
|
mov r3, #0x7F, 24
|
|
orr r3, r3, #0xFF
|
|
cmp r2, r3
|
|
ble |$LN35@D_UTIL_dec|
|
|
; Line 1199
|
|
mov r3, #0x7F, 24
|
|
orr r3, r3, #0xFF
|
|
str r3, [sp, #0xC4]
|
|
|$LN35@D_UTIL_dec|
|
|
; Line 1202
|
|
ldr r3, [sp, #0xC4]
|
|
mov r3, r3, lsl #16
|
|
str r3, [sp, #0xC4]
|
|
; Line 1203
|
|
ldrsh r2, [sp, #0xBA]
|
|
ldrsh r3, [sp, #0xC0]
|
|
sub r3, r2, r3
|
|
mov r3, r3, lsl #16
|
|
mov r3, r3, asr #16
|
|
strh r3, [sp, #0xBA]
|
|
; Line 1204
|
|
add r1, sp, #0xBA
|
|
add r0, sp, #0xC4
|
|
bl D_UTIL_normalised_inverse_sqrt
|
|
; Line 1208
|
|
ldrsh r3, [sp, #0xBA]
|
|
cmp r3, #0
|
|
bmi |$LN34@D_UTIL_dec|
|
|
; Line 1210
|
|
ldrsh r3, [sp, #0xBA]
|
|
rsb r2, r3, #0xF
|
|
ldr r3, [sp, #0xC4]
|
|
mov r3, r3, asr r2
|
|
str r3, [sp, #0xC4]
|
|
; Line 1212
|
|
b |$LN33@D_UTIL_dec|
|
|
|$LN34@D_UTIL_dec|
|
|
; Line 1214
|
|
ldrsh r3, [sp, #0xBA]
|
|
rsb r2, r3, #0
|
|
ldr r3, [sp, #0xC4]
|
|
mov r3, r3, asr r2
|
|
str r3, [sp, #0xC4]
|
|
; Line 1215
|
|
ldr r3, [sp, #0xC4]
|
|
mov r3, r3, asr #15
|
|
str r3, [sp, #0xC4]
|
|
|$LN33@D_UTIL_dec|
|
|
; Line 1219
|
|
ldr r2, [sp, #0xC4]
|
|
mov r3, #0x7F, 24
|
|
orr r3, r3, #0xFF
|
|
cmp r2, r3
|
|
ble |$LN32@D_UTIL_dec|
|
|
; Line 1221
|
|
mov r3, #0x7F, 24
|
|
orr r3, r3, #0xFF
|
|
str r3, [sp, #0xC4]
|
|
|$LN32@D_UTIL_dec|
|
|
; Line 1224
|
|
mov r3, #0
|
|
str r3, [sp, #0xBC]
|
|
b |$LN31@D_UTIL_dec|
|
|
|$LN30@D_UTIL_dec|
|
|
ldr r3, [sp, #0xBC]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0xBC]
|
|
|$LN31@D_UTIL_dec|
|
|
ldr r3, [sp, #0xBC]
|
|
cmp r3, #0x50
|
|
bge |$LN29@D_UTIL_dec|
|
|
; Line 1226
|
|
ldr r1, [sp, #0xBC]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x5B, 30
|
|
add r3, r3, r2
|
|
ldrsh r2, [r3]
|
|
ldr r3, [sp, #0xC4]
|
|
mul r3, r2, r3
|
|
mov r3, r3, asr #15
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp, #0xBC]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x5B, 30
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 1227
|
|
b |$LN30@D_UTIL_dec|
|
|
|$LN29@D_UTIL_dec|
|
|
; Line 1230
|
|
ldr r3, [sp, #0x368]
|
|
add r3, r3, #6, 24
|
|
add r2, r3, #0x4C
|
|
mov r1, #0x40
|
|
add r0, sp, #0xC
|
|
bl D_UTIL_hp400_12k8
|
|
; Line 1231
|
|
mov r3, #0
|
|
str r3, [sp, #0xC4]
|
|
; Line 1233
|
|
mov r3, #0
|
|
str r3, [sp, #0xBC]
|
|
b |$LN28@D_UTIL_dec|
|
|
|$LN27@D_UTIL_dec|
|
|
ldr r3, [sp, #0xBC]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0xBC]
|
|
|$LN28@D_UTIL_dec|
|
|
ldr r3, [sp, #0xBC]
|
|
cmp r3, #0x40
|
|
bge |$LN26@D_UTIL_dec|
|
|
; Line 1235
|
|
ldr r1, [sp, #0xBC]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
add r3, sp, #0xC
|
|
add r3, r3, r2
|
|
ldrsh r0, [r3]
|
|
ldr r1, [sp, #0xBC]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
add r3, sp, #0xC
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
mul r2, r0, r3
|
|
ldr r3, [sp, #0xC4]
|
|
add r3, r3, r2
|
|
str r3, [sp, #0xC4]
|
|
; Line 1236
|
|
b |$LN27@D_UTIL_dec|
|
|
|$LN26@D_UTIL_dec|
|
|
; Line 1238
|
|
ldr r3, [sp, #0xC4]
|
|
mov r3, r3, lsl #1
|
|
add r3, r3, #1
|
|
str r3, [sp, #0xC4]
|
|
; Line 1239
|
|
ldr r0, [sp, #0xC4]
|
|
bl D_UTIL_norm_l
|
|
add r12, sp, #3, 24
|
|
strh r0, [r12, #0x24]
|
|
add r3, sp, #3, 24
|
|
ldrsh r3, [r3, #0x24]
|
|
strh r3, [sp, #0xBA]
|
|
; Line 1240
|
|
ldrsh r2, [sp, #0xBA]
|
|
ldr r3, [sp, #0xC4]
|
|
mov r3, r3, lsl r2
|
|
mov r3, r3, asr #16
|
|
mov r3, r3, lsl #16
|
|
mov r3, r3, asr #16
|
|
add r12, sp, #1, 24
|
|
strh r3, [r12, #0x68]
|
|
; Line 1241
|
|
mov r3, #0
|
|
str r3, [sp, #0xC4]
|
|
; Line 1243
|
|
mov r3, #1
|
|
str r3, [sp, #0xBC]
|
|
b |$LN25@D_UTIL_dec|
|
|
|$LN24@D_UTIL_dec|
|
|
ldr r3, [sp, #0xBC]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0xBC]
|
|
|$LN25@D_UTIL_dec|
|
|
ldr r3, [sp, #0xBC]
|
|
cmp r3, #0x40
|
|
bge |$LN23@D_UTIL_dec|
|
|
; Line 1245
|
|
ldr r1, [sp, #0xBC]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
add r3, sp, #0xC
|
|
add r3, r3, r2
|
|
ldrsh r0, [r3]
|
|
ldr r3, [sp, #0xBC]
|
|
sub r1, r3, #1
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
add r3, sp, #0xC
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
mul r2, r0, r3
|
|
ldr r3, [sp, #0xC4]
|
|
add r3, r3, r2
|
|
str r3, [sp, #0xC4]
|
|
; Line 1246
|
|
b |$LN24@D_UTIL_dec|
|
|
|$LN23@D_UTIL_dec|
|
|
; Line 1248
|
|
ldr r3, [sp, #0xC4]
|
|
mov r3, r3, lsl #1
|
|
add r3, r3, #1
|
|
str r3, [sp, #0xC4]
|
|
; Line 1249
|
|
ldrsh r2, [sp, #0xBA]
|
|
ldr r3, [sp, #0xC4]
|
|
mov r3, r3, lsl r2
|
|
mov r3, r3, asr #16
|
|
str r3, [sp, #0xC4]
|
|
; Line 1251
|
|
ldr r3, [sp, #0xC4]
|
|
cmp r3, #0
|
|
ble |$LN22@D_UTIL_dec|
|
|
; Line 1253
|
|
ldr r3, [sp, #0xC4]
|
|
mov r1, r3, lsl #15
|
|
add r0, sp, #1, 24
|
|
ldrsh r0, [r0, #0x68]
|
|
ldr r3, [pc, #0x4AC]
|
|
ldr r3, [r3]
|
|
mov lr, pc
|
|
mov pc, r3
|
|
str r0, [sp, #0x20C]
|
|
; Line 1255
|
|
ldr r2, [sp, #0x20C]
|
|
mov r3, #0x7F, 24
|
|
orr r3, r3, #0xFF
|
|
cmp r2, r3
|
|
ble |$LN21@D_UTIL_dec|
|
|
; Line 1257
|
|
mov r3, #0x7F, 24
|
|
orr r3, r3, #0xFF
|
|
str r3, [sp, #0x20C]
|
|
|$LN21@D_UTIL_dec|
|
|
; Line 1260
|
|
b |$LN20@D_UTIL_dec|
|
|
|$LN22@D_UTIL_dec|
|
|
; Line 1262
|
|
mov r3, #0
|
|
str r3, [sp, #0x20C]
|
|
|$LN20@D_UTIL_dec|
|
|
; Line 1266
|
|
ldr r2, [sp, #0x20C]
|
|
mov r3, #0x7F, 24
|
|
orr r3, r3, #0xFF
|
|
rsb r3, r2, r3
|
|
str r3, [sp, #0x214]
|
|
; Line 1267
|
|
ldr r2, [sp, #0x20C]
|
|
mov r3, #0x7F, 24
|
|
orr r3, r3, #0xFF
|
|
rsb r2, r2, r3
|
|
mov r3, #5, 20
|
|
mul r3, r2, r3
|
|
mov r3, r3, asr #15
|
|
str r3, [sp, #0x2E8]
|
|
; Line 1268
|
|
ldr r3, [sp, #0x2E8]
|
|
mov r3, r3, lsl #1
|
|
str r3, [sp, #0x2E8]
|
|
; Line 1270
|
|
ldr r2, [sp, #0x2E8]
|
|
mov r3, #0x7F, 24
|
|
orr r3, r3, #0xFF
|
|
cmp r2, r3
|
|
ble |$LN19@D_UTIL_dec|
|
|
; Line 1271
|
|
mov r3, #0x7F, 24
|
|
orr r3, r3, #0xFF
|
|
str r3, [sp, #0x2E8]
|
|
|$LN19@D_UTIL_dec|
|
|
; Line 1273
|
|
ldr r3, [sp, #0x368]
|
|
add r3, r3, #6, 24
|
|
add r3, r3, #0x7A
|
|
ldrh r3, [r3]
|
|
cmp r3, #0
|
|
ble |$LN18@D_UTIL_dec|
|
|
; Line 1275
|
|
mov r3, #0
|
|
add r12, sp, #2, 24
|
|
strh r3, [r12, #0xB8]
|
|
; Line 1276
|
|
mov r3, #0x7F, 24
|
|
orr r3, r3, #0xFF
|
|
add r12, sp, #2, 24
|
|
strh r3, [r12, #0x10]
|
|
; Line 1278
|
|
b |$LN17@D_UTIL_dec|
|
|
|$LN18@D_UTIL_dec|
|
|
; Line 1280
|
|
mov r3, #0x7F, 24
|
|
orr r3, r3, #0xFF
|
|
add r12, sp, #2, 24
|
|
strh r3, [r12, #0xB8]
|
|
; Line 1281
|
|
mov r3, #0
|
|
add r12, sp, #2, 24
|
|
strh r3, [r12, #0x10]
|
|
|$LN17@D_UTIL_dec|
|
|
; Line 1284
|
|
add r2, sp, #2, 24
|
|
ldrsh r2, [r2, #0xB8]
|
|
ldr r3, [sp, #0x214]
|
|
mul r3, r2, r3
|
|
mov r3, r3, asr #15
|
|
str r3, [sp, #0xC4]
|
|
; Line 1285
|
|
add r2, sp, #2, 24
|
|
ldrsh r2, [r2, #0x10]
|
|
ldr r3, [sp, #0x2E8]
|
|
mul r3, r2, r3
|
|
mov r2, r3, asr #15
|
|
ldr r3, [sp, #0xC4]
|
|
add r3, r3, r2
|
|
str r3, [sp, #0xC4]
|
|
; Line 1287
|
|
ldr r3, [sp, #0xC4]
|
|
cmp r3, #0
|
|
beq |$LN16@D_UTIL_dec|
|
|
; Line 1289
|
|
ldr r3, [sp, #0xC4]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0xC4]
|
|
|$LN16@D_UTIL_dec|
|
|
; Line 1292
|
|
ldr r2, [sp, #0xC4]
|
|
mov r3, #3, 22
|
|
orr r3, r3, #0xCD
|
|
cmp r2, r3
|
|
bge |$LN15@D_UTIL_dec|
|
|
; Line 1294
|
|
mov r3, #3, 22
|
|
orr r3, r3, #0xCD
|
|
str r3, [sp, #0xC4]
|
|
|$LN15@D_UTIL_dec|
|
|
; Line 1297
|
|
add r3, sp, #3, 24
|
|
ldrsh r3, [r3, #0x5C]
|
|
cmp r3, #8
|
|
bne |$LN44@D_UTIL_dec|
|
|
mov r3, #1
|
|
str r3, [sp, #0x328]
|
|
b |$LN45@D_UTIL_dec|
|
|
|$LN44@D_UTIL_dec|
|
|
mov r3, #0
|
|
str r3, [sp, #0x328]
|
|
|$LN45@D_UTIL_dec|
|
|
add r3, sp, #3, 24
|
|
ldrsh r3, [r3, #0x64]
|
|
cmp r3, #0
|
|
bne |$LN42@D_UTIL_dec|
|
|
mov r3, #1
|
|
str r3, [sp, #0x32C]
|
|
b |$LN43@D_UTIL_dec|
|
|
|$LN42@D_UTIL_dec|
|
|
mov r3, #0
|
|
str r3, [sp, #0x32C]
|
|
|$LN43@D_UTIL_dec|
|
|
ldr r2, [sp, #0x328]
|
|
ldr r3, [sp, #0x32C]
|
|
tst r2, r3
|
|
beq |$LN14@D_UTIL_dec|
|
|
; Line 1300
|
|
add r3, sp, #3, 24
|
|
ldrsh r3, [r3, #0x54]
|
|
add r12, sp, #1, 24
|
|
strh r3, [r12, #0x6A]
|
|
; Line 1301
|
|
add r1, sp, #1, 24
|
|
ldrsh r1, [r1, #0x6A]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x2CC]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
strh r3, [sp, #0x8C]
|
|
; Line 1304
|
|
mov r3, #0
|
|
str r3, [sp, #0xBC]
|
|
b |$LN13@D_UTIL_dec|
|
|
|$LN12@D_UTIL_dec|
|
|
ldr r3, [sp, #0xBC]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0xBC]
|
|
|$LN13@D_UTIL_dec|
|
|
ldr r3, [sp, #0xBC]
|
|
cmp r3, #0x50
|
|
bge |$LN11@D_UTIL_dec|
|
|
; Line 1306
|
|
ldr r1, [sp, #0xBC]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x5B, 30
|
|
add r3, r3, r2
|
|
ldrsh r2, [r3]
|
|
ldrsh r3, [sp, #0x8C]
|
|
mul r3, r2, r3
|
|
mov r3, r3, asr #15
|
|
mov r3, r3, lsl #1
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp, #0xBC]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x5B, 30
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 1307
|
|
b |$LN12@D_UTIL_dec|
|
|
|$LN11@D_UTIL_dec|
|
|
; Line 1309
|
|
b |$LN10@D_UTIL_dec|
|
|
|$LN14@D_UTIL_dec|
|
|
; Line 1311
|
|
mov r3, #0
|
|
str r3, [sp, #0xBC]
|
|
b |$LN9@D_UTIL_dec|
|
|
|$LN8@D_UTIL_dec|
|
|
ldr r3, [sp, #0xBC]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0xBC]
|
|
|$LN9@D_UTIL_dec|
|
|
ldr r3, [sp, #0xBC]
|
|
cmp r3, #0x50
|
|
bge |$LN7@D_UTIL_dec|
|
|
; Line 1313
|
|
ldr r1, [sp, #0xBC]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x5B, 30
|
|
add r3, r3, r2
|
|
ldrsh r2, [r3]
|
|
ldr r3, [sp, #0xC4]
|
|
mul r3, r2, r3
|
|
mov r3, r3, asr #15
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp, #0xBC]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x5B, 30
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 1314
|
|
b |$LN8@D_UTIL_dec|
|
|
|$LN7@D_UTIL_dec|
|
|
|$LN10@D_UTIL_dec|
|
|
; Line 1317
|
|
add r3, sp, #3, 24
|
|
ldrsh r3, [r3, #0x5C]
|
|
cmp r3, #0
|
|
bgt |$LN48@D_UTIL_dec|
|
|
mov r3, #1
|
|
str r3, [sp, #0x330]
|
|
b |$LN49@D_UTIL_dec|
|
|
|$LN48@D_UTIL_dec|
|
|
mov r3, #0
|
|
str r3, [sp, #0x330]
|
|
|$LN49@D_UTIL_dec|
|
|
add r3, sp, #3, 24
|
|
ldrsh r3, [r3, #0x60]
|
|
cmp r3, #0
|
|
bne |$LN46@D_UTIL_dec|
|
|
mov r3, #1
|
|
str r3, [sp, #0x334]
|
|
b |$LN47@D_UTIL_dec|
|
|
|$LN46@D_UTIL_dec|
|
|
mov r3, #0
|
|
str r3, [sp, #0x334]
|
|
|$LN47@D_UTIL_dec|
|
|
ldr r2, [sp, #0x330]
|
|
ldr r3, [sp, #0x334]
|
|
tst r2, r3
|
|
beq |$LN6@D_UTIL_dec|
|
|
; Line 1319
|
|
ldr r0, [sp, #0x358]
|
|
bl D_LPC_isf_extrapolation
|
|
; Line 1320
|
|
mov r3, #0x14
|
|
mov r2, #0
|
|
add r1, sp, #0x90
|
|
ldr r0, [sp, #0x358]
|
|
bl D_LPC_isp_a_conversion
|
|
; Line 1321
|
|
mov r3, #0x14
|
|
mov r2, #0x73, 24
|
|
orr r2, r2, #0x33
|
|
add r1, sp, #0xAF, 30
|
|
add r0, sp, #0x90
|
|
bl D_LPC_a_weight
|
|
; Line 1322
|
|
mov r3, #1
|
|
str r3, [sp, #8]
|
|
ldr r3, [sp, #0x368]
|
|
add r3, r3, #5, 24
|
|
add r3, r3, #0x68
|
|
str r3, [sp, #4]
|
|
mov r3, #0x50
|
|
str r3, [sp]
|
|
add r3, sp, #0x5B, 30
|
|
add r2, sp, #0x5B, 30
|
|
mov r1, #0x14
|
|
add r0, sp, #0xAF, 30
|
|
bl D_UTIL_synthesis
|
|
; Line 1324
|
|
b |$LN5@D_UTIL_dec|
|
|
|$LN6@D_UTIL_dec|
|
|
; Line 1327
|
|
mov r3, #0x10
|
|
mov r2, #0x13, 22
|
|
orr r2, r2, #0xCD
|
|
add r1, sp, #0xAF, 30
|
|
ldr r0, [sp, #0x344]
|
|
bl D_LPC_a_weight
|
|
; Line 1328
|
|
mov r3, #1
|
|
str r3, [sp, #8]
|
|
ldr r3, [sp, #0x368]
|
|
add r3, r3, #0x57, 28
|
|
str r3, [sp, #4]
|
|
mov r3, #0x50
|
|
str r3, [sp]
|
|
add r3, sp, #0x5B, 30
|
|
add r2, sp, #0x5B, 30
|
|
mov r1, #0x10
|
|
add r0, sp, #0xAF, 30
|
|
bl D_UTIL_synthesis
|
|
|$LN5@D_UTIL_dec|
|
|
; Line 1332
|
|
ldr r3, [sp, #0x368]
|
|
add r3, r3, #1, 22
|
|
add r2, r3, #0x56
|
|
mov r1, #0x50
|
|
add r0, sp, #0x5B, 30
|
|
bl D_UTIL_bp_6k_7k
|
|
; Line 1334
|
|
add r3, sp, #3, 24
|
|
ldrsh r3, [r3, #0x5C]
|
|
cmp r3, #8
|
|
bne |$LN4@D_UTIL_dec|
|
|
; Line 1337
|
|
ldr r3, [sp, #0x368]
|
|
add r3, r3, #1, 22
|
|
add r2, r3, #0xCE
|
|
mov r1, #0x50
|
|
add r0, sp, #0x5B, 30
|
|
bl D_UTIL_hp_7k
|
|
|$LN4@D_UTIL_dec|
|
|
; Line 1341
|
|
mov r3, #0
|
|
str r3, [sp, #0xBC]
|
|
b |$LN3@D_UTIL_dec|
|
|
|$LN2@D_UTIL_dec|
|
|
ldr r3, [sp, #0xBC]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0xBC]
|
|
|$LN3@D_UTIL_dec|
|
|
ldr r3, [sp, #0xBC]
|
|
cmp r3, #0x50
|
|
bge |$LN1@D_UTIL_dec|
|
|
; Line 1343
|
|
ldr r1, [sp, #0xBC]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x350]
|
|
add r3, r3, r2
|
|
ldrsh r0, [r3]
|
|
ldr r1, [sp, #0xBC]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x5B, 30
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
add r3, r0, r3
|
|
str r3, [sp, #0xC4]
|
|
; Line 1344
|
|
ldr r0, [sp, #0xC4]
|
|
bl D_UTIL_saturate
|
|
add r12, sp, #3, 24
|
|
strh r0, [r12, #0x38]
|
|
ldr r1, [sp, #0xBC]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x350]
|
|
add r2, r3, r2
|
|
add r3, sp, #3, 24
|
|
ldrsh r3, [r3, #0x38]
|
|
strh r3, [r2]
|
|
; Line 1345
|
|
b |$LN2@D_UTIL_dec|
|
|
|$LN1@D_UTIL_dec|
|
|
; Line 1348
|
|
add sp, sp, #0xCF, 30
|
|
ldmia sp, {sp, pc}
|
|
|$LN53@D_UTIL_dec|
|
|
DCD |D_ROM_hp_gain|
|
|
DCD |__imp___rt_sdiv|
|
|
|$M1890|
|
|
|
|
ENDP ; |D_UTIL_dec_synthesis|
|
|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1898| DCD |$LN8@D_UTIL_dee|
|
|
DCD 0x40006004
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_UTIL_deemph_32| PROC
|
|
; Line 615
|
|
|$LN8@D_UTIL_dee|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r3}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #0x10
|
|
|$M1895|
|
|
; Line 619
|
|
ldrsh r3, [sp, #0x24]
|
|
mov r3, r3, asr #1
|
|
str r3, [sp, #8]
|
|
; Line 622
|
|
ldr r3, [sp, #0x18]
|
|
ldrsh r3, [r3]
|
|
mov r2, r3, lsl #12
|
|
ldr r3, [sp, #0x1C]
|
|
ldrsh r3, [r3]
|
|
add r3, r2, r3
|
|
str r3, [sp, #4]
|
|
; Line 623
|
|
ldr r3, [sp, #4]
|
|
mov r1, r3, lsl #6
|
|
ldr r3, [sp, #0x2C]
|
|
ldrsh r2, [r3]
|
|
ldr r3, [sp, #8]
|
|
mul r3, r2, r3
|
|
add r3, r1, r3
|
|
str r3, [sp, #4]
|
|
; Line 624
|
|
ldr r3, [sp, #4]
|
|
add r3, r3, #2, 20
|
|
mov r3, r3, asr #14
|
|
str r3, [sp, #4]
|
|
; Line 625
|
|
ldr r0, [sp, #4]
|
|
bl D_UTIL_saturate
|
|
strh r0, [sp, #0xC]
|
|
ldrsh r2, [sp, #0xC]
|
|
ldr r3, [sp, #0x20]
|
|
strh r2, [r3]
|
|
; Line 627
|
|
mov r3, #1
|
|
str r3, [sp]
|
|
b |$LN3@D_UTIL_dee|
|
|
|$LN2@D_UTIL_dee|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN3@D_UTIL_dee|
|
|
ldrsh r2, [sp, #0x28]
|
|
ldr r3, [sp]
|
|
cmp r3, r2
|
|
bge |$LN1@D_UTIL_dee|
|
|
; Line 629
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x18]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
mov r0, r3, lsl #12
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x1C]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
add r3, r0, r3
|
|
str r3, [sp, #4]
|
|
; Line 630
|
|
ldr r3, [sp, #4]
|
|
mov r0, r3, lsl #6
|
|
ldr r3, [sp]
|
|
sub r1, r3, #1
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x20]
|
|
add r3, r3, r2
|
|
ldrsh r2, [r3]
|
|
ldr r3, [sp, #8]
|
|
mul r3, r2, r3
|
|
add r3, r0, r3
|
|
str r3, [sp, #4]
|
|
; Line 631
|
|
ldr r3, [sp, #4]
|
|
add r3, r3, #2, 20
|
|
mov r3, r3, asr #14
|
|
str r3, [sp, #4]
|
|
; Line 632
|
|
ldr r0, [sp, #4]
|
|
bl D_UTIL_saturate
|
|
strh r0, [sp, #0xE]
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x20]
|
|
add r2, r3, r2
|
|
ldrsh r3, [sp, #0xE]
|
|
strh r3, [r2]
|
|
; Line 633
|
|
b |$LN2@D_UTIL_dee|
|
|
|$LN1@D_UTIL_dee|
|
|
; Line 635
|
|
ldrsh r3, [sp, #0x28]
|
|
sub r1, r3, #1
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x20]
|
|
add r3, r3, r2
|
|
ldrsh r2, [r3]
|
|
ldr r3, [sp, #0x2C]
|
|
strh r2, [r3]
|
|
; Line 638
|
|
add sp, sp, #0x10
|
|
ldmia sp, {sp, pc}
|
|
|$M1896|
|
|
|
|
ENDP ; |D_UTIL_deemph_32|
|
|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1903| DCD |$LN14@D_UTIL_syn|
|
|
DCD 0x40008c04
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_UTIL_synthesis_32| PROC
|
|
; Line 662
|
|
|$LN14@D_UTIL_syn|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r3}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #0x1C
|
|
|$M1900|
|
|
; Line 667
|
|
ldr r3, [sp, #0x24]
|
|
ldrsh r0, [r3]
|
|
bl D_UTIL_norm_s
|
|
strh r0, [sp, #0x18]
|
|
ldrsh r3, [sp, #0x18]
|
|
sub r3, r3, #2
|
|
str r3, [sp, #4]
|
|
; Line 669
|
|
ldr r3, [sp, #0x24]
|
|
ldrsh r2, [r3]
|
|
ldrsh r3, [sp, #0x30]
|
|
add r3, r3, #4
|
|
mov r3, r2, asr r3
|
|
str r3, [sp, #0x10]
|
|
; Line 672
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN9@D_UTIL_syn|
|
|
|$LN8@D_UTIL_syn|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN9@D_UTIL_syn|
|
|
ldrsh r2, [sp, #0x3C]
|
|
ldr r3, [sp]
|
|
cmp r3, r2
|
|
bge |$LN7@D_UTIL_syn|
|
|
; Line 674
|
|
mov r3, #0
|
|
str r3, [sp, #8]
|
|
; Line 676
|
|
mov r3, #1
|
|
str r3, [sp, #0x14]
|
|
b |$LN6@D_UTIL_syn|
|
|
|$LN5@D_UTIL_syn|
|
|
ldr r3, [sp, #0x14]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0x14]
|
|
|$LN6@D_UTIL_syn|
|
|
ldrsh r2, [sp, #0x28]
|
|
ldr r3, [sp, #0x14]
|
|
cmp r3, r2
|
|
bgt |$LN4@D_UTIL_syn|
|
|
; Line 678
|
|
ldr r2, [sp]
|
|
ldr r3, [sp, #0x14]
|
|
sub r1, r2, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x38]
|
|
add r3, r3, r2
|
|
ldrsh r0, [r3]
|
|
ldr r1, [sp, #0x14]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x24]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
mul r2, r0, r3
|
|
ldr r3, [sp, #8]
|
|
sub r3, r3, r2
|
|
str r3, [sp, #8]
|
|
; Line 679
|
|
b |$LN5@D_UTIL_syn|
|
|
|$LN4@D_UTIL_syn|
|
|
; Line 681
|
|
ldr r3, [sp, #8]
|
|
mov r3, r3, asr #11
|
|
str r3, [sp, #8]
|
|
; Line 683
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x2C]
|
|
add r3, r3, r2
|
|
ldrsh r2, [r3]
|
|
ldr r3, [sp, #0x10]
|
|
mul r3, r2, r3
|
|
str r3, [sp, #0xC]
|
|
; Line 685
|
|
mov r3, #1
|
|
str r3, [sp, #0x14]
|
|
b |$LN3@D_UTIL_syn|
|
|
|$LN2@D_UTIL_syn|
|
|
ldr r3, [sp, #0x14]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0x14]
|
|
|$LN3@D_UTIL_syn|
|
|
ldrsh r2, [sp, #0x28]
|
|
ldr r3, [sp, #0x14]
|
|
cmp r3, r2
|
|
bgt |$LN1@D_UTIL_syn|
|
|
; Line 687
|
|
ldr r2, [sp]
|
|
ldr r3, [sp, #0x14]
|
|
sub r1, r2, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x34]
|
|
add r3, r3, r2
|
|
ldrsh r0, [r3]
|
|
ldr r1, [sp, #0x14]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x24]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
mul r2, r0, r3
|
|
ldr r3, [sp, #0xC]
|
|
sub r3, r3, r2
|
|
str r3, [sp, #0xC]
|
|
; Line 688
|
|
b |$LN2@D_UTIL_syn|
|
|
|$LN1@D_UTIL_syn|
|
|
; Line 690
|
|
ldr r3, [sp, #0xC]
|
|
mov r2, r3, lsl #1
|
|
ldr r3, [sp, #8]
|
|
add r3, r3, r2
|
|
str r3, [sp, #8]
|
|
; Line 691
|
|
ldr r2, [sp, #8]
|
|
ldr r3, [sp, #4]
|
|
mov r3, r2, lsl r3
|
|
str r3, [sp, #8]
|
|
; Line 694
|
|
ldr r3, [sp, #8]
|
|
mov r3, r3, asr #13
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x34]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 697
|
|
ldr r3, [sp, #8]
|
|
mov r0, r3, asr #1
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x34]
|
|
add r3, r3, r2
|
|
ldrsh r2, [r3]
|
|
mov r3, #1, 20
|
|
mul r3, r2, r3
|
|
sub r3, r0, r3
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x38]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 698
|
|
b |$LN8@D_UTIL_syn|
|
|
|$LN7@D_UTIL_syn|
|
|
; Line 701
|
|
add sp, sp, #0x1C
|
|
ldmia sp, {sp, pc}
|
|
|$M1901|
|
|
|
|
ENDP ; |D_UTIL_synthesis_32|
|
|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1908| DCD |$LN8@D_UTIL_hp5|
|
|
DCD 0x40009904
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_UTIL_hp50_12k8| PROC
|
|
; Line 728
|
|
|$LN8@D_UTIL_hp5|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r2}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #0x1C
|
|
|$M1905|
|
|
; Line 732
|
|
ldr r3, [sp, #0x2C]
|
|
ldrsh r3, [r3]
|
|
strh r3, [sp, #0xE]
|
|
; Line 733
|
|
ldr r3, [sp, #0x2C]
|
|
add r3, r3, #2
|
|
ldrsh r3, [r3]
|
|
strh r3, [sp, #8]
|
|
; Line 734
|
|
ldr r3, [sp, #0x2C]
|
|
add r3, r3, #4
|
|
ldrsh r3, [r3]
|
|
strh r3, [sp, #0xA]
|
|
; Line 735
|
|
ldr r3, [sp, #0x2C]
|
|
add r3, r3, #6
|
|
ldrsh r3, [r3]
|
|
strh r3, [sp]
|
|
; Line 736
|
|
ldr r3, [sp, #0x2C]
|
|
add r3, r3, #8
|
|
ldrsh r3, [r3]
|
|
strh r3, [sp, #0x10]
|
|
; Line 737
|
|
ldr r3, [sp, #0x2C]
|
|
add r3, r3, #0xA
|
|
ldrsh r3, [r3]
|
|
strh r3, [sp, #0xC]
|
|
; Line 739
|
|
mov r3, #0
|
|
str r3, [sp, #4]
|
|
b |$LN3@D_UTIL_hp5|
|
|
|$LN2@D_UTIL_hp5|
|
|
ldr r3, [sp, #4]
|
|
add r3, r3, #1
|
|
str r3, [sp, #4]
|
|
|$LN3@D_UTIL_hp5|
|
|
ldrsh r2, [sp, #0x28]
|
|
ldr r3, [sp, #4]
|
|
cmp r3, r2
|
|
bge |$LN1@D_UTIL_hp5|
|
|
; Line 741
|
|
ldrsh r3, [sp, #0xC]
|
|
strh r3, [sp, #2]
|
|
; Line 742
|
|
ldrsh r3, [sp, #0x10]
|
|
strh r3, [sp, #0xC]
|
|
; Line 743
|
|
ldr r1, [sp, #4]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x24]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
strh r3, [sp, #0x10]
|
|
; Line 747
|
|
mov r3, #2, 20
|
|
str r3, [sp, #0x14]
|
|
; Line 748
|
|
ldrsh r1, [sp]
|
|
mov r3, #0x3F, 24
|
|
orr r3, r3, #0x53
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x14]
|
|
add r3, r3, r2
|
|
str r3, [sp, #0x14]
|
|
; Line 749
|
|
ldrsh r1, [sp, #8]
|
|
mvn r3, #0x1F, 24
|
|
eor r3, r3, #0x54
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x14]
|
|
add r3, r3, r2
|
|
str r3, [sp, #0x14]
|
|
; Line 750
|
|
ldr r3, [sp, #0x14]
|
|
mov r3, r3, asr #14
|
|
str r3, [sp, #0x14]
|
|
; Line 751
|
|
ldrsh r1, [sp, #0xA]
|
|
mov r3, #0x7E, 24
|
|
orr r3, r3, #0xA6
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x14]
|
|
add r3, r3, r2
|
|
str r3, [sp, #0x14]
|
|
; Line 752
|
|
ldrsh r1, [sp, #0xE]
|
|
mvn r3, #0x3E, 24
|
|
eor r3, r3, #0xA9
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x14]
|
|
add r3, r3, r2
|
|
str r3, [sp, #0x14]
|
|
; Line 753
|
|
ldrsh r1, [sp, #0x10]
|
|
mov r3, #0x1F, 24
|
|
orr r3, r3, #0xAA
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x14]
|
|
add r3, r3, r2
|
|
str r3, [sp, #0x14]
|
|
; Line 754
|
|
ldrsh r1, [sp, #0xC]
|
|
mvn r3, #0x3F, 24
|
|
eor r3, r3, #0x53
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x14]
|
|
add r3, r3, r2
|
|
str r3, [sp, #0x14]
|
|
; Line 755
|
|
ldrsh r1, [sp, #2]
|
|
mov r3, #0x1F, 24
|
|
orr r3, r3, #0xAA
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x14]
|
|
add r3, r3, r2
|
|
str r3, [sp, #0x14]
|
|
; Line 756
|
|
ldr r3, [sp, #0x14]
|
|
mov r3, r3, lsl #2
|
|
str r3, [sp, #0x14]
|
|
; Line 757
|
|
ldrsh r3, [sp, #0xA]
|
|
strh r3, [sp, #0xE]
|
|
; Line 758
|
|
ldrsh r3, [sp]
|
|
strh r3, [sp, #8]
|
|
; Line 759
|
|
add r2, sp, #0
|
|
add r1, sp, #0xA
|
|
ldr r0, [sp, #0x14]
|
|
bl D_UTIL_l_extract
|
|
; Line 760
|
|
ldr r3, [sp, #0x14]
|
|
add r3, r3, #1, 18
|
|
mov r3, r3, asr #15
|
|
str r3, [sp, #0x14]
|
|
; Line 761
|
|
ldr r0, [sp, #0x14]
|
|
bl D_UTIL_saturate
|
|
strh r0, [sp, #0x18]
|
|
ldr r1, [sp, #4]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x24]
|
|
add r2, r3, r2
|
|
ldrsh r3, [sp, #0x18]
|
|
strh r3, [r2]
|
|
; Line 763
|
|
b |$LN2@D_UTIL_hp5|
|
|
|$LN1@D_UTIL_hp5|
|
|
; Line 764
|
|
ldrsh r2, [sp, #0xE]
|
|
ldr r3, [sp, #0x2C]
|
|
strh r2, [r3]
|
|
; Line 765
|
|
ldr r3, [sp, #0x2C]
|
|
add r2, r3, #2
|
|
ldrsh r3, [sp, #8]
|
|
strh r3, [r2]
|
|
; Line 766
|
|
ldr r3, [sp, #0x2C]
|
|
add r2, r3, #4
|
|
ldrsh r3, [sp, #0xA]
|
|
strh r3, [r2]
|
|
; Line 767
|
|
ldr r3, [sp, #0x2C]
|
|
add r2, r3, #6
|
|
ldrsh r3, [sp]
|
|
strh r3, [r2]
|
|
; Line 768
|
|
ldr r3, [sp, #0x2C]
|
|
add r2, r3, #8
|
|
ldrsh r3, [sp, #0x10]
|
|
strh r3, [r2]
|
|
; Line 769
|
|
ldr r3, [sp, #0x2C]
|
|
add r2, r3, #0xA
|
|
ldrsh r3, [sp, #0xC]
|
|
strh r3, [r2]
|
|
; Line 772
|
|
add sp, sp, #0x1C
|
|
ldmia sp, {sp, pc}
|
|
|$M1906|
|
|
|
|
ENDP ; |D_UTIL_hp50_12k8|
|
|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1913| DCD |$LN5@D_UTIL_ove|
|
|
DCD 0x40002704
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_UTIL_oversamp_16k| PROC
|
|
; Line 873
|
|
|$LN5@D_UTIL_ove|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r3}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #0xB4
|
|
|$M1910|
|
|
; Line 877
|
|
mov r2, #0x30
|
|
ldr r1, [sp, #0xC8]
|
|
add r0, sp, #0
|
|
bl memcpy
|
|
; Line 878
|
|
ldrsh r3, [sp, #0xC0]
|
|
mov r1, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r1, [sp, #0xBC]
|
|
add r3, sp, #0
|
|
add r0, r3, #0x30
|
|
bl memcpy
|
|
; Line 879
|
|
ldrsh r2, [sp, #0xC0]
|
|
mov r3, #5, 20
|
|
mul r3, r2, r3
|
|
mov r3, r3, asr #15
|
|
mov r3, r3, lsl #1
|
|
mov r3, r3, lsl #16
|
|
mov r3, r3, asr #16
|
|
strh r3, [sp, #0xB0]
|
|
; Line 880
|
|
ldrsh r2, [sp, #0xB0]
|
|
ldr r1, [sp, #0xC4]
|
|
add r3, sp, #0
|
|
add r0, r3, #0x18
|
|
bl D_UTIL_up_samp
|
|
; Line 881
|
|
mov r2, #0x30
|
|
ldrsh r0, [sp, #0xC0]
|
|
mov r3, #2
|
|
mul r1, r0, r3
|
|
add r3, sp, #0
|
|
add r1, r3, r1
|
|
ldr r0, [sp, #0xC8]
|
|
bl memcpy
|
|
; Line 884
|
|
add sp, sp, #0xB4
|
|
ldmia sp, {sp, pc}
|
|
|$M1911|
|
|
|
|
ENDP ; |D_UTIL_oversamp_16k|
|
|
|
|
IMPORT |D_ROM_fir_up|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1919| DCD |$LN8@D_UTIL_up_|
|
|
DCD 0x40003904
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_UTIL_up_samp| PROC
|
|
; Line 838
|
|
|$LN8@D_UTIL_up_|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r2}
|
|
stmdb sp!, {r4, r12, lr}
|
|
sub sp, sp, #0x1C
|
|
|$M1916|
|
|
; Line 842
|
|
mov r3, #0
|
|
str r3, [sp, #0x10]
|
|
; Line 844
|
|
mov r3, #0
|
|
str r3, [sp, #0xC]
|
|
b |$LN3@D_UTIL_up_|
|
|
|$LN2@D_UTIL_up_|
|
|
ldr r3, [sp, #0xC]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0xC]
|
|
|$LN3@D_UTIL_up_|
|
|
ldrsh r2, [sp, #0x30]
|
|
ldr r3, [sp, #0xC]
|
|
cmp r3, r2
|
|
bge |$LN1@D_UTIL_up_|
|
|
; Line 846
|
|
ldr r2, [sp, #0x10]
|
|
mov r3, #0x19, 24
|
|
orr r3, r3, #0x9A
|
|
mul r3, r2, r3
|
|
mov r3, r3, asr #15
|
|
str r3, [sp, #4]
|
|
; Line 847
|
|
ldr r3, [sp, #4]
|
|
mov r2, r3, lsl #2
|
|
ldr r3, [sp, #4]
|
|
add r2, r2, r3
|
|
ldr r3, [sp, #0x10]
|
|
sub r3, r3, r2
|
|
mov r3, r3, lsl #16
|
|
mov r3, r3, asr #16
|
|
strh r3, [sp, #8]
|
|
; Line 848
|
|
mov r3, #0xC
|
|
str r3, [sp]
|
|
mov r3, #5
|
|
ldrsh r2, [sp, #8]
|
|
ldr r1, [pc, #0x4C]
|
|
ldr r4, [sp, #4]
|
|
mov r0, #2
|
|
mul lr, r4, r0
|
|
ldr r0, [sp, #0x28]
|
|
add r0, r0, lr
|
|
bl D_UTIL_interpol
|
|
strh r0, [sp, #0x18]
|
|
ldr r1, [sp, #0xC]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x2C]
|
|
add r2, r3, r2
|
|
ldrsh r3, [sp, #0x18]
|
|
strh r3, [r2]
|
|
; Line 849
|
|
ldr r3, [sp, #0x10]
|
|
add r3, r3, #4
|
|
str r3, [sp, #0x10]
|
|
; Line 850
|
|
b |$LN2@D_UTIL_up_|
|
|
|$LN1@D_UTIL_up_|
|
|
; Line 853
|
|
add sp, sp, #0x1C
|
|
ldmia sp, {r4, sp, pc}
|
|
|$LN9@D_UTIL_up_|
|
|
DCD |D_ROM_fir_up|
|
|
|$M1917|
|
|
|
|
ENDP ; |D_UTIL_up_samp|
|
|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1925| DCD |$LN12@D_UTIL_syn@2|
|
|
DCD 0x40007d04
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_UTIL_synthesis| PROC
|
|
; Line 978
|
|
|$LN12@D_UTIL_syn@2|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r3}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #0xE4
|
|
|$M1922|
|
|
; Line 983
|
|
ldrsh r1, [sp, #0xF0]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
add r3, sp, #8
|
|
add r3, r3, r2
|
|
str r3, [sp, #0xD4]
|
|
; Line 986
|
|
ldr r3, [sp, #0xEC]
|
|
ldrsh r0, [r3]
|
|
bl D_UTIL_norm_s
|
|
strh r0, [sp, #0xE0]
|
|
ldrsh r3, [sp, #0xE0]
|
|
sub r3, r3, #2
|
|
str r3, [sp, #4]
|
|
; Line 988
|
|
ldrsh r3, [sp, #0xF0]
|
|
mov r1, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r1, [sp, #0x100]
|
|
add r0, sp, #8
|
|
bl memcpy
|
|
; Line 990
|
|
ldr r3, [sp, #0xEC]
|
|
ldrsh r3, [r3]
|
|
mov r3, r3, asr #1
|
|
mov r3, r3, lsl #16
|
|
mov r3, r3, asr #16
|
|
strh r3, [sp, #0xD8]
|
|
; Line 993
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN7@D_UTIL_syn@2|
|
|
|$LN6@D_UTIL_syn@2|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN7@D_UTIL_syn@2|
|
|
ldrsh r2, [sp, #0xFC]
|
|
ldr r3, [sp]
|
|
cmp r3, r2
|
|
bge |$LN5@D_UTIL_syn@2|
|
|
; Line 995
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0xF4]
|
|
add r3, r3, r2
|
|
ldrsh r2, [r3]
|
|
ldrsh r3, [sp, #0xD8]
|
|
mul r3, r2, r3
|
|
str r3, [sp, #0xD0]
|
|
; Line 997
|
|
mov r3, #1
|
|
str r3, [sp, #0xDC]
|
|
b |$LN4@D_UTIL_syn@2|
|
|
|$LN3@D_UTIL_syn@2|
|
|
ldr r3, [sp, #0xDC]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0xDC]
|
|
|$LN4@D_UTIL_syn@2|
|
|
ldrsh r2, [sp, #0xF0]
|
|
ldr r3, [sp, #0xDC]
|
|
cmp r3, r2
|
|
bgt |$LN2@D_UTIL_syn@2|
|
|
; Line 999
|
|
ldr r1, [sp, #0xDC]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0xEC]
|
|
add r3, r3, r2
|
|
ldrsh r0, [r3]
|
|
ldr r2, [sp]
|
|
ldr r3, [sp, #0xDC]
|
|
sub r1, r2, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0xD4]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
mul r2, r0, r3
|
|
ldr r3, [sp, #0xD0]
|
|
sub r3, r3, r2
|
|
str r3, [sp, #0xD0]
|
|
; Line 1000
|
|
b |$LN3@D_UTIL_syn@2|
|
|
|$LN2@D_UTIL_syn@2|
|
|
; Line 1001
|
|
ldr r2, [sp, #0xD0]
|
|
ldr r3, [sp, #4]
|
|
mov r3, r2, lsl r3
|
|
str r3, [sp, #0xD0]
|
|
; Line 1003
|
|
ldr r3, [sp, #0xD0]
|
|
add r3, r3, #2, 22
|
|
mov r3, r3, asr #12
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0xD4]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0xD4]
|
|
add r0, r3, r2
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0xF8]
|
|
add r2, r3, r2
|
|
ldrsh r3, [r0]
|
|
strh r3, [r2]
|
|
; Line 1004
|
|
b |$LN6@D_UTIL_syn@2|
|
|
|$LN5@D_UTIL_syn@2|
|
|
; Line 1007
|
|
add r3, sp, #1, 24
|
|
ldrsh r3, [r3, #4]
|
|
cmp r3, #0
|
|
beq |$LN1@D_UTIL_syn@2|
|
|
; Line 1009
|
|
ldrsh r3, [sp, #0xF0]
|
|
mov r1, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldrsh r1, [sp, #0xFC]
|
|
ldrsh r3, [sp, #0xF0]
|
|
sub r0, r1, r3
|
|
mov r3, #2
|
|
mul r1, r0, r3
|
|
ldr r3, [sp, #0xD4]
|
|
add r1, r3, r1
|
|
ldr r0, [sp, #0x100]
|
|
bl memcpy
|
|
|$LN1@D_UTIL_syn@2|
|
|
; Line 1013
|
|
add sp, sp, #0xE4
|
|
ldmia sp, {sp, pc}
|
|
|$M1923|
|
|
|
|
ENDP ; |D_UTIL_synthesis|
|
|
|
|
IMPORT |D_ROM_fir_7k|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1930| DCD |$LN11@D_UTIL_hp_|
|
|
DCD 0x40004f04
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_UTIL_hp_7k| PROC
|
|
; Line 1081
|
|
|$LN11@D_UTIL_hp_|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r2}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #0xE8
|
|
|$M1927|
|
|
; Line 1086
|
|
mov r2, #0x3C
|
|
ldr r1, [sp, #0xF8]
|
|
add r0, sp, #0
|
|
bl memcpy
|
|
; Line 1087
|
|
ldrsh r3, [sp, #0xF4]
|
|
mov r1, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r1, [sp, #0xF0]
|
|
add r3, sp, #0
|
|
add r0, r3, #0x3C
|
|
bl memcpy
|
|
; Line 1089
|
|
mov r3, #0
|
|
str r3, [sp, #0xDC]
|
|
b |$LN6@D_UTIL_hp_|
|
|
|$LN5@D_UTIL_hp_|
|
|
ldr r3, [sp, #0xDC]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0xDC]
|
|
|$LN6@D_UTIL_hp_|
|
|
ldrsh r2, [sp, #0xF4]
|
|
ldr r3, [sp, #0xDC]
|
|
cmp r3, r2
|
|
bge |$LN4@D_UTIL_hp_|
|
|
; Line 1091
|
|
mov r3, #0
|
|
str r3, [sp, #0xE0]
|
|
; Line 1093
|
|
mov r3, #0
|
|
str r3, [sp, #0xE4]
|
|
b |$LN3@D_UTIL_hp_|
|
|
|$LN2@D_UTIL_hp_|
|
|
ldr r3, [sp, #0xE4]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0xE4]
|
|
|$LN3@D_UTIL_hp_|
|
|
ldr r3, [sp, #0xE4]
|
|
cmp r3, #0x1F
|
|
bge |$LN1@D_UTIL_hp_|
|
|
; Line 1095
|
|
ldr r2, [sp, #0xDC]
|
|
ldr r3, [sp, #0xE4]
|
|
add r1, r2, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
add r3, sp, #0
|
|
add r3, r3, r2
|
|
ldrsh r0, [r3]
|
|
ldr r1, [sp, #0xE4]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x70]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
mul r2, r0, r3
|
|
ldr r3, [sp, #0xE0]
|
|
add r3, r3, r2
|
|
str r3, [sp, #0xE0]
|
|
; Line 1096
|
|
b |$LN2@D_UTIL_hp_|
|
|
|$LN1@D_UTIL_hp_|
|
|
; Line 1098
|
|
ldr r3, [sp, #0xE0]
|
|
add r3, r3, #1, 18
|
|
mov r3, r3, asr #15
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp, #0xDC]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0xF0]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 1099
|
|
b |$LN5@D_UTIL_hp_|
|
|
|$LN4@D_UTIL_hp_|
|
|
; Line 1101
|
|
mov r2, #0x3C
|
|
ldrsh r0, [sp, #0xF4]
|
|
mov r3, #2
|
|
mul r1, r0, r3
|
|
add r3, sp, #0
|
|
add r1, r3, r1
|
|
ldr r0, [sp, #0xF8]
|
|
bl memcpy
|
|
; Line 1104
|
|
add sp, sp, #0xE8
|
|
ldmia sp, {sp, pc}
|
|
|$LN12@D_UTIL_hp_|
|
|
DCD |D_ROM_fir_7k|
|
|
|$M1928|
|
|
|
|
ENDP ; |D_UTIL_hp_7k|
|
|
|
|
EXPORT |D_UTIL_preemph|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1936| DCD |$LN8@D_UTIL_pre|
|
|
DCD 0x40004d04
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_UTIL_preemph| PROC
|
|
; Line 1368
|
|
|$LN8@D_UTIL_pre|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r3}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #0xC
|
|
|$M1933|
|
|
; Line 1372
|
|
ldrsh r3, [sp, #0x1C]
|
|
sub r1, r3, #1
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x14]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
strh r3, [sp, #4]
|
|
; Line 1374
|
|
ldrsh r3, [sp, #0x1C]
|
|
sub r3, r3, #1
|
|
str r3, [sp]
|
|
b |$LN3@D_UTIL_pre|
|
|
|$LN2@D_UTIL_pre|
|
|
ldr r3, [sp]
|
|
sub r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN3@D_UTIL_pre|
|
|
ldr r3, [sp]
|
|
cmp r3, #0
|
|
ble |$LN1@D_UTIL_pre|
|
|
; Line 1376
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x14]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
mov r3, r3, lsl #15
|
|
str r3, [sp, #8]
|
|
; Line 1377
|
|
ldr r3, [sp]
|
|
sub r1, r3, #1
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x14]
|
|
add r3, r3, r2
|
|
ldrsh r1, [r3]
|
|
ldrsh r3, [sp, #0x18]
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #8]
|
|
sub r3, r3, r2
|
|
str r3, [sp, #8]
|
|
; Line 1378
|
|
ldr r3, [sp, #8]
|
|
add r3, r3, #1, 18
|
|
mov r3, r3, asr #15
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x14]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 1379
|
|
b |$LN2@D_UTIL_pre|
|
|
|$LN1@D_UTIL_pre|
|
|
; Line 1381
|
|
ldr r3, [sp, #0x14]
|
|
ldrsh r3, [r3]
|
|
mov r3, r3, lsl #15
|
|
str r3, [sp, #8]
|
|
; Line 1382
|
|
ldr r3, [sp, #0x20]
|
|
ldrsh r1, [r3]
|
|
ldrsh r3, [sp, #0x18]
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #8]
|
|
sub r3, r3, r2
|
|
str r3, [sp, #8]
|
|
; Line 1383
|
|
ldr r3, [sp, #8]
|
|
add r3, r3, #1, 18
|
|
mov r3, r3, asr #15
|
|
mov r2, r3, lsl #16
|
|
mov r2, r2, asr #16
|
|
ldr r3, [sp, #0x14]
|
|
strh r2, [r3]
|
|
; Line 1384
|
|
ldrsh r2, [sp, #4]
|
|
ldr r3, [sp, #0x20]
|
|
strh r2, [r3]
|
|
; Line 1387
|
|
add sp, sp, #0xC
|
|
ldmia sp, {sp, pc}
|
|
|$M1934|
|
|
|
|
ENDP ; |D_UTIL_preemph|
|
|
|
|
END
|