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

⟦cfb333f61⟧ Wang Wps File

    Length: 32191 (0x7dbf)
    Types: Wang Wps File
    Notes: CPS/SDS/039               
    Names: »2128A «

Derivation

└─⟦7f5d2b450⟧ Bits:30006107 8" Wang WCS floppy, CR 0170A
    └─ ⟦this⟧ »2128A « 

WangText

…00……00……00……00……00……1a……0a……00……00……1a……0b……1a……05……19……0b……19……0e……19……0f……19… …19……06……19……07……18……0a……18……86…1                                             …02…           …02…   …02…        

…02…CPS/SDS/039

…02…841101…02……02…
USER VDU
DETAILED DESIGN SPECIFICATION…02…ISSUE 1…02…CAMPS









       4.2.6 VUS Initialisation Subpackage...........
           
         4.2.6.1 Functional Specification ...........
                     
           4.2.6.1.1 Start up Information
                      Interpretation ................
                         
           4.2.6.1.3 MDCO VDU Software Initialisation
                         
                     (3.0)...........................
                         
           4.2.6.1.4 MSO VDU Software Initialisation.
                         
                     (4.0) ..........................
                         

         4.2.6.2 Software Structure .................
                     
           4.2.6.2.1 Process Start (1.0) ............
                         
           4.2.6.2.2 USER Subprocess Init (2.0) .....
                         
           4.2.6.2.3 MSO Subprocess Init (4.0) ......
                         
           4.2.6.3 Dataflow and Control Logic within.
                       
                   VUS Initialisation Subpackage.....
                       

         4.2.6.4 VUS Initialisation Module Specifi
                 cations.............................
                     
           4.2.6.4.1 PROCESS START Specification ....
                         
             4.2.6.4.1.1 Functional Specification ...
                 
             4.2.6.4.1.2 Module Interface ...........
                 
             4.2.6.4.1.3  Module Components .........
                 
             4.2.6.4.1.4 Data Description ...........
                 
             4.2.6.4.1.5 Module Design ..............
                 

           4.2.6.4.2 USER SUBPROCESS INIT Specifica..
                         
                     tion............................
                         
             4.2.6.4.2.1 Functional Specification ...
                 
             4.2.6.4.2.2 Module Interface ...........
                 
             4.2.6.4.2.3 Module Components ..........
                 
             4.2.6.4.2.4 Data Description ...........
                 
             4.2.6.4.2.5 Module Design ..............
                 

           4.2.6.4.3 MDCO SUBPROCESS INIT Specifica- 
                         
                     tion........................... 
                         
             4.2.6.4.3.1 Functional Specification ...
                 
             4.2.6.4.3.2 Module Interface ...........
                 
             4.2.6.4.3.3 Module Components ..........
                 
             4.2.6.4.3.5 Module Design ..............
                 

           4.2.6.4.4 MSO SUBPROCESS INIT Specifica-  
                         
                     tion............................
                         
             4.2.6.4.4.1\Functional Specification ...
                 
             4.2.6.4.4.2 Module Interface ...........
                 
             4.2.6.4.4.3 Module Components ..........
                 
             4.2.6.4.4.4 Data Description ...........
                 
             4.2.6.4.4.5 Module Design ..............
                 



         4.2.6.5 Common Subpackage Data .............
                     
         4.2.6.6 Common Subpackage Procedures .......
                     
         4.2.6.7 Subpackage Interfaces ..............
                     

       4.2.7 User Procedures Subpackage .............
                 
         4.2.7.1 Functional Specification ...........
                     
           4.2.7.1.1 Display Procedures .............
                         
           4.2.7.1.2 Syntax Procedures ..............
                         
           4.2.7.1.3 Semantic Procedures ............
                         

         4.2.7.2 Software Structure .................
                     
         4.2.7.3 Data Flow ..........................
                     
         4.2.7.4 USPR Module Specification ..........
                     
           4.2.7.4.1 VUP ̲SYNTAX Specification .......
                         
             4.2.7.4.1.1 Functional Specification ...
                 
             4.2.7.4.1.2 Module Interface ...........
                 
             4.2.7.4.1.3 Module Components ..........
                 
             4.2.7.4.1.4 Software Design ............
                 

           4.2.7.4.2 SEMAN ̲VAL Specification ........
                         
             4.2.7.4.2.1 Functional Specification ...
                 
             4.2.7.4.2.2 Module Interface ...........
                 
             4.2.7.4.2.3 Module Components ..........
                             

           4.2.7.4.3 DISPLAY ̲FIELD Specification  ...
                         
             4.2.7.4.3.1 Functional Specification ...
                 
             4.2.7.4.3.2 Module Interface ...........
                 
             4.2.7.4.3.3 Module Components ..........
                 


4.2.6    V̲U̲S̲ ̲I̲n̲i̲t̲i̲a̲l̲i̲s̲a̲t̲i̲o̲n̲ ̲S̲u̲b̲p̲a̲c̲k̲a̲g̲e̲

         This subpackage performs interpretation of start up
         information delivered by SSC in the registers when
         the process is started.  The coroutines constituting
         the VDU User Software are initialised.



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

         The subpackage contains the following functions:

         -   Interpretation of start up information
         -   Initialisation of VUS Coroutines

         Fig. 4.2.6.1-1 presents the functional breakdown.















































Fig. 4.2.6.1-1…86…1         …02…   …02…   …02…   …02…                                      
     
4.2.6.1.1    V̲U̲S̲ ̲I̲n̲i̲t̲i̲a̲l̲i̲z̲a̲t̲i̲o̲n̲ (1.0)

         -   Executes pre-initialization.



4.2.6.1.2    U̲S̲E̲R̲ ̲V̲D̲U̲ ̲S̲o̲f̲t̲w̲a̲r̲e̲ ̲I̲n̲i̲t̲i̲a̲l̲i̲s̲a̲t̲i̲o̲n̲(2.0)

         a)  Coroutine Monitor Initialisation (2.1) Performs
             initialisation of the Coroutine Monitor Data Structure
             by a call to Coroutine Monitor.(VCO is also initialised
             by this call)

         b)  User Coroutine Initialisation (2.2)
              Performs initialisation of the 3 remaining VUS
             coroutines by call to Coroutine Monitor.

         c)  User Semaphore Initialisation (2.3)
              Performs initialisation of the 5 VUS semaphores
             by call to Coroutine Monitor.

         d)  User Operation Initialisation (2.4)
             Performs initialisation of the 9 VUS operations
             by call to Coroutine Monitor.

         e)  Start VCO (2.5)
             Performs start of VCO (VCO is initialised when
             Coroutine Monitor is initialised but it is not
             started)



4.2.6.2  S̲o̲f̲t̲w̲a̲r̲e̲ ̲S̲t̲r̲u̲c̲t̲u̲r̲e̲

         The Software Structure is shown on fig. 4.2.6.2-1.
         The initialisation subpackage contains 2 modules.



4.2.6.2.1    P̲r̲o̲c̲e̲s̲s̲ ̲S̲t̲a̲r̲t̲ ̲(1.0)

         This Module is a mainmodule and calls upon PRE ̲
         INITIALISATION and VUP ̲SUBPROCESS ̲INIT.





4.2.6.2.2    V̲U̲P̲ ̲S̲u̲b̲p̲r̲o̲c̲e̲s̲s̲ ̲I̲n̲i̲t̲ ̲(2.0)

         This Module containes the functions:

         a)  USER Coroutine Init (2.1) that performs initialisation
             of the 4 coroutines.

         b)  USER Semaphore Init (2.2) that performs initialisation
             of the Semaphores.

         c)  USER Operations Init (2.3) that performs initialisation
             of the operations.

         d)  Starts VCO

















































                     FIGURE 4.2.6.2-2
                    SOFTWARE STRUCTURE



4.2.6.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̲ ̲V̲U̲S̲ ̲I̲n̲i̲t̲i̲a̲l̲i̲s̲a̲t̲i̲o̲n̲
         ̲S̲u̲b̲p̲a̲c̲k̲a̲g̲e̲

         The mainmodule Process ̲Start calls upon module VUP
         ̲
         COPSY ̲INI.



4.2.6.4  V̲U̲S̲ ̲I̲n̲i̲t̲i̲a̲l̲i̲s̲a̲t̲i̲o̲n̲ ̲M̲o̲d̲u̲l̲e̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲



4.2.6.4.1    P̲R̲O̲C̲E̲S̲S̲ ̲S̲T̲A̲R̲T̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲



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

         This module acts only as a mainmodule and makes the
         call to the actual INIT ̲MODULE after preinitialization.

         This file is intended for COPSY environment. To be
         linked with file VUP ̲COP ̲INI.L.



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

             N/A



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

             N/A



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

             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.6.4.1.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲

         Two calls are performed.

         One upon PRE ̲INITIALIZATION and one upon VUP ̲SUBPROCESS
         ̲
         INIT.




4.2.6.4.2    V̲U̲P̲ ̲S̲U̲B̲P̲R̲O̲C̲E̲S̲S̲ ̲I̲N̲I̲T̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲



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

         This module interprets the start ̲up parameters, initialises
         the user coroutines, semaphores and operations, and
         starts VCO.



4.2.6.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)  USER ̲SUBPROCESS ̲INIT    START: START ̲MODE
                                     ID: SUBPROCESS ̲ID
                                     NO: SUBPROCESS ̲NO

         b)  VUP ̲COPSY ̲INI (R0, R1, R2, 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      START               (DEST)
         R1      ID                  (DEST)
         R2      NO                  (DEST)
         R6      LINK                (DEST)

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

         R0 - R7                     DESTROYED

         F̲a̲t̲a̲l̲ ̲E̲r̲r̲o̲r̲s̲

         NONE



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

         N/A




4.2.6.4.2.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 source listings.

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

             Refer source listings.

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

             N/A



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

         This module interprets the start ̲up type and initialises
         the coroutines:

         -UFCO
         -VDIA
         -RETR

         by call to Coroutine Monitor,
         initialises the semaphores:

         -VUS ̲S1
         -VUS ̲S2
         -VUS ̲S3
         -RETR ̲SEM
         -SPLIT SEM

         by call to Coroutine Monitor and initialises the operations:

         -RETR ̲OP
         -NOT ̲OP
         -ANQ ̲OP
         -FC ̲KEY ̲OP
         -VDU ̲OP
         -SEM ̲OP (1..4)

         by call to Coroutine Monitor





4.2.6.5  C̲o̲m̲m̲o̲n̲ ̲S̲u̲b̲p̲a̲c̲k̲a̲g̲e̲ ̲D̲a̲t̲a̲

         None.



4.2.6.6  C̲o̲m̲m̲o̲n̲ ̲S̲u̲b̲p̲a̲c̲k̲a̲g̲e̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲s̲

         N/A



4.2.6.7  S̲u̲b̲p̲a̲c̲k̲a̲g̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲s̲

         The initialisation subpackage call VCO direct (by procedure
         call).  All other coroutines are called via Coroutine
         Monitor and will all end up waiting in their waiting
         points.



4.2.7    U̲s̲e̲r̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲s̲ ̲S̲u̲b̲p̲a̲c̲k̲a̲g̲e̲



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

         The USPR subpackage contains all validation and conversion
         procedures needed to validate, store and display the
         data in the users formats.

         During output of data to the formats the display procedures
         are used to convert data from internal representation
         to strings which can be displayed on the VDU.

         During input syntax and semantic procedures are used
         to validate the contents of the field which are read
         from the VDU. If an error is detected, an error will
         be generated and the field containing the error will
         be inverted, else the field will be converted to internal
         representation and stored in a CIF or a memory record.

         The action performed is selected by interpreting the
         Format Control Program which contains a reference (case
         label) of the procedure, which is able to validate
         or display the specific field.





4.2.7.1.1    D̲i̲s̲p̲l̲a̲y̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲s̲

         The display procedures are a set of procedures, which
         are able to convert data in internal representation
         to displayable string. Data in internal representation
         can be numbers (byte, interger or long) or ASCII strings,
         while external representation is IOC records. E.g.
         a long of time type can be converted to an ASCII string.



4.2.7.1.2    S̲y̲n̲t̲a̲x̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲s̲

         The syntax procedures are a set of procedures which
         are able to validate and convert data from external
         format to internal representation. I.e. a SCD is validated
         against the SCD table and stored as an ASCII string,
         and a PLA is validated against the PLA table and stored
         as a PLA-ref (integer) and as an ASCII string.



4.2.7.1.3    S̲e̲m̲a̲n̲t̲i̲c̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲s̲

         The semantic procedures are a set of procedures which
         are able to validate the context between different
         fields in format. E.g. it is in message header validated
         that info precedence is not higher than action precedence.



4.2.7.2  S̲o̲f̲t̲w̲a̲r̲e̲ ̲S̲t̲r̲u̲c̲t̲u̲r̲e̲

         The structure of the three kinds of user procedures
         are alike as they all are built as big cases, switching
         to the wanted action. If needed a new procedure easily
         can be added by adding a new case label and coding
         a new procedure with the call convensions for the module.
         This procedure can now be activated from the Format
         Control Program simply by using its reference (case
         label) while reading or writing on the VDU.



4.2.7.3  D̲a̲t̲a̲ ̲F̲l̲o̲w̲

         The user procedures have no data of their own because
         they get a pointer to the memory where it can fetch
         data and where to put them when they are converted.



         If, however, the procedures need a dataarea for calculation,
         they can use the memory management for allocating working
         space, though it is important that the memory used
         is released before exit.



4.2.7.4  U̲S̲P̲R̲ ̲M̲o̲d̲u̲l̲e̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲



4.2.7.4.1    V̲U̲P̲ ̲S̲Y̲N̲T̲A̲X̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲



4.2.7.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 function of this module is to contain a validation
         procedure for each possible field of the user formats.
         The function of each procedure will be shown in a schematic
         form. This scheme (ref. 4.2.7.4.1.4) will describe
         the main functions of a procedure. If further details
         are necessary please refer to the source list.



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

         All syntax procedures have the same interface, thus
         they will be described as one.

         SYNTAX ̲PROC (R6)

         Register conventions:

         R0: Syntax procedure reference (case label)
         R1: Pointer to field bundle
         R4: Pointer to memory record 1 (UFCO ̲VAL)
         R5: Pointer to memory record 3 (SEMAN ̲VAL)
         R7: P ̲STACK % INTEGER pointing to stack of type WORK
             containing: 
             BUF,
             WRU1,
             PROC ̲NO: Working location for subaction
             R0:      Result value OK/NOT ̲OK
             R1-R6:   Call registers.

         The subaction should return directly to caller of VUP
         ̲SYNTAX by use of the stacked link (r6). The record
         WORK should be unstacked prior to return.





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

         Procedure S̲E̲A̲R̲C̲H̲ ̲T̲E̲R̲M̲ ̲S̲C̲D̲

         (R0  C  K   SCD: CHARS 1 AND 2
          R1  C      SCD: CHAR 3
                 R   SCD CHAR 3 AND SPACE
          R3     R   RESULT: OK OR ERROR CODE
          R6) C      LINK

         A trailing space is added to the 3 char SCD. The SCD
         is searched in the terminal profile for the terminal
         (found via init area in M.O).

         Procedure D̲E̲C̲I̲S̲I̲O̲N̲

         (R0  C      LOCATION OF DECISION CODE TABLE
          R1  C      % FIELD BUNDLE
          R5  C      % M.3 (VUP ̲SEMAN ̲RECORD)
          R7  C      P ̲STACK ̲INTEGER - WORK RECORD
          R6) C      DUMMY LINK

         Searches the first char in input from field bundle
         field 1 in the in-code table addressed by R0:

         CHAR FOUND - DECISION CODE = VUP ̲SEMAN ̲REC.UC.DECISION
         CHAR NOT COUND - ERROR CODE=V ̲RR ̲INVALID

         Procedure returns directly to caller of VUP ̲SYNTAX.

         Subactions should look as follows:

         PROCEDURE ...
              LABEL TABLE
                 BEGIN
                     LOCATION (TABLE) = R0
                     DECISION (R0, R1, R5, R7, R6)
                     TABLE
                     (CHAR) (DECISION ̲CODE)
                       ...        ...
                        0                       END OF TABLE
                 END



         Procedure C̲A̲L̲L̲ ̲T̲M̲P̲

         (VAL ̲REF:   INTEGER   VALIDATION PROC REC - USED FOR
                               FATAL ERROR REPORTING
          TABLE ̲ID:  TABLE ̲ID ̲TYPE
          FUNCTION:  TMP ̲FUNCTION
          MASK1:     BITMASK
          MASK2:     BITMASK
          R0  C  K   TMP ̲PARAM.ENTRY
          R1  C  K   TMP ̲PARAM.BUFFER1
          R2  C  K   TMP ̲PARAM.COUNT
          R3  C  K   TMP ̲PARAM.BUFFER2
          R4  C  K   % TMP ̲PARAM
          R5  C  K   TMP ̲PARAM.BUFFER2 ̲LENGTH
          R6) C      LINK

         Performs a TMP call using the call parameters in constant
         parameter record and in registers. The register R4
         should point to a TMP param record allocated for the
         TMP call.

         Procedure M̲A̲N̲D̲A̲T̲O̲R̲Y̲

         (R0  -  K
          R1  C  K   %FIELD BUNDLE
          R2  -  D   UNDEFINED AT RETURN
          R3  -  D   UNDEFINED AT RETURN
          R4  -  K
          R5  -  K
          R7  C  K   P ̲STACK ̲INTEGER - SYNTAX WORK STACK
          R6) C  -   LINK

         Checks that the first field in bundle in non-blank.
         If field is blank, the procedure issues a validation
         error and returns directly to caller of VUP ̲SYNTAX.
         Field is not blank, the procedure returns to LINK.

         A field is considered blank if:

         -    It is without IOC header and first char is space
         -    It is with IOC header and IOC count is = 0

         Procedure V̲A̲L̲ ̲E̲R̲R̲O̲R̲

         (R2  C  K   FIELD NO IN BUNDLE (1, 2, ...)
          R3  C  K   ERROR CODE
          R7  C  K   =P ̲STACK ̲INTEGER, must point to main stack
                     record stacked by VUF ̲SYNTAX main entry
                     i.e. record in stack of type WORK
          R6) C      LINK



         Calls UPDATE ̲ERROR ̲LIST using information from field
         bundle, found from address in stack (WORK.REG 1). Updates
         stacked result code (WORK.REG 0).



4.2.7.4.1.4 S̲o̲f̲t̲w̲a̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲

              VAL ̲CLASS

         FILE:       SYNTAX ̲VAL2.S
         PROCEDURE:  CLASS
         VALIDATION: Classification, 2 chars without IOC
         STORAGE 0:  bin value 2 bytes
         STORAGE 1:  -
         VUP ̲SEMAN ̲REC.UC.CLASS bin values
         USPR ̲TABLES:TAB ̲CLASS ̲SHORT
         TMP:    -
         COMMENTS:   -

              VAL ̲SPH

         FILE:       SYNTAX ̲VAL2.S
         PROCEDURE:  SPH
         VALIDATION: Special Handling bundle max. 2 fields without
                     IOC
         STORAGE 0:  bitmask, national name 6 bytes
         STORAGE 1:  number of sphs 2 bytes
         VUP ̲SEMAN ̲REC.VC.SPH bitmask
         USPR ̲TABLES:-
         TMP:    SPECIAL ̲HANDLING ̲TABLE
         COMMENTS:   -

              VAL ̲MHI ̲DECISION

         FILE:       SYNTAX ̲VAL2.S
         PROCEDURE:  MHI ̲DECISION
         VALIDATION: Message Handling decision "Y" or " "
         STORAGE 0:  -
         STORAGE 1:  -
         VUP ̲SEMAN ̲REC -
         USPR ̲TABLES -
         TMP:    -
         COMMENTS:   -



              VAL ̲PREC ̲ACTION

         FILE    SYNTAX ̲VAL2.S
         PROCEDURE   PREC ̲ACTION
         VALIDATION  Action precedence - mandatory 2 chars.
                     without IOC
         STORAGE 0   bin value 2 bytes
         STORAGE 1   -
         VUP ̲SEMAN ̲REC.UC.ACTION ̲PREC bin value
         USPR ̲TABLES TAB ̲PREC ̲SHORT
         TMP     -
         COMMENTS    -

              VAL ̲PREC ̲INFO

         FILE    SYNTAX ̲VAL2.S
         PROCEDURE   PREC ̲INFO
         VALIDATION  Info precedence - optional 2 chars without
                     IOC
         STORAGE 0   bin value 2 bytes
         STORAGE 1   -
         VUP ̲SEMAN ̲REC.INFO ̲PRECEDENCE bin value
         USPR ̲TABLES TAB ̲PREC ̲SHORT
         TMP     -
         COMMENTS    -

              VAL ̲SCDS

         FILE    SYNTAX ̲VAL2.S
         PROCEDURE   SCDS
         VALIDATION  SCD - optional bundle max. 16 fields without
                     IOC
         STORAGE 0   non blank SCDs 4 characters
         STORAGE 1   -
         VUP ̲SEMAN ̲REC.COOR ̲MASK bit mask
         USPR ̲TABLES -
         TMP     SCD ̲TABLE
         COMMENTS    -

              VAL ̲COOR ̲CHECKMARKS

         FILE    SYNTAX ̲VAL2
         PROCEDURE   COOR ̲CHECKMARKS
         VALIDATION  Coordination checkmarks bundke max. 16
                     fields without IOC
         STORAGE 0   mask
         STORAGE 1   -
         VUP ̲SEMAN ̲REC -
         USPR ̲TABLES -
         TMP     -
         COMMENTS    Each mark of one char. checks against VUP
                     ̲SEMAN ̲REC.COOR ̲MASK that the SCD connected
                     not is blank




                 VAL ̲MESS ̲SCDS

         FILE        SYNTAX ̲VAL2.S
         PROCEDURE   SCDS
         VALIDATION  SCD - optional bundle max. 16 fields without
                     IOC
         STORAGE 0   non blank SCDs 4 characters
         STORAGE 1   -
         VUP ̲SEMAN ̲REC.COOR ̲MASK bit mask
         USPR ̲TABLES -
         TMP         SCD ̲TABLE
         COMMENTS    If the SCD is belonging to a MASS position
                     then a validation error is given

                 VAL ̲COOR ̲SCDS

         FILE        SYNTAX ̲VAL2.S
         PROCEDURE   SCDS
         VALIDATION  SCD - optional bundle max. 16 fields without
                     IOC
         STORAGE 0   non blank SCDs 4 characters
         STORAGE 1   -
         VUP ̲SEMAN ̲REC.COOR ̲MASK bit mask
         USPR ̲TABLES -
         TMP         SCD ̲TABLE
         COMMENTS    If the SCD is belonging to a MASS position
                     or a printer a validation error is given

                 VAL ̲ORIG ̲SCD

         FILE        SYNTAX ̲VAL2.S
         PROCEDURE   ORIG ̲SCD
         VALIDATION  Originator SCD 1 field 3 chars. without
                     IOC
         STORAGE 0   SCD 4 chars.
         STORAGE 1   -
         VUP ̲SEMAN ̲REC.UC.ORD ̲SCD SCD 4 chars.
         USPR ̲TABLES -
         TMP         TERMINAL ̲TABLE
         COMMENTS    -



                 VAL ̲MANDAT ̲FIXED

         FILE        SYNTAX ̲VAL2.S
         PROCEDURE   MANDAT ̲FIXED
         VALIDATION  Checks that the field is not blank - without
                     IOC
         STORAGE 0   field
         STORAGE 1   -
         VUP ̲SEMAN ̲REC -
         USPR ̲TABLES -
         TMP         -
         COMMENTS    -

                 VAL ̲MANDAT ̲VAR

         FILE        SYNTAX ̲VAL2.S
         PROCEDURE   MANDAT ̲VAR
         VALIDATION  Checks that the field is not blank - without
                     IOC
         STORAGE 0   field
         STORAGE 1   -
         VUP ̲SEMAN ̲REC -
         USPR ̲TABLES -
         TMP         -
         COMMENTS    -

                 VAL ̲SIC

         FILE        SYNTAX ̲VAL.S
         PROCEDURE   SIC
         VALIDATION  SIC - 1 field 3 chars. without IOC
         STORAGE 0   field without IOC
         STORAGE 1   field with IOC
         VUP ̲SEMAN ̲REC.EXER ̲SIC ̲COUNT inc. if EXERSIC
         USPR ̲TABLES -
         TMP         -
         COMMENTS    If 1. char. = A, 2. char. in E-Z and 3.
                     char. in A-Z then the SIC is an exercise
                     SIC



                 VAL ̲X ̲0 ̲1

         FILE        SYNTAX ̲VAL
         PROCEDURE   X ̲0 ̲1
         VALIDATION  1 field with IOC
         STORAGE 0   field with IOC
         STORAGE 1   -
         VUP ̲SEMAN ̲REC.EXER ̲OPER ̲SIZE
         USPR ̲TABLES -
         TMP         -
         COMMENTS    If 5.first chars. = "EXER/" then 0 = VUP
                     ̲
                     SEMAN ̲REC.EXER ̲OPER. If 5 first chars.
                     = "OPER/" or field empty 2 = VUP ̲SEMAN
                     ̲REC. EXER ̲OPER

                 VAL ̲X ̲0 ̲2

         FILE        SYNTAX ̲VAL.S
         PROCEDURE   X ̲0 ̲2
         VALIDATION  1 field with IOC
         STORAGE 0   field with IOC
         STORAGE 1   -
         VUP ̲SEMAN ̲REC.EXER ̲OPER ̲SIZE
         USPR ̲TABLES -
         TMP         -
         COMMENTS    

                 VAL ̲TEXT ̲LINE

         FILE        SYNTAX ̲VAL.S
         PROCEDURE   TEXT ̲LINE
         VALIDATION  1 field with IOC
         STORAGE 0   field with IOC
         STORAGE 1   -
         VUP ̲SEMAN ̲REC.EMTY ̲LINE ̲COUNT
         USPR ̲TABLES -
         TMP         -
         COMMENTS    If a field is empty nothing is stored,
                     is an non empty field is met the empty
                     lines are stored



                 VAL ̲COMM ̲DECISION

         FILE        SYNTAX ̲VAL.S
         PROCEDURE   COMM DECISION
         VALIDATION  1 field without IOC. S or D
         STORAGE 0   -
         STORAGE 1   -
         VUP ̲SEMAN ̲REC.DECISION
         USPR ̲TABLES -
         TMP         -
         COMMENTS    

                 VAL ̲MESS ̲DECISION

         FILE        SYNTAX ̲VAL.S
         PROCEDURE   MESS ̲DECISION
         VALIDATION  1 field without IOC S, D, C or space
         STORAGE 0   -
         STORAGE 1   -
         VUP ̲SEMAN ̲REC.UC.DECISION
         USPR ̲TABLES -
         TMP         -
         COMMENTS    -

                 VAL ̲REL ̲DECISION

         FILE        SYNTAX ̲VAL.S
         PROCEDURE   REL ̲DECISION
         VALIDATION  R, N or D
         STORAGE 0   Decision text without IOC
         STORAGE 1   -
         VUP ̲SEMAN ̲REC.UC.DECISION
         USPR ̲TABLES TAB ̲REL ̲DECIS
         TMP         -
         COMMENTS    




                 VAL ̲RETR ̲DECISION

         FILE        SYNTAX ̲VAL.S
         PROCEDURE   MESS ̲DECISION
         VALIDATION  R, D, L, I, N or C
         STORAGE 0   -
         STORAGE 1   -
         VUP ̲SEMAN ̲REC.UC.DECISION
         USPR ̲TABLES -
         TMP         -
         COMMENTS    -

                 VAL ̲ASCII ̲INTEGER

         FILE        SYNTAX ̲VAL.S
         PROCEDURE   ASCII INTEGER
         VALIDATION  Field contains anly digits or spaces converts
                     from ascii to integer
         STORAGE 0   integer value 2 bytes
         STORAGE 1   -
         VUP ̲SEMAN ̲REC -
         USPR ̲TABLES -
         TMP         -
         COMMENTS    

                 VAL ̲TIME ̲STAMP

         FILE        SYNTAX ̲VAL.S
         PROCEDURE   TIME ̲STAMP
         VALIDATION  The procedure CONVERT ̲TIME converts and
                     validates
         STORAGE 0   Time type (long) 4 bytes
         STORAGE 1   -
         VUP ̲SEMAN ̲REC -
         USPR ̲TABLES -
         TMP         -
         COMMENTS    -

                 VAL ̲TERMINAL ̲SCD

         FILE        SYNTAX ̲VAL.S
         PROCEDURE   TERMINAL ̲SCD
         VALIDATION  Gets logical terminal number from init
                     ̲area and looks up the SCD at TMP 
         STORAGE 0   SCD + trailing space 4 bytes
         STORAGE 1   -
         VUP ̲SEMAN ̲REC -
         USPR ̲TABLES -
         TMP         TERMINAL ̲TABLE
         COMMENTS    




                 VAL ̲C ̲ORIG ̲SCD

         FILE        SYNTAX ̲VAL2.S
         PROCEDURE   C ̲ORIG ̲SCD
         VALIDATION  First char. = "C", gets logical terminal
                     number from init-area and looks up at TMP
         STORAGE 0   SCD with "C"
         STORAGE 1   -
         VUP ̲SEMAN ̲REC -
         USPR ̲TABLES -
         TMP         TERMINAL ̲TABLE
         COMMENTS    -

                 VAL ̲SA ̲ADDR

         FILE        SYNTAX ̲VAL.S
         PROCEDURE   SA ̲ADDR
         VALIDATION  first char. = "A", "S" or " " - 4 chars.
                     without IOC
         STORAGE 0   SCD 4 bytes
         STORAGE 1   bit mask 2 bytes
         VUP ̲SEMAN ̲REC -
         USPR ̲TABLES -
         TMP         -
         COMMENTS    -

                 VAL ̲SA ̲REL ̲DECISION

         FILE        SYNTAX ̲VAL.S
         PROCEDURE   SA REL DECISION
         VALIDATION  1 field without IOC "R" or "N"
         STORAGE 0   Decision text
         STORAGE 1   -
         VUP ̲SEMAN ̲REC.UC.DECISION
         USPR ̲TABLES TAB ̲REL ̲DECIS
         TMP         -
         COMMENTS    -

                 VAL ̲DISPLAY ̲NAME

         FILE        SYNTAX ̲VAL.S
         PROCEDURE   DISPLAY ̲NAME
         VALIDATION  8 chars. without IOC
         STORAGE 0   Display name 8 chars.
         STORAGE 1   -
         VUP ̲SEMAN ̲REC -
         USPR ̲TABLES -
         TMP         DISPLAY ̲TABLE
         COMMENTS    -




                 VAL ̲RESPO ̲DECISION

         FILE        SYNTAX ̲VAL.S
         PROCEDURE   RESPO ̲DECISION
         VALIDATION  1 field without IOC "Y" or "N" as first
                     char
         STORAGE 0   -
         STORAGE 1   -
         VUP ̲SEMAN ̲REC.UC.DECISION
         USPR ̲TABLES -
         TMP         -
         COMMENTS    -

                 VAL ̲ITEM ̲TYPE

         FILE        SYNTAX ̲VAL2.S
         PROCEDURE   ITEM ̲TYPE
         VALIDATION  1 field without IOC "R", "D", "I" or space
         STORAGE 0   binary value 2 bytes
         STORAGE 1   -
         VUP ̲SEMAN ̲REC -
         USPR ̲TABLES -
         TMP         -
         COMMENTS    -

                 VAL ̲OPT ̲TERM ̲SCD

         FILE        SYNTAX ̲VAL2.S
         PROCEDURE   OPT ̲TERM ̲SCD
         VALIDATION  1 field 3 chars. without IOC. Terminal
                     SCD or blank
         STORAGE 0   SCD 4 bytes
         STORAGE 1   -
         VUP ̲SEMAN ̲REC -
         USPR ̲TABLES -
         TMP         TERMINAL ̲TABLE
         COMMENTS    -

                 VAL ̲MAN ASCII ̲INTEGER

         FILE        SYNTAX ̲VAL.S
         PROCEDURE   MAN ̲ASCII ̲INTEGER
         VALIDATION  1 field without IOC - mandatory
         STORAGE 0   integer value 2 bytes
         STORAGE 1   -
         VUP ̲SEMAN ̲REC -
         USPR ̲TABLES -
         TMP         -
         COMMENTS    Field contains only digits or spaces. Converts
                     from ASCII to integer




                 VAL ̲MAN ̲TIME ̲STAMP

         FILE        SYNTAX ̲VAL.S
         PROCEDURE   MAN ̲TIME ̲STAMP
         VALIDATION  1 field without IOC - mandatory
         STORAGE 0   time type (long) 4 bytes
         STORAGE 1   -
         VUP ̲SEMAN ̲REC -
         USPR ̲TABLES -
         TMP         -
         COMMENTS    The procedure CONVERT ̲TIME converts and
                     validates

                 VAL ̲FROM ̲PLA

         FILE        PLA ̲SYNTAX.S
         PROCEDURE   FROM ̲PLA
         VALIDATION  1 field without IOC
         STORAGE 0   PLA with IOC
         STORAGE 1   PLA ref.
         VUP ̲SEMAN ̲REC -
         USPR ̲TABLES -
         TMP         LOCAL ̲PLA ̲TABLE
         COMMENTS    -


                 VAL ̲PLA ̲GRP

         FILE        PLA ̲SYNTAX.S
         PROCEDURE   PLA ̲GRP
         VALIDATION  bundle of max 6 fields without IOC
         STORAGE 0   PLA's or AIG's with IOC
         STORAGE 1   PLA refs. 0 for blank field
         VUP ̲SEMAN ̲REC.SING ̲PLA ̲COUNT
         USPR ̲TABLES -
         TMP         PLA ̲REF ̲TABLE, LOCAL ̲PLA ̲TABLE
                     PLA ̲TABLE, AIG ̲TABLE
         COMMENTS    Each field may contain any of the following:

                     AIG ref.  "AIG" followed by 4 digits
                     AG ref.   "AG" followed by 4 chars.
                     X PLA     "X /" followed by any string
                     ZEN PLA   "ZEN /" followed by any string
                     Full PLA  any other string
                     PLA ref.  4 digits





                 VAL ̲EXEMPT

         FILE        PLA ̲SYNTAX.S
         PROCEDURE   PLA ̲GRP
         VALIDATION  bundle with max 6 fields without IOC
         STORAGE 0   PLA's or AIG's with IOC
         STORAGE 1   PLA refs. 0 for blank field
         VUP ̲SEMAN ̲REC.EXEMPT ̲COUNT
         USPR ̲TABLES -
         TMP         PLA ̲REF ̲TABLE, LOCAL ̲PLA ̲TABLE
                     PLA ̲TABLE, AIG ̲TABLE
         COMMENTS    Each field may contain any of the following:

                     AIG ref.  "AIG" followed by 4 digits
                     AG ref.   "AG" followed by 4 chars.
                     X PLA     "X /" followed by any string
                     ZEN PLA   "ZEN /" followed by any string
                     Full PLA  any other string

                 VAL ̲OPT ̲LOC ̲PLA

         FILE        PLA ̲SYNTAX.S
         PROCEDURE   OPT ̲LOC ̲PLAD
         VALIDATION  1 field without IOC 2 bytes
         STORAGE 0   PLA ref. 2 bytes
         STORAGE 1   -
         VUP ̲SEMAN ̲REC -
         USPR ̲TABLES -
         TMP         LOCAL ̲PLA ̲TABLE
         COMMENTS    -

                 VAL ̲OPT ̲GLO ̲PLA

         FILE        PLA ̲SYNTAX.S
         PROCEDURE   OPT ̲GLO ̲PLAD
         VALIDATION  1 field without IOC 54 chars.
         STORAGE 0   PLA ref. 2 bytes
         STORAGE 1   -
         VUP ̲SEMAN ̲REC -
         USPR ̲TABLES -
         TMP         PLA ̲TABLE
         COMMENTS    -




                 VAL ̲AP3 ̲REQ

         FILE        AP3 ̲SYNTAX.S
         PROCEDURE   AP3 ̲REQ
         VALIDATION  1 field without IOC 3 digits (max 7)
         STORAGE 0   binary calue 2 bytes
         STORAGE 1   -
         VUP ̲SEMAN ̲REC -
         USPR ̲TABLES -
         TMP         -
         COMMENTS    -

                 VAL ̲AP3 ̲SET ̲TEXT

         FILE        AP3 ̲SYNTAX.S
         PROCEDURE   SET ̲TEXT
         VALIDATION  1 field with IOC
         STORAGE 0   contents of M.5 + "//"
         STORAGE 1   -
         VUP ̲SEMAN ̲REC.EMPTY ̲LINE ̲COUNT
         USPR ̲TABLES -
         TMP         -
         COMMENTS    M.5 only stored when replica = 1

                 VAL ̲AP3 ̲SET ̲ID

         FILE        AP3 ̲SYNTAX.S
         PROCEDURE   SET ̲ID
         VALIDATION  1 field without IOC - optional uses M.5
         STORAGE 0   -
         STORAGE 1   -
         VUP ̲SEMAN ̲REC -
         USPR ̲TABLES -
         TMP         -
         COMMENTS    SET ̲ID (incl. IOC) written to M.5

                 VAL ̲MAN ̲SET ̲ID

         FILE        AP3 ̲SYNTAX.S
         PROCEDURE   SET ̲ID
         VALIDATION  1 field with IOC - mandatory uses M.5
         STORAGE 0   -
         STORAGE 1   -
         VUP ̲SEMAN ̲REC -
         USPR ̲TABLES -
         TMP         -
         COMMENTS    SET ̲ID (incl. IOC) is written to M.5



                 VAL ̲AP3 ̲SET ̲FIELD

         FILE        AP3 ̲SYNTAX.S
         PROCEDURE   SET ̲FIELD
         VALIDATION  1 field without IOC - optional
         STORAGE 0   (contents of M.5)
         STORAGE 1   -
         VUP ̲SEMAN ̲REC -
         USPR ̲TABLES -
         TMP         -
         COMMENTS    "/" + SET ̲FIELD is written to M.5. IOC
                     header is updated

                 VAL ̲MAN ̲SET ̲FIELD

         FILE        AP3 ̲SYNTAX.S
         PROCEDURE   SET ̲FIELD
         VALIDATION  1 field with IOC - mandatory
         STORAGE 0   (contents of M.5)
         STORAGE 1   -
         VUP ̲SEMAN ̲REC -
         USPR ̲TABLES -
         TMP         -
         COMMENTS    "/" + SET ̲FIELD is written to M.5. IOC
                     is updated.

                 VAL ̲SEL ̲OPT ̲SET ̲FIELD

         FILE        AP3 ̲SYNTAX.S
         PROCEDURE   SET ̲FIELD
         VALIDATION  1 field with IOC - optional
         STORAGE 0   (contents of M.5)
         STORAGE 1   -
         VUP ̲SEMAN ̲REC -
         USPR ̲TABLES -
         TMP         -
         COMMENTS    "/" + SET ̲FIELD is written to M.5. IOC
                     is updated



                 VAL ̲SEL ̲MAN ̲SET ̲FIELD

         FILE        AP3 ̲SYNTAX.S
         PROCEDURE   SET ̲FIELD
         VALIDATION  1 field with IOC - mandatory
         STORAGE 0   (contents of M.5)
         STORAGE 1   -
         VUP ̲SEMAN ̲REC -
         USPR ̲TABLES -
         TMP         -
         COMMENTS    "/" + SET ̲FIELD is written to M.5. IOC
                     is updated. If no set ID is entered (IOC
                     count = 0) then no entry is required.

                 VAL ̲COLOUMN ̲HEAD

         FILE        AP3 ̲SYNTAX.S
         PROCEDURE   COLOUMN ̲HEAD
         VALIDATION  1 field with IOC uses M.5
         STORAGE 0   field with IOC
         STORAGE 1   -
         VUP ̲SEMAN ̲REC -
         USPR ̲TABLES -
         TMP         -
         COMMENTS    IOC header + "/" generated in M.5.

                 VAL ̲FIRST ̲COL ̲FIELD

         FILE        AP3 ̲SYNTAX.S
         PROCEDURE   COLOUMN ̲FIELD
         VALIDATION  1 field with IOC uses M.5
         STORAGE 0   -
         STORAGE 1   -
         VUP ̲SEMAN ̲REC -
         USPR ̲TABLES -
         TMP         -
         COMMENTS    IOC header + "/" generated in M.5.




                 VAL ̲COL ̲FIELD

         FILE        AP3 ̲SYNTAX.S
         PROCEDURE   COLOUMN ̲FIELD
         VALIDATION  1 field with IOC uses M.5
         STORAGE 0   -
         STORAGE 1   -
         VUP ̲SEMAN ̲REC -
         USPR ̲TABLES -
         TMP         -
         COMMENTS    Field stored in M.5.

                 VAL ̲LAST ̲COL ̲FIELD

         FILE        AP3 ̲SYNTAX.S
         PROCEDURE   COLOUMN ̲FIELD
         VALIDATION  1 field with IOC uses M.5
         STORAGE 0   Contents of M.5
         STORAGE 1   -
         VUP ̲SEMAN ̲REC -
         USPR ̲TABLES -
         TMP         -
         COMMENTS    -



4.2.7.4.2    S̲E̲M̲A̲N̲ ̲V̲A̲L̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲



4.2.7.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 function of this module is to contain validation
         procedures for each format, in order to validate the
         con text of the format.

         The subaction COPY ̲VUP ̲SEMAN copies the ACCOUNT part
         of VUP ̲SEMAN ̲REC to UFCO ̲ACCOUNT. It is used as default
         semantic subaction. The other subaction should call
         COPY ̲VUP ̲SEMAN if validation result = OK.

         In insertion of a new subaction requires the following:

         1.  The code is inserted as a subprocedure (or declared
             as an import module, if it is contained in a separate
             module).

         2.  Case table and switch table at the end of the module
             are extended with the extra entry.





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

         All semantic procedures has the same interface, thus
         they will be described as one.

         SEMAN ̲PROC (R0, R4, R5, R6);

         Register conventions:

         R0(call):   Format number (from last 3 digits in format
                     name)
         R0(return): Result OK, NOT ̲OK
         R4:         Memory record M.1 (i.e. UFCO ̲ACCOUNT)
         R5:         Memory record M.3 (i.e. SEMAN ̲REC)



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

         Procedure O̲K̲ ̲D̲E̲C̲I̲S̲I̲O̲N̲ (R0, R4, R5, R6)

         Sets DECISION to V ̲OK and copies SEMAN ̲REC to UFCO
         ̲
         ACCOUNT.

         Procedure C̲O̲P̲Y̲ ̲V̲U̲P̲ ̲S̲E̲M̲A̲N̲ ̲(̲R̲0̲,̲ ̲R̲4̲,̲ ̲R̲5̲,̲ ̲R̲6̲)̲

         If decision (VUP ̲SEMAN ̲REC.UC.DECISION) = 0 then V
         ̲OK = decision. Copy UFCO ̲ACCOUNT part of VUP ̲SEMAN
         ̲REC to UFCO ̲ACCOUNT (from M.3 to M.1).

         Procedure S̲E̲T̲ ̲M̲A̲I̲N̲T̲Y̲P̲E̲

         (R1  C  K   MAINTYPE VALUE
          R5  C  K   % VUP ̲SEMAN ̲REC
          R6) C      LINK

         The value in R1 is stored in:

         VUP ̲SEMAN ̲REC.UC.MAINTYPE
         CIF ̲FIELD ̲1: IMF MAINTYPE
         CIF ̲FIELD ̲1: CTS MSG ̲TYPE

         Procedure C̲T̲S̲A̲ ̲L̲O̲G̲

         (R6) -  -   LINK

         NARRATIVE: Writes fields: calling ̲station, filing ̲time,
         time ̲stamp ̲send & terminal ̲designator into ctsa ̲log
         record of adm ̲field. Note: fields message ̲type is written
         by SET ̲MAINTYPE, field item ̲1ref ̲id by FCP are written
         by FCP.





4.2.7.4.3    D̲I̲S̲P̲L̲A̲Y̲ ̲F̲I̲E̲L̲D̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲ ̲



4.2.7.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 function of this module is to contain display procedures
         for each possible field in the user formats.



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

         All display procedures have the same interfaces, thus
         they will be described as one.

         DISPLAY ̲PROC (R0, R1, R3, R4, R5, R6);

         Register conventions:

         R0: Display procedure reference
         R1: VDU field type
         R3: Size of data
         R4: Pointer to input data
         R5: Pointer to output data



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

         None.



4.3      M̲E̲M̲O̲R̲Y̲ ̲L̲A̲Y̲O̲U̲T̲

         As a basis for calculation the following figures are
         used:

         V̲C̲O̲ ̲C̲O̲R̲O̲U̲T̲I̲N̲E̲

         Approx 2.5 KW code

         U̲F̲C̲O̲ ̲C̲O̲R̲O̲U̲T̲I̲N̲E̲

         Approx 12.0 KW code

         V̲D̲I̲A̲ ̲C̲O̲R̲O̲U̲T̲I̲N̲E̲

         Approx 14.5 KW code



         R̲E̲T̲R̲ ̲C̲O̲R̲O̲U̲T̲I̲N̲E̲

         Approx 0.5 KW code

         T̲O̲T̲A̲L̲

         Approx 29.5 KW code Data ̲Area is estimated to 5 K.
         Words, thus the Memory turns to be approx 35 KW.

         U̲M̲A̲M̲ ̲P̲R̲O̲C̲E̲S̲S̲

         Approx 9.3 KW code
         
         UMAM data area = approx 6,0 KW