nsvdec.mid

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

MID
1,772
字号
	.file	1 "nsvdec.c"	.section .mdebug.abi32	.previous	.section	.text.nsv_read_seek,"ax",@progbits	.align	2	.align	5	.ent	nsv_read_seek	.type	nsv_read_seek, @functionnsv_read_seek:	.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	li	$2,-1			# 0xffffffffffffffff	.set	macro	.set	reorder	.end	nsv_read_seek	.section	.text.nsv_read_close,"ax",@progbits	.align	2	.align	5	.ent	nsv_read_close	.type	nsv_read_close, @functionnsv_read_close:	.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	sw	$31,16($sp)	lw	$3,12($4)	lw	$2,12($3)	beq	$2,$0,$L8	lw	$31,16($sp)	jal	av_free	lw	$4,8($3)	lw	$31,16($sp)$L8:	move	$2,$0	j	$31	addiu	$sp,$sp,24	.set	macro	.set	reorder	.end	nsv_read_close	.section	.text.nsv_parse_NSVs_header,"ax",@progbits	.align	2	.align	5	.ent	nsv_parse_NSVs_header	.type	nsv_parse_NSVs_header, @functionnsv_parse_NSVs_header:	.frame	$sp,72,$31		# vars= 8, regs= 10/0, args= 24, gp= 0	.mask	0xc0ff0000,-4	.fmask	0x00000000,0	.set	noreorder	.set	nomacro		addiu	$sp,$sp,-72	sw	$16,32($sp)	addiu	$16,$4,16	sw	$31,68($sp)	sw	$fp,64($sp)	sw	$23,60($sp)	sw	$20,48($sp)	sw	$17,36($sp)	sw	$22,56($sp)	sw	$21,52($sp)	sw	$19,44($sp)	sw	$18,40($sp)	move	$23,$4	move	$4,$16	jal	get_le32	lw	$18,12($23)	move	$4,$16	jal	get_le32	move	$20,$2	move	$4,$16	jal	get_le16	move	$fp,$2	move	$4,$16	jal	get_le16	move	$17,$2	move	$4,$16	jal	get_byte	sw	$2,24($sp)	move	$6,$2	andi	$2,$2,0x80	bne	$2,$0,$L10	andi	$2,$6,0x7f	move	$21,$6	li	$22,1			# 0x1$L12:	jal	get_le16	move	$4,$16	lw	$3,96($23)	bne	$3,$0,$L22	sh	$2,156($18)	li	$2,1162739712			# 0x454e0000	andi	$17,$17,0xffff	ori	$2,$2,0x4f4e	sw	$20,144($18)	sw	$fp,148($18)	sh	$17,152($18)	beq	$20,$2,$L24	sh	$17,154($18)	move	$4,$23	jal	av_new_stream	move	$5,$0	beq	$2,$0,$L26	move	$19,$2	jal	av_mallocz	li	$4,28			# 0x1c	beq	$2,$0,$L26	lui	$4,%hi(nsv_codec_video_tags)	lw	$16,8($19)	addiu	$4,$4,%lo(nsv_codec_video_tags)	move	$5,$20	sw	$2,20($19)	sw	$0,224($16)	jal	codec_get_id	sw	$20,232($16)	lw	$5,24($sp)	lw	$3,8($19)	andi	$4,$5,0xffff	sw	$2,228($16)	li	$2,24			# 0x18	sw	$2,392($3)	sw	$4,44($3)	sw	$17,40($3)	move	$4,$19	li	$5,64			# 0x40	move	$6,$22	jal	av_set_pts_info	move	$7,$21	sll	$3,$22,2	sll	$2,$22,7	subu	$2,$2,$3	move	$4,$0	move	$5,$0	sw	$4,88($19)	sw	$5,92($19)	addu	$2,$2,$22	lw	$4,136($18)	lw	$5,140($18)	sll	$2,$2,3	sra	$3,$2,31	move	$6,$21	sra	$7,$21,31	sw	$3,20($sp)	jal	av_rescale	sw	$2,16($sp)	sw	$2,96($19)	sw	$3,100($19)$L24:	li	$5,1162739712			# 0x454e0000	ori	$5,$5,0x4f4e	beq	$fp,$5,$L22	move	$4,$23	jal	av_new_stream	li	$5,1			# 0x1	beq	$2,$0,$L26	move	$19,$2	jal	av_mallocz	li	$4,28			# 0x1c	beq	$2,$0,$L26	li	$17,1			# 0x1	lw	$16,8($19)	lui	$4,%hi(nsv_codec_audio_tags)	addiu	$4,$4,%lo(nsv_codec_audio_tags)	move	$5,$fp	sw	$2,20($19)	sw	$17,224($16)	jal	codec_get_id	sw	$fp,232($16)	sll	$3,$21,2	sll	$7,$21,7	subu	$7,$7,$3	addu	$7,$7,$21	sw	$2,228($16)	sll	$7,$7,3	move	$4,$19	li	$5,64			# 0x40	li	$6,1			# 0x1	jal	av_set_pts_info	sw	$17,108($19)	move	$3,$0	move	$2,$0	sw	$3,92($19)	sw	$2,88($19)	lw	$4,136($18)	sra	$3,$21,31	lw	$6,140($18)	mul	$8,$4,$3	multu	$4,$21	mflo	$4	mfhi	$5	mul	$7,$6,$21	sw	$4,96($19)	addu	$6,$7,$8	addu	$5,$6,$5	sw	$5,100($19)$L22:	li	$2,4			# 0x4	sw	$2,16($18)	move	$3,$0	lw	$31,68($sp)	lw	$fp,64($sp)	lw	$23,60($sp)	lw	$22,56($sp)	lw	$21,52($sp)	lw	$20,48($sp)	lw	$19,44($sp)	lw	$18,40($sp)	lw	$17,36($sp)	lw	$16,32($sp)	move	$2,$3	j	$31	addiu	$sp,$sp,72$L10:	sra	$2,$2,2	slt	$3,$2,16	beq	$3,$0,$L13	addiu	$7,$2,-15	addiu	$22,$2,1	li	$7,1			# 0x1$L15:	andi	$2,$6,0x1	beq	$2,$0,$L36	andi	$3,$6,0x3	sll	$2,$22,7	sll	$4,$22,4	sll	$3,$7,2	addu	$4,$4,$2	sll	$2,$7,7	subu	$4,$4,$22	subu	$2,$2,$3	addu	$2,$2,$7	sll	$3,$4,3	subu	$22,$3,$4	sll	$7,$2,3	andi	$3,$6,0x3$L36:	li	$2,3			# 0x3	beq	$3,$2,$L34	li	$2,2			# 0x2	beq	$3,$2,$L35	sll	$3,$7,5	sll	$2,$7,1	j	$L12	subu	$21,$3,$2$L13:	j	$L15	li	$22,1			# 0x1$L26:	sw	$0,16($18)	li	$3,-1			# 0xffffffffffffffff	lw	$31,68($sp)	lw	$fp,64($sp)	lw	$23,60($sp)	lw	$22,56($sp)	lw	$21,52($sp)	lw	$20,48($sp)	lw	$19,44($sp)	lw	$18,40($sp)	lw	$17,36($sp)	lw	$16,32($sp)	move	$2,$3	j	$31	addiu	$sp,$sp,72$L34:	sll	$3,$7,5	sll	$2,$7,3	j	$L12	subu	$21,$3,$2$L35:	sll	$3,$7,3	sll	$2,$7,5	subu	$2,$2,$3	j	$L12	addu	$21,$2,$7	.set	macro	.set	reorder	.end	nsv_parse_NSVs_header	.section	.rodata.str1.4,"aMS",@progbits,1	.align	2$LC0:	.ascii	"nsv\000"	.section	.text.nsv_probe,"ax",@progbits	.align	2	.align	5	.ent	nsv_probe	.type	nsv_probe, @functionnsv_probe:	.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	sw	$31,16($sp)	lw	$5,4($4)	li	$2,78			# 0x4e	lbu	$3,0($5)	beq	$3,$2,$L58	li	$2,83			# 0x53$L38:	lw	$2,8($4)	addiu	$6,$2,-3	slt	$3,$6,2	bne	$3,$0,$L43	move	$3,$5	li	$7,78			# 0x4e	li	$5,1			# 0x1	li	$8,83			# 0x53	li	$10,86			# 0x56	j	$L46	li	$9,115			# 0x73$L47:	beq	$5,$6,$L43	addiu	$3,$3,1$L46:	lbu	$2,1($3)	bne	$2,$7,$L47	addiu	$5,$5,1	lbu	$2,2($3)	bne	$2,$8,$L47	nop	lbu	$2,3($3)	bne	$2,$10,$L47	nop	lbu	$2,4($3)	bne	$2,$9,$L47	li	$2,80			# 0x50	j	$L59	lw	$31,16($sp)$L43:	lw	$4,0($4)	lui	$5,%hi($LC0)	jal	match_ext	addiu	$5,$5,%lo($LC0)	li	$3,50			# 0x32	movz	$3,$0,$2	move	$2,$3$L52:	lw	$31,16($sp)$L59:	j	$31	addiu	$sp,$sp,24$L58:	lbu	$3,1($5)	bne	$3,$2,$L38	li	$2,86			# 0x56	lbu	$3,2($5)	bne	$3,$2,$L38	li	$2,102			# 0x66	lbu	$3,3($5)	beq	$3,$2,$L52	li	$2,100			# 0x64	li	$2,115			# 0x73	bne	$3,$2,$L38	li	$2,100			# 0x64	j	$L59	lw	$31,16($sp)	.set	macro	.set	reorder	.end	nsv_probe	.section	.rodata.cst4,"aM",@progbits,4	.align	2$LC1:	.word	1314084454	.align	2$LC2:	.word	1314084467	.align	2$LC3:	.word	512000	.section	.text.nsv_read_chunk,"ax",@progbits	.align	2	.align	5	.ent	nsv_read_chunk	.type	nsv_read_chunk, @functionnsv_read_chunk:	.frame	$sp,72,$31		# vars= 16, regs= 10/0, args= 16, gp= 0	.mask	0xc0ff0000,-4	.fmask	0x00000000,0	.set	noreorder	.set	nomacro		addiu	$sp,$sp,-72	sw	$4,72($sp)	lw	$2,72($sp)	sw	$18,40($sp)	sw	$31,68($sp)	sw	$fp,64($sp)	sw	$23,60($sp)	sw	$22,56($sp)	sw	$21,52($sp)	sw	$20,48($sp)	sw	$19,44($sp)	sw	$17,36($sp)	sw	$16,32($sp)	lw	$2,12($2)	lui	$4,%hi(C.56.6239)	sw	$2,28($sp)	lw	$3,%lo(C.56.6239)($4)	addiu	$2,$4,%lo(C.56.6239)	lw	$4,28($sp)	lw	$6,4($2)	lw	$8,72($sp)	lw	$2,40($4)	sw	$3,16($sp)	sw	$6,20($sp)	sw	$5,76($sp)	beq	$2,$0,$L121	addiu	$18,$8,16	move	$fp,$0$L82:	move	$2,$fp	lw	$31,68($sp)	lw	$fp,64($sp)	lw	$23,60($sp)	lw	$22,56($sp)	lw	$21,52($sp)	lw	$20,48($sp)	lw	$19,44($sp)	lw	$18,40($sp)	lw	$17,36($sp)	lw	$16,32($sp)	j	$31	addiu	$sp,$sp,72$L121:	lw	$2,96($4)	bne	$2,$0,$L82	move	$fp,$0$L64:	jal	url_feof	move	$4,$18	bne	$2,$0,$L65	nop	sw	$0,24($sp)$L67:	lw	$3,28($sp)	lw	$2,16($3)	sltu	$2,$2,3	beq	$2,$0,$L80	nop	bne	$fp,$0,$L80	lw	$16,72($sp)	lui	$2,%hi($LC1)	lui	$4,%hi($LC2)	lui	$8,%hi($LC3)	addiu	$2,$2,%lo($LC1)	addiu	$4,$4,%lo($LC2)	addiu	$8,$8,%lo($LC3)	lw	$23,12($16)	lw	$21,0($2)	lw	$20,0($4)	lw	$19,0($8)	move	$3,$0	move	$17,$0	j	$L69	li	$22,61374			# 0xefbe$L123:	jal	get_byte	nop	or	$3,$16,$2	andi	$2,$3,0xffff	beq	$2,$22,$L115	nop	beq	$3,$21,$L116	nop	beq	$3,$20,$L117	li	$2,3			# 0x3	beq	$17,$19,$L122	nop$L69:	move	$4,$18	jal	url_feof	sll	$16,$3,8	addiu	$17,$17,1	beq	$2,$0,$L123	move	$4,$18	li	$fp,-1			# 0xffffffffffffffff	sw	$0,16($23)$L72:	lw	$16,24($sp)	li	$2,300			# 0x12c	addiu	$16,$16,1	bne	$16,$2,$L67	sw	$16,24($sp)$L80:	bltz	$fp,$L82	li	$2,3			# 0x3	lw	$4,28($sp)	lw	$3,16($4)	bne	$3,$2,$L84	lw	$4,72($sp)	jal	nsv_parse_NSVs_header	move	$5,$0	bltz	$2,$L82	move	$fp,$2	lw	$8,28($sp)	lw	$3,16($8)$L84:	addiu	$2,$3,-4	sltu	$2,$2,2	beq	$2,$0,$L65	nop	jal	get_byte	move	$4,$18	move	$4,$18	jal	get_le16	andi	$17,$2,0x00ff	move	$16,$2	jal	get_le16	move	$4,$18	sll	$16,$16,4	andi	$20,$17,0xf	srl	$17,$17,4	move	$21,$2	blez	$20,$L87	or	$19,$16,$17	move	$17,$0$L89:	jal	get_le16	move	$4,$18	andi	$16,$2,0xffff	jal	get_le32	move	$4,$18	addiu	$17,$17,1	move	$6,$16	move	$7,$0	move	$4,$18	jal	url_fskip	subu	$16,$19,$16	bne	$17,$20,$L89	addiu	$19,$16,-6$L87:	jal	url_feof	move	$4,$18	bne	$2,$0,$L65	nop	bne	$19,$0,$L91	andi	$20,$21,0xffff	bne	$20,$0,$L91	lw	$16,28($sp)	j	$L64	sw	$0,16($16)$L115:	li	$2,5			# 0x5	j	$L72	sw	$2,16($23)$L116:	li	$2,1			# 0x1	j	$L72	sw	$2,16($23)$L117:	j	$L72	sw	$2,16($23)$L122:	j	$L72	li	$fp,-1			# 0xffffffffffffffff$L65:	j	$L82	li	$fp,-1			# 0xffffffffffffffff$L91:	lw	$2,72($sp)	lw	$4,100($2)	beq	$4,$0,$L128	lw	$3,72($sp)	lw	$2,4($4)	sll	$2,$2,2	addu	$3,$sp,$2	sw	$4,16($3)	lw	$3,72($sp)$L128:	lw	$4,104($3)	beq	$4,$0,$L96	nop	lw	$2,4($4)	sll	$2,$2,2	addu	$3,$sp,$2	sw	$4,16($3)$L96:	bne	$19,$0,$L124	lw	$4,28($sp)	lw	$21,16($sp)	beq	$21,$0,$L101	nop$L100:	lw	$3,20($21)	lw	$2,0($3)	addiu	$2,$2,1	sw	$2,0($3)$L101:	beq	$20,$0,$L129	lw	$16,28($sp)	lw	$16,20($sp)	lw	$2,8($16)	lw	$3,232($2)	lw	$2,28($sp)	addiu	$19,$2,80	li	$2,541917184			# 0x204d0000	ori	$2,$2,0x4350	beq	$3,$2,$L125	lw	$23,20($16)$L104:	move	$4,$18	move	$5,$19	jal	av_get_packet	move	$6,$20	lw	$2,28($sp)	lw	$3,28($19)	lw	$5,16($2)	lw	$4,0($16)	xori	$2,$5,0x4	sltu	$2,$2,1	or	$3,$3,$2	li	$2,4			# 0x4	sw	$4,24($19)	beq	$5,$2,$L126	sw	$3,28($19)$L109:	lw	$2,0($23)	addiu	$2,$2,1	sw	$2,0($23)	lw	$16,28($sp)$L129:	move	$fp,$0	j	$L82	sw	$0,16($16)$L124:	lw	$21,16($sp)	addiu	$16,$4,24	move	$5,$16	move	$4,$18	move	$6,$19	jal	av_get_packet	lw	$17,20($21)	lw	$8,28($sp)	lw	$3,0($21)	lw	$2,16($8)	sw	$3,24($16)	lw	$5,0($17)	lw	$3,28($16)	xori	$2,$2,0x4	sltu	$2,$2,1	or	$3,$3,$2	sra	$4,$5,31	sw	$3,28($16)	sw	$4,12($16)	j	$L100	sw	$5,8($16)$L126:	beq	$21,$0,$L109	li	$2,1000			# 0x3e8	lw	$3,20($21)	lw	$14,64($21)	mult	$14,$2	lw	$8,0($3)	lw	$3,28($sp)	lw	$2,68($21)	mflo	$14	lh	$4,156($3)	mfhi	$15	addiu	$8,$8,-1	sra	$7,$2,31	mul	$18,$15,$8	mul	$17,$7,$4	multu	$8,$14	move	$6,$2	mflo	$10	mfhi	$11	multu	$4,$6	sra	$9,$8,31	sra	$3,$4,31	mflo	$12	mfhi	$13	mul	$16,$9,$14	mul	$8,$3,$6	addu	$14,$16,$18	addu	$6,$8,$17	addu	$4,$10,$12	addu	$11,$14,$11	addu	$13,$6,$13	sltu	$2,$4,$10	addu	$5,$11,$13	addu	$5,$2,$5	sw	$4,8($19)	j	$L109	sw	$5,12($19)$L125:	jal	get_byte	move	$4,$18	move	$4,$18	jal	get_byte	move	$22,$2	move	$4,$18	jal	get_le16	move	$17,$2	lw	$3,76($sp)	move	$5,$2	addiu	$2,$20,-4	beq	$3,$0,$L104	andi	$20,$2,0xffff	andi	$3,$22,0x00ff	andi	$2,$17,0x00ff	divu	$0,$3,$2	teq	$2,$0,7	li	$2,8			# 0x8	mflo	$3	beq	$3,$2,$L127	sw	$0,108($16)	lw	$4,8($16)$L107:	andi	$2,$5,0xffff	srl	$2,$2,2	li	$3,1			# 0x1	sw	$2,64($4)	j	$L104	sw	$3,68($4)$L127:	lw	$4,8($16)	li	$2,65536			# 0x10000	ori	$2,$2,0x5	j	$L107	sw	$2,228($4)	.set	macro	.set	reorder	.end	nsv_read_chunk	.section	.text.nsv_read_packet,"ax",@progbits	.align	2	.align	5	.ent	nsv_read_packet	.type	nsv_read_packet, @functionnsv_read_packet:	.frame	$sp,32,$31		# vars= 0, regs= 4/0, args= 16, gp= 0	.mask	0x80070000,-4	.fmask	0x00000000,0	addiu	$sp,$sp,-32	sw	$17,20($sp)	sw	$31,28($sp)	sw	$18,24($sp)	sw	$16,16($sp)	lw	$16,12($4)	lw	$2,40($16)	.set	noreorder	.set	nomacro	bne	$2,$0,$L131	move	$17,$5	.set	macro	.set	reorder	lw	$2,96($16)	beq	$2,$0,$L155$L137:	li	$18,1			# 0x1	li	$3,1			# 0x1$L139:	sll	$2,$3,6	sll	$3,$3,3	subu	$2,$2,$3	addiu	$2,$2,24	andi	$3,$17,0x3	.set	noreorder	.set	nomacro	bne	$3,$0,$L140	addu	$5,$16,$2	.set	macro	.set	reorder

⌨️ 快捷键说明

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