mpc.s
来自「君正早期ucos系统(只有早期的才不没有打包成库),MPLAYER,文件系统,图」· S 代码 · 共 793 行
S
793 行
.file 1 "mpc.c".section .mdebug.abi32.previous.section .text.mpc_probe,"ax",@progbits.align 2.align 5.ent mpc_probe.type mpc_probe, @functionmpc_probe:.frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0.mask 0x00000000,0.fmask 0x00000000,0.set noreorder.set nomacrolw $4,4($4)li $2,77 # 0x4dlbu $3,0($4)beq $3,$2,$L15li $2,73 # 0x49beq $3,$2,$L16nop$L4:j $31move $2,$0$L16:lbu $3,1($4)li $2,68 # 0x44bne $3,$2,$L4noplbu $3,2($4)li $2,51 # 0x33bne $3,$2,$L4nopj $31li $2,50 # 0x32$L15:lbu $3,1($4)li $2,80 # 0x50bne $3,$2,$L4noplbu $3,2($4)li $2,43 # 0x2bbne $3,$2,$L4noplbu $3,3($4)li $2,23 # 0x17beq $3,$2,$L7nopli $2,7 # 0x7bne $3,$2,$L4nop$L7:j $31li $2,100 # 0x64.set macro.set reorder.end mpc_probe.section .text.mpc_read_seek,"ax",@progbits.align 2.align 5.ent mpc_read_seek.type mpc_read_seek, @functionmpc_read_seek:.frame $sp,112,$31 # vars= 56, regs= 8/0, args= 24, gp= 0.mask 0x807f0000,-4.fmask 0x00000000,0.set noreorder.set nomacroaddiu $sp,$sp,-112sw $16,80($sp)sll $5,$5,2addiu $16,$6,-32sw $22,104($sp)sw $19,92($sp)sw $18,88($sp)sw $17,84($sp)sw $31,108($sp)sw $21,100($sp)sw $20,96($sp)addu $5,$5,$4sltu $2,$16,$6addiu $17,$7,-1lw $20,100($5)addu $17,$2,$17lw $2,128($sp)move $22,$4sw $2,16($sp)move $18,$6move $19,$7move $4,$20move $6,$16move $7,$17jal av_index_search_timestamplw $21,12($22)bltz $2,$L18move $3,$2sll $3,$3,3lw $4,144($20)sll $2,$2,5subu $2,$2,$3addu $2,$2,$4lw $3,0($2)move $2,$0sw $3,4($21)$L20:lw $31,108($sp)lw $22,104($sp)lw $21,100($sp)lw $20,96($sp)lw $19,92($sp)lw $18,88($sp)lw $17,84($sp)lw $16,80($sp)j $31addiu $sp,$sp,112$L18:bltz $19,$L21move $5,$0slt $2,$19,$5bne $2,$0,$L25lw $4,12($21)beq $19,$0,$L52nop$L21:j $L20li $2,-1 # 0xffffffffffffffff$L52:sltu $2,$18,$4beq $2,$0,$L20li $2,-1 # 0xffffffffffffffff$L25:lw $2,24($21)beq $2,$0,$L36lw $19,4($21)addiu $2,$2,-1slt $3,$0,$17sw $2,4($21)$L46:beq $3,$0,$L51addiu $18,$sp,24$L55:move $4,$22jal av_read_framemove $5,$18bltz $2,$L37move $4,$18$L53:lw $2,60($sp)beq $2,$0,$L55addiu $18,$sp,24jal $2addiu $18,$sp,24move $4,$22jal av_read_framemove $5,$18bgez $2,$L53move $4,$18$L37:li $2,-1 # 0xffffffffffffffffj $L20sw $19,4($21)$L54:beq $2,$0,$L20move $2,$0jal av_read_framenopbltz $2,$L37move $4,$18lw $2,60($sp)beq $2,$0,$L51nopjal $2nop$L51:lw $2,4($21)addiu $18,$sp,24move $4,$22move $5,$18beq $17,$0,$L54sltu $2,$2,$16j $L20move $2,$0$L36:j $L46slt $3,$0,$17.set macro.set reorder.end mpc_read_seek.section .text.mpc_read_close,"ax",@progbits.align 2.align 5.ent mpc_read_close.type mpc_read_close, @functionmpc_read_close:.frame $sp,24,$31 # vars= 0, regs= 1/0, args= 16, gp= 0.mask 0x80000000,-8.fmask 0x00000000,0.set noreorder.set nomacroaddiu $sp,$sp,-24sw $31,16($sp)lw $4,12($4)jal av_freepaddiu $4,$4,16lw $31,16($sp)move $2,$0j $31addiu $sp,$sp,24.set macro.set reorder.end mpc_read_close.section .rodata.str1.4,"aMS",@progbits,1.align 2$LC0:.ascii "Not a Musepack file\012\000".align 2$LC1:.ascii "Skipping %d(%X) bytes of ID3 data\012\000".align 2$LC2:.ascii "Can demux Musepack SV7, got version %02X\012\000".align 2$LC3:.ascii "Too many frames, seeking is not possible\012\000".globl __divdi3.section .text.mpc_read_header,"ax",@progbits.align 2.align 5.ent mpc_read_header.type mpc_read_header, @functionmpc_read_header:.frame $sp,56,$31 # vars= 0, regs= 8/0, args= 24, gp= 0.mask 0x807f0000,-4.fmask 0x00000000,0.set noreorder.set nomacroaddiu $sp,$sp,-56sw $19,36($sp)addiu $19,$4,16sw $22,48($sp)sw $21,44($sp)sw $31,52($sp)sw $20,40($sp)sw $18,32($sp)sw $17,28($sp)sw $16,24($sp)move $21,$4move $4,$19jal get_le24lw $20,12($21)move $3,$2li $2,2818048 # 0x2b0000ori $22,$2,0x504dbeq $3,$22,$L59li $2,3342336 # 0x330000ori $2,$2,0x4449bne $3,$2,$L74li $6,3 # 0x3move $7,$0jal url_fskipmove $4,$19jal get_bytemove $4,$19move $4,$19jal get_bytesll $18,$2,21sll $2,$2,14move $4,$19jal get_byteor $18,$18,$2move $4,$19jal get_bytemove $16,$2or $18,$18,$2sll $16,$16,7or $16,$16,$18lui $6,%hi($LC1)addiu $6,$6,%lo($LC1)move $4,$21li $5,2 # 0x2move $7,$16sra $17,$16,31jal av_logsw $16,16($sp)move $4,$19move $6,$16jal url_fskipmove $7,$17jal get_le24move $4,$19bne $2,$22,$L78lui $6,%hi($LC0)$L59:jal get_bytemove $4,$19move $7,$2sw $2,0($20)li $2,7 # 0x7beq $7,$2,$L65li $2,23 # 0x17bne $7,$2,$L75lui $6,%hi($LC2)$L65:jal get_le32move $4,$19move $3,$0srl $4,$2,28sll $7,$3,4move $5,$2or $7,$4,$7sll $6,$2,4blez $7,$L76sw $5,12($20)lui $6,%hi($LC3)$L79:move $4,$21addiu $6,$6,%lo($LC3)jal av_logmove $5,$0li $2,-1 # 0xffffffffffffffff$L63:lw $31,52($sp)lw $22,48($sp)lw $21,44($sp)lw $20,40($sp)lw $19,36($sp)lw $18,32($sp)lw $17,28($sp)lw $16,24($sp)j $31addiu $sp,$sp,56$L76:bne $7,$0,$L68sltu $2,$6,-1beq $2,$0,$L79lui $6,%hi($LC3)$L68:jal av_mallocsll $4,$5,4sw $2,16($20)li $3,8 # 0x8li $2,-1 # 0xffffffffffffffffsw $2,8($20)sw $3,20($20)sw $0,4($20)sw $0,24($20)move $4,$21jal av_new_streammove $5,$0beq $2,$0,$L77move $18,$2lw $16,8($2)li $3,1 # 0x1li $2,65536 # 0x10000li $4,16 # 0x10sw $3,224($16)ori $2,$2,0x501fli $3,2 # 0x2sw $3,68($16)sw $4,28($16)sw $4,392($16)sw $2,228($16)jal av_malloczli $4,24 # 0x18lw $3,8($18)sw $2,24($16)lw $5,24($3)move $4,$19jal get_bufferli $6,16 # 0x10lw $6,8($18)move $4,$18lw $2,24($6)li $5,32 # 0x20lbu $3,2($2)lui $2,%hi(mpc_rate)andi $3,$3,0x3addiu $2,$2,%lo(mpc_rate)sll $3,$3,2addu $3,$3,$2lw $7,0($3)sw $7,64($6)jal av_set_pts_infoli $6,1152 # 0x480lw $3,12($20)lw $8,8($18)li $4,1151991808 # 0x44aa0000ori $4,$4,0x2000multu $3,$4lw $2,64($8)move $3,$0move $6,$2sra $7,$2,31mflo $4move $2,$0mfhi $5sw $2,3824($21)jal __divdi3sw $3,3828($21)sw $2,3832($21)sw $3,3836($21)lw $31,52($sp)lw $22,48($sp)lw $21,44($sp)lw $20,40($sp)lw $19,36($sp)lw $18,32($sp)lw $17,28($sp)lw $16,24($sp)move $2,$0j $31addiu $sp,$sp,56$L74:lui $6,%hi($LC0)$L78:move $4,$21addiu $6,$6,%lo($LC0)jal av_logmove $5,$0lw $31,52($sp)lw $22,48($sp)lw $21,44($sp)lw $20,40($sp)lw $19,36($sp)lw $18,32($sp)lw $17,28($sp)lw $16,24($sp)li $2,-1 # 0xffffffffffffffffj $31addiu $sp,$sp,56$L75:move $4,$21addiu $6,$6,%lo($LC2)jal av_logmove $5,$0j $L63li $2,-1 # 0xffffffffffffffff$L77:j $L63li $2,-12 # 0xfffffffffffffff4.set macro.set reorder.end mpc_read_header.section .text.mpc_read_packet,"ax",@progbits.align 2.align 5.ent mpc_read_packet.type mpc_read_packet, @functionmpc_read_packet:.frame $sp,88,$31 # vars= 8, regs= 10/0, args= 40, gp= 0.mask 0xc0ff0000,-4.fmask 0x00000000,0.set noreorder.set nomacroaddiu $sp,$sp,-88sw $21,68($sp)sw $20,64($sp)sw $31,84($sp)sw $fp,80($sp)sw $23,76($sp)sw $22,72($sp)sw $19,60($sp)sw $18,56($sp)sw $17,52($sp)sw $16,48($sp)lw $16,12($4)move $21,$5lw $17,4($16)lw $2,12($16)move $20,$4sltu $2,$17,$2bne $2,$0,$L81move $5,$17li $3,-1 # 0xffffffffffffffff$L83:lw $31,84($sp)lw $fp,80($sp)lw $23,76($sp)lw $22,72($sp)lw $21,68($sp)lw $20,64($sp)lw $19,60($sp)lw $18,56($sp)lw $17,52($sp)lw $16,48($sp)move $2,$3j $31addiu $sp,$sp,88$L81:lw $2,8($16)addiu $2,$2,1beq $17,$2,$L99sll $2,$17,4lw $3,16($16)addu $2,$2,$3lw $6,0($2)lw $7,4($2)addiu $22,$4,16move $4,$22jal url_fseeksw $0,16($sp)lw $5,4($16)lw $4,16($16)sll $2,$5,4addu $2,$2,$4lw $3,12($2)sw $3,20($16)move $23,$3$L84:addiu $2,$5,1sw $5,8($16)move $4,$22jal url_ftellsw $2,4($16)move $4,$22sw $3,44($sp)jal get_le32sw $2,40($sp)slt $3,$23,13move $18,$2beq $3,$0,$L86move $19,$0li $4,12 # 0xcsubu $4,$4,$23nor $2,$0,$4sll $5,$19,1sll $5,$5,$2srl $2,$18,$4andi $6,$4,0x20sra $3,$19,$4or $2,$5,$2li $4,983040 # 0xf0000movn $2,$3,$6ori $4,$4,0xffffand $2,$2,$4$L88:addiu $fp,$23,20lw $6,40($sp)lw $7,44($sp)addu $19,$2,$fpmove $4,$22jal url_fseeksw $0,16($sp)addiu $4,$19,31li $2,-32 # 0xffffffffffffffe0lw $3,24($16)and $4,$4,$2beq $17,$3,$L100sra $18,$4,3$L89:andi $2,$19,0x1fsw $2,20($16)move $4,$21jal av_new_packetmove $5,$18bltz $2,$L91sra $6,$17,31lw $3,16($21)sb $fp,0($3)lw $2,4($16)lw $3,12($16)lw $4,16($21)sltu $2,$3,$2sb $2,1($4)lw $5,16($21)sw $6,4($21)sw $17,0($21)sw $0,24($21)addiu $5,$5,4move $4,$22jal get_buffermove $6,$18move $17,$2lw $2,20($16)bne $2,$0,$L101move $4,$22slt $2,$17,$18$L103:bne $2,$0,$L102addiu $2,$17,4move $3,$0j $L83sw $2,20($21)$L99:lw $23,20($16)j $L84addiu $22,$4,16$L86:jal get_le32move $4,$22move $3,$0li $6,44 # 0x2csubu $6,$6,$23or $5,$18,$3move $4,$0or $4,$4,$2sll $3,$5,1nor $2,$0,$6sll $3,$3,$2srl $4,$4,$6andi $7,$6,0x20or $4,$3,$4sra $5,$5,$6li $2,983040 # 0xf0000movn $4,$5,$7ori $2,$2,0xffffj $L88and $2,$4,$2$L91:j $L83li $3,-5 # 0xfffffffffffffffb$L101:li $6,-4 # 0xfffffffffffffffcli $7,-1 # 0xffffffffffffffffli $2,1 # 0x1jal url_fseeksw $2,16($sp)j $L103slt $2,$17,$18$L100:lw $6,16($16)sll $5,$17,4addu $5,$5,$6lw $7,44($sp)lw $6,40($sp)lw $4,100($20)sra $3,$17,31sw $6,0($5)sw $7,4($5)sw $23,12($5)sw $18,8($5)move $7,$3li $5,1 # 0x1move $6,$17sw $3,20($sp)sw $5,32($sp)sw $17,16($sp)sw $18,24($sp)jal av_add_index_entrysw $0,28($sp)lw $3,24($16)addiu $3,$3,1j $L89sw $3,24($16)$L102:lw $2,36($21)beq $2,$0,$L91nopjal $2move $4,$21j $L83li $3,-5 # 0xfffffffffffffffb.set macro.set reorder.end mpc_read_packet.globl mpc_demuxer.section .rodata.str1.4.align 2$LC4:.ascii "mpc\000".align 2$LC5:.ascii "musepack\000".data.align 2.type mpc_demuxer, @object.size mpc_demuxer, 64mpc_demuxer:.word $LC4.word $LC5.word 28.word mpc_probe.word mpc_read_header.word mpc_read_packet.word mpc_read_close.word mpc_read_seek.space 8.word $LC4.space 20.rdata.align 2.type mpc_rate, @object.size mpc_rate, 16mpc_rate:.word 44100.word 48000.word 37800.word 32000.ident "GCC: (GNU) 4.1.2"
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?