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

📄 cdio.cod

📁 广东嵌入式培训中心GEC2410开发板的Windows CE 5.0的BSP
💻 COD
📖 第 1 页 / 共 5 页
字号:
; Listing generated by Microsoft (R) Optimizing Compiler Version 13.10.4091 

	TTL	C:\WINCE500\PLATFORM\SMDK2410\DRIVERS\atapi\.\cdio.cpp
	CODE32

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

	EXPORT	|?ReadWord@CDisk@@QAAGXZ|		; CDisk::ReadWord
	IMPORT	|READ_PORT_USHORT|
; File c:\wince500\platform\smdk2410\drivers\atapi\diskmain.h

  00000			 AREA	 |.text| { |?ReadWord@CDisk@@QAAGXZ| }, CODE, ARM, SELECTION=2 ; comdat any

  00000			 AREA	 |.pdata$$?ReadWord@CDisk@@QAAGXZ|, PDATA, SELECTION=5, ASSOC=|.text| { |?ReadWord@CDisk@@QAAGXZ| } ; comdat associative
|$T32695| DCD	|$L32694|
	DCD	0x40000901
; Function compile flags: /Ogsy

  00000			 AREA	 |.text| { |?ReadWord@CDisk@@QAAGXZ| }, CODE, ARM, SELECTION=2 ; comdat any

  00000		 |?ReadWord@CDisk@@QAAGXZ| PROC		; CDisk::ReadWord

; 190  :     inline WORD ReadWord() {

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

; 191  :         return ATA_READ_WORD((PWORD)(m_pATAReg+m_dwDataDrvCtrlOffset));

  00004	e5902030	 ldr         r2, [r0, #0x30]
  00008	e5903008	 ldr         r3, [r0, #8]
  0000c	e0820003	 add         r0, r2, r3
  00010	eb000000	 bl          READ_PORT_USHORT
  00014	e1a00800	 mov         r0, r0, lsl #16
  00018	e1a00820	 mov         r0, r0, lsr #16

; 192  :     }

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

			 ENDP  ; |?ReadWord@CDisk@@QAAGXZ|, CDisk::ReadWord

	EXPORT	|?WriteWordBuffer@CDisk@@QAAXPAGK@Z|	; CDisk::WriteWordBuffer
	IMPORT	|WRITE_PORT_BUFFER_USHORT|

  00000			 AREA	 |.text| { |?WriteWordBuffer@CDisk@@QAAXPAGK@Z| }, CODE, ARM, SELECTION=2 ; comdat any

  00000			 AREA	 |.pdata$$?WriteWordBuffer@CDisk@@QAAXPAGK@Z|, PDATA, SELECTION=5, ASSOC=|.text| { |?WriteWordBuffer@CDisk@@QAAXPAGK@Z| } ; comdat associative
|$T32705| DCD	|$L32704|
	DCD	0x40000701
; Function compile flags: /Ogsy

  00000			 AREA	 |.text| { |?WriteWordBuffer@CDisk@@QAAXPAGK@Z| }, CODE, ARM, SELECTION=2 ; comdat any

  00000		 |?WriteWordBuffer@CDisk@@QAAXPAGK@Z| PROC ; CDisk::WriteWordBuffer

; 208  :     inline void WriteWordBuffer(PWORD pBuffer, DWORD dwCount) {

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

; 209  :         WRITE_PORT_BUFFER_USHORT((PWORD)(m_pATAReg + m_dwDataDrvCtrlOffset), pBuffer, dwCount);

  00004	e590e030	 ldr         lr, [r0, #0x30]
  00008	e5903008	 ldr         r3, [r0, #8]
  0000c	e08e0003	 add         r0, lr, r3
  00010	eb000000	 bl          WRITE_PORT_BUFFER_USHORT

; 210  :     }

  00014	e49de004	 ldr         lr, [sp], #4
  00018	e12fff1e	 bx          lr
  0001c		 |$M32703|

			 ENDP  ; |?WriteWordBuffer@CDisk@@QAAXPAGK@Z|, CDisk::WriteWordBuffer

	EXPORT	|?GetError@CDisk@@QAAEXZ|		; CDisk::GetError
	IMPORT	|READ_PORT_UCHAR|

  00000			 AREA	 |.text| { |?GetError@CDisk@@QAAEXZ| }, CODE, ARM, SELECTION=2 ; comdat any

  00000			 AREA	 |.pdata$$?GetError@CDisk@@QAAEXZ|, PDATA, SELECTION=5, ASSOC=|.text| { |?GetError@CDisk@@QAAEXZ| } ; comdat associative
|$T32715| DCD	|$L32714|
	DCD	0x40000701
; Function compile flags: /Ogsy

  00000			 AREA	 |.text| { |?GetError@CDisk@@QAAEXZ| }, CODE, ARM, SELECTION=2 ; comdat any

  00000		 |?GetError@CDisk@@QAAEXZ| PROC		; CDisk::GetError

; 212  :     inline BYTE GetError() {

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

; 213  :         return (BYTE) ATA_READ_BYTE(m_pATAReg + m_dwFeatureErrorOffset);

  00004	e5902030	 ldr         r2, [r0, #0x30]
  00008	e590300c	 ldr         r3, [r0, #0xC]
  0000c	e0820003	 add         r0, r2, r3
  00010	eb000000	 bl          READ_PORT_UCHAR

; 214  :     }

  00014	e49de004	 ldr         lr, [sp], #4
  00018	e12fff1e	 bx          lr
  0001c		 |$M32713|

			 ENDP  ; |?GetError@CDisk@@QAAEXZ|, CDisk::GetError

	EXPORT	|?WriteFeature@CDisk@@QAAXE@Z|		; CDisk::WriteFeature
	IMPORT	|WRITE_PORT_UCHAR|

  00000			 AREA	 |.text| { |?WriteFeature@CDisk@@QAAXE@Z| }, CODE, ARM, SELECTION=2 ; comdat any

  00000			 AREA	 |.pdata$$?WriteFeature@CDisk@@QAAXE@Z|, PDATA, SELECTION=5, ASSOC=|.text| { |?WriteFeature@CDisk@@QAAXE@Z| } ; comdat associative
|$T32724| DCD	|$L32723|
	DCD	0x40000701
; Function compile flags: /Ogsy

  00000			 AREA	 |.text| { |?WriteFeature@CDisk@@QAAXE@Z| }, CODE, ARM, SELECTION=2 ; comdat any

  00000		 |?WriteFeature@CDisk@@QAAXE@Z| PROC	; CDisk::WriteFeature

; 215  :     inline void WriteFeature(BYTE bFeature) {

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

; 216  :         ATA_WRITE_BYTE( m_pATAReg + m_dwFeatureErrorOffset, bFeature);

  00004	e5902030	 ldr         r2, [r0, #0x30]
  00008	e590300c	 ldr         r3, [r0, #0xC]
  0000c	e0820003	 add         r0, r2, r3
  00010	eb000000	 bl          WRITE_PORT_UCHAR

; 217  :     }

  00014	e49de004	 ldr         lr, [sp], #4
  00018	e12fff1e	 bx          lr
  0001c		 |$M32722|

			 ENDP  ; |?WriteFeature@CDisk@@QAAXE@Z|, CDisk::WriteFeature

	EXPORT	|?WriteSectorCount@CDisk@@QAAXE@Z|	; CDisk::WriteSectorCount

  00000			 AREA	 |.text| { |?WriteSectorCount@CDisk@@QAAXE@Z| }, CODE, ARM, SELECTION=2 ; comdat any

  00000			 AREA	 |.pdata$$?WriteSectorCount@CDisk@@QAAXE@Z|, PDATA, SELECTION=5, ASSOC=|.text| { |?WriteSectorCount@CDisk@@QAAXE@Z| } ; comdat associative
|$T32733| DCD	|$L32732|
	DCD	0x40000701
; Function compile flags: /Ogsy

  00000			 AREA	 |.text| { |?WriteSectorCount@CDisk@@QAAXE@Z| }, CODE, ARM, SELECTION=2 ; comdat any

  00000		 |?WriteSectorCount@CDisk@@QAAXE@Z| PROC ; CDisk::WriteSectorCount

; 222  :     inline void WriteSectorCount(BYTE bValue) {

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

; 223  :         ATA_WRITE_BYTE(m_pATAReg + m_dwSectCntReasonOffset, bValue);

  00004	e5902030	 ldr         r2, [r0, #0x30]
  00008	e5903010	 ldr         r3, [r0, #0x10]
  0000c	e0820003	 add         r0, r2, r3
  00010	eb000000	 bl          WRITE_PORT_UCHAR

; 224  :     }

  00014	e49de004	 ldr         lr, [sp], #4
  00018	e12fff1e	 bx          lr
  0001c		 |$M32731|

			 ENDP  ; |?WriteSectorCount@CDisk@@QAAXE@Z|, CDisk::WriteSectorCount

	EXPORT	|?WriteSectorNumber@CDisk@@QAAXE@Z|	; CDisk::WriteSectorNumber

  00000			 AREA	 |.text| { |?WriteSectorNumber@CDisk@@QAAXE@Z| }, CODE, ARM, SELECTION=2 ; comdat any

  00000			 AREA	 |.pdata$$?WriteSectorNumber@CDisk@@QAAXE@Z|, PDATA, SELECTION=5, ASSOC=|.text| { |?WriteSectorNumber@CDisk@@QAAXE@Z| } ; comdat associative
|$T32742| DCD	|$L32741|
	DCD	0x40000701
; Function compile flags: /Ogsy

  00000			 AREA	 |.text| { |?WriteSectorNumber@CDisk@@QAAXE@Z| }, CODE, ARM, SELECTION=2 ; comdat any

  00000		 |?WriteSectorNumber@CDisk@@QAAXE@Z| PROC ; CDisk::WriteSectorNumber

; 226  :     inline void WriteSectorNumber(BYTE bValue) {

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

; 227  :         ATA_WRITE_BYTE(m_pATAReg + m_dwSectNumOffset, bValue);

  00004	e5902030	 ldr         r2, [r0, #0x30]
  00008	e5903014	 ldr         r3, [r0, #0x14]
  0000c	e0820003	 add         r0, r2, r3
  00010	eb000000	 bl          WRITE_PORT_UCHAR

; 228  :     }

  00014	e49de004	 ldr         lr, [sp], #4
  00018	e12fff1e	 bx          lr
  0001c		 |$M32740|

			 ENDP  ; |?WriteSectorNumber@CDisk@@QAAXE@Z|, CDisk::WriteSectorNumber

	EXPORT	|?GetLowCount@CDisk@@QAAEXZ|		; CDisk::GetLowCount

  00000			 AREA	 |.text| { |?GetLowCount@CDisk@@QAAEXZ| }, CODE, ARM, SELECTION=2 ; comdat any

  00000			 AREA	 |.pdata$$?GetLowCount@CDisk@@QAAEXZ|, PDATA, SELECTION=5, ASSOC=|.text| { |?GetLowCount@CDisk@@QAAEXZ| } ; comdat associative
|$T32752| DCD	|$L32751|
	DCD	0x40000701
; Function compile flags: /Ogsy

  00000			 AREA	 |.text| { |?GetLowCount@CDisk@@QAAEXZ| }, CODE, ARM, SELECTION=2 ; comdat any

  00000		 |?GetLowCount@CDisk@@QAAEXZ| PROC	; CDisk::GetLowCount

; 230  :     inline BYTE GetLowCount() {

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

; 231  :         return ATA_READ_BYTE(m_pATAReg+ m_dwByteCountLowOffset);

  00004	e5902030	 ldr         r2, [r0, #0x30]
  00008	e5903018	 ldr         r3, [r0, #0x18]
  0000c	e0820003	 add         r0, r2, r3
  00010	eb000000	 bl          READ_PORT_UCHAR

; 232  :     }

  00014	e49de004	 ldr         lr, [sp], #4
  00018	e12fff1e	 bx          lr
  0001c		 |$M32750|

			 ENDP  ; |?GetLowCount@CDisk@@QAAEXZ|, CDisk::GetLowCount

	EXPORT	|?WriteLowCount@CDisk@@QAAXE@Z|		; CDisk::WriteLowCount

  00000			 AREA	 |.text| { |?WriteLowCount@CDisk@@QAAXE@Z| }, CODE, ARM, SELECTION=2 ; comdat any

  00000			 AREA	 |.pdata$$?WriteLowCount@CDisk@@QAAXE@Z|, PDATA, SELECTION=5, ASSOC=|.text| { |?WriteLowCount@CDisk@@QAAXE@Z| } ; comdat associative
|$T32761| DCD	|$L32760|
	DCD	0x40000701
; Function compile flags: /Ogsy

  00000			 AREA	 |.text| { |?WriteLowCount@CDisk@@QAAXE@Z| }, CODE, ARM, SELECTION=2 ; comdat any

  00000		 |?WriteLowCount@CDisk@@QAAXE@Z| PROC	; CDisk::WriteLowCount

; 233  :     inline void WriteLowCount(BYTE bValue) {

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

; 234  :         ATA_WRITE_BYTE(m_pATAReg + m_dwByteCountLowOffset, bValue);

  00004	e5902030	 ldr         r2, [r0, #0x30]
  00008	e5903018	 ldr         r3, [r0, #0x18]
  0000c	e0820003	 add         r0, r2, r3
  00010	eb000000	 bl          WRITE_PORT_UCHAR

; 235  :     }

  00014	e49de004	 ldr         lr, [sp], #4
  00018	e12fff1e	 bx          lr
  0001c		 |$M32759|

			 ENDP  ; |?WriteLowCount@CDisk@@QAAXE@Z|, CDisk::WriteLowCount

	EXPORT	|?GetHighCount@CDisk@@QAAEXZ|		; CDisk::GetHighCount

  00000			 AREA	 |.text| { |?GetHighCount@CDisk@@QAAEXZ| }, CODE, ARM, SELECTION=2 ; comdat any

  00000			 AREA	 |.pdata$$?GetHighCount@CDisk@@QAAEXZ|, PDATA, SELECTION=5, ASSOC=|.text| { |?GetHighCount@CDisk@@QAAEXZ| } ; comdat associative
|$T32771| DCD	|$L32770|
	DCD	0x40000701
; Function compile flags: /Ogsy

  00000			 AREA	 |.text| { |?GetHighCount@CDisk@@QAAEXZ| }, CODE, ARM, SELECTION=2 ; comdat any

  00000		 |?GetHighCount@CDisk@@QAAEXZ| PROC	; CDisk::GetHighCount

; 236  :     inline BYTE GetHighCount() {

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

; 237  :         return ATA_READ_BYTE(m_pATAReg+ m_dwByteCountHighOffset);

  00004	e5902030	 ldr         r2, [r0, #0x30]
  00008	e590301c	 ldr         r3, [r0, #0x1C]
  0000c	e0820003	 add         r0, r2, r3
  00010	eb000000	 bl          READ_PORT_UCHAR

; 238  :     }

  00014	e49de004	 ldr         lr, [sp], #4
  00018	e12fff1e	 bx          lr
  0001c		 |$M32769|

			 ENDP  ; |?GetHighCount@CDisk@@QAAEXZ|, CDisk::GetHighCount

	EXPORT	|?WriteHighCount@CDisk@@QAAXE@Z|	; CDisk::WriteHighCount

  00000			 AREA	 |.text| { |?WriteHighCount@CDisk@@QAAXE@Z| }, CODE, ARM, SELECTION=2 ; comdat any

  00000			 AREA	 |.pdata$$?WriteHighCount@CDisk@@QAAXE@Z|, PDATA, SELECTION=5, ASSOC=|.text| { |?WriteHighCount@CDisk@@QAAXE@Z| } ; comdat associative
|$T32780| DCD	|$L32779|
	DCD	0x40000701
; Function compile flags: /Ogsy

  00000			 AREA	 |.text| { |?WriteHighCount@CDisk@@QAAXE@Z| }, CODE, ARM, SELECTION=2 ; comdat any

  00000		 |?WriteHighCount@CDisk@@QAAXE@Z| PROC	; CDisk::WriteHighCount

; 239  :     inline void WriteHighCount(BYTE bValue) {

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

; 240  :         ATA_WRITE_BYTE(m_pATAReg + m_dwByteCountHighOffset, bValue);

  00004	e5902030	 ldr         r2, [r0, #0x30]
  00008	e590301c	 ldr         r3, [r0, #0x1C]
  0000c	e0820003	 add         r0, r2, r3
  00010	eb000000	 bl          WRITE_PORT_UCHAR

; 241  :     }

  00014	e49de004	 ldr         lr, [sp], #4
  00018	e12fff1e	 bx          lr
  0001c		 |$M32778|

			 ENDP  ; |?WriteHighCount@CDisk@@QAAXE@Z|, CDisk::WriteHighCount

	EXPORT	|?GetCount@CDisk@@QAAGXZ|		; CDisk::GetCount

  00000			 AREA	 |.text| { |?GetCount@CDisk@@QAAGXZ| }, CODE, ARM, SELECTION=2 ; comdat any

  00000			 AREA	 |.pdata$$?GetCount@CDisk@@QAAGXZ|, PDATA, SELECTION=5, ASSOC=|.text| { |?GetCount@CDisk@@QAAGXZ| } ; comdat associative
|$T32796| DCD	|$L32795|
	DCD	0x40001001
; Function compile flags: /Ogsy

  00000			 AREA	 |.text| { |?GetCount@CDisk@@QAAGXZ| }, CODE, ARM, SELECTION=2 ; comdat any

  00000		 |?GetCount@CDisk@@QAAGXZ| PROC		; CDisk::GetCount

; 242  :     inline WORD GetCount() {

  00000		 |$L32795|

⌨️ 快捷键说明

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