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

📄 gui_draw_bmp.txt

📁 STM32F103ZET6+UCOSII+UCGUI源码
💻 TXT
字号:
; generated by ARM C/C++ Compiler with , RVCT4.0 [Build 524] for uVision
; commandline ArmCC [--split_sections --debug -c --asm --interleave -o.\Obj\gui_draw_bmp.o --depend=.\Obj\gui_draw_bmp.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\Widget\GUI_DRAW_BMP.c]
                          THUMB

                          AREA ||i.GUI_DRAW_BMP_Create||, CODE, READONLY, ALIGN=2

                  GUI_DRAW_BMP_Create PROC
;;;77     */
;;;78     WM_HMEM GUI_DRAW_BMP_Create(const void* pBMP, int x, int y) {
000000  e92d41f0          PUSH     {r4-r8,lr}
000004  4605              MOV      r5,r0
000006  460e              MOV      r6,r1
000008  4617              MOV      r7,r2
;;;79       WM_HMEM hMem;
;;;80       hMem = GUI_ALLOC_AllocZero(sizeof(GUI_DRAW));
00000a  200c              MOVS     r0,#0xc
00000c  f7fffffe          BL       GUI_ALLOC_AllocZero
000010  0004              MOVS     r4,r0
;;;81       if (hMem) {
000012  d007              BEQ      |L1.36|
;;;82         GUI_DRAW* pObj;
;;;83         WM_LOCK();
;;;84         pObj = (GUI_DRAW*)GUI_ALLOC_h2p(hMem);
000014  4620              MOV      r0,r4
000016  f7fffffe          BL       GUI_ALLOC_h2p
;;;85         pObj->pConsts      = &_ConstObjData;
00001a  4904              LDR      r1,|L1.44|
;;;86         pObj->Data.pData   = pBMP;
;;;87         pObj->xOff         = x;
00001c  e9c01500          STRD     r1,r5,[r0,#0]
000020  8106              STRH     r6,[r0,#8]
;;;88         pObj->yOff         = y;
000022  8147              STRH     r7,[r0,#0xa]
                  |L1.36|
;;;89         WM_UNLOCK();
;;;90       }
;;;91       return hMem;
000024  4620              MOV      r0,r4
;;;92     }
000026  e8bd81f0          POP      {r4-r8,pc}
;;;93     
                          ENDP

00002a  0000              DCW      0x0000
                  |L1.44|
                          DCD      ||.constdata||

                          AREA ||i._Draw||, CODE, READONLY, ALIGN=1

                  _Draw PROC
;;;35     */
;;;36     static void _Draw(const GUI_DRAW* pObj, int x, int y) {
000000  f9b0300a          LDRSH    r3,[r0,#0xa]
;;;37       GUI_BMP_Draw((const GUI_BITMAP *)pObj->Data.pData, x + pObj->xOff, y + pObj->yOff);
000004  441a              ADD      r2,r2,r3
000006  f9b03008          LDRSH    r3,[r0,#8]
00000a  6840              LDR      r0,[r0,#4]
00000c  4419              ADD      r1,r1,r3
00000e  f7ffbffe          B.W      GUI_BMP_Draw
;;;38     }
;;;39     
                          ENDP


                          AREA ||i._GetXSize||, CODE, READONLY, ALIGN=1

                  _GetXSize PROC
;;;43     */
;;;44     static int _GetXSize(const GUI_DRAW* pObj) {
000000  6840              LDR      r0,[r0,#4]
;;;45       return GUI_BMP_GetXSize(pObj->Data.pData);
000002  f7ffbffe          B.W      GUI_BMP_GetXSize
;;;46     }
;;;47     
                          ENDP


                          AREA ||i._GetYSize||, CODE, READONLY, ALIGN=1

                  _GetYSize PROC
;;;51     */
;;;52     static int _GetYSize(const GUI_DRAW* pObj) {
000000  6840              LDR      r0,[r0,#4]
;;;53       return GUI_BMP_GetXSize(pObj->Data.pData);
000002  f7ffbffe          B.W      GUI_BMP_GetXSize
;;;54     }
;;;55     
                          ENDP


                          AREA ||.constdata||, DATA, READONLY, ALIGN=2

                  _ConstObjData
                          DCD      _Draw
                          DCD      _GetXSize
                          DCD      _GetYSize

⌨️ 快捷键说明

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