top - download
⟦df054730f⟧ Wang Wps File
Length: 17151 (0x42ff)
Types: Wang Wps File
Notes: Spelunked
Names: »~ORPHAN72.00«
Derivation
└─⟦a5d18cecd⟧ Bits:30006104 8" Wang WCS floppy, CR 0164A
└─ ⟦this⟧ »~ORPHAN72.00«
WangText
H…06…G…08…G…0b…G…0e…G…0f…G…01…G G…05…F…09…F…0c…F…0d…F…0f…F…02……86…1
…02…
…02…
…02…
…02…CPS/SDS/035
…02…MSN/820514…02……02…
SUPERVISOR
VDU
DETAILED
DESIGN
SPECIFICATION…02……02…CAMPS
4.2.3.6.13 R̲E̲A̲D̲ ̲M̲M̲I̲ ̲C̲T̲R̲L̲ ̲T̲A̲B̲L̲E̲
4.2.3.6.13.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
Sets up parameters and calls TMP (SEARCH ̲PRIMARY ̲KEY)
to read section of VUS ̲MMI ̲CONTROL ̲TABLE.
4.2.3.613.2 I̲n̲t̲e̲r̲f̲a̲c̲e̲ ̲D̲e̲f̲i̲n̲i̲t̲i̲o̲n̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) READ ̲MMI ̲CTRL ̲TABLE
b) READ ̲MMI ̲CTRL ̲TABLE (R6)
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̲
R0-R7 destr.
F̲a̲t̲a̲l̲ ̲E̲r̲r̲o̲r̲s̲
None
4.2.3.6.13.3 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲
a) D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲
MMI ̲TMP ̲PARAM 4.2.3.5
KEY ̲LIST 4.2.3.5
MMI ̲HEAD ̲REC 4.2.3.5
MMI ̲HEAD ̲SIZE 4.2.3.5
MAX ̲SECTION ̲SIZE 4.2.3.5
CTRL ̲REC ̲SIZE 4.2.3.5
CURRENT ̲FORMAT 4.2.3.5
EOMM 4.2.3.5…86…1 …02… …02…
…02… …02… …02…
MMI ̲REC ̲COUNT 4.2.3.5
BOFL 4.2.3.5
BIT ̲0 CPS/DBD/001
BIT ̲1 CPS/DBD/001
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
VUS ̲MMI ̲CTRL ̲TABLE Refer CPS/DBD/001
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
N/A
4.2.3.6.13.4 r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲
Refer figure 4.2.3.6.13-1
R̲E̲A̲D̲ ̲M̲M̲I̲ ̲C̲T̲R̲L̲ ̲T̲A̲B̲L̲E̲
MMI ̲TMP ̲PARAM.TABLE ̲ID = VUS ̲MMI ̲CONTROL ̲TABLE
MMI ̲TMP ̲PARAM.FUNCTION = SEARCH ̲PRIMARY ̲KEY
MMI ̲TMP ̲PARAM.MASK ̲1 = 0
MMI ̲TMP ̲PARAM.ENTRY = 0
MMI ̲TMP ̲PRAM.BUFFER ̲1 = KEY ̲LIST
MMI ̲TMP ̲PARAM.COUNT = 1
MMI ̲TMP ̲PARAM.BUFFER ̲2 = MMI ̲HEAD ̲REC
MMI ̲TMP ̲PARAM.BUFFER ̲2 ̲LENGTH = MMI ̲HEAD ̲SIZE +
MAX ̲SECTION ̲SIZE * CTRL ̲REC ̲SIZE
MMI ̲TMP ̲PARAM.MASK ̲2 = BIT ̲0 + BIT ̲1
KEY ̲LIST.INFO = 0
KEY ̲LIST.INK = 0
KEY ̲LIST.FORMAT ̲ID = CURRENT ̲FORMAT
CASE SEARCH ̲PRIMARY ̲KEY (MMI ̲TMP ̲PARAM)(CC): ERROR
̲OK
ERROR? ANALYSE ̲ERROR (CC,0)
OK?
END CASE
EOMM = MMI ̲REC ̲COUNT * CTRL ̲REC ̲SIZE + 1
BOFL = EOMM + 1
END
Figure 4.2.3.6.13-1
4.2.3.6.14 C̲L̲E̲A̲R̲ ̲S̲P̲L̲I̲T̲
4.2.3.6.14.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
Clears format split by call to Format Handler (SEND
̲CONTROL).
4.2.3.6.14.2 I̲n̲t̲e̲r̲f̲a̲c̲e̲ ̲D̲e̲f̲i̲n̲i̲t̲i̲o̲n̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲t̲i̲o̲n̲
a) CLEAR ̲SPLIT
b) CLEAR ̲SPLIT (R6)
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̲
R0-R7
F̲a̲t̲a̲l̲ ̲E̲r̲r̲o̲r̲s̲
None.
4.2.3.6.14.3 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲
FORMAT ̲IFCB 4.1.4
VDU ̲SPLIT ̲FAILED CPSDBD/001
CLEAR ̲THE ̲SPLIT CPS/DBD/001
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
N/A
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
N/A.
4.2.3.6.14.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲
Ref. figure 4.2.3.6.14-1
C̲L̲E̲A̲R̲ ̲S̲P̲L̲I̲T̲
CASE SEND ̲CONTROL(FORMAT ̲IFCB, CLEAR ̲THE ̲SPLIT)(CC):
ERROR
̲OK
ERROR? CASE ANALYSE ̲ERROR (CC, 1,
VDU ̲SPLIT ̲FAILED):L1
L1? SIGNAL ̲SFCO (SEM, SPLIT ̲FAILED)
(4.2.3.6.23-1)
END CASE
OK?
END CASE
END
Figure 4.2.3.6.14-1…86…1 …02… …02… …02… …02… …02…
4.2.3.6.15 C̲R̲E̲A̲T̲E̲ ̲D̲I̲S̲P̲ ̲R̲E̲C̲
4.2.3.6.15.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
Creates an IOC record and moves it to IOC ̲BUFFER.
4.2.3.6.15.2 I̲n̲t̲e̲r̲f̲a̲c̲e̲ ̲D̲e̲f̲i̲n̲i̲t̲i̲o̲n̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
) CREATE ̲DISP ̲REC
b) CREATE ̲DISP ̲REC (R6)
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̲
R0-R7 destr.
F̲a̲t̲a̲l̲ ̲E̲r̲r̲o̲r̲s̲
None.
4.2.3.6.15.3 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲
FL ̲PT 4.2.3.5
EOCF 4.2.3.5
EOCB 4.2.3.5
END ̲OF ̲CIF ̲FIELD 4.2.3.5
END ̲OF ̲CIF ̲BUF 4.2.3.5
CIF ̲F ̲LIST 4.2.3.5
IOC ̲PT 4.2.3.5
F ̲BYTE ̲ADR 4.2.3.5
FIXED 4.2.3.5
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
N/A
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
N/A.
4.2.3.6.15.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲
Ref. figure 4.2.3.6.15-1
C̲R̲E̲A̲T̲E̲ ̲D̲I̲S̲P̲ ̲R̲E̲C̲
READ ̲ITEM ̲PT = I ̲PT
FIXED? ITEM ̲LENGTH = I ̲SIZE
ITEM ̲LENGTH = BYTE ̲COUNT
WRITE ̲ITEM ̲PT = IOC ̲PT
E̲X̲E̲C̲ ̲D̲I̲S̲P̲ ̲P̲R̲O̲C̲ ̲(̲D̲I̲S̲P̲ ̲P̲R̲O̲C̲,̲ ̲R̲E̲A̲D̲ ̲I̲T̲E̲M̲ ̲P̲T̲,̲ ̲I̲T̲E̲M̲ ̲L̲E̲N̲G̲T̲H̲,̲
W̲R̲I̲T̲E̲ ̲I̲T̲E̲M̲ ̲P̲T̲)̲(̲I̲T̲E̲M̲ ̲L̲E̲N̲G̲T̲H̲ ̲(̲4̲.̲2̲.̲3̲.̲6̲.̲2̲2̲-̲1̲)̲
S̲E̲T̲ ̲F̲I̲E̲L̲D̲ ̲L̲I̲S̲T̲ ̲A̲D̲D̲R̲E̲S̲S̲E̲S̲ ̲(̲4̲.̲2̲.̲3̲.̲6̲.̲9̲-̲1̲)̲
IOC ̲L ̲NO = L ̲NO
IOC ̲INC = C ̲INC
FG ̲COUNT EQ ZERO? IOC ̲F ̲NO = C ̲F ̲COUNT
IOC ̲F ̲NO = F ̲NO + F ̲COUNT * C ̲FG ̲COUNT - 1
INCREMENT FL ̲PT
FIXED? I ̲PT = I ̲PT + ISIZE
I ̲PT = I ̲PT + BYTE ̲COUNT
I ̲PT GE EOCF (I ̲PT ̲BASE)? END ̲OF ̲CIF ̲FIELD = TRUE
I ̲PT GE EOCB (I ̲PT ̲BASE)? END ̲OF ̲CIF ̲BUF = TRUE
CIF ̲F ̲LIST.ELEM (I ̲PT ̲BASE).
F ̲BYTE ̲ADR = CIF ̲F ̲LIST.ELEM
(I ̲PTBASE).
F ̲BYRE ̲ADR - BYTE ̲COUNT
IOC ̲PT = IOC ̲PT + ITEM ̲LENGTH
END
Figure 4.2.3.6.15-1…86…1 …02… …02… …02… …02… …02…
4.2.3.6.16 F̲I̲E̲L̲D̲ ̲R̲E̲P̲E̲A̲T̲
4.2.3.6.16.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
Creates IOC records for a repeated field and moves
them to IOC ̲BUFFER.
4.2.3.6.16.2 I̲n̲t̲e̲r̲f̲a̲c̲e̲ ̲D̲e̲f̲i̲n̲i̲t̲i̲o̲n̲
C̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) FIELD ̲REPEAT
b) FIELD ̲REPEAT (R6)
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̲
R0-R7 destr.
F̲a̲t̲a̲l̲ ̲E̲r̲r̲o̲r̲s̲
None.
4.2.3.6.16.3 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲
FIXED 4.2.3.5
b)E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
N/A
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
N/A…86…1 …02… …02… …02… …02… …02…
4.2.3.6.16.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲
Refer figure 4.2.3.6.16-1…86…1 …02… …02… …02… …02…
…02…
F̲I̲E̲L̲D̲ ̲R̲E̲P̲E̲A̲T̲
C ̲F ̲COUNT = 1
LOOP UNTIL C ̲F ̲COUNT GT F ̲COUNT
C̲R̲E̲A̲T̲E̲ ̲D̲I̲S̲P̲ ̲R̲E̲C̲ ̲(̲F̲I̲X̲E̲D̲)̲ ̲(̲4̲.̲2̲.̲3̲.̲6̲.̲1̲5̲-̲1̲)̲
INCREMENT C ̲F ̲COUNT
END LOOP
END
Figure 4.2.3.6.16-1…86…1 …02… …02… …02… …02… …02…
4.2.3.6.17 F̲I̲E̲L̲D̲ ̲G̲R̲O̲U̲P̲ ̲R̲E̲P̲E̲A̲T̲
4.2.3.6.17.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
Creates IOC records for a field group and moves them
to IOC ̲BUFFERS.
4.2.3.6.17.2 I̲n̲t̲e̲r̲f̲a̲c̲e̲ ̲D̲e̲f̲i̲n̲i̲t̲i̲o̲n̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) FIELD ̲GROUP ̲REPEAT
b) FIELD ̲GROUP ̲REPEAT (R6)
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̲
R0-R7 destr.
F̲a̲t̲a̲l̲ ̲E̲r̲r̲o̲r̲s̲
None.
4.2.3.6.17.3 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲
FIXD 4.2.3.5
MMI ̲PT 4.2.3.5
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
N/A
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
N/A…86…1 …02… …02… …02… …02… …02…
4.2.3.6.17.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲
Refer figure 4.2.3.6.17-1
F̲I̲E̲L̲D̲ ̲G̲R̲O̲U̲P̲ ̲R̲E̲P̲E̲A̲T̲
C ̲F ̲COUNT = 1
LOOP UNTIL C ̲F ̲COUNT GT F ̲COUNT
C ̲FG ̲COUNT = 1
LOOP UNTIL C ̲FG ̲COUNT GT FG ̲COUNT
C̲R̲E̲A̲T̲E̲ ̲D̲I̲S̲P̲ ̲R̲E̲C̲ ̲(̲F̲I̲X̲E̲D̲)̲ ̲(̲4̲.̲2̲.̲3̲.̲6̲.̲1̲5̲-̲1̲)̲
INCREMEN C ̲FG ̲COUNT
END LOOP
INCREMENT MMI ̲PT
S̲E̲T̲ ̲M̲M̲I̲ ̲V̲D̲U̲ ̲A̲D̲D̲R̲E̲S̲S̲E̲S̲ ̲(̲4̲.̲2̲.̲3̲.̲6̲.̲7̲-̲1̲)̲
S̲E̲T̲ ̲M̲E̲M̲O̲R̲Y̲ ̲A̲D̲D̲R̲E̲S̲S̲E̲S̲ ̲(̲4̲.̲2̲.̲3̲.̲6̲.̲1̲0̲-̲1̲)̲
INCREMENT C ̲F ̲COUNT
END LOOP
END
Figure 4.2.3.6.17-1…86…1 …02… …02… …02… …02… …02…
4.2.3.6.20 C̲H̲E̲C̲K̲ ̲F̲I̲N̲A̲L̲ ̲C̲A̲L̲L̲
4.2.3.6.20.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
Checks (before call of display procedure) if this is
the last call of the display procedure.
4.2.3.6.20.2 n̲t̲e̲r̲f̲a̲c̲e̲ ̲D̲e̲f̲i̲n̲i̲t̲i̲o̲n̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) CHECK ̲FINAL ̲CALL
b) CHECK ̲FINAL ̲CALL (R6)
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̲
R0-R7 destr.
F̲a̲t̲a̲l̲ ̲E̲r̲r̲o̲r̲s̲
None
4.2.3.6.20.3 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) D̲a̲t̲a̲ ̲e̲f̲e̲r̲e̲n̲c̲e̲d̲
FL ̲PT 4.2.3.5
L ̲NO 4.2.3.5
IOC ̲L ̲NO 4.2.3.5
F ̲NO 4.2.3.5
IOC ̲F ̲NO 4.2.3.5
FINAL ̲CALL 4.2.3.5
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
N/A
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
N/A
4.2.3.6.20.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲
Refer figure 4.2.3.6.20-1.
C̲H̲E̲C̲K̲ ̲F̲I̲N̲A̲L̲ ̲C̲A̲L̲L̲
INCREMENT FL ̲PT
S̲E̲T̲ ̲F̲I̲E̲L̲D̲ ̲L̲I̲S̲T̲ ̲A̲D̲D̲R̲E̲S̲S̲E̲S̲ ̲(̲4̲.̲2̲.̲3̲.̲6̲.̲9̲-̲1̲)̲
L ̲NO EQ IOC ̲L ̲NO? F ̲NO EQ IOC ̲FNO? FINAL ̲CALL = FALSE
FINAL ̲CALL = TRUE
DECREMENT FL ̲PT
S̲E̲T̲ ̲F̲I̲E̲L̲D̲ ̲L̲I̲S̲T̲ ̲A̲D̲D̲R̲E̲S̲S̲E̲S̲ ̲(̲4̲.̲2̲.̲3̲.̲6̲.̲9̲-̲1̲)̲
END
Figure 4.2.3.6.20-1…86…1 …02… …02… …02… …02…
4.2.3.6.21 E̲X̲E̲C̲ ̲V̲A̲L̲ ̲P̲R̲O̲C̲
4.2.3.6.21.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
Calls the validation procedure referenced in the VUS
̲MMI ̲CONTROL ̲TABLE corresponding to each field in the
format The validation procedure performs necessary
validation, conversion and transfer from BUFFER ̲LIST
to output buffer.
4.2.3.6.21.2 I̲n̲t̲e̲r̲f̲a̲c̲e̲ ̲D̲e̲f̲i̲n̲i̲t̲i̲o̲n̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) EXEC ̲VAL ̲PROC (VAL ̲PROC: VALIDATION ̲PROCEDURE ̲TYPE
READ ̲ITE ̲PT: INTEGER,
ITEM ̲LENGTH: INTEGER,
WRITE ̲ITEM ̲PT: INTEGER)
(ITEM ̲LENGTH: INTEGER): ERROR ̲OK
b) EXEC ̲VAL ̲PROC(R0,R1,R2,R3,R4,R5, R6,R7): ERROR
̲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̲
R1: VALIDATION ̲PROCEDURE (Destr.)
R2,R3: BYTE POINTER (Destr.)
R4: ITEM ̲LENGTH (Destr.)
R5,R7: BYTE POINTER (Destr.)
R6: LINK (Destr.)
R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲
R0-R3, R5-R7 (Destr.)
R4 IEM ̲LENGTH
F̲a̲t̲a̲l̲ ̲E̲r̲r̲o̲r̲s̲
Invalid Procedure
4.2.3.6.21.3 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲d̲
VAL ̲ERR Ref. 4.1.4
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
N/A
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
N/A
4.2.3.6.21.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲
Refer figure .2.3.6.21-1…86…1 …02… …02… …02… …02…
E̲X̲E̲C̲ ̲V̲A̲L̲ ̲P̲R̲O̲C̲
CASE VAL ̲PROC OF VALIDATION ̲PROCEDURE ̲TYPE
CLASS ̲VAL? CASE C̲L̲A̲S̲S̲ ̲V̲A̲L̲ ̲(̲R̲E̲A̲D̲ ̲I̲T̲E̲M̲ ̲P̲T̲,̲ ̲I̲T̲E̲M̲ ̲L̲E̲N̲T̲H̲,̲
W̲R̲I̲T̲E̲ ̲I̲T̲E̲M̲ ̲P̲T̲)̲:̲
̲E̲R̲R̲O̲R̲ ̲O̲K̲
ERROR? VAL ̲ERR = TRUE
OK?
END CASE
SPH ̲VAL? CASE S̲P̲H̲ ̲V̲A̲L̲ ̲(̲R̲E̲A̲D̲ ̲I̲T̲E̲M̲ ̲P̲T̲,̲ ̲I̲T̲E̲M̲ ̲L̲E̲N̲G̲T̲H̲,̲
W̲R̲I̲T̲E̲ ̲I̲T̲E̲M̲ ̲P̲T̲)̲:̲
̲E̲R̲R̲O̲R̲ ̲O̲K̲
ERROR? VAL ̲ERR = TRUE
OK?
END CASE
END CASE
ND
Figuer 4.2.3.6.21-1…86…1 …02… …02… …02… …02… …02… …02…
4.2.3.6.22 E̲X̲E̲C̲ ̲D̲I̲S̲P̲ ̲P̲R̲O̲C̲
4.2.3.6.22.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
Calls the display procedure referred in the VUS ̲MMI
̲CONTROL ̲TABLE corresponding to each field in the format.
The isplay-procedure performs necessary conversion
and transfers data from input buffer to Buffer List.
4.2.3.6.22.2 I̲n̲t̲e̲r̲f̲a̲c̲e̲ ̲D̲e̲f̲i̲n̲i̲t̲i̲o̲n̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) EXEC ̲DISP ̲PROC (DISP ̲PROC: DISPLAY ̲PROCEDURE
̲TYPE;
READ ̲ITEM ̲PT: INTEGER,
ITEM ̲LENGTH: INTEGER,
WRITE ̲ITEM ̲PT INTEGER)
(ITEM ̲LENGTH: INTEGER)
b) EXEC ̲DISP ̲PROC (R0, R1, R2, R3, R4, R5, R6, R7)
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̲
R1 DSPLAY ̲PROCEDURE Destr.
R2,R3 BYTE POINTER Destr.
R4 ITEM ̲LENGTH Destr.
R5, R7 BYTE POINTER Destr.
R6 LINK Destr.
R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲
R0-R3, R5-R7 Destr.
R4: ITEM ̲LENGTH
F̲a̲t̲a̲l̲ ̲E̲r̲r̲o̲r̲s̲
Invalid Procedure
4.2.3.6.22.3 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲d̲
N/A
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
N/A
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
N/A
4.2.3.6.22.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲
Ref. Figure 4.2.3.6.22-1
E̲X̲E̲C̲ ̲D̲I̲S̲P̲ ̲P̲R̲O̲C̲
CASE DISP ̲PROC OF DISPLAY ̲PROCEDURE ̲TYPE
DISP ̲TRANS ̲ID? D̲I̲S̲P̲ ̲T̲R̲A̲N̲S̲ ̲I̲D̲ ̲(̲R̲E̲A̲D̲ ̲I̲T̲E̲M̲ ̲P̲T̲,̲ ̲I̲T̲E̲M̲
̲L̲E̲N̲G̲T̲H̲,̲
W̲R̲I̲T̲E̲ ̲I̲T̲E̲M̲ ̲P̲T̲)̲
INT ̲TO ̲ASCII? I̲N̲T̲ ̲T̲O̲ ̲A̲S̲C̲I̲I̲ ̲(̲R̲E̲A̲D̲ ̲I̲T̲E̲M̲P̲T̲,̲ ̲I̲T̲E̲M̲
̲L̲E̲N̲G̲T̲H̲,̲
W̲R̲I̲T̲E̲ ̲I̲T̲E̲M̲ ̲P̲T̲)̲
MOVE ̲DATA? M̲O̲V̲E̲ ̲D̲A̲T̲A̲ ̲(̲R̲E̲A̲D̲ ̲I̲T̲E̲M̲ ̲P̲T̲,̲ ̲I̲T̲E̲M̲ ̲L̲E̲N̲G̲T̲H̲,̲
W̲R̲I̲T̲E̲ ̲I̲T̲E̲M̲ ̲P̲T̲)̲
END CASE
END
Figure 4.2.3.6.22-1
4.2.3.6.23 S̲I̲G̲N̲A̲L̲ ̲S̲F̲C̲O̲
4.2.3.6.23.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
Sets parameters in SVUP ̲COROUTINE ̲OP and signals specified
semaphore.
4.2.3.6.23.2 I̲n̲t̲e̲r̲f̲a̲c̲e̲ ̲D̲e̲f̲i̲n̲i̲t̲i̲o̲n̲
C̲a̲l̲l̲ ̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) SIGNAL ̲SFCO (SEM: OPERATION ̲SEMAPHORE,
CC: SVDIA ̲SFCO ̲CC ̲TYPE)
b) SIGNAL ̲SFCO (R0, R1, R6)
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̲
R0: SEMAPHORE (destr)
R1: COMPLETION CODE (destr)
R6: LINK (destr)
R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲
R0-R7 (destr)
F̲a̲t̲a̲l̲ ̲E̲r̲r̲o̲r̲s̲
None
4.2.3.6.23.3 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲
SFCO ̲SEM 4.1.4
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
N/A
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
N/A
4.2.3.6.23.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲
Refer figure 4.2.3.6.23-1.
S̲I̲G̲N̲A̲L̲ ̲S̲F̲C̲O̲
OPLIST ̲PT = 1
LOOP UNTIL OPLIST ̲PT GT CMD ̲OP ̲CNT
% OPLIST(OPLIST ̲PT).OP ̲ID.(1) = SVDIA ̲ID
% OPLIST(OPLIST ̲PT).PARA1 = CC
% OPLIST(OPLIST ̲PT).PARA2 = INPUTDATA ̲PT
SIGNAL ̲OPSEM(SEM, OPLIST(OPLIST ̲PT)):OK
INCREMENT OPLIST ̲PT
END LOOP
CMD ̲OP ̲CNT = 0
CC EQ SPLIT ̲FAILED? D̲I̲A̲L̲O̲G̲U̲E̲ ̲C̲O̲N̲T̲R̲O̲L̲ ̲(̲4̲.̲2̲.̲3̲.̲4̲.̲1̲-̲1̲)̲
END
Figure 4.2.3.6.23-1…86…1 …02… …02… …02… …02… …02… …02…
4.2.3.6.24 U̲P̲D̲A̲T̲E̲ ̲E̲R̲R̲O̲R̲ ̲L̲I̲S̲T̲
4.2.3.6.24.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
Checks if old or new error list is to be used and enters
line no., Incarnation no., Field no. and Error code
i Error List:
4.2.3.6.24.1 I̲n̲t̲e̲r̲f̲a̲c̲e̲ ̲D̲e̲f̲i̲n̲i̲t̲i̲o̲n̲
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) UPDATE ̲ERROR ̲LIST (LINE: LINE ̲NUMBER ̲TYPE
INC: INCARNATION ̲NUMBER
̲TYPE
FIELD: FIELD ̲NUMBER ̲TYPE
ERROR: ERROR ̲CODE)
b) UPDATE ̲ERROR ̲LIST (R0, R1, R2, R3, R)
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̲
R0 LINE (destr)
R1 INC (destr)
R2 FIELD (destr)
R3 ERR (destr)
R6 LINK (destr)
R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲
R0-R7 (destr)
F̲a̲t̲a̲l̲ ̲E̲r̲r̲o̲r̲s̲
None
4.2.3.6.24.3 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲d̲
OLD ̲ERROR ̲LIST
NE ̲PT
OE ̲PT
BNEL
BOEL
ER ̲PT
EOER
EOEL
ENEL
ERROR ̲LIST ̲FULL
ERR ̲LIST
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
NA
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
N/A
4.2.3.6.24.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲
Ref figure 4.2.3.6.24-1.
U̲P̲D̲A̲T̲E̲ ̲E̲R̲R̲O̲R̲ ̲L̲I̲S̲T̲
OLD ̲ERROR ̲LIST? INCREMENT OE ̲PT
INCREMENT NE ̲PT BOER = BOEL
BOER = BNEL ER ̲PT = OE ̲PT
ER ̲PT = NE ̲PT EOER = EOEL
EOER = ENEL
ER ̲PT GT EOER? ERR ̲LIST ̲FULL TRUE
EQUIVALENCE (ERR ̲LIST(ER ̲PT), LINE ̲NO: ERRL ̲REC.MARGIN ̲LINE
̲NO)
EQUIVALENCE (ERR ̲LIST(ER ̲PT), INC: ERRL ̲REC.MARGIN ̲INC ̲NO)
EQUIVALENCE (ERR ̲LIST(ER ̲PT), ERROR: ERRL ̲REC.MARGIN ̲ERR ̲CODE)
EQUIVALENCE (ERR ̲LIST(ER ̲PT), FIELD ̲NO: ERRL ̲REC.ERRFIELD ̲NO)
LINE ̲NO = IOC ̲L ̲NO
INC = IOC ̲INC
ERROR = ERR
FIELD ̲NO = IOC ̲F ̲NO
END
Figure 4.2.3.6.24-1…86…1 …02… …02… …02… …02… …02… …02…
4.2.3.7 S̲u̲b̲p̲a̲c̲k̲a̲g̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲s̲
4.2.3.7.1 S̲F̲C̲O̲ ̲S̲V̲D̲I̲A̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲s̲
SFCO commands:
CLOSE
CANCEL ̲I ̲O
CLEAR ̲VDU
INPUT ̲DATA
OUTPUT ̲DATA
OUTPUT ̲FORMAT
L ̲INSERT
L ̲DELETE
Refer fig. 4.2.2.7.2-1
4.2.3.7.2 S̲V̲D̲I̲A̲ ̲S̲F̲C̲O̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲s̲
SVDIA COMPLETIONS:
Completion Codes: SPLIT ̲FAILED ̲CC,OK ̲CC,ERROR ̲CC
Refer fig. 4.2.2.7.2-1
4.2.4 R̲e̲t̲r̲i̲e̲v̲e̲ ̲S̲u̲b̲p̲a̲c̲k̲a̲g̲e̲
The S̲upervisor R̲e̲t̲r̲ieve Subpackage (SRETR) is responsible
for reception and treatment of retrieval answer from
SAR.
4.2.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 functions included in this subpackage are the following:
- reception of off-line/on-line notification
- reception of retrieved items
The functional breakdown is shown in figure 4.2.4.1-1.
Retrieved items and off-line/on-line notificationsare
received from SAR in the retrieve queue. After analysis,
the received item is sent to the destination.…86…1
…02… …02… …02… …02… …02…
Figure 4.2.4.1-1
4.2.4.2 S̲o̲f̲t̲w̲a̲r̲e̲ ̲S̲t̲r̲u̲c̲t̲u̲r̲e̲
The retrieve subpackage consists of one coroutine containing
the following modules and procedures:
M̲o̲d̲u̲l̲e̲s̲:̲
-RETRIEVAL ̲MAIN
Common Procedures
None
Module Components:
-RETR SIGNAL
4.2.4.3 D̲a̲t̲a̲ ̲F̲l̲o̲w̲ ̲a̲n̲d̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲L̲o̲g̲i̲c̲ ̲w̲i̲t̲h̲i̲n̲ ̲S̲R̲E̲T̲R̲
4.2.4.3.1 D̲a̲t̲a̲ ̲F̲l̲o̲w̲
The HIPO diagrams overleaf show the data flow of SRETR.
4.2.4.3.2 C̲o̲n̲t̲r̲o̲l̲ ̲L̲o̲g̲i̲c̲
The call structure within SRETR is shown n figure 4.2.4.3-4
identifying all calls between modules and module components.
Fra diagr. ID: 4.2.4.3-1 - 4.2.4.3-3
Figure 4.2.4.3-4
4.2.4.4 M̲o̲d̲u̲l̲e̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
4.2.4.4.1 R̲E̲T̲R̲I̲E̲V̲A̲L̲ ̲M̲A̲I̲N̲ ̲M̲o̲d̲u̲l̲e̲
4.2.4.4.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 purpose of this module is to receive input from
the Retrieve Queueand to analysis the received QEL-attributes.
The result of the analysis is signalled to SFCO in
case of on-line retrieval. In case of off-line retrieval,
then the item received will be sent to the Response
Queue.
4.2.4.4.1.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) RETR ̲MAIN
b) RETR ̲MAIN (R6)
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 DEST
R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲
None
R0-R7 DEST
4.2.4.4.1.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
a) R̲E̲T̲R̲ ̲S̲I̲G̲N̲A̲L̲
The purpose of this procedure is to signal a no