DataMuseum.dk

Presents historical artifacts from the history of:

CR80 Wang WCS documentation floppies

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about CR80 Wang WCS documentation floppies

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦c076c8f9b⟧ Wang Wps File

    Length: 11533 (0x2d0d)
    Types: Wang Wps File
    Notes: Spelunked
    Names: »~ORPHAN51.08«

Derivation

└─⟦4c162cf87⟧ Bits:30006103 8" Wang WCS floppy, CR 0163A
    └─ ⟦this⟧ »~ORPHAN51.08« 

WangText

…00……00……00……00……00…3…0a……00……00…3…0b…3…00…3 3…07…2…09…2…0e…2…86…1                                             …02…           …02…   …02…        

…02…CPS/SDS/035

…02…850601…02……02…
SUPERVISOR VDU
DETAILED DESIGN SPECIFICATION…02…ISSUE 1…02…CAMPS







4.2.2.4.7    E̲x̲e̲c̲u̲t̲e̲ ̲S̲y̲s̲t̲e̲m̲ ̲S̲e̲q̲u̲e̲n̲c̲e̲



4.2.2.4.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̲

         Steps through the sequence record as follows:

         1)  Sets the set of f/c keys allowed during sequence
             exection.

         2)  Checks if a log report shall be generated and sends
             it if specified.

         3)  Checks if a functional task shall be executed and
             initiates the task if specified.

         4)  Checks if a command to SVDIA shall be sent and
             if sends it, and awaits the nswer.

         5)  Checks whether a positioning of the cursor is specified
             and if, positions the cursor as required.

         6)  Sets the set of f/c keys allowed after execution
             of the sequence.

         7)  Fetches the sequence record field specifying the
             next action t be performed and sequence execution
             is finalised.



4.2.2.4.7.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         Call Specification

         a) EXEC ̲SYS ̲SEQ

             (SEQ ̲WAIT ̲STATE: SFCO ̲STATE ̲TYPE)

             (SEQ ̲STATE: SEQ ̲STATE ̲TYPE

             SVUP ̲OP: SVUP ̲COROUTINE ̲OP)

         b)  EXEC SYS SEQ (R0,R5,R7,6)

             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̲

             R0  SEQ ̲WAIT ̲STATE      C    D
             R5  POINTER TO SVUP ̲OP  -    R
             R7  SEQ ̲STATE           -    R
             R6 LINK                 C    K

             R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲

             R0-R4                   DEST
             R5 Pointer to SVUP ̲OP   RETURN
             R6                      DES
             R7  SEQ ̲STATE



4.2.2.4.7.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲

             None



4.2.2.4.7.4 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̲

             Refer CPS prefixes
             Refer SUP package prefixes
             Refer SFCO subpackage prefixes

         b)  E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲

             Refer SUP package data
             Refer FCO subpackage data

             SEQ ̲REC                 C    K
             SEQ ̲TABLE ̲KEY           C    R
             SVUP ̲OP                 -    R
             EXP ̲SVDIA ̲NO            C    R
             SVDIA ̲CMD ̲OUT           C    K
             FCK ̲SET                 -    R
             CMD ̲CURSOR ̲RECORD       C    R
             CURSOR ̲RECORD           C    R
             SVDIA ̲TMP ̲REC ̲PT        -    R

         c)  L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲



4.2.2.4.7.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲

         Refer fig 4.2.2.4.7-1…86…1         …02…   …02…   …02…   …02…      …02…    
            …02…                           
         FCK ̲SET = SEQ ̲REC.FCK ̲SET1

         CASE    SEQ ̲REC.LOG OF SVUP ̲LOG ̲TYPE

             NO ̲LOG? 
             SYS ̲LOG?                R̲E̲P̲O̲R̲T̲ ̲L̲O̲G̲(̲S̲Y̲S̲ ̲L̲O̲G̲)̲(̲4̲.̲2̲.̲2̲.̲6̲.̲2̲2̲)̲



             OTHERWISE?              T̲E̲P̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲ ̲E̲R̲R̲O̲R̲(̲G̲I̲V̲E̲
                                     ̲U̲P̲)̲(̲4̲.̲1̲.̲5̲.̲2̲)̲

         END CSE

         SEQ ̲REC.FUNCTION NE NULL?   E̲X̲E̲C̲U̲T̲E̲ ̲S̲Y̲S̲ ̲F̲U̲N̲C̲(̲ ̲ ̲ ̲ ̲ ̲
                                     ̲ ̲)̲

         SEQ ̲REC.SVDIA ̲CMD EQ NULL?

         S̲E̲N̲D̲ ̲S̲V̲D̲I̲A̲ ̲C̲M̲D̲ ̲A̲N̲D̲ ̲A̲W̲A̲I̲T̲ ̲A̲N̲S̲W̲E̲R̲(̲F̲i̲g̲.̲ ̲4̲.̲2̲.̲2̲.̲4̲.̲7̲-̲2̲)̲

         SEQ ̲REC.CURSOR.SPLIT EQ NO ̲SPLIT?

         CURSOR ̲RECORD = SEQ ̲REC.CURSOR.POSITION

         CASE S̲E̲T̲ ̲C̲U̲R̲S̲O̲R̲(̲S̲E̲Q̲ ̲R̲E̲C̲.̲C̲U̲R̲S̲O̲R̲S̲P̲L̲I̲T̲)̲:̲ ̲E̲X̲C̲
                                          N̲O̲R̲M̲A̲L̲(̲4̲.̲2̲.̲2̲.̲6̲.̲1̲4̲)

             EXC?    SEQ ̲STATE = TEXC

                     RETURN

             NORMAL?

         END CASE

         FCK ̲SET = SEQ ̲REC.FCK ̲SET2

         SEQ ̲STATE = SEQ ̲REC.SEQ ̲STATE

         RETURN








                     Fig. 4.2.2.4.7-1


   S̲E̲N̲D̲ ̲S̲V̲D̲I̲A̲ ̲C̲O̲M̲M̲A̲N̲D̲ ̲A̲N̲D̲ ̲A̲W̲A̲I̲T̲ ̲A̲N̲S̲W̲E̲R̲

   CASE SEQ ̲WAIT ̲STATE OF SFCO ̲STATE ̲TYPE

         WORK1 ̲STATE?   S̲E̲N̲D̲ ̲S̲V̲D̲I̲A̲ ̲C̲O̲M̲M̲A̲N̲D̲ ̲A̲N̲D̲ ̲A̲W̲A̲I̲T̲ ̲A̲N̲S̲W̲E̲R̲
                        N̲O̲R̲M̲A̲L̲ ̲C̲A̲S̲E̲(̲4̲.̲2̲.̲2̲.̲4̲.̲7̲-̲3̲)̲

         WORK5 ̲STATE    S̲N̲D̲ ̲S̲V̲D̲I̲A̲ ̲C̲O̲M̲M̲A̲N̲D̲ ̲A̲N̲D̲ ̲A̲W̲A̲I̲T̲ ̲A̲N̲S̲W̲E̲R̲
                        I̲N̲T̲E̲R̲R̲U̲P̲T̲ ̲C̲A̲S̲E̲(̲4̲.̲2̲.̲2̲.̲4̲.̲7̲-̲5̲)̲

         WORK6 ̲STATE    S̲E̲N̲D̲ ̲S̲V̲D̲I̲A̲ ̲C̲O̲M̲M̲A̲N̲D̲ ̲A̲N̲D̲ ̲A̲W̲A̲I̲T̲ ̲A̲N̲S̲W̲E̲R̲
                        C̲L̲O̲S̲E̲/̲S̲T̲O̲P̲ ̲C̲A̲S̲E̲(̲4̲.̲2̲.̲2̲.̲4̲.̲7̲-̲6̲)̲

   END CASE































                  Fig. 4.2.2.4.7-2


   S̲E̲N̲D̲ ̲S̲V̲D̲I̲A̲ ̲C̲O̲M̲M̲A̲N̲D̲ ̲A̲N̲D̲ ̲A̲W̲A̲I̲T̲ ̲A̲N̲S̲W̲E̲R̲ ̲N̲O̲R̲M̲A̲L̲ ̲C̲A̲S̲E̲

   S̲E̲N̲D̲ ̲S̲V̲D̲I̲A̲ ̲C̲M̲D̲(̲S̲E̲Q̲ ̲R̲E̲C̲.̲S̲V̲D̲I̲A̲ ̲C̲M̲D̲,̲ ̲S̲E̲Q̲ ̲R̲E̲C̲,̲ ̲S̲V̲D̲I̲A̲ ̲F̲O̲R̲M̲A̲T̲,̲
   ̲0̲,̲ ̲0̲)̲
                                                     
                        (̲4̲.̲2̲.̲2̲.̲6̲.̲2̲)̲

   LOOP  AWAIT ̲VDIA ̲ANSWER ̲NORMAL ̲CASE

      W̲A̲I̲T̲ ̲S̲F̲C̲O̲ ̲E̲V̲E̲N̲T̲(̲W̲O̲R̲K̲1̲ ̲S̲T̲A̲T̲E̲)̲(̲S̲V̲U̲P̲ ̲C̲O̲ ̲O̲P̲)̲(̲4̲.̲2̲.̲2̲.̲6̲.̲1̲0̲)̲

      CASE   SVUP ̲CO ̲OP.OP ̲ID(2) OF SENDER ̲ID ̲TYPE

         SVCO ̲ID?    D̲E̲L̲E̲T̲E̲ ̲F̲C̲ ̲K̲E̲Y̲ ̲I̲N̲P̲U̲T̲ ̲R̲E̲Q̲U̲E̲S̲T̲(̲4̲.̲2̲.̲2̲.̲6̲.̲7̲)̲

                     CASE SVUP ̲CO ̲OP.CMD OF

                        STOP ̲SFCO?    SEQ ̲STATE = TSTOP
                     CLOSE ̲SFCO?   SEQ ̲STATE = TCLOSE
                        OTHERWISE?    T̲E̲P̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲ ̲E̲R̲R̲O̲R̲(̲G̲I̲V̲E̲
                        ̲U̲P̲)̲
                                                     
                                      (̲4̲.̲2̲.̲2̲.̲6̲.̲2̲)̲

                     END CASE

                     RETURN

         FC ̲KEY ̲ID?  CASE  F̲E̲T̲C̲H̲ ̲A̲N̲D̲ ̲V̲A̲L̲ ̲K̲E̲Y̲(̲ ̲ ̲)̲(̲F̲C̲ ̲K̲E̲Y̲,̲
                           ̲C̲C̲)̲:̲
                                          E̲X̲C̲ ̲N̲O̲R̲M̲A̲L̲(̲4̲.̲2̲.̲2̲.̲6̲.̲1̲2̲)̲
                        EXC?   SEQ ̲STATE = TEXC
                               RETURN

                        NORMAL?  CC = ILL? R̲E̲Q̲U̲E̲S̲T̲ ̲F̲C̲
                        ̲K̲E̲Y̲ ̲I̲N̲P̲U̲T̲
                                                   (̲4̲.̲2̲.̲2̲.̲6̲.̲8̲)̲

                               S̲E̲T̲ ̲S̲E̲Q̲ ̲K̲E̲Y̲
                               SEQ ̲STATE = TRPT
                               RETURN

                        END CASE

         SVDIA ̲ID?   S̲V̲D̲I̲A̲ ̲A̲N̲W̲E̲R̲ ̲A̲N̲A̲L̲Y̲S̲I̲S̲ ̲N̲O̲R̲M̲A̲L̲ ̲C̲A̲S̲E̲(̲4̲.̲2̲.̲2̲.̲4̲.̲7̲-̲4̲)̲

         OTHERWISE?  TEP̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲ ̲E̲R̲R̲O̲R̲(̲G̲I̲V̲E̲ ̲U̲P̲)̲(̲4̲.̲1̲.̲5̲.̲2̲)̲

      END CASE

   END LOOP AWAIT ̲SVDIA ̲ANSWER ̲NORMAL ̲CASE


                  Fig. 4.2.2.4.7-3


   S̲V̲D̲I̲A̲ ̲A̲N̲S̲W̲E̲R̲ ̲A̲N̲A̲L̲Y̲S̲I̲S̲ ̲N̲O̲R̲M̲A̲L̲ ̲C̲A̲S̲E̲

   CASE  F̲R̲E̲E̲ ̲S̲F̲C̲O̲ ̲O̲P̲(̲S̲V̲U̲P̲ ̲C̲O̲ ̲O̲P̲)̲:̲ ̲E̲R̲R̲O̲R̲ ̲O̲K̲(̲4̲.̲2̲.̲2̲.̲6̲.̲4̲)̲

      ERROR? T̲E̲P̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲ ̲E̲R̲R̲O̲R̲(̲G̲I̲V̲E̲ ̲U̲P̲)̲(̲4̲.̲1̲.̲5̲.̲2̲)̲

      OK?

   END CASE

   SVUP ̲CO ̲OP.OP ̲ID(1) E EXP ̲SVDIA ̲NO?

   T̲E̲P̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲ ̲E̲R̲R̲O̲R̲(̲G̲I̲V̲E̲ ̲U̲P̲)̲(̲4̲.̲1̲.̲5̲.̲2̲)̲

   SVUP ̲CO ̲OP.PARA1 EQ SPLIT ̲FAIL ̲CC? SEQ ̲STATE = TEXC

                                      RETURN

   SVUP ̲CO ̲OP.CMD NOT EQ INPUT ̲DATA?

   SVUP ̲CO ̲OP.PARA1 EQ OK ̲CC? SEQ ̲REC.SEQ ̲STATE = TCON

   SEQ ̲REC.SEQ ̲STATE = TFCK

      EXT LOOP AWAIT ̲SVDIA ̲ANSWER ̲NORMAL ̲CASE



















                  Fig. 4.2.2.4.7-4


   SEND SVDIA COMMAND AND AWAIT ANSWER INTERRUPT CASE

   LOOP AWAIT ̲SVDIA ̲INTRPT ̲ANSWER

      W̲A̲I̲T̲ ̲S̲F̲C̲O̲ ̲E̲V̲E̲N̲T̲(̲W̲O̲R̲K̲5̲ ̲S̲T̲A̲T̲E̲)̲(̲S̲V̲U̲P̲ ̲C̲O̲ ̲O̲P̲)̲(̲4̲.̲2̲.̲2̲.̲6̲.̲1̲0̲)̲

      CASE SVUP ̲CO ̲OP.OPID(2) OF

         SCO ̲ID? CASE SVUP ̲CO ̲OP.CMD OF

                        STOP ̲SFCO?   SEQ ̲STATE = TSTOP
                                     SVUP ̲OP = SVUP ̲CO
                                     ̲OP

                        CLOSE ̲SFCO?  SEQ ̲STATE = TCLOSE
                                     SVUP ̲OP = SVUP ̲CO
                                     ̲OP

                        OTHERWISE?   T̲E̲P̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲ ̲E̲R̲R̲O̲R̲(̲G̲I̲V̲E̲
                                     ̲U̲P̲)̲
                                                     
                                       (̲4̲.̲1̲.̲5̲.̲)̲
                     END CASE

                     RETURN

         SVDIA ̲ID?   CASE F̲R̲E̲E̲ ̲S̲F̲C̲O̲ ̲O̲P̲(̲S̲V̲U̲P̲ ̲C̲O̲ ̲O̲P̲)̲:̲ ̲E̲R̲R̲O̲R̲
                     ̲O̲K̲

                        ERROR?  T̲E̲P̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲ ̲E̲R̲R̲O̲R̲(̲G̲I̲V̲E̲
                        ̲U̲P̲)̲(̲4̲.̲1̲.̲5̲.̲2̲)̲

                        OK?

                     END CASE

                     SVUP ̲CO ̲OP.OP ̲ID(1) NOT EQ EXP ̲SVDIA
                     ̲NO?

                                     SVDIA ̲CMD ̲OUT GT
                                     O?
                           T̲E̲P̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲ ̲E̲R̲R̲O̲R̲(̲G̲I̲V̲E̲ ̲U̲P̲)̲
                                                     
                                       (̲4̲.̲1̲.̲5̲.̲2̲)̲

                     SVUP ̲CO ̲OP.PARA1 EQ VDU ̲SPLIT ̲FAIL?

                                     SEQ ̲STATE = TEXC
                                     RETURN

                       EXIT LOOP AWAIT ̲SVDIA ̲INTRPT ̲ANSWER

         OTHERWISE?  T̲E̲P̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲ ̲E̲R̲R̲O̲R̲(̲G̲I̲V̲E̲ ̲U̲P̲)̲(̲4̲.̲1̲.̲.̲2̲)̲

      END CASE

   END LOOP AWAIT ̲SVDIA ̲INTRPT ̲ANSWER


Fig. 4.2.2.4.7-5…86…1   …02…  …02…  …02…   …02…   …02…   …02…  …02…  …02…         …02…                         
      
   S̲E̲N̲D̲ ̲S̲V̲D̲I̲A̲ ̲C̲O̲M̲M̲A̲N̲D̲ ̲A̲N̲D̲ ̲A̲W̲A̲I̲T̲ ̲A̲N̲S̲W̲E̲R̲ ̲C̲L̲O̲S̲E̲/̲S̲T̲O̲P̲ ̲C̲A̲S̲E̲

   LOOP AWAIT ̲SVDIA ̲CLOSE ̲STOP ̲ANSWER

      W̲A̲I̲T̲ ̲S̲F̲C̲O̲ ̲E̲V̲E̲N̲T̲(̲W̲O̲R̲K̲6̲ ̲S̲T̲A̲T̲E̲)̲(̲S̲V̲U̲P̲ ̲C̲O̲ ̲O̲P̲)̲(̲4̲.̲2̲.̲2̲.̲6̲.̲1̲0̲)̲

      CASE SVUP ̲CO ̲OP.OP ̲ID(2) OF
         SVDIA ̲ID?   CASE F̲R̲E̲E̲ ̲S̲F̲C̲O̲ ̲O̲P̲(̲S̲V̲U̲P̲ ̲C̲O̲ ̲O̲P̲)̲:̲ ̲E̲R̲R̲O̲R̲
                     ̲O̲K̲

                        ERROR?  T̲E̲P̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲ ̲E̲R̲R̲O̲R̲(̲G̲I̲V̲E̲
                        ̲U̲P̲)̲(̲4̲.̲1̲.̲5̲.̲2̲)̲

                        OK?

                     END CASE

                     SVUP ̲CO ̲OP.OP ̲ID(1) NOT EQ EXP ̲SVDIA
                     ̲NO?

                                     SVDIA ̲CMD ̲OUT ̲GT
                                     O?

                                     T̲E̲P̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲ ̲E̲R̲R̲O̲R̲(̲G̲I̲V̲E̲
                                     ̲U̲)̲
                                                     
                                       (̲4̲.̲1̲.̲5̲.̲2̲)̲

                     EXIT LOOP AWAIT ̲SVDIA ̲CLOSE ̲STOP
                     ̲ANSWER

         OTHERWISE?  T̲E̲P̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲ ̲E̲R̲R̲O̲R̲(̲G̲I̲V̲E̲ ̲U̲P̲)̲(̲4̲.̲1̲.̲5̲.̲2̲)̲

      END CASE

   END LOOP AWAIT ̲SVDIA ̲CLOSE ̲STOP ̲ANSWER














                  Fig. 4.2.2.4.7-6


4.2.2.4.8    T̲r̲a̲n̲s̲a̲c̲t̲i̲o̲n̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲T̲h̲r̲o̲u̲g̲h̲ ̲F̲/̲C̲ ̲K̲e̲y̲s̲



4.2.2.4.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̲

         The module is responsible for the execution of f/c
         key commands, which has no influence on he processing
         of the transaction in progress (logical f/c keys: INSL,
         DELL, DERM, INSL ̲ENTER, DELL ̲ENTER, ERR ̲MSG Refer fig.
         4.2.2.6.12-1). Further the module is responsible for
         identifying the next sequence to be executed when a
         f/c key transactio control cmd is received. (logical
         f/c keys: ENTER ̲FC, CANCEL, PRINT, KAPN, DAPN, MENU
         Refer fig. 4.2.2.6.12-1)



4.2.2.4.8.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)  TRANS ̲CTRL(   )
                 (SVUP ̲OP: SVUP ̲COROUTINE ̲OP): WORK ̲STOP ̲CLOSE

         b)  TRANS ̲CTL(R5, R6)

         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̲

         R5      POINTER TO SVUP ̲OP  -    R
         R6      LINK                C    K

         R̲e̲t̲u̲r̲n̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲s̲

         R0-R4                       DEST
         R5      Pointer to SVUP ̲OP  RETURN
         R6                          KEPT
         R7                          DES



4.2.2.4.8.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲

         a)  S̲e̲t̲ ̲S̲E̲Q̲ ̲K̲e̲y̲

             The purpose of this procedure is to extract the
             sequenc key from the command record and the current
             sequence record.


         b)  P̲r̲e̲p̲a̲r̲e̲ ̲E̲R̲R̲ ̲M̲s̲g̲

             The prpose of this procedure is to give the supervisor
             an error display.

         c)  P̲r̲e̲p̲a̲r̲e̲ ̲E̲N̲T̲E̲R̲

             The purpose of this procedure is to setup the proper
             conversio of the incoming enter key.

         d)  E̲x̲e̲c̲u̲t̲e̲ ̲L̲i̲n̲e̲ ̲C̲M̲D̲(̲N̲o̲ ̲o̲f̲ ̲l̲i̲n̲e̲s̲ ̲t̲o̲ ̲b̲e̲ ̲i̲n̲s̲e̲r̲t̲e̲d̲/̲d̲e̲l̲e̲t̲e̲d̲)̲

             The purpose of this procedure is to execute the
             inset or delete lines function. It is called from
             LAYOUT ̲CTRL.


         e)  L̲a̲y̲o̲u̲t̲ ̲C̲o̲n̲t̲r̲o̲l̲

             The purpose of this procdure is to get ready for
             line insertion or deletion, which is executed by
             EXECUTE ̲LINE ̲CMD.



4.2.2.4.8.4 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̲

             Refer CPS prefixes
             Refer SUP package prefixes
             Refer SFCO subpackage prefixes

         b)  E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
             Refer SUP package data
             Refer SFCO subpackage data

             FC ̲KEY                  C    K
             FCK ̲SET                 C    K
             CONV ̲ENTER              C    R
             SPLIT ̲DIGIT             C    R
             SEQ ̲KEY                 C    R
             SEQ ̲REC                 C    K
             EXP ̲SVDIA ̲NO            C    R
             CMD ̲CURSOR ̲RECORD       C    R
             SVUP ̲CMD ̲REC            C    K

         c)  L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲

             Refer source listig.




4.2.2.4.8.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲

         The module has three exits: WORK, STOP, CLOSE. A WORK
         exit is performed when a f/c key transaction control
         command has been received. A STOP or CLOSE ext is performed
         if a STOP ̲SFCO or CLOSE ̲SFCO command is received from
         SVCO. 

         Refer fig. 4.2.2.4.8-1.


   LOOP FC ̲KEY ̲CTRL

   W̲A̲I̲T̲ ̲S̲F̲C̲O̲ ̲E̲V̲E̲N̲T̲(̲W̲O̲R̲K̲2̲ ̲S̲T̲A̲T̲E̲)̲(̲S̲V̲U̲P̲ ̲O̲P̲)̲(̲4̲.̲2̲.̲2̲.̲6̲.̲1̲0̲)̲

   CASE SVUP ̲OP.OP ̲ID(2) OF SENDER ̲ID ̲TYPE

         SVCO ̲ID?    D̲E̲L̲E̲T̲E̲ ̲F̲C̲ ̲K̲E̲Y̲ ̲I̲N̲P̲U̲T̲ ̲R̲E̲Q̲U̲E̲S̲T̲(̲4̲.̲2̲.̲2̲.̲6̲.̲7̲)̲

                     CASE SVP ̲OP.CMD OF

                            STOP ̲SFCO? RETURN(STOP)
                            CLOSE ̲SFCO? RETURN(CLOSE)
                            OTHERWISE? T̲E̲P̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲ ̲E̲R̲R̲O̲R̲(̲G̲I̲V̲E̲
                            ̲U̲P̲)̲
                                                     
                                         (̲4̲.̲1̲.̲5̲.̲2̲)̲

                     END CASE

         FC ̲KEY ̲ID?  CASE   F̲E̲T̲C̲H̲ ̲A̲N̲D̲ ̲V̲A̲L̲ ̲K̲E̲Y̲(̲ ̲ ̲)̲(̲F̲C̲ ̲K̲E̲Y̲,̲C̲C̲)̲:̲E̲X̲C̲
                                             N̲O̲R̲M̲L̲ ̲(̲4̲.̲2̲.̲2̲.̲6̲.̲1̲2̲)̲

                            EXC?     EXIT LOOP FC ̲KEY
                                     ̲CTRL

                            NORMAL?  CC = ILL?  R̲E̲Q̲U̲E̲S̲T̲
                                     ̲F̲C̲ ̲K̲E̲Y̲ ̲I̲N̲P̲U̲T̲
                                                      
                                                      
                                                      
                                                      (̲4̲.̲2̲.̲2̲.̲6̲.̲6̲)̲

                                     T̲R̲A̲N̲S̲ ̲C̲T̲R̲L̲ ̲P̲R̲O̲C̲E̲S̲S̲I̲N̲G̲
                                     (̲4̲.̲2̲.̲2̲.̲4̲.̲8̲-̲2̲)̲

                     END CASE

         OTHERWISE?         T̲E̲P̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲ ̲E̲R̲R̲O̲R̲(̲G̲I̲V̲E̲ ̲U̲P̲)̲(̲4̲.̲1̲.̲5̲.̲2̲)̲

   END CASE
   END LOOP FC ̲KEY ̲CTRL

   CASE E̲X̲C̲E̲P̲T̲I̲O̲N̲ ̲V̲D̲U̲(̲2̲)̲(̲S̲V̲C̲O̲ ̲O̲P̲)̲:̲ ̲S̲T̲O̲P̲ ̲C̲L̲O̲S̲E̲(̲4̲.̲2̲.̲2̲.̲6̲.̲1̲1̲)̲

      STOP?  RETURN(STOP)

      CLOSE? RETURN(CLOSE)

   END CASE



                  Fig. 4.2.2.4.8-1


   T̲R̲A̲N̲S̲ ̲C̲T̲R̲L̲ ̲P̲R̲O̲C̲E̲S̲S̲I̲N̲G̲

   CASE FC ̲KEY OF SUPV ̲FC ̲KEY

         ENTER ̲FC, CANCEL, PRINT,
         KAPN, DAPN, MENU        ?   S̲E̲T̲ ̲S̲E̲Q̲ ̲K̲E̲Y̲(̲4̲.̲2̲.̲2̲.̲4̲.̲8̲.̲3̲.̲1̲)̲

                                     R̲E̲Q̲U̲E̲S̲T̲ ̲F̲C̲ ̲K̲E̲Y̲ ̲I̲N̲P̲U̲T̲(̲4̲.̲2̲.̲2̲.̲6̲.̲6̲)̲

                            RETURN(WORK)

         INSL, DELL, DERM?  P̲R̲E̲P̲A̲R̲E̲ ̲F̲O̲R̲ ̲E̲N̲T̲E̲R̲ ̲F̲/̲C̲ ̲K̲E̲Y̲
                            ̲C̲M̲D̲
                                          (̲4̲.̲2̲.̲2̲.̲4̲.̲8̲.̲3̲.̲3̲)̲

         INSL ̲ENTER, DELL ̲ENTER?     F̲O̲R̲M̲A̲T̲ ̲L̲A̲Y̲O̲U̲T̲ ̲C̲T̲R̲L̲
                                          (̲4̲.̲2̲.̲2̲.̲4̲.̲8̲.̲3̲.̲5̲)̲

         ERR ̲MSG?    P̲R̲E̲P̲A̲R̲E̲ ̲E̲R̲R̲ ̲M̲S̲G̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲8̲.̲3̲.̲2̲)̲ ̲N̲O̲R̲M̲A̲L̲

   END CASE





                  Fig. 4.22.4.8-2


4.2.2.4.9    V̲a̲l̲i̲d̲a̲t̲e̲ ̲F̲o̲r̲m̲a̲t̲ ̲E̲n̲t̲e̲r̲e̲d̲ ̲C̲o̲m̲m̲a̲n̲d̲



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̲

         For commands entered through the user area of the VDU
         the module preforms the following function dependent
         of the command type, i.e. next entry specified by parameter
         or next entry by design.

         1)  Next entry specified by parameter:

             Simple syntax check and semantic check. Display
             of command and parameter if any of the checks fail.

         2)  Nextentry by design:

             Checks whether the entry currently displayed is
             the last in the table, and if not fetches the content
             of the next table entry.

         The commands (command codes) for which thes functions
         are performed are:

         TEPC, POSC, CHAC; SICT, DLT, SCDT, AIGT, GPLT, RITA,
         CIRT, SCCT, OPST; LPLT, UPUP, CMDC, CACQ, CATQ, CASQ,
         NOCC, LORI.



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)  VALIDATE ̲FORMAT ̲CMD () (CC: SEQ ̲STATE): EXC ̲NORMAL

         b)  VALIDATE ̲FORMAT ̲CMD (R7, R6): EXC ̲NORMA