UIDE is a "Universal IDE" caching driver for DOS. It has internal support for SATA and UltraDMA disks on up to 8 "Legacy" or "Native PCI" IDE controllers. It intercepts and caches DOS Int 13h I-O requests for up to 32 BIOS disks, including A: and B: diskettes if present. UIDE "calls the BIOS" to handle I-O for SCSI and other non-IDE disks, and it caches their data when I-O is complete. To avoid slow BIOS I-O, DOS Int 13h drivers for other disks can load before UIDE, and it will cache data for their disks, as well.
UIDE also supports up to 4 CD/DVD drives, which may be SATA, UltraDMA, or old "PIO mode" models. It accepts file-input requests by SHCDX33C and other CD "Redirectors", and it automatically caches all file data for CD/DVD drives. Data files, audio CD "playback", and "trackwriter" functions can all be handled simultaneously on different drives (audio and trackwriting are not cached).
UIDE uses XMS memory and caches from 5-Megabytes to 1-GIGABYTE of data for disks, diskettes and CD/DVD drives! It can be re-assembled with up to 5 new "internal" drivers or with support for up to 220 "external" drives (USB, Firewire, etc.). UIDE normally uses 3.5K bytes of upper memory. It loads its cache routine and search tables into HMA space unused by DOS. For the "LZ" V7.10 MS-DOS kernel, HMA space allows up to a 255-Megabyte cache! With not-enough HMA or for larger caches, UIDE loads entirely in upper-memory, using 4.5K bytes for the driver plus 32 search-table bytes for each 1-Megabyte of cache.