⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lcd2_frame_buffer.lst

📁 au1200下的boot代码
💻 LST
📖 第 1 页 / 共 5 页
字号:
 186:/mnt/hgfs/boot/booter/include/pixel.h **** 		16,					//bpp 187:/mnt/hgfs/boot/booter/include/pixel.h **** 		16,					//memory_width 188:/mnt/hgfs/boot/booter/include/pixel.h **** 		0xF800,				//r_mask 189:/mnt/hgfs/boot/booter/include/pixel.h **** 		0x07C0,				//g_mask 190:/mnt/hgfs/boot/booter/include/pixel.h **** 		0x003E,				//b_mask 191:/mnt/hgfs/boot/booter/include/pixel.h **** 		0x0001,				//a_mask 192:/mnt/hgfs/boot/booter/include/pixel.h **** 		11,					//r_shift 193:/mnt/hgfs/boot/booter/include/pixel.h **** 		6,					//g_shift 194:/mnt/hgfs/boot/booter/include/pixel.h **** 		1,					//b_shift 195:/mnt/hgfs/boot/booter/include/pixel.h **** 		0,					//a_shift 196:/mnt/hgfs/boot/booter/include/pixel.h **** 		3,					//r_scale 197:/mnt/hgfs/boot/booter/include/pixel.h **** 		3,					//g_scale 198:/mnt/hgfs/boot/booter/include/pixel.h **** 		3,					//b_scale 199:/mnt/hgfs/boot/booter/include/pixel.h **** 		7					//a_scale 200:/mnt/hgfs/boot/booter/include/pixel.h **** 	}, 201:/mnt/hgfs/boot/booter/include/pixel.h **** 	{	//12: 24bpp (0/8/8/8) 202:/mnt/hgfs/boot/booter/include/pixel.h **** 		PF_24BPP_0_8_8_8,	//pixel_format 203:/mnt/hgfs/boot/booter/include/pixel.h **** 		0,					//pixel_ordering 204:/mnt/hgfs/boot/booter/include/pixel.h **** 		24,					//bpp 205:/mnt/hgfs/boot/booter/include/pixel.h **** 		32,					//memory_width 206:/mnt/hgfs/boot/booter/include/pixel.h **** 		0x00FF0000,			//r_mask 207:/mnt/hgfs/boot/booter/include/pixel.h **** 		0x0000FF00,			//g_mask 208:/mnt/hgfs/boot/booter/include/pixel.h **** 		0x000000FF,			//b_mask 209:/mnt/hgfs/boot/booter/include/pixel.h **** 		0x00000000,			//a_mask 210:/mnt/hgfs/boot/booter/include/pixel.h **** 		16,					//r_shift 211:/mnt/hgfs/boot/booter/include/pixel.h **** 		8,					//g_shift 212:/mnt/hgfs/boot/booter/include/pixel.h **** 		0,					//b_shift 213:/mnt/hgfs/boot/booter/include/pixel.h **** 		0,					//a_shift 214:/mnt/hgfs/boot/booter/include/pixel.h **** 		0,					//r_scale 215:/mnt/hgfs/boot/booter/include/pixel.h **** 		0,					//g_scale 216:/mnt/hgfs/boot/booter/include/pixel.h **** 		0,					//b_scale 217:/mnt/hgfs/boot/booter/include/pixel.h **** 		8					//a_scale 218:/mnt/hgfs/boot/booter/include/pixel.h **** 	}, 219:/mnt/hgfs/boot/booter/include/pixel.h **** 	{	//13: 32bpp w/ alpha (8/8/8/8) 220:/mnt/hgfs/boot/booter/include/pixel.h **** 		PF_32BPP,		//pixel_format 221:/mnt/hgfs/boot/booter/include/pixel.h **** 		0,				//pixel_ordering 222:/mnt/hgfs/boot/booter/include/pixel.h **** 		32,				//bpp 223:/mnt/hgfs/boot/booter/include/pixel.h **** 		32,				//memory_width 224:/mnt/hgfs/boot/booter/include/pixel.h **** 		0x00FF0000,		//r_mask 225:/mnt/hgfs/boot/booter/include/pixel.h **** 		0x0000FF00,		//g_mask 226:/mnt/hgfs/boot/booter/include/pixel.h **** 		0x000000FF,		//b_mask 227:/mnt/hgfs/boot/booter/include/pixel.h **** 		0xFF000000,		//a_mask 228:/mnt/hgfs/boot/booter/include/pixel.h **** 		16,				//r_shift 229:/mnt/hgfs/boot/booter/include/pixel.h **** 		8,				//g_shift 230:/mnt/hgfs/boot/booter/include/pixel.h **** 		0,				//b_shift 231:/mnt/hgfs/boot/booter/include/pixel.h **** 		24,				//a_shift 232:/mnt/hgfs/boot/booter/include/pixel.h **** 		0,				//r_scale 233:/mnt/hgfs/boot/booter/include/pixel.h **** 		0,				//g_scale 234:/mnt/hgfs/boot/booter/include/pixel.h **** 		0,				//b_scale 235:/mnt/hgfs/boot/booter/include/pixel.h **** 		0				//a_scale 236:/mnt/hgfs/boot/booter/include/pixel.h **** 	}, 237:/mnt/hgfs/boot/booter/include/pixel.h **** 	{	//14: Palettized Pixels 238:/mnt/hgfs/boot/booter/include/pixel.h **** 		PF_8BPP,		//pixel_format 239:/mnt/hgfs/boot/booter/include/pixel.h **** 		0,				//pixel_ordering 240:/mnt/hgfs/boot/booter/include/pixel.h **** 		8,				//bpp 241:/mnt/hgfs/boot/booter/include/pixel.h **** 		8,				//memory_width 242:/mnt/hgfs/boot/booter/include/pixel.h **** 		0x00,			//r_maskGAS LISTING /tmp/cc7wtJ5I.s 			page 7 243:/mnt/hgfs/boot/booter/include/pixel.h **** 		0x00,			//g_mask 244:/mnt/hgfs/boot/booter/include/pixel.h **** 		0x00,			//b_mask 245:/mnt/hgfs/boot/booter/include/pixel.h **** 		0xFF,			//a_mask 246:/mnt/hgfs/boot/booter/include/pixel.h **** 		0,				//r_shift 247:/mnt/hgfs/boot/booter/include/pixel.h **** 		0,				//g_shift 248:/mnt/hgfs/boot/booter/include/pixel.h **** 		0,				//b_shift 249:/mnt/hgfs/boot/booter/include/pixel.h **** 		0,				//a_shift 250:/mnt/hgfs/boot/booter/include/pixel.h **** 		0,				//r_scale 251:/mnt/hgfs/boot/booter/include/pixel.h **** 		0,				//g_scale 252:/mnt/hgfs/boot/booter/include/pixel.h **** 		0,				//b_scale 253:/mnt/hgfs/boot/booter/include/pixel.h **** 		0				//a_scale 254:/mnt/hgfs/boot/booter/include/pixel.h **** 	}, 255:/mnt/hgfs/boot/booter/include/pixel.h **** 	{	//15: Gamma RAM (0/8/8/8) 256:/mnt/hgfs/boot/booter/include/pixel.h **** 		PF_GAMMA,		//pixel_format 257:/mnt/hgfs/boot/booter/include/pixel.h **** 		0,				//pixel_ordering 258:/mnt/hgfs/boot/booter/include/pixel.h **** 		32,				//bpp 259:/mnt/hgfs/boot/booter/include/pixel.h **** 		32,				//memory_width 260:/mnt/hgfs/boot/booter/include/pixel.h **** 		0x00FF0000,		//r_mask 261:/mnt/hgfs/boot/booter/include/pixel.h **** 		0x0000FF00,		//g_mask 262:/mnt/hgfs/boot/booter/include/pixel.h **** 		0x000000FF,		//b_mask 263:/mnt/hgfs/boot/booter/include/pixel.h **** 		0xFF000000,		//a_mask 264:/mnt/hgfs/boot/booter/include/pixel.h **** 		16,				//r_shift 265:/mnt/hgfs/boot/booter/include/pixel.h **** 		8,				//g_shift 266:/mnt/hgfs/boot/booter/include/pixel.h **** 		0,				//b_shift 267:/mnt/hgfs/boot/booter/include/pixel.h **** 		24,				//a_shift 268:/mnt/hgfs/boot/booter/include/pixel.h **** 		0,				//r_scale 269:/mnt/hgfs/boot/booter/include/pixel.h **** 		0,				//g_scale 270:/mnt/hgfs/boot/booter/include/pixel.h **** 		0,				//b_scale 271:/mnt/hgfs/boot/booter/include/pixel.h **** 		0				//a_scale 272:/mnt/hgfs/boot/booter/include/pixel.h **** 	} 273:/mnt/hgfs/boot/booter/include/pixel.h **** }; 274:/mnt/hgfs/boot/booter/include/pixel.h ****  275:/mnt/hgfs/boot/booter/include/pixel.h **** //Scale, Shift, Mask pixel 276:/mnt/hgfs/boot/booter/include/pixel.h **** static unsigned int __inline pixel_convert(const PIXEL_INFO info, unsigned char a, unsigned char r, 277:/mnt/hgfs/boot/booter/include/pixel.h **** {  77              		.loc 2 277 0  78 0054 2138A000 		move	$7,$5  79 0058 1000A827 		addiu	$8,$sp,16  80 005c 4000A924 		addiu	$9,$5,64  81              	$L12:  82 0060 0000E28C 		lw	$2,0($7)  83 0064 0400E38C 		lw	$3,4($7)  84 0068 0800E48C 		lw	$4,8($7)  85 006c 0C00E58C 		lw	$5,12($7)  86 0070 1000E724 		addiu	$7,$7,16  87 0074 000002AD 		sw	$2,0($8)  88 0078 040003AD 		sw	$3,4($8)  89 007c 080004AD 		sw	$4,8($8)  90 0080 0C0005AD 		sw	$5,12($8)  91 0084 F6FFE914 		bne	$7,$9,$L12  92 0088 10000825 		addiu	$8,$8,16  93              	  94              	$LBB3: 278:/mnt/hgfs/boot/booter/include/pixel.h **** 	return	(((a >> info.a_scale) << info.a_shift) & info.a_mask)  95              		.loc 2 278 0  96 008c 4C00A78F 		lw	$7,76($sp)  97 0090 3000A38F 		lw	$3,48($sp)GAS LISTING /tmp/cc7wtJ5I.s 			page 8  98 0094 3C00A28F 		lw	$2,60($sp)  99 0098 0738E600 		sra	$7,$6,$7 100 009c 4000A68F 		lw	$6,64($sp) 101 00a0 04384700 		sll	$7,$7,$2 102 00a4 4400A58F 		lw	$5,68($sp) 103 00a8 0730CB00 		sra	$6,$11,$6 104 00ac 04306600 		sll	$6,$6,$3 105 00b0 2000A38F 		lw	$3,32($sp) 106 00b4 2C00A28F 		lw	$2,44($sp) 107 00b8 3400A48F 		lw	$4,52($sp) 108 00bc 2430C300 		and	$6,$6,$3 109 00c0 2400A38F 		lw	$3,36($sp) 110 00c4 2438E200 		and	$7,$7,$2 111 00c8 0728AC00 		sra	$5,$12,$5 112 00cc 4800A28F 		lw	$2,72($sp) 113 00d0 04288500 		sll	$5,$5,$4 114 00d4 3800A48F 		lw	$4,56($sp) 115 00d8 2428A300 		and	$5,$5,$3 116 00dc 2800A38F 		lw	$3,40($sp) 117 00e0 07104D00 		sra	$2,$13,$2 118              	$LBE3: 119              	$LBE2:  21:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** 	DPRINTF("FB: %X, aRGB(%d, %d, %d, %d)\n", address, a, r, g, b);  22:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** 	int x, y;  23:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** 	uint32 pixel, packed_pixels;  24:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c ****   25:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** 	//Scale, Shift, Mask pixel  26:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** 	pixel = pixel_convert(info->pixel_info, a, r, g, b);  27:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c ****   28:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** 	switch(info->pixel_info.memory_width) 120              		.loc 1 28 0 121 00e4 0C00488D 		lw	$8,12($10) 122              	$LBB4: 123              	$LBB5: 124              		.loc 2 278 0 125 00e8 04108200 		sll	$2,$2,$4 126 00ec 2538E600 		or	$7,$7,$6 127 00f0 24104300 		and	$2,$2,$3 128 00f4 2538E500 		or	$7,$7,$5 129              	$LBE5: 130              	$LBE4: 131              		.loc 1 28 0 132 00f8 10000324 		li	$3,16			# 0x10 133              		.loc 2 278 0 134              		.loc 1 28 0 135 00fc 26000311 		beq	$8,$3,$L16 136 0100 2520E200 		or	$4,$7,$2 137              	 138 0104 11000229 		slt	$2,$8,17 139 0108 12004010 		beq	$2,$0,$L18 140 010c 20000224 		li	$2,32			# 0x20 141              	 142 0110 08000224 		li	$2,8			# 0x8  29:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** 	{  30:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** 		case 8:		packed_pixels = pixel | (pixel << 8) | (pixel << 16) | (pixel << 24); break; 143              		.loc 1 30 0 144              		.loc 1 28 0GAS LISTING /tmp/cc7wtJ5I.s 			page 9 145 0114 30000211 		beq	$8,$2,$L15 146 0118 00120400 		sll	$2,$4,8 147              	 148              	$L14:  31:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** 		case 16:	packed_pixels = pixel | (pixel << 16); break;  32:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** 		case 32:	packed_pixels = pixel; break;  33:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** 	}  34:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c ****   35:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** 	fb_fill_data(address, packed_pixels, (info->pixel_info.memory_width * info->width * info->height)  149              		.loc 1 35 0 150 011c 4000468D 		lw	$6,64($10) 151 0120 4400428D 		lw	$2,68($10) 152 0124 2120E001 		move	$4,$15 153 0128 02300671 		mul	$6,$8,$6 154 012c 2128C001 		move	$5,$14 155 0130 0230C270 		mul	$6,$6,$2 156 0134 0700C324 		addiu	$3,$6,7 157 0138 0000C228 		slt	$2,$6,0 158 013c 0B306200 		movn	$6,$3,$2 159 0140 0000000C 		jal	fb_fill_data 160 0144 C3300600 		sra	$6,$6,3 161              	 162 0148 5000BF8F 		lw	$31,80($sp) 163 014c 0800E003 		j	$31 164 0150 5800BD27 		addiu	$sp,$sp,88 165              	 166              	$L18: 167              		.loc 1 28 0 168 0154 F1FF0215 		bne	$8,$2,$L14 169 0158 00000000 		nop 170              	 171              		.loc 1 35 0 172 015c 4000468D 		lw	$6,64($10) 173 0160 4400428D 		lw	$2,68($10) 174              		.loc 1 32 0 175 0164 21708000 		move	$14,$4 176              		.loc 1 35 0 177 0168 02300671 		mul	$6,$8,$6 178 016c 2120E001 		move	$4,$15 179 0170 2128C001 		move	$5,$14 180 0174 0230C270 		mul	$6,$6,$2 181 0178 0700C324 		addiu	$3,$6,7 182 017c 0000C228 		slt	$2,$6,0 183 0180 0B306200 		movn	$6,$3,$2 184 0184 0000000C 		jal	fb_fill_data 185 0188 C3300600 		sra	$6,$6,3 186              	 187 018c 5000BF8F 		lw	$31,80($sp) 188 0190 0800E003 		j	$31 189 0194 5800BD27 		addiu	$sp,$sp,88 190              	 191              	$L16: 192              		.loc 1 31 0 193 0198 00140400 		sll	$2,$4,16 194 019c 25704400 		or	$14,$2,$4 195              	$L22: 196              		.loc 1 35 0GAS LISTING /tmp/cc7wtJ5I.s 			page 10 197 01a0 4000468D 		lw	$6,64($10) 198 01a4 4400428D 		lw	$2,68($10) 199 01a8 2120E001 		move	$4,$15 200 01ac 02300671 		mul	$6,$8,$6 201 01b0 2128C001 		move	$5,$14 202 01b4 0230C270 		mul	$6,$6,$2 203 01b8 0700C324 		addiu	$3,$6,7 204 01bc 0000C228 		slt	$2,$6,0 205 01c0 0B306200 		movn	$6,$3,$2 206 01c4 0000000C 		jal	fb_fill_data 207 01c8 C3300600 		sra	$6,$6,3 208              	 209 01cc 5000BF8F 		lw	$31,80($sp) 210 01d0 0800E003 		j	$31 211 01d4 5800BD27 		addiu	$sp,$sp,88 212              	 213              	$L15: 214              		.loc 1 30 0 215 01d8 25104400 		or	$2,$2,$4 216 01dc 001C0400 		sll	$3,$4,16 217 01e0 25104300 		or	$2,$2,$3 218 01e4 00260400 		sll	$4,$4,24 219              		.loc 1 31 0 220 01e8 68000008 		j	$L22 221 01ec 25704400 		or	$14,$2,$4 222              	 223              		.set	macro 224              		.set	reorder 225              	$LFE4: 226              		.end	fb_fill 227              		.align	2 228              		.globl	fb_fill_transparency_gradient 229              		.ent	fb_fill_transparency_gradient 230              		.type	fb_fill_transparency_gradient, @function 231              	fb_fill_transparency_gradient: 232              	$LFB5:  36:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** }  37:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c ****   38:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** //hmm, this should probably be deprecated by the next function.  Although this creates a corner to   39:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** void fb_fill_transparency_gradient(FRAME_BUFFER_ADDRESS address, const FRAME_BUFFER_INFO* info, uin  40:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** { 233              		.loc 1 40 0 234              		.frame	$sp,88,$31		# vars= 64, regs= 5/0, args= 0, gp= 0 235              		.mask	0x001f0000,-8 236              		.fmask	0x00000000,0 237              		.set	noreorder 238              		.set	nomacro 239              		 240 01f0 A8FFBD27 		addiu	$sp,$sp,-88 241              	$LCFI2: 242 01f4 4800B2AF 		sw	$18,72($sp) 243              	$LCFI3: 244 01f8 4400B1AF 		sw	$17,68($sp) 245              	$LCFI4: 246 01fc 5000B4AF 		sw	$20,80($sp) 247              	$LCFI5: 248 0200 4C00B3AF 		sw	$19,76($sp)GAS LISTING /tmp/cc7wtJ5I.s 			page 11

⌨️ 快捷键说明

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