* INITIALIZE COBOL RUNTIME                              HEADER  C:INIT  0001.000
*                                                                       0002.000
*                                                                       0003.000
*              INITIALIZE COBOL RUNTIME                                 0004.000
         M.PGM     C:INIT,MPX-32,3.6.1,00                               0005.000
         DEF   C:INIT                                                   0006.000
*        EXT   CR.IPRNT                                                 0007.000
         M.REQS                                                         0008.000
*                                                                       0009.000
* INITIALIZE ARITHEMATIC DATA                                           0010.000
*                                                                       0011.000
C:SGCOM  COMMON    NMCURSEG,NMROOTSG,RTSEGLOC,SGDELTA,SGJETLOC          0012.000
         ORG       NMCURSEG                                             0013.000
         DATAW     0,0,0,0,0                                            0014.000
COBDATA  COMMON EXTDATA(1024)                                           0015.000
         ORG   EXTDATA                                                  0016.000
*                                                                       0017.000
* DIGIT TRANSLATE TABLE                                                 0018.000
*                                                                       0019.000
DIGIT    DATAD X'FFFFFFFFFFFFFFFF',X'FFFFFFFFFFFFFFFF',;                0020.000
               X'FFFFFFFFFFFFFFFF',X'FFFFFFFFFFFFFFFF',;                0021.000
               X'FFFFFFFFFFFFFFFF',X'FFFFFFFFFFFFFF01',;                0022.000
               X'0001020304050607',X'0809FFFFFFFFFFFF',;                0023.000
               X'0001020304050607',X'0809010203040506',;                0024.000
               X'0708090203040506',X'070809FFFFFFFFFF',;                0025.000
               X'FFFFFFFFFFFFFFFF',X'FFFFFFFFFFFFFFFF',;                0026.000
               X'FFFFFFFFFFFFFFFF',X'FFFFFF00FF00FFFF'                  0027.000
         DATAD X'FFFFFFFFFFFFFFFF',X'FFFFFFFFFFFFFFFF',;                0028.000
               X'FFFFFFFFFFFFFFFF',X'FFFFFFFFFFFFFFFF',;                0029.000
               X'FFFFFFFFFFFFFFFF',X'FFFFFFFFFFFFFF09',;                0030.000
               X'0908070605040302',X'0100FFFFFFFFFFFF',;                0031.000
               X'0908070605040302',X'0100080706050403',;                0032.000
               X'0201000706050403',X'020100FFFFFFFFFF',;                0033.000
               X'FFFFFFFFFFFFFFFF',X'FFFFFFFFFFFFFFFF',;                0034.000
               X'FFFFFFFFFFFFFFFF',X'FFFFFF09FF09FFFF'                  0035.000
*                                                                       0036.000
* POWERS OF 10 IN BINARY                                                0037.000
*                                                                       0038.000
POW10    DATAD F'1E00',F'1E01',F'1E02',F'1E03',F'1E04',F'1E05';         0039.000
              ,F'1E06',F'1E07',F'1E08',F'1E09',F'1E10',F'1E11';         0040.000
              ,F'1E12',F'1E13',F'1E14',F'1E15',F'1E16',F'1E17'          0041.000
ACC      REZ   9D             BINARY ACCUMULATORS                       0042.000
DECA     REZ   360B           DECIMAL ACCUMULATORS                      0043.000
CND      REZ   1W             CONDITION CODE                            0044.000
SEGLOC   REZ   1W             LOCATION OF CURRENT SEGMENT               0045.000
HALFDD   DATAW X'80000001',HALFDD+2W,X'35000000'                        0046.000
DACC     REZ   9H             DECIMAL POSITION FOR BINARY ACC           0047.000
DDECA    DATAH 37,77,117,157,197,237,277,317,357                        0048.000
NDECA    DATAH 0,40,80,120,160,200,240,280,320                          0049.000
BOFLO    REZ   9B             BINARY OVERFLOW INDICATORS                0050.000
DOFLO    REZ   9B             DECIMAL OVERFLOW INDICATORS               0051.000
ONSZ     REZ   1B             ON SIZE ERROR                             0052.000
SIZERR   REZ   1B             SIZE ERROR                                0053.000
SEGFLG   REZ   1B             INDICATES SEGMENTED JUMP                  0054.000
PROGOPT  REZ   1W             PROGRAM OPTION WORD                       0055.000
*                                                                       0056.000
* PRINTER FCB AND BUFFER                                                0057.000
*                                                                       0058.000
*        M.DFCB    SPRFCB,SPR,,,,SPRBUF,,,,,,,,,,,,GDB                  0059.000
SPRBUF   RES       192W                                                 0060.000
         REL                                                            0061.000
*                                                                       0062.000
* INITIALIZE RUNTIME                                                    0063.000
*                                                                       0064.000
C:INIT   EQU       $                                                    0065.000
         LOAD      2                                                    0066.000
         STW       R1,RTSEGLOC                                          0067.000
         STW       R2,NMROOTSG                                          0068.000
        M.PGOW               GET PROGRAM OPTION WORD                    0069.000
         STW   7,PROGOPT        AND SAVE IT                             0070.000
*        BU    CR.IPRNT       INITIALIZE PRINTER                        0071.000
         TRSW      R0              RETURN                               0072.000
         END                                                            0073.000
