vf_crop.mid

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

MID
731
字号
	.file	1 "vf_crop.c"	.section .mdebug.abi32	.previous	.section	.rodata.str1.4,"aMS",@progbits,1	.align	2$LC0:	.ascii	"%d:%d:%d:%d\000"	.align	2$LC1:	.ascii	"Crop: %d x %d, %d ; %d\012\000"	.section	.text.vf_open,"ax",@progbits	.align	2	.align	5	.ent	vf_open	.type	vf_open, @functionvf_open:	.frame	$sp,48,$31		# vars= 0, regs= 3/0, args= 32, gp= 0	.mask	0x80030000,-8	.fmask	0x00000000,0	.set	noreorder	.set	nomacro		addiu	$sp,$sp,-48	sw	$16,32($sp)	li	$3,1024			# 0x400	move	$16,$4	sw	$17,36($sp)	sw	$31,40($sp)	lui	$2,%hi(config)	sw	$3,44($16)	lui	$3,%hi(put_image)	addiu	$2,$2,%lo(config)	addiu	$3,$3,%lo(put_image)	lw	$8,100($4)	sw	$2,4($16)	sw	$3,20($16)	lui	$2,%hi(start_slice)	lui	$3,%hi(draw_slice)	addiu	$2,$2,%lo(start_slice)	addiu	$3,$3,%lo(draw_slice)	li	$4,16			# 0x10	sw	$2,24($16)	sw	$3,28($16)	beq	$8,$0,$L8	move	$17,$5$L2:	lui	$5,%hi($LC0)	move	$6,$8	move	$4,$17	addiu	$5,$5,%lo($LC0)	addiu	$2,$8,8	addiu	$3,$8,12	beq	$17,$0,$L4	addiu	$7,$8,4	sw	$2,16($sp)	jal	sscanf	sw	$3,20($sp)	lw	$8,100($16)$L4:	lw	$2,4($8)	lw	$7,0($8)	sw	$2,16($sp)	lw	$3,8($8)	lui	$6,%hi($LC1)	sw	$3,20($sp)	lw	$2,12($8)	addiu	$6,$6,%lo($LC1)	li	$4,29			# 0x1d	li	$5,4			# 0x4	jal	mp_msg	sw	$2,24($sp)	lw	$31,40($sp)	lw	$17,36($sp)	lw	$16,32($sp)	li	$2,1			# 0x1	j	$31	addiu	$sp,$sp,48$L8:	jal	uc_malloc	nop	move	$8,$2	li	$2,-1			# 0xffffffffffffffff	sw	$2,8($8)	sw	$2,4($8)	sw	$2,0($8)	sw	$2,12($8)	j	$L2	sw	$8,100($16)	.set	macro	.set	reorder	.end	vf_open	.section	.text.draw_slice,"ax",@progbits	.align	2	.align	5	.ent	draw_slice	.type	draw_slice, @functiondraw_slice:	.frame	$sp,56,$31		# vars= 16, regs= 1/0, args= 32, gp= 0	.mask	0x80000000,-8	.fmask	0x00000000,0	.set	noreorder	.set	nomacro		addiu	$sp,$sp,-56	sw	$31,48($sp)	lw	$12,96($4)	lw	$3,0($5)	lhu	$2,0($12)	move	$13,$4	andi	$2,$2,0x100	sw	$3,32($sp)	move	$14,$6	beq	$2,$0,$L10	lw	$9,72($sp)	lw	$2,8($5)	lw	$3,4($5)	sw	$2,40($sp)	sw	$3,36($sp)$L10:	lw	$10,100($13)	lw	$2,76($sp)	lw	$3,8($10)	subu	$11,$2,$3	bltz	$11,$L28	lw	$2,80($sp)	lw	$3,12($10)	subu	$8,$2,$3	bltz	$8,$L29	nop$L16:	lw	$4,0($10)	lw	$5,4($10)	addu	$2,$7,$11	slt	$2,$4,$2	addu	$3,$9,$8	subu	$4,$4,$11	slt	$3,$5,$3	movn	$7,$4,$2	subu	$5,$5,$8	bltz	$7,$L27	movn	$9,$5,$3	bltz	$9,$L27	move	$4,$13	move	$6,$14	addiu	$5,$sp,32	sw	$9,16($sp)	sw	$11,20($sp)	jal	vf_next_draw_slice	sw	$8,24($sp)$L27:	lw	$31,48($sp)	j	$31	addiu	$sp,$sp,56$L28:	lw	$2,32($sp)	lhu	$3,0($12)	subu	$5,$0,$11	addu	$2,$2,$5	andi	$3,$3,0x100	bne	$3,$0,$L30	sw	$2,32($sp)	subu	$7,$7,$5	move	$11,$0$L32:	lw	$3,12($10)	lw	$2,80($sp)	subu	$8,$2,$3	bgez	$8,$L16	nop$L29:	lw	$2,0($14)	subu	$8,$0,$8	mul	$5,$8,$2	lw	$3,32($sp)	lhu	$4,0($12)	addu	$2,$5,$3	andi	$4,$4,0x100	bne	$4,$0,$L31	sw	$2,32($sp)	subu	$9,$9,$8	j	$L16	move	$8,$0$L31:	lw	$4,100($12)	lw	$5,8($14)	sra	$4,$8,$4	mul	$3,$4,$5	lw	$2,40($sp)	lw	$6,4($14)	addu	$5,$3,$2	mul	$2,$4,$6	lw	$3,36($sp)	subu	$9,$9,$8	addu	$4,$2,$3	move	$8,$0	sw	$4,36($sp)	j	$L16	sw	$5,40($sp)$L30:	lw	$2,96($12)	lw	$4,40($sp)	lw	$3,36($sp)	sra	$2,$5,$2	addu	$4,$4,$2	addu	$3,$3,$2	subu	$7,$7,$5	move	$11,$0	sw	$3,36($sp)	j	$L32	sw	$4,40($sp)	.set	macro	.set	reorder	.end	draw_slice	.section	.text.start_slice,"ax",@progbits	.align	2	.align	5	.ent	start_slice	.type	start_slice, @functionstart_slice:	.frame	$sp,32,$31		# vars= 0, regs= 2/0, args= 24, gp= 0	.mask	0x80010000,-4	.fmask	0x00000000,0	.set	noreorder	.set	nomacro		addiu	$sp,$sp,-32	sw	$31,28($sp)	sw	$16,24($sp)	lw	$8,100($4)	lhu	$7,0($5)	lw	$2,0($8)	move	$16,$4	sw	$2,16($sp)	lw	$2,4($5)	lbu	$6,2($5)	lw	$4,92($4)	lw	$3,4($8)	move	$5,$2	jal	vf_get_image	sw	$3,20($sp)	sw	$2,96($16)	lw	$31,28($sp)	lw	$16,24($sp)	j	$31	addiu	$sp,$sp,32	.set	macro	.set	reorder	.end	start_slice	.section	.text.put_image,"ax",@progbits	.align	2	.align	5	.ent	put_image	.type	put_image, @functionput_image:	.frame	$sp,48,$31		# vars= 0, regs= 5/0, args= 24, gp= 0	.mask	0x800f0000,-8	.fmask	0x00000000,0	.set	noreorder	.set	nomacro		addiu	$sp,$sp,-48	sw	$19,36($sp)	sw	$18,32($sp)	sw	$17,28($sp)	sw	$16,24($sp)	sw	$31,40($sp)	lhu	$2,0($5)	move	$16,$5	andi	$2,$2,0x1000	move	$17,$4	move	$18,$6	beq	$2,$0,$L36	move	$19,$7	lw	$5,96($4)	lw	$31,40($sp)	lw	$19,36($sp)	lw	$18,32($sp)	lw	$17,28($sp)	lw	$16,24($sp)	j	vf_next_put_image	addiu	$sp,$sp,48$L36:	lw	$7,100($4)	lw	$5,4($5)	lw	$2,0($7)	lw	$4,92($4)	sw	$2,16($sp)	lw	$3,4($7)	move	$6,$0	move	$7,$0	jal	vf_get_image	sw	$3,20($sp)	move	$8,$2	lhu	$2,0($16)	andi	$2,$2,0x100	beq	$2,$0,$L38	nop	lw	$4,100($17)	lw	$2,48($16)	lw	$3,12($4)	lw	$5,8($4)	mul	$4,$3,$2	lw	$6,32($16)	lw	$7,52($16)	addu	$2,$4,$6	lw	$6,100($16)	addu	$2,$2,$5	sra	$3,$3,$6	mul	$6,$3,$7	sw	$2,32($8)	lw	$2,36($16)	lw	$4,96($16)	addu	$2,$6,$2	lw	$6,56($16)	sw	$7,52($8)	sra	$5,$5,$4	lw	$4,56($16)	addu	$2,$2,$5	sw	$4,56($8)	mul	$4,$3,$6	sw	$2,36($8)	lw	$2,40($16)	lw	$6,48($16)	addu	$3,$4,$2	addu	$3,$3,$5	sw	$3,40($8)$L40:	lw	$2,8($16)	sw	$6,48($8)	sw	$2,8($8)	move	$4,$17	move	$6,$18	move	$7,$19	lw	$31,40($sp)	lw	$19,36($sp)	lw	$18,32($sp)	lw	$17,28($sp)	lw	$16,24($sp)	move	$5,$8	j	vf_next_put_image	addiu	$sp,$sp,48$L38:	lw	$5,100($17)	lw	$6,48($16)	lw	$2,12($5)	lbu	$3,3($16)	mult	$2,$6	lw	$4,8($5)	srl	$3,$3,3	madd	$3,$4	lw	$2,32($16)	mflo	$3	addu	$2,$2,$3	sw	$2,32($8)	lw	$3,36($16)	j	$L40	sw	$3,36($8)	.set	macro	.set	reorder	.end	put_image	.section	.rodata.str1.4	.align	2$LC2:	.ascii	"[CROP] Bad position/width/height - cropped area outside "	.ascii	"of the original!\012\000"	.section	.text.config,"ax",@progbits	.align	2	.align	5	.ent	config	.type	config, @functionconfig:	.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	$8,100($4)	move	$10,$5	lw	$2,0($8)	move	$11,$6	lw	$12,40($sp)	lw	$13,44($sp)	blez	$2,$L45	lw	$9,48($sp)	slt	$2,$5,$2	bne	$2,$0,$L45	nop$L47:	lw	$2,4($8)	blez	$2,$L48	slt	$2,$11,$2	bne	$2,$0,$L48	nop	lw	$2,8($8)	bltz	$2,$L73	nop$L51:	lw	$2,12($8)	bltz	$2,$L74	nop$L53:	li	$3,-256			# 0xffffffffffffff00$L80:	li	$2,1380384768			# 0x52470000	and	$3,$9,$3	ori	$2,$2,0x4200	beq	$3,$2,$L55	li	$2,1111949312			# 0x42470000	ori	$2,$2,0x5200	beq	$3,$2,$L55	li	$2,959447040			# 0x39300000	ori	$2,$2,0x4649	beq	$9,$2,$L60	sltu	$2,$2,$9	beq	$2,$0,$L75	li	$2,808452096			# 0x30300000	li	$2,1345388544			# 0x50310000	ori	$2,$2,0x3134	beq	$9,$2,$L61	sltu	$2,$2,$9	bne	$2,$0,$L64	li	$2,1345585152			# 0x50340000	li	$2,961871872			# 0x39550000	ori	$2,$2,0x5659	beq	$9,$2,$L60	nop$L58:	lw	$2,8($8)	li	$3,-2			# 0xfffffffffffffffe	and	$2,$2,$3	sw	$2,8($8)$L55:	lw	$5,0($8)$L77:	lw	$2,8($8)	addu	$2,$5,$2	slt	$2,$10,$2	bne	$2,$0,$L79	lui	$6,%hi($LC2)	lw	$2,12($8)	lw	$6,4($8)	addu	$2,$6,$2	slt	$2,$11,$2	beq	$2,$0,$L76	lui	$2,%hi(opt_screen_size_x)	lui	$6,%hi($LC2)$L79:	addiu	$6,$6,%lo($LC2)	li	$4,29			# 0x1d	jal	mp_msg	li	$5,2			# 0x2	lw	$31,16($sp)	move	$2,$0	j	$31	addiu	$sp,$sp,24$L48:	lw	$2,8($8)	bgez	$2,$L51	sw	$11,4($8)$L73:	lw	$3,0($8)	subu	$3,$10,$3	srl	$2,$3,31	addu	$2,$2,$3	sra	$2,$2,1	sw	$2,8($8)	lw	$2,12($8)	bgez	$2,$L80	li	$3,-256			# 0xffffffffffffff00$L74:	lw	$3,4($8)	subu	$3,$11,$3	srl	$2,$3,31	addu	$2,$2,$3	sra	$2,$2,1	j	$L53	sw	$2,12($8)$L45:	j	$L47	sw	$10,0($8)$L76:	lw	$3,%lo(opt_screen_size_x)($2)	bne	$3,$0,$L69	nop	lui	$2,%hi(opt_screen_size_y)	lw	$3,%lo(opt_screen_size_y)($2)	bne	$3,$0,$L69	nop	mul	$2,$5,$7	mul	$3,$6,$12	div	$0,$2,$10	teq	$10,$0,7	mflo	$7	div	$0,$3,$11	teq	$11,$0,7	mflo	$12$L69:	sw	$12,40($sp)	sw	$13,44($sp)	sw	$9,48($sp)	lw	$31,16($sp)	j	vf_next_config	addiu	$sp,$sp,24$L75:	ori	$2,$2,0x3859	beq	$9,$2,$L55	sltu	$2,$2,$9	bne	$2,$0,$L63	li	$2,808583168			# 0x30320000	li	$2,538968064			# 0x20200000	ori	$2,$2,0x3859	bne	$9,$2,$L58	nop	j	$L77	lw	$5,0($8)$L60:	lw	$2,12($8)	li	$3,-4			# 0xfffffffffffffffc	and	$2,$2,$3	sw	$2,12($8)$L61:	lw	$2,8($8)	li	$3,-4			# 0xfffffffffffffffc	and	$2,$2,$3	j	$L55	sw	$2,8($8)$L64:	ori	$2,$2,0x3434	beq	$9,$2,$L55	li	$2,1448411136			# 0x56550000	ori	$2,$2,0x5949	bne	$9,$2,$L58	nop	j	$L78	lw	$2,12($8)$L63:	ori	$2,$2,0x3449	beq	$9,$2,$L59	li	$2,842072064			# 0x32310000	ori	$2,$2,0x5659	bne	$9,$2,$L58	nop$L59:	lw	$2,12($8)$L78:	li	$3,-2			# 0xfffffffffffffffe	and	$2,$2,$3	j	$L58	sw	$2,12($8)	.set	macro	.set	reorder	.end	config	.globl	vf_info_crop	.section	.rodata.str1.4	.align	2$LC3:	.ascii	"cropping\000"	.align	2$LC4:	.ascii	"crop\000"	.align	2$LC5:	.ascii	"A'rpi\000"	.subsection	-1	.align	2$LC6:	.ascii	"\000"	.data	.align	2	.type	vf_info_crop, @object	.size	vf_info_crop, 24vf_info_crop:	.word	$LC3	.word	$LC4	.word	$LC5	.word	$LC6	.word	vf_open	.word	vf_opts	.align	2	.type	vf_opts, @object	.size	vf_opts, 16vf_opts:	.word	$LC4	.word	16	.word	vf_priv_dflt	.word	vf_opts_fields	.rdata	.align	2	.type	vf_priv_dflt, @object	.size	vf_priv_dflt, 16vf_priv_dflt:	.word	-1	.word	-1	.word	-1	.word	-1	.section	.rodata.str1.4	.align	2$LC7:	.ascii	"w\000"	.align	2$LC8:	.ascii	"h\000"	.align	2$LC9:	.ascii	"x\000"	.align	2$LC10:	.ascii	"y\000"	.data	.align	3	.type	vf_opts_fields, @object	.size	vf_opts_fields, 200vf_opts_fields:	.word	$LC7	.word	0	.word	m_option_type_int	.word	1	.word	0	.word	0	.word	0	.word	0	.word	0	.space	4	.word	$LC8	.word	4	.word	m_option_type_int	.word	1	.word	0	.word	0	.word	0	.word	0	.word	0	.space	4	.word	$LC9	.word	8	.word	m_option_type_int	.word	1	.word	0	.word	-1074790400	.word	0	.word	0	.word	0	.space	4	.word	$LC10	.word	12	.word	m_option_type_int	.word	1	.word	0	.word	-1074790400	.word	0	.word	0	.word	0	.space	4	.word	0	.word	0	.word	0	.word	0	.word	0	.word	0	.word	0	.word	0	.word	0	.space	4	.ident	"GCC: (GNU) 4.1.2"

⌨️ 快捷键说明

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