📄 debug.cod
字号:
; Listing generated by Microsoft (R) Optimizing Compiler Version 12.20.9615
TTL d:\wince420\platform\ep931x\eboot\.\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 "AD", 0x0
DCW 0x1050
DCW 0x940
DCD 0x4005
DCB 0x1
DCB "LS", 0x0
DCW 0x1050
DCW 0x940
DCD 0x2078
DCB 0x1
DCB "LS", 0x0
DCW 0x10ec
DCW 0x8029
DCD 0xc0f0
DCB 0x1
DCB "KS", 0x0
DCW 0x10ec
DCW 0x8129
DCD 0x0
DCB 0x4
DCB "RT", 0x0
DCW 0x10ec
DCW 0x8139
DCD 0x900b
DCB 0x4
DCB "RT", 0x0
DCW 0x10ec
DCW 0x8139
DCD 0xd0c9
DCB 0x4
DCB "RT", 0x0
DCW 0x10ec
DCW 0x8139
DCD 0xe04c
DCB 0x4
DCB "RT", 0x0
DCW 0x1186
DCW 0x1300
DCD 0x50ba
DCB 0x4
DCB "DL", 0x0
DCW 0x100b
DCW 0x20
DCD 0xa0cc
DCB 0x5
DCB "NG", 0x0
DCW 0x10b7
DCW 0x9050
DCD 0x6008
DCB 0x6
DCB "3C", 0x0
DCW 0x10b7
DCW 0x9200
DCD 0x476
DCB 0x6
DCB "3C", 0x0
EXPORT |UART3_Start|
EXPORT |OEMInitDebugSerial|
; File d:\wince420\platform\ep931x\kernel\hal\debug.c
00000 AREA |.text| { |OEMInitDebugSerial| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 AREA |.pdata$$OEMInitDebugSerial|, PDATA, SELECTION=5, ASSOC=|.text| { |OEMInitDebugSerial| } ; comdat associative
|$T36949| DCD |OEMInitDebugSerial|
DCD 0x40000c01
; Function compile flags: /Ogsy
00000 AREA |.text| { |OEMInitDebugSerial| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |OEMInitDebugSerial| PROC
; 100 : {
00000 e92d4030 stmdb sp!, {r4, r5, lr}
00004 |$M36947|
; 101 : if(giSerialInitialized !=SERIAL_INITIALIZED_CHECK)
00004 e59f4020 ldr r4, [pc, #0x20]
00008 e59f5018 ldr r5, [pc, #0x18]
0000c e5940000 ldr r0, [r4]
00010 e1500005 cmp r0, r5
00014 0a000001 beq |$L36723|
; 102 : {
; 103 : UartStart();
00018 eb000000 bl UART3_Start
; 104 : giSerialInitialized = SERIAL_INITIALIZED_CHECK;
0001c e5845000 str r5, [r4]
00020 |$L36723|
; 105 : }
; 106 : }
00020 e8bd4030 ldmia sp!, {r4, r5, lr}
00024 e12fff1e bx lr
00028 |$L36951|
00028 12345678 DCD 0x12345678
0002c 00000000 DCD |giSerialInitialized|
00030 |$M36948|
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
|$T36958| DCD |OEMWriteDebugLED|
DCD 0x40000d01
; Function compile flags: /Ogsy
00000 AREA |.text| { |OEMWriteDebugLED| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |OEMWriteDebugLED| PROC
; 118 : {
00000 e92d4010 stmdb sp!, {r4, lr}
00004 |$M36956|
00004 e1a03001 mov r3, r1
; 119 : if (wIndex == 0)
00008 e1a00800 mov r0, r0, lsl #16
0000c e1b01820 movs r1, r0, lsr #16
; 120 : {
; 121 :
; 122 : *GPIO_PEDR = (dwPattern & (GPIOE_RLED | GPIOE_GLED)) |
; 123 : (*GPIO_PEDR & ~(GPIOE_RLED | GPIOE_GLED)) ;
00010 059f4018 ldreq r4, [pc, #0x18]
00014 02031003 andeq r1, r3, #3
00018 05940000 ldreq r0, [r4]
0001c 03c02003 biceq r2, r0, #3
00020 01820001 orreq r0, r2, r1
00024 05840000 streq r0, [r4]
; 124 : }
; 125 : }
00028 e8bd4010 ldmia sp!, {r4, lr}
0002c e12fff1e bx lr
00030 |$L36960|
00030 80840020 DCD 0x80840020
00034 |$M36957|
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
|$T36970| DCD |OEMWriteDebugString|
DCD 0x40000c01
; Function compile flags: /Ogsy
00000 AREA |.text| { |OEMWriteDebugString| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |OEMWriteDebugString| PROC
; 135 : {
00000 e92d4010 stmdb sp!, {r4, lr}
00004 |$M36968|
00004 e1a04000 mov r4, r0
; 136 : //
; 137 : // Send message to serial port
; 138 : //
; 139 : while ( *str )
00008 e1d420b0 ldrh r2, [r4]
0000c ea000002 b |$L36967|
00010 |$L36736|
; 140 : {
; 141 : OEMWriteDebugByte((unsigned char)*str++);
00010 e20200ff and r0, r2, #0xFF
00014 eb000000 bl OEMWriteDebugByte
00018 e1f420b2 ldrh r2, [r4, #2]!
0001c |$L36967|
0001c e1a00802 mov r0, r2, lsl #16
00020 e1b01820 movs r1, r0, lsr #16
00024 1afffff9 bne |$L36736|
; 142 : }
; 143 : }
00028 e8bd4010 ldmia sp!, {r4, lr}
0002c e12fff1e bx lr
00030 |$M36969|
ENDP ; |OEMWriteDebugString|
EXPORT |UART3_Write|
00000 AREA |.text| { |OEMWriteDebugByte| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 AREA |.pdata$$OEMWriteDebugByte|, PDATA, SELECTION=5, ASSOC=|.text| { |OEMWriteDebugByte| } ; comdat associative
|$T36977| DCD |OEMWriteDebugByte|
DCD 0x40000401
; Function compile flags: /Ogsy
00000 AREA |.text| { |OEMWriteDebugByte| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |OEMWriteDebugByte| PROC
; 152 : {
00000 e52de004 str lr, [sp, #-4]!
00004 |$M36975|
; 153 : UartWrite(ch);
00004 eb000000 bl UART3_Write
; 154 : }
00008 e8bd4000 ldmia sp!, {lr}
0000c e12fff1e bx lr
00010 |$M36976|
ENDP ; |OEMWriteDebugByte|
EXPORT |UART3_Read|
EXPORT |OEMReadDebugByte|
00000 AREA |.text| { |OEMReadDebugByte| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 AREA |.pdata$$OEMReadDebugByte|, PDATA, SELECTION=5, ASSOC=|.text| { |OEMReadDebugByte| } ; comdat associative
|$T36984| DCD |OEMReadDebugByte|
DCD 0x40000401
; Function compile flags: /Ogsy
00000 AREA |.text| { |OEMReadDebugByte| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |OEMReadDebugByte| PROC
; 167 : {
00000 e52de004 str lr, [sp, #-4]!
00004 |$M36982|
; 168 : return(UartRead());
00004 eb000000 bl UART3_Read
; 169 : }
00008 e8bd4000 ldmia sp!, {lr}
0000c e12fff1e bx lr
00010 |$M36983|
ENDP ; |OEMReadDebugByte|
EXPORT |UART3_ClearError|
EXPORT |OEMClearDebugCommError|
00000 AREA |.text| { |OEMClearDebugCommError| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 AREA |.pdata$$OEMClearDebugCommError|, PDATA, SELECTION=5, ASSOC=|.text| { |OEMClearDebugCommError| } ; comdat associative
|$T36990| DCD |OEMClearDebugCommError|
DCD 0x40000401
; Function compile flags: /Ogsy
00000 AREA |.text| { |OEMClearDebugCommError| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |OEMClearDebugCommError| PROC
; 179 : {
00000 e52de004 str lr, [sp, #-4]!
00004 |$M36988|
; 180 : UartClearError();
00004 eb000000 bl UART3_ClearError
; 181 : }
00008 e8bd4000 ldmia sp!, {lr}
0000c e12fff1e bx lr
00010 |$M36989|
ENDP ; |OEMClearDebugCommError|
EXPORT |UART3_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
|$T36996| DCD |OEMUartStop|
DCD 0x40000801
; Function compile flags: /Ogsy
00000 AREA |.text| { |OEMUartStop| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |OEMUartStop| PROC
; 190 : {
00000 e52de004 str lr, [sp, #-4]!
00004 |$M36994|
; 191 : UartStop();
00004 eb000000 bl UART3_Stop
; 192 : giSerialInitialized = 0;
00008 e59f300c ldr r3, [pc, #0xC]
0000c e3a00000 mov r0, #0
00010 e5830000 str r0, [r3]
; 193 : }
00014 e8bd4000 ldmia sp!, {lr}
00018 e12fff1e bx lr
0001c |$L36998|
0001c 00000000 DCD |giSerialInitialized|
00020 |$M36995|
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
|$T37003| DCD |UART1_Start|
DCD 0x40001f01
; Function compile flags: /Ogsy
00000 AREA |.text| { |UART1_Start| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |UART1_Start| PROC
; 202 : {
00000 e92d4010 stmdb sp!, {r4, lr}
00004 |$M37001|
; 203 : UART1_Stop();
00004 eb000000 bl UART1_Stop
; 204 :
; 205 : //
; 206 : // Set up default baudrate
; 207 : //
; 208 : *UART1_LCR_M = 0 ;
00008 e59f3068 ldr r3, [pc, #0x68]
0000c e3a04000 mov r4, #0
; 209 : *UART1_LCR_L = UART_DIVISOR(DEBUG_UART_SPEED);
00010 e59f105c ldr r1, [pc, #0x5C]
00014 e3a0000b mov r0, #0xB
00018 e5834000 str r4, [r3]
0001c e5810000 str r0, [r1]
; 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 e3a00070 mov r0, #0x70
00024 e59f2044 ldr r2, [pc, #0x44]
; 215 :
; 216 :
; 217 : // Clear old status.
; 218 : *UART1_SR = 0;
00028 e59f103c ldr r1, [pc, #0x3C]
0002c e5820000 str r0, [r2]
; 219 : *UART1_MCR = MCR_RTS | MCR_DTR;
00030 e3a00003 mov r0, #3
00034 e59f202c ldr r2, [pc, #0x2C]
00038 e5814000 str r4, [r1]
0003c e5820000 str r0, [r2]
; 220 : *UART1_IIR = 0;
00040 e59f101c ldr r1, [pc, #0x1C]
; 221 :
; 222 : //
; 223 : // enable this uart
; 224 : //
; 225 : *UART1_CR |= CR_UARTE;
00044 e59f2014 ldr r2, [pc, #0x14]
00048 e5814000 str r4, [r1]
0004c e5920000 ldr r0, [r2]
00050 e3801001 orr r1, r0, #1
00054 e5821000 str r1, [r2]
; 226 :
; 227 : return;
; 228 : }//end uart1_start
00058 e8bd4010 ldmia sp!, {r4, lr}
0005c e12fff1e bx lr
00060 |$L37005|
00060 808c0014 DCD 0x808c0014
00064 808c001c DCD 0x808c001c
00068 808c0100 DCD 0x808c0100
0006c 808c0004 DCD 0x808c0004
00070 808c0008 DCD 0x808c0008
00074 808c0010 DCD 0x808c0010
00078 808c000c DCD 0x808c000c
0007c |$M37002|
ENDP ; |UART1_Start|
EXPORT |UART2_Start|
EXPORT |UART2_Stop|
00000 AREA |.text| { |UART2_Start| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 AREA |.pdata$$UART2_Start|, PDATA, SELECTION=5, ASSOC=|.text| { |UART2_Start| } ; comdat associative
|$T37010| DCD |UART2_Start|
DCD 0x40001b01
; Function compile flags: /Ogsy
00000 AREA |.text| { |UART2_Start| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |UART2_Start| PROC
; 236 : {
00000 e92d4010 stmdb sp!, {r4, lr}
00004 |$M37008|
; 237 : UART2_Stop();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -