*DECK C$PRTRC 
          IDENT  C$PRTRC
          TITLE  C$PRTRC - PRINT TRACE BACK INFORMATION 
          MACHINE   ANY,I 
          COMMENT   PRINT TRACE BACK INFO 
          SST 
          SPACE  5
**
*         C.PRTRC  -  PRINT TRACE BACK
* 
          EXT    C.STACK
          EXT    C.DEPTH
 STACK    EQU    C.STACK
 DEPTH    EQU    C.DEPTH
          ENTRY  C.PRTRC
 C.PRTRC  DATA   0
          SA1    STACK
          ZR     X1,C.PRTRC  OLD BINARY 
          SA2    =XC.MSD00
          SA3    A1-B1       GET WORD BEFORE STACK
          BX6    X2 
          SA6    MSDSAVE
          SA2    DEPTH
          SX6    NWDS 
          AX3    36          POSITION BINARY LEVEL (IF 530 OR LATER)
          NZ     X3,NTOB     JP IF NOT PRE-530 BINARY 
          IX2    X2*X6       PRE-530 BINARY - BIAS DEPTH BY NWDS
 NTOB     BSS    0
          IX4    X2-X6
          SX1    X1 
          IX5    X1+X4
 PRTRC1   SA1    X5 
          BX6    X1 
          SA6    =XC.MSLNO
          SA1    A1+B1
          SA2    =10H 
          IX3    X2-X1
          ZR     X3,PRTRC2
          BX6    X1 
          SA6    A6+B1
          SA1    A1+B1
          IX3    X2-X1
          ZR     X3,PRTRC2
          BX6    X1 
          SA6    A6+B1
 PRTRC2   MX6    0
          SA6    A6+B1
          SA1    =XC.MSLIN
          BX6    X1 
          SA6    A6+B1
          MX6    0
          SA6    A6+B1
          BX7    X5 
          SA7    ADDR 
          SA1    MSDSAVE
          BX6    X1 
          SA6    =XC.MSD00
          SYSTEM D00,1,=XC.MSD00
          SA2    ADDR 
          SA3    STACK
          SX3    X3 
          IX7    X2-X3
          ZR     X7,C.PRTRC 
          SA1    X2+3 
          SX1    X1 
          RJ     =XC.MSCV    CONVERT LINE NUMBER
          SA7    =XC.MSLIN
          SA5    ADDR 
          SX5    X5-NWDS
          EQ     PRTRC1 
 NWDS     EQU    "STKSIZ" 
 ADDR     BSS    1
 MSDSAVE  BSS    1
          EJECT 
          ENTRY  C.MSCV 
* 
*  ROUTINE TO TAKE A 10 DIGIT DISPLAY CODE NUMBER, AND CONVERT IT TO
*  -D00- INSERTION FORMAT, NAMELY LEFT-JUSTIFIED WITH BINARY ZERO FILL. 
*       ENTER WITH NUMBER IN X1 
*       EXIT WITH NUMBER IN X7
*       DESTROYS A4, A5, X4, X5, X6, B5, B6 
* 
 C.MSCV0  SA4    A4-B1
          BX7    -X4*X1      MASK OFF LEADING DISPLAY ZEROS 
          LX7    B6,X7       LEFT-JUSTIFY AND BINARY ZERO FILL
 C.MSCV   BSS    1
          RJ     =XC.R1U06   CONVERT BINARY NUMBER TO DECIMAL DISPLAY 
*                             (WITH LEADING ZEROS) INTO X1
          SA5    =XC.ZEROS   3333333333B
          SA4    =XC.MASK    0,770--0B,77770--0B,7777770--0B, ETC.
          SB5    54          ENSURE AT LEAST 1 NUMERIC DIGIT, EVEN IF 0 
          SB6    B0          SIZE OF MASK IN BITS - 6 
 C.MSCV1  SA4    A4+B1       NEXT MASK
          BX7    X4*X1
          BX6    X4*X5
          IX7    X7-X6
          NZ     X7,C.MSCV0  JUMP IF 1ST NON-LEADING DISPLAY ZERO 
          SB6    B6+6        SIZE OF NEXT MASK IN BITS - 6
          NE     B6,B5,C.MSCV1  JUMP IF NOT 10TH CHARACTER
          EQ     C.MSCV0
          END 
