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

📄 main.cod

📁 EP9315的BSP包(WINCE下的BSP,内有各种驱动的详细的代码)
💻 COD
📖 第 1 页 / 共 3 页
字号:
			 ENDP  ; |EbootMain|

	EXPORT	|OEMDebugInit|
	IMPORT	|DebugTimerInit|
	IMPORT	|OEMPCMCIAInitialize|
	IMPORT	|OEMInitDebugSerial|

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

  00000			 AREA	 |.pdata$$OEMDebugInit|, PDATA, SELECTION=5, ASSOC=|.text| { |OEMDebugInit| } ; comdat associative
|$T37707| DCD	|OEMDebugInit|
	DCD	0x40000701
; Function compile flags: /Ogsy

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

  00000		 |OEMDebugInit| PROC

; 286  : {

  00000	e52de004	 str       lr, [sp, #-4]!
  00004		 |$M37705|

; 287  :     //
; 288  :     // Initialize our debug UART.
; 289  :     //
; 290  :     OEMInitDebugSerial();

  00004	eb000000	 bl        OEMInitDebugSerial

; 291  : 
; 292  :     //
; 293  :     // Initialize the debug timer.
; 294  :     //
; 295  :     DebugTimerInit();

  00008	eb000000	 bl        DebugTimerInit

; 296  : 
; 297  :     //
; 298  :     // Initialize a PCMCIA card. Temporarily comment out.
; 299  :     //
; 300  :     OEMPCMCIAInitialize();

  0000c	eb000000	 bl        OEMPCMCIAInitialize

; 301  : 
; 302  : 
; 303  :     return(TRUE);

  00010	e3a00001	 mov       r0, #1

; 304  : }

  00014	e8bd4000	 ldmia     sp!, {lr}
  00018	e12fff1e	 bx        lr
  0001c		 |$M37706|

			 ENDP  ; |OEMDebugInit|

	EXPORT	|??_C@_08LKFE@09?353?331?$AA@| [ DATA ]	; `string'
	EXPORT	|??_C@_0M@KPDK@Jan?520?52007?$AA@| [ DATA ] ; `string'
	EXPORT	|??_C@_0LE@EHGJ@?6?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN@| [ DATA ] ; `string'
	EXPORT	|??_C@_0DB@IBDB@Downloading?5BIN?5file?5using?5compa@| [ DATA ] ; `string'
	EXPORT	|??_C@_0CH@NKHJ@Downloading?5BIN?5file?5using?5Ether@| [ DATA ] ; `string'
	EXPORT	|OEMPlatformInit|
	IMPORT	|EbootEtherReadData|
	IMPORT	|OEMHDDPlatformInit|
	IMPORT	|OEMHDDPreDownload|
	IMPORT	|OEMHDDReadData|
	IMPORT	|OEMHDDDetect|
	IMPORT	|OEMEthPreDownload|
	IMPORT	|OEMEthHardwareInit|

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

  00000			 AREA	 |.pdata$$OEMPlatformInit|, PDATA, SELECTION=5, ASSOC=|.text| { |OEMPlatformInit| } ; comdat associative
|$T37714| DCD	|OEMPlatformInit|
	DCD	0x40003901

  00000			 AREA	 |.rdata| { |??_C@_08LKFE@09?353?331?$AA@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_08LKFE@09?353?331?$AA@| DCB "09:53:31", 0x0	; `string'

  00000			 AREA	 |.rdata| { |??_C@_0M@KPDK@Jan?520?52007?$AA@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_0M@KPDK@Jan?520?52007?$AA@| DCB "Jan 20 2007", 0x0 ; `string'

  00000			 AREA	 |.rdata| { |??_C@_0LE@EHGJ@?6?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_0LE@EHGJ@?6?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN@| DCB 0xa
	DCB	"========================================================"
	DCB	"====", 0xa, "EP931x Windows CE Ethernet Bootloader ", 0xa
	DCB	"(Built on %s %s)", 0xa, "==============================="
	DCB	"=============================", 0xa, 0x0 ; `string'

  00000			 AREA	 |.rdata| { |??_C@_0DB@IBDB@Downloading?5BIN?5file?5using?5compa@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_0DB@IBDB@Downloading?5BIN?5file?5using?5compa@| DCB "Downloading B"
	DCB	"IN file using compact flash card.", 0xd, 0xa, 0x0 ; `string'

  00000			 AREA	 |.rdata| { |??_C@_0CH@NKHJ@Downloading?5BIN?5file?5using?5Ether@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_0CH@NKHJ@Downloading?5BIN?5file?5using?5Ether@| DCB "Downloading B"
	DCB	"IN file using Ethernet.", 0xd, 0xa, 0x0 ; `string'
; Function compile flags: /Ogsy

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

  00000		 |OEMPlatformInit| PROC

; 316  : {

  00000	e92d4010	 stmdb     sp!, {r4, lr}
  00004		 |$M37712|

; 317  :     BOOL fRet = FALSE;
; 318  :     UCHAR i = 0;
; 319  : 
; 320  :     EdbgOutputDebugString("\n============================================================\n"
; 321  :                           "EP931x Windows CE Ethernet Bootloader \n"
; 322  :                           "(Built on %s %s)"
; 323  :                           "\n============================================================\n",
; 324  :                           __DATE__, __TIME__);

  00004	e59f20d4	 ldr       r2, [pc, #0xD4]
  00008	e59f10cc	 ldr       r1, [pc, #0xCC]
  0000c	e59f00c4	 ldr       r0, [pc, #0xC4]
  00010	eb000000	 bl        EdbgOutputDebugString

; 325  : 
; 326  :     //
; 327  :     // RLG temp.
; 328  :     //
; 329  : 
; 330  :     #if 0
; 331  : 
; 332  :     //
; 333  :     // Initiailize the parallel port
; 334  :     //    
; 335  :     OEMInitParallelPort();
; 336  :     
; 337  :     //
; 338  :     // Check to see if the parallel port is ready.
; 339  :     //
; 340  :     if (OEMIsParallelReady()) 
; 341  :     {
; 342  :         EdbgOutputDebugString("Downloading BIN file using parallel port.\r\n");
; 343  :         pfnPlatformInit2 = NULL;
; 344  :         pfnPreDownload   = ParallelPreDownload;
; 345  :         pfnReadData      = ParallelPortRead;
; 346  :         bEthLaunch       = FALSE;
; 347  :         fRet             = TRUE;
; 348  :     } else
; 349  :     #endif // 0
; 350  :     if(OEMHDDDetect())

  00014	eb000000	 bl        OEMHDDDetect
  00018	e3a04001	 mov       r4, #1
  0001c	e3500000	 cmp       r0, #0
  00020	0a00000c	 beq       |$L37609|

; 351  :     {
; 352  :         EdbgOutputDebugString("Downloading BIN file using compact flash card.\r\n");

  00024	e59f00a8	 ldr       r0, [pc, #0xA8]
  00028	eb000000	 bl        EdbgOutputDebugString

; 353  :         pfnPlatformInit2 = OEMHDDPlatformInit;

  0002c	e59f308c	 ldr       r3, [pc, #0x8C]

; 354  :         pfnPreDownload   = OEMHDDPreDownload;

  00030	e59f0098	 ldr       r0, [pc, #0x98]

; 355  :         pfnReadData      = OEMHDDReadData;

  00034	e59f1090	 ldr       r1, [pc, #0x90]
  00038	e5830004	 str       r0, [r3, #4]
  0003c	e59f2084	 ldr       r2, [pc, #0x84]

; 356  :         bEthLaunch       = FALSE;

  00040	e59f0064	 ldr       r0, [pc, #0x64]
  00044	e5831008	 str       r1, [r3, #8]
  00048	e3a01000	 mov       r1, #0
  0004c	e5832000	 str       r2, [r3]
  00050	e5801000	 str       r1, [r0]

; 357  :         fRet             = TRUE;
; 358  :     }
; 359  :     else  

  00054	ea00000e	 b         |$L37611|
  00058		 |$L37609|

; 360  :     {
; 361  :         EdbgOutputDebugString("Downloading BIN file using Ethernet.\r\n");

  00058	e59f0064	 ldr       r0, [pc, #0x64]
  0005c	eb000000	 bl        EdbgOutputDebugString

; 362  :         pfnPlatformInit2 = OEMEthHardwareInit;

  00060	e59f3058	 ldr       r3, [pc, #0x58]
  00064	e59f0050	 ldr       r0, [pc, #0x50]

; 363  :         pfnPreDownload   = OEMEthPreDownload;

  00068	e59f1048	 ldr       r1, [pc, #0x48]
  0006c	e5830000	 str       r0, [r3]

; 364  :         pfnReadData      = EbootEtherReadData;

  00070	e59f203c	 ldr       r2, [pc, #0x3C]
  00074	e5831004	 str       r1, [r3, #4]

; 365  : 
; 366  :         //
; 367  :         // This tells the kernel to connect to the ethernet debugger.
; 368  :         //
; 369  :         pDriverGlobals->eth.EbootMagicNum = EBOOT_MAGIC_NUM;

  00078	e3a01b22	 mov       r1, #0x22, 22
  0007c	e59f002c	 ldr       r0, [pc, #0x2C]
  00080	e5832008	 str       r2, [r3, #8]
  00084	e5810000	 str       r0, [r1]

; 370  :         bEthLaunch       = TRUE;

  00088	e59f001c	 ldr       r0, [pc, #0x1C]
  0008c	e5932000	 ldr       r2, [r3]
  00090	e5804000	 str       r4, [r0]
  00094		 |$L37611|

; 371  :         fRet             = TRUE;
; 372  :     }
; 373  : 
; 374  : 
; 375  :     //
; 376  :     // Initialize ethernet.
; 377  :     //
; 378  :     if(pfnPlatformInit2)

  00094	e3520000	 cmp       r2, #0

; 379  :         pfnPlatformInit2();

  00098	11a0e00f	 movne     lr, pc
  0009c	112fff12	 bxne      r2

; 380  : 
; 381  : 
; 382  :     return(fRet);

  000a0	e1a00004	 mov       r0, r4

; 383  : }

  000a4	e8bd4010	 ldmia     sp!, {r4, lr}
  000a8	e12fff1e	 bx        lr
  000ac		 |$L37716|
  000ac	00000000	 DCD       |bEthLaunch|
  000b0	45424f54	 DCD       0x45424f54
  000b4	00000000	 DCD       |EbootEtherReadData|
  000b8	00000000	 DCD       |OEMEthPreDownload|
  000bc	00000000	 DCD       |OEMEthHardwareInit|
  000c0	00000000	 DCD       |pfnPlatformInit2|
  000c4	00000000	 DCD       |??_C@_0CH@NKHJ@Downloading?5BIN?5file?5using?5Ether@|
  000c8	00000000	 DCD       |OEMHDDPlatformInit|
  000cc	00000000	 DCD       |OEMHDDReadData|
  000d0	00000000	 DCD       |OEMHDDPreDownload|
  000d4	00000000	 DCD       |??_C@_0DB@IBDB@Downloading?5BIN?5file?5using?5compa@|
  000d8	00000000	 DCD       |??_C@_0LE@EHGJ@?6?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN?$DN@|
  000dc	00000000	 DCD       |??_C@_0M@KPDK@Jan?520?52007?$AA@|
  000e0	00000000	 DCD       |??_C@_08LKFE@09?353?331?$AA@|
  000e4		 |$M37713|

			 ENDP  ; |OEMPlatformInit|

	EXPORT	|OEMPreDownload|

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

  00000			 AREA	 |.pdata$$OEMPreDownload|, PDATA, SELECTION=5, ASSOC=|.text| { |OEMPreDownload| } ; comdat associative
|$T37723| DCD	|OEMPreDownload|
	DCD	0x40000e01
; Function compile flags: /Ogsy

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

  00000		 |OEMPreDownload| PROC

; 393  : {

  00000	e52de004	 str       lr, [sp, #-4]!
  00004		 |$M37721|

; 394  :     DWORD   dwReturnValue = BL_ERROR;
; 395  : 
; 396  :     //
; 397  :     // Read the data in from the device.
; 398  :     //
; 399  :     if(pfnReadData)

  00004	e59f1028	 ldr       r1, [pc, #0x28]
  00008	e3e02000	 mvn       r2, #0
  0000c	e5910004	 ldr       r0, [r1, #4]
  00010	e3500000	 cmp       r0, #0
  00014	0a000003	 beq       |$L37617|

; 400  :         dwReturnValue = pfnPreDownload();

  00018	e5910000	 ldr       r0, [r1]
  0001c	e1a0e00f	 mov       lr, pc
  00020	e12fff10	 bx        r0
  00024	e1a02000	 mov       r2, r0
  00028		 |$L37617|

; 401  : 
; 402  :     return dwReturnValue;    

  00028	e1a00002	 mov       r0, r2

; 403  : }

  0002c	e8bd4000	 ldmia     sp!, {lr}
  00030	e12fff1e	 bx        lr
  00034		 |$L37725|
  00034	00000000	 DCD       |pfnPreDownload|
  00038		 |$M37722|

			 ENDP  ; |OEMPreDownload|

	END

⌨️ 快捷键说明

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