INT E0 - CP/M-86One of the three operating systems offered by IBMInternational Busiuness Machines for its original PCIBM PC (the other two were MSDOS and the UCSD p-System).  It has since evolved into DR-DOS version 6 and Novell DOS 7., Concurrent CP/M(Control Program for Microcomputers) An early operating system for micros based on the 8-bit Intel 8080 CPU (and later the compatible 8085 and Zilog Z80 CPUs).  MSDOS version 1.0 was essentially a clone of CP/M for the Intel 8086., DR Multiuser DOS - FUNCTION CALLS
	CL = function number (see #04019,#04020)
	DS,DX contain parameter(s):
		DL = byte parameter
		DX = word parameter
		DS:DX -> structure
Return: as appropriate for function:
		AL = byte result
		AX = word
		ES:AX -> structure (and BX=ES)
	CX is often the error code (see #04021)
Notes:	several functions are covered in more detail in following entries
	most of these calls are also supported by Digital Research's DOS Plus
	  v2.1; the unsupported functions are 26h,29h-2Bh,3Ah,3Dh-62h,71h-8Ch,
	  90h-92h,94h-97h,9Bh-ABh, and AEh-FFh
SeeAlso: INT 21/AX=4459h,INT 21/AH=E0h"DOS Plus",INT E6"CP/M-86One of the three operating systems offered by IBMInternational Busiuness Machines for its original PCIBM PC (the other two were MSDOS and the UCSD p-System).  It has since evolved into DR-DOS version 6 and Novell DOS 7."


(Table 04019)
Values for CP/M-86One of the three operating systems offered by IBMInternational Busiuness Machines for its original PCIBM PC (the other two were MSDOS and the UCSD p-System).  It has since evolved into DR-DOS version 6 and Novell DOS 7.,DR Multiuser DOS function number:
 00h	terminate calling process			(see INT E0/CL=00h)
 01h	read a character				(see INT E0/CL=01h)
 02h	write character to default console		(see INT E0/CL=02h)
 03h	read character from default AUX			(see INT E0/CL=03h)
 04h	write character to default AUX			(see INT E0/CL=04h)
 05h	write character to default list device		(see INT E0/CL=05h)
 06h	perform raw I/O on default console		(see INT E0/CL=06h)
 07h	return default AUX input status			(see INT E0/CL=07h)
 08h	return default AUX output status		(see INT E0/CL=08h)
 09h	write string to default console			(see INT E0/CL=09h)
 0Ah	read string from default console		(see INT E0/CL=0Ah)
 0Bh	return default console input status		(see INT E0/CL=0Bh)
 0Ch	get BDOS release ID				(see INT E0/CL=0Ch)
 0Dh	reset all disk drives		(see also INT 21/AH=0Dh)
 0Eh	set default drive		(see also INT 21/AH=0Eh"DOS 1+")
 0Fh	open file via FCBsee File Control Block		(see also INT 21/AH=0Fh,#01345)
 10h	close file via FCBsee File Control Block		(see also INT 21/AH=10h)
 11h	search for first matching file with FCBsee File Control Block (see also INT 21/AH=11h)
 12h	search for next matching file with FCBsee File Control Block (see also INT 21/AH=12h)
 13h	delete file via FCBsee File Control Block		(see also INT 21/AH=13h)
 14h	sequential read via FCBsee File Control Block		(see also INT 21/AH=14h)
 15h	sequential write via FCBsee File Control Block	(see also INT 21/AH=15h)
 16h	create file via FCBsee File Control Block		(see also INT 21/AH=16h)
 17h	rename file via FCBsee File Control Block		(see also INT 21/AH=17h)
 18h	get bit map of logged drives
 19h	get default drive		(see also INT 21/AH=19h)
 1Ah	set DMAsee Direct Memory Access address offset
 1Bh	get default disk allocation vector (see also INT 21/AH=1Bh)
 1Ch	set default drive to read-only
 1Dh	get bit map of read-only drives
 1Eh	set file attributes via FCBsee File Control Block	(see also INT 21/AX=4301h)
 1Fh	get address of disk parameter block (see also INT 21/AH=1Fh)
 20h	get/set default user number
 21h	read random record via FCBsee File Control Block	(see also INT 21/AH=21h)
 22h	write random record via FCBsee File Control Block	(see also INT 21/AH=22h)
 23h	compute file size with FCBsee File Control Block	(see also INT 21/AH=23h)
 24h	get FCBsee File Control Block random record number	(see also INT 21/AH=24h)
 25h	reset specified drives
 26h	access specified drives (not in DR DOS Plus v2.1)
 27h	free specified drives
 28h	write random with FCBsee File Control Block, zero fill (see also INT 21/AH=28h)
 2Ah	lock records in FCBsee File Control Block file	(see also INT 21/AH=5Ch)
 2Bh	unlock records in FCBsee File Control Block file	(see also INT 21/AH=5Ch)
 2Ch	set BDOS multisector count
 2Dh	set BDOS error mode
 2Eh	get free space on disk
 2Fh	load, initialize, and jump to process ("chain process")
	(see INT E0/CL=2Fh,INT 21/AH=4Bh)
 30h	flush write-deferred buffers
 31h	get/set system variable (DOS Plus v2.1)
 32h	call BIOS(Basic Input/Output System) A set of standardized calls giving low-level access to the hardware.  The BIOS is the lowest software layer above the actual hardware and serves to insulate programs (and operating systems) which use it from the details of accessing the hardware directly. (XIOS) character routine (see #04020)
 33h	set DMAsee Direct Memory Access address segment
 34h	get DMAsee Direct Memory Access buffer address
 35h	CP/M-86One of the three operating systems offered by IBMInternational Busiuness Machines for its original PCIBM PC (the other two were MSDOS and the UCSD p-System).  It has since evolved into DR-DOS version 6 and Novell DOS 7. allocate maximum memory			(see INT E0/CL=35h)
 36h	allocate maximum memory at specified segment	(see INT E0/CL=36h)
 37h	CP/M-86One of the three operating systems offered by IBMInternational Busiuness Machines for its original PCIBM PC (the other two were MSDOS and the UCSD p-System).  It has since evolved into DR-DOS version 6 and Novell DOS 7. allocate memory segment (see INT E0/CL=37h,INT 21/AH=48h)
 38h	allocate memory at specified segment		(see INT E0/CL=38h)
 39h	CP/M-86One of the three operating systems offered by IBMInternational Busiuness Machines for its original PCIBM PC (the other two were MSDOS and the UCSD p-System).  It has since evolved into DR-DOS version 6 and Novell DOS 7. free specified memory segment (see INT E0/CL=39h,INT 21/AH=49h)
 3Ah	CP/M-86One of the three operating systems offered by IBMInternational Busiuness Machines for its original PCIBM PC (the other two were MSDOS and the UCSD p-System).  It has since evolved into DR-DOS version 6 and Novell DOS 7. free all memory (not in DOS Plus v2.1)	(see INT E0/CL=3Ah)
 3Bh	load .CMD file into memory			(see INT E0/CL=3Bh)
 3Ch	(DOS Plus v2.1) call RSX program
 40h	(DR-NET, REAL/32) log on a server		(see INT E0/CL=40h)
 41h	(DR-NET, REAL/32) log off a server		(see INT E0/CL=41h)
 42h	(DR-NET) send a message
 43h	(DR-NET) receive a message
 44h	(DR-NET, REAL/32) get network status		(see INT E0/CL=44h)
 45h	(DR-NET, REAL/32) get requestor config table	(see INT E0/CL=45h)
 46h	(DR-NET) set compatibility attributes
 47h	(DR-NET, REAL/32) get server configuration table (see INT E0/CL=47h)
 48h	(DR-NET, REAL/32) set network error mode	(see INT E0/CL=48h)
 49h	(DR-NET, REAL/32) attach network
 4Ah	(DR-NET, REAL/32) detach network
 4Bh	(DR-NET, REAL/32) set default password
 4Ch	(DR-NET, REAL/32) get-set long timeout
 4Dh	(DR-NET, REAL/32) get parameter table
 4Fh	(REAL/32) get extended network error
 50h	(DR-NET, REAL/32) get network information
 53h	get current time			(see also INT 21/AH=2Ch)
 54h	set current time			(see also INT 21/AH=2Dh)
 55h	get binary system date			(see also INT 21/AH=2Ah)
 56h	set system date				(see also INT 21/AH=2Bh"DATE")
 57h	allocate system flag
 58h	deallocate system flag
 59h	reserve memory in global area			(see INT E0/CL=59h)
 5Ah	lock physical drive
 5Bh	unlock physical drive
 5Ch	search path for executable file			(see INT E0/CL=5Ch)
 5Dh	load and execute command			(see INT E0/CL=5Dh)
 5Eh	get/set process exit code			(see INT E0/CL=5Eh)
 5Fh	set country information
 60h	get country information
 63h	truncate FCBsee File Control Block file (see also INT 21/AH=28h)
 64h	create/update directory label
 65h	get directory label
 66h	get FCBsee File Control Block date stamp and password mode
 67h	write extended FCBsee File Control Block
 68h	set system date and time
 69h	get system date and time in binary
 6Ah	establish password for file access
 6Bh	get OS serial number				(see INT E0/CL=6Bh)
 6Ch	(DOS Plus v2.1) get/set program return code
 6Dh	get/set console mode				(see INT E0/CL=6Dh)
 6Eh	get/set string delimiter			(see INT E0/CL=6Eh)
 6Fh	write block to default console			(see INT E0/CL=6Fh)
 70h	write block to default list device		(see INT E0/CL=70h)
 71h	execute DOS-compatible function			(see INT E0/CL=71h)
 74h	set FCBsee File Control Block time and date stamps
 80h	allocate memory					(see INT E0/CL=80h)
 82h	deallocate memory				(see INT E0/CL=81h)
 83h	poll I/O device
 84h	wait on system flag				(see INT E0/CL=84h)
 85h	set system flag					(see INT E0/CL=85h)
 86h	create message queue				(see INT E0/CL=86h)
 87h	open message queue				(see INT E0/CL=87h)
 88h	delete message queue				(see INT E0/CL=88h)
 89h	read from message queue				(see INT E0/CL=89h)
 8Ah	conditionally read from message queue		(see INT E0/CL=8Ah)
 8Bh	write to message queue				(see INT E0/CL=8Bh)
 8Ch	conditionally write to message queue		(see INT E0/CL=8Ch)
 8Dh	delay calling process				(see INT E0/CL=8Dh)
 8Eh	call process dispatcher (yield CPU(Central Processing Unit) The microprocessor which executes programs on your computer.)		(see INT E0/CL=8Eh)
 8Fh	terminate calling process (same as func 00h)	(see INT E0/CL=8Fh)
 90h	create a process				(see INT E0/CL=90h)
 91h	set calling process' priority			(see INT E0/CL=91h)
 92h	attach to default console			(see INT E0/CL=92h)
 93h	detach from default console			(see INT E0/CL=93h)
 94h	(REAL/32) set the process' default console	(see INT E0/CL=94h)
 95h	assign default console to process		(see INT E0/CL=95h)
 96h	interpret and execute commandline		(see INT E0/CL=96h)
 97h	resident procedure library
 98h	parse ASCII string into FCBsee File Control Block (see also INT 21/AH=29h)
 99h	return default console				(see INT E0/CL=99h)
 9Ah	get address of system data (SYSDAT)		(see INT E0/CL=9Ah)
 9Bh	get system time and date
 9Ch	return calling process' descriptor		(see INT E0/CL=9Ch)
 9Dh	terminate process by name or PD address		(see INT E0/CL=9Dh)
 9Eh	attach to default list device			(see INT E0/CL=9Eh)
 9Fh	detach from default list device			(see INT E0/CL=9Fh)
 A0h	select default list device			(see INT E0/CL=A0h)
 A1h	conditionally attach to default list device	(see INT E0/CL=A1h)
 A2h	conditionally attach to default console		(see INT E0/CL=A2h)
 A3h	get OS version number				(see INT E0/CL=A3h)
 A4h	get default list device				(see INT E0/CL=A4h)
 A5h	attach to default AUX				(see INT E0/CL=A5h)
 A6h	detach from default AUX				(see INT E0/CL=A6h)
 A7h	conditionally attach to default AUX		(see INT E0/CL=A7h)
 A8h	set default AUX					(see INT E0/CL=A8h)
 A9h	return default AUX				(see INT E0/CL=A9h)
 ACh	read block from default AUX			(see INT E0/CL=ACh)
 ADh	(DOS Plus v2.1) write block to default AUX	(see INT E0/CL=ADh)
 B0h	configure default AUX				(see INT E0/CL=B0h)
 B1h	get/set device control parameters		(see INT E0/CL=B1h)
 B2h	send Break through default AUX			(see INT E0/CL=B2h)
 B3h	allocate physical memory			(see INT E0/CL=B3h)
 B4h	free physical memory				(see INT E0/CL=B4h)
 B5h	map physical memory				(see INT E0/CL=B5h)
 B6h	nondestructive conditional message queue read	(see INT E0/CL=B6h)
 B7h	timed wait on system flag			(see INT E0/CL=B7h)
 B8h	get/set I/O port mapping			(see INT E0/CL=B8h)
 B9h	set list device timeout				(see INT E0/CL=B9h)
 BAh	set AUX timeout value				(see INT E0/CL=BAh)
 BBh	execute XIOS service
 BDh	(DR Multiuser DOS) delay			(see INT E0/CL=BDh)
 FFh	return 80386 to native mode
SeeAlso: #04020,#04021


(Table 04020)
Values for DOS Plus v2.1 XIOS functions:
 00h	terminate program
 01h	???
 02h	check for console input status
 03h	read character from console
 04h	write character to console
 05h	write character to list device
 06h	write character to auxiliary device
 07h	read character from auxiliary device
 0Fh	get list device status
 10h-14h reserved
 15h	device initialization
 16h	check console output status
 17h-7Fh reserved
---BBC Acorn---
 80h	get XIOS version
 81h	get Tube semaphore
 82h	release Tube semaphore
 83h	select text/graphics
 84h	update B&W graphics rectangle
 85h	update color graphics rectangle
 86h	get/release/update mouse
 87h	get system error info
 88h	entry in CLOCK called by WatchDog RSP
 89h	BBC OSBYTE function
 8Ah	BBC OSWORD function
SeeAlso: #04019


(Table 04021)
Values for DR Multiuser DOS Error Return Code:
 00h	no error
 01h	system call not implemented
 02h	illegal system call number
 03h	cannot find memory
 04h	illegal flag number
 05h	flag overrun
 06h	flag underrun
 07h	no unused Queue Descriptors
 08h	no free queue buffer
 09h	cannot find queue
 0Ah	queue in use
 0Ch	no free Process Descriptors
 0Dh	no queue access
 0Eh	empty queue
 0Fh	full queue
 10h	CLI queue missing
 11h	no 8087 in system
 12h	no unused Memory Descriptors
 13h	illegal console number
 14h	no Process Descriptor match
 15h	no console match
 16h	no CLI process
 17h	illegal disk number
 18h	illegal filename
 19h	illegal filetype
 1Ah	character not ready
 1Bh	illegal Memory Descriptor
 1Ch	bad return from BDOS load
 1Dh	bad return from BDOS read
 1Eh	bad return from BDOS open
 1Fh	null command
 20h	not owner of resource
 21h	no CSEG in load file
 22h	process Descriptor exists on Thread Root
 23h	could not terminate process
 24h	cannot attach to process
 25h	illegal list device number
 26h	illegal password
 28h	external termination occurred
 29h	fixup error upon load
 2Ah	flag set ignored
 2Bh	illegal auxilliary device number
SeeAlso: #04019