git-svn-id: https://spexeah.com:8443/svn/Asuro@391 6dbc8c32-bb84-406f-8558-d1cf31a0ab0c

This commit is contained in:
aaron 2018-04-07 21:59:20 +00:00
parent dd0f098450
commit ed74a4100d

View File

@ -0,0 +1,48 @@
{ ************************************************
* Asuro
* Unit: Drivers/storage/storagemanagement
* Description: interface for storage drivers
*
************************************************
* Author: Aaron Hance
* Contributors:
************************************************ }
unit storagemanagement;
interface
uses
util,
drivertypes,
console,
terminal,
IDE,
drivermanagement,
vmemorymanager,
lmemorymanager;
type
TControllerType = (ControllerIDE, ControllerUSB, ControllerAHCI, ControllerNET);
PStorage_device = ^TStorage_Device;
APStorage_Device = array[0..256] of PStorage_device;
TStorage_Device = record
controller : TControllerType;
controllerId0 : uint32;
maxSectorCount : uint32;
usedSectorCount : uint32;
end;
const
var
procedure register_device(device : TStorage_Device);
function get_all_devices() : APStorage_Device;
function read(device : uint16; address : uint32; byteCount : uint32) : PuInt32;
procedure write(device : uint16; address : uint32; byteCount : uint32; data : PuInt32);
implementation
end.