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

⟦df054730f⟧ Wang Wps File

    Length: 17151 (0x42ff)
    Types: Wang Wps File
    Notes: Spelunked
    Names: »~ORPHAN72.00«

Derivation

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

WangText



H…06…G…08…G…0b…G…0e…G…0f…G…01…G G…05…F…09…F…0c…F…0d…F…0f…F…02……86…1
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        …02…
        
        
        
        
        
        
        
        
        
        
        …02…
        
        
        …02…
        
        
        
        
        
        
        
        

…02…CPS/SDS/035

…02…MSN/820514…02……02…
SUPERVISOR
 VDU
DETAILED
 DESIGN
 SPECIFICATION…02……02…CAMPS







4.2.3.6.13   R̲E̲A̲D̲ ̲M̲M̲I̲ ̲C̲T̲R̲L̲ ̲T̲A̲B̲L̲E̲



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

         Sets up parameters and calls TMP (SEARCH ̲PRIMARY ̲KEY)
         to read section of VUS ̲MMI ̲CONTROL ̲TABLE.



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

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

         a)  READ ̲MMI ̲CTRL ̲TABLE

         b)  READ ̲MMI ̲CTRL ̲TABLE (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                    destr.

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

         R0-R7                       destr.

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

         None



4.2.3.6.13.3 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲

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

             MMI ̲TMP ̲PARAM           4.2.3.5
             KEY ̲LIST                4.2.3.5
             MMI ̲HEAD ̲REC            4.2.3.5
             MMI ̲HEAD ̲SIZE           4.2.3.5
             MAX ̲SECTION ̲SIZE        4.2.3.5
             CTRL ̲REC ̲SIZE           4.2.3.5
             CURRENT ̲FORMAT          4.2.3.5
             EOMM                    4.2.3.5…86…1         …02…   …02…  
                                     …02…   …02…        …02…           
                                                           
             MMI ̲REC ̲COUNT           4.2.3.5
             BOFL                    4.2.3.5
             BIT ̲0                   CPS/DBD/001
             BIT ̲1                   CPS/DBD/001

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

             VUS ̲MMI ̲CTRL ̲TABLE Refer CPS/DBD/001

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

             N/A



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

         Refer figure 4.2.3.6.13-1



         R̲E̲A̲D̲ ̲M̲M̲I̲ ̲C̲T̲R̲L̲ ̲T̲A̲B̲L̲E̲

         MMI ̲TMP ̲PARAM.TABLE ̲ID = VUS ̲MMI ̲CONTROL ̲TABLE

         MMI ̲TMP ̲PARAM.FUNCTION = SEARCH ̲PRIMARY ̲KEY

         MMI ̲TMP ̲PARAM.MASK ̲1 = 0

         MMI ̲TMP ̲PARAM.ENTRY = 0

         MMI ̲TMP ̲PRAM.BUFFER ̲1 = KEY ̲LIST

         MMI ̲TMP ̲PARAM.COUNT = 1

         MMI ̲TMP ̲PARAM.BUFFER ̲2 = MMI ̲HEAD ̲REC

         MMI ̲TMP ̲PARAM.BUFFER ̲2 ̲LENGTH = MMI ̲HEAD ̲SIZE +
                              MAX ̲SECTION ̲SIZE * CTRL ̲REC ̲SIZE

         MMI ̲TMP ̲PARAM.MASK ̲2 = BIT ̲0 + BIT ̲1

         KEY ̲LIST.INFO = 0

         KEY ̲LIST.INK = 0

         KEY ̲LIST.FORMAT ̲ID = CURRENT ̲FORMAT

         CASE SEARCH ̲PRIMARY ̲KEY (MMI ̲TMP ̲PARAM)(CC): ERROR
         ̲OK

             ERROR? ANALYSE ̲ERROR (CC,0)

             OK?

         END CASE

         EOMM = MMI ̲REC ̲COUNT * CTRL ̲REC ̲SIZE + 1

         BOFL = EOMM + 1

         END







                   Figure 4.2.3.6.13-1


4.2.3.6.14   C̲L̲E̲A̲R̲ ̲S̲P̲L̲I̲T̲



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

         Clears format split by call to Format Handler (SEND
         ̲CONTROL).



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

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

         a)  CLEAR ̲SPLIT

         b)  CLEAR ̲SPLIT (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             destr.

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

         R0-R7

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

         None.



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

             FORMAT ̲IFCB      4.1.4
             VDU ̲SPLIT ̲FAILED CPSDBD/001
             CLEAR ̲THE ̲SPLIT  CPS/DBD/001

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

             N/A


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

             N/A.



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

         Ref. figure 4.2.3.6.14-1


         C̲L̲E̲A̲R̲ ̲S̲P̲L̲I̲T̲

         CASE SEND ̲CONTROL(FORMAT ̲IFCB, CLEAR ̲THE ̲SPLIT)(CC):
                                                         ERROR
                              ̲OK

             ERROR?  CASE ANALYSE ̲ERROR (CC, 1,
                                             VDU ̲SPLIT ̲FAILED):L1

                        L1?  SIGNAL ̲SFCO (SEM, SPLIT ̲FAILED)
                                              (4.2.3.6.23-1)

                     END CASE

             OK?

         END CASE

         END




























Figure 4.2.3.6.14-1…86…1         …02…   …02…   …02…   …02…        …02…                           
       
4.2.3.6.15   C̲R̲E̲A̲T̲E̲ ̲D̲I̲S̲P̲ ̲R̲E̲C̲



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

         Creates an IOC record and moves it to IOC ̲BUFFER.



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

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

         )   CREATE ̲DISP ̲REC

         b)  CREATE ̲DISP ̲REC (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             destr.

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

         R0-R7                destr.

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

         None.



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

             FL ̲PT            4.2.3.5
             EOCF             4.2.3.5
         EOCB        4.2.3.5
             END ̲OF ̲CIF ̲FIELD 4.2.3.5
             END ̲OF ̲CIF ̲BUF   4.2.3.5
             CIF ̲F ̲LIST       4.2.3.5
             IOC ̲PT           4.2.3.5
             F ̲BYTE ̲ADR       4.2.3.5
             FIXED            4.2.3.5


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

             N/A

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

             N/A.



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

         Ref. figure 4.2.3.6.15-1




         C̲R̲E̲A̲T̲E̲ ̲D̲I̲S̲P̲ ̲R̲E̲C̲

         READ ̲ITEM ̲PT = I ̲PT

         FIXED?  ITEM ̲LENGTH = I ̲SIZE

         ITEM ̲LENGTH = BYTE ̲COUNT

         WRITE ̲ITEM ̲PT = IOC ̲PT

         E̲X̲E̲C̲ ̲D̲I̲S̲P̲ ̲P̲R̲O̲C̲ ̲(̲D̲I̲S̲P̲ ̲P̲R̲O̲C̲,̲ ̲R̲E̲A̲D̲ ̲I̲T̲E̲M̲ ̲P̲T̲,̲ ̲I̲T̲E̲M̲ ̲L̲E̲N̲G̲T̲H̲,̲
                 W̲R̲I̲T̲E̲ ̲I̲T̲E̲M̲ ̲P̲T̲)̲(̲I̲T̲E̲M̲ ̲L̲E̲N̲G̲T̲H̲ ̲(̲4̲.̲2̲.̲3̲.̲6̲.̲2̲2̲-̲1̲)̲

         S̲E̲T̲ ̲F̲I̲E̲L̲D̲ ̲L̲I̲S̲T̲ ̲A̲D̲D̲R̲E̲S̲S̲E̲S̲ ̲(̲4̲.̲2̲.̲3̲.̲6̲.̲9̲-̲1̲)̲

         IOC ̲L ̲NO = L ̲NO

         IOC ̲INC = C ̲INC

         FG ̲COUNT EQ ZERO? IOC ̲F ̲NO = C ̲F ̲COUNT

         IOC ̲F ̲NO = F ̲NO + F ̲COUNT * C ̲FG ̲COUNT - 1

         INCREMENT FL ̲PT

         FIXED? I ̲PT = I ̲PT + ISIZE

         I ̲PT = I ̲PT + BYTE ̲COUNT

         I ̲PT GE EOCF (I ̲PT ̲BASE)?  END ̲OF ̲CIF ̲FIELD = TRUE

         I ̲PT GE EOCB (I ̲PT ̲BASE)?  END ̲OF ̲CIF ̲BUF = TRUE

                                    CIF ̲F ̲LIST.ELEM (I ̲PT ̲BASE).

                                    F ̲BYTE ̲ADR = CIF ̲F ̲LIST.ELEM
                                                  (I ̲PTBASE).

                                    F ̲BYRE ̲ADR - BYTE ̲COUNT

         IOC ̲PT = IOC ̲PT + ITEM ̲LENGTH

         END



Figure 4.2.3.6.15-1…86…1         …02…   …02…   …02…   …02…        …02…                           
       
4.2.3.6.16   F̲I̲E̲L̲D̲ ̲R̲E̲P̲E̲A̲T̲



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

         Creates IOC records for a repeated field and moves
         them to IOC ̲BUFFER.



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

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

         a)  FIELD ̲REPEAT

         b)  FIELD ̲REPEAT (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             destr.

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

         R0-R7                destr.

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

         None.



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

             FIXED            4.2.3.5

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

             N/A

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

             N/A…86…1         …02…   …02…   …02…   …02…        …02…                
                              
4.2.3.6.16.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲

         Refer figure 4.2.3.6.16-1…86…1         …02…   …02…   …02…   …02…      
          …02…                                  
         F̲I̲E̲L̲D̲ ̲R̲E̲P̲E̲A̲T̲

         C ̲F ̲COUNT = 1

         LOOP UNTIL C ̲F ̲COUNT GT F ̲COUNT

             C̲R̲E̲A̲T̲E̲ ̲D̲I̲S̲P̲ ̲R̲E̲C̲ ̲(̲F̲I̲X̲E̲D̲)̲ ̲(̲4̲.̲2̲.̲3̲.̲6̲.̲1̲5̲-̲1̲)̲

             INCREMENT C ̲F ̲COUNT

         END LOOP

         END


































Figure 4.2.3.6.16-1…86…1         …02…   …02…   …02…   …02…        …02…             
                     
4.2.3.6.17   F̲I̲E̲L̲D̲ ̲G̲R̲O̲U̲P̲ ̲R̲E̲P̲E̲A̲T̲



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

         Creates IOC records for a field group and moves them
         to IOC ̲BUFFERS.



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

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

         a)  FIELD ̲GROUP ̲REPEAT

         b)  FIELD ̲GROUP ̲REPEAT (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             destr.

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

         R0-R7                destr.

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

         None.



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

             FIXD             4.2.3.5
             MMI ̲PT           4.2.3.5

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

             N/A

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

             N/A…86…1         …02…   …02…   …02…   …02…        …02…                
                              
4.2.3.6.17.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲

         Refer figure 4.2.3.6.17-1


         F̲I̲E̲L̲D̲ ̲G̲R̲O̲U̲P̲ ̲R̲E̲P̲E̲A̲T̲

         C ̲F ̲COUNT = 1

         LOOP UNTIL C ̲F ̲COUNT GT F ̲COUNT

             C ̲FG ̲COUNT = 1

             LOOP UNTIL C ̲FG ̲COUNT GT FG ̲COUNT

                 C̲R̲E̲A̲T̲E̲ ̲D̲I̲S̲P̲ ̲R̲E̲C̲ ̲(̲F̲I̲X̲E̲D̲)̲ ̲(̲4̲.̲2̲.̲3̲.̲6̲.̲1̲5̲-̲1̲)̲

                 INCREMEN C ̲FG ̲COUNT

             END LOOP

             INCREMENT MMI ̲PT

             S̲E̲T̲ ̲M̲M̲I̲ ̲V̲D̲U̲ ̲A̲D̲D̲R̲E̲S̲S̲E̲S̲ ̲(̲4̲.̲2̲.̲3̲.̲6̲.̲7̲-̲1̲)̲

             S̲E̲T̲ ̲M̲E̲M̲O̲R̲Y̲ ̲A̲D̲D̲R̲E̲S̲S̲E̲S̲ ̲(̲4̲.̲2̲.̲3̲.̲6̲.̲1̲0̲-̲1̲)̲

             INCREMENT C ̲F ̲COUNT

         END LOOP

         END




















Figure 4.2.3.6.17-1…86…1         …02…   …02…   …02…   …02…        …02…                           
       
4.2.3.6.20   C̲H̲E̲C̲K̲ ̲F̲I̲N̲A̲L̲ ̲C̲A̲L̲L̲



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

         Checks (before call of display procedure) if this is
         the last call of the display procedure.



4.2.3.6.20.2 n̲t̲e̲r̲f̲a̲c̲e̲ ̲D̲e̲f̲i̲n̲i̲t̲i̲o̲n̲

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

         a)  CHECK ̲FINAL ̲CALL

         b)  CHECK ̲FINAL ̲CALL (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             destr.

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

         R0-R7                destr.

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

         None



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

         a)  D̲a̲t̲a̲ ̲e̲f̲e̲r̲e̲n̲c̲e̲d̲

             FL ̲PT            4.2.3.5
             L ̲NO             4.2.3.5
             IOC ̲L ̲NO         4.2.3.5
             F ̲NO             4.2.3.5
             IOC ̲F ̲NO         4.2.3.5
             FINAL ̲CALL       4.2.3.5

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

             N/A


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

             N/A



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

         Refer figure 4.2.3.6.20-1.



 C̲H̲E̲C̲K̲ ̲F̲I̲N̲A̲L̲ ̲C̲A̲L̲L̲


 INCREMENT FL ̲PT

 S̲E̲T̲ ̲F̲I̲E̲L̲D̲ ̲L̲I̲S̲T̲ ̲A̲D̲D̲R̲E̲S̲S̲E̲S̲ ̲(̲4̲.̲2̲.̲3̲.̲6̲.̲9̲-̲1̲)̲

 L ̲NO EQ IOC ̲L ̲NO? F ̲NO EQ IOC ̲FNO? FINAL ̲CALL = FALSE

 FINAL ̲CALL = TRUE

 DECREMENT FL ̲PT

 S̲E̲T̲ ̲F̲I̲E̲L̲D̲ ̲L̲I̲S̲T̲ ̲A̲D̲D̲R̲E̲S̲S̲E̲S̲ ̲(̲4̲.̲2̲.̲3̲.̲6̲.̲9̲-̲1̲)̲

 END































Figure 4.2.3.6.20-1…86…1         …02…   …02…   …02…   …02…                               
            
4.2.3.6.21   E̲X̲E̲C̲ ̲V̲A̲L̲ ̲P̲R̲O̲C̲



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

 Calls the validation procedure referenced in the VUS
 ̲MMI ̲CONTROL ̲TABLE corresponding to each field in the
 format The validation procedure performs necessary
 validation, conversion and transfer from BUFFER ̲LIST
 to output buffer.



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

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

 a)  EXEC ̲VAL ̲PROC (VAL ̲PROC: VALIDATION ̲PROCEDURE ̲TYPE
                   READ ̲ITE ̲PT:  INTEGER,
                   ITEM ̲LENGTH:   INTEGER,
                   WRITE ̲ITEM ̲PT: INTEGER)
                   (ITEM ̲LENGTH:  INTEGER): ERROR ̲OK

 b)  EXEC ̲VAL ̲PROC(R0,R1,R2,R3,R4,R5, R6,R7): ERROR
     ̲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̲

 R1:     VALIDATION ̲PROCEDURE    (Destr.)
 R2,R3:  BYTE POINTER             (Destr.)
 R4:     ITEM ̲LENGTH              (Destr.)
 R5,R7:  BYTE POINTER             (Destr.)
 R6:     LINK                     (Destr.)

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

 R0-R3, R5-R7                     (Destr.)

 R4  IEM ̲LENGTH

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

 Invalid Procedure




4.2.3.6.21.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̲d̲

             VAL ̲ERR           Ref. 4.1.4

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

             N/A

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

             N/A



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

         Refer figure .2.3.6.21-1…86…1         …02…   …02…   …02…   …02…       
                                            

 E̲X̲E̲C̲ ̲V̲A̲L̲ ̲P̲R̲O̲C̲

 CASE VAL ̲PROC OF VALIDATION ̲PROCEDURE ̲TYPE

 CLASS ̲VAL?  CASE C̲L̲A̲S̲S̲ ̲V̲A̲L̲ ̲(̲R̲E̲A̲D̲ ̲I̲T̲E̲M̲ ̲P̲T̲,̲ ̲I̲T̲E̲M̲ ̲L̲E̲N̲T̲H̲,̲
                                     W̲R̲I̲T̲E̲ ̲I̲T̲E̲M̲ ̲P̲T̲)̲:̲
                                     ̲E̲R̲R̲O̲R̲ ̲O̲K̲

                 ERROR?  VAL ̲ERR = TRUE

                 OK?


             END CASE

 SPH ̲VAL?    CASE S̲P̲H̲ ̲V̲A̲L̲ ̲(̲R̲E̲A̲D̲ ̲I̲T̲E̲M̲ ̲P̲T̲,̲ ̲I̲T̲E̲M̲ ̲L̲E̲N̲G̲T̲H̲,̲
                                     W̲R̲I̲T̲E̲ ̲I̲T̲E̲M̲ ̲P̲T̲)̲:̲
                                     ̲E̲R̲R̲O̲R̲ ̲O̲K̲

                 ERROR?  VAL ̲ERR = TRUE

                 OK?


             END CASE





 END CASE


 ND















Figuer 4.2.3.6.21-1…86…1         …02…   …02…   …02…   …02…       …02…  …02…                      
          
4.2.3.6.22   E̲X̲E̲C̲ ̲D̲I̲S̲P̲ ̲P̲R̲O̲C̲



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

 Calls the display procedure referred in the VUS ̲MMI
 ̲CONTROL ̲TABLE corresponding to each field in the format.
 The isplay-procedure performs necessary conversion
 and transfers data from input buffer to Buffer List.



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

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

 a)  EXEC ̲DISP ̲PROC     (DISP ̲PROC:  DISPLAY ̲PROCEDURE
                        ̲TYPE;
                 READ ̲ITEM ̲PT: INTEGER,
             ITEM ̲LENGTH:  INTEGER,
                 WRITE ̲ITEM ̲PT INTEGER)
                 (ITEM ̲LENGTH: INTEGER)

 b)  EXEC ̲DISP ̲PROC (R0, R1, R2, R3, R4, R5, R6, R7)



 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      DSPLAY ̲PROCEDURE         Destr.
         R2,R3   BYTE POINTER             Destr.
         R4      ITEM ̲LENGTH              Destr.
         R5, R7  BYTE POINTER             Destr.
         R6      LINK                     Destr.

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

         R0-R3, R5-R7                     Destr.
         R4:     ITEM ̲LENGTH

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

         Invalid Procedure


4.2.3.6.22.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̲d̲

             N/A

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

             N/A

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

             N/A



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

         Ref. Figure 4.2.3.6.22-1


 E̲X̲E̲C̲ ̲D̲I̲S̲P̲ ̲P̲R̲O̲C̲

 CASE DISP ̲PROC OF DISPLAY ̲PROCEDURE ̲TYPE

 DISP ̲TRANS ̲ID?      D̲I̲S̲P̲ ̲T̲R̲A̲N̲S̲ ̲I̲D̲ ̲(̲R̲E̲A̲D̲ ̲I̲T̲E̲M̲ ̲P̲T̲,̲ ̲I̲T̲E̲M̲
                     ̲L̲E̲N̲G̲T̲H̲,̲
                     W̲R̲I̲T̲E̲ ̲I̲T̲E̲M̲ ̲P̲T̲)̲

 INT ̲TO ̲ASCII?       I̲N̲T̲ ̲T̲O̲ ̲A̲S̲C̲I̲I̲ ̲(̲R̲E̲A̲D̲ ̲I̲T̲E̲M̲P̲T̲,̲ ̲I̲T̲E̲M̲
                     ̲L̲E̲N̲G̲T̲H̲,̲
                     W̲R̲I̲T̲E̲ ̲I̲T̲E̲M̲ ̲P̲T̲)̲










 MOVE ̲DATA?          M̲O̲V̲E̲ ̲D̲A̲T̲A̲ ̲(̲R̲E̲A̲D̲ ̲I̲T̲E̲M̲ ̲P̲T̲,̲ ̲I̲T̲E̲M̲ ̲L̲E̲N̲G̲T̲H̲,̲
                     W̲R̲I̲T̲E̲ ̲I̲T̲E̲M̲ ̲P̲T̲)̲

 END CASE

 END



















               Figure 4.2.3.6.22-1


4.2.3.6.23   S̲I̲G̲N̲A̲L̲ ̲S̲F̲C̲O̲



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

         Sets parameters in SVUP ̲COROUTINE ̲OP and signals specified
         semaphore.



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

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

         a)  SIGNAL ̲SFCO (SEM:       OPERATION ̲SEMAPHORE,
                          CC:        SVDIA ̲SFCO ̲CC ̲TYPE)

         b)  SIGNAL ̲SFCO (R0, 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̲

         R0: SEMAPHORE               (destr)
         R1: COMPLETION CODE         (destr)
         R6: LINK                    (destr)

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

         R0-R7                       (destr)

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

         None



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

             SFCO ̲SEM                4.1.4

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

             N/A


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

             N/A



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

         Refer figure 4.2.3.6.23-1.


         S̲I̲G̲N̲A̲L̲ ̲S̲F̲C̲O̲

         OPLIST ̲PT = 1

         LOOP UNTIL OPLIST ̲PT GT CMD ̲OP ̲CNT

             % OPLIST(OPLIST ̲PT).OP ̲ID.(1) = SVDIA ̲ID

             % OPLIST(OPLIST ̲PT).PARA1 = CC

             % OPLIST(OPLIST ̲PT).PARA2 = INPUTDATA ̲PT

             SIGNAL ̲OPSEM(SEM, OPLIST(OPLIST ̲PT)):OK

             INCREMENT OPLIST ̲PT

         END LOOP

         CMD ̲OP ̲CNT = 0

         CC EQ SPLIT ̲FAILED? D̲I̲A̲L̲O̲G̲U̲E̲ ̲C̲O̲N̲T̲R̲O̲L̲ ̲(̲4̲.̲2̲.̲3̲.̲4̲.̲1̲-̲1̲)̲

         END
























Figure 4.2.3.6.23-1…86…1         …02…   …02…   …02…   …02…         …02…     …02…                     
      
4.2.3.6.24   U̲P̲D̲A̲T̲E̲ ̲E̲R̲R̲O̲R̲ ̲L̲I̲S̲T̲



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

         Checks if old or new error list is to be used and enters
         line no., Incarnation no., Field no. and Error code
         i Error List:


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

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

         a)  UPDATE ̲ERROR ̲LIST       (LINE: LINE ̲NUMBER ̲TYPE
                                     INC:   INCARNATION ̲NUMBER
                                     ̲TYPE
                                     FIELD: FIELD ̲NUMBER ̲TYPE
                                     ERROR: ERROR ̲CODE)

         b)  UPDATE ̲ERROR ̲LIST (R0, R1, R2, R3, R)

         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̲

         R0  LINE                    (destr)
         R1  INC                     (destr)
         R2  FIELD                   (destr)
         R3  ERR                     (destr)
         R6  LINK                    (destr)

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

         R0-R7                       (destr)

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

         None




4.2.3.6.24.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̲d̲

             OLD ̲ERROR ̲LIST
             NE ̲PT
             OE ̲PT
             BNEL
             BOEL
             ER ̲PT
             EOER
             EOEL
             ENEL
             ERROR ̲LIST ̲FULL
             ERR ̲LIST

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

             NA

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

             N/A



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

         Ref figure 4.2.3.6.24-1.


U̲P̲D̲A̲T̲E̲ ̲E̲R̲R̲O̲R̲ ̲L̲I̲S̲T̲

OLD ̲ERROR ̲LIST?  INCREMENT OE ̲PT

INCREMENT NE ̲PT  BOER = BOEL

BOER = BNEL      ER ̲PT = OE ̲PT

ER ̲PT = NE ̲PT        EOER = EOEL

EOER = ENEL

ER ̲PT GT EOER?  ERR ̲LIST ̲FULL  TRUE

EQUIVALENCE (ERR ̲LIST(ER ̲PT), LINE ̲NO: ERRL ̲REC.MARGIN ̲LINE
 ̲NO)

EQUIVALENCE (ERR ̲LIST(ER ̲PT), INC: ERRL ̲REC.MARGIN ̲INC ̲NO)

EQUIVALENCE (ERR ̲LIST(ER ̲PT), ERROR: ERRL ̲REC.MARGIN ̲ERR ̲CODE)

EQUIVALENCE (ERR ̲LIST(ER ̲PT), FIELD ̲NO: ERRL ̲REC.ERRFIELD ̲NO)

LINE ̲NO = IOC ̲L ̲NO

INC = IOC ̲INC

ERROR = ERR

FIELD ̲NO = IOC ̲F ̲NO

END
















Figure 4.2.3.6.24-1…86…1         …02…   …02…   …02…   …02…         …02…     …02…                     
      
4.2.3.7  S̲u̲b̲p̲a̲c̲k̲a̲g̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲s̲



4.2.3.7.1    S̲F̲C̲O̲ ̲S̲V̲D̲I̲A̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲s̲

         SFCO commands:

         CLOSE

         CANCEL ̲I ̲O

         CLEAR ̲VDU

         INPUT ̲DATA

         OUTPUT ̲DATA

         OUTPUT ̲FORMAT

         L ̲INSERT

         L ̲DELETE
         Refer fig. 4.2.2.7.2-1



4.2.3.7.2    S̲V̲D̲I̲A̲ ̲S̲F̲C̲O̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲s̲

         SVDIA COMPLETIONS:

         Completion Codes: SPLIT ̲FAILED ̲CC,OK ̲CC,ERROR ̲CC

         Refer fig. 4.2.2.7.2-1



4.2.4    R̲e̲t̲r̲i̲e̲v̲e̲ ̲S̲u̲b̲p̲a̲c̲k̲a̲g̲e̲

         The S̲upervisor R̲e̲t̲r̲ieve Subpackage (SRETR) is responsible
         for reception and treatment of retrieval answer from
         SAR.



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 functions included in this subpackage are the following:

         -   reception of off-line/on-line notification
         -   reception of retrieved items

         The functional breakdown is shown in figure 4.2.4.1-1.
         Retrieved items and off-line/on-line notificationsare
         received from SAR in the retrieve queue. After analysis,
         the received item is sent to the destination.…86…1    
             …02…   …02…   …02…   …02…                …02…                     
                 















































                     Figure 4.2.4.1-1


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

         The retrieve subpackage consists of one coroutine containing
         the following modules and procedures:

         M̲o̲d̲u̲l̲e̲s̲:̲

         -RETRIEVAL ̲MAIN

         Common Procedures

         None

         Module Components:

         -RETR SIGNAL



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̲ ̲w̲i̲t̲h̲i̲n̲ ̲S̲R̲E̲T̲R̲



4.2.4.3.1    D̲a̲t̲a̲ ̲F̲l̲o̲w̲

         The HIPO diagrams overleaf show the data flow of SRETR.



4.2.4.3.2    C̲o̲n̲t̲r̲o̲l̲ ̲L̲o̲g̲i̲c̲

         The call structure within SRETR is shown n figure 4.2.4.3-4
         identifying all calls between modules and module components.














































           Fra diagr. ID: 4.2.4.3-1 - 4.2.4.3-3














































                     Figure 4.2.4.3-4



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



4.2.4.4.1    R̲E̲T̲R̲I̲E̲V̲A̲L̲ ̲M̲A̲I̲N̲ ̲M̲o̲d̲u̲l̲e̲



4.2.4.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 purpose of this module is to receive input from
         the Retrieve Queueand to analysis the received QEL-attributes.

         The result of the analysis is signalled to SFCO in
         case of on-line retrieval. In case of off-line retrieval,
         then the item received will be sent to the Response
         Queue.



4.2.4.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)  RETR ̲MAIN

         b)  RETR ̲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̲

         R6      LINK                 DEST

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

         None

         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̲

         a)  R̲E̲T̲R̲ ̲S̲I̲G̲N̲A̲L̲

         The purpose of this procedure is to signal a no