C# Class SharpOS.Kernel.DeviceSystem.DiskController.IDEDiskDriver

Inheritance: SharpOS.Kernel.DeviceSystem.HardwareDevice, IDiskControllerDevice
Datei anzeigen Open project: sharpos/SharpOS

Protected Properties

Property Type Description
CommandPort IWriteOnlyIOPort
DataPort IReadWriteIOPort
DeviceHeadPort IReadWriteIOPort
ErrorPort IReadOnlyIOPort
FeaturePort IReadWriteIOPort
IdeIRQ IRQHandler
LBAHighPort IReadWriteIOPort
LBALowPort IReadWriteIOPort
LBAMidPort IReadWriteIOPort
SectorCountPort IReadWriteIOPort
StatusPort IReadOnlyIOPort
driveInfo DriveInfo[]
ioBase ushort
spinLock SharpOS.Kernel.ADC.SpinLock

Public Methods

Method Description
CanWrite ( uint drive ) : bool
GetSectorSize ( uint driveNbr ) : uint
GetTotalSectors ( uint driveNbr ) : uint
IDEDiskDriver ( ) : System
IDEDiskDriver ( ushort ioBase ) : System
Initialize ( ) : void
Open ( uint driveNbr ) : bool
ReadBlock ( uint driveNbr, uint block, uint count, byte data ) : bool
Release ( uint driveNbr ) : bool
WriteBlock ( uint driveNbr, uint block, uint count, byte data ) : bool

Protected Methods

Method Description
PerformLBA28 ( SectorOperation operation, uint driveNbr, uint lba, byte data, uint offset ) : bool
WaitForReqisterReady ( ) : bool

Method Details

CanWrite() public method

public CanWrite ( uint drive ) : bool
drive uint
return bool

GetSectorSize() public method

public GetSectorSize ( uint driveNbr ) : uint
driveNbr uint
return uint

GetTotalSectors() public method

public GetTotalSectors ( uint driveNbr ) : uint
driveNbr uint
return uint

IDEDiskDriver() public method

public IDEDiskDriver ( ) : System
return System

IDEDiskDriver() public method

public IDEDiskDriver ( ushort ioBase ) : System
ioBase ushort
return System

Initialize() public method

public Initialize ( ) : void
return void

Open() public method

public Open ( uint driveNbr ) : bool
driveNbr uint
return bool

PerformLBA28() protected method

protected PerformLBA28 ( SectorOperation operation, uint driveNbr, uint lba, byte data, uint offset ) : bool
operation SectorOperation
driveNbr uint
lba uint
data byte
offset uint
return bool

ReadBlock() public method

public ReadBlock ( uint driveNbr, uint block, uint count, byte data ) : bool
driveNbr uint
block uint
count uint
data byte
return bool

Release() public method

public Release ( uint driveNbr ) : bool
driveNbr uint
return bool

WaitForReqisterReady() protected method

protected WaitForReqisterReady ( ) : bool
return bool

WriteBlock() public method

public WriteBlock ( uint driveNbr, uint block, uint count, byte data ) : bool
driveNbr uint
block uint
count uint
data byte
return bool

Property Details

CommandPort protected_oe property

protected IWriteOnlyIOPort CommandPort
return IWriteOnlyIOPort

DataPort protected_oe property

protected IReadWriteIOPort DataPort
return IReadWriteIOPort

DeviceHeadPort protected_oe property

protected IReadWriteIOPort DeviceHeadPort
return IReadWriteIOPort

ErrorPort protected_oe property

protected IReadOnlyIOPort ErrorPort
return IReadOnlyIOPort

FeaturePort protected_oe property

protected IReadWriteIOPort FeaturePort
return IReadWriteIOPort

IdeIRQ protected_oe property

protected IRQHandler IdeIRQ
return IRQHandler

LBAHighPort protected_oe property

protected IReadWriteIOPort LBAHighPort
return IReadWriteIOPort

LBALowPort protected_oe property

protected IReadWriteIOPort LBALowPort
return IReadWriteIOPort

LBAMidPort protected_oe property

protected IReadWriteIOPort LBAMidPort
return IReadWriteIOPort

SectorCountPort protected_oe property

protected IReadWriteIOPort SectorCountPort
return IReadWriteIOPort

StatusPort protected_oe property

protected IReadOnlyIOPort StatusPort
return IReadOnlyIOPort

driveInfo protected_oe property

protected DriveInfo[] driveInfo
return DriveInfo[]

ioBase protected_oe property

protected ushort ioBase
return ushort

spinLock protected_oe property

protected SpinLock,SharpOS.Kernel.ADC spinLock
return SharpOS.Kernel.ADC.SpinLock