📄 lcdp111.txt
字号:
; generated by ARM C/C++ Compiler with , RVCT4.0 [Build 524] for uVision
; commandline ArmCC [--split_sections --debug -c --asm --interleave -o.\Obj\lcdp111.o --depend=.\Obj\lcdp111.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\LCDP111.c]
THUMB
AREA ||i.LCD_Color2Index_111||, CODE, READONLY, ALIGN=1
LCD_Color2Index_111 PROC
;;;31 */
;;;32 unsigned LCD_Color2Index_111(LCD_COLOR Color) {
000000 f3c011c0 UBFX r1,r0,#7,#1
;;;33 int r,g,b;
;;;34 r = (Color>>(0+7)) &1;
;;;35 g = (Color>>(8+7)) &1;
000004 f3c032c0 UBFX r2,r0,#15,#1
;;;36 b = (Color>>(16+7)) &1;
000008 f3c050c0 UBFX r0,r0,#23,#1
;;;37 return r+(g<<1)+(b<<2);
00000c eb010142 ADD r1,r1,r2,LSL #1
000010 eb010080 ADD r0,r1,r0,LSL #2
;;;38 }
000014 4770 BX lr
;;;39
ENDP
AREA ||i.LCD_Color2Index_M111||, CODE, READONLY, ALIGN=1
LCD_Color2Index_M111 PROC
;;;69 */
;;;70 unsigned LCD_Color2Index_M111(LCD_COLOR Color) {
000000 f3c011c0 UBFX r1,r0,#7,#1
;;;71 int r,g,b;
;;;72 r = (Color>>(0+7)) &1;
;;;73 g = (Color>>(8+7)) &1;
000004 f3c032c0 UBFX r2,r0,#15,#1
;;;74 b = (Color>>(16+7)) &1;
000008 f3c050c0 UBFX r0,r0,#23,#1
;;;75 return b+(g<<1)+(r<<2);
00000c eb000042 ADD r0,r0,r2,LSL #1
000010 eb000081 ADD r0,r0,r1,LSL #2
;;;76 }
000014 4770 BX lr
;;;77
ENDP
AREA ||i.LCD_GetIndexMask_111||, CODE, READONLY, ALIGN=1
LCD_GetIndexMask_111 PROC
;;;55 */
;;;56 unsigned LCD_GetIndexMask_111(void) {
000000 2007 MOVS r0,#7
;;;57 return 0x0007;
;;;58 }
000002 4770 BX lr
;;;59
ENDP
AREA ||i.LCD_GetIndexMask_M111||, CODE, READONLY, ALIGN=1
LCD_GetIndexMask_M111 PROC
;;;93 */
;;;94 unsigned LCD_GetIndexMask_M111(void) {
000000 2007 MOVS r0,#7
;;;95 return 0x0007;
;;;96 }
000002 4770 BX lr
;;;97
ENDP
AREA ||i.LCD_Index2Color_111||, CODE, READONLY, ALIGN=1
LCD_Index2Color_111 PROC
;;;43 */
;;;44 LCD_COLOR LCD_Index2Color_111(int Index) {
000000 f0000101 AND r1,r0,#1
;;;45 U16 r,g,b;
;;;46 r = (((Index>>0)&1)*0xff);
000004 ebc12201 RSB r2,r1,r1,LSL #8
;;;47 g = (((Index>>1)&1)*0xff);
000008 f3c00140 UBFX r1,r0,#1,#1
00000c ebc12101 RSB r1,r1,r1,LSL #8
;;;48 b = (Index>>2) *0xff;
000010 1080 ASRS r0,r0,#2
000012 ebc02000 RSB r0,r0,r0,LSL #8
;;;49 return r | (g<<8) | ((U32)b<<16);
000016 ea422101 ORR r1,r2,r1,LSL #8
00001a ea414000 ORR r0,r1,r0,LSL #16
;;;50 }
00001e 4770 BX lr
;;;51
ENDP
AREA ||i.LCD_Index2Color_M111||, CODE, READONLY, ALIGN=1
LCD_Index2Color_M111 PROC
;;;81 */
;;;82 LCD_COLOR LCD_Index2Color_M111(int Index) {
000000 f0000101 AND r1,r0,#1
;;;83 U16 r,g,b;
;;;84 r = (((Index>>0)&1)*0xff);
000004 ebc12201 RSB r2,r1,r1,LSL #8
;;;85 g = (((Index>>1)&1)*0xff);
000008 f3c00140 UBFX r1,r0,#1,#1
;;;86 b = (Index>>2) *0xff;
00000c 1080 ASRS r0,r0,#2
00000e ebc02000 RSB r0,r0,r0,LSL #8
000012 ebc12101 RSB r1,r1,r1,LSL #8 ;85
000016 b280 UXTH r0,r0
;;;87 return b | (g<<8) | ((U32)r<<16);
000018 ea402001 ORR r0,r0,r1,LSL #8
00001c ea404002 ORR r0,r0,r2,LSL #16
;;;88 }
000020 4770 BX lr
;;;89
ENDP
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -