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

📄 halkitl.cod

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

	TTL	C:\WINCE500\PLATFORM\Ep93xx\Src\Kernel\Hal\Common\.\halkitl.c
	CODE32

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


  00000			 AREA	 |.data|, DATA
	 COMMON	|bActiveKitl|, 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	|InitDebugEther|
	EXPORT	|??_C@_0BC@BHMLMOMN@KITL?5Initialized?6?$AA@| [ DATA ] ; `string'
	EXPORT	|??_C@_0DM@MDONNODM@KITL?5Initialization?5Failed?0?5No?5d@| [ DATA ] ; `string'
	IMPORT	|KitlInit|
	IMPORT	|EdbgOutputDebugString|
; File c:\wince500\platform\ep93xx\src\kernel\hal\common\halkitl.c

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

  00000			 AREA	 |.pdata$$InitDebugEther|, PDATA, SELECTION=5, ASSOC=|.text| { |InitDebugEther| } ; comdat associative
|$T15587| DCD	|$L15586|
	DCD	0x40000b01

  00000			 AREA	 |.rdata| { |??_C@_0DM@MDONNODM@KITL?5Initialization?5Failed?0?5No?5d@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_0DM@MDONNODM@KITL?5Initialization?5Failed?0?5No?5d@| DCB "KITL Ini"
	DCB	"tialization Failed, No debugging support available", 0xa
	DCB	0x0					; `string'

  00000			 AREA	 |.rdata| { |??_C@_0BC@BHMLMOMN@KITL?5Initialized?6?$AA@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_0BC@BHMLMOMN@KITL?5Initialized?6?$AA@| DCB "KITL Initialized", 0xa
	DCB	0x0					; `string'
; Function compile flags: /Ogsy

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

  00000		 |InitDebugEther| PROC

; 75   : {

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

; 76   :     // Initialize KITL transport
; 77   :     if (KitlInit (TRUE)) {

  00004	e3a00001	 mov         r0, #1
  00008	eb000000	 bl          KitlInit
  0000c	e3500000	 cmp         r0, #0

; 78   :         KITLOutputDebugString ("KITL Initialized\n");

  00010	159f0010	 ldrne       r0, [pc, #0x10]

; 79   :         // no longer need to start kernel services
; 80   :         // since KITL config message told us what to start and
; 81   :         // kitl will start it accordingly
; 82   : //        if (gpKitl->dwBootFlags & KITL_FL_DBGMSG)
; 83   : //            SetKernelCommDev (KERNEL_SVC_DBGMSG, KERNEL_COMM_ETHER);
; 84   : //        if (gpKitl->dwBootFlags & KITL_FL_PPSH)
; 85   : //            SetKernelCommDev (KERNEL_SVC_PPSH, KERNEL_COMM_ETHER);
; 86   : //        if (gpKitl->dwBootFlags & KITL_FL_KDBG)
; 87   : //            SetKernelCommDev (KERNEL_SVC_KDBG, KERNEL_COMM_ETHER);
; 88   :     } else {
; 89   :         KITLOutputDebugString ("KITL Initialization Failed, No debugging support available\n");

  00014	059f0008	 ldreq       r0, [pc, #8]
  00018	eb000000	 bl          EdbgOutputDebugString

; 90   :     }
; 91   : }

  0001c	e49de004	 ldr         lr, [sp], #4
  00020	e12fff1e	 bx          lr
  00024		 |$L15589|
  00024	00000000	 DCD         |??_C@_0DM@MDONNODM@KITL?5Initialization?5Failed?0?5No?5d@|
  00028	00000000	 DCD         |??_C@_0BC@BHMLMOMN@KITL?5Initialized?6?$AA@|
  0002c		 |$M15585|

			 ENDP  ; |InitDebugEther|

	EXPORT	|InitParallelSerial|
	IMPORT	|OEMInitParallelPort|
	IMPORT	|SetKernelCommDev|

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

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

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

  00000		 |InitParallelSerial| PROC

; 94   : {

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

; 95   :     //
; 96   :     // Initialize the parallel port stuff.
; 97   :     OEMInitParallelPort();

  00004	eb000000	 bl          OEMInitParallelPort

; 98   : 
; 99   :     //
; 100  :     // Set the debugger to use serial/parallel.
; 101  :     //
; 102  :     SetKernelCommDev(KERNEL_SVC_DBGMSG,KERNEL_COMM_SERIAL);

  00008	e3a01000	 mov         r1, #0
  0000c	e3a00000	 mov         r0, #0
  00010	eb000000	 bl          SetKernelCommDev

; 103  :     SetKernelCommDev(KERNEL_SVC_PPSH,  KERNEL_COMM_PARALLEL);

  00014	e3a01001	 mov         r1, #1
  00018	e3a00001	 mov         r0, #1
  0001c	eb000000	 bl          SetKernelCommDev

; 104  :     SetKernelCommDev(KERNEL_SVC_KDBG, KERNEL_COMM_SERIAL);

  00020	e3a01000	 mov         r1, #0
  00024	e3a00002	 mov         r0, #2
  00028	eb000000	 bl          SetKernelCommDev

; 105  : 
; 106  :     return FALSE;

  0002c	e3a00000	 mov         r0, #0

; 107  : }

  00030	e49de004	 ldr         lr, [sp], #4
  00034	e12fff1e	 bx          lr
  00038		 |$M15595|

			 ENDP  ; |InitParallelSerial|

	EXPORT	|KitlEthEnableInts|
	IMPORT	|OEMEthEnableInts|
	IMPORT	|OEMEthDisableInts|

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

  00000			 AREA	 |.pdata$$KitlEthEnableInts|, PDATA, SELECTION=5, ASSOC=|.text| { |KitlEthEnableInts| } ; comdat associative
|$T15605| DCD	|$L15604|
	DCD	0x40000901
; Function compile flags: /Ogsy

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

  00000		 |KitlEthEnableInts| PROC

; 111  : {

  00000		 |$L15604|
  00000	e52de004	 str         lr, [sp, #-4]!
  00004		 |$M15602|
  00004	e3500000	 cmp         r0, #0

; 112  :     if (bEnable) 

  00008	0a000002	 beq         |$L15472|

; 113  :         OEMEthEnableInts();

  0000c	eb000000	 bl          OEMEthEnableInts

; 116  : }

  00010	e49de004	 ldr         lr, [sp], #4
  00014	e12fff1e	 bx          lr
  00018		 |$L15472|

; 114  :     else 
; 115  :         OEMEthDisableInts();

  00018	eb000000	 bl          OEMEthDisableInts

; 116  : }

  0001c	e49de004	 ldr         lr, [sp], #4
  00020	e12fff1e	 bx          lr
  00024		 |$M15603|

			 ENDP  ; |KitlEthEnableInts|

	IMPORT	|memcpy|

  00000			 AREA	 |.bss|, NOINIT
|MyAddr| %	0xc

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

  00000			 AREA	 |.pdata$$GetDevCfg|, PDATA, SELECTION=5, ASSOC=|.text| { |GetDevCfg| } ; comdat associative
|$T15617| DCD	|$L15616|
	DCD	0x40001001
; Function compile flags: /Ogsy

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

  00000		 |GetDevCfg| PROC

; 119  : {

  00000		 |$L15616|
  00000	e92d4010	 stmdb       sp!, {r4, lr}
  00004		 |$M15614|
  00004	e1a04001	 mov         r4, r1

; 120  :     // put our IP info in the buffer
; 121  :     if (*pcbBuf < sizeof (MyAddr)) {

  00008	e1d430b0	 ldrh        r3, [r4]
  0000c	e353000c	 cmp         r3, #0xC

; 122  :         return FALSE;

  00010	33a00000	 movcc       r0, #0

; 128  : }

  00014	38bd4010	 ldmccia     sp!, {r4, lr}
  00018	312fff1e	 bxcc        lr

; 123  :     }
; 124  :         
; 125  :     memcpy (pBuf, &MyAddr, sizeof (MyAddr));

  0001c	e59f1018	 ldr         r1, [pc, #0x18]
  00020	e3a0200c	 mov         r2, #0xC
  00024	eb000000	 bl          memcpy

; 126  :     *pcbBuf = sizeof (MyAddr);

  00028	e3a0300c	 mov         r3, #0xC
  0002c	e1c430b0	 strh        r3, [r4]

; 127  :     return TRUE;

  00030	e3a00001	 mov         r0, #1

; 128  : }

  00034	e8bd4010	 ldmia       sp!, {r4, lr}
  00038	e12fff1e	 bx          lr
  0003c		 |$L15619|
  0003c	00000000	 DCD         |MyAddr|
  00040		 |$M15615|

			 ENDP  ; |GetDevCfg|


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

  00000			 AREA	 |.pdata$$SetHostCfg|, PDATA, SELECTION=5, ASSOC=|.text| { |SetHostCfg| } ; comdat associative
|$T15627| DCD	|$L15626|
	DCD	0x40000200
; Function compile flags: /Ogsy

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

  00000		 |SetHostCfg| PROC

; 131  : {

  00000		 |$L15626|
  00000		 |$M15624|

; 132  :     // we automatically figure out the host address info during initial 
; 133  :     // handshake. No need to handle host cfg data here.
; 134  :     return TRUE;

  00000	e3a00001	 mov         r0, #1

; 135  : }

  00004	e12fff1e	 bx          lr
  00008		 |$M15625|

			 ENDP  ; |SetHostCfg|

	IMPORT	|OEMEthSendFrame|

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

  00000			 AREA	 |.pdata$$EthSendFrame|, PDATA, SELECTION=5, ASSOC=|.text| { |EthSendFrame| } ; comdat associative
|$T15638| DCD	|$L15637|
	DCD	0x40000401
; Function compile flags: /Ogsy

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

  00000		 |EthSendFrame| PROC

; 138  : {

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

; 139  : 
; 140  :     return (OEMEthSendFrame(pData, (DWORD)nLength));

  00004	eb000000	 bl          OEMEthSendFrame

; 141  : 
; 142  : }

  00008	e49de004	 ldr         lr, [sp], #4
  0000c	e12fff1e	 bx          lr
  00010		 |$M15636|

			 ENDP  ; |EthSendFrame|

	EXPORT	|InitEther|
	EXPORT	|??_C@_0M@NJNIIHFK@?$CLInitEther?6?$AA@| [ DATA ] ; `string'
	EXPORT	|??_C@_0BH@NKNBMIAN@Using?5device?5name?3?5?$CFs?6?$AA@| [ DATA ] ; `string'
	EXPORT	|??_C@_0BL@IEMDAFJI@Device?5?$CFs?0?5IP?5?$CFs?0?5Port?5?$CFd?6?$AA@| [ DATA ] ; `string'
	EXPORT	|??_C@_0CL@DKAABFIJ@Unable?5to?5initialize?5KITL?5Ether?5@| [ DATA ] ; `string'
	EXPORT	|??_C@_0M@DGOFCCLK@?9InitEther?6?$AA@| [ DATA ] ; `string'
	IMPORT	|EbootGetDHCPAddr|
	IMPORT	|KitlEtherInit|
	IMPORT	|KitlEtherEncodeUDP|
	IMPORT	|KitlEtherDecodeUDP|
	IMPORT	|KitlEtherGetFrameHdrSize|
	IMPORT	|CreateDeviceName|
	IMPORT	|memset|
	IMPORT	|OEMEthInit|
	IMPORT	|OEMEthGetFrame|
	IMPORT	|inet_ntoa|

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

  00000			 AREA	 |.pdata$$InitEther|, PDATA, SELECTION=5, ASSOC=|.text| { |InitEther| } ; comdat associative
|$T15652| DCD	|$L15651|

⌨️ 快捷键说明

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