Difference between revisions of "Unit Filesystem"

From Ultibo.org
Jump to: navigation, search
 
(59 intermediate revisions by the same user not shown)
Line 5: Line 5:
 
----
 
----
  
''To be documented''
+
'''Ultibo FileSystem Interface unit'''
 +
 
 +
Numbering of Devices, Partitions, Volumes, Drives etc
 +
 
 +
''Example:''
 +
 
 +
Machine with 2 Floppy drives, 2 Fixed drives
 +
 
 +
Fixed Drive 1 has 2 Partitions (1 Primary and 1 Extended)
 +
 
 +
Fixed Drive 2 has 1 Partition (1 Primary)
 +
 
 +
\Floppy0 = Device 00h/Partition 0
 +
 
 +
\Floppy1 = Device 01h/Partition 0
 +
 
 +
\Harddisk0\Partition1 = Device 80h/Partition 1
 +
 
 +
\Harddisk0\Extended1 = Device 80h/Extended 1
 +
 
 +
\Harddisk0\Partition2 = Device 80h/Partition 2
 +
 
 +
\Harddisk1\Partition1 = Device 81h/Partition 1
 +
 
 +
\Volume1 = \Floppy0
 +
 
 +
\Volume2 = \Floppy1
 +
 
 +
\Volume3 = \Harddisk0\Partition1
 +
 
 +
\Volume4 = \Harddisk1\Partition1
 +
 
 +
\Volume5 = \Harddisk0\Partition2
 +
 
 +
A: = \Volume1
 +
 
 +
B: = \Volume2
 +
 
 +
C: = \Volume3  (Alternate Name = \HarddiskVolume1)
 +
 
 +
D: = \Volume4  (Alternate Name = \HarddiskVolume2)
 +
 
 +
E: = \Volume5  (Alternate Name = \HarddiskVolume3)
  
 
=== Constants ===
 
=== Constants ===
 
----
 
----
  
''To be documented''
+
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">
 +
<div style="font-size: 14px; padding-left: 12px;">'''FileSystem specific constants''' <code> FILESYS_* </code></div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>FILESYS_LOGGING_DESCRIPTION = 'Filesystem Logging';</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>FILESYS_STORAGE_TIMER_INTERVAL = 100;</code>
 +
| Timer interval for device additions or insertions
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">
 +
<div style="font-size: 14px; padding-left: 12px;">'''FileSystem lock state''' <code> FILESYS_LOCK_* </code></div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>FILESYS_LOCK_NONE = 0;</code>
 +
| &nbsp;
 +
|-
 +
| <code>FILESYS_LOCK_READ = 1;</code>
 +
| &nbsp;
 +
|-
 +
| <code>FILESYS_LOCK_WRITE = 2;</code>
 +
| &nbsp;
 +
|-
 +
| <code>FILESYS_LOCK_AUTO = 3;</code>
 +
| Not intended for use in all situations, use with extreme caution.
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">
 +
<div style="font-size: 14px; padding-left: 12px;">'''FileSystem cache''' <code> FILESYS_CACHE_* </code></div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>FILESYS_CACHE_THREAD_NAME = 'Filesystem Cache';</code>
 +
| Thread name for Filesystem cache threads
 +
|-
 +
| <code>FILESYS_CACHE_THREAD_PRIORITY = THREAD_PRIORITY_HIGHER;</code>
 +
| Thread priority for Filesystem cache threads
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>FILESYS_CACHE_TIMER_INTERVAL = 50;</code>
 +
| 50ms timer interval for Filesystem cache
 +
|-
 +
| <code>FILESYS_CACHE_FLUSH_TIMEOUT = 3000;</code>
 +
| Filesystem cache flush timeout 3 seconds
 +
|-
 +
| <code>FILESYS_CACHE_DISCARD_TIMEOUT = 180000;</code>
 +
| Filesystem cache discard timeout 3 minutes
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">
 +
<div style="font-size: 14px; padding-left: 12px;">'''FileSystem entry timer''' <code> FILESYS_ENTRY_* </code></div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>FILESYS_ENTRY_TIMER_INTERVAL = 1000;</code>
 +
| 1000ms timer interval for Filesystem entries
 +
|-
 +
| <code>FILESYS_ENTRY_DELETE_TIMEOUT = 30000;</code>
 +
| Filesystem entry delete timeout 30 seconds
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">
 +
<div style="font-size: 14px; padding-left: 12px;">'''FileSystem cache timer''' <code> CACHE_TIMER_* </code></div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>CACHE_TIMER_KEY_NONE = TIMER_KEY_NONE;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>CACHE_TIMER_KEY_MAX = TIMER_KEY_MAX;</code>
 +
| &nbsp;
 +
|-
 +
| <code>CACHE_TIMER_KEY_MIN = TIMER_KEY_MIN;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">
 +
<div style="font-size: 14px; padding-left: 12px;">'''FileSystem entry timer key''' <code> ENTRY_TIMER_KEY_* </code></div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>ENTRY_TIMER_KEY_NONE = TIMER_KEY_NONE;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>ENTRY_TIMER_KEY_MAX = TIMER_KEY_MAX;</code>
 +
| &nbsp;
 +
|-
 +
| <code>ENTRY_TIMER_KEY_MIN = TIMER_KEY_MIN;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">
 +
<div style="font-size: 14px; padding-left: 12px;">'''FileSystem partition, device and volume''' <code> *_PARTITION, *_DEVICE, *_VOLUME </code></div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>MIN_FLOPPY_DEVICE = $00;</code>
 +
| &nbsp;
 +
|-
 +
| <code>MAX_FLOPPY_DEVICE = $7F;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>MIN_FIXED_DEVICE = $80;</code>
 +
| &nbsp;
 +
|-
 +
| <code>MAX_FIXED_DEVICE = $FF;</code>
 +
| Extends over CDROM/Other
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>MIN_CDROM_DEVICE = $E0;</code>
 +
| &nbsp;
 +
|-
 +
| <code>MAX_CDROM_DEVICE = $EF;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>MIN_OTHER_DEVICE = $F0;</code>
 +
| &nbsp;
 +
|-
 +
| <code>MAX_OTHER_DEVICE = $FF;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>INVALID_PARTITION = -1;</code>
 +
| &nbsp;
 +
|-
 +
| <code>INVALID_DEVICE = -1;</code>
 +
| &nbsp;
 +
|-
 +
| <code>INVALID_VOLUME = 0;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>MIN_PARTITION = 0;</code>
 +
| &nbsp;
 +
|-
 +
| <code>MAX_PARTITION = 3;</code>
 +
| &nbsp;
 +
|-
 +
| <code>MAX_EXTENDED = 1;</code>
 +
| Only 2 partitions in second level
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>MIN_FLOPPY_DRIVE = MIN_DRIVE;</code>
 +
| &nbsp;
 +
|-
 +
| <code>MAX_FLOPPY_DRIVE = MIN_DRIVE + 1;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>MIN_FIXED_DRIVE = MIN_DRIVE + 2;</code>
 +
| &nbsp;
 +
|-
 +
| <code>MAX_FIXED_DRIVE = MAX_DRIVE;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>MIN_SECTOR_SIZE = 512;</code>
 +
| &nbsp;
 +
|-
 +
| <code>MAX_SECTOR_SIZE = 4096;</code>
 +
| &nbsp;
 +
|-
 +
| <code>ISO_SECTOR_SIZE = 2048;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>VOLUME_PREFIX = '\Volume';</code>
 +
| eg \Volume1
 +
|-
 +
| <code>EXTENDED_PREFIX = '\Extended';</code>
 +
| eg \Extended1
 +
|-
 +
| <code>PARTITION_PREFIX = '\Partition';</code>
 +
| eg \Partition1
 +
|-
 +
| <code>CONTROLLER_PREFIX = '\Controller';</code>
 +
| eg \Controller0
 +
|-
 +
| <code>CDROM_DEVICE_PREFIX = '\Cdrom';</code>
 +
| eg \Cdrom0
 +
|-
 +
| <code>OTHER_DEVICE_PREFIX = '\Other';</code>
 +
| eg \Other0
 +
|-
 +
| <code>FIXED_DEVICE_PREFIX = '\Harddisk';</code>
 +
| eg \Harddisk0
 +
|-
 +
| <code>FLOPPY_DEVICE_PREFIX = '\Floppy';</code>
 +
| eg \Floppy0
 +
|-
 +
| <code>UNKNOWN_DEVICE_PREFIX = '\Unknown';</code>
 +
| eg \Unknown0
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>VOLUME_PATH_PREFIX = '\\?';</code>
 +
| eg \\?\Volume1\Home
 +
|-
 +
| <code>DEVICE_PATH_PREFIX = '\\.';</code>
 +
| eg \\.\Harddisk0\Partition1\Home
 +
|-
 +
| <code>REPARSE_PATH_PREFIX = '\??\';</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>BOOT_RECORD_SIGNATURE = $AA55;</code>
 +
| &nbsp;
 +
|-
 +
| <code>PARTITION_RECORD_SIGNATURE = $AA55;</code>
 +
| &nbsp;
 +
|-
 +
| <code>BOOT_SECTOR_SIGNATURE = $AA55;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">
 +
<div style="font-size: 14px; padding-left: 12px;">'''FileSystem find flag''' <code> FIND_FLAG_* </code></div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>FIND_FLAG_NONE = $00000000;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>FIND_FLAG_FILE_NAMES = $00000001;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">
 +
<div style="font-size: 14px; padding-left: 12px;">'''FileSystem find wildcard''' <code> FIND_WILDCARD_* </code></div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>FIND_WILDCARD_NAME = '*.*';</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>FIND_WILDCARD_STREAM = '*';</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">
 +
<div style="font-size: 14px; padding-left: 12px;">'''File mode''' <code> fm*Mask </code></div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>fmOpenMask = $000F;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>fmShareMask = $00F0;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">
 +
<div style="font-size: 14px; padding-left: 12px;">'''File attribute''' <code> fa* </code></div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>faDot = $01000000;</code>
 +
| &nbsp;
 +
|-
 +
| <code>faDotDot = $02000000;</code>
 +
| &nbsp;
 +
|-
 +
| <code>faFile = $04000000;</code>
 +
| &nbsp;
 +
|-
 +
| <code>faStream = $08000000;</code>
 +
| &nbsp;
 +
|-
 +
| <code>faFlagName = $00100000;</code>
 +
| Used for FAT case flags
 +
|-
 +
| <code>faFlagExt = $00200000;</code>
 +
| Used for FAT case flags
 +
|-
 +
| <code>faFlagBoth = (faFlagName or faFlagExt);</code>
 +
| &nbsp;
 +
|-
 +
| <code>faFlagLong = $00400000;</code>
 +
| Not currently used
 +
|-
 +
| <code>faFlagMetafile = $00800000;</code>
 +
| Used for NTFS Metafiles
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>faFlagMask = $0FFF0000;</code>
 +
| Used to preserve internal attributes
 +
|-
 +
| <code>faFindMask = $0000FFFF;</code>
 +
| Used to mask internal attributes
 +
|-
 +
| <code>faMatchMask = (faFile or faStream or faVolumeID or faDirectory);</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|colspan="2"|''Additional File Attribute Flags for NTFS/EXTFS/NSS''
 +
|-
 +
| <code>faDevice = $00000040;</code>
 +
| &nbsp;
 +
|-
 +
| <code>faNormal = $00000080;</code>
 +
| &nbsp;
 +
|-
 +
| <code>faTemporary = $00000100;</code>
 +
| &nbsp;
 +
|-
 +
| <code>faSparse = $00000200;</code>
 +
| &nbsp;
 +
|-
 +
| <code>faReparse = $00000400;</code>
 +
| See also faSymLink in filutilh.inc (SysUtils)
 +
|-
 +
| <code>faCompressed = $00000800;</code>
 +
| &nbsp;
 +
|-
 +
| <code>faOffline = $00001000;</code>
 +
| &nbsp;
 +
|-
 +
| <code>faNotIndexed = $00002000;</code>
 +
| &nbsp;
 +
|-
 +
| <code>faEncrypted = $00004000;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>faMftDirectory = $10000000;</code>
 +
| Used only by FileName Attribute
 +
|-
 +
| <code>faMftIndexView = $20000000;</code>
 +
| Used by both the StandardInformation and FileName attributes
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|colspan="2"|Note: NTFS does not store the faVolumeID or faDirectory attributes
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|colspan="2"|''Additional File Attribute constants''
 +
|-
 +
| <code>faNone = $00000000;</code>
 +
| &nbsp;
 +
|-
 +
| <code>faStandard = (faReadOnly or faHidden or faSysFile or faArchive);</code>
 +
| &nbsp;
 +
|-
 +
| <code>faLongName = (faReadOnly or faHidden or faSysFile or faVolumeID);</code>
 +
| &nbsp;
 +
|-
 +
| <code>faLongMask = (faReadOnly or faHidden or faSysFile or faVolumeID or faDirectory or faArchive);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">
 +
<div style="font-size: 14px; padding-left: 12px;">'''FileSystem volume attribute''' <code> va* </code></div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>vaNone = $00000000;</code>
 +
| &nbsp;
 +
|-
 +
| <code>vaCaseSensitive = $00000001;</code>
 +
| &nbsp;
 +
|-
 +
| <code>vaCasePreserved = $00000002;</code>
 +
| &nbsp;
 +
|-
 +
| <code>vaUnicode = $00000004;</code>
 +
| &nbsp;
 +
|-
 +
| <code>vaPersistentAcls = $00000008;</code>
 +
| &nbsp;
 +
|-
 +
| <code>vaFileCompression = $00000010;</code>
 +
| &nbsp;
 +
|-
 +
| <code>vaVolumeQuotas = $00000020;</code>
 +
| &nbsp;
 +
|-
 +
| <code>vaSparseFiles = $00000040;</code>
 +
| &nbsp;
 +
|-
 +
| <code>vaReparsePoints = $00000080;</code>
 +
| &nbsp;
 +
|-
 +
| <code>vaRemoteStorage = $00000100;</code>
 +
| &nbsp;
 +
|-
 +
| <code>vaLongNamesApi = $00004000;</code>
 +
| &nbsp;
 +
|-
 +
| <code>vaVolumeCompressed = $00008000;</code>
 +
| &nbsp;
 +
|-
 +
| <code>vaObjectIds = $00010000;</code>
 +
| &nbsp;
 +
|-
 +
| <code>vaEncryption = $00020000;</code>
 +
| &nbsp;
 +
|-
 +
| <code>vaNamedStreams = $00040000;</code>
 +
| &nbsp;
 +
|-
 +
| <code>vaReadOnly = $00080000;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|colspan="2"|''Additional Volume Attribute constants''
 +
|-
 +
| <code>vaBootCatalog = $01000000;</code>
 +
| Used to indicate support for ISO Boot Catalogs
 +
|-
 +
| <code>vaVirtualVolume = $02000000;</code>
 +
| Used to indicate Volume is Virtual or on a Virtual Device
 +
|-
 +
| <code>vaFolderEncryption = $04000000;</code>
 +
| Used to indicate support for Folder Encryption (New files in folder are automatically encrypted)
 +
|-
 +
| <code>vaFolderCompression = $08000000;</code>
 +
| Used to indicate support for Folder Compression (New files in folder are automatically compressed)
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">
 +
<div style="font-size: 14px; padding-left: 12px;">'''FileSystem device attribute''' <code> da* </code></div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>daNone = $00000000;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>daWriteable = $00000001;</code>
 +
| &nbsp;
 +
|-
 +
| <code>daVirtual = $00000002;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">
 +
<div style="font-size: 14px; padding-left: 12px;">'''FileSystem image attribute''' <code> ia* </code></div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>iaNone = $00000000;</code>
 +
| &nbsp;
 +
|-
 +
| <code>iaDisk = $00000001;</code>
 +
| Memory/File/Device (All others always Disk)
 +
|-
 +
| <code>iaPartition = $00000002;</code>
 +
| Memory/File/Device
 +
|-
 +
| <code>iaVolume = $00000004;</code>
 +
| Memory/File/Device
 +
|-
 +
| <code>iaDrive = $00000008;</code>
 +
| Memory/File/Device
 +
|-
 +
| <code>iaCDROM = $00000010;</code>
 +
| Memory/File/Device/Iso
 +
|-
 +
| <code>iaDVD = $00000020;</code>
 +
| Memory/File/Device/Iso
 +
|-
 +
| <code>iaFlat = $00000040;</code>
 +
| Bochs
 +
|-
 +
| <code>iaSparse = $00000080;</code>
 +
| Bochs
 +
|-
 +
| <code>iaGrowing = $00000100;</code>
 +
| Bochs
 +
|-
 +
| <code>iaFixed = $00000200;</code>
 +
| Vpc/Vbox/Vmware
 +
|-
 +
| <code>iaDynamic = $00000400;</code>
 +
| Vpc/Vbox/Vmware
 +
|-
 +
| <code>iaSplit = $00000800;</code>
 +
| Vpc/Vmware/WIM/Ghost/Portlock/Powerquest
 +
|-
 +
| <code>iaUndoable = $00001000;</code>
 +
| Vpc/Vbox/Vmware
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>iaReadable = $00010000;</code>
 +
| All
 +
|-
 +
| <code>iaWriteable = $00020000;</code>
 +
| All
 +
|-
 +
| <code>iaEraseable = $00040000;</code>
 +
| All
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">
 +
<div style="font-size: 14px; padding-left: 12px;">'''FileSystem catalog attribute''' <code> ca* </code></div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>caNone = $00000000;</code>
 +
| &nbsp;
 +
|-
 +
| <code>caDefault = $00000001;</code>
 +
| Initial/Default Entry
 +
|-
 +
| <code>caBootable = $00000002;</code>
 +
| Boot Indicator
 +
|-
 +
| <code>caNoEmulation = $00000004;</code>
 +
| No Emulation
 +
|-
 +
| <code>caFloppy12M = $00000008;</code>
 +
| 1.2M
 +
|-
 +
| <code>caFloppy144M = $00000010;</code>
 +
| 1.44M
 +
|-
 +
| <code>caFloppy288M = $00000020;</code>
 +
| 2.88M
 +
|-
 +
| <code>caHardDisk = $00000040;</code>
 +
| Hard Disk
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">
 +
<div style="font-size: 14px; padding-left: 12px;">'''FileSystem miscellaneous''' <code> NAME_HASH_SIZE* </code></div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>NAME_HASH_SIZE = 8;</code>
 +
| Used for Internal Name Hash Generation only
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">
 +
<div style="font-size: 14px; padding-left: 12px;">'''FileSystem partition Id''' <code> pid* </code></div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|See http://www.win.tue.nl/~aeb/partitions/partition_types-1.html
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>MAX_PARTITION_ID = 255;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnused = 0;</code>
 +
| Empty
 +
|-
 +
| <code>pidFAT12 = 1;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidXENIXROOT = 2;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidXENIXUSR = 3;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidFAT16 = 4;</code>
 +
| under 32M
 +
|-
 +
| <code>pidExtended = 5;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidFAT16HUGE = 6;</code>
 +
| over 32M
 +
|-
 +
| <code>pidHPFSNTFS = 7;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidAIXOS2 = 8;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidAIX = 9;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidOS2BOOT = 10;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidFAT32 = 11;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidFAT32LBA = 12;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown013 = 13;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidFAT16LBA = 14;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidExtLBA = 15;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidOPUS = 16;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidHIDDEN12 = 17;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidCompaqDiag = 18;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown019 = 19;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidHIDDEN16 = 20;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown021 = 21;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidHIDDEN16HUGE = 22;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidHIDDENHPFS = 23;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidASTSWAP = 24;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidWillowtech = 25;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown026 = 26;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidHIDDEN32 = 27;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidHIDDEN32LBA = 28;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown029 = 29;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidHIDDEN16LBA = 30;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown031 = 31;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidWillowsoft = 32;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidOxygen = 33;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidOxygenExtended = 34;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidReserved035 = 35;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidNECMSDOS = 36;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown037 = 37;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown038 = 38;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown039 = 39;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown040 = 40;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown041 = 41;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown042 = 42;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown043 = 43;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown044 = 44;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown045 = 45;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown046 = 46;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown047 = 47;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown048 = 48;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidReserved049 = 49;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidAlienNOS = 50;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidReserved051 = 51;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidReserved052 = 52;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidOS2JFS = 53;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidReserved054 = 54;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown055 = 55;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidTheos057 = 56;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidPlan9 = 57;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidTheos058 = 58;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidTheos059 = 59;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidPowerQuest = 60;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidHiddenNetware = 61;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown062 = 62;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown063 = 63;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidVENIX286 = 64;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidPersonalRISC = 65;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidSFS = 66;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidPTSDOS = 67;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidGoBack = 68;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidEUMEL069 = 69;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidEUMEL070 = 70;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidEUMEL071 = 71;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidEUMEL072 = 72;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown073 = 73;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidAdaOS = 74;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown075 = 75;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidOberon = 76;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidQNX4077 = 77;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidQNX4078 = 78;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidQNX4079 = 79;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidOnTrack080 = 80;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidNOVELL081 = 81;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidCPM = 82;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidOnTrack083 = 83;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidOnTrack084 = 84;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidEZDrive = 85;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidGoldenBow = 86;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown087 = 87;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown088 = 88;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown089 = 89;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown090 = 90;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown091 = 91;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidPriamEdisk = 92;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown093 = 93;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown094 = 94;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown095 = 95;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown096 = 96;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidSpeedStor097 = 97;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown098 = 98;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidSysV = 99;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidNetware286 = 100;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidNWFS = 101;</code>
 +
| Traditional/Netware 6 Master
 +
|-
 +
| <code>pidUnknown102 = 102;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidNovell103 = 103;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidNovell104 = 104;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidNSS = 105;</code>
 +
| NSS/Netware 6
 +
|-
 +
| <code>pidUnknown106 = 106;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown107 = 107;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown108 = 108;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown109 = 109;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown110 = 110;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown111 = 111;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidDiskSecure = 112;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown113 = 113;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown114 = 114;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidReserved115 = 115;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidReserved116 = 116;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidPCIX = 117;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidReserved118 = 118;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown119 = 119;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown120 = 120;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown121 = 121;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown122 = 122;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown123 = 123;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown124 = 124;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown125 = 125;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown126 = 126;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown127 = 127;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidMinix = 128;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidLinuxMinix = 129;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidLinuxSwap = 130;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidLinuxNative = 131;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidHIDDENC = 132;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidLinuxExtended = 133;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidFAT16Stripe = 134;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidNTFSStripe = 135;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown136 = 136;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown137 = 137;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown138 = 138;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown139 = 139;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown140 = 140;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown141 = 141;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown142 = 142;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown143 = 143;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown144 = 144;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown145 = 145;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown146 = 146;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidAmoeba = 147;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidAmoebaBBT = 148;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown149 = 149;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown150 = 150;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown151 = 151;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown152 = 152;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown153 = 153;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown154 = 154;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown155 = 155;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown156 = 156;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown157 = 157;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown158 = 158;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown159 = 159;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidPhoenixPM = 160;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidReserved161 = 161;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown162 = 162;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidReserved163 = 163;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidReserved164 = 164;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidFreeBSD = 165;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidOpenBSD = 166;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidNeXTStep = 167;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown168 = 168;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown169 = 169;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown170 = 170;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidDarwinBoot = 171;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown172 = 172;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown173= 173;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown174 = 174;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown175 = 175;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown176 = 176;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown177 = 177;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown178 = 178;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown179 = 179;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidReserved180 = 180;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown181 = 181;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidFAT16MirrorA = 182;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidNTFSMirrorA = 183;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidBSDIswap = 184;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown185 = 185;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown186 = 186;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown187 = 187;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown188 = 188;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown189 = 189;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown190= 190;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown191 = 191;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown192 = 192;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidDRDOSFAT12 = 193;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown194 = 194;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown195 = 195;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidDRDOSFAT16 = 196;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown197 = 197;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidFAT16MirrorB = 198;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidNTFSMirrorB = 199;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown200 = 200;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown201 = 201;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown202 = 202;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown203 = 203;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown204 = 204;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown205 = 205;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown206 = 206;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown207 = 207;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown208 = 208;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown209 = 209;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidTinyEFAT = 210;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidEFAT = 211;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidSecuredEFAT = 212;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidOpticalEFAT = 213;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown214 = 214;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown215 = 215;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidCPM86 = 216;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown217 = 217;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown218 = 218;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidConcurrentCPM = 219;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown220 = 220;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown221 = 221;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown222 = 222;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown223 = 223;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown224 = 224;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidSpeedStorFAT12 = 225;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown226 = 226;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown227 = 227;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidSpeedStorFAT16 = 228;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidReserved229 = 229;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidReserved230 = 230;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown231 = 231;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown232 = 232;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown233 = 233;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown234 = 234;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidBeOSBFS1 = 235;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown236 = 236;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown237 = 237;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown238 = 238;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown239 = 239;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidLinuxRISC = 240;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidStorageDimension = 241;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidDOS33Secondary = 242;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidSpeedStor243 = 243;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidSpeedStor244 = 244;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidPrologue = 245;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidSpeedStor246 = 246;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidOSGEFAT = 247;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown248 = 248;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidUnknown249 = 249;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidBochsX86 = 250;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidVMware = 251;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidVMwareSwap = 252;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidLinuxRAID = 253;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidLANstep = 254;</code>
 +
| &nbsp;
 +
|-
 +
| <code>pidXenixBBT = 255;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|colspan="2"|<code>PARTITION_NAMES:array[0..MAX_PARTITION_ID] of String = (</code>
 +
|-
 +
| <code>'Unused',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'FAT12',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'XENIX ROOT',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'XENIX USR',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'FAT16 (up to 32M)',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Extended',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'FAT16 (over 32M)',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'HPFS or NTFS',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'AIX or OS/2',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'AIX',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'OS/2 Boot Manager',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'FAT32',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'FAT32 (LBA)',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'FAT16 (LBA)',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Extended (LBA)',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'OPUS',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Hidden FAT12',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Compaq Diagnostic',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Hidden FAT16 (<32M)',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Hidden FAT16 (>32M)',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Hidden HPFS',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'AST SWAP',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Willowtech',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Hidden FAT32',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Hidden FAT32 (LBA)',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Hidden FAT16 (LBA)',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Willowsoft',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Oxygen',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Oxygen Extended',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Reserved',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'NEC MS-DOS 3.X',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Reserved',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Alien NOS',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Reserved',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Reserved',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'OS/2 JFS',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Reserved',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Theos',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Plan 9',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Theos',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Theos',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'PowerQuest Recovery',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Hidden Netware',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'VENIX 80286',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Personal RISC',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'SFS',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'PTS-DOS',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'GoBack',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'EUMEL/Elan',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'EUMEL/Elan',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'EUMEL/Elan',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'EUMEL/Elan',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'AdaOS Aquila',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Oberon',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'First QNX 4.0',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Second QNX 4.0',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Third QNX 4.0',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'OnTrack DM',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'NOVELL',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'CP/M',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'OnTrack DM',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'OnTrack DM',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'EZ Drive',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'GoldenBow',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Priam Edisk',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'SpeedStor',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Sys V / Mach / HURD',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Netware 286',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Netware 386',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Novell',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Novell',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Netware NSS',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'DiskSecure',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Reserved',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Reserved',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'PC/IX',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Reserved',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Minix v1.1-1.4a',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Linux / Minix',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Linux Swap',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Linux Native',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Hidden C:',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Linux Extended',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'FAT16 Stripe Set',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'NTFS Stripe Set',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Amoeba',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Amoeba BBT',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Phoenix Power Management',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Reserved',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Reserved',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Reserved',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'FreeBSD',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'OpenBSD',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'NeXTStep',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Apple Darwin Boot',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Reserved',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'FAT16 Mirror (Master)',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'NTFS Mirror (Master)',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'BSDI Swap',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'DR-DOS FAT12',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'DR-DOS FAT16',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'FAT16 Mirror (Slave)',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'NTFS Mirror (Slave)',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Tiny EFAT',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'EFAT',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Secured EFAT',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Optical EFAT',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'CP/M-86',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Concurrent CP/M',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'SpeedStor FAT12',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'SpeedStor FAT16',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Reserved',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Reserved',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'BeOS BFS-1',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Linux/PA-RISC',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Storage Dimension',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'DOS 3.3+ Secondary',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'SpeedStor',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'SpeedStor',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Prologue',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'SpeedStor',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'OSG EFAT',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Unknown',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'BochsX86',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'VMware',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'VMware Swap',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Linux RAID',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'LANstep',</code>
 +
| &nbsp;
 +
|-
 +
| <code>'Xenix BBT');</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">
 +
<div style="font-size: 14px; padding-left: 12px;">'''FileSystem device description''' <code> FILESYS_*_DEVICE_DESCRIPTION </code></div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>FILESYS_ATA_DEVICE_DESCRIPTION = 'ATA Storage Device';</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>FILESYS_ATAPI_DEVICE_DESCRIPTION = 'ATAPI Storage Device';</code>
 +
| &nbsp;
 +
|-
 +
| <code>FILESYS_SCSI_DEVICE_DESCRIPTION = 'SCSI Storage Device';</code>
 +
| &nbsp;
 +
|-
 +
| <code>FILESYS_USB_DEVICE_DESCRIPTION = 'USB Storage Device';</code>
 +
| &nbsp;
 +
|-
 +
| <code>FILESYS_MMC_DEVICE_DESCRIPTION = 'MMC/SD Storage Device';</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">
 +
<div style="font-size: 14px; padding-left: 12px;">'''FileSystem controller description''' <code> FILESYS_*_CONTROLLER_DESCRIPTION </code></div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>FILESYS_ATA_CONTROLLER_DESCRIPTION = 'ATA Storage Controller';</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>FILESYS_ATAPI_CONTROLLER_DESCRIPTION = 'ATAPI Storage Controller';</code>
 +
| &nbsp;
 +
|-
 +
| <code>FILESYS_SCSI_CONTROLLER_DESCRIPTION = 'SCSI Storage Controller';</code>
 +
| &nbsp;
 +
|-
 +
| <code>FILESYS_USB_CONTROLLER_DESCRIPTION = 'USB Storage Controller';</code>
 +
| &nbsp;
 +
|-
 +
| <code>FILESYS_MMC_CONTROLLER_DESCRIPTION = 'MMC/SD Storage Controller';</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">
 +
<div style="font-size: 14px; padding-left: 12px;">'''FileSystem logging''' <code> FILESYS_LOG_* </code></div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>FILESYS_LOG_LEVEL_DEBUG = LOG_LEVEL_DEBUG;</code>
 +
| FileSystem debugging messages
 +
|-
 +
| <code>FILESYS_LOG_LEVEL_INFO = LOG_LEVEL_INFO;</code>
 +
| FileSystem informational messages, such as a filesystem being mounted or dismounted
 +
|-
 +
| <code>FILESYS_LOG_LEVEL_WARN = LOG_LEVEL_WARN;</code>
 +
| FileSystem warning messages
 +
|-
 +
| <code>FILESYS_LOG_LEVEL_ERROR = LOG_LEVEL_ERROR;</code>
 +
| FileSystem error messages
 +
|-
 +
| <code>FILESYS_LOG_LEVEL_NONE = LOG_LEVEL_NONE;</code>
 +
| No FileSystem messages
 +
|-
 +
|}
 +
</div></div>
 +
<br />
  
 
=== Type definitions ===
 
=== Type definitions ===
 
----
 
----
  
''To be documented''
+
 
 +
'''Storage device event'''
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PStorageDeviceEvent = ^TStorageDeviceEvent;</code>
 +
 
 +
<code>TStorageDeviceEvent = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Timer:TTimerHandle;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>Device:PStorageDevice;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''Cache timer'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PCacheTimerItem = ^TCacheTimerItem;</code>
 +
 
 +
<code>TCacheTimerItem = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Key:Integer;</code>
 +
| Ordering key for timer list
 +
|-
 +
| <code>Page:TObject;</code>
 +
| The cache page referenced by this timer list item
 +
|-
 +
| <code>Prev:PCacheTimerItem;</code>
 +
| Previous item in timer list
 +
|-
 +
| <code>Next:PCacheTimerItem;</code>
 +
| Next item in timer list
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''Entry timer'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PEntryTimerItem = ^TEntryTimerItem;</code>
 +
 
 +
<code>TEntryTimerItem = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Key:Integer;</code>
 +
| Ordering key for timer list
 +
|-
 +
| <code>Entry:TObject;</code>
 +
| The disk entry referenced by this timer list item
 +
|-
 +
| <code>Prev:PEntryTimerItem;</code>
 +
| Previous item in timer list
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Media type'''
 +
 
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| <code>TMediaType = (mtUNKNOWN,mtINVALID,mtFLOPPY,mtFIXED,mtREMOVABLE,mtCDROM,mtDVD,mtOTHER);</code>
 +
| style="width: 40%;"|
 +
|-
 +
|}
 +
 
 +
'''Floppy type'''
 +
 
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| <code>TFloppyType = (ftUNKNOWN,ftINVALID,ft360K,ft12M,ft720K,ft144M,ft288M,ftATAPI);</code>
 +
| style="width: 40%;"|
 +
|-
 +
|}
 +
 +
'''Image type'''
 +
 
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| <code>TImageType = (itUNKNOWN,itINVALID,itMEMORY,itFILE,itDEVICE,itISO,itBOCHS,itVMWARE,itVPC,itVBOX);</code>
 +
| style="width: 40%;"|
 +
|-
 +
|}
 +
 
 +
'''Cache state'''
 +
 
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| <code>TCacheState = (csCLEAN,csDIRTY);</code>
 +
| style="width: 40%;"|
 +
|-
 +
|}
 +
 
 +
'''Cache mode'''
 +
 
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| <code>TCacheMode = (cmNONE,cmREADONLY,cmREADWRITE);</code>
 +
| style="width: 40%;"|
 +
|-
 +
|}
 +
 +
'''Cache page type'''
 +
 
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| <code>TCachePageType = (ptNONE,ptDEVICE);</code>
 +
| style="width: 40%;"|
 +
|-
 +
|}
 +
 +
'''Cache page state'''
 +
 
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| <code>TCachePageState = (psUNKNOWN,psEMPTY,psCLEAN,psDIRTY);</code>
 +
| style="width: 40%;"|
 +
|-
 +
|}
 +
 
 +
'''Cache page content'''
 +
 
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| <code>TCachePageContent = (pcUNKNOWN,pcDATA,pcDIRECTORY,pcENTRY,pcSYSTEM);</code>
 +
| style="width: 40%;"|
 +
|-
 +
|}
 +
 
 +
'''Cache statistics'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PCacheStatistics = ^TCacheStatistics;</code>
 +
 
 +
<code>TCacheStatistics = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Information''
 +
|-
 +
| <code>PageSize:LongWord;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>PageCount:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>CacheSize:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>CacheMode:TCacheMode;</code>
 +
| &nbsp;
 +
|-
 +
| <code>CacheState:TCacheState;</code>
 +
| &nbsp;
 +
|-
 +
| <code>FlushTimeout:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>DiscardTimeout:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|''Read/Write''
 +
|-
 +
| <code>ReadCached:Int64;</code>
 +
| &nbsp;
 +
|-
 +
| <code>ReadDirect:Int64;</code>
 +
| &nbsp;
 +
|-
 +
| <code>WriteBack:Int64;</code>
 +
| &nbsp;
 +
|-
 +
| <code>WriteThrough:Int64;</code>
 +
| &nbsp;
 +
|-
 +
| <code>WriteDirect:Int64;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|''Hit/Miss''
 +
|-
 +
| <code>HitCount:Int64;</code>
 +
| &nbsp;
 +
|-
 +
| <code>MissCount:Int64;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|''Allocate Success/Failure''
 +
|-
 +
| <code>FailCount:Int64;</code>
 +
| &nbsp;
 +
|-
 +
| <code>SuccessCount:Int64;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|''Page Flush/Discard''
 +
|-
 +
| <code>FlushCount:Int64;</code>
 +
| &nbsp;
 +
|-
 +
| <code>DiscardCount:Int64;</code>
 +
| &nbsp;
 +
|-
 +
| <code>UnknownCount:Int64;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|''Page Times''
 +
|-
 +
| <code>OldestClean:Int64;</code>
 +
| &nbsp;
 +
|-
 +
| <code>NewestClean:Int64;</code>
 +
| &nbsp;
 +
|-
 +
| <code>OldestDirty:Int64;</code>
 +
| &nbsp;
 +
|-
 +
| <code>NewestDirty:Int64;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''Search'''
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>TSearchRec = SysUtils.TRawbyteSearchRec;</code>
 +
 
 +
<code>TSearchRec = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: TSearchRec is always defined in SysUtils
 +
|-
 +
| <code>Time: Integer;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>Size: Integer;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Attr: Integer;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Name: TFileName;</code>
 +
| &nbsp;
 +
|-
 +
| <code>ExcludeAttr: Integer;</code>
 +
| &nbsp;
 +
|-
 +
| <code>FindHandle: THandle;</code>
 +
| &nbsp;
 +
|-
 +
| <code>FindData: TWin32FindData;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''File search'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TFileSearchRec = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>FindHandle:THandle;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>FindData:TWin32FindData;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 +
'''Disk search'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TDiskSearchRec = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Name:String;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>MediaType:TMediaType;</code>
 +
| &nbsp;
 +
|-
 +
| <code>FloppyType:TFloppyType;</code>
 +
| &nbsp;
 +
|-
 +
| <code>FindHandle:THandle;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Context:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Verbose:Boolean;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Partition search'''
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TPartitionSearchRec = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Name:String;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>Index:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>FindHandle:THandle;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Context:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Verbose:Boolean;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Volume search'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TVolumeSearchRec = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Name:String;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>Attributes:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>VolumeLabel:String;</code>
 +
| &nbsp;
 +
|-
 +
| <code>VolumeGUID:String;</code>
 +
| &nbsp;
 +
|-
 +
| <code>VolumeSerial:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>DriveType:TDriveType;</code>
 +
| &nbsp;
 +
|-
 +
| <code>FileSysType:TFileSysType;</code>
 +
| &nbsp;
 +
|-
 +
| <code>FindHandle:THandle;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Context:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Verbose:Boolean;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 +
'''Drive search'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TDriveSearchRec = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Name:String;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>Attributes:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>VolumeLabel:String;</code>
 +
| &nbsp;
 +
|-
 +
| <code>VolumeGUID:String;</code>
 +
| &nbsp;
 +
|-
 +
| <code>VolumeSerial:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>DriveType:TDriveType;</code>
 +
| &nbsp;
 +
|-
 +
| <code>FileSysType:TFileSysType;</code>
 +
| &nbsp;
 +
|-
 +
| <code>FindHandle:THandle;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Context:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Verbose:Boolean;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 +
'''Image search'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TImageSearchRec = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Name:String;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>ImageNo:Integer;</code>
 +
| &nbsp;
 +
|-
 +
| <code>ImageType:TImageType;</code>
 +
| &nbsp;
 +
|-
 +
| <code>MediaType:TMediaType;</code>
 +
| &nbsp;
 +
|-
 +
| <code>FloppyType:TFloppyType;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Attributes:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>SectorSize:Word;</code>
 +
| &nbsp;
 +
|-
 +
| <code>SectorCount:Int64;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Cylinders:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Heads:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Sectors:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>PartitionId:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>FindHandle:THandle;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Context:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Verbose:Boolean;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 +
'''Catalog search'''
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TCatalogSearchRec = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Name:String;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>Path:String;</code>
 +
| &nbsp;
 +
|-
 +
| <code>CatalogNo:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>MediaType:TMediaType;</code>
 +
| &nbsp;
 +
|-
 +
| <code>FloppyType:TFloppyType;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Attributes:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>SectorSize:Word;</code>
 +
| &nbsp;
 +
|-
 +
| <code>SectorCount:Int64;</code>
 +
| &nbsp;
 +
|-
 +
| <code>FindHandle:THandle;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Context:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Mount search'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TMountSearchRec = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Name:String;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>FindHandle:THandle;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Context:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Junction search'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TJunctionSearchRec = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Name:String;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>FindHandle:THandle;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Context:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Stream search'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TStreamSearchRec = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>FindHandle:THandle;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>Context:Pointer;</code>
 +
| &nbsp;
 +
|-
 +
| <code>FindData:TWin32FindStreamData;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Link search'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TLinkSearchRec = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Name:String;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>FindHandle:THandle;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Context:Pointer;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''FAT12/FAT16 BIOS parameter block'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TBiosPB = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>BytesPerSector:Word;</code>
 +
| 512,1024,2048,4096 - Usually 512
 +
|-
 +
| <code>SectorsPerCluster:Byte;</code>
 +
| 1,2,4,8,16,32,64,128
 +
|-
 +
| <code>ReservedSectors:Word;</code>
 +
| FAT12/16 - Usually 1, FAT32 - Usually 32
 +
|-
 +
| <code>NumberOfFats:Byte;</code>
 +
| Usually 2
 +
|-
 +
| <code>RootEntryCount:Word;</code>
 +
| FAT32 always 0, FAT16 usually 512 (RootEntryCount * 32 must be even multiple of BytesPerSector)
 +
|-
 +
| <code>TotalSectors16:Word;</code>
 +
| Total Sectors on the drive or 0 if TotalSectors32 used
 +
|-
 +
| <code>MediaId:Byte;</code>
 +
| F8 for Fixed media, F0 usually for Removable media
 +
|-
 +
| <code>SectorsPerFat16:Word;</code>
 +
| FAT32 always 0, Number of Sectors per FAT
 +
|-
 +
| <code>SectorsPerTrack:Word;</code>
 +
| Sectors Per Track for Int13
 +
|-
 +
| <code>NumberOfHeads:Word;</code>
 +
| Number of Header for Int13 eg 1.44MB = 2
 +
|-
 +
| <code>HiddenSectors:LongWord;</code>
 +
| Number of Hidden Sectors preceeding Partition (Only valid on Partitioned media)
 +
|-
 +
| <code>TotalSectors32:LongWord;</code>
 +
| Total Sectors on the drive or 0 if TotalSectors16 used
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''FAT32 BIOS parameter block'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TExtBiosPB = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>BytesPerSector:Word;</code>
 +
| 512,1024,2048,4096 - Usually 512
 +
|-
 +
| <code>SectorsPerCluster:Byte;</code>
 +
| 1,2,4,8,16,32,64,128
 +
|-
 +
| <code>ReservedSectors:Word;</code>
 +
| FAT12/16 - Usually 1, FAT32 - Usually 32
 +
|-
 +
| <code>NumberOfFats:Byte;</code>
 +
| Usually 2
 +
|-
 +
| <code>RootEntryCount:Word;</code>
 +
| FAT32 always 0, FAT16 usually 512 (RootEntryCount * 32 must be even multiple of BytesPerSector)
 +
|-
 +
| <code>TotalSectors16:Word;</code>
 +
| Total Sectors on the drive or 0 if TotalSectors32 used
 +
|-
 +
| <code>MediaId:Byte;</code>
 +
| F8 for Fixed media, F0 usually for Removable media
 +
|-
 +
| <code>SectorsPerFat16:Word;</code>
 +
| FAT32 always 0, Number of Sectors per FAT
 +
|-
 +
| <code>SectorsPerTrack:Word;</code>
 +
| Sectors Per Track for Int13
 +
|-
 +
| <code>NumberOfHeads:Word;</code>
 +
| Number of Header for Int13 eg 1.44MB = 2
 +
|-
 +
| <code>HiddenSectors:LongWord;</code>
 +
| Number of Hidden Sectors preceeding Partition (Only valid on Partitioned media)
 +
|-
 +
| <code>TotalSectors32:LongWord;</code>
 +
| Total Sectors on the drive or 0 if TotalSectors16 used
 +
|-
 +
| <code>SectorsPerFat32:LongWord;</code>
 +
| Number of Sectors per FAT
 +
|-
 +
| <code>ExtendedFlags:Word;</code>
 +
| Bits 0-3  -- Zero-based number of active FAT. Only valid if mirroring.
 +
Bits 0-3 - is disabled.
 +
 
 +
Bits 4-6 - Reserved.
 +
 
 +
Bit 7 - 0 means the FAT is mirrored at runtime into all FATs.
 +
 
 +
Bit 7 - 1 means only one FAT is active, it is the one referenced.
 +
 
 +
Bit 7 - in bits 0-3.
 +
 
 +
Bits 8-15 -- Reserved.
 +
|-
 +
| <code>FileSysVersion:Word;</code>
 +
| FAT32 Version (Current 0:0)
 +
|-
 +
| <code>RootCluster:LongWord;</code>
 +
| Usually Cluster 2
 +
|-
 +
| <code>FileSysInfoSector:Word;</code>
 +
| Usually 1
 +
|-
 +
| <code>BackupBootSector:Word;</code>
 +
| Usually 6
 +
|-
 +
| <code>Reserved:array[0..11] of Byte;</code>
 +
| Always 0
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''NTFS BIOS parameter block'''
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TNtfsBiosPB = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>BytesPerSector:Word;</code>
 +
| 512,1024,2048,4096 - Usually 512
 +
|-
 +
| <code>SectorsPerCluster:Byte;</code>
 +
| 1,2,4,8,16,32,64,128 - Usually 8
 +
|-
 +
| <code>ReservedSectors:Word;</code>
 +
| Must always be 0 on NTFS (Win2K Volume Manager ?)
 +
|-
 +
| <code>Reserved1:array[0..2] of Byte;</code>
 +
| Must always be 0 on NTFS
 +
|-
 +
| <code>Reserved2:Word;</code>
 +
| Must always be 0 on NTFS
 +
|-
 +
| <code>MediaId:Byte;</code>
 +
| F8 for Fixed media, F0 usually for Removable media
 +
|-
 +
| <code>Reserved3:Word;</code>
 +
| Must always be 0 on NTFS
 +
|-
 +
| <code>SectorsPerTrack:Word;</code>
 +
| Sectors Per Track for Int13
 +
|-
 +
| <code>NumberOfHeads:Word;</code>
 +
| Number of Header for Int13 eg 1.44MB = 2
 +
|-
 +
| <code>HiddenSectors:LongWord;</code>
 +
| Number of Hidden Sectors preceeding Partition
 +
|-
 +
| <code>Reserved4:LongWord;</code>
 +
| Must always be 0 on NTFS
 +
|-
 +
| <code>Reserved5:LongWord;</code>
 +
| Not used by NTFS - Usually 80008000
 +
|-
 +
| <code>TotalSectors:Int64;</code>
 +
| Total Sectors on the drive
 +
|-
 +
| <code>MFTCluster:Int64;</code>
 +
| Start Cluster of $MFT
 +
|-
 +
| <code>MFTMirror:Int64;</code>
 +
| Start Cluster of $MFTMirr
 +
|-
 +
| <code>ClustersPerFile:LongInt;</code>
 +
| Clusters Per File Record (Can be negative) (F6 = 1024 - See Notes)
 +
|-
 +
| <code>ClustersPerIndex:LongInt;</code>
 +
| Clusters Per Index Record (Can be negative) (F6 = 1024 - See Notes)
 +
|-
 +
| <code>VolumeSerial:Int64;</code>
 +
| Volume Serial Number
 +
|-
 +
| <code>Checksum:LongWord;</code>
 +
| Checksum (Not Used)
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''Partition entry'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TPartitionEntry = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>BootIndicator:Byte;</code>
 +
| 80 for active partition
 +
|-
 +
| <code>StartHead:Byte;</code>
 +
| Either Bits 0-3 only or Bits 0-7 depending on BIOS
 +
|-
 +
| <code>StartSector:Byte;</code>
 +
| Bits 0-5 = Sector, Bits 6-7 = Bits 8-9 of Cylinder
 +
|-
 +
| <code>StartCylinder:Byte;</code>
 +
| Bits 0-7 Only, Bits 8-9 in Sector
 +
|-
 +
| <code>TypeIndicator:Byte;</code>
 +
| See Table in Interrupt List and Below
 +
|-
 +
| <code>EndHead:Byte;</code>
 +
| Either Bits 0-3 only or Bits 0-7 depending on BIOS
 +
|-
 +
| <code>EndSector:Byte;</code>
 +
| Bits 0-5 = Sector, Bits 6-7 = Bits 8-9 of Cylinder
 +
|-
 +
| <code>EndCylinder:Byte;</code>
 +
| Bits 0-7 Only, Bits 8-9 in Sector
 +
|-
 +
| <code>SectorOffset:LongWord;</code>
 +
| Offset in sectors from current position to Start of Partition
 +
|-
 +
| <code>SectorCount:LongWord;</code>
 +
| Size in Sectors of the Partition
 +
|-
 +
|}
 +
</div></div> 
 +
 +
'''Partition table'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TPartitionTable = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>PartitionEntry:array[MIN_PARTITION..MAX_PARTITION] of TPartitionEntry;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Master boot code'''
 +
 
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| <code>TMasterBootCode = array[0..445] of Byte;</code>
 +
| style="width: 40%;"|
 +
|-
 +
|}
 +
 
 +
'''Master boot record'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PMasterBootRecord = ^TMasterBootRecord;</code>
 +
 
 +
<code>TMasterBootRecord = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: Standard Master Boot Record
 +
|-
 +
| <code>BootCode:TMasterBootCode;</code>
 +
| &nbsp;
 +
|-
 +
| <code>PartitionTable:TPartitionTable;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Signature:Word;</code>
 +
| Magic Number $AA55
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Ext master boot code'''
 +
 
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| <code>TExtMasterBootCode = array[0..439] of Byte;</code>
 +
| style="width: 40%;"|
 +
|-
 +
|}
 +
 
 +
'''Ext master boot record'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PExtMasterBootRecord = ^TExtMasterBootRecord;</code>
 +
 
 +
<code>TExtMasterBootRecord = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: NT/2000/XP Master Boot Record
 +
|-
 +
| <code>BootCode:TExtMasterBootCode;</code>
 +
| &nbsp;
 +
|-
 +
| <code>DiskSignature:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Reserved1:Word;</code>
 +
| &nbsp;
 +
|-
 +
| <code>PartitionTable:TPartitionTable;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Signature:Word;</code>
 +
| Magic Number $AA55
 +
|-
 +
|}
 +
</div></div> 
 +
 +
'''Partition record'''
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PPartitionRecord = ^TPartitionRecord;</code>
 +
 
 +
<code>TPartitionRecord = packed record </code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: Similar to TMasterBootRecord
 +
|-
 +
| <code>Dummy:array[0..445] of Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>PartitionTable:TPartitionTable;</code>
 +
| Only first 2 ever used
 +
|-
 +
| <code>Signature:Word;</code>
 +
| Magic Number $AA55
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Disk sector'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PDiskSector = ^TDiskSector;</code>
 +
 
 +
<code>TDiskSector = array[0..511] of Byte;</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| &nbsp;
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Boot sector jump'''
 +
 
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| <code>TBootSectorJump = array[0..2] of Byte;</code>
 +
| style="width: 40%;"|
 +
|-
 +
|}
 +
 
 +
'''Boot sector code'''
 +
 
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| <code>TBootSectorCode = array[0..447] of Byte;</code>
 +
| style="width: 40%;"|
 +
|-
 +
|}
 +
 
 +
'''Boot sector'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PBootSector = ^TBootSector;</code>
 +
 
 +
<code>TBootSector = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: FAT12/FAT16 Boot Sector
 +
|-
 +
| <code>BootJump:TBootSectorJump;</code>
 +
| JMP - EBh,??h,90h or E9h,??h,??h
 +
|-
 +
| <code>OEMName:array[0..7] of Char;</code>
 +
| MSWIN4.0/MSWIN4.1/MSDOS5.0
 +
|-
 +
| <code>BPB:TBiosPB;</code>
 +
| See Above
 +
|-
 +
| <code>DriveNumber:Byte;</code>
 +
| BIOS Int13 Drive No 00h, 80h, FFh etc
 +
|-
 +
| <code>Reserved1:Byte;</code>
 +
| Always 00h
 +
|-
 +
| <code>BootSignature:Byte;</code>
 +
| Always 29h
 +
|-
 +
| <code>VolumeSerial:LongWord;</code>
 +
| Serial No (Date/Time when Formatted)
 +
|-
 +
| <code>VolumeName:array[0..10] of Char;</code>
 +
| Volume Label or "NO NAME"
 +
|-
 +
| <code>SystemName:array[0..7] of Char;</code>
 +
| System Type FAT12, FAT16, FAT32 etc
 +
|-
 +
| <code>BootCode:TBootSectorCode;</code>
 +
| Executable Code
 +
|-
 +
| <code>Signature:Word;</code>
 +
| Magic Number $AA55
 +
|-
 +
|}
 +
</div></div> 
 +
 +
'''Ext boot sector jump'''
 +
 
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| <code>TExtBootSectorJump = array[0..2] of Byte;</code>
 +
| style="width: 40%;"|
 +
|-
 +
|}
 +
 
 +
'''Ext boot sector code'''
 +
 
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| <code>TExtBootSectorCode = array[0..419] of Byte;</code>
 +
| style="width: 40%;"|
 +
|-
 +
|}
 +
 
 +
'''Ext boot sector'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PExtBootSector = ^TExtBootSector;</code>
 +
 
 +
<code>TExtBootSector = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: FAT32 Boot Sector
 +
|-
 +
| <code>BootJump:TExtBootSectorJump;</code>
 +
| JMP - EBh,??h,90h or E9h,??h,??h
 +
|-
 +
| <code>OEMName:array[0..7] of Char;</code>
 +
| MSWIN4.1
 +
|-
 +
| <code>BPB:TExtBiosPB;</code>
 +
| See Above
 +
|-
 +
| <code>DriveNumber:Byte;</code>
 +
| BIOS Int13 Drive No 00h, 80h, FFh etc
 +
|-
 +
| <code>Reserved1:Byte;</code>
 +
| Always 00h
 +
|-
 +
| <code>BootSignature:Byte;</code>
 +
| Always 29h
 +
|-
 +
| <code>VolumeSerial:LongWord;</code>
 +
| Serial No (Date/Time when Formatted)
 +
|-
 +
| <code>VolumeName:array[0..10] of Char;</code>
 +
| Volume Label or "NO NAME"
 +
|-
 +
| <code>SystemName:array[0..7] of Char;</code>
 +
| System Type FAT12, FAT16, FAT32 etc
 +
|-
 +
| <code>BootCode:TExtBootSectorCode;</code>
 +
| Executable Code
 +
|-
 +
| <code>Signature:Word;</code>
 +
| Magic Number $AA55
 +
|-
 +
|}
 +
</div></div>
 +
 +
'''NTFS boot sector jump'''
 +
 
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| <code>TNtfsBootSectorJump = array[0..2] of Byte;</code>
 +
| style="width: 40%;"|
 +
|-
 +
|}
 +
 
 +
'''NTFS boot sector code'''
 +
 
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| <code>TNtfsBootSectorCode = array[0..425] of Byte;</code>
 +
| style="width: 40%;"|
 +
|-
 +
|}
 +
 
 +
'''NTFS boot sector'''
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PNtfsBootSector = ^TNtfsBootSector;</code>
 +
 
 +
<code>TNtfsBootSector = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: NTFS Boot Sector
 +
|-
 +
| <code>BootJump:TNtfsBootSectorJump;</code>
 +
| JMP - EBh,??h,90h
 +
|-
 +
| <code>OEMName:array[0..7] of Char;</code>
 +
| Always NTFS
 +
|-
 +
| <code>BPB:TNtfsBiosPB;</code>
 +
| See Above (73 Bytes BPB and ExtBPB)
 +
|-
 +
| <code>BootCode:TNtfsBootSectorCode;</code>
 +
| Executable Code
 +
|-
 +
| <code>Signature:Word;</code>
 +
| Magic Number $AA55
 +
|-
 +
|}
 +
</div></div>
 +
 +
'''EXTFS boot sector'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PExtfsBootSector = ^TExtfsBootSector;</code>
 +
 
 +
<code>TExtfsBootSector = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: EXTFS Boot Sector
 +
|-
 +
| &nbsp;
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''FileSystem logging'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PFileSysLogging = ^TFileSysLogging;</code>
 +
 
 +
<code>TFileSysLogging = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Logging Properties''
 +
|-
 +
| <code>Logging:TLoggingDevice;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
 
 +
=== Class definitions ===
 +
----
 +
 
 +
 
 +
'''FileSystem specific classes'''
 +
 
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TFileSysDriver|<code>TFileSysDriver = class(TObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TFileSysList|<code>TFileSysList = class(TLinkedObjList)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TFileSysListEx|<code>TFileSysListEx = class(TLinkedObjList)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TFileSysTree|<code>TFileSysTree = class(TLinkedObjTree)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TDiskDrive|<code>TDiskDrive = class(TListObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TRawHandle|<code>TRawHandle = class(TListObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TEnumHandle|<code>TEnumHandle = class(TListObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TFileHandle|<code>TFileHandle = class(TListObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TFindHandle|<code>TFindHandle = class(TListObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TDiskController|<code>TDiskController = class(TListObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TDiskDevice|<code>TDiskDevice = class(TListObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TDiskPartition|<code>TDiskPartition = class(TListObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TDiskVolume|<code>TDiskVolume = class(TListObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TDiskImage|<code>TDiskImage = class(TListObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TRecognizer|<code>TRecognizer = class(TListObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TRedirector|<code>TRedirector = class(TListObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TDiskPartitioner|<code>TDiskPartitioner = class(TObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TDiskFormatter|<code>TDiskFormatter = class(TObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TDiskDefragger|<code>TDiskDefragger = class(TObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TDiskConverter|<code>TDiskConverter = class(TObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TDiskRepairer|<code>TDiskRepairer = class(TObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TDiskResizer|<code>TDiskResizer = class(TObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TDiskCopier|<code>TDiskCopier = class(TObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TDiskImager|<code>TDiskImager = class(TObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TFileSystem|<code>TFileSystem = class(TListObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TDiskChunk|<code>TDiskChunk = class(TListObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TDiskTable|<code>TDiskTable = class(TListObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TDiskBlock|<code>TDiskBlock = class(TListObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TDiskEntry|<code>TDiskEntry = class(TTreeObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TDiskCatalog|<code>TDiskCatalog = class(TListObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TDiskReparse|<code>TDiskReparse = class(TObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TDiskSecurity|<code>TDiskSecurity = class(TObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TDiskAcl|<code>TDiskAcl = class(TListObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TDiskAce|<code>TDiskAce = class(TListObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TCache|<code>TCache = class(TObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TCacheEx|<code>TCacheEx = class(TCache)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[THashCache|<code>THashCache = class(TObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TIncrementalCache|<code>TIncrementalCache = class(TObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TCachePage|<code>TCachePage = class(TObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[THashCachePage|<code>THashCachePage = class(TCachePage)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TIncrementalCachePage|<code>TIncrementalCachePage = class(THashCachePage)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TCacheTimer|<code>TCacheTimer = class(TObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[THashCacheTimer|<code>THashCacheTimer = class(TObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TIncrementalCacheTimer|<code>TIncrementalCacheTimer = class(TObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TCacheThread|<code>TCacheThread = class(TThread)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[THashCacheThread|<code>THashCacheThread = class(TThread)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TIncrementalCacheThread|<code>TIncrementalCacheThread = class(TThread)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TEntryTimer|<code>TEntryTimer = class(TObject)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TDefaultRecognizer|<code>TDefaultRecognizer = class(TRecognizer)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TDefaultPartitioner|<code>TDefaultPartitioner = class(TDiskPartitioner)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TExtDiskController|<code>TExtDiskController = class(TDiskController)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TATADiskController|<code>TATADiskController = class(TDiskController)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TATAPIDiskController|<code>TATAPIDiskController = class(TDiskController)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TSCSIDiskController|<code>TSCSIDiskController = class(TDiskController)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TUSBDiskController|<code>TUSBDiskController = class(TExtDiskController)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TMMCDiskController|<code>TMMCDiskController = class(TExtDiskController)</code>]]
 +
|-
 +
|}
 +
 
 +
'''FileSystem advanced classes'''
 +
 
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TFSHandleStream|<code>TFSHandleStream = class(TStream)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TFSFileStream|<code>TFSFileStream = class(TFSHandleStream)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TFSHandleStreamEx|<code>TFSHandleStreamEx = class(TStreamEx)</code>]]
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| [[TFSFileStreamEx|<code>TFSFileStreamEx = class(TFSHandleStreamEx)</code>]]
 +
|-
 +
|}
 +
<br />
  
 
=== Public variables ===
 
=== Public variables ===
 
----
 
----
  
''To be documented''
+
 
 +
'''FileSystem logging'''
 +
 
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| <code>FILESYS_DEFAULT_LOG_LEVEL:LongWord = FILESYS_LOG_LEVEL_DEBUG;</code>
 +
| style="width: 40%;"|Minimum level for FileSystem messages. Only messages with level greater than or equal to this will be printed.
 +
|-
 +
|}
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| <code>FILESYS_LOG_ENABLED:Boolean;</code>
 +
| style="width: 40%;"|
 +
|-
 +
|}
 +
 
 +
'''FileSystem specific variables'''
 +
 
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| <code>FileSysDriver:TFileSysDriver;</code>
 +
| style="width: 40%;"|
 +
|-
 +
|}
 +
<br />
  
 
=== Function declarations ===
 
=== Function declarations ===
Line 34: Line 3,783:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 46: Line 3,795:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 58: Line 3,807:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FileSysStartCompleted:Boolean;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Returns True if the filesystem has been started</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 70: Line 3,831:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 77: Line 3,838:
 
<br />
 
<br />
  
'''FileSystem functions (Delphi / FreePascal RTL Equivalent)'''
+
'''FileSystem functions (Delphi/FreePascal RTL Equivalent)'''
  
 
'''Drive functions'''
 
'''Drive functions'''
Line 87: Line 3,848:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| No Volume Support
 
| No Volume Support
 
|-
 
|-
Line 99: Line 3,860:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| No Volume Support
 
| No Volume Support
 
|-
 
|-
Line 111: Line 3,872:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| No Volume Support
 
| No Volume Support
 
|-
 
|-
Line 123: Line 3,884:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| No Volume Support
 
| No Volume Support
 
|-
 
|-
Line 135: Line 3,896:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| No Volume Support
 
| No Volume Support
 
|-
 
|-
Line 147: Line 3,908:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| No Volume Support
 
| No Volume Support
 
|-
 
|-
Line 159: Line 3,920:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| No Volume Support
 
| No Volume Support
 
|-
 
|-
Line 171: Line 3,932:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| No Volume Support
 
| No Volume Support
 
|-
 
|-
Line 183: Line 3,944:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| No Volume Support
 
| No Volume Support
 
|-
 
|-
Line 195: Line 3,956:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| No Volume Support
 
| No Volume Support
 
|-
 
|-
Line 207: Line 3,968:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| No Volume Support
 
| No Volume Support
 
|-
 
|-
Line 219: Line 3,980:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| No Volume Support
 
| No Volume Support
 
|-
 
|-
Line 231: Line 3,992:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| No Volume Support
 
| No Volume Support
 
|-
 
|-
Line 243: Line 4,004:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| No Volume Support
 
| No Volume Support
 
|-
 
|-
Line 255: Line 4,016:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| No Volume Support
 
| No Volume Support
 
|-
 
|-
Line 267: Line 4,028:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| No Volume Support
 
| No Volume Support
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSGetDriveInformation(const APath:String; var AClusterSize:LongWord; var ATotalClusterCount,AFreeClusterCount:Int64):Boolean; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 
|-
 
|-
 
|}
 
|}
Line 279: Line 4,052:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| No Volume Support
 
| No Volume Support
 
|-
 
|-
Line 291: Line 4,064:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| No Volume Support
 
| No Volume Support
 
|-
 
|-
Line 301: Line 4,074:
  
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function FSFileOpen(const AFileName:String; AMode:Integer):Integer; inline;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function FSFileOpen(const AFileName:String; AMode:Integer):THandle; inline;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 313: Line 4,086:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function FSFileCreate(const AFileName:String):Integer; inline;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function FSFileCreate(const AFileName:String):THandle; inline;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 330: Line 4,103:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 337: Line 4,110:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">procedure FSFileClose(AHandle:Integer); inline;</pre>
+
<pre style="border: 0; padding-bottom:0px;">procedure FSFileClose(AHandle:THandle); inline;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 354: Line 4,127:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 361: Line 4,134:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function FSFileSeek(AHandle,AOffset,AOrigin:Integer):Integer; inline;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function FSFileSeek(AHandle:THandle; AOffset,AOrigin:LongInt):LongInt; inline;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 373: Line 4,146:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function FSFileFlush(AHandle:Integer):Boolean; inline;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function FSFileFlush(AHandle:THandle):Boolean; inline;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 385: Line 4,158:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function FSFileTruncate(AHandle:Integer):Boolean; inline;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function FSFileTruncate(AHandle:THandle):Boolean; inline;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 397: Line 4,170:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function FSSetEndOfFile(AHandle:Integer):Boolean; inline;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function FSSetEndOfFile(AHandle:THandle):Boolean; inline;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 409: Line 4,182:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function FSEndOfFile(AHandle:Integer):Boolean; inline;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function FSEndOfFile(AHandle:THandle):Boolean; inline;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 421: Line 4,194:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function FSFilePos(AHandle:Integer):Integer; inline;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function FSFilePos(AHandle:THandle):LongInt; inline;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 433: Line 4,206:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function FSFileSize(AHandle:Integer):Integer; inline;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function FSFileSize(AHandle:THandle):LongInt; inline;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 450: Line 4,223:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 462: Line 4,235:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 474: Line 4,247:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 481: Line 4,254:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function FSFileGetDate(AHandle:Integer):Integer; inline;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function FSFileGetDate(AHandle:THandle):Integer; inline;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 498: Line 4,271:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 505: Line 4,278:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function FSFileSetDate(AHandle:Integer; AAge:Integer):Integer; inline;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function FSFileSetDate(AHandle:THandle; AAge:Integer):Integer; inline;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 517: Line 4,290:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function FSFileRead(AHandle:Integer; var ABuffer; ACount:Integer):Integer; inline;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function FSFileRead(AHandle:THandle; var ABuffer; ACount:LongInt):LongInt; inline;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 529: Line 4,302:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function FSFileWrite(AHandle:Integer; const ABuffer; ACount:Integer):Integer; inline;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function FSFileWrite(AHandle:THandle; const ABuffer; ACount:LongInt):LongInt; inline;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 549: Line 4,322:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 561: Line 4,334:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 573: Line 4,346:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 585: Line 4,358:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| No Volume Support
 
| No Volume Support
 
|-
 
|-
Line 597: Line 4,370:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 609: Line 4,382:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 621: Line 4,394:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 633: Line 4,406:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 648: Line 4,421:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 660: Line 4,433:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 672: Line 4,445:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 687: Line 4,460:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 699: Line 4,472:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 711: Line 4,484:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 723: Line 4,496:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 
| None documented
 
| None documented
 
|-
 
|-
Line 735: Line 4,508:
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
|-
 
|-
! '''Note'''
+
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSAddSlash(const AFilePath:String; ALeading,ATrailing:Boolean):String; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSDeleteSlash(const AFilePath:String; ALeading,ATrailing:Boolean):String; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
 
 +
'''Extended functions'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSFileSeekEx(AHandle:THandle; const AOffset:Int64; AOrigin:LongInt):Int64; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSEndOfFileEx(AHandle:THandle):Boolean; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSFilePosEx(AHandle:THandle):Int64; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSFileSizeEx(AHandle:THandle):Int64; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSFileAgeEx(const AFileName:String):TFileTime; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSFileGetAttrEx(AHandle:THandle):Integer; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSFileGetDateEx(AHandle:THandle):TFileTime; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSFileSetDateEx(AHandle:THandle; AAge:TFileTime):Integer; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSGetFileTime(AHandle:THandle; ACreateTime,AAccessTime,AWriteTime:PFileTime):Boolean; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSSetFileTime(AHandle:THandle; ACreateTime,AAccessTime,AWriteTime:PFileTime):Boolean; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSFindFirstEx(const APath:String; var ASearchRec:TFileSearchRec):Integer; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSFindNextEx(var ASearchRec:TFileSearchRec):Integer; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">procedure FSFindCloseEx(var ASearchRec:TFileSearchRec); inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
 
 +
'''FileSystem functions (Win32 Compatibility)'''
 +
 
 +
'''Drive functions'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSDefineDosDevice(const ADeviceName,ATargetPath:String; AFlags:LongWord):Boolean; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSGetDiskType(const ARootPath:String):LongWord; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Equivalent to Win32 GetDriveType</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSGetDiskFreeSpace(const ARootPath:String; var ASectorsPerCluster,ABytesPerSector,ANumberOfFreeClusters,ATotalNumberOfClusters:LongWord):Boolean; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSGetDiskFreeSpaceEx(const APathName:String; var AFreeBytesAvailableToCaller,ATotalNumberOfBytes,ATotalNumberOfFreeBytes:QWord):Boolean; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSGetLogicalDrives:LongWord; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSGetLogicalDriveStrings:String; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSGetVolumeInformation(const ARootPath:String; var AVolumeName:String; var AVolumeSerialNumber,AMaximumComponentLength,AFileSystemFlags:LongWord; var ASystemName:String):Boolean; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSQueryDosDevice(const ARootPath:String):String; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSSetVolumeLabel(const AVolume:String; const ALabel:String):Boolean; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
 
 +
'''File functions'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSAreFileApisANSI:Boolean; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSCloseFile(AHandle:THandle):Boolean; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Equivalent to Win32 CloseHandle</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSCopyFile(const AExistingName,ANewName:String; AFailIfExists:Boolean):Boolean; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSCreateFile(const AFileName:String; AAccessMode,AShareMode,ACreateFlags,AFileAttributes:LongWord):THandle; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSFindCloseFile(AHandle:THandle):Boolean; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Equivalent to Win32 FindClose</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSFindFirstFile(const AFileName:String; var AFindData:TWin32FindData):THandle; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSFindNextFile(AHandle:THandle; var AFindData:TWin32FindData):Boolean; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSFlushFileBuffers(AHandle:THandle):Boolean; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSGetFileAttributes(const AFileName:String):LongWord; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSGetFileInformationByHandle(AHandle:THandle; var AFileInformation:TByHandleFileInformation):Boolean; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSGetFileSize(AHandle:THandle; var AFileSizeHigh:LongWord):LongWord; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSGetFullPathName(const AFileName:String):String; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSGetShortPathName(const ALongPath:String):String; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSMoveFile(const AExistingName,ANewName:String):Boolean; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSReadFile(AHandle:THandle; var ABuffer; ABytesToRead:LongWord; var ABytesRead:LongWord):Boolean; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSSetFileApisToANSI:Boolean; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSSetFileApisToOEM:Boolean; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSSetFileAttributes(const AFileName:String; AFileAttributes:LongWord):Boolean; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSSetFilePointer(AHandle:THandle; ADistanceToMove:LongInt; var ADistanceToMoveHigh:LongInt; AMoveMethod:LongWord):LongWord; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSSetFilePointerEx(AHandle:THandle; const ADistanceToMove:Int64; var ANewFilePointer:Int64; AMoveMethod:LongWord):Boolean; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSWriteFile(AHandle:THandle;const ABuffer; ABytesToWrite:LongWord; var ABytesWritten:LongWord):Boolean; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSGetLongPathName(const AShortPath:String):String; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSSetFileShortName(const AFileName,AShortName:String):Boolean; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSSetFileShortNameEx(AHandle:THandle; const AShortName:String):Boolean; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSCreateHardLink(const ALinkName,AFileName:String):Boolean; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSCreateSymbolicLink(const ALinkName,ATargetName:String; ADirectory:Boolean):Boolean; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
 
 +
'''Directory functions'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSCreateDirectory(const APathName:String):Boolean; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSGetCurrentDirectory:String; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSRemoveDirectory(const APathName:String):Boolean; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FSSetCurrentDirectory(const APathName:String):Boolean; inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
 
 +
'''RTL text IO functions'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function SysTextIOReadChar(var ACh:Char; AUserData:Pointer):Boolean;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Handler for platform TextIOReadChar function</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| Not intended to be called directly by applications
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function SysTextIOWriteChar(ACh:Char; AUserData:Pointer):Boolean;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Handler for platform TextIOWriteChar function</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| Not intended to be called directly by applications
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function SysTextIOWriteBuffer(ABuffer:PChar; ACount:LongInt; AUserData:Pointer):LongInt;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Handler for platform TextIOWriteBuffer function</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| Not intended to be called directly by applications
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
 
 +
'''RTL FileSystem functions'''
 +
 
 +
'''System file functions'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">procedure SystemDoClose(Handle:THandle);</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">procedure SystemDoErase(Name:PChar; NameChangeable:Boolean);</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">procedure SystemDoRename(Name1,Name2:PChar; Name1Changeable,Name2Changeable:Boolean);</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function SystemDoWrite(Handle:THandle; Address:Pointer; Len:LongInt):LongInt;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function SystemDoRead(Handle:THandle; Address:Pointer; Len:LongInt):LongInt;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function SystemDoFilePos(Handle:THandle):LongInt;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">procedure SystemDoSeek(Handle:THandle; Pos:LongInt);</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function SystemDoSeekEnd(Handle:THandle):LongInt;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function SystemDoFileSize(Handle:THandle):LongInt;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">procedure SystemDoTruncate(Handle:THandle; Pos:LongInt);</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">procedure SystemDoOpen(var F; Name:PFileTextRecChar; Flags:LongInt; NameChangeable:Boolean);</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| FileRec and TextRec have both Handle and Mode as the first items so they could use the same routine for opening/creating.
 +
- When (Flags and $00100) The file will be Appended
 +
<br />- When (Flags and $01000) The file will be Truncated/rewritten
 +
<br />- When (Flags and $10000) There is no check for Close (needed for TextFiles)
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
 
 +
'''System directory functions'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">procedure SystemDoMkDir(const Dir:RawByteString);</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">procedure SystemDoRmDir(const Dir:RawByteString);</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">procedure SystemDoChDir(const Dir:RawByteString);</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">procedure SystemDoGetDir(Drive:Byte; var Dir:RawByteString);</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
 
 +
'''Dos disk functions'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function DosDiskFree(Drive:Byte):Int64;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| No Volume Support
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function DosDiskSize(Drive:Byte):Int64;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| No Volume Support
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
 
 +
'''Dos FindFirst/FindNext functions'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function DosFindMatchingFile(var f:SearchRec):Integer;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Internal Only</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function DosFindFirst(const Path:PathStr; Attr:Word; var f:SearchRec):Integer;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| FindFirst/FindNext/FindClose - To be compatible with the DOS. FindFirst/FindNext we always allow faReadOnly and faArchive but only allow other attributes if requested. This is done by matching all files and filtering with FindMatchingFile.
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function DosFindNext(var f:SearchRec):Integer;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">procedure DosFindClose(var f:SearchRec);</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
 
 +
'''Dos file functions'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function DosGetFTime(var f; var Time:LongInt):Integer;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function DosSetFTime(var f; Time:LongInt):Integer;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function DosGetFAttr(var f; var Attr:Word):Integer;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function DosSetFAttr(var f; Attr:Word):Integer;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function DosGetShortName(var p:ShortString):Boolean;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function DosGetLongName(var p:ShortString):Boolean;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
 
 +
'''SysUtils file functions'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function SysUtilsFileOpen(const FileName:RawByteString; Mode:Integer):THandle;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function SysUtilsFileCreate(const FileName:RawByteString; ShareMode:Integer):THandle;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function SysUtilsDeleteFile(const FileName:RawByteString):Boolean;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">procedure SysUtilsFileClose(Handle:THandle);</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function SysUtilsRenameFile(const OldName,NewName:RawByteString):Boolean;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function SysUtilsFileSeek(Handle:THandle; Offset,Origin:LongInt):LongInt;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function SysUtilsFileTruncate(Handle:THandle;Size:Int64):Boolean;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function SysUtilsFileAge(const FileName:RawByteString):LongInt;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function SysUtilsFileExists(const FileName:RawByteString; FollowLink:Boolean):Boolean;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function SysUtilsFileGetAttr(const FileName:RawByteString):LongInt;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function SysUtilsFileGetDate(Handle:THandle):LongInt;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function SysUtilsFileSetAttr(const FileName:RawByteString; Attr:LongInt):LongInt;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function SysUtilsFileSetDate(Handle:THandle; Age:LongInt):LongInt;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function SysUtilsFileRead(Handle:THandle; out Buffer; Count:LongInt):LongInt;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function SysUtilsFileWrite(Handle:THandle; const Buffer; Count:LongInt):LongInt;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function SysUtilsFileSeekEx(Handle:THandle; Offset:Int64; Origin:LongInt):Int64;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function SysUtilsInternalFindFirst(const Path:RawByteString; Attr:LongInt; out SearchRec:TSearchRec; var Name:RawByteString):LongInt;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function SysUtilsInternalFindNext(var SearchRec:TSearchRec; var Name:RawByteString):LongInt;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">procedure SysUtilsInternalFindClose(var Handle:THandle);</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
 
 +
'''SysUtils disk functions'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function SysUtilsDiskFree(Drive:Byte):Int64;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| No Volume Support
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function SysUtilsDiskSize(Drive:Byte):Int64;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| No Volume Support
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function SysUtilsDirectoryExists(const Directory:RawByteString; FollowLink:Boolean):Boolean;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
 
 +
'''FileSystem logging functions'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FileSysLoggingStart(Logging:PLoggingDevice):LongWord;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Implementation of LoggingDeviceStart API for FileSystem Logging</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| Not intended to be called directly by applications, use LoggingDeviceStart instead.
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FileSysLoggingStop(Logging:PLoggingDevice):LongWord;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Implementation of LoggingDeviceStop API for FileSystem Logging</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| Not intended to be called directly by applications, use LoggingDeviceStop instead.
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FileSysLoggingOutput(Logging:PLoggingDevice; const Data:String):LongWord;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Implementation of LoggingDeviceOutput API for FileSystem Logging</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| Not intended to be called directly by applications, use LoggingDeviceOutput instead.
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FileSysLoggingSetTarget(Logging:PLoggingDevice; const Target:String):LongWord;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Implementation of LoggingDeviceSetTarget API for FileSystem Logging</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| Not intended to be called directly by applications, use LoggingDeviceSetTarget instead.
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
 
 +
'''FileSystem helper functions'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FileSysRedirectInput(Handle:THandle):Boolean;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Redirect standard input to the file specified by Handle</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Handle
 +
| The file handle to redirect input to (or INVALID_HANDLE_VALUE to stop redirection)
 +
|-
 +
! Return
 +
| True if completed successfully or False if an error occurred
 +
|-
 +
! Note
 +
| Redirects the input of the text file Input which also redirects the input of Read, ReadLn and the standard C library.
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FileSysRedirectOutput(Handle:THandle):Boolean;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Redirect standard output to the file specified by Handle</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Handle
 +
| The file handle to redirect output to (or INVALID_HANDLE_VALUE to stop redirection)
 +
|-
 +
! Return
 +
| True if completed successfully or False if an error occurred
 +
|-
 +
! Note
 +
| Redirects the output of the text files Output, ErrOutput, StdOut and StdErr which also redirects the output of Write, WriteLn and the standard C library.
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FileSysStorageGetMediaType(Storage:PStorageDevice):TMediaType;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FileSysStorageGetController(Storage:PStorageDevice):TDiskController;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">procedure FileSysStorageDeviceAdd(Event:PStorageDeviceEvent);</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">procedure FileSysStorageDeviceInsert(Event:PStorageDeviceEvent);</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FileSysStorageDeviceRemove(Storage:PStorageDevice):LongWord;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FileSysStorageDeviceEject(Storage:PStorageDevice):LongWord;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FileSysStorageDeviceEnum(Storage:PStorageDevice; Data:Pointer):LongWord;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FileSysStorageDeviceNotify(Device:PDevice; Data:Pointer; Notification:LongWord):LongWord;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function ComparePartitions(APartition1,APartition2:Pointer):Integer;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Sort partitions in order of start sector</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">procedure FileSysLog(Level:Integer;const AText:String);</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">procedure FileSysLogInfo(const AText:String); inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">procedure FileSysLogWarn(const AText:String); inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">procedure FileSysLogError(const AText:String); inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">procedure FileSysLogDebug(const AText:String); inline;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">procedure CacheCheckTimer(Data:Pointer);</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">procedure EntryCheckTimer(Data:Pointer);</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">procedure EntryProcessTimer(Data:Pointer);</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function MediaTypeToString(AType:TMediaType):String;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FloppyTypeToString(AType:TFloppyType):String;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function ImageTypeToString(AType:TImageType):String;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function DriveTypeToString(AType:TDriveType):String;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function FileSysTypeToString(AType:TFileSysType):String;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function StringToFileSysType(const AFileSysType:String):TFileSysType;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function PartitionIdToString(AId:Byte):String;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function StringToPartitionId(const APartitionId:String):Byte;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function CacheModeToString(ACacheMode:TCacheMode):String;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function CacheStateToString(ACacheState:TCacheState):String;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 +
| None documented
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 +
<pre style="border: 0; padding-bottom:0px;">function CachePageTimeToDateTime(const APageTime:Int64):TDateTime;</pre>
 +
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
! Note
 
| None documented
 
| None documented
 
|-
 
|-

Latest revision as of 04:04, 22 January 2025

Return to Unit Reference


Description


Ultibo FileSystem Interface unit

Numbering of Devices, Partitions, Volumes, Drives etc

Example:

Machine with 2 Floppy drives, 2 Fixed drives

Fixed Drive 1 has 2 Partitions (1 Primary and 1 Extended)

Fixed Drive 2 has 1 Partition (1 Primary)

\Floppy0 = Device 00h/Partition 0

\Floppy1 = Device 01h/Partition 0

\Harddisk0\Partition1 = Device 80h/Partition 1

\Harddisk0\Extended1 = Device 80h/Extended 1

\Harddisk0\Partition2 = Device 80h/Partition 2

\Harddisk1\Partition1 = Device 81h/Partition 1

\Volume1 = \Floppy0

\Volume2 = \Floppy1

\Volume3 = \Harddisk0\Partition1

\Volume4 = \Harddisk1\Partition1

\Volume5 = \Harddisk0\Partition2

A: = \Volume1

B: = \Volume2

C: = \Volume3 (Alternate Name = \HarddiskVolume1)

D: = \Volume4 (Alternate Name = \HarddiskVolume2)

E: = \Volume5 (Alternate Name = \HarddiskVolume3)

Constants



[Expand]
FileSystem specific constants FILESYS_*


[Expand]
FileSystem lock state FILESYS_LOCK_*


[Expand]
FileSystem cache FILESYS_CACHE_*


[Expand]
FileSystem entry timer FILESYS_ENTRY_*


[Expand]
FileSystem cache timer CACHE_TIMER_*


[Expand]
FileSystem entry timer key ENTRY_TIMER_KEY_*


[Expand]
FileSystem partition, device and volume *_PARTITION, *_DEVICE, *_VOLUME


[Expand]
FileSystem find flag FIND_FLAG_*


[Expand]
FileSystem find wildcard FIND_WILDCARD_*


[Expand]
File mode fm*Mask


[Expand]
File attribute fa*


[Expand]
FileSystem volume attribute va*


[Expand]
FileSystem device attribute da*


[Expand]
FileSystem image attribute ia*


[Expand]
FileSystem catalog attribute ca*


[Expand]
FileSystem miscellaneous NAME_HASH_SIZE*


[Expand]
FileSystem partition Id pid*


[Expand]
FileSystem device description FILESYS_*_DEVICE_DESCRIPTION


[Expand]
FileSystem controller description FILESYS_*_CONTROLLER_DESCRIPTION


[Expand]
FileSystem logging FILESYS_LOG_*


Type definitions



Storage device event

[Expand]

PStorageDeviceEvent = ^TStorageDeviceEvent;

TStorageDeviceEvent = record

Cache timer

[Expand]

PCacheTimerItem = ^TCacheTimerItem;

TCacheTimerItem = record

Entry timer

[Expand]

PEntryTimerItem = ^TEntryTimerItem;

TEntryTimerItem = record

Media type

TMediaType = (mtUNKNOWN,mtINVALID,mtFLOPPY,mtFIXED,mtREMOVABLE,mtCDROM,mtDVD,mtOTHER);

Floppy type

TFloppyType = (ftUNKNOWN,ftINVALID,ft360K,ft12M,ft720K,ft144M,ft288M,ftATAPI);

Image type

TImageType = (itUNKNOWN,itINVALID,itMEMORY,itFILE,itDEVICE,itISO,itBOCHS,itVMWARE,itVPC,itVBOX);

Cache state

TCacheState = (csCLEAN,csDIRTY);

Cache mode

TCacheMode = (cmNONE,cmREADONLY,cmREADWRITE);

Cache page type

TCachePageType = (ptNONE,ptDEVICE);

Cache page state

TCachePageState = (psUNKNOWN,psEMPTY,psCLEAN,psDIRTY);

Cache page content

TCachePageContent = (pcUNKNOWN,pcDATA,pcDIRECTORY,pcENTRY,pcSYSTEM);

Cache statistics

[Expand]

PCacheStatistics = ^TCacheStatistics;

TCacheStatistics = record

Search

[Expand]

TSearchRec = SysUtils.TRawbyteSearchRec;

TSearchRec = record

File search

[Expand]

TFileSearchRec = record

Disk search

[Expand]

TDiskSearchRec = record

Partition search

[Expand]

TPartitionSearchRec = record

Volume search

[Expand]

TVolumeSearchRec = record

Drive search

[Expand]

TDriveSearchRec = record

Image search

[Expand]

TImageSearchRec = record

Catalog search

[Expand]

TCatalogSearchRec = record

Mount search

[Expand]

TMountSearchRec = record

Junction search

[Expand]

TJunctionSearchRec = record

Stream search

[Expand]

TStreamSearchRec = record

Link search

[Expand]

TLinkSearchRec = record

FAT12/FAT16 BIOS parameter block

[Expand]

TBiosPB = packed record

FAT32 BIOS parameter block

[Expand]

TExtBiosPB = packed record

NTFS BIOS parameter block

[Expand]

TNtfsBiosPB = packed record

Partition entry

[Expand]

TPartitionEntry = packed record

Partition table

[Expand]

TPartitionTable = packed record

Master boot code

TMasterBootCode = array[0..445] of Byte;

Master boot record

[Expand]

PMasterBootRecord = ^TMasterBootRecord;

TMasterBootRecord = packed record

Ext master boot code

TExtMasterBootCode = array[0..439] of Byte;

Ext master boot record

[Expand]

PExtMasterBootRecord = ^TExtMasterBootRecord;

TExtMasterBootRecord = packed record

Partition record

[Expand]

PPartitionRecord = ^TPartitionRecord;

TPartitionRecord = packed record

Disk sector

[Expand]

PDiskSector = ^TDiskSector;

TDiskSector = array[0..511] of Byte;

Boot sector jump

TBootSectorJump = array[0..2] of Byte;

Boot sector code

TBootSectorCode = array[0..447] of Byte;

Boot sector

[Expand]

PBootSector = ^TBootSector;

TBootSector = packed record

Ext boot sector jump

TExtBootSectorJump = array[0..2] of Byte;

Ext boot sector code

TExtBootSectorCode = array[0..419] of Byte;

Ext boot sector

[Expand]

PExtBootSector = ^TExtBootSector;

TExtBootSector = packed record

NTFS boot sector jump

TNtfsBootSectorJump = array[0..2] of Byte;

NTFS boot sector code

TNtfsBootSectorCode = array[0..425] of Byte;

NTFS boot sector

[Expand]

PNtfsBootSector = ^TNtfsBootSector;

TNtfsBootSector = packed record

EXTFS boot sector

[Expand]

PExtfsBootSector = ^TExtfsBootSector;

TExtfsBootSector = packed record

FileSystem logging

[Expand]

PFileSysLogging = ^TFileSysLogging;

TFileSysLogging = record


Class definitions



FileSystem specific classes

TFileSysDriver = class(TObject)
TFileSysList = class(TLinkedObjList)
TFileSysListEx = class(TLinkedObjList)
TFileSysTree = class(TLinkedObjTree)
TDiskDrive = class(TListObject)
TRawHandle = class(TListObject)
TEnumHandle = class(TListObject)
TFileHandle = class(TListObject)
TFindHandle = class(TListObject)
TDiskController = class(TListObject)
TDiskDevice = class(TListObject)
TDiskPartition = class(TListObject)
TDiskVolume = class(TListObject)
TDiskImage = class(TListObject)
TRecognizer = class(TListObject)
TRedirector = class(TListObject)
TDiskPartitioner = class(TObject)
TDiskFormatter = class(TObject)
TDiskDefragger = class(TObject)
TDiskConverter = class(TObject)
TDiskRepairer = class(TObject)
TDiskResizer = class(TObject)
TDiskCopier = class(TObject)
TDiskImager = class(TObject)
TFileSystem = class(TListObject)
TDiskChunk = class(TListObject)
TDiskTable = class(TListObject)
TDiskBlock = class(TListObject)
TDiskEntry = class(TTreeObject)
TDiskCatalog = class(TListObject)
TDiskReparse = class(TObject)
TDiskSecurity = class(TObject)
TDiskAcl = class(TListObject)
TDiskAce = class(TListObject)
TCache = class(TObject)
TCacheEx = class(TCache)
THashCache = class(TObject)
TIncrementalCache = class(TObject)
TCachePage = class(TObject)
THashCachePage = class(TCachePage)
TIncrementalCachePage = class(THashCachePage)
TCacheTimer = class(TObject)
THashCacheTimer = class(TObject)
TIncrementalCacheTimer = class(TObject)
TCacheThread = class(TThread)
THashCacheThread = class(TThread)
TIncrementalCacheThread = class(TThread)
TEntryTimer = class(TObject)
TDefaultRecognizer = class(TRecognizer)
TDefaultPartitioner = class(TDiskPartitioner)
TExtDiskController = class(TDiskController)
TATADiskController = class(TDiskController)
TATAPIDiskController = class(TDiskController)
TSCSIDiskController = class(TDiskController)
TUSBDiskController = class(TExtDiskController)
TMMCDiskController = class(TExtDiskController)

FileSystem advanced classes

TFSHandleStream = class(TStream)
TFSFileStream = class(TFSHandleStream)
TFSHandleStreamEx = class(TStreamEx)
TFSFileStreamEx = class(TFSHandleStreamEx)


Public variables



FileSystem logging

FILESYS_DEFAULT_LOG_LEVEL:LongWord = FILESYS_LOG_LEVEL_DEBUG; Minimum level for FileSystem messages. Only messages with level greater than or equal to this will be printed.
FILESYS_LOG_ENABLED:Boolean;

FileSystem specific variables

FileSysDriver:TFileSysDriver;


Function declarations



Initialization functions

[Expand]
procedure FileSysInit;
Description: To be documented


[Expand]
function FileSysStart:LongWord;
Description: To be documented


[Expand]
function FileSysStop:LongWord;
Description: To be documented


[Expand]
function FileSysStartCompleted:Boolean;
Description: Returns True if the filesystem has been started


[Expand]
procedure FileSysAsyncStart(Data:Pointer);
Description: To be documented


FileSystem functions (Delphi/FreePascal RTL Equivalent)

Drive functions

[Expand]
function FSGetPathDrive(const APath:String):Byte; inline;
Description: To be documented


[Expand]
function FSGetDriveType(ADrive:Byte):TDriveType; inline;
Description: To be documented


[Expand]
function FSGetDriveData(ADrive:Byte):TDriveData; inline;
Description: To be documented


[Expand]
function FSGetDriveAttr(ADrive:Byte):LongWord; inline;
Description: To be documented


[Expand]
function FSGetDriveLabel(ADrive:Byte):String; inline;
Description: To be documented


[Expand]
function FSSetDriveLabel(ADrive:Byte; const ALabel:String):Boolean; inline;
Description: To be documented


[Expand]
function FSGetDriveSerial(ADrive:Byte):LongWord; inline;
Description: To be documented


[Expand]
function FSSetDriveSerial(ADrive:Byte; ASerial:LongWord):Boolean; inline;
Description: To be documented


[Expand]
function FSIsDriveValid(ADrive:Byte):Boolean; inline;
Description: To be documented


[Expand]
function FSGetValidDrives:LongWord; inline;
Description: To be documented


[Expand]
function FSGetValidDriveNames:TStringList; inline;
Description: To be documented


[Expand]
function FSGetValidDriveStrings:String; inline;
Description: To be documented


[Expand]
function FSGetDriveFreeSpace(ADrive:Byte):LongWord; inline;
Description: To be documented


[Expand]
function FSGetDriveFreeSpaceEx(ADrive:Byte):Int64; inline;
Description: To be documented


[Expand]
function FSGetDriveTotalSpace(ADrive:Byte):LongWord; inline;
Description: To be documented


[Expand]
function FSGetDriveTotalSpaceEx(ADrive:Byte):Int64; inline;
Description: To be documented


[Expand]
function FSGetDriveInformation(const APath:String; var AClusterSize:LongWord; var ATotalClusterCount,AFreeClusterCount:Int64):Boolean; inline;
Description: To be documented


[Expand]
function FSGetCurrentDrive:Byte; inline;
Description: To be documented


[Expand]
function FSSetCurrentDrive(const ADrive:String):Boolean; inline;
Description: To be documented


File functions

[Expand]
function FSFileOpen(const AFileName:String; AMode:Integer):THandle; inline;
Description: To be documented


[Expand]
function FSFileCreate(const AFileName:String):THandle; inline;
Description: To be documented


[Expand]
function FSDeleteFile(const AFileName:String):Boolean; inline;
Description: To be documented


[Expand]
procedure FSFileClose(AHandle:THandle); inline;
Description: To be documented


[Expand]
function FSRenameFile(const AOldName,ANewName:String):Boolean; inline;
Description: To be documented


[Expand]
function FSFileSeek(AHandle:THandle; AOffset,AOrigin:LongInt):LongInt; inline;
Description: To be documented


[Expand]
function FSFileFlush(AHandle:THandle):Boolean; inline;
Description: To be documented


[Expand]
function FSFileTruncate(AHandle:THandle):Boolean; inline;
Description: To be documented


[Expand]
function FSSetEndOfFile(AHandle:THandle):Boolean; inline;
Description: To be documented


[Expand]
function FSEndOfFile(AHandle:THandle):Boolean; inline;
Description: To be documented


[Expand]
function FSFilePos(AHandle:THandle):LongInt; inline;
Description: To be documented


[Expand]
function FSFileSize(AHandle:THandle):LongInt; inline;
Description: To be documented


[Expand]
function FSFileAge(const AFileName:String):Integer; inline;
Description: To be documented


[Expand]
function FSFileExists(const AFileName:String):Boolean; inline;
Description: To be documented


[Expand]
function FSFileGetAttr(const AFileName:String):Integer; inline;
Description: To be documented


[Expand]
function FSFileGetDate(AHandle:THandle):Integer; inline;
Description: To be documented


[Expand]
function FSFileSetAttr(const AFileName:String; AAttr:Integer):Integer; inline;
Description: To be documented


[Expand]
function FSFileSetDate(AHandle:THandle; AAge:Integer):Integer; inline;
Description: To be documented


[Expand]
function FSFileRead(AHandle:THandle; var ABuffer; ACount:LongInt):LongInt; inline;
Description: To be documented


[Expand]
function FSFileWrite(AHandle:THandle; const ABuffer; ACount:LongInt):LongInt; inline;
Description: To be documented


Directory functions

[Expand]
function FSCreateDir(const ADirName:String):Boolean; inline;
Description: To be documented


[Expand]
function FSRemoveDir(const ADirName:String):Boolean; inline;
Description: To be documented


[Expand]
function FSRenameDir(const AOldName,ANewName:String):Boolean; inline;
Description: To be documented


[Expand]
function FSGetCurrentDir:String; inline;
Description: To be documented


[Expand]
function FSSetCurrentDir(const ADirName:String):Boolean; inline;
Description: To be documented


[Expand]
function FSDirectoryExists(const ADirName:String):Boolean; inline;
Description: To be documented


[Expand]
procedure FSForceDirectories(ADirName:String); inline;
Description: To be documented


[Expand]
procedure FSDeleteTree(const ADirName:String); inline;
Description: To be documented


Search functions

[Expand]
function FSFindFirst(const APath:String; AAttr:Integer; var ASearchRec:TSearchRec):Integer; inline;
Description: To be documented


[Expand]
function FSFindNext(var ASearchRec:TSearchRec):Integer; inline;
Description: To be documented


[Expand]
procedure FSFindClose(var ASearchRec:TSearchRec); inline;
Description: To be documented


Additional functions

[Expand]
function FSFileCopy(const ASourceFile,ADestFile:String; AFailIfExists:Boolean):Boolean; inline;
Description: To be documented


[Expand]
function FSFileCopyEx(const ASourceFile,ADestFile:String; AFailIfExists:Boolean; AUseSourceDate:Boolean; ADestDate:Integer; AUseSourceAttr:Boolean; ADestAttr:Integer):Boolean; inline;
Description: To be documented


[Expand]
function FSGetShortName(const AFileName:String):String; inline;
Description: To be documented


[Expand]
function FSGetLongName(const AFileName:String):String; inline;
Description: To be documented


[Expand]
function FSGetTrueName(const AFileName:String):String; inline;
Description: To be documented


[Expand]
function FSAddSlash(const AFilePath:String; ALeading,ATrailing:Boolean):String; inline;
Description: To be documented


[Expand]
function FSDeleteSlash(const AFilePath:String; ALeading,ATrailing:Boolean):String; inline;
Description: To be documented


Extended functions

[Expand]
function FSFileSeekEx(AHandle:THandle; const AOffset:Int64; AOrigin:LongInt):Int64; inline;
Description: To be documented


[Expand]
function FSEndOfFileEx(AHandle:THandle):Boolean; inline;
Description: To be documented


[Expand]
function FSFilePosEx(AHandle:THandle):Int64; inline;
Description: To be documented


[Expand]
function FSFileSizeEx(AHandle:THandle):Int64; inline;
Description: To be documented


[Expand]
function FSFileAgeEx(const AFileName:String):TFileTime; inline;
Description: To be documented


[Expand]
function FSFileGetAttrEx(AHandle:THandle):Integer; inline;
Description: To be documented


[Expand]
function FSFileGetDateEx(AHandle:THandle):TFileTime; inline;
Description: To be documented


[Expand]
function FSFileSetDateEx(AHandle:THandle; AAge:TFileTime):Integer; inline;
Description: To be documented


[Expand]
function FSGetFileTime(AHandle:THandle; ACreateTime,AAccessTime,AWriteTime:PFileTime):Boolean; inline;
Description: To be documented


[Expand]
function FSSetFileTime(AHandle:THandle; ACreateTime,AAccessTime,AWriteTime:PFileTime):Boolean; inline;
Description: To be documented


[Expand]
function FSFindFirstEx(const APath:String; var ASearchRec:TFileSearchRec):Integer; inline;
Description: To be documented


[Expand]
function FSFindNextEx(var ASearchRec:TFileSearchRec):Integer; inline;
Description: To be documented


[Expand]
procedure FSFindCloseEx(var ASearchRec:TFileSearchRec); inline;
Description: To be documented


FileSystem functions (Win32 Compatibility)

Drive functions

[Expand]
function FSDefineDosDevice(const ADeviceName,ATargetPath:String; AFlags:LongWord):Boolean; inline;
Description: To be documented


[Expand]
function FSGetDiskType(const ARootPath:String):LongWord; inline;
Description: Equivalent to Win32 GetDriveType


[Expand]
function FSGetDiskFreeSpace(const ARootPath:String; var ASectorsPerCluster,ABytesPerSector,ANumberOfFreeClusters,ATotalNumberOfClusters:LongWord):Boolean; inline;
Description: To be documented


[Expand]
function FSGetDiskFreeSpaceEx(const APathName:String; var AFreeBytesAvailableToCaller,ATotalNumberOfBytes,ATotalNumberOfFreeBytes:QWord):Boolean; inline;
Description: To be documented


[Expand]
function FSGetLogicalDrives:LongWord; inline;
Description: To be documented


[Expand]
function FSGetLogicalDriveStrings:String; inline;
Description: To be documented


[Expand]
function FSGetVolumeInformation(const ARootPath:String; var AVolumeName:String; var AVolumeSerialNumber,AMaximumComponentLength,AFileSystemFlags:LongWord; var ASystemName:String):Boolean; inline;
Description: To be documented


[Expand]
function FSQueryDosDevice(const ARootPath:String):String; inline;
Description: To be documented


[Expand]
function FSSetVolumeLabel(const AVolume:String; const ALabel:String):Boolean; inline;
Description: To be documented


File functions

[Expand]
function FSAreFileApisANSI:Boolean; inline;
Description: To be documented


[Expand]
function FSCloseFile(AHandle:THandle):Boolean; inline;
Description: Equivalent to Win32 CloseHandle


[Expand]
function FSCopyFile(const AExistingName,ANewName:String; AFailIfExists:Boolean):Boolean; inline;
Description: To be documented


[Expand]
function FSCreateFile(const AFileName:String; AAccessMode,AShareMode,ACreateFlags,AFileAttributes:LongWord):THandle; inline;
Description: To be documented


[Expand]
function FSFindCloseFile(AHandle:THandle):Boolean; inline;
Description: Equivalent to Win32 FindClose


[Expand]
function FSFindFirstFile(const AFileName:String; var AFindData:TWin32FindData):THandle; inline;
Description: To be documented


[Expand]
function FSFindNextFile(AHandle:THandle; var AFindData:TWin32FindData):Boolean; inline;
Description: To be documented


[Expand]
function FSFlushFileBuffers(AHandle:THandle):Boolean; inline;
Description: To be documented


[Expand]
function FSGetFileAttributes(const AFileName:String):LongWord; inline;
Description: To be documented


[Expand]
function FSGetFileInformationByHandle(AHandle:THandle; var AFileInformation:TByHandleFileInformation):Boolean; inline;
Description: To be documented


[Expand]
function FSGetFileSize(AHandle:THandle; var AFileSizeHigh:LongWord):LongWord; inline;
Description: To be documented


[Expand]
function FSGetFullPathName(const AFileName:String):String; inline;
Description: To be documented


[Expand]
function FSGetShortPathName(const ALongPath:String):String; inline;
Description: To be documented


[Expand]
function FSMoveFile(const AExistingName,ANewName:String):Boolean; inline;
Description: To be documented


[Expand]
function FSReadFile(AHandle:THandle; var ABuffer; ABytesToRead:LongWord; var ABytesRead:LongWord):Boolean; inline;
Description: To be documented


[Expand]
function FSSetFileApisToANSI:Boolean; inline;
Description: To be documented


[Expand]
function FSSetFileApisToOEM:Boolean; inline;
Description: To be documented


[Expand]
function FSSetFileAttributes(const AFileName:String; AFileAttributes:LongWord):Boolean; inline;
Description: To be documented


[Expand]
function FSSetFilePointer(AHandle:THandle; ADistanceToMove:LongInt; var ADistanceToMoveHigh:LongInt; AMoveMethod:LongWord):LongWord; inline;
Description: To be documented


[Expand]
function FSSetFilePointerEx(AHandle:THandle; const ADistanceToMove:Int64; var ANewFilePointer:Int64; AMoveMethod:LongWord):Boolean; inline;
Description: To be documented


[Expand]
function FSWriteFile(AHandle:THandle;const ABuffer; ABytesToWrite:LongWord; var ABytesWritten:LongWord):Boolean; inline;
Description: To be documented


[Expand]
function FSGetLongPathName(const AShortPath:String):String; inline;
Description: To be documented


[Expand]
function FSSetFileShortName(const AFileName,AShortName:String):Boolean; inline;
Description: To be documented


[Expand]
function FSSetFileShortNameEx(AHandle:THandle; const AShortName:String):Boolean; inline;
Description: To be documented


[Expand]
function FSCreateHardLink(const ALinkName,AFileName:String):Boolean; inline;
Description: To be documented


[Expand]
function FSCreateSymbolicLink(const ALinkName,ATargetName:String; ADirectory:Boolean):Boolean; inline;
Description: To be documented


Directory functions

[Expand]
function FSCreateDirectory(const APathName:String):Boolean; inline;
Description: To be documented


[Expand]
function FSGetCurrentDirectory:String; inline;
Description: To be documented


[Expand]
function FSRemoveDirectory(const APathName:String):Boolean; inline;
Description: To be documented


[Expand]
function FSSetCurrentDirectory(const APathName:String):Boolean; inline;
Description: To be documented


RTL text IO functions

[Expand]
function SysTextIOReadChar(var ACh:Char; AUserData:Pointer):Boolean;
Description: Handler for platform TextIOReadChar function


[Expand]
function SysTextIOWriteChar(ACh:Char; AUserData:Pointer):Boolean;
Description: Handler for platform TextIOWriteChar function


[Expand]
function SysTextIOWriteBuffer(ABuffer:PChar; ACount:LongInt; AUserData:Pointer):LongInt;
Description: Handler for platform TextIOWriteBuffer function


RTL FileSystem functions

System file functions

[Expand]
procedure SystemDoClose(Handle:THandle);
Description: To be documented


[Expand]
procedure SystemDoErase(Name:PChar; NameChangeable:Boolean);
Description: To be documented


[Expand]
procedure SystemDoRename(Name1,Name2:PChar; Name1Changeable,Name2Changeable:Boolean);
Description: To be documented


[Expand]
function SystemDoWrite(Handle:THandle; Address:Pointer; Len:LongInt):LongInt;
Description: To be documented


[Expand]
function SystemDoRead(Handle:THandle; Address:Pointer; Len:LongInt):LongInt;
Description: To be documented


[Expand]
function SystemDoFilePos(Handle:THandle):LongInt;
Description: To be documented


[Expand]
procedure SystemDoSeek(Handle:THandle; Pos:LongInt);
Description: To be documented


[Expand]
function SystemDoSeekEnd(Handle:THandle):LongInt;
Description: To be documented


[Expand]
function SystemDoFileSize(Handle:THandle):LongInt;
Description: To be documented


[Expand]
procedure SystemDoTruncate(Handle:THandle; Pos:LongInt);
Description: To be documented


[Expand]
procedure SystemDoOpen(var F; Name:PFileTextRecChar; Flags:LongInt; NameChangeable:Boolean);
Description: To be documented


System directory functions

[Expand]
procedure SystemDoMkDir(const Dir:RawByteString);
Description: To be documented


[Expand]
procedure SystemDoRmDir(const Dir:RawByteString);
Description: To be documented


[Expand]
procedure SystemDoChDir(const Dir:RawByteString);
Description: To be documented


[Expand]
procedure SystemDoGetDir(Drive:Byte; var Dir:RawByteString);
Description: To be documented


Dos disk functions

[Expand]
function DosDiskFree(Drive:Byte):Int64;
Description: To be documented


[Expand]
function DosDiskSize(Drive:Byte):Int64;
Description: To be documented


Dos FindFirst/FindNext functions

[Expand]
function DosFindMatchingFile(var f:SearchRec):Integer;
Description: Internal Only


[Expand]
function DosFindFirst(const Path:PathStr; Attr:Word; var f:SearchRec):Integer;
Description: To be documented


[Expand]
function DosFindNext(var f:SearchRec):Integer;
Description: To be documented


[Expand]
procedure DosFindClose(var f:SearchRec);
Description: To be documented


Dos file functions

[Expand]
function DosGetFTime(var f; var Time:LongInt):Integer;
Description: To be documented


[Expand]
function DosSetFTime(var f; Time:LongInt):Integer;
Description: To be documented


[Expand]
function DosGetFAttr(var f; var Attr:Word):Integer;
Description: To be documented


[Expand]
function DosSetFAttr(var f; Attr:Word):Integer;
Description: To be documented


[Expand]
function DosGetShortName(var p:ShortString):Boolean;
Description: To be documented


[Expand]
function DosGetLongName(var p:ShortString):Boolean;
Description: To be documented


SysUtils file functions

[Expand]
function SysUtilsFileOpen(const FileName:RawByteString; Mode:Integer):THandle;
Description: To be documented


[Expand]
function SysUtilsFileCreate(const FileName:RawByteString; ShareMode:Integer):THandle;
Description: To be documented


[Expand]
function SysUtilsDeleteFile(const FileName:RawByteString):Boolean;
Description: To be documented


[Expand]
procedure SysUtilsFileClose(Handle:THandle);
Description: To be documented


[Expand]
function SysUtilsRenameFile(const OldName,NewName:RawByteString):Boolean;
Description: To be documented


[Expand]
function SysUtilsFileSeek(Handle:THandle; Offset,Origin:LongInt):LongInt;
Description: To be documented


[Expand]
function SysUtilsFileTruncate(Handle:THandle;Size:Int64):Boolean;
Description: To be documented


[Expand]
function SysUtilsFileAge(const FileName:RawByteString):LongInt;
Description: To be documented


[Expand]
function SysUtilsFileExists(const FileName:RawByteString; FollowLink:Boolean):Boolean;
Description: To be documented


[Expand]
function SysUtilsFileGetAttr(const FileName:RawByteString):LongInt;
Description: To be documented


[Expand]
function SysUtilsFileGetDate(Handle:THandle):LongInt;
Description: To be documented


[Expand]
function SysUtilsFileSetAttr(const FileName:RawByteString; Attr:LongInt):LongInt;
Description: To be documented


[Expand]
function SysUtilsFileSetDate(Handle:THandle; Age:LongInt):LongInt;
Description: To be documented


[Expand]
function SysUtilsFileRead(Handle:THandle; out Buffer; Count:LongInt):LongInt;
Description: To be documented


[Expand]
function SysUtilsFileWrite(Handle:THandle; const Buffer; Count:LongInt):LongInt;
Description: To be documented


[Expand]
function SysUtilsFileSeekEx(Handle:THandle; Offset:Int64; Origin:LongInt):Int64;
Description: To be documented


[Expand]
function SysUtilsInternalFindFirst(const Path:RawByteString; Attr:LongInt; out SearchRec:TSearchRec; var Name:RawByteString):LongInt;
Description: To be documented


[Expand]
function SysUtilsInternalFindNext(var SearchRec:TSearchRec; var Name:RawByteString):LongInt;
Description: To be documented


[Expand]
procedure SysUtilsInternalFindClose(var Handle:THandle);
Description: To be documented


SysUtils disk functions

[Expand]
function SysUtilsDiskFree(Drive:Byte):Int64;
Description: To be documented


[Expand]
function SysUtilsDiskSize(Drive:Byte):Int64;
Description: To be documented


[Expand]
function SysUtilsDirectoryExists(const Directory:RawByteString; FollowLink:Boolean):Boolean;
Description: To be documented


FileSystem logging functions

[Expand]
function FileSysLoggingStart(Logging:PLoggingDevice):LongWord;
Description: Implementation of LoggingDeviceStart API for FileSystem Logging


[Expand]
function FileSysLoggingStop(Logging:PLoggingDevice):LongWord;
Description: Implementation of LoggingDeviceStop API for FileSystem Logging


[Expand]
function FileSysLoggingOutput(Logging:PLoggingDevice; const Data:String):LongWord;
Description: Implementation of LoggingDeviceOutput API for FileSystem Logging


[Expand]
function FileSysLoggingSetTarget(Logging:PLoggingDevice; const Target:String):LongWord;
Description: Implementation of LoggingDeviceSetTarget API for FileSystem Logging


FileSystem helper functions

[Expand]
function FileSysRedirectInput(Handle:THandle):Boolean;
Description: Redirect standard input to the file specified by Handle


[Expand]
function FileSysRedirectOutput(Handle:THandle):Boolean;
Description: Redirect standard output to the file specified by Handle


[Expand]
function FileSysStorageGetMediaType(Storage:PStorageDevice):TMediaType;
Description: To be documented


[Expand]
function FileSysStorageGetController(Storage:PStorageDevice):TDiskController;
Description: To be documented


[Expand]
procedure FileSysStorageDeviceAdd(Event:PStorageDeviceEvent);
Description: To be documented


[Expand]
procedure FileSysStorageDeviceInsert(Event:PStorageDeviceEvent);
Description: To be documented


[Expand]
function FileSysStorageDeviceRemove(Storage:PStorageDevice):LongWord;
Description: To be documented


[Expand]
function FileSysStorageDeviceEject(Storage:PStorageDevice):LongWord;
Description: To be documented


[Expand]
function FileSysStorageDeviceEnum(Storage:PStorageDevice; Data:Pointer):LongWord;
Description: To be documented


[Expand]
function FileSysStorageDeviceNotify(Device:PDevice; Data:Pointer; Notification:LongWord):LongWord;
Description: To be documented


[Expand]
function ComparePartitions(APartition1,APartition2:Pointer):Integer;
Description: Sort partitions in order of start sector


[Expand]
procedure FileSysLog(Level:Integer;const AText:String);
Description: To be documented


[Expand]
procedure FileSysLogInfo(const AText:String); inline;
Description: To be documented


[Expand]
procedure FileSysLogWarn(const AText:String); inline;
Description: To be documented


[Expand]
procedure FileSysLogError(const AText:String); inline;
Description: To be documented


[Expand]
procedure FileSysLogDebug(const AText:String); inline;
Description: To be documented


[Expand]
procedure CacheCheckTimer(Data:Pointer);
Description: To be documented


[Expand]
procedure EntryCheckTimer(Data:Pointer);
Description: To be documented


[Expand]
procedure EntryProcessTimer(Data:Pointer);
Description: To be documented


[Expand]
function MediaTypeToString(AType:TMediaType):String;
Description: To be documented


[Expand]
function FloppyTypeToString(AType:TFloppyType):String;
Description: To be documented


[Expand]
function ImageTypeToString(AType:TImageType):String;
Description: To be documented


[Expand]
function DriveTypeToString(AType:TDriveType):String;
Description: To be documented


[Expand]
function FileSysTypeToString(AType:TFileSysType):String;
Description: To be documented


[Expand]
function StringToFileSysType(const AFileSysType:String):TFileSysType;
Description: To be documented


[Expand]
function PartitionIdToString(AId:Byte):String;
Description: To be documented


[Expand]
function StringToPartitionId(const APartitionId:String):Byte;
Description: To be documented


[Expand]
function CacheModeToString(ACacheMode:TCacheMode):String;
Description: To be documented


[Expand]
function CacheStateToString(ACacheState:TCacheState):String;
Description: To be documented


[Expand]
function CachePageTimeToDateTime(const APageTime:Int64):TDateTime;
Description: To be documented


Return to Unit Reference