demux_ogg.mid

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

MID
4,749
字号
	.file	1 "demux_ogg.c"	.section .mdebug.abi32	.previous	.section	.text.demux_ogg_sub_id,"ax",@progbits	.align	2	.align	5	.globl	demux_ogg_sub_id	.ent	demux_ogg_sub_id	.type	demux_ogg_sub_id, @functiondemux_ogg_sub_id:	.frame	$sp,0,$31		# vars= 0, regs= 0/0, args= 0, gp= 0	.mask	0x00000000,0	.fmask	0x00000000,0	.set	noreorder	.set	nomacro		bgez	$5,$L8	lw	$3,2248($4)$L2:	j	$31	move	$2,$5$L8:	lw	$2,80($3)	slt	$2,$5,$2	beq	$2,$0,$L9	sll	$4,$5,2	lw	$2,84($3)	addu	$2,$4,$2	j	$L2	lw	$5,0($2)$L9:	j	$L2	li	$5,-1			# 0xffffffffffffffff	.set	macro	.set	reorder	.end	demux_ogg_sub_id	.section	.text.demux_ogg_sub_lang,"ax",@progbits	.align	2	.align	5	.globl	demux_ogg_sub_lang	.ent	demux_ogg_sub_lang	.type	demux_ogg_sub_lang, @functiondemux_ogg_sub_lang:	.frame	$sp,0,$31		# vars= 0, regs= 0/0, args= 0, gp= 0	.mask	0x00000000,0	.fmask	0x00000000,0	.set	noreorder	.set	nomacro		bgez	$5,$L16	lw	$3,2248($4)$L11:	j	$31	move	$2,$0$L16:	lw	$2,80($3)	slt	$2,$5,$2	beq	$2,$0,$L11	sll	$4,$5,2	lw	$2,88($3)	addu	$2,$4,$2	j	$31	lw	$2,0($2)	.set	macro	.set	reorder	.end	demux_ogg_sub_lang	.globl	__floatsisf	.globl	__floatdidf	.globl	__extendsfdf2	.globl	__divdf3	.globl	__divdi3	.section	.text.demux_ogg_control,"ax",@progbits	.align	2	.align	5	.ent	demux_ogg_control	.type	demux_ogg_control, @functiondemux_ogg_control:	.frame	$sp,40,$31		# vars= 0, regs= 6/0, args= 16, gp= 0	.mask	0x801f0000,-4	.fmask	0x00000000,0	.set	noreorder	.set	nomacro		addiu	$sp,$sp,-40	sw	$20,32($sp)	sw	$19,28($sp)	sw	$31,36($sp)	sw	$18,24($sp)	sw	$17,20($sp)	sw	$16,16($sp)	lw	$2,56($4)	move	$19,$5	lw	$5,68($2)	move	$20,$6	bltz	$5,$L18	lw	$17,2248($4)	sll	$2,$5,3	sll	$3,$5,6	subu	$3,$3,$2	addu	$3,$3,$5	lw	$2,44($17)	sll	$3,$3,3	addu	$16,$3,$2	lw	$18,0($16)$L20:	li	$2,10			# 0xa	beq	$19,$2,$L22	li	$2,11			# 0xb	beq	$19,$2,$L23	li	$4,-1			# 0xffffffffffffffff$L24:	lw	$31,36($sp)$L36:	lw	$20,32($sp)	lw	$19,28($sp)	lw	$18,24($sp)	lw	$17,20($sp)	lw	$16,16($sp)	move	$2,$4	j	$31	addiu	$sp,$sp,40$L22:	lw	$5,76($17)	blez	$5,$L33	lw	$4,72($17)$L27:	jal	__floatdidf	nop	move	$4,$18	move	$16,$2	jal	__extendsfdf2	move	$17,$3	move	$6,$2	move	$4,$16	move	$5,$17	jal	__divdf3	move	$7,$3	sw	$2,0($20)	sw	$3,4($20)	li	$4,2			# 0x2	lw	$31,36($sp)	lw	$20,32($sp)	lw	$19,28($sp)	lw	$18,24($sp)	lw	$17,20($sp)	lw	$16,16($sp)	move	$2,$4	j	$31	addiu	$sp,$sp,40$L18:	lw	$2,52($4)	lw	$5,44($17)	lw	$3,68($2)	sll	$4,$3,3	sll	$2,$3,6	subu	$2,$2,$4	addu	$2,$2,$3	sll	$2,$2,3	addu	$16,$2,$5	jal	__floatsisf	lw	$4,420($16)	j	$L20	move	$18,$2$L23:	lw	$7,76($17)	blez	$7,$L34	lw	$6,72($17)$L29:	lw	$4,8($16)	li	$3,100			# 0x64	multu	$4,$3	lw	$2,12($16)	mflo	$4	mfhi	$5	mul	$8,$2,$3	jal	__divdi3	addu	$5,$8,$5	sw	$2,0($20)	li	$4,1			# 0x1	lw	$31,36($sp)	lw	$20,32($sp)	lw	$19,28($sp)	lw	$18,24($sp)	lw	$17,20($sp)	lw	$16,16($sp)	move	$2,$4	j	$31	addiu	$sp,$sp,40$L33:	beq	$5,$0,$L35	nop	j	$L24	move	$4,$0$L34:	bne	$7,$0,$L24	move	$4,$0	bgtu	$6,$0,$L29	lw	$31,36($sp)	j	$L36	nop$L35:	bgtu	$4,$0,$L27	nop	j	$L24	move	$4,$0	.set	macro	.set	reorder	.end	demux_ogg_control	.section	.text.install_demuxer_ogg,"ax",@progbits	.align	2	.align	5	.globl	install_demuxer_ogg	.ent	install_demuxer_ogg	.type	install_demuxer_ogg, @functioninstall_demuxer_ogg:	.frame	$sp,0,$31		# vars= 0, regs= 0/0, args= 0, gp= 0	.mask	0x00000000,0	.fmask	0x00000000,0	.set	noreorder	.set	nomacro		lui	$3,%hi(demuxer_list)	lw	$4,%lo(demuxer_list)($3)	beq	$4,$0,$L38	li	$2,1			# 0x1	beq	$4,$2,$L49	lui	$2,%hi(demuxer_list+4)	addiu	$6,$2,%lo(demuxer_list+4)	j	$L44	li	$4,1			# 0x1$L43:	li	$2,1			# 0x1	beq	$5,$2,$L50	nop$L44:	lw	$5,0($6)	addiu	$4,$4,1	bne	$5,$0,$L43	addiu	$6,$6,4$L38:	lui	$2,%hi(init_avi_with_ogg)	addiu	$2,$2,%lo(init_avi_with_ogg)	lui	$4,%hi(init_avi_with_ogg_funcp)	lui	$3,%hi(demux_ogg_open)	sw	$2,%lo(init_avi_with_ogg_funcp)($4)	addiu	$3,$3,%lo(demux_ogg_open)	lui	$2,%hi(demux_ogg_open_funcp)	j	$31	sw	$3,%lo(demux_ogg_open_funcp)($2)$L50:	addiu	$4,$4,-1$L42:	addiu	$3,$3,%lo(demuxer_list)	sll	$4,$4,2	lui	$2,%hi(demuxer_desc_ogg)	addu	$4,$4,$3	addiu	$2,$2,%lo(demuxer_desc_ogg)	sw	$2,0($4)	lui	$2,%hi(init_avi_with_ogg)	addiu	$2,$2,%lo(init_avi_with_ogg)	lui	$4,%hi(init_avi_with_ogg_funcp)	lui	$3,%hi(demux_ogg_open)	sw	$2,%lo(init_avi_with_ogg_funcp)($4)	addiu	$3,$3,%lo(demux_ogg_open)	lui	$2,%hi(demux_ogg_open_funcp)	j	$31	sw	$3,%lo(demux_ogg_open_funcp)($2)$L49:	j	$L42	move	$4,$0	.set	macro	.set	reorder	.end	install_demuxer_ogg	.globl	__floatdisf	.globl	__divsf3	.section	.text.demux_ogg_read_packet,"ax",@progbits	.align	2	.align	5	.ent	demux_ogg_read_packet	.type	demux_ogg_read_packet, @functiondemux_ogg_read_packet:	.frame	$sp,56,$31		# vars= 0, regs= 9/0, args= 16, gp= 0	.mask	0x80ff0000,-8	.fmask	0x00000000,0	.set	noreorder	.set	nomacro		addiu	$sp,$sp,-56	lw	$6,72($sp)	sw	$21,36($sp)	sw	$20,32($sp)	sw	$19,28($sp)	sw	$17,20($sp)	sw	$31,48($sp)	sw	$23,44($sp)	sw	$22,40($sp)	sw	$18,24($sp)	sw	$16,16($sp)	sw	$0,0($6)	lw	$2,388($4)	move	$3,$0	move	$17,$4	move	$20,$7	move	$19,$5	sw	$3,0($7)	lw	$21,76($sp)	beq	$2,$0,$L52	lw	$18,0($5)	lbu	$2,0($18)	andi	$2,$2,0x1	bne	$2,$0,$L80	nop	lw	$2,444($4)	bne	$2,$0,$L81	addiu	$22,$4,412$L56:	move	$2,$18$L86:	lw	$31,48($sp)	lw	$23,44($sp)	lw	$22,40($sp)	lw	$21,36($sp)	lw	$20,32($sp)	lw	$19,28($sp)	lw	$18,24($sp)	lw	$17,20($sp)	lw	$16,16($sp)	j	$31	addiu	$sp,$sp,56$L52:	lw	$2,392($4)	bne	$2,$0,$L86	move	$2,$18	lw	$3,400($4)	bne	$3,$0,$L82	li	$2,2			# 0x2	lbu	$3,0($18)	andi	$2,$3,0x1	bne	$2,$0,$L80	andi	$2,$3,0x2	lw	$5,16($5)	sll	$2,$2,1	srl	$3,$3,6	li	$4,-1			# 0xffffffffffffffff	beq	$5,$4,$L83	or	$16,$3,$2$L68:	lbu	$2,0($18)	andi	$2,$2,0x8	bne	$2,$0,$L84	li	$2,1			# 0x1$L73:	lw	$4,16($19)	jal	__floatdisf	lw	$5,20($19)	lw	$5,0($17)	jal	__divsf3	move	$4,$2	sw	$2,0($20)	sw	$0,16($17)	beq	$16,$0,$L75	move	$6,$0	move	$5,$16	move	$4,$16$L77:	sll	$6,$6,8	sw	$6,16($17)	addu	$2,$5,$18	lbu	$3,0($2)	addiu	$4,$4,-1	sll	$4,$4,16	or	$3,$6,$3	sra	$4,$4,16	move	$6,$3	sw	$3,16($17)	bne	$4,$0,$L77	addiu	$5,$5,-1$L75:	lw	$2,16($19)	lw	$3,20($19)	addu	$4,$18,$16	addiu	$18,$4,1	sw	$2,8($17)	j	$L56	sw	$3,12($17)$L80:	lw	$2,384($17)	addiu	$2,$2,1	sw	$2,384($17)	lw	$31,48($sp)	move	$2,$18	lw	$23,44($sp)	lw	$22,40($sp)	lw	$21,36($sp)	lw	$20,32($sp)	lw	$19,28($sp)	lw	$18,24($sp)	lw	$17,20($sp)	lw	$16,16($sp)	j	$31	addiu	$sp,$sp,56$L82:	bne	$3,$2,$L86	move	$2,$18	lbu	$3,0($18)	li	$2,255			# 0xff	beq	$3,$2,$L86	move	$2,$18	j	$L56	move	$18,$0$L81:	jal	vorbis_packet_blocksize	move	$4,$22	lw	$3,16($19)	move	$23,$2	li	$2,-1			# 0xffffffffffffffff	beq	$3,$2,$L85	nop$L58:	lw	$5,20($19)	jal	__floatdisf	lw	$4,16($19)	lw	$4,8($22)	jal	__floatsisf	move	$16,$2	move	$5,$2	jal	__divsf3	move	$4,$16	div	$0,$23,$21	teq	$21,$0,7	lw	$4,16($19)	lw	$5,20($19)	sw	$2,0($20)	sw	$4,8($17)	sw	$5,12($17)	move	$2,$18	mflo	$6	sw	$6,16($17)	lw	$31,48($sp)	lw	$23,44($sp)	lw	$22,40($sp)	lw	$21,36($sp)	lw	$20,32($sp)	lw	$19,28($sp)	lw	$18,24($sp)	lw	$17,20($sp)	lw	$16,16($sp)	j	$31	addiu	$sp,$sp,56$L84:	j	$L73	sw	$2,0($6)$L85:	lw	$2,20($19)	bne	$2,$3,$L58	nop	lw	$8,8($17)	lw	$9,12($17)	lw	$4,16($17)	sw	$8,16($19)	blez	$4,$L58	sw	$9,20($19)	sra	$3,$4,31	addu	$4,$8,$4	sltu	$6,$4,$8	addu	$5,$9,$3	addu	$5,$6,$5	sw	$4,16($19)	j	$L58	sw	$5,20($19)$L83:	lw	$2,20($19)	bne	$2,$5,$L68	nop	lw	$2,16($17)	lw	$10,8($17)	bne	$2,$0,$L70	lw	$11,12($17)	li	$8,1			# 0x1	move	$9,$0$L72:	addu	$2,$8,$10	sltu	$4,$2,$8	addu	$3,$9,$11	addu	$3,$4,$3	sw	$2,16($19)	j	$L68	sw	$3,20($19)$L70:	move	$8,$2	j	$L72	sra	$9,$2,31	.set	macro	.set	reorder	.end	demux_ogg_read_packet	.section	.text.demux_close_ogg,"ax",@progbits	.align	2	.align	5	.ent	demux_close_ogg	.type	demux_close_ogg, @functiondemux_close_ogg:	.frame	$sp,40,$31		# vars= 0, regs= 5/0, args= 16, gp= 0	.mask	0x800f0000,-8	.fmask	0x00000000,0	.set	noreorder	.set	nomacro		addiu	$sp,$sp,-40	sw	$31,32($sp)	sw	$19,28($sp)	sw	$18,24($sp)	sw	$17,20($sp)	sw	$16,16($sp)	lw	$17,2248($4)	beq	$17,$0,$L108	lw	$31,32($sp)	jal	ogg_sync_clear	move	$4,$17	lw	$4,44($17)	beq	$4,$0,$L90	nop	lw	$2,48($17)	blez	$2,$L92	nop	move	$19,$0	j	$L94	move	$18,$0$L95:	lw	$2,48($17)	slt	$2,$19,$2	beq	$2,$0,$L111	addiu	$18,$18,456$L109:	lw	$4,44($17)$L94:	addu	$16,$18,$4	jal	ogg_stream_clear	addiu	$4,$16,24	lw	$2,444($16)	addiu	$19,$19,1	beq	$2,$0,$L95	addiu	$4,$16,412	jal	vorbis_info_clear	addiu	$18,$18,456	lw	$2,48($17)	slt	$2,$19,$2	bne	$2,$0,$L109	nop$L111:	lw	$4,44($17)$L92:	jal	uc_free	nop$L90:	lw	$4,52($17)	beq	$4,$0,$L97	nop	jal	uc_free	nop$L97:	lw	$4,84($17)	beq	$4,$0,$L99	nop	jal	uc_free	nop$L99:	lw	$6,88($17)	beq	$6,$0,$L112	move	$4,$17	lw	$5,80($17)	blez	$5,$L103	move	$16,$0	sll	$2,$16,2$L113:	addu	$2,$2,$6	lw	$3,0($2)	addiu	$16,$16,1	beq	$3,$0,$L106	move	$4,$3	jal	uc_free	nop	lw	$6,88($17)	lw	$5,80($17)$L106:	slt	$2,$16,$5	bne	$2,$0,$L113	sll	$2,$16,2$L103:	jal	uc_free	move	$4,$6	move	$4,$17$L112:	lw	$31,32($sp)	lw	$19,28($sp)	lw	$18,24($sp)	lw	$17,20($sp)	lw	$16,16($sp)	j	uc_free	addiu	$sp,$sp,40$L108:	lw	$19,28($sp)	lw	$18,24($sp)	lw	$17,20($sp)	lw	$16,16($sp)	j	$31	addiu	$sp,$sp,40	.set	macro	.set	reorder	.end	demux_close_ogg	.section	.rodata.str1.4,"aMS",@progbits,1	.align	2$LC0:	.ascii	"\012demux_ogg_add_sub %02X %02X %02X '%s'\012\000"	.globl	__muldf3	.globl	__adddf3	.align	2$LC4:	.ascii	"Ogg sub lines: %d  first: '%s'\012\000"	.section	.rodata.cst8,"aM",@progbits,8	.align	3$LC1:	.word	0	.word	-1008730112	.align	3$LC2:	.word	-755914244	.word	1062232653	.align	3$LC3:	.word	0	.word	1072693248	.section	.text.demux_ogg_add_sub,"ax",@progbits	.align	2	.align	5	.globl	demux_ogg_add_sub	.ent	demux_ogg_add_sub	.type	demux_ogg_add_sub, @functiondemux_ogg_add_sub:	.frame	$sp,64,$31		# vars= 0, regs= 8/0, args= 32, gp= 0	.mask	0x807f0000,-4	.fmask	0x00000000,0	.set	noreorder	.set	nomacro		addiu	$sp,$sp,-64	sw	$19,44($sp)	sw	$18,40($sp)	sw	$31,60($sp)	sw	$22,56($sp)	sw	$21,52($sp)	sw	$20,48($sp)	sw	$17,36($sp)	sw	$16,32($sp)	lw	$2,4($5)	move	$18,$5	slt	$2,$2,4	move	$19,$4	beq	$2,$0,$L127	lw	$16,0($5)	lw	$31,60($sp)$L131:	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,64$L127:	lbu	$2,1($16)	lbu	$7,0($16)	sw	$2,16($sp)	lbu	$3,2($16)	lui	$6,%hi($LC0)	addiu	$6,$6,%lo($LC0)	addiu	$22,$16,3	li	$4,7			# 0x7	li	$5,7			# 0x7	sw	$3,20($sp)	jal	mp_msg	sw	$22,24($sp)	lb	$3,0($16)	li	$2,-120			# 0xffffffffffffff88	bne	$3,$2,$L126	lui	$17,%hi(ogg_sub)	lw	$2,4($18)	slt	$2,$2,3	bne	$2,$0,$L131	lw	$31,60($sp)	lbu	$2,2($16)	lbu	$3,1($16)	sll	$2,$2,8	or	$9,$2,$3	blez	$9,$L128	li	$2,-1			# 0xffffffffffffffff	lw	$3,16($18)	beq	$3,$2,$L129	nop$L123:	jal	__floatsisf	move	$4,$9	jal	__extendsfdf2	move	$4,$2	lui	$4,%hi($LC2)	lw	$6,%lo($LC2)($4)	lw	$7,%lo($LC2+4)($4)	move	$5,$3	jal	__muldf3	move	$4,$2	lw	$4,16($18)	lw	$5,20($18)	move	$17,$3	jal	__floatdisf	move	$16,$2	lw	$5,0($19)	jal	__divsf3	move	$4,$2	jal	__extendsfdf2	move	$4,$2	lui	$4,%hi($LC3)	lw	$6,%lo($LC3)($4)	lw	$7,%lo($LC3+4)($4)	move	$5,$3	jal	__adddf3	move	$4,$2	move	$6,$2	move	$7,$3	move	$4,$16	jal	__adddf3	move	$5,$17	move	$20,$2	lui	$2,%hi($LC1)	lw	$6,%lo($LC1)($2)	lw	$7,%lo($LC1+4)($2)	move	$21,$3$L122:	lui	$17,%hi(ogg_sub)	jal	sub_clear_text	addiu	$4,$17,%lo(ogg_sub)	lw	$6,4($18)	move	$5,$22	addiu	$6,$6,-3	addiu	$4,$17,%lo(ogg_sub)	sw	$20,16($sp)	jal	sub_add_text	sw	$21,20($sp)	j	$L130	addiu	$16,$17,%lo(ogg_sub)$L126:	addiu	$16,$17,%lo(ogg_sub)$L130:	lw	$2,12($16)	lw	$7,%lo(ogg_sub)($17)	lui	$6,%hi($LC4)	li	$4,7			# 0x7	addiu	$6,$6,%lo($LC4)	li	$5,7			# 0x7	jal	mp_msg	sw	$2,16($sp)	lui	$2,%hi(vo_sub)	sw	$16,%lo(vo_sub)($2)	lw	$31,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)	li	$4,2			# 0x2	j	vo_osd_changed	addiu	$sp,$sp,64$L129:	lw	$2,20($18)	bne	$2,$3,$L123	nop	lw	$6,8($19)	lw	$2,16($19)	lw	$7,12($19)	sra	$5,$2,31	addu	$2,$6,$2	sltu	$8,$2,$6	addu	$3,$7,$5	addu	$3,$8,$3	sw	$2,16($18)	j	$L123	sw	$3,20($18)$L128:	lui	$2,%hi($LC1)	lw	$20,%lo($LC1)($2)	lw	$21,%lo($LC1+4)($2)	move	$6,$20	j	$L122	move	$7,$21	.set	macro	.set	reorder	.end	demux_ogg_add_sub	.section	.rodata.str1.4	.align	2$LC5:	.ascii	"\003vorbis\000"	.align	2$LC6:	.ascii	"LANGUAGE=\000"	.align	2$LC7:	.ascii	"ID_SID_%d_LANG=%s\012\000"	.align	2$LC8:	.ascii	"ID_AID_%d_LANG=%s\012\000"	.align	2$LC9:	.ascii	"[Ogg] Language for -sid %d is '-slang \"%s\"'\012\000"	.align	2$LC10:	.ascii	"Language\000"	.align	2$LC12:	.ascii	"New dp: %p  ds=%p  pts=%5.3f  len=%d  flag=%d  \012\000"	.align	2$LC13:	.ascii	"Ogg demuxer: Displaying subtitle stream id %d which matc"	.ascii	"hed -slang %s\012\000"	.section	.rodata.cst8	.align	3$LC11:	.word	0	.word	-1008730112	.section	.text.demux_ogg_add_packet,"ax",@progbits	.align	2	.align	5	.ent	demux_ogg_add_packet

⌨️ 快捷键说明

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