TOC · Work · Menu · Disk

## Device I/O Parameters

Device I/O Dialog Box Device I/O Handler Script

### Interface

A way to access disk / volume sectors (can be set when selecting device).

RW Access: open a device with write permissions (OS specific).

Allow Write: enable write operations for the device (global read-only mode must be disabled).

IO FILE: use default OS functions to access disks (the most compatible, but may be not optimal for failing drives, not supported in DOS for devices)

IO SCSI (OS Windows, Linux): use SCSI driver (lower level, recommended to reduce the number of OS I/O attempts, and to bypass some OS write blocking)

IO ATA (OS Windows): use lower level ATA driver for IDE / SATA disks (may be poorly implemented in OS)

Overlapped: use overlapped I/O in OS Windows (no practical use, not recommended)

#### DOS

- ATA Interface (direct access, recommended for disks with damages, see the requirements)

  ATA Interface | for HDD/SSD
  ATAPI Interface | for CD/DVD
  use DMA | use faster DMA access for ATA (Professional Edition only)
  use LBA48 | to access more than 128 GiB
  raw CD access | to access non-digital CD

- BIOS Services (the most compatible access way in DOS)

  Old BIOS Service | old CHS access supporting up to 8.4GB
  Ext BIOS Service | LBA access

- DOS Services (for logical disks)

  DOS Int 25/26 | DOS functions
  Win9x-FAT32 Calls | new DOS functions
  MSCDEX Services | for CD/DVD

- DOS ASPI (access for SCSI, USB, and other devices if ASPI drivers are loaded)

### I/O Errors

A way to handle I/O errors.

Skip I/O Errors: an option to automatically continue an operation after a number of auto retries when I/O errors happen. If turned off the user choice is required within I/O dialog box.

Error List: specify a comma-separated list of error codes that will be skipped when the skip option above is enabled. When the user selects "Ignore all" in the I/O dialog box the corresponding error code is added to this list. If the list is empty then all errors are skipped.

Do not wait if device is not ready: continue an operation even if a device is not ready (not recommended).

always: apply to future operations.
now: apply to current operation.

Auto retries number on CRC Error: a number of additional I/O retries when an I/O error happens. Do not use IO FILE interface to avoid OS Windows additional retries and delays.

Zero value (0) stands for no additional retries, herewith the rest sectors of the block after the error will not be read to the I/O buffer, or even moreover the entire I/O buffer contents may be undefined on error for some devices/drivers.

If the value is non-zero then sectors are being read one by one until an I/O error is encountered. The error sector is being read until the number of auto retries is reached or the sector is read succesfully.

Increasing of retries number increases the percent of data successfully read but decreases device lifetime due to heavy load.

Auto retries number on Seek Error: additional I/O retries for errors other than "CRC".

Input error is assumed to be a seek error if I/O buffer contents is not changed after I/O (or it is zero filled). Usually seek errors significantly slow down I/O and not recoverable on retries.

Pattern for representing bad sectors (hex): 4-byte little-endian value (in hex) to fill the data buffer when reading bad sectors (on I/O errors).

Jump over sectors after error: skip the given number of sectors when an unrecoverable error is encountered.

If there are areas of sequential bad sectors then skipping significantly reduces loading and further device damaging. Herewith the recovery quality reduces if there are only individual bad sectors.

Read back after jump: read skipped sectors backward after a jump until an I/O error is encountered.

The option is unavailable if the number of sectors to skip is too big. The feature improves the percent of the data succesfully read.

Pattern for representing skipped sectors (hex): 4-byte little-endian value (in hex) to fill the data buffer for skipped/over jumped sectors.

### Additional Parameters

I/O buffer size in sectors: the maximum number of sectors transferred per I/O operation.

Timeout, msec.: time in milliseconds to wait for a device responce (for DOS ATA Interface).

SCSI/ATA Timeout, s.: timeout for IO SCSI/ATA interfaces (OS dependent, may be unsupported).

Update device handle / devices list on error: may be needed if a device was disconnected.

Retry I/O on device connection: automatically resume the operation when the device is reconnected (Windows GUI only).

ATA software reset if busy: perform ATA soft reset if device is busy after a timeout (for DOS ATA interface).

ATA software reset timeout, ms.: time to wait for a device readiness after ATA soft reset.

Script...: set custom Device I/O Handler.

SMART: show SMART report.