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

Last Update : 2022-06-29

Binary: DRIVERS.ZIP (23.4K)

XMGR, RDISK, XHDD, and XDVD2 are DOS device drivers for an 80386+ PC system (XHDD requires an 80486+) 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 works with EMM386 or other similar "EMM" drivers and can "boot" into upper memory, using only 304 bytes (minimum) of low DOS memory! XMGR is 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! AUTOEXEC.BAT can copy critical programs or files to the RAM-disk, where DOS can access them at memory speeds. RDISK is a very small driver, for users who do not need resizing nor other features.

XHDD is an UltraDMA disk caching driver. It handles up to 10 BIOS disks of any type or size using up to 4 "Legacy" and Native-PCI UltraDMA controllers. XHDD caches Int 13h I-O requests for disks, A: and B: diskettes, and other Int 13h drivers that load first. The XDVD2 driver can be loaded after XHDD to cache CD/DVD data files. Read-Ahead is used for all UltraDMA disks, and XHDD's /O switch will overlap disk UltraDMA with caching tasks. Using both is up to 20% faster than old UIDE drivers! "Write Through" caching is done (NO "delayed" output!). XHDD's cache is in XMS memory and will hold from 5 Megabytes to 4 GIGABYTES of data! XHDD accepts digital camera CompactFlash cards and runs them as SATA or IDE UltraDMA disks (not slow "call the BIOS" disks as in old UIDE drivers).

XHDD also offer a basic UltraDMA disk driver (no cache) with its /B switch, for tests or other noncached work. The basic XHDD can replace 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 4 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 is in use, 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 files that can be used with them.

Revision History
1-Jul-22 XMGR /R switch accepts ".5" for an extra 0.5-MB of reserved XMS. 24-bit "Sound Blaster" cards etc. can use /R15.5 and work in protected-mode (the last 0.5-MB of the 16-MB area is for JEMM386). PLEASE READ the updated XMGR /R comments and Sections 5 and 6 of this README, re: use of reserved XMS! Other drivers unchanged, re-dated only.
15-May-22 README file updated only, to better explain using protected mode and "cheap BIOS" mainboards. PLEASE READ Section 6 below! All drivers remain dated 23-Jan-22.
24-Apr-22 README file updated only, re: BIG changes needed for V5.80+ JEMM386/JEMMEX. PLEASE READ all protected-mode notes in Section 6 below, also NOTE the CONFIG.SYS example updates in Section 5. All drivers remain dated 23-Jan-2022.
23-Jan-22 /R deleted from XHDD/XDVD2/RDISK and added into XMGR. New /F switch added into XHDD/XDVD2/RDISK, to "free" reserved XMS when all drivers are loaded. These changes HOLD all reserved XMS memory, if other drivers (JEMM386 etc.) need their own XMS before a DOS "game" begins!
30-Dec-21 XHDD reverted back to a 5K-byte driver, re: unsolved ERRORS running some apps, also a need for clearer Initialization messages. Other drivers unchanged, re-dated only.
30-Nov-21 REAME file update; Section 5 describes how to use both XHDD and RDISK for best speed. NO driver changes; all still dated 21-Nov-2021.
21-Nov-21 XHDD now handles up to 15 BIOS disks using up to 6 UltraDMA controllers, to support larger workstations (only 48 more HMA bytes, XHDD.SYS still only 4.5K!). Minor Init ERROR in the noncached XHDD is fixed. Other drivers unchanged (re-dated only).
11-Nov-21 Minor XHDD size drop (32 bytes less). README file updated re: XHDD /B and /E switches and protected-mode tech notes in Section 6. Other drivers unchanged, re-dated only.
24-Nov-21 XHDD now uses its caching logic for noncached work. Prior noncached logic deleted. Saves over THREE HUNDRED bytes and gives XHDD.SYS a 4.5K size for "boot" diskettes etc.!
All XHDD features, switches, and caching speeds remain as before! Other drivers unchanged, re-dated only.
17-Oct-21 README protected-mode CONFIG.SYS example files in Section 5 and comments in Section 6 updated. NO changes to any of the drivers; all are still dated 6-Jun-2021.
06-Jun-21 XHDD now handles up to 10 BIOS disks using up to 4 UltraDMA controllers; uses only 16 more HMA bytes! XHDD2 dropped (unneeded now). Other drivers unchanged, re-dated only.
25-Apr-21 XHDD/XHDD2 "extra" XMS logic deleted (was LOSING time), for 1% faster protected-mode speed! Other drivers unchanged (re-dated only).
18-Apr-21 XHDD/XHDD2 re-add /P resident search-table logic for faster cache speed with SSD/NVmE "disks". See the /P notes in Section 6 of this README for a full description. Other drivers unchanged, re-dated only.
14-Mar-21 XHDD/XHDD2 re-add extra XMS logic and better "VDS" code (48 more HMA bytes) for more caching speed with fast SSD/NVmE "disks". Other drivers unchanged, re-dated only.
27-Feb-21 XHDD.SYS and XHDD2.SYS are now 4736 bytes each and assemble from a common XHDD.ASM file, for more reliability and FAR easier updates! Other drivers unchanged, re-dated only.
16-Feb-21 XHDD now handles 8 BIOS disks using 3 UltraDMA controllers, for most user PCs. New XHDD2 runs 14 BIOS disks using 6 ULtraDMA controllers, for workstations or other large DOS systems. Both set ALL cache sizes from 5-MB to 4-GB and will use Read-Ahead and Overlap (with /O) for all caches, to speed up PCs having < 16-MB of memory! Other drivers unchanged, re-dated only.
26-Jan-21 README file updated and minimized. NO driver changes, all are still dated 23-Jan-2021.
23-Jan-21 XHDD 2.5-MB cache and 80386 support dropped (of little use). Run-time XHDD is smaller by 48 HMA bytes. Other drivers unchanged, re-dated only.
27-Dec-20 XHDD1 and XDVD3 dropped re: little user interest. XHDD now supports 5 UltraDMA controllers (was 6). Other drivers unchanged, re-dated only.
23-Nov-20 README file update only: See Section 6 for further HimemSX/JemmSX comments! NO driver changes; all are still dated 16-Nov-2020.
15-Nov-20 XHDD now runs up to 12 disks on 6 controllers, for big "home user" PCs or workstations. XHDDjr renamed XHDD1, XDVDjr renamed XDVD3. Previous XHDD1 dropped. See the README Section 5 for normal driver combinations. Other drivers unchanged, re-dated only.
7-Nov-20 Smaller XHDDjr and XDVDjr drivers added for most "home user" PCs with 1 or 2 disks and CD/DVD drives. Other drivers unchanged, re-dated only.
23-Oct-20 README file update only -- See Section 6 below for "HimemSX" comments!! Other minor README updates, NO change to any drivers; all are still dated 18-Oct-2020.
18-Oct-20 Smaller 12-disk XHDD1 driver added, identical in performance to the 20-disk XHDD, for "home user" PCs. Minor changes to XMGR/XDVD2. Other drivers unchanged, re-dated only.
10-Oct-20 XHDD2 dropped (no user interest). Minor XHDD size changes. Other drivers unchanged, re-dated only.
7-Jun-20 XHDD/XHDD2 corrected for 4-bit controller numbers (not 3-bit as before)! PCs with <= 8 SATA/IDE controllers were not affected. Other drivers unchanged, re-dated only.
30-Jun-20 XHDD2/XDVD2 code corrected for over 10 SATA/IDE controllers. Other drivers unchanged, re-dated only.
23-Jun-20 XHDD back to 20 disks/diskettes and 9 controllers for "user" systems. New XHDD2 now runs up to 32 disks/diskettes on up to 15 SATA/IDE controllers, for PC/104 and other large industrial DOS systems. XMGR's "I-O Catcher" handles up t0 32 disks. Other drivers unchanged, re-dated only.
18-Jun-20 XMGR/XHDD again handle up to 24 disks/diskettes on up to 10 SATA/IDE controllers, and XDVD2 again handles up to 4 CD/DVD drives, for industrial DOS systems. RDISK unchanged (re-dated only).
26-May-20 XMGR and XHDD now do XMS moves in 8K blocks with 486+ CPUs, 4K blocks on slow 386 CPUs. XHDD size reduced by better XMS logic. Other drivers unchanged (re-dated only).
10-May-20 XHDD 2.5-MB cache size and support for 80386 CPUs re-added. See the README Section 6 for info on the 2.5/5-MB caches. Other drivers unchanged, re-dated only.
24-Apr-20 Minor XMGR and XHDD code changes. Minor update re: "cheap BIOS" mainboard use; see the README file Section 6. No change to the other drivers (re-dated only).
22-Nov-19 XHDD search buffer and /P switch deleted; of no value, with /O "overlap". XHDD now uses 720 "base" + 2080 HMA bytes for all caches! Other drivers unchanged, re-dated only.
26-Oct-19 XHDD resident search table deleted; /P now sets a fixed 512 byte search buffer. HUGE memory saving for a very minor speed drop! Other drivers unchanged, re-dated only.
25-Sep-19 XHDD 2.5-MB cache is deleted. Other drivers not changed, re-dated only.
15-Sep-19 Smaller README file, back to 3 CONFIG.SYS examples. XHDD2 driver deleted. Other drivers unchanged, re-dated only.
31-Aug-19 README file updated to fully explain loading the drivers on newer "cheap BIOS" mainboards. NO driver changes -- All are still dated 21-Apr-2019.
21-Apr-19 XHDD2 driver added, for PCs needing a smaller XHDD variant. Minor XMGR message-display problem fixed. Other drivers unchanged, re-dated only.
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 Changelog of UIDE