ad_libvorbis.mid
来自「君正早期ucos系统(只有早期的才不没有打包成库),MPLAYER,文件系统,图」· MID 代码 · 共 853 行
MID
853 行
.file 1 "ad_libvorbis.c" .section .mdebug.abi32 .previous .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 li $2,4096 # 0x1000 sw $2,64($4) j $31 li $2,1 # 0x1 .set macro .set reorder .end preinit .section .text.control,"ax",@progbits .align 2 .align 5 .ent control .type control, @functioncontrol: .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0 .mask 0x00000000,0 .fmask 0x00000000,0 .set noreorder .set nomacro li $2,-1 # 0xffffffffffffffff j $31 sw $7,12($sp) .set macro .set reorder .end control .section .text.install_mpcodecs_vorbis,"ax",@progbits .align 2 .align 5 .globl install_mpcodecs_vorbis .ent install_mpcodecs_vorbis .type install_mpcodecs_vorbis, @functioninstall_mpcodecs_vorbis: .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0 .mask 0x00000000,0 .fmask 0x00000000,0 .set noreorder .set nomacro lui $3,%hi(mpcodecs_ad_drivers) lw $4,%lo(mpcodecs_ad_drivers)($3) beq $4,$0,$L20 li $2,1 # 0x1 beq $4,$2,$L18 lui $2,%hi(mpcodecs_ad_drivers+4) addiu $6,$2,%lo(mpcodecs_ad_drivers+4) j $L12 li $4,1 # 0x1$L11: li $2,1 # 0x1 beq $5,$2,$L19 nop$L12: lw $5,0($6) addiu $4,$4,1 bne $5,$0,$L11 addiu $6,$6,4$L20: j $31 nop$L19: addiu $4,$4,-1$L10: sll $4,$4,2 addiu $3,$3,%lo(mpcodecs_ad_drivers) lui $2,%hi(mpcodecs_ad_libvorbis) addu $4,$4,$3 addiu $2,$2,%lo(mpcodecs_ad_libvorbis) j $31 sw $2,0($4)$L18: j $L10 move $4,$0 .set macro .set reorder .end install_mpcodecs_vorbis .globl __nedf2 .section .rodata.str1.4,"aMS",@progbits,1 .align 2$LC1: .ascii "Clipping in frame %ld\012\000" .align 2$LC2: .ascii "\012[decoded: %d / %d ]\012\000" .section .rodata.cst8,"aM",@progbits,8 .align 3$LC0: .word 0 .word -1008730112 .section .text.decode_audio,"ax",@progbits .align 2 .align 5 .ent decode_audio .type decode_audio, @functiondecode_audio: .frame $sp,112,$31 # vars= 48, regs= 10/0, args= 24, gp= 0 .mask 0xc0ff0000,-4 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-112 sw $21,92($sp) sw $31,108($sp) sw $fp,104($sp) sw $23,100($sp) sw $22,96($sp) sw $20,88($sp) sw $19,84($sp) sw $18,80($sp) sw $17,76($sp) sw $16,72($sp) move $21,$4 sw $6,120($sp) sw $5,116($sp) sw $7,124($sp) blez $6,$L22 lw $23,160($4) move $22,$0 addiu $19,$23,48 addiu $20,$sp,40 addiu $fp,$23,128$L67: move $4,$19$L69: jal vorbis_synthesis_pcmout addiu $5,$sp,24 bgtz $2,$L58 move $17,$2$L25: move $4,$20 move $5,$0 jal memset li $6,32 # 0x20 lw $4,4($21) move $5,$20 jal ds_get_packet_pts addiu $6,$sp,32 blez $2,$L26 move $18,$2 lui $2,%hi($LC0) lw $16,32($sp) lw $17,36($sp) lw $6,%lo($LC0)($2) lw $7,%lo($LC0+4)($2) move $4,$16 jal __nedf2 move $5,$17 beq $2,$0,$L68 move $4,$fp sw $16,176($21) sw $17,180($21) sw $0,184($21)$L68: move $5,$20 jal vorbis_synthesis sw $18,44($sp) bne $2,$0,$L69 move $4,$19 jal vorbis_synthesis_blockin move $5,$fp move $4,$19 jal vorbis_synthesis_pcmout addiu $5,$sp,24 blez $2,$L25 move $17,$2$L58: lw $3,124($sp)$L70: lw $11,4($23) subu $2,$3,$22 sll $8,$11,1 div $0,$2,$8 teq $8,$0,7 move $16,$17 mflo $2 slt $3,$17,$2 movz $16,$2,$3 blez $16,$L33 li $2,64 # 0x40 lw $6,220($23) beq $6,$2,$L35 nop blez $11,$L38 lw $3,116($sp) lw $9,24($sp) addu $7,$3,$22 move $10,$0$L50: lw $4,0($9) move $3,$7 move $5,$0$L51: lw $2,0($4) addiu $5,$5,1 mul $2,$6,$2 addiu $4,$4,4 sra $2,$2,15 sh $2,0($3) bne $16,$5,$L51 addu $3,$3,$8 addiu $10,$10,1 addiu $9,$9,4 bne $11,$10,$L50 addiu $7,$7,2$L38: sll $2,$11,1$L71: mul $2,$16,$2 lw $3,184($21) lui $6,%hi($LC2) addu $3,$3,$2 sw $3,184($21) li $4,12 # 0xc li $5,7 # 0x7 addiu $6,$6,%lo($LC2) move $7,$16 sw $17,16($sp) addu $22,$22,$2 jal mp_msg subu $17,$17,$16 move $5,$16 jal vorbis_synthesis_read move $4,$19 bgtz $17,$L70 lw $3,124($sp)$L33: lw $3,120($sp) slt $2,$22,$3 bne $2,$0,$L67 nop$L26: move $2,$22 lw $31,108($sp) lw $fp,104($sp) lw $23,100($sp) lw $22,96($sp) lw $21,92($sp) lw $20,88($sp) lw $19,84($sp) lw $18,80($sp) lw $17,76($sp) lw $16,72($sp) j $31 addiu $sp,$sp,112$L35: blez $11,$L38 lw $2,116($sp) lw $12,24($sp) addu $10,$22,$2 move $14,$0 move $9,$0 li $13,32768 # 0x8000$L40: lw $6,0($12) move $5,$10 move $7,$0$L41: lw $2,0($6) sra $2,$2,9 slt $3,$2,$13 bne $3,$0,$L42 slt $4,$2,-32768 li $9,1 # 0x1 li $2,32767 # 0x7fff$L44: sll $3,$2,16 sra $3,$3,16$L46: addiu $7,$7,1 sh $3,0($5) addiu $6,$6,4 bne $16,$7,$L41 addu $5,$5,$8 addiu $14,$14,1 addiu $12,$12,4 bne $11,$14,$L40 addiu $10,$10,2 beq $9,$0,$L71 sll $2,$11,1 lw $7,112($23) lui $6,%hi($LC1) addiu $6,$6,%lo($LC1) li $4,12 # 0xc jal mp_msg li $5,7 # 0x7 j $L38 lw $11,4($23)$L42: beq $4,$0,$L44 li $3,-32768 # 0xffffffffffff8000 j $L46 li $9,1 # 0x1$L22: j $L26 move $22,$0 .set macro .set reorder .end decode_audio .section .text.uninit,"ax",@progbits .align 2 .align 5 .ent uninit .type uninit, @functionuninit: .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 sw $31,20($sp) sw $16,16($sp) lw $16,160($4) jal vorbis_dsp_clear addiu $4,$16,48 jal vorbis_block_clear addiu $4,$16,128 jal vorbis_info_clear move $4,$16 move $4,$16 lw $31,20($sp) lw $16,16($sp) j uc_free addiu $sp,$sp,24 .set macro .set reorder .end uninit .section .rodata.str1.4 .align 2$LC3: .ascii "ad_vorbis, extradata seems to be absent! exit\012\000" .align 2$LC4: .ascii "ad_vorbis, extradata seems to be absent!, exit\012\000" .align 2$LC5: .ascii "ad_vorbis, extradata seems is %d bytes long\012\000" .align 2$LC6: .ascii "ad_vorbis, extradata seems to be NULL!, exit\012\000" .align 2$LC7: .ascii "ad_vorbis: Vorbis track does not contain valid headers.\012" .ascii "\000" .align 2$LC8: .ascii "ad_vorbis, offset: %u, length: %u\012\000" .align 2$LC9: .ascii "ad_vorbis, header sizes: %d %d %d\012\000" .align 2$LC10: .ascii "OggVorbis: header n. %d broken! len=%ld\012\000" .align 2$LC11: .ascii "OggVorbisComment: %s\012\000" .subsection -1 .align 2$LC13: .ascii "\000" .align 2$LC14: .ascii "s\000" .align 2$LC15: .ascii "OggVorbis: Bitstream is %d channel%s, %dHz, %dbit/s %cBR" .ascii "\012\000" .align 2$LC16: .ascii "OggVorbis: Encoded by: %s\012\000" .align 2$LC17: .ascii "OggVorbis: Init OK!\012\000" .section .rodata.cst4,"aM",@progbits,4 .align 2$LC12: .word 1065353216 .section .text.init,"ax",@progbits .align 2 .align 5 .ent init .type init, @functioninit: .frame $sp,136,$31 # vars= 72, regs= 8/0, args= 32, gp= 0 .mask 0x807f0000,-4 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-136 sw $21,124($sp) move $21,$4 li $4,224 # 0xe0 sw $31,132($sp) sw $22,128($sp) sw $20,120($sp) sw $19,116($sp) sw $18,112($sp) sw $17,108($sp) jal uc_malloc sw $16,104($sp) move $4,$2 addiu $22,$sp,56 jal vorbis_info_init move $20,$2 jal vorbis_comment_init move $4,$22 lw $3,156($21) beq $3,$0,$L123 lui $6,%hi($LC3) lbu $2,17($3) lbu $3,16($3) sll $2,$2,8 or $7,$2,$3 beq $7,$0,$L124 lui $6,%hi($LC4) lui $6,%hi($LC5) addiu $6,$6,%lo($LC5) li $4,12 # 0xc jal mp_msg li $5,6 # 0x6 lw $7,156($21) addiu $19,$7,18 beq $19,$0,$L125 li $2,2 # 0x2 lbu $3,18($7) bne $3,$2,$L82 lui $6,%hi($LC7) li $16,1 # 0x1 move $8,$0 move $18,$0$L122: addu $2,$19,$16 lbu $3,0($2) lui $6,%hi($LC8) li $2,255 # 0xff addiu $6,$6,%lo($LC8) li $4,7 # 0x7 li $5,6 # 0x6 beq $3,$2,$L126 addu $17,$8,$3$L86: lbu $2,17($7) lbu $3,16($7) sll $2,$2,8 or $2,$2,$3 addiu $2,$2,-1 sltu $2,$16,$2 addiu $16,$16,1 beq $2,$0,$L113 move $7,$16 jal mp_msg sw $17,16($sp) sll $2,$18,2 addiu $18,$18,1 addu $3,$sp,$2 sltu $4,$18,2 move $8,$0 beq $4,$0,$L90 sw $17,32($3) addu $2,$19,$16 lbu $3,0($2) lui $6,%hi($LC8) li $2,255 # 0xff lw $7,156($21) addiu $6,$6,%lo($LC8) li $4,7 # 0x7 li $5,6 # 0x6 bne $3,$2,$L86 addu $17,$8,$3$L126: lbu $2,17($7) lbu $3,16($7) sll $2,$2,8 or $2,$2,$3 sltu $2,$8,$2 beq $2,$0,$L86 addiu $8,$8,255 j $L122 addiu $16,$16,1$L124: addiu $6,$6,%lo($LC4) li $5,1 # 0x1 li $4,12 # 0xc$L120: jal mp_msg nop$L121: jal vorbis_comment_clear move $4,$22 jal vorbis_info_clear move $4,$20 jal uc_free move $4,$20 move $2,$0$L77: lw $31,132($sp) lw $22,128($sp) lw $21,124($sp) lw $20,120($sp) lw $19,116($sp) lw $18,112($sp) lw $17,108($sp) lw $16,104($sp) j $31 addiu $sp,$sp,136$L82: addiu $6,$6,%lo($LC7) li $5,2 # 0x2 jal mp_msg li $4,7 # 0x7 j $L121 nop$L113: lui $6,%hi($LC7) addiu $6,$6,%lo($LC7) li $5,2 # 0x2 j $L120 li $4,7 # 0x7$L90: lw $7,32($sp) lw $8,36($sp) addu $3,$7,$16 addu $4,$3,$8 lw $5,156($21) addu $2,$19,$16 addu $4,$19,$4 addu $3,$19,$3 sw $4,52($sp) sw $2,44($sp) sw $3,48($sp) lbu $2,17($5) lbu $3,16($5) sll $2,$2,8 or $2,$2,$3 subu $2,$2,$16 subu $2,$2,$7 lui $6,%hi($LC9) subu $2,$2,$8 addiu $6,$6,%lo($LC9) li $4,7 # 0x7 li $5,6 # 0x6 sw $2,20($sp) sw $2,40($sp) jal mp_msg sw $8,16($sp) lw $2,32($sp) addiu $16,$sp,72 lw $3,44($sp) sw $2,76($sp) move $4,$20 li $2,1 # 0x1 move $5,$22 move $6,$16 sw $3,72($sp) jal vorbis_synthesis_headerin sw $2,80($sp) bltz $2,$L127 lw $2,36($sp) lw $3,48($sp) move $4,$20 move $5,$22 move $6,$16 sw $2,76($sp) sw $3,72($sp) jal vorbis_synthesis_headerin sw $0,80($sp) bltz $2,$L128 lw $2,40($sp) lw $3,52($sp) move $6,$16 move $4,$20 move $5,$22 sw $2,76($sp) sw $3,72($sp) jal vorbis_synthesis_headerin sw $0,80($sp) bltz $2,$L129 lw $16,56($sp) lw $7,0($16) beq $7,$0,$L133 lui $2,%hi($LC12) lui $17,%hi($LC11) addiu $16,$16,4$L134: li $4,12 # 0xc li $5,6 # 0x6 jal mp_msg addiu $6,$17,%lo($LC11) lw $7,0($16) bne $7,$0,$L134 addiu $16,$16,4 addiu $16,$16,-4 lui $2,%hi($LC12)$L133: lw $7,4($20) lw $3,%lo($LC12)($2) slt $4,$7,2 li $2,64 # 0x40 sw $3,216($20) bne $4,$0,$L130 sw $2,220($20) lui $2,%hi($LC14) addiu $9,$2,%lo($LC14)$L103: lw $3,16($20) lw $2,20($20) beq $3,$2,$L131 lw $8,8($20)$L104: li $2,86 # 0x56 lui $6,%hi($LC15)$L135: addiu $6,$6,%lo($LC15) li $4,12 # 0xc li $5,6 # 0x6 sw $3,24($sp) sw $2,28($sp) sw $9,16($sp) jal mp_msg sw $8,20($sp) lw $7,68($sp) lui $6,%hi($LC16) addiu $6,$6,%lo($LC16) li $5,6 # 0x6 jal mp_msg li $4,12 # 0xc jal vorbis_comment_clear move $4,$22 lw $2,4($20) lw $3,8($20) lw $4,16($20) sw $2,36($21) li $2,2 # 0x2 sw $3,28($21) blez $4,$L132 sw $2,32($21) sra $2,$4,3$L110: addiu $16,$20,48 move $5,$20 move $4,$16 sw $2,44($21) jal vorbis_synthesis_init sw $20,160($21) move $4,$16 jal vorbis_block_init addiu $5,$20,128 lui $6,%hi($LC17) addiu $6,$6,%lo($LC17) li $4,12 # 0xc jal mp_msg li $5,6 # 0x6 j $L77 li $2,1 # 0x1$L123: addiu $6,$6,%lo($LC3) li $5,1 # 0x1 j $L120 li $4,12 # 0xc$L131: lw $2,12($20) bne $3,$2,$L104 li $2,67 # 0x43 j $L135 lui $6,%hi($LC15)$L125: lui $6,%hi($LC6) addiu $6,$6,%lo($LC6) li $5,1 # 0x1 jal mp_msg li $4,12 # 0xc j $L121 nop$L132: j $L110 li $2,16000 # 0x3e80$L130: lui $2,%hi($LC13) j $L103 addiu $9,$2,%lo($LC13)$L127: move $7,$0$L94: lw $2,76($sp) lui $6,%hi($LC10) addiu $6,$6,%lo($LC10) li $5,1 # 0x1 li $4,12 # 0xc jal mp_msg sw $2,16($sp) j $L121 nop$L129: j $L94 li $7,2 # 0x2$L128: j $L94 li $7,1 # 0x1 .set macro .set reorder .end init .globl mpcodecs_ad_libvorbis .data .align 2 .type mpcodecs_ad_libvorbis, @object .size mpcodecs_ad_libvorbis, 24mpcodecs_ad_libvorbis: .word info .word preinit .word init .word uninit .word control .word decode_audio .section .rodata.str1.4 .align 2$LC18: .ascii "Ogg/Vorbis audio decoder\000" .align 2$LC19: .ascii "libvorbis\000" .align 2$LC20: .ascii "Felix Buenemann, A'rpi\000" .data .align 2 .type info, @object .size info, 20info: .word $LC18 .word $LC19 .word $LC20 .word $LC19 .word $LC13 .ident "GCC: (GNU) 4.1.2"
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?