Hubbry Logo
DR-DOSDR-DOSMain
Open search
DR-DOS
Community hub
DR-DOS
logo
8 pages, 0 posts
0 subscribers
Be the first to start a discussion here.
Be the first to start a discussion here.
DR-DOS
DR-DOS
from Wikipedia

DR-DOS
DeviceLogics DR-DOS 8.0
Developer
OS familyDOS
Working stateDiscontinued
Source modelMixed; primarily closed-source, some versions open-source
Initial releaseMay 28, 1988; 37 years ago (1988-05-28)
Final release7.01.08 / July 21, 2011; 14 years ago (2011-07-21)
Available inEnglish, older versions also in German, French, Italian, Spanish, Japanese
Supported platformsx86
Kernel typeMonolithic kernel
Default
user interface
Command-line interface (COMMAND.COM)
LicenseProprietary
Official websitedrdos.com (dead since 2018)

DR-DOS[nb 1] is a disk operating system for IBM PC compatibles, originally developed by Gary A. Kildall's Digital Research, Inc. and derived from Concurrent PC DOS 6.0, which was an advanced successor of CP/M-86. Upon its introduction in 1988, it was the first DOS that attempted to be compatible with IBM PC DOS and MS-DOS.

Its first release was version 3.31, named so that it would match MS-DOS's then-current version.[2] DR DOS 5.0 was released in 1990 as the first to be sold in retail; it was critically acclaimed[3] and led to DR DOS becoming the main rival to Microsoft's MS-DOS,[4] who quickly responded with its own MS-DOS 5.0 but releasing over a year later.[5] It introduced a graphical user interface layer called ViewMAX. DR DOS 6.0 was released in 1991; then with Novell's acquisition of Digital Research, the following version was named Novell DOS 7.0 in 1994. After another sale, to Caldera, updated versions were released partly open-source under the Caldera moniker, and briefly as OpenDOS. The last version for desktops, Caldera DR-DOS 7.03, was released in 1999,[6] after which the software was sold to Embedded Systems by Caldera and then by DeviceLogics.

History

[edit]

Origins in CP/M

[edit]

Digital Research's original CP/M for the 8-bit Intel 8080- and Z80-based systems spawned numerous spin-off versions, most notably CP/M-86 for the Intel 8086/8088 family of processors. Although CP/M had dominated the market since the mid-1970s, and was shipped with the vast majority of non-proprietary-architecture personal computers, the IBM PC in 1981 brought the beginning of what was eventually to be a massive change.

IBM originally approached Digital Research in 1980, seeking an x86 version of CP/M. However, there were disagreements over the contract, and IBM withdrew. Instead, a deal was struck with Microsoft, who purchased another operating system, 86-DOS, from Seattle Computer Products (SCP). This became Microsoft MS-DOS and IBM PC DOS. 86-DOS's command structure and application programming interface imitated that of CP/M 2.2 (with BDOS 2.2). Digital Research threatened legal action, claiming PC DOS/MS-DOS to be too similar to CP/M. In early 1982, IBM settled by agreeing to sell Digital Research's x86 version of CP/M, CP/M-86, alongside PC DOS. However, PC DOS sold for US$40 while CP/M-86 had a $240 price tag. The proportion of PC buyers prepared to spend six times as much to buy CP/M-86 was very small, and the limited availability of compatible application software, at first in Digital Research's favor, was only temporary.[7]

Digital Research fought a long losing battle to promote CP/M-86 and its multi-tasking multi-user successors MP/M-86 and Concurrent CP/M-86, and eventually decided that they could not beat the Microsoft-IBM lead in application software availability, so they modified Concurrent CP/M-86 to allow it to run the same applications as MS-DOS and PC DOS.

This was shown publicly in December 1983[8] and shipped in March 1984 as Concurrent DOS 3.1 (a.k.a. CDOS with BDOS 3.1) to hardware vendors.[9] While Concurrent DOS continued to evolve in various flavors over the years to eventually become Multiuser DOS and REAL/32, it was not specifically tailored for the desktop market and too expensive for single-user applications. Therefore, over time two attempts were made to sideline the product:

In 1985, Digital Research developed DOS Plus 1.0 to 2.1, a stripped-down and modified single-user derivative of Concurrent DOS 4.1 and 5.0, which ran applications for both platforms, and allowed switching between several tasks[10][11] as did the original CP/M-86. Its DOS compatibility was limited, and Digital Research made another attempt, this time a native DOS system.[11] This new disk operating system was launched in 1988 as DR DOS.

Although DRI was based in Pacific Grove and later in Monterey, California, USA, the work on DOS Plus started in Newbury, Berkshire in the UK, where Digital Research Europe had its OEM Support Group located since 1983.[nb 2] Beginning in 1986, most of the operating system work on Concurrent DOS 386 and XM, Multiuser DOS, DR DOS and PalmDOS was done in Digital Research's European Development Centre (EDC) in Hungerford, Berkshire.[nb 2] Later on some work was also done by Digital Research GmbH in Munich, Germany.

First DR DOS version

[edit]

As requested by several OEMs, Digital Research started a plan to develop a new DOS operating system addressing the defects left by MS-DOS in 1987.[12] Of particular importance was a million dollar deal with Kazuhiko "Kay" Nishi of ASCII Corporation, who had previously been instrumental in opening the Japanese OEM market for Microsoft.[11] The first DR DOS version was released on May 28, 1988.[12] Version numbers were chosen to reflect features relative to MS-DOS; the first version promoted to the public was DR DOS 3.31,[12] which offered features comparable to Compaq MS-DOS 3.31 with large disk support (FAT16B a.k.a. "BIGDOS"). DR DOS 3.31 reported itself as "IBM PC DOS 3.31", while the internal BDOS (Basic Disk Operating System) kernel version was reported as 6.0, single-user nature, reflecting its origin as derivative of Concurrent DOS 6.0 with the multitasking and multiuser capabilities as well as CP/M API support stripped out and the XIOS replaced by an IBM-compatible DOS-BIOS. The system files were named DRBIOS.SYS (for the DOS-BIOS) and DRBDOS.SYS (for the BDOS kernel), the disk OEM label used was "DIGITAL␠".

DR DOS offered some extended command line tools with command line help, verbose error messages, sophisticated command line history and editing (HISTORY directive) as well as support for file and directory passwords built right into the kernel.[13] It was also cheaper to license than MS-DOS, and was ROMable right from the start. The ROMed version of DR DOS was also named ROS (ROM Operating System).[14] DRI was approached by a number of PC manufacturers who were interested in a third-party DOS, which prompted several updates to the system.

At this time, MS-DOS was only available to OEMs bundled with hardware. Consequently, DR DOS achieved some immediate success when it became possible for consumers to buy it through normal retail channels beginning with version 3.4x.

Known versions are DR DOS 3.31 (BDOS 6.0, June 1988, OEM only), 3.32 (BDOS 6.0, August 17, 1988, OEM only), 3.33 (BDOS 6.0, September 1, 1988, OEM only), 3.34 (BDOS 6.0, OEM only), 3.35 (BDOS 6.0, October 21, 1988, OEM only), 3.40 (BDOS 6.0, January 25, 1989), 3.41 (BDOS 6.3, June 1989, OEM and retail). Like MS-DOS, most of them were produced in several variants for different hardware. While most OEMs kept the DR DOS name designation, 2001 Sales, Inc. marketed it under the name EZ-DOS 3.41 (also known as EZ-DOS 4.1).[15][16]

DR DOS 5.0

[edit]

DR DOS version 5.0 (code-named "Leopard") was released in May 1990,[12] still reporting itself as "PC DOS 3.31" for compatibility purposes, but internally indicating a single-user BDOS 6.4 kernel. (Version 4 was skipped to avoid being associated with the relatively unpopular MS-DOS 4.0.) This introduced ViewMAX, a GEM-based GUI file management shell.[17][18] ViewMAX's startup screen would present the slogan "Digital Research - We make computers work".[19][20][21] DR DOS 5.0 also introduced the patented BatteryMAX power management system, bundled disk-caching software (DRCACHE), a remote file transfer tool (FILELINK), a cursor shape configuration utility (CURSOR), and offered a vastly improved memory management system (MemoryMAX).[17][18] For compatibility purposes, the DR DOS 5.0 system files were now named IBMBIO.COM (for the DOS-BIOS) and IBMDOS.COM (for the BDOS kernel) and due to the advanced loader in the boot sector could be physically stored anywhere on disk.[18] The OEM label in the boot sectors was changed to "IBM␠␠3.3".

Front and rear views of the Carry-I book-sized diskless workstation, bundled with DR DOS 5.0, based on an Intel 80286 processor and produced by Taiwan's Flytech Technology c. 1991

DR DOS 5.0 was the first DOS to include load-high capabilities. The kernel and data structures such as disk buffers could be relocated in the High Memory Area (HMA), the first 64 KB of extended memory which are accessible in real mode. This freed up the equivalent amount of critical "base" or conventional memory, the first 640 KB of the PC's RAM – the area in which all DOS applications run.[18]

Additionally, on Intel 80386 machines, DR DOS's EMS memory manager allowed the operating system to load DOS device drivers into upper memory blocks, further freeing base memory.

DR DOS 5.0 was the first DOS to integrate such functionality into the base OS (loading device drivers into upper memory blocks was already possible using third-party software like QEMM). This allowed it, on 286 systems with supported chipsets and on 386 systems, to provide significantly more free conventional memory than any other DOS. Once drivers for a mouse, multimedia hardware and a network stack were loaded, an MS-DOS/PC DOS machine typically might only have had 300 to 400 KB of free conventional memory – too little to run much late-1980s software. In contrast to this, DR DOS 5.0, with a little manual tweaking, could load all this and still keep all of its conventional memory free – allowing for some necessary DOS data structures, as much as 620 KB out of the 640 KB. With MEMMAX +V, the conventional memory region could even be extended into unused portions of the graphics adapter card typically providing another 64 to 96 KB more free DOS memory.

Because DR DOS left so much conventional memory available, some old programs using certain address wrapping techniques failed to run properly as they were now loaded unexpectedly (or, under MS-DOS, "impossibly") low in memory – inside the first 64 KB segment (known as "low memory"). Therefore, DR DOS 5.0's new MEMMAX -L command worked around this by pre-allocating a chunk of memory at the start of the memory map in order for programs to load above this barrier (but with less usable conventional memory then). By default, MEMMAX was configured for +L, so that applications could take advantage of the extra memory.

DR DOS 6.0 / Competition from Microsoft

[edit]
Digital Research DR DOS 6.0 startup disk
Novell DR DOS 6.0 manual

Faced with substantial competition in the DOS arena, Microsoft responded with an announcement of a yet-to-be released MS-DOS 5.0 in May 1990.[12] This would be released in June 1991[12] and include similar advanced features to those of DR DOS.[22] It included matches of the DR's enhancements in memory management.[22]

Almost immediately in September 1991, Digital Research responded with DR DOS 6.0,[12] code-named "Buxton". DR DOS 6.0, while already at BDOS level 6.7 internally, would still report itself as "IBM PC DOS 3.31" to normal DOS applications for compatibility purposes. This bundled in SuperStor on-the-fly disk compression, to maximize available hard disk space, and file deletion tracking and undelete functionality by Roger A. Gross.

DR DOS 6.0 also included a task-switcher named TASKMAX[23] with support for the industry-standard task-switching API[24] to run multiple applications at the same time. In contrast to Digital Research's Multiuser DOS (successor of Concurrent DOS in the multi-user products line), which would run DOS applications in pre-emptively multitasked virtual DOS machines, the DR DOS 6.0 task switcher would freeze background applications until brought back into the foreground. While it ran on x86-machines, it was able to swap to XMS memory on 286+ machines.[23] TASKMAX did support some Copy & Paste facility between applications.[23] Via the task-switcher API, graphical user interfaces such as ViewMAX[23] or PC/GEOS could register as the task manager menu and thereby replace the TASKMAX text mode menu, so that users could switch between tasks from within a GUI.

Microsoft responded with MS-DOS 6.0, which again matched some features of DR DOS 6.0.

In December 1991, a pre-release version of Windows 3.1 was found to return a non-fatal error message if it detected a non-Microsoft DOS.[12] This check came to be known as the AARD code.[25][26] It was a simple matter for Digital Research to patch DR DOS 6.0 to circumvent the AARD code 'authenticity check' in the Windows 3.1 beta by rearranging the order of two internal tables in memory (with no changes in functionality), and the patched version, named "business update", was on the streets within six weeks of the release of Windows 3.1.[27][28][29][30] With the detection code disabled, Windows ran perfectly under DR DOS and its successor Novell DOS. The code was present but disabled in the released version of Windows 3.1.[31]

In July 1992, Digital Research Japan released DR DOS 6.0/V, a Japanese DOS/V compatible version of DR DOS 6.0.[32][33] A Korean version appears to have been available as well.

PalmDOS

[edit]

In 1992 Digital Research, still under its old name but already bought by Novell in July 1991,[34][35] also embarked on a spin-off product code-named "Merlin" and later released as NetWare PalmDOS 1, which, as its name implies, was a very resource-light DR DOS 6.0 derivative aimed at the emerging Palmtop/PDA market.[36]

PalmDOS was the first operating system in the family to support the new BDOS 7.0 kernel with native DOS compatible internal data structures instead of emulations thereof. Replacing the DOS emulation on top of a CP/M kernel by a true DOS compatible kernel helped a lot in improving compatibility with some applications using some of DOS' internal data structures and also was the key in reducing the resident size of the kernel code even further—a particular requirement for the PDA market. On the other hand, introducing a genuine Current Directory Structure (CDS) imposed a limit on the depth of working directories down to 66 characters (as in MS-DOS/PC DOS), whereas previous issues of DR DOS had no such limitation due to their internal organization of directories as relative links to parent directories instead of as absolute paths.[37][38][39] PalmDOS still reported itself as "PC DOS 3.31" to applications in order to keep the kernel small and not run into compatibility problems with Windows, which would expect the DOSMGR API to be implemented for any DOS version since 5.0.

As well as a ROM-executing kernel, PalmDOS had palmtop-type support for features such as PCMCIA PC Cards (with DPMS support), power management (BatteryMAX and the $IDLE$ device driver with its patented dynamic idle detection[40] by Gross and John P. Constant), MINIMAX task switcher support for PIM (Personal Information Modules) applications stored and executed from ROM via XIP (Execute-In-Place), etc.

The PCMCIA stack for PalmDOS was partially written by Ian H. S. Cullimore, the original instigator of the PCMCIA/PC Card movement.

Novell DOS 7 / Contribution by Novell

[edit]
A screenshot of Novell DOS 7
A typical command line in Novell DOS 7

Novell DOS was Novell Corporation's name for DR DOS during the period when Novell sold DR DOS, after the acquisition of Digital Research in 1991.[41][42][35][34][43] Regarding features and performance, it was typically at least one release ahead of MS-DOS.[44] In 1993, PC DOS 6.1, MS-DOS 6.2 and PC DOS 6.3 were trumped by Novell's DOS 7.[45]

Novell CEO Robert J. Frankenberg's strategy included "major trimming", selling off products like transactional database Btrieve and killing others such as Novell DOS and WordPerfect's multimedia Main Street children's titles.[46] Novell licensed technology from Stac Electronics for use in Novell DOS and its network operating system NetWare.[47][48] Novell sold the product line off to Caldera on July 23, 1996, after it approached Novell looking for a DOS operating system to bundle with its OpenLinux distribution.[12]

Marc Perkel claimed to have had inspired Novell in February 1991 to buy Digital Research and develop something he envisioned as "NovOS".[49] Novell had actually bought Digital Research in July 1991 with a view to using DR's product line as a lever in their comprehensive strategy to break the Microsoft monopoly. (This was part of a massive and ultimately disastrous spending spree for Novell: they bought WordPerfect Corporation at about the same time, some of Borland's products, and invested heavily in Unix as well.) The planned "DR DOS 7.0", internally named "Panther", intended to trump Microsoft's troubled MS-DOS 6.0, was repeatedly delayed, while Novell was working on an optionally loadable Unix-like multi-user security extension (with, if loaded, file commands like BACKUP, DELPURGE, MOVE, TOUCH, TREE, UNDELETE, XATTRIB, XCOPY, XDEL and XDIR supporting an otherwise disabled /U:name command line option to select specific users or groups,[38] compatible with Multiuser DOS) and two new graphical user interfaces (ViewMAX 3, a derivative of GEM, and "Star Trek", a true port of Apple's System 7.1 to run under the new DR DOS multitasker named "Vladivar").

When DR DOS eventually arrived in December 1993 (with localized versions released in March 1994), renamed Novell DOS 7 (a.k.a. "NWDOS"), and without these three components, it was a disappointment to some. It was larger and lacked some finishing touches,[50] but was nevertheless seen as best DOS by many industry experts.[51]

In Germany, Novell DOS 7 was aggressively marketed with the slogan "Trau keinem DOS unter 7" (Don't trust any DOS below 7) in the press and with free demo floppies in computer magazines.[52][53][51] The campaign aimed at 20% of the DOS market and resulted in about 1.5 million copies sold until February 1994 and more than 3000 dealers interested to carry the product.[52][53] Novell DOS 7 was available through various OEMs, a dedicated mail order shop and authorized dealers.[52]

A major functional addition was Novell's second attempt at a peer-to-peer networking system, Personal NetWare (PNW).[nb 3] This was better than its predecessor, NetWare Lite (NWL), but it was incompatible with Microsoft's networking system, now growing popular with support in Windows for Workgroups, OS/2, and Windows NT. A considerable amount of manual configuration was needed to get both to co-exist on the same PC, and Personal NetWare never achieved much success.

Since Novell DOS 7 implemented the DOSMGR API and internal data structures had been updated, its BDOS 7.2 kernel could report with a DOS version of 6.0 and OEM ID "IBM" without risking compatibility problems with Windows. Most tools would report this as "PC DOS 6.1", because IBM PC DOS 6.1 also reported as DOS 6.0 to applications.

Novell DOS 7 introduced much advanced memory management including new support for DPMI (DOS Protected Mode Interface) and DPMS (DOS Protected Mode Services) as well as more flexible loadhigh options.[51] It also introduced support for "true" pre-emptive multitasking[51] of multiple DOS applications in virtual DOS machines (VDM), a component originally named MultiMAX. This was similar to Multiuser DOS, but now on the basis of a natively DOS compatible environment, similar to Windows 386 Enhanced Mode, but without a GUI. By default, the bundled TASKMGR would behave similar to the former DR DOS 6.0 TASKMAX. However, if EMM386 was loaded with the option /MULTI, EMM386 would load a natively 32-bit 386 Protected Mode operating system core providing API support for pre-emptive multitasking, multi-threading, hardware virtualization and domain management of virtual DOS machines. This API could be used by DR DOS-aware applications. If TASKMGR was run later on, it would use this API to instance the current 16-bit DOS system environment, create virtual DOS machines and run applications in them instead of using its own Real Mode task-switcher support. The multitasker was compatible with Windows, so that tasks started before launching Windows could be seen as tasks under Windows as well.

Novell DOS 7 and Personal NetWare 1.0 also shipped with NetWars, a network-enabled 3D arcade game.

Novell DOS 7 and Personal NetWare required several bug-fix releases (D70xyy with x=language, yy=number) and were not completely stable when the next development occurred. With beta versions of Microsoft's "Chicago" (what would later become Windows 95) in sight, Novell wound down further development on Novell DOS 7 in September 1994[12] and stopped maintenance in January 1996 after more than 15 updates.

After Novell

[edit]

When Caldera approached Novell looking for a DOS operating system to bundle with their OpenLinux distribution,[54] Novell sold the product line off to Caldera on July 23, 1996,[12] by which time it was of little commercial value to them.

Between the Caldera-owned DR-DOS and competition from IBM's PC DOS 6.3, Microsoft moved to make it impossible to use or buy the subsequent Windows version, Windows 95, with any DOS product other than their own. Claimed by them to be a purely technical change, this was later to be the subject of a major lawsuit brought in Salt Lake City by Caldera with the help of the Canopy Group.[12][55] Microsoft lawyers tried repeatedly to have the case dismissed but without success. Immediately after the completion of the pre-trial deposition stage (where the parties list the evidence they intend to present), there was an out-of-court settlement on January 7, 2000, for an undisclosed sum.[56][57] This was revealed in November 2009 to be $280 million.[58][59][60][57]

In August 1996, the US-based Caldera, Inc. was approached by Roger A. Gross, one of the original DR-DOS engineers, with a proposal to restart DR-DOS development and to make Windows 95 run on DR-DOS which would help the court case. Following a meeting in September 1996 in Lindon, Utah, USA, between Gross, Ransom H. Love, Bryan Wayne Sparks and Raymond John Noorda, Gross was hired and tasked to set up a new subsidiary in the UK.[nb 2] On September 10, 1996, Caldera announced the coming release of OpenDOS (COD) and their intent to also release the source code to the system,[54] and Caldera UK Ltd. was incorporated on September 20, 1996.[61][nb 2] Gross hired some of the original developers of the operating system from the Novell EDC as well as some new talents to continue work on the operating system in a converted barn at the periphery of Andover, Hampshire, UK,[nb 2] nearby the former Digital Research and Novell EDC.[nb 2] Besides other improvements and enhancements all over the system, a string of new key features were added subsequently over the course of the next two years, including a TCP/IP stack (derived from LAN WorkPlace for DOS / NetWare Mobile), a graphical 32-bit DOS Protected Mode HTML 3.2 web-browser DR-WebSpyder (originally based on source code from the Arachne web browser by Michal Polák) with LAN and modem dialup, a POSIX Pthreads extension to the multi-tasker by Andy T. Wightman, long filename (LONGNAME) support by Edward N. Hill Jr., as well as LBA and FAT32 support (DRFAT32) by Matthias R. Paul. Gross also hired Andrew Schulman (who had been, with Geoff Chappell, instrumental in identifying the AARD code in 1992) to work as a consultant and, in Andover, assist Paul in his work on "WinGlue", a secret project to create a version of DR-DOS compatible with Windows 95, 98 and 98 SE and replace its MS-DOS 7.xx component.[62][63][64] This was demonstrated at CeBIT in March 1998,[62][63] and later, in a small team, developed into "WinBolt", both versions of DR-DOS, which remained unreleased as of 2023, but played an important role in the court case.[55][65][64][66][67][68][69]

Caldera UK officially released Caldera OpenDOS 7.01 on February 3, 1997, but this version was just Novell DOS 7 update 10 (as of December 1994) compiled only with the necessary adaptations to incorporate the new name in display messages as well as in environment variables and file names. It was missing a year's worth of patches which had been developed for the Novell DOS updates 11 (January 1995) to 15.2 (January 1996).[38] This was due to parts of the Novell DOS sources having been lost at Novell meanwhile.[70] Consequently, this version still reported an internal BDOS version of 7.2, identical to Novell DOS 7. The new suite also lacked the SETFIFO command, which had been added with one of the Novell DOS updates, as well as Fifth Generation's Search&Destroy virus scanner and FastBack Plus 2.0 utility, which previously came bundled with Novell DOS. Instead it came bundled with a newer version of PNUNPACK and brought a much advanced version of NetWars.[38]

Parts of OpenDOS 7.01 were released as open source[54] in form of the M.R.S. kit (for Machine Readable Sources) in May 1997, but with license terms mostly incompatible with existing open-source licenses.[71] The source was then closed again as Gross felt this would undermine the commercial aspirations of the system.

After beta releases in September and November 1997, the next official release came in December 1997, with the name changed to Caldera DR-OpenDOS 7.02, soon followed by a further release in March 1998, when the DR-DOS name returned as Caldera DR-DOS 7.02,[72] now for the first time written with a hyphen. Version 7.02 (now reporting itself as BDOS 7.3) incorporated improved BIOS and BDOS issues, developed by Paul,[70][73] adding many new boot and configuration options, integrating many compatibility enhancements, bug-fixes and optimizations for size and speed, and re-implementing all fixes of the missing Novell DOS updates.[70][73] The BIOS improved the coexistence of DR-DOS with Windows 9x and its support for third-party disk compression drivers such as Microsoft's DriveSpace.[70][74][75] It introduced a diagnostics mode (activated by Scroll Lock),[70][74] integrated debugger support (with DEBUG=ON and a debugger loaded before or from within CONFIG.SYS)[70] and more flexible CONFIG.SYS tracing capabilities via the F5/F6/F7/F8 hotkeys and the TRACE and TIMEOUT commands,[70][76][74] thereby also improving the integration of alternative command line shells such as 4DOS.[70][74][39] Together with LOADER, SYS /DR:ext and the CHAIN directive, it brought enhanced multi-configuration support for DR/D/CONFIG.ext files[74][77] and came with enhancements to the BASIC-like CONFIG.SYS language for more powerful boot menus, convenient user interaction[74] and programmatical acting upon conditions (CPU386), return codes and error levels (ERROR, ONERROR).[70] It also allowed to change the SCROLLOCK, CAPSLOCK, INSERT and VERIFY settings as well as the SWITCHAR, YESCHAR, NOCHAR and RESUMECHAR characters.[70][74] Various behavioural details could be controlled with new parameters /Q (Quiet), /L (Lowercase), /Y (Yes) and /S (Switch) for SWITCHES.[70] Further, it provided optional support for a LPT4: device and allowed to configure the built-in COMx: and LPTx: devices as well as to change the PRN: and AUX: defaults.[70] The handling of environment variables in CONFIG.SYS was improved and new load-high facilities included such as the HIFILES/FILESHIGH and HIFCBS/FCBSHIGH options to relocate file handles and FCB structures into UMBs, which typically gave between 1 and 4 KB (and up to 15 KB) more free conventional memory compared to previous versions, or the HISHELL/SHELLHIGH SIZE directive to control the pre-allocation of HMA memory for COMMAND.COM, which helped to avoid memory fragmentation and thereby typically gave between 5 and 8 KB more continuous HMA memory for HMA-capable third-party drivers to work with in conjunction with third-party command line shells, which could not load into the HMA as COMMAND.COM with its /MH option.[70][76] At a reduced memory footprint version 7.02 also brought an enhanced NLS 4.xx sub-system by Paul to allow multiple, distributed and possibly user-configured COUNTRY.SYS files to be used by the system at the same time in a hierarchical model.[70][78][76][79] This also gave dynamic parser support for MS-DOS/PC DOS COUNTRY.SYS file formats in addition to DR-DOS' own COUNTRY.SYS formats,[70][78][76][79][80][81][82] and it introduced support for the ISO 8601 international date format[79][76] (including automatic detection) and the then-new Euro currency.[79][76] Some DR-DOS files such as IBMBIO.COM, IBMDOS.COM and COUNTRY.SYS carried misleading file extensions for compatibility reasons; with DR-DOS 7.02 they were enhanced to incorporate a fat binary-style safety feature devised by Paul so that they would exit gracefully when called inappropriately.[70][38][82][79] DR-DOS 7.02 was fully Year 2000 compliant and provided special support to work with buggy system BIOSes. It also came with an updated FDISK, which could partition and format FAT32 volumes (but not yet work with LBA). The sources of the Novell patches for the external tools and drivers had meanwhile been found in Germany and could thus be retro-fitted into the system as well, so that DR-DOS 7.02 finally not only caught up with Novell DOS 7, but was a true step forward. The release was followed by various updates in June, August and September 1998.

The updated internal BDOS version number introduced a new problem: some legacy third-party applications with special support for Novell DOS, which were no longer being updated, stopped working. SETVER already allowed Novell DOS to disguise itself as DOS versions by file name and globally and, specifying a magic sub-version of 255, it would even disable its own internal BDOS version check in order to cope with programs specifically probing for "DR-DOS".[38] The modified kernel and SETVER driver by Paul would, in an hierarchical model, also support load paths in order to distinguish between multiple executables of the same file name, and it introduced an extended mode, in which SETVER could not only fake DOS versions, but also BDOS kernel versions.[82] Sub-versions of 128 to 255 would be reported as DOS sub-versions 0 to 127 to applications, but with the BDOS version check disabled, while sub-versions 100 to 127 could be used to fake different BDOS versions,[82] whereas the DOS revision number (typically set to 0 in a static, pre-boot patchable data structure) would be taken as the reported sub-version instead, so that SETVER /G /X 6.114 would allow versions of DR-DOS since 7.02 to still report themselves as a "DOS 6.0" and with a faked BDOS version 7.2 (114 decimal = 72 hexadecimal), thereby masquerading as Novell DOS 7 / OpenDOS 7.01.[82]

While otherwise beneficial, the new HIFILES triggered a compatibility problem in the DOS-UP feature of the third-party memory manager QEMM 8, which was hard-wired to expect a chunk of five handle structures in conventional memory under DR-DOS (as with previous versions up to 7.01), whereas version 7.02 by design left eight handles in low memory when loading high files in order to maintain full compatibility with older versions of Windows 3.xx.[76][28] Compatibility with Windows for Workgroups 3.11 had not been affected by this. A maintenance fix was devised to patch a single byte in IBMBIO.COM in order to switch the behaviour and optionally re-invoke the old chunking. This freed some 150 bytes of conventional memory and enabled full compatibility with DOS-UP, but at the same time broke compatibility with older versions of Windows 3.xx when using the HIFILES feature, and vice versa. The patch named IBMBIO85.SCR continued to work with newer versions of DR-DOS.[70][83][84][85]

In August 1998[86] the US-based Caldera, Inc. created two new subsidiaries, Caldera Systems, Inc. for the Linux business, and Caldera Thin Clients, Inc. for the embedded and thin-client market.[87]

Another version, DR-DOS 7.03 (still with BDOS 7.3 and reporting itself to applications as "PC DOS 6.0" for compatibility purposes), was pre-released at Christmas 1998 and then officially released on January 6, 1999, by Caldera UK. It came with significantly improved memory managers (in particular enhanced DPMI support in conjunction with the multitasker) and other enhancements, such as added DEVLOAD and DRMOUSE utilities, but a changed OEM label in the boot sector of volumes formatted under DR-DOS could also cause problems under other operating systems (which can be circumvented by NOVOLTRK).[88][89] DR-DOS 7.03 would become the last version of DR-DOS also tailored for desktop use.

Caldera, Inc. wanted to relocate the DR-DOS business into the US and closed the highly successful UK operation[90][91] in February 1999[92] after Gross resigned and set up iCentrix to develop the MarioNet split web browser. Development was then moved into the US (which never worked out due to a total lack of expertise in this field at Caldera US),[92] and the DR-DOS line fell to its branch company, Caldera Thin Clients, which was renamed Lineo, Inc. on July 20, 1999.[93][90] DR-WebSpyder was renamed Embrowser and was said to be ported to Linux.[93] Lineo re-released DR-DOS 7.03 in June and September 1999, still branded as "Caldera DR-DOS"[94] and without any changes, but otherwise focussed on Linux for embedded systems, based on a stripped-down version of OpenLinux named Embedix.[93][90]

Among the latest and independently developed versions of DR-DOS were OEM DR-DOS 7.04 (as of August 19, 1999)[84] and 7.05 (as of November 30, 1999), still branded as "Caldera DR-DOS".[95][96] These were variants of the system consisting only of the kernel and command shell. With a specialized native implementation of FAT32 and large hard disk support they could be found bundled with Ontrack's Easy Recovery 5 in 2000, replacing the dynamically loadable DRFAT32 redirector driver, which still came with Easy Recovery 4.[97][98] They were also used for Seagate Technology's SeaTools[99] and the CD imaging software Nero Burning ROM. While still reporting a BDOS 7.3 internally, these were the first versions to report themselves as "PC DOS 7.10" to applications in order to indicate integrated FAT32 support. Designed to be mostly backwards-compatible, the DR-DOS 7.04/7.05 IBMBIO.COM could be combined with the DR-DOS 7.03 IBMDOS.COM in order to give the desktop-approved DR-DOS 7.03 kernel LBA capabilities and work with drives larger than 8 GB. For specific OEM requirements, DR-DOS 7.06 (as of December 14, 1999)[85] by Wightman combined the kernel files into a single binary executable, so that, similar to IO.SYS of Windows 98, it could be booted by MS-DOS 7.10 boot sectors (but no longer by DR-DOS boot sectors). DR-DOS 7.07 (with BDOS 7.4/7.7) by Paul introduced new bootstrap loaders and updated disk tools in order to combine support for CHS and LBA disk access, the FAT12, FAT16 and FAT32 file systems, and the differing bootstrapping conventions of DR-DOS, PC DOS, MS-DOS, Windows, REAL/32 and LOADER into a single NEWLDR MBR and boot sector, so that the code would continue to load any version of DR-DOS down to 3.31 (and since DR-DOS 7.04 also with FAT32 support), but could also be used to launch the PC DOS or MS-DOS system files, including those of Windows 9x and PC DOS 7.10. At the same time the kernel could not only be booted by the new sectors, but also by any previously DR-DOS formatted disks, as well as off disks with existing PC DOS or MS-DOS boot sectors and a variety of other boot-loaders, thereby easing the coexistence and setup of multi-boot scenarios in conjunction with other operating systems.

Later versions

[edit]

In 2002, Lineo was bought out, and some of Lineo's former managers purchased the name and formed a new company, DRDOS, Inc. dba DeviceLogics L.L.C. They have continued to sell DR-DOS for use in embedded systems. DR-DOS 8.0 was released on March 30, 2004, featuring FAT32 and large disk support, the ability to boot from ROM or Flash, multitasking and a DPMI memory manager. This version was based on the kernel from version 7.03.[100]

The company later released DR-DOS 8.1 (with better FAT32 support) in autumn 2005. This version was instead based on OpenDOS 7.01.xx. DR-DOS 8.1 was withdrawn for GPL violations (see Controversies).

Aside from selling copies of the operating system, the DRDOS, Inc. website lists a buyout option for DR-DOS; the asking price is US$25000.[101]

The OpenDOS 7.01 source code was a base for The DR-DOS/OpenDOS Enhancement Project, set up in July 2002 in an attempt to bring the functionality of DR-DOS up to parity with modern PC non-Windows operating systems. The project's added native support for large disks (LBA) and the FAT32 file system, and several other enhancements, including improved memory management and support for the new FAT32+ file system extension which allows files of up to 256 GB in size on normal FAT partitions. DR-DOS 7.01.08 WIP (work in progress) was released on July 21, 2011.[102]

From 2023 on the last Enhanced DR-DOS release 7.01.08 WIP was ported to an open source build tool chain, which makes the kernel and command interpreter cross-buildable from operating systems other than DOS.[103] The kernel can be built as a single binary KERNEL.SYS to make it compatible with boot loaders supporting the FreeDOS kernel. It received several bug fixes and updates and as of October 2024 is under active maintenance.

Controversies

[edit]

In October 2005, it was discovered that DR-DOS 8.1 included several utilities from FreeDOS as well as other sources, and that the kernel was an outdated version of the Enhanced DR-DOS kernel. DR DOS, Inc. failed to comply with the GNU General Public License (GPL) by not crediting the FreeDOS utilities to their authors and including the source code.[100] After complaints from FreeDOS developers (including the suggestion to provide the source code, and hence comply with the GPL), DR DOS, Inc. instead withdrew version 8.1, and also the unaffected 8.0, from its website.

Commands

[edit]

APPEND, ASSIGN, BATCH, DBG, DELQ, ERA, ERAQ, MORE and SUBST have been among the internal commands supported since DR DOS 3.31. DR DOS 5.0 removed BATCH and added HILOAD.[104][39] GOSUB, IDLE, RETURN and SWITCH were added as internal commands with DR DOS 6.0.[39] ASSIGN and SUBST were changed to become external commands with DR DOS 6.0.[39] ECHOERR and PAUSEERR existed as internal commands in DR DOS 6.0 (and in Multiuser DOS), but were not normally enabled.[104] MORE remained an internal command up to including PalmDOS, but was changed to an external command with Novell DOS 7. DBG was removed with Novell DOS 7, LOADHIGH, LH and TRUENAME were added as internal commands. APPEND[citation needed] was still an internal command in DR DOS 6.0, but was changed to an external command with Novell DOS 7.

Internal commands

[edit]

The following list of internal commands is supported by DR DOS 6.0:[105][104]

Batch processing subcommands

[edit]

Batch processing subcommands of DR DOS 6.0 include:[105][104]

External commands

[edit]

DR DOS 6.0 supports the following external commands:[105]

See also

[edit]

Notes

[edit]

References

[edit]

Further reading

[edit]
[edit]
Revisions and contributorsEdit on WikipediaRead on Wikipedia
from Grokipedia
DR-DOS is a DOS-compatible originally developed by , Inc. (DRI) as a direct competitor to Microsoft's , incorporating advanced features such as multitasking, improved memory management, and on-the-fly disk compression derived from its roots in Concurrent PC DOS and CP/M-86.

Introduced in OEM form as version 3.31 in May 1988 under a deal with Kazuhiko Nishi's , DR-DOS gained retail traction with version 5.0 in May 1990, which included innovations like ViewMAX graphical shell, disk caching via CacheMAX, and BatteryMAX for laptops, helping DRI achieve $40 million in revenue by year's end and positioning it as a viable alternative with superior resource efficiency. Version 6.0, released in September 1991 shortly before DRI's acquisition by , added TASKMAXR for task switching and SuperStor compression, features that predated similar capabilities in 6.0 and contributed to over a million copies sold under Novell's rebranding as Novell DOS 7 by 1993.
Subsequent ownership changes—from Novell to in 1996, then Lineo and DRDOS Inc.—led to enhancements like FAT32 support in versions 7.04 and beyond, alongside open-source releases such as 's OpenDOS 7.01, sustaining DR-DOS in embedded systems and legacy environments despite the shift to graphical operating systems. However, its market challenges intensified due to compatibility issues with certain software and Microsoft's tactics, including the AARD code embedded in the beta's and WIN.COM files, which detected DR-DOS via encrypted checks on behaviors and triggered non-fatal errors to discourage its use, exemplifying efforts to protect dominance. These competitive pressures, rooted in broader disputes over DOS interfaces and copyrights, culminated in antitrust litigation by against , highlighting DR-DOS's role in exposing monopolistic practices amid its technical merits.

Origins and Development

Roots in CP/M and Transition to PC Compatibility

, Inc. (DRI), founded in 1976 by and his wife Dorothy to commercialize the operating system, traced its roots to Kildall's development of as a standardized platform for and -based microcomputers. version 1.3 was first sold in 1975 for $70 per copy, evolving through releases like version 2.2 in 1979, which established it as the dominant OS for 8-bit systems in the late 1970s and early 1980s, powering applications across diverse hardware via its modular architecture separating , BDOS kernel, and CCP. As microprocessor technology advanced to 16-bit and 8088 processors, DRI ported to create in the early , adapting the OS's core structure—including the BDOS equivalent—for the new while maintaining with 8-bit software through emulation layers. This positioned DRI for the emerging PC market, but negotiations with in 1980 faltered—Kildall reportedly prioritized a prior commitment, leading to license from Computer Products via , rebranded as PC-DOS and later , which dominated the 1981-launched PC ecosystem with over 3 million units sold by 1987. To regain market share in the rapidly growing segment, DRI shifted from standalone toward hybrid systems blending its heritage with compatibility. Concurrent DOS, introduced in the mid-1980s as a multi-tasking successor to , incorporated real-mode multitasking and served as the foundational kernel for later single-user variants, enabling DRI to support both CP/M applications and PC-standard file systems. In 1985, DRI released DOS Plus (versions 1.0 to 2.1), a stripped-down derivative of Concurrent DOS 5.0 that ran software atop 2.11 compatibility, using a DRBIOS.SYS driver for PC hardware integration and file system support while retaining CP/M-like command structures. This evolution culminated in DR-DOS 3.31, released on May 28, 1988, as DRI's first fully /PC-DOS compatible OS for retail and OEM markets, directly derived from the Concurrent DOS 6.0 kernel with enhancements like improved and utilities, yet preserving architectural elements from such as modular kernel design for easier extensibility. The transition reflected DRI's strategic pivot: while 's influence lingered in DR-DOS's internals, compatibility with the de facto PC standard—driven by Microsoft's ecosystem lock-in—necessitated adopting DOS APIs, interrupt handlers, and calls, allowing DR-DOS to run software natively while introducing superior features absent in contemporaries.

Initial Versions and Architectural Foundations

DR-DOS emerged from Digital Research's efforts to create a MS-DOS-compatible operating system, initially released as version 3.31 on , 1988, targeted at original equipment manufacturers (OEMs). This version was built upon the kernel of Concurrent DOS 6.0, a multi-user, multi-tasking system derived from , but stripped of those advanced capabilities to focus on single-user functionality while maintaining backward compatibility with applications. Architecturally, it replaced the CP/M-style with DRBIOS.SYS and the BDOS with DRBDOS.SYS, enabling it to report itself to software as PC-DOS 3.31 for seamless , while introducing support for the FAT16B filesystem and disk partitions exceeding 32 MB—limitations in contemporary implementations. Early architectural foundations emphasized efficiency and extensibility over , incorporating features such as command-line history, extended help systems, verbose reporting, and optimized allocation to reduce conventional RAM usage. These were enabled by the underlying Concurrent DOS heritage, which provided a modular structure allowing for large hard disk support (up to 512 MiB in later 3.x iterations) and ROMability for embedded applications. Unlike or PC-DOS, which were not sold retail by or , DR-DOS 3.31 was positioned for OEM licensing at lower costs, addressing perceived defects like rigid filesystem constraints and poor command usability. Subsequent minor releases refined this base: version 3.40 arrived on January 25, 1989, still OEM-exclusive, followed by 3.41 in June 1989, which expanded to retail markets and added utilities including XDIR for enhanced directory listings, XDEL for with wildcards, file and directory password protection integrated into the kernel, and an early memory manager. The 3.4x series further introduced directives like INSTALL= for loading drivers and ?= for querying parameters, alongside a full-screen editor and context-sensitive help via /? switches, laying groundwork for more sophisticated system configuration without external TSR programs common in . These enhancements stemmed from Digital Research's legacy, prioritizing modular, user-extensible design over the more monolithic approach, though full retail success awaited version 5.0.

Major Releases and Innovations

DR-DOS 5.0: Breakthrough Features and Market Entry

DR-DOS 5.0, codenamed "Leopard," was released by in May 1990 as the company's first retail version available directly to end users, marking a shift from prior OEM-focused distributions. This release positioned DR-DOS as a direct competitor to Microsoft's 4.01, offering enhanced compatibility with PC standards while introducing features that anticipated advancements in Microsoft's forthcoming 5.0, which did not arrive until June 1991. Key breakthrough features included improved with integrated support for Expanded Memory Specification (EMS) on 80386 processors, allowing better utilization of upper memory blocks without third-party drivers. The system incorporated built-in disk caching to accelerate file access and load-high utilities that relocated device drivers and TSR programs into upper memory, freeing conventional RAM for applications—capabilities that lacked at the time and prompted to incorporate similar tools in its next major update. Additionally, DR-DOS 5.0 introduced ViewMAX, a graphical inspired by GEOS and early Windows interfaces, providing point-and-click navigation and icon-based operations for users transitioning from command-line environments. It supported disk volumes up to 512 megabytes, addressing growing hard drive capacities beyond limitations, and included BatteryMAX, a patented tool for laptops to extend battery life by throttling CPU speed during idle periods. In terms of market entry, DR-DOS 5.0 achieved critical acclaim for its performance edge, with reviewers noting its superior handling of multitasking via inherited TaskMAX from prior Concurrent DOS roots, enabling limited concurrent execution of DOS programs. Priced competitively at around $195 for the full version, it gained traction among OEMs and retail buyers seeking alternatives to Microsoft's dominance, briefly capturing as the first DOS with these integrated utilities. However, its momentum faced headwinds from Microsoft's aggressive bundling practices with Windows and applications, which limited widespread adoption despite technical merits; by late 1990, reports indicated Microsoft was accelerating 5.0 development to counter DR-DOS's leads in caching and memory optimization.

DR-DOS 6.0: Advanced Capabilities Amid Rising Competition

DR-DOS 6.0, released by in September 1991, introduced significant enhancements in memory management, disk utilities, and file handling, building on prior versions to improve system performance and user productivity on PC-compatible systems. The operating system supported loading core components into high memory areas on 80286 and later processors with at least 1 MB RAM, freeing conventional memory for applications, and extended this capability to device drivers, DOS data structures, and terminate-and-stay-resident (TSR) programs on 80386 systems. directives were expanded with the SWITCH command for selecting multiple boot configurations and TIMEOUT for automated default selection after a specified delay. Key innovations included SuperStor for on-the-fly disk compression, which reduced file sizes transparently to applications and nearly doubled effective hard disk capacity without hardware upgrades, alongside Super PC-Kwik for intelligent disk caching to accelerate data access. TaskMAX provided and task switching via an industry-standard , enabling multiple DOS sessions to run concurrently on processors supporting , such as the 80286 and above. File management tools advanced with DELWATCH and UNDELETE for recovering deleted files (supporting up to 200 hidden entries), DISKMAP for visualizing disk usage, XDIR for customizable directory listings (e.g., sorted by date or extension), XDEL for recursive deletions across subdirectories, MOVE for relocating files or directories, TOUCH for date-stamping, FILELINK for serial-port file transfers, and for securing directories. Additional utilities like DISKOPT for and sorting, MEMMAX for optimized expanded memory use, and a full-screen further distinguished its utility suite. These capabilities emerged amid intensifying rivalry with Microsoft's , particularly following the June 1991 release of 5.0, which added basic undelete and improved but lacked built-in compression or native multitasking. DR-DOS 6.0's features positioned it as technically superior for power users and OEMs seeking efficiency gains, yet Microsoft's dominance in preinstalled OEM licensing limited broader adoption despite DR-DOS's retail acclaim. Microsoft later incorporated disk compression via DoubleSpace in 6.0 (March 1993), a development observers attributed to competitive pressure from DR-DOS innovations like SuperStor. Compatibility with was maintained, though early issues required patches, underscoring DR-DOS's adaptability in a market shifting toward graphical environments.

Novell DOS 7: Integration and Enhancements Post-Acquisition

acquired in July 1991 for approximately $80 million, thereby obtaining the DR-DOS codebase previously developed by the company. This acquisition enabled to integrate DR-DOS with its networking technologies, culminating in the release of DOS 7 in January 1994 as an enhanced successor to DR-DOS 6.0. The version emphasized compatibility with Novell's ecosystem, incorporating peer-to-peer networking via Personal NetWare and improved client-server connectivity for 2.x through 4.x servers. Key enhancements included the introduction of (TASKMGR), which provided multitasking capabilities on 386 or higher processors requiring at least 2 MB RAM, or task switching on 80286 systems with 3 MB RAM, leveraging DOS Protected Mode Services (DPMS) for protected-mode applications. was advanced through updated support for DPMI hosting and multitasking via the /MULTI option, alongside utilities like for and commands such as LOADHIGH and DEVICEHIGH to optimize upper memory block (UMB) usage. Disk operations saw integration of compression compatible with formats like DoubleSpace, defragmentation via DISKOPT, and performance caching for network drives with NWCACHE. Networking features were deepened with one-time login using encrypted passwords, support for NetWare Directory Services (NDS) context management, and utilities like NET for administration, including commands for mapping drives, capturing printers, and diagnostics via NET DIAGS. Personal NetWare enabled up to 50 users per workgroup for resource sharing, requiring 640 KB base RAM for DOS mode or 2 MB with Windows. Security additions encompassed anti-virus scanning with SDSCAN, password protection for files and directories, and audit logging, while utilities like EDIT for text editing, DOSKEY for macros, and DELWATCH for file recovery addressed productivity and data integrity. These updates positioned Novell DOS 7 as a robust platform for networked environments, though it retained a 16-bit architecture without full protected-mode operation. Despite promises of broader features, some deliverables were limited, reflecting Novell's strategic pivot toward its NetWare dominance.

Later Iterations: Caldera, DeviceLogics, and Beyond

In July 1996, acquired the DR-DOS product line from , including its intellectual property and source code, as part of a broader purchase of assets. Following the acquisition, rebranded and released OpenDOS 7.01 on February 3, 1997, which corresponded to DOS 7 with Update 10 applied, and made portions of it available under an to promote compatibility and developer interest. subsequently issued DR-DOS 7.02 as a beta and finalized DR-DOS 7.03 in 1999, the last major desktop-oriented version, incorporating enhancements for multitasking and support while targeting both and embedded markets. By 1999, sold DR-DOS to DeviceLogics, a company focused on embedded systems software, shifting development toward specialized applications rather than general desktop use. DeviceLogics released DR-DOS 8.0 in March 2004, optimized for embedded environments with improved stability and reduced for devices like industrial controllers. The product line later transitioned under DRDOS, Inc., formerly DeviceLogics, which issued DR-DOS 8.1 in 2005, adding enhanced FAT32 support and further refinements for real-time operations. Subsequent iterations emphasized proprietary embedded variants, with no significant desktop releases after 1999, as market demand shifted to Windows and derivatives. DRDOS, Inc. continued offering bootable and embedded editions based on 7.03 and later cores until the company ceased active trading, leaving the codebase in limited commercial use for legacy systems. Open-source elements from Caldera's OpenDOS influenced independent projects, but the core proprietary DR-DOS lineage ended without further major innovations.

Technical Specifications

Core Kernel and System Architecture

DR-DOS utilizes a layered system architecture comprising a (Basic Input/Output System) component for low-level and device I/O, overlaid by a BDOS (Basic ) kernel responsible for core operating system services such as file management, memory allocation, process loading, and interrupt handling. This design traces its roots to Digital Research's Concurrent DOS kernel, adapted for single-user PC compatibility, with the layer emulating CP/M-style interfaces while supporting conventions. In DR-DOS 3.31 (released 1988), the core files were DRBIOS.SYS for the and DRBDOS.SYS for the kernel; subsequent versions like DR-DOS 5.0 (1990) renamed them to IBMIO.COM and IBMDOS.COM, respectively, to enhance compatibility with applications and bootloaders by mimicking file structures. The BDOS kernel operates as a monolithic entity in single-tasking mode, processing system calls via interrupt 21h for functions including directory enumeration, file creation/deletion, and console I/O redirection, while maintaining a process descriptor table for the active program. Internal kernel versioning, queryable via specialized utilities, advanced from BDOS 6.0 in DR-DOS 3.31 to 6.4 in DR-DOS 5.0 and 6.7 in DR-DOS 6.0, reflecting incremental optimizations in sectors like disk buffering and error recovery. Unlike , DR-DOS integrates native support for management primitives, enabling features such as high-loadable drivers and TSRs (Terminate-Stay-Resident programs) without third-party extenders in early releases. Architectural enhancements include hooks for power management and idle detection, implemented via an Idle State Data Area—a shared data structure facilitating communication between the kernel and optional IDLEIDLE device drivers (e.g., IDLE86.SYS)—which intercept timer (INT 8h), keyboard (INT 16h), and DOS busy (INT 28h) interrupts to execute HLT instructions during low-activity periods, thereby reducing CPU power consumption on compatible hardware. This contrasts with MS-DOS's lack of built-in idle loops until later versions, positioning DR-DOS as more efficient for battery-powered or thermally constrained systems. The kernel also supports modular extensions through CONFIG.SYS directives for loading device drivers and filters, allowing customization of the I/O stack without recompilation. Later iterations under Novell (DOS 7, 1993) and Caldera introduced DOS Protected Mode Services (DPMS) into the kernel interface, bridging real-mode operations to protected-mode extended memory access via EMM386 multitasking.

Memory and Disk Management Innovations

DR-DOS introduced advanced capabilities starting with version 6.0 in 1991, including built-in support for specification (XMS) via the HIDOS.SYS driver, which enabled relocation of the system kernel to high memory above 1 MB, thereby freeing additional below KB for applications. This contrasted with contemporaneous versions, which required third-party drivers like for similar functionality until 5.0 in 1991. The EMM386.SYS driver provided emulation of LIM 4.0 expanded memory specification (EMS) using up to 32 MB from , allocating a KB page frame in upper memory blocks (UMBs) between KB and 1 MB, and supported features such as ROM shadowing for faster code execution and VCPI for protected-mode applications like spreadsheets. Commands like HIDEVICE, HIINSTALL, and HILOAD facilitated loading device drivers and terminate-and-stay-resident (TSR) programs into UMBs, potentially yielding up to 620 KB of free under optimal configurations including multitasking support via TaskMAX for up to 20 concurrent tasks. In disk management, DR-DOS 6.0 integrated SuperStor for on-the-fly compression, achieving compression ratios of 2:1 to 8:1 depending on , effectively doubling or more the usable capacity of hard disks or floppy drives without requiring separate partitioning tools. Implemented via the SSTORDRV.SYS and SSTOR.EXE , it operated transparently on up to eight partitions (each up to 512 MB) using 512-byte logical sectors, reassigning drive letters while preserving the host drive (e.g., C:) as uncompressed for boot compatibility. This predated similar features in 6.0's DoubleSpace, which licensed technology akin to rather than developing proprietary compression. SuperStor's file management reserved space in sector units to minimize fragmentation, and it supported compressed floppy creation with auto-expansion utilities. Disk performance enhancements included the bundled Super PC-Kwik cache, which accelerated I/O by buffering data in expanded or across up to eight drives, configurable for size (e.g., via /S:nnnnn parameter) and supporting Bernoulli box drives. The FASTOPEN command maintained a directory of up to 32,768 file paths (default 512 entries) to reduce seek times, while multi-sector reads and write-behind caching minimized physical disk accesses. These tools collectively improved throughput over MS-DOS's native handling, with benchmarks showing reduced disk activity in database operations. File recovery innovations featured DELWATCH for deletion tracking, safeguarding up to 200 recently deleted files by default, and the UNDELETE command with options like /A for batch recovery or /R:DELWATCH for method-specific restoration. DISKMAP provided table backups for deeper recovery, and UNFORMAT enabled restoration from "safe" low-level formats, reducing data loss risks compared to standard utilities that lacked proactive tracking. Later iterations, such as Novell DOS 7 in 1993, retained and refined these for compatibility with larger drives.

Command-Line Interface and Utilities

DR-DOS employs an enhanced COMMAND.COM as its primary command-line interpreter, incorporating built-in editing and history capabilities that exceeded those of MS-DOS at the time of its release. These features enable users to edit commands interactively using key combinations such as F1 to copy a single character from the previous command, F3 to recall the remainder of it, and Ctrl+E or the up arrow to retrieve the prior command for modification. The system supports insert/overwrite modes toggled by the Ins key, cursor movement with arrow keys or Ctrl+A/F for word jumps, and line deletion via Ctrl+Y. Command history is activated through the HISTORY=ON directive in , maintaining a buffer of up to 256 entries with sizes configurable from 128 to 4096 bytes, allowing recall via F7 to display the list or F9 to select by number. Help functionality includes per-command syntax via /? or /H switches, such as DIR /?, alongside the comprehensive DOSBOOK utility for indexed on commands and . The PROMPT command permits advanced customization, integrating drive paths (PPG), OS version (%OS%), and environment variables for informative displays like "DRDOS C:>". DR-DOS provides a suite of enhanced utilities for file operations, recovery, and optimization, many of which offered capabilities ahead of equivalents. The MOVE command relocates files or subdirectories between drives or paths, as in MOVE *.txt C:\newdir. TOUCH updates file timestamps without altering content, useful for synchronization, via TOUCH *.doc /D:MM-DD-YY. FILELINK facilitates or transfers and archive bit management, invoked as FILELINK source target. File recovery tools include DELWATCH, a TSR marking deletions for later retrieval with configurable limits, paired with UNDELETE for menu-driven restoration and DISKMAP to preserve FAT structures pre-formatting. UNFORMAT recovers data from safe-formatted disks. Enhanced BACKUP and RESTORE support subdirectory inclusion (/S), modified files only (/M), and date filtering (/D:date). Security utilities like PASSWORD protect directories at read/write/delete levels, while XDIR, XDEL, and extended XCOPY provide sorting, overwriting, and label handling for advanced management.
UtilityKey EnhancementSyntax Example
MOVERelocates files/subdirs across drivesMOVE source dest
TOUCHUpdates timestampsTOUCH files /D:date
FILELINKSerial transfer/link creationFILELINK files
UNDELETERecovers marked deletionsUNDELETE /A
TASKMAXSwitches tasks, swaps memory/diskTASKMAX /C program
TASKMAX enables command-line multitasking for up to 20 sessions with , while DISKOPT offers menu-driven and optimization. These tools, integrated into DR-DOS 6.0 released in 1991, emphasized usability and performance. Later iterations, such as DOS 7 in 1993, retained and refined these for sustained compatibility.

Competition and Market Dynamics

Technical Superiority Over MS-DOS

DR-DOS exhibited technical superiority over in , enabling greater utilization of below KB and more efficient access to above that limit, which allowed for larger effective RAM availability in resource-constrained environments. Specifically, DR-DOS 5.0 supported loading disk-based components into either the High Memory Area or expanded memory, a flexibility not available in 5.0, which was limited to the High Memory Area alone. In multitasking, DR-DOS 6.0, released in September 1991, incorporated TASKMAX, a built-in task switcher that permitted seamless alternation between multiple DOS applications via an industry-standard , without requiring external terminate-and-stay-resident programs common in setups. This feature supported on 80286 and higher processors, enhancing productivity for power users by suspending inactive tasks and resuming them intact, predating native equivalents in later versions. Storage optimization marked another advance, as DR-DOS 6.0 integrated SuperStor for on-the-fly disk compression, undelete functionality, and unformat recovery, capabilities introduced nearly two years before 6.0's DoubleSpace compression in March 1993. These tools transparently expanded effective disk capacity by up to 2:1 ratios on average, with built-in safeguards against data loss during operations. Command-line utilities further distinguished DR-DOS, including MOVE for efficient file and subdirectory relocation, TOUCH for precise timestamping without editing content, and FILELINK for creating symbolic links to streamline directory navigation—features absent or less refined in equivalents at the time. Caching mechanisms like FASTOPEN were kernel-integrated in DR-DOS for faster file access, contrasting with MS-DOS's reliance on loadable TSR modules that consumed additional . Overall, these innovations positioned DR-DOS as a more capable single-tasking OS with extensions toward preemptive-like behaviors, though both remained fundamentally limited by DOS architecture.

OEM Adoption Challenges and Business Practices

Despite its technical advantages, DR-DOS encountered significant barriers to widespread adoption by original equipment manufacturers (OEMs), who pre-installed operating systems on PCs. Early releases like DR-DOS 3.31 in June 1988 were targeted exclusively at OEM licensees, such as under a approximately $1 million deal, but major vendors like and prioritized due to Microsoft's entrenched partnerships and economic incentives. Microsoft's per-processor licensing model charged royalties based on CPU production volume rather than actual sales, allowing OEMs to bundle at low marginal costs—often $10–$20 per unit—regardless of inventory risks, a structure competitors like could not match without unsustainable pricing. Digital Research's licensing emphasized feature differentiation over volume-based discounts, initially restricting DR-DOS to OEM channels before expanding to retail with version 5.0 in May 1990, which generated about $40 million in revenue by year-end through direct sales and limited pre-installs. In contrast, Microsoft cultivated OEM loyalty via flexible per-system alternatives at higher rates for resisters and by tying support for Windows compatibility, fostering perceptions of DR-DOS unreliability—such as warnings of incompatibility with Windows 3.1 despite functional testing. This dynamic surfaced acutely in 1989, when some OEMs balked at MS-DOS renewals, prompting Microsoft to offer selective pricing adjustments while maintaining dominance. OEM hesitancy persisted amid reports of DR-DOS's higher upfront costs and Digital Research's smaller sales infrastructure compared to Microsoft's global reach. By fiscal 1992, DR-DOS sales had dropped sharply to $15.5 million, reflecting eroded OEM confidence amid competitive FUD campaigns and Microsoft's bundling advantages, though 's 1991 acquisition later boosted bundling for rebranded DOS 7 with over 1 million units sold. Digital Research's focus on innovation, such as superior , yielded niche appeal but insufficient volume to challenge the ecosystem lock-in favoring . In July 1996, , Inc., which had acquired the DR-DOS assets from , Inc. earlier that year, filed an antitrust lawsuit against Corporation in the United States District Court for the District of . The complaint alleged violations of Sections 1 and 2 of the , claiming engaged in from approximately 1988 to 1994 to maintain its monopoly in the PC operating system market by excluding DR-DOS, a technically superior alternative to . , backed by former CEO Raymond Noorda, asserted that these actions prevented DR-DOS from achieving significant market share despite its advanced features, such as superior and multitasking capabilities. Key allegations included Microsoft's use of exclusionary licensing agreements, such as per-processor royalties that penalized original equipment manufacturers (OEMs) for bundling competing DOS variants like DR-DOS, effectively raising costs for non-Microsoft systems. Caldera further claimed Microsoft disseminated false and misleading statements about DR-DOS compatibility with Windows, delayed the release of Windows 3.1 to undermine DR-DOS 6.0's launch in 1991, and employed technical measures to create artificial incompatibilities. Additionally, the suit accused Microsoft of predatory pricing and vaporware tactics, such as premature announcements of "Chicago" (later Windows 95) to deter OEM adoption of DR-DOS. These practices, Caldera argued, stifled competition in the DOS market, where Microsoft held over 90% share by the mid-1990s. Microsoft moved for partial on multiple claims, succeeding on arguments that it lacked monopoly power in the DOS market after 1994 due to the rise of Windows dominance and that certain tying claims related to bundling lacked merit. However, other allegations, including those of intentional incompatibility and false compatibility assurances, survived initial motions, allowing the case to proceed toward trial. The litigation highlighted broader concerns about Microsoft's business practices, echoing themes in contemporaneous DOJ investigations, though it remained a private action focused on DR-DOS-specific harms. The case settled out of court on January 7, 2000, shortly before trial, with agreeing to undisclosed financial terms that included a one-time charge against earnings and the release of some technical documentation, while denying all allegations. viewed the settlement as validation of its claims, using proceeds to fund open-source initiatives like Lineo (later Embedix), but maintained the suit was meritless and without evidentiary support for monopoly abuse. The resolution avoided a full judicial determination, leaving unresolved whether 's actions constituted illegal or legitimate competition in a rapidly evolving market.

Controversies and Criticisms

Alleged Sabotage Tactics Including AARD Code

In the mid-1990s, Inc., which acquired rights to DR-DOS from in 1996, filed an antitrust lawsuit against alleging that the company engaged in technical sabotage to undermine DR-DOS as a competitor to during the early 1990s. The suit claimed inserted code into pre-release versions of to detect and disrupt operation on DR-DOS, fostering perceptions of incompatibility and deterring adoption. These tactics were purportedly part of a broader strategy documented in internal emails, such as one from September 27, 1991, where executive Paul Allchin suggested ensuring DR-DOS "has problems in the future," and another from Brad Silverberg advocating measures to make DR-DOS users "feel uncomfortable" enough to switch to . A prominent example cited in the allegations was the , a segment of obfuscated machine embedded in beta builds of distributed starting in December 1991. This performed encrypted tests on system variables to distinguish from alternatives like DR-DOS; upon detecting DR-DOS, it triggered a disingenuous reading: "Non-fatal error detected: Error number [variable code]. Please contact beta support. Press enter to exit or C to continue." The detection targeted non-standard behaviors in DR-DOS, such as differences in vectors or DOS structures, while remnants of the and tests persisted in the final April 1992 release of , though disabled from triggering the message. acknowledged the 's presence but characterized it as a development tool for compatibility testing rather than intentional , a claim contested by analysts who noted its specific anti-DR-DOS focus. Beyond AARD, other alleged technical measures included compatibility checks in components designed to fail on DR-DOS. For instance, the SMARTDRV disk cache driver—codenamed ""—refused to load under DR-DOS, citing incompatibility, while the setup program's XMS memory manager version check displayed: "The XMS driver you have installed is not compatible with Windows. You must remove it before setup can successfully install Windows." These checks, implemented around September 1991, exploited subtle differences between and DR-DOS to generate false failures, contributing to documented instability when running Windows applications on DR-DOS. argued these were not mere bugs but deliberate exclusions, supported by emails from September 30, 1991, coordinating such detections across teams. The , filed in July 1996, culminated in a confidential settlement on January 7, 2000, with agreeing to pay an estimated $275 million, avoiding a that could have publicized further evidence of predatory conduct. While maintained that no occurred in shipping products and that compatibility issues stemmed from DR-DOS's incomplete emulation, the settlement and internal correspondence provided circumstantial validation for the allegations of targeted technical interference.

Responses to Compatibility Issues and Market Exclusion

Digital Research addressed compatibility issues with Microsoft products by modifying DR-DOS internals to evade detection mechanisms, such as the AARD code in the Windows 3.1 beta released in December 1991, which checked for specific MS-DOS behaviors via interrupt 21h function 33h. These modifications, implemented in DR-DOS 6.0 (released in 1991), altered response handling—setting the carry flag and AX=0001h on the stack rather than AL=FFh—to pass authenticity checks without altering core functionality, allowing Windows 3.1 to load and run seamlessly on DR-DOS despite Microsoft's intent to restrict it to MS-DOS. Digital Research publicly affirmed its commitment to resolving such incompatibilities, emphasizing ongoing support for Microsoft software like Windows to maintain user trust. Facing market exclusion through perceived incompatibilities and tactics like fake error messages in utilities (e.g., SMARTDRV's "Bambi" code), which eroded DR-DOS sales after peaking at around 20% in 1990, —having acquired in 1991—struggled to sustain momentum and sold the DR-DOS line to , Inc., in 1996. In response, filed an antitrust against on May 3, 1999, in U.S. District Court in , alleging intentional creation of technical barriers, dissemination of misinformation about DR-DOS reliability, and exclusionary practices that caused significant revenue losses estimated in the tens of millions. The suit highlighted how 's actions, including version checks in XMS drivers and non-fatal errors, fostered a false narrative of instability, prompting OEMs to favor bundles; it was settled out of court in 2000 for an undisclosed sum following discovery of internal emails confirming sabotage intent.

Broader Implications for Monopoly Power in Software

The exclusionary practices employed by against DR-DOS, as alleged in the 1996 Caldera, Inc. v. Corp. antitrust lawsuit, exemplified how a dominant firm could leverage its operating system monopoly to deter rivals through restrictive per-processor licensing agreements that penalized original equipment manufacturers (OEMs) for adopting alternatives. These contracts, which required OEMs to pay royalties for every processor regardless of , effectively raised the costs of bundling competitors' products and contributed to DR-DOS's plummeting from a viable threat in 1990 to approximately 3% by 1993, while captured 79%. Such tactics extended beyond pricing to include deliberate incompatibilities, such as code in early Windows versions that detected and undermined DR-DOS functionality, fostering (FUD) among developers and users about cross-compatibility. In software markets characterized by network effects—where value increases with user and developer adoption—these barriers amplified the incumbent's dominance, as applications optimized for created lock-in effects that disadvantaged even technically superior alternatives like DR-DOS, which offered advanced features such as built-in multitasking and better disk compression. This dynamic reduced incentives for innovation, as monopolistic control diminished competitive pressure to enhance core functionalities, potentially leading to stagnant product evolution and higher long-term costs for consumers reliant on a single ecosystem. The case settlement in 2000, involving Microsoft's release of historical licensing documents and code without admission of liability, highlighted the challenges of enforcing antitrust remedies in rapidly evolving tech sectors but also signaled to regulators the perils of platform monopolies extending influence into adjacent markets. Broader ramifications included heightened scrutiny of Microsoft's OS , informing the U.S. Department of Justice's 1998 case against the company for bundling with Windows, where similar exclusionary logics were central. In the , these episodes underscored how control over foundational platforms could suppress multi-vendor ecosystems, favoring over horizontal and setting precedents for evaluating predatory conduct in , where marginal costs approach zero and compatibility serves as a critical competitive moat.

Legacy and Modern Relevance

Influence on Subsequent DOS Variants

Novell acquired Digital Research in July 1991, leading to the rebranding and evolution of DR-DOS 6.0 into DOS 7, released on May 25, 1993, which preserved DR-DOS's core kernel architecture while enhancing features like HIMEM.SYS-compatible expanded and SuperStor disk compression for up to 2:1 ratios. DOS 7 introduced TASKMAX, an extension of DR-DOS's multitasking supporting cooperative task switching among DOS applications, and integrated compression after DR-DOS transitioned from proprietary SuperStor amid licensing disputes. This lineage continued post-Novell's divestiture of non-core assets in 1996, when International obtained rights to DOS 7 and released OpenDOS 7.01 in 1997 as an embeddable variant with Y2K compliance updates, retaining DR-DOS-derived utilities like the VIEW command for graphical file management and multi-tasking hooks. later produced DR-DOS 7.03 in 1999, incorporating bug fixes and FAT32 read support building on the original DR-DOS extensions for long filenames and larger volumes introduced in version 6.0. Subsequent commercial variants, such as DeviceLogics' DR-DOS 8.0 (circa ), extended these foundations with native support and enhanced LFN handling, directly deriving from the DR-DOS kernel's interrupt-driven structure for compatibility with applications. Open-source projects like SvarDOS (first released 2021) explicitly adopt a of the DR-DOS kernel, preserving features such as resident utilities and configurable boot menus to enable modern emulation of legacy environments. DR-DOS's innovations pressured broader DOS development, with 6.0 (March 1993) adopting disk compression via DoubleSpace—later rewritten as amid Stacker infringement claims tied to DR-DOS licensees—and undelete tools mirroring DR-DOS 5.0's capabilities from 1990, though prioritized proprietary refinements over direct emulation. These competitive dynamics ensured subsequent variants emphasized embeddability and , influencing niche systems like PTS-DOS for multi-user setups, which echoed DR-DOS's command extensions despite independent origins.

Applications in Embedded and Legacy Systems

DR-DOS maintains relevance in embedded systems owing to its small , multitasking capabilities inherited from Concurrent DOS, and compatibility with legacy x86 hardware. These attributes enabled its deployment in resource-constrained environments, including thin clients and industrial controllers where ROM-based loading was common to ensure reliability and speed. DeviceLogics released DR-DOS 8.0 on March 30, 2004, tailored for the embedded market with support for FAT32 file systems, large disk handling up to 128 GB, and enhanced networking via NDIS drivers. This version incorporated features like display for graphical interfaces in kiosks and recovery boot disks for antivirus utilities, extending its utility beyond general-purpose . ZF Micro Systems integrated DR-DOS with their ZFx86 embedded processors, providing a DOS environment for real-time applications in devices such as point-of-sale terminals and control systems, as detailed in their 2009 datasheet. In legacy systems, DR-DOS persists where operators require stable execution of DOS-era software without modern OS overhead, particularly in sectors avoiding Windows upgrades due to certification costs or compatibility risks. Its task-switching and features, available since DR-DOS 5.0 in 1991, facilitated multi-application environments in older industrial setups, though adoption waned post-2000s amid transitions. Commercial support for such deployments continued into the 2010s via vendors like DeviceLogics, underscoring DR-DOS's role in bridging obsolete hardware with persistent software needs.

Open-Source Derivatives like SvarDOS

SvarDOS represents a modern open-source revival of DR-DOS features through its adoption of the DR-DOS (EDRDOS) kernel, derived from Caldera's release of OpenDOS 7.01 sources, which included the core kernel and utilities under an open . Initially developed as a distribution by Mateusz Viste starting in 2016—evolving from earlier packaging tools like FDNPKG created in 2012—SvarDOS unified 8086 and 386 variants into a single by 2021, emphasizing real-mode efficiency and a minimalist core for legacy PCs from the to . In late 2023, developer Bernd Böckmann packaged the EDRDOS kernel for SvarDOS, which became the default in July 2024, shifting it from dependency to a DR-DOS-derived independence while maintaining compatibility as a via load protocols. The EDRDOS kernel, ported to JWasm assembler (version 2.17 or later) and OpenWatcom C (version 1.9 or later), supports single-file (KERNEL.SYS) or dual-file configurations (DRBIO.SYS and DRDOS.SYS) and includes enhancements like optional FAT+ for larger files, buildable across DOS, Win32, Linux, and macOS environments. SvarDOS leverages this kernel in a rolling-release model with over 400 packages available via its network-enabled pkgnet manager, enabling installations as small as 6 MB while adding support for NTFS/HPFS access, USB drivers, development tools, editors, and games—freeing up to 619 KiB of conventional memory on fresh installs. Licensed under MIT for core components, with varied licenses for packages (e.g., GPL, BSD), it prioritizes 8086 compatibility, multilingual interfaces (English, German, French, Polish, Russian, Italian), and integration of fragmented DOS ecosystem tools abandoned after commercial DOS decline in the early 1990s. Foundational to such derivatives is the DR-DOS/OpenDOS Enhancement Project, initiated in July 2002 by Udo Kuhnt, which extended Caldera's OpenDOS 7.01 with features like FAT32 support and bug fixes, producing versions up to Enhanced DR-DOS 7.01.07 by around 2011 before becoming largely inactive. These enhancements, including ongoing patches for standards compliance, informed EDRDOS and similar efforts, allowing redistribution and customization under permissive terms derived from the original FOSS components. SvarDOS thus exemplifies how open-source work sustains DR-DOS's technical lineage—such as multitasking roots from Concurrent PC-DOS—for retro computing, embedded applications, and hobbyist preservation without constraints.

References

  1. https://handwiki.org/wiki/Software:DR-DOS
Add your contribution
Related Hubs
User Avatar
No comments yet.