📄 lcd_mixcolors256.txt
字号:
; generated by ARM C/C++ Compiler with , RVCT4.0 [Build 524] for uVision
; commandline ArmCC [--split_sections --debug -c --asm --interleave -o.\Obj\lcd_mixcolors256.o --depend=.\Obj\lcd_mixcolors256.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\Core\LCD_MixColors256.c]
THUMB
AREA ||i.LCD_MixColors256||, CODE, READONLY, ALIGN=1
LCD_MixColors256 PROC
;;;40 */
;;;41 LCD_COLOR LCD_MixColors256(LCD_COLOR Color, LCD_COLOR BkColor, unsigned Intens) {
000000 b530 PUSH {r4,r5,lr}
;;;42 /* Calc Color seperations for FgColor first */
;;;43 U32 R = (Color & 0xff) * Intens;
000002 b2c4 UXTB r4,r0
;;;44 U32 G = (Color & 0xff00) * Intens;
000004 f400437f AND r3,r0,#0xff00
;;;45 U32 B = (Color & 0xff0000)* Intens;
000008 f400057f AND r5,r0,#0xff0000
00000c 4354 MULS r4,r2,r4 ;43
00000e 4353 MULS r3,r2,r3 ;44
000010 4355 MULS r5,r2,r5
;;;46 /* Add Color seperations for BkColor */
;;;47 Intens = 256 - Intens;
000012 f5c27080 RSB r0,r2,#0x100
;;;48 R += (BkColor & 0xff) * Intens;
000016 b2ca UXTB r2,r1
000018 fb024200 MLA r2,r2,r0,r4
;;;49 G += (BkColor & 0xff00) * Intens;
00001c f401447f AND r4,r1,#0xff00
;;;50 B += (BkColor & 0xff0000) * Intens;
000020 f401017f AND r1,r1,#0xff0000
000024 fb043300 MLA r3,r4,r0,r3 ;49
000028 fb015100 MLA r1,r1,r0,r5
;;;51 R = (R >> 8);
00002c 0a10 LSRS r0,r2,#8
;;;52 G = (G >> 8) & 0xff00;
00002e f44f427f MOV r2,#0xff00
000032 ea022213 AND r2,r2,r3,LSR #8
;;;53 B = (B >> 8) & 0xff0000;
000036 f44f037f MOV r3,#0xff0000
00003a ea032111 AND r1,r3,r1,LSR #8
;;;54 return R + G + B;
00003e 4410 ADD r0,r0,r2
000040 4408 ADD r0,r0,r1
;;;55 }
000042 bd30 POP {r4,r5,pc}
;;;56
ENDP
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -