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

⟦3f17b791a⟧ Wang Wps File

    Length: 30285 (0x764d)
    Types: Wang Wps File
    Notes: CPS/SDS/041               
    Names: »1493A «

Derivation

└─⟦7955290a6⟧ Bits:30005803 8" Wang WCS floppy, CR 0106A
    └─ ⟦this⟧ »1493A « 

WangText



#…06…#…07……0c……05……0b……0b……0b……00……0b…
…0b…    …0b……05……0b……06……0b……07……0a……08……0a……09……0a……0c……0a……0f……0a……02……0a……05……0a……06……09……09……09……0b……09……0d……09……01……09…
…09……05……09……06……08……08……08……09……08……0b……08……0c……08……0e……08……86…1    
      
      
      
      
      
      
     …02… 
      
    …02…  
 …02…     
   

…02…CPS/SDS/041

…02… KS/811201…02……02…
PRINTER
DETAILED
 DESIGN
 SPECIFICATION…02……02…CAMPS









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

         TBD.



4.2.2    P̲r̲i̲n̲t̲e̲r̲ ̲O̲u̲t̲p̲u̲t̲ ̲S̲u̲b̲p̲a̲c̲k̲a̲g̲e̲

         The P̲rinter O̲utp̲ut (PROP) coroutine is performing the
         actions in connection with formatting and output of
         the test to be printed.

         PROP is controlled by the other coroutine (UPCO).



4.2.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 following functions are performed by this subpackage
         (ref. fig. 4.2.2-1):

         UPCO Control Functions
         Command Completion and Error Report functions

         Format Control

         Printout







                       Fig. 4.2.2-1


4.2.2.1.1    U̲P̲C̲O̲ ̲C̲o̲m̲m̲a̲n̲d̲ ̲E̲x̲e̲c̲u̲t̲i̲o̲n̲ ̲(̲1̲.̲0̲)̲

         The UPCO Command Execution functions carry out execution
         of the command issued by UPCO.

         a)  I̲n̲i̲t̲i̲a̲l̲i̲z̲e̲ ̲(̲1̲.̲1̲)̲

             The Initialize command is issued for initialization
             of PROP's working area, i.e. variables and buffers.
              A CC-Report is to be sent to UPCO, ref. sec. 4.2.2.1.2.c.

         b)  C̲o̲m̲m̲e̲n̲c̲e̲ ̲(̲1̲.̲2̲)̲

             Upon receipt of a Commence-CMD, PROP will start
             printing the current item.  

         c)  A̲b̲a̲n̲d̲o̲n̲ ̲(̲1̲.̲3̲)̲

             The Abandon ̲Print Command will cause the printing
             actions to be stopped immediately.  All outstanding
             I/O requests will be cancelled and the working
             area will be cleared.

             Completion will be reported to UPCO, ref. sec.
             4.2.2.1.2.c.

         d)  C̲o̲n̲t̲i̲n̲u̲e̲ ̲(̲1̲.̲4̲)̲

             The Continue Command causes the printout of the
             current item to be continued from a well-defined
             point.  It is used when the printing actions have
             earlier been stopped because of paper out on the
             printer.

         e)  R̲e̲s̲t̲a̲r̲t̲ ̲(̲1̲.̲5̲)̲

             The Restart Command will restart printing of a
             preempted item from a well-defined point.

         f)  P̲r̲e̲e̲m̲p̲t̲ ̲(̲1̲.̲6̲)̲

             Printout of the current item will be stopped and
             status will be stored for later restart.  Completion
             will be reported to UPCO, ref. sec. 4.2.2.1.2.c.


4.2.2.1.2    C̲o̲m̲m̲a̲n̲d̲ ̲C̲o̲m̲p̲l̲e̲t̲i̲o̲n̲ ̲a̲n̲d̲ ̲E̲r̲r̲o̲r̲ ̲R̲e̲p̲o̲r̲t̲ ̲F̲u̲n̲c̲t̲i̲o̲n̲s̲ ̲(̲2̲.̲0̲)̲

         These functions handle the receiption and sending of
         completion and error reports.

         a)  P̲r̲o̲c̲e̲s̲s̲i̲n̲g̲ ̲o̲f̲ ̲I̲O̲C̲ ̲C̲o̲m̲p̲l̲e̲t̲i̲o̲n̲ ̲C̲o̲d̲e̲s̲ ̲(̲2̲.̲1̲)̲

             When printout data is sent to IOC in a buffer,
             IOC will respond with a Completion Code.  The Completion
             Code will contain information about eventual printer
             errors.

         b)  S̲e̲n̲d̲ ̲E̲r̲r̲o̲r̲ ̲R̲e̲p̲o̲r̲t̲ ̲t̲o̲ ̲U̲P̲C̲O̲ ̲(̲2̲.̲2̲)̲

             Upon detection of an error, a report will be sent
             to UPCO.

         c)  S̲e̲n̲d̲ ̲C̲o̲m̲m̲a̲n̲d̲ ̲C̲o̲m̲p̲l̲e̲t̲i̲o̲n̲ ̲R̲e̲p̲o̲r̲t̲ ̲t̲o̲ ̲U̲P̲C̲O̲ ̲(̲2̲.̲3̲)̲

             Completion of some of the UPCO commands is to be
             reported back, ref. sec. 4.2.2.1.1.a,c,f.

         d)  S̲e̲n̲d̲ ̲P̲r̲i̲n̲t̲ ̲C̲o̲m̲p̲l̲e̲t̲e̲ ̲R̲e̲p̲o̲r̲t̲ ̲t̲o̲ ̲U̲P̲C̲O̲ ̲(̲2̲.̲4̲)̲

             On completion of item printout, UPCO will be notified.



4.2.2.1.3    F̲o̲r̲m̲a̲t̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲(̲3̲.̲0̲)̲

         The Format Control functions are taking care of access
         to and input from the P̲rint F̲ormat F̲ile.

         a)  D̲e̲t̲e̲r̲m̲i̲n̲e̲ ̲F̲o̲r̲m̲a̲t̲ ̲A̲d̲d̲r̲e̲s̲s̲ ̲i̲n̲ ̲P̲F̲F̲ ̲(̲3̲.̲1̲)̲

             The Format Descriptor Records pertinent to each
             format are stored sequentially in the PFF.  This
             function determines the start address of the current
             format from the PFF-Directory.

         b)  T̲r̲a̲n̲s̲f̲e̲r̲ ̲D̲a̲t̲a̲ ̲F̲r̲o̲m̲ ̲P̲F̲F̲ ̲t̲o̲ ̲F̲D̲B̲ ̲(̲3̲.̲2̲)̲

             Before being processed, the Format Descriptor Records
             must be transferred to the F̲ormat D̲escriptor B̲uffer
             (FDB), which is a part of PROP's working area.



4.2.2.1.4    P̲r̲i̲n̲t̲o̲u̲t̲ ̲(̲4̲.̲0̲)̲

         The printout functions carries out the actual Text-conversion
         , -formatting and -output.

         a)  I̲n̲p̲u̲t̲ ̲D̲a̲t̲a̲ ̲F̲r̲o̲m̲ ̲C̲I̲F̲ ̲(̲4̲.̲1̲)̲

             If the current item is stored in a CIF, this function
             will take care of transferring data from the CIF
             to the Source Buffer.

         b)  T̲r̲a̲n̲s̲f̲e̲r̲ ̲D̲a̲t̲a̲ ̲F̲r̲o̲m̲ ̲I̲t̲e̲m̲ ̲B̲u̲f̲f̲e̲r̲ ̲(̲4̲.̲2̲)̲

             If the current item is contained in a buffer, this
             function transfers the data to PRIS's Source Buffer.

         c)  C̲o̲n̲v̲e̲r̲t̲ ̲D̲a̲t̲a̲ ̲F̲o̲r̲ ̲O̲u̲t̲p̲u̲t̲ ̲(̲4̲.̲3̲)̲

             This function is responsible for converting the
             data in the FDR and the Source Buffer so that it
             can be printed.

         d)  L̲o̲a̲d̲ ̲C̲o̲n̲v̲e̲r̲t̲e̲d̲ ̲D̲a̲t̲a̲ ̲I̲n̲t̲o̲ ̲O̲u̲t̲p̲u̲t̲ ̲B̲u̲f̲f̲e̲r̲ ̲(̲4̲.̲4̲)̲

             When the data has been converted (ref. sec. 4.2.2.1.4-c),
             this function loads it into a buffer for Output.

         e)  L̲o̲a̲d̲ ̲H̲e̲a̲d̲e̲r̲/̲T̲r̲a̲i̲l̲e̲r̲ ̲I̲n̲f̲o̲.̲ ̲I̲n̲t̲o̲ ̲O̲u̲t̲p̲u̲t̲ ̲B̲u̲f̲f̲e̲r̲ ̲(̲4̲.̲5̲)̲

             The Page Header/Trailer information, which is produced
             by UPCO and updated by UPCO and PROP, is appended
             to the Output Buffer.

         f)  O̲u̲t̲p̲u̲t̲ ̲B̲u̲f̲f̲e̲r̲ ̲(̲4̲.̲6̲)̲

             This function sends the Output buffer to IOC for
             output.

         g)  P̲a̲g̲e̲/̲L̲i̲n̲e̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲(̲4̲.̲7̲)̲

             Page and Line control keeps account of the number
             of printed lines on each page and provides page
             shift actions when appropriate.


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

         Two kinds of items can be sent to semaphore S2 and
         thus invoke PROP.

         a)  The UPCO Commands, which are used by UPCO to Control
             PROP.

         b)  The IOC Completion Codes, which are used by PROP
             to synchronize and control its printout actions.

         The software structure is depicted in fig. 4.2.2.2-1.

         The description of each component is very similar to
         the one in the functional specification (sec. 4.2.2.1),
         and thus it shall not be repeated here.








                      Fig. 4.2.2.2-1


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

         








                      Fig. 4.2.2.3-1







                      Fig. 4.2.2.3-2







                     Fig. 4.2.2.3.-3







                      Fig. 4.2.2.3-1


4.2.2.4  P̲R̲O̲P̲ ̲M̲o̲d̲u̲l̲e̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲s̲



4.2.2.4.1    P̲R̲O̲P̲ ̲M̲A̲I̲N̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

         PROP ̲MAIN contains the PROP ̲MAIN ̲LOOP.  It waits at
         Semaphore PRIS-S2, and takes appropriate actions upon
         receipt of input items.



4.2.2.4.1.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̲s̲

         a)  PROP ̲MAIN
         b)  PROP ̲MAIN

         The module is only called by the Coroutine Monitor.



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

         N/A



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

         TBD



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

         In the MAIN ̲LOOP, it is checked whether the arrived
         items are legal or not.

         All legal UPCO ̲Commands are executed by the 
         ANALYSE ̲UPCO ̲CMD module while I0 Completions are processed
         by this module.


         PROP ̲MAIN


             A̲L̲L̲O̲W̲ ̲(̲I̲N̲I̲T̲I̲A̲L̲I̲Z̲E̲)̲(4.2.2.6.3)


             PROP ̲MAIN ̲LOOP


               WAIT ̲OPSEM(PRIS ̲S2)(PROP ̲OP): OK


               PROP ̲OP.ITEM ̲NAME AND PROP ̲MASK EQ Q?

                                 P̲R̲O̲P̲ ̲E̲R̲R̲O̲R̲ (TBD)(4.2.2.4.9)

               CASE PROP ̲CP.ID OF:


                   UPCO ̲CMD?      A̲N̲A̲L̲Y̲S̲E̲ ̲U̲P̲C̲O̲ ̲C̲M̲D̲ ̲(4.2.2.4.2)

                   PROP ̲IO ̲CC?    P̲R̲O̲C̲ ̲I̲O̲ ̲C̲C̲ ( - 2)



                   OTHERWISE?     P̲R̲O̲P̲ ̲E̲R̲R̲O̲R̲  (TBD) (4.2.2.4.9)




               END ̲CASE





           END PROP ̲MAIN ̲LOOP


         END






                    Fig. 4.2.2.4.1.5-1


         PROC ̲IO ̲CC


             DECREMENT OUTSTANDING ̲IO ̲S


             CASE  SYS ̲WAIT (PROP ̲OP)(CC):  ERROR ̲OK


                ERROR? CASE  ANALYSE ̲ERROR (CC, 2,
                                            CONN ̲ERR,
                                            PAPER ̲LOW)
                                            :(IO ̲ERR 1
                                             IO ̲ERR 2)


                          IO ̲ERR1?  P̲A̲P̲E̲R̲ ̲L̲O̲W̲ ̲A̲C̲T̲I̲O̲N̲S̲ (4.2.2.6.1)


                          IO ̲ERR2?  C̲O̲N̲N̲ ̲E̲R̲R̲ ̲A̲C̲T̲I̲O̲N̲S̲  (4.2.2.6.2)



                OK? END ̲OF ̲TIME ̲FLAG EQ FALSE? D̲A̲T̲A̲ ̲C̲O̲N̲V̲E̲R̲S̲I̲O̲N̲
             ̲O̲U̲T̲P̲U̲T̲
                                                      (4.2.2.4.4)


                    OUTSTANDING ̲IO ̲S GT 0



                    REP ̲TO ̲UPCO (PRINT ̲COMPLETE ̲REP)(4.2.2.6.4)





           END ̲CASE


         END



                    Fig. 4.2.2.4.1.5-2



4.2.2.4.2    A̲N̲A̲L̲Y̲S̲E̲ ̲U̲P̲C̲O̲ ̲C̲M̲D̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲



4.2.2.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 UPCO-Commands received from PRIS
         ̲S2 and executes them.



4.2.2.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)  ANALYSE ̲UPCO ̲CMD
             b)  ANALYSE ̲UPCO ̲CMD (R6):  OK

             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̲

             R7  LINK                  (Dest.)

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

             All Registers are Destroyed

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

             None.



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

         N/A.



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

         TBD.





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

         The Commands are distinguished by the ITEM ̲NAME field
         of the actual operation.

         The Module mainly operates on data shared with UPCO.


         ANALYSE ̲UPCO ̲CMD



             CASE  PROP ̲OP.ITEM ̲NAME ̲OF:


                 INITIALIZE ̲PROP?   P̲R̲O̲P̲ ̲I̲N̲I̲T̲I̲A̲L̲I̲Z̲A̲T̲I̲O̲N̲ ( -
                 2   )


                 COMMENCE?         S̲T̲A̲R̲T̲ ̲P̲R̲I̲N̲T̲ ̲A̲C̲T̲I̲O̲N̲S̲ ( - 5
                    )


                 RESTART?          R̲E̲S̲T̲A̲R̲T̲ ̲P̲R̲I̲N̲T̲I̲N̲G̲    ( - 8
                    )


                 CONTINUE?         C̲O̲N̲T̲I̲N̲U̲E̲ ̲P̲R̲I̲N̲T̲I̲N̲G̲   ( - 7
                    )


                 PREEMPT?          P̲R̲E̲E̲M̲P̲T̲ ̲P̲R̲I̲N̲T̲I̲N̲G̲    ( - 10
                   )


                 ABANDON?          A̲B̲A̲N̲D̲O̲N̲ ̲P̲R̲I̲N̲T̲I̲N̲G̲    ( - 12
                   )



                 OTHERWISE ?       P̲R̲O̲P̲ ̲E̲R̲R̲O̲R̲ ̲(̲T̲B̲D̲)̲    (4.2.2.4.9)



             END ̲CASE



         END











                    Fig. 4.2.2.4.2.5-1


         PROP ̲INITIALIZATION



            I̲N̲I̲T̲I̲A̲L̲I̲Z̲E̲ ̲P̲R̲O̲P̲ ̲W̲O̲R̲K̲ ̲A̲R̲E̲A̲ (   - 3  )





            P̲R̲I̲N̲T̲ ̲S̲T̲A̲R̲T̲ ̲U̲P̲ ̲M̲E̲S̲S̲A̲G̲E̲    (   - 4  )


















            R̲E̲P̲ ̲T̲O̲ ̲U̲P̲C̲O̲ ̲(̲P̲R̲O̲P̲ ̲I̲N̲I̲T̲I̲A̲L̲I̲Z̲E̲ ̲C̲C̲)̲ (4.2.2.6.4)


            A̲L̲L̲O̲W̲ ̲(̲C̲O̲M̲M̲E̲N̲C̲E̲ ̲+̲ ̲A̲B̲A̲N̲D̲O̲N̲)̲ (4.2.2.6.3)



         END


                    Fig. 4.2.2.4.2.5-2


         INITIALIZE ̲PROP ̲WORK ̲AREA



            SET OUTSTANDING ̲IO ̲S  = 0


            DETERMINE ̲MAX ̲OUTPUT ̲BUFFER ̲LENGTH



            INITIALIZE ̲PROP ̲FLAGS






            R̲E̲S̲E̲T̲ ̲O̲U̲T̲P̲U̲T̲ ̲B̲L̲E̲ ̲P̲O̲I̲N̲T̲E̲R̲S̲ (4.2.2.6.7)



         END
























                    Fig. 4.2.2.4.2.5-3


         PRINT ̲START ̲UP ̲MESSAGE



           SET   PFF ̲ADDRESS.FIRST ̲BYTE =

                  PFF ̲ADDR ̲ARRAY (START ̲UP ̲MSG).PFF ̲PRINT ̲EXEC



           R̲E̲A̲D̲-̲P̲F̲F̲ ̲D̲A̲T̲A̲ (         )


           SET   FDB ̲POINTER =

                  PFF ̲ADDR ̲ARRAY (START ̲UP ̲MSG).FDB ̲PRINT ̲EXEC


           P̲R̲O̲C̲E̲S̲S̲ ̲F̲D̲R̲ ̲(̲4̲.̲2̲.̲2̲.̲4̲.̲5̲)̲


           SET POINTER ̲TO ̲CURRENT ̲BLE.LINK = NIL

           SET PRINTOUT ̲FILADR.BYTECOUNT = ACTUAL ̲BUFFER ̲LENGTH


           CASE APPEND ̲BYTES (PRINTER ̲CONNECTION ̲ID,
                              PRINTOUT ̲FILADR      ,
                              BLE ̲ARRAY ̲(1)
                             (PRINTOUT ̲FILADR      ,
                              CC): ERROR ̲OK


              ERROR? CASE ANALYSE ̲ERROR(CC.2): (UCONERR,PAP
         ̲L0W)

                        UCONERR?  C̲O̲N̲N̲ ̲E̲R̲R̲ ̲A̲C̲T̲I̲O̲N̲S̲ (4.2.2.6.2)


                        PAP ̲LOW?  P̲A̲P̲E̲R̲ ̲L̲O̲W̲ ̲A̲C̲T̲I̲O̲N̲S̲ (4.2.2.6.1)


                      END CASE

              OK?        R̲E̲S̲E̲T̲ ̲O̲U̲T̲P̲U̲T̲ ̲B̲L̲E̲ ̲P̲O̲I̲N̲T̲E̲R̲S̲ (4.2.2.6.7)


           END ̲CASE

         END
                    Fig. 4.2.2.4.2.5-4


         START ̲PRINT ̲ACTIONS



            CASE    PRINT ̲ITEM ̲CATEGORY OF:


               SINGLE ̲QEL ?


               BUFFER ̲ITEM ?


               IMF ̲ITEM ?      C̲I̲F̲ ̲I̲T̲E̲M̲ ̲P̲R̲E̲P̲ ̲A̲C̲T̲I̲O̲N̲S̲ ( - 2 
             )


               IIF ̲ITEM ?      C̲I̲F̲ ̲I̲T̲E̲M̲ ̲P̲R̲E̲P̲ ̲A̲C̲T̲I̲O̲N̲S̲ ( - 2 
             )



            END ̲CASE


            R̲E̲A̲D̲ ̲P̲F̲F̲ ̲D̲A̲T̲A̲ (4.2.2.6.8)


            SET END ̲OF ̲ITEM = FALSE



            D̲A̲T̲A̲ ̲C̲O̲N̲V̲E̲R̲T̲I̲O̲N̲ ̲O̲U̲T̲P̲U̲T̲ (4.2.2.4.4)







         END








                    Fig. 4.2.2.4.2.5-5


         CIF ̲ITEM ̲PREP ̲ACTIONS


            SET PFF ̲ADDRESS.FIRST ̲BYTE = PFF ̲PRINT ̲EXEC ̲ADDR






            SET FDB ̲POINTER = FDB ̲PRINT ̲EXEC ̲ADDR




         END































                    Fig. 4.2.2.4.2.5-6



         CONTINUE ̲PRINTING


           R̲E̲S̲T̲O̲R̲E̲ ̲C̲O̲N̲T̲I̲N̲U̲A̲T̲I̲O̲N̲ ̲P̲O̲I̲N̲T̲ ̲S̲T̲A̲T̲U̲S̲ (4.2.2.6.6)



           D̲A̲T̲A̲ ̲C̲O̲N̲V̲E̲R̲S̲I̲O̲N̲ ̲O̲U̲T̲P̲U̲T̲ (4.2.2.4.4)



         END



































                    Fig. 4.2.2.4.2.5-7


         RESTART ̲PRINTING






             R̲E̲C̲A̲L̲L̲ ̲C̲O̲N̲T̲I̲N̲U̲A̲T̲I̲O̲N̲ ̲P̲O̲I̲N̲T̲ ̲V̲A̲L̲U̲E̲S̲ ( - 9 )




             R̲E̲S̲T̲O̲R̲E̲ ̲C̲O̲N̲T̲I̲N̲U̲A̲T̲I̲O̲N̲ ̲P̲O̲I̲N̲T̲ ̲S̲T̲A̲T̲U̲S̲ (4.2.2.6.6)






             DATA CONVERSION OUTPUT (4.2.2.4.4)




         END






















                    Fig. 4.2.2.4.2.5-8


         RECALL ̲CONTINUATION ̲POINT ̲VALUES







            SET CONT ̲PT ̲VAL = PREEMPT ̲CONT ̲PT ̲VAL






         END































                    Fig. 4.2.2.4.2.5-9


         PREEMPT ̲PRINTING




            C̲A̲N̲C̲E̲L̲ ̲O̲U̲T̲S̲T̲A̲N̲D̲I̲N̲G̲ ̲T̲O̲ ̲S̲ (4.2.2.4.3)



            S̲T̲O̲R̲E̲ ̲C̲O̲N̲T̲I̲N̲U̲A̲T̲I̲O̲N̲ ̲P̲O̲I̲N̲T̲ ̲V̲A̲L̲U̲E̲S̲ (4.2.2.6.5)





            S̲E̲N̲D̲ ̲R̲E̲P̲ ̲T̲O̲ ̲U̲P̲C̲O̲ ̲(̲P̲R̲E̲E̲M̲P̲T̲ ̲C̲C̲)̲ (4.2.2.6.4)




            A̲L̲L̲O̲W̲ ̲(̲C̲O̲M̲M̲E̲N̲C̲E̲ ̲O̲R̲ ̲A̲B̲A̲N̲D̲O̲N̲)̲ (4.2.2.6.3)





         END




















                   Fig. 4.2.2.4.2.5-10



         STORE ̲CONTINUATION ̲POINT ̲VALUES




           SET  PREEMPT ̲CONT ̲PT ̲VAL = CONT ̲PT ̲VAL





         END



































                   Fig. 4.2.2.4.2.5-11


         ABANDON ̲PRINTING




           C̲A̲N̲C̲E̲L̲ ̲O̲U̲T̲S̲T̲A̲N̲D̲I̲N̲G̲ ̲I̲O̲ ̲S̲ (4.2.2.4.3)









           R̲E̲P̲ ̲T̲O̲ ̲U̲P̲C̲O̲ ̲(̲A̲B̲A̲N̲D̲O̲N̲ ̲C̲C̲)(4.2.2.6.4)



           A̲L̲L̲O̲W̲ ̲(̲I̲N̲I̲T̲I̲A̲L̲I̲Z̲E̲ ̲P̲R̲O̲P̲)̲ (4.2.2.6.3)





         END






















                   Fig. 4.2.2.4.2.5-12


4.2.2.4.3    C̲A̲N̲C̲E̲L̲ ̲O̲U̲T̲S̲T̲A̲N̲D̲I̲N̲G̲ ̲I̲O̲ ̲S̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲



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

         The module cancels all pending system calls initiated
         by PROP.



4.2.2.4.3.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)  CANCEL ̲OUTSTANDING ̲IO ̲S
         b)  CANCEL ̲OUTSTANDING ̲IO ̲S (R6): OK

         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                      (Destr.)

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

         All register are Destroyed.

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

         None.



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



4.2.2.4.3.3.1 C̲H̲E̲C̲K̲ ̲O̲P̲ ̲S̲T̲A̲T̲U̲S̲

         Checks if the operation refers to an outstanding System
         Call, which in case will be cancelled.

         Ref. Fig. 4.2.2.4.3.5-2 and -3.



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

         TBD.


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

         The module checks the OPERATION.STATUS pertinent to
         PROP-Syscalls  in order to determine whether a System
         Call is pending or not.  If there is, it will be cancelled
         by using the coroutine Monitor Procedure 
         SYS ̲CANCEL.


         CANCEL ̲OUTSTANDING ̲IO ̲S



           OUTSTANDING ̲IO ̲S EQ 0?



           SET OP ̲POINTER = PRIS ̲PROP ̲IO ̲OP-1



           C̲H̲E̲C̲K̲ ̲O̲P̲ ̲S̲T̲A̲T̲U̲S̲ ( - 2    )



           SET OP ̲POINTER = PRIS ̲PROP ̲IO ̲OP ̲2




           C̲H̲E̲C̲K̲ ̲O̲P̲ ̲S̲T̲A̲T̲U̲S̲ ( -  2)





           OUTSTANDING ̲IO ̲S NE 0?   P̲R̲O̲P̲ ̲E̲R̲R̲O̲R̲ (TBD) (4.2.2.4.9)



         END















                    Fig. 4.2.2.4.3.5-1


         CHECK ̲OP ̲STATUS




            CASE OP ̲POINTER.STATUS OF:


               PENDING?

               IN ̲SEMAPHORE?           CANCEL ̲IO ( - 3  )



               DONE?




               OTHERWISE?      PROP ̲ERROR (TBD)(4.2.2.4.4)


            END ̲CASE



         END





















                    Fig. 4.2.2.4.3.5-2


         CANCEL ̲IO





           CASE        SYS ̲CANCEL (OP ̲POINTER)

                                  (CC): ERROR ̲OK





              ERROR?        ANALYSE ̲ERROR (CC.0):  OK



              OK?           DECREMENT OUTSTANDING ̲IO ̲S


           END CASE


         END























                    Fig. 4.2.2.4.3.5-3


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



4.2.2.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 controls and executes the conversion, formatting
         and output of data.



4.2.2.4.4.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)  DATA ̲CONVERSION ̲OUTPUT
         b)  DATA ̲CONVERSION ̲OUTPUT (R6): OK

         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                      (Destr.)

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

         All registers are Destroyed.

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

         None.



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

         N/A



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

         TBD





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

         The Data-Conversion and Formatting is controlled by
         the socalled F̲ormat D̲escriptor R̲ecords (FDRs) which
         are used to compose the various Format Descriptions.
          These are stored in the Print Format File (PFF).

         It is checked that the Output Buffer has the appropriate
         length and that the number of outstanding I/O Operations
         not exceed (2).


         DATA ̲CONVERSION ̲OUTPUT



            LINE ̲COUNT  EQ 1?     A̲P̲P̲E̲N̲D̲ ̲H̲E̲A̲D̲E̲R̲  (TBD)

                                  COL ̲HEADER ̲FLAG NE TRUE?

                                  A̲P̲P̲E̲N̲D̲ ̲C̲O̲L̲ ̲H̲E̲A̲D̲E̲R̲ (TBD)



            OUTER ̲LOOP



                INNER ̲LOOP



                   P̲R̲O̲C̲E̲S̲S̲ ̲F̲D̲R̲ (4.2.2.4.5)



                   BUFFER ̲FULL ̲FLAG EQ TRUE?

                   END ̲OF ̲PAGE ̲FLAG EQ TRUE?

                   END ̲OF ̲ITEM ̲FLAG EQ TRUE?      EXIT ̲INNER
                 ̲LOOP


                END ̲INNER ̲LOOP



               END ̲OF ̲PAGE ̲FLAG EQ TRUE?  E̲N̲D̲ ̲O̲F̲ ̲P̲A̲G̲E̲ ̲A̲C̲T̲I̲O̲N̲S̲
             ( - 2  )


               O̲U̲T̲P̲U̲T̲ ̲B̲U̲F̲F̲E̲R̲ (  - 3  )

               OUTSTANDING ̲IO ̲S EQ 2?

               END ̲OF ̲ITEM ̲FLAG EQ TRUE ?   EXIT ̲LOOP

           END ̲OUTER ̲LOOP

         END

                    Fig. 4.2.2.4.4.5-1


         END ̲OF ̲PAGE ̲ACTIONS


           PRINT ̲ITEM ̲CATEGORY EQ IMF ̲ITEM ?    A̲P̲P̲E̲N̲D̲ ̲T̲R̲A̲I̲L̲E̲R̲
         (TBD)




           S̲K̲I̲P̲ ̲T̲O̲ ̲T̲O̲P̲ ̲O̲F̲ ̲P̲A̲G̲E̲ (TBD)



           SET END OF PAGE = FALSE 



           S̲A̲V̲E̲ ̲C̲O̲N̲T̲I̲N̲U̲A̲T̲I̲O̲N̲ ̲P̲O̲I̲N̲T̲ ̲V̲A̲L̲U̲E̲S̲ (4.2.2.6.5)





         END
























                    Fig. 4.2.2.4.4.5-2


         OUTPUT ̲BUFFER



           PRIS ̲PROP ̲IO ̲OP ̲1.STATUS EQ DONE 3


                             SET OPERATION ̲PT = PRIS ̲PROP ̲IO
 ̲OP ̲1


           PRIS ̲PROP ̲IO ̲OP ̲2.STATUS EQ DONE?


                            SET OPERATION ̲PT = PRIS ̲PROP ̲IO
                 ̲OP ̲2




         PROP ̲ERROR (TBD) (4.2.2.4.4)





         SET POINTER ̲TO ̲CURRENT ̲BLE.LINK = NIL

         SET PRINTOUT ̲FILADR.BYTE COUNT = ACTUAL ̲BUFFER ̲LENGTH

         CASE INIT APPEND ̲BYTES (OPERATION ̲PT,
                                 PRINTER ̲CONNECTION ̲ID,
                                 PRINTOUT ̲FILADR,
                                 BLE ̲ARRAY(1),
                                 (PRINTOUT ̲FILADR, CC):  ERROR
                     ̲OK

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


             OK?      RESET ̲OUTPUT ̲BLE ̲POINTERS (4.2.2.6.7)


                      INCREMENT OUTSTANDING ̲IO ̲S

                      ASSOCIATE (PRIS ̲S2, OPERATION ̲PT):  OK


           END CASE

         END

                    Fig. 4.2.2.4.4.5-3


4.2.2.4.5    P̲R̲O̲C̲E̲S̲S̲ ̲F̲D̲R̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲



4.2.2.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 works mainly as slave module for the DATA
         ̲CONVERSION ̲OUTPUT ̲Module by executing Format Descriptor
         Records.



4.2.2.4.5.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 ̲FDR

         b)  PROCESS ̲FDR (R6):  OK


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

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

         R6  LINK                         (Destr.)

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

         All Registers are Destroyed.

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

         None.




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

         TBD.



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

         TBD.



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

         TBD




4.2.2.4.9    P̲R̲O̲P̲-̲E̲R̲R̲O̲R̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲



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

         The Module takes care of handling PROP errors that
         are not related to System Calls.



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

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

         a)  PROP ̲ERROR (ERROR ̲ID: ERROR ̲IO ̲TYPE)

         b)  PROP ̲ERROR (R2, R6):  OK

         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̲

         R2          ERROR ̲ID       (destr.)
         R6  LINK                   (destr.)

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

         All registers are Destroyed.

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

         None.



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

         TBD



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

         TBD



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




4.2.2.5  C̲o̲m̲m̲o̲n̲ ̲P̲R̲O̲P̲ ̲D̲a̲t̲a̲ ̲
         
         TBD



4.2.2.6  C̲o̲m̲m̲o̲n̲ ̲P̲R̲O̲P̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲s̲



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



4.2.2.6.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 Procedure carries out the actions that becomes
         appropriate when a PAPER ̲LOW CC is returned from the
         I/O-System.



4.2.2.6.1.2 P̲r̲o̲c̲e̲d̲u̲r̲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)  PAPER ̲LOW ̲ACTIONS

         b)  PAPER ̲LOW ̲ACTIONS(RG):OK

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

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

         RG  LINK                                (destr)

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

         All Registers are DESTROYED

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

         NONE



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

         TBD


4.2.2.6.1.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲

         Ref. fig. 4.2.2.6.1.4-1



PAPER ̲LOW ̲ACTIONS

         C̲A̲N̲C̲E̲L̲ ̲O̲U̲T̲S̲T̲A̲N̲D̲I̲N̲G̲ ̲I̲O̲ ̲S̲ (4.2.2.4.3)

         R̲E̲P̲ ̲T̲O̲ ̲U̲P̲C̲O̲(̲P̲A̲P̲E̲R̲ ̲L̲O̲W̲)̲ (4.2.2.6.4)

         A̲L̲L̲O̲W̲(̲C̲O̲N̲T̲I̲N̲U̲E̲,̲ ̲A̲B̲A̲N̲D̲O̲N̲)̲ (4.2.2.6.3)

END
















                   F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲6̲.̲1̲.̲4̲-̲1̲


4.2.2.6.2    C̲O̲N̲N̲ ̲E̲R̲R̲ ̲A̲C̲T̲I̲O̲N̲S̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲



4.2.2.6.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 Procedure carries out the actions that are appropriate
         when a CONNECTION ̲ERROR CC has been received from the
         I/O-System.



4.2.2.6.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)  CONN ̲ERR ̲ACTIONS

         b)  CONN ̲ERR ̲ACTIONS(R6):OK

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

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

         RG  LINK                                (destr)

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

         All registers are DESTROYED

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

         NONE



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

         N/A



4.2.2.6.2.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲

         Ref. fig. 4.2.2.6.2.4-1


CONN ̲ERR ̲ACTIONS

         C̲A̲N̲C̲E̲L̲ ̲O̲U̲T̲S̲T̲A̲N̲D̲I̲N̲G̲ ̲I̲O̲ ̲S̲ (4.2.2.4.3)

         R̲E̲P̲ ̲T̲O̲ ̲U̲P̲C̲O̲(̲C̲O̲N̲N̲ ̲E̲R̲R̲O̲R̲) (4.2.2.6.4)

         A̲L̲L̲O̲W̲(̲I̲N̲I̲T̲I̲A̲L̲I̲Z̲E̲ ̲P̲R̲O̲P̲)̲ (4.2.2.6.3)

END













                   F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲6̲.̲2̲.̲4̲-̲1̲


4.2.2.6.3    A̲L̲L̲O̲W̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲



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

         The procedure sets the PROP ̲MASK in order to make it
         possible to validate items received from PRIS ̲S2.



4.2.2.6.3.2 P̲r̲o̲c̲e̲d̲u̲r̲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)  ALLOW   (ITEM ̲MASK:PRIS ̲OP ̲ITEM ̲NAME ̲TYPE)

         b)  ALLOW   (R1,R6):OK

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

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

         R2      ITEM ̲MASK                       (destr)

         R6  LINK                                (destr)

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

         All registers are DESTROYED

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

         NONE



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

         TBD


4.2.2.6.3.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲

         Ref. fig. 4.2.2.6.3.4-1


ALLOW(ITEM ̲MASK)

         SET PROP ̲MASK=ITEM ̲MASK

END













                   F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲6̲.̲3̲.̲4̲-̲1̲



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



4.2.2.6.4.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲

         The procedure sends the specified report to UPCO.



4.2.2.6.4.2 P̲r̲o̲c̲e̲d̲u̲r̲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)  REP ̲TO ̲UPCO(REP ̲ID:PRIS ̲OP ̲ITEM ̲NAME ̲TYPE)

         b)  REP ̲TO ̲UPCO(R1,R6):OK

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

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

         R1      REP ̲ID                          (destr)

         R6  LINK                                (destr)

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

         All registers are DESTROYED

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

         NONE



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

         TBD


4.2.2.6.4.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲

         Ref. fig. 4.2.2.6.4.4-1



REP ̲TO ̲UPCO(REP ̲ID)

         SET PRIS ̲PROP ̲REPORT ̲OP.ID=PROP ̲ITEM

         SET PRIS ̲PROP ̲REPORT ̲OP.ITEM ̲NAME=REP ̲ID

         SIGNAL ̲OPSEM(PRIS ̲S1,PRIS ̲PROP ̲REPORT ̲OP):OK

END











                   F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲6̲.̲4̲.̲4̲-̲1̲





4.2.2.6.5    S̲A̲V̲E̲ ̲C̲O̲N̲T̲I̲N̲U̲A̲T̲I̲O̲N̲ ̲P̲O̲I̲N̲T̲ ̲V̲A̲L̲U̲E̲S̲ ̲S̲p̲e̲c̲

         

4.2.2.6.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 procedure saves the present status to obtain possibility
         of processing restart from this point.



4.2.2.6.5.2 P̲r̲o̲c̲e̲d̲u̲r̲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̲s̲

         a)  SAVE ̲CONTINUATION ̲POINT ̲VALUES

         b)  SAVE ̲CONTINUATION ̲POINT ̲VALUES(RG):OK

         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                            (destr)

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

         All registers are DESTROYED

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

         NONE



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

         TBD


4.2.2.6.5.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲

         Ref. fig. 4.2.2.6.5.4-1



SAVE ̲CONTINUATION ̲POINT ̲VALUES

         SET CONT ̲PT.VAL.PFF ̲ADDR.FIRST ̲BYTE=
             PFF ̲ADDRESS ̲FIRST ̲BYTE

         SET CONT ̲PT ̲VAL FDB ̲POINTER= FDB ̲POINTER

         SET CONT ̲PT ̲VAL.COL ̲HEADER ̲FLAG= COL ̲HEADER ̲FLAG

         SET CONT ̲PT ̲VAL.COL ̲HEADER= COLOUMNAR ̲HEADER

         SET CONT ̲PT ̲VAL.PAGE ̲NO= PAGE ̲NUMBER

         SET CONT ̲PT ̲VAL.SOURCE ̲BUF ̲PTR= SOURCE ̲BUFFER ̲POINTER

         SET ̲CONT ̲PT


         PRINT ̲ITEM ̲CATEGORY EQ IMF ̲ITEM?

         PRINT ITEM CATEGORY EQ IIF ̲ITEM?



               SET CONT ̲PT ̲VAL.VIEW ̲ADR ̲DESCR =

                   TRANS ̲VIEW ̲DESCR(1).FIELD ̲BYTE ̲ADDRESS
                  -TRANS ̲VIEW ̲DESCR(1).RECORD ̲LENGTH




END














                    Fig. 4.2.2.6.5.4-1



4.2.2.6.6    R̲E̲S̲T̲O̲R̲E̲ ̲C̲O̲N̲T̲I̲N̲U̲A̲T̲I̲O̲N̲ ̲P̲O̲I̲N̲T̲ ̲S̲T̲A̲T̲U̲S̲ ̲S̲p̲e̲c̲



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

         Restore the status of an earlier specified CONTINUATION
         ̲POINT.



4.2.2.6.6.2 P̲r̲o̲c̲e̲d̲u̲r̲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̲s̲

         a)  RESTORE ̲CONTINUATION ̲POINT ̲STATUS

         b)  RESTORE ̲CONTIUATION ̲POINT ̲STATUS(R6):OK

         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                            (destr)

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

         All registers are DESTROYED             

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

         NONE



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

         TBD


4.2.2.6.6.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲

         Ref. fig. 4.2.2.6.6.4-1



RESTORE ̲CONTINUATION@ ̲POINT ̲STATUS

         SET PFF ̲ADDRESS.FIRST ̲BYTE=
             CONT ̲PT ̲VAL.PFF ̲ADDR.FIRST ̲BYTE

         SET FDB ̲POINTER=CONT ̲PT ̲VAL.FDB ̲POINTER

         SET COL ̲HEADER ̲FLAG= CONT ̲PT ̲:VAL.COL ̲HEADER ̲FLAG

         SET COLOUMNAR ̲HEADER=CONT ̲PT ̲VAL.COL ̲HEADER

         SET PAGE NUMBER= CONT ̲PT ̲VAL.PAGE ̲NO

         SET SOURCE ̲BUFFER ̲POINTER= CONT ̲PT ̲VAL.SORUCE ̲BUF ̲PTR

         R̲E̲A̲D̲ ̲P̲F̲F̲ ̲D̲A̲T̲A̲ (4.2.2.6.8)

         PRINT ̲ITEM ̲CATEGORY EQ IMF ̲ITEM?

         PRINT ̲ITEM ̲CATEGORY EQ IIF ̲ITEM?

                      SET TRANS ̲VIEW ̲DESCR(1).FIELD ̲BYTE ̲ADDRESS=
                          CONT ̲PT ̲VAL.VIEW ̲ADR ̲DESCR

                      T̲R̲A̲N̲S̲F̲E̲R̲ ̲V̲I̲E̲W̲ ̲D̲A̲T̲A̲(4.2.2.6.11)

END





F̲I̲G̲U̲R̲E̲ ̲4̲.̲2̲.̲2̲.̲6̲.̲6̲.̲4̲-̲1̲…86…1         …02…   …02…   …02…   …02…                           …02…        
       
4.2.2.6.7    R̲E̲S̲E̲T̲ ̲O̲U̲T̲P̲U̲T̲ ̲B̲L̲E̲ ̲P̲O̲I̲N̲T̲E̲R̲S̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲



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

         Resets the pointers to, and the counters associated
         with the Buffer List Elements used for output of data.



4.2.2.6.7.2 P̲r̲o̲c̲e̲d̲u̲r̲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̲s̲

         a)  RESET ̲OUTPUT ̲BLE ̲POINTERS

         b)  RESET ̲OUTPUT ̲BLE ̲POINTERS(R6):OK

         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̲

         RG      LINK                            (destr)

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

         All registers are DESTROYED

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

         NONE



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

         TBD


4.2.2.6.7.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲

         Ref. fig. 4.2.2.6.7.4.1




         RESET ̲OUTPUT ̲BLE ̲POINTERS



            SET POINTER ̲TO ̲FIRST ̲BLE = ADDRESS (BLE ̲ARRAY (1))



            SET POINTER ̲TO ̲CURRENT ̲BLE = POINTER ̲TO ̲FIRST ̲BLE



            SET NO ̲OF ̲BLES ̲IN ̲CHAIN = 1


            SET ACTUAL ̲BUFFER ̲LENGTH = 0



         END



























                    Fig. 4.2.2.6.7.4-1


4.2.2.6.8    R̲E̲A̲D̲ ̲P̲F̲F̲ ̲D̲A̲T̲A̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲



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

         Reads data from the P̲rint F̲ormat F̲ile (PFF) and stores
         it in the F̲ormat D̲escriptor B̲uffer (FDB).



4.2.2.6.8.2 P̲r̲o̲c̲e̲d̲u̲r̲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)  READ ̲PFF ̲DATA

         b)  READ ̲PFF ̲DATA (R6): OK

         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                                (Destr.)

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

         All registers are Destroyed.

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

         None.



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

         TBD



4.2.2.6.8.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲

         Ref. Fig. 4.2.2.6.8.4-1



         READ ̲PFF ̲DATA








            CASE  READ ̲BYTES (PF ̲FILE ̲DESCRIPTOR,
                              PFF ̲ADDRESS,
                              PFF ̲BLE)
                              (PFF ̲ADDRESS
                                CC):  ERROR ̲OK



               ERROR?  ANALYSE ̲ERROR (CC.0):  OK



               OK?



            END ̲CASE







         END













                    Fig. 4.2.2.6.8.4-1


4.2.2.6.4    G̲E̲T̲ ̲Q̲E̲L̲ ̲I̲N̲F̲O̲ ̲D̲A̲T̲A̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲



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

         Transfers the QEL ̲INFO data to the SOURCE ̲BUFFER.



4.2.2.6.4.2 P̲r̲o̲c̲e̲d̲u̲r̲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̲s̲

         a)  GET ̲QEL ̲INFO ̲DATA
         b)  GET ̲QEL ̲INFO ̲DATA (R6):  OK

         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                                (Destr.)

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

         All Registers are Destroyed.

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

         None.



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

         TBD.



4.2.2.6.4.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲

         Ref. Fig. 4.2.2.6.4.4-1



GET ̲QEL ̲INFO ̲DATA




         SET INDEX = 1

         LOOP 4 TIMES




            SET SOURCE ̲BUFFER (INDEX) =
                 PRINT ̲ITEM ̲QEL ̲AITR.INFORMATION(INDEX)



            INCREMENT INDEX



         END ̲LOOP






END


















                    Fig. 4.2.2.6.9.4-1


4.2.2.6.10   G̲E̲T̲ ̲B̲U̲F̲F̲E̲R̲ ̲D̲A̲T̲A̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲



4.2.2.6.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 procedure transfers data from "QEL ̲BUFFER" to SOURCE
         ̲BUFFER.



4.2.2.6.10.2 P̲r̲o̲c̲e̲d̲u̲r̲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̲s̲

         a)  GET ̲BUFFER ̲DATA

         b)  GET ̲BUFFER ̲DATA (R6):  OK

         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                                (Destr.)

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

         All registers are Destroyed.

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

         None



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

         TBD.



4.2.2.6.10.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲

         Ref. Fig. 4.2.2.6.10.4-1


         GET ̲BUFFER ̲DATA



         SET DEST ̲BUFFER ̲LENGTH = SOURCE ̲BUFFER ̲LENGTH

         SET OFFSET = 0

         SET BUFFER = PRINT ̲ITEM ̲QEL ̲REF

         SET DESTINATION = SOURCE ̲BUFFER ̲ADDRESS



         CASE READ ̲BUFFER (BUFFER,
                     DESTINATION,
                     DEST ̲BUFFER ̲LENGTH,
                     OFFSET)
                     (NO ̲OF ̲BYTES ̲READ,
                     CC):  ERROR ̲OK


             ERROR?  A̲N̲A̲L̲Y̲S̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲C̲C̲,̲ ̲0̲)̲:̲ ̲ ̲O̲K̲


             OK?








             END CASE

         END











                   Fig. 4.2.2.6.10.4-1


4.2.2.6.11   T̲R̲A̲N̲S̲F̲E̲R̲ ̲V̲I̲E̲W̲ ̲D̲A̲T̲A̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲



4.2.2.6.11.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 procedure transfers data from a CIF to the 
         SOURCE ̲BUFFER.



4.2.2.6.11.2 P̲r̲o̲c̲e̲d̲u̲r̲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)  TRANSFER ̲VIEW ̲DATA

         b)  TRANSFER ̲VIEW ̲DATA (R6):  OK

         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                                (Destr.)

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

         All registers are Destroyed.

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

         None.



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

         TBD.



4.2.2.6.11.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲

         Ref. Fig. 4.2.2.6.11.4-1


         TRANSFER ̲VIEW ̲DATA









           CASE READ ̲VIEW (PRIS ̲SOURCE ̲BUFFER ̲LENGTH,
                        TRANS ̲VIEW ̲DESCR,
                        PRINT ̲ITEM ̲QEL ̲REF,
                        PRIS ̲SOURCE ̲BUFFER)
                        (CC):  ERROR ̲OK



              ERROR?  ANALYSE ̲ERROR(CC.0):  OK


              OK?


           END ̲CASE




         END

















                   Fig. 4.2.2.6.11.4-1


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

         TBD





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

         TBD