*DECK C$MCS3
          IDENT  C$MCS3 
          TITLE  C$MCS3 - PROGRAM-ID AND LINE NUMBER AND SOFT EXTERNAL
          MACHINE ANY,I 
          COMMENT PROGRAM-ID AND LINE NUMBER UTILITY
          SST 
          B1=1
          SPACE  5
* 
**        C.MCS3 - PROGRAM-ID AND LINE NUMBER UTILITY 
* 
*         INPUT 
*                A1  ADDRESS OF ENTRY POINT 
*                X1  VALUE OF ENTRY POINT RETURN
* 
*         OUTPUT
*                NONE 
* 
*         DOES
*                STORES C.PGMID IN MCSPB+4
*                CALCULATES CBLNO AND STORES IN MCSPB+3 
* 
*         USES
*                A  - 1 - - - - 6 7 
*                X  0 1 - - - - 6 7 
*                B  0 1 2 - - - - - 
          EJECT 
          EXT    C.APPLE     MCS APPLICATION NAME 
          EXT    C.STOP2
          USE    /C.MCSPB/
 MCSPB    BSS    64 
 CDADDR   BSS    1
          USE    *
          EXT    C.STACK
          ENTRY  C.MCS3 
 C.MCS3   DATA   0
          LX1    30 
          SB2    X1          B2 = RETURN ADDRESS + 1
          SA1    B2-B1       X1 = RJ C.XXX + LINE NUMBER
          MX0    42 
          BX6    -X0*X1      X6 = LINE NUMBER 
          SA1    =XC.STACK   X1 = ADDRESS OF PROGRAM-ID OF MAIN PROGRAM 
          SA1    X1          X1 = PROGRAM-ID LEFT JUSTIFIED 
          BX7    X0*X1       X7 = FIRST 7 CHARS OF PROGRAM-ID 
          BX6    X6+X7       X6 = PROGRAM-ID CBLNO
          SA6    MCSPB+3     STORE INTO MCSPB WORD 3
          SA1    =XC.APPLE   X1 = MCS APPLICATION NAME FROM *APPLE
          BX6    X1 
          SA6    A6+B1       STORE IN MCSPB WORD 4
          EQ     C.MCS3 
          SX7    =XC.STOP2   FORCE C.STOP2 TO BE LOADED FOR CBINIT
          END 
