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

⟦8740face8⟧ Wang Wps File

    Length: 32866 (0x8062)
    Types: Wang Wps File
    Notes: CPS/SDS/037               
    Names: »1895A «

Derivation

└─⟦3aebbc545⟧ Bits:30006093 8" Wang WCS floppy, CR 0145A
    └─ ⟦this⟧ »1895A « 

WangText

…0b……00……00……00……00…9…02……00……00…9
9 9…07…8…09…8…0c…8…0f…8…00…8
8…06…8…07…7…0b…7…0e…7…0f…7…01…7 7…05…7…07…6…0a…6…0d…6…0e…6…00…6…05…6…07…5…86…1                                             …02…           …02…   …02…    
           

…02…CPS/SDS/037

…02…CGN/820514…02……02…
MDCO 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 ̲TABEL.



4.2.3.6.13.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̲n̲

         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


             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 P̲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 ̲PARAM.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.LINK = 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̲a̲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 CPS/DBD/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 ̲DIFCO(MDOS ̲S2,SPLIT ̲                   FAILED)(4.2.3.6.23-1)…06…1
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      …02…
                                                                      
                                                                      
                                                                      …02…
                                                                      
                                                                      
                                                                      …02…
                                                                      
                                                                      
                                                                      …02…
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      …02…
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      
                                                                      

                     END CASE


             OK?


         END CASE

         END


























                   Figure 4.2.3.6.14-1


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̲

         a)  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 + I ̲SIZE

         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 ̲PT ̲BASE).

                                    F ̲BYRE ̲ADR - BYTE ̲COUNT

         IOC ̲PT = IOC ̲PT + ITEM ̲LENGTH

         END



                   Figure 4.2.3.6.15-1


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


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


         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


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̲

             FIXED            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


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

                 INCREMENT 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


4.2.3.6.18   D̲I̲S̲P̲L̲A̲Y̲ ̲L̲I̲N̲E̲ ̲N̲O̲S̲



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

         Displays line numbers in margin of format area.



4.2.3.6.18.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)  DISPLAY ̲LINE ̲NOS

         b)  DISPLAY ̲LINE ̲NOS (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.18.3 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲



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

         The procedure outputs line nos. by call of Format Handler
         (IOC).



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 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)  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̲ ̲R̲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 ̲F ̲NO? 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


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 ̲ITEM ̲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  ITEM ̲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.6

         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 4.2.3.6.21-1



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

 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


 END















               Figure 4.2.3.6.21-1


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 display-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      DISPLAY ̲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…86…1 …02…   …02…   …02…   …02…   …02…   …02…       …02…  …02…         …02…               
       
4.2.3.6.23   S̲I̲G̲N̲A̲L̲ ̲D̲I̲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 MDOS ̲OP and signals specified
         semaphore.



4.2.3.6.23.2 I̲n̲t̲e̲r̲f̲a̲c̲e̲ ̲D̲i̲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)  SIGNAL ̲DIFCO(SEM:  OPERATION ̲SEMAPHORE
                           CC:  DIDIA ̲DIFCO ̲CC ̲TYPE

         b)  SIGNAL ̲DIFCO (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̲s̲

         R0 - R7

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

         None…86…1 …02…   …02…   …02…   …02…   …02…   …02…       …02…  …02…         …02…   
                           
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̲

                 MDOS ̲OP                  refer 4.1.6

             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̲

             Ref. fig. 4.2.3.6.23-1…86…1 …02…   …02…   …02…   …02…   …02…  
             …02…       …02…  …02…         …02…                    
              
 SIGNAL ̲DIFCO

 OPLIST ̲PT = 1

 LOOP UNTIL OPLIST ̲PT GT CMD ̲OP ̲CNT

     % OPLIST (OPLIST ̲PT).OPT̲ID.ID = DIDIA ̲ID

     % OPLIST (OPLIST ̲PT).PARA1 = CC

     % OPLIST (OPLIST ̲PT). PARA2 = INPUT ̲DATA ̲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


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 is 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, 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      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̲

         Ro - R7                          Destr.

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

         None…86…1 …02…   …02…   …02…   …02…   …02…   …02…       …02…  …02…         …02…   
                           
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̲s̲

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

         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.2.4.4 P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲D̲e̲s̲i̲g̲n̲

             Ref. fig. 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.ERR
 ̲FIELD ̲NO

 LINE ̲NO = IOC ̲L ̲NO

 INC = IOC ̲INC

 ERROR = ERR

 FIELD ̲NO = IOC ̲F ̲NO

 END













               figure 4.2.3.6.24-1


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



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

         DIFCO commands:

         CLOSE
         CANCEL ̲I ̲O
         CLEAR ̲VDU
         INPUT ̲DATA
         OUTPUT ̲DATA
         OUTPUT ̲FORMAT
         L ̲INSERT
         L ̲DELETE
         DISPLAY ̲MENU



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

         DIDIA completions:

         CLOSE
         CANCEL ̲I ̲O
         CLEAR ̲VDU
         INPUT ̲DATA
         OUTPUT ̲DATA
         OUTPUT ̲FORMAT
         L ̲INSERT
         L ̲DELETE
         DISPLAY ̲MENU
         VALIDATION ̲RESULT in MDOS ̲COROUTINE IN PARA1:
         ERROR
         OK
         PRINT ̲REQ



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

         The Delivery Retrieval Coroutine Subpackage (DIRT)
         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

         -   reception of retrieval error-notification

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








                     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.

         DIRT will wait on reception of a QEL in the Retrieve
         Queue. The QEL will identify one of the following events:
         -   on-line/off-line notification
         -   on-line retrieval
         -   off-line retrieval
         -   retrieval error notification.

         Each of the events will constitute a main function.
         A brief description of each function is given below:

         a)  On-line/Off-line notification:

             The received QEL is sent to DIFCO

         b)  On-line Retrieval:

             The received item is sent to DIFCO.

         c)  Off-line Retrieval:

             The received item is sent to the Response Queue.

         d)  Retrieval ̲error ̲notification:

             The received QEL is sent to DIFCO



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.3.1    D̲a̲t̲a̲ ̲F̲l̲o̲w̲

         The HIPO diagram overleaf show the data flow of DIRT.



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

         The control logic of DIRT is only contained in one
         module.








                     Figure 4.2.4.3-1







                     Figure 4.2.4.3-2







                     Figure 4.2.4.2-3




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    D̲I̲R̲T̲ ̲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 retreive queue (MDOS ̲ARR, subqueue 3) and to analyse
         the received QEL-attributes (maintype, subtype).



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) DIRT ̲MAIN
         b) DIRT ̲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̲

         None

         The procedure is a submodule which is only called by
         the Coroutine Monitor.



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



4.2.4.4.1.3.1 D̲I̲R̲T̲ ̲Q̲E̲L̲ ̲I̲N̲V̲E̲S̲T̲

         These procedure analyse the QEL from SAR and selects
         the messages whether they are off-line stored or onlined
         stored messages within SAR.



4.2.4.4.1.3.2 O̲F̲F̲ ̲L̲I̲N̲E̲ ̲D̲I̲R̲T̲ ̲H̲A̲N̲D̲L̲I̲N̲G̲

         Sends the messages original stored off-line at SAR
         to the Resp-Queue.


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̲

             DIRT ̲OP                     refer 4.1.4
             MDOS ̲COROUTINE ̲OP ̲TYPE      refer 4.1.4
             QUEUE ̲ATTRIBUTE ̲TYPE        refer CPS/DBD/001
             QUEUE ̲REFERENCE ̲TYPE        refer CPS/DBD/001
             QEL ̲REFERENCE ̲TYPE          refer CPS/DBD/001
             QELEMENT ̲MAIN ̲TYPE          refer CPS/DBD/001
             SYST ̲CAT ̲SUBTYPE            refer CPS/DBD/001
             ACK ̲SUBTYPE                 refer CPS/DBD/001
             ERROR ̲NO                    refer 4.1.4
             PROFILE ̲FLAG                refer 4.2.4.5
             MDOS ̲S2                     refer 4.1.4
             SENDER ̲ID ̲TYPE              refer 4.1.4

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

             DIRT ̲OP (m)                 refer 4.1.4
             MDCO ̲ACTIVE ̲FLAG            refer 4.1.4
             TRANSACTION ̲ID              refer 4.1.4
             MDCO ̲SEND ̲PARAMS            refer 4.1.4
             MDOS ̲QEL                    refer 4.1.4
             MDOS ̲ATTR                   refer 4.1.4
             MDOS ̲QNAME                  refer 4.1.4
             INPUT ̲CIF                   refer 4.1.4

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

             None



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

         Objects received in the retrieve queue are analysed.
         The following actions are taken:

         -   Unknown QEL-types are sent to SSC.

         -   Online/Offline/Retrieved-error  notifications QEL-types
             are signalled to DIFCO.

         -   Other QEL-types are analysed and distributed to
             DIFCO or RESP ̲Q.

         System error will be reported by calling the TEP ̲INTERNAL
         ̲ERROR procedure





   DIRT ̲MAIN

   DIRT COROUTINE LOOP

      CASE RECEIVE ̲FIRST ̲QEL (WAIT, RETR ̲Q)

                     (MDOS ̲QEL,MDOS ̲ATTR, SUBQUEUE,
                     CC): ERROR ̲OK

         ERROR? CASE ANALYSE ERROR (CC, 1, QEL ̲PROFILE
         CHECK): (LI)

                     LI? SET PROFILE FLAG = TRUE

                 END CASE

         OK?

      END CASE

      CASE MDOS ̲ATTR.HEADER.MAINTYPE OF QELEMENT ̲MAIN
      ̲TYPE

         PLAINDRESS,

         SC ̲PLAINDRESS,

         ABB ̲PLAINDRESS?            D̲I̲R̲T̲ ̲O̲N̲E̲ ̲I̲N̲S̲P̲E̲C̲
         ̲(̲ ̲-̲2̲)̲

         SYSTEM ̲CATALOGUE ̲DISPLAY?  D̲I̲R̲T̲ ̲T̲W̲O̲ ̲I̲N̲S̲P̲E̲C̲
         ̲(̲-̲3̲)̲

         ACKNOWLEDGE?               D̲I̲R̲T̲ ̲T̲R̲E̲E̲ ̲I̲N̲S̲P̲E̲C̲
         ̲(̲-̲4̲)̲

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

      END CASE

   END LOOP

   END














              Figure 4.2.4.4.1.5-1



   DIRT ̲ONE ̲INSPEC

   CASE MDOS ̲ATTR.HEADER.SUBTYPE OF MESSAGE ̲SUBTYPE

      FOR ̲DISPLAY?    D̲I̲R̲T̲ ̲Q̲E̲L̲ ̲I̲N̲V̲E̲S̲T̲ ̲(̲4̲.̲2̲.̲4̲.̲4̲.̲1̲.̲3̲.̲1̲)̲

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

   END CASE



































              Figure 4.2.4.4.1.5-2


   DIRT ̲TWO ̲INSPEC

   CASE MDOS ̲ATTR.HEADER.SUBTYPE OF SYST ̲CAT ̲SUBTYPE

      FOR ̲SYST ̲DISPLAY?    D̲I̲R̲T̲ ̲Q̲E̲L̲ ̲I̲N̲V̲E̲S̲T̲ ̲(̲4̲.̲2̲.̲4̲.̲4̲.̲1̲.̲3̲.̲1̲)̲

      OTHERWISE?           M̲D̲O̲S̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲(̲C̲O̲N̲T̲I̲N̲U̲E̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

   END CASE



END































              Figure 4.2.4.4.1.5-3


   RETR ̲THREE ̲INSPEC

   CASE MDOS ̲ATTR. SUBTYPE OF ACK ̲SUBTYPE

   SAR ̲ONLINE ̲NOTIFICATION ̲ACK?  DIRT ̲OP.CMD = ONLINE
                                 NOTIFICATION 

                                    SIGNAL ̲OPSEM (MDOS
                                    ̲S2,DIRT ̲OP): OK

                                    D̲I̲S̲M̲A̲N̲T̲L̲E̲ ̲Q̲E̲L̲ ̲(̲4̲.̲1̲.̲5̲.̲3̲)̲


   SAR ̲OFFLINE NOTIFICATION ̲ACK? DIRT ̲OP.CMD = OFFLINE
                                 NOTIFICATION

                                    SIGNAL ̲OPSEM (MDOS
                                    S2, DIRT ̲OP) :
                                    OK

                                    D̲I̲S̲M̲A̲N̲T̲L̲E̲ ̲Q̲E̲L̲ ̲(̲4̲.̲1̲.̲5̲.̲3̲)̲


      SAR ̲ERROR ̲ACK?             R̲E̲T̲R̲ ̲F̲O̲U̲R̲ ̲I̲N̲S̲P̲E̲C̲(̲-̲5̲)̲

      OTHERWISE?                 M̲D̲O̲S̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲(̲C̲O̲N̲T̲I̲N̲U̲E̲)̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

   END CASE






















Figure 4.2.4.4.1.5-4…86…1…02…  …02…  …02…  …02…   …02…   …02…   …02…           …02…  …02…    …02…                   
          
   RETR ̲FOUR ̲INSPEC

   MDOS ̲ATTR.HEADER.INF.BIT 0 EQ FALSE?

                 O̲F̲F̲L̲I̲N̲E̲ ̲D̲I̲R̲T̲ ̲H̲A̲N̲D̲L̲I̲N̲G̲ ̲(̲4̲.̲2̲.̲4̲.̲4̲.̲1̲.̲3̲.̲2̲)̲

   MDOS ̲QEL ̲INFO.TRANSACTION ̲SER ̲NO NE TRANSACTION
   ̲ID. SERIAL ̲NO? 
                                  O̲F̲F̲L̲I̲N̲E̲ ̲D̲I̲R̲T̲ ̲H̲A̲N̲D̲L̲I̲N̲G̲
                                 ̲(̲4̲.̲2̲.̲4̲.̲4̲.̲1̲.̲3̲.̲2̲)̲

   MDOS ̲ACTIVE EQ FALSE? O̲F̲F̲L̲I̲N̲E̲ ̲D̲I̲R̲T̲ ̲H̲A̲N̲D̲L̲I̲N̲G̲ ̲(̲4̲.̲2̲.̲4̲.̲4̲.̲1̲.̲3̲.̲2̲)̲

   PROFILE ̲FLAG EQ TRUE? T̲E̲P̲ ̲I̲N̲T̲E̲R̲N̲A̲L̲ ̲E̲R̲R̲O̲R̲ ̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

   DIRT ̲OP.CMD = RETRIEVAL ̲ERROR

   SIGNAL ̲OPSEM (MDOS ̲S2,DIRT ̲OP):OK

   D̲I̲S̲M̲A̲N̲T̲L̲E̲ ̲Q̲E̲L̲ ̲(̲4̲.̲1̲.̲5̲.̲3̲)̲

   END























              Figure 4.2.4.4.1.5-5





   ONLINE DIRT ̲HANDLING

   START

         MDOS ̲QEL ̲INFO.TRANSACTION ̲SER ̲NO NE TRANSACTION
         ̲ID.
                                                  
 SERIAL ̲NO?

                                                                       O̲F̲F̲L̲I̲N̲E̲
                                                                       ̲D̲I̲R̲T̲
                                                                       ̲H̲A̲N̲D̲L̲I̲N̲G̲
                                                                       ̲(̲4̲.̲2̲.̲4̲.̲4̲.̲1̲.̲3̲.̲2̲)̲)̲

         MDCO ̲ACTIVE EQ FALSE?  O̲F̲F̲L̲I̲N̲E̲ ̲D̲I̲R̲T̲ ̲H̲A̲N̲D̲L̲I̲N̲G̲
         ̲(̲4̲.̲2̲.̲4̲.̲4̲.̲1̲.̲3̲.̲2̲)̲

         PROFILE ̲FLAG EQ TRUE?  T̲E̲P̲ ̲Q̲U̲E̲U̲E̲ ̲E̲R̲R̲O̲R̲ ̲(̲G̲I̲V̲E̲
         ̲U̲P̲)̲ ̲(̲4̲.̲1̲.̲5̲.̲1̲)̲

         DIRT ̲OP.CMD = RETR ̲NOTIFICATION

         INPUT ̲CIF = MDOS ̲QEL

         DIRT ̲OP.PARA1 = MDOS ̲ATTR.HEADER.MAINTYPE

         DIRT ̲OP.PARA2 = MDOS ̲ATTR ̲HEADER.FLAGS

         SIGNAL ̲OPSEM (MDOS ̲S2, DIRT ̲OP): OK

   END



























              Figure 4.2.4.4.1.5-6


         DIRT ̲QEL ̲INVEST

             MDOS ̲ATTR.HEADER.INF.BIT 0 EQ TRUE?

                              O̲F̲F̲L̲I̲N̲E̲ ̲D̲I̲R̲T̲ ̲H̲A̲N̲D̲L̲I̲N̲G̲ ̲                  
                                                                      
                                                                      (4.2.4.4.1.3.2)

             O̲N̲L̲I̲N̲E̲ ̲D̲I̲R̲T̲ ̲H̲A̲N̲D̲L̲I̲N̲G̲ ̲(̲-̲6̲)̲

         END






































                   Figure 4.2.4.4.1.3.1


                  OFFLINE ̲DIRT ̲HANDLING

         MDOS ̲SEND ̲PARAMS.HEADER = MDOS.ATTR.HEADER

         MDOS ̲QNAME MAIN = RESPQ

         CASE SEND (MDOS ̲SEND ̲PARAMS, MDOS ̲QEL, MDOS ̲QNAME)
                   (MDOS ̲SEND ̲PARAMS, CC): ERROR ̲OK

             ERROR?  CASE ANALYZE ̲ERROR (CC, 1, 
                                 BLOCKED ̲QUEUE):(LABEL ̲1, 

                     LABEL ̲1?

                 END CASE

             OK?

         END CASE

         D̲I̲S̲M̲A̲N̲T̲L̲E̲ ̲Q̲E̲L̲ ̲(̲4̲.̲1̲.̲5̲.̲3̲)̲






















                   Figure 4.2.4.4.1.5-6



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

         VAR PROFILE ̲FLAG:         BOOLEAN



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̲

         NONE



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    D̲I̲R̲T̲-̲D̲I̲F̲C̲O̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲s̲

         The following notificatons are sent from DIRT
         to DIFCO via operation semaphore MDOS ̲S2.

         ONLINE ̲NOTIFICATION
         OFFLINE ̲NOTIFICAITON
         RETRIEVAL ̲NOTIFICATION
         RETRIEVAL ̲ERROR ̲NOTIFICATION

         IN DIRT ̲OP.PARA1      the QEL ̲ATTR.MAINTYPE
         and DIRT ̲OP.PARA2     the QEL ̲ATTR.FLAGS


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

     As a basis for calculation the following figures
     are used:

     D̲I̲V̲C̲O̲ ̲C̲O̲R̲O̲U̲T̲I̲N̲E̲

     7 MODULES x 0,125K            0,875 K
     9 PROCEDURES x 0,025K         0̲,̲2̲2̲5̲ ̲K̲
                                   1,1   K         
                                   1,1 K

     D̲I̲F̲C̲O̲ ̲C̲O̲R̲O̲U̲T̲I̲N̲E̲

     12 MODULES x 0,175K           2,10 K
     31 PROCEDURES x 0,050K        1̲,̲5̲5̲ ̲K̲
                                   3,75 K          
                                   3,75 K

     D̲I̲D̲I̲A̲ ̲C̲O̲R̲O̲U̲T̲I̲N̲E̲

     7 MODULES x 0,175K =          1,225 K
     24 PROCEDURES 0,050K =        1̲,̲2̲ ̲ ̲ ̲K̲
                                   2.425 K         
                                   2,425 K

     D̲I̲R̲T̲ ̲C̲O̲R̲O̲U̲T̲I̲N̲E̲

     1 MODULE x 0,300K =           0,300 K         
                                   0̲,̲3̲ ̲ ̲ ̲K̲
     T̲O̲T̲A̲L̲                                         
     7,575 K

     This 1 Souce statement equal 2Words and Data-Area
     is estimated to 3K Words the total Memory turns
     to be:

     7,575K WORDS x 2 + 3K WORDS = 1̲8̲,̲1̲5̲K̲ ̲W̲O̲R̲D̲S̲


                        APPENDIX A



         This appendix contains the part of the MMI ̲CONTROL
         ̲TABLE that is specific to the MDCO together with specification
         of DISPLAY/VALIDATION procedrues referenced via the
         table.

         Specification of the remaining part of the MMI ̲CONTROL
         ̲TABLE relevant to the MDCO can be found in CPS/SDS/039
         and CPS/SDS/035 together with specification of referenced
         procedures.




         O̲U̲T̲P̲U̲T̲ ̲T̲E̲R̲M̲ ̲D̲E̲S̲I̲G̲N̲A̲T̲O̲R̲

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

         This procedure generates a Terminal designator to be
         displayed.

         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)  OUTPUT ̲TERM ̲DESIGNATOR (READ-ITEM.PT      INTEGER
                                     ITEM-LENGTH       INTEGER
                                     WHITE-ITEM ̲PT     INTEGER)
                                     (ITEM-LENGTH      INTEGER):
                                                       ERROR
                                                       ̲OK

         b)  OUTPUT ̲TERM ̲DESIGNATOR  (R0,R1,R2,R6):    ERROR
                                                       ̲OK

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

         R0-R1   Pointer to Item to be converted
         R2      Length of Item to be converted
         R3-R4   Pointer to where item is to be stored
         R6      LINK

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

         R0-R1   Destroyed
         R2      Length of converted item
         R3-R7   Destroyed

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

         N/A

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

         VAR   TABB    : TABEL ̲ID TYPE

         VAR   DESIGNATOR: TERMINAL ̲DESIGNATOR TYPE

         TYPE  DESIG ̲PARAM: DESIG ̲PARAM TYPE



         TYPE  TERM RECORD =

                  RECORD
                     DEVICE ̲ID:DEVICE ̲ID ̲TYPE
                     LOGICAL ̲DESIGNATOR:LOCAL DESIGNATOR TYPE
                  END

               DESIG ̲PARAM ̲TYPE=

                  RECORD
                     DESIG:LOGICAL DESIGNATOR ̲TYPE
                     INFO:INTEGER
                     LINK:POINTER
                  END

         VAR:  KEY ̲COUNT=1

         TYPE:DESIG ̲PARAM ̲SIZE=SIZE (SCD ̲TYPE)

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

         The terminal-designator is given by TMP. The specified
         Device-id decides which table to call and the Logical-Designator
         is the key to the table.


   OUTPUT ̲TERM ̲DESIGNATOR

         EQUIVALENCE(READ ̲ITEM ̲PT,TERM ̲RECORD:TERM
         ̲RECORD TYPE


         DESIG ̲PARAM.DESIG=TERMRECORD.LOGICAL ̲DESIGNATOR

         CASE DEVICE ̲ID OF DEVICE ̲ID ̲TYPE

               TERM?                 TABB=TERMINAL
                                     ̲PROFILE

               DEVICE?               TABB=DEVICE ̲PROFILE

               OTHERWISE?            MDOS ̲INTERNAL
                                     ̲ERROR(4.1.5.2)

         END CASE

         CASE SEARCH PRIMARY KEY (TABB,DESIGPARAM,KEYCOUNT
                                         SIZE(DESIGNATOR),BIT
                                     14)
                                        (DESIGNATOR,CC):ERROR
                                     ̲OK

               ERRORS? ANALYSE ERROR (CC,0)

               OK?

         END CASE

         EQUIVALENCE(WRITE ̲ITEM ̲PT,DESIGNATOR:TERMINAL
         ̲DESIGNATION ̲
                                                       
                                                       
                                                       
                                                       
                                                       
                                                       
                                                       
                                                       
                                                       
                                                       
                                                       
                                                       
                                                       
                                                       
                                                       
                                                       
                                                       
                                                       
                                                       
                                                       TYPE

END



         O̲U̲T̲P̲U̲T̲-̲A̲S̲S̲O̲C̲I̲A̲T̲E̲D̲ ̲S̲C̲D̲

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

         The delivered SCD list from MDP will be displayed one
         SCD a time

         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)  OUTPUT ̲ASSOCIATED ̲SCD  (READ-ITEM.PT      INTEGER
                                     ITEM-LENGTH       INTEGER
                                     WHITE-ITEM ̲PT     INTEGER)
                                     (ITEM-LENGTH      INTEGER):
                                                       ERROR
                                                       ̲OK

         b)  OUTPUT ̲ASSOCIATED SCD   (R0,R1,R2,R6):    ERROR
                                                       ̲OK

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

         R0-R1   Pointer to Item to be converted
         R2      Length of Item to be converted
         R3-R4   Pointer to where item is to be stored
         R6      LINK

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

         R0-R1   Destroyed
         R2      Length of converted item
         R3-R7   Destroyed

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

         N/A

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



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

         First the count in Queue list. Queue line. Q ̲SCDc̲NO
         is checked. If it is zero the Item length is null and
         the procedure is exided. If the count is different
         from zero the counter is decremented and the next SCD
         is displayed.…86…1…02…  …02…  …02…  …02…  …02…  …02…  …02…  …02…  …02…            …02…        
                 …02…         
         OUTPUT ASSOCIATED SCD

               EQUIVALENCE(MMI ̲CTRL ̲TABLE(MMI ̲PT)

                        CNT ̲PT:MMI ̲CTRL ̲REC.ITEM ̲COUNT ̲PT)

               EQUIVALENCE(MMI ̲CTRL ̲TABLE(MMI ̲PI),

                        CNT ̲PT:MMI ̲CTRL ̲REC.ITEM ̲COUNT ̲BASE)

               EQUIVALENCE((BOCB(I ̲CNT ̲BASE)+CNT ̲PT)%,COUNT:INTEGER)

               COUNT EQ 0?   ITEM ̲LENGTH=0

               DECREMENT ̲COUNT

               EQUIVALENCE(READ ̲ITEM ̲PT,INPUT ̲SCD)

               OUTPUT SCD=INPUT-̲SCD

               EQUIVALENCE(WRITE ̲ITEM ̲PT,OUTPUT ̲SCD)

         END



         A̲N̲N̲O̲T̲A̲T̲I̲O̲N̲ ̲D̲I̲S̲P̲L̲A̲Y̲

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

         The error ̲codes from MDP with Incoming Distribution
         QEL is displayed in the Annotation display line.

         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)  ANNOTATION ̲DISPLAY     (READ-ITEM.PT      INTEGER
                                     ITEM-LENGTH       INTEGER
                                     WHITE-ITEM ̲PT     INTEGER)
                                     (ITEM-LENGTH      INTEGER):
                                                       ERROR
                                                       ̲OK

         b)  ANNOTATION ̲DISPLAY      (R0,R1,R2,R6):    ERROR
                                                       ̲OK

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

         R0-R1   Pointer to Item to be converted
         R2      Length of Item to be converted
         R3-R4   Pointer to where item is to be stored
         R6      LINK

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

         R0-R1   Destroyed
         R2      Length of converted item
         R3-R7   Destroyed

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

         N/A

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

         CONST:  ANN1
                 ANN2
                 ANN3
                 ANN4
                 ANN5
                 ANN6
                 ANN7
                 ANN8
                 ANN9


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

         The MDP error-codes is converted to MDOS annotation
         numbers.…86…1…02…  …02…  …02…  …02…   …02…   …02…   …02…               …02…           
              …02…         
         ANNOTATION

             EQUIVALENCE(WRITE ̲ITEM ̲PT,ANNOTATION:ARRAY(1....9
             of 4 CHAR)

             AN=1

             BITT=0

             LOOP UNTIL BITT=9

             RECV ̲QEL ̲ATTR.HEADER.INF.BIT(BITT)EQ FALSE?

             CASE BITT OF

                 0?  CODE = ANN1

                 1?  CODE = ANN2

                 2?  CODE = ANN3

                 3?  CODE = ANN4

                 4?  CODE = ANN5

                 5?  CODE = ANN6

                 6?  CODE = ANN7

                 7?  CODE = ANN8

                 8?  CODE = ANN9

             END CASE

             ANNOTATION(AN) = CODE

             AN = AN+1

             BITT = BITT+1

             END LOOP

         DISPLAY



         PRINT ̲REQ

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

         The local print area on VDU is checked. If it is a
         Y character, print-flag is set to true so DIFCO will
         be informed after all the input has been validated.

         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)  PRINT ̲REQ              (READ-ITEM.PT      INTEGER
                                     ITEM-LENGTH       INTEGER
                                     WHITE-ITEM ̲PT     INTEGER)
                                     (ITEM-LENGTH      INTEGER):
                                                       ERROR
                                                       ̲OK

         b)  PRINT ̲REQ               (R0,R1,R2,R6):    ERROR
                                                       ̲OK

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

         R0-R1   Pointer to Item to be converted
         R2      Length of Item to be converted
         R3-R4   Pointer to where item is to be stored
         R6      LINK

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

         R0-R1   Destroyed
         R2      Length of converted item
         R3-R7   Destroyed

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

         N/A

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

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

         PRINT ̲FLAG (m) refer 4.3.2.5.


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

         The Print flag will be true when a print-copy is demanded



         C̲O̲N̲V̲E̲R̲T̲ ̲T̲O̲ ̲M̲D̲C̲O̲ ̲E̲R̲R̲O̲R̲ ̲N̲O̲

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

         The delivered code from MDP is converted to a known
         MDCO ̲ERROR ̲CODE ̲NO.


         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)  CONVERT TO MDCO ̲ERROR NO (READ-ITEM.PT   INTEGER
                                      ITEM-LENGTH      INTEGER
                                      WHITE-ITEM ̲PT    INTEGER)
                                      (ITEM-LENGTH     INTEGER):
                                                       ERROR
                                                       ̲OK

         b)  CONVERT TO MDCO ̲ERROR NO.(R0,R1,R2,R6):   ERROR
                                                       ̲OK

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

         R0-R1   Pointer to Item to be converted
         R2      Length of Item to be converted
         R3-R4   Pointer to where item is to be stored
         R6      LINK

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

         R0-R1   Destroyed
         R2      Length of converted item
         R3-R7   Destroyed

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

         N/A

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



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

         The delivered code is analysed and converted to a similar
         internal MDCO ̲ERROR ̲CODE ̲NO.








                        APPENDIX B



         This appendix contains the SEC ̲Tables used in procedure
         4.2.2.4-11 and the function procedure which the tables
         refer to is found in the Function Execution modul 4.2.2.4.12.