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

⟦e29c36577⟧ Wang Wps File

    Length: 15178 (0x3b4a)
    Types: Wang Wps File
    Notes: CPS/SDS/041               
    Names: »2108A «

Derivation

└─⟦9270f92d5⟧ Bits:30006106 8" Wang WCS floppy, CR 0167A
    └─ ⟦this⟧ »2108A « 

WangText

…00……00……00……00……00……13……02……00……00……13…
…13… …13……05……12……09……12……86…1                                             …02…           …02…   …02…        
#
…02…CPS/SDS/041

…02…841210…02……02…
PRINTER
DETAILED DESIGN SPECIFICATION…02…ISSUE 1…02…CAMPS








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̲\̲w̲i̲t̲h̲i̲n̲ ̲U̲P̲C̲O̲

         The following HIPO-diagrams show the Data Flow of UPCO.










           Fra Diag. ID: 4.2.1.3.1 - 4.2.1.3.5



4.2.1.4  U̲P̲C̲O̲ ̲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    U̲P̲C̲O̲ ̲M̲a̲i̲n̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲



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̲

         The responsibility of this module is to receive all
         input items that are associated with semaphore PRIS
         ̲S1, and to process the ones that arrives in the Print
         Queue.



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

         C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

         a)  UPCO ̲MAIN

         b)  UPCO ̲MAIN (R6)

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

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

         R6      LINK                                            (DEST)

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

         R0 - R7                                                 (DEST)

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

         None



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



4.2.1.4.1.3.1 C̲H̲E̲C̲K̲ ̲S̲U̲B̲Q̲U̲E̲U̲E̲

         If a print item is received and PRINTER ̲BUSY ̲FLAG is
         set the item must be a FLASH item and ITEM ̲PRE ̲EMPTED
         FLAG mist be due. These conditions are checked by this
         procedure.



4.2.1.4.1.3.2 P̲R̲O̲ ̲P̲R̲I̲N̲T̲Q̲ ̲I̲T̲E̲M̲

         Processes the arrived printqueue items.



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

         D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲

         ACTIVE ̲FLAG,
         CLOSE ̲DOWN ̲FLAG,
         INPUT ̲QEL,
         INPUT ̲ATTR,
         PRINTER ̲ERROR ̲FLAG,
         AWAITING ̲LOG ̲ACK ̲FLAG,
         PRINTER ̲BUSY ̲FLAG,
         ITEM ̲PREEMPTED ̲FLAG,
         PRINTING ̲SYIE ̲TAB ̲FLAG,
         OPERATION,
         SUBQUEUE:   Ref. sec. 4.2.1.5



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

         Items received in the semaphore PRIS ̲S1 are analysed.

         Print Queue items are processed in this module by the
         procedures PROC ̲PRINTEQ ̲ITEM and CHECK ̲SUBQUEUE.

         Command Queue- and 
         PROP-items are processed by other modules.

         Unexpected items will invoke the error reporting 
                                     procedure,which handles
                                     all internally detected
                                     errors.




         UPCO-MAIN

             SET ACTIVE ̲FLAG = FALSE

             DEFINE ̲FORMAT ̲AREA

             R̲E̲C̲E̲I̲V̲E̲ ̲C̲M̲D̲ ̲(̲4̲.̲2̲.̲1̲.̲6̲.̲7̲)̲

             FOREVER LOOP

                 WAIT ̲OPSEM(PRIS ̲S1)(OPERATION): OK

                 CASE  OPERATION.ID  OF:

                     CMDQ ̲ITEM?      P̲R̲O̲C̲E̲S̲S̲ ̲C̲M̲D̲ ̲Q̲ ̲I̲T̲E̲M̲(̲4̲.̲2̲.̲1̲.̲4̲.̲2̲)̲

                     PRINTQ ̲ITEM?    P̲R̲O̲C̲E̲S̲S̲ ̲P̲R̲I̲N̲T̲ ̲Q̲ ̲I̲T̲E̲M̲

                     PROP ̲ITEM?      P̲R̲O̲C̲E̲S̲S̲ ̲P̲R̲O̲P̲ ̲I̲T̲E̲M̲(̲4̲.̲2̲.̲1̲.̲4̲.̲5̲)̲

                     OTHERWISE?      E̲R̲R̲O̲R̲ ̲R̲E̲P̲ ̲(̲I̲N̲I̲T̲,̲ ̲C̲O̲N̲,̲ ̲1̲,̲
                                     ̲1̲,̲ ̲0̲,̲ ̲1̲,̲ ̲N̲I̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

                 END CASE

             END FOREVER LOOP

         END















                    Fig. 4.2.1.4.1.5-1



4.2.1.4.2    P̲r̲o̲c̲e̲s̲s̲ ̲C̲M̲D̲ ̲Q̲ ̲I̲t̲e̲m̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲



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

         The module analyses the items arriving in the Command
         Queue.

         Stop, Close and Resume-DEMCO Commands, Timeouts and
         Log-Acknowledges are processed by this module.

         Start DEMCO-Command and
         FLASH Notifications are processed by other modules.



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

         C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

         a)  PROCESS ̲CMD ̲Q ̲ITEM

         b)  PROCESS ̲CMD ̲Q ̲ITEM(R6)

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

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

         R6      LINK

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

         R0 - R7                     (DEST)

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

         None



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



4.2.1.4.2.3.1 C̲L̲O̲S̲E̲ ̲D̲O̲W̲N̲ ̲P̲R̲O̲C̲

         Carries out processing of a CLOSE ̲DOWN command from
         DEMCO.



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

         Processes a RESUME ̲COMMAND form DEMCO by restarting
         a possible interrupted item.



4.2.1.4.2.3.3 A̲N̲A̲L̲Y̲S̲E̲ ̲S̲S̲C̲ ̲C̲M̲D̲

         Analyses and takes action on a received SSC (DEMCO)
         commando.



4.2.1.4.2.3.4 A̲N̲A̲L̲Y̲S̲E̲ ̲T̲I̲M̲E̲O̲U̲T̲

         Processes an arrived FLASH timeout. It cheks whether
         an item is to be preempted or not.



4.2.1.4.2.3.5 A̲N̲A̲L̲Y̲S̲E̲ ̲A̲C̲K̲N̲O̲W̲L̲E̲D̲G̲E̲

         Processes LOG ̲ACKs and determines which action to be
         dependent of the current state of the subprocess.



4.2.1.4.2.3.6 A̲N̲A̲L̲Y̲S̲E̲ ̲T̲E̲P̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲

         Processes RETURN ̲SYIE ̲TAB ̲FILE commands from SPIP (Supervisor
         Printer Process).



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

         D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲

         PRT ̲DATA



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

         The module receives the CMD ̲Q items and analyses them
         by testing the QEL-Attributes and the internal flags.
         The most important actions taken by this module are:
         invoking other modules, sending commands to PROP, requesting
         timeouts and manipulating the flags.





   PROCESS ̲CMD ̲Q ̲ITEM

       PENDING ̲INIT ̲RECEIVE ̲CMD EQ FALSE?

       SET PENDING ̲INIT ̲RECEIVE ̲CMD = FALSE

             E̲R̲R̲O̲R̲ ̲R̲E̲P̲(̲I̲N̲T̲,̲ ̲C̲O̲N̲,̲ ̲1̲,̲ ̲2̲,̲ ̲0̲,̲ ̲1̲,̲ ̲N̲I̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

       CASE WAIT ̲SYSTEM ̲CALL(OPERATION)
                     (ATTR, QEL, SUBQUEUE, CC): ERROR
                     ̲OK

         ERROR?  ANALYZE ̲ERROR(CC,0): OK

         OK?     ATTR NE INPUT ̲ATTR?   E̲R̲R̲O̲R̲ ̲R̲E̲P̲(̲I̲N̲T̲,̲
                 ̲G̲U̲P̲,̲ ̲1̲,̲ ̲2̲,̲ ̲0̲,̲
                                                   2̲,̲
                                     ̲N̲I̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

                 SET INPUT ̲QEL = QEL

                 CASE INPUT ̲ATTR.HEADER.MAINTYPE OF:

                     SSC ̲COMMAND?    A̲N̲A̲L̲Y̲S̲E̲ ̲S̲S̲C̲ ̲C̲M̲D̲

                     TIME ̲OUT?       A̲N̲A̲L̲Y̲S̲E̲ ̲T̲I̲M̲E̲ ̲O̲U̲T̲

                     FLASH ̲NOTIFICATION?

                        A̲N̲A̲L̲Y̲S̲E̲ ̲F̲L̲A̲S̲H̲ ̲N̲O̲T̲I̲F̲I̲C̲A̲T̲I̲O̲N̲(̲4̲.̲2̲.̲1̲.̲4̲.̲4̲)̲

                     ACK?  A̲N̲A̲L̲Y̲S̲E̲ ̲A̲C̲K̲N̲O̲W̲L̲E̲D̲G̲E̲

                     TEP ̲INTERNAL? - A̲N̲A̲L̲Y̲S̲E̲ ̲T̲E̲P̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲

                     OTHERWISE?      E̲R̲R̲O̲R̲ ̲R̲E̲P̲(̲Q̲E̲R̲,̲ ̲C̲O̲N̲,̲
                                     ̲1̲,̲ ̲2̲,̲ ̲0̲,̲ ̲3̲,̲
                                                       Q̲E̲L̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

                          R̲E̲C̲E̲I̲V̲E̲ ̲C̲M̲D̲(̲4̲.̲2̲.̲1̲.̲6̲.̲7̲)̲



                 END ̲CASE

       END ̲CASE

   END





                  Fig. 4.2.1.4.2-1



4.2.1.4.3    U̲P̲C̲O̲ ̲I̲N̲I̲T̲I̲A̲L̲I̲Z̲A̲T̲I̲O̲N̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲



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

         This module is called by the PROCESS ̲CMD ̲Q ̲ITEM-module
         and takes care of the initializing actions connected
         with UPCO. It reads the appropriate system parameters,
         connects the subprocess to the printer and the Format
         Handler, initializes some of the variables and invokes
         PROP by sending an INITIALIZE ̲PROP CMD.



4.2.1.4.3.2 I̲n̲t̲e̲r̲f̲a̲c̲e̲

         C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

         a)  UPCO ̲INITIALIZATION

         b)  UPCO ̲INITIALIZATION (R6)

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

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

         R6      LINK

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

         R0 - R7                     (DEST)

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

         None



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

         N/A





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

         D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲

         REF PRT ̲DATA

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

         DEVICE ̲TABLE                : Ref. CPS/DBD/001 sec.
                                     5.3.3



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

         Ref. Code.



4.2.1.4.4    A̲n̲a̲l̲y̲s̲e̲ ̲F̲l̲a̲s̲h̲ ̲N̲o̲t̲i̲f̲i̲c̲a̲t̲i̲o̲n̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲



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

         The module analyses the arrived FLASH Notification
         and the status of the Printer Subprocess and determines
         the actions to be taken.



4.2.1.4.4.2 I̲n̲t̲e̲r̲f̲a̲c̲e̲

         C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

         a)  ANALYSE ̲FLASH ̲NOTIFICATION 

         b)  ANALYSE ̲FLASH ̲NOTIFICATION (R6)

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

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

         R6      LINK

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

         R0 - R7                     (DEST)

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

         None





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

         N/A



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

         D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲

         REF ̲PRT ̲DATA

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

         PRIS ̲TIMEOUT ̲PARAM : REQUEST ̲TIME ̲RELATIVE;



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

         If the Printer is out of action the arrived FLASH item
         and a notification are sent to MDCO.

         If the subprocess is already executing a FLASH-item,
         the notification will be ignored.

         If the Subprocess is not executing a FLASH-item a preemption
         timeout will be requested.




   ANALYSE ̲FLASH ̲NOTIFICATION

       CASE  ATTR.HEADER.SUBTYPE OF:

         SUPERFLASH ̲ITEM ̲ARRIVED?

         FLASH ̲ITEM ̲ARRIVED?

                 ACTIVE ̲FLAG EQ FALSE?

                 PRINTER ̲ERROR ̲FLAG EQ TRUE?

                 CLOSE ̲DOWN ̲FLAG EQ TRUE?

                             F̲L̲A̲S̲H̲ ̲I̲T̲E̲M̲S̲ ̲T̲O̲ ̲M̲D̲C̲O̲(̲4̲.̲2̲.̲1̲.̲4̲.̲8̲)̲

                 PRINTER ̲BUSY ̲FLAG EQ FALSE?

                 EXECUTING ̲FLASH ̲FLAG EQ TRUE?



                 G̲E̲T̲ ̲P̲R̲I̲N̲T̲E̲R̲ ̲P̲A̲R̲A̲M̲E̲T̲E̲R̲S̲(̲4̲.̲2̲.̲1̲.̲6̲.̲1̲)̲

                                                                    
                 R̲E̲Q̲U̲E̲S̲T̲ ̲P̲R̲E̲E̲M̲P̲T̲I̲O̲N̲ ̲T̲I̲M̲E̲O̲U̲T̲(̲-̲2̲)̲

         OTHERWISE?  E̲R̲R̲O̲R̲ ̲R̲E̲P̲(̲Q̲E̲R̲,̲ ̲C̲O̲N̲,̲ ̲1̲,̲4̲,̲F̲F̲F̲F̲,̲1̲,̲Q̲E̲L̲,̲R̲6̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

       END ̲CASE

       R̲E̲C̲E̲I̲V̲E̲ ̲C̲M̲D̲(̲4̲.̲2̲.̲1̲.̲6̲.̲7̲)̲

   END "ANALYSE FLASH NOTIFICATION"











                  Fig. 4.2.1.4.4-1



4.2.1.4.5    P̲R̲O̲C̲E̲S̲S̲ ̲P̲R̲O̲P̲ ̲I̲T̲E̲M̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲



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

         The module analyses the various items received from
         PROP.



4.2.1.4.5.2 I̲n̲t̲e̲r̲f̲a̲c̲e̲

         C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

         a)  PROCESS ̲PROP ̲ITEM

         b)  PROCESS ̲PROP ̲ITEM (R6)

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

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

         R6      LINK

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

         R0 - R7                     (DEST)

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

         None



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

         N/A





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

         D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲

         Ref. PRT ̲DATA



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

         The OPERATION.ITEM ̲NAME is tested in order to determine
         the PROP item type.

         If an error is reported, possible FLASH-items awaiting
         execution are sent to MDCO and the PRINTER ̲ERROR ̲FLAG
         is set. Destinction is made between PAPER ̲LOW and other
         errors. If PAPER ̲LOW occurs the subprocess will wait
         for a RESUME cmd from DEMCO.

         Initialize ̲CC will cause opening for receiption of
         print items.

         Abandon ̲CC will cause all opened views connected with
         this subprocess to be closed and all QEL's owned by
         the subprocess to be returned to the queue.




…02…PROCESS ̲PROP ̲ITEM

       CASE OPERATION.ITEM ̲NAME OF:

          CONNECTION ̲ERROR

          PAPER ̲LOW?                  P̲R̲O̲C̲ ̲P̲R̲O̲P̲ ̲E̲R̲R̲O̲R̲
                                     ̲R̲E̲P̲

          PROP ̲INITIALIZE ̲CC?        P̲R̲O̲C̲ ̲P̲R̲O̲P̲ ̲I̲N̲I̲T̲I̲A̲L̲Z̲E̲
                                     ̲C̲C̲

          ABANDON ̲CC?                P̲R̲O̲C̲ ̲A̲B̲A̲N̲D̲O̲N̲ ̲C̲C̲

          PREEMPT ̲CC?                P̲R̲O̲C̲ ̲P̲R̲E̲E̲M̲P̲T̲ ̲C̲C̲(̲4̲.̲2̲.̲1̲.̲6̲.̲8̲.̲)̲

          PRINT ̲COMPLETE ̲REP?        P̲R̲O̲C̲ ̲P̲R̲I̲N̲T̲ ̲C̲O̲M̲P̲L̲E̲T̲E̲
                                     ̲R̲E̲P̲

          REQUEST ̲DATA?              P̲R̲O̲C̲ ̲R̲E̲Q̲U̲E̲S̲T̲ ̲D̲A̲T̲A̲

          OTHERWISE?     E̲R̲R̲O̲R̲ ̲R̲E̲P̲(̲I̲N̲T̲,̲C̲O̲N̲,̲1̲,̲5̲,̲F̲F̲F̲F̲,̲1̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲



       END CASE

   END























                  Fig. 4.2.1.4.5-1


4.2.1.4.6    P̲R̲I̲N̲T̲ ̲C̲O̲M̲P̲L̲E̲T̲E̲ ̲A̲C̲T̲I̲O̲N̲S̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲



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

         The module determines - and carries out some of - the
         actions to be taken when a printing action has been
         completed.



4.2.1.4.6.2 I̲n̲t̲e̲r̲f̲a̲c̲e̲

         C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

         a)  PRINT ̲COMPLETE ̲ACTIONS

         b)  PRINT ̲COMPLETE ̲ACTIONS (R6)

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

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

         R6      LINK

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

         R0 - R7                     (DEST)

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

         None



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



4.2.1.4.6.3.1 CHECK ̲FLASH ̲QS

         is used to check if any FLASH items are awaiting Print
         before a preempted item is restored.



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

         Ref. PRT ̲DATA





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

         First possible reply is sent then the item is dismantled.
         Cleaning up and appropriate accounting are carried
         out. Otherwise PROP is ordered to print one more copy.

         If an item is preempted it will be checked if there
         are any FLASH-items awaiting printout. In case there
         is at least one, the first of them will be activated.




4.2.1.4.7    U̲P̲C̲O̲ ̲P̲R̲E̲E̲M̲P̲T̲ ̲R̲E̲S̲T̲O̲R̲E̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲



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

         The Module takes care of saving appropriate variables
         pertinent to an item which is to be preempted. It orders
         PROP to make preemption.

         The Module also restores the status of an earlier preempted
         item.



4.2.1.4.7.2 I̲n̲t̲e̲r̲f̲a̲c̲e̲

         C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

         a)  UPCO ̲PREEMPT ̲RESTORE
                     (PROC ̲SWITCH: PRESTORE ̲SWITCH)

         b)  UPCO ̲PREEMPT ̲RESTORE(R1, R6)

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

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

         R1          Procedure indicatior  (DEST)

         R6      LINK

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

         R0 - R7                            (DEST)

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

         None



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

         N/A



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

         D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲

         Ref. PRT ̲DATA



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

         The module consists of two parts, one for preempting
         and one for restoring. The choice between them is based
         on the call-parameter PROCEDURE.

         The preempting procedure stores the appropriate variable
         values in a set of local variables. A preemption command
         to PROP is issued.

         The restoring procedure restores the values of the
         earlier saved variables.




4.2.1.4.8    F̲L̲A̲S̲H̲ ̲I̲T̲E̲M̲S̲ ̲T̲O̲ ̲M̲D̲C̲O̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲



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

         The module searches the FLASH Queue and sends possible
         FLASH-items to MDCO.



4.2.1.4.8.2 I̲n̲t̲e̲r̲f̲a̲c̲e̲

         C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

         a)  FLASH ̲ITEMS ̲TO ̲MDCO

         b)  FLASH ̲ITEMS ̲TO ̲MDCO (R6)

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

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

         R6      LINK

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

         R0 - R7                     (DEST)

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

         None



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



4.2.1.4.8.3.1 S̲E̲N̲D̲ ̲T̲O̲ ̲M̲D̲C̲O̲

         Sends items received by mainprocedure to the specified
         MDCO-Subqueue together with a FLASH Notification.



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

         D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲

         Ref. PRT ̲DATA





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

         The module consists mainly of a Loop which is run through
         until they are empty for the subqueues PREC1 and FLASH.
         All FLASH items  are sent to MDCO together with a FLASH-Notification.
         



4.2.1.4.9    P̲R̲I̲N̲T̲I̲N̲G̲ ̲P̲R̲E̲P̲A̲R̲A̲T̲I̲O̲N̲S̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲



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

         The module takes care of the neccessary preparations
         to be made before printout of an item can begin.

         The Print parameters are read. For CIF items the view
         is opened. For file items the SYIE ̲TAB ̲FILE is opened.



4.2.1.4.9.2 I̲n̲t̲e̲r̲f̲a̲c̲e̲

         C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

         a)  PRINTING ̲PREPARATIONS

         b)  PRINTING ̲PREPARATIONS (R6)

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

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

         R6  LINK

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

         R0 - R7     DESTROYED

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

         NONE




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



4.2.1.4.9.3.1    P̲R̲O̲C̲ ̲I̲T̲E̲M̲ ̲N̲O̲T̲ ̲F̲O̲R̲ ̲P̲R̲I̲N̲T̲

         The procedure carries out the actions to be taken when
         an item not for print has been detected.



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

         D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲

         Ref. PRT ̲DATA



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

         The PRINT ̲ITEM ̲CATEGORY is determined by a separate
         module and is used to destinguish between the different
         item types



4.2.1.4.10 D̲E̲T̲E̲R̲M̲I̲N̲E̲ ̲P̲R̲I̲N̲T̲ ̲I̲T̲E̲M̲ ̲C̲A̲T̲E̲G̲O̲R̲Y̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲ ̲



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

         The Module that is called by the PRINTING PREPARATIONS
         Module determines which category (Single QEL, Buffer
         or view) the print item belongs to.



4.2.1.4.10.2 I̲n̲t̲e̲r̲f̲a̲c̲e̲

         C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

         a)  DETERMINE ̲PRINT ̲ITEM ̲CATEGORY

         b)  DETERMINE ̲PRINT ̲ITEM ̲CATEGORY (R6)

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

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

         R6  LINK

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

         R0 - R7     DESTROYED

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

         NONE



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



4.2.1.4.10.3.1 C̲H̲K̲ ̲M̲S̲G̲ ̲S̲U̲B̲ ̲T̲Y̲P̲

         The procedure checks whether the SUBTYPE of a Message,
         Comment etc. is legal.





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

         The procedure fetches the logical terminal designator
         from INFORMATION  1  and the transaction serial number
         from INFORMATION  2  of the QEL. The logical terminal
         designator is connected to a real designator and the
         transaction serial no. is converted to ASCII.



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

         D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲

         Ref. PRT ̲DATA

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

         PRINT ̲ACCOUNTING ̲TABLE : Ref. CPS/DBD/OO1 sec. 9



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

         First numerical format id is determined by casing on
         MAINTYPE, SUBTYPE and FLAGS. Then the print item category
         is determined. Unknown item types will be given the
         category NOT ̲FOR ̲PRINT. PRINTING ̲PREP will then issue
         a SEND ̲GARBLE call with Q ̲ERROR.