top - download
⟦fee850849⟧ Wang Wps File
Length: 6548 (0x1994)
Types: Wang Wps File
Notes: FIX/1256/PSP/0073
Names: »3856A «
Derivation
└─⟦3b8d69e90⟧ Bits:30005794 8" Wang WCS Floppy ( A0306A )
└─ ⟦this⟧ »3856A «
WangText
…08……00……00……00……86…1 …02… …02… …02…
3856/rt…02…FIX/1256/PSP/0073
…02…OK 830707…02……02…#
OVERLAY MONITOR PSP
…02……02…FIKS
OVERLAY MONITOR PSP
FIX/1256/PSP/0073
Ove Kaastrup
Carl H]gstedt
AMC (6)
CR (3)
FILE (2)
…0f… FIKS Manager 830707
1
830707
…0e…
3856A/rt FIX/1256/PSP/0073
…02… OK/830707…02……02…i
OVERLAY MONITOR PSP
…02……02… FIKS
830707 All Issue 1 of Document
3856A/rt…02…FIX/1256/PSP/0073
…02…OK/830707…02……02…ii
OVERLAY MONITOR PSP
…02……02…FIKS
T̲A̲B̲L̲E̲ ̲O̲F̲ ̲C̲O̲N̲T̲E̲N̲T̲S̲
1. SCOPE ............................................
01
1.1 INTRODUCTION ...................................
01
1.2 ABBREVIATIONS ..................................
01
2. APPLICABLE DOCUMENTS .............................
01
3. MODULE SPECIFICATIONS ............................
02
3.1 FUNCTIONAL CAPABILITIES ........................
02
3.2 INTERFACE DESCRIPTION ..........................
03
3.3 PROCESSING .....................................
04
3.4 DATA ORGANIZATION ..............................
05
3.5 STORAGE ALLOCATION .............................
05
3.6 PERFORMANCE CHARACTERISTICS ....................
05
3.7 LIMITATIONS ....................................
05
3.8 ERROR CODES/ERROR LOCATIONS ....................
07
1̲ ̲S̲C̲O̲P̲E̲
This document contains a function description and a
product specification of the monitor OVERLAY.
1.1 I̲N̲T̲R̲O̲D̲U̲C̲T̲I̲O̲N̲
In order to minimize the space required for program
data, which in FIKS are located on page 0, some application
programs are handled as overlay programs.
The application program is at compilation/assembly
time divided into a number of separate program parts,
of which only one contains the process area (the main
overlay) of the program.
At system initialization time the main overlay is loaded
as a normal program. When needed, another program part
can be executed by call of the monitor OVERLAY, which
overwrites the current program part by a new program
part taken from a disc file. The process area remains
unchanged.
This method means, that the application program only
occupies a page 0 memory area of a size equal to that
of the biggest overlay program parts.
1.2 A̲B̲B̲R̲E̲V̲I̲A̲T̲I̲O̲N̲S̲
Please refer to ref. I chapt. 1.2
2̲ ̲A̲P̲P̲L̲I̲C̲A̲B̲L̲E̲ ̲D̲O̲C̲U̲M̲E̲N̲T̲S̲
I: FIX/0100/MAN/0004 FIKS DATA INTERFACE REF.
3̲ ̲ ̲M̲O̲D̲U̲L̲E̲ ̲S̲P̲E̲C̲I̲F̲I̲C̲A̲T̲I̲O̲N̲
3.1 F̲U̲N̲C̲T̲I̲O̲N̲A̲L̲ ̲C̲A̲P̲A̲B̲I̲L̲I̲T̲I̲E̲S̲
As the program is a monitor, the calling process must
specify a work area, which can be used by OVERLAY.
The first 42 words of the work area are used to pointers
and header information, ref. Fig. 3.4. The remaining
part is used when copying from disc to program area.
The size of the work area available for OVERLAY is
specified by the caller. The number of disc accesses
used to change an overlay equals the size of the overlay
divided by the size of the work area (- the 42 words
of pointer information).
Further the monitor requires a file description buffer:
The application makes a LOOKUP of the overlay file
and the file descriptor is specified when calling overlay.
After call of MON OVERLAY, the next instruction executed
is the first instruction in the new overlay program.
All registers are destroyed.
3.2 I̲N̲T̲E̲R̲F̲A̲C̲E̲ ̲D̲E̲S̲C̲R̲I̲P̲T̲I̲O̲N̲
REGISTER INPUT OUTPUT
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
̲
RO Size of work area destroyed
R4 FD of overlay file destroyed
R6 Ref. work area destroyed
R7 LINK DESTROYED
All registers are destroyed.
The size of the work area must be at least 50 words.
(ref. chapt. 3.1)
Other restrictions: please refer to chapt. 3.7.…86…1
…02… …02… …02… …02…
3.3 P̲R̲O̲C̲E̲S̲S̲I̲N̲G̲
Main events in the processing are:
1 Clear first 9 words of work area (ref.
FIG. 3.4)
2. Calculate the size of the remaining
part of the work area and use it as
buffer when copying from disc.
3. Buffer list element and file address
are updated (ref. FIG. 3.4)
4. Calculate pointer to top of the program
area to be overwritten by the new overlay
(offset of the calling program + size
of program header).
5. Read part of program into work area.
6. After the first read operation: extract
the length of the program from its header.
7. Copy the program part in the work area
into the program location on page 0
(with disabled interrupts).
8. Update file address and buffer list
element.
9. If the entire program is not yet copied
then go to 5.
10. Dismantle the overlay file.
11. Return to calling process.
3.4 D̲A̲T̲A̲ ̲O̲R̲G̲A̲N̲I̲Z̲A̲T̲I̲O̲N̲
The usage of the work area delivered by the calling
process is specified in fig. 3.4.
3.5 S̲T̲O̲R̲A̲G̲E̲ ̲A̲L̲L̲O̲C̲A̲T̲I̲O̲N̲
Program size: 83 words
Process size: none
3.6 P̲E̲R̲F̲O̲R̲M̲A̲N̲C̲E̲ ̲C̲H̲A̲R̲A̲T̲E̲R̲I̲S̲T̲I̲C̲S̲
N/A
3.7 L̲I̲M̲I̲T̲A̲T̲I̲O̲N̲S̲
When using the OVERLAY monitor the following roules
must be followed:
o The program parts must be non-reentrant (specified
at LINK/ASSEMBLY time)
o The header of the new program overlay must have
a proper format.
o The size of the largest overlay program part must
be specified in the main overlay program (The program
size is specified at LINK/ASSEMBLY time. The size
must be bigger than or equal to that of the largest
overlays)
o Overlay of process areas are not possible. The
process area of the main overlay program remains
in memory.
Figure 3.4…01…WORK AREA
3.8 E̲R̲R̲O̲R̲ ̲C̲O̲D̲E̲S̲/̲E̲R̲R̲O̲R̲ ̲L̲O̲C̲A̲T̲I̲O̲N̲S̲
ERROR LABEL ERROR CODE RAISED BY CALL OF
̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲
̲ ̲
CF 1 IO-ERROR MON IO, READBYTES
CF 2 IO-ERROR MON IO, DISMANTLE