wv.s

来自「君正早期ucos系统(只有早期的才不没有打包成库),MPLAYER,文件系统,图」· S 代码 · 共 766 行

S
766
字号
.file	1 "wv.c".section .mdebug.abi32.previous.section	.text.wv_probe,"ax",@progbits.align	2.align	5.ent	wv_probe.type	wv_probe, @functionwv_probe:.frame	$sp,0,$31		# vars= 0, regs= 0/0, args= 0, gp= 0.mask	0x00000000,0.fmask	0x00000000,0.set	noreorder.set	nomacrolw	$2,8($4)slt	$2,$2,33bne	$2,$0,$L12move	$5,$0lw	$4,4($4)li	$2,119			# 0x77lbu	$3,0($4)beq	$3,$2,$L11nop$L8:$L12:j	$31move	$2,$5$L11:lbu	$3,1($4)li	$2,118			# 0x76bne	$3,$2,$L12move	$5,$0lbu	$3,2($4)li	$2,112			# 0x70bne	$3,$2,$L12noplbu	$3,3($4)li	$2,107			# 0x6bbeq	$3,$2,$L8li	$5,100			# 0x64j	$L12move	$5,$0.set	macro.set	reorder.end	wv_probe.section	.text.wv_read_close,"ax",@progbits.align	2.align	5.ent	wv_read_close.type	wv_read_close, @functionwv_read_close:.frame	$sp,0,$31		# vars= 0, regs= 0/0, args= 0, gp= 0.mask	0x00000000,0.fmask	0x00000000,0.set	noreorder.set	nomacroj	$31move	$2,$0.set	macro.set	reorder.end	wv_read_close.section	.rodata.str1.4,"aMS",@progbits,1.align	2$LC0:.ascii	"Incorrect block size %i\012\000".align	2$LC1:.ascii	"Unsupported version %03X\012\000".align	2$LC2:.ascii	"Floating point data is not supported\012\000".align	2$LC3:.ascii	"Hybrid coding mode is not supported\012\000".align	2$LC4:.ascii	"Unknown sampling rate\012\000".align	2$LC5:.ascii	"Bits per sample differ, this block: %i, header block: %i".ascii	"\012\000".align	2$LC6:.ascii	"Channels differ, this block: %i, header block: %i\012\000".align	2$LC7:.ascii	"Sampling rate differ, this block: %i, header block: %i\012".ascii	"\000".section	.text.wv_read_block_header,"ax",@progbits.align	2.align	5.ent	wv_read_block_header.type	wv_read_block_header, @functionwv_read_block_header:.frame	$sp,48,$31		# vars= 0, regs= 6/0, args= 24, gp= 0.mask	0x801f0000,-4.fmask	0x00000000,0.set	noreorder.set	nomacroaddiu	$sp,$sp,-48sw	$31,44($sp)sw	$19,36($sp)sw	$18,32($sp)sw	$20,40($sp)sw	$17,28($sp)sw	$16,24($sp)lw	$17,12($4)move	$19,$4move	$4,$5jal	url_ftellmove	$18,$5sw	$3,52($17)sw	$2,48($17)jal	get_le32move	$4,$18li	$3,1802502144			# 0x6b700000ori	$3,$3,0x7677beq	$2,$3,$L48li	$2,-1			# 0xffffffffffffffff$L18:lw	$31,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,48$L48:jal	get_le32move	$4,$18addiu	$20,$2,-24move	$7,$2li	$2,983040			# 0xf0000ori	$2,$2,0xfc01sltu	$2,$20,$2beq	$2,$0,$L49lui	$6,%hi($LC0)sw	$7,0($17)jal	get_le16move	$4,$18move	$7,$2addiu	$2,$2,-1026sltu	$2,$2,15beq	$2,$0,$L50lui	$6,%hi($LC1)jal	get_bytemove	$4,$18jal	get_bytemove	$4,$18jal	get_le32move	$4,$18sw	$2,20($17)jal	get_le32move	$4,$18addiu	$16,$17,32move	$4,$18move	$5,$16sw	$2,24($17)jal	get_bufferli	$6,12			# 0xclbu	$3,7($16)lbu	$4,6($16)lbu	$5,4($16)sll	$4,$4,16lbu	$2,5($16)sll	$3,$3,24or	$3,$3,$4or	$3,$3,$5sll	$2,$2,8or	$5,$2,$3andi	$4,$5,0x80bne	$4,$0,$L51sw	$5,4($17)andi	$2,$5,0x8bne	$2,$0,$L52srl	$3,$5,21lui	$2,%hi(wv_rates)addiu	$2,$2,%lo(wv_rates)andi	$3,$3,0x3caddu	$3,$3,$2lw	$8,0($3)andi	$4,$5,0x4li	$9,2			# 0x2li	$2,1			# 0x1li	$3,-1			# 0xffffffffffffffffbeq	$8,$3,$L53movn	$9,$2,$4andi	$2,$5,0x3lw	$3,16($17)addiu	$2,$2,1beq	$3,$0,$L54sll	$7,$2,3lw	$2,12($17)beq	$2,$0,$L55nop$L34:lw	$2,8($17)beq	$2,$0,$L56nop$L36:lw	$2,4($17)beq	$2,$0,$L38noplw	$2,16($17)$L61:bne	$7,$2,$L57move	$5,$0lw	$2,12($17)bne	$9,$2,$L58noplw	$2,8($17)bne	$8,$2,$L59nop$L38:sw	$20,0($17)lw	$31,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,48$L56:lw	$2,4($17)$L62:beq	$2,$0,$L38sw	$8,8($17)j	$L61lw	$2,16($17)$L55:lw	$2,8($17)$L63:bne	$2,$0,$L36sw	$9,12($17)j	$L62lw	$2,4($17)$L54:lw	$2,12($17)bne	$2,$0,$L34sw	$7,16($17)j	$L63lw	$2,8($17)$L59:lui	$6,%hi($LC7)move	$4,$19addiu	$6,$6,%lo($LC7)move	$7,$8jal	av_logsw	$2,16($sp)j	$L18li	$2,-1			# 0xffffffffffffffff$L49:move	$4,$19addiu	$6,$6,%lo($LC0)jal	av_logmove	$5,$0j	$L18li	$2,-1			# 0xffffffffffffffff$L50:move	$4,$19addiu	$6,$6,%lo($LC1)jal	av_logmove	$5,$0j	$L18li	$2,-1			# 0xffffffffffffffff$L57:lui	$6,%hi($LC5)move	$4,$19addiu	$6,$6,%lo($LC5)jal	av_logsw	$2,16($sp)j	$L18li	$2,-1			# 0xffffffffffffffff$L58:lui	$6,%hi($LC6)move	$4,$19addiu	$6,$6,%lo($LC6)move	$7,$9jal	av_logsw	$2,16($sp)j	$L18li	$2,-1			# 0xffffffffffffffff$L51:lui	$6,%hi($LC2)move	$4,$19addiu	$6,$6,%lo($LC2)jal	av_logmove	$5,$0j	$L18li	$2,-1			# 0xffffffffffffffff$L52:lui	$6,%hi($LC3)move	$4,$19addiu	$6,$6,%lo($LC3)jal	av_logmove	$5,$0j	$L18li	$2,-1			# 0xffffffffffffffff$L53:lui	$6,%hi($LC4)move	$4,$19addiu	$6,$6,%lo($LC4)jal	av_logmove	$5,$0j	$L18li	$2,-1			# 0xffffffffffffffff.set	macro.set	reorder.end	wv_read_block_header.section	.text.wv_read_packet,"ax",@progbits.align	2.align	5.ent	wv_read_packet.type	wv_read_packet, @functionwv_read_packet:.frame	$sp,64,$31		# vars= 0, regs= 5/0, args= 40, gp= 0.mask	0x800f0000,-8.fmask	0x00000000,0.set	noreorder.set	nomacroaddiu	$sp,$sp,-64sw	$17,44($sp)addiu	$17,$4,16sw	$19,52($sp)sw	$18,48($sp)move	$19,$4sw	$31,56($sp)sw	$16,40($sp)move	$4,$17move	$18,$5jal	url_feoflw	$16,12($19)bne	$2,$0,$L81lw	$31,56($sp)lw	$2,28($16)bne	$2,$0,$L77move	$4,$19$L67:lw	$5,0($16)move	$4,$18jal	av_new_packetaddiu	$5,$5,12bltz	$2,$L78addiu	$5,$16,32lw	$4,16($18)jal	memcpyli	$6,12			# 0xclw	$5,16($18)lw	$6,0($16)move	$4,$17jal	get_bufferaddiu	$5,$5,12move	$4,$2lw	$2,0($16)bne	$4,$2,$L79li	$5,1			# 0x1addiu	$4,$4,12sw	$0,24($18)sw	$5,28($16)sw	$4,20($18)lw	$2,24($16)move	$3,$0sw	$2,0($18)sw	$3,4($18)lw	$6,48($16)lw	$7,52($16)lw	$4,100($19)sw	$2,16($sp)sw	$3,20($sp)sw	$5,32($sp)sw	$0,24($sp)jal	av_add_index_entrysw	$0,28($sp)move	$2,$0$L70:lw	$31,56($sp)$L82:lw	$19,52($sp)lw	$18,48($sp)lw	$17,44($sp)lw	$16,40($sp)j	$31addiu	$sp,$sp,64$L77:jal	wv_read_block_headermove	$5,$17bgez	$2,$L67li	$2,-1			# 0xffffffffffffffffj	$L82lw	$31,56($sp)$L79:lw	$2,36($18)bne	$2,$0,$L80lw	$31,56($sp)$L81:lw	$19,52($sp)lw	$18,48($sp)lw	$17,44($sp)lw	$16,40($sp)li	$2,-5			# 0xfffffffffffffffbj	$31addiu	$sp,$sp,64$L78:lw	$31,56($sp)lw	$19,52($sp)lw	$18,48($sp)lw	$17,44($sp)lw	$16,40($sp)li	$2,-12			# 0xfffffffffffffff4j	$31addiu	$sp,$sp,64$L80:jal	$2move	$4,$18j	$L70li	$2,-5			# 0xfffffffffffffffb.set	macro.set	reorder.end	wv_read_packet.globl	__divdi3.section	.text.wv_read_header,"ax",@progbits.align	2.align	5.ent	wv_read_header.type	wv_read_header, @functionwv_read_header:.frame	$sp,32,$31		# vars= 0, regs= 4/0, args= 16, gp= 0.mask	0x80070000,-4.fmask	0x00000000,0.set	noreorder.set	nomacroaddiu	$sp,$sp,-32sw	$17,20($sp)addiu	$5,$4,16sw	$31,28($sp)sw	$18,24($sp)sw	$16,16($sp)move	$17,$4jal	wv_read_block_headerlw	$16,12($4)move	$4,$17bgez	$2,$L89move	$5,$0$L84:li	$4,-1			# 0xffffffffffffffff$L87:lw	$31,28($sp)lw	$18,24($sp)lw	$17,20($sp)lw	$16,16($sp)move	$2,$4j	$31addiu	$sp,$sp,32$L89:jal	av_new_streamsw	$0,28($16)move	$18,$2move	$4,$2li	$5,64			# 0x40beq	$2,$0,$L84li	$6,1			# 0x1lw	$3,8($2)lw	$7,12($16)li	$2,1			# 0x1sw	$7,68($3)lw	$8,8($16)sw	$2,224($3)li	$2,65536			# 0x10000sw	$8,64($3)ori	$2,$2,0x501csw	$2,228($3)lw	$2,16($16)sw	$2,392($3)jal	av_set_pts_infolw	$7,8($16)lw	$3,20($16)lw	$8,8($18)li	$4,983040			# 0xf0000ori	$4,$4,0x4240multu	$3,$4lw	$2,64($8)mflo	$4move	$6,$2sra	$7,$2,31move	$3,$0move	$2,$0mfhi	$5sw	$2,3824($17)jal	__divdi3sw	$3,3828($17)move	$4,$0sw	$2,3832($17)j	$L87sw	$3,3836($17).set	macro.set	reorder.end	wv_read_header.section	.text.wv_read_seek,"ax",@progbits.align	2.align	5.ent	wv_read_seek.type	wv_read_seek, @functionwv_read_seek:.frame	$sp,120,$31		# vars= 56, regs= 10/0, args= 24, gp= 0.mask	0xc0ff0000,-4.fmask	0x00000000,0.set	noreorder.set	nomacroaddiu	$sp,$sp,-120sll	$5,$5,2sw	$21,100($sp)sw	$20,96($sp)sw	$18,88($sp)sw	$31,116($sp)sw	$fp,112($sp)sw	$23,108($sp)sw	$22,104($sp)sw	$19,92($sp)sw	$17,84($sp)sw	$16,80($sp)addu	$5,$5,$4lw	$16,100($5)lw	$2,136($sp)move	$18,$4sw	$2,16($sp)move	$4,$16move	$20,$6move	$21,$7jal	av_index_search_timestamplw	$17,12($18)bltz	$2,$L91move	$3,$2lw	$4,144($16)sll	$3,$3,3sll	$2,$2,5subu	$2,$2,$3addu	$2,$2,$4lw	$6,0($2)lw	$7,4($2)li	$3,1			# 0x1sw	$3,28($17)addiu	$4,$18,16jal	url_fseeksw	$0,16($sp)move	$2,$0$L93:lw	$31,116($sp)$L118:lw	$fp,112($sp)lw	$23,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,120$L91:bltz	$21,$L93li	$2,-1			# 0xfffffffffffffffflw	$3,3836($18)slt	$2,$21,$3bne	$2,$0,$L116addiu	$fp,$18,16bne	$3,$21,$L93li	$2,-1			# 0xfffffffffffffffflw	$2,3832($18)sltu	$2,$20,$2beq	$2,$0,$L93li	$2,-1			# 0xffffffffffffffffaddiu	$fp,$18,16$L116:jal	url_ftellmove	$4,$fpmove	$22,$2move	$23,$3addiu	$19,$sp,24$L113:move	$4,$18$L117:jal	av_read_framemove	$5,$19bltz	$2,$L108move	$4,$19lw	$2,60($sp)lw	$16,24($sp)beq	$2,$0,$L102lw	$17,28($sp)jal	$2nop$L102:slt	$2,$17,$21bne	$2,$0,$L113sltu	$3,$16,$20bne	$17,$21,$L93move	$2,$0bne	$3,$0,$L117move	$4,$18j	$L118lw	$31,116($sp)$L108:move	$4,$fpmove	$6,$22move	$7,$23jal	url_fseeksw	$0,16($sp)j	$L93li	$2,-1			# 0xffffffffffffffff.set	macro.set	reorder.end	wv_read_seek.globl	wv_demuxer.section	.rodata.str1.4.align	2$LC8:.ascii	"wv\000".align	2$LC9:.ascii	"WavPack\000".data.align	2.type	wv_demuxer, @object.size	wv_demuxer, 64wv_demuxer:.word	$LC8.word	$LC9.word	56.word	wv_probe.word	wv_read_header.word	wv_read_packet.word	wv_read_close.word	wv_read_seek.space	32.rdata.align	2.type	wv_rates, @object.size	wv_rates, 64wv_rates:.word	6000.word	8000.word	9600.word	11025.word	12000.word	16000.word	22050.word	24000.word	32000.word	44100.word	48000.word	64000.word	88200.word	96000.word	192000.word	-1.ident	"GCC: (GNU) 4.1.2"

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?