Files
Digital-Research-Source-Code/MPM OPERATING SYSTEMS/MPM-86/MISC DRI DISKS/22/MPMSEM1.TEX
Sepp J Morris 31738079c4 Upload
Digital Research
2020-11-06 18:50:37 +01:00

306 lines
8.9 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.

.mt 6
.mb 6
.pl 66
.ll 65
.po 10
.nf
.hm 2
.fm 2
.he ********** MP/M-86 Seminar Notes **********
.fô Alì Informatioî Hereiî ió Proprietarù Tï Digitaì Research¬ Inc.
.nf
.bp 1
.sp 2
.ce
.sh
C O N T E N T S
.ce
.sh
===============
.sp 2
o MP/M-86 Overview
o MP/M-86 Plug Compatible Modules
o MP/M-86 Memory Layout
o Common Module Interfaces
o Sysdat Data Area (SYSDAT)
o SUP
o MP/M-86 Table Driven Functions
o CLI Command
o Program Chain
o Parse Filename
o Program Load
o Call Resident Procedure Library
o RTM
o Queues
o Process Descriptor
o Parent-Child Relationship
o MEM
o Program Interface
o Extended Fixed Partitions
o MAU
o Shared Memory, Shared Code
o CIO
o Raw console mode
o RSP's
o Memory Models
o Multiple Copies
o TMP
o Functional Description
o LOGIN, Autoload, User Protection
o Run Time Systems
o XIOS
o INIT
o ENTRY
o Polled I/O
o Flag Set/Wait
o Interrupt handlers
o Console, List Device functions
o Memory functions
o Real Time, Clock functions
o Disk functions
o GENSYS
o MPMLDR
o LDRBIOS
o XIOS Debugging
o Memory Layout
o MP/M-86 under CP/M-86 using DDT-86
o MP/M-86 under MP/M-86
o Interrupts
o Appendices
o XIOS listing
o TMP listing
o ECHO listing
o CLOCK listing
.pa
.ce 100
.sp 5
.sh
M P / M - 8 6 O V E R V I E W
.sh
===============================
.sp 2
+-------+ +-----------+ +--------+ \
| | | | | | \
USER --> | TMP | --> | MP/M-86 | --> | XIOS | --> HARDWARE\
| | | | | | \
+-------+ +-----------+ +--------+ \
.sp 8
.sh
MP/M-86 "Plug-Compatible" Modules
.sh
---------------------------------
.sp 2
+-------+ +--------+ +--------+\
| | <--> | RTM | <--> | |\
| | +--------+ | |\
| | | |\
| | +--------+ | |\
| | <--> | MEM | <--> | |\
| | +--------+ | |\
| SUP | | XIOS |\
| | +--------+ | |\
| | <--> | CIO | <--> | |\
| | +--------+ | |\
| | | |\
| | +--------+ | |\
| | <--> | BDOS | <--> | |\
+-------+ +--------+ +--------+\
.ce 0
.pa
.sp 2
.ce 100
.sh
MP/M-86 Memory Layout
.sh
---------------------
.sp 2
+-------------------+ HIGH \
| | \
/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/ \
/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/ \
| | \
| TPA | \
| | \
+---+---------------+ \
| | | \
| | RSP's | \
| | | \
+ |---------------+ \
| O | Table | | \
| p |-----------| | \
| e | XIOS | | \
| r |-----------| D | \
| a | BDOS | | \
| t |-----------| A | \
| i | MEM | | \
| n |-----------| T | \
| g | RTM | | \
| |-----------| A | \
| S | SUP | | \
| y |-----------| | \
| s | SYSDAT | | \
+ t |-----------+---+ \
| e | XIOS | | \
| m |-----------| | \
| | BDOS | C | \
| A |-----------| | \
| r | CIO | O | \
| e |-----------| | \
| a | MEM | D | \
| |-----------| | \
| | RTM | E | \
| |-----------| | \
| | SUP | | \
+---+---------------+ \
| | \
| TPA | \
| | \
/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/ \
/\\/\\/\\/\\/\\/\\/\\/\\/\\/\\/ \
| | \
+-------------------+ \
| Interrupt Vectors | \
+-------------------+ LOW \
.ce 0
.pa
.sp 2
.ce 2
.sh
MP/M-86 Module Interface
.sh
------------------------
.sp 5
CSEG
ORG 0
JMP INIT ; Initialization Routine
JMP ENTRY ; Module Entry Point
SYSDAT RW 1 ; Sysdat Segment Address
SUPERVISOR RW 2 ; Far Address to Supervisor Entry Point
INIT: ; Initialization Code
.
.
.
RETF
ENTRY: ; Intermodule Entry Point
.
.
.
RETF
.pa
.sp 2
.ce 2
.sh
MP/M-86 System Data Area (SYSDAT)
.sh
---------------------------------
.sp
.ce 100
+------+------+------+------+------+------+------+------+\
00 | SUP Entry | SUP Init |\
+------+------+------+------+------+------+------+------+\
08 | RTM Entry | RTM Init |\
+------+------+------+------+------+------+------+------+\
10 | MEM Entry | MEM Init |\
+------+------+------+------+------+------+------+------+\
18 | CIO Entry | CIO Init |\
+------+------+------+------+------+------+------+------+\
20 | BDOS Entry | BDOS Init |\
+------+------+------+------+------+------+------+------+\
28 | XIOS Entry | XIOS Init |\
+------+------+------+------+------+------+------+------+\
30 | NETWORK Entry | NETWORK Init |\
+------+------+------+------+------+------+------+------+\
38 | DISPATCHER | PDISP |\
+------+------+------+------+------+------+------+------+\
40 | MPMSEG | RSPSEG | ENDSEG | MOD- | NCNS |\
| | | | MAP | |\
+------+------+------+------+------+------+------+------+\
48 | NLST | NCCB | NUM- |SYS- | MMP | RES- | DAY |\
| | | FLAGS| DRIVE| | ERVED| FILE |\
+------+------+------+------+------+------+------+------+\
50 | TEMP | TICKS| FREE-ROOT | CCB | FLAGS |\
| DISK | /SEC |LOCKED-UNUSED| | |\
+------+------+------+------+------+------+------+------+\
58 | MDUL | MFL | PUL | QUL |\
+------+------+------+------+------+------+------+------+\
60 | QMAU |\
+------+------+------+------+------+------+------+------+\
68 | RLR | DLR | DRL | PLR |\
+------+------+------+------+------+------+------+------+\
70 | RESERVED | THRDRT | QLR | MAL |\
+------+------+------+------+------+------+------+------+\
78 | VERSION | VERNUM | MPM VERNUM | TOD-DAY |\
+------+------+------+------+------+------+------+------+\
80 | TOD- | TOD- | TOD- | NCON-| NLST-| NCIO-| RESERVED |\
| HR | MIN | SEC | DEV | DEV | DEV | |\
+------+------+------+------+------+------+------+------+\
88 | RESERVED | LOCK-MAX | OPEN-MAX | RESERVED |\
+------+------+------+------+------+------+------+------+\
90 | RESERVED |\
+------+------+------+------+------+------+------+------+\
98 | RESERVED |\
+------+------+------+------+------+------+------+------+\
A0 | FUNCTION TABLE |\
| |\
+------+------+------+------+------+------+------+------+\
.ce 0
.pa
.sp 2
.ce 2
.sh
MP/M-86 Supervisor Module (SUP)
.sh
===============================
.sp 2
o Maps user functions into module functions
o Contains non-kernel functions
o Supports the network interface
o Intermodule function interface
o Initialization
o User Program Interface
o Contains non-kernel functions (do not use resources directly)
o Command Line Interpreter (CLI)
o Program Chain
o Parse Filename
o Program Load
o Call Resident Procedure Library
o Version functions
o Call BIOS function
o Get Sysdat Address
o Get TOD Address
o Return Serial Number