gps/GPSResources/tcpmp 0.73/amr/Pocket PC 2003 (ARMV4)/Release/amrwb.asm

505 lines
11 KiB
NASM
Executable File

; Listing generated by Microsoft (R) Optimizing Compiler Version 14.00.50727
TTL d:\MyProject\VS2005\Tcpmp\tcpmp\amr\amrwb.c
CODE32
AREA |.drectve|, DRECTVE
DCB "/nodefaultlib:libc.lib "
DCB "/nodefaultlib:libcd.lib "
DCB "/nodefaultlib:oldnames.lib "
DCB "-defaultlib:LIBCMT "
DCB "-defaultlib:OLDNAMES "
AREA |.rdata|, DATA, READONLY
|AMRWB| DCD 0x3a8
DCD 0x57524d41
DCD 0x43444f43
DCD 0x3e8
DCD |Create|
DCD 0x0
|AMRWBFile| DCD 0x0
DCD 0x57464d41
DCD 0x41574152
DCD 0x3e3
% 8
AREA |.data|, DATA
|$SG4267| DCB "#!AMR-WB", 0xa, 0x0
AREA |.pdata|, PDATA
|$T4327| DCD |$LN5@Create|
DCD 0x40001804
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|Create| PROC
; File d:\myproject\vs2005\tcpmp\tcpmp\amr\amrwb.c
; Line 109
|$LN5@Create|
mov r12, sp
stmdb sp!, {r0}
stmdb sp!, {r12, lr}
sub sp, sp, #4
|$M4324|
; Line 110
ldr r3, [sp, #0xC]
add r2, r3, #0x1C
ldr r3, [pc, #0x3C]
str r3, [r2]
; Line 111
ldr r3, [sp, #0xC]
add r2, r3, #0x10
ldr r3, [pc, #0x28]
str r3, [r2]
; Line 112
ldr r3, [sp, #0xC]
add r2, r3, #0x18
ldr r3, [pc, #0x14]
str r3, [r2]
; Line 113
mov r3, #0
str r3, [sp]
; Line 114
ldr r0, [sp]
add sp, sp, #4
ldmia sp, {sp, pc}
|$LN6@Create|
DCD |Flush|
DCD |UpdateInput|
DCD |Process|
|$M4325|
ENDP ; |Create|
IMPORT |__imp_PacketFormatPCM|
IMPORT |D_IF_init|
IMPORT |__imp_BufferClear|
IMPORT |D_IF_exit|
AREA |.pdata|, PDATA
|$T4334| DCD |$LN8@UpdateInpu|
DCD 0x40004204
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|UpdateInput| PROC
; Line 41
|$LN8@UpdateInpu|
mov r12, sp
stmdb sp!, {r0}
stmdb sp!, {r12, lr}
sub sp, sp, #8
|$M4331|
; Line 42
ldr r3, [sp, #0x10]
add r3, r3, #0x49, 30
ldr r3, [r3]
cmp r3, #0
beq |$LN3@UpdateInpu|
; Line 44
ldr r3, [sp, #0x10]
add r3, r3, #0x49, 30
ldr r0, [r3]
bl D_IF_exit
; Line 45
ldr r3, [sp, #0x10]
add r2, r3, #0x49, 30
mov r3, #0
str r3, [r2]
|$LN3@UpdateInpu|
; Line 47
ldr r3, [sp, #0x10]
add r0, r3, #0x45, 30
ldr r3, [pc, #0xB0]
ldr r3, [r3]
mov lr, pc
mov pc, r3
; Line 49
ldr r3, [sp, #0x10]
add r3, r3, #0x30
ldr r3, [r3]
cmp r3, #2
bne |$LN2@UpdateInpu|
; Line 51
bl D_IF_init
str r0, [sp, #4]
ldr r3, [sp, #0x10]
add r2, r3, #0x49, 30
ldr r3, [sp, #4]
str r3, [r2]
; Line 52
ldr r3, [sp, #0x10]
add r3, r3, #0x49, 30
ldr r3, [r3]
cmp r3, #0
bne |$LN1@UpdateInpu|
; Line 53
mvn r3, #1
str r3, [sp]
b |$LN4@UpdateInpu|
|$LN1@UpdateInpu|
; Line 55
ldr r3, [sp, #0x10]
add r2, r3, #0x50
mov r3, #0xFA, 26
str r3, [r2]
; Line 56
ldr r3, [sp, #0x10]
add r2, r3, #0x4C
mov r3, #1
str r3, [r2]
; Line 58
mov r2, #0x10
ldr r3, [sp, #0x10]
add r1, r3, #0x30
ldr r3, [sp, #0x10]
add r0, r3, #0x84
ldr r3, [pc, #0x1C]
ldr r3, [r3]
mov lr, pc
mov pc, r3
|$LN2@UpdateInpu|
; Line 61
mov r3, #0
str r3, [sp]
|$LN4@UpdateInpu|
; Line 62
ldr r0, [sp]
add sp, sp, #8
ldmia sp, {sp, pc}
|$LN9@UpdateInpu|
DCD |__imp_PacketFormatPCM|
DCD |__imp_BufferClear|
|$M4332|
ENDP ; |UpdateInput|
IMPORT |D_IF_decode|
IMPORT |block_size|
IMPORT |memcmp|
IMPORT |__imp_BufferWrite|
IMPORT |__imp_BufferPack|
AREA |.pdata|, PDATA
|$T4341| DCD |$LN11@Process|
DCD 0x4000a104
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|Process| PROC
; Line 65
|$LN11@Process|
mov r12, sp
stmdb sp!, {r0 - r2}
stmdb sp!, {r4, r12, lr}
sub sp, sp, #0xC
|$M4338|
; Line 67
ldr r3, [sp, #0x1C]
cmp r3, #0
beq |$LN6@Process|
; Line 69
ldr r3, [sp, #0x1C]
add r3, r3, #0x24
ldr r3, [r3]
cmp r3, #0
blt |$LN5@Process|
; Line 70
ldr r3, [sp, #0x1C]
add r1, r3, #0x24
ldr r3, [sp, #0x18]
add r2, r3, #0xF0
ldr r3, [r1]
str r3, [r2]
|$LN5@Process|
; Line 73
mov r1, #0
ldr r3, [sp, #0x18]
add r0, r3, #0x45, 30
ldr r3, [pc, #0x224]
ldr r3, [r3]
mov lr, pc
mov pc, r3
; Line 74
mov r3, #1, 24
ldr r2, [sp, #0x1C]
add r2, r2, #0x20
ldr r2, [r2]
ldr r1, [sp, #0x1C]
ldr r1, [r1]
ldr r0, [sp, #0x18]
add r0, r0, #0x45, 30
ldr lr, [pc, #0x1F0]
ldr r4, [lr]
mov lr, pc
mov pc, r4
; Line 76
b |$LN4@Process|
|$LN6@Process|
; Line 77
ldr r3, [sp, #0x18]
add r2, r3, #0xF0
mvn r3, #0
str r3, [r2]
|$LN4@Process|
; Line 79
ldr r3, [sp, #0x18]
add r2, r3, #0x46, 30
ldr r3, [sp, #0x18]
add r3, r3, #0x47, 30
ldr r2, [r2]
ldr r3, [r3]
sub r3, r2, r3
cmp r3, #1
bge |$LN3@Process|
; Line 80
mvn r3, #5
str r3, [sp, #4]
b |$LN7@Process|
|$LN3@Process|
; Line 84
ldr r3, [sp, #0x18]
add r2, r3, #0x45, 30
ldr r3, [sp, #0x18]
add r3, r3, #0x47, 30
ldr r2, [r2]
ldr r3, [r3]
add r3, r2, r3
ldrb r3, [r3]
cmp r3, #0x23
bne |$LN2@Process|
ldr r3, [sp, #0x18]
add r2, r3, #0x46, 30
ldr r3, [sp, #0x18]
add r3, r3, #0x47, 30
ldr r2, [r2]
ldr r3, [r3]
sub r3, r2, r3
cmp r3, #9
ble |$LN2@Process|
mov r2, #9
ldr r1, [pc, #0x148]
ldr r3, [sp, #0x18]
add r0, r3, #0x45, 30
ldr r3, [sp, #0x18]
add r3, r3, #0x47, 30
ldr r0, [r0]
ldr r3, [r3]
add r0, r0, r3
bl memcmp
str r0, [sp, #8]
ldr r3, [sp, #8]
cmp r3, #0
bne |$LN2@Process|
; Line 85
ldr r3, [sp, #0x18]
add r3, r3, #0x47, 30
ldr r3, [r3]
add r2, r3, #9
ldr r3, [sp, #0x18]
add r3, r3, #0x47, 30
str r2, [r3]
|$LN2@Process|
; Line 87
ldr r3, [sp, #0x18]
add r2, r3, #0x45, 30
ldr r3, [sp, #0x18]
add r3, r3, #0x47, 30
ldr r2, [r2]
ldr r3, [r3]
add r3, r2, r3
ldrb r3, [r3]
mov r3, r3, asr #3
and r2, r3, #0xF
ldr r3, [pc, #0xCC]
add r3, r3, r2
ldrb r3, [r3]
str r3, [sp]
; Line 89
ldr r3, [sp, #0x18]
add r2, r3, #0x46, 30
ldr r3, [sp, #0x18]
add r3, r3, #0x47, 30
ldr r2, [r2]
ldr r3, [r3]
sub r2, r2, r3
ldr r3, [sp]
cmp r2, r3
bge |$LN1@Process|
; Line 90
mvn r3, #5
str r3, [sp, #4]
b |$LN7@Process|
|$LN1@Process|
; Line 92
mov r3, #0
ldr r2, [sp, #0x18]
add r2, r2, #0x4A, 30
ldr r1, [sp, #0x18]
add r0, r1, #0x45, 30
ldr r1, [sp, #0x18]
add r1, r1, #0x47, 30
ldr r0, [r0]
ldr r1, [r1]
add r1, r0, r1
ldr r0, [sp, #0x18]
add r0, r0, #0x49, 30
ldr r0, [r0]
bl D_IF_decode
; Line 93
ldr r3, [sp, #0x18]
add r3, r3, #0x47, 30
ldr r2, [r3]
ldr r3, [sp]
add r2, r2, r3
ldr r3, [sp, #0x18]
add r3, r3, #0x47, 30
str r2, [r3]
; Line 94
ldr r3, [sp, #0x18]
add r2, r3, #0xEC
mov r3, #0xA, 26
str r3, [r2]
; Line 95
ldr r3, [sp, #0x18]
add r2, r3, #0x4A, 30
ldr r3, [sp, #0x18]
add r3, r3, #0xCC
str r2, [r3]
; Line 96
mov r3, #0
str r3, [sp, #4]
|$LN7@Process|
; Line 97
ldr r0, [sp, #4]
add sp, sp, #0xC
ldmia sp, {r4, sp, pc}
|$LN12@Process|
DCD |block_size|
DCD |$SG4267|
DCD |__imp_BufferWrite|
DCD |__imp_BufferPack|
|$M4339|
ENDP ; |Process|
IMPORT |D_IF_reset|
AREA |.pdata|, PDATA
|$T4348| DCD |$LN6@Flush|
DCD 0x40001204
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|Flush| PROC
; Line 102
|$LN6@Flush|
mov r12, sp
stmdb sp!, {r0}
stmdb sp!, {r12, lr}
sub sp, sp, #4
|$M4345|
; Line 103
ldr r3, [sp, #0xC]
add r3, r3, #0x49, 30
ldr r3, [r3]
cmp r3, #0
beq |$LN1@Flush|
; Line 104
ldr r3, [sp, #0xC]
add r3, r3, #0x49, 30
ldr r0, [r3]
bl D_IF_reset
|$LN1@Flush|
; Line 105
mov r3, #0
str r3, [sp]
; Line 106
ldr r0, [sp]
add sp, sp, #4
ldmia sp, {sp, pc}
|$M4346|
ENDP ; |Flush|
EXPORT |AMRWB_Init|
IMPORT |__imp_NodeRegisterClass|
AREA |.pdata|, PDATA
|$T4353| DCD |$LN5@AMRWB_Init|
DCD 0x40000f01
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|AMRWB_Init| PROC
; Line 135
|$LN5@AMRWB_Init|
str lr, [sp, #-4]!
|$M4350|
; Line 136
ldr r0, [pc, #0x2C]
ldr r3, [pc, #0x20]
ldr r3, [r3]
mov lr, pc
mov pc, r3
; Line 137
ldr r0, [pc, #0x14]
ldr r3, [pc, #0xC]
ldr r3, [r3]
mov lr, pc
mov pc, r3
; Line 138
ldr pc, [sp], #4
|$LN6@AMRWB_Init|
DCD |__imp_NodeRegisterClass|
DCD |AMRWBFile|
DCD |AMRWB|
|$M4351|
ENDP ; |AMRWB_Init|
EXPORT |AMRWB_Done|
IMPORT |__imp_NodeUnRegisterClass|
AREA |.pdata|, PDATA
|$T4359| DCD |$LN5@AMRWB_Done|
DCD 0x40000f01
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|AMRWB_Done| PROC
; Line 141
|$LN5@AMRWB_Done|
str lr, [sp, #-4]!
|$M4356|
; Line 142
ldr r0, [pc, #0x2C]
ldr r3, [pc, #0x20]
ldr r3, [r3]
mov lr, pc
mov pc, r3
; Line 143
ldr r0, [pc, #0x14]
ldr r3, [pc, #0xC]
ldr r3, [r3]
mov lr, pc
mov pc, r3
; Line 144
ldr pc, [sp], #4
|$LN6@AMRWB_Done|
DCD |__imp_NodeUnRegisterClass|
DCD 0x57464d41
DCD 0x57524d41
|$M4357|
ENDP ; |AMRWB_Done|
END