DOS Plus
DOS Plus (erroneously also known as DOS+) was the first operating system developed by Digital Research's OEM Support Group[1] in Newbury, Berkshire, UK, first released in 1985. DOS Plus 1.0 was based on CP/M-86 Plus combined with the PCMODE emulator from Concurrent PC DOS 4.11.[1] While CP/M-86 Plus and Concurrent DOS 4.1 still had been developed in the United States, Concurrent PC DOS 4.11 was an internationalized and bug-fixed version brought forward by Digital Research UK.[1] Later DOS Plus 2.x issues were based on Concurrent PC DOS 5.0 instead. In the broader picture, DOS Plus can be seen as an intermediate step between Concurrent CP/M-86 and DR DOS.
Developer | Digital Research |
---|---|
OS family | CP/M-86 |
Working state | Discontinued |
Source model | Closed source |
Initial release | 1985 |
Latest release | DOS Plus 2.1 (with BDOS 5.0) |
Available in | English |
Platforms | Intel 8086, Intel 80186 |
Kernel type | Monolithic kernel |
Default user interface | Command-line interface (COMMAND.COM) |
License | Proprietary |
Preceded by | CP/M-86 Plus |
Succeeded by | DR DOS |
DOS Plus is able to run programs written for either CP/M-86 or MS-DOS 2.11, and can read and write the floppy formats used by both of these systems. Up to four CP/M-86 programs can be multitasked, but only one DOS program can be run at a time.
User interface
DOS Plus attempts to present the same command-line interface as MS-DOS. Like MS-DOS, it has a command-line interpreter called COMMAND.COM
(alternative name DOSPLUS.COM
). There is an AUTOEXEC.BAT
file, but no CONFIG.SYS
(except for FIDDLOAD, an extension to load some field-installable device drivers (FIDD) in some versions of DOS Plus 2.1). The major difference the user will notice is that the bottom line of the screen contains status information similar to:
DDT86 ALARM UK8 PRN=LPT1 Num 10:17:30
The left-hand side of the status bar shows running processes. The leftmost one will be visible on the screen; the others (if any) are running in the background. The right-hand side shows the keyboard layout in use (UK8 in the above example), the printer port assignment, the keyboard Caps Lock and Num Lock status, and the current time. If a DOS program is running, the status line is not shown. DOS programs cannot be run in the background.
The keyboard layout in use can be changed by pressing Ctrl, Alt and one of the function keys F1–F5.
Commands
DOS Plus contains a number of extra commands to support its multitasking features:
- ADDMEM: Sets the amount of extra memory to allocate to EXE programs.
- ALARM: A message alarm clock.
- BACKG: Allows background processes to be listed and stopped.
- COMSIZE: Sets the amount of memory to allocate to COM programs.
- PRINT: Print spooler.
- SLICE: Sets the amount of processor time to give to the foreground program. See also the %$SLICE% environment variable.[2][3]
- USER: Sets the user number to use when accessing CP/M media.
It also contains subsets of the standard DOS commands and CP/M commands – for example, it has both a built-in COPY
command, and a PIP
utility, both of which copy files.
The CD
command can assign one of the three drives N:, O: or P: to a directory on a different drive, in a similar manner to the MS-DOS command SUBST
. For example,
CD N:=C:\DATA\ACCOUNTS
will cause the directory C:\DATA\ACCOUNTS
to appear as drive N:. This so-called floating drive feature allows old programs which don't support subdirectories to work under DOS Plus and can be used to make file handling at the command prompt much easier.
This feature is also present in Concurrent DOS, Multiuser DOS, System Manager 7, and REAL/32, however, these systems extend the concept to all unused drive letters from A: to Z:, except for drive letter L:. DR DOS 3.31 – 6.0 (up to the November 1992 updates with BDOS 6.7 only) also support this (including drive letter L:). Under the later systems, the 4DOS/NDOS command processor supports this features as well.[4] Floating drives are implemented in the BDOS kernel, not in the command line shell, thus this feature can also be used from within DOS applications when entering directory paths for as long as the application does not parse and split the dirspec for further processing.
Using a similar feature, Concurrent DOS, Multiuser DOS, System Manager and REAL/32 will dynamically assign a floating drive L: to the load path of a loaded application, thereby allowing applications to refer to files residing in their load directory under a standardized drive letter instead of under a fixed absolute path. This load drive feature makes it much easier to move software installations on and across disks without having to adapt paths to overlays, configuration files or user data stored in the load directory or subsequent directories. (For similar reasons, the appendage to the environment block associated with loaded applications under MS-DOS/PC DOS 3.0 (and higher) contains a reference to the load path of the executable, however, this consumes more resident memory, and to take advantage of it, support for it must be coded into the executable, whereas DRI's solutions transparently works with any kind of application.)
Another feature resulting from the BDOS' internal organization of current working directories as relative links to parent directories is the theoretically unlimited directory depth supported by all those above mentioned operating systems – in contrast to MS-DOS/PC DOS (and DR DOS since 1992), where an MS-DOS compatible internal data structure named Current Directory Structure (CDS) limits directory depths to a maximum of 66 characters.
These features can be attributed to the fact that CP/M itself did not have a concept of subdirectories, and DOS was emulated under these operating systems, so directories had to be translated to internal CP/M structures in some intelligent way.
Internal structure
DOS Plus boots from a single file called either DOSPLUS.SYS or NETPLUS.SYS (rather than the IO.SYS / MSDOS.SYS combination of MS-DOS). This file is in the CP/M-86 CMD format, and is structured internally as a number of modules:
- The BDOS basic disk operating system kernel, which handles multitasking and implements the CP/M API.
- The XIOS extended input/output system, which is the machine-dependent component that performs low-level disc and character I/O.
- In the case of NETPLUS.SYS with DR Net support.
- The DOS emulator (internally named PCMODE), which converts each MS-DOS function call into one or more CP/M calls. In the case of a request to change the current directory, for example, this would translate to a series of 'open directory' calls, one for each directory in the provided path.
- A stub which loads COMMAND.COM (or DOSPLUS.COM) when required. This stub contains the string "OS=CPCDOS",[5][6] suggesting that it is based on the Concurrent PC DOS codebase.
Computers that used DOS Plus
DOS Plus was the main operating system in ROM for the Philips :YES, for which it was originally developed.[1][nb 1] PC compatible versions were supplied with the Amstrad PC1512[1] and the Jasmin Turbo from the French company T.R.A.N. S.A.[7][8] The non-IBM PC compatible BBC Master 512,[9] came with DOS Plus 1.2, 1.2a or 2.1,[10][11] also in conjunction with Solidisk's PC Plus memory expansion.[10][11] There were DOS Plus 2.1e/g adaptations for the Apricot ACT series' non-standard 315 KB and 720 KB FAT12 floppy formats. The logical sectored FAT hard disk format (partition type 0xF2) of Sperry IT PCs, and the 80186 co-processor boards for the Acorn Archimedes A300 and A310 as well as Acorn 286 prototypes were supported as well.
Versions
Known operating system versions include:
- DOS Plus 1.0 (ROMed in Philips :YES) (with BDOS 4.1).[nb 1]
- DOS Plus 1.1[12] (with BDOS 4.1)
- DOS Plus 1.2 (with BDOS 4.1)
- DOS Plus 2.1 (with BDOS 5.0)[9]
See also
- Personal CP/M-86 2.0 (with BDOS 4.1)
- Personal CP/M-86 2.11 (with BDOS 4.1)
- CP/M-86 Plus
- MSX-DOS
- GEMDOS
- GEM XM
Notes
- This version does not implement the S_OSVER call and thus cannot be queried for its actual version number.
References
- Wein, Josef "Joe" (2010-02-19) [November 2009]. Johnson, Herbert R. (ed.). "DRI History and Joe Wein". Archived from the original on 2017-01-17. Retrieved 2017-01-17.
- Kotulla, Martin (November 1987). "Von CP/M zu MS-DOS, Teil 11" (PDF). Professional Computing (PC) - Schneider International (in German). 3 (11): 100–103. Archived (PDF) from the original on 2019-04-24. Retrieved 2018-05-20.
- Paul, Matthias R. (2002-03-26). "Updated CLS posted". freedos-dev mailing list. Archived from the original on 2018-10-04. Retrieved 2014-08-06.
- Brothers, Hardin; Rawson, Tom; Conn, Rex C.; Paul, Matthias R.; Dye, Charles E.; Georgiev, Luchezar I. (2002-02-27). 4DOS 8.00 online help.
- Paul, Matthias R. (2002-02-20). "How to detect FreeCOM/FreeDOS in-batch?". freedos-dev mailing list. Archived from the original on 2014-08-12. Retrieved 2014-08-06.
- Paul, Matthias R. (1997-07-30) [1994-05-01]. "NWDOS-TIPs — Tips & Tricks rund um Novell DOS 7, mit Blick auf undokumentierte Details, Bugs und Workarounds". MPDOSTIP. Release 157 (in German) (3 ed.). Archived from the original on 2016-11-04. Retrieved 2014-08-06. (NB. NWDOSTIP.TXT is a comprehensive work on Novell DOS 7 and OpenDOS 7.01, including the description of many undocumented features and internals. It is part of the author's yet larger
MPDOSTIP.ZIP
collection maintained up to 2001 and distributed on many sites at the time. The provided link points to a HTML-converted older version of theNWDOSTIP.TXT
file.) - Written at La Valette-du-Var, France. "Les compatibles PC professionneles et télématiques les plus vendus: les Jasmins Turbo HQ de TRAN". Micro Systèmes (Advertisement) (in French). No. 72. Paris, France: Société Parisienne d'Édition. February 1987. pp. 12–13. ISSN 0183-5084. Archived from the original on 2020-02-17. Retrieved 2020-02-17.
[…] Jasmin Turbo […] les systèmes d'exploitation DOS PLUS et GEM de D.R.I. avec le guide et les licences officielles […] Systèmes d'exploitation J'ai apprécié le choix du système d'exploitation DOS PLUS de Digital Research Inc., pour sa double compatibilité avec le système MS-DOS 2.11 et CP/M-86. Vive les transferts de fichiers entre les deux standards. Le système d'exploitation d'environnement graphique G.E.M. […] de DRI est livré avec, ce qui permet à JASMIN TURBO d'utiliser toute application écrite sous GEM, disponible sur le marché. Par exemple, le GEM-DESKTOP (pour BUREAU) permet d'utiliser le JASMIN TURBO avec des Icônes comme un Macintosh. […]
- Halbra, Yves (October 1987). "GRAPHISTE … et le Jasmin HQ-20 dessine - Le PC voit rouge vert, bleu …". Tilt. Compatibles PC (in French). No. 6. Paris, France: Editions Mondiales S.A.. pp. 32, 34, 52–53, 142–143, 173. ISSN 0753-6968. Archived from the original on 2020-02-17. Retrieved 2020-02-17.
[…] Système d'exploitation: DOS-Plus et MS-DOS 2.11. […]
- Burton, Robin (September 1989). "Introduction - Purpose and Scope". Written at Leicestershire, UK. Master 512 Technical Guide. Prestwich, Manchester, UK: Dabs Press. Archived from the original on 2008-12-04. Retrieved 2018-05-09.
[…] We are unable to reproduce the source code for any of the versions of DOS Plus as used by the 512. The material is the property and copyright of Digital Research, not of Acorn Computers. This is further complicated by the fact that four different versions have actually been issued. […] There have been several versions of DOS Plus for the 512, version 2.1 being the latest issue. […]
- "The BBC Master 512 - DOS-Plus and GEM System Software". Yellow Pig's BBC Computer Pages. Archived from the original on 2018-05-20. Retrieved 2018-05-20.
- Snee, Chris (1989-03-05). "Chapter 6. Permanent commands". Master 512 User Guide. Dabs Press. ISBN 1870336143. Archived from the original on 2018-05-20. Retrieved 2018-05-20.
- :Yes product management (1985). README file for :YES Release 2 - DOS Plus 1.1 maintenance version (README.DOS file on maintenance disk). Philips Austria.
This file contains additional information on the use of DOS Plus 1.1 on the :YES Rel 1 and :YES Rel 2.
Further reading
- Gilmour, Jean (1986). Amstrad Personal Computer PC1512 User Instructions.
- Morris, Stephen (1986). Using DOS Plus on the Amstrad PC. Digital Research books. Glentop Publishers Ltd. ISBN 1-85181-063-3.