📄 gui_errorout.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_errorout.o --depend=.\Obj\gui_errorout.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\GUI_ErrorOut.c]
THUMB
AREA ||i.GUI_ErrorOut||, CODE, READONLY, ALIGN=1
GUI_ErrorOut PROC
;;;61 */
;;;62 void GUI_ErrorOut(const char *s) { GUI_X_ErrorOut(s); }
000000 f7ffbffe B.W GUI_X_ErrorOut
;;;63
ENDP
AREA ||i.GUI_ErrorOut1||, CODE, READONLY, ALIGN=1
GUI_ErrorOut1 PROC
;;;67 */
;;;68 void GUI_ErrorOut1(const char *s, int p0) {
000000 b530 PUSH {r4,r5,lr}
000002 b091 SUB sp,sp,#0x44
000004 4605 MOV r5,r0
000006 460c MOV r4,r1
;;;69 char ac[MAXLEN + 10];
;;;70 char* sOut = ac;
000008 a802 ADD r0,sp,#8
;;;71 GUI_MEMSET((U8*)ac, 0, sizeof(ac));
00000a 223c MOVS r2,#0x3c
00000c 2100 MOVS r1,#0
00000e 9001 STR r0,[sp,#4]
000010 f7fffffe BL GUI__memset
;;;72 _CopyString(ac, s, MAXLEN);
000014 2232 MOVS r2,#0x32
000016 4629 MOV r1,r5
000018 a802 ADD r0,sp,#8
00001a f7fffffe BL _CopyString
;;;73 sOut += strlen(sOut);
00001e 9801 LDR r0,[sp,#4]
000020 f7fffffe BL strlen
000024 9901 LDR r1,[sp,#4]
;;;74 GUI__AddSpaceHex(p0, 8, &sOut);
000026 aa01 ADD r2,sp,#4
000028 4408 ADD r0,r0,r1 ;73
00002a 9001 STR r0,[sp,#4]
00002c 2108 MOVS r1,#8
00002e 4620 MOV r0,r4
000030 f7fffffe BL GUI__AddSpaceHex
000034 a802 ADD r0,sp,#8
000036 f7fffffe BL GUI_X_ErrorOut
;;;75 GUI_ErrorOut(ac);
;;;76 }
00003a b011 ADD sp,sp,#0x44
00003c bd30 POP {r4,r5,pc}
;;;77
ENDP
AREA ||i.GUI_ErrorOut2||, CODE, READONLY, ALIGN=1
GUI_ErrorOut2 PROC
;;;81 */
;;;82 void GUI_ErrorOut2(const char *s, int p0, int p1) {
000000 b570 PUSH {r4-r6,lr}
000002 b094 SUB sp,sp,#0x50
000004 4606 MOV r6,r0
000006 460c MOV r4,r1
000008 4615 MOV r5,r2
;;;83 char ac[MAXLEN + 20];
;;;84 char* sOut = ac;
00000a a802 ADD r0,sp,#8
;;;85 GUI_MEMSET((U8*)ac, 0, sizeof(ac));
00000c 2246 MOVS r2,#0x46
00000e 2100 MOVS r1,#0
000010 9001 STR r0,[sp,#4]
000012 f7fffffe BL GUI__memset
;;;86 _CopyString(ac, s, MAXLEN);
000016 2232 MOVS r2,#0x32
000018 4631 MOV r1,r6
00001a a802 ADD r0,sp,#8
00001c f7fffffe BL _CopyString
;;;87 sOut += strlen(sOut);
000020 9801 LDR r0,[sp,#4]
000022 f7fffffe BL strlen
000026 9901 LDR r1,[sp,#4]
;;;88 GUI__AddSpaceHex(p0, 8, &sOut);
000028 aa01 ADD r2,sp,#4
00002a 4408 ADD r0,r0,r1 ;87
00002c 9001 STR r0,[sp,#4]
00002e 2108 MOVS r1,#8
000030 4620 MOV r0,r4
000032 f7fffffe BL GUI__AddSpaceHex
;;;89 GUI__AddSpaceHex(p1, 8, &sOut);
000036 aa01 ADD r2,sp,#4
000038 2108 MOVS r1,#8
00003a 4628 MOV r0,r5
00003c f7fffffe BL GUI__AddSpaceHex
000040 a802 ADD r0,sp,#8
000042 f7fffffe BL GUI_X_ErrorOut
;;;90 GUI_ErrorOut(ac);
;;;91 }
000046 b014 ADD sp,sp,#0x50
000048 bd70 POP {r4-r6,pc}
;;;92
ENDP
AREA ||i.GUI_ErrorOut3||, CODE, READONLY, ALIGN=1
GUI_ErrorOut3 PROC
;;;96 */
;;;97 void GUI_ErrorOut3(const char *s, int p0, int p1, int p2) {
000000 b5f0 PUSH {r4-r7,lr}
000002 b095 SUB sp,sp,#0x54
000004 4607 MOV r7,r0
000006 460c MOV r4,r1
000008 4615 MOV r5,r2
;;;98 char ac[MAXLEN + 30];
;;;99 char* sOut = ac;
00000a a801 ADD r0,sp,#4
00000c 461e MOV r6,r3 ;97
;;;100 GUI_MEMSET((U8*)ac, 0, sizeof(ac));
00000e 2250 MOVS r2,#0x50
000010 2100 MOVS r1,#0
000012 9000 STR r0,[sp,#0]
000014 f7fffffe BL GUI__memset
;;;101 _CopyString(ac, s, MAXLEN);
000018 2232 MOVS r2,#0x32
00001a 4639 MOV r1,r7
00001c a801 ADD r0,sp,#4
00001e f7fffffe BL _CopyString
;;;102 sOut += strlen(sOut);
000022 9800 LDR r0,[sp,#0]
000024 f7fffffe BL strlen
000028 9900 LDR r1,[sp,#0]
;;;103 GUI__AddSpaceHex(p0, 8, &sOut);
00002a 466a MOV r2,sp
00002c 4408 ADD r0,r0,r1 ;102
00002e 9000 STR r0,[sp,#0]
000030 2108 MOVS r1,#8
000032 4620 MOV r0,r4
000034 f7fffffe BL GUI__AddSpaceHex
;;;104 GUI__AddSpaceHex(p1, 8, &sOut);
000038 466a MOV r2,sp
00003a 2108 MOVS r1,#8
00003c 4628 MOV r0,r5
00003e f7fffffe BL GUI__AddSpaceHex
;;;105 GUI__AddSpaceHex(p2, 8, &sOut);
000042 466a MOV r2,sp
000044 2108 MOVS r1,#8
000046 4630 MOV r0,r6
000048 f7fffffe BL GUI__AddSpaceHex
00004c a801 ADD r0,sp,#4
00004e f7fffffe BL GUI_X_ErrorOut
;;;106 GUI_ErrorOut(ac);
;;;107 }
000052 b015 ADD sp,sp,#0x54
000054 bdf0 POP {r4-r7,pc}
;;;108
ENDP
AREA ||i.GUI_ErrorOut4||, CODE, READONLY, ALIGN=1
GUI_ErrorOut4 PROC
;;;112 */
;;;113 void GUI_ErrorOut4(const char *s, int p0, int p1, int p2, int p3) {
000000 e92d41f0 PUSH {r4-r8,lr}
000004 b098 SUB sp,sp,#0x60
000006 4680 MOV r8,r0
000008 460c MOV r4,r1
00000a 4615 MOV r5,r2
00000c 461e MOV r6,r3
;;;114 char ac[MAXLEN + 40] = {0};
00000e 215c MOVS r1,#0x5c
000010 a801 ADD r0,sp,#4
000012 9f1e LDR r7,[sp,#0x78]
000014 f7fffffe BL __aeabi_memclr4
;;;115 char* sOut = ac;
000018 a801 ADD r0,sp,#4
;;;116 GUI_MEMSET((U8*)ac, 0, sizeof(ac));
00001a 225a MOVS r2,#0x5a
00001c 2100 MOVS r1,#0
00001e 9000 STR r0,[sp,#0]
000020 f7fffffe BL GUI__memset
;;;117 _CopyString(ac, s, MAXLEN);
000024 2232 MOVS r2,#0x32
000026 4641 MOV r1,r8
000028 a801 ADD r0,sp,#4
00002a f7fffffe BL _CopyString
;;;118 sOut += strlen(sOut);
00002e 9800 LDR r0,[sp,#0]
000030 f7fffffe BL strlen
000034 9900 LDR r1,[sp,#0]
;;;119 GUI__AddSpaceHex(p0, 8, &sOut);
000036 466a MOV r2,sp
000038 4408 ADD r0,r0,r1 ;118
00003a 9000 STR r0,[sp,#0]
00003c 2108 MOVS r1,#8
00003e 4620 MOV r0,r4
000040 f7fffffe BL GUI__AddSpaceHex
;;;120 GUI__AddSpaceHex(p1, 8, &sOut);
000044 466a MOV r2,sp
000046 2108 MOVS r1,#8
000048 4628 MOV r0,r5
00004a f7fffffe BL GUI__AddSpaceHex
;;;121 GUI__AddSpaceHex(p2, 8, &sOut);
00004e 466a MOV r2,sp
000050 2108 MOVS r1,#8
000052 4630 MOV r0,r6
000054 f7fffffe BL GUI__AddSpaceHex
;;;122 GUI__AddSpaceHex(p3, 8, &sOut);
000058 466a MOV r2,sp
00005a 2108 MOVS r1,#8
00005c 4638 MOV r0,r7
00005e f7fffffe BL GUI__AddSpaceHex
000062 a801 ADD r0,sp,#4
000064 f7fffffe BL GUI_X_ErrorOut
;;;123 GUI_ErrorOut(ac);
;;;124 }
000068 b018 ADD sp,sp,#0x60
00006a e8bd81f0 POP {r4-r8,pc}
;;;125
ENDP
AREA ||i._CopyString||, CODE, READONLY, ALIGN=2
_CopyString PROC
;;;43 */
;;;44 static void _CopyString(char*d, const char*s, int MaxLen) {
000000 e004 B |L6.12|
;;;45 while ((MaxLen > 0) && *s) {
;;;46 *d++ = *s++;
000002 bf00 NOP
|L6.4|
000004 1c49 ADDS r1,r1,#1
000006 f8003b01 STRB r3,[r0],#1
;;;47 MaxLen--;
00000a 1e52 SUBS r2,r2,#1
|L6.12|
00000c 2a00 CMP r2,#0 ;45
00000e dd02 BLE |L6.22|
000010 780b LDRB r3,[r1,#0] ;45
000012 2b00 CMP r3,#0 ;45
000014 d1f6 BNE |L6.4|
|L6.22|
;;;48 }
;;;49 *d = 0;
000016 2100 MOVS r1,#0
000018 7001 STRB r1,[r0,#0]
;;;50 }
00001a 4770 BX lr
;;;51
ENDP
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -