vo_fbdev_ucos.s

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

S
527
字号
.file	1 "vo_fbdev_ucos.c".section .mdebug.abi32.previous.section	.text.draw_osd,"ax",@progbits.align	2.align	5.ent	draw_osd.type	draw_osd, @functiondraw_osd:.frame	$sp,0,$31		# vars= 0, regs= 0/0, args= 0, gp= 0.mask	0x00000000,0.fmask	0x00000000,0.set	noreorder.set	nomacroj	$31nop.set	macro.set	reorder.end	draw_osd.section	.text.flip_page,"ax",@progbits.align	2.align	5.ent	flip_page.type	flip_page, @functionflip_page:.frame	$sp,0,$31		# vars= 0, regs= 0/0, args= 0, gp= 0.mask	0x00000000,0.fmask	0x00000000,0.set	noreorder.set	nomacroj	$31nop.set	macro.set	reorder.end	flip_page.section	.text.draw_frame,"ax",@progbits.align	2.align	5.ent	draw_frame.type	draw_frame, @functiondraw_frame:.frame	$sp,0,$31		# vars= 0, regs= 0/0, args= 0, gp= 0.mask	0x00000000,0.fmask	0x00000000,0.set	noreorder.set	nomacroj	$31move	$2,$0.set	macro.set	reorder.end	draw_frame.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	nomacroj	$31nop.set	macro.set	reorder.end	uninit.section	.text.check_events,"ax",@progbits.align	2.align	5.ent	check_events.type	check_events, @functioncheck_events:.frame	$sp,0,$31		# vars= 0, regs= 0/0, args= 0, gp= 0.mask	0x00000000,0.fmask	0x00000000,0.set	noreorder.set	nomacroj	$31nop.set	macro.set	reorder.end	check_events.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	nomacrolui	$2,%hi(pre_init_err)sw	$0,%lo(pre_init_err)($2)j	$31move	$2,$0.set	macro.set	reorder.end	preinit.section	.text.control,"ax",@progbits.align	2.align	5.ent	control.type	control, @functioncontrol:.frame	$sp,0,$31		# vars= 0, regs= 0/0, args= 0, gp= 0.mask	0x00000000,0.fmask	0x00000000,0.set	noreorder.set	nomacroli	$2,2			# 0x2sw	$6,8($sp)sw	$7,12($sp)beq	$4,$2,$L15move	$6,$5li	$2,9			# 0x9beq	$4,$2,$L16li	$3,-3			# 0xfffffffffffffffd$L17:j	$31move	$2,$3$L15:lw	$5,0($5)li	$3,-256			# 0xffffffffffffff00li	$2,1111949312			# 0x42470000and	$3,$5,$3ori	$2,$2,0x5200beq	$3,$2,$L27andi	$3,$5,0xff$L18:move	$3,$0$L28:j	$31move	$2,$3$L16:lw	$4,4($5)li	$3,-193			# 0xffffffffffffff3fli	$2,1111949312			# 0x42470000and	$4,$4,$3ori	$2,$2,0x5220bne	$4,$2,$L28move	$3,$0lbu	$2,2($5)addiu	$2,$2,-1andi	$2,$2,0x00ffsltu	$2,$2,2beq	$2,$0,$L28noplhu	$7,0($5)andi	$2,$7,0x300bne	$2,$0,$L28noplui	$2,%hi(center)lui	$3,%hi(fb_line_len)lw	$5,%lo(center)($2)lw	$4,%lo(fb_line_len)($3)ori	$2,$7,0x2000li	$3,1			# 0x1sh	$2,0($6)sw	$5,32($6)j	$L17sw	$4,48($6)$L27:li	$2,32			# 0x20bne	$3,$2,$L18li	$3,1027			# 0x403j	$31move	$2,$3.set	macro.set	reorder.end	control.section	.text.draw_slice,"ax",@progbits.align	2.align	5.ent	draw_slice.type	draw_slice, @functiondraw_slice:.frame	$sp,56,$31		# vars= 0, regs= 10/0, args= 16, gp= 0.mask	0xc0ff0000,-4.fmask	0x00000000,0addiu	$sp,$sp,-56sw	$23,44($sp)sw	$22,40($sp)sw	$18,24($sp)sw	$31,52($sp)sw	$fp,48($sp)sw	$21,36($sp)sw	$20,32($sp)sw	$19,28($sp)sw	$17,20($sp)sw	$16,16($sp)lui	$22,%hi(fb_line_len)lui	$2,%hi(center)move	$23,$5lw	$17,0($4)move	$18,$7lw	$5,%lo(center)($2).set	noreorder.set	nomacrobeq	$7,$0,$L30lw	$4,%lo(fb_line_len)($22).set	macro.set	reorderlw	$3,76($sp)lw	$2,72($sp)mul	$7,$4,$3sll	$19,$6,2sll	$2,$2,2addu	$3,$7,$2sltu	$20,$19,32li	$2,-32			# 0xffffffffffffffe0addu	$16,$3,$5and	$fp,$19,$2.set	noreorder.set	nomacrobne	$20,$0,$L33andi	$21,$19,0x3.set	macro.set	reorder$L52:andi	$2,$16,0x3.set	noreorder.set	nomacrobne	$2,$0,$L54move	$4,$16.set	macro.set	reorderandi	$2,$17,0x3.set	noreorder.set	nomacrobne	$2,$0,$L55move	$5,$17.set	macro.set	reorderaddiu	$5,$16,-4addu	$3,$5,$fpsltu	$2,$5,$3.set	noreorder.set	nomacrobeq	$2,$0,$L37addiu	$4,$17,-4.set	macro.set	reorder$L47:#APP.word	0b01110000100000000000010001010100	#S32LDI XR1,$4,4.word	0b01110000100000000000010010010100	#S32LDI XR2,$4,4.word	0b01110000100000000000010011010100	#S32LDI XR3,$4,4.word	0b01110000100000000000010100010100	#S32LDI XR4,$4,4.word	0b01110000100000000000010101010100	#S32LDI XR5,$4,4.word	0b01110000100000000000010110010100	#S32LDI XR6,$4,4.word	0b01110000100000000000010111010100	#S32LDI XR7,$4,4.word	0b01110000100000000000011000010100	#S32LDI XR8,$4,4.word	0b01110000101000000000010001010101	#S32SDI XR1,$5,4.word	0b01110000101000000000010010010101	#S32SDI XR2,$5,4.word	0b01110000101000000000010011010101	#S32SDI XR3,$5,4.word	0b01110000101000000000010100010101	#S32SDI XR4,$5,4.word	0b01110000101000000000010101010101	#S32SDI XR5,$5,4.word	0b01110000101000000000010110010101	#S32SDI XR6,$5,4.word	0b01110000101000000000010111010101	#S32SDI XR7,$5,4.word	0b01110000101000000000011000010101	#S32SDI XR8,$5,4#NO_APPsltu	$2,$5,$3bne	$2,$0,$L47$L37:andi	$2,$19,0x1caddu	$6,$3,$2sltu	$3,$5,$6.set	noreorder.set	nomacrobeq	$3,$0,$L56li	$2,2			# 0x2.set	macro.set	reorder$L48:#APP.word	0b01110000100000000000010001010100	#S32LDI XR1,$4,4.word	0b01110000101000000000010001010101	#S32SDI XR1,$5,4#NO_APPsltu	$2,$5,$6.set	noreorder.set	nomacrobne	$2,$0,$L48li	$2,2			# 0x2.set	macro.set	reorder$L56:.set	noreorder.set	nomacrobeq	$21,$2,$L43li	$2,3			# 0x3.set	macro.set	reorder.set	noreorder.set	nomacrobeq	$21,$2,$L44li	$2,1			# 0x1.set	macro.set	reorderbeq	$21,$2,$L51$L41:addiu	$18,$18,-1lw	$2,%lo(fb_line_len)($22).set	noreorder.set	nomacrobeq	$18,$0,$L30lw	$3,0($23).set	macro.set	reorder$L53:addu	$16,$16,$2.set	noreorder.set	nomacrobeq	$20,$0,$L52addu	$17,$17,$3.set	macro.set	reorder$L33:move	$4,$16$L54:move	$5,$17$L55:move	$6,$19.set	noreorder.set	nomacrojal	memcpyaddiu	$18,$18,-1.set	macro.set	reorderlw	$2,%lo(fb_line_len)($22).set	noreorder.set	nomacrobne	$18,$0,$L53lw	$3,0($23).set	macro.set	reorder$L30:lw	$31,52($sp)lw	$fp,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)move	$2,$0.set	noreorder.set	nomacroj	$31addiu	$sp,$sp,56.set	macro.set	reorder$L43:lbu	$2,4($4)sb	$2,4($5)lbu	$3,5($4).set	noreorder.set	nomacroj	$L41sb	$3,5($5).set	macro.set	reorder$L44:lbu	$2,4($4)sb	$2,4($5)lbu	$3,5($4)sb	$3,5($5)lbu	$2,6($4).set	noreorder.set	nomacroj	$L41sb	$2,6($5).set	macro.set	reorder$L51:lbu	$2,4($4).set	noreorder.set	nomacroj	$L41sb	$2,4($5).set	macro.set	reorder.end	draw_slice.section	.text.config,"ax",@progbits.align	2.align	5.ent	config.type	config, @functionconfig:.frame	$sp,32,$31		# vars= 0, regs= 3/0, args= 16, gp= 0.mask	0x80030000,-8.fmask	0x00000000,0.set	noreorder.set	nomacroaddiu	$sp,$sp,-32lui	$3,%hi(image_height)lui	$2,%hi(image_width)sw	$31,24($sp)sw	$17,20($sp)sw	$16,16($sp)sw	$5,%lo(image_height)($3)jal	lcd_get_widthsw	$4,%lo(image_width)($2)lui	$17,%hi(fb_line_len)sll	$2,$2,2jal	lcd_get_framesw	$2,%lo(fb_line_len)($17)lw	$3,%lo(fb_line_len)($17)jal	lcd_get_heightaddu	$16,$2,$3srl	$2,$2,1addu	$16,$16,$2lui	$2,%hi(center)sw	$16,%lo(center)($2)lw	$31,24($sp)lw	$17,20($sp)lw	$16,16($sp)move	$2,$0j	$31addiu	$sp,$sp,32.set	macro.set	reorder.end	config.globl	video_out_fbucos.data.align	2.type	video_out_fbucos, @object.size	video_out_fbucos, 40video_out_fbucos:.word	info.word	preinit.word	config.word	control.word	draw_frame.word	draw_slice.word	draw_osd.word	flip_page.word	check_events.word	uninit.align	2.type	pre_init_err, @object.size	pre_init_err, 4pre_init_err:.word	-2.local	image_width.comm	image_width,4,4.local	image_height.comm	image_height,4,4.local	fb_line_len.comm	fb_line_len,4,4.local	center.comm	center,4,4.section	.rodata.str1.4,"aMS",@progbits,1.align	2$LC0:.ascii	"Null video output\000".align	2$LC1:.ascii	"null\000".align	2$LC2:.ascii	"Aaron Holtzman <aholtzma@ess.engr.uvic.ca>\000".subsection	-1.align	2$LC3:.ascii	"\000".data.align	2.type	info, @object.size	info, 16info:.word	$LC0.word	$LC1.word	$LC2.word	$LC3.ident	"GCC: (GNU) 4.1.2"

⌨️ 快捷键说明

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