📄 lcd2_frame_buffer.lst
字号:
GAS LISTING /tmp/cc7wtJ5I.s page 1 1 .section .mdebug.abi32 2 .previous 3 .section .debug_abbrev,"",@progbits 4 $Ldebug_abbrev0: 5 .section .debug_info,"",@progbits 6 $Ldebug_info0: 7 .section .debug_line,"",@progbits 8 $Ldebug_line0: 9 0000 76030000 .text 9 0200CC00 9 00000101 9 FB0E0A00 9 01010101 10 $Ltext0: 11 .align 2 12 .globl fb_fill_data 13 .ent fb_fill_data 14 .type fb_fill_data, @function 15 fb_fill_data: 16 $LFB3: 17 .file 1 "/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c" 1:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** //Frame Buffer manipulation routines 2:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** 3:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** #include "example.h" 4:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** #include "frame_buffer.h" 5:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** #include "image.h" 6:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** 7:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** void fb_fill_data(FRAME_BUFFER_ADDRESS address, uint32 data, int bytes) 8:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** { 18 .loc 1 8 0 19 .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0 20 .mask 0x00000000,0 21 .fmask 0x00000000,0 22 .set noreorder 23 .set nomacro 24 9:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** DPRINTF("FB: %X, %X %d bytes\n", address, data, bytes); 10:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** int i; 11:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** int words = bytes / 4; 25 .loc 1 11 0 26 0000 0300C324 addiu $3,$6,3 27 0004 0000C228 slt $2,$6,0 28 0008 0B306200 movn $6,$3,$2 29 000c 83300600 sra $6,$6,2 12:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** 13:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** for(i = 0; i < words; ++i) 30 .loc 1 13 0 31 0010 0600C018 blez $6,$L10 32 0014 21180000 move $3,$0 33 34 $L6: 35 0018 01006324 addiu $3,$3,1 36 001c 2A106600 slt $2,$3,$6 14:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** { 15:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** address[i] = data; 37 .loc 1 15 0 38 0020 000085AC sw $5,0($4)GAS LISTING /tmp/cc7wtJ5I.s page 2 39 .loc 1 13 0 40 0024 FCFF4014 bne $2,$0,$L6 41 0028 04008424 addiu $4,$4,4 42 43 $L10: 44 002c 0800E003 j $31 45 0030 00000000 nop 46 47 .set macro 48 .set reorder 49 $LFE3: 50 .end fb_fill_data 51 .align 2 52 .globl fb_fill 53 .ent fb_fill 54 .type fb_fill, @function 55 fb_fill: 56 $LFB4: 16:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** } 17:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** } 18:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** 19:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** void fb_fill(FRAME_BUFFER_ADDRESS address, const FRAME_BUFFER_INFO* info, uint8 a, uint8 r, uint8 g 20:/mnt/hgfs/boot/booter/source/lcd2_frame_buffer.c **** { 57 .loc 1 20 0 58 .frame $sp,88,$31 # vars= 64, regs= 1/0, args= 16, gp= 0 59 .mask 0x80000000,-8 60 .fmask 0x00000000,0 61 .set noreorder 62 .set nomacro 63 64 0034 A8FFBD27 addiu $sp,$sp,-88 65 $LCFI0: 66 0038 6800AC93 lbu $12,104($sp) 67 003c 6C00AD93 lbu $13,108($sp) 68 0040 FF00EB30 andi $11,$7,0x00ff 69 0044 5000BFAF sw $31,80($sp) 70 $LCFI1: 71 .loc 1 20 0 72 0048 2150A000 move $10,$5 73 004c 21788000 move $15,$4 74 0050 FF00C630 andi $6,$6,0x00ff 75 $LBB2: 76 .file 2 "/mnt/hgfs/boot/booter/include/pixel.h" 1:/mnt/hgfs/boot/booter/include/pixel.h **** #ifndef PIXEL_H 2:/mnt/hgfs/boot/booter/include/pixel.h **** #define PIXEL_H 3:/mnt/hgfs/boot/booter/include/pixel.h **** 4:/mnt/hgfs/boot/booter/include/pixel.h **** typedef enum 5:/mnt/hgfs/boot/booter/include/pixel.h **** { 6:/mnt/hgfs/boot/booter/include/pixel.h **** PF_1BPP, 7:/mnt/hgfs/boot/booter/include/pixel.h **** PF_2BPP, 8:/mnt/hgfs/boot/booter/include/pixel.h **** PF_4BPP, 9:/mnt/hgfs/boot/booter/include/pixel.h **** PF_8BPP, 10:/mnt/hgfs/boot/booter/include/pixel.h **** PF_12BPP, 11:/mnt/hgfs/boot/booter/include/pixel.h **** PF_16BPP_6_5_5, 12:/mnt/hgfs/boot/booter/include/pixel.h **** PF_16BPP_5_6_5, 13:/mnt/hgfs/boot/booter/include/pixel.h **** PF_16BPP_5_5_6, 14:/mnt/hgfs/boot/booter/include/pixel.h **** PF_16BPPI_1_5_5_5,GAS LISTING /tmp/cc7wtJ5I.s page 3 15:/mnt/hgfs/boot/booter/include/pixel.h **** PF_16BPPI_5_5_5_1, 16:/mnt/hgfs/boot/booter/include/pixel.h **** PF_16BPPA_1_5_5_5, 17:/mnt/hgfs/boot/booter/include/pixel.h **** PF_16BPPA_5_5_5_1, 18:/mnt/hgfs/boot/booter/include/pixel.h **** PF_24BPP_0_8_8_8, 19:/mnt/hgfs/boot/booter/include/pixel.h **** PF_32BPP, 20:/mnt/hgfs/boot/booter/include/pixel.h **** PF_PALETTE, 21:/mnt/hgfs/boot/booter/include/pixel.h **** PF_GAMMA 22:/mnt/hgfs/boot/booter/include/pixel.h **** } PIXEL_FORMAT; 23:/mnt/hgfs/boot/booter/include/pixel.h **** 24:/mnt/hgfs/boot/booter/include/pixel.h **** typedef enum 25:/mnt/hgfs/boot/booter/include/pixel.h **** { 26:/mnt/hgfs/boot/booter/include/pixel.h **** PO_0, 27:/mnt/hgfs/boot/booter/include/pixel.h **** PO_1, 28:/mnt/hgfs/boot/booter/include/pixel.h **** PO_2, 29:/mnt/hgfs/boot/booter/include/pixel.h **** PO_3 30:/mnt/hgfs/boot/booter/include/pixel.h **** } PIXEL_ORDERING; 31:/mnt/hgfs/boot/booter/include/pixel.h **** 32:/mnt/hgfs/boot/booter/include/pixel.h **** typedef struct 33:/mnt/hgfs/boot/booter/include/pixel.h **** { 34:/mnt/hgfs/boot/booter/include/pixel.h **** PIXEL_FORMAT pixel_format; 35:/mnt/hgfs/boot/booter/include/pixel.h **** int pixel_ordering; 36:/mnt/hgfs/boot/booter/include/pixel.h **** int bpp; 37:/mnt/hgfs/boot/booter/include/pixel.h **** int memory_width; 38:/mnt/hgfs/boot/booter/include/pixel.h **** int r_mask; 39:/mnt/hgfs/boot/booter/include/pixel.h **** int g_mask; 40:/mnt/hgfs/boot/booter/include/pixel.h **** int b_mask; 41:/mnt/hgfs/boot/booter/include/pixel.h **** int a_mask; 42:/mnt/hgfs/boot/booter/include/pixel.h **** int r_shift; 43:/mnt/hgfs/boot/booter/include/pixel.h **** int g_shift; 44:/mnt/hgfs/boot/booter/include/pixel.h **** int b_shift; 45:/mnt/hgfs/boot/booter/include/pixel.h **** int a_shift; 46:/mnt/hgfs/boot/booter/include/pixel.h **** int r_scale; 47:/mnt/hgfs/boot/booter/include/pixel.h **** int g_scale; 48:/mnt/hgfs/boot/booter/include/pixel.h **** int b_scale; 49:/mnt/hgfs/boot/booter/include/pixel.h **** int a_scale; 50:/mnt/hgfs/boot/booter/include/pixel.h **** } PIXEL_INFO; 51:/mnt/hgfs/boot/booter/include/pixel.h **** 52:/mnt/hgfs/boot/booter/include/pixel.h **** static const PIXEL_INFO pixel_configs[] = 53:/mnt/hgfs/boot/booter/include/pixel.h **** { 54:/mnt/hgfs/boot/booter/include/pixel.h **** { //0 55:/mnt/hgfs/boot/booter/include/pixel.h **** PF_1BPP, //pixel_format 56:/mnt/hgfs/boot/booter/include/pixel.h **** 0, //pixel_ordering 57:/mnt/hgfs/boot/booter/include/pixel.h **** 1, //bpp 58:/mnt/hgfs/boot/booter/include/pixel.h **** 1 //memory_width 59:/mnt/hgfs/boot/booter/include/pixel.h **** }, 60:/mnt/hgfs/boot/booter/include/pixel.h **** { //1 61:/mnt/hgfs/boot/booter/include/pixel.h **** PF_2BPP, //pixel_format 62:/mnt/hgfs/boot/booter/include/pixel.h **** 0, //pixel_ordering 63:/mnt/hgfs/boot/booter/include/pixel.h **** 2, //bpp 64:/mnt/hgfs/boot/booter/include/pixel.h **** 2 //memory_width 65:/mnt/hgfs/boot/booter/include/pixel.h **** }, 66:/mnt/hgfs/boot/booter/include/pixel.h **** { //2 67:/mnt/hgfs/boot/booter/include/pixel.h **** PF_4BPP //pixel_format 68:/mnt/hgfs/boot/booter/include/pixel.h **** }, 69:/mnt/hgfs/boot/booter/include/pixel.h **** { //3 70:/mnt/hgfs/boot/booter/include/pixel.h **** PF_8BPP, //pixel_format 71:/mnt/hgfs/boot/booter/include/pixel.h **** 1, //pixel_orderingGAS LISTING /tmp/cc7wtJ5I.s page 4 72:/mnt/hgfs/boot/booter/include/pixel.h **** 8, //bpp 73:/mnt/hgfs/boot/booter/include/pixel.h **** 8, //memory_width 74:/mnt/hgfs/boot/booter/include/pixel.h **** 0x30, //r_mask 75:/mnt/hgfs/boot/booter/include/pixel.h **** 0x0C, //g_mask 76:/mnt/hgfs/boot/booter/include/pixel.h **** 0x03, //b_mask 77:/mnt/hgfs/boot/booter/include/pixel.h **** 0xC0, //a_mask 78:/mnt/hgfs/boot/booter/include/pixel.h **** 4, //r_shift 79:/mnt/hgfs/boot/booter/include/pixel.h **** 2, //g_shift 80:/mnt/hgfs/boot/booter/include/pixel.h **** 0, //b_shift 81:/mnt/hgfs/boot/booter/include/pixel.h **** 6, //a_shift 82:/mnt/hgfs/boot/booter/include/pixel.h **** 6, //r_scale 83:/mnt/hgfs/boot/booter/include/pixel.h **** 6, //g_scale 84:/mnt/hgfs/boot/booter/include/pixel.h **** 6, //b_scale 85:/mnt/hgfs/boot/booter/include/pixel.h **** 6 //a_scale 86:/mnt/hgfs/boot/booter/include/pixel.h **** }, 87:/mnt/hgfs/boot/booter/include/pixel.h **** { //4: 12bpp (4/4/4) 88:/mnt/hgfs/boot/booter/include/pixel.h **** PF_12BPP, //pixel_format 89:/mnt/hgfs/boot/booter/include/pixel.h **** 1, //pixel_ordering 90:/mnt/hgfs/boot/booter/include/pixel.h **** 12, //bpp 91:/mnt/hgfs/boot/booter/include/pixel.h **** 16, //memory_width 92:/mnt/hgfs/boot/booter/include/pixel.h **** 0x0F00, //r_mask 93:/mnt/hgfs/boot/booter/include/pixel.h **** 0x00F0, //g_mask 94:/mnt/hgfs/boot/booter/include/pixel.h **** 0x000F, //b_mask 95:/mnt/hgfs/boot/booter/include/pixel.h **** 0x0000, //a_mask 96:/mnt/hgfs/boot/booter/include/pixel.h **** 8, //r_shift 97:/mnt/hgfs/boot/booter/include/pixel.h **** 4, //g_shift 98:/mnt/hgfs/boot/booter/include/pixel.h **** 0, //b_shift 99:/mnt/hgfs/boot/booter/include/pixel.h **** 0, //a_shift 100:/mnt/hgfs/boot/booter/include/pixel.h **** 4, //r_scale 101:/mnt/hgfs/boot/booter/include/pixel.h **** 4, //g_scale 102:/mnt/hgfs/boot/booter/include/pixel.h **** 4, //b_scale 103:/mnt/hgfs/boot/booter/include/pixel.h **** 8 //a_scale 104:/mnt/hgfs/boot/booter/include/pixel.h **** }, 105:/mnt/hgfs/boot/booter/include/pixel.h **** { //5: 16bpp (6/5/5) 106:/mnt/hgfs/boot/booter/include/pixel.h **** PF_16BPP_6_5_5, //pixel_format 107:/mnt/hgfs/boot/booter/include/pixel.h **** 1, //pixel_ordering 108:/mnt/hgfs/boot/booter/include/pixel.h **** 16, //bpp 109:/mnt/hgfs/boot/booter/include/pixel.h **** 16, //memory_width 110:/mnt/hgfs/boot/booter/include/pixel.h **** 0xFC00, //r_mask 111:/mnt/hgfs/boot/booter/include/pixel.h **** 0x03E0, //g_mask 112:/mnt/hgfs/boot/booter/include/pixel.h **** 0x001F, //b_mask 113:/mnt/hgfs/boot/booter/include/pixel.h **** 0x0000, //a_mask 114:/mnt/hgfs/boot/booter/include/pixel.h **** 10, //r_shift 115:/mnt/hgfs/boot/booter/include/pixel.h **** 5, //g_shift 116:/mnt/hgfs/boot/booter/include/pixel.h **** 0, //b_shift 117:/mnt/hgfs/boot/booter/include/pixel.h **** 0, //a_shift 118:/mnt/hgfs/boot/booter/include/pixel.h **** 2, //r_scale 119:/mnt/hgfs/boot/booter/include/pixel.h **** 3, //g_scale 120:/mnt/hgfs/boot/booter/include/pixel.h **** 3, //b_scale 121:/mnt/hgfs/boot/booter/include/pixel.h **** 8 //a_scale 122:/mnt/hgfs/boot/booter/include/pixel.h **** }, 123:/mnt/hgfs/boot/booter/include/pixel.h **** { //6: 16bpp (5/6/5) 124:/mnt/hgfs/boot/booter/include/pixel.h **** PF_16BPP_5_6_5, //pixel_format 125:/mnt/hgfs/boot/booter/include/pixel.h **** 1, //pixel_ordering 126:/mnt/hgfs/boot/booter/include/pixel.h **** 16, //bpp 127:/mnt/hgfs/boot/booter/include/pixel.h **** 16, //memory_width 128:/mnt/hgfs/boot/booter/include/pixel.h **** 0xF800, //r_maskGAS LISTING /tmp/cc7wtJ5I.s page 5 129:/mnt/hgfs/boot/booter/include/pixel.h **** 0x07E0, //g_mask 130:/mnt/hgfs/boot/booter/include/pixel.h **** 0x001F, //b_mask 131:/mnt/hgfs/boot/booter/include/pixel.h **** 0x0000, //a_mask 132:/mnt/hgfs/boot/booter/include/pixel.h **** 11, //r_shift 133:/mnt/hgfs/boot/booter/include/pixel.h **** 5, //g_shift 134:/mnt/hgfs/boot/booter/include/pixel.h **** 0, //b_shift 135:/mnt/hgfs/boot/booter/include/pixel.h **** 0, //a_shift 136:/mnt/hgfs/boot/booter/include/pixel.h **** 3, //r_scale 137:/mnt/hgfs/boot/booter/include/pixel.h **** 2, //g_scale 138:/mnt/hgfs/boot/booter/include/pixel.h **** 3, //b_scale 139:/mnt/hgfs/boot/booter/include/pixel.h **** 8 //a_scale 140:/mnt/hgfs/boot/booter/include/pixel.h **** }, 141:/mnt/hgfs/boot/booter/include/pixel.h **** { //7: 16bpp (5/5/6) 142:/mnt/hgfs/boot/booter/include/pixel.h **** PF_16BPP_5_5_6, //pixel_format 143:/mnt/hgfs/boot/booter/include/pixel.h **** 1, //pixel_ordering 144:/mnt/hgfs/boot/booter/include/pixel.h **** 16, //bpp 145:/mnt/hgfs/boot/booter/include/pixel.h **** 16, //memory_width 146:/mnt/hgfs/boot/booter/include/pixel.h **** 0xF800, //r_mask 147:/mnt/hgfs/boot/booter/include/pixel.h **** 0x07C0, //g_mask 148:/mnt/hgfs/boot/booter/include/pixel.h **** 0x003F, //b_mask 149:/mnt/hgfs/boot/booter/include/pixel.h **** 0x0000, //a_mask 150:/mnt/hgfs/boot/booter/include/pixel.h **** 11, //r_shift 151:/mnt/hgfs/boot/booter/include/pixel.h **** 6, //g_shift 152:/mnt/hgfs/boot/booter/include/pixel.h **** 0, //b_shift 153:/mnt/hgfs/boot/booter/include/pixel.h **** 0, //a_shift 154:/mnt/hgfs/boot/booter/include/pixel.h **** 3, //r_scale 155:/mnt/hgfs/boot/booter/include/pixel.h **** 3, //g_scale 156:/mnt/hgfs/boot/booter/include/pixel.h **** 2, //b_scale 157:/mnt/hgfs/boot/booter/include/pixel.h **** 8 //a_scale 158:/mnt/hgfs/boot/booter/include/pixel.h **** }, 159:/mnt/hgfs/boot/booter/include/pixel.h **** { //8: 16bpp w/ intensity (1/5/5/5) 160:/mnt/hgfs/boot/booter/include/pixel.h **** PF_16BPPI_1_5_5_5 161:/mnt/hgfs/boot/booter/include/pixel.h **** }, 162:/mnt/hgfs/boot/booter/include/pixel.h **** { //9: 16bpp w/ intensity (5/5/5/1) 163:/mnt/hgfs/boot/booter/include/pixel.h **** PF_16BPPI_5_5_5_1 164:/mnt/hgfs/boot/booter/include/pixel.h **** }, 165:/mnt/hgfs/boot/booter/include/pixel.h **** { //10: 16bpp w/ alpha (1/5/5/5) 166:/mnt/hgfs/boot/booter/include/pixel.h **** PF_16BPPA_1_5_5_5, //pixel_format 167:/mnt/hgfs/boot/booter/include/pixel.h **** 1, //pixel_ordering 168:/mnt/hgfs/boot/booter/include/pixel.h **** 16, //bpp 169:/mnt/hgfs/boot/booter/include/pixel.h **** 16, //memory_width 170:/mnt/hgfs/boot/booter/include/pixel.h **** 0x7C00, //r_mask 171:/mnt/hgfs/boot/booter/include/pixel.h **** 0x03E0, //g_mask 172:/mnt/hgfs/boot/booter/include/pixel.h **** 0x001F, //b_mask 173:/mnt/hgfs/boot/booter/include/pixel.h **** 0x8000, //a_mask 174:/mnt/hgfs/boot/booter/include/pixel.h **** 10, //r_shift 175:/mnt/hgfs/boot/booter/include/pixel.h **** 5, //g_shift 176:/mnt/hgfs/boot/booter/include/pixel.h **** 0, //b_shift 177:/mnt/hgfs/boot/booter/include/pixel.h **** 15, //a_shift 178:/mnt/hgfs/boot/booter/include/pixel.h **** 3, //r_scale 179:/mnt/hgfs/boot/booter/include/pixel.h **** 3, //g_scale 180:/mnt/hgfs/boot/booter/include/pixel.h **** 3, //b_scale 181:/mnt/hgfs/boot/booter/include/pixel.h **** 7 //a_scale 182:/mnt/hgfs/boot/booter/include/pixel.h **** }, 183:/mnt/hgfs/boot/booter/include/pixel.h **** { //11: 16bpp w/ alpha (5/5/5/1) 184:/mnt/hgfs/boot/booter/include/pixel.h **** PF_16BPPA_5_5_5_1, //pixel_format 185:/mnt/hgfs/boot/booter/include/pixel.h **** 1, //pixel_orderingGAS LISTING /tmp/cc7wtJ5I.s page 6
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -