XMGR  - XMS Memory Manager
XHDD  - Hard Disk drive caching driver
XDVD2 - Optical drive caching driver
RDISK - 2-Gigabyte "RAM Disk" Driver

Last Update : 2019-03-10

Binary: DRIVERS.ZIP (22.4K)

XMGR, RDISK, XHDD, and XDVD2 are DOS device drivers for an 80386+ PC system using MS-DOS V5.0+ or a fully-compatible variant.

XMGR is a DOS XMS memory manager. It supports V3.70+ UMBPCI by Uwe Sieber and can load directly into UMBPCI upper-memory. It also runs with JEMM386 or other similar "EMM" drivers and can "boot" into upper memory, using only 304 bytes (minimum) of low DOS memory! XMGR was written to the V3.0 XMS Specifications and handles up to 4 Gigabytes of memory.

RDISK is a DOS RAM-disk driver. It creates a "fast" disk drive from up to 2 GIGABYTES of XMS memory! The AUTOEXEC.BAT file can copy critical files and programs to the RAM-disk, and DOS can access them at memory speeds. RDISK is a small "load it and forget about it" driver, for users who do not need resizing or other features.

XHDD is a disk caching driver for DOS. It runs up to 14 SATA/IDE UltraDMA disks of any size on up to 5 "Legacy" or Native-PCI IDE controllers. XHDD intercepts and caches Int 13h I-O calls for its disks, A: and B: diskettes, and other Int 13h drivers that load first. If loaded after XHDD, the XDVD2 driver (below) will call XHDD to cache CD/DVD data files. "Read Ahead" is used for SATA or IDE disks with a 20-MB+ cache, and XHDD's /O switch will "overlap" disk UltraDMA with caching tasks. Using both items, XHDD gives 20% more speed than old UIDE drivers! Write-Through caching is done, NO "delayed" output! XHDD's cache is in XMS memory and can hold from 2.5 Megabytes to 4 GIGABYTES of data! XHDD accepts digital camera CompactFlash cards as SATA or IDE drives and will run them as UltraDMA hard disks (not slower "call the BIOS" units as in old UIDE drivers).

XHDD also offers a basic UltraDMA disk driver (no cache) with its /B switch for tests and other non-cached tasks. The basic XHDD replaces old UDMA or XDMA drivers and offers reliable PCI-bus disk detection, many errors fixed, etc.

XDVD2 is a CD/DVD driver for up to 3 SATA, IDE, and old "PIO mode" CD/DVD drives. It reads CD/DVD data files, plays audio CDs, and can input "raw" (trackwriter) data. XDVD2 can work alone; or if the caching XHDD driver is present, XDVD2 will call it to cache CD/DVD data files for MUCH faster speed! XDVD2 can run with no XMS driver for minimal DOS "game" systems. It can replace old XCDROM or GCDROM drivers and provides reliable PCI-bus drive detection, fast CD/DVD caching via XHDD, many errors fixed, etc.

XHDD and XDVD2 can run AHCI disk/CD/DVD drives on controller ports set to "Legacy", "Compatibility", or "Native IDE" mode. See their README file for full details about these drivers, also for example CONFIG.SYS and AUTOEXEC.BAT files that can be used with them.

Revision History
10-Mar-19 XHDD uses Read-Ahead for a 10-MB+ cache and sets all 10-MB+ cache sizes. Other drivers unchanged, re-dated only.
24-Feb-19 XMGR error on only old 80386 CPUs is fixed. Other drivers unchanged, re-dated only.
16-Feb-19 XHDD /B error in the 2-Feb-19 release (bad return codes) is fixed. XHDD's caching driver was O.K. Other drivers unchanged, re-dated only.
2-Feb-19 XHDD now runs 128-GB+ disks with only LBA48 I-O opcodes, to avoid disk errors crossing over 128-GB! XHDD still runs old disks under 128-GB via LBA28 opcodes. Other drivers unchanged, re-dated only.
16-Dec-18 XHDD /P cache limit raised to 1.5 Gigabytes (uses up to 48K of upper/DOS memory). Minor XHDD size changes. Other drivers unchanged, re-dated only.
11-Nov-18 XHDD's caching and /B drivers use the same entry/exit code, saving 100+ bytes! XHDD.SYS is again under 5K, optional /P code re-added to improve protected-mode speed. Other drivers unchanged, re-dated only.
20-Oct-18 XHDD 2.5-MB cache added for old 4-MB 80386/80486 PCs. See the XHDD /S2 notes in the README file Section 6, for full details. XMGR/XHDD now use fast 6K-byte blocks for real mode XMS moves. Some XHDD real-mode logic re-added, for improved speed. Other drivers unchanged, re-dated only.
6-Oct-18 XHDD real-mode speed increased due to better logic. Other drivers unchanged, re-dated only.
23-Sep-18 XHDD reduced to 5K bytes -- Same functionality, only a tiny real-mode speed change! README file updated re: loading XHDD/XDVD2 with /H on non-compatible DOS systems. Other drivers unchanged, re-dated only.
16-Sep-18 Minor README file updates. XHDD Init logic reduced, minor init changes for XMGR/XDVD2. Other drivers not changed, re-dated only.
30-Jun-18 XMGR UltraDMA "boot" deleted and "I-O Catcher" reinstalled, to avoid /O switch confusion/errors. Related XHDD logic deleted. Protected-mode users MUST see Section 6 of the README file for updated info! Other drivers unchanged, re-dated only.
15-Jun-18 Int 13h logic updated, so XMGR's "boot" and XHDD get faster I-O service. Other drivers unchanged, re-dated only.
31-May-18 README file updated re: XMGR /O and JEMMEX usage. Drivers unchanged, still dated 22-May-2018.
22-May-18 XHDD again handles 80386 CPUs with at least 8-MB memory for its 5-MB cache. LMDD deleted. Other drivers unchanged (re-dated only).
15-May-18 XMGR again handles an 80386 CPU. Other drivers unchanged, re-dated only.
For full details, see the drivers' README file.
20-Apr-18 XHDD error fixed in its Init XMS logic. Other drivers not changed (still dated 31-Jan-2018), user "UHDD" driver set retired, and "XHDD" driver set again offered to everyone.
For full details, see the drivers' README file.
24-Jan-18 /G switch added to XDVD2/RDISK, so "game" PCs need not load any .SYS drivers from AUTOEXEC. Other drivers unchanged (re-dated only).
7-Jan-18 New XMGR /N32 switch to save low memory, new XHDD /O switch for more speed. Other drivers unchanged, re-dated only.
16-Dec-17 XHDD /P switch added for better protected-mode speed and /G added for DOS games. Improved /R switch for RDISK, XHDD and XDVD2. XMGR unchanged, re-dated only.
4-Dec-17 Initial release of the XHDD/XDVD2 driver set for all users, derived from the XHDD/XDVD2 drivers that are now PRIVATE!
History Changlog of UIDE