DR-DOS


DR-DOS 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. DR DOS 5.0 was released in 1990 as the first to be sold in retail; it was critically acclaimed and led to DR DOS becoming the main rival to Microsoft's MS-DOS, who quickly responded with its own MS-DOS 5.0 but releasing over a year later. 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, after which the software was sold to Embedded Systems by Caldera and then by DeviceLogics.

History

Origins in CP/M

'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. 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. 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 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.
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 and shipped in March 1984 as Concurrent DOS 3.1 to hardware vendors. 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 as did the original CP/M-86. Its DOS compatibility was limited, and Digital Research made another attempt, this time a native DOS system. 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. 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 in Hungerford, Berkshire. Later on some work was also done by Digital Research GmbH in Munich, Germany.

First DR DOS version

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. 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. The first DR DOS version was released on May 28, 1988. Version numbers were chosen to reflect features relative to MS-DOS; the first version promoted to the public was DR DOS 3.31, which offered features comparable to Compaq MS-DOS 3.31 with large disk support. DR DOS 3.31 reported itself as "IBM PC DOS 3.31", while the internal BDOS 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 and DRBDOS.SYS, 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 as well as support for file and directory passwords built right into the kernel. 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. 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, 3.32, 3.33, 3.34, 3.35, 3.40, 3.41. 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.

DR DOS 5.0

DR DOS version 5.0 was released in May 1990, still reporting itself as "PC DOS 3.31" for compatibility purposes, but internally indicating a single-user BDOS 6.4 kernel. This introduced ViewMAX, a GEM-based GUI file management shell. ViewMAX's startup screen would present the slogan "Digital Research - We make computers work". DR DOS 5.0 also introduced the patented BatteryMAX power management system, bundled disk-caching software, a remote file transfer tool, a cursor shape configuration utility, and offered a vastly improved memory management system. For compatibility purposes, the DR DOS 5.0 system files were now named IBMBIO.COM and IBMDOS.COM and due to the advanced loader in the boot sector could be physically stored anywhere on disk. The OEM label in the boot sectors was changed to "IBM␠␠3.3".
File:Carry-i-front-and-rear.jpg|thumb|right|250px|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
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, 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.
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. 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 low in memory – inside the first 64 KB segment. 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. By default, MEMMAX was configured for +L, so that applications could take advantage of the extra memory.

DR DOS 6.0 / Competition from Microsoft

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. This would be released in June 1991 and include similar advanced features to those of DR DOS. It included matches of the DR's enhancements in memory management.
Almost immediately in September 1991, Digital Research responded with DR DOS 6.0, 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 with support for the industry-standard task-switching API to run multiple applications at the same time. In contrast to Digital Research's Multiuser DOS, 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. TASKMAX did support some Copy & Paste facility between applications.
Via the task-switcher API, graphical user interfaces such as ViewMAX 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. This check came to be known as the AARD code. 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, and the patched version, named "business update", was on the streets within six weeks of the release of Windows 3.1. 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.
In July 1992, Digital Research Japan released DR DOS 6.0/V, a Japanese DOS/V compatible version of DR DOS 6.0. A Korean version appears to have been available as well.