*COMDECK XCHD 
          IDENT  XCHD 
          ENTRY  XCHD 
          SYSCOM B1 
          TITLE  XCHD - CONVERT HEXIDECIMAL INTEGER TO DISPLAY CODE.
          COMMENT CONVERT HEXIDECIMAL INTEGER TO DISPLAY CODE.
          COMMENT COPYRIGHT CONTROL DATA CORP. 1978.
          SPACE  4,10 
***       XCHD - CONVERT HEXIDECIMAL INTEGER TO DISPLAY CODE. 
* 
*         CONVERT RIGHT MOST 40 BITS OF A BINARY WORD (10/4 BIT 
*         HEX DIGITS) TO 10 HEXIDECIMAL DISPLAY CODE CHARACTERS 
*         (LEFT ZEROES SUPPRESSED). 
* 
*         XX = XCHD(YY);           (*SYMPL* CALL) 
* 
*         ENTRY  XY, AN ITEM CONTAINING THE WORD TO BE CONVERTED. 
* 
*         EXIT   XX, HEX DISPLAY CODE EQUIVALENCE OF THE RIGHT MOST 
*                    10 HEX DIGIT IN YY.
* 
*         USES   X - 1, 2, 3, 4, 5, 6, 7. 
*                A - 1, 4.
*                B - 1, 2, 3, 4, 5, 6, 7. 
  
  
 XCHD     SUBR               ENTRY/EXIT 
          SB1    1           SYSCOM B1
          SA4    XCHDA       =1H
          SA1    X1          (X1) = HEXIDECIMAL INTEGER IN BINARY 
          SB7    1R0         (B7) = CHARACTER ZERO
          MX2    -4          (X2) = DIGIT MASK
          SB3    6           (B3) = SHIFT COUNT FOR EACH CHARACTER
          SB6    1R          (B6) = CHARACTER BLANK 
          SB5    1R9         (B5) = CHARACTER 9 
          SB2    -B3         INITIALIZE SHIFT COUNT 
          SB4    B7-B6       (B4) = CONVERSION VALUE FOR NUMERIC
 XCHD1    BX7    -X2*X1      EXTRACT DIGIT
          SX5    X7+B7       ADD CHARACTER ZERO TO DIGIT
          SB2    B2+B3
          LX4    -6 
          SX3    X7+B4       CONVERT DIGIT (W/BLANK BIAS) 
          AX1    4           SHIFT OFF DIGIT FROM INPUT WORD
          SX5    X5-1R9      SEE IF CHARACTER GREATER THAT NINE 
          NG     X5,XCHD2    IF LESS THAN NINE
          ZR     X5,XCHD2    IF EQUAL TO NINE 
          SX3    X5-1R       BIAS DIGIT BY CHARACTER BLANK INVERSE
 XCHD2    IX4    X4+X3       ADD DIGIT TO ASSEMBLY
          NZ     X1,XCHD1    IF NOT A ZERO DIGIT
          LX6    X4,B2
          EQ     XCHDX
  
 XCHDA    CON    1H          BLANK FILLED WORD
  
          END 
