mmf.s

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

S
1,031
字号
.file	1 "mmf.c".section .mdebug.abi32.previous.section	.text.mmf_probe,"ax",@progbits.align	2.align	5.ent	mmf_probe.type	mmf_probe, @functionmmf_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,$L14nop$L2:j	$31move	$2,$0$L14:lbu	$5,1($4)bne	$5,$3,$L2noplbu	$2,2($4)bne	$2,$5,$L2noplbu	$3,3($4)li	$2,68			# 0x44bne	$3,$2,$L2noplbu	$3,8($4)li	$2,67			# 0x43bne	$3,$2,$L2noplbu	$3,9($4)li	$2,78			# 0x4ebne	$3,$2,$L2noplbu	$3,10($4)li	$2,84			# 0x54bne	$3,$2,$L2noplbu	$3,11($4)li	$2,73			# 0x49bne	$3,$2,$L2nopj	$31li	$2,100			# 0x64.set	macro.set	reorder.end	mmf_probe.section	.text.mmf_read_close,"ax",@progbits.align	2.align	5.ent	mmf_read_close.type	mmf_read_close, @functionmmf_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	mmf_read_close.section	.text.mmf_write_packet,"ax",@progbits.align	2.align	5.ent	mmf_write_packet.type	mmf_write_packet, @functionmmf_write_packet:.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	$6,20($5)lw	$5,16($5)jal	put_bufferaddiu	$4,$4,16lw	$31,16($sp)move	$2,$0j	$31addiu	$sp,$sp,24.set	macro.set	reorder.end	mmf_write_packet.section	.text.mmf_read_seek,"ax",@progbits.align	2.align	5.ent	mmf_read_seek.type	mmf_read_seek, @functionmmf_read_seek:.frame	$sp,0,$31		# vars= 0, regs= 0/0, args= 0, gp= 0.mask	0x00000000,0.fmask	0x00000000,0.set	noreorder.set	nomacroj	pcm_read_seeknop.set	macro.set	reorder.end	mmf_read_seek.section	.text.mmf_read_packet,"ax",@progbits.align	2.align	5.ent	mmf_read_packet.type	mmf_read_packet, @functionmmf_read_packet:.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	$16,16($sp)addiu	$16,$4,16sw	$18,24($sp)move	$2,$4sw	$31,28($sp)sw	$17,20($sp)move	$4,$16move	$18,$5jal	url_feoflw	$17,12($2)bne	$2,$0,$L22noplw	$5,28($17)blez	$5,$L34lw	$4,24($17)li	$5,4096			# 0x1000$L27:$L39:jal	av_new_packetmove	$4,$18beq	$2,$0,$L35nop$L22:li	$16,-5			# 0xfffffffffffffffb$L37:move	$2,$16lw	$31,28($sp)lw	$18,24($sp)lw	$17,20($sp)lw	$16,16($sp)j	$31addiu	$sp,$sp,32$L35:lw	$5,16($18)lw	$6,20($18)move	$4,$16jal	get_buffersw	$0,24($18)bltz	$2,$L36move	$16,$2$L29:lw	$6,24($17)$L38:lw	$7,28($17)subu	$2,$6,$16sra	$5,$16,31sltu	$8,$6,$2subu	$3,$7,$5subu	$3,$3,$8sw	$2,24($17)sw	$3,28($17)sw	$16,20($18)move	$2,$16lw	$31,28($sp)lw	$18,24($sp)lw	$17,20($sp)lw	$16,16($sp)j	$31addiu	$sp,$sp,32$L34:bne	$5,$0,$L24sltu	$2,$4,4096beq	$2,$0,$L39li	$5,4096			# 0x1000$L24:bne	$4,$0,$L27move	$5,$4j	$L37li	$16,-5			# 0xfffffffffffffffb$L36:lw	$2,36($18)beq	$2,$0,$L29nopjal	$2move	$4,$18j	$L38lw	$6,24($17).set	macro.set	reorder.end	mmf_read_packet.section	.rodata.str1.4,"aMS",@progbits,1.align	2$LC0:.ascii	"MIDI like format found, unsupported\012\000".align	2$LC1:.ascii	"Unsupported SMAF chunk %08x\012\000".align	2$LC2:.ascii	"Invalid sample rate\012\000".align	2$LC3:.ascii	"Unexpected SMAF chunk %08x\012\000".section	.text.mmf_read_header,"ax",@progbits.align	2.align	5.ent	mmf_read_header.type	mmf_read_header, @functionmmf_read_header:.frame	$sp,64,$31		# vars= 0, regs= 9/0, args= 24, gp= 0.mask	0x80ff0000,-8.fmask	0x00000000,0.set	noreorder.set	nomacroaddiu	$sp,$sp,-64sw	$17,28($sp)addiu	$17,$4,16sw	$21,44($sp)sw	$31,56($sp)sw	$23,52($sp)sw	$22,48($sp)sw	$20,40($sp)sw	$19,36($sp)sw	$18,32($sp)sw	$16,24($sp)move	$21,$4move	$4,$17jal	get_le32lw	$23,12($21)li	$3,1145896960			# 0x444d0000ori	$3,$3,0x4d4dbeq	$2,$3,$L66li	$2,-1			# 0xffffffffffffffff$L43:lw	$31,56($sp)lw	$23,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,64$L66:jal	get_be32move	$4,$17li	$3,1230241792			# 0x49540000li	$2,1094975488			# 0x41440000ori	$19,$3,0x4e43ori	$20,$2,0x504fj	$L44li	$18,1			# 0x1$L45:move	$6,$2$L70:move	$7,$0jal	url_fseeksw	$18,16($sp)$L44:jal	get_le32move	$4,$17move	$16,$2jal	get_be32move	$4,$17beq	$16,$19,$L45move	$4,$17beq	$16,$20,$L70move	$6,$2li	$2,16711680			# 0xff0000li	$5,5373952			# 0x520000ori	$2,$2,0xffffand	$4,$16,$2ori	$3,$5,0x544dbeq	$4,$3,$L67lui	$6,%hi($LC0)ori	$2,$5,0x5441bne	$4,$2,$L68lui	$6,%hi($LC1)jal	get_bytemove	$4,$17jal	get_bytemove	$4,$17jal	get_bytemove	$4,$17andi	$3,$2,0xfsltu	$2,$3,5beq	$2,$0,$L52sll	$3,$3,2lui	$2,%hi(mmf_rates)addiu	$2,$2,%lo(mmf_rates)addu	$3,$3,$2lw	$22,0($3)bltz	$22,$L71lui	$6,%hi($LC2)jal	get_bytemove	$4,$17jal	get_bytemove	$4,$17jal	get_bytemove	$4,$17li	$3,1903362048			# 0x71730000li	$2,1232076800			# 0x49700000ori	$19,$3,0x7441ori	$20,$2,0x7341j	$L55li	$18,1			# 0x1$L56:jal	url_fseeksw	$18,16($sp)$L55:jal	get_le32move	$4,$17move	$4,$17jal	get_be32move	$16,$2move	$9,$0move	$4,$17move	$8,$2move	$6,$2beq	$16,$19,$L56move	$7,$9beq	$16,$20,$L56li	$3,16711680			# 0xff0000ori	$3,$3,0xffffli	$2,6356992			# 0x610000and	$3,$16,$3ori	$2,$2,0x7741beq	$3,$2,$L59move	$4,$21lui	$6,%hi($LC3)addiu	$6,$6,%lo($LC3)move	$7,$16jal	av_logmove	$5,$0j	$L43li	$2,-1			# 0xffffffffffffffff$L52:lui	$6,%hi($LC2)$L71:move	$4,$21addiu	$6,$6,%lo($LC2)jal	av_logmove	$5,$0j	$L43li	$2,-1			# 0xffffffffffffffff$L59:sw	$8,24($23)sw	$9,28($23)jal	av_new_streammove	$5,$0beq	$2,$0,$L69move	$6,$2lw	$4,8($2)li	$2,65536			# 0x10000ori	$2,$2,0x100eli	$5,1			# 0x1sw	$2,228($4)sll	$3,$22,2li	$2,4			# 0x4sw	$5,68($4)sw	$2,392($4)sw	$5,224($4)sw	$3,4($4)sw	$22,64($4)move	$7,$22move	$4,$6li	$5,64			# 0x40jal	av_set_pts_infoli	$6,1			# 0x1j	$L43move	$2,$0$L68:move	$4,$21addiu	$6,$6,%lo($LC1)move	$7,$16jal	av_logmove	$5,$0j	$L43li	$2,-1			# 0xffffffffffffffff$L69:j	$L43li	$2,-12			# 0xfffffffffffffff4$L67:move	$4,$21addiu	$6,$6,%lo($LC0)jal	av_logmove	$5,$0j	$L43li	$2,-1			# 0xffffffffffffffff.set	macro.set	reorder.end	mmf_read_header.section	.rodata.str1.4.align	2$LC4:.ascii	"Unsupported sample rate %d\012\000".align	2$LC5:.ascii	"MMMD\000".align	2$LC6:.ascii	"CNTI\000".align	2$LC7:.ascii	"VN:libavcodec,\000".rdata.align	2$LC8:.ascii	"ATR\000\000".section	.rodata.str1.4.align	2$LC9:.ascii	"Atsq\000".rdata.align	2$LC10:.ascii	"\000\000\000\000\000\000\000\000\000\000\000\000\000\000".ascii	"\000\000\000".section	.rodata.str1.4.align	2$LC11:.ascii	"Awa\001\000".section	.text.mmf_write_header,"ax",@progbits.align	2.align	5.ent	mmf_write_header.type	mmf_write_header, @functionmmf_write_header:.frame	$sp,64,$31		# vars= 0, regs= 9/0, args= 24, gp= 0.mask	0x80ff0000,-8.fmask	0x00000000,0.set	noreorder.set	nomacroaddiu	$sp,$sp,-64sw	$17,28($sp)sw	$31,56($sp)sw	$23,52($sp)sw	$22,48($sp)sw	$21,44($sp)sw	$20,40($sp)sw	$19,36($sp)sw	$18,32($sp)sw	$16,24($sp)lw	$2,100($4)move	$17,$4lw	$3,8($2)li	$2,4000			# 0xfa0lw	$7,64($3)beq	$7,$2,$L86lw	$22,12($4)li	$2,8000			# 0x1f40beq	$7,$2,$L87li	$2,11025			# 0x2b11beq	$7,$2,$L88li	$2,22050			# 0x5622beq	$7,$2,$L89li	$2,44100			# 0xac44beq	$7,$2,$L75li	$23,4			# 0x4lui	$6,%hi($LC4)addiu	$6,$6,%lo($LC4)jal	av_logmove	$5,$0lw	$31,56($sp)lw	$23,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,64$L86:move	$23,$0$L75:addiu	$16,$17,16lui	$5,%hi($LC5)move	$4,$16jal	put_tagaddiu	$5,$5,%lo($LC5)move	$4,$16jal	put_be32move	$5,$0lui	$5,%hi($LC6)move	$4,$16jal	start_tagaddiu	$5,$5,%lo($LC6)move	$4,$16move	$5,$0move	$18,$2jal	put_bytemove	$19,$3move	$4,$16jal	put_bytemove	$5,$0move	$4,$16jal	put_bytemove	$5,$0move	$4,$16jal	put_bytemove	$5,$0move	$4,$16jal	put_bytemove	$5,$0lui	$5,%hi($LC7)addiu	$5,$5,%lo($LC7)jal	put_tagmove	$4,$16jal	url_ftellmove	$4,$16addiu	$6,$18,-4move	$20,$2addiu	$7,$19,-1sltu	$2,$6,$18addu	$7,$2,$7move	$4,$16move	$21,$3jal	url_fseeksw	$0,16($sp)subu	$5,$20,$18jal	put_be32move	$4,$16move	$7,$21move	$6,$20move	$4,$16jal	url_fseeksw	$0,16($sp)lui	$5,%hi($LC8)li	$6,4			# 0x4move	$4,$16jal	put_bufferaddiu	$5,$5,%lo($LC8)move	$4,$16jal	put_be32move	$5,$0jal	url_ftellmove	$4,$16sw	$2,0($22)sw	$3,4($22)move	$4,$16jal	put_bytemove	$5,$0move	$4,$16jal	put_bytemove	$5,$0move	$4,$16jal	put_byteori	$5,$23,0x10move	$4,$16jal	put_bytemove	$5,$0move	$4,$16jal	put_byteli	$5,2			# 0x2move	$4,$16jal	put_byteli	$5,2			# 0x2lui	$5,%hi($LC9)move	$4,$16jal	put_tagaddiu	$5,$5,%lo($LC9)move	$4,$16jal	put_be32li	$5,16			# 0x10jal	url_ftellmove	$4,$16lui	$5,%hi($LC10)sw	$2,8($22)sw	$3,12($22)li	$6,16			# 0x10move	$4,$16jal	put_bufferaddiu	$5,$5,%lo($LC10)lui	$5,%hi($LC11)move	$4,$16jal	start_tagaddiu	$5,$5,%lo($LC11)lw	$4,100($17)sw	$2,16($22)lw	$2,8($4)sw	$3,20($22)lw	$7,64($2)li	$5,64			# 0x40jal	av_set_pts_infoli	$6,1			# 0x1jal	put_flush_packetmove	$4,$16lw	$31,56($sp)lw	$23,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,64$L87:j	$L75li	$23,1			# 0x1$L88:j	$L75li	$23,2			# 0x2$L89:j	$L75li	$23,3			# 0x3.set	macro.set	reorder.end	mmf_write_header.globl	__divdi3.rdata.align	2$LC12:.ascii	"\377\000\000".align	2$LC13:.ascii	"\000\000\000\000\000".section	.text.mmf_write_trailer,"ax",@progbits.align	2.align	5.ent	mmf_write_trailer.type	mmf_write_trailer, @functionmmf_write_trailer:.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	$22,48($sp)sw	$20,40($sp)sw	$31,52($sp)sw	$21,44($sp)sw	$19,36($sp)sw	$18,32($sp)sw	$17,28($sp)sw	$16,24($sp)addiu	$20,$4,16lw	$2,52($20)move	$22,$4beq	$2,$0,$L97lw	$21,12($4)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$L97:lw	$16,16($21)lw	$17,20($21)jal	url_ftellmove	$4,$20addiu	$6,$16,-4move	$18,$2addiu	$7,$17,-1sltu	$2,$6,$16addu	$7,$2,$7move	$4,$20move	$19,$3jal	url_fseeksw	$0,16($sp)subu	$5,$18,$16jal	put_be32move	$4,$20move	$6,$18move	$7,$19move	$4,$20jal	url_fseeksw	$0,16($sp)lw	$16,0($21)lw	$17,4($21)jal	url_ftellmove	$4,$20addiu	$6,$16,-4move	$18,$2addiu	$7,$17,-1sltu	$2,$6,$16addu	$7,$2,$7move	$4,$20move	$19,$3jal	url_fseeksw	$0,16($sp)subu	$5,$18,$16jal	put_be32move	$4,$20move	$6,$18move	$7,$19move	$4,$20jal	url_fseeksw	$0,16($sp)jal	url_ftellmove	$4,$20move	$16,$2li	$6,4			# 0x4move	$7,$0move	$4,$20move	$17,$3jal	url_fseeksw	$0,16($sp)addiu	$5,$16,-8jal	put_be32move	$4,$20move	$6,$16move	$7,$17move	$4,$20jal	url_fseeksw	$0,16($sp)jal	url_ftellmove	$4,$20move	$18,$2lw	$2,16($21)move	$19,$3lw	$3,20($21)lw	$6,8($21)lw	$7,12($21)subu	$16,$18,$2sltu	$5,$18,$16subu	$17,$19,$3move	$4,$20subu	$17,$17,$5jal	url_fseeksw	$0,16($sp)move	$4,$20jal	put_bytemove	$5,$0move	$4,$20jal	put_byteli	$5,1			# 0x1li	$2,500			# 0x1f4multu	$16,$2lw	$6,100($22)mfhi	$5lw	$3,8($6)mflo	$4mul	$6,$2,$17lw	$8,64($3)addu	$5,$6,$5sra	$7,$8,31jal	__divdi3move	$6,$8move	$16,$2move	$3,$2slt	$2,$2,128beq	$2,$0,$L93addiu	$17,$3,-128move	$4,$20jal	put_bytemove	$5,$16move	$4,$20jal	put_bytemove	$5,$16lui	$5,%hi($LC12)$L98:move	$4,$20addiu	$5,$5,%lo($LC12)jal	put_bufferli	$6,2			# 0x2lui	$5,%hi($LC13)addiu	$5,$5,%lo($LC13)move	$4,$20jal	put_bufferli	$6,4			# 0x4move	$6,$18move	$7,$19move	$4,$20jal	url_fseeksw	$0,16($sp)jal	put_flush_packetmove	$4,$20lw	$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$L93:sra	$16,$17,7ori	$16,$16,0x80andi	$17,$17,0x7fmove	$4,$20jal	put_bytemove	$5,$16move	$4,$20jal	put_bytemove	$5,$17move	$4,$20jal	put_bytemove	$5,$16move	$4,$20jal	put_bytemove	$5,$17j	$L98lui	$5,%hi($LC12).set	macro.set	reorder.end	mmf_write_trailer.globl	mmf_demuxer.section	.rodata.str1.4.align	2$LC14:.ascii	"mmf\000".align	2$LC15:.ascii	"mmf format\000".data.align	2.type	mmf_demuxer, @object.size	mmf_demuxer, 64mmf_demuxer:.word	$LC14.word	$LC15.word	32.word	mmf_probe.word	mmf_read_header.word	mmf_read_packet.word	mmf_read_close.word	mmf_read_seek.space	32.globl	mmf_muxer.section	.rodata.str1.4.align	2$LC16:.ascii	"application/vnd.smaf\000".data.align	2.type	mmf_muxer, @object.size	mmf_muxer, 64mmf_muxer:.word	$LC14.word	$LC15.word	$LC16.word	$LC14.word	32.word	69646.word	0.word	mmf_write_header.word	mmf_write_packet.word	mmf_write_trailer.space	24.rdata.align	2.type	mmf_rates, @object.size	mmf_rates, 20mmf_rates:.word	4000.word	8000.word	11025.word	22050.word	44100.ident	"GCC: (GNU) 4.1.2"

⌨️ 快捷键说明

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