*DECK DLDISO
PROC DLDISO(FIELD,LENGTH,CHARWD); 
*IF DEF,IMS 
 #
* 
*     1. PROC NAME           AUTHOR              DATE.
*        DLDISO              S.KRULEVITCH        79/01/04 
* 
*     2. FUNCTIONAL DESCRIPTION.
*        CONVERT AN OCTAL NUMBER TO DISPLAY CODE
* 
*     3. METHOD USED. 
*        A RIGHT JUSTIFIED OCTAL NUMBER IS CONVERTED DIGIT
*        BY DIGIT TO A LEFT JUSTIFIED CHARACTER ITEM. 
*        UP TO 20 OCTAL DIGITS MAY BE CONVERTED.
* 
*     4. ENTRY PARAMETERS.
*        FIELD - A WORD CONTAINING THE OCTAL NUMBER IN
*                RIGHT MOST BITS. 
*        LENGTH - THE NUMBER OF OCTAL DIGITS TO BE CONVERTED
* 
*     5. EXIT PARAMETER.
*        CHARWD - CHARACTER WORD LEFT JUSTIFIED.
* 
*     6. COMDECKS CALLED. 
*        NONE.
* 
*     7. ROUTINES CALLED. 
*        NONE.
* 
*     8. DAYFILE MESSAGES.
*        NONE.
* 
 #
*ENDIF
      BEGIN 
# 
      INPUT PARAMETERS
# 
      ITEM FIELD   U;        # OCTAL NUMBER TO BE CONVERTED            #
      ITEM LENGTH  I;        # NUMBER OF OCTAL DIGITS                  #
# 
      OUTPUT PARAMETER
# 
      ITEM CHARWD  C(20);    # DISPLAY CODE WORD                       #
# 
      LOCAL VARIABLES 
# 
      DEF OCTL # 3 #;        # OCTAL DIGIT LENGTH IN BITS              #
      ITEM A;                # TEMPORARY VARIABLE                      #
      ITEM B;                # TEMPORARY VARIABLE                      #
                             # OCTAL TO DISPLAY CONVERSION             #
      ITEM OCTC C(8) = "01234567";
      ITEM OCTAL;            # 3 BIT OCTAL DIGIT                       #
      ITEM I;                # DO LOOP INDUCTION VARIABLE              #
      ITEM J;                # INDEX                                   #
#**********************************************************************#
# 
      OCTAL TO DISPLAY CODE CONVERSION
# 
      J = 0;
      CHARWD = " "; 
      A = 20 - LENGTH;
      FOR I = A STEP 1 UNTIL 19 DO
        BEGIN 
        OCTAL = B<I*OCTL,OCTL> FIELD; 
        C<J,1> CHARWD = C<OCTAL> OCTC;
        J = J + 1;
        END 
      END                    # DLDISO                                  #
TERM
