*DECK NS$DFT USETEXT CYB$NS PROC NS$DFT((TEXTFWA),(N)); # DAYFILE TEXT IN OCTAL DISPLAY # # TITLE NS$DFT - DAYFILE TEXT IN OCTAL DISPLAY CODE. # BEGIN # NS$DFT # # ** NS$DFT - DAYFILE TEXT IN OCTAL DISPLAY. * * J.C. LEE 1981 * * THIS ROUTINE CONVERTS OCTAL NUMBER TO DISPLAY CODE. * * PROC NS$DFT((TEXTFWA),(N)) * * ENTRY: * TEXTFWA = FWA OF TEXT AREA. * N = NO OF TEXT WORDS TO BE CONVERTED. * * EXIT: * NONE. * * METHOD: * USE OCTAL TABLE TO CONVERT "N" NUMBER OF WORDS FROM * TEXT AREA TO OCTAL DISPLAY CODE. * # ITEM TEXTFWA U; # FWA OF TEXT AREA TO BE DISPLAYED # ITEM N U; # NO OF TEXT WORDS TO BE DISPLAYED # $BEGIN XREF BEGIN PROC NS$DBG; # TRACE PROCEDURE CALL # END $END XREF BEGIN PROC MESSAGE; # ISSUE DAYFILE MESSAGE # END ARRAY DISTEXT [0:0] S(3); BEGIN # TEXT IN DISPLAY CODE # ITEM DFMSGTEXT C(0,0,20); ITEM DFMSGEND U(2,0,60) = [0]; END BASED ARRAY OCTTEXT [0:0] S(1); BEGIN # TEXT IN OCTAL DIGITS # ITEM OCTWORD U(0,0,60); END ITEM I I; # LOOP INDUCTION VARIABLE FOR WORD COUNT # ITEM J I; # LOOP INDUCTION VARIABLE FOR CHAR CNT # ITEM K U; # TEMPORARY VARIABLE # ITEM OCTCTAB C(8) = "01234567"; ITEM OCTNUM U; # OCTAL NUMBER # CONTROL EJECT; $BEGIN NS$DBG("DFT"); # TRACE CALL # $END FOR I = 0 STEP 1 UNTIL (N - 1) DO # DISPLAY CONTENTS OF TEXT AREA # BEGIN P = TEXTFWA + I; # ADDRESS OF WORD TO DISPLAY # K = WL/3 - 1; FOR J = 0 STEP 1 UNTIL K DO # CONVERT OCTAL NUMBERS TO DISPLAY CODE # BEGIN OCTNUM = BOCTWORD[0]; CDFMSGTEXT[0] = COCTCTAB; END MESSAGE(DISTEXT,3); # SEND MESSAGE TO LOCAL DAYFILE # END RETURN; END # NS$DFT # TERM