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

⟦468f46e23⟧ Wang Wps File

    Length: 16457 (0x4049)
    Types: Wang Wps File
    Notes: CPS/SDS/035               
    Names: »2089A «

Derivation

└─⟦a5d18cecd⟧ Bits:30006104 8" Wang WCS floppy, CR 0164A
    └─ ⟦this⟧ »2089A « 

WangText



$…0a…$…0e…$…86…1 
      
      
      
      
      
      
      
  …02…    
      
 …02…   …02…  
      

…02…CPS/SDS/035

…02…850601…02……02…
SUPERVISOR
 VDU
DETAILED
 DESIGN
 SPECIFICATION…02…ISSUE
 1…02…CAMPS









       4.2.4 Volume Deletion Subpackage (VODL) ......
                 
         4.2.4.1 Functional Specification ...........
                     
           4.2.4.1.1 Command Interpretation and Proce
                         
           4.2.4.1.2 Volume Deletion (2.0) ..........
                         
           4.2.4.1.3 Error Handling .................
                         

         4.2.4.2 Software Structure .................
                     
         4.2.4.3 Data Flow and Control Logic ........
                     
         4.2.4.4 Module Description .................
                     
           4.2.4.4.1 VODL Main ......................
                         
           4.2.4.4.2 Report to CREP .................
                         
           4.2.4.4.3 VODL START .....................
               
           4.2.4.4.4 CLEAN VODL .....................
                         
           4.2.4.4.5 Analyse VODL Result ............
                         
           4.2.4.4.6 Find and Delete Next File ......
                         
           4.2.4.4.7 Volume Mount/Dismount ..........
                         

         4.2.4.5 Common Subpackage Data .............
                     
         4.2.4.6 Common Subpackage Procedures .......
                     
           4.2.4.6.1 Fetch Next File ................
               
           4.2.4.6.2 Remove This File ...............
                         
           4.2.4.6.3 Purge Next File ................
               

         4.2.4.7 Subpackage Interfaces ..............
                     
           4.2.4.7.1 SVCO VODL Intefaces ............
               
           4.2.4.7.2 VODL SVCO Interface ............
                         
           4.2.4.7.3 SFCO VODL Interface ............
                         
           4.2.4.7.4 VODL SFCO Interface ............
                         


4.2.4    V̲o̲l̲u̲m̲e̲ ̲D̲e̲l̲e̲t̲i̲o̲n̲ ̲S̲u̲b̲p̲a̲c̲k̲a̲g̲e̲ ̲(̲V̲O̲D̲L̲)̲

         The Subpackage VODL deletes an entire volume on command
         from SFCO. Deletion of a volume is time a consuming
         task, and therefore this task has been assigned a coroutine.
         VODL is running independent of user sign on sign off
         as is CREP. When SSC issues a Close Down Command to
         SUP, VODL receives a Close Command directly from SVCO.



4.2.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 following functions are included in the package:

         -   SVCO Command Process

         -   SFCO Command Interpretation

         -   Deletion of all non-system files on the volume
             by the of DAMOS procedure "Purge-file".

         -   Error Handling.

         Figure 4.2.4.1-1 presents the functional breakdown.















































                     FIGURE 4.2.4.1-1
               FUNCTIONAL BREAKDOWN OF VODL


4.2.4.1.1    C̲o̲m̲m̲a̲n̲d̲ ̲I̲n̲t̲e̲r̲p̲r̲e̲t̲a̲t̲i̲o̲n̲ ̲a̲n̲d̲ ̲P̲r̲o̲c̲e̲s̲s̲i̲n̲g̲

         The VODL Coroutine receives commands from the coroutines
         SVCO and SFCO. A received command is checked for validity
         and if invalid a proper action is taken.

         Command received from SVCO (Controlling Commands) takes
         precedence over and shall interrupt commands received
         from SFCO.

         Execution of the time consuming SFXO Command is therefore
         controlled in such a way that the execution can be
         terminated within a reasonable time.



4.2.4.1.2    V̲o̲l̲u̲m̲e̲ ̲D̲e̲l̲e̲t̲i̲o̲n̲ ̲(̲2̲.̲0̲)̲

         The functions to delete a volume includes:

         a)  Mount of Volume

         b)  Deletion of each file on the volume (Purge File)

         c)  Dismount of Volume

         d)  Generation of a command completion report for print
             out at the supervisor report printer (Report Deletion
             Buffer)



4.2.4.1.3    E̲r̲r̲o̲r̲ ̲H̲a̲n̲d̲l̲i̲n̲g̲

         Error Handling for VODL copes with the following error
         categories:

         a)  Illegal answer from SSC to a mount/dismount request.
             This is categorised as a queue error.

         b)  Illegal command from SVCO or SFCO, or command received
             from SFCO before execution of the previous has
             been completed. This is categorised as an Internal
             Error,

         c)  Completion codes received as a result of an IO
             Procedure Call of a nature that prevents the commanded
             task to be completed. This is categorised as an
             I/O Error.



         Queue Errors and Internal Errors are reported by using
         the CAMPS standard error handling reporting facilities.

         I/O Errors of a non-fatal nature are reported through
         the command completion reports, printed on the supervisor
         report printer.



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

         VODL consists of 7 modules. The VODL coroutine receives
         input from SVCO and SFCO through the operation semaphore
         VODL ̲SEM.  Answers to SVCO commands are signalled to
         the SVCO operation semaphore SVCO ̲SEM, and answers
         to SFCO commands to the SFCO operation semaphore SFCO
         ̲SEM.

         An overview of the VODL coroutine is shown in fig.
         4.2.4.2-1.















































                     FIGURE 4.2.4.2-1
                 VODL SOFTWARE STRUCTURE


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



4.2.4.4  M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲



4.2.4.4.1    V̲O̲D̲L̲ ̲M̲a̲i̲n̲



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

         The purpose of this module is to analyse the input
         of the coroutine and from this performs the volume
         deletion as background job.



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

         a)  VODL ̲MAIN

         b)  VODL ̲MAIN (R6)

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

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

             R6  LINK                     C    D

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

             R0 - R7                      DEST



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

             None



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

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

             Refer CPS Prefixes
             Refer SUP Packages Prefixes



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

             Refer SUP Package Data
             Refer VODL Subpackage Data

             VODEL ̲STATE                  C    R
             VODL ̲SEM                     -    -
             SVCO ̲SEM                     -    -
             SFCO ̲SEM                     -    -
             SFCO ̲CMD ̲PT                  -    R
             SVCO ̲CMD ̲PT                  -    R

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

             Refer Source Listing.



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

         VODL Main contains the waiting point of the coroutine.
         In this waiting point commands from SVCO and SFCO are
         awaited, further the completion of purging of a file
         is awaited and treated.



4.2.4.4.2    R̲e̲p̲o̲r̲t̲ ̲t̲o̲ ̲C̲R̲E̲P̲



4.2.4.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 creates and sends a completion report to
         the SVUP Queue CREPQ.



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

         a)  REPORT ̲TO ̲CREP (COMPLETION:INTEGER)

         b)  REPORT ̲TO ̲CREP (R0,R6)



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

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

             R0  COMPLETION:INTEGER       C    D
             R6  LINK                     C    D

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

             R0 - R7                      DEST



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

             None



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

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

             Refer CPS Prefixes
             Refer SUP Package Prefixes

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

             Refer SUP Package Data
             Refer VODL Subpackage Data

             SFCO ̲CMD ̲PT                  C    D
             SVUP ̲SNED ̲PARAMS             -    D
             SVUP ̲SEND ̲Q                  -    D
             SFCO ̲SEM                     -    -
             VODEL ̲STATE                  -    R

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

             Refer Source Listing.



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

         The original issued command and the completion code
         is sent to CREP in a QEL referencing a buffer.

         The Volume Name is set in the buffer and the QEL is
         submitted. Finally the SFCO ̲CMD is returned to SFCO
         and VODEL ̲STATE is set to IDLE.



4.2.4.4.3 V̲O̲D̲L̲ ̲S̲T̲A̲R̲T̲



4.2.4.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 procedure starts up the actual command.



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

         a)  VODL ̲START

         b)  VODL ̲START (R6)

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

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

                 R6  LINK                 C    D

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

                 R0 - R7                  DEST



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

             None



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

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

             Refer CPS Prefixes
             Refer SUP Package Prefixes
             Refer VODL Subpackage Prefixes



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

             Refer SUP Package Data
             Refer VODL Subpackage Data

             VODL ̲VOLUME                  C    K
             CUR ̲LEVL                     -    R
             CUR ̲FILE                     -    R
             VODL ̲STATE                   -    R

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

             Refer Source Listing.



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

         The Volume is mounted and the main directory is opened.
         The first four files are then read (skipped) and processing
         can then start.



4.2.4.4.4    C̲L̲E̲A̲N̲ ̲V̲O̲D̲L̲



4.2.4.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 procedure cleans up after VODL.



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

         a)  CLEAN ̲VODL

         b)  CLEAN ̲VODL (R6)

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

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

                 R6  LINK                 C    D

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

                 R0 - R7                  DEST


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

             None



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

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

             Refer CPS Prefixes
             Refer SUP Package Prefixes
             Refer VODL Subpackage Prefixes

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

             Refer SUP Package Data
             Refer VODL Subpackage Data

             CUR ̲LEVEL                    C    R
             CUR ̲FILE                     C    R
             VODL ̲VOLUME                  C    K

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

             Refer Source Listing



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

         The module dismantles all files open and dismounts
         the volume.



4.2.4.4.5    A̲n̲a̲l̲y̲s̲e̲ ̲V̲O̲D̲L̲ ̲R̲e̲s̲u̲l̲t̲



4.2.4.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 result of finished purging.





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

         a)  ANALYSE ̲VODL ̲RESULT(COROUTINE ̲OP:TEP ̲COROUTINE
             ̲OP)

         b)  ANALSE ̲VODL ̲RESULT (R5,R6)

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

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

                 R5  COROUTINE ̲OP         C    D
                 R6  LINK                 C    D

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

                 R0 - R7                  DEST



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

             None



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

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

             Refer CPS Prefixes
             Refer SUP Package Prefixes
             Refer VODL Subpackage Prefixes

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

             None

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

             Refer Source Listing.



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

         The result is obtained. If Error, the procedure sends
         error report to CREP and goes in IDLE STATE.


4.2.4.4.6    F̲i̲n̲d̲ ̲a̲n̲d̲ ̲D̲e̲l̲e̲t̲e̲ ̲N̲e̲x̲t̲ ̲F̲i̲l̲e̲



4.2.4.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 procedure initiates the next file purging.



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

         a)  FIND ̲AND ̲DELETE ̲NEXT ̲FILE

         b)  FIND ̲AND ̲DELETE ̲NEXT ̲FILE (R6)

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

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

                 R6  LINK                 C    D

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

                 R0 - R7                  DEST



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

             None



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

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

             Refer CPS Prefixes
             Refer SUP Package Prefixes
             Refer VODL Subpackage Prefixes



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

             Refer SUP Package Data
             Refer VODL Subpackage Data

             VODL ̲VOLUME                       C    R

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

             Refer Source Listing



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

         The module finds the next file to be purged. If found,
         it returns. If error, it cleans up and sends error
         report to CREP. If no more files are found, it cleans
         up, renames the volume and sends OK to CREP.



4.2.4.4.7    V̲o̲l̲u̲m̲e̲ ̲M̲o̲u̲n̲t̲/̲D̲i̲s̲m̲o̲u̲n̲t̲



4.2.4.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 sends a mount or dismount command to SSC,
         depending on the value of the call register R0. The
         identifiction of the voume to be mounted is contained
         in R1.

         After the command has been sent the module awaits the
         SSC response to the command. The QEL receivd is validated
         upon receipt and when the correct QEL has been received,
         the CC of the mount/dismount command is returned in
         R7 to the caller.



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

         a)  V ̲MOUNT ̲DISMOUNT(COMMAND ̲INTEGER,
                              POINTER TO COLUME NAME:POINTER,
                              COMPLETION CODE:INTEGER):
                                              ERROR ̲OK

         b)  V ̲MOUNT ̲DISMOUNT(R0,R1,R7,R6):ERROR ̲OK



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

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

             R0  MOUNT ̲VOL,DISMOUNT ̲VOL        C    D
             R1  POINTER TO VOLUME NAME        C    D
             R7  COMPLETION CODE - CC          -    R
             R6  LINK                          C    K

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

             R0 - R5                           DEST
             R6      LINK                      KEPT
             R7      COMPLETION CODE CC        RETURNED



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



4.2.4.4.7.3.1 C̲H̲E̲C̲K̲ ̲Q̲E̲L̲

         The procedure checks whether the QEL received is the
         one expected and whether it is valid.



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

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

             Refer CPS Prefixes
             Refer SUP Package Prefixes

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

             Refer SUP Package Data
             Refer VODL Subpackage Data

             SVUP ̲SEND ̲Q                       -    D
             SVUP ̲ARRQ                         C    K
             SVUP ̲SEND ̲PARAMS                  -    D

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

             Refer Source Listing


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

         The Mount/Dismout Request is sent to the SSC System
         Queue, the answer is received in the SUP RETR Queue.



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

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

             Refer CPS Prefixes
             Refer SUP Package Prefixes
             Refer VODL Subpackage Prefixes

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

             Refer SUP Package Data Source Listing.

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

             Refer VODL Subpackage Data Source Listing



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



4.2.4.6.1 F̲e̲t̲c̲h̲ ̲N̲e̲x̲t̲ ̲F̲i̲l̲e̲



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

         The procedure reads the next file entry in currently
         open directory. It FIRST ̲TIME, file address is zeroed,
         otherwise it is read from the end of the last reading.
         

         Free entries in the directory are skipped.



4.2.4.6.1.2 I̲n̲t̲e̲r̲f̲a̲c̲e̲ ̲D̲e̲f̲i̲n̲i̲t̲i̲o̲n̲

         a)  FETCH ̲NEXT ̲FILE (FIRST ̲TIME:BOOLEAN) ̲ERROR ̲OK

         b)  FETCH ̲NEXT ̲FILE (R0,R6)



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

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

         R0  FIRST ̲TIME:BOOLEAN                C    D
         R6  LINK                              C    D

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

         R0 - R7                               DEST



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

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

             Refer CPS Prefixes
             Refer VODL Subpackage Prefixes

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

             Refer VODL Subpackage Data

                 CUR ̲FILE                      C    R
                 VODL ̲BUFFER                   C    K

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

             Refer Source Listing



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

         If FIRST ̲TIME, FIRST ̲BYTE is set to zero and BYTE ̲COUNT
         is set to 16. Then the directory record is read and
         FIRST ̲BYTE in incremented. This goes on, until EOF
         is encountered or a used entry is found. Error EOF,
         procedure returns to error, otherwise the file name
         is put in next entry in FILE ̲ARRAY and procedure returns
         to OKAY.





4.2.4.6.2    R̲e̲m̲o̲v̲e̲ ̲T̲h̲i̲s̲ ̲F̲i̲l̲e̲



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

         The procedure removes the file in the stack-top.



4.2.4.6.2.2 I̲n̲t̲e̲r̲f̲a̲c̲e̲ ̲D̲e̲f̲i̲n̲i̲t̲i̲o̲n̲

         a)  REMOVE ̲THIS ̲FILE

         b)  REMOVE ̲THIS ̲FILE (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                          C    D

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

             R0 - R7                           DEST



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

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

             Refer CPS Prefixes
             Refer VODL Subpackage Prefixes

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

             Refer VODL Subpackage Data

             CUR ̲FILE                          C    R
             CUR ̲LEVL                          C    R

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

             Refer Source Listing


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

         The FDCB is dismantled and the file is removed from
         the Directory. The current file level ID decremented.



4.2.4.6.3 P̲u̲r̲g̲e̲ ̲N̲e̲x̲t̲ ̲F̲i̲l̲e̲



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

         The procedure gets next file in directory and purges
         it.



4.2.4.6.3.2 I̲n̲t̲e̲r̲f̲a̲c̲e̲ ̲D̲e̲f̲i̲n̲i̲t̲i̲o̲n̲

         a)  PURGE ̲NEXT ̲FILE()(CC:INTEGER):FILE ̲EXIT

         b)  PURGE ̲NEXT ̲FILE (R7, R6): FILE ̲EXIT

         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̲

             R7  CC                            -    R
             R6  LINK                          C    D

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

             R0 - R6                           DEST
             R7      CC                        -    R



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

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

             Refer CPS Prefixes
             Refer SUP Package Prefixes
             Refer VODL Subpackage Prefixes



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

             Refer SUB Package Data
             Refer VODL Subpackage Data

             CUR ̲LEVL                          C    R
             CUR ̲FILE                          C    R
             VODEL ̲SEM                         -    -

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

             Refer Source Listing.



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

         If EOF, the directory is closed and file level is decremented.
         If it was the main directory (level 0), procedure returns
         to finished, otherwise the 'EOF'- directory is removed
         from the current directory, and search continues on
         this.

         If a file is found, this is opened and the organization
         is found. If it is a directory, level is checked. If
         level overflow, the procedure returns, otherwise search
         continues on next level.

         If it is a file, purging is initiated and associated
         to the semaphore.



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



4.2.4.7.1 S̲V̲C̲O̲ ̲V̲O̲D̲L̲ ̲I̲n̲t̲e̲f̲a̲c̲e̲s̲

         The following commands are sent from SVCO to VODL via
         the operation sempahore VODL ̲SEM:

             CLOSEVODL




4.2.4.7.2    V̲O̲D̲L̲ ̲S̲V̲C̲O̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The following ansers to commands are sent from VODL
         to SVCO via the operation semaphore SVCO ̲SEM:

             Answer to CLOSE VODL command.



4.2.4.7.3    S̲F̲C̲O̲ ̲V̲O̲D̲L̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The following commands are sent from SFCO to VODL via
         the operation semaphore VODL ̲SEM:

             Volume Delete (VODL)



4.2.4.7.4    V̲O̲D̲L̲ ̲S̲F̲C̲O̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The following answers to commands are sent from VODL
         to SFCO via the operation semaphore SFCO ̲SEM:

             Answer to VODL command.