Files
Digital-Research-Source-Code/MPM OPERATING SYSTEMS/MPM I/MPM I SOURCE/15/mpmuga-f.tex
Sepp J Morris 31738079c4 Upload
Digital Research
2020-11-06 18:50:37 +01:00

235 lines
8.4 KiB
TeX
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

.MB +5
.MT -3
.LL 65
.PN 116
.HE MP/M User's Guide
.FT (All Information Herein is Proprietary to Digital Research.)
.sp 2
.ce
APPENDIX A: Flag Assignments
.LI
+----+
| 0 | Reserved
+----+
| 1 | System time unit tick
+----+
| 2 | One second interval
+----+
| 3 | One minute interval
+----+
| 4 | Undefined
| | Undefined
+----+
| 31 | Undefined
+----+
.AD
.bp
.sp 2
.ce
APPENDIX B: Process Priority Assignments
.LI
0 - 31 : Interrupt handlers
32 - 63 : System processes
64 - 197 : Undefined
198 : Teminal message processes
199 : Command line interpreter
200 : Default user priority
201 - 254 : User processes
255 : Idle process
.AD
.bp
.sp 2
.ce
APPENDIX C: BDOS Function Summary
.sp 2
.li
FUNC FUNCTION NAME INPUT PARAMETERS OUTPUT RESULTS
---- --------------------- ---------------- --------------
0 System Reset none none
1 Console Input none A = char
2 Console Output E = char none
3 Raw Console Input none A = char
4 Raw Console Output E = char none
5 List Output E = char none
6 Direct Console I/O see def see def
7 ** Not supported **
8 ** Not supported **
9 Print String DE = .Buffer none
10 Read Console Buffer DE = .Buffer see def
11 Get Console Status none A = 00/01
12 Return Version Number none HL= Version #
13 Reset Disk System none see def
14 Select Disk E = Disk Number see def
15 Open File DE = .FCB A = Dir Code
16 Close File DE = .FCB A = Dir Code
17 Search for First DE = .FCB A = Dir Code
18 Search for Next none A = Dir Code
19 Delete File DE = .FCB A = Dir Code
20 Read Sequential DE = .FCB A = Err Code
21 Write Sequential DE = .FCB A = Err Code
22 Make File DE = .FCB A = Dir Code
23 Rename File DE = .FCB A = Dir Code
24 Return Login Vector none HL= Login Vect*
25 Return Current Disk none A = Cur Disk#
26 Set DMA Address DE = .DMA none
27 Get Addr(Alloc) none HL= .Alloc
28 Write Protect Disk none see def
29 Get R/O Vector none HL= R/O Vect*
30 Set File Attributes DE = .FCB see def
31 Get Addr(disk parms) none HL= .DPB
32 Set/Get User Code see def see def
33 Read Random DE = .FCB A = Err Code
34 Write Random DE = .FCB A = Err Code
35 Compute File Size DE = .FCB r0, r1, r2
36 Set Random Record DE = .FCB r0, r1, r2
37 Reset Drive DE = drive vctr A = Err Code
38 Access Drive DE = drive vctr none
39 Free Drive DE = drive vctr none
40 Write Random zerofill DE = .FCB A = Err Code
.sp 2
* Note that A = L, and B = H upon return
.bp
.sp 2
.ce
APPENDIX D: XDOS Function Summary
.sp 3
.li
FUNC FUNCTION NAME INPUT PARAMETERS OUTPUT RESULTS
---- --------------------- ---------------- --------------
128 Absolute Memory Rqst DE = .MD A = err code
129 Relocatable Mem Rqst DE = .MD A = err code
130 Memory Free DE = .MD none
131 Poll E = Device none
132 Flag Wait E = Flag A = err code
133 Flag Set E = Flag A = err code
134 Make Queue DE = .QCB none
135 Open Queue DE = .UQCB A = err code
136 Delete Queue DE = .QCB A = err code
137 Read Queue DE = .UQCB none
138 Conditional Read Que DE = .UQCB A = err code
139 Write Queue DE = .UQCB none
140 Conditional Write Que DE = .UQCB A = err code
141 Delay DE = #ticks none
142 Dispatch none none
143 Terminate Process E = Term. code none
144 Create Process DE = .PD none
145 Set Priority E = Priority none
146 Attach Console none none
147 Detach Console none none
148 Set Console E = Console none
149 Assign Console DE = .APB A = err code
150 Send CLI Command DE = .CLICMD none
151 Call Resident Sys Pr DE = .CPB HL = result
152 Parse Filename DE = .PFCB see def
153 Get Console Number none A = console #
154 System Data Address none HL = sys data adr
155 Get Date and Time DE = .TOD none
156 Return Proc. Dsc. Adr none HL = proc descr adr
157 Abort Spec. Process DE = .ABTPB A = err code
.ad
.sp
.bp
.sp 2
.ce
APPENDIX E: Memory Segment Base Page Reserved Locations
.sp
.pp
Each memory segment base page, between locations 00H and 0FFH, contains
code and data which are used during MP/M
processing. The code and data areas are given below for reference purposes.
.sp
.in 4
Locations Contents
.br
from to
.in 22
.ti 4
0000H - 0002H Contains a jump instruction to XDOS which terminates
the process. This allows simple process termination by executing a
JMP 0000H.
.sp
.ti 4
0005H - 0007H Contains a jump instruction to the BDOS & XDOS, and serves
two purposes: JMP 0005H provides the primary entry point to the
BDOS & XDOS, and LHLD
0006H brings the address field of the instruction to the HL register
pair. This value is the top of the memory segment in which the
program is executing. Note that the DDT program
will change the address field to reflect the reduced memory size in
debug mode.
.sp
.ti 4
0008H - 003AH (interrupt locations 1 through 7 not used)
However, one restart must be selected for use by the debugger and
specified during system generation.
.sp
.ti 4
003BH - 003FH (not currently used - reserved)
.sp
.ti 4
0040H - 004FH 16 byte area reserved for scratch, but is
not used for any purpose in the distribution version of MP/M
.sp
.ti 4
0050H - 005BH (not currently used - reserved)
.sp
.ti 4
005CH - 007CH default file control block produced for a transient
program by the command line interpreter.
.sp
.ti 4
007DH - 007FH Optional default random record position
.sp
.ti 4
0080H - 00FFH default 128 byte disk buffer (also filled with the
command line when a transient is loaded under the CLI).
.qi
.bp
.sp 2
.ce
Appendix F: Operation of MP/M on the Intel MDS-800
.sp 2
.pp
This section gives operating procedures for using MP/M on the Intel
MDS microcomputer development system. A basic knowledge of the MDS
hardware and software systems is assumed.
.pp
MP/M is initiated in essentially the same manner as Intel's ISIS
operating system. The disk drives labelled 0 through 3 on the MDS,
correspond to MP/M drives A through D, respectively. The MP/M
system diskette is inserted into drive 0, and the BOOT and RESET
switches are depressed in sequence. The interrupt 2 light should go
on at this point. The space bar is then depressed on either console
device, and the light should go out. The BOOT switch is then turned
off, and the MP/M sign-on message should appear at both consoles,
followed by the "0A>" for the CRT or "1A>" for the TTY. The user
can then issue MP/M commands.
.pp
Use of the interrupt switches on the front panel is not recommended.
Effective 'warm-starts' should be initiated at the console by
aborting the running program rather than pushing the INT 0 switch.
Also, depending on the choice of restart for the debugger the INT
switch which will invoke the debugger is not necessarily #7.
.pp
Diskettes should not be removed from the drives until the user verifies
that there are no other users with open files on the disk. This can
be done with the 'DSKRESET' command.
.pp
When performing GENSYS operations on the MDS-800, make certain that
a negative response is always made to the Z80 CPU question. Responding
with a 'Y' will lead to unpredictable results.
.br