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

📄 main.cod

📁 Ep93XX TionProV2 BSP
💻 COD
📖 第 1 页 / 共 3 页
字号:
; Listing generated by Microsoft (R) Optimizing Compiler Version 13.10.4237 

	TTL	C:\WINCE500\PLATFORM\Ep93xx\Src\Bootloader\Common\.\main.c
	CODE32

  00000			 AREA	 |.drectve|, DRECTVE
	DCB	"-defaultlib:coredll.lib "
	DCB	"-defaultlib:corelibc.lib "

	EXPORT	|bEthLaunch| [ DATA ]

  00000			 AREA	 |.data|, DATA
	 COMMON	|EdbgDebugZone|, 0x4


  00000			 AREA	 |.bss|, NOINIT
|bEthLaunch| %	0x4
|pfnPlatformInit2| % 0x4
|pfnPreDownload| % 0x4
|pfnReadData| %	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	|??_C@_0DG@MAPNMLCE@ERROR?3?5EbootWaitForHostConenct?5f@| [ DATA ] ; `string'
	EXPORT	|??_C@_0CJ@BJAPMGEC@EBOOT?3?5pCfgData?5?$DN?50x?$CFx?0?5pCfgData@| [ DATA ] ; `string'
	EXPORT	|??_C@_0DI@BBOLALAE@Enabling?5debug?5messages?5over?5Eth@| [ DATA ] ; `string'
	EXPORT	|OEMLaunch|
	EXPORT	|??_C@_0DI@JCOIGDHP@Enabling?5CESH?5over?5Ethernet?0?5?5?5?5@| [ DATA ] ; `string'
	EXPORT	|??_C@_0DI@NGLJEIDL@Enabling?5KDBG?5over?5Ethernet?0?5?5?5?5@| [ DATA ] ; `string'
	EXPORT	|??_C@_0CE@IBJJNLHI@INFO?3?5Jumping?5to?5image?5at?50x?$CFX?4?4@| [ DATA ] ; `string'
	IMPORT	|DelayInuSec|
	IMPORT	|EbootWaitForHostConnect|
	IMPORT	|memcpy|
	IMPORT	|memset|
	IMPORT	|EdbgOutputDebugString|
	IMPORT	|inet_ntoa|
; File c:\wince500\platform\ep93xx\src\bootloader\common\main.c

  00000			 AREA	 |.text| { |OEMLaunch| }, CODE, ARM, SELECTION=1 ; comdat noduplicate

  00000			 AREA	 |.pdata$$OEMLaunch|, PDATA, SELECTION=5, ASSOC=|.text| { |OEMLaunch| } ; comdat associative
|$T39503| DCD	|$L39502|
	DCD	0x40011e04

  00000			 AREA	 |.rdata| { |??_C@_0CE@IBJJNLHI@INFO?3?5Jumping?5to?5image?5at?50x?$CFX?4?4@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_0CE@IBJJNLHI@INFO?3?5Jumping?5to?5image?5at?50x?$CFX?4?4@| DCB "IN"
	DCB	"FO: Jumping to image at 0x%X...", 0xd, 0xa, 0x0 ; `string'

  00000			 AREA	 |.rdata| { |??_C@_0DI@NGLJEIDL@Enabling?5KDBG?5over?5Ethernet?0?5?5?5?5@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_0DI@NGLJEIDL@Enabling?5KDBG?5over?5Ethernet?0?5?5?5?5@| DCB "Enabl"
	DCB	"ing KDBG over Ethernet,           IP: %s, port:%u", 0xa, 0x0 ; `string'

  00000			 AREA	 |.rdata| { |??_C@_0DI@JCOIGDHP@Enabling?5CESH?5over?5Ethernet?0?5?5?5?5@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_0DI@JCOIGDHP@Enabling?5CESH?5over?5Ethernet?0?5?5?5?5@| DCB "Enabl"
	DCB	"ing CESH over Ethernet,           IP: %s, port:%u", 0xa, 0x0 ; `string'

  00000			 AREA	 |.rdata| { |??_C@_0DI@BBOLALAE@Enabling?5debug?5messages?5over?5Eth@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_0DI@BBOLALAE@Enabling?5debug?5messages?5over?5Eth@| DCB "Enabling "
	DCB	"debug messages over Ethernet, IP: %s, port:%u", 0xa, 0x0 ; `string'

  00000			 AREA	 |.rdata| { |??_C@_0CJ@BJAPMGEC@EBOOT?3?5pCfgData?5?$DN?50x?$CFx?0?5pCfgData@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_0CJ@BJAPMGEC@EBOOT?3?5pCfgData?5?$DN?50x?$CFx?0?5pCfgData@| DCB "E"
	DCB	"BOOT: pCfgData = 0x%x, pCfgData->Flags", 0xa, 0x0 ; `string'

  00000			 AREA	 |.rdata| { |??_C@_0DG@MAPNMLCE@ERROR?3?5EbootWaitForHostConenct?5f@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_0DG@MAPNMLCE@ERROR?3?5EbootWaitForHostConenct?5f@| DCB "ERROR: Ebo"
	DCB	"otWaitForHostConenct failed, spin forever", 0xd, 0xa, 0x0 ; `string'
; Function compile flags: /Ods

  00000			 AREA	 |.text| { |OEMLaunch| }, CODE, ARM, SELECTION=1 ; comdat noduplicate

  00000		 |OEMLaunch| PROC

; 140  : {

  00000		 |$L39502|
  00000	e1a0c00d	 mov         r12, sp
  00004	e92d000f	 stmdb       sp!, {r0 - r3}
  00008	e92d5000	 stmdb       sp!, {r12, lr}
  0000c	e24dd020	 sub         sp, sp, #0x20
  00010		 |$M39500|

; 141  :     EDBG_OS_CONFIG_DATA *pCfgData;    
; 142  :     EDBG_ADDR EshellHostAddr;
; 143  : 
; 144  :     if (bEthLaunch)	// Wait for host connection?

  00010	e59f3444	 ldr         r3, [pc, #0x444]
  00014	e5933000	 ldr         r3, [r3]
  00018	e3530000	 cmp         r3, #0
  0001c	0a0000fa	 beq         |$L39377|

; 145  :     {
; 146  :         memset (&EshellHostAddr, 0, sizeof (EshellHostAddr));

  00020	e3a0200c	 mov         r2, #0xC
  00024	e3a01000	 mov         r1, #0
  00028	e28d0000	 add         r0, sp, #0
  0002c	eb000000	 bl          memset

; 147  :         //pDriverGlobals->eth.EdbgAddr
; 148  : 
; 149  :         if (!(pCfgData = EbootWaitForHostConnect(&pDriverGlobals->eth.EdbgAddr, &EshellHostAddr)))

  00030	e28d1000	 add         r1, sp, #0
  00034	e3a03b22	 mov         r3, #0x22, 22
  00038	e3830010	 orr         r0, r3, #0x10
  0003c	eb000000	 bl          EbootWaitForHostConnect
  00040	e58d0010	 str         r0, [sp, #0x10]
  00044	e59d3010	 ldr         r3, [sp, #0x10]
  00048	e58d300c	 str         r3, [sp, #0xC]
  0004c	e59d300c	 ldr         r3, [sp, #0xC]
  00050	e3530000	 cmp         r3, #0
  00054	1a000002	 bne         |$L39379|

; 150  :         {
; 151  :             EdbgOutputDebugString("ERROR: EbootWaitForHostConenct failed, spin forever\r\n");

  00058	e59f0414	 ldr         r0, [pc, #0x414]
  0005c	eb000000	 bl          EdbgOutputDebugString

; 152  :             SpinForever();

  00060	eb000000	 bl          SpinForever
  00064		 |$L39379|

; 153  :         }
; 154  :         EdbgOutputDebugString
; 155  :         (
; 156  :             "EBOOT: pCfgData = 0x%x, pCfgData->Flags\n",
; 157  :             (ULONG)pCfgData,
; 158  :             (ULONG)pCfgData->Flags
; 159  :         );

  00064	e59d300c	 ldr         r3, [sp, #0xC]
  00068	e5d32000	 ldrb        r2, [r3]
  0006c	e59d100c	 ldr         r1, [sp, #0xC]
  00070	e59f03f8	 ldr         r0, [pc, #0x3F8]
  00074	eb000000	 bl          EdbgOutputDebugString

; 160  : 
; 161  :         if (pCfgData->Flags & EDBG_FL_DBGMSG)

  00078	e59d300c	 ldr         r3, [sp, #0xC]
  0007c	e5d33000	 ldrb        r3, [r3]
  00080	e3130001	 tst         r3, #1
  00084	0a000044	 beq         |$L39384|

; 162  :         {
; 163  :             EdbgOutputDebugString("Enabling debug messages over Ethernet, IP: %s, port:%u\n",
; 164  :                               inet_ntoa(pCfgData->DbgMsgIPAddr),ntohs(pCfgData->DbgMsgPort));

  00088	e59d300c	 ldr         r3, [sp, #0xC]
  0008c	e2831002	 add         r1, r3, #2
  00090	e5d13003	 ldrb        r3, [r1, #3]
  00094	e1a02403	 mov         r2, r3, lsl #8
  00098	e5d13002	 ldrb        r3, [r1, #2]
  0009c	e1833002	 orr         r3, r3, r2
  000a0	e1a02403	 mov         r2, r3, lsl #8
  000a4	e5d13001	 ldrb        r3, [r1, #1]
  000a8	e1833002	 orr         r3, r3, r2
  000ac	e1a02403	 mov         r2, r3, lsl #8
  000b0	e5d13000	 ldrb        r3, [r1]
  000b4	e1830002	 orr         r0, r3, r2
  000b8	eb000000	 bl          inet_ntoa
  000bc	e58d0014	 str         r0, [sp, #0x14]
  000c0	e59d300c	 ldr         r3, [sp, #0xC]
  000c4	e2831006	 add         r1, r3, #6
  000c8	e5d13001	 ldrb        r3, [r1, #1]
  000cc	e1a03403	 mov         r3, r3, lsl #8
  000d0	e1a02803	 mov         r2, r3, lsl #16
  000d4	e1a02822	 mov         r2, r2, lsr #16
  000d8	e5d13000	 ldrb        r3, [r1]
  000dc	e1833002	 orr         r3, r3, r2
  000e0	e1a00403	 mov         r0, r3, lsl #8
  000e4	e59d300c	 ldr         r3, [sp, #0xC]
  000e8	e2831006	 add         r1, r3, #6
  000ec	e5d13001	 ldrb        r3, [r1, #1]
  000f0	e1a03403	 mov         r3, r3, lsl #8
  000f4	e1a02803	 mov         r2, r3, lsl #16
  000f8	e1a02822	 mov         r2, r2, lsr #16
  000fc	e5d13000	 ldrb        r3, [r1]
  00100	e1833002	 orr         r3, r3, r2
  00104	e1a03443	 mov         r3, r3, asr #8
  00108	e1803003	 orr         r3, r0, r3
  0010c	e1a02803	 mov         r2, r3, lsl #16
  00110	e1a02822	 mov         r2, r2, lsr #16
  00114	e59d1014	 ldr         r1, [sp, #0x14]
  00118	e59f034c	 ldr         r0, [pc, #0x34C]
  0011c	eb000000	 bl          EdbgOutputDebugString

; 165  :             memcpy((void *)&pDriverGlobals->eth.DbgHostAddr.wMAC, (void *)&EshellHostAddr.wMAC,6);

  00120	e3a02006	 mov         r2, #6
  00124	e28d1004	 add         r1, sp, #4
  00128	e3a03b22	 mov         r3, #0x22, 22
  0012c	e3830038	 orr         r0, r3, #0x38
  00130	eb000000	 bl          memcpy

; 166  :             pDriverGlobals->eth.DbgHostAddr.dwIP  = pCfgData->DbgMsgIPAddr;

  00134	e59d300c	 ldr         r3, [sp, #0xC]
  00138	e2830002	 add         r0, r3, #2
  0013c	e3a03b22	 mov         r3, #0x22, 22
  00140	e3831034	 orr         r1, r3, #0x34
  00144	e5d03003	 ldrb        r3, [r0, #3]
  00148	e1a02403	 mov         r2, r3, lsl #8
  0014c	e5d03002	 ldrb        r3, [r0, #2]
  00150	e1833002	 orr         r3, r3, r2
  00154	e1a02403	 mov         r2, r3, lsl #8
  00158	e5d03001	 ldrb        r3, [r0, #1]
  0015c	e1833002	 orr         r3, r3, r2
  00160	e1a02403	 mov         r2, r3, lsl #8
  00164	e5d03000	 ldrb        r3, [r0]
  00168	e1833002	 orr         r3, r3, r2
  0016c	e5813000	 str         r3, [r1]

; 167  :             pDriverGlobals->eth.DbgHostAddr.wPort = pCfgData->DbgMsgPort;

  00170	e59d300c	 ldr         r3, [sp, #0xC]
  00174	e2830006	 add         r0, r3, #6
  00178	e3a03b22	 mov         r3, #0x22, 22
  0017c	e383103e	 orr         r1, r3, #0x3E
  00180	e5d03001	 ldrb        r3, [r0, #1]
  00184	e1a03403	 mov         r3, r3, lsl #8
  00188	e1a02803	 mov         r2, r3, lsl #16
  0018c	e1a02822	 mov         r2, r2, lsr #16
  00190	e5d03000	 ldrb        r3, [r0]
  00194	e1833002	 orr         r3, r3, r2
  00198	e1c130b0	 strh        r3, [r1]
  0019c		 |$L39384|

; 168  :         }
; 169  :         if (pCfgData->Flags & EDBG_FL_PPSH)

  0019c	e59d300c	 ldr         r3, [sp, #0xC]
  001a0	e5d33000	 ldrb        r3, [r3]
  001a4	e3130002	 tst         r3, #2
  001a8	0a000044	 beq         |$L39395|

; 170  :         {
; 171  :             EdbgOutputDebugString("Enabling CESH over Ethernet,           IP: %s, port:%u\n",
; 172  :                               inet_ntoa(pCfgData->PpshIPAddr),ntohs(pCfgData->PpshPort));

  001ac	e59d300c	 ldr         r3, [sp, #0xC]
  001b0	e2831008	 add         r1, r3, #8
  001b4	e5d13003	 ldrb        r3, [r1, #3]
  001b8	e1a02403	 mov         r2, r3, lsl #8
  001bc	e5d13002	 ldrb        r3, [r1, #2]
  001c0	e1833002	 orr         r3, r3, r2
  001c4	e1a02403	 mov         r2, r3, lsl #8
  001c8	e5d13001	 ldrb        r3, [r1, #1]
  001cc	e1833002	 orr         r3, r3, r2
  001d0	e1a02403	 mov         r2, r3, lsl #8
  001d4	e5d13000	 ldrb        r3, [r1]
  001d8	e1830002	 orr         r0, r3, r2
  001dc	eb000000	 bl          inet_ntoa
  001e0	e58d0018	 str         r0, [sp, #0x18]
  001e4	e59d300c	 ldr         r3, [sp, #0xC]
  001e8	e283100c	 add         r1, r3, #0xC
  001ec	e5d13001	 ldrb        r3, [r1, #1]
  001f0	e1a03403	 mov         r3, r3, lsl #8
  001f4	e1a02803	 mov         r2, r3, lsl #16
  001f8	e1a02822	 mov         r2, r2, lsr #16
  001fc	e5d13000	 ldrb        r3, [r1]
  00200	e1833002	 orr         r3, r3, r2
  00204	e1a00403	 mov         r0, r3, lsl #8
  00208	e59d300c	 ldr         r3, [sp, #0xC]
  0020c	e283100c	 add         r1, r3, #0xC
  00210	e5d13001	 ldrb        r3, [r1, #1]
  00214	e1a03403	 mov         r3, r3, lsl #8
  00218	e1a02803	 mov         r2, r3, lsl #16
  0021c	e1a02822	 mov         r2, r2, lsr #16
  00220	e5d13000	 ldrb        r3, [r1]
  00224	e1833002	 orr         r3, r3, r2
  00228	e1a03443	 mov         r3, r3, asr #8
  0022c	e1803003	 orr         r3, r0, r3
  00230	e1a02803	 mov         r2, r3, lsl #16
  00234	e1a02822	 mov         r2, r2, lsr #16
  00238	e59d1018	 ldr         r1, [sp, #0x18]
  0023c	e59f0224	 ldr         r0, [pc, #0x224]
  00240	eb000000	 bl          EdbgOutputDebugString

; 173  :             memcpy((void *)&pDriverGlobals->eth.PpshHostAddr.wMAC, (void *)&EshellHostAddr.wMAC,6);

  00244	e3a02006	 mov         r2, #6
  00248	e28d1004	 add         r1, sp, #4
  0024c	e3a03b22	 mov         r3, #0x22, 22

⌨️ 快捷键说明

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