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

⟦b27aa9512⟧ Wang Wps File

    Length: 48945 (0xbf31)
    Types: Wang Wps File
    Notes: FIX/1164/PSP/0100         
    Names: »3395A «

Derivation

└─⟦0a6a0cf2a⟧ Bits:30006130 8" Wang WCS floppy, CR 0296A
    └─ ⟦this⟧ »3395A « 

WangText

…0d……00……00…E…02…E
…00……00…E E…06…C…09…C…0f…#…05…"…0b…"…02…!…08…!…0d…!…0f…!…01…!…07… …09… …0b… …00… …01…   …06……1f……08……1f……0a……1f……0e……1f……00……1f… …1f……06……1e……08……1e……09……1e……0c……1e……0e……1e……01……1e… …1e……07……1d……0a……1d……0c……1d……0e……1d……00……1d…
…1d……86…1         …02…   …02…   …02…   …02…                 …02…                         
3395A/0296A/jjj…86…1                                             …02…            …02…    …02…    
        

…02…FIX/1164/PSP/0100

…02… JJJ/890609…02……02…v 
TEPINT SUBSYSTEM PSP
…02… JKR/830304…02…  FIKS












                 FIKS TEPINT SUBSYSTEM PSP


                 FIX/1164/PSP/0100














                 AK




                 FMK







                 FMK   (5)
                 AK   (4)
                 














                          FIKS Pgm.Mgr.   890609


…0f…         1.2…0e…



         890609






…0e…3395A/0296A…02… FIX/1164/PSP/0100…0f…

 …02……0e… JJJ/890609…02…ii…0f…
…0e… FIKS TEPINT SUBSYSTEM PSP…0f…
…02……0e… KHP/861217…02…  FIKS…0f…












 1       830307                 All      First issue of document


 1.1     861217                 DCN1     Changed in accordance
                                        with Order No. 07/86.


 1.2     890609                 DCN2     Changed in accordance
                                        with Order No. 28/88.


                                           T̲A̲B̲L̲E̲ ̲O̲F̲ ̲C̲O̲N̲T̲E̲N̲T̲S̲
                                                       Page


   1 SCOPE .......................................... 0001
     1.1 Introduction ............................... 0002

   2 APPLICABLE DOCUMENTS ........................... 0003

   3 MODULE SPECIFICATION ........................... 0005
     3.1 Functional Capabilities .................... 0006
       3.1.1 ITEP ̲MAIN Module ....................... 0006
       3.1.2 LON Procedure .......................... 0008
       3.1.3 LOF Procedure .......................... 0009
       3.1.4 TEP ̲INIT ̲REST Procedure ................ 0010

         3.1.5.1 ICREATE Procedure .................. 0011
         3.1.5.2 ITRANSFER Procedure ................ 0012
         3.1.5.3 ICONTROL Procedure ................. 0013
         3.1.5.4 IWAIT Procedure .................... 0014
         3.1.5.5 WAIT ̲TIME ̲OUT Procedure ............ 0016
         3.1.5.6 INIT ̲CHANNELS Procedure ............ 0017
         3.1.6.1 GET ̲CRITICAL ̲REGION Procedure ...... 0018
         3.1.6.2 GET ̲TCB Procedure .................. 0019
         3.1.6.3 PUT ̲TCB, Utility Procedure ......... 0020
         3.1.6.4 UPDATE ̲TCB Utility Procedure ....... 0021
         3.1.6.5 SCAN ̲CRT Utility Procedure ......... 0022
         3.1.6.6 GET ̲PROMPT Utility Procedure ....... 0023


         3.1.7.1.  ITERR Procedure .................. 0024
         3.1.7.2 ANALYSE ̲CC, Procedure .............. 0025
         3.1.7.3 PSM ̲MESS Procedure ................. 0026
         3.1.7.4 ID PASSWORD Procedure .............. 0027
         3.1.7.5 USER ̲PROFILE Procedure ............. 0028
         3.1.7.6 EVENT ̲HANDLER Procedure ............ 0029
         3.1.7.7 SCRAMBLE ̲PASSW Procedure ........... 0029

     3.2.  Interface Description .................... 0030
       3.2.1   TEP MAIN Module ...................... 0030
         3.2.1.1 Internal Interface ................. 0030
         3.2.1.2 External Interface ................. 0032

       3.2.2 LON Procedure .......................... 0033
         3.2.2.1 Internal Interface ................. 0033
         3.2.2.2 External Interface ................. 0035

       3.2.3 LOF Procedure .......................... 0036
         3.2.3.1 Internal Interface ................. 0036
         3.2.3.2 External Interface ................. 0038

       3.2.4 TEP ̲INIT ̲REST Procedure ................ 0039
         3.2.4.1 Internal Interface ................. 0039
         3.2.4.2 External Interface ................. 0040

         3.2.5.1 ICREATE Procedure .................. 0041
           3.2.5.1.1 Internal Interface ............. 0041
           3.2.5.1.2 External Interface ............. 0041


         3.2.5.2 ITRANSFER Procedure ................ 0042
           3.2.5.2.1 Internal Interface ............. 0042
           3.2.5.2.2 External Interface ............. 0046

         3.2.5.3 ICONTROL Procedure ................. 0047
           3.2.5.3.1 Internal Interface ............. 0047
           3.2.5.3.2 External Interface ............. 0048

         3.2.5.4 IWAIT Procedure .................... 0049
           3.2.5.4.1 Internal Interface ............. 0049
           3.2.5.4.2 External Interfaces ............ 0050

         3.2.5.5 WAIT ̲TIME ̲OUT Procedure ............ 0051
           3.2.5.5.1 Internal Interface ............. 0051
           3.2.5.5.2 External Interface ............. 0052

         3.2.5.6 INIT CHANNELS ...................... 0053
           3.2.5.6.1 Internal Interface ............. 0053
           3.2.5.6.2 External Interface ............. 0054

         3.2.6.1 GET ̲CRITICAL ̲REGION Procedure ...... 0055
           3.2.6.1.1 Internal Interface ............. 0055
           3.2.6.1.2 External Interface ............. 0055

         3.2.6.2 GET ̲TCB Procedure .................. 0056
           3.2.6.2.1 Internal Interface ............. 0056
           3.2.6.2.2 External Interfaces ............ 0056


         3.2.6.3 PUT ̲TCB Procedure .................. 0057
           3.2.6.3.1 Internal Interface ............. 0057
           3.2.6.3.2 External Interface ............. 0057

         3.2.6.4 UPDATE ̲TCB Procedure ............... 0058
           3.2.6.4.1 Internal Interface ............. 0058
           3.2.6.4.2 External Interface ............. 0058

         3.2.6.5 SCAN ̲CRT Procedure ................. 0059
           3.2.6.5.1 Internal Interface ............. 0059
           3.2.6.5.2 External Interface ............. 0059

         3.2.6.6 GET ̲PROMPT Procedure ............... 0060
           3.2.6.6.1 Internal Interface ............. 0060
           3.2.6.6.2 External Interface ............. 0060

         3.2.7.1 ITERR Procedure .................... 0061
           3.2.7.1.1 Internal Interface ............. 0061
           3.2.7.1.2 External Interface ............. 0061

         3.2.7.2 ANALYSE ̲CC Procedure ............... 0062
           3.2.7.2.1 Internal Interface ............. 0062
           3.2.7.2.2 External Interface ............. 0062

         3.2.7.3 PSM ̲MESS Procedure ................. 0063
           3.2.7.3.1 Internal Interface ............. 0063
           3.2.7.3.2 External Interface ............. 0063

         3.2.7.4 ID ̲PASSWORD Procedure .............. 0064
           3.2.7.4.1 Internal Interface ............. 0064
           3.2.7.4.2 External Interface ............. 0064

         3.2.7.5 USER ̲PROFILE Procedure ............. 0065
           3.2.7.5.1 Internal Interface ............. 0065
           3.2.7.5.2 External Interface ............. 0065


         3.2.7.6 EVENT ̲HANDLER Procedure ........... 0066
           3.2.7.6.1 Internal Interface ............ 0066
           3.2.7.6.2 External Interface ............ 0066

         3.2.7.7 SCRAMBLE ̲PASSW Procedure .......... 0066a
           3.2.7.7.1 Internal Interface ............ 0066a
           3.2.7.7.2 External Interface ............ 0066a

     3.3 Processing ................................ 0067
       3.3.1 ITEP ̲MAIN ............................. 0068
       3.3.2 LON ................................... 0070
       3.3.3 LOF ................................... 0073
       3.3.4 TEP ̲INIT ̲REST ......................... 0075
       ITDX ̲UTIL 
         3.3.5.1 ICREATE ........................... 0076
         3.3.5.2 ITRANSFER ......................... 0078
         3.3.5.3 ICONTROL .......................... 0089
         3.3.5.4 IWAIT ............................. 0090
         3.3.5.5 WAIT ̲TIMEOUT ...................... 0098
         3.3.5.6 INIT ̲CHANNELS ..................... 0099

       ICRIT ̲REG ̲UTIL
         3.3.6.1 GET ̲CRIT ̲REG ...................... 0100
         3.3.6.2 GET ̲TCB ........................... 0101
         3.3.6.3 PUT ̲TCB ........................... 0102
         3.3.6.4 UPDATE ̲TAB ........................ 0103
         3.3.6.5 SCAN ̲CRT .......................... 0104
         3.3.6.6 GET ̲PROMPT ........................ 0105



       OTHER ̲UTIL 
         3.3.7.1 ITERR ............................. 0106
         3.3.7.2 ANALYSE ̲CC ........................ 0107
         3.3.7.3 PSM ̲MESS .......................... 0108
         3.3.7.4 ID ̲PASSWORD ....................... 0109
         3.3.7.5 USER ̲PROFILE ...................... 0111
         3.3.7.6 EVENT ̲HANDLER ..................... 0112

     3.4 Data Organization ......................... 0113
     3.5 Storage Allocation ........................ 0114
     3.6 Performance Characteristic ................ 0115
     3.7 Limitations ............................... 0116
     3.8 Error Codes/Error Locations ............... 0117
     3.9 Listing Reference ......................... 0119

   4 QUALITY ASSURANCE ............................. 0120
     4.1 Qualification Tests ....................... 0120
     4.2 Other Quality Assurance ................... 0120

   5 PREPARATION FOR DELIVERY ...................... 0121

   6 NOTES ......................................... 0122

   7 APPENDICES .................................... 0123


1        S̲C̲O̲P̲E̲

         This document describes the function of the terminal process at the SCC.

         The purpose of the terminal process is to support the main machine interface.

         Included in this document is only the Interactive Terminal Monitor (ITM).  For intercept
         handling and procedures other than LON and LOF please refer to:

         INTERCEPT SUBSYSTEM             FIX/1164/PSP/0053
         TEPINT BACKGOUND IF SUBSYSTEM   FIX/1364/PSP/0101


1.1      I̲n̲t̲r̲o̲d̲u̲c̲t̲i̲o̲n̲

         The ITM subsystem implements 5 major functions:

         .   start of terminal process
         .   terminal control (e.g. clear screen)
         .   terminal interface (data input/output
                                 from/to terminal)
         .   system access (log on and log off at a terminal)
         .   invokation of intercept procedure and backgound interface procedures.


2        A̲P̲P̲L̲I̲C̲A̲B̲L̲E̲ ̲D̲O̲C̲U̲M̲E̲N̲T̲S̲

         FIKS SYSTEM PSP               FIX/1000/PSP/0038
         FIKS DATA I/F REFERENCE       FIX/0100/MAN/0004
         FIKS REQUIREMENTS SPEC.       FIX/0000/SPC/0002
         FIKS S/W CONF.CONTROL
         LIB.DESCR.DOC                 FIX/1000/EWP/0080
         FIKS FILE GENERATORS PSP      FIX/1200/PSP/0042
         APPVDU MONITOR PSP            FIX/1256/PSP/0040
         CHECKP SUBSYSTEM PSP          FIX/1100/PSP/0041
         CONV ̲DTG MONITOR PSP          FIX/1256/PSP/0039
         DOI SUBSYSTEM PSP             FIX/1161/PSP/0043
         DOI SUBSYSTEM PSP             FIX/1161/PSP/0045
         ESP SYSTEM PSP                FIX/1105/PSP/0046
         GET ̲DTG MONITOR PSP           FIX/1256/PSP/0044
         GETUSP MONITOR PSP            FIX/1256/PSP/0050
         HSP SUBSYSTEM PSP             FIX/1161/PSP/0051
         INTASC MONITOR PSP            FIX/1256/PSP/0052
         INTERCEPT SUBSYSTEM PSP       FIX/1164/PSP/0053
         JOURNAL PROCEDURE PSP         FIX/1200/PSP/0054
         LCFH MONITOR PSP              FIX/1256/PSP/0055
         LOG ̲ACT MONITOR PSP           FIX/1256/PSP/0056
         LOG ̲JOUR MONITOR PSP          FIX/1256/PSP/0057
         NED SUBSYSTEM PSP             FIX/1161/PSP/0068
         NES SUBSYSTEM PSP             FIX/1161/PSP/0069
         NIP SUBSYSTEM PSP             FIX/1161/PSP/0070
         NOP SUBSYSTEM PSP             FIX/1161/PSP/0071
         PURGE PROCEDURE PSP           FIX/1200/PSP/0077
         UACCESS MONITOR PSP           FIX/1200/PSP/0078
         RCP PROCEDURE PSP             FIX/1256/PSP/0080
         RDF MONITOR PSP               FIX/1256/PSP/0081
         RIA SUBSYSTEM PSP             FIX/1100/PSP/0086
         RITA MONITOR PSP              FIX/1266/PSP/0087


         SCCM SUBSYSTEM PSP            FIX/1266/PSP/0089
         SCCPSM SUBSYSTEM PSP          FIX/1200/PSP/0090
         SOP SUBSYSTEM PSP             FIX/1161/PSP/0094
         SPU SUBSYSTEM PSP             FIX/1161/PSP/0095
         SYSTEM TEST REPORT S050       FIX/0000/TRP/0081
         SYSTEM TEST REPORT S070       FIX/0000/TRP/0088
         TEPINT BACKGROUND I/F
         SUBMODULE PSP                 FIX/1364/PSP/0101
         UTA SUBSYSTEM PSP             FIX/1167/PSP/0112


3        M̲O̲D̲U̲L̲E̲ ̲S̲P̲E̲C̲I̲F̲I̲C̲A̲T̲I̲O̲N̲

         The Module specifications are divided into 7 sections according to the source files.

         Some of the sections are divided into subsection. One subsection per procedure.

         Example:

                 3. 1. 5. 2. 
                               ITRANSFER
                               ITDX ̲UTIL
                               Functional Capabilities
                               Module Specifications




3.1      F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲C̲a̲p̲a̲b̲i̲l̲i̲t̲i̲e̲s̲


3.1.1    ITEP ̲MAIN Module
…0e……0e…          ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲…0f……0f…

         F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲C̲a̲p̲a̲b̲i̲l̲i̲t̲i̲e̲s̲

         The ITEP ̲MAIN Module has three major functions:

         1.  initialization of the terminal process at start.

         2.  it supports the user to get access to the terminal process (LON, LOF).

         3.  it will allow a user to enter the intercept procedure or one of the network control procedures
             (background processes).
             Two terminals cannot have access to the same background process at a time.

         add 2.  for LON, LOF please refer to 3.1.2. and 3.1.3.

         add 3.  please refer to:

                 INTERCEPT SUBSYSTEM   FIX/1164/PSP/0053
                 TEPINT BACKGROUND
                 IF SUBSYSTEM          FIX/1364/PSP/0101

         When the process is started up, a read on the control channel is initiated.  Before operating
         the terminal a system access request has to be entered (at VDU: EOM).  The computer response
         to this request is the promp 'PROC ̲'.
         The terminal is now 'ON ̲LINE', and the operator can enter his commands.
         The first command has to be a Logon Command (LON).  …86…W         …02…   …02…   …02…   …02…                 …02…
                                 
         When the logon sequence has been completed a new'PROC ̲' will be issued and the terminal is
         ready for operator request.



3.1.2    L̲O̲N̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲

         F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲C̲a̲p̲a̲b̲i̲l̲i̲t̲i̲e̲s̲

         The procedure supports the check for access right to the system by prompting the operator
         for:

             -   id
             -   password

         The correct answer for the prompts id and password, must be entered within 3 attempts.

         An unsuccessful logon will cause a log on the logprinter and the terminal will be at PROC
         ̲ state.

         After successful logon the procedure updates the   terminal control block and user security
         profile in accordance to the actual user, and the action is logged ̲on the logprinter.

         The logon mode is always RX/TX



3.1.3    L̲O̲F̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲

         F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲C̲a̲p̲a̲b̲i̲l̲i̲t̲i̲e̲s̲

         The procedure supports the check for sign off the system by prompting the operator for:

             -   id
             -   password

         The correct answer for the prompts must be enetered within 3 attempts.
         An unsuccessful log off will cause a log on the log-printer and the terminal will be logged
         off.

         After successful log off the action is logged on the logprinter


3.1.4    TEP ̲INIT ̲REST Procedure
…0e……0e…          ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲…0f……0f…

         F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲C̲a̲p̲a̲b̲i̲l̲i̲t̲y̲

         The procedure takes care of the initialization of the terminal process at start.

         The file descriptor for the system volumes and the RDF file are found and saved.  Data and
         control channels to the terminals are created and the screen is cleared.…86…W         …02…   …02…   …02…
           …02…                 …02…                         
3.1.5.1  I̲C̲R̲E̲A̲T̲E̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲

         F̲u̲n̲t̲i̲o̲n̲a̲l̲ ̲C̲a̲p̲a̲b̲i̲l̲i̲t̲i̲e̲s̲

         The ICREATE Procedure creates the channels to the terminal associated with the process. 
         The channels to be created are:

         .   data channel
         .   control channel
         .   data channel to paper tape reader (if any)

         A buffer containing 80 null chars will be appended to the terminal on the data channel to
         reset the LTU.

         A read on the control channel will be initiated.


3.1.5.2  I̲T̲R̲A̲N̲S̲F̲E̲R̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲

         F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲C̲a̲p̲a̲b̲i̲l̲i̲t̲i̲e̲s̲

         The procedure is used to transfer data to and from the terminal.

         The procedure is called with an action code indicating one of the following I/O requests:

         -   write
         -   Read
         -   Initiate read
         -   Complete initiated read
         -   Prompt
         -   Prompt and read
         -   Prompt password
         -   Write error code

         The procedure is limited to a maximum of 2 pending readings (INIT ̲READ) on the data channel.
         In case a reading is completed with input from a function key (control channel), all data
         channel references are cancelled.

         The prompt password branch will ensure that the operator's answer is invisible.

         The write error branch will display the valves delivered in the ITRANSFER call.
         The codes will be printed on the terminal as follows:

                 ? - X: YYY


3.1.5.3  I̲C̲O̲N̲T̲R̲O̲L̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲

         F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲C̲a̲p̲a̲b̲i̲l̲i̲t̲i̲e̲s̲

         The procedure is used to send control codes to the terminal.

         The following commands can be sent to VDU

         -   block keyboard
         -   unblock keyboard
         -   carriage return
         -   line feed
         -   tabulator
         -   clear screen
         -   set line mode
         -   set part page mode
         -   set protect
         -   protect on
         -   protect off

         The codes are sent to the terminal by call of the monitor procedure APPVDUCON.


3.1.5.4  I̲W̲A̲I̲T̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲

         F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲C̲a̲p̲a̲b̲i̲l̲i̲t̲i̲e̲s̲

         The IWAIT Procedure is a general wait procedure where the process will wait, until a certain
         event occurs.

         The procedure has two branches:

         .   IWAIT ̲MSG
         .   IWAIT ̲OPERATIONS

         In the IWAIT ̲MSG branch the procedure will wait for a message to unblock the terminal.  An
         answer will be returned.

         THE IWAIT ̲MSG branch

         In the IWAIT ̲OPERATIONS branch the procedure will wait for an earlier initiated IO-operation
         to complete.  In case it is the read on the control channel which completes, it is checked
         whether it is a known function key, which has been activated.  Only for known function keys
         a return to the calling procedure will be made.  For unknown function keys a read on the
         control channel will be initiated and the procedure will wait again.



         When waiting for an IO-operation to complete, three other events can occur:

         .   a̲n̲ ̲a̲n̲s̲w̲e̲r̲ can be received.  This will only result in a new wait.

         .   a̲ ̲m̲e̲s̲s̲a̲g̲e̲ can be received.  This will require an answer and the answer will be sent.

         .   a̲ ̲t̲i̲m̲e̲ ̲o̲u̲t̲ can be received.  The time out will be followed by a cancel of the read on
             the data channel.


3.1.5.5  WAIT ̲TIME ̲OUT Procedure
…0e……0e…          ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲…0f……0f…

         F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲C̲a̲p̲a̲b̲i̲l̲i̲t̲i̲e̲s̲

         The procedure is used to generate a delay in case of failure during normal processing (ex.
         timeout from TDX).

         The delay time is 1 minute.


3.1.5.6  INIT ̲CHANNELS Procedure
…0e……0e…          ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲…0f……0f…

         F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲C̲a̲p̲a̲b̲i̲l̲i̲t̲i̲e̲s̲

         The procedure is used to initiate a read on the non active channel(s) (DATA CONTROL).


3.1.6.1  GET ̲CRITICAL ̲REGION Procedure
…0e……0e…          ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲…0f……0f…

         F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲C̲a̲p̲a̲b̲i̲l̲i̲t̲i̲e̲s̲

         The purpose of this utility procedure is to copy data from one of the critical retgions XTCBCR,
         CRT or SSLP to local buffers.
         The region accessed is specified by the calling process:

         XTCBCR:
                 The terminal control block (TCB) of the terminal specified by the variable PROCESS
                 ̲NO is copied to a buffer specified by the calling process.

         CRT:
                 The critical region CRT is copied to a buffer specified by the caller.

         SSLP:
                 The critical region SSLP is copied to a buffer specified by the caller.

         In case of errors, MON ERROR is called and the process is terminated.


3.1.6.2  GET ̲TCB Procedure
…0e……0e…          ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲…0f……0f…

         F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲C̲a̲p̲a̲b̲i̲l̲i̲t̲i̲e̲s̲

         The procedure copies the TCB of a specified terminal from the critical region XTCBCR to the
         local buffer TCB ̲SAVE.

         At the exit from the procedure, the region is still entered by the process, that means that
         no other processes can access the region.

         (This procedure is used together with PUT ̲TCB).


3.1.6.3  PUT ̲TCB, Utility Procedure
…0e……0e…          ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲…0f……0f…

         F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲C̲a̲p̲a̲b̲i̲l̲i̲t̲i̲e̲s̲

         The buffer TCB ̲SAVE is copied to the ciritical region XTCBCR.  The offset in the region is
         determined by the terminal number specified by the call process.

         The critical region must be entered before call of this procedure. (This is usually done
         by the call of GET ̲TCB).

         At the exit the region is 'returned' by the process. (That means that other processes are
         allowed access).


3.1.6.4  UPDATE ̲TCB Utility Procedure
…0e……0e…          ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲…0f……0f…

         F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲c̲a̲p̲a̲b̲i̲l̲i̲t̲i̲e̲s̲

         The function of this procedure is to set or reset a single bit in the buffer TCB ̲SAVE.

         The TCB at terminal (specified by calling process) is copied to the buffer TCB ̲SAVE (by call
         of GET ̲TCB)
         The update type (set or reset), the byte number in TCB ̲SAVE and the bit number in this byte
         is specified by the calling process.

         After update of the single bit the TCB ̲SAVE is copied to the ciritical region XTCBCR (by
         call of PUT ̲TCB).

         As the critical region XTCBCR is entered by GET ̲TCB and left by PUT ̲TCB, the TCB (which is
         to be modified) is protected during the modification.


3.1.6.5  SCAN ̲CRT Utility Procedure
…0e……0e…          ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲…0f……0f…

         F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲C̲a̲p̲a̲b̲i̲l̲i̲t̲i̲e̲s̲

         The purpose of SCAN ̲CRT is to check if an operator input corresponds to a legal command.
         The command is legal if it is found in CRT critical region (command reference table) and
         if the user is allowed to use the actual command.

         If the requested command is found, the parameters Submodule no. and Module no. corresponding
         to this command is extracted from CRT.

         In case the command is not found or it is illegal the procedure returns in error exit


3.1.6.6  GET ̲PROMPT Utility Procedure
…0e……0e…          ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲…0f……0f…

         F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲C̲a̲p̲a̲b̲i̲l̲i̲t̲i̲e̲s̲

         The procedure is called each time a prompt is displayed.

         The prompt to be displayed is determined by the variables Command no. and sequence no.

         In critical region PTT, (offset = command no) the offset to the prompt-table of the actual
         command is fetched.  In this table the offset and length of the prompt text corresponding
         to the subsequence no. is fetched.  The critical region is again accessed and the actual
         prompt text is copied to the requested buffer.


3.1.7.1. I̲T̲E̲R̲R̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲

         F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲C̲a̲p̲a̲b̲i̲l̲i̲t̲i̲e̲s̲

         This utility is called when an error code is to be delivered to the operator.

         The error group and error number is set up and the error text is displayed by call of ITRANSFER.


3.1.7.2  ANALYSE ̲CC, Procedure
…0e……0e…          ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲…0f……0f…

         F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲C̲a̲p̲a̲b̲i̲l̲i̲t̲i̲e̲s̲

         The procedure is called by several procedures in case of an error situation.

         The procedure analyses the error and determines the error group and error code.

         Group and code are displayed on screen by call of ITERR.


3.1.7.3  PSM ̲MESS Procedure
…0e……0e…          ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲…0f……0f…

         F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲C̲a̲p̲a̲b̲i̲l̲i̲t̲i̲e̲s̲

         The procedure is called when a change of a terminal status occurrs.

         A system message containing terminal number and event type is sent to PSM subsystem


3.1.7.4  ID ̲PASSWORD Procedure
…0e……0e…          ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲…0f……0f…

         F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲C̲a̲p̲a̲b̲i̲l̲i̲t̲i̲e̲s̲

         The function of ID-PASSWORD is to prompt the user for either user id or user password (specified
         by the caller)

         The prompt is issued and the answer is checked.  If the user id-password is not found among
         the legal answers in the USP-file an error notice is displayed and the prompt is issued again.

         If the operator fails to give a legal input within 3 attempts the procedure is returned to
         the error-exit.


3.1.7.5  USER ̲PROFILE Procedure
…0e……0e…          ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲…0f……0f…

         F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲C̲a̲p̲a̲b̲i̲l̲i̲t̲i̲e̲s̲

         The function of this procedure is to check the operators answer on the prompt USER ID.

         The user id returned by the operator is copied from the input buffer.  The USP-file is accessed
         and the user id searched among the legal user id's.  If found, the user id is copied to the
         TCB of the termial and the rest of the users security profile is copied from USP to a local
         buffer USP ̲SAVE.

         Return in link +0:        user id is illegal (not found)
         Return in line +1:        user id is legal


3.1.7.6  EVENT ̲HANDLER Procedure
…0e……0e…          ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲

         F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲C̲a̲p̲a̲b̲i̲l̲i̲t̲i̲e̲s̲

         The procedure is called each time the status of the terminal is changed (i.e. logon, logoff).

         A system message containing the event type is sent to PSM-subsystem and a transacation log
         on the log-printer is initiated by call of the monitor LOG ̲ACTION.


3.1.7.7  SCRAMBLE ̲PASSWORD Procedure
…0e……0e…          ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲

         F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲C̲a̲p̲a̲b̲i̲l̲i̲t̲i̲e̲s̲

         The procedure is called when a password is entered. An AMOS message is send for the SPA process
         (ref. FXA/SDS/008 sec. 3.3.2) containing the plain text password.
         The returned message buffer contains the scrambled password.


3.2      I̲n̲t̲e̲r̲f̲a̲c̲e̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲


3.2.1    ITEP ̲MAIN Module
…0e……0e…          ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲…0f……0f…


3.2.1.1  I̲n̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The ITEP ̲MAIN Module is invoked by:

         ESP Module                    ref. PSP/0046

         Input to ITEP ̲MAIN Module:

         N/A

         Output from ITEP ̲MAIN Module:

         N/A

         The ITEP ̲MAIN Module interfaces to the following procedures:

         TEP ̲INIT ̲REST                 ref. 3.1.4
         Initialization of the process

         ICONTROL                      ref. 3.1.5.3
         Outputs control codes to terminal

         ANALYSE ̲CC                    ref. 3.1.7.2
         Analyses a bad completion code

         GET ̲CRITICAL ̲REGION           ref. 3.1.6.1
         Reads a critical region



         ITRANSFER                     ref. 3.1.5.2
         Used for input and output on lower screen.

         UPDATE ̲TCB                    ref. 3.1.6.4
         Updates the TCT region

         SCAN ̲CRT                      ref. 3.1.6.5
         Scans the CRT region to find command.

         ITERR                         ref. 3.1.7.1
         Issues error code to operator

         IWAIT                         ref. 3.1.5.4
         Waits for message to unblock terminal

         LON                           ref. 3.1.2
         Supports the logon at a terminal

         LOF                           ref. 3.1.3
         Supports the logoff at a terminal



         INTERCEPT                     ref. PSP/0053
         supports the intercept function on the SCC.

         SCCCMD                        ref. PSP/0101
         Interface for backgound processes


3.2.1.2  E̲x̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         N/A


3.2.2    L̲O̲N̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲


3.2.2.1  I̲n̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The LON Procedure is invoked by the following procedure:

         ITEP ̲MAIN                     ref. 3.1.1

         Input to LON

         -   PROCESS ̲NO                (in a variable)
             Terminal number

         -   TCB ̲SAVE                  (in an array)
             Terminal Control Block

         -   USP ̲SAVE                  (in an array)
             User Security Profile

         Output from LON

         -   TCB                       (critical region)
             Actual and special updates

         -   USP ̲SAVE                  (in an array)
             Updated


         The LON Procedure interfaces to the following procedures:

         ID ̲PASSWORD                   ref. 3.1.7.4.
         Prompt for Id ̲
         Prompt for PASSWORD ̲

         ITERR                         ref. 3.1.7.1.
         Display error code

         ITRANSFER                     ref. 3.1.5.2
         Write logged on dtg mode

         GET ̲PROMPT                    ref. 3.1.6.6
         Get logged on
         Get RX/TX

         ANALYSE ̲CC                    ref. 3.1.7.2
         Check completion code

         GET ̲TCB                       ref. 3.1.6.2
         Get special TCB
         Get actual TCB

         PUT ̲TCB                       ref. 3.1.6.3
         Write TCB to critical region

         EVENT ̲HANDLER                 ref. 3.1.7.6
         Log the action


3.2.2.2  E̲x̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The LON Procedure interfaces to the following monitor procedure:

         MON GETDTG
         Get actual dtg


3.2.3    L̲O̲F̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲


3.2.3.1  I̲n̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The LOF Procedure is invoked by the following procedure:

         ITEP ̲MAIN                     ref. 3.1.1

         Input to LOF

         -   PROCESS ̲NO                (in a variable)
             Terminal number

         -   TCB ̲SAVE                  (in an array)
             Termial Control Block

         -   USP ̲SAVE                  (in an array)
             User Security Profile

         Output from LOF

         -   TCB                       (critical region)
             Actual and special updates


         The LOF Procedure interfaces to the following procedures:

         ID ̲PASSWORD                   ref. 3.1.7.4
         Prompt for ID ̲
         Prompt for PASSWORD ̲

         ITRANSFER                     ref. 3.1.5.2
         Write logged off dtg

         GET ̲PROMPT                    ref. 3.1.6.6
         Get logged off

         ANALYSE ̲CC                    ref. 3.1.7.2
         Check completion code

         GET ̲TCB                       ref. 3.1.6.2
         Get special TCB
         Get actual TCB

         PUT ̲TCB                       ref. 3.1.6.3
         Write TCB to ciritical region

         EVENT ̲HANDLER                 ref. 3.1.7.6
         Log the action

         GET ̲CRITICAL ̲REGION           ref. 3.1.6.1
         Get TCB




3.2.3.2  E̲x̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The LOF Procedure interfaces to the following monitor procedure:

         MON GETDTG
         Get actual dtg


3.2.4    TEP ̲INIT ̲REST Procedure
…0e……0e…          ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲…0f……0f…


3.2.4.1  I̲n̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The TEP ̲INIT ̲REST Procedure is invoked by:

         ITEP ̲MAIN                     ref. 3.1.1.

         Input to TEP ̲INIT ̲REST Procedure is:

         -   CONFIG region
         -   TCT region
         -   USP file

         Output from TEP ̲INIT ̲REST Procedures is:

         -   file descriptors for MOVHEAD, FIXHEAD and RDF
         -   data and control channels to the terminal
         -   TCB save
         -   USP save

         The TEP ̲INIT ̲REST Procedure interfaces to the following procedures:

         GET ̲CRITICAL ̲REGION           ref. 3.1.6.1
         Loads the TCB into TCB-save

         ICREATE                       ref. 3.1.5.1
         Creates data and control channels to the terminal

         ICONTROL                      ref. 3.1.5.3
         Clears the screen


         USER ̲PROFILE                  ref. 3.1.7.5
         Checks the user profile incase of restart


3.2.4.2  E̲x̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The TEP ̲INIT ̲REST Procedure interfaces to the following monitor procedures:

         MON IDENTIFY PROCESS
         Identifies the process

         MON IO GETROOT
         Gets the file descriptors for the system volumes

         MON IO LOOKUP
         Gets the file descriptpr for the RDF-file

         MON MTCB INITE
         Initiates the MTCB work area

         MON REGION RCOPYN
         Loads the CONFIG region into a buffer

         MON ERROR
         Terminals the process in case of an error


3.2.5.1  I̲C̲R̲E̲A̲T̲E̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲


3.2.5.1.1    I̲n̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The ICREATE Procedure is invoked by:

         TEP ̲INIT ̲REST                 ref. 3.1.4.

         Input to ICREATE is:

         .   Process no
         .   TCB-save

         Output from ICREATE is:

         .   Operations reference for control channel


3.2.5.1.2    E̲x̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The ICREATE Procedure interfaces to the following monitor procedures:

         MON LCFH
         Creates a channel to the terminal

         MON IO APPENDBYTES
         Resets the LTU by means of 80 null chars.

         MON IO INITREADBYTES
         Sets up a read on the control channel

         MON ERROR
         Terminates the process in case of an error


3.2.5.2  I̲T̲R̲A̲N̲S̲F̲E̲R̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲


3.2.5.2.1    I̲n̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The procedure is invoked by the following procedures:

         ITEP ̲MAIN                     ref. 3.1.1
         LON                           ref. 3.1.2
         LOF                           ref. 3.1.3
         TEP ̲INIT ̲REST                 ref. 3.1.4
         ITERR                         ref. 3.1.7.1
         ID ̲PASSWORD                   ref. 3.1.7.4
         IACC ̲NEW ̲LINE                 ref. PSP/0053
         IDISP ̲CUR ̲LINE                ref. PSP/0053
         IKDB ̲DATA                     ref. PSP/0053
         IMES ̲ERROR                    ref. PSP/0053
         CR ̲NEW ̲MESSAGE                ref. PSP/0053
         IPROMPT ̲DTG                   ref. PSP/0053
         IGT ̲PLAIN ̲ADDR                ref. PSP/0053
         VDUIO ̲SCC                     ref. PSP/0101
         GET ̲SCCPAR                    ref. PSP/0101



         Input to ITRANSFER

         The necessary input depends on the used branch 

         In general:

             -   not used              register 0
             -   Transfer type
                 (branch)              register 1
             -   Link                  register 6

         WRITE:

             -   Character position    register 2
             -   Line position         register 3
             -   Text buffer address   register 4
             -   No of bytes to send   register 5

         READ:

             -   Receive buffer
                 address               register 4
             -   Receive buffer size   register 5
             -   Delay time            register 7

         INIT ̲READ:

             -   Receive buffer
                 address               register 4
             -   Receive buffer size   register 5

         COMPLETE ̲INIT ̲READ:

             -   Delay time            register 7



         PROMPT ̲READ,
         PROMPT ̲PASSWORD:

             -   Command number           register 2
             -   Prompt sequence number   register 3
             -   Receive buffer address   register 4
             -   Receive buffer address   register 5
             -   Delay time               register 7

         PROMPT:

             -   Command number           register 2
             -   Prompt sequence number   register 3
             -   Prompt buffer address    register 4
             -   Prompt buffer size       register 5

         WRITE ̲ERROR:

             -   Error group              register 2
             -   Error code               register 3

         Output from ITRANSFER

         The output depends on the used branch:

         In general:

             -   Register 0               gives completion code
             -   Register 1               unchanged
             -   Register 2               unchanged
             -   Register 3               unchanged
             -   Register 6               return point
             -   Register 7               unchanged if transfer OK otherwise IO error code



         WRITE:

             -   Register 4               unchanged
             -   Register 5               no of bytes transferred

         READ
         PROMPT ̲READ
         PROMPT ̲PASSWORD:

             -   Register 4               unchanged
             -   Register 5               no of bytes received

         WRITE ̲ERROR,
         INIT ̲READ:

             -   Register 4               unchanged
             -   Register 5               unchanged

         COMPLETE ̲INIT ̲READ:

             -   Register 4               receive buffer address
             -   Register 5               no of received bytes

         PROMPT:

             -   Register 4               unchanged
             -   Register 5               prompt size



         The ITRANSFER Procedure interfaces to the following procedures:

         WAIT ̲TIME ̲OUT                    ref. 3.1.5.5
         delay routine

         INIT ̲CHANNELS                    ref. 3.1.5.6
         initiate read on data and control channel

         IWAIT                            ref. 3.1.5.4
         wait IO completion

         GET ̲PROMPT                       ref. 3.1.6.6
         get prompt from critical region


3.2.5.2.2    E̲x̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The ITRANSFER Interfaces to the following monitor procedures:

         MON ERROR
         log the error

         MON APPVDUTRAN
         append to VDU

         MON IO APPENDBYTES
         append to terminal


3.2.5.3  I̲C̲O̲N̲T̲R̲O̲L̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲


3.2.5.3.1    I̲n̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The ICONTROL Procedure is invoked by the following procedures:

         ITEP ̲MAIN                        ref. 3.1.1
         TEP ̲INIT ̲REST                    ref. 3.1.4
         IWAIT                            ref. 3.1.5.4

         Input to ICONTROL

         -   Ref to a workbuffer          (in register)
             The buffer contains the control codes

         -   No of control codes          (in register)

         -   TCB ̲SAVE                     (in array)
             Terminal status

         -   LOG ̲LINE ̲D                   (in variable)
             Ref. to data channel



         Output from ICONTROL

         -   Completion code

         -   Commands transmitted to terminal

         The ICONTROL Procedure interfaces to the following procedure:

         WAIT ̲TIME ̲OUT                    ref. 3.1.5.5
         Delay routine


3.2.5.3.2    E̲x̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The ICONTROL Procedure interfaces to the following monitor procedures:

         MON APPVDUCON
         Append control codes to VDU

         MON ERROR
         log the error

         MON IO APPENDBYTES
         Append to terminal


3.2.5.4  I̲W̲A̲I̲T̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲


3.2.5.4.1    I̲n̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The IWAIT Procedure is invoked by:

         ITEP ̲MAIN                        ref. 3.1.1
         ITRANSFER                        ref. 3.1.5.2

         Input to IWAIT Procedure is:

         -   delay value                  (register)
         -   wait code                    (register)
         -   OP ̲REF ̲D                     (variable)
         -   OP ̲REF ̲C                     (variable)
         -   TCB ̲SAVE                     (variable)

         Output from IWAIT Procedure is:

         -   no of bytes received         (registered)
         -   completion code              (registered)

         The IWAIT Procedure interfaces to the following procedures:

         ICONTROL                         ref. 3.1.5.3
         Issue a new line (NL) or the VDU made in case of a unknown function key



         INIT ̲CHANNELS                    ref. 3.1.5.6
         Initiates the reads on the data- and control- channels


3.2.5.4.2    E̲x̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲s̲

         The IWAIT Procedure interfaces to the following monitor procedures:

         MON IO CANCEL
         Cancels the read on the data channel.

         MON WAITEVENT
         Waits for a message or an answer

         MON SENDANSWER
         Returns an anser if a message is received

         MON IO WAITOPERATIONS
         Waits for IO-operations to complete

         MON ERROR
         Terminates the process in case of a serious error


3.2.5.5  WAIT ̲TIME ̲OUT Procedure
…0e……0e…          ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲…0f……0f…


3.2.5.5.1    I̲n̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The procedure is invoked by the following procedures:

         ITRANSFER                        ref. 3.1.5.2
         ICONTROL                         ref. 3.1.5.3

         Input to WAIT ̲TIME ̲OUT

         None

         Output from WAIT ̲TIME ̲OUT

         None

         The WAIT ̲TIME ̲OUT Procedure interfaces to no internal procedures


3.2.5.5.2    E̲x̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The WAIT ̲IMTE ̲OUT Procedure interfaces to the following monitor procedure:

         MON WAITEVENT
         Wait for a period of time


3.2.5.6  INIT ̲CHANNELS
…0e……0e…          ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲…0f……0f…


3.2.5.6.1    I̲n̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The procedure is invoked by the procedures:

         ITRANSFER                        ref. 3.1.5.2
         IWAIT                            ref. 3.1.5.4

         Input to INIT ̲CHANNELS:

         -   Ref. to file address         (in register)
             Ref to actual data channel

         -   Ref to buffer list element   (in register)
             Ref to actual BLE

         -   OP ̲REF ̲D                     (in a variable)
             Ref to data channel

         -   OP ̲REF ̲C                     (in a variable)
             Ref to control channel

         Output from INIT ̲CHANNELS:

         -   Read initiated on channel(s)
         -   OP ̲REF ̲D                     (in a variable)
             OP ̲REF ̲C                     (in a variable)
             channel refs updated

         In case of error exit (LINK)

         -   Error location code          (in register)

         The INIT ̲CHANNELS interfaces to no internal procedures


3.2.5.6.2    E̲x̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The INIT ̲CHANNELS Procedure interfaces to the following monitor procedure:

         MON IO INITREADBYTES
         Initiate read ondata or control channel


3.2.6.1  GET ̲CRITICAL ̲REGION Procedure
…0e……0e…          ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲…0f……0f…


3.2.6.1.1    I̲n̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The utility procedure GET ̲CRITICAL ̲REGION is invoked by the procedures:

         SCAN ̲CRT                         ref. 3.1.6.5
         ITEP ̲MAIN                        ref. 3.1.1
         LOF                              ref. 3.1.3
         TEP ̲INIT ̲REST                    ref. 3.1.4

         Input to GET ̲CRITICAL ̲REGION:

         -   Region number                (register)
         -   Address of destination
             buffer                       (register)

         Output from GET ̲CRITICAL ̲REGION:

         Contents of specified critical region in the specified buffer


3.2.6.1.2    E̲x̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The following monitor procedures are called:

         MON REGION

         MON ERROR


3.2.6.2  GET ̲TCB Procedure
…0e……0e…          ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲…0f……0f…


3.2.6.2.1    I̲n̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The procedure GET ̲TCB is called by:

         LON                              ref. 3.1.2
         LOF                              ref. 3.1.3
         UPDATE ̲TCB                       ref. 3.1.6.4
         USER ̲PROFILE                     ref. 3.1.7.5

         Input to GET ̲TCB:

         -   Terminal no                  (in register)

         Output from GET ̲TCB:

         -   TCB of specified terminal in the buffer TCB ̲SAVE


3.2.6.2.2    E̲x̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲s̲

         The following monitor are called:

         MON REGION

         MON ERROR


3.2.6.3  PUT ̲TCB Procedure
…0e……0e…          ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲…0f……0f…


3.2.6.3.1    I̲n̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         PUT ̲TCB is called by:

         LON                              ref. 3.1.2
         LOF                              ref. 3.1.3
         UPDATE ̲TCB                       ref. 3.1.6.4
         USER ̲PROFILE                     ref. 3.1.7.5

         Input to PUT ̲TCB:

         -   Terminal number              (in register)
         -   TCB                          (in buffer TCB ̲SAVE)

         Output from PUT ̲TCB:

         None


3.2.6.3.2    E̲x̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The following monitors are called:

         MON REGION

         MON ERROR


3.2.6.4  UPDATE ̲TCB Procedure
…0e……0e…          ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲…0f……0f…


3.2.6.4.1    I̲n̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The procedure UPDATE ̲TCB is called by:

         ITEP ̲MAIN                        ref. 3.1.1

         Input to UPDATE ̲TCB:

         -   Terminal no                  (variable PROCESS ̲NO)
         -   Update type (set/reset bit)  (register)
         -   Byte number                  (register)
         -   bit number                   (register)

         Output from UPDATE ̲TCB:

         -   The buffer TCB ̲SAVE and the critical region XTCBCR is modified

         The procedure interfaces to the procedures:

         GET ̲TCB                          ref. 3.1.6.2
         (A TCB is copied to TCB ̲SAVE)

         PUT ̲TCB                          ref. 3.1.6.3
         (A TCB is copied to critical region XTCBCR)


3.2.6.4.2    E̲x̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         None


3.2.6.5  SCAN ̲CRT Procedure
…0e……0e…          ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲…0f……0f…


3.2.6.5.1    I̲n̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         SCAN ̲CRT are invoked by the procedure:

         ITEP ̲MAIN                        ref. 3.1.1

         Input to SCAN ̲CRT:

         -   address of buffer
             containing operator input    (register)

         -   operator type (MSP,
             Supervisor, assistant)       (register)

         Output from SCAN ̲CRT:

         -   Command no                   (register)
         -   Module no                    (register)
         -   Submodule no                 (register)

         The procedure GET ̲CRITICAL ̲REGION
         is called                        ref. 3.1.6.1


3.2.6.5.2    E̲x̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         None


3.2.6.6  GET ̲PROMPT Procedure
…0e……0e…          ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲…0f……0f…


3.2.6.6.1    I̲n̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         GET ̲PROMPT is accessed by:

         LON                              ref. 3.1.2
         LOF                              ref. 3.1.3
         ITRANSFER                        ref. 3.1.5.2

         Input to GET ̲PROMPT:

         -   Command no                   (in register)
         -   Sequence no                  (in register)
         -   Address of destination
             buffer                       (in buffer)

         Output from GET ̲PROMPT:

         -   No of bytes in the
             text string                  (in register)
         -   the prompt text              (in buffer specified at call)


3.2.6.6.2    E̲x̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The following monitor procedures are called:

         -   MON REGION

         -   MON ERROR


3.2.7.1  I̲T̲E̲R̲R̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲


3.2.7.1.1    I̲n̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The ITERR Procedure is invoked by:

         ITEP ̲MAIN                        ref. 3.1.1
         LON                              ref. 3.1.2
         ANALYSE ̲CC                       ref. 3.1.7.2
         ID ̲PASSWORD                      ref. 3.1.7.4

         Input to ITERR:

         -   Error Group                  (in register)
         -   Error number                 (in register)

         Output from ITERR:

         None

         The procedure ITRANSFER is called (when the error text is issued).


3.2.7.1.2    E̲x̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         None


3.2.7.2  ANALYSE ̲CC Procedure
…0e……0e…          ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲…0f……0f…


3.2.7.2.1    I̲n̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The procedure ANALYSE ̲CC is called by:

         LON                              ref. 3.1.2
         LOF                              ref. 3.1.3
         TEP ̲INIT ̲REST                    ref. 3.1.4
         ID ̲PASSWORD                      ref. 3.1.7.4

         Input to ANALYSE ̲CC:

         -   Error Code                   (in register)
         -   Completion code              (in register)

         Output from ANALYSE ̲CC:

         None

         The utility procedure ITERR (ref. 3.1.7.1) is called by this procedure.


3.2.7.2.2    E̲x̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         None


3.2.7.3  PSM ̲MESS Procedure
…0e……0e…          ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲…0f……0f…


3.2.7.3.1    I̲n̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         PSM ̲MESS Procedure is invoked by:

         TEP ̲INIT ̲REST                    ref. 3.1.4
         EVENT ̲HANDLER                    ref. 3.1.7.6

         Input to PSM ̲MESS:

         -   Terminal number
         -   Event code

         Output from PSM ̲MESS:

         None


3.2.7.3.2    E̲x̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The following monitor procedures are called:

         MON SENDMESSAGE


3.2.7.4  ID ̲PASSWORD Procedure
…0e……0e…          ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲…0f……0f…

3.2.7.4.1    I̲n̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         ID ̲PASSWORD is invoked by:

         LON                              ref. 3.1.2
         LOF                              ref. 3.1.3

         Input to ID ̲PASSWORD:

         -   Command no                   (in register)
         -   Sequence no                  (in register)
         -   Reference to a work area     (in register)

         Output from ID ̲PASSWORD:

         The critical region XTCB is updated

         Procedures call by ID ̲PASSWORD:

         ITERR                            ref.3.1.7.1
         in case of an operator caused error

         ITRANSFER                        ref. 3.1.5.2
         when issuing a prompt

         ANALYSE ̲CC                       ref. 3.1.7.2
         when ITRANSFER returns in error exit

         USER ̲PROFILE                     ref. 3.1.7.5
         When a prompt answer is checked

         SCRAMBLE ̲PASSW                   ref. 3.1.7.7
         Scramble password
3.2.7.4.2    E̲x̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         None


3.2.7.5  USER ̲PROFILE Procedure
…0e……0e…          ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲…0f……0f…


3.2.7.5.1    I̲n̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         USER ̲PROFILE is invoked by the procedures:

         ID ̲PASSWORD                      ref. 3.1.7.4
         TEP ̲INIT ̲REST                    ref. 3.1.4

         Input to USER ̲PROFILE:

         -   offset to user id
             in input buffer              (in register)
         -   offset to input buffer       (in register)
         -   reference to work buffer

         Output from USER ̲PROFILE:

         -   User security profile        (in buffer USP ̲SAVE)

         Procedures called by USER ̲PROFILE:

         GET TCB                          ref. 3.1.6.2
         PUT ̲TCB                          ref. 3.1.6.3


3.2.7.5.2    E̲x̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The following monitor procedures are called by USER ̲PROFILE:

         MON GETUSP

         MON ERROR


3.2.7.6  EVENT ̲HANDLER Procedure
…0e……0e…          ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲…0f……0f…


3.2.7.6.1    I̲n̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         EVENT ̲HANDLER is called by the procedures:

         LON                              ref. 3.1.2
         LOF                              ref. 3.1.3

         Input to EVENT ̲HANDLER:

         -   Event type                   (in register)

         Output from EVENT ̲HANDLER:

         None

         The following procedure is called:

         PSM ̲MESS                         ref. 3.1.7.3
         When a system message is sent to PSM


3.2.7.6.2    E̲x̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The following monitor procedures are called:

         MON LOG ̲ACTION

         MON ERROR


3.2.7.7  SCRAMBLE ̲PASSW Procedure
…0e……0e…          ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲ ̲…0f……0f…


3.2.7.7.1    I̲n̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         SCRAMBLE ̲PASSWORD is inwoked by:

         ID ̲PASSWORD                      ref. 3.1.7.4

         Input to SCRAMBLE ̲PASSW:

         -   Reference to password        (in register)

         Output from SCRAMBLE ̲PASSW:

         -   Reference to password


3.2.7.6.2    E̲x̲t̲e̲r̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The following monitor procedures are called:

         MON SENDMESSAGE

         MON WAITANSWER


         ins`ttes 46 sider for tegninger


3.4      D̲a̲t̲a̲ ̲O̲r̲g̲a̲n̲i̲z̲a̲t̲i̲o̲n̲

         Please refer to:

         Source listings and 
         FIKS File Generators PSP         FIX/1200/PSP/0042



3.5      S̲t̲o̲r̲a̲g̲e̲ ̲A̲l̲l̲o̲c̲a̲t̲i̲o̲n̲

         Please refer to:

         FIKS S/W Configuration
         Lib. Descr. Doc.                 FIX/1000/EWP/0080


3.6      P̲e̲r̲f̲o̲r̲m̲a̲n̲c̲e̲ ̲C̲h̲a̲r̲a̲c̲t̲e̲r̲i̲s̲t̲i̲c̲

         N/A


3.7      L̲i̲m̲i̲t̲a̲t̲i̲o̲n̲s̲

         N/A


3.8      E̲r̲r̲o̲r̲ ̲C̲o̲d̲e̲s̲/̲E̲r̲r̲o̲r̲ ̲L̲o̲c̲a̲t̲i̲o̲n̲s̲

         In case of an operator error the ITM will issue an error notification to the operator.
         The following format is used:

         ?-X: YYY

         where X will identify the group of the error (e.g. syntac error, security error) and YYY
         will be the error code.

         ITM error codes are listed below:

         ERROR ̲GROUP ̲SEM                  =   2
         UNKNOWN ̲MODULE ̲NAME              = 010
         ILLEGAL ̲LON ̲REQUEST              = 020

         ERROR ̲GROUP ̲SECUR                =   3
         ILLEGAL ̲USER ̲ID                  = 010
         ILLEGAL ̲PASSWORD                 = 011

         When a monitor returns with an error, this error code will be reported on the console togeher
         with an error label which points out the location in the ITM code.  The error labels are
         listed here:

D̲e̲c̲i̲m̲a̲l̲ ̲V̲a̲l̲u̲e̲        R̲a̲i̲s̲e̲d̲ ̲b̲y̲ ̲c̲a̲l̲l̲ ̲o̲f̲      L̲o̲c̲a̲t̲e̲a̲d̲ ̲i̲n̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲

20010            MON IO GETROOT             TEP ̲INIT ̲REST
20020            MON IO GETROOT             TEP ̲INIT ̲REST
20040            MON IO LOOKUP              TEP ̲INIT ̲REST
20050            MON MTCB INITE             TEP ̲INIT ̲REST
20070            MON REGION RCOPYN          TEP ̲INIT ̲REST
20610            MON LCFH                   ICREATE
20620            MON IO APPEND BYTES        ICREATE


D̲e̲c̲i̲m̲a̲l̲ ̲V̲a̲l̲u̲e̲        R̲a̲i̲s̲e̲d̲ ̲b̲y̲ ̲c̲a̲l̲l̲ ̲o̲f̲      L̲o̲c̲a̲t̲e̲a̲d̲ ̲i̲n̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲

20901            INIT ̲CHANNELS              ITRANSFER
20902            INIT ̲CHANNELS              ITRANSFER
20911            INIT ̲CHANNELS              ITRANSFER
20912            INIT ̲CHANNELS              ITRANSFER
20921            INIT ̲CHANNELS              ITRANSFER
20922            INIT ̲CHANNELS              ITRANSFER
20931            INIT ̲CHANNELS              ITRANSFER
20932            INIT ̲CHANNELS              ITRANSFER
21000            MON APPVDUCON              ICONTROL
21010            MON IO APPEND BYTES        ICONTROL
21115            ICONTROL                   IWAIT
21120            MON IO WAITOPERATIONS      IWAIT
21132            MON IO CANCEL              IWAIT
21140            MON IO WAITOPERATIONS      IWAIT
21146            INIT ̲CHANNELS              IWAIT
21147            INIT ̲CHANNELS              IWAIT
21700            MON REGION RENTER          GET ̲CRITICAL ̲REGION
21700            MON REGION RGETN           GET ̲CRITICAL ̲REGION
21700            MON REGION RECOPYN         GET ̲CRITICAL ̲REGION
21700            MON REGION RLEAVE          GET ̲CRITICAL ̲REGION
21800            MON REGION RENTER          GET ̲TCB
21800            MON REGION RGETN           GET ̲TCB
21900            MON REGION RPUTN           PUT ̲TCB
21910            MON REGION RLEAVE          PUT ̲TCB
21930            Illegal CC from checkpoint PUT ̲TCB
22200            MON REGION RCOPYN          GET ̲PROMPT
22500            MON APPVDUTRAN             ITRANSFER
22510            MON IO APPENDBYTES         ITRANSFER
22500            MON LOG ̲ACTION             EVENT ̲HANDLER
23200            MON GETUSP                 USER ̲PROFILE


3.9      L̲i̲s̲t̲i̲n̲g̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲

         Please refer to:

         FIKS S/W Configuration
         Control Lib. Descr. Doc.      FIX/1000/EWP/0080


4        Q̲U̲A̲L̲I̲T̲Y̲ ̲A̲S̲S̲U̲R̲A̲N̲C̲E̲


4.1      Q̲u̲a̲l̲i̲f̲i̲c̲a̲t̲i̲o̲n̲ ̲T̲e̲s̲t̲s̲

         Please refer to:

         System Test Report S050       FIX/0000/TRP/0081
         System Test Report S070       FIX/0000/TRP/0088


4.2      O̲t̲h̲e̲r̲ ̲Q̲u̲a̲l̲i̲t̲y̲ ̲A̲s̲s̲u̲r̲a̲n̲c̲e̲

         N/A


5        P̲R̲E̲P̲A̲R̲A̲T̲I̲O̲N̲ ̲F̲O̲R̲ ̲D̲E̲L̲I̲V̲E̲R̲Y̲

         Please refer to:

         FIKS S/W Configuraton
         Control Lib. Descr. Doc.      FIX/1000/EWP/0080


6        N̲O̲T̲E̲S̲

         N/A


7        A̲P̲P̲E̲N̲D̲I̲C̲E̲S̲

         N/A