ad_msadpcm.mid

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

MID
585
字号
	.file	1 "ad_msadpcm.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		lw	$5,156($4)	lw	$7,4($4)	lbu	$2,13($5)	lbu	$3,12($5)	sll	$2,$2,8	or	$2,$2,$3	sll	$2,$2,2	sw	$2,64($4)	lbu	$3,13($5)	lbu	$6,12($5)	sll	$3,$3,8	or	$3,$3,$6	sll	$2,$3,1	addiu	$2,$2,-12	sw	$2,88($7)	li	$2,1			# 0x1	sw	$3,84($7)	j	$31	sw	$3,48($4)	.set	macro	.set	reorder	.end	preinit	.section	.text.init,"ax",@progbits	.align	2	.align	5	.ent	init	.type	init, @functioninit:	.frame	$sp,0,$31		# vars= 0, regs= 0/0, args= 0, gp= 0	.mask	0x00000000,0	.fmask	0x00000000,0	.set	noreorder	.set	nomacro		lw	$5,156($4)	lw	$8,4($4)	lbu	$6,3($5)	lbu	$2,2($5)	sll	$6,$6,8	or	$6,$6,$2	sw	$6,36($4)	lwl	$7,7($5)	li	$2,1			# 0x1	lwr	$7,4($5)	sw	$7,28($4)	lbu	$3,13($5)	mul	$7,$7,$6	lbu	$6,12($5)	sll	$3,$3,8	or	$3,$3,$6	mul	$3,$3,$7	lw	$6,88($8)	li	$5,2			# 0x2	divu	$0,$3,$6	teq	$6,$0,7	sw	$5,32($4)	mflo	$3	j	$31	sw	$3,44($4)	.set	macro	.set	reorder	.end	init	.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	.section	.text.control,"ax",@progbits	.align	2	.align	5	.ent	control	.type	control, @functioncontrol:	.frame	$sp,24,$31		# vars= 0, regs= 1/0, args= 16, gp= 0	.mask	0x80000000,-8	.fmask	0x00000000,0	.set	noreorder	.set	nomacro		addiu	$sp,$sp,-24	li	$2,2			# 0x2	sw	$31,16($sp)	li	$6,-1			# 0xffffffffffffffff	sw	$7,36($sp)	beq	$5,$2,$L13	move	$3,$4	lw	$31,16($sp)	move	$2,$6	j	$31	addiu	$sp,$sp,24$L13:	lw	$4,4($4)	lw	$5,52($3)	jal	demux_read_data	lw	$6,84($4)	li	$6,1			# 0x1	lw	$31,16($sp)	move	$2,$6	j	$31	addiu	$sp,$sp,24	.set	macro	.set	reorder	.end	control	.section	.rodata.str1.4,"aMS",@progbits,1	.align	2$LC0:	.ascii	"MS ADPCM: coefficient (%d) out of range (should be [0..6"	.ascii	"])\012\000"	.section	.text.decode_audio,"ax",@progbits	.align	2	.align	5	.ent	decode_audio	.type	decode_audio, @functiondecode_audio:	.frame	$sp,88,$31		# vars= 40, regs= 7/0, args= 16, gp= 0	.mask	0x803f0000,-8	.fmask	0x00000000,0	.set	noreorder	.set	nomacro		addiu	$sp,$sp,-88	sw	$19,68($sp)	sw	$16,56($sp)	sw	$31,80($sp)	sw	$21,76($sp)	sw	$20,72($sp)	sw	$18,64($sp)	sw	$17,60($sp)	move	$16,$4	lw	$4,4($4)	move	$19,$5	lw	$6,84($4)	jal	demux_read_data	lw	$5,52($16)	lw	$3,4($16)	lw	$4,84($3)	beq	$2,$4,$L15	lw	$31,80($sp)	lw	$21,76($sp)	lw	$20,72($sp)	lw	$19,68($sp)	lw	$18,64($sp)	lw	$17,60($sp)	lw	$16,56($sp)	li	$2,-1			# 0xffffffffffffffff	j	$31	addiu	$sp,$sp,88$L15:	lw	$2,156($16)	lw	$16,52($16)	lbu	$4,13($2)	lbu	$3,3($2)	lbu	$7,0($16)	lbu	$5,2($2)	lbu	$6,12($2)	sll	$3,$3,8	sll	$4,$4,8	sltu	$2,$7,7	or	$17,$3,$5	beq	$2,$0,$L61	or	$18,$4,$6	lui	$2,%hi(ms_adapt_coeff1)	lui	$3,%hi(ms_adapt_coeff2)	sll	$4,$7,2	addiu	$21,$2,%lo(ms_adapt_coeff1)	addiu	$20,$3,%lo(ms_adapt_coeff2)	addu	$5,$4,$20	addu	$4,$4,$21	lw	$2,0($4)	lw	$3,0($5)	sw	$2,40($sp)	li	$2,2			# 0x2	beq	$17,$2,$L20	sw	$3,48($sp)$L67:	li	$2,1			# 0x1	li	$5,3			# 0x3	li	$7,5			# 0x5	li	$6,5			# 0x5	li	$14,7			# 0x7$L22:	addu	$3,$16,$2	lbu	$2,1($3)	lbu	$4,0($3)	sll	$2,$2,8	addu	$4,$4,$2	andi	$3,$4,0x8000	beq	$3,$0,$L25	sw	$4,16($sp)	li	$2,-65536			# 0xffffffffffff0000	addu	$2,$4,$2	sw	$2,16($sp)$L25:	li	$2,2			# 0x2	beq	$17,$2,$L62	addu	$3,$16,$5$L27:	addu	$3,$5,$16	lbu	$2,1($3)	lbu	$4,0($3)	sll	$2,$2,8	addu	$4,$4,$2	andi	$3,$4,0x8000	beq	$3,$0,$L31	sw	$4,24($sp)	li	$2,-65536			# 0xffffffffffff0000	addu	$2,$4,$2	sw	$2,24($sp)$L31:	li	$2,2			# 0x2	beq	$17,$2,$L63	addu	$3,$16,$6$L33:	addu	$3,$6,$16	lbu	$2,1($3)	lbu	$4,0($3)	sll	$2,$2,8	addu	$4,$4,$2	andi	$3,$4,0x8000	beq	$3,$0,$L37	sw	$4,32($sp)	li	$2,-65536			# 0xffffffffffff0000	addu	$2,$4,$2	sw	$2,32($sp)$L37:	li	$2,2			# 0x2	beq	$17,$2,$L64	li	$2,1			# 0x1	beq	$17,$2,$L65	lw	$2,32($sp)$L43:	lw	$2,32($sp)	lw	$3,36($sp)	sh	$2,0($19)	sh	$3,2($19)	lw	$2,24($sp)	lw	$3,28($sp)	sh	$2,4($19)	sh	$3,6($19)	li	$4,4			# 0x4$L45:	slt	$2,$14,$18	beq	$2,$0,$L46	sll	$2,$4,1	li	$12,1			# 0x1	addu	$9,$19,$2	addu	$11,$14,$16	addiu	$15,$17,-1	move	$13,$0	addiu	$20,$sp,16	lui	$19,%hi(ms_adapt_table)	li	$25,32767			# 0x7fff	li	$24,-32768			# 0xffffffffffff8000	beq	$12,$0,$L49	li	$16,32768			# 0x8000$L66:	lbu	$2,0($11)	srl	$2,$2,4	move	$8,$2$L51:	sll	$4,$13,2	addu	$7,$4,$20	sll	$6,$2,2	andi	$3,$8,0x8	addiu	$2,$8,-16	movn	$8,$2,$3	lw	$3,16($7)	lw	$2,32($7)	lw	$10,8($7)	mult	$3,$2	lw	$2,24($7)	addiu	$5,$19,%lo(ms_adapt_table)	madd	$10,$2	lw	$4,0($7)	mflo	$2	addu	$6,$6,$5	lw	$5,0($6)	slt	$3,$2,0	addiu	$6,$2,255	movn	$2,$6,$3	mul	$3,$8,$4	mul	$5,$4,$5	sra	$2,$2,8	addu	$4,$3,$2	slt	$6,$4,$16	addiu	$3,$5,255	slt	$2,$5,0	movn	$5,$3,$2	movz	$4,$25,$6	sra	$5,$5,8	slt	$2,$4,-32768	movn	$4,$24,$2	slt	$3,$5,16	xori	$12,$12,0x1	xor	$13,$13,$15	slt	$6,$14,$18	sh	$4,0($9)	beq	$3,$0,$L56	sw	$5,0($7)	li	$2,16			# 0x10	sw	$2,0($7)$L56:	beq	$6,$0,$L46	addiu	$9,$9,2	sw	$4,8($7)	bne	$12,$0,$L66	sw	$10,16($7)$L49:	lbu	$2,0($11)	addiu	$14,$14,1	andi	$8,$2,0xf	addiu	$11,$11,1	j	$L51	move	$2,$8$L46:	sll	$2,$17,3	sll	$3,$17,1	subu	$2,$2,$3	subu	$2,$18,$2	lw	$31,80($sp)	lw	$21,76($sp)	lw	$20,72($sp)	lw	$19,68($sp)	lw	$18,64($sp)	lw	$17,60($sp)	lw	$16,56($sp)	sll	$2,$2,2	j	$31	addiu	$sp,$sp,88$L61:	lui	$6,%hi($LC0)	li	$4,12			# 0xc	li	$5,2			# 0x2	jal	mp_msg	addiu	$6,$6,%lo($LC0)	lbu	$7,0($16)	lui	$2,%hi(ms_adapt_coeff1)	lui	$3,%hi(ms_adapt_coeff2)	sll	$4,$7,2	addiu	$21,$2,%lo(ms_adapt_coeff1)	addiu	$20,$3,%lo(ms_adapt_coeff2)	addu	$5,$4,$20	addu	$4,$4,$21	lw	$2,0($4)	lw	$3,0($5)	sw	$2,40($sp)	li	$2,2			# 0x2	bne	$17,$2,$L67	sw	$3,48($sp)$L20:	lbu	$7,1($16)	sltu	$2,$7,7	beq	$2,$0,$L68	li	$4,12			# 0xc$L23:	sll	$2,$7,2	addu	$5,$2,$20	addu	$2,$2,$21	lw	$3,0($2)	lw	$4,0($5)	li	$2,2			# 0x2	li	$5,4			# 0x4	li	$7,6			# 0x6	li	$6,6			# 0x6	li	$14,8			# 0x8	sw	$3,44($sp)	j	$L22	sw	$4,52($sp)$L64:	addu	$3,$16,$14	lbu	$2,1($3)	lbu	$4,0($3)	sll	$2,$2,8	addu	$4,$4,$2	andi	$3,$4,0x8000	beq	$3,$0,$L41	sw	$4,36($sp)	li	$2,-65536			# 0xffffffffffff0000	addu	$2,$4,$2	sw	$2,36($sp)$L41:	j	$L43	addiu	$14,$14,2$L63:	lbu	$2,1($3)	lbu	$4,0($3)	sll	$2,$2,8	addu	$4,$4,$2	andi	$3,$4,0x8000	beq	$3,$0,$L60	sw	$4,28($sp)	li	$2,-65536			# 0xffffffffffff0000	addu	$2,$4,$2	sw	$2,28($sp)$L60:	move	$6,$14	j	$L33	addiu	$14,$14,2$L62:	lbu	$2,1($3)	lbu	$4,0($3)	sll	$2,$2,8	addu	$4,$4,$2	andi	$3,$4,0x8000	bne	$3,$0,$L29	sw	$4,20($sp)	move	$5,$7	addiu	$6,$7,2	j	$L27	addiu	$14,$7,4$L65:	lw	$3,24($sp)	li	$4,2			# 0x2	sh	$2,0($19)	j	$L45	sh	$3,2($19)$L29:	li	$2,-65536			# 0xffffffffffff0000	addu	$2,$4,$2	move	$5,$7	addiu	$6,$7,2	addiu	$14,$7,4	j	$L27	sw	$2,20($sp)$L68:	lui	$6,%hi($LC0)	addiu	$6,$6,%lo($LC0)	jal	mp_msg	li	$5,2			# 0x2	j	$L23	lbu	$7,1($16)	.set	macro	.set	reorder	.end	decode_audio	.globl	mpcodecs_ad_msadpcm	.data	.align	2	.type	mpcodecs_ad_msadpcm, @object	.size	mpcodecs_ad_msadpcm, 24mpcodecs_ad_msadpcm:	.word	info	.word	preinit	.word	init	.word	uninit	.word	control	.word	decode_audio	.rdata	.align	2	.type	ms_adapt_coeff1, @object	.size	ms_adapt_coeff1, 28ms_adapt_coeff1:	.word	256	.word	512	.word	0	.word	192	.word	240	.word	460	.word	392	.align	2	.type	ms_adapt_coeff2, @object	.size	ms_adapt_coeff2, 28ms_adapt_coeff2:	.word	0	.word	-256	.word	0	.word	64	.word	0	.word	-208	.word	-232	.align	2	.type	ms_adapt_table, @object	.size	ms_adapt_table, 64ms_adapt_table:	.word	230	.word	230	.word	230	.word	230	.word	307	.word	409	.word	512	.word	614	.word	768	.word	614	.word	512	.word	409	.word	307	.word	230	.word	230	.word	230	.section	.rodata.str1.4	.align	2$LC1:	.ascii	"MS ADPCM audio decoder\000"	.align	2$LC2:	.ascii	"msadpcm\000"	.align	2$LC3:	.ascii	"Nick Kurshev\000"	.align	2$LC4:	.ascii	"Mike Melanson\000"	.subsection	-1	.align	2$LC5:	.ascii	"\000"	.data	.align	2	.type	info, @object	.size	info, 20info:	.word	$LC1	.word	$LC2	.word	$LC3	.word	$LC4	.word	$LC5	.ident	"GCC: (GNU) 4.1.2"

⌨️ 快捷键说明

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