top - download
⟦3f17b791a⟧ Wang Wps File
Length: 30285 (0x764d)
Types: Wang Wps File
Notes: CPS/SDS/041
Names: »1493A «
Derivation
└─⟦7955290a6⟧ Bits:30005803 8" Wang WCS floppy, CR 0106A
└─ ⟦this⟧ »1493A «
WangText
#…06…#…07……0c……05……0b……0b……0b……00……0b…
…0b… …0b……05……0b……06……0b……07……0a……08……0a……09……0a……0c……0a……0f……0a……02……0a……05……0a……06……09……09……09……0b……09……0d……09……01……09…
…09……05……09……06……08……08……08……09……08……0b……08……0c……08……0e……08……86…1
…02…
…02…
…02…
…02…CPS/SDS/041
…02… KS/811201…02……02…
PRINTER
DETAILED
DESIGN
SPECIFICATION…02……02…CAMPS
4.2.1.7 S̲u̲b̲p̲a̲c̲k̲a̲g̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
TBD.
4.2.2 P̲r̲i̲n̲t̲e̲r̲ ̲O̲u̲t̲p̲u̲t̲ ̲S̲u̲b̲p̲a̲c̲k̲a̲g̲e̲
The P̲rinter O̲utp̲ut (PROP) coroutine is performing the
actions in connection with formatting and output of
the test to be printed.
PROP is controlled by the other coroutine (UPCO).
4.2.2.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The following functions are performed by this subpackage
(ref. fig. 4.2.2-1):
UPCO Control Functions
Command Completion and Error Report functions
Format Control
Printout
Fig. 4.2.2-1
4.2.2.1.1 U̲P̲C̲O̲ ̲C̲o̲m̲m̲a̲n̲d̲ ̲E̲x̲e̲c̲u̲t̲i̲o̲n̲ ̲(̲1̲.̲0̲)̲
The UPCO Command Execution functions carry out execution
of the command issued by UPCO.
a) I̲n̲i̲t̲i̲a̲l̲i̲z̲e̲ ̲(̲1̲.̲1̲)̲
The Initialize command is issued for initialization
of PROP's working area, i.e. variables and buffers.
A CC-Report is to be sent to UPCO, ref. sec. 4.2.2.1.2.c.
b) C̲o̲m̲m̲e̲n̲c̲e̲ ̲(̲1̲.̲2̲)̲
Upon receipt of a Commence-CMD, PROP will start
printing the current item.
c) A̲b̲a̲n̲d̲o̲n̲ ̲(̲1̲.̲3̲)̲
The Abandon ̲Print Command will cause the printing
actions to be stopped immediately. All outstanding
I/O requests will be cancelled and the working
area will be cleared.
Completion will be reported to UPCO, ref. sec.
4.2.2.1.2.c.
d) C̲o̲n̲t̲i̲n̲u̲e̲ ̲(̲1̲.̲4̲)̲
The Continue Command causes the printout of the
current item to be continued from a well-defined
point. It is used when the printing actions have
earlier been stopped because of paper out on the
printer.
e) R̲e̲s̲t̲a̲r̲t̲ ̲(̲1̲.̲5̲)̲
The Restart Command will restart printing of a
preempted item from a well-defined point.
f) P̲r̲e̲e̲m̲p̲t̲ ̲(̲1̲.̲6̲)̲
Printout of the current item will be stopped and
status will be stored for later restart. Completion
will be reported to UPCO, ref. sec. 4.2.2.1.2.c.
4.2.2.1.2 C̲o̲m̲m̲a̲n̲d̲ ̲C̲o̲m̲p̲l̲e̲t̲i̲o̲n̲ ̲a̲n̲d̲ ̲E̲r̲r̲o̲r̲ ̲R̲e̲p̲o̲r̲t̲ ̲F̲u̲n̲c̲t̲i̲o̲n̲s̲ ̲(̲2̲.̲0̲)̲
These functions handle the receiption and sending of
completion and error reports.
a) P̲r̲o̲c̲e̲s̲s̲i̲n̲g̲ ̲o̲f̲ ̲I̲O̲C̲ ̲C̲o̲m̲p̲l̲e̲t̲i̲o̲n̲ ̲C̲o̲d̲e̲s̲ ̲(̲2̲.̲1̲)̲
When printout data is sent to IOC in a buffer,
IOC will respond with a Completion Code. The Completion
Code will contain information about eventual printer
errors.
b) S̲e̲n̲d̲ ̲E̲r̲r̲o̲r̲ ̲R̲e̲p̲o̲r̲t̲ ̲t̲o̲ ̲U̲P̲C̲O̲ ̲(̲2̲.̲2̲)̲
Upon detection of an error, a report will be sent
to UPCO.
c) S̲e̲n̲d̲ ̲C̲o̲m̲m̲a̲n̲d̲ ̲C̲o̲m̲p̲l̲e̲t̲i̲o̲n̲ ̲R̲e̲p̲o̲r̲t̲ ̲t̲o̲ ̲U̲P̲C̲O̲ ̲(̲2̲.̲3̲)̲
Completion of some of the UPCO commands is to be
reported back, ref. sec. 4.2.2.1.1.a,c,f.
d) S̲e̲n̲d̲ ̲P̲r̲i̲n̲t̲ ̲C̲o̲m̲p̲l̲e̲t̲e̲ ̲R̲e̲p̲o̲r̲t̲ ̲t̲o̲ ̲U̲P̲C̲O̲ ̲(̲2̲.̲4̲)̲
On completion of item printout, UPCO will be notified.
4.2.2.1.3 F̲o̲r̲m̲a̲t̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲(̲3̲.̲0̲)̲
The Format Control functions are taking care of access
to and input from the P̲rint F̲ormat F̲ile.
a) D̲e̲t̲e̲r̲m̲i̲n̲e̲ ̲F̲o̲r̲m̲a̲t̲ ̲A̲d̲d̲r̲e̲s̲s̲ ̲i̲n̲ ̲P̲F̲F̲ ̲(̲3̲.̲1̲)̲
The Format Descriptor Records pertinent to each
format are stored sequentially in the PFF. This
function determines the start address of the current
format from the PFF-Directory.
b) T̲r̲a̲n̲s̲f̲e̲r̲ ̲D̲a̲t̲a̲ ̲F̲r̲o̲m̲ ̲P̲F̲F̲ ̲t̲o̲ ̲F̲D̲B̲ ̲(̲3̲.̲2̲)̲
Before being processed, the Format Descriptor Records
must be transferred to the F̲ormat D̲escriptor B̲uffer
(FDB), which is a part of PROP's working area.
4.2.2.1.4 P̲r̲i̲n̲t̲o̲u̲t̲ ̲(̲4̲.̲0̲)̲
The printout functions carries out the actual Text-conversion
, -formatting and -output.
a) I̲n̲p̲u̲t̲ ̲D̲a̲t̲a̲ ̲F̲r̲o̲m̲ ̲C̲I̲F̲ ̲(̲4̲.̲1̲)̲
If the current item is stored in a CIF, this function
will take care of transferring data from the CIF
to the Source Buffer.
b) T̲r̲a̲n̲s̲f̲e̲r̲ ̲D̲a̲t̲a̲ ̲F̲r̲o̲m̲ ̲I̲t̲e̲m̲ ̲B̲u̲f̲f̲e̲r̲ ̲(̲4̲.̲2̲)̲
If the current item is contained in a buffer, this
function transfers the data to PRIS's Source Buffer.
c) C̲o̲n̲v̲e̲r̲t̲ ̲D̲a̲t̲a̲ ̲F̲o̲r̲ ̲O̲u̲t̲p̲u̲t̲ ̲(̲4̲.̲3̲)̲
This function is responsible for converting the
data in the FDR and the Source Buffer so that it
can be printed.
d) L̲o̲a̲d̲ ̲C̲o̲n̲v̲e̲r̲t̲e̲d̲ ̲D̲a̲t̲a̲ ̲I̲n̲t̲o̲ ̲O̲u̲t̲p̲u̲t̲ ̲B̲u̲f̲f̲e̲r̲ ̲(̲4̲.̲4̲)̲
When the data has been converted (ref. sec. 4.2.2.1.4-c),
this function loads it into a buffer for Output.
e) L̲o̲a̲d̲ ̲H̲e̲a̲d̲e̲r̲/̲T̲r̲a̲i̲l̲e̲r̲ ̲I̲n̲f̲o̲.̲ ̲I̲n̲t̲o̲ ̲O̲u̲t̲p̲u̲t̲ ̲B̲u̲f̲f̲e̲r̲ ̲(̲4̲.̲5̲)̲
The Page Header/Trailer information, which is produced
by UPCO and updated by UPCO and PROP, is appended
to the Output Buffer.
f) O̲u̲t̲p̲u̲t̲ ̲B̲u̲f̲f̲e̲r̲ ̲(̲4̲.̲6̲)̲
This function sends the Output buffer to IOC for
output.
g) P̲a̲g̲e̲/̲L̲i̲n̲e̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲(̲4̲.̲7̲)̲
Page and Line control keeps account of the number
of printed lines on each page and provides page
shift actions when appropriate.
4.2.2.2 S̲o̲f̲t̲w̲a̲r̲e̲ ̲S̲t̲r̲u̲c̲t̲u̲r̲e̲
Two kinds of items can be sent to semaphore S2 and
thus invoke PROP.
a) The UPCO Commands, which are used by UPCO to Control
PROP.
b) The IOC Completion Codes, which are used by PROP
to synchronize and control its printout actions.
The software structure is depicted in fig. 4.2.2.2-1.
The description of each component is very similar to
the one in the functional specification (sec. 4.2.2.1),
and thus it shall not be repeated here.
Fig. 4.2.2.2-1
4.2.2.3 D̲a̲t̲a̲ ̲F̲l̲o̲w̲ ̲a̲n̲d̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲L̲o̲g̲i̲c̲
Fig. 4.2.2.3-1
Fig. 4.2.2.3-2
Fig. 4.2.2.3.-3
Fig. 4.2.2.3-1
4.2.2.4 P̲R̲O̲P̲ ̲M̲o̲d̲u̲l̲e̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲s̲
4.2.2.4.1 P̲R̲O̲P̲ ̲M̲A̲I̲N̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
PROP ̲MAIN contains the PROP ̲MAIN ̲LOOP. It waits at
Semaphore PRIS-S2, and takes appropriate actions upon
receipt of input items.
4.2.2.4.1.2 I̲n̲t̲e̲r̲f̲a̲c̲e̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲s̲
a) PROP ̲MAIN
b) PROP ̲MAIN
The module is only called by the Coroutine Monitor.
4.2.2.4.1.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
N/A
4.2.2.4.1.4 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲s̲
TBD
4.2.2.1.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
In the MAIN ̲LOOP, it is checked whether the arrived
items are legal or not.
All legal UPCO ̲Commands are executed by the
ANALYSE ̲UPCO ̲CMD module while I0 Completions are processed
by this module.
PROP ̲MAIN
A̲L̲L̲O̲W̲ ̲(̲I̲N̲I̲T̲I̲A̲L̲I̲Z̲E̲)̲(4.2.2.6.3)
PROP ̲MAIN ̲LOOP
WAIT ̲OPSEM(PRIS ̲S2)(PROP ̲OP): OK
PROP ̲OP.ITEM ̲NAME AND PROP ̲MASK EQ Q?
P̲R̲O̲P̲ ̲E̲R̲R̲O̲R̲ (TBD)(4.2.2.4.9)
CASE PROP ̲CP.ID OF:
UPCO ̲CMD? A̲N̲A̲L̲Y̲S̲E̲ ̲U̲P̲C̲O̲ ̲C̲M̲D̲ ̲(4.2.2.4.2)
PROP ̲IO ̲CC? P̲R̲O̲C̲ ̲I̲O̲ ̲C̲C̲ ( - 2)
OTHERWISE? P̲R̲O̲P̲ ̲E̲R̲R̲O̲R̲ (TBD) (4.2.2.4.9)
END ̲CASE
END PROP ̲MAIN ̲LOOP
END
Fig. 4.2.2.4.1.5-1
PROC ̲IO ̲CC
DECREMENT OUTSTANDING ̲IO ̲S
CASE SYS ̲WAIT (PROP ̲OP)(CC): ERROR ̲OK
ERROR? CASE ANALYSE ̲ERROR (CC, 2,
CONN ̲ERR,
PAPER ̲LOW)
:(IO ̲ERR 1
IO ̲ERR 2)
IO ̲ERR1? P̲A̲P̲E̲R̲ ̲L̲O̲W̲ ̲A̲C̲T̲I̲O̲N̲S̲ (4.2.2.6.1)
IO ̲ERR2? C̲O̲N̲N̲ ̲E̲R̲R̲ ̲A̲C̲T̲I̲O̲N̲S̲ (4.2.2.6.2)
OK? END ̲OF ̲TIME ̲FLAG EQ FALSE? D̲A̲T̲A̲ ̲C̲O̲N̲V̲E̲R̲S̲I̲O̲N̲
̲O̲U̲T̲P̲U̲T̲
(4.2.2.4.4)
OUTSTANDING ̲IO ̲S GT 0
REP ̲TO ̲UPCO (PRINT ̲COMPLETE ̲REP)(4.2.2.6.4)
END ̲CASE
END
Fig. 4.2.2.4.1.5-2
4.2.2.4.2 A̲N̲A̲L̲Y̲S̲E̲ ̲U̲P̲C̲O̲ ̲C̲M̲D̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
4.2.2.4.2.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The Module analyses UPCO-Commands received from PRIS
̲S2 and executes them.
4.2.2.4.2.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) ANALYSE ̲UPCO ̲CMD
b) ANALYSE ̲UPCO ̲CMD (R6): OK
R̲e̲g̲i̲s̲t̲e̲r̲ ̲C̲o̲n̲v̲e̲n̲t̲i̲o̲n̲
C̲a̲l̲l̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲
R7 LINK (Dest.)
R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲
All Registers are Destroyed
F̲a̲t̲a̲l̲ ̲E̲r̲r̲o̲r̲s̲
None.
4.2.2.4.2.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
N/A.
4.2.2.4.2.4 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲s̲
TBD.
4.2.2.4.2.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
The Commands are distinguished by the ITEM ̲NAME field
of the actual operation.
The Module mainly operates on data shared with UPCO.
ANALYSE ̲UPCO ̲CMD
CASE PROP ̲OP.ITEM ̲NAME ̲OF:
INITIALIZE ̲PROP? P̲R̲O̲P̲ ̲I̲N̲I̲T̲I̲A̲L̲I̲Z̲A̲T̲I̲O̲N̲ ( -
2 )
COMMENCE? S̲T̲A̲R̲T̲ ̲P̲R̲I̲N̲T̲ ̲A̲C̲T̲I̲O̲N̲S̲ ( - 5
)
RESTART? R̲E̲S̲T̲A̲R̲T̲ ̲P̲R̲I̲N̲T̲I̲N̲G̲ ( - 8
)
CONTINUE? C̲O̲N̲T̲I̲N̲U̲E̲ ̲P̲R̲I̲N̲T̲I̲N̲G̲ ( - 7
)
PREEMPT? P̲R̲E̲E̲M̲P̲T̲ ̲P̲R̲I̲N̲T̲I̲N̲G̲ ( - 10
)
ABANDON? A̲B̲A̲N̲D̲O̲N̲ ̲P̲R̲I̲N̲T̲I̲N̲G̲ ( - 12
)
OTHERWISE ? P̲R̲O̲P̲ ̲E̲R̲R̲O̲R̲ ̲(̲T̲B̲D̲)̲ (4.2.2.4.9)
END ̲CASE
END
Fig. 4.2.2.4.2.5-1
PROP ̲INITIALIZATION
I̲N̲I̲T̲I̲A̲L̲I̲Z̲E̲ ̲P̲R̲O̲P̲ ̲W̲O̲R̲K̲ ̲A̲R̲E̲A̲ ( - 3 )
P̲R̲I̲N̲T̲ ̲S̲T̲A̲R̲T̲ ̲U̲P̲ ̲M̲E̲S̲S̲A̲G̲E̲ ( - 4 )
R̲E̲P̲ ̲T̲O̲ ̲U̲P̲C̲O̲ ̲(̲P̲R̲O̲P̲ ̲I̲N̲I̲T̲I̲A̲L̲I̲Z̲E̲ ̲C̲C̲)̲ (4.2.2.6.4)
A̲L̲L̲O̲W̲ ̲(̲C̲O̲M̲M̲E̲N̲C̲E̲ ̲+̲ ̲A̲B̲A̲N̲D̲O̲N̲)̲ (4.2.2.6.3)
END
Fig. 4.2.2.4.2.5-2
INITIALIZE ̲PROP ̲WORK ̲AREA
SET OUTSTANDING ̲IO ̲S = 0
DETERMINE ̲MAX ̲OUTPUT ̲BUFFER ̲LENGTH
INITIALIZE ̲PROP ̲FLAGS
R̲E̲S̲E̲T̲ ̲O̲U̲T̲P̲U̲T̲ ̲B̲L̲E̲ ̲P̲O̲I̲N̲T̲E̲R̲S̲ (4.2.2.6.7)
END
Fig. 4.2.2.4.2.5-3
PRINT ̲START ̲UP ̲MESSAGE
SET PFF ̲ADDRESS.FIRST ̲BYTE =
PFF ̲ADDR ̲ARRAY (START ̲UP ̲MSG).PFF ̲PRINT ̲EXEC
R̲E̲A̲D̲-̲P̲F̲F̲ ̲D̲A̲T̲A̲ ( )
SET FDB ̲POINTER =
PFF ̲ADDR ̲ARRAY (START ̲UP ̲MSG).FDB ̲PRINT ̲EXEC
P̲R̲O̲C̲E̲S̲S̲ ̲F̲D̲R̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲5̲)̲
SET POINTER ̲TO ̲CURRENT ̲BLE.LINK = NIL
SET PRINTOUT ̲FILADR.BYTECOUNT = ACTUAL ̲BUFFER ̲LENGTH
CASE APPEND ̲BYTES (PRINTER ̲CONNECTION ̲ID,
PRINTOUT ̲FILADR ,
BLE ̲ARRAY ̲(1)
(PRINTOUT ̲FILADR ,
CC): ERROR ̲OK
ERROR? CASE ANALYSE ̲ERROR(CC.2): (UCONERR,PAP
̲L0W)
UCONERR? C̲O̲N̲N̲ ̲E̲R̲R̲ ̲A̲C̲T̲I̲O̲N̲S̲ (4.2.2.6.2)
PAP ̲LOW? P̲A̲P̲E̲R̲ ̲L̲O̲W̲ ̲A̲C̲T̲I̲O̲N̲S̲ (4.2.2.6.1)
END CASE
OK? R̲E̲S̲E̲T̲ ̲O̲U̲T̲P̲U̲T̲ ̲B̲L̲E̲ ̲P̲O̲I̲N̲T̲E̲R̲S̲ (4.2.2.6.7)
END ̲CASE
END
Fig. 4.2.2.4.2.5-4
START ̲PRINT ̲ACTIONS
CASE PRINT ̲ITEM ̲CATEGORY OF:
SINGLE ̲QEL ?
BUFFER ̲ITEM ?
IMF ̲ITEM ? C̲I̲F̲ ̲I̲T̲E̲M̲ ̲P̲R̲E̲P̲ ̲A̲C̲T̲I̲O̲N̲S̲ ( - 2
)
IIF ̲ITEM ? C̲I̲F̲ ̲I̲T̲E̲M̲ ̲P̲R̲E̲P̲ ̲A̲C̲T̲I̲O̲N̲S̲ ( - 2
)
END ̲CASE
R̲E̲A̲D̲ ̲P̲F̲F̲ ̲D̲A̲T̲A̲ (4.2.2.6.8)
SET END ̲OF ̲ITEM = FALSE
D̲A̲T̲A̲ ̲C̲O̲N̲V̲E̲R̲T̲I̲O̲N̲ ̲O̲U̲T̲P̲U̲T̲ (4.2.2.4.4)
END
Fig. 4.2.2.4.2.5-5
CIF ̲ITEM ̲PREP ̲ACTIONS
SET PFF ̲ADDRESS.FIRST ̲BYTE = PFF ̲PRINT ̲EXEC ̲ADDR
SET FDB ̲POINTER = FDB ̲PRINT ̲EXEC ̲ADDR
END
Fig. 4.2.2.4.2.5-6
CONTINUE ̲PRINTING
R̲E̲S̲T̲O̲R̲E̲ ̲C̲O̲N̲T̲I̲N̲U̲A̲T̲I̲O̲N̲ ̲P̲O̲I̲N̲T̲ ̲S̲T̲A̲T̲U̲S̲ (4.2.2.6.6)
D̲A̲T̲A̲ ̲C̲O̲N̲V̲E̲R̲S̲I̲O̲N̲ ̲O̲U̲T̲P̲U̲T̲ (4.2.2.4.4)
END
Fig. 4.2.2.4.2.5-7
RESTART ̲PRINTING
R̲E̲C̲A̲L̲L̲ ̲C̲O̲N̲T̲I̲N̲U̲A̲T̲I̲O̲N̲ ̲P̲O̲I̲N̲T̲ ̲V̲A̲L̲U̲E̲S̲ ( - 9 )
R̲E̲S̲T̲O̲R̲E̲ ̲C̲O̲N̲T̲I̲N̲U̲A̲T̲I̲O̲N̲ ̲P̲O̲I̲N̲T̲ ̲S̲T̲A̲T̲U̲S̲ (4.2.2.6.6)
DATA CONVERSION OUTPUT (4.2.2.4.4)
END
Fig. 4.2.2.4.2.5-8
RECALL ̲CONTINUATION ̲POINT ̲VALUES
SET CONT ̲PT ̲VAL = PREEMPT ̲CONT ̲PT ̲VAL
END
Fig. 4.2.2.4.2.5-9
PREEMPT ̲PRINTING
C̲A̲N̲C̲E̲L̲ ̲O̲U̲T̲S̲T̲A̲N̲D̲I̲N̲G̲ ̲T̲O̲ ̲S̲ (4.2.2.4.3)
S̲T̲O̲R̲E̲ ̲C̲O̲N̲T̲I̲N̲U̲A̲T̲I̲O̲N̲ ̲P̲O̲I̲N̲T̲ ̲V̲A̲L̲U̲E̲S̲ (4.2.2.6.5)
S̲E̲N̲D̲ ̲R̲E̲P̲ ̲T̲O̲ ̲U̲P̲C̲O̲ ̲(̲P̲R̲E̲E̲M̲P̲T̲ ̲C̲C̲)̲ (4.2.2.6.4)
A̲L̲L̲O̲W̲ ̲(̲C̲O̲M̲M̲E̲N̲C̲E̲ ̲O̲R̲ ̲A̲B̲A̲N̲D̲O̲N̲)̲ (4.2.2.6.3)
END
Fig. 4.2.2.4.2.5-10
STORE ̲CONTINUATION ̲POINT ̲VALUES
SET PREEMPT ̲CONT ̲PT ̲VAL = CONT ̲PT ̲VAL
END
Fig. 4.2.2.4.2.5-11
ABANDON ̲PRINTING
C̲A̲N̲C̲E̲L̲ ̲O̲U̲T̲S̲T̲A̲N̲D̲I̲N̲G̲ ̲I̲O̲ ̲S̲ (4.2.2.4.3)
R̲E̲P̲ ̲T̲O̲ ̲U̲P̲C̲O̲ ̲(̲A̲B̲A̲N̲D̲O̲N̲ ̲C̲C̲)(4.2.2.6.4)
A̲L̲L̲O̲W̲ ̲(̲I̲N̲I̲T̲I̲A̲L̲I̲Z̲E̲ ̲P̲R̲O̲P̲)̲ (4.2.2.6.3)
END
Fig. 4.2.2.4.2.5-12
4.2.2.4.3 C̲A̲N̲C̲E̲L̲ ̲O̲U̲T̲S̲T̲A̲N̲D̲I̲N̲G̲ ̲I̲O̲ ̲S̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
4.2.2.4.3.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The module cancels all pending system calls initiated
by PROP.
4.2.2.4.3.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) CANCEL ̲OUTSTANDING ̲IO ̲S
b) CANCEL ̲OUTSTANDING ̲IO ̲S (R6): OK
R̲e̲g̲i̲s̲t̲e̲r̲ ̲C̲o̲n̲v̲e̲n̲t̲i̲o̲n̲
C̲a̲l̲l̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲
R6 LINK (Destr.)
R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲
All register are Destroyed.
F̲a̲t̲a̲l̲ ̲E̲r̲r̲o̲r̲s̲
None.
4.2.2.4.3.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
4.2.2.4.3.3.1 C̲H̲E̲C̲K̲ ̲O̲P̲ ̲S̲T̲A̲T̲U̲S̲
Checks if the operation refers to an outstanding System
Call, which in case will be cancelled.
Ref. Fig. 4.2.2.4.3.5-2 and -3.
4.2.2.4.3.4 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
TBD.
4.2.2.4.3.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
The module checks the OPERATION.STATUS pertinent to
PROP-Syscalls in order to determine whether a System
Call is pending or not. If there is, it will be cancelled
by using the coroutine Monitor Procedure
SYS ̲CANCEL.
CANCEL ̲OUTSTANDING ̲IO ̲S
OUTSTANDING ̲IO ̲S EQ 0?
SET OP ̲POINTER = PRIS ̲PROP ̲IO ̲OP-1
C̲H̲E̲C̲K̲ ̲O̲P̲ ̲S̲T̲A̲T̲U̲S̲ ( - 2 )
SET OP ̲POINTER = PRIS ̲PROP ̲IO ̲OP ̲2
C̲H̲E̲C̲K̲ ̲O̲P̲ ̲S̲T̲A̲T̲U̲S̲ ( - 2)
OUTSTANDING ̲IO ̲S NE 0? P̲R̲O̲P̲ ̲E̲R̲R̲O̲R̲ (TBD) (4.2.2.4.9)
END
Fig. 4.2.2.4.3.5-1
CHECK ̲OP ̲STATUS
CASE OP ̲POINTER.STATUS OF:
PENDING?
IN ̲SEMAPHORE? CANCEL ̲IO ( - 3 )
DONE?
OTHERWISE? PROP ̲ERROR (TBD)(4.2.2.4.4)
END ̲CASE
END
Fig. 4.2.2.4.3.5-2
CANCEL ̲IO
CASE SYS ̲CANCEL (OP ̲POINTER)
(CC): ERROR ̲OK
ERROR? ANALYSE ̲ERROR (CC.0): OK
OK? DECREMENT OUTSTANDING ̲IO ̲S
END CASE
END
Fig. 4.2.2.4.3.5-3
4.2.2.4.4 D̲A̲T̲A̲ ̲C̲O̲N̲V̲E̲R̲S̲I̲O̲N̲ ̲O̲U̲T̲P̲U̲T̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
4.2.2.4.4.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The module controls and executes the conversion, formatting
and output of data.
4.2.2.4.4.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) DATA ̲CONVERSION ̲OUTPUT
b) DATA ̲CONVERSION ̲OUTPUT (R6): OK
R̲e̲g̲i̲s̲t̲e̲r̲ ̲C̲o̲n̲v̲e̲n̲t̲i̲o̲n̲
C̲a̲l̲l̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲
R6 LINK (Destr.)
R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲
All registers are Destroyed.
F̲a̲t̲a̲l̲ ̲E̲r̲r̲o̲r̲s̲
None.
4.2.2.4.4.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
N/A
4.2.2.4.4.4 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
TBD
4.2.2.4.4.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
The Data-Conversion and Formatting is controlled by
the socalled F̲ormat D̲escriptor R̲ecords (FDRs) which
are used to compose the various Format Descriptions.
These are stored in the Print Format File (PFF).
It is checked that the Output Buffer has the appropriate
length and that the number of outstanding I/O Operations
not exceed (2).
DATA ̲CONVERSION ̲OUTPUT
LINE ̲COUNT EQ 1? A̲P̲P̲E̲N̲D̲ ̲H̲E̲A̲D̲E̲R̲ (TBD)
COL ̲HEADER ̲FLAG NE TRUE?
A̲P̲P̲E̲N̲D̲ ̲C̲O̲L̲ ̲H̲E̲A̲D̲E̲R̲ (TBD)
OUTER ̲LOOP
INNER ̲LOOP
P̲R̲O̲C̲E̲S̲S̲ ̲F̲D̲R̲ (4.2.2.4.5)
BUFFER ̲FULL ̲FLAG EQ TRUE?
END ̲OF ̲PAGE ̲FLAG EQ TRUE?
END ̲OF ̲ITEM ̲FLAG EQ TRUE? EXIT ̲INNER
̲LOOP
END ̲INNER ̲LOOP
END ̲OF ̲PAGE ̲FLAG EQ TRUE? E̲N̲D̲ ̲O̲F̲ ̲P̲A̲G̲E̲ ̲A̲C̲T̲I̲O̲N̲S̲
( - 2 )
O̲U̲T̲P̲U̲T̲ ̲B̲U̲F̲F̲E̲R̲ ( - 3 )
OUTSTANDING ̲IO ̲S EQ 2?
END ̲OF ̲ITEM ̲FLAG EQ TRUE ? EXIT ̲LOOP
END ̲OUTER ̲LOOP
END
Fig. 4.2.2.4.4.5-1
END ̲OF ̲PAGE ̲ACTIONS
PRINT ̲ITEM ̲CATEGORY EQ IMF ̲ITEM ? A̲P̲P̲E̲N̲D̲ ̲T̲R̲A̲I̲L̲E̲R̲
(TBD)
S̲K̲I̲P̲ ̲T̲O̲ ̲T̲O̲P̲ ̲O̲F̲ ̲P̲A̲G̲E̲ (TBD)
SET END OF PAGE = FALSE
S̲A̲V̲E̲ ̲C̲O̲N̲T̲I̲N̲U̲A̲T̲I̲O̲N̲ ̲P̲O̲I̲N̲T̲ ̲V̲A̲L̲U̲E̲S̲ (4.2.2.6.5)
END
Fig. 4.2.2.4.4.5-2
OUTPUT ̲BUFFER
PRIS ̲PROP ̲IO ̲OP ̲1.STATUS EQ DONE 3
SET OPERATION ̲PT = PRIS ̲PROP ̲IO
̲OP ̲1
PRIS ̲PROP ̲IO ̲OP ̲2.STATUS EQ DONE?
SET OPERATION ̲PT = PRIS ̲PROP ̲IO
̲OP ̲2
PROP ̲ERROR (TBD) (4.2.2.4.4)
SET POINTER ̲TO ̲CURRENT ̲BLE.LINK = NIL
SET PRINTOUT ̲FILADR.BYTE COUNT = ACTUAL ̲BUFFER ̲LENGTH
CASE INIT APPEND ̲BYTES (OPERATION ̲PT,
PRINTER ̲CONNECTION ̲ID,
PRINTOUT ̲FILADR,
BLE ̲ARRAY(1),
(PRINTOUT ̲FILADR, CC): ERROR
̲OK
ERROR? ANALYSE ̲ERROR (CC, 0): OK
OK? RESET ̲OUTPUT ̲BLE ̲POINTERS (4.2.2.6.7)
INCREMENT OUTSTANDING ̲IO ̲S
ASSOCIATE (PRIS ̲S2, OPERATION ̲PT): OK
END CASE
END
Fig. 4.2.2.4.4.5-3
4.2.2.4.5 P̲R̲O̲C̲E̲S̲S̲ ̲F̲D̲R̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
4.2.2.4.5.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The Module works mainly as slave module for the DATA
̲CONVERSION ̲OUTPUT ̲Module by executing Format Descriptor
Records.
4.2.2.4.5.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) PROCESS ̲FDR
b) PROCESS ̲FDR (R6): OK
R̲e̲g̲i̲s̲t̲e̲r̲ ̲C̲o̲n̲v̲e̲n̲t̲i̲o̲n̲s̲
C̲a̲l̲l̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲
R6 LINK (Destr.)
R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲
All Registers are Destroyed.
F̲a̲t̲a̲l̲ ̲E̲r̲r̲o̲r̲s̲
None.
4.2.2.4.5.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
TBD.
4.2.2.4.5.4 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲s̲
TBD.
4.2.2.4.5.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
TBD
4.2.2.4.9 P̲R̲O̲P̲-̲E̲R̲R̲O̲R̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
4.2.2.4.9.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The Module takes care of handling PROP errors that
are not related to System Calls.
4.2.2.4.9.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) PROP ̲ERROR (ERROR ̲ID: ERROR ̲IO ̲TYPE)
b) PROP ̲ERROR (R2, R6): OK
R̲e̲g̲i̲s̲t̲e̲r̲ ̲C̲o̲n̲v̲e̲n̲t̲i̲o̲n̲
C̲a̲l̲l̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲
R2 ERROR ̲ID (destr.)
R6 LINK (destr.)
R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲
All registers are Destroyed.
F̲a̲t̲a̲l̲ ̲E̲r̲r̲o̲r̲s̲
None.
4.2.2.4.9.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
TBD
4.2.2.4.9.4 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲s̲
TBD
4.2.2.4.9.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
4.2.2.5 C̲o̲m̲m̲o̲n̲ ̲P̲R̲O̲P̲ ̲D̲a̲t̲a̲ ̲
TBD
4.2.2.6 C̲o̲m̲m̲o̲n̲ ̲P̲R̲O̲P̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲s̲
4.2.2.6.1 P̲A̲P̲E̲R̲ ̲L̲O̲W̲ ̲A̲C̲T̲I̲O̲N̲S̲ ̲s̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
4.2.2.6.1.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The Procedure carries out the actions that becomes
appropriate when a PAPER ̲LOW CC is returned from the
I/O-System.
4.2.2.6.1.2 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) PAPER ̲LOW ̲ACTIONS
b) PAPER ̲LOW ̲ACTIONS(RG):OK
R̲e̲g̲i̲s̲t̲e̲r̲ ̲C̲o̲n̲v̲e̲n̲t̲i̲o̲n̲s̲
C̲a̲l̲l̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲
RG LINK (destr)
R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲
All Registers are DESTROYED
F̲a̲t̲a̲l̲ ̲E̲r̲r̲o̲r̲s̲
NONE
4.2.2.6.3 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
TBD
4.2.2.6.1.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲
Ref. fig. 4.2.2.6.1.4-1
PAPER ̲LOW ̲ACTIONS
C̲A̲N̲C̲E̲L̲ ̲O̲U̲T̲S̲T̲A̲N̲D̲I̲N̲G̲ ̲I̲O̲ ̲S̲ (4.2.2.4.3)
R̲E̲P̲ ̲T̲O̲ ̲U̲P̲C̲O̲(̲P̲A̲P̲E̲R̲ ̲L̲O̲W̲)̲ (4.2.2.6.4)
A̲L̲L̲O̲W̲(̲C̲O̲N̲T̲I̲N̲U̲E̲,̲ ̲A̲B̲A̲N̲D̲O̲N̲)̲ (4.2.2.6.3)
END
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲6̲.̲1̲.̲4̲-̲1̲
4.2.2.6.2 C̲O̲N̲N̲ ̲E̲R̲R̲ ̲A̲C̲T̲I̲O̲N̲S̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
4.2.2.6.2.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The Procedure carries out the actions that are appropriate
when a CONNECTION ̲ERROR CC has been received from the
I/O-System.
4.2.2.6.2.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) CONN ̲ERR ̲ACTIONS
b) CONN ̲ERR ̲ACTIONS(R6):OK
R̲e̲g̲i̲s̲t̲e̲r̲ ̲C̲o̲n̲v̲e̲r̲s̲i̲o̲n̲ ̲
C̲a̲l̲l̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲
RG LINK (destr)
R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲
All registers are DESTROYED
F̲a̲t̲a̲l̲ ̲E̲r̲r̲o̲r̲s̲
NONE
4.2.2.6.2.3 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲s̲
N/A
4.2.2.6.2.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲
Ref. fig. 4.2.2.6.2.4-1
CONN ̲ERR ̲ACTIONS
C̲A̲N̲C̲E̲L̲ ̲O̲U̲T̲S̲T̲A̲N̲D̲I̲N̲G̲ ̲I̲O̲ ̲S̲ (4.2.2.4.3)
R̲E̲P̲ ̲T̲O̲ ̲U̲P̲C̲O̲(̲C̲O̲N̲N̲ ̲E̲R̲R̲O̲R̲) (4.2.2.6.4)
A̲L̲L̲O̲W̲(̲I̲N̲I̲T̲I̲A̲L̲I̲Z̲E̲ ̲P̲R̲O̲P̲)̲ (4.2.2.6.3)
END
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲6̲.̲2̲.̲4̲-̲1̲
4.2.2.6.3 A̲L̲L̲O̲W̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
4.2.2.6.3.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The procedure sets the PROP ̲MASK in order to make it
possible to validate items received from PRIS ̲S2.
4.2.2.6.3.2 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
C̲a̲l̲l̲ ̲s̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) ALLOW (ITEM ̲MASK:PRIS ̲OP ̲ITEM ̲NAME ̲TYPE)
b) ALLOW (R1,R6):OK
R̲e̲g̲i̲s̲t̲e̲r̲ ̲C̲o̲n̲v̲e̲r̲s̲i̲o̲n̲s̲
C̲a̲l̲l̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲
R2 ITEM ̲MASK (destr)
R6 LINK (destr)
R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲
All registers are DESTROYED
F̲a̲t̲a̲l̲ ̲E̲r̲r̲o̲r̲s̲
NONE
4.2.2.6.3.3 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
TBD
4.2.2.6.3.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲
Ref. fig. 4.2.2.6.3.4-1
ALLOW(ITEM ̲MASK)
SET PROP ̲MASK=ITEM ̲MASK
END
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲6̲.̲3̲.̲4̲-̲1̲
4.2.2.6.4 R̲E̲P̲.̲ ̲T̲O̲ ̲U̲P̲C̲O̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
4.2.2.6.4.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
The procedure sends the specified report to UPCO.
4.2.2.6.4.2 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) REP ̲TO ̲UPCO(REP ̲ID:PRIS ̲OP ̲ITEM ̲NAME ̲TYPE)
b) REP ̲TO ̲UPCO(R1,R6):OK
R̲e̲g̲i̲s̲t̲e̲r̲ ̲C̲o̲n̲v̲e̲n̲t̲i̲o̲n̲s̲
C̲a̲l̲l̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲
R1 REP ̲ID (destr)
R6 LINK (destr)
R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲
All registers are DESTROYED
F̲a̲t̲a̲l̲ ̲E̲r̲r̲o̲r̲s̲
NONE
4.2.2.6.4.3 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲s̲
TBD
4.2.2.6.4.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲
Ref. fig. 4.2.2.6.4.4-1
REP ̲TO ̲UPCO(REP ̲ID)
SET PRIS ̲PROP ̲REPORT ̲OP.ID=PROP ̲ITEM
SET PRIS ̲PROP ̲REPORT ̲OP.ITEM ̲NAME=REP ̲ID
SIGNAL ̲OPSEM(PRIS ̲S1,PRIS ̲PROP ̲REPORT ̲OP):OK
END
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲6̲.̲4̲.̲4̲-̲1̲
4.2.2.6.5 S̲A̲V̲E̲ ̲C̲O̲N̲T̲I̲N̲U̲A̲T̲I̲O̲N̲ ̲P̲O̲I̲N̲T̲ ̲V̲A̲L̲U̲E̲S̲ ̲S̲p̲e̲c̲
4.2.2.6.5.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The procedure saves the present status to obtain possibility
of processing restart from this point.
4.2.2.6.5.2 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
C̲a̲l̲l̲ ̲s̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲s̲
a) SAVE ̲CONTINUATION ̲POINT ̲VALUES
b) SAVE ̲CONTINUATION ̲POINT ̲VALUES(RG):OK
R̲e̲g̲i̲s̲t̲e̲r̲ ̲C̲o̲n̲v̲e̲n̲t̲i̲o̲n̲
C̲a̲l̲l̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲
R6 LINK (destr)
R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲
All registers are DESTROYED
F̲a̲t̲a̲l̲ ̲E̲r̲r̲o̲r̲s̲
NONE
4.2.2.6.5.3 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
TBD
4.2.2.6.5.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲
Ref. fig. 4.2.2.6.5.4-1
SAVE ̲CONTINUATION ̲POINT ̲VALUES
SET CONT ̲PT.VAL.PFF ̲ADDR.FIRST ̲BYTE=
PFF ̲ADDRESS ̲FIRST ̲BYTE
SET CONT ̲PT ̲VAL FDB ̲POINTER= FDB ̲POINTER
SET CONT ̲PT ̲VAL.COL ̲HEADER ̲FLAG= COL ̲HEADER ̲FLAG
SET CONT ̲PT ̲VAL.COL ̲HEADER= COLOUMNAR ̲HEADER
SET CONT ̲PT ̲VAL.PAGE ̲NO= PAGE ̲NUMBER
SET CONT ̲PT ̲VAL.SOURCE ̲BUF ̲PTR= SOURCE ̲BUFFER ̲POINTER
SET ̲CONT ̲PT
PRINT ̲ITEM ̲CATEGORY EQ IMF ̲ITEM?
PRINT ITEM CATEGORY EQ IIF ̲ITEM?
SET CONT ̲PT ̲VAL.VIEW ̲ADR ̲DESCR =
TRANS ̲VIEW ̲DESCR(1).FIELD ̲BYTE ̲ADDRESS
-TRANS ̲VIEW ̲DESCR(1).RECORD ̲LENGTH
END
Fig. 4.2.2.6.5.4-1
4.2.2.6.6 R̲E̲S̲T̲O̲R̲E̲ ̲C̲O̲N̲T̲I̲N̲U̲A̲T̲I̲O̲N̲ ̲P̲O̲I̲N̲T̲ ̲S̲T̲A̲T̲U̲S̲ ̲S̲p̲e̲c̲
4.2.2.6.6.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
Restore the status of an earlier specified CONTINUATION
̲POINT.
4.2.2.6.6.2 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲s̲
a) RESTORE ̲CONTINUATION ̲POINT ̲STATUS
b) RESTORE ̲CONTIUATION ̲POINT ̲STATUS(R6):OK
R̲e̲g̲i̲s̲t̲e̲r̲ ̲C̲o̲n̲v̲e̲n̲t̲i̲o̲n̲
C̲a̲l̲l̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲
R6 LINK (destr)
R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲
All registers are DESTROYED
F̲a̲t̲a̲l̲ ̲E̲r̲r̲o̲r̲s̲
NONE
4.2.2.6.6.3 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲s̲
TBD
4.2.2.6.6.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲
Ref. fig. 4.2.2.6.6.4-1
RESTORE ̲CONTINUATION@ ̲POINT ̲STATUS
SET PFF ̲ADDRESS.FIRST ̲BYTE=
CONT ̲PT ̲VAL.PFF ̲ADDR.FIRST ̲BYTE
SET FDB ̲POINTER=CONT ̲PT ̲VAL.FDB ̲POINTER
SET COL ̲HEADER ̲FLAG= CONT ̲PT ̲:VAL.COL ̲HEADER ̲FLAG
SET COLOUMNAR ̲HEADER=CONT ̲PT ̲VAL.COL ̲HEADER
SET PAGE NUMBER= CONT ̲PT ̲VAL.PAGE ̲NO
SET SOURCE ̲BUFFER ̲POINTER= CONT ̲PT ̲VAL.SORUCE ̲BUF ̲PTR
R̲E̲A̲D̲ ̲P̲F̲F̲ ̲D̲A̲T̲A̲ (4.2.2.6.8)
PRINT ̲ITEM ̲CATEGORY EQ IMF ̲ITEM?
PRINT ̲ITEM ̲CATEGORY EQ IIF ̲ITEM?
SET TRANS ̲VIEW ̲DESCR(1).FIELD ̲BYTE ̲ADDRESS=
CONT ̲PT ̲VAL.VIEW ̲ADR ̲DESCR
T̲R̲A̲N̲S̲F̲E̲R̲ ̲V̲I̲E̲W̲ ̲D̲A̲T̲A̲(4.2.2.6.11)
END
F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲6̲.̲6̲.̲4̲-̲1̲…86…1 …02… …02… …02… …02… …02…
4.2.2.6.7 R̲E̲S̲E̲T̲ ̲O̲U̲T̲P̲U̲T̲ ̲B̲L̲E̲ ̲P̲O̲I̲N̲T̲E̲R̲S̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
4.2.2.6.7.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
Resets the pointers to, and the counters associated
with the Buffer List Elements used for output of data.
4.2.2.6.7.2 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲s̲
a) RESET ̲OUTPUT ̲BLE ̲POINTERS
b) RESET ̲OUTPUT ̲BLE ̲POINTERS(R6):OK
R̲e̲g̲i̲s̲t̲e̲r̲ ̲C̲o̲n̲v̲e̲n̲t̲i̲o̲n̲
C̲a̲l̲l̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲
RG LINK (destr)
R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲
All registers are DESTROYED
F̲a̲t̲a̲l̲ ̲E̲r̲r̲o̲r̲s̲
NONE
4.2.2.6.7.3 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲s̲
TBD
4.2.2.6.7.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲
Ref. fig. 4.2.2.6.7.4.1
RESET ̲OUTPUT ̲BLE ̲POINTERS
SET POINTER ̲TO ̲FIRST ̲BLE = ADDRESS (BLE ̲ARRAY (1))
SET POINTER ̲TO ̲CURRENT ̲BLE = POINTER ̲TO ̲FIRST ̲BLE
SET NO ̲OF ̲BLES ̲IN ̲CHAIN = 1
SET ACTUAL ̲BUFFER ̲LENGTH = 0
END
Fig. 4.2.2.6.7.4-1
4.2.2.6.8 R̲E̲A̲D̲ ̲P̲F̲F̲ ̲D̲A̲T̲A̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
4.2.2.6.8.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
Reads data from the P̲rint F̲ormat F̲ile (PFF) and stores
it in the F̲ormat D̲escriptor B̲uffer (FDB).
4.2.2.6.8.2 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) READ ̲PFF ̲DATA
b) READ ̲PFF ̲DATA (R6): OK
R̲e̲g̲i̲s̲t̲e̲r̲ ̲C̲o̲n̲v̲e̲n̲t̲i̲o̲n̲
C̲a̲l̲l̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲
R6 LINK (Destr.)
R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲
All registers are Destroyed.
F̲a̲t̲a̲l̲ ̲E̲r̲r̲o̲r̲s̲
None.
4.2.2.6.8.3 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲s̲
TBD
4.2.2.6.8.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲
Ref. Fig. 4.2.2.6.8.4-1
READ ̲PFF ̲DATA
CASE READ ̲BYTES (PF ̲FILE ̲DESCRIPTOR,
PFF ̲ADDRESS,
PFF ̲BLE)
(PFF ̲ADDRESS
CC): ERROR ̲OK
ERROR? ANALYSE ̲ERROR (CC.0): OK
OK?
END ̲CASE
END
Fig. 4.2.2.6.8.4-1
4.2.2.6.4 G̲E̲T̲ ̲Q̲E̲L̲ ̲I̲N̲F̲O̲ ̲D̲A̲T̲A̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
4.2.2.6.4.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
Transfers the QEL ̲INFO data to the SOURCE ̲BUFFER.
4.2.2.6.4.2 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲s̲
a) GET ̲QEL ̲INFO ̲DATA
b) GET ̲QEL ̲INFO ̲DATA (R6): OK
R̲e̲g̲i̲s̲t̲e̲r̲ ̲C̲o̲n̲v̲e̲n̲t̲i̲o̲n̲
C̲a̲l̲l̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲
R6 LINK (Destr.)
R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲
All Registers are Destroyed.
F̲a̲t̲a̲l̲ ̲E̲r̲r̲o̲r̲s̲
None.
4.2.2.6.4.3 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲s̲
TBD.
4.2.2.6.4.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲
Ref. Fig. 4.2.2.6.4.4-1
GET ̲QEL ̲INFO ̲DATA
SET INDEX = 1
LOOP 4 TIMES
SET SOURCE ̲BUFFER (INDEX) =
PRINT ̲ITEM ̲QEL ̲AITR.INFORMATION(INDEX)
INCREMENT INDEX
END ̲LOOP
END
Fig. 4.2.2.6.9.4-1
4.2.2.6.10 G̲E̲T̲ ̲B̲U̲F̲F̲E̲R̲ ̲D̲A̲T̲A̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
4.2.2.6.10.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The procedure transfers data from "QEL ̲BUFFER" to SOURCE
̲BUFFER.
4.2.2.6.10.2 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲s̲
a) GET ̲BUFFER ̲DATA
b) GET ̲BUFFER ̲DATA (R6): OK
R̲e̲g̲i̲s̲t̲e̲r̲ ̲C̲o̲n̲v̲e̲n̲t̲i̲o̲n̲
C̲a̲l̲l̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲
R6 LINK (Destr.)
R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲
All registers are Destroyed.
F̲a̲t̲a̲l̲ ̲E̲r̲r̲o̲r̲s̲
None
4.2.2.6.10.3 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲s̲
TBD.
4.2.2.6.10.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲
Ref. Fig. 4.2.2.6.10.4-1
GET ̲BUFFER ̲DATA
SET DEST ̲BUFFER ̲LENGTH = SOURCE ̲BUFFER ̲LENGTH
SET OFFSET = 0
SET BUFFER = PRINT ̲ITEM ̲QEL ̲REF
SET DESTINATION = SOURCE ̲BUFFER ̲ADDRESS
CASE READ ̲BUFFER (BUFFER,
DESTINATION,
DEST ̲BUFFER ̲LENGTH,
OFFSET)
(NO ̲OF ̲BYTES ̲READ,
CC): ERROR ̲OK
ERROR? A̲N̲A̲L̲Y̲S̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲C̲,̲ ̲0̲)̲:̲ ̲ ̲O̲K̲
OK?
END CASE
END
Fig. 4.2.2.6.10.4-1
4.2.2.6.11 T̲R̲A̲N̲S̲F̲E̲R̲ ̲V̲I̲E̲W̲ ̲D̲A̲T̲A̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
4.2.2.6.11.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The procedure transfers data from a CIF to the
SOURCE ̲BUFFER.
4.2.2.6.11.2 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) TRANSFER ̲VIEW ̲DATA
b) TRANSFER ̲VIEW ̲DATA (R6): OK
R̲e̲g̲i̲s̲t̲e̲r̲ ̲C̲o̲n̲v̲e̲n̲t̲i̲o̲n̲
C̲a̲l̲l̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲
R6 LINK (Destr.)
R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲
All registers are Destroyed.
F̲a̲t̲a̲l̲ ̲E̲r̲r̲o̲r̲s̲
None.
4.2.2.6.11.3 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
TBD.
4.2.2.6.11.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲
Ref. Fig. 4.2.2.6.11.4-1
TRANSFER ̲VIEW ̲DATA
CASE READ ̲VIEW (PRIS ̲SOURCE ̲BUFFER ̲LENGTH,
TRANS ̲VIEW ̲DESCR,
PRINT ̲ITEM ̲QEL ̲REF,
PRIS ̲SOURCE ̲BUFFER)
(CC): ERROR ̲OK
ERROR? ANALYSE ̲ERROR(CC.0): OK
OK?
END ̲CASE
END
Fig. 4.2.2.6.11.4-1
4.2.2.7 S̲u̲b̲p̲a̲c̲k̲a̲g̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
TBD
4.3 M̲E̲M̲O̲R̲Y̲ ̲L̲A̲Y̲O̲U̲T̲
TBD