ad_liba52.mid
来自「君正早期ucos系统(只有早期的才不没有打包成库),MPLAYER,文件系统,图」· MID 代码 · 共 1,531 行 · 第 1/2 页
MID
1,531 行
.file 1 "ad_liba52.c" .section .mdebug.abi32 .previous .section .text.func_table,"ax",@progbits .align 2 .align 5 .globl func_table .ent func_table .type func_table, @functionfunc_table: .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0 .mask 0x00000000,0 .fmask 0x00000000,0 .set noreorder .set nomacro lui $2,%hi(mpcodecs_ad_liba52) j $31 addiu $2,$2,%lo(mpcodecs_ad_liba52) .set macro .set reorder .end func_table .section .text.preinit,"ax",@progbits .align 2 .align 5 .ent preinit .type preinit, @functionpreinit: .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0 .mask 0x00000000,0 .fmask 0x00000000,0 .set noreorder .set nomacro lw $3,32($4) lui $2,%hi(audio_output_channels) lw $5,%lo(audio_output_channels)($2) slt $2,$3,2 beq $2,$0,$L4 nop li $3,2 # 0x2 sw $3,32($4)$L4: sll $2,$3,11 sll $3,$3,9 subu $2,$2,$3 mul $2,$5,$2 li $3,3840 # 0xf00 sw $3,48($4) sw $2,64($4) li $3,1 # 0x1 lui $2,%hi(a52_level) sw $3,%lo(a52_level)($2) j $31 li $2,1 # 0x1 .set macro .set reorder .end preinit .section .text.a52_resample_float,"ax",@progbits .align 2 .align 5 .ent a52_resample_float .type a52_resample_float, @functiona52_resample_float: .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0 .mask 0x00000000,0 .fmask 0x00000000,0 .set noreorder .set nomacro lui $2,%hi(channel_map) lw $10,%lo(channel_map)($2) move $7,$5 move $8,$0 li $9,15 # 0xf li $11,256 # 0x100$L9: j $L10 move $6,$10$L11: lw $2,0($2) srl $6,$6,4 sw $2,0($7) beq $6,$0,$L21 addiu $7,$7,4$L10: andi $3,$6,0xf addiu $2,$3,-1 sll $2,$2,8 addu $2,$2,$8 sll $2,$2,2 bne $3,$9,$L11 addu $2,$2,$4 move $2,$0 srl $6,$6,4 sw $2,0($7) bne $6,$0,$L10 addiu $7,$7,4$L21: addiu $8,$8,1 bne $8,$11,$L9 nop subu $2,$7,$5 j $31 sra $2,$2,1 .set macro .set reorder .end a52_resample_float .section .text.uninit,"ax",@progbits .align 2 .align 5 .ent uninit .type uninit, @functionuninit: .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0 .mask 0x00000000,0 .fmask 0x00000000,0 .set noreorder .set nomacro j $31 nop .set macro .set reorder .end uninit .globl __floatsidf .globl __extendsfdf2 .globl __fixdfsi .section .text.dynrng_call,"ax",@progbits .align 2 .align 5 .globl dynrng_call .ent dynrng_call .type dynrng_call, @functiondynrng_call: .frame $sp,32,$31 # vars= 0, regs= 3/0, args= 16, gp= 0 .mask 0x80030000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-32 sw $31,24($sp) sw $17,20($sp) jal __floatsidf sw $16,16($sp) move $16,$2 lui $2,%hi(a52_drc_level) lw $4,%lo(a52_drc_level)($2) jal __extendsfdf2 move $17,$3 move $6,$2 move $4,$16 move $5,$17 jal pow move $7,$3 move $4,$2 jal __fixdfsi move $5,$3 lw $31,24($sp) lw $17,20($sp) lw $16,16($sp) j $31 addiu $sp,$sp,32 .set macro .set reorder .end dynrng_call .section .rodata.str1.4,"aMS",@progbits,1 .align 2$LC0: .ascii "a52: len=%d flags=0x%X %d Hz %d bit/s\012\000" .align 2$LC1: .ascii "a52: CRC check failed! \012\000" .section .text.a52_fillbuff,"ax",@progbits .align 2 .align 5 .globl a52_fillbuff .ent a52_fillbuff .type a52_fillbuff, @functiona52_fillbuff: .frame $sp,64,$31 # vars= 16, regs= 4/0, args= 32, gp= 0 .mask 0x80070000,-4 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-64 sw $16,48($sp) move $16,$4 sw $31,60($sp) sw $18,56($sp) sw $17,52($sp) sw $0,32($sp) sw $0,36($sp) sw $0,40($sp) move $4,$0 sw $0,56($16)$L56: slt $2,$4,8 bne $2,$0,$L28 nop$L57: lw $2,12($16) li $17,8192 # 0x2000 beq $2,$17,$L36 li $6,8 # 0x8 lw $4,52($16) jal swab move $5,$4$L36: lw $4,52($16) addiu $5,$sp,32 addiu $6,$sp,36 jal a52_syncinfo addiu $7,$sp,40 move $18,$2 addiu $2,$2,-7 sltu $2,$2,3834 bne $2,$0,$L38 lw $2,32($sp) lw $2,12($16) beq $2,$17,$L40 li $6,8 # 0x8 lw $4,52($16) jal swab move $5,$4$L40: lw $4,52($16) li $6,7 # 0x7 jal memmove addiu $5,$4,1 lw $4,56($16) addiu $2,$4,-1 move $4,$2 sw $2,56($16) slt $2,$4,8 beq $2,$0,$L57 nop$L28: lw $4,4($16) lw $5,0($4) lw $2,4($4) slt $2,$5,$2 bne $2,$0,$L58 addiu $3,$5,1 jal ds_fill_buffer nop beq $2,$0,$L32 nop lw $3,4($16) lw $4,0($3) lw $2,8($3) addiu $5,$4,1 addu $2,$2,$4 lbu $6,0($2) bltz $6,$L32 sw $5,0($3)$L59: lw $3,56($16) lw $2,52($16) addiu $4,$3,1 addu $2,$2,$3 sb $6,0($2) j $L56 sw $4,56($16)$L58: lw $2,8($4) addu $2,$2,$5 lbu $6,0($2) bgez $6,$L59 sw $3,0($4)$L32: li $18,-1 # 0xffffffffffffffff move $2,$18$L60: lw $31,60($sp) lw $18,56($sp) lw $17,52($sp) lw $16,48($sp) j $31 addiu $sp,$sp,64$L38: lw $3,36($sp) sw $2,16($sp) lui $6,%hi($LC0) lw $2,40($sp) addiu $6,$6,%lo($LC0) li $4,12 # 0xc li $5,7 # 0x7 move $7,$18 sw $3,20($sp) jal mp_msg sw $2,24($sp) lw $3,40($sp) lw $4,24($16) addiu $5,$3,7 slt $2,$3,0 movn $3,$5,$2 xori $4,$4,0x1d li $2,2 # 0x2 li $6,4 # 0x4 movn $6,$2,$4 lw $5,52($16) lw $2,36($sp) sra $3,$3,3 addiu $17,$18,-8 lw $4,4($16) sw $3,44($16) sw $6,32($16) sw $2,28($16) addiu $5,$5,8 jal demux_read_data move $6,$17 lw $3,12($16) li $2,8192 # 0x2000 beq $3,$2,$L46 move $6,$17 lw $4,52($16) addiu $4,$4,8 jal swab move $5,$4$L46: lw $4,52($16) addiu $5,$18,-2 jal a52_crc16_block addiu $4,$4,2 beq $2,$0,$L60 move $2,$18 lui $6,%hi($LC1) addiu $6,$6,%lo($LC1) li $4,12 # 0xc jal mp_msg li $5,5 # 0x5 move $2,$18 lw $31,60($sp) lw $18,56($sp) lw $17,52($sp) lw $16,48($sp) j $31 addiu $sp,$sp,64 .set macro .set reorder .end a52_fillbuff .section .rodata.str1.4 .align 2$LC2: .ascii "a52: error decoding frame\012\000" .align 2$LC3: .ascii "a52: error at resampling\012\000" .align 2$LC4: .ascii "len <= maxlen\000" .align 2$LC5: .ascii "ad_liba52.c\000" .section .text.decode_audio,"ax",@progbits .align 2 .align 5 .ent decode_audio .type decode_audio, @functiondecode_audio: .frame $sp,64,$31 # vars= 8, regs= 7/0, args= 24, gp= 0 .mask 0x803f0000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-64 sw $21,52($sp) sw $20,48($sp) sw $17,36($sp) sw $16,32($sp) sw $31,56($sp) sw $19,44($sp) sw $18,40($sp) lui $2,%hi(a52_flags) lw $6,24($4) lw $3,%lo(a52_flags)($2) lui $2,%hi(a52_level) lw $8,%lo(a52_level)($2) lw $9,56($4) ori $3,$3,0x20 xori $6,$6,0x1d li $2,384 # 0x180 move $17,$0 move $16,$4 sw $8,24($sp) sw $3,28($sp) movn $17,$2,$6 move $20,$5 beq $9,$0,$L86 move $21,$7 lui $18,%hi(a52_state)$L93: lw $5,52($16) lw $4,%lo(a52_state)($18) sw $0,56($16) addiu $6,$sp,28 addiu $7,$sp,24 jal a52_frame sw $17,16($sp) bne $2,$0,$L87 lui $2,%hi(a52_drc_action) lw $3,%lo(a52_drc_action)($2) bne $3,$0,$L88 lw $4,%lo(a52_state)($18)$L91: jal a52_block lui $18,%hi(a52_state) bne $2,$0,$L89 lw $4,%lo(a52_state)($18) lui $19,%hi(a52_resample) jal a52_samples lw $16,%lo(a52_resample)($19) move $4,$2 jal $16 move $5,$20 lw $4,%lo(a52_state)($18) jal a52_block sll $17,$2,1 bne $2,$0,$L77 lw $4,%lo(a52_state)($18) jal a52_samples lw $16,%lo(a52_resample)($19) move $4,$2 jal $16 addu $5,$17,$20 lw $4,%lo(a52_state)($18) sll $2,$2,1 jal a52_block addu $17,$17,$2 bne $2,$0,$L77 lw $4,%lo(a52_state)($18) jal a52_samples lw $16,%lo(a52_resample)($19) move $4,$2 jal $16 addu $5,$17,$20 lw $4,%lo(a52_state)($18) sll $2,$2,1 jal a52_block addu $17,$17,$2 bne $2,$0,$L77 lw $4,%lo(a52_state)($18) jal a52_samples lw $16,%lo(a52_resample)($19) move $4,$2 jal $16 addu $5,$17,$20 lw $4,%lo(a52_state)($18) sll $2,$2,1 jal a52_block addu $17,$17,$2 bne $2,$0,$L77 lw $4,%lo(a52_state)($18) jal a52_samples lw $16,%lo(a52_resample)($19) move $4,$2 jal $16 addu $5,$17,$20 lw $4,%lo(a52_state)($18) sll $2,$2,1 jal a52_block addu $17,$17,$2 bne $2,$0,$L77 lw $4,%lo(a52_state)($18) jal a52_samples lw $16,%lo(a52_resample)($19) move $4,$2 jal $16 addu $5,$17,$20 sll $2,$2,1 addu $17,$17,$2 slt $2,$21,$17$L92: bne $2,$0,$L90 lui $4,%hi($LC4)$L70: move $2,$17 lw $31,56($sp) lw $21,52($sp) lw $20,48($sp) lw $19,44($sp) lw $18,40($sp) lw $17,36($sp) lw $16,32($sp) j $31 addiu $sp,$sp,64$L88: move $5,$0 jal a52_dynrng move $6,$0 j $L91 lw $4,%lo(a52_state)($18)$L89: move $17,$0$L77: lui $6,%hi($LC3) addiu $6,$6,%lo($LC3) li $4,12 # 0xc jal mp_msg li $5,2 # 0x2 j $L92 slt $2,$21,$17$L86: jal a52_fillbuff nop bgez $2,$L93 lui $18,%hi(a52_state) j $L70 li $17,-1 # 0xffffffffffffffff$L87: lui $6,%hi($LC2) addiu $6,$6,%lo($LC2) li $4,12 # 0xc jal mp_msg li $5,2 # 0x2 j $L70 li $17,-1 # 0xffffffffffffffff$L90: lui $5,%hi($LC5) lui $7,%hi(__PRETTY_FUNCTION__.4683) addiu $4,$4,%lo($LC4) addiu $5,$5,%lo($LC5) addiu $7,$7,%lo(__PRETTY_FUNCTION__.4683) jal __assert_fail li $6,328 # 0x148 .set macro .set reorder .end decode_audio .globl __gtsf2 .globl __muldf3 .section .rodata.cst4,"aM",@progbits,4 .align 2$LC6: .word 1114636288 .section .rodata.cst8,"aM",@progbits,8 .align 3$LC7: .word 0 .word 1074266112 .section .rodata.cst4 .align 2$LC8: .word -1018691584 .section .rodata.cst8 .align 3$LC9: .word -1717986918 .word 1068079513 .align 3$LC10: .word 0 .word 1076101120 .section .text.control,"ax",@progbits .align 2 .align 5 .ent control .type control, @functioncontrol: .frame $sp,24,$31 # vars= 0, regs= 2/0, args= 16, gp= 0 .mask 0x80010000,-4 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-24 li $2,3 # 0x3 sw $31,20($sp) sw $16,16($sp) beq $5,$2,$L97 sw $7,36($sp) slt $2,$5,4 beq $2,$0,$L99 li $2,4 # 0x4 blez $5,$L95 nop jal a52_fillbuff nop li $4,1 # 0x1$L100: lw $31,20($sp) lw $16,16($sp) move $2,$4 j $31 addiu $sp,$sp,24$L99: beq $5,$2,$L98 lui $2,%hi($LC6)$L95: li $4,-1 # 0xffffffffffffffff lw $31,20($sp) lw $16,16($sp) move $2,$4 j $31 addiu $sp,$sp,24$L97: lw $4,0($6) li $2,9 # 0x9 beq $4,$2,$L112 xori $2,$4,0x1d sltu $4,$2,1 lw $31,20($sp) lw $16,16($sp) move $2,$4 j $31 addiu $sp,$sp,24$L98: lw $16,0($6) lw $5,%lo($LC6)($2) jal __gtsf2 move $4,$16 blez $2,$L101 lui $2,%hi($LC8) lui $2,%hi($LC7) lw $6,%lo($LC7)($2) lw $7,%lo($LC7+4)($2)$L104: lui $2,%hi($LC10) lw $4,%lo($LC10)($2) jal pow lw $5,%lo($LC10+4)($2) move $5,$3 jal __fixdfsi move $4,$2 move $3,$2$L107: lui $2,%hi(a52_level) sw $3,%lo(a52_level)($2) li $4,1 # 0x1 lw $31,20($sp) lw $16,16($sp) move $2,$4 j $31 addiu $sp,$sp,24$L112: j $L100 li $4,1 # 0x1$L101: lw $5,%lo($LC8)($2) jal __gtsf2 move $4,$16 blez $2,$L107 move $3,$0 jal __extendsfdf2 move $4,$16 lui $4,%hi($LC9) lw $6,%lo($LC9)($4) lw $7,%lo($LC9+4)($4) move $5,$3 jal __muldf3 move $4,$2 move $6,$2 j $L104 move $7,$3 .set macro .set reorder .end control .section .rodata.str1.4 .align 2$LC11: .ascii "A52 init failed\012\000" .align 2$LC12: .ascii "A52 sync failed\012\000"
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?