font_load.mid

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

MID
2,846
字号
	.file	1 "font_load.c"	.section .mdebug.abi32	.previous	.section	.rodata.str1.4,"aMS",@progbits,1	.align	2$LC0:	.ascii	"rb\000"	.align	2$LC1:	.ascii	"mhwanh\000"	.align	2$LC2:	.ascii	"RAW: %s  %d x %d, %d colors\012\000"	.section	.text.load_raw,"ax",@progbits	.align	2	.align	5	.globl	load_raw	.ent	load_raw	.type	load_raw, @functionload_raw:	.frame	$sp,88,$31		# vars= 32, regs= 5/0, args= 32, gp= 0	.mask	0x800f0000,-8	.fmask	0x00000000,0	.set	noreorder	.set	nomacro		addiu	$sp,$sp,-88	sw	$19,76($sp)	move	$19,$4	li	$4,20			# 0x14	sw	$31,80($sp)	sw	$18,72($sp)	sw	$16,64($sp)	jal	uc_malloc	sw	$17,68($sp)	lui	$5,%hi($LC0)	move	$4,$19	addiu	$5,$5,%lo($LC0)	jal	FS_FOpen	move	$16,$2	beq	$2,$0,$L2	move	$18,$2	addiu	$17,$sp,32	move	$4,$17	li	$5,32			# 0x20	li	$6,1			# 0x1	jal	FS_FRead	move	$7,$2	bne	$2,$0,$L16	lui	$5,%hi($LC1)$L4:	jal	FS_FClose	move	$4,$18$L2:	jal	uc_free	move	$4,$16	move	$16,$0	move	$2,$16$L20:	lw	$31,80($sp)	lw	$19,76($sp)	lw	$18,72($sp)	lw	$17,68($sp)	lw	$16,64($sp)	j	$31	addiu	$sp,$sp,88$L16:	move	$4,$17	addiu	$5,$5,%lo($LC1)	jal	memcmp	li	$6,6			# 0x6	bne	$2,$0,$L4	lbu	$4,40($sp)	lbu	$2,41($sp)	sll	$4,$4,8	addu	$4,$4,$2	sw	$4,8($16)	lbu	$2,42($sp)	lbu	$3,43($sp)	sll	$2,$2,8	addu	$2,$2,$3	sw	$2,12($16)	lbu	$3,44($sp)	lbu	$2,45($sp)	sll	$3,$3,8	addu	$3,$3,$2	beq	$4,$0,$L17	sw	$3,16($16)	lw	$8,16($16)	slt	$2,$8,257	beq	$2,$0,$L4	nop	lw	$2,8($16)$L21:	lui	$6,%hi($LC2)	sw	$2,16($sp)	lw	$3,12($16)	addiu	$6,$6,%lo($LC2)	move	$7,$19	li	$4,30			# 0x1e	li	$5,7			# 0x7	sw	$3,20($sp)	jal	mp_msg	sw	$8,24($sp)	lw	$2,16($16)	bne	$2,$0,$L18	nop	sw	$0,4($16)	li	$17,3			# 0x3$L12:	lw	$4,12($16)	lw	$2,8($16)	mul	$4,$4,$2	jal	uc_malloc	mul	$4,$17,$4	lw	$5,12($16)	lw	$3,8($16)	sw	$2,0($16)	mul	$5,$5,$3	move	$4,$2	mul	$5,$17,$5	li	$6,1			# 0x1	jal	FS_FRead	move	$7,$18	jal	FS_FClose	move	$4,$18	j	$L20	move	$2,$16$L17:	lbu	$2,60($sp)	lbu	$3,61($sp)	sll	$2,$2,8	addu	$2,$2,$3	lbu	$4,62($sp)	sll	$2,$2,8	lbu	$3,63($sp)	addu	$2,$2,$4	sll	$2,$2,8	lw	$8,16($16)	addu	$2,$2,$3	sw	$2,8($16)	slt	$2,$8,257	beq	$2,$0,$L4	nop	j	$L21	lw	$2,8($16)$L18:	sll	$4,$2,1	jal	uc_malloc	addu	$4,$4,$2	lw	$6,16($16)	sw	$2,4($16)	move	$4,$2	li	$5,3			# 0x3	jal	FS_FRead	move	$7,$18	j	$L12	li	$17,1			# 0x1	.set	macro	.set	reorder	.end	load_raw	.section	.rodata.str1.4	.align	2$LC3:	.ascii	"rt\000"	.align	2$LC4:	.ascii	"font: can't open file: %s\012\000"	.align	2$LC5:	.ascii	"%s doesn't look like a bitmap font description, ignoring"	.ascii	".\012\000"	.align	2$LC6:	.ascii	"font: Reading section: %s\012\000"	.align	2$LC7:	.ascii	"[files]\000"	.align	2$LC8:	.ascii	"font: Too many bitmaps defined.\012\000"	.align	2$LC9:	.ascii	"[fpath]\000"	.align	2$LC10:	.ascii	"alpha\000"	.align	2$LC11:	.ascii	"%s/%s\000"	.align	2$LC12:	.ascii	"/usr/local/share/mplayer/font\000"	.align	2$LC13:	.ascii	"Can't load font bitmap: %s\012\000"	.align	2$LC14:	.ascii	"bitmap\000"	.align	2$LC15:	.ascii	"[info]\000"	.align	2$LC16:	.ascii	"name\000"	.align	2$LC17:	.ascii	"descversion\000"	.align	2$LC18:	.ascii	"spacewidth\000"	.align	2$LC19:	.ascii	"charspace\000"	.align	2$LC20:	.ascii	"height\000"	.align	2$LC21:	.ascii	"[characters]\000"	.align	2$LC22:	.ascii	"error in font desc: end<start for char '%c'\012\000"	.align	2$LC23:	.ascii	"Syntax error in font desc: %s\000"	.align	2$LC24:	.ascii	"%s is empty or a directory, ignoring.\012\000"	.align	2$LC25:	.ascii	"font: Missing bitmap(s) for sub-font #%d\012\000"	.globl	__mulsf3	.globl	__fixsfsi	.globl	__extendsfdf2	.align	2$LC27:	.ascii	"font: resampling alpha by factor %5.3f (%d) \000"	.align	2$LC28:	.ascii	"DONE!\012\000"	.align	2$LC29:	.ascii	"Bitmap font %s loaded successfully! (%d chars)\012\000"	.section	.rodata.cst4,"aM",@progbits,4	.align	2$LC26:	.word	1132462080	.section	.text.read_font_desc,"ax",@progbits	.align	2	.align	5	.globl	read_font_desc	.ent	read_font_desc	.type	read_font_desc, @functionread_font_desc:	.frame	$sp,2232,$31		# vars= 2160, regs= 10/0, args= 32, gp= 0	.mask	0xc0ff0000,-4	.fmask	0x00000000,0	addiu	$sp,$sp,-2232	sw	$16,2192($sp)	li	$16,524288			# 0x80000	sw	$4,2232($sp)	ori	$4,$16,0x98	sw	$20,2208($sp)	sw	$31,2228($sp)	sw	$fp,2224($sp)	sw	$23,2220($sp)	sw	$22,2216($sp)	sw	$21,2212($sp)	sw	$19,2204($sp)	sw	$18,2200($sp)	sw	$17,2196($sp)	sw	$5,2236($sp)	.set	noreorder	.set	nomacro	jal	uc_malloc	sw	$6,2240($sp)	.set	macro	.set	reorder	.set	noreorder	.set	nomacro	beq	$2,$0,$L23	move	$20,$2	.set	macro	.set	reorder	andi	$4,$2,0x3	li	$2,4			# 0x4	ori	$3,$16,0x98	subu	$5,$2,$4	li	$2,2			# 0x2	addu	$6,$20,$3	.set	noreorder	.set	nomacro	beq	$5,$2,$L27	move	$3,$20	.set	macro	.set	reorder	li	$2,3			# 0x3	.set	noreorder	.set	nomacro	beq	$5,$2,$L28	li	$2,1			# 0x1	.set	macro	.set	reorder	beq	$5,$2,$L300$L25:	addiu	$5,$3,-4	move	$2,$0#APP	S32I2M xr1,$2#NO_APP	andi	$3,$3,0x1f	.set	noreorder	.set	nomacro	beq	$3,$0,$L328	addiu	$2,$6,-31	.set	macro	.set	reorder	li	$2,-32			# 0xffffffffffffffe0	and	$2,$5,$2	addiu	$4,$2,32	sltu	$3,$5,$4	.set	noreorder	.set	nomacro	beq	$3,$0,$L328	addiu	$2,$6,-31	.set	macro	.set	reorder$L282:#APP	S32SDI xr1,$5,4#NO_APP	sltu	$2,$5,$4	.set	noreorder	.set	nomacro	bne	$2,$0,$L282	addiu	$2,$6,-31	.set	macro	.set	reorder$L328:	li	$3,-32			# 0xffffffffffffffe0	and	$3,$2,$3	sltu	$4,$5,$3	.set	noreorder	.set	nomacro	beq	$4,$0,$L329	addiu	$2,$6,-4	.set	macro	.set	reorder	addiu	$2,$5,4$L330:#APP	pref 30,0($2)	S32SDI xr1,$5,4	S32SDI xr1,$5,4	S32SDI xr1,$5,4	S32SDI xr1,$5,4	S32SDI xr1,$5,4	S32SDI xr1,$5,4	S32SDI xr1,$5,4	S32SDI xr1,$5,4#NO_APP	sltu	$2,$5,$3	.set	noreorder	.set	nomacro	bne	$2,$0,$L330	addiu	$2,$5,4	.set	macro	.set	reorder	addiu	$2,$6,-4$L329:	li	$3,-4			# 0xfffffffffffffffc	and	$3,$2,$3	sltu	$4,$5,$3	beq	$4,$0,$L34$L284:#APP	S32SDI xr1,$5,4#NO_APP	sltu	$2,$5,$3	bne	$2,$0,$L284$L34:	andi	$3,$6,0x3	li	$2,2			# 0x2	.set	noreorder	.set	nomacro	beq	$3,$2,$L38	addiu	$4,$5,4	.set	macro	.set	reorder	li	$2,3			# 0x3	.set	noreorder	.set	nomacro	beq	$3,$2,$L39	li	$2,1			# 0x1	.set	macro	.set	reorder	beq	$3,$2,$L301$L36:	lui	$5,%hi($LC3)	lw	$4,2232($sp)	.set	noreorder	.set	nomacro	jal	FS_FOpen	addiu	$5,$5,%lo($LC3)	.set	macro	.set	reorder	.set	noreorder	.set	nomacro	beq	$2,$0,$L302	move	$23,$2	.set	macro	.set	reorder$L40:	.set	noreorder	.set	nomacro	jal	strlen	lw	$4,2232($sp)	.set	macro	.set	reorder	addiu	$4,$2,-8	.set	noreorder	.set	nomacro	jal	uc_malloc	addiu	$17,$2,-9	.set	macro	.set	reorder	.set	noreorder	.set	nomacro	beq	$2,$0,$L42	move	$16,$2	.set	macro	.set	reorder	lw	$5,2232($sp)	move	$4,$2	.set	noreorder	.set	nomacro	jal	strncpy	move	$6,$17	.set	macro	.set	reorder	addu	$3,$16,$17	sb	$0,0($3)$L42:	li	$2,2			# 0x2	li	$3,12			# 0xc	sw	$2,12($20)	li	$2,131072			# 0x20000	sw	$3,8($20)	ori	$2,$2,0x94	li	$3,393216			# 0x60000	sw	$16,4($20)	sw	$0,16($20)	addu	$4,$20,$2	ori	$9,$3,0x94	move	$5,$0	li	$6,-1	li	$8,-1			# 0xffffffffffffffff	li	$7,131072			# 0x20000$L44:	addu	$3,$5,$20	addu	$2,$3,$9	addiu	$5,$5,2	sw	$8,0($4)	sh	$6,0($2)	sh	$6,148($3)	.set	noreorder	.set	nomacro	bne	$5,$7,$L44	addiu	$4,$4,4	.set	macro	.set	reorder	li	$2,-1			# 0xffffffffffffffff	addiu	$3,$20,-4	sw	$0,2180($sp)	sw	$2,2176($sp)	li	$22,1			# 0x1	addiu	$fp,$sp,128	sw	$3,2184($sp)	sb	$0,64($sp)$L299:	move	$4,$fp$L322:	li	$5,1020			# 0x3fc	.set	noreorder	.set	nomacro	jal	fgets	move	$6,$23	.set	macro	.set	reorder	beq	$2,$0,$L303$L47:	.set	noreorder	.set	nomacro	beq	$22,$0,$L48	sb	$0,1148($sp)	.set	macro	.set	reorder	lbu	$3,128($sp)	beq	$3,$0,$L50	lbu	$4,129($sp)	li	$5,1			# 0x1	beq	$4,$5,$L50	li	$2,77			# 0x4d	.set	noreorder	.set	nomacro	beq	$3,$2,$L304	li	$2,31			# 0x1f	.set	macro	.set	reorder	.set	noreorder	.set	nomacro	beq	$3,$2,$L305	li	$2,139			# 0x8b	.set	macro	.set	reorder	.set	noreorder	.set	nomacro	beq	$3,$5,$L306	li	$2,102			# 0x66	.set	macro	.set	reorder$L55:	move	$22,$0$L48:	addiu	$17,$sp,1152	li	$18,1			# 0x1	move	$3,$fp	move	$4,$17	li	$9,32			# 0x20	move	$5,$0	li	$7,13			# 0xd	li	$6,10			# 0xa	li	$10,39			# 0x27	li	$11,34			# 0x22	li	$15,59			# 0x3b	li	$13,35			# 0x23	li	$14,9			# 0x9	li	$12,32			# 0x20	addiu	$8,$sp,36	sw	$17,32($sp)$L298:	lbu	$2,0($3)	.set	noreorder	.set	nomacro	beq	$2,$0,$L62	addiu	$3,$3,1	.set	macro	.set	reorder$L307:	beq	$2,$7,$L62	beq	$2,$6,$L62	bne	$5,$0,$L66	beq	$2,$10,$L61	beq	$2,$11,$L61	beq	$2,$15,$L62	beq	$2,$13,$L62	beq	$2,$14,$L72	beq	$2,$12,$L72$L74:	sb	$2,0($4)	move	$9,$2	lbu	$2,0($3)	addiu	$4,$4,1	.set	noreorder	.set	nomacro	bne	$2,$0,$L307	addiu	$3,$3,1	.set	macro	.set	reorder$L62:	.set	noreorder	.set	nomacro	beq	$17,$4,$L299	li	$2,1			# 0x1	.set	macro	.set	reorder	.set	noreorder	.set	nomacro	bne	$18,$2,$L78	sb	$0,0($4)	.set	macro	.set	reorder	lw	$16,32($sp)	li	$2,91			# 0x5b	lbu	$3,0($16)	beq	$3,$2,$L308$L78:	lui	$16,%hi($LC9)	.set	noreorder	.set	nomacro	jal	strlen	addiu	$4,$16,%lo($LC9)	.set	macro	.set	reorder	move	$6,$2	sltu	$2,$2,4	.set	noreorder	.set	nomacro	beq	$2,$0,$L95	lbu	$3,%lo($LC9)($16)	.set	macro	.set	reorder	lbu	$2,64($sp)	addiu	$5,$16,%lo($LC9)	.set	noreorder	.set	nomacro	beq	$6,$0,$L97	subu	$2,$2,$3	.set	macro	.set	reorder	.set	noreorder	.set	nomacro	bne	$2,$0,$L99	lbu	$2,65($sp)	.set	macro	.set	reorder	lbu	$3,1($5)	sltu	$4,$6,2	.set	noreorder	.set	nomacro	bne	$4,$0,$L97	subu	$2,$2,$3	.set	macro	.set	reorder	.set	noreorder	.set	nomacro	bne	$2,$0,$L99	lbu	$3,66($sp)	.set	macro	.set	reorder	lbu	$2,2($5)	subu	$2,$3,$2	li	$3,2			# 0x2	beq	$6,$3,$L97	.set	noreorder	.set	nomacro	bne	$2,$0,$L331	lui	$16,%hi($LC7)	.set	macro	.set	reorder	lbu	$3,3($5)	lbu	$2,67($sp)	subu	$2,$2,$3$L97:	.set	noreorder	.set	nomacro	bne	$2,$0,$L331	lui	$16,%hi($LC7)	.set	macro	.set	reorder	li	$2,1			# 0x1	.set	noreorder	.set	nomacro	bne	$18,$2,$L332	lui	$6,%hi($LC23)	.set	macro	.set	reorder	lw	$4,4($20)	beq	$4,$0,$L108	jal	uc_free$L108:	.set	noreorder	.set	nomacro	jal	uc_strdup	lw	$4,32($sp)	.set	macro	.set	reorder	sw	$2,4($20)	move	$4,$fp	li	$5,1020			# 0x3fc	.set	noreorder	.set	nomacro	jal	fgets	move	$6,$23	.set	macro	.set	reorder	bne	$2,$0,$L47$L303:	.set	noreorder	.set	nomacro	jal	FS_FClose	move	$4,$23	.set	macro	.set	reorder	li	$2,1			# 0x1	.set	noreorder	.set	nomacro	beq	$22,$2,$L238	lui	$6,%hi($LC24)	.set	macro	.set	reorder	lw	$2,2176($sp)	bltz	$2,$L240	lw	$17,20($20)	.set	noreorder	.set	nomacro	beq	$17,$0,$L246	move	$19,$0	.set	macro	.set	reorder	lw	$2,84($20)	.set	noreorder	.set	nomacro	beq	$2,$0,$L246	lui	$2,%hi($LC26)	.set	macro	.set	reorder	lw	$5,%lo($LC26)($2)	lw	$4,2236($sp)	.set	noreorder	.set	nomacro	jal	__mulsf3	move	$16,$20	.set	macro	.set	reorder	.set	noreorder	.set	nomacro	jal	__fixsfsi	move	$4,$2	.set	macro	.set	reorder	lw	$4,2236($sp)	.set	noreorder	.set	nomacro	jal	__extendsfdf2	move	$18,$2	.set	macro	.set	reorder	move	$22,$2	move	$23,$3	move	$19,$0	lui	$21,%hi($LC27)	lui	$fp,%hi($LC28)$L248:	lw	$3,12($17)	lw	$2,8($17)	li	$4,30			# 0x1e	mul	$17,$2,$3	li	$5,7			# 0x7	addiu	$6,$21,%lo($LC27)	sw	$22,16($sp)	sw	$23,20($sp)	.set	noreorder	.set	nomacro	jal	mp_msg	sw	$18,24($sp)	.set	macro	.set	reorder	.set	noreorder	.set	nomacro	blez	$17,$L249	move	$6,$0	.set	macro	.set	reorder	li	$7,255			# 0xff$L251:	lw	$3,20($16)	lw	$4,84($16)	lw	$5,0($3)	lw	$2,0($4)	addu	$5,$6,$5	lbu	$3,0($5)	addu	$2,$2,$6	mul	$3,$3,$18	lbu	$4,0($2)	sra	$3,$3,8	subu	$3,$7,$3	addu	$2,$4,$3	slt	$2,$2,256	subu	$4,$7,$4	movz	$3,$4,$2	slt	$2,$3,252	.set	noreorder	.set	nomacro	blez	$3,$L256	li	$4,1			# 0x1	.set	macro	.set	reorder	.set	noreorder	.set	nomacro	beq	$2,$0,$L256	move	$4,$0	.set	macro	.set	reorder	andi	$4,$3,0x00ff$L256:	addiu	$6,$6,1	.set	noreorder	.set	nomacro	bne	$17,$6,$L251	sb	$4,0($5)	.set	macro	.set	reorder$L249:	li	$4,30			# 0x1e	li	$5,7			# 0x7	.set	noreorder	.set	nomacro	jal	mp_msg	addiu	$6,$fp,%lo($LC28)	.set	macro	.set	reorder	lw	$2,16($20)	.set	noreorder	.set	nomacro	bne	$2,$0,$L333	lw	$3,2176($sp)	.set	macro	.set	reorder	lw	$2,20($16)	lw	$3,12($2)	sw	$3,16($20)	lw	$3,2176($sp)$L333:	addiu	$19,$19,1	slt	$2,$3,$19	bne	$2,$0,$L240	lw	$17,24($16)	.set	noreorder	.set	nomacro	beq	$17,$0,$L334	lui	$6,%hi($LC25)	.set	macro	.set	reorder	lw	$2,88($16)	.set	noreorder	.set	nomacro	bne	$2,$0,$L248	addiu	$16,$16,4	.set	macro	.set	reorder$L246:	lui	$6,%hi($LC25)$L334:	addiu	$6,$6,%lo($LC25)	move	$7,$19	li	$4,30			# 0x1e	.set	noreorder	.set	nomacro	jal	mp_msg	li	$5,1			# 0x1	.set	macro	.set	reorder$L23:	lw	$4,4($20)$L321:	beq	$4,$0,$L269	jal	uc_free$L269:	lw	$4,0($20)	beq	$4,$0,$L271	jal	uc_free$L271:	move	$4,$20	.set	noreorder	.set	nomacro	jal	uc_free	move	$20,$0	.set	macro	.set	reorder	move	$2,$20	lw	$31,2228($sp)	lw	$fp,2224($sp)	lw	$23,2220($sp)	lw	$22,2216($sp)	lw	$21,2212($sp)	lw	$20,2208($sp)	lw	$19,2204($sp)	lw	$18,2200($sp)

⌨️ 快捷键说明

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