top - download
⟦3f1ba31ee⟧ Wang Wps File
Length: 10441 (0x28c9)
Types: Wang Wps File
Notes: I/O Control SDS/006
Names: »1062A «
Derivation
└─⟦53e9d9273⟧ Bits:30006039 8" Wang WCS floppy, CR 0063A
└─ ⟦this⟧ »1062A «
WangText
…05……06……05……07… …0d… …01… …02……86…1
…02…
…02…
…02…
…02…CPS/SDS/006
…02…HKI/810801…02……02…
I/O CONTROL
…02……02…CAMPS
4.2.1 F̲o̲r̲m̲a̲t̲ ̲H̲a̲n̲d̲l̲e̲r̲ ̲S̲u̲b̲p̲a̲c̲k̲a̲g̲e̲
4.2.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̲
4.2.1.1.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲B̲r̲e̲a̲k̲d̲o̲w̲n̲
The Format Handler implements the application use of
VDU formatted splits. The Format Handler is responsible
for the formatting within the split. This includes:
- Access to format definitions on format file
- Repetition of repeatable fields
- Output of fields
- Input of fields
- Input of function keys
- Figure 4.2.1.1.1 presents the functional breakdown.
Figures 4.2.1.1.1-1/4.2.1.1.1-8
4.2.1.1.2 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
The numbers for functions in this section refer to
the numbers in the functional breakdown in section
4.2.1.1.7.
1. I̲n̲i̲t̲i̲a̲l̲i̲z̲a̲t̲i̲o̲n̲
The format handler administered, process resident
data area shall be initialized to support up to
the defined number of VDU split interfaces, each
with an interface control area, an area for storage
of format tables and a work buffer.
2. T̲e̲r̲m̲i̲n̲a̲l̲ ̲R̲e̲l̲a̲t̲e̲d̲ ̲F̲u̲n̲c̲t̲i̲o̲n̲s̲
The terminal related functions are all directed
towards the interface for one terminal (= VDU split).
2.1 T̲e̲r̲m̲i̲n̲a̲l̲ ̲F̲u̲n̲c̲t̲i̲o̲n̲s̲
These are directed towards the control of the interface.
2.1.3 memory interface are functions to initialize
one interface in defining the maximum size of allowed
format control table, buffer size etc., where the
actual VDU split can be dynamically redefined.
(2.1.1 Terminal Definition and 2.1.2 Terminal Remove).
2.2 F̲o̲r̲m̲a̲t̲ ̲F̲i̲l̲e̲ ̲F̲u̲n̲c̲t̲i̲o̲n̲s̲
These functions implement the capabilities for
the requestor to handle formats through definition
and output.
2.4 F̲i̲e̲l̲d̲ ̲T̲r̲a̲n̲s̲f̲e̲r̲ ̲F̲u̲n̲c̲t̲i̲o̲n̲s̲
These functions provide the application with the
capability to control the content of fields (2.4.1)
to read back operator input (2.4.2) and to position
cursor to facilitate operator input (2.4.3).
2.5 C̲o̲n̲t̲r̲o̲l̲ ̲F̲u̲n̲c̲t̲i̲o̲n̲s̲
These functions are VDU or VDU split oriented functions
that do not handle data transfers.
They are for Control Input (2.5.1), the capability
to receive function keys depressed by the operator
and for control output, the capability to clear
the split, and to ring the bell.
4.2.1.2 S̲o̲f̲t̲w̲a̲r̲e̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The FORMAT HANDLER consists of a set of monitor procedures
called from the application via the SYSTEM CALL MONITOR.
The four entry points required by the SYSTEM CALL MONITOR
are all within the FUNCTION SELECT routine.
Figure 4.2.1.2 shows the hierachy of calls within the
FORMAT HANDLER SUBPACKAGE. The waiting point routines
RETURN PENDING and RETURN DONE are shown as WAITING
POINT ROUTINES. They are called from practically all
funtion routines.
The DO INPUT routine is made to allow the output followed
by input type of transfer (ARM - receive data).
Fig. 4.2.1.2-1
Fig. 4.2.1.2-2
4.2.1.3 D̲a̲t̲a̲ ̲F̲l̲o̲w̲ ̲a̲n̲d̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲L̲o̲g̲i̲c̲
4.2.1.3.1 O̲v̲e̲r̲v̲i̲e̲w̲
The FORMAT HANDLER transfers data from the applications
buffers to the VDU and receives data from the VDU for
the applications buffer. To control this, it loads
a format file.
For one process the FORMAT HANDLER handles a set of
interfaces, each controlled by an interface control
block (IFCB).
Interfaces are defined by numbers 1 through N. They
work independently of each other except that the format
area definition reserves memory from one common consecutive
section of memory. Figure 4.2.1.3.1-1 presents the
interface concept.
The FORMAT HANDLER is accessed via the SYSTEM CALL
MONITOR as shown in figure 4.2.1.3.1-2.
Figures 4.2.1.3.1-1/4.2.1.3.1-2
The FORMAT HANDLER accesses the I/O system for transfer
of data to/from a terminal (split).
The split is accessed via two connections, one for
data transfer (fields) and one for function key transfer.
Fig. 4.2.1.3.1-3 shows the interface to IOS.
The data transfer connection is used for all transfers
except the reads within the RECEIVE CONTROL, which
are performed on the control connection.
Fig. 4.2.1.3.1-3 IOS Interface
4.2.1.3.2 I̲n̲t̲e̲r̲n̲a̲l̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲a̲n̲d̲ ̲D̲a̲t̲a̲ ̲F̲l̲o̲w̲
The four entry points of the FORMAT HANDLER are all
in the FUNCTION SELECT routine. This routine determines
what is to be done. The action can be:
- select function to be performed
- continue already initiated function
- return to requestor, illegal function selected.
A function procedure may be one of two categories:
- function is performed at once
- the function contains one or more waiting points.
When a function procedure has a waiting point, it returns
in the procedure RETURN PENDING: This procedure saves
the current state and returns to the System Call Monitor.
When the FUNCTION SELECT is entered with ANSWER RECEIVED,
the function procedure is resumed as if return from
the RETURN PENDING was performed.
Fig. 4.2.1.3.2-1 illustrates the approach.
Figure 4.2.1.3.2-1 Function Procedure Scheduling
The concept presented is the same for waiting points
where the function is DONE.
4.2.1.3-3 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲R̲o̲u̲t̲i̲n̲e̲s̲ ̲S̲c̲h̲e̲d̲u̲l̲e̲ ̲F̲l̲o̲w̲
The FUNCTION SELECT flow is shown in figure 4.2.1.3.3-1
for the INIT ENTRY.
The ANSWER RECEIVED and COMPLETE FUNCTION entries are
the same. Figure. 4.2.1.3.3-2 shows the logic.
The CANCEL entry logic is presented in figure 4.2.1.3.3-3.
Only data and control transfers to/from VDU can be
cancelled.
The RETURN PENDING AND RETURN DONE logic is shown in
figure 4.2.1.3.3-4.
The common routine, DO INPUT, is shown in figure 4.2.1.3.3-5.
INIT ENTRY FORMAT HANDLER
SELECTED FUNCTION NOT EXISTING SET ERROR
SELECTED FUNCTION
TYPE EXCLUSIVE
SELECTED FUNCTION ACTIVE
SET ERROR
FOR THIS INTERFACE
MARK
SET ACTIVE SOCB
ERROR
MARK SOCB WITH
FUNCTION CODE
E̲X̲E̲C̲U̲T̲E̲ ̲F̲U̲N̲C̲T̲I̲O̲N̲ (next page)
SET NOT ACTIVE
Fig. 4.2.1.3.3-1
FUNCTION SELECT FLOW INIT ENTRY
EXECUTE FUNTION
CASE FUNCTION CODE =
INITIALIZE I̲N̲I̲T̲A̲L̲I̲Z̲E̲ ̲(̲1̲.̲1̲)̲
DEFINE FORMAT AREA D̲E̲F̲I̲N̲E̲ ̲F̲O̲R̲M̲A̲T̲ ̲A̲R̲E̲A̲ ̲(̲1̲.̲2̲)̲
INIT TERMINAL I̲N̲I̲T̲ ̲T̲E̲R̲M̲I̲N̲A̲L̲ ̲(̲1̲.̲3̲)̲
REMOVE TERMINAL R̲E̲M̲O̲V̲E̲ ̲T̲E̲R̲M̲I̲N̲A̲L̲ ̲(̲1̲.̲4̲)̲
GET FORMAT G̲E̲T̲ ̲F̲O̲R̲M̲A̲T̲ ̲(̲1̲.̲5̲)̲
OUTPUT FORMAT O̲U̲T̲P̲U̲T̲ ̲F̲O̲R̲M̲A̲T̲ ̲(̲1̲.̲6̲)̲
FIELDS OUTPUT F̲I̲E̲L̲D̲S̲ ̲O̲U̲T̲P̲U̲T̲ ̲(̲1̲.̲7̲)̲
FIELDS INPUT F̲I̲E̲L̲D̲S̲ ̲I̲N̲P̲U̲T̲ ̲(̲1̲.̲8̲)̲
INSERT LINES I̲N̲S̲E̲R̲T̲ ̲L̲I̲N̲E̲S̲ ̲(̲1̲.̲9̲)̲
DELETE LINES D̲E̲L̲E̲T̲E̲ ̲L̲I̲N̲E̲S̲ ̲(̲1̲.̲1̲0̲)̲
CHANGE FIELD ATTR. C̲H̲A̲N̲G̲E̲ ̲F̲I̲E̲L̲D̲ ̲A̲T̲T̲R̲.̲ ̲(̲1̲.̲1̲1̲)̲
GET CURSOR POSITION G̲E̲T̲ ̲C̲U̲R̲S̲O̲R̲ ̲P̲O̲S̲I̲T̲I̲O̲N̲ ̲(̲1̲.̲1̲2̲)̲
SET CURSOR POSITION S̲E̲T̲ ̲C̲U̲R̲S̲O̲R̲ ̲P̲O̲S̲I̲T̲I̲O̲N̲ ̲(̲1̲.̲1̲3̲)̲
SEND CONTROL S̲E̲N̲D̲ ̲C̲O̲N̲T̲R̲O̲L̲ ̲(̲1̲.̲1̲4̲)̲
RECEIVE CONTROL R̲E̲C̲E̲I̲V̲E̲ ̲C̲O̲N̲T̲R̲O̲L̲ ̲(̲1̲.̲1̲5̲)̲
Figure 4.2.1.3.3-1.1
ANSWER RECEIVED ENTRY FORMAT HANDLER
COMPLETE FUNCTION ENTRY FORMAT HANDLER
LOAD CONDITION FROM SOCB
JUMP TO CONTINUATION ADDRESS
Fig. 4.2.1.3.3-2
ANSWER RECEIVED, COMPLETE FUNCTION
CANCEL ENTRY FORMAT HANDLER
FUNCTION ONE OF?
OUTPUT FORMAT
FIELDS OUTPUT
FIELDS INPUT
INSERT LINES
DELETE LINES
CHANGE FIELD ATTR.
SEND CONTROL
RECEIVE CONTROL SET CANCEL FLAG IN SOCB
PENDING I/O? - ISSUE CANCEL
TO IOS
Fig. 4.2.1.3.3-3
CANCEL
RETURN PENDING RETURN DONE
MARK SOCB PENDING MARK SOCB DONE
SAVE STATUS AND
JUMP ADDRESS IN
SOCB
GET RETURN ADDRESS
TO SYSTEM CALL
RETURN
Fig. 4.2.1.3.3-4
RETURN PENDING and RETURN DONE
DO INPUT
DO A COMBINED REQUEST FOR READ
AND OUTPUT OF ARM SEQUENCE
R̲E̲T̲U̲R̲N̲ ̲P̲E̲N̲D̲I̲N̲G̲ ̲(̲2̲.̲1̲)̲
WAIT FOR OPERATION
TERMINATION
Fig. 4.2.1.3.3-5
DO INPUT
4.2.1.3.4 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲R̲o̲u̲t̲i̲n̲e̲s̲ ̲H̲I̲P̲O̲ ̲C̲h̲a̲r̲t̲s̲
Figures 4.2.1.3.4-1 to -15 give the HIPO Charts for
the Functional Routines.
Figures 4.2.1.3.4-1 / 4.2.1.3.4-17
4.2.1.4 S̲u̲b̲p̲a̲c̲k̲a̲g̲e̲ ̲D̲a̲t̲a̲
Fig. 4.2.1.4 presents the data for the FORMAT HANDLER.
Fig. 4.2.1.4-1 gives an overview.
Fig. 4.2.1.4-2 shows the Header
Fig. 4.2.1.4-3 shows the Interface Control Area.
For the description of FORMATS, refer to section 4.1.5.
Fig. 4.2.1.4-1 Format Handler Data Diagram
Fig. 4.2.1.4-2 Header
Fig. 4.2.1.4-3 Interface Control Area
4.2.1.5 S̲u̲b̲-̲p̲a̲c̲k̲a̲g̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
The application interface to the FORMAT HANDLER is
described in section 4.1.6.2.3 FORMAT HANDLER interface.