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

⟦e7d424f0a⟧ Wang Wps File

    Length: 80844 (0x13bcc)
    Types: Wang Wps File
    Notes: CPS/SDS/034               
    Names: »1673A «

Derivation

└─⟦c518842e8⟧ Bits:30006081 8" Wang WCS floppy, CR 0125A
    └─ ⟦this⟧ »1673A « 

WangText

…00……00……00……00……00……1d……0a……00……00……1d……0b……1d……05……1c……00……1b……0b……1b……06……1a……0e……1a……02……1a……07……19……0d……19…
…19……07……18……0a……18……0f……18……00……18……01……18……06……17……0c……17……02……16……0a……16……01……16……06……15……0b……15……01……15… …14……08……14……0f……14……05……14……07……13……0b……13……0c……13……01……13……05……12……08……12……0e……12… …11……09……11……00……11……07……10……0d……10……00……10……01……10……05……0f……86…1                                              …02…           …02…  …02…        

…02…CPS/SDS/034

…02…NJ/831101…02……02…
MESSAGE DISTRIBUTION
DETAILED DESIGN SPECIFICATION…02…ISSUE 1…02…CAMPS








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


   1   GENERAL ......................................
       1 001

     1.1 PURPOSE AND SCOPE ..........................
         1 001
     1.2 APPLICABLE DOCUMENTS AND PROJECT REFERENCES 
         1 002
       1.2.1 Applicable Documents ...................
       1 002
       1.2.2 Reference Documents ....................
             1 002

     1.3 TERMS AND ABBREVIATIONS ....................
         1 003
       1.3.1 Terms ..................................
             1 003
       1.3.2 Abbreviations ..........................
             1 005

   2   SUMMARY OF REQUIREMENTS ......................
       2 001

     2.1 PACKAGE DESCRIPTION ........................
         2 001
       2.1.1 General Description ....................
             2 001
       2.1.2 External Interfaces ....................
             2 001
       2.1.3 Package Interfaces .....................
             2 001
       2.1.4 Chart Over Interfaces ..................
             2 002

     2.2 PACKAGE FUNCTIONS ..........................
         2 004
       2.2.1 Main Functions .........................
             2 004
         2.2.1.1 Distribution of Incoming Messages ..
                 2 004
         2.2.1.2 Local Distribution of Outgoing
                 Messages ...........................
                 2 005
         2.2.1.3 Distribution of Messages for
                 Coordination .......................
                 2 006
         2.2.1.4 Distribution of Comments ...........
                 2 006
         2.2.1.5 Messages/Comments Returned from the
                 MDCO ...............................
                 2 006
         2.2.1.6 Distribution of Retrieved Messages .
                 2 007
         2.2.1.7 SC Delivery Objects ................
                 2 007
         2.2.1.8 Delivery Functions .................
                 2 007
         2.2.1.9 Quiet Hours Functions ..............
                 2 008

       2.2.2 Functional Responsibilities ............
             2 008
         2.2.2.1 Initialization, Close Down and
                 Restart ............................
                 2 008
           2.2.2.1.1 Initialization .................
           2 008
           2.2.2.1.2 Close Down .....................
           2 008
           2.2.2.1.3 Restart ........................
           2 009

         2.2.2.2 Checkpointing and Recovery .........
                 2 009
         2.2.2.3 Error Detection and Error Handling .
                 2 009
         2.2.2.4 Integrity of Operation .............
                 2 009
         2.2.2.5 Data Collection ....................
                 2 009
         2.2.2.6 Security ...........................
                 2 010



     2.3 CHARACTERISTICS ............................
         2 010
       2.3.1 Timing .................................
             2 010
         2.3.1.1 Throughput Time ....................
                 2 010
         2.3.1.2 Response Time ......................
                 2 011
         2.3.1.3 Priorities Imposed by Inputs .......
                 2 011

       2.3.2 Throughput .............................
             2 011
       2.3.3 Flexibility ............................
             2 011
       2.3.4 Accuracy and Validity ..................
             2 012
       2.3.5 Memory Consumption .....................
             2 012

   3   ENVIRONMENT ..................................
       3 001

     3.1 EQUIPMENT ENVIRONMENT ......................
         3 001
     3.2 SOFTWARE ENVIRONMENT .......................
         3 001
       3.2.1 System Software ........................
             3 001
       3.2.2 Development Support Software ...........
             3 001

     3.3 INTERFACES .................................
         3 001
       3.3.1 External Interfaces ....................
             3 001
       3.3.2 Package Interfaces .....................
             3 001
         3.3.2.1 Traffic Handling I/F ...............
                 3 003
         3.3.2.2 Terminal Package I/F ...............
                 3 003
         3.3.2.3 Storage and Retrieval I/F ..........
                 3 004
         3.3.2.4 Statistics Package I/F .............
                 3 004
         3.3.2.5 Table Management I/F ...............
                 3 004
         3.3.2.6 System Status and Control I/F ......
                 3 005

   4   PACKAGE DESIGN ...............................
       4 001

     4.1 PACKAGE OVERVIEW ...........................
         4 001
       4.1.1 Functional Specification ...............
             4 001
       4.1.2 Software Structure .....................
             4 003
         4.1.2.1 Message Distribution Process .......
                 4 003
         4.1.2.2 Message Distribution Queue .........
                 4 003
         4.1.2.3 Message Distribution Sub-Package ...
                 4 003

       4.1.3 Data Flow and Control Logic ............
             4 004
       4.1.4 Common Package Data. ...................
             4 004
       4.1.5 Common Package Procedure  ..............
             4 004
       4.1.6 Global Data Elements ...................
             4 004
       4.1.7 Interfaces .............................
             4 004
         4.1.7.1 External Interfaces ................
                 4 004
         4.1.7.2 Package Interfaces .................
                 4 005
         4.1.7.3 Subpackage Interfaces ..............
                 4 005

     4.2 SUBPACKAGE SPECIFICATIONS ..................
         4 005
       4.2.1 MDP SUBPACKAGE SPECIFICATION ...........
             4 005
         4.2.1.1 Functional Specification ...........
                 4 005
           4.2.1.1.1 Incoming Message ...............
                     4 006
             4.2.1.1.1.1 Read View and System Params 
             4 006


             4.2.1.1.1.2 Control SICs ...............
             4 007
             4.2.1.1.1.3 Control HQ Mask ............
             4 007
             4.2.1.1.1.4 Get SDLs and Create a SCD 
                         List .......................
                       4 008
             4.2.1.1.1.5 Write SCD List into the IMF.
             4 008
             4.2.1.1.1.6 Test MDCO Invocation .......
             4 008
             4.2.1.1.1.7 Delivery to MDCO ...........
             4 009
             4.2.1.1.1.8 Convert SCD List to Queue   
                 
                         List ...................... 
                         4 009
             4.2.1.1.1.9 Delivery to VDUs and Printer
             4 009
             4.2.1.1.1.10 Special Delivery to        
               
                          ATOMAL Printer ............
                         4 010
             4.2.1.1.1.11 Delivery to Duty Officer ..
             4 010
             4.2.1.1.1.12 Delivery to MDCO ..........
             4 011
             4.2.1.1.1.13 Write Queue List ..........
             4 011
             4.2.1.1.1.14 Statistics Delivery .......
             4 012
             4.2.1.1.1.15 Storage Delivery ..........
             4 012

           4.2.1.1.2 Outgoing Message ...............
                     4 014
             4.2.1.1.2.1 Read View and System Params 
             4 014
             4.2.1.1.2.2 Test Local HQ ..............
             4 014
             4.2.1.1.2.3 Control SICs ...............
             4 014
             4.2.1.1.2.4 Get SDLs and Create SCD List
             4 015
             4.2.1.1.2.5 Write SCD List into the IMF 
                         4 015
             4.2.1.1.2.6 Delivery to MDCO ...........
             4 015
             4.2.1.1.2.7 Convert SCD List to Queue   
                 
                         List .......................
                       4 015
             4.2.1.1.2.8 Delivery to VDUs and Printer
             4 015
             4.2.1.1.2.9 Special Delivery to ATOMAL  
                 
                         Printer ....................
                         4 015
             4.2.1.1.2.10 Delivery to Duty Officer ..
             4 015
             4.2.1.1.2.11 Delivery to MDCO ..........
             4 016
             4.2.1.1.2.12 Write Queue List ..........
             4 016
             4.2.1.1.2.13 Statistics Delivery .......
             4 016
             4.2.1.1.2.14 Storage Delivery ..........
             4 016

           4.2.1.1.3 Message for Coordination .......
                     4 018
             4.2.1.1.3.1 Read View and System Params 
             4 018
             4.2.1.1.3.2 Init Coordination           
                 
                         Distribution ...............
                         4 018
             4.2.1.1.3.3 Conv SCD List to Queue List 
             4 018
             4.2.1.1.3.4 Delivery to VDUs ...........
             4 018
             4.2.1.1.3.5 Create Delivery Notification
             4 019
             4.2.1.1.3.6 Send Delivery Notification .
             4 019

           4.2.1.1.4 Comment ........................
                     4 021
             4.2.1.1.4.1 Read View and System Params.
             4 021
             4.2.1.1.4.2 Convert SCD List to Queue   
                 
                         List .......................
                         4 021


             4.2.1.1.4.3 Delivery to VDUs ...........
             4 021
             4.2.1.1.4.4 Delivery to Duty Office  ...
             4 021
             4.2.1.1.4.5 Delivery to MDCO ...........
             4 022
             4.2.1.1.4.6 Write Queue List ...........
             4 022

           4.2.1.1.5 SC Delivery ....................
                     4 024
             4.2.1.1.5.1 Read View and System Params.
             4 024
             4.2.1.1.5.2 Init SC Delivery ...........
             4 024
             4.2.1.1.5.3 Convert SCD List to Queue   
                 
                         List .......................
                         4 024
             4.2.1.1.5.4 Delivery to VDUs ...........
             4 025
             4.2.1.1.5.5 Delivery to MDCO ...........
             4 025

           4.2.1.1.6 Incoming Message After MDCO INV.
                     4 027
             4.2.1.1.6.1 Read View and System Params.
             4 027
             4.2.1.1.6.2 Convert SCD List to Queue   
                 
                         List .......................
                         4 027
             4.2.1.1.6.3 Delivery to VDUs and Printer
             4 027
             4.2.1.1.6.4 Special Atomal Print .......
             4 027
             4.2.1.1.6.5 Write Queue List ...........
             4 028
             4.2.1.1.6.6 Statistics Delivery ........
             4 028
             4.2.1.1.6.7 Storage Delivery ...........
             4 028
             4.2.1.1.6.8 MDCO Response ..............
             4 028

           4.2.1.1.7 Outgoing Message after MDCO INV.
                     4 030
           4.2.1.1.8 MSG/Comment Returned after Alt. 
                     4 032
             4.2.1.1.8.1 Read View and System Params.
             4 032
             4.2.1.1.8.2 Create New View ............
             4 032
             4.2.1.1.8.3 Convert SCD List to Queue   
                 
                         List .......................
                         4 032
             4.2.1.1.8.4 Delivery to VDUs and Printer
             4 032
             4.2.1.1.8.5 Special Atomal Print .......
             4 033
             4.2.1.1.8.6 Write Queue List ...........
             4 033
             4.2.1.1.8.7 MDCO Response ..............
             4 033

           4.2.1.1.9 Redistribution of Messages .....
                     4 035

         4.2.1.2 Software Structure .................
                 4 037
           4.2.1.2.1 MAIN Module ....................
                     4 037
           4.2.1.2.2 Case Modules  ..................
                     4 037
           4.2.1.2.3 Utility Modules ................
                     4 049
             4.2.1.2.3.1 Read View and Get Sys Params
             4 049
             4.2.1.2.3.2 SIC Control ................
             4 050
             4.2.1.2.3.3 Get SDL and Sort SCDs ......
             4 050
             4.2.1.2.3.4 MDP Write Buffer ...........
             4 050
             4.2.1.2.3.5 Test MDCO Invocation .......
             4 050
             4.2.1.2.3.6 Conv. SCD List to Q List ...
             4 051
             4.2.1.2.3.7 Delivery ...................
             4 051
             4.2.1.2.3.8 ALT Dist. ..................
             4 051
             4.2.1.2.3.9 Perform Distribution .......
             4 052
               4.2.1.2.3.10 STA SAR DELIVERY ........
               4 052


         4.2.1.3 Data Flow and Control Logic ........
                 4 052
         4.2.1.4 Module Specifications ..............
                 4 065
           4.2.1.4.1 MDP Main Module ................
                     4 065
           4.2.1.4.2 INC PLAIN MSG Module ...........
                     4 086
           4.2.1.4.3 OUT PLAIN MSG Module ...........
                     4 091
           4.2.1.4.4 COOR PLAIN MSG Module ..........
                     4 096
           4.2.1.4.5 COMMENT DIST Module ............
                     4 104
           4.2.1.4.6 SC DELIVERY Module .............
                     4 108
           4.2.1.4.7 MDCO INV INC Module ............
                     4 115
           4.2.1.4.8 MDCO INV OUT Module ............
                     4 119
           4.2.1.4.9 MDCO ALT Module ................
                     4 123
           4.2.1.4.10 REDIST MSG Module .............
           4 127
           4.2.1.4.11 READ VIEW AND GET SYS PARAMS ..
           4 131
           4.2.1.4.12 SIC CONTROL ...................
           4 136
           4.2.1.4.13 GET SDLS AND SORT SCDS ........
           4 139
           4.2.1.4.14 MDP WRITE BUFFER ..............
           4 144
           4.2.1.4.15 TEST MDCO INVOCATION  .........
           4 147
           4.2.1.4.16 CONV SCD LIST TO Q LIST  ......
           4 150
           4.2.1.4.17 DELIVERY ......................
           4 155
           4.2.1.4.18 ALTERNATIVE DIST ..............
           4 162
           4.2.1.4.19 PERFORM DISTRIBUTION ..........
           4 166
           4.2.1.4.20 STA SAR DELIVERY ..............
           4 169

         4.2.1.5 Common Subpackage Data .............
                 4 204
         4.2.1.6 Commom Subpackage Procedures .......
                 4 173
           4.2.1.6.1 CREATE NEW VIEW ................
                     4 173
           4.2.1.6.2 CREATE QUEUE REF ...............
                     4 174
           4.2.1.6.3 SEND FLASH .....................
                     4 175
           4.2.1.6.4 UPDATE DELV CODE ...............
                     4 176
           4.2.1.6.5 UPDATE MDCO ERROR LIST .........
                     4 178
           4.2.1.6.6 MDCO DELIVERY ..................
                     4 180
           4.2.1.6.7 MDCO RESPONSE ..................
                     4 181

         4.2.1.7 Subpackage Interfaces ..............
                 4 182

     4.3   Memory Layout ............................
           4 182


                        1̲ ̲ ̲G̲E̲N̲E̲R̲A̲L̲



1.1      P̲U̲R̲P̲O̲S̲E̲ ̲A̲N̲D̲ ̲S̲C̲O̲P̲E̲

         The Package Specification for Message Distribution
         CPS/SDS/034 is written to fulfil the following objectives:

         a)  To provide detailed definition of the package functions
             and software architecture.

         b)  To provide user operational and development personnel
             details of the ongoing analysis

         c)  To define in detail the interfaces with other packages
             and to describe their facilities.

         This SDS defines the transactions which are applicable
         to the local distribution of messages inside a CAMPS
         site. The local distribution includes the following
         objects:

         -   Incoming Messages

         -   Outgoing Messages

         -   Messages for coordination

         -   Comments

         -   VDU Pages





1.2      A̲P̲P̲L̲I̲C̲A̲B̲L̲E̲ ̲D̲O̲C̲U̲M̲E̲N̲T̲S̲ ̲A̲N̲D̲ ̲P̲R̲O̲J̲E̲C̲T̲ ̲R̲E̲F̲E̲R̲E̲N̲C̲E̲S̲



1.2.1    A̲p̲p̲l̲i̲c̲a̲b̲l̲e̲ ̲D̲o̲c̲u̲m̲e̲n̲t̲s̲

         The following documents are applicable to the Message
         Distribution Package Design Specification.

         -   Contract Document
             Contract No. CE 80-9009-INF

         -   CPS/210/SYS/0001
             CAMPS System Requirements

         -   CPS/230/ICD/0001
             User Procedures and associated Formats

         -   CPS/230/ICD/0002
             Supervisor Commands and Procedures

         -   CPS/SDS/001
         -   CAMPS System Design Specification


         -   CPS/DBD/001
             Data Base Design Document

         -   CPS/ICD/009
             CAMPS Software Interface Control Document



1.2.2    R̲e̲f̲e̲r̲e̲n̲c̲e̲ ̲D̲o̲c̲u̲m̲e̲n̲t̲s̲

         The following documents are listed for reference purposes
         only. The listing does not constitute the contents
         of the documents as System Requirements, but is intended
         to serve the Contractor in providing supplementary
         information in cases of interpretation of the requirements
         specifically stated in System Requirements Specification:

         ACS, Jul 74
         ACP117, Sept, 1977, ACP 117 Supp. 16. Dec. 79
         ACP121, Supp. 17. Jan 1970, 121E Jul 1970
         ACP100, NATO SUPP, 1E May 1978
         ACP127 NATO Supp. 3, May 1973, 127 (E) OCT 74
         NASIS-APP-3 JAN 1978
         ADatP-3 JAN 1975



1.3.1    T̲e̲r̲m̲s̲

         Close-down         Action taken to bring processing
                            within the system or a part there
                            of to a stop - can be either an
                            ordered sequence of steps or an
                            abrupt termination.

         Device Designator  Identification of a stand-alone
                            device.

         Device Profile     To each device a device profile
                            is associated.

         Duty Officer       Person located at the supervisor
                            specified terminal position during
                            Quiet Hours

         Initialization     The definition in the CPS/SDS/001
                            and subsequent documents are described
                            as follows: Brings the system from
                            cold or dead start into operational
                            use. No recovery actions are included.

                            The definitions replace the one
                            used in the CPS/210/SYS/0001: Brings
                            the system from cold start into
                            operational use.

         Message Distribu-  Denotes the total group of
         tion Control Func- commands/procedures which may be
         tion               performed from a VDU with Message
                            Distribution Control capability.

         Message View       A subset of fields within a message.

         Plain Language     The PLA representing a
         Address            Headquarters.

         Preparation        Denotes the total group of
         Functions          commands/procedures which may be
                            performed from a VDU with Preparation
                            Capability.



         Procedure          Special part of a program. It must
                            be called with a "procedure call"
                            instruction which automatically
                            saves the return point.

         Process            Execution of a specific program
                            operating on a specific set of data.
                            The active components of the system
                            to which security and process control
                            as well as resource management is
                            applied.

         Queue              Process communication tool within
                            CSF.

         Queue Element      The elements which can be in a queue.

         Queue Element      The same as queue element. Used
         Reference          when emphasizing the function of
                            the queue element as the basic reference
                            to objects.

         Queue Monitor      The part of CSF supplying Queue
                            facilities.

         Quiet Hours        A supervisor specified parameter
                            for alternative distribution to
                            a Duty Officer.

         Recovery           Reestablishes continuity in memory
                            and file contents.

         Staff Cell         The SCD is the smallest addressable
         Designator         unit in one CAMPS site.

         Stand alone device Medium speed teleprinter, low speed
                            teleprinter (PTP, PTR, ROP) OCR,
                            PTR, and PTP

         Start up           Includes all aspects of initialization,
                            recovery and restart.

         Sub queue          Part of a Main Queue.

         Supervisor         Person located at supervisor terminals
                            in CAMPS central equipment room



         System Parameter   A simple variable, holding part
                            of the system state, and controlled
                            by TMP.

         Terminal           VDU, Medium Speed Teleprinter, Low
                            Speed Teleprinter, Line Printer,
                            PTP/PTR and OCR.

         Terminal Device    VDU, Medium Speed Teleprinter and
                            Low Speed Teleprinter.

         Terminal Designa-  A code identifying the terminal
                            po-
         tor                sition.

         Terminal Position  VDU and associated (shared) ROP.

         User               a) Person with responsibility for
                               input and output of messages.

                            b) Person located at the user terminals
                               in the staff cells.



1.3.2    A̲b̲b̲r̲e̲v̲i̲a̲t̲i̲o̲n̲s̲

         CAMPS              Computer Aided Message Processing
                            System

         CIF                CAMPS Information File

         COPSY              CAMPS Operating System

         CPS                CAMPS

         CSF                CAMPS System Functions

         DTG                Data Time Group

         HQ                 Headquarters

         IMF                Internal Message Format

         ISQ                Incoming Storage Queue

         MCQ                MDCO Queue

         MDCO               Message Distribution Control



         MDP                Message Distribution Package

         MDQ                Message Distribution Queue

         PLA#               Plain Language Address Reference
                            Number

         QEL                Queue Element

         SAR                Storage and Retrieval

         SC                 SCARS/CCIS

         SCD                Staff Cell Designator

         SDL                Standard Distribution List

         FMS                Storage and File Management Package

         SIC                Subject Indicator Code

         SSC                System Status and Control

         SSN                Station Serial Number

         STP                Statistics Package

         TD                 Terminal Designator

         TEP                Terminal Package

         THP                Traffic Handling Package

         TMP                Table Management Package

         TOC                Time of Occurrence

         VDU                Visual Display Unit




                2̲ ̲ ̲S̲U̲M̲M̲A̲R̲Y̲ ̲O̲F̲ ̲R̲E̲Q̲U̲I̲R̲E̲M̲E̲N̲T̲S̲



2.1      P̲A̲C̲K̲A̲G̲E̲ ̲D̲E̲S̲C̲R̲I̲P̲T̲I̲O̲N̲



2.1.1    G̲e̲n̲e̲r̲a̲l̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲

         The Message Distribution Package (MDP) performs internal
         distribution of incoming and outgoing messages, comments,
         VDU pages, messages for coordination and specified
         distribution from the Message Distribution Control
         (MDCO) and the supervisor.

         Internal distribution means selection of queues for
         terminals, based on either headquarters and Subject
         Indicator Codes (SICs) or on specification of staff-cell
         designators (SCD).

         The Message Distribution package receives messages
         from the Traffic Handling Package (THP) and from the
         Terminal Package (refer figure 2.1.4-1).



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

         N.A.



2.1.3    P̲a̲c̲k̲a̲g̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲s̲

         The Message Distribution Package interfaces with the
         following other packages

         CAMPS System Functions (CSF)
         System Status and Control (SSC)
         Table Management Package (TMP)
         Storage and Retrieval (SAR)
         Statistics Package (STP)
         Traffic Handling Package (THP)
         Terminal Package (TEP)




2.1.4    C̲h̲a̲r̲t̲ ̲O̲v̲e̲r̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲s̲

         Figure 2.1.4-1 shows the interfaces to MDP.



















































               FIGURE 2.1.4-1…01…MDP INTERFACE


2.2      P̲A̲C̲K̲A̲G̲E̲ ̲F̲U̲N̲C̲T̲I̲O̲N̲S̲



2.2.1    M̲a̲i̲n̲ ̲F̲u̲n̲c̲t̲i̲o̲n̲s̲

         The following main functions are identified.

         -   Distribution of incoming messages

         -   Local distribution of outgoing messages

         -   Distribution of messages for coordination

         -   Distribution of comments

         -   Distribution of messages/comments returned from
             the MDCO

         -   Distribution of retrieved messages

         -   Delivery of SCARS/CCIS objects

         -   Delivery functions

         -   Quiet Hours functions



2.2.1.1  D̲i̲s̲t̲r̲i̲b̲u̲t̲i̲o̲n̲ ̲o̲f̲ ̲I̲n̲c̲o̲m̲i̲n̲g̲ ̲M̲e̲s̲s̲a̲g̲e̲s̲

         Incoming plaindress messages are queued by the Traffic
         Handling Package to the Message Distribution Package
         for internal distribution. The distribution determination
         is based on the following information.

         -   The headquarters to which distribution shall be
             performed at this site

         -   Up to three subject indicator codes (SICs)

         -   Exercise/crisis/normal indicator 

         Each headquarters, SIC combination will point out a
         standard distribution list. From these lists MDP will
         generate a nominal distribution list.



         After generation of the nominal distribution list,
         the incoming messages are either distributed to the
         staff cells in the list or queued for support by the
         MDCO.

         Incoming messages are deferred to the MDCO for the
         following reasons:

         -   Missing or garbled SICs

         -   Special SICs 

         -   Internal Handling Instructions

         -   Special Handling Instructions of category exclusive
             or crypto security or national eyes

         -   More than one Special Handling Instruction 

         -   Supervisor parameters for distribution:

             1)  All incoming messages

             2)  All incoming messages of specified classification

             3)  All incoming messages except those of specified
                 classification

         A notification explaining the reason for MDCO assistance
         and the Distribution List (SCD List) as complete as
         possible based on the available information is passed
         on to the MDCO.

         Crypto security messages normally contain a GR in FL10.
         If a GR is detected by THP the message will by THP
         be directed to the dedicated PTP.



2.2.1.2  L̲o̲c̲a̲l̲ ̲D̲i̲s̲t̲r̲i̲b̲u̲t̲i̲o̲n̲ ̲o̲f̲ ̲O̲u̲t̲g̲o̲i̲n̲g̲ ̲M̲e̲s̲s̲a̲g̲e̲s̲

         After Release and Station Serial Number assignment
         outgoing messages are queued by Traffic Handling  Package
         to the MDP for local distribution. The distribution
         is specified by SCDs. The MDP distributes to the specified
         staff-cells and, in case of any problems in the distribution,
         to the MDCO.



         Outgoing messages can be distributed by HQ/SIC information
         too. The distribution is performed as for Incoming
         Messages except that the message is not deferred to
         the MDCO as described for incoming messages, only if
         special SICs is identified the message will be queued
         to the MDCO.



2.2.1.3  D̲i̲s̲t̲r̲i̲b̲u̲t̲i̲o̲n̲ ̲o̲f̲ ̲M̲e̲s̲s̲a̲g̲e̲s̲ ̲f̲o̲r̲ ̲C̲o̲o̲r̲d̲i̲n̲a̲t̲i̲o̲n̲

         Messages in preparation may be sent for coordination.
         The Terminal Package queues the message to MDP together
         with a coordination SCD List. The MDP distributes to
         the Coordination staff-cells.

         A notification is generated and returned to the drafter
         by this package. It will contain the SCDs, if any to
         which distribution could not be performed. No MDCO
         assistance will be performed for messages sent for
         coordination.



2.2.1.4  D̲i̲s̲t̲r̲i̲b̲u̲t̲i̲o̲n̲ ̲o̲f̲ ̲C̲o̲m̲m̲e̲n̲t̲s̲

         Comments are queued by the Terminal Package to MDP
         for distribution. The distribution will be based on
         an SCD list which will be queued to MDP together with
         the comments. If the distribution cannot be performed
         to all the SCDs in the list, the comments will be sent
         to the MDCO.



2.2.1.5  M̲e̲s̲s̲a̲g̲e̲s̲/̲C̲o̲m̲m̲e̲n̲t̲s̲ ̲R̲e̲t̲u̲r̲n̲e̲d̲ ̲f̲r̲o̲m̲ ̲t̲h̲e̲ ̲M̲D̲C̲O̲

         Messages/comments which have been deferred to the MDCO
         are returned by Terminal Package to the MDP together
         with an updated or alternative SCD list to which distribution
         shall be performed. The MDCO will be notified whether
         the distribution could be performed or not.





2.2.1.6  D̲i̲s̲t̲r̲i̲b̲u̲t̲i̲o̲n̲ ̲o̲f̲ ̲R̲e̲t̲r̲i̲e̲v̲e̲d̲ ̲M̲e̲s̲s̲a̲g̲e̲s̲

         The supervisor and the MDCO can retrieve incoming and
         outgoing messages and specify re-distribution to the
         SCDs contained in the SCD list. The Terminal Package
         will queue the message to MDP for re-distribution.
         The MDP will perform distribution to the staff cells
         in the SCD list. If the distribution cannot be performed
         to all the SCDs in the list, the messages will be sent
         to the MDCO.

2.2.1.7  S̲C̲ ̲D̲e̲l̲i̲v̲e̲r̲y̲ ̲O̲b̲j̲e̲c̲t̲s̲

         Following SCARS/CCIS objects can be distributed locally
         on a CAMPS site:

             Messages For Coordination
             Messages For Releaser
             Comments
             VDU Pages

         Message for coordination and Release can maximum be
         distributed to one SCD where as comments and VDU Pages
         can be distributed to both an action and an Info SCD.
         If the object can not be delivered to the specified
         terminal position it will be send to the MDCO.

2.2.1.8  D̲e̲l̲i̲v̲e̲r̲y̲ ̲F̲u̲n̲c̲t̲i̲o̲n̲s̲

         The MDP distributes the message/comment to queues.
         Each of these queues will lead to a terminal. The queues
         to which distribution will be performed is identified
         by means of the SCD list.

         If a message is sent to a queue leading to a terminal
         not having security classification or allowed special
         handling categories to receive it, the queue monitor
         will reject the QEL. The MDP will then queue the message
         to the MDCO for selection of alternative SCDs.

          A message of precedence FLASH is not sent to a queue
         where the associated terminal is signed off, The MDP
         will forward the message to the MDCO for selection
         of alternative SCDs.

         If a message of precedence immediate is sent to a queue
         where the associated terminal is signed off, then MDP
         will send a copy of the message to the MDCO.



         Messages with a special handling instruction ATOMAL
         will be distributed as normal plaindress messages,
         except for print, which will always be to a supervisor
         specified printer.



2.2.1.9  Q̲u̲i̲e̲t̲ ̲H̲o̲u̲r̲s̲ ̲F̲u̲n̲c̲t̲i̲o̲n̲s̲

         The supervisor can specify that FLASH and Immediate
         messages and comments shall be automatically distributed
         to a Duty Officer terminal position during Quiet Hours.
         For immediate messages a copy is also queued in the
         recipient's terminal queues. Messages for coordination
         are not queued, but the originator is notified that
         the message was not delivered.

         Quiet Hours delivery is only performed if at least
         one of the terminals to which the current distribution
         shall be performed is signed-off.



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



2.2.2.1  I̲n̲i̲t̲i̲a̲l̲i̲z̲a̲t̲i̲o̲n̲,̲ ̲C̲l̲o̲s̲e̲ ̲D̲o̲w̲n̲ ̲a̲n̲d̲ ̲R̲e̲s̲t̲a̲r̲t̲



2.2.2.1.1    I̲n̲i̲t̲i̲a̲l̲i̲z̲a̲t̲i̲o̲n̲

         The MDP will initialize the MDP memory by calling the
         MDP INIT procedure in which data length and offsets
         are calculated. The CSF monitor procedure CHANGE ̲SUBPROCESS
         is called too, to specify the current Subprocess for
         CSF. The common SSC PRE ̲INITIALIZATION procedure is
         called too.



2.2.2.1.2    C̲l̲o̲s̲e̲ ̲D̲o̲w̲n̲

         When MDP receives a Close Down command from SSC, MDP
         will immediately stop processing of messages by call
         of the Queue monitor procedure RECEIVE ̲FIRST ̲QEL with
         wait. In the call it is specified that MDP only wants
         to receive QELs from the Common Subqueue. Only SSC
         close down commands are send to this subqueue.





2.2.2.1.3    R̲e̲s̲t̲a̲r̲t̲

         During Restart MDP will perform initialization as described
         in section 2.2.2.1.1.



2.2.2.2  C̲h̲e̲c̲k̲p̲o̲i̲n̲t̲i̲n̲g̲ ̲a̲n̲d̲ ̲R̲e̲c̲o̲v̲e̲r̲y̲

         MDP Check Points all QELs which reference a view after
         send has been performed to the applicable queues.



2.2.2.3  E̲r̲r̲o̲r̲ ̲D̲e̲t̲e̲c̲t̲i̲o̲n̲ ̲a̲n̲d̲ ̲E̲r̲r̲o̲r̲ ̲H̲a̲n̲d̲l̲i̲n̲g̲

         If MDP receives on QEL which contains a Maintype or
         Subtype not known by MDP or if the relation between
         the Maintype and Subtype is not correct, the QEL will
         be deferred to SSC by the procedure SEND ̲GARBLE.

         In connection with all System Software Monitor Call
         which contains an error exit MDP will call the common
         error procedure ANALYZE ̲ERROR with the applicable parameters



2.2.2.4  I̲n̲t̲e̲g̲r̲i̲t̲y̲ ̲o̲f̲ ̲O̲p̲e̲r̲a̲t̲i̲o̲n̲

         The Control Variables from other packages will be validated
         to ensure correct processing.  If any errors are detected,
         SSC will be informed, as described in section 2.2.2.3.



2.2.2.5  D̲a̲t̲a̲ ̲C̲o̲l̲l̲e̲c̲t̲i̲o̲n̲

         The following data collection will be performed by
         MDP.

         -   collection of statistics

         -   Delivery of retrieval keys

         The collection will be performed by MDP for incoming
         and outgoing messages. 




2.2.2.6  S̲e̲c̲u̲r̲i̲t̲y̲

         All security check and access rights will be performed
         by the Queue monitor inside CSF.



2.3      C̲H̲A̲R̲A̲C̲T̲E̲R̲I̲S̲T̲I̲C̲S̲



2.3.1    T̲i̲m̲i̲n̲g̲



2.3.1.1  T̲h̲r̲o̲u̲g̲h̲p̲u̲t̲ ̲T̲i̲m̲e̲

         The throughput time is composed by the following elements:

         -   CPU time

         -   Monitor Call

         The throughput time for the distribution cases is as
         follows:

         Incoming Messages and Outgoing Messages
         (If the message contains local PLAs, else as a comment).

         -   CPU time:                  2 msec.
         -   Monitor call to CSF:       READ VIEW (Field 1 and
                                        2)
         -   Monitor call to TMP:       READ SDLs
         -   Monitor call to CSF:       WRITE VIEW (Field 2)
         -   Monitor call to TMP:       READ SCD records *
         -   Monitor call to TMP:       READ Terminal profile
                                        **
         -   Monitor call to CSF:       WRITE VIEW (Field 7)


         Messages, SC Delivery objects and message for coordination:

         -   CPU time:                  1,5 msec
         -   Monitor call to CSF:       READ VIEW
         -   Monitor call to TMP:       READ SCD records *
         -   Monitor call to TMP:       READ Terminal profile
                                        **
         -   Monitor call to CSF:       WRITE VIEW (Field 7)


         * This read will be performed for each "MAX ̲KEY ̲NO=10"
         SCDs this constant can be changed to optimize the relation
         between memory and disk accesses.

         ** This read will be performed for each terminal in
         the current distribution.

2.3.1.2  R̲e̲s̲p̲o̲n̲s̲e̲ ̲T̲i̲m̲e̲

         Response time for MDP is only applicable for messages
         for coordination and messages returned after MDCO assistance.
         The drafter or the MDCO will after distribution completed
         receive a response from MDP.

         Response time: as for comments, SC Delivery objects
         etc.
                        see section 2.3.1.1



2.3.1.3  P̲r̲i̲o̲r̲i̲t̲i̲e̲s̲ ̲I̲m̲p̲o̲s̲e̲d̲ ̲b̲y̲ ̲I̲n̲p̲u̲t̲s̲

         Three priorities are imposed on input. They are as
         following:

             1.  SSC commands
             2.  Objects from MDCO
             3.  Other Distribution cases



2.3.2    T̲h̲r̲o̲u̲g̲h̲p̲u̲t̲

         The MDP shall support the following throughput (in
         busy minute, busy hour, 24 hour period)

         -   30, 600, 3000    incoming messages
         -   6, 180, 900      outgoing messages
         -   6, 30            messages for coordination
         -   12, 60           comments



2.3.3    F̲l̲e̲x̲i̲b̲i̲l̲i̲t̲y̲

          MDP is built up by a set of case modules and utility
         modules. This combination gives a very flexible system.
         Each case module performs a distribution case. (e.g.
         Incoming message distribution). The case module then
         calls the applicable utility modules by which the actual
         functions are performed.


2.3.4    A̲c̲c̲u̲r̲a̲c̲y̲ ̲a̲n̲d̲ ̲V̲a̲l̲i̲d̲i̲t̲y̲

         The MDP has no external interfaces, therefore, no validation
         will be performed on Data. The input data from other
         packages are expected to be correct, but the control
         parameters will be validated to ensure correct processing.



2.3.5    M̲e̲m̲o̲r̲y̲ ̲C̲o̲n̲s̲u̲m̲p̲t̲i̲o̲n̲

         P̲r̲o̲g̲r̲a̲m̲ ̲s̲i̲z̲e̲:̲                  6000 words

         D̲a̲t̲a̲ ̲s̲i̲z̲e̲:̲                     3000 words

         consist of:

         Control variable size           200 words
         Data Buffer Size *             1750 words
         Other data                     1050 words

         * This Data Buffer Size is based on conversion of ten
         SCDs per call to TMP (per disk access). For each SCD
         added, the Data Buffer Size will increase with 9 words.





                      3̲ ̲ ̲E̲N̲V̲I̲R̲O̲N̲M̲E̲N̲T̲



3.1      E̲Q̲U̲I̲P̲M̲E̲N̲T̲ ̲E̲N̲V̲I̲R̲O̲N̲M̲E̲N̲T̲

         The equipment environment of this package is the CR80D
         Computer.



3.2      S̲O̲F̲T̲W̲A̲R̲E̲ ̲E̲N̲V̲I̲R̲O̲N̲M̲E̲N̲T̲



3.2.1    S̲y̲s̲t̲e̲m̲ ̲S̲o̲f̲t̲w̲a̲r̲e̲

         The MDP accesses the following components: CSF, TMP,
         and SSC.



3.2.2    D̲e̲v̲e̲l̲o̲p̲m̲e̲n̲t̲ ̲S̲u̲p̲p̲o̲r̲t̲ ̲S̲o̲f̲t̲w̲a̲r̲e̲

         Ref CPS/SDS/001 section 5.19 Support Software Package



3.3      I̲N̲T̲E̲R̲F̲A̲C̲E̲S̲



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

         N.A.



3.3.2    P̲a̲c̲k̲a̲g̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲s̲

         The MDP will have interfaces to the following packages:

         -   Traffic Handling Package (THP)
         -   Terminal Package (TEP)
         -   Storage and Retrieval (SAR)
         -   Statistics Package (STP)
         -   Table Management Package (TMP)
         -   System Status and Control (SSC)

         Figure 3.3.2-1 shows the Interfaces to MDP.


3.3.2.1  T̲r̲a̲f̲f̲i̲c̲ ̲H̲a̲n̲d̲l̲i̲n̲g̲ ̲I̲/̲F̲

         a)  Traffic Handling Package queues Incoming Messages
             to MDP for local distribution. These messages are
             either in Plaindress or abbreviated plaindress
             format.

         b)  Traffic Handling Package queues SCARS/CCIS objects
             for local delivery. These objects can be messages
             for coordination/Release, VDU pages or Comments.

         c)  Traffic Handling Package queues Outgoing messages
             to MDP for local distribution. The messages are
             in Plaindress format.



3.3.2.2  T̲e̲r̲m̲i̲n̲a̲l̲ ̲P̲a̲c̲k̲a̲g̲e̲ ̲I̲/̲F̲ ̲

         a)  The Terminal package queues comment to MDP for
             distribution. It contains the SCDs to which it
             shall be distributed. The comment is passed over
             in the Internal Message Format.

         b)  The Terminal package queues messages for coordination
             to MDP. It contains the SCDs to which it shall
             be distributed. The drafter will be notified about
             which SCDs that was not reached during the distribution.
             The notification will be send in a buffer and it
             will contain the SDCs to which distribution was
             not performed.

         c)  MDP will receive messages and comments returned
             from the MDCO after Invocation or alternative assistance.

         d)  MDP queues messages for coordination, release and
             presentation to the terminals receive queues. Comments
             and VDU pages are queued to these queues too.

         e)  MDP queues Incomming and Outgoing messages for
             print by sending a QEL to the SAD receive queues.

         f)  Whenever MDP send a FLASH object to the Terminal/Device
             queues a FLASH notification will be queued to the
             appropriate Command/FLASH Notification queue.



         g)  If during quiet hours a message or comment of precedence
             FLASH or IMMEDIATE is sent or attempted send to
             a terminal which is signed off it will be queued
             to a terminal position specified by the supervisor.

         h)  If MDCO invocation shall be performed on a specified
             message (see section 2.2.1.1). MDP will queue the
             message to the MDCO.

         i)  If a message or comment can not be delivered to
             all the VDUs or SADs in the current SCD List MDP
             will queue the message to the MDCO for assistance.



3.3.2.3  S̲t̲o̲r̲a̲g̲e̲ ̲a̲n̲d̲ ̲R̲e̲t̲r̲i̲e̲v̲a̲l̲ ̲I̲/̲F̲

         MDP sends Incoming and Outgoing messages to SAR after
         creation of the nominel distribution list. The type
         of storage will be specified in the QEL send to SAR.



3.3.2.4  S̲t̲a̲t̲i̲s̲t̲i̲c̲s̲ ̲P̲a̲c̲k̲a̲g̲e̲ ̲I̲/̲F̲

         MDP will create statistic record for incoming and outgoing
         messages. The statistics collection monitor procedure
         will be called one time for each distribution and one
         time for each VDU/SAD in the current distribution.
         The calls for each VDU/SAD will contain the Device
         ID and the logical designator for the current VDU/SAD.



3.3.2.5  T̲a̲b̲l̲e̲ ̲M̲a̲n̲a̲g̲e̲m̲e̲n̲t̲ ̲I̲/̲F̲

         MDP will access TMP for the following system parameters
         and tables:

         -   DISTRIBUTION ̲PARAMETER ̲RECORD

             TERMINAL ̲PROFILES

         -   SIC table

         -   SCD table





3.3.2.6  S̲y̲s̲t̲e̲m̲ ̲S̲t̲a̲t̲u̲s̲ ̲a̲n̲d̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲I̲/̲F̲

         SSC starts MDP up and close it down.
         The start-up is performed by giving the start-up data
         in the R0-R7 registers. R0 will contain the start-up
         type.
         The close down is performed by send of a QEL to MDP
         which contain a close down order.


                    4̲ ̲ ̲P̲A̲C̲K̲A̲G̲E̲ ̲D̲E̲S̲I̲G̲N̲



4.1      P̲A̲C̲K̲A̲G̲E̲ ̲O̲V̲E̲R̲V̲I̲E̲W̲



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 distribution cases, which will be performed by
         MDP, will be identified in this section.

         The following cases are identified:

         -   Incoming Messages received from THP

         -   Outgoing Messages received from THP

         -   Comments received from TEP

         -   Messages for coordination received from TEP

         -   Re-distribution of Messages received from TEP

         -   SCARS/CCIS objects for delivery received from THP

         -   Messages/comments re-entered after MDCO assistance
             received from TEP.

         This package will only contain one sub-package, therefore,
         all further functional specification will be described
         in section 4.2.1.1. The top level functional break
         down is shown in figure 4.1.1-1.


















































FIGURE 4.1.1-1…01…MESSAGE DISTRIBUTION PACKAGE TOP LEVEL FUNCTIONAL BREAK-DOWN


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



4.1.2.1  M̲e̲s̲s̲a̲g̲e̲ ̲D̲i̲s̲t̲r̲i̲b̲u̲t̲i̲o̲n̲ ̲P̲r̲o̲c̲e̲s̲s̲

         The message distribution program is performed in a
         single process. The process receives messages/comments
         from the Message Distribution Queue, and distributes
         them to terminal queues. The distribution may possibly
         be assisted by the MDCO.
         The subprocess profile for MDP is described in the
         DBD section 8.3.



4.1.2.2  M̲e̲s̲s̲a̲g̲e̲ ̲D̲i̲s̲t̲r̲i̲b̲u̲t̲i̲o̲n̲ ̲Q̲u̲e̲u̲e̲

         The Message Distribution Queue (MDQ) consists of three
          sub-queues. The subqueue with the highest priority
         is the command queue. It receives only commands from
         the SSC package. The second subqueue receives messages/comments
         returned from the MDCO. The third subqueue receiving
         normal messages/comments from other packages.

         The queue profile for the MDQ is described in the DBD
         section 7.2.5



4.1.2.3  M̲e̲s̲s̲a̲g̲e̲ ̲D̲i̲s̲t̲r̲i̲b̲u̲t̲i̲o̲n̲ ̲S̲u̲b̲-̲P̲a̲c̲k̲a̲g̲e̲

         The Message Distribution Package consists of only one
         subpackage. This subpackage consists of three levels
         of modules. 
             MDP MAIN ̲MODULE
             MDP CASE MODULES
             MDP UTILITY MODULES

         All further software structure is described in section
         4.2.1.2.





4.1.3    D̲a̲t̲a̲ ̲F̲l̲o̲w̲ ̲a̲n̲d̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲L̲o̲g̲i̲c̲

         The MDP package only consists of one subpackage. Therefore
         all dataflow and control logic is described in section
         4.2.1.3.:
             Data flow and control logic for the MDP subpackage.



4.1.4    C̲o̲m̲m̲o̲n̲ ̲P̲a̲c̲k̲a̲g̲e̲ ̲D̲a̲t̲a̲.̲

         Not applicable for this package because it contains
         only one subpackage.



4.1.5    C̲o̲m̲m̲o̲n̲ ̲P̲a̲c̲k̲a̲g̲e̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲

         Not applicable for this package because it contains
         only one subpackage.



4.1.6    G̲l̲o̲b̲a̲l̲ ̲D̲a̲t̲a̲ ̲E̲l̲e̲m̲e̲n̲t̲s̲

         MDP communicates with other packages by use of the
         Internal Message Format ref. DBD section 10.1:.
             For Data Elements used by communication with CSF
             and TMP refer DBD section 4.



4.1.7    I̲n̲t̲e̲r̲f̲a̲c̲e̲s̲



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


         N.A.


4.1.7.2  P̲a̲c̲k̲a̲g̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲s̲

         THP I/F ref ICD/009 section 5.1.1

         TEP I/F ref ICD/009 section 5.2.3 and 5.2.4

         SAR I/F ref ICD/009 section 5.3.2

         SSC I/F ref ICD/009 section 4.2.1.2



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

         Not applicable for this package because it contains
         only one subpackage.



4.2      S̲U̲B̲P̲A̲C̲K̲A̲G̲E̲ ̲S̲P̲E̲C̲I̲F̲I̲C̲A̲T̲I̲O̲N̲S̲



4.2.1    M̲D̲P̲ ̲S̲u̲b̲p̲a̲c̲k̲a̲g̲e̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲



4.2.1.1  F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

         The Message Distribution Package will perform distribution
         to terminals in the following cases:

         -   Incoming messages

         -   Outgoing messages

         -   Messages send for coordination

         -   Comments

         -   SC. delivery objects (Message for Coordination,
             Release and Comments, VDU pages).


         -   Incoming Messages returned after MDCO invocation

         -   Outgoing Messages returned after MDCO invocation

         -   Messages/Comments returned after alternative MDCO
             assistance

         -   Re-distribution of messages

         The functions which shall be performed for each of
         the cases are described in the following subsections.
         If the same function appears in more than one distribution
         case, it will only be described in details in the first
         case where it appears and will be stated in the following
         with a reference to where it is described.

         A functional breakdown is shown for each of the cases.
         The functions is separated into groups:

         -   PRELIMINARY DISTRIBUTION FUNCTIONS

         -   DISTRIBUTION FUNCTIONS

         -   ALTERNATIVE DISTRIBUTION FUNCTIONS

         -   FINISH DISTRIBUTION FUNCTIONS



4.2.1.1.1.   I̲n̲c̲o̲m̲i̲n̲g̲ ̲M̲e̲s̲s̲a̲g̲e̲

         The functional breakdown for this distribution case
         is shown in figure 4.2.1.1.1-1. Each function in the
         figure are specified in the following.



4.2.1.1.1.1R̲e̲a̲d̲ ̲V̲i̲e̲w̲ ̲a̲n̲d̲ ̲S̲y̲s̲t̲e̲m̲ ̲P̲a̲r̲a̲m̲s̲

         Read following records from the administration field.

         -   IMF ̲DESCRIPTION ̲TYPE
                                        ref DBD section 10.1.1
         -   PARAMETER ̲INFO ̲TYPE

         Get the Distribution System Parameter Record, ref DBD
         section 5.1.1.


4.2.1.1.1.2 C̲o̲n̲t̲r̲o̲l̲ ̲S̲I̲C̲s̲

         The system action related to the identified SICs will
         be as follows:

             SICS:              ACTION:

         -   AAA                Accepted for distribution if
                                AAA is the first SIC, a̲n̲d̲ one
                                of the following conditions
                                is fulfilled: 
                                Special Handling = Atomal  
                                Special Handling = Crypto  
                                  Special Handling = Exclusive
                                Special Handling = National
                                Eyes
                                                           
                                Only Classification = Cosmic
                                Top Secret a̲n̲d̲ at least one
                                of the following SICs is a subject
                                SIC

                                Otherwise queued to MDCO

         -   ABA, ACA, ADA      Queued to MDCO

         -   AAB...ADZ          Queued to MDCO (NON ̲EXISTING)

         -   AEA- - AZZ         Use SUBJECT ̲SIC with exercise
                                distribution

             EXCEPTION for      AEN..AZN, AEB..AZB:        
                                  Use EXERCISE ̲SIC with EXERCISE
                                ̲DISTRIBUTION


         -   BAA..ZZZ           SUBJECT ̲SICS

         The MDCO error list will be updated in accordance with
         the result of the control (ref. section 4.2.1.5).



4.2.1.1.1.3 C̲o̲n̲t̲r̲o̲l̲ ̲H̲Q̲ ̲M̲a̲s̲k̲

         The HQ mask is controlled to ensure that it contains
         at least one specified HQ. For abbreviated Plaindress
         Messages it will be empty. The MDCO Error List will
         be updated in accordance with the result of the control
         (ref section 4.2.1.5)


4.2.1.1.1.4 G̲e̲t̲ ̲S̲D̲L̲s̲ ̲a̲n̲d̲ ̲C̲r̲e̲a̲t̲e̲ ̲a̲ ̲S̲C̲D̲ ̲L̲i̲s̲t̲

         On basis of the SICs, HQ mask and Normal/Crisis/Exercise
         test the SDLs will be requested.

         Duplicated SCDs will be deleted and they will be sorted
         in Action and Info SCDs.



4.2.1.1.1.5 W̲r̲i̲t̲e̲ ̲S̲C̲D̲ ̲L̲i̲s̲t̲ ̲i̲n̲t̲o̲ ̲t̲h̲e̲ ̲I̲M̲F̲

         The current SCD list will be written into the SCD List
         Field in the IMF. The associated counters and offsets
         will be inserted in the appropriate record in the Administration
         Field.



4.2.1.1.1.6 T̲e̲s̲t̲ ̲M̲D̲C̲O̲ ̲I̲n̲v̲o̲c̲a̲t̲i̲o̲n̲

         The message will be send to the MDCO if one of the
         following conditions are fulfilled.

         -   Supervisor specified

             a)  All incoming messages
             b)  All incoming of specified classification.

             The function is performed by a check in the distribution
             system parameter record, ref DBD section 5.1.1.

         -   Internal Handling Instruction detected.

             The function is performed by a check in the second
             word of the associated received QEL.

         -   Special Handling Instruction of type:

                 Exclusive

                 Crypto Security

                 National Eyes Only

                 More than one detected

             The function is performed by a check in the access
             profile of the associated received QEL.



         -   Missing SICs              These functions are performed
                                       by checks in the second
                                       word of the QEL.
             Garbled SICs

         The MDCO Error List will be  updated in accordance
         with the results of the checks (ref section 4.2.1.5)


4.2.1.1.1.7 D̲e̲l̲i̲v̲e̲r̲y̲ ̲t̲o̲ ̲M̲D̲C̲O̲

         If the MDCO Error List during the previous functions
         had been updated with errors the message will be send
         to the MDCO for Incoming message invocation. If it
         is send to the MDCO the succeeding functions will not
         be performed. If the message is of precedence FLASH
         an extra QEL will be sent to the common MDCO Command
         queue.


4.2.1.1.1.8 C̲o̲n̲v̲e̲r̲t̲ ̲S̲C̲D̲ ̲L̲i̲s̲t̲ ̲t̲o̲ ̲Q̲u̲e̲u̲e̲ ̲L̲i̲s̲t̲

         On basis of the SCD list the appropiate SCD records
         will be requested. The SCD record outputs will be converted
         to a Queue List. For lay-out of the SCD record see
         DBD section 6.3 and for the Queue List DBD section
         10.1.7. Only the Queue lines which are associated to
         VDUs will contain the SCDs for which the distribution
         is performed.  The printer queue lines will contain
         no SCDs.


4.2.1.1.1.9 D̲e̲l̲i̲v̲e̲r̲y̲ ̲t̲o̲ ̲V̲D̲U̲s̲ ̲a̲n̲d̲ ̲P̲r̲i̲n̲t̲e̲r̲s̲

         Delivery to user VDUs will be performed if following
         conditions are fulfilled.

         FLASH messages:               Only if the VDU is signed
                                       on and it is working
                                       in user mode.

         IMMEDIATE messages:           Delivery will be performed

         OTHER messages:               Delivery will be performed.

         This check is performed by use of the terminal profile
         ref DBD section 5.3.2.

         All security checks are performed by the Queue Monitor
         and MDP only updates the delivery codes in the Queue
         List in accordance with the result of the SEND Operation.


         Creation of QEL header information to the VDUs and
         Printers will be performed in accordance with Interface
         Specifications ref ICD/009 section 5.2.4.1 and 5.2.4.2.

         If the message is of precedence FLASH an extra QEL
         will be send to the VDUs or printers command queue.



4.2.1.1.1.10 S̲p̲e̲c̲i̲a̲l̲ ̲D̲e̲l̲i̲v̲e̲r̲y̲ ̲t̲o̲ ̲A̲T̲O̲M̲A̲L̲ ̲P̲r̲i̲n̲t̲e̲r̲

         If the message contains a Special Handling Instruction
         Atomal and it should be send to a printer, MDP will
         instead queue it to the specified Atomal printer.This
         printer is identified in the Distribution System Parameter
         Record.

         If the message can not be distributed to the dedicated
         printer because of security faults or because the queue
         is blocked the delivery codes in the queue list will
         be updated in accordance with the result of the send
         instruction.

         If the message is of precedence FLASH an extra QEL
         is sent to the dedicated printers command queue.

         The QEL header information will be identical to information
         sent to normal printers except that it will not contain
         a queue line number.



4.2.1.1.1.11 D̲e̲l̲i̲v̲e̲r̲y̲ ̲t̲o̲ ̲D̲u̲t̲y̲ ̲O̲f̲f̲i̲c̲e̲r̲

         If the quiet hours switch in the distribution system
         parameter record is true the following action will
         be performed.

         If the message if of precedence FLASH or IMMEDIATE
         and at least one destination terminal is signed off
         following action will take place:

         FLASH:      The message will be queued to all the terminals
                     which are signed on and to the Duty Officer,
                     but not to the terminals which are signed
                     off.



         IMMEDIATE:  The message will be queued to all terminals
                     both these which are signed ON and these
                     which are signed OFF. Besides this it will
                     be queued to the duty officer.The quiet
                     hours position is identified via the distribution
                     system parameter record. The delivery codes
                     in the queue list will be updated in accordance
                     with the result of the sent operation.

         If the message is of precedence FLASH an extra QEL
         will be sent to the terminals command queue. The QEL
         Header will be in accordance with the Interface specifications,
         ref ICD/009 section 5.2.4.10.



4.2.1.1.1.12 D̲e̲l̲i̲v̲e̲r̲y̲ ̲t̲o̲ ̲M̲D̲C̲O̲

         If the quiet hours switch in the distribution system
         parameter record is true the queue list delivery codes
         will be checked if other than the following codes are
         identified the message will be send to the MDCO.

         -   Delivery performed (to normal VDUs and Printers)

         -   Atomal print performed

         -   Quiet hours delivery performed.

         If the quiet hours switch is false the message will
         be send to the MDCO without any checks.

         If the message is of precedence FLASH an extra QEL
         will be sent to the common MDCO command queue.



4.2.1.1.1.13 W̲r̲i̲t̲e̲ ̲Q̲u̲e̲u̲e̲ ̲L̲i̲s̲t̲

         The queue list will be written into the queue list
         field in the IMF. This function shall be performed
         before delivery to the MDCO if alternative distribution
         is needed.





4.2.1.1.1.14 S̲t̲a̲t̲i̲s̲t̲i̲c̲s̲ ̲D̲e̲l̲i̲v̲e̲r̲y̲

         Two types of statistics is delivered. One statistic
         for the whole distribution and one for each of the
         VDUs and Printers for lay out of the statistic records
         ref ICD/009 section 6.1.1.3.2



4.2.1.1.1.15 S̲t̲o̲r̲a̲g̲e̲ ̲D̲e̲l̲i̲v̲e̲r̲y̲

         A QEL, which references the current message, will be
         sent to the SAR storage Queue. The QEL will contain
         the SAR storage type "Incoming message after selection
         of nominal distribution list."


















































                     Fig. 4.2.1.1.1-1


4.2.1.1.2    O̲u̲t̲g̲o̲i̲n̲g̲ ̲M̲e̲s̲s̲a̲g̲e̲

         The functional breakdown for this distribution case
         is shown in figure 4.2.1.1.2-1.



4.2.1.1.2.1 R̲e̲a̲d̲ ̲V̲i̲e̲w̲ ̲a̲n̲d̲ ̲S̲y̲s̲t̲e̲m̲ ̲P̲a̲r̲a̲m̲e̲t̲e̲r̲s̲

         The following records are read from the administration
         field.

             IMF ̲DESCRIPTION ̲TYPE
                                        ref DBD section 10.1.1

             PARAMETER ̲INFO ̲TYPE

         And from the SCD list field

             Local distribution SCDs    ref DBD section 10.1.2

         From the system parameters the distribution record
         is requested ref DBD section 5.1.1.



4.2.1.1.2.2 T̲e̲s̲t̲ ̲L̲o̲c̲a̲l̲ ̲H̲Q̲

         It is checked if the message shall be distributed on
         basis of HQ/SIC or only on basis of local distribution
         SCDs.



4.2.1.1.2.3 C̲o̲n̲t̲r̲o̲l̲ ̲S̲I̲C̲s̲

         If the message shall be distributed on basis of HQ/SIC
         this function is performed. For description, see section
         4.2.1.1.1.2.


4.2.1.1.2.4 G̲e̲t̲ ̲S̲D̲L̲s̲ ̲a̲n̲d̲ ̲C̲r̲e̲a̲t̲e̲ ̲S̲C̲D̲ ̲L̲i̲s̲t̲

         If the message shall be distributed on basis of HQ/SIC
         this function will be performed. For description see
         section 4.2.1.1.1.4.



4.2.1.1.2.5 W̲r̲i̲t̲e̲ ̲S̲C̲D̲ ̲L̲i̲s̲t̲ ̲i̲n̲t̲o̲ ̲t̲h̲e̲ ̲I̲M̲F̲

         For specification see section 4.2.1.1.1.5.



4.2.1.1.2.6 D̲e̲l̲i̲v̲e̲r̲y̲ ̲t̲o̲ ̲M̲D̲C̲O̲

         For specification, see section 4.2.1.1.1.7.



4.2.1.1.2.7 C̲o̲n̲v̲e̲r̲t̲ ̲S̲C̲D̲ ̲L̲i̲s̲t̲ ̲t̲o̲ ̲Q̲u̲e̲u̲e̲ ̲L̲i̲s̲t̲

         For description, see section 4.2.1.1.1.8.  It is remarked
         that the local distribution SCD will be converted together
         with the action and info SCDs, if any.



4.2.1.1.2.8 D̲e̲l̲i̲v̲e̲r̲y̲ ̲t̲o̲ ̲V̲D̲U̲s̲ ̲a̲n̲d̲ ̲P̲r̲i̲n̲t̲e̲r̲s̲

         For description, see section 4.2.1.1.1.9



4.2.1.1.2.9 S̲p̲e̲c̲i̲a̲l̲ ̲D̲e̲l̲i̲v̲e̲r̲y̲ ̲t̲o̲ ̲A̲T̲O̲M̲A̲L̲ ̲P̲r̲i̲n̲t̲e̲r̲

         For description, see section 4.2.1.1.1.10



4.2.1.1.2.10 D̲e̲l̲i̲v̲e̲r̲y̲ ̲t̲o̲ ̲D̲u̲t̲y̲ ̲O̲f̲f̲i̲c̲e̲r̲

         For description, see section 4.2.1.1.1.11





4.2.1.1.2.11 D̲e̲l̲i̲v̲e̲r̲y̲ ̲t̲o̲ ̲M̲D̲C̲O̲

         For description, see section 4.2.1.1.1.12



4.2.1.1.2.12 W̲r̲i̲t̲e̲ ̲Q̲u̲e̲u̲e̲ ̲L̲i̲s̲t̲

         For description, see section 4.2.1.1.1.13



4.2.1.1.2.13 S̲t̲a̲t̲i̲s̲t̲i̲c̲s̲ ̲D̲e̲l̲i̲v̲e̲r̲y̲

         For description, see section 4.2.1.1.1.14



4.2.1.1.2.14 S̲t̲o̲r̲a̲g̲e̲ ̲D̲e̲l̲i̲v̲e̲r̲y̲

         A QEL, which references the current message, will be
         sent to the SAR Storage Queue. The QEL will contain
         the SAR storage type "Released Message."






                     Fig. 4.2.1.1.2-1



4.2.1.1.3    M̲e̲s̲s̲a̲g̲e̲ ̲f̲o̲r̲ ̲C̲o̲o̲r̲d̲i̲n̲a̲t̲i̲o̲n̲

         The functional breakdown for this distribution case
         is shown in figure 4.2.1.1.3-1.



4.2.1.1.3.1 R̲e̲a̲d̲ ̲V̲i̲e̲w̲ ̲a̲n̲d̲ ̲S̲y̲s̲t̲e̲m̲ ̲P̲a̲r̲a̲m̲e̲t̲e̲r̲s̲

         The following records are read from the administration
         field.

         -   IMF ̲DESCRIPTION ̲TYPE
                                        ref DBD section 10.1.1
         -   PARAMETER ̲INFO ̲TYPE

         And from the SCD List Field

             COORDINATION ̲CHECK ̲MARKS
                                        ref DBD section 10.12
             COORDINATION ̲SCDs



4.2.1.1.3.2 I̲n̲i̲t̲ ̲C̲o̲o̲r̲d̲i̲n̲a̲t̲i̲o̲n̲ ̲D̲i̲s̲t̲r̲i̲b̲u̲t̲i̲o̲n̲

         The current SCD list is created on basis of the coordination
         check marks and the coordination SCD List. If the check
         mark specifies distribution for the associated SCD
         it will be included in the current SCD List.



4.2.1.1.3.3 C̲o̲n̲v̲ ̲S̲C̲D̲ ̲L̲i̲s̲t̲ ̲t̲o̲ ̲Q̲u̲e̲u̲e̲ ̲L̲i̲s̲t̲

         For description, see section 4.2.1.1.1.8



4.2.1.1.3.4 D̲e̲l̲i̲v̲e̲r̲y̲ ̲t̲o̲ ̲V̲D̲U̲s̲

         Delivery to user VDUs will only be performed if the
         VDU is signed on and it works in user mode. Else the
         drafter will be notified. The delivery is performed
         to VDUs as described in section 4.2.1.1.1.9



4.2.1.1.3.5 C̲r̲e̲a̲t̲e̲ ̲D̲e̲l̲i̲v̲e̲r̲y̲ ̲N̲o̲t̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

         A delivery notification is created to the drafter.
         It contains the SCDs to which the distribution could
         not be performed. The delivery notification is created
         on basis of the delivery codes in the Queue List.



4.2.1.1.3.6 S̲e̲n̲d̲ ̲D̲e̲l̲i̲v̲e̲r̲y̲ ̲N̲o̲t̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

         A buffer is reserved, the delivery notification is
         read into it and it is send to the message drafter.








                     Fig. 4.2.1.1.3-l


4.2.1.1.4    C̲o̲m̲m̲e̲n̲t̲

         The functional breakdown for this distribution case
         is shown in figure 4.2.1.1.4-1.



4.2.1.1.4.1 R̲e̲a̲d̲ ̲V̲i̲e̲w̲ ̲a̲n̲d̲ ̲S̲y̲s̲t̲e̲m̲ ̲P̲a̲r̲a̲m̲s̲.̲

         The following records are read from the administration
         field.

             IMF ̲DESCRIPTOR ̲TYPE
                                        ref DBD section 10.1.1
             PARAMETER ̲INFO ̲TYPE

         And from the SCD List Field

             Local distribution SCDs    ref DBD section 10.1.2

         From the System Parameters 
         the distribution record is
          requested                     ref DBD section 5.1.1



4.2.1.1.4.2 C̲o̲n̲v̲e̲r̲t̲ ̲S̲C̲D̲ ̲L̲i̲s̲t̲ ̲t̲o̲ ̲Q̲u̲e̲u̲e̲ ̲L̲i̲s̲t̲

         For description, see section 4.2.1.1.1.8.  It is remarked
         that the SCDs entered during prep. of the comment is
         contained in the group local distribution SCDs.



4.2.1.1.4.3 D̲e̲l̲i̲v̲e̲r̲y̲ ̲t̲o̲ ̲V̲D̲U̲s̲

         Delivery to VDUs will be performed as described in
         section 4.2.1.1.1.9.

         It is also possible to distribute to mdco, mso, supervisor
         terminals



4.2.1.1.4.4 D̲e̲l̲i̲v̲e̲r̲y̲ ̲t̲o̲ ̲D̲u̲t̲y̲ ̲O̲f̲f̲i̲c̲e̲ 

         See section 4.2.1.1.1.11



4.2.1.1.4.5 D̲e̲l̲i̲v̲e̲r̲y̲ ̲t̲o̲ ̲M̲D̲C̲O̲

         See section 4.2.1.1.1.12



4.2.1.1.4.6 W̲r̲i̲t̲e̲ ̲Q̲u̲e̲u̲e̲ ̲L̲i̲s̲t̲ ̲

         See section 4.2.1.1.1.13






                     Fig. 4.2.1.1.4-1



4.2.1.1.5    S̲C̲ ̲D̲e̲l̲i̲v̲e̲r̲y̲

         The functional breakdown of this distribution case
         is shown in figure 4.2.1.1.5-1



4.2.1.1.5.1 R̲e̲a̲d̲ ̲V̲i̲e̲w̲ ̲a̲n̲d̲ ̲S̲y̲s̲t̲e̲m̲ ̲P̲a̲r̲a̲m̲e̲t̲e̲r̲s̲.̲

         The following records are read from the administration
         field.

             PARAMETER ̲INFO ̲TYPE        ref DBD section 10.1.1

         From the system parameters
         the distribution record is
         requested                      ref DBD section 5.1.1



4.2.1.1.5.2 I̲n̲i̲t̲ ̲S̲C̲ ̲D̲e̲l̲i̲v̲e̲r̲y̲

         It is checked which of the following delivery cases
         the current one is.

         -   Message for Release

         -   Message for Coordination

         -   Comment or VDU page

         Messages for Release or Coordination can contain max.
         one SCD to which distribution shall be performed whereas
         comments or VDU pages can contain max. two SCDs. The
         system code in front of the SCD is checked and if a
         "C" is detected the object will be distributed on basis
         of the SCD. Otherwise the object will be send to the
         MDCO, by the function delivery to MDCO.



4.2.1.1.5.3 C̲o̲n̲v̲e̲r̲t̲ ̲S̲C̲D̲ ̲L̲i̲s̲t̲ ̲t̲o̲ ̲Q̲u̲e̲u̲e̲ ̲L̲i̲s̲t̲

         The SCD(s) detected in the Init SC delivery function
         is used as the current SCD List. For description of
         the conversion, see section 4.2.1.1.1.8.



4.2.1.1.5.4 D̲e̲l̲i̲v̲e̲r̲y̲ ̲t̲o̲ ̲V̲D̲U̲s̲

         Delivery to VDUs will be performed as described in
         section 4.2.1.1.1.9.



4.2.1.1.5.5 D̲e̲l̲i̲v̲e̲r̲y̲ ̲t̲o̲ ̲M̲D̲C̲O̲

         See section 4.2.1.1.1.12.









                    Figure 4.2.1.1.5-1



4.2.1.1.6    I̲n̲c̲o̲m̲i̲n̲g̲ ̲M̲e̲s̲s̲a̲g̲e̲ ̲A̲f̲t̲e̲r̲ ̲M̲D̲C̲O̲ ̲I̲N̲V̲.

         The functional breakdown for this distribution case
         is shown in figure 4.2.1.1.6-1



4.2.1.1.6.1 R̲e̲a̲d̲ ̲V̲i̲e̲w̲ ̲a̲n̲d̲ ̲S̲y̲s̲t̲e̲m̲ ̲P̲a̲r̲a̲m̲e̲t̲e̲r̲s̲.̲

         The following records are read from the administration
         field.

         -   IMF ̲DESCRIPTOR ̲TYPE
                                        ref DBD section 10.1.1
         -   PARAMETER ̲INFOO̲TYPE

         And from the SCD list field:

         -   Action info SCDs           ref DBD section 10.1.2

         From the system parameters
         the distribution record is
         requested                      ref DBD section 5.1.1



4.2.1.1.6.2 C̲o̲n̲v̲e̲r̲t̲ ̲S̲C̲D̲ ̲L̲i̲s̲t̲ ̲t̲o̲ ̲Q̲u̲e̲u̲e̲ ̲L̲i̲s̲t̲

         See section 4.2.1.1.1.8



4.2.1.1.6.3 D̲e̲l̲i̲v̲e̲r̲y̲ ̲t̲o̲ ̲V̲D̲U̲s̲ ̲a̲n̲d̲ ̲P̲r̲i̲n̲t̲e̲r̲s̲

         See section 4.2.1.1.1.9



4.2.1.1.6.4 S̲p̲e̲c̲i̲a̲l̲ ̲A̲t̲o̲m̲a̲l̲ ̲P̲r̲i̲n̲t̲

         See section 4.2.1.1.1.10





4.2.1.1.6.5 W̲r̲i̲t̲e̲ ̲Q̲u̲e̲u̲e̲ ̲L̲i̲s̲t̲

         See section 4.2.1.1.1.13



4.2.1.1.6.6 S̲t̲a̲t̲i̲s̲t̲i̲c̲s̲ ̲D̲e̲l̲i̲v̲e̲r̲y̲

         See section 4.2.1.1.1.14



4.2.1.1.6.7 S̲t̲o̲r̲a̲g̲e̲ ̲D̲e̲l̲i̲v̲e̲r̲y̲

         See section 4.2.1.1.1.15



4.2.1.1.6.8 M̲D̲C̲O̲ ̲R̲e̲s̲p̲o̲n̲s̲e̲

         If the message is delivered to all the queues in the
         Queue List a FLASH distribution acknowledge is sent
         to the MDCO. Else the message is returned for alternative
         distribution assistance.







                    Figure 4.2.1.1.6-1




4.2.1.1.7    O̲u̲t̲g̲o̲i̲n̲g̲ ̲M̲e̲s̲s̲a̲g̲e̲ ̲a̲f̲t̲e̲r̲ ̲M̲D̲C̲O̲ ̲I̲N̲V̲.̲

         The functional breakdown for this distribution case
         is shown in figure 4.2.1.1.7-1. This case is identical
         with the case described in section 4.2.1.1.6, except
         the following. From the SCD list field the local distribution
         SCDs is read together with the action and info SCDs
         specified by the MDCO. The statistics and storage delivery
         is as described for an outgoing message, see section
         4.2.1.1.2.






                    Figure 4.2.1.1.7-1




4.2.1.1.8    M̲S̲G̲/̲C̲o̲m̲m̲e̲n̲t̲ ̲R̲e̲t̲u̲r̲n̲e̲d̲ ̲a̲f̲t̲e̲r̲ ̲A̲l̲t̲.̲ ̲A̲s̲s̲.̲

         The functional breakdown for this distribution case
         is shown in figure 4.2.1.1.8-1.



4.2.1.1.8.1 R̲e̲a̲d̲ ̲V̲i̲e̲w̲ ̲a̲n̲d̲ ̲S̲y̲s̲t̲e̲m̲ ̲P̲a̲r̲a̲m̲e̲t̲e̲r̲s̲.

         The following records are read from the administration
         field.

         -   IMF ̲DESCRIPTOR ̲TYPE
                                        ref DBD section 10.1.1
             PARAMETER ̲INFO ̲TYPE

         And from the Queue List Field.

         -   Alternative distribu-
             tion SCDs                  ref DBD section 10.1.7

         From the system parameters 
         the distribution record is
         requested                      ref DBD section 5.1.1



4.2.1.1.8.2 C̲r̲e̲a̲t̲e̲ ̲N̲e̲w̲ ̲V̲i̲e̲w̲

         A new view will be created. It will contain all the
         fields from the received view except the Queue List
         Field. A new Queue List Field is created to contain
         the new Queue List.



4.2.1.1.8.3 C̲o̲n̲v̲e̲r̲t̲ ̲S̲C̲D̲ ̲L̲i̲s̲t̲ ̲t̲o̲ ̲Q̲u̲e̲u̲e̲ ̲L̲i̲s̲t̲

         See section 4.2.1.1.1.8



4.2.1.1.8.4 D̲e̲l̲i̲v̲e̲r̲y̲ ̲t̲o̲ ̲V̲D̲U̲s̲ ̲a̲n̲d̲ ̲P̲r̲i̲n̲t̲e̲r̲s̲

         See section 4.2.1.1.1.9



4.2.1.1.8.5 S̲p̲e̲c̲i̲a̲l̲ ̲A̲t̲o̲m̲a̲l̲ ̲P̲r̲i̲n̲t̲

         See section 4.2.1.1.1.10



4.2.1.1.8.6 W̲r̲i̲t̲e̲ ̲Q̲u̲e̲u̲e̲ ̲L̲i̲s̲t̲

         See section 4.2.1.1.1.13



4.2.1.1.8.7 M̲D̲C̲O̲ ̲R̲e̲s̲p̲o̲n̲s̲e̲

         See section 4.2.1.1.6.8






                    Figure 4.2.1.1.8-1




4.2.1.1.9    R̲e̲d̲i̲s̲t̲r̲i̲b̲u̲t̲i̲o̲n̲ ̲o̲f̲ ̲M̲e̲s̲s̲a̲g̲e̲s̲

         The functional breakdown for this distribution case
         is shown in figure 4.2.1.1.9-1. This distribution case
         is identical with the case described in section 4.2.1.1.8,
         except the following. From the Queue List both the
         action and info redistribution SCDs is read (ref DBD
         section 10.1.7).

         The message is sent to the common MDCO Queue if assistance
         is necessary whereas if the distribution is succeeded
         no acknowledge is sent to the MDCO. If the message
         is of precedence FLASH an extra QEL will be sent to
         the common MDCO FLASH notification queue. 







                    Figure 4.2.1.1.9-1




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

         The MDP Subpackage contains three levels of software
         modules and a set of common procedures. The modules
         are divided in the following types:

         -   MDP ̲MAIN ̲MODULE

         -   MDP CASE MODULES

         -   MDP UTILITY MODULES



4.2.1.2.1    M̲A̲I̲N̲ ̲M̲o̲d̲u̲l̲e̲

         The MAIN ̲MODULE  within this subpackage performs following:

             Initialization:            Call of the common CAMPS
                                        procedure.
                                         PRE ̲INITIALIZATION.
                                        CHANGE ̲SUBPROCESS.
                                        Calculate Offsets and
                                        length parameters for
                                        the MDP ̲BUFFER.

             Receive of QEL and
             analysis of QEL ̲HEADER:    On basis of the QEL
                                        Maintype Flags and subtype
                                        the current distribution
                                        case is specified.

             Perform Message Di-
             stribution:                The actual distribution
                                        case module is called.



4.2.1.2.2    C̲a̲s̲e̲ ̲M̲o̲d̲u̲l̲e̲s̲ 

         The following CASE ̲MODULES are identified.

         -   INC ̲PLAIN ̲MSG ̲MODULE

         -   OUT ̲PLAIN ̲MSG ̲MODULE


         -   COOR ̲PLAIN ̲MSG ̲MODULE

         -   COMMENT ̲MODULE

         -   SC ̲DELIVERY ̲MODULE

         -   MDCO ̲INV ̲INC ̲MODULE

         -   MDCO ̲INV ̲OUT ̲MODULE

         -   MDCO ̲ALT ̲MODULE

         -   REDIST ̲MODULE

         Each of these modules work as a dispatch module. They
         set up the specified Data for that distribution case
         and call the applicable utility modules, in which the
         actual distribution is performed. The toplevel MDP
         Software Structure is shown in figure 4.2.1.2.2-1 and
         the Software Structure for each of the case modules
         are shown in figures 4.2.1.2.2-2 to 4.2.1.2.2-10. For
         further description of the case modules, refer module
         specification section 4.2.1.4.







                    Figure 4.2.1.2.2-1







                    Figure 4.2.1.2.2-2






                    Figure 4.2.1.2.2-3






                    Figure 4.2.1.2.2-4







                    Figure 4.2.1.2.2-5






                    Figure 4.2.1.2.2-6






                    Figure 4.2.1.2.2-7







                    Figure 4.2.1.2.2-8







                    Figure 4.2.1.2.2-9







                   Figure 4.2.1.2.2-10




4.2.1.2.3    U̲t̲i̲l̲i̲t̲y̲ ̲M̲o̲d̲u̲l̲e̲s̲

         The following UTILITY ̲MODULES are identified.

         -   READ ̲VIEW ̲AND ̲GET ̲SYS ̲PARAMS

         -   SIC ̲CONTROL

         -   GET ̲SDLS ̲AND ̲SORT ̲SCDs

         -   MDP ̲WRITE ̲BUFFER

         -   TEST ̲MDCO ̲INVOCATION

         -   CONV ̲SCD ̲LIST ̲TO ̲Q ̲LIST

         -   DELIVERY

         -   ALT ̲DIST

         -   PERFORM ̲DISTRIBUTION

         -   STA ̲SAR ̲DELIVERY

         These utility modules are called as procedures from
         the case modules. In the module specification (section
         4.2.1.4) for the case modules the procedure calls to
         the utility modules are shown. Through these figures
         the software structure is shown.

4.2.1.2.3.1 R̲e̲a̲d̲ ̲V̲i̲e̲w̲ ̲a̲n̲d̲ ̲G̲e̲t̲ ̲S̲y̲s̲t̲e̲m̲ ̲P̲a̲r̲a̲m̲e̲t̲e̲r̲s̲.̲

         This utility module reads the following records from
         the ADMINISTRATION ̲FIELD.

         -   IMF ̲DESCRIPTOR ̲TYPE
                                        ref section 10.1.1
         -   PARAMETER ̲INFO ̲TYPE

         On basis of the input to the module either the SCD
         ̲LIST ̲FIELD or the QUEUE ̲LIST ̲FIELD will be read into
         the MDP ̲BUFFER together with the records.

         The DISTRIBUTION ̲PARAMETERS are requested from the
         SYSTEM ̲PARAMETER area.



4.2.1.2.3.2 S̲I̲C̲ ̲C̲o̲n̲t̲r̲o̲l̲

         The SICs contained in the message are checked as described
         in section 4.2.1.1.1.2 and if the message shall be
         sent to the MDCO the MDCO ̲ERROR ̲LIST will be updated.



4.2.1.2.3.3 G̲e̲t̲ ̲S̲D̲L̲ ̲a̲n̲d̲ ̲S̲o̲r̲t̲ ̲S̲C̲D̲s̲

         The SDLs are accessed on basis of the HQ mask SICs
         and the normal/crisis/exercise parameters. The SDL
         outputs are checked and if they are empty the MDCO
         ̲ERROR ̲LIST will be updated with the appropiate error.
         If the SDLs contain SCDs, the SCDs will be sorted in
         action and info and duplicates wil be deleted.

         This module sets up the appropiate Offsets and counters
         for the SCD list field too. These offsets and counters
         shall be read into the IMF together with the SCD list.



4.2.1.2.3.4 M̲D̲P̲ ̲W̲r̲i̲t̲e̲ ̲B̲u̲f̲f̲e̲r̲

         This utility module performs two cases of WRITE ̲VIEW:

         -   Write Action and Info SCDs into the SCD ̲LIST ̲FIELD
             and the associated offsets and counters into the
             IMF ̲DESCRIPTOR ̲TYPE record in the ADMINISTRATION
             ̲FIELD.

         -   Write the Queue List into the QUEUE ̲LIST ̲FIELD.

         The current case is specified in the input parameters
         to the module.



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

         This utility module performs the test for MDCO Invocation
         as described in section 4.2.1.1.1.6. The MDCO ̲ERROR
         ̲LIST will be updated in accordance with the result
         of the test in the module too.



4.2.1.2.3.6 C̲o̲n̲v̲.̲ ̲S̲C̲D̲ ̲L̲i̲s̲t̲ ̲t̲o̲ ̲Q̲ ̲L̲i̲s̲t̲

         This utility module converts the current SCD List to
         a Queue List the no. of SCDs which are to be converted
         is given as input together with the offset for the
         SCDs. As output is given the number of Queue lines.

         If the SCDs given as input to the module is not contained
         in the SCD table this will not course any error and
         no error will be reported from the module. The Queue
         Lines Count will return with a zero.



4.2.1.2.3.7 D̲e̲l̲i̲v̲e̲r̲y̲

         This utility module performs the actual delivery to
         the VDUs and Printers on basis of the Queue List. All
         sends are performed with checkpoint status true. Maintype
         and QEL.Header flags are copied from the received QEL
         and the subtype and second word in QEL Header are set
         up as specified in ICD/001 section 5.2.4.

         The delivery code for each Queue Line is updated in
         accordance with the result of the sent procedure. If
         the message contains a special handling instruction
         ATOMAL and it shall be distributed to a printer this
         module will queue the message to the dedicated ATOMAL
         printer.



4.2.1.2.3.8 A̲l̲t̲e̲r̲n̲a̲t̲i̲v̲e̲ ̲D̲i̲s̲t̲r̲i̲b̲u̲t̲i̲o̲n̲

         This utility module performs alternative distribution
         to the Duty officer and to the MDCO. If the quiet hours
         switch in the system parameter is true and at least
         one of the Delivery code is SIGN OFF, the message will
         be sent to the duty officer. Only messages of precedence
         FLASH or IMMEDIATE will be queued for the Duty Officer.
         If the delivery code specifies access errors or queue
         blocked the message will be sent to the MDCO.



4.2.1.2.3.9 P̲e̲r̲f̲o̲r̲m̲ ̲D̲i̲s̲t̲r̲i̲b̲u̲t̲i̲o̲n̲

         This utility module is used when distribution shall
         be performed both by Action and Info SCDs. It contains
         two calls to both the CONV ̲SCD ̲LIST ̲TO ̲Q ̲LIST and the
         DELIVERY one for Action and one for Info. In the return
         parameters the number of Action and Info queue lines
         are specified.



4.2.1.2.3.10 S̲T̲A̲ ̲S̲A̲R̲ ̲D̲E̲L̲I̲V̲E̲R̲Y̲

         This utility module creates a statistic record (ref
         ICD /009 section 6.1.1.3.2.5-6) and calls the statistic
         collection monitor procedure one time for the total
         distribution and one time for each Queue Line.

         A QEL referencing the current view will be sent to
         the SAR storage queue.



4.2.1.3  D̲a̲t̲a̲ ̲F̲l̲o̲w̲ ̲a̲n̲d̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲L̲o̲g̲i̲c̲

         Figure 4.2.1.3-1 shows the main Data Flow within the
         MDP ̲BUFFER. Table one shows the contents of the MDP
         BUFFER when an IMF had been read into the memory. From
         the ADMINISTRATION ̲FIELD the following two records
         are read IMF ̲DESCRIPTOR ̲TYPE and PARAMETER ̲INFO ̲TYPE.
         This is common for all the distribution cases. Together
         with the ADMINISTRATION FIELD either the whole SCD
         ̲LIST ̲
         FIELD or the QUEUE ̲LIST ̲FIELD is read. Figure 4.2.1.3-2
         shown which SCDs that are used in the current distribution
         case. It shall be remarked that for incoming and outgoing
         messages MDP itself look up the Action and Info SCDs
         on basis of HQ/SIC Parameters. This is shown in Table
         2 in figure 4.2.1.3-1. Table 3 to 5 shows the conversion
         of the current SCD list to a Queue list.

         For further details refer Module Specifications section
         4.2.1.4.13 and section 4.2.1.4.16. On the following
         pages the main Data Flow in MDP is shown by use of
         Hipo diagrams. The control logic for each of the distribution
         cases are shown in the appropiate Module design sections.




                     figure 4.2.1.3-1










                        10 hipoer



4.2.1.4  M̲o̲d̲u̲l̲e̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲s̲



4.2.1.4.1  M̲D̲P̲ ̲M̲a̲i̲n̲ ̲M̲o̲d̲u̲l̲e̲



4.2.1.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 is the main module within the MDP Subpackage.
         It receives QELs from the MDQ and identify the current
         Distribution Case and the propriate Case Module will
         then be called. Initialization and Close Down procedures
         are contained in this module too.



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

         a)  MDP ̲MAIN

         b)  MDP ̲MAIN

         R̲e̲g̲i̲s̲t̲e̲r̲ ̲C̲o̲n̲v̲e̲n̲t̲i̲o̲n̲

         C̲a̲l̲l̲ ̲R̲e̲g̲i̲s̲t̲e̲r̲

         R6 LINK                        (DEST)

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

         R0-R7                          (DEST)



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

         MDP ̲MAIN ̲PROGRAM ̲ (Internal procedure)

         PRE ̲INITIALIZATION (External procedure)

         CALCULATE ̲OFFSET ̲PARAMS (Internal procedure)



         ANALYZE ̲QEL ̲HEADER (Internal procedure)

         PROCESS ̲SSC ̲COMMAND (Internal procedure)

         MDP ̲SEND ̲GARBLE (Internal procedure)

         PROCESS ̲PLAINDRESS (Internal procedure)

         PROCESS ̲PLAINDRESS ̲DATA (Internal procedure)

         PROCESS ̲SC ̲PLAINDRESS (Internal procedure)

         PROCESS ̲SC ̲PLAINDRESS ̲DATA (Internal procedure)

         PROCESS ̲ABB ̲PLAINDRESS (Internal procedure)

         PROCESS ̲ABB ̲PLAINDRESS ̲DATA (Internal procedure)

         PROCESS ̲SC ̲VDU ̲PAGE (Internal procedure)

         PROCESS ̲SC ̲COMMENT (Internal procedure)

         PROCESS ̲COMMENT (Internal procedure)

         PERFORM ̲MESSAGE ̲DISTRIBUTION (Internal procedure)

         CREATE ̲QUEUE ̲REF (External procedure)

         IN ̲PLAIN ̲MSG ̲DIST (External procedure)

         OUT ̲PLAIN ̲MSG ̲DIST (External procedure)

         COOR ̲PLAIN ̲MSG ̲DIST (External procedure)

         COMMENT ̲DIST (External procedure)

         SC ̲DELIVERY (External procedure)

         MDCO ̲INV ̲INC ̲(External procedure)

         MDCO ̲INV ̲OUT (External procedure)

         MDCO ̲ALT (External procedure)

         REDIST (External procedure)

         See figure 4.2.1.4.1.3-1, 2 and 3



               Figure 4.2.1.4.1.3-,2 and 3



4.2.1.4.1.4 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲

         Refer Source Listings



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

         The MDP ̲MAIN ̲PROGRAM module contains 15 internal procedures.
          The module components are shown on the figures 4.2.1.4.1.3-1,2,3.Each
         of the procedures are described in the following:

         a)  M̲D̲P̲ ̲M̲A̲I̲N̲ ̲P̲R̲O̲G̲R̲A̲M̲

             This procedure contains the Mainloop within the
             MDP program it is the DISTRIBUTION LOOP see figure
             4.2.1.4.1.5-1.

             Before the Mainloop is entered the MDP program
             are initialized via the procedures PRE ̲INITIALIZATION
             and the procedure CALCULATE ̲OFFSET ̲PARAMS

             The PRE ̲INITIALIZATION procedure are a common CAMPS
             procedure which are described in CPS/ICD/009 Section
             6.5.2.

             In the Main Loop QELs are received, the QEL Header
             are analyzed via the procedure ANALYZE ̲QEL ̲HEADER,
             the object is distributed via the procedure
             PERFORM ̲MESSAGE ̲DISTRIBUTION.

             View status is saved and the associated QEL in
             MDQ are dismantled.  If a new view has been created
             the reference to the old view will be dismantled
             after the new view is saved.  The Boolean Old View
             is set true in the common procedure "CREATE ̲NEW
             ̲VIEW".

         B)  A̲N̲A̲L̲Y̲S̲E̲ ̲Q̲E̲L̲ ̲H̲E̲A̲D̲E̲R̲

             In this procedure the QEL Maintype, subtype and
             Flags are analysed.  For each Maintype a procedure
             exists in which the subtype and Flags are tested.

             On basis of these tests the appropriate DIST ̲CASE
             are identified.

         C)  P̲E̲R̲F̲O̲R̲M̲ ̲M̲E̲S̲S̲A̲G̲E̲ ̲D̲I̲S̲T̲R̲I̲B̲U̲T̲I̲O̲N̲

             The procedure calls on basis of the current DIST
             ̲CASE the current distribution case module.  These
             case modules will then perform the distribution
             by the use of the utility modules.


     MDP ̲MAIN ̲PROGRAM
     START
     OLD ̲VIEW=FALSE
     CALCULATE ̲OFFSET ̲PARAMS ()
     DISTRIBUTION ̲LOOP
         CREATE ̲QUEUE ̲REF (SINGLE,MDQ,MAIN ̲Q) (QUEUE ̲REF)
         SWITCH RECEIVE ̲FIRST ̲QEL (TRUE,QUEUE ̲REF)
                                  (MDP ̲QEL ̲ATTR, MDP ̲VIEW ̲REF ̲1,
                                   MDP ̲SUB ̲Q, CC):ERROR ̲OK
                 ERROR? ANALYZE ̲ERROR (CC,O)
         END SWITCH
         OPEN ̲OK=TRUE
         IF MDP ̲QEL ̲ATTR.OBJECT=VIEW?
                 SWITCH MMON ̲OPEN ̲VIEW (MDR ̲VIEW ̲REF.1) (CC)
                     ERROR? ANALYZE ̲ERROR (CC,1,MMON ̲STOPPED)
                            OPEN ̲OK= FALSE
                 END SWITCH
         OPEN ̲OK=TRUE? - ANALYZE ̲QEL ̲HEADER ()
                         PERFORM ̲MESSAGE ̲DISTRIBUTION ()
                         SWITCH MMON ̲CLOSE ̲VIEW (MDP ̲VIEW ̲REF ̲1)(CC)
                             ERROR? ANALYZE ̲ERROR (CC, O)
                         END SWITCH
         SWITCH MMON ̲SAVE ̲VIEW (TRUE, MDP ̲VIEW ̲REF ̲1) (CC)
             ERROR? ANALYZE ̲ERROR (CC, O)
         END SWITCH
         OLD ̲VIEW=TRUE? - SWITCH MMON ̲CLOSE ̲VIEW(OLD ̲VIEW ̲REF) (CC)
                              ERROR? ANALYZE ̲ERROR (CC, O)
                          END SWITCH
                          SWITCH MMON ̲DISMANTLE ̲VIEW (OLD ̲VIEW ̲
                          REF) (CC)
                              ERROR? ANALYZE ̲ERROR (CC, O)
                          END SWITCH
                          OLD ̲VIEW=FALSE
     END DISTRIBUTION LOOP
     STOP
                                    Figure 4.2.1.4.1.5-1


     CALCULATE ̲OFFSET ̲PARAMS

     START

     KEY ̲LIST ̲OFFSET=ZERO;

     OUTPUT ̲OFFSET=KEY ̲LIST ̲OFFSET+KEY ̲LIST ̲LENGTH

     Q ̲LIST ̲OFFSET=OUTPUT ̲OFFSET+OUTPUT ̲LENGTH

     AC ̲INFO ̲SCD ̲OFFSET=Q ̲LIST ̲OFFSET+Q ̲LIST ̲LENGTH

     MDP ̲DIST ̲SCD ̲OFFSET=AC ̲INFO ̲SCD ̲OFFSET-DIST ̲SCD ̲LENGTH

     MDP ̲COOR ̲SCD ̲OFFSET=MDP ̲DIST ̲SCD ̲OFFSET-COOR ̲SCD ̲LENGTH

     COOR ̲MARK ̲OFFSET=MDP ̲COOR ̲SCD ̲OFFSET-COOR ̲MARK ̲LENGTH,

     IMF ̲READ ̲OFFSET=COOR ̲CHECK ̲MARK ̲OFFSET-(IMF ̲DESCRIPTOR
     ̲LENGTH+PARAMETER ̲INFO ̲LENGTH ̲CTS ̲ATOMAL ̲DELETION ̲LOG
     ̲LENGTH

     ALT ̲DIST ̲LIST ̲OFFSET=COOR ̲CHECK ̲MARK ̲OFFSET

     STOP























                 Figure 4.2.1.4.1.5-"


     ANALYSE ̲QEL ̲HEADER()(DIST ̲CASE)

     START

     CASE MDP ̲QEL ̲ATTR.HEADER.MAINTYPE 

         SSC ̲COMMAND?         PROCESS ̲SSC ̲COMMAND()(DIST-̲CASE)

         PLAINDRESS?          PROCESS ̲PLAINDRESS()(DIST
         ̲CASE)

         PLAINDRESS ̲DATA?     PROCESS ̲PLAINDRESS ̲DATA()(DIST
         ̲CASE)

         SC ̲PLAINDRESS?       PROCESS ̲SC ̲PLAINDRESS()(DIST
         ̲CASE)

         SC ̲PLAINDRESS ̲DATA?  PROCESS ̲SC ̲PLAINDRESS ̲DATA()(DIST
         ̲CASE)

         ABB ̲PLAINDRESS?      PROCESS ̲ABB ̲PLAINDRESS()(DIST
         ̲CASE)

         ABB ̲PLAINDRESS ̲DATA? PROCESS ̲ABB ̲PLAINDRESS ̲DATA()(DIST
         ̲CASE)

         SC ̲VDU ̲PAGE?         PROCESS ̲SC ̲VDU ̲PAGE()(DIST
         ̲CASE)

         SC ̲COMMENT?          PROCESS ̲SC ̲COMMENT()(DIST
         ̲CASE)

         COMMENT?             PROCESS ̲COMMENT()(DIST ̲CASE)

         OTHERWISE?           DIST ̲CASE=MDP ̲SEND ̲GARBLE

     END CASE

     STOP















                 Figure 4.2.1.4.1.5-3


     PROCESS ̲SSC ̲COMMAND

     START

     MDP ̲QEL ̲ATTR.HEADER.SUBTYPE + CLOSE ̲DOWN?

                                        DIST ̲CASE= ̲MDP ̲SEND
                                        ̲GARBLE

     LOOP CLOSE ̲DOWN

         CREATE ̲QUEUE ̲REF (SINGLE, MDQ, SUBQ ̲1) (QUEUE ̲REF)

         SWITCH RECEIVE ̲FIRST ̲QEL (TRUE, QUEUE ̲REF)

                                  (MDP ̲QEL ̲ATTR, MDP ̲VIEW
                     ̲REF ̲1,
                                  MDP ̲SUB ̲Q, CC)

             ERROR? ANALYZE ̲ERROR (CC, O)

         END SWITCH

     END LOOP CLOSE ̲DOWN

     STOP






















                 Figure 4.2.1.4.1.5-4



PROCESS ̲PLAINDRESS () (DIST ̲CASE)

START

CASE MDP ̲QEL ̲ATTR.HEADER.FLAGS.BIT ̲0 OF

 CAMPS ̲ORIGINATED?

    CASE ̲MDP ̲QEL ̲ATTR.HEADER.SUBTYPE OF

       FOR ̲REDISTRIBUTION?  DIST ̲CASE=REDIST ̲MSG

       FOR ̲COORDINATION?  DIST ̲CASE=COOR ̲PLAIN ̲MSG

       FOR ̲DISTRIBUTION?  DIST ̲CASE=OUT ̲PLAIN ̲MSG

       FROM ̲INCOMING ̲DISTRIBUTION ̲ASSISTANCE? DIST ̲CASE=MDCO
       ̲INV ̲OUTG

       FROM ̲ALTERNATIVE ̲DISTRIBUTION ̲ASSISTANCE? DIST
       ̲CASE:MDCO ̲ALTE

       OTHERWISE?   DIST ̲CASE=MDP ̲SEND ̲GARBLE

    END CASE

 OTHERWISE?

    CASE ̲MDP ̲QEL ̲ATTR.HEADER.SUBTYPE OF

       FOR ̲REDISTRIBUTION?  DIST ̲CASE=REDIST ̲MSG

       FOR ̲DISTRIBUTION?  DIST ̲CASE=INC ̲PLAIN ̲MSG

       FROM ̲INCOMING ̲DISTRIBUTION ̲ASSISTANCE? DIST ̲CASE=MDCO
       ̲INV ̲INCO

       FROM ̲ALTERNATIV ̲DISTRIBUTION ̲ASSISTANCE? DIST
       ̲CASE=MDCO ̲ALTE

       OTHERWISE?   DIST ̲CASE=MDP ̲SEND ̲GARBLE

    END CASE

END CASE

STOP




               Figure 4.2.1.4.1.5-5


PROCESS ̲PLAINDRESS ̲DATA () (DIST ̲CASE)

START

CASE MDQ ̲QEL ̲ATTR.HEADER.FLAGS.BIT ̲0 OF

 CAMPS ̲ORIGINATED?

    CASE ̲MDP ̲QEL ̲ATTR.HEADER.SUBTYPE OF

       FOR ̲REDISTRIBUTION?  DIST ̲CASE=REDIST ̲MSG

       FOR ̲COORDINATION? - DIST ̲CASE=COOR ̲PLAIN ̲MSG

       FOR ̲DISTRIBUTION?  DIST ̲CASE=OUT ̲PLAIN ̲MSG

       FROM ̲INCOMING ̲DISTRIBUTION ̲ASSISTANCE? DIST ̲CASE=MDCO
       ̲INV ̲OUTG

       FROM ̲ALTERNATIVE ̲DISTRIBUTION ̲ASSISTANCE? DIST
       ̲CASE:MDCO ̲ALTE

       OTHERWISE?   DIST ̲CASE=MDP ̲SEND ̲GARBLE

    END CASE

 OTHERWISE?

    CASE ̲MDP ̲QEL ̲ATTR.HEADER.SUBTYPE OF

       FOR ̲REDISTRIBUTION?  DIST ̲CASE=REDIST ̲MSG

       FOR ̲DISTRIBUTION?  DIST ̲CASE=INC ̲PLAIN ̲MSG

       FROM ̲INCOMING ̲DISTRIBUTION ̲ASSISTANCE? DIST ̲CASE=MDCO
       ̲INV ̲INCO

       FROM ̲ALTERNATIV ̲DISTRIBUTION ̲ASSISTANCE? DIST
       ̲CASE=MDCO ̲ALTE

       OTHERWISE?   DIST ̲CASE=MDP ̲SEND ̲GARBLE

    END CASE

END CASE

STOP




               Figure 4.2.1.4.1.5-6


 PROCESS ̲SC ̲PLAINDRESS () (DIST ̲CASE)

 START

 CASE ̲MDP ̲QEL ̲ATTR.HEADER.FLAGS.BIT ̲0 OF

    CAMPS ̲ORIGINATED?  DIST ̲CASE=MDP ̲SEND ̲GARBLE

    OTHERWISE?

       CASE MDP ̲QEL ̲ATTR.HEADER.SUBTYPE OF

          FOR ̲COORDINATION?   DIST ̲CASE=SC ̲DELIVERY

          FOR ̲RELEASE?        DIST ̲CASE=SC ̲DELIVERY

          FOR ̲DISTRIBUTION?   DIST ̲CASE=INC ̲PLAIN ̲MSG

          FROM ̲INCOMMING ̲
          DISTRIBUTION ̲ASSISTANCE   DIST ̲CASE=MDCO ̲INV
          ̲INCO

          FROM ̲ALTERNATIVE ̲
          DISTRIBUTION ̲ASSISTANCE   DIST ̲CASE=MDCO ̲ALTE

          OTHERWISE?          DIST ̲CASE=MDP ̲SEND ̲GARBLE

       END CASE

 END CASE

 STOP






















               Figure 4.2.1.4.1.5-7


 PROCESS ̲SC ̲PLAINDRESS ̲DATA () (DIST ̲CASE)

 START

 CASE ̲MDP ̲QEL ̲ATTR.HEADER.FLAGS.BIT ̲0 OF

    CAMPS ̲ORIGINATED?  DIST ̲CASE=MDP ̲SEND ̲GARBLE

    OTHERWISE?

       CASE MDP ̲QEL ̲ATTR.HEADER.SUBTYPE OF

          FOR ̲COORDINATION?   DIST ̲CASE=SC ̲DELIVERY

          FOR ̲RELEASE?        DIST ̲CASE=SC ̲DELIVERY

          FOR ̲DISTRIBUTION?   DIST ̲CASE=INC ̲PLAIN ̲MSG

          FROM ̲INCOMMING ̲DI-
          STRIBUTION ̲ASSISTANCE   DIST ̲CASE=MDCO ̲INV
          ̲INCO

          FROM ̲ALTERNATIVE ̲DI-
          STRIBUTION ̲ASSISTANCE   DIST ̲CASE=MDCO ̲ALTE

          OTHERWISE?          DIST ̲CASE=MDP ̲SEND ̲GARBLE

       END CASE

 END CASE

 STOP






















               Figure 4.2.1.4.1.5-8


 PROCESS ̲ABB ̲PLAINDRESS () (DIST ̲CASE)

 START

 CASE MDP ̲QEL ̲ATTR.HEADER.FLAGS.BIT-0 OF

    CAMPS ̲ORIGINATED?   DIST ̲CASE=MDP ̲SEND ̲GARBLE

    OTHERWISE?

       CASE MDP ̲QEL ̲ATTR.HEADER.SUBTYPE OF

          FOR ̲REDISTRIBUTION?  DIST ̲CASE=REDIST ̲MSG

          FOR ̲DISTRIBUTION?    DIST ̲CASE=INC ̲PLAIN ̲MSG

          FROM ̲INCOMING ̲DISTRIBUTION ̲ASSISTANCE?  DIST
          ̲CASE=MDCO ̲INV ̲INCO

          FROM ̲ALTERNATIVE ̲DISTRIBUTION ̲ASSISTANCE?DIST
          ̲CASE=MDCO ̲ALTE

          OTHERWISE?       DIST ̲CASE=MDP ̲SEND ̲GARBLE

       END CASE

 END CASE

 STOP




















               Figure 4.2.1.4.1.5-9



 PROCESS ̲ABB ̲PLAINDRESS ̲DATA () (DIST ̲CASE)

 START

 CASE MDP ̲QEL ̲ATTR.HEADER.FLAGS.BIT-0 OF

    CAMPS ̲ORIGINATED?   DIST ̲CASE=MDP ̲SEND ̲GARBLE

    OTHERWISE?

       CASE MDP ̲QEL ̲ATTR.HEADER.SUBTYPE OF

          FOR ̲REDISTRIBUTION?  DIST ̲CASE=REDIST ̲MSG

          FOR ̲DISTRIBUTION?    DIST ̲CASE=INC ̲PLAIN ̲MSG

          FROM ̲INCOMING ̲DISTRIBUTION ̲ASSISTANCE?  DIST
          ̲CASE=MDCO ̲INV ̲INCO

          FROM ̲ALTERNATIVE ̲DISTRIBUTION ̲ASSISTANCE?DIST
          ̲CASE=MDCO ̲ALTE

          OTHERWISE?       DIST ̲CASE=MDP ̲SEND ̲GARBLE

       END CASE

 END CASE

 STOP




















              Figure 4.2.1.4.1.5-10



 PROCESS ̲SC ̲VDU ̲PAGE () (DIST ̲CASE)

 START

 CASE MDP ̲QEL ̲ATTR.HEADER.FLAGS.BIT-0 OF

    CAMPS ̲ORIGINATED?  DIST ̲CASE=MDP ̲SEND ̲GARBLE

    OTHERWISE?

       CASE MDP ̲QEL ̲ATTR.HEADER.SUBTYPE OF

       FOR ̲DISTRIBUTION?  DIST ̲CASE=SC ̲DELIVERY

       OTHERWISE?         DIST ̲CASE=MDP ̲SEND ̲GARBLE

    END CASE

 END CASE

 STOP


























              Figure 4.2.1.4.1.5-11


 PROCESS ̲SC ̲COMMENT () (DIST ̲CASE)

 START

 CASE MDP ̲QEL ̲ATTR.HEADER.FLAGS.BIT-0 OF

    CAMPS ̲ORIGINATED?  DIST ̲CASE=MDP ̲SEND ̲GARBLE

    OTHERWISE?

       CASE MDP ̲QEL ̲ATTR.HEADER.SUBTYPE OF

       FOR ̲DISTRIBUTION?  DIST ̲CASE=SC ̲DELIVERY

       OTHERWISE?         DIST ̲CASE=MDP ̲SEND ̲GARBLE

    END CASE

 END CASE

 STOP


























              Figure 4.2.1.4.1.5-12


 PROCESS ̲COMMENT () (DIST ̲CASE)

 START

 CASE MDP ̲QEL ̲ATTR.HEADER.FLAGS.BIT(0) OF

    CAMPS ̲ORIGINATED? DIST ̲CASE = MDP ̲SEND ̲GARBLE

    CASE MDP ̲QEL ̲ATTR.HEADER.SUBTYPE OF

       FOR ̲DISTRIBUTION?  DIST ̲CASE=COMMENT

       FROM ̲ALTERNATIVE ̲
       DISTRIBUTION ̲ASSISTANCE? DIST ̲CASE=MDCO ̲ALTE

       OTHERWISE?   DIST ̲CASE=MDP ̲SEND ̲GARBLE

    END CASE

    OTHERWISE?   DIST ̲CASE=MDP ̲SEND ̲GARBLE

 END CASE

 STOP
























              Figure 4.2.1.4.1.5-13


 PERFORM ̲MESSAGE ̲DISTRIBUTION(DIST-̲CASE)

 START

 CASE DIST ̲CASE

    INC ̲PLAIN ̲MSG?   INC ̲PLAIN ̲MSG ̲DIST

    OUT ̲PLAIN ̲MSG?   OUT ̲PLAIN ̲MSG ̲DIST

    COOR ̲PLAIN ̲MSG?  COOR ̲PLAIN ̲MSG ̲DIST

    COMMENT?         COMMENT ̲DIST

    SC ̲DELIVERY?     SC ̲DELIVERY

    MDCO ̲INV ̲INCO?   MDCO ̲INV ̲INC

    MDCO ̲INV ̲OUTG?   MDCO ̲INV ̲OUT

    MDCO ̲ALTE?       MDCO ̲ALT

    REDIST ̲MSG?      MSG ̲REDIST

    MDP ̲SEND ̲GARBLE  PROCESS ̲MDP ̲SEND ̲GARBLE

 END CASE

 STOP


















              Figure 4.2.1.4.1.5-14


 PROCESS ̲MDP ̲SEND ̲GARBLE

 START

    MDP ̲ERROR ̲INF.ERROR ̲TYPE=QERROR

    MDP ̲ERROR ̲INF.USER ̲ACTION=CONTINUE

    MDP ̲ERROR ̲INF.INF = ZERO

    SWITCH SEND ̲GARBLE (MDP ̲ERROR ̲INF,
                        MDP ̲VIEW ̲REF ̲1, CC)

       ERROR? ANALYZE ̲ERROR (CC, O)

    END SWITCH

 END





























              Figure 4.2.1.4.1.5-15