
A DOS extender is a
computer software
Software consists of computer programs that instruct the Execution (computing), execution of a computer. Software also includes design documents and specifications.
The history of software is closely tied to the development of digital comput ...
program running under
DOS
DOS (, ) is a family of disk-based operating systems for IBM PC compatible computers. The DOS family primarily consists of IBM PC DOS and a rebranded version, Microsoft's MS-DOS, both of which were introduced in 1981. Later compatible syste ...
that enables software to run in a
protected mode
In computing, protected mode, also called protected virtual address mode, is an operational mode of x86-compatible central processing units (CPUs). It allows system software to use features such as Memory_segmentation, segmentation, virtual mem ...
environment even though the host operating system is only capable of operating in
real mode
Real mode, also called real address mode, is an operating mode of all x86-compatible CPUs. The mode gets its name from the fact that addresses in real mode always correspond to real locations in memory. Real mode is characterized by a 20- bit s ...
.
DOS extenders were initially developed in the 1980s following the introduction of the
Intel 80286
The Intel 80286 (also marketed as the iAPX 286 and often called Intel 286) is a 16-bit microprocessor that was introduced on February 1, 1982. It was the first 8086-based CPU with separate, non- multiplexed address and data buses and also the f ...
processor (and later expanded upon with the
Intel 80386
The Intel 386, originally released as the 80386 and later renamed i386, is the third-generation x86 architecture microprocessor from Intel. It was the first 32-bit computing, 32-bit processor in the line, making it a significant evolution in ...
), to cope with the memory limitations of
DOS
DOS (, ) is a family of disk-based operating systems for IBM PC compatible computers. The DOS family primarily consists of IBM PC DOS and a rebranded version, Microsoft's MS-DOS, both of which were introduced in 1981. Later compatible syste ...
.
DOS extender operation
A DOS extender is a program that "extends" DOS so that programs running in protected mode can transparently interface with the underlying
DOS API. This was necessary because many of the functions provided by DOS require 16-bit segment and offset addresses pointing to memory locations within the
first 640 kilobytes of memory. Protected mode, however, uses an incompatible addressing method where the segment registers (now called selectors) are used to point to an entry in the
Global Descriptor Table which describes the characteristics of the segment. The two methods of addressing are mutually exclusive, with the processor having to make costly switches to real (or
V86) mode to service non-protected mode requests.
In addition to setting up the environment and loading the actual program to be executed, the DOS extender also provides (amongst other things) a translation layer that maintains
buffers allocated below the 1 MB real mode memory barrier. These buffers are used to transfer data between the underlying real mode operating system and the protected mode program. Since switching between real/V86 mode and protected mode is a relatively time consuming operation, the extender attempts to minimize the number of switches by duplicating the functionality of many real mode operations within its own protected mode environment. As DOS uses
interrupts extensively for communication between the operating system and user level software, DOS extenders intercept many of the common hardware (e.g. the
real-time clock
A real-time clock (RTC) is an electronic device (most often in the form of an integrated circuit) that measures the passage of time.
Although the term often refers to the devices in personal computers, server (computing), servers and embedded ...
and keyboard controller) and software (e.g. DOS itself and the mouse API) interrupts. Some extenders also handle other common interrupt functions, such as video BIOS routines.
Essentially, a DOS extender is like a miniature operating system, handling much of the functionality of the underlying operating system itself.
Development history
The DOS extender was arguably invented by
Phar Lap
Phar Lap (4 October 1926 – 5 April 1932) was a New Zealand-born champion Australian Thoroughbred horse racing, racehorse. Achieving great success during his distinguished career, his initial underdog status gave people hope during the ear ...
, but it was
Tenberry Software's (formerly Rational Systems) 386 extender
DOS/4GW that brought protected mode DOS programs to a mass market. Included with
Watcom
Watcom International Corporation was a software company, which was founded in 1981 by Wes Graham and Ian McPhee. Founding staff (Fred Crigger, Jack Schueler and McPhee) were formerly members of Professor Graham's Computer Systems Group at the Uni ...
's C, C++, and Fortran compilers for 386 class processors, it soon became a ubiquitous mainstay of PC applications and games such as
id Software
id Software LLC () is an American video game developer based in Richardson, Texas. It was founded on February 1, 1991, by four members of the computer company Softdisk: game programmer, programmers John Carmack and John Romero, game designer T ...
's successful ''
Doom''.
While initially it was the memory-hungry business applications that drove the development of DOS extenders, it would be PC games that truly brought them into the spotlight. As a result of the development of DOS extenders, two new software interfaces were created to take care of the many potential conflicts that could arise from the varied methods of memory management that already existed, as well as provide a uniform interface for client programs.
The first of these interfaces was the
Virtual Control Program Interface
In computing, the Virtual Control Program Interface (VCPI) is a specification published in 1989 by Phar Lap Software that allows a DOS program to run in protected mode, granting access to many features of the processor not available in real mod ...
(VCPI), but this was rapidly overshadowed by the
DOS Protected Mode Interface
In computing, the DOS Protected Mode Interface (DPMI) is a specification introduced in 1989 which allows a DOS program to run in protected mode, giving access to many features of the new PC processors of the time not available in real mode. It w ...
(DPMI) specification, which grew from the Windows 3.0 development.
They provided an API through which an extended program could interface with real mode software, allocate memory, and handle interrupt services. They also provided an easy method for the extender to set up the switch to protected mode, and allowed multiple protected mode programs to coexist peacefully.
DOS extenders
*
DOS/4G and DOS/4GW and
DOS/16M by Tenberry Software, Inc.
* 286, DOS Extender and 386, DOS Extender by
Phar Lap
Phar Lap (4 October 1926 – 5 April 1932) was a New Zealand-born champion Australian Thoroughbred horse racing, racehorse. Achieving great success during his distinguished career, his initial underdog status gave people hope during the ear ...
. Later superseded by the TNT Dos Extender.
* PROT by Al Williams, a 32-bit DOS extender published in Dr. Dobb's Journal
and in two books. This extender had the virtue of running DOS and BIOS calls in emulated mode instead of switching back to real mode.
* CauseWay was a formerly proprietary extender that competed with DOS4G. As of 2000 it has been released as open source. A few rare games such as
Daggerfall
''The Elder Scrolls II: Daggerfall'' is a 1996 action role-playing game published by Bethesda Softworks. The second installment in the ''Elder Scrolls'' series, it was released on September 20, 1996 for MS-DOS, following the success of 1994's ' ...
use it.
*
DOS/32
DOS/32 is an advanced 32-bit DOS extender created for replacing DOS/4GW extender and compatibles. This extender can be used in various environments, from embedded systems to DOS emulators, by both developers and end users alike. Unlike DOS/4GW, D ...
as an alternative to DOS/4G by Narech K.
* Ergo (formerly Eclipse, formerly A. I. Architects) OS/286 and OS/386 extenders, and DPM16 and DPM32 servers
* 386Power 32-bit DOS Extender is an extender for 32-bit
Assembly apps. Includes
source code
In computing, source code, or simply code or source, is a plain text computer program written in a programming language. A programmer writes the human readable source code to control the behavior of a computer.
Since a computer, at base, only ...
.
* all
Microsoft Windows
Windows is a Product lining, product line of Proprietary software, proprietary graphical user interface, graphical operating systems developed and marketed by Microsoft. It is grouped into families and subfamilies that cater to particular sec ...
versions since 1990, except
NT branch,
include both a DPMI server and DOS extender.
* HX DOS Extender provides limited Win32 support to allow Windows console (like
Far Manager
Far Manager (short for ''File and ARchive Manager'') is an orthodox file manager for Microsoft Windows and is a clone of Norton Commander. Far Manager uses the Win32 console and has a keyboard-oriented user interface (although limited mouse o ...
) and some Win32 GUI applications to run under DOS. It contains both 16-bit and 32-bit
DPMI servers (HDPMI16/HDPMI32) for use with protected mode DOS programs
* DosWin32 provides limited Win32 support
* WDosX was an early implementation of limited Win32 support, used by the TMT Pascal compiler.
*
Borland Power Pack was an extender included with some of their development suites that could access a limited portion of the Win32 API.
*
TASM
Turbo Assembler (TASM) is an assembler for software development published by Borland in 1989. It runs on and produces code for 16- or 32-bit x86 MS-DOS and compatibles for Microsoft Windows. It can be used with Borland's other language produ ...
, again from Borland, included 32RTM with DPMI32VM and RTM with DPMI16BI, two DPMI hosts.
*
CWSDPMI by Charles W. Sandmann, a DPMI server for use with 32-bit protected mode DOS
DJGPP programs.
* QDPMI by
Quarterdeck Office Systems
Quarterdeck Office Systems, later Quarterdeck Corporation (NASDAQ: QDEK), was an American computer software company. It was founded by Therese Myers and Gary Pope in 1981
and incorporated in 1982. Their offices were initially located at 150 Pico B ...
, was a DPMI host included with
QEMM.
* GO32, used in older (pre-v2) versions of
DJGPP, and
Free Pascal
Free Pascal Compiler (FPC) is a compiler for the closely related programming-language dialects Pascal and Object Pascal. It is free software released under the GNU General Public License, witexception clausesthat allow static linking against it ...
* D3X is an DPMI sever written entirely in
Assembly. Still in alpha state, but discontinued before completion.
* DPMIONE is another DPMI sever. Originally developed for 32 bit programs generated by Borland C++ and Delphi.
* DBOS by Salford Software, a 32-bit protected mode DOS extender used primarily by their FTN77 Fortran Compiler
* X32 and X32VM by FlashTek and supported as a target by
Digital Mars
Digital Mars is an American computer software company founded by Walter Bright and based in Vienna, Virginia. It makes C, C++, and D compilers, and associated utilities such as an integrated development environment (IDE) for Windows and DO ...
compilers
* BLINKER by Blink Inc Version 3 and above provided a 286 DOS Extender for several 16 bit DOS compilers including CA-Clipper, Microsoft C/C++, PASCAL, FORTRAN and Borland C/C++. Supported unique 'Dual Mode' executables capable of running in either real or protected mode depending on the run time environment.
*
EMX
* PMODE/W, a 32-bit Protected DOS extender for Watcom C/C++ compiler, recently made open-sourced since July 2023.
[ ]
Notable DOS extended applications
* ATT Graphics Software Labs 'RIO' -- Resolution Independent Objects' graphics software.
* Adobe Acrobat Reader 1.0 (uses an early version of DOS/4GW professional)
*
AutoCAD
AutoCAD is a 2D and
3D computer-aided design (CAD) software application developed by Autodesk. It was first released in December 1982 for the CP/M and IBM PC platforms as a desktop app running on microcomputers with internal graphics control ...
11 (PharLap 386)
*
Lotus 1-2-3
Lotus 1-2-3 is a discontinued spreadsheet program from Lotus Software (later part of IBM). It was the first killer application of the IBM PC, was hugely popular in the 1980s, and significantly contributed to the success of IBM PC-compatibles ...
Release 3 (Rational Systems DOS/16M)
*
Oracle
An oracle is a person or thing considered to provide insight, wise counsel or prophetic predictions, most notably including precognition of the future, inspired by deities. If done through occultic means, it is a form of divination.
Descript ...
Professional
*
IBM
International Business Machines Corporation (using the trademark IBM), nicknamed Big Blue, is an American Multinational corporation, multinational technology company headquartered in Armonk, New York, and present in over 175 countries. It is ...
Interleaf
Interleaf, Inc. was a company that created computer software products for the technical publishing creation and distribution process. Founded in 1981, its initial product was the first commercial document processor that integrated text and graphi ...
*
Major BBS, a 1980s
BBS software package that utilized the
Phar Lap
Phar Lap (4 October 1926 – 5 April 1932) was a New Zealand-born champion Australian Thoroughbred horse racing, racehorse. Achieving great success during his distinguished career, his initial underdog status gave people hope during the ear ...
DOS extender.
*
Quarterdeck
The quarterdeck is a raised deck behind the main mast of a sailing ship. Traditionally it was where the captain commanded his vessel and where the ship's colours were kept. This led to its use as the main ceremonial and reception area on bo ...
DESQview
DESQview (DV) is a text mode multitasking operating environment developed by Quarterdeck Office Systems which enjoyed modest popularity in the late 1980s and early 1990s. Running on top of DOS, it allows users to run multiple programs concurr ...
and DESQview/X multitasking software
*
Watcom
Watcom International Corporation was a software company, which was founded in 1981 by Wes Graham and Ian McPhee. Founding staff (Fred Crigger, Jack Schueler and McPhee) were formerly members of Professor Graham's Computer Systems Group at the Uni ...
's
C,
C++ and
Fortran compiler
In computing, a compiler is a computer program that Translator (computing), translates computer code written in one programming language (the ''source'' language) into another language (the ''target'' language). The name "compiler" is primaril ...
s for the
x86
x86 (also known as 80x86 or the 8086 family) is a family of complex instruction set computer (CISC) instruction set architectures initially developed by Intel, based on the 8086 microprocessor and its 8-bit-external-bus variant, the 8088. Th ...
* Countless DOS games from the early to mid 1990s, mostly using DOS/4GW, including:
**
id Software
id Software LLC () is an American video game developer based in Richardson, Texas. It was founded on February 1, 1991, by four members of the computer company Softdisk: game programmer, programmers John Carmack and John Romero, game designer T ...
's ''
DOOM'' and its sequels, as well as ''
Quake'' (built with
DJGPP)
**
Looking Glass Studios' ''
System Shock
''System Shock'' is a 1994 first-person action-adventure game, action-adventure video game developed by LookingGlass Technologies and published by Origin Systems. It was directed by Doug Church with Warren Spector serving as producer. The game ...
''
**
Parallax Software
Deep Silver Volition, LLC (formerly Parallax Software Corporation and Volition, Inc.) was an American video game developer based in Champaign, Illinois. Mike Kulas and Matt Toschlog founded the company as Parallax Software in June 1993, develop ...
's ''
Descent''
**
Crack dot Com's ''
Abuse
Abuse is the act of improper usage or treatment of a person or thing, often to unfairly or improperly gain benefit. Abuse can come in many forms, such as: physical or verbal maltreatment, injury, assault, violation, rape, unjust practices, ...
''
**
Blizzard Entertainment
Blizzard Entertainment, Inc. is an American video game developer and Video game publisher, publisher based in Irvine, California, and a subsidiary of Activision Blizzard. Originally founded in 1991, the company is best known for producing the h ...
's ''
Warcraft: Orcs & Humans'' and ''
Warcraft II: Tides of Darkness''
**
3D Realms' ''
Duke Nukem 3D
''Duke Nukem 3D'' is a 1996 first-person shooter, first-person shooter game developed by 3D Realms and published by FormGen for MS-DOS. It is a sequel to the platform games ''Duke Nukem (video game), Duke Nukem'' and ''Duke Nukem II'', published ...
''
**
Midway's ''
Mortal Kombat
''Mortal Kombat'' is an American media franchise centered on a series of fighting game, fighting video games originally developed by Midway Games in 1992.
The original ''Mortal Kombat (1992 video game), Mortal Kombat'' arcade game spawned Lis ...
''
**
Westwood Studios
Westwood Studios, Inc. was an American video game developer based in Las Vegas, Nevada. It was founded by Brett Sperry and Louis Castle in 1985 as Brelous Software, but got changed after 2 months into Westwood Associates and was renamed to Westw ...
' ''
Command & Conquer
''Command & Conquer'' (''C&C'') is a real-time strategy (RTS) video game franchise created and originally developed by Westwood Studios and currently owned by Electronic Arts. The first game was one of the earliest of the RTS genre, itself ba ...
'' and ''
Command & Conquer: Red Alert''
**
DMA Design
Rockstar North (Rockstar Games UK Limited; formerly DMA Design Limited) is a British video game developer and a studio of Rockstar Games based in Edinburgh. The studio is best known for creating the ''Lemmings (series), Lemmings'' and ''Grand ...
(now Rockstar North)'s ''
Grand Theft Auto
''Grand Theft Auto'' (''GTA'') is an action-adventure video game series created by David Jones and Mike Dailly. Later titles were developed under the oversight of brothers Dan and Sam Houser, Leslie Benzies and Aaron Garbut. It is prima ...
''. Later versions of the game were ported to Windows in order to make it more compatible with modern computers.
** ''
Comanche: Maximum Overkill'' by
NovaLogic
NovaLogic, Inc. was an American software developer and publisher established in 1985 and based in Calabasas, California. The company was founded by CEO John A. Garcia. Garcia's background in computer software started in Southern California in th ...
used a custom
Unreal mode memory manager which required a
80386
The Intel 386, originally released as the 80386 and later renamed i386, is the third-generation x86 architecture microprocessor from Intel. It was the first 32-bit processor in the line, making it a significant evolution in the x86 architect ...
processor and was incompatible with
memory managers and
virtual DOS boxes, requiring a complicated
DOS boot menu configuration in
CONFIG.SYS. Later revisions included a DOS extender which solved the problem.
**
Ultima VII and
Ultima VII Part Two: Serpent Isle by
Origin Systems
Origin Systems, Inc. was an American video game developer based in Austin, Texas. It was founded on March 3, 1983, by Richard Garriott and his brother Robert. Origin is best known for their groundbreaking work in multiple genres of video games ...
also used a custom
Unreal mode memory manager called the Voodoo Memory Manager which was incompatible with
EMS memory and
memory managers such as
EMM386
EMM386 is the expanded memory manager of Microsoft's MS-DOS, IBM's PC DOS, Digital Research's DR-DOS, and Datalight's ROM-DOS which is used to create expanded memory using extended memory on Intel 80386 CPUs. There also is an EMM386.EXE avail ...
.
References
External links
*
HX-DOSThe Free Country's list of DOS extenders
{{Disk operating systems