📄 lcdp222.txt
字号:
; generated by ARM C/C++ Compiler with , RVCT4.0 [Build 524] for uVision
; commandline ArmCC [--split_sections --debug -c --asm --interleave -o.\Obj\lcdp222.o --depend=.\Obj\lcdp222.d --device=DARMSTM --apcs=interwork -O3 -I..\..\include -I..\..\..\FWLib\library\inc -I..\..\..\USBLib\library\inc -I..\..\Config -I..\..\GUI\Core -I..\..\GUI\Font -I..\..\GUI\ConvertColor -I..\..\GUI\AntiAlias -I..\..\GUI\ConvertMono -I..\..\GUI\JPEG -I..\..\GUI\MemDev -I..\..\GUI\MultiLayer -I..\..\GUI\Widget -I..\..\GUI\WM -IC:\Keil\ARM\INC\ST\STM32F10x ..\..\GUI\ConvertColor\LCDP222.c]
THUMB
AREA ||i.LCD_Color2Index_222||, CODE, READONLY, ALIGN=1
LCD_Color2Index_222 PROC
;;;31 */
;;;32 unsigned LCD_Color2Index_222(LCD_COLOR Color) {
000000 2155 MOVS r1,#0x55
;;;33 int r,g,b;
;;;34 r = ((Color&255) +0x2a)/0x55;
000002 b2c2 UXTB r2,r0
;;;35 g = (((Color>>8)&255) +0x2a)/0x55;
000004 f3c02307 UBFX r3,r0,#8,#8
000008 322a ADDS r2,r2,#0x2a ;34
00000a 332a ADDS r3,r3,#0x2a
;;;36 b = (((Color>>16)&255)+0x2a)/0x55;
00000c f3c04007 UBFX r0,r0,#16,#8
000010 302a ADDS r0,r0,#0x2a
000012 fbb2f2f1 UDIV r2,r2,r1 ;34
000016 fbb3f3f1 UDIV r3,r3,r1 ;35
00001a fbb0f0f1 UDIV r0,r0,r1
;;;37 return r+(g<<2)+(b<<4);
00001e eb020183 ADD r1,r2,r3,LSL #2
000022 eb011000 ADD r0,r1,r0,LSL #4
;;;38 }
000026 4770 BX lr
;;;39
ENDP
AREA ||i.LCD_Color2Index_M222||, CODE, READONLY, ALIGN=1
LCD_Color2Index_M222 PROC
;;;69 */
;;;70 unsigned LCD_Color2Index_M222(LCD_COLOR Color) {
000000 2155 MOVS r1,#0x55
;;;71 int r,g,b;
;;;72 r = ((Color&255) +0x2a)/0x55;
000002 b2c2 UXTB r2,r0
;;;73 g = (((Color>>8)&255) +0x2a)/0x55;
000004 f3c02307 UBFX r3,r0,#8,#8
000008 322a ADDS r2,r2,#0x2a ;72
00000a 332a ADDS r3,r3,#0x2a
;;;74 b = (((Color>>16)&255)+0x2a)/0x55;
00000c f3c04007 UBFX r0,r0,#16,#8
000010 302a ADDS r0,r0,#0x2a
000012 fbb3f3f1 UDIV r3,r3,r1 ;73
000016 fbb0f0f1 UDIV r0,r0,r1
00001a fbb2f2f1 UDIV r2,r2,r1 ;72
;;;75 return b+(g<<2)+(r<<4);
00001e eb000083 ADD r0,r0,r3,LSL #2
000022 eb001002 ADD r0,r0,r2,LSL #4
;;;76 }
000026 4770 BX lr
;;;77
ENDP
AREA ||i.LCD_GetIndexMask_222||, CODE, READONLY, ALIGN=1
LCD_GetIndexMask_222 PROC
;;;55 */
;;;56 unsigned LCD_GetIndexMask_222(void) {
000000 203f MOVS r0,#0x3f
;;;57 return 0x0003f;
;;;58 }
000002 4770 BX lr
;;;59
ENDP
AREA ||i.LCD_GetIndexMask_M222||, CODE, READONLY, ALIGN=1
LCD_GetIndexMask_M222 PROC
;;;93 */
;;;94 unsigned LCD_GetIndexMask_M222(void) {
000000 203f MOVS r0,#0x3f
;;;95 return 0x003f;
;;;96 }
000002 4770 BX lr
;;;97
ENDP
AREA ||i.LCD_Index2Color_222||, CODE, READONLY, ALIGN=1
LCD_Index2Color_222 PROC
;;;43 */
;;;44 LCD_COLOR LCD_Index2Color_222(int Index) {
000000 f0000103 AND r1,r0,#3
;;;45 U16P r,g,b;
;;;46 r = ((Index>>0)&3)*0x55;
000004 eb011101 ADD r1,r1,r1,LSL #4
000008 eb010281 ADD r2,r1,r1,LSL #2
;;;47 g = ((Index>>2)&3)*0x55;
00000c f3c00181 UBFX r1,r0,#2,#2
;;;48 b = (Index>>4) *0x55;
000010 1100 ASRS r0,r0,#4
000012 eb001000 ADD r0,r0,r0,LSL #4
000016 eb011101 ADD r1,r1,r1,LSL #4 ;47
00001a eb000080 ADD r0,r0,r0,LSL #2
00001e eb010181 ADD r1,r1,r1,LSL #2 ;47
;;;49 return (((U32)b)<<16)|(g<<8)|r;
000022 0400 LSLS r0,r0,#16
000024 ea402001 ORR r0,r0,r1,LSL #8
000028 4310 ORRS r0,r0,r2
;;;50 }
00002a 4770 BX lr
;;;51
ENDP
AREA ||i.LCD_Index2Color_M222||, CODE, READONLY, ALIGN=1
LCD_Index2Color_M222 PROC
;;;81 */
;;;82 LCD_COLOR LCD_Index2Color_M222(int Index) {
000000 f0000103 AND r1,r0,#3
;;;83 U16P r,g,b;
;;;84 r = ((Index>>0)&3)*0x55;
000004 eb011101 ADD r1,r1,r1,LSL #4
000008 eb010281 ADD r2,r1,r1,LSL #2
;;;85 g = ((Index>>2)&3)*0x55;
00000c f3c00181 UBFX r1,r0,#2,#2
;;;86 b = (Index>>4) *0x55;
000010 1100 ASRS r0,r0,#4
000012 eb001000 ADD r0,r0,r0,LSL #4
000016 eb000080 ADD r0,r0,r0,LSL #2
00001a eb011101 ADD r1,r1,r1,LSL #4 ;85
00001e b283 UXTH r3,r0
000020 eb010181 ADD r1,r1,r1,LSL #2 ;85
;;;87 return (((U32)r)<<16)|(g<<8)|b;
000024 0410 LSLS r0,r2,#16
000026 ea402001 ORR r0,r0,r1,LSL #8
00002a 4318 ORRS r0,r0,r3
;;;88 }
00002c 4770 BX lr
;;;89
ENDP
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -