📄 debug.cod
字号:
; Listing generated by Microsoft (R) Optimizing Compiler Version 13.10.4237
TTL C:\WINCE500\PLATFORM\Ep93xx\Src\Bootloader\Common\.\debug.c
CODE32
00000 AREA |.drectve|, DRECTVE
DCB "-defaultlib:coredll.lib "
DCB "-defaultlib:corelibc.lib "
00000 AREA |.data|, DATA
COMMON |giSerialInitialized|, 0x4
00000 AREA |.rdata|, DATA, READONLY
|EdbgVendorIds| DCW 0x0
DCW 0x0
DCD 0x4033
DCB 0x1
DCB 0x0
DCB "AD", 0x0
% 3
DCW 0x1050
DCW 0x940
DCD 0x4005
DCB 0x1
DCB 0x0
DCB "LS", 0x0
% 3
DCW 0x1050
DCW 0x940
DCD 0x2078
DCB 0x1
DCB 0x0
DCB "LS", 0x0
% 3
DCW 0x10ec
DCW 0x8029
DCD 0xc0f0
DCB 0x1
DCB 0x0
DCB "KS", 0x0
% 3
DCW 0x10ec
DCW 0x8129
DCD 0x0
DCB 0x4
DCB 0x0
DCB "RT", 0x0
% 3
DCW 0x10ec
DCW 0x8139
DCD 0x900b
DCB 0x4
DCB 0x0
DCB "RT", 0x0
% 3
DCW 0x10ec
DCW 0x8139
DCD 0xd0c9
DCB 0x4
DCB 0x0
DCB "RT", 0x0
% 3
DCW 0x10ec
DCW 0x8139
DCD 0xe04c
DCB 0x4
DCB 0x0
DCB "RT", 0x0
% 3
DCW 0x1186
DCW 0x1300
DCD 0x50ba
DCB 0x4
DCB 0x0
DCB "DL", 0x0
% 3
DCW 0x100b
DCW 0x20
DCD 0xa0cc
DCB 0x5
DCB 0x0
DCB "NG", 0x0
% 3
DCW 0x10b7
DCW 0x9050
DCD 0x6008
DCB 0x6
DCB 0x0
DCB "3C", 0x0
% 3
DCW 0x10b7
DCW 0x9200
DCD 0x476
DCB 0x6
DCB 0x0
DCB "3C", 0x0
% 3
DCW 0x8086
DCW 0x1039
DCD 0x4033
DCB 0x7
DCB 0x1
DCB "IN", 0x0
% 3
DCW 0x8086
DCW 0x103a
DCD 0x4033
DCB 0x7
DCB 0x1
DCB "IN", 0x0
% 3
DCW 0x8086
DCW 0x1051
DCD 0x4033
DCB 0x7
DCB 0x1
DCB "IN", 0x0
% 3
DCW 0x8086
DCW 0x1229
DCD 0x4033
DCB 0x7
DCB 0x1
DCB "IN", 0x0
% 3
DCW 0x8086
DCW 0x2449
DCD 0x4033
DCB 0x7
DCB 0x1
DCB "IN", 0x0
% 3
EXPORT |OEMInitDebugSerial|
EXPORT |UART2_Start|
; File c:\wince500\platform\ep93xx\src\kernel\hal\common\debug.c
00000 AREA |.text| { |OEMInitDebugSerial| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 AREA |.pdata$$OEMInitDebugSerial|, PDATA, SELECTION=5, ASSOC=|.text| { |OEMInitDebugSerial| } ; comdat associative
|$T38445| DCD |$L38444|
DCD 0x40000e01
; Function compile flags: /Ods
00000 AREA |.text| { |OEMInitDebugSerial| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |OEMInitDebugSerial| PROC
; 100 : {
00000 |$L38444|
00000 e52de004 str lr, [sp, #-4]!
00004 |$M38442|
; 101 : if(giSerialInitialized !=SERIAL_INITIALIZED_CHECK)
00004 e59f3028 ldr r3, [pc, #0x28]
00008 e5932000 ldr r2, [r3]
0000c e59f301c ldr r3, [pc, #0x1C]
00010 e1520003 cmp r2, r3
00014 0a000003 beq |$L38221|
; 102 : {
; 103 : UartStart();
00018 eb000000 bl UART2_Start
; 104 : giSerialInitialized = SERIAL_INITIALIZED_CHECK;
0001c e59f2010 ldr r2, [pc, #0x10]
00020 e59f3008 ldr r3, [pc, #8]
00024 e5823000 str r3, [r2]
00028 |$L38221|
; 105 : }
; 106 : }
00028 e49de004 ldr lr, [sp], #4
0002c e12fff1e bx lr
00030 |$L38447|
00030 12345678 DCD 0x12345678
00034 00000000 DCD |giSerialInitialized|
00038 |$M38443|
ENDP ; |OEMInitDebugSerial|
EXPORT |OEMWriteDebugLED|
00000 AREA |.text| { |OEMWriteDebugLED| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 AREA |.pdata$$OEMWriteDebugLED|, PDATA, SELECTION=5, ASSOC=|.text| { |OEMWriteDebugLED| } ; comdat associative
|$T38453| DCD |$L38452|
DCD 0x40001203
; Function compile flags: /Ods
00000 AREA |.text| { |OEMWriteDebugLED| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |OEMWriteDebugLED| PROC
; 118 : {
00000 |$L38452|
00000 e1a0c00d mov r12, sp
00004 e92d0003 stmdb sp!, {r0, r1}
00008 e92d5000 stmdb sp!, {r12, lr}
0000c |$M38450|
; 119 : if (wIndex == 0)
0000c e1dd30b8 ldrh r3, [sp, #8]
00010 e3530000 cmp r3, #0
00014 1a000008 bne |$L38227|
; 120 : {
; 121 :
; 122 : *GPIO_PEDR = (dwPattern & (GPIOE_RLED | GPIOE_GLED)) |
; 123 : (*GPIO_PEDR & ~(GPIOE_RLED | GPIOE_GLED)) ;
00018 e59f3024 ldr r3, [pc, #0x24]
0001c e59d100c ldr r1, [sp, #0xC]
00020 e5932000 ldr r2, [r3]
00024 e3e03003 mvn r3, #3
00028 e0022003 and r2, r2, r3
0002c e2013003 and r3, r1, #3
00030 e1822003 orr r2, r2, r3
00034 e59f3008 ldr r3, [pc, #8]
00038 e5832000 str r2, [r3]
0003c |$L38227|
; 124 : }
; 125 : }
0003c e89d6000 ldmia sp, {sp, lr}
00040 e12fff1e bx lr
00044 |$L38455|
00044 80840020 DCD 0x80840020
00048 |$M38451|
ENDP ; |OEMWriteDebugLED|
EXPORT |OEMWriteDebugString|
EXPORT |OEMWriteDebugByte|
00000 AREA |.text| { |OEMWriteDebugString| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 AREA |.pdata$$OEMWriteDebugString|, PDATA, SELECTION=5, ASSOC=|.text| { |OEMWriteDebugString| } ; comdat associative
|$T38461| DCD |$L38460|
DCD 0x40001504
; Function compile flags: /Ods
00000 AREA |.text| { |OEMWriteDebugString| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |OEMWriteDebugString| PROC
; 135 : {
00000 |$L38460|
00000 e1a0c00d mov r12, sp
00004 e92d0001 stmdb sp!, {r0}
00008 e92d5000 stmdb sp!, {r12, lr}
0000c e24dd004 sub sp, sp, #4
00010 |$M38458|
00010 |$L38234|
; 136 : //
; 137 : // Send message to serial port
; 138 : //
; 139 : while ( *str )
00010 e59d300c ldr r3, [sp, #0xC]
00014 e1d330b0 ldrh r3, [r3]
00018 e3530000 cmp r3, #0
0001c 0a000009 beq |$L38235|
; 140 : {
; 141 : OEMWriteDebugByte((unsigned char)*str++);
00020 e59d300c ldr r3, [sp, #0xC]
00024 e1d330b0 ldrh r3, [r3]
00028 e20330ff and r3, r3, #0xFF
0002c e5cd3000 strb r3, [sp]
00030 e5dd0000 ldrb r0, [sp]
00034 eb000000 bl OEMWriteDebugByte
00038 e59d300c ldr r3, [sp, #0xC]
0003c e2833002 add r3, r3, #2
00040 e58d300c str r3, [sp, #0xC]
; 142 : }
00044 eafffff1 b |$L38234|
00048 |$L38235|
; 143 : }
00048 e28dd004 add sp, sp, #4
0004c e89d6000 ldmia sp, {sp, lr}
00050 e12fff1e bx lr
00054 |$M38459|
ENDP ; |OEMWriteDebugString|
EXPORT |UART2_Write|
00000 AREA |.text| { |OEMWriteDebugByte| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 AREA |.pdata$$OEMWriteDebugByte|, PDATA, SELECTION=5, ASSOC=|.text| { |OEMWriteDebugByte| } ; comdat associative
|$T38468| DCD |$L38467|
DCD 0x40000703
; Function compile flags: /Ods
00000 AREA |.text| { |OEMWriteDebugByte| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |OEMWriteDebugByte| PROC
; 152 : {
00000 |$L38467|
00000 e1a0c00d mov r12, sp
00004 e92d0001 stmdb sp!, {r0}
00008 e92d5000 stmdb sp!, {r12, lr}
0000c |$M38465|
; 153 : UartWrite(ch);
0000c e5dd0008 ldrb r0, [sp, #8]
00010 eb000000 bl UART2_Write
; 154 : }
00014 e89d6000 ldmia sp, {sp, lr}
00018 e12fff1e bx lr
0001c |$M38466|
ENDP ; |OEMWriteDebugByte|
EXPORT |OEMReadDebugByte|
EXPORT |UART2_Read|
00000 AREA |.text| { |OEMReadDebugByte| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 AREA |.pdata$$OEMReadDebugByte|, PDATA, SELECTION=5, ASSOC=|.text| { |OEMReadDebugByte| } ; comdat associative
|$T38476| DCD |$L38475|
DCD 0x40000a02
; Function compile flags: /Ods
00000 AREA |.text| { |OEMReadDebugByte| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |OEMReadDebugByte| PROC
; 167 : {
00000 |$L38475|
00000 e52de004 str lr, [sp, #-4]!
00004 e24dd008 sub sp, sp, #8
00008 |$M38473|
; 168 : return(UartRead());
00008 eb000000 bl UART2_Read
0000c e58d0004 str r0, [sp, #4]
00010 e59d3004 ldr r3, [sp, #4]
00014 e58d3000 str r3, [sp]
00018 e59d0000 ldr r0, [sp]
; 169 : }
0001c e28dd008 add sp, sp, #8
00020 e49de004 ldr lr, [sp], #4
00024 e12fff1e bx lr
00028 |$M38474|
ENDP ; |OEMReadDebugByte|
EXPORT |OEMClearDebugCommError|
EXPORT |UART2_ClearError|
00000 AREA |.text| { |OEMClearDebugCommError| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 AREA |.pdata$$OEMClearDebugCommError|, PDATA, SELECTION=5, ASSOC=|.text| { |OEMClearDebugCommError| } ; comdat associative
|$T38483| DCD |$L38482|
DCD 0x40000401
; Function compile flags: /Ods
00000 AREA |.text| { |OEMClearDebugCommError| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |OEMClearDebugCommError| PROC
; 179 : {
00000 |$L38482|
00000 e52de004 str lr, [sp, #-4]!
00004 |$M38480|
; 180 : UartClearError();
00004 eb000000 bl UART2_ClearError
; 181 : }
00008 e49de004 ldr lr, [sp], #4
0000c e12fff1e bx lr
00010 |$M38481|
ENDP ; |OEMClearDebugCommError|
EXPORT |UART2_Stop|
EXPORT |OEMUartStop|
00000 AREA |.text| { |OEMUartStop| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 AREA |.pdata$$OEMUartStop|, PDATA, SELECTION=5, ASSOC=|.text| { |OEMUartStop| } ; comdat associative
|$T38490| DCD |$L38489|
DCD 0x40000801
; Function compile flags: /Ods
00000 AREA |.text| { |OEMUartStop| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |OEMUartStop| PROC
; 190 : {
00000 |$L38489|
00000 e52de004 str lr, [sp, #-4]!
00004 |$M38487|
; 191 : UartStop();
00004 eb000000 bl UART2_Stop
; 192 : giSerialInitialized = 0;
00008 e59f200c ldr r2, [pc, #0xC]
0000c e3a03000 mov r3, #0
00010 e5823000 str r3, [r2]
; 193 : }
00014 e49de004 ldr lr, [sp], #4
00018 e12fff1e bx lr
0001c |$L38492|
0001c 00000000 DCD |giSerialInitialized|
00020 |$M38488|
ENDP ; |OEMUartStop|
EXPORT |UART1_Start|
EXPORT |UART1_Stop|
00000 AREA |.text| { |UART1_Start| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 AREA |.pdata$$UART1_Start|, PDATA, SELECTION=5, ASSOC=|.text| { |UART1_Start| } ; comdat associative
|$T38498| DCD |$L38497|
DCD 0x40002201
; Function compile flags: /Ods
00000 AREA |.text| { |UART1_Start| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |UART1_Start| PROC
; 202 : {
00000 |$L38497|
00000 e52de004 str lr, [sp, #-4]!
00004 |$M38495|
; 203 : UART1_Stop();
00004 eb000000 bl UART1_Stop
; 204 :
; 205 : //
; 206 : // Set up default baudrate
; 207 : //
; 208 : *UART1_LCR_M = 0 ;
00008 e59f2074 ldr r2, [pc, #0x74]
0000c e3a03000 mov r3, #0
00010 e5823000 str r3, [r2]
; 209 : *UART1_LCR_L = UART_DIVISOR(DEBUG_UART_SPEED);
00014 e59f2064 ldr r2, [pc, #0x64]
00018 e3a0300b mov r3, #0xB
0001c e5823000 str r3, [r2]
; 210 :
; 211 : //
; 212 : // Setup mode 8 bits, no parity, 1 stop bit, fifo enabled.
; 213 : //
; 214 : *UART1_LCR_H = LCR_H_DATABITS_8 | LCR_H_FIFO_ENABLE;
00020 e59f2054 ldr r2, [pc, #0x54]
00024 e3a03070 mov r3, #0x70
00028 e5823000 str r3, [r2]
; 215 :
; 216 :
; 217 : // Clear old status.
; 218 : *UART1_SR = 0;
0002c e59f2044 ldr r2, [pc, #0x44]
00030 e3a03000 mov r3, #0
00034 e5823000 str r3, [r2]
; 219 : *UART1_MCR = MCR_RTS | MCR_DTR;
00038 e59f2034 ldr r2, [pc, #0x34]
0003c e3a03003 mov r3, #3
00040 e5823000 str r3, [r2]
; 220 : *UART1_IIR = 0;
00044 e59f2024 ldr r2, [pc, #0x24]
00048 e3a03000 mov r3, #0
0004c e5823000 str r3, [r2]
; 221 :
; 222 : //
; 223 : // enable this uart
; 224 : //
; 225 : *UART1_CR |= CR_UARTE;
00050 e59f3014 ldr r3, [pc, #0x14]
00054 e5933000 ldr r3, [r3]
00058 e3832001 orr r2, r3, #1
0005c e59f3008 ldr r3, [pc, #8]
00060 e5832000 str r2, [r3]
; 226 :
; 227 : return;
; 228 : }//end uart1_start
00064 e49de004 ldr lr, [sp], #4
00068 e12fff1e bx lr
0006c |$L38500|
0006c 808c0014 DCD 0x808c0014
00070 808c001c DCD 0x808c001c
00074 808c0100 DCD 0x808c0100
00078 808c0004 DCD 0x808c0004
0007c 808c0008 DCD 0x808c0008
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -