IDENT FCOPY,FETS,FCOPY ABS ENTRY FCOPY ENTRY RFL= SYSCOM B1 *COMMENT FCOPY - FILE COPY. COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992. TITLE FCOPY - FILE COPY. SPACE 4,10 *** FCOPY - FILE COPY. * D. R. HILGREN 79/01/15. * J. HOLLISTER 82/02/22. SPACE 4,10 *** *FCOPY* CONVERTS A FILE FROM ONE CODE SET FORMAT * TO ANOTHER CODE SET FORMAT. SPACE 4,20 *** COMMAND. * * FCOPY(P=LFN1,N=LFN2,PC=IC1,NC=IC2,PL=LT1,NL=LT2,FL=L,LB=N,R,A) * * LFN1 FILE TO BE CONVERTED (DEFAULT IS *OLD*). LFN1 * IS NOT REWOUND BEFORE OR AFTER THE OPERATION. * * LFN2 FILE WRITTEN IN NEW FORMAT (DEFAULT IS *NEW*). * LFN2 IS NOT REWOUND BEFORE OR AFTER THE OPERATION. * * IC1 INTERNAL CHARACTERISTIC OF LFN1 (DEFAULT IS * *ASCII*). * * IC2 INTERNAL CHARACTERISTIC OF LFN2 (DEFAULT IS * *ASCII8*). * * DIS = 6 BIT DISPLAY CODE BASED ON EITHER 63 OR 64 * CHARACTER SET, WHICHEVER IS IN USE IN THE * RESIDENT SYSTEM. * * DIS63 = 6 BIT DISPLAY CODE, BASED ON 63 * CHARACTER SET. * * DIS64 = 6 BIT DISPLAY CODE, BASED ON 64 * CHARACTER SET. * * ASCII = 6/12 DISPLAY CODE BASED ON EITHER 63 OR 64 * CHARACTER SET. * * ASCII63 = 6/12 DISPLAY CODE BASED ON THE 63 CHARACTER * SET. * * ASCII64 = 6/12 DISPLAY CODE, BASED ON THE 64 CHARACTER * SET. * * ASCII8 = 7 BIT SUBSET OF 8 BIT ASCII, RIGHT * JUSTIFIED IN 12 BITS. * * ASCII88 = FULL 8 BIT ASCII CHARACTER SET IN 8 BITS. * * ASCFL = FULL 8 BIT ASCII, IN FIXED LENGTH LINES * WITHOUT LINE TERMINATORS (STRANGER TAPES * ONLY). * * EBCFL = 8 BIT EBCDIC, IN FIXED LENGTH LINES * WITHOUT LINE TERMINATORS (STRANGER TAPES * ONLY). * * LT1 LINE TERMINATOR OF LFN1 (DEFAULT IS ZERO BYTE). * * LT2 LINE TERMINATOR OF LFN2 (DEFAULT IS ZERO BYTE). * * ZB = ZERO BYTE. * CR = CARRIAGE RETURN. * FF = FORM FEED. * LF = LINE FEED. * US = UNIT SEPARATOR. * RS = RECORD SEPARATOR. * CRLF = CARRIAGE RETURN-LINE FEED. * LFCR = LINE FEED-CARRIAGE RETURN. * NN = SPECIFIED OCTAL VALUE. * * THE FOLLOWING TABLE SPECIFIES THE LEGAL COMBINATIONS * OF CODE SETS (INTERNAL CHARACTERISTICS) AND LINE * TERMINATORS. * * * * LINE TERMINATOR * CODE SET * * * ZB CR FF LF US RS CRLF LFCR NN * ****************************************************** * DIS * Y N N N N N N N 0-77B * * * DIS63 * Y N N N N N N N 0-77B * * * DIS64 * Y N N N N N N N 0-77B * * * ASCII * Y Y Y Y Y Y N N 0-77B * * * * ASCII63 * Y Y Y Y Y Y N N 0-77B * * * * ASCII64 * Y Y Y Y Y Y N N 0-77B * * * * ASCII8 * Y Y Y Y Y Y Y Y 0-377B * * * ASCII88 * N Y Y Y Y Y Y Y 0-377B * * * ASCFL * N N N N N N N N N * * * EBCFL * N N N N N N N N N * * * +7400B OR 7700B, IF DESIRED. * * L FIXED LENGTH LINE LENGTH. THIS PARAMETER IS ONLY * USED ON STRANGER TAPES. (DEFAULT IS 80) * * N LINES PER BLOCK ON STRANGER TAPE. FOR S-FORMAT * STRANGER TAPE, THE PRODUCT OF THE FIXED LINE LENGTH * AND THE BLOCK LENGTH MUST BE LESS THAN OR EQUAL TO * 3840. (DEFAULT IS 3840 DIVIDED BY FIXED LENGTH LINE * LENGTH) * * R - IF SPECIFIED, LFN1 AND LFN2 ARE REWOUND BEFORE AND * AFTER THE OPERATION. * * A - IF SPECIFIED, ABORT AFTER THE OPERATION IF ERRORS * OCCURRED. SPACE 4,15 *** DAYFILE MESSAGES. * * * BAD FCOPY CONVERSION TABLE.* - FCOPY TABLES * ARE IN ERROR. CONSULT SITE ANALYST. * * * ERROR IN FCOPY ARGUMENTS.* - ERROR DETECTED IN * COMMAND ARGUMENTS. * * * ERROR LIMIT. XXXXXX ADDITIONAL ERRORS FOUND.* - MORE * THAN 20 ERRORS WERE FOUND DURING CONVERSION. * * * FCOPY COMPLETE.* - INFORMATIVE MESSAGE INDICATING * *FCOPY* COMPLETION. * * * FILE NAME CONFLICT.* - LFN1 CAN NOT BE THE SAME * FILE NAME AS LFN2. * * * UNKNOWN CODE CCCC, FILE XXXX, RECORD YYYY, LINE * ZZZZZZ.* - CODE IS NOT A VALID CHARACTER IN THE INPUT * CHARACTER SET. * * * INPUT FILE NOT FOUND.* - LFN1 MUST BE AN EXISTING * LOCAL OR ATTACHED DIRECT ACCESS FILE. * * * UNRECOGNIZED CODE SET PARAMETER.* - *PC* OR *NC* * PARAMETER SPECIFIES UNSUPPORTED CONVERSION. * * *UNRECOGNIZED LINE TERMINATOR PARAMETER.* - *PL* OR *NL* * PARAMETER SPECIFIES AN UNSUPPORTED LINE TERMINATOR. * * *CODE SET LINE TERMINATOR CONFLICT.* - THE LINE TERMINATOR * SPECIFIED ON THE *PL* OR *NL* PARAMETER IS NOT SUPPORTED BY * THE CODE SET SPECIFIED ON THE *PC* OR *NC* PARAMETER. * * * XXXXXX LINES TRUNCATED.* - THE NUMBER OF LINES INDICATED * WERE TOO LONG FOR THE SPECIFIED FIXED LENGTH LINE ON A COPY * TO A STRANGER TAPE. * * * INCORRECT FILE TYPE FOR SPECIFIED CHARACTER SET.* - EITHER * YOU SPECIFIED *ASCFL* OR *EBCFL* AS THE CHARACTER SET FOR A * FILE NOT RESIDING ON A STRANGER TAPE, OR SOME OTHER CHARACTER * SET FOR A FILE ON A STRANGER TAPE. * * * LINE TERMINATORS NOT USED ON A STRANGER TAPE.* - YOU * SPECIFIED A LINE TERMINATOR FOR A STRANGER TAPE FILE. TITLE SYMBOL DEFINITIONS. SPACE 4,10 **** ASSEMBLY CONSTANTS. PBUFL EQU 20041B OLD BUFFER LENGTH NBUFL EQU 20041B NEW BUFFER LENGTH WBUFL EQU 101B WORKING WRITE BUFFER FETODL EQU 16 OPTICAL DISK FET EXTENSION LENGTH BLNK EQU 55B DISPLAY CHARACTER BLANK ZBCH EQU 400B INTERNAL ZERO BYTE CHARACTER EORC EQU 401B INTERNAL EOR CHARACTER EOFC EQU 402B INTERNAL EOF CHARACTER EOIC EQU 403B INTERNAL EOI CHARACTER TLEN EQU 403B CONVERSION BASE TABLE LENGTH MCVTL EQU 1006B MAXIMUM CONVERSION TABLE LENGTH MXCB EQU 3840D MAXIMUM CHARACTERS/BLOCK, S-FORMAT TAPE **** SPACE 4,10 * COMMON DECKS. *CALL COMCMAC *CALL COMCCMD *CALL COMSLFM QUAL COMSMTX *CALL COMSMTX QUAL * SPACE 4,10 ** CONV - GENERATE CONVERSION BASE TABLE ENTRY. * * CONV X,Y * * ENTRY X = NUMERIC VALUE. * Y = NUMERIC VALUE. * *T 24/0, 18/X, 18/Y PURGMAC CONV CONV MACRO X,Y VFD 24D/0,18D/X,18D/Y CONV ENDM TITLE WORKING STORAGE. SPACE 4,10 * FET DEFINITIONS. ORG 110B FETS BSS 0 P BSS 0 OLD FILE OLD FILEB PBUF,PBUFL,FET=10 ORG P+11B VFD 30/0,12/FETODL,18/P+12B BSSZ FETODL OPTICAL DISK FET EXTENSION N BSS 0 NEW FILE NEW FILEB NBUF,NBUFL,FET=10 ORG N+11B VFD 30/0,12/FETODL,18/N+12B BSSZ FETODL OPTICAL DISK FET EXTENSION * INPUT PARAMETERS. PC VFD 42/0LASCII,18/0 DEFAULT *PC* VALUE NC VFD 42/0LASCII8,18/0 DEFAULT *NC* VALUE PL CON 0 OLD FILE LINE TERMINATOR NL CON 0 NEW FILE LINE TERMINATOR FL CON 0 CHARACTERS PER LINE, STRANGER TAPE LB CON 0 LINES PER BLOCK, STRANGER TAPE R CON 0 REWIND FLAG A CON 0 ABORT FLAG SPACE 4,10 * GLOBAL VARIABLES. ASV CON 1 ASSUMED VALUE FOR *A* AND *R* PARAMETERS CLNF CON 0 6 BIT COLON FOUND FLAG ENDF CON 0 EOI DETECTED FLAG ERCT CON 0 ERROR COUNT ERLM CON 20D ERROR LIMIT FILE CON 1 FILE NUMBER IBHW CON 0 FULL SIZED INPUT BLOCK HEADER WORD ILCC CON 0 INPUT LINE CHARACTER COUNT ILCT CON 0 INPUT LINES REMAINING IN BLOCK INDX CON 0 OFFSET TO SPECIAL SECTION OF TABLE IPTR CON 0 LOCATION TO STORE HEADER WORD ON OUTPUT IWRD CON 0 CURRENT INPUT WORD LINE CON 1 CURRENT LINE OBHW CON 0 FULL SIZED OUTPUT BLOCK HEADER WORD OLCC CON 0 OUTPUT LINE CHARACTER COUNT OLCT CON 0 OUTPUT LINES REMAINING IN BLOCK OWRD CON 0 CURRENT OUTPUT WORD RAHD CON -1 READ AHEAD CHARACTER RCRD CON 1 RECORD NUMBER SPAC CON 40B BLANK OUTPUT CHARACTER CODE STPI CON 0 NON-ZERO IF INPUT FILE IS STRANGER TAPE STPO CON 0 NON-ZERO IF OUTPUT FILE IS STRANGER TAPE TCVTL CON TLEN CONVERSION TABLE LENGTH TRNC CON 0 TRUNCATED LINE COUNT UBC CON 0 UNUSED BIT COUNT SPACE 4,10 * DAYFILE MESSAGES. MSGA DATA C* FCOPY COMPLETE.* MSGB DATA C* BAD FCOPY CONVERSION TABLE.* MSGC DATA 50H UNKNOWN CODE CCCC, FILE XXXX, RECORD YYYY, LIN DATA C*E ZZZZZZ.* MSGD DATA C* ERROR LIMIT. XXXXXX ADDITIONAL ERRORS FOUND.* MSGE DATA C* ERRORS OCCURRED IN FCOPY. SEE DAYFILE.* MSGF DATA C* XXXXXX LINES TRUNCATED.* MSGG DATA C* 1 LINE TRUNCATED.* TITLE MAIN ROUTINE. FCOPY SB1 1 ENTRY RJ PRS PRESET PROGRAM SA1 R ZR X1,FCO0 IF NO REWIND OF FILES REWIND P REWIND N FCO0 SB7 A0+ NZ B7,FCO1 IF FILES NOT OF LIKE TYPE RJ CLF COPY LIKE FILES EQ FCO4 TERMINATE COPY FCO1 RECALL N,R SA1 STPO ZR X1,FCO1.3 IF OUTPUT FILE NOT STRANGER TAPE WRITEO N RESERVE WORD FOR FIRST BLOCK HEADER WORD FCO1.3 SA1 STPI ZR X1,FCO1.5 IF INPUT FILE NOT STRANGER TAPE READN P,R READ STRANGER TAPE RJ STB START FIRST STRANGER TAPE BLOCK EQ FCO2 START CONVERSION FCO1.5 READ P,R READ NORMAL FILE FCO2 RJ GCH GET NEXT CHARACTER RJ TCH TRANSLATE CHARACTER NG X2,FCO3 IF CHARACTER IGNORED RJ PCH OUTPUT CHARACTER FCO3 SA2 ENDF CHECK FOR EOI ZR X2,FCO2 IF NOT EOI FCO4 RJ PFE PRINT FINAL ERROR MESSAGES SA1 R ZR X1,FCO5 IF NO REWIND OF FILES REWIND P REWIND N FCO5 MESSAGE X5,3 PRINT TERMINATION MESSAGE SA1 A ZR X1,FCO6 IF *A* PARAMETER NOT SPECIFIED SX1 MSGA ADDRESS OF TERMINATION MESSAGE BX1 X5-X1 ZR X1,FCO6 IF NORMAL TERMINATION ABORT FCO6 ENDRUN TITLE SUBROUTINES. SPACE 4,10 ** CLF - COPY FILE WITHOUT CONVERSION (SPECIAL CASE). * * ENTRY FET SET TO READ INPUT FILE. * * EXIT FILE COPIED. * * USES X - 1, 2, 6. * A - 1, 6. * B - 6, 7. * * CALLS WTW= * * MACROS READ, READW, WRITER, WRITEF. CLF SUBR ENTRY/EXIT CLF1 READ P,R CLF2 READW P,WBUF,WBUFL COPY TO WORKING BUFFER BX6 X1 SAVE STATUS SA6 CLFS SB7 B6-WBUF PRESET WTW PARAMETERS SB6 WBUF SX2 N RJ =XWTW= EMPTY WORKING FILE TO NEW FILE SA1 CLFS GET READ STATUS NG X1,CLF4 IF EOF/EOI ZR X1,CLF2 IF NOT EOR WRITER N,R EQ CLF1 CONTINUE COPY CLF4 SX1 X1+1 NG X1,CLFX IF EOI WRITEF N,R EQ CLF1 CONTINUE COPY CLFS CON 0 READ STATUS FBH SPACE 4,15 ** FBH - FORM BLOCK HEADER WORD. * * FORMS THE BLOCK HEADER WORD NEEDED FOR STRANGER TAPE OUTPUT. * * ENTRY (X1) = OUTPUT LINE CHARACTER COUNT. * (X2) = LINES IN BLOCK. * (B7) = BITS PER CHARACTER. * * EXIT (X6) = BLOCK HEADER WORD. * * USES X - 1, 2, 3, 4, 5, 6. * A - NONE. * B - B7. FBH SUBR ENTRY/EXIT IX3 X1*X2 COMPUTE CHARACTERS IN BLOCK SX4 B7+ IX3 X3*X4 BITS IN BLOCK SX5 60D BX4 X3 BX6 X5 IX1 X4/X6 CYBER WORDS IN BLOCK, TRUNCATED IX2 X1*X5 CYBER BITS IX6 X3-X2 BITS USED IN LAST WORD ZR X6,FBH1 IF NO UNUSED BITS IX6 X5-X6 UNUSED BIT COUNT SX1 X1+B1 ROUND UP WORD COUNT LX6 24 FBH1 BX6 X6+X1 FORM BLOCK HEADER WORD EQ FBHX RETURN SPACE 4,20 ** GCH - GET CHARACTER. * * ENTRY (B2) = CURRENT POSITION IN INPUT WORD. * (B4) = INPUT CHARACTER LENGTH. * (IWRD) = CURRENT INPUT WORD. * (RAHD) = READ AHEAD CHARACTER. * = -1 IF NONE. * * EXIT (X2) = CHARACTER TO PROCESS. * (B2) = NEW POSITION IN INPUT WORD. * (RAHD) = NEW READ AHEAD CHARACTER. * = -1 IF NONE. * IN FILES NOT USING THE ZERO BYTE LINE TERMINATOR, * ZERO CHARACTERS OCCURRING BETWEEN AN EOR, EOF OR EOI * AND THE LAST LINE TERMINATOR PRECEDING IT ARE IGNORED. * * USES X - 1, 2, 3, 4, 5, 6, 7. * A - 1, 2, 3, 6, 7. * B - 2, 6, 7. * * CALLS PCH, RCH, TCH. GCH SUBR ENTRY/EXIT SA2 RAHD GET READ AHEAD WORD SX6 -B1 CLEAR READ AHEAD SA6 A2 PL X2,GCHX IF CHARACTER ALREADY READ RJ RCH READ CHARACTER NZ X2,GCHX IF NOT ZERO CHARACTER SA1 IWRD GET INPUT WORD NZ X1,GCHX IF MORE CHARACTERS IN WORD SA3 PL GET INPUT LINE TERMINATOR SX3 X3-ZBCH NZ X3,GCH3 IF INPUT LINE TERMINATOR NOT ZERO BYTE SA1 INDX GET INDEX NZ X1,GCHX IF UNCOMPLETED DOUBLE LENGTH CHARACTER * CHECK FOR ZERO BYTE. SB7 B2+B4 SB6 12D LT B7,B6,GCH1 IF NO ROOM FOR ZERO BYTE SX2 ZBCH SET ZERO BYTE CHARACTER SB2 B0+ SET CURRENT INPUT WORD EMPTY EQ GCHX RETURN GCH1 RJ RCH READ NEXT CHARACTER SA1 IWRD GET NEW INPUT WORD NZ X2,GCH2 IF NOT ZERO CHARACTER NZ X1,GCH2 IF NOT ZERO BYTE SX2 ZBCH SET ZERO BYTE CHARACTER SB2 B0+ INPUT WORD IS EMPTY EQ GCHX RETURN GCH2 SX6 X2 SET READ AHEAD CHARACTER SA6 RAHD BX2 X2-X2 RESET CHARACTER TO ZERO EQ GCHX RETURN * CHECK FOR EXTRANEOUS ZERO CHARACTERS. GCH3 SX5 B2 COMPUTE NUMBER OF CHARACTERS LEFT IN WORD SX4 B4 IX6 X5/X4 SX4 B4 IX4 X4*X6 COMPUTE LEFTOVER BITS SX6 X6+1 IX5 X5-X4 SA6 GCHA SB2 X5 RJ RCH READ NEXT CHARACTER FROM NEW WORD SX4 X2-EOIC-1 SX5 X2-EORC PL X4,GCH4 IF NOT EOR, EOF, OR EOI PL X5,GCHX IF CHARACTER IS EOR, EOF OR EOI GCH4 SX6 X2 SAVE CHARACTER SA6 GCHB GCH5 SA1 GCHA CHECK ZERO CHARACTER COUNT SX7 X1-1 DECREMENT CHARACTER COUNT NG X7,GCH6 IF NO MORE ZERO CHARACTERS TO PROCESS BX2 X2-X2 SA7 GCHA SAVE COUNT RJ TCH TRANSLATE ZERO CHARACTER NG X2,GCH5 IF CHARACTER IS TO BE IGNORED RJ PCH OUTPUT CHARACTER EQ GCH5 CONTINUE GCH6 SA2 GCHB RESTORE FINAL CHARACTER EQ GCHX RETURN GCHA CON 0 ZERO CHARACTER COUNT GCHB CON 0 TEMPORARY CHARACTER STORAGE PCH SPACE 4,20 ** PCH - OUTPUT CHARACTER. * * ENTRY (X2) = CHARACTER TO WRITE. * (B3) = CURRENT POSITION IN OUTPUT WORD. * (B5) = OUTPUT CHARACTER LENGTH. * (X6) = CHARACTER COUNT. * * EXIT (B3) = NEW POSITION IN OUTPUT WORD. * (CLNF) = 1 IF CHARACTER WRITTEN WAS A * 6 BIT DISPLAY CODE COLON. * (ENDF) = 1 IF EOI DETECTED. * * USES X - 1, 2, 3, 5, 6, 7. * A - 1, 3, 7. * B - 6, 7. * * CALLS GCH, WCH, WTB, WZB. * * MACROS WRITEO. PCH SUBR ENTRY/EXIT SX3 B5 SET BIT COUNT IX6 X3*X6 SA1 NL CHECK FOR EOL SB7 X6 BX1 X1-X2 SA3 STPO NZ X1,PCH3 IF NOT EOL SA1 LINE INCREMENT LINE COUNT SX7 X1+B1 SA7 A1 NZ X3,PCH7 IF OUTPUT FILE IS STRANGER TAPE * PROCESS DISPLAY CODE COLON. PCH1 SX5 X2-ZBCH SA3 CLNF GET COLON FLAG NZ X5,PCH3 IF NOT ZERO BYTE EOL ZR X3,PCH2 IF COLON FLAG NOT SET SX2 BLNK SET BLANK TO GUARD COLON RJ WCH WRITE BLANK CHARACTER BX7 X7-X7 CLEAR COLON FLAG SA7 CLNF PCH2 RJ WZB WRITE ZERO BYTE EQ PCHX RETURN * WRITE CHARACTER. PCH3 BX7 X7-X7 CLEAR COLON FLAG SB6 6 NZ X2,PCH4 IF NOT ZERO CHARACTER NE B6,B7,PCH4 IF ZERO CHARACTER NOT 6 BIT COLON SX7 B1+ SET COLON FLAG PCH4 SA7 CLNF SAVE COLON FLAG ZR X3,PCH5 IF OUTPUT FILE IS NOT STRANGER TAPE SA3 OLCC ZR X3,PCH6 IF RECORD (LINE) FULL SX7 X3-1 DECREMENT OUTPUT LINE CHARACTER COUNT SA7 A3 PCH5 RJ WCH WRITE CHARACTER SA1 STPO ZR X1,PCHX IF OUTPUT FILE NOT STRANGER TAPE, RETURN SA1 ENDF ZR X1,PCHX IF NOT EOI RJ WTB WRITE TAPE BLOCK EQ PCHX RETURN * TRUNCATE LONG LINE. PCH6 RJ GCH READ NEXT INPUT FILE CHARACTER SA1 PL CHECK FOR LINE TERMINATOR BX1 X2-X1 NZ X1,PCH6 IF NOT LINE TERMINATOR SA1 TRNC INCREMENT TRUNCATION COUNT SX6 X1+B1 SA6 A1 EQ PCH8 START A NEW LINE * BLANK FILL REMAINDER OF A SHORT LINE. PCH7 SA3 OLCC CHECK CHARACTER COUNT ZR X3,PCH8 IF NO MORE ROOM IN LINE SX7 X3-1 DECREMENT CHARACTER COUNT SA2 SPAC ADD ANOTHER BLANK TO LINE SB7 B5 SA7 A3 RJ WCH EQ PCH7 CHECK IF LINE IS FULL PCH8 SA1 FL RESET OUTPUT LINE CHARACTER COUNT BX6 X1 SA6 OLCC SA1 OLCT DECREMENT OUTPUT LINE COUNT SX7 X1-1 SA7 A1 NZ X7,PCHX IF NOT END OF BLOCK, RETURN * WRITE CURRENT STRANGER TAPE BLOCK. SA3 OWRD WRITE LAST WORD OF BLOCK BX7 X7-X7 CLEAR OUTPUT WORD BX6 X3 SA7 A3 WRITEO N SB3 60D RESET OUTPUT WORD POINTER RJ WTB WRITE STRANGER TAPE BLOCK EQ PCHX RETURN PFE SPACE 4,20 ** PFE - PRINT FINAL ERROR MESSAGES. * * ENTRY (ERCT) = TRANSLATION ERROR COUNT. * (ERLM) = TRANSLATION ERROR LIMIT. * (TRNC) = TRUNCATED LINE COUNT. * * EXIT (X5) = ADDRESS OF TERMINATION MESSAGE. * ERROR MESSAGES PRINTED, IF APPROPRIATE. * * USES X - 0, 1, 2, 5, 6. * A - 1, 2, 6. * B - 5. * * CALLS CDD. * * MACROS MESSAGE. PFE SUBR ENTRY/EXIT * PROCESS LINE TRUNCATION COUNT. SX5 MSGA SET NORMAL TERMINATION MESSAGE SA1 TRNC SB5 X1 ZR X1,PFE2 IF NO LINES TRUNCATED SX5 MSGE SET ABNORMAL TERMINATION MESSAGE NE B5,B1,PFE0 IF MORE THAN ONE LINE TRUNCATED SX2 MSGG EQ PFE1 PRINT ERROR MESSAGE PFE0 RJ CDD CONVERT TRUNCATION COUNT TO DISPLAY MX0 -18 SA1 MSGF SX2 A1 LX6 18 POSITION COUNT FOR MESSAGE BX1 -X0*X1 CLEAR PLACE FOR COUNT BX6 X0*X6 REMOVE EXTRANEOUS BLANKS BX6 X1+X6 SET COUNT IN MESSAGE SA6 A1+ PFE1 MESSAGE X2,3 * XXXXXX LINES TRUNCATED.* * PROCESS TRANSLATION ERROR COUNT. PFE2 SA2 ERCT GET ERROR COUNT SA1 ERLM GET ERROR LIMIT IX1 X2-X1 ZR X2,PFEX IF NO TRANSLATION ERRORS, RETURN SX5 MSGE SET ABNORMAL TERMINATION MESSAGE NG X1,PFEX IF ERROR LIMIT NOT REACHED RJ CDD CONVERT EXCESS ERROR COUNT TO DISPLAY SA1 MSGD+1 MX0 -36 BX1 X0*X1 CLEAR SPACE FOR COUNT BX6 -X0*X6 REMOVE EXTRA BLANKS BX6 X1+X6 SET COUNT IN MESSAGE SA6 A1+ MESSAGE MSGD,3 * ERROR LIMIT. ...* EQ PFEX RETURN SPACE 4,15 ** PTE - PROCESS TRANSLATION ERROR. * * ENTRY (X2) = CHARACTER CODE, RIGHT JUSTIFIED. * (X5) = INDEX VALUE FOR 6/12 CHARACTERS. * * USES X - 0, 1, 3, 4, 5, 6. * A - 1, 3, 5, 6. * B - 6, 7. * * CALLS CDD, COD. * * MACROS MESSAGE. PTE SUBR ENTRY/EXIT SA1 ERCT GET ERROR COUNT SA3 ERLM GET ERROR LIMIT SX6 X1+B1 INCREMENT ERROR COUNT SA6 A1+ IX6 X3-X6 NG X6,PTEX IF ERROR LIMIT EXCEEDED, RETURN SX6 B4 SAVE (B) REGISTERS SB6 B2 SB7 B3 SA6 PTEA MX0 -24 * PUT CHARACTER CODE IN MESSAGE. SX4 X5-200B SX6 X5-300B NZ X4,PTE1 IF NOT 12 BIT 6/12 CHAR STARTING WITH 74 SX5 7400B PTE1 NZ X6,PTE2 IF NOT 12 BIT 6/12 CHAR STARTING WITH 76 SX5 7600B PTE2 IX1 X2+X5 FORM FULL 12 BIT CHARACTER SA5 MSGC+1 RJ COD CONVERT CODE TO DISPLAY BX6 -X0*X6 LX0 12 LX6 12 BX5 X0*X5 CLEAR SPACE FOR CODE BX6 X5+X6 PUT CODE IN MESSAGE SA5 MSGC+2 SA6 MSGC+1 * PUT FILE NUMBER IN MESSAGE. SA1 FILE GET FILE NUMBER MX0 -24 RJ CDD CONVERT FILE NUMBER TO DISPLAY BX6 -X0*X6 BX5 X0*X5 CLEAR PLACE FOR FILE NUMBER BX6 X5+X6 SET FILE NUMBER IN MESSAGE SA5 MSGC+4 SA6 MSGC+2 * PUT RECORD NUMBER IN MESSAGE. SA1 RCRD GET RECORD NUMBER RJ CDD CONVERT RECORD NUMBER TO DISPLAY BX6 -X0*X6 MX0 -36 LX6 36D POSITION RECORD NUMBER BX5 -X0*X5 CLEAR PLACE FOR RECORD NUMBER BX6 X6+X5 SET RECORD NUMBER IN MESSAGE SA5 MSGC+5 SA6 MSGC+4 * PUT LINE NUMBER IN MESSAGE. SA1 LINE GET LINE NUMBER RJ CDD CONVERT LINE NUMBER TO DISPLAY BX6 -X0*X6 REMOVE EXTRA BLANKS LX0 12 LX6 12 BX5 X0*X5 CLEAR POSITION FOR LINE NUMBER BX6 X5+X6 SET LINE NUMBER IN MESSAGE SA6 MSGC+5 * WRITE MESSAGE TO DAYFILE. MESSAGE MSGC,3 * UNKNOWN CODE CCCC, FILE XXXX,... * SA1 PTEA RESTORE SAVED (B) REGISTERS SB2 B6 SB3 B7 SB4 X1+ EQ PTEX RETURN PTEA DATA 0 B REGISTER STORAGE SPACE 4,10 ** RCH - READ CHARACTER. * * ENTRY (B2) = CURRENT POSITION IN INPUT WORD. * (B4) = INPUT CHARACTER LENGTH. * (IWRD) = CURRENT INPUT WORD. * * EXIT (X2) = CHARACTER READ, RIGHT JUSTIFIED. * (B2) = NEW POSITION IN INPUT WORD. * (IWRD) = CURRENT INPUT WORD. * * USES X - 0, 1, 2, 3, 5, 6, 7. * A - 1, 2, 3, 6, 7. * B - 2, 6, 7. * * CALLS STB. * * MACROS READ, READO, RECALL. RCH SUBR ENTRY/EXIT SA3 STPI ZR X3,RCH0 IF INPUT FILE NOT STRANGER TAPE SA3 ILCC DECREMENT INPUT LINE CHARACTER COUNT SX7 X3-1 SA7 A3+ NZ X3,RCH0 IF NOT END OF LINE SA1 FL RESET INPUT LINE CHARACTER COUNT SA2 PL SET EOL CHARACTER BX7 X1 SA7 A3 SA1 ILCT DECREMENT INPUT LINE COUNT SX7 X1-1 ZR X7,RCH6 IF NO MORE ROOM IN BLOCK SA7 A1+ EQ RCHX RETURN RCH0 GT B4,B2,RCH1 IF NO WHOLE CHARACTERS LEFT IN WORD MX0 1 BUILD MASK SB7 B4-B1 SA1 IWRD GET INPUT WORD AX0 B7 BX2 X0*X1 EXTRACT CHARACTER BX6 -X0*X1 DELETE CHARACTER FROM INPUT WORD LX2 B4 LX6 B4 SB2 B2-B4 SA6 A1+ SAVE INPUT WORD EQ RCHX RETURN RCH1 SB6 B4 BX5 X5-X5 ZR B2,RCH2 IF INPUT WORD EMPTY SA1 IWRD GET INPUT WORD SB6 B4-B2 COMPUTE REMAINDER LX5 X1,B4 SET PARTIAL CHARACTER RCH2 READO P READ NEXT WORD NZ X1,RCH3 IF EOR, EOF, OR EOI MX0 1 BUILD MASK SB7 B6-B1 AX0 B7 BX2 X0*X6 EXTRACT PARTIAL CHARACTER BX6 -X0*X6 DELETE USED BITS LX2 B6 LX6 B6 BX2 X5+X2 SB2 60D RESET CURRENT POSTION SA6 IWRD SAVE INPUT WORD SB2 B2-B6 EQ RCHX RETURN RCH3 SA2 STPI NZ X2,RCH5 IF INPUT FILE ON STRANGER TAPE SA2 STPO NG X1,RCH4 IF EOF OR EOI NZ X2,RCH3.1 IF OUTPUT FILE ON STRANGER TAPE READ P,R RECALL N,R RCH3.1 SX2 EORC SET EOR CHARACTER SB2 B0+ SET CURRENT INPUT WORD EMPTY EQ RCHX RETURN RCH4 SX1 X1+1 NG X1,RCH5 IF EOI NZ X2,RCH4.1 IF OUTPUT FILE ON STRANGER TAPE READ P,R RECALL N,R RCH4.1 SX2 EOFC SET EOF CHARACTER SB2 B0+ SET CURRENT INPUT WORD EMPTY EQ RCHX RETURN RCH5 SX2 EOIC SET EOI CHARACTER EQ RCHX RETURN RCH6 RJ STB START NEW STRANGER TAPE BLOCK SA2 PL SET LINE TERMINATOR AS OUTPUT CHARACTER ZR X1,RCHX IF NOT EOI SX7 EOIC SET EOI AS NEXT CHARACTER READ SA7 RAHD EQ RCHX RETURN SPACE 4,20 ** STB - START STRANGER TAPE BLOCK. * * ENTRY (IBHW) = INPUT BLOCK HEADER WORD FOR FULL BLOCK. * (FL) = FIXED LENGTH LINE LENGTH. * (LB) = LINES PER BLOCK. * * EXIT (X1) = NONZERO IF EOI REACHED. * NEW BLOCK STARTED IF NOT EOI. * (ILCC) RESET FOR NEW LINE. * (ILCT) RESET FOR NEW BLOCK. * * USES X - 0, 1, 3, 6, 7. * A - 1, 3, 7. * B - 2, 7. * * MACROS READN, READO, RECALL. STB SUBR ENTRY/EXIT STB1 READO P READ BLOCK HEADER WORD SB7 X1 LT B7,B1,STB2 IF NEW READ DOES NOT NEED TO BE ISSUED READN P,R READ TAPE RECALL N,R EQ STB1 GET HEADER WORD STB2 NZ X1,STBX IF END OF TAPE SA1 IBHW SA3 LB GET LINE COUNT FOR FULL TAPE BLOCK IX1 X1-X6 BX7 X3 ZR X1,STB3 IF FULL SIZE BLOCK SX3 X6+ NUMBER OF 60 BIT WORDS IN BLOCK SX0 60D AX6 24 UNUSED BIT COUNT IX3 X3*X0 COMPUTE BITS IN BLOCK SX1 B4+ IX3 X3-X6 IX7 X3/X1 COMPUTE NUMBER OF CHARACTERS IN BLOCK SA1 FL COMPUTE NUMBER OF LINES IN BLOCK IX7 X7/X1 STB3 SA7 ILCT SAVE INPUT LINE COUNT SA1 FL RESET INPUT CHARACTER COUNT SB2 B0 SET TO START NEW INPUT WORD BX7 X1 SA7 ILCC SX1 B0+ SET EXIT CONDITION EQ STBX RETURN SPACE 4,20 ** TCH - TRANSLATE CHARACTER. * * ENTRY (X2) = CHARACTER TO TRANSLATE. * (A0) = CONVERSION TABLE FWA. * * EXIT (X2) = NEW CHARACTER(S), RIGHT JUSTIFIED. * = -1 IF CHARACTER IS TO BE IGNORED. * (X6) = CHARACTER COUNT. * * USES X - 0, 1, 2, 3, 4, 5, 6. * A - 1, 5, 6. * B - 6, 7. * * CALLS PTE. * * MACROS ABORT, MESSAGE. TCH SUBR ENTRY/EXIT SA5 INDX GET INDEX MX0 -9 BX2 -X0*X2 TRUNCATE TOP 3 BITS BX6 X6-X6 CLEAR INDEX SB7 X2 SA1 TCVTL GET TABLE LENGTH SB6 X1 SA6 A5+ SB7 B7+X5 COMPUTE ENTRY NUMBER LE B7,B6,TCH1 IF ENTRY NEEDED IS WITHIN TABLE BOUNDS SX2 B7+ RJ PTE GENERATE ERROR SX2 -B1 IGNORE CHARACTER EQ TCHX RETURN TCH1 SA1 A0+B7 GET CONVERSION TABLE ENTRY MX0 -36 EXTRACT DATA ITEM BX4 -X0*X1 MX0 -3 LX1 59-53 BX6 -X0*X1 GET COUNT MX0 -2 AX1 4 BX3 -X0*X1 EXTRACT OPTION NZ X3,TCH3 IF NOT NORMAL CONVERSION BX2 X4 SET NEW CHARACTER EQ TCHX RETURN TCH3 SX3 X3-1 NZ X3,TCH5 IF NOT NO-CONVERSION OPTION ZR X4,TCH4 IF NOT AN ERROR RJ PTE PROCESS ERROR TCH4 SX2 -B1 IGNORE CHARACTER EQ TCHX RETURN TCH5 SX3 X3-1 NZ X3,TCH6 IF NOT SET INDEX OPTION BX6 X4 SET INDEX SA6 INDX SX2 -B1 IGNORE CHARACTER EQ TCHX RETURN TCH6 MESSAGE MSGB,3 * BAD FCOPY CONVERSION TABLE.* ABORT WCH SPACE 4,15 ** WCH - WRITE CHARACTER. * * ENTRY (X2) = CHARACTER TO WRITE. * (B3) = CURRENT POSITION IN OUTPUT WORD. * (B7) = CHARACTER LENGTH. * * EXIT (B3) = NEW POSITION IN OUTPUT WORD. * (ENDF) = 1 IF EOI DETECTED. * * USES X - 0, 1, 2, 3, 5, 6, 7. * A - 1, 2, 3, 5, 6, 7. * B - 3, 6, 7. * * MACROS WRITEF, WRITEO, WRITER. WCH10 SX7 B1+ SET END FLAG SA7 ENDF WCH SUBR ENTRY/EXIT SA1 TCVTL SX1 X1+B1 IX6 X2-X1 SX5 X2-EORC SA1 OWRD GET OUTPUT WORD PL X6,WCH7 IF 12 BIT CHARACTER NG X5,WCH7 IF NOT EOR, EOF, OR EOI SB6 B3-60D SX6 B3 SA6 UBC ZR B6,WCH4 IF OUTPUT WORD EMPTY BX6 X1 SB3 60 RESET CURRENT POSITION WRITEO N BX7 X7-X7 CLEAR OUTPUT WORD SA7 OWRD WCH4 SA1 STPO NZ X1,WCH10 IF OUTPUT FILE ON STRANGER TAPE * PROCESS EOR. NZ X5,WCH5 IF NOT EOR SA5 RCRD GET RECORD NUMBER SA3 N+1 FET+1 AX3 48 SX3 X3-2ROD OPTICAL DISK DEVICE TYPE NZ X3,WCH4.1 IF NOT *OD* SA3 N+6 FET+6 SA2 UBC UNUSED BIT COUNT MX0 30 LX2 24 BX3 X0*X3 BX6 X2+X3 SA6 N+6 WCH4.1 WRITER N,R SX7 X5+B1 INCREMENT RECORD NUMBER SA7 A5 SX6 B1+ RESET LINE NUMBER SA6 LINE EQ WCHX RETURN * PROCESS EOF. WCH5 SX5 X5-1 NZ X5,WCH6 IF NOT EOF SA5 FILE GET FILE NUMBER WRITEF N,R SX7 X5+B1 INCREMENT FILE NUMBER SX6 B1+ RESET LINE AND RECORD NUMBERS SA7 A5 SA6 LINE SA6 RCRD EQ WCHX RETURN * PROCESS EOI. WCH6 RECALL N SA3 N+2 GET *IN* POINTER SA2 N+3 GET *OUT* POINTER IX3 X3-X2 ZR X3,WCH10 IF NO MORE WORDS TO WRITE WRITER N FLUSH BUFFER EQ WCH10 SET END FLAG * WRITE CHARACTER. WCH7 GT B7,B3,WCH8 IF NOT ENOUGH ROOM FOR CHARACTER IN WORD SB3 B3-B7 DECREMENT CURRENT POSITION LX2 B3 BX6 X1+X2 SA6 OWRD SAVE OUTPUT WORD EQ WCHX RETURN * START A NEW OUTPUT WORD. WCH8 SB6 B7 SET DEFAULT REMAINDER BX6 X1 ZR B3,WCH9 IF NO ROOM IN WORD SB6 B7-B3 FORM AND INSERT PARTIAL CHARACTER AX3 X2,B6 BX6 X1+X3 WCH9 SB3 60D RESET CURRENT POSITION SB3 B3-B6 DECREMENT CURRENT POSITION LX2 B3 MX0 1 SB7 B6-B1 AX0 X0,B7 BX7 X0*X2 SET NEW OUTPUT WORD SA7 OWRD WRITEO N WRITE OLD OUTPUT WORD EQ WCHX RETURN WTB SPACE 4,20 ** WTB - WRITE TAPE BLOCK. * * ENTRY (B7) = OUTPUT CHARACTER SIZE. * (IPTR) = ADDRESS TO USE FOR BLOCK HEADER WORD. * (ENDF) = SET IF EOI REACHED IN INPUT FILE. * (OBHW) = OUTPUT BLOCK HEADER WORD FOR FULL BLOCK. * (OLCT) = COUNT OF REMAINING LINES IN OUTPUT BLOCK. * * EXIT BLOCK WRITTEN TO STRANGER TAPE. * (IPTR) UPDATED. * (OLCT) RESET. * * USES X - 1, 2, 3, 6. * A - 1, 2, 3, 6. * B - NONE. * * CALLS FBH. * * MACROS WRITEN, WRITEO. WTB SUBR ENTRY/EXIT SA3 OBHW GET FULL SIZE OUTPUT BLOCK HEADER WORD SA2 OLCT SA1 FL BX6 X3 ZR X2,WTB1 IF BLOCK FULL SIZE SA3 LB IX2 X3-X2 COMPUTE LINES USED IN BLOCK ZR X2,WTB2 IF EMPTY BLOCK RJ FBH FORM BLOCK HEADER WORD WTB1 SA2 IPTR SET HEADER WORD IN BLOCK SA6 X2+ WRITEN N,R WRITE BLOCK WTB2 SA1 ENDF NZ X1,WTBX IF END OF INFORMATION, RETURN * START NEW BLOCK. SA3 N+2 GET LOCATION FOR NEXT BLOCK HEADER WORD BX6 X3 SA6 IPTR WRITEO N RESERVE WORD FOR BLOCK HEADER WORD SA1 LB RESET OUTPUT LINE COUNT BX6 X1 SA6 OLCT EQ WTBX RETURN WZB SPACE 4,15 ** WZB - WRITE ZERO BYTE. * * ENTRY (B3) = POSITION IN OUTPUT WORD. * * EXIT (B3) UPDATED. * * USES X - 1, 6, 7. * A - 1, 6, 7. * B - 3. * * MACROS WRITEO. WZB SUBR ENTRY/EXIT SA1 OWRD GET OUTPUT WORD SB6 12D BX6 X1 WRITEO N GE B3,B6,WZB1 IF WORD WRITTEN WAS PROPER ZERO BYTE SX6 B0+ WRITEO N WZB1 BX7 X7-X7 ZERO OUTPUT WORD SA7 OWRD SB3 60D RESET CURRENT POSITION EQ WZBX RETURN SPACE 4,10 * COMMON DECKS. *CALL COMCCDD *CALL,COMCCOD *CALL COMCCIO *CALL,COMCLFM *CALL,COMCRDO *CALL COMCRDW *CALL COMCSYS *CALL,COMCWTO *CALL COMCWTW *CALL,COMTCVT TITLE CONVERSION BASE TABLES SPACE 4,10 * BUFFERS. USE BUFFERS TCVT BSSZ MCVTL CONVERSION TABLE WBUF BSSZ WBUFL WORKING WRITE BUFFER BUF BSS 0 PBUF EQU BUF OLD BUFFER NBUF EQU PBUF+PBUFL NEW BUFFER RFL= EQU NBUF+NBUFL+4500B SPACE 4,10 ** CONVERSION BASE TABLES. BASE O SPACE 4,10 TD64 BSS 0 64 CHARACTER DISPLAY CODE QUAL COMTCVT LOC 0 * TO FROM * DIS64 DIS64 CONV T64D000,F64D000 : CONV T64D001,F64D001 A CONV T64D002,F64D002 B CONV T64D003,F64D003 C CONV T64D004,F64D004 D CONV T64D005,F64D005 E CONV T64D006,F64D006 F CONV T64D007,F64D007 G CONV T64D010,F64D010 H CONV T64D011,F64D011 I CONV T64D012,F64D012 J CONV T64D013,F64D013 K CONV T64D014,F64D014 L CONV T64D015,F64D015 M CONV T64D016,F64D016 N CONV T64D017,F64D017 O CONV T64D020,F64D020 P CONV T64D021,F64D021 Q CONV T64D022,F64D022 R CONV T64D023,F64D023 S CONV T64D024,F64D024 T CONV T64D025,F64D025 U CONV T64D026,F64D026 V CONV T64D027,F64D027 W CONV T64D030,F64D030 X CONV T64D031,F64D031 Y CONV T64D032,F64D032 Z CONV T64D033,F64D033 0 CONV T64D034,F64D034 1 CONV T64D035,F64D035 2 CONV T64D036,F64D036 3 CONV T64D037,F64D037 4 CONV T64D040,F64D040 BLANK 5 CONV T64D041,F64D041 ! 6 CONV T64D042,F64D042 " 7 CONV T64D043,F64D043 # 8 CONV T64D044,F64D044 $ 9 CONV T64D045,F64D045 % + CONV T64D046,F64D046 & - CONV T64D047,F64D047 ' * CONV T64D050,F64D050 ( / CONV T64D051,F64D051 ) ( CONV T64D052,F64D052 * ) CONV T64D053,F64D053 + $ CONV T64D054,F64D054 , = CONV T64D055,F64D055 - BLANK CONV T64D056,F64D056 . , CONV T64D057,F64D057 / . CONV T64D060,F64D060 0 # CONV T64D061,F64D061 1 [ CONV T64D062,F64D062 2 ] CONV T64D063,F64D063 3 % CONV T64D064,F64D064 4 " CONV T64D065,F64D065 5 _ CONV T64D066,F64D066 6 ! CONV T64D067,F64D067 7 & CONV T64D070,F64D070 8 ' CONV T64D071,F64D071 9 ? CONV T64D072,F64D072 : < CONV T64D073,F64D073 ; > CONV T64D074,F64D074 < @ CONV T64D075,F64D075 = \ CONV T64D076,F64D076 > ^ CONV T64D077,F64D077 ? ; CONV T64D100,F64D100 @ CONV T64D101,F64D101 A CONV T64D102,F64D102 B CONV T64D103,F64D103 C CONV T64D104,F64D104 D CONV T64D105,F64D105 E CONV T64D106,F64D106 F CONV T64D107,F64D107 G CONV T64D110,F64D110 H CONV T64D111,F64D111 I CONV T64D112,F64D112 J CONV T64D113,F64D113 K CONV T64D114,F64D114 L CONV T64D115,F64D115 M CONV T64D116,F64D116 N CONV T64D117,F64D117 O CONV T64D120,F64D120 P CONV T64D121,F64D121 Q CONV T64D122,F64D122 R CONV T64D123,F64D123 S CONV T64D124,F64D124 T CONV T64D125,F64D125 U CONV T64D126,F64D126 V CONV T64D127,F64D127 W CONV T64D130,F64D130 X CONV T64D131,F64D131 Y CONV T64D132,F64D132 Z CONV T64D133,F64D133 [ CONV T64D134,F64D134 \ CONV T64D135,F64D135 ] CONV T64D136,F64D136 ^ CONV T64D137,F64D137 _ CONV T64D140,F64D140 CONV T64D141,F64D141 A CONV T64D142,F64D142 B CONV T64D143,F64D143 C CONV T64D144,F64D144 D CONV T64D145,F64D145 E CONV T64D146,F64D146 F CONV T64D147,F64D147 G CONV T64D150,F64D150 H CONV T64D151,F64D151 I CONV T64D152,F64D152 J CONV T64D153,F64D153 K CONV T64D154,F64D154 L CONV T64D155,F64D155 M CONV T64D156,F64D156 N CONV T64D157,F64D157 O CONV T64D160,F64D160 P CONV T64D161,F64D161 Q CONV T64D162,F64D162 R CONV T64D163,F64D163 S CONV T64D164,F64D164 T CONV T64D165,F64D165 U CONV T64D166,F64D166 V CONV T64D167,F64D167 W CONV T64D170,F64D170 X CONV T64D171,F64D171 Y CONV T64D172,F64D172 Z CONV T64D173,F64D173 [ CONV T64D174,F64D174 \ CONV T64D175,F64D175 ] CONV T64D176,F64D176 ^ CONV T64D177,F64D177 CONV T64D200,F64D200 CONV T64D201,F64D201 CONV T64D202,F64D202 CONV T64D203,F64D203 CONV T64D204,F64D204 CONV T64D205,F64D205 CONV T64D206,F64D206 CONV T64D207,F64D207 CONV T64D210,F64D210 CONV T64D211,F64D211 CONV T64D212,F64D212 CONV T64D213,F64D213 CONV T64D214,F64D214 CONV T64D215,F64D215 CONV T64D216,F64D216 CONV T64D217,F64D217 CONV T64D220,F64D220 CONV T64D221,F64D221 CONV T64D222,F64D222 CONV T64D223,F64D223 CONV T64D224,F64D224 CONV T64D225,F64D225 CONV T64D226,F64D226 CONV T64D227,F64D227 CONV T64D230,F64D230 CONV T64D231,F64D231 CONV T64D232,F64D232 CONV T64D233,F64D233 CONV T64D234,F64D234 CONV T64D235,F64D235 CONV T64D236,F64D236 CONV T64D237,F64D237 CONV T64D240,F64D240 BLANK CONV T64D241,F64D241 ! CONV T64D242,F64D242 " CONV T64D243,F64D243 # CONV T64D244,F64D244 $ CONV T64D245,F64D245 % CONV T64D246,F64D246 & CONV T64D247,F64D247 ' CONV T64D250,F64D250 ( CONV T64D251,F64D251 ) CONV T64D252,F64D252 * CONV T64D253,F64D253 + CONV T64D254,F64D254 , CONV T64D255,F64D255 - CONV T64D256,F64D256 . CONV T64D257,F64D257 / CONV T64D260,F64D260 0 CONV T64D261,F64D261 1 CONV T64D262,F64D262 2 CONV T64D263,F64D263 3 CONV T64D264,F64D264 4 CONV T64D265,F64D265 5 CONV T64D266,F64D266 6 CONV T64D267,F64D267 7 CONV T64D270,F64D270 8 CONV T64D271,F64D271 9 CONV T64D272,F64D272 : CONV T64D273,F64D273 ; CONV T64D274,F64D274 < CONV T64D275,F64D275 = CONV T64D276,F64D276 > CONV T64D277,F64D277 ? CONV T64D300,F64D300 @ CONV T64D301,F64D301 A CONV T64D302,F64D302 B CONV T64D303,F64D303 C CONV T64D304,F64D304 D CONV T64D305,F64D305 E CONV T64D306,F64D306 F CONV T64D307,F64D307 G CONV T64D310,F64D310 H CONV T64D311,F64D311 I CONV T64D312,F64D312 J CONV T64D313,F64D313 K CONV T64D314,F64D314 L CONV T64D315,F64D315 M CONV T64D316,F64D316 N CONV T64D317,F64D317 O CONV T64D320,F64D320 P CONV T64D321,F64D321 Q CONV T64D322,F64D322 R CONV T64D323,F64D323 S CONV T64D324,F64D324 T CONV T64D325,F64D325 U CONV T64D326,F64D326 V CONV T64D327,F64D327 W CONV T64D330,F64D330 X CONV T64D331,F64D331 Y CONV T64D332,F64D332 Z CONV T64D333,F64D333 [ CONV T64D334,F64D334 \ CONV T64D335,F64D335 ] CONV T64D336,F64D336 ^ CONV T64D337,F64D337 _ CONV T64D340,F64D340 CONV T64D341,F64D341 A CONV T64D342,F64D342 B CONV T64D343,F64D343 C CONV T64D344,F64D344 D CONV T64D345,F64D345 E CONV T64D346,F64D346 F CONV T64D347,F64D347 G CONV T64D350,F64D350 H CONV T64D351,F64D351 I CONV T64D352,F64D352 J CONV T64D353,F64D353 K CONV T64D354,F64D354 L CONV T64D355,F64D355 M CONV T64D356,F64D356 N CONV T64D357,F64D357 O CONV T64D360,F64D360 P CONV T64D361,F64D361 Q CONV T64D362,F64D362 R CONV T64D363,F64D363 S CONV T64D364,F64D364 T CONV T64D365,F64D365 U CONV T64D366,F64D366 V CONV T64D367,F64D367 W CONV T64D370,F64D370 X CONV T64D371,F64D371 Y CONV T64D372,F64D372 Z CONV T64D373,F64D373 [ CONV T64D374,F64D374 \ CONV T64D375,F64D375 ] CONV T64D376,F64D376 ^ CONV T64D377,F64D377 CONV ZBCH,ZBCH ZB ZB CONV EORC,EORC EOR EOR CONV EOFC,EOFC EOF EOF CONV EOIC,EOIC EOI EOI LOC *O QUAL * SPACE 4,10 TD63 BSS 0 63 CHARACTER DISPLAY CODE QUAL COMTCVT LOC 0 * TO FROM * DIS63 DIS63 CONV T63D000,F63D000 CONV T63D001,F63D001 A CONV T63D002,F63D002 B CONV T63D003,F63D003 C CONV T63D004,F63D004 D CONV T63D005,F63D005 E CONV T63D006,F63D006 F CONV T63D007,F63D007 G CONV T63D010,F63D010 H CONV T63D011,F63D011 I CONV T63D012,F63D012 J CONV T63D013,F63D013 K CONV T63D014,F63D014 L CONV T63D015,F63D015 M CONV T63D016,F63D016 N CONV T63D017,F63D017 O CONV T63D020,F63D020 P CONV T63D021,F63D021 Q CONV T63D022,F63D022 R CONV T63D023,F63D023 S CONV T63D024,F63D024 T CONV T63D025,F63D025 U CONV T63D026,F63D026 V CONV T63D027,F63D027 W CONV T63D030,F63D030 X CONV T63D031,F63D031 Y CONV T63D032,F63D032 Z CONV T63D033,F63D033 0 CONV T63D034,F63D034 1 CONV T63D035,F63D035 2 CONV T63D036,F63D036 3 CONV T63D037,F63D037 4 CONV T63D040,F63D040 BLANK 5 CONV T63D041,F63D041 ! 6 CONV T63D042,F63D042 " 7 CONV T63D043,F63D043 # 8 CONV T63D044,F63D044 $ 9 CONV T63D045,F63D045 BLANK CONV T63D046,F63D046 & - CONV T63D047,F63D047 ' * CONV T63D050,F63D050 ( / CONV T63D051,F63D051 ) ( CONV T63D052,F63D052 * ) CONV T63D053,F63D053 + $ CONV T63D054,F63D054 , = CONV T63D055,F63D055 - BLANK CONV T63D056,F63D056 . , CONV T63D057,F63D057 / . CONV T63D060,F63D060 0 # CONV T63D061,F63D061 1 [ CONV T63D062,F63D062 2 ] CONV T63D063,F63D063 3 % CONV T63D064,F63D064 4 " CONV T63D065,F63D065 5 _ CONV T63D066,F63D066 6 ! CONV T63D067,F63D067 7 & CONV T63D070,F63D070 8 ' CONV T63D071,F63D071 9 ? CONV T63D072,F63D072 : < CONV T63D073,F63D073 ; > CONV T63D074,F63D074 < @ CONV T63D075,F63D075 = \ CONV T63D076,F63D076 > ^ CONV T63D077,F63D077 ? ; CONV T63D100,F63D100 @ CONV T63D101,F63D101 A CONV T63D102,F63D102 B CONV T63D103,F63D103 C CONV T63D104,F63D104 D CONV T63D105,F63D105 E CONV T63D106,F63D106 F CONV T63D107,F63D107 G CONV T63D110,F63D110 H CONV T63D111,F63D111 I CONV T63D112,F63D112 J CONV T63D113,F63D113 K CONV T63D114,F63D114 L CONV T63D115,F63D115 M CONV T63D116,F63D116 N CONV T63D117,F63D117 O CONV T63D120,F63D120 P CONV T63D121,F63D121 Q CONV T63D122,F63D122 R CONV T63D123,F63D123 S CONV T63D124,F63D124 T CONV T63D125,F63D125 U CONV T63D126,F63D126 V CONV T63D127,F63D127 W CONV T63D130,F63D130 X CONV T63D131,F63D131 Y CONV T63D132,F63D132 Z CONV T63D133,F63D133 [ CONV T63D134,F63D134 \ CONV T63D135,F63D135 ] CONV T63D136,F63D136 ^ CONV T63D137,F63D137 _ CONV T63D140,F63D140 CONV T63D141,F63D141 A CONV T63D142,F63D142 B CONV T63D143,F63D143 C CONV T63D144,F63D144 D CONV T63D145,F63D145 E CONV T63D146,F63D146 F CONV T63D147,F63D147 G CONV T63D150,F63D150 H CONV T63D151,F63D151 I CONV T63D152,F63D152 J CONV T63D153,F63D153 K CONV T63D154,F63D154 L CONV T63D155,F63D155 M CONV T63D156,F63D156 N CONV T63D157,F63D157 O CONV T63D160,F63D160 P CONV T63D161,F63D161 Q CONV T63D162,F63D162 R CONV T63D163,F63D163 S CONV T63D164,F63D164 T CONV T63D165,F63D165 U CONV T63D166,F63D166 V CONV T63D167,F63D167 W CONV T63D170,F63D170 X CONV T63D171,F63D171 Y CONV T63D172,F63D172 Z CONV T63D173,F63D173 [ CONV T63D174,F63D174 \ CONV T63D175,F63D175 ] CONV T63D176,F63D176 ^ CONV T63D177,F63D177 CONV T63D200,F63D200 CONV T63D201,F63D201 CONV T63D202,F63D202 CONV T63D203,F63D203 CONV T63D204,F63D204 CONV T63D205,F63D205 CONV T63D206,F63D206 CONV T63D207,F63D207 CONV T63D210,F63D210 CONV T63D211,F63D211 CONV T63D212,F63D212 CONV T63D213,F63D213 CONV T63D214,F63D214 CONV T63D215,F63D215 CONV T63D216,F63D216 CONV T63D217,F63D217 CONV T63D220,F63D220 CONV T63D221,F63D221 CONV T63D222,F63D222 CONV T63D223,F63D223 CONV T63D224,F63D224 CONV T63D225,F63D225 CONV T63D226,F63D226 CONV T63D227,F63D227 CONV T63D230,F63D230 CONV T63D231,F63D231 CONV T63D232,F63D232 CONV T63D233,F63D233 CONV T63D234,F63D234 CONV T63D235,F63D235 CONV T63D236,F63D236 CONV T63D237,F63D237 CONV T63D240,F63D240 BLANK CONV T63D241,F63D241 ! CONV T63D242,F63D242 " CONV T63D243,F63D243 # CONV T63D244,F63D244 $ CONV T63D245,F63D245 BLANK CONV T63D246,F63D246 & CONV T63D247,F63D247 ' CONV T63D250,F63D250 ( CONV T63D251,F63D251 ) CONV T63D252,F63D252 * CONV T63D253,F63D253 + CONV T63D254,F63D254 , CONV T63D255,F63D255 - CONV T63D256,F63D256 . CONV T63D257,F63D257 / CONV T63D260,F63D260 0 CONV T63D261,F63D261 1 CONV T63D262,F63D262 2 CONV T63D263,F63D263 3 CONV T63D264,F63D264 4 CONV T63D265,F63D265 5 CONV T63D266,F63D266 6 CONV T63D267,F63D267 7 CONV T63D270,F63D270 8 CONV T63D271,F63D271 9 CONV T63D272,F63D272 : CONV T63D273,F63D273 ; CONV T63D274,F63D274 < CONV T63D275,F63D275 = CONV T63D276,F63D276 > CONV T63D277,F63D277 ? CONV T63D300,F63D300 @ CONV T63D301,F63D301 A CONV T63D302,F63D302 B CONV T63D303,F63D303 C CONV T63D304,F63D304 D CONV T63D305,F63D305 E CONV T63D306,F63D306 F CONV T63D307,F63D307 G CONV T63D310,F63D310 H CONV T63D311,F63D311 I CONV T63D312,F63D312 J CONV T63D313,F63D313 K CONV T63D314,F63D314 L CONV T63D315,F63D315 M CONV T63D316,F63D316 N CONV T63D317,F63D317 O CONV T63D320,F63D320 P CONV T63D321,F63D321 Q CONV T63D322,F63D322 R CONV T63D323,F63D323 S CONV T63D324,F63D324 T CONV T63D325,F63D325 U CONV T63D326,F63D326 V CONV T63D327,F63D327 W CONV T63D330,F63D330 X CONV T63D331,F63D331 Y CONV T63D332,F63D332 Z CONV T63D333,F63D333 [ CONV T63D334,F63D334 \ CONV T63D335,F63D335 ] CONV T63D336,F63D336 ^ CONV T63D337,F63D337 _ CONV T63D340,F63D340 CONV T63D341,F63D341 A CONV T63D342,F63D342 B CONV T63D343,F63D343 C CONV T63D344,F63D344 D CONV T63D345,F63D345 E CONV T63D346,F63D346 F CONV T63D347,F63D347 G CONV T63D350,F63D350 H CONV T63D351,F63D351 I CONV T63D352,F63D352 J CONV T63D353,F63D353 K CONV T63D354,F63D354 L CONV T63D355,F63D355 M CONV T63D356,F63D356 N CONV T63D357,F63D357 O CONV T63D360,F63D360 P CONV T63D361,F63D361 Q CONV T63D362,F63D362 R CONV T63D363,F63D363 S CONV T63D364,F63D364 T CONV T63D365,F63D365 U CONV T63D366,F63D366 V CONV T63D367,F63D367 W CONV T63D370,F63D370 X CONV T63D371,F63D371 Y CONV T63D372,F63D372 Z CONV T63D373,F63D373 [ CONV T63D374,F63D374 \ CONV T63D375,F63D375 ] CONV T63D376,F63D376 ^ CONV T63D377,F63D377 CONV ZBCH,ZBCH ZB ZB CONV EORC,EORC EOR EOR CONV EOFC,EOFC EOF EOF CONV EOIC,EOIC EOI EOI LOC *O QUAL * SPACE 4,10 TA64 BSS 0 64 CHARACTER ASCII 6/12 QUAL COMTCVT LOC 0 * TO FROM * ASCII64 ASCII64 CONV T64A000,F64A000 NUL : CONV T64A001,F64A001 SOH A CONV T64A002,F64A002 STX B CONV T64A003,F64A003 ETX C CONV T64A004,F64A004 EOT D CONV T64A005,F64A005 ENQ E CONV T64A006,F64A006 ACK F CONV T64A007,F64A007 BEL G CONV T64A010,F64A010 BS H CONV T64A011,F64A011 HT I CONV T64A012,F64A012 LF J CONV T64A013,F64A013 VT K CONV T64A014,F64A014 FF L CONV T64A015,F64A015 CR M CONV T64A016,F64A016 SO N CONV T64A017,F64A017 SI O CONV T64A020,F64A020 DLE P CONV T64A021,F64A021 DC1 Q CONV T64A022,F64A022 DC2 R CONV T64A023,F64A023 DC3 S CONV T64A024,F64A024 DC4 T CONV T64A025,F64A025 NAK U CONV T64A026,F64A026 SYN V CONV T64A027,F64A027 ETB W CONV T64A030,F64A030 CAN X CONV T64A031,F64A031 EM Y CONV T64A032,F64A032 SUB Z CONV T64A033,F64A033 ESC 0 CONV T64A034,F64A034 FS 1 CONV T64A035,F64A035 GS 2 CONV T64A036,F64A036 RS 3 CONV T64A037,F64A037 US 4 CONV T64A040,F64A040 BLANK 5 CONV T64A041,F64A041 ! 6 CONV T64A042,F64A042 " 7 CONV T64A043,F64A043 # 8 CONV T64A044,F64A044 $ 9 CONV T64A045,F64A045 % + CONV T64A046,F64A046 & - CONV T64A047,F64A047 ' * CONV T64A050,F64A050 ( / CONV T64A051,F64A051 ) ( CONV T64A052,F64A052 * ) CONV T64A053,F64A053 + $ CONV T64A054,F64A054 , = CONV T64A055,F64A055 - BLANK CONV T64A056,F64A056 . , CONV T64A057,F64A057 / . CONV T64A060,F64A060 0 # CONV T64A061,F64A061 1 [ CONV T64A062,F64A062 2 ] CONV T64A063,F64A063 3 % CONV T64A064,F64A064 4 " CONV T64A065,F64A065 5 _ CONV T64A066,F64A066 6 ! CONV T64A067,F64A067 7 & CONV T64A070,F64A070 8 ' CONV T64A071,F64A071 9 ? CONV T64A072,F64A072 : < CONV T64A073,F64A073 ; > CONV T64A074,F64A074 < CONV T64A075,F64A075 = \ CONV T64A076,F64A076 > CONV T64A077,F64A077 ? ; CONV T64A100,F64A100 @ CONV T64A101,F64A101 A CONV T64A102,F64A102 B CONV T64A103,F64A103 C CONV T64A104,F64A104 D CONV T64A105,F64A105 E CONV T64A106,F64A106 F CONV T64A107,F64A107 G CONV T64A110,F64A110 H CONV T64A111,F64A111 I CONV T64A112,F64A112 J CONV T64A113,F64A113 K CONV T64A114,F64A114 L CONV T64A115,F64A115 M CONV T64A116,F64A116 N CONV T64A117,F64A117 O CONV T64A120,F64A120 P CONV T64A121,F64A121 Q CONV T64A122,F64A122 R CONV T64A123,F64A123 S CONV T64A124,F64A124 T CONV T64A125,F64A125 U CONV T64A126,F64A126 V CONV T64A127,F64A127 W CONV T64A130,F64A130 X CONV T64A131,F64A131 Y CONV T64A132,F64A132 Z CONV T64A133,F64A133 [ CONV T64A134,F64A134 \ CONV T64A135,F64A135 ] CONV T64A136,F64A136 ^ CONV T64A137,F64A137 _ CONV T64A140,F64A140 CONV T64A141,F64A141 A CONV T64A142,F64A142 B CONV T64A143,F64A143 C CONV T64A144,F64A144 D CONV T64A145,F64A145 E CONV T64A146,F64A146 F CONV T64A147,F64A147 G CONV T64A150,F64A150 H CONV T64A151,F64A151 I CONV T64A152,F64A152 J CONV T64A153,F64A153 K CONV T64A154,F64A154 L CONV T64A155,F64A155 M CONV T64A156,F64A156 N CONV T64A157,F64A157 O CONV T64A160,F64A160 P CONV T64A161,F64A161 Q CONV T64A162,F64A162 R CONV T64A163,F64A163 S CONV T64A164,F64A164 T CONV T64A165,F64A165 U CONV T64A166,F64A166 V CONV T64A167,F64A167 W CONV T64A170,F64A170 X CONV T64A171,F64A171 Y CONV T64A172,F64A172 Z CONV T64A173,F64A173 L BRACE CONV T64A174,F64A174 V LINE CONV T64A175,F64A175 R BRACE CONV T64A176,F64A176 TILDE CONV T64A177,F64A177 DEL CONV T64A200,F64A200 NUL CONV T64A201,F64A201 SOH @ CONV T64A202,F64A202 STX ^ CONV T64A203,F64A203 ETX CONV T64A204,F64A204 EOT : CONV T64A205,F64A205 ENQ CONV T64A206,F64A206 ACK CONV T64A207,F64A207 BEL CONV T64A210,F64A210 BS CONV T64A211,F64A211 HT CONV T64A212,F64A212 LF CONV T64A213,F64A213 VT CONV T64A214,F64A214 FF CONV T64A215,F64A215 CR CONV T64A216,F64A216 SO CONV T64A217,F64A217 SI CONV T64A220,F64A220 DLE CONV T64A221,F64A221 DC1 CONV T64A222,F64A222 DC2 CONV T64A223,F64A223 DC3 CONV T64A224,F64A224 DC4 CONV T64A225,F64A225 NAK CONV T64A226,F64A226 SYN CONV T64A227,F64A227 ETB CONV T64A230,F64A230 CAN CONV T64A231,F64A231 EM CONV T64A232,F64A232 SUB CONV T64A233,F64A233 ESC CONV T64A234,F64A234 FS CONV T64A235,F64A235 GS CONV T64A236,F64A236 RS CONV T64A237,F64A237 US CONV T64A240,F64A240 BLANK CONV T64A241,F64A241 ! CONV T64A242,F64A242 " CONV T64A243,F64A243 # CONV T64A244,F64A244 $ CONV T64A245,F64A245 % CONV T64A246,F64A246 & CONV T64A247,F64A247 ' CONV T64A250,F64A250 ( CONV T64A251,F64A251 ) CONV T64A252,F64A252 * CONV T64A253,F64A253 + CONV T64A254,F64A254 , CONV T64A255,F64A255 - CONV T64A256,F64A256 . CONV T64A257,F64A257 / CONV T64A260,F64A260 0 CONV T64A261,F64A261 1 CONV T64A262,F64A262 2 CONV T64A263,F64A263 3 CONV T64A264,F64A264 4 CONV T64A265,F64A265 5 CONV T64A266,F64A266 6 CONV T64A267,F64A267 7 CONV T64A270,F64A270 8 CONV T64A271,F64A271 9 CONV T64A272,F64A272 : CONV T64A273,F64A273 ; CONV T64A274,F64A274 < CONV T64A275,F64A275 = CONV T64A276,F64A276 > CONV T64A277,F64A277 ? CONV T64A300,F64A300 @ CONV T64A301,F64A301 A A CONV T64A302,F64A302 B B CONV T64A303,F64A303 C C CONV T64A304,F64A304 D D CONV T64A305,F64A305 E E CONV T64A306,F64A306 F F CONV T64A307,F64A307 G G CONV T64A310,F64A310 H H CONV T64A311,F64A311 I I CONV T64A312,F64A312 J J CONV T64A313,F64A313 K K CONV T64A314,F64A314 L L CONV T64A315,F64A315 M M CONV T64A316,F64A316 N N CONV T64A317,F64A317 O O CONV T64A320,F64A320 P P CONV T64A321,F64A321 Q Q CONV T64A322,F64A322 R R CONV T64A323,F64A323 S S CONV T64A324,F64A324 T T CONV T64A325,F64A325 U U CONV T64A326,F64A326 V V CONV T64A327,F64A327 W W CONV T64A330,F64A330 X X CONV T64A331,F64A331 Y Y CONV T64A332,F64A332 Z Z CONV T64A333,F64A333 [ L BRACE CONV T64A334,F64A334 \ V LINE CONV T64A335,F64A335 ] R BRACE CONV T64A336,F64A336 ^ TILDE CONV T64A337,F64A337 _ DEL CONV T64A340,F64A340 NUL CONV T64A341,F64A341 A SOH CONV T64A342,F64A342 B STX CONV T64A343,F64A343 C ETX CONV T64A344,F64A344 D EOT CONV T64A345,F64A345 E ENQ CONV T64A346,F64A346 F ACK CONV T64A347,F64A347 G BEL CONV T64A350,F64A350 H BS CONV T64A351,F64A351 I HT CONV T64A352,F64A352 J LF CONV T64A353,F64A353 K VT CONV T64A354,F64A354 L FF CONV T64A355,F64A355 M CR CONV T64A356,F64A356 N SO CONV T64A357,F64A357 O SI CONV T64A360,F64A360 P DLE CONV T64A361,F64A361 Q DC1 CONV T64A362,F64A362 R DC2 CONV T64A363,F64A363 S DC3 CONV T64A364,F64A364 T DC4 CONV T64A365,F64A365 U NAK CONV T64A366,F64A366 V SYN CONV T64A367,F64A367 W ETB CONV T64A370,F64A370 X CAN CONV T64A371,F64A371 Y EM CONV T64A372,F64A372 Z SUB CONV T64A373,F64A373 L BRACE ESC CONV T64A374,F64A374 V LINE FS CONV T64A375,F64A375 R BRACE GS CONV T64A376,F64A376 TILDE RS CONV T64A377,F64A377 DEL US CONV ZBCH,ZBCH ZB ZB CONV EORC,EORC EOR EOR CONV EOFC,EOFC EOF EOF CONV EOIC,EOIC EOI EOI LOC *O QUAL * SPACE 4,10 TA63 BSS 0 63 CHARACTER 6/12 DISPLAY CODE QUAL COMTCVT LOC 0 * TO FROM * ASCII63 ASCII63 CONV T63A000,F63A000 NUL CONV T63A001,F63A001 SOH A CONV T63A002,F63A002 STX B CONV T63A003,F63A003 ETX C CONV T63A004,F63A004 EOT D CONV T63A005,F63A005 ENQ E CONV T63A006,F63A006 ACK F CONV T63A007,F63A007 BEL G CONV T63A010,F63A010 BS H CONV T63A011,F63A011 HT I CONV T63A012,F63A012 LF J CONV T63A013,F63A013 VT K CONV T63A014,F63A014 FF L CONV T63A015,F63A015 CR M CONV T63A016,F63A016 SO N CONV T63A017,F63A017 SI O CONV T63A020,F63A020 DLE P CONV T63A021,F63A021 DC1 Q CONV T63A022,F63A022 DC2 R CONV T63A023,F63A023 DC3 S CONV T63A024,F63A024 DC4 T CONV T63A025,F63A025 NAK U CONV T63A026,F63A026 SYN V CONV T63A027,F63A027 ETB W CONV T63A030,F63A030 CAN X CONV T63A031,F63A031 EM Y CONV T63A032,F63A032 SUB Z CONV T63A033,F63A033 ESC 0 CONV T63A034,F63A034 FS 1 CONV T63A035,F63A035 GS 2 CONV T63A036,F63A036 RS 3 CONV T63A037,F63A037 US 4 CONV T63A040,F63A040 BLANK 5 CONV T63A041,F63A041 ! 6 CONV T63A042,F63A042 " 7 CONV T63A043,F63A043 # 8 CONV T63A044,F63A044 $ 9 CONV T63A045,F63A045 % + CONV T63A046,F63A046 & - CONV T63A047,F63A047 ' * CONV T63A050,F63A050 ( / CONV T63A051,F63A051 ) ( CONV T63A052,F63A052 * ) CONV T63A053,F63A053 + $ CONV T63A054,F63A054 , = CONV T63A055,F63A055 - BLANK CONV T63A056,F63A056 . , CONV T63A057,F63A057 / . CONV T63A060,F63A060 0 # CONV T63A061,F63A061 1 [ CONV T63A062,F63A062 2 ] CONV T63A063,F63A063 3 : CONV T63A064,F63A064 4 " CONV T63A065,F63A065 5 _ CONV T63A066,F63A066 6 ! CONV T63A067,F63A067 7 & CONV T63A070,F63A070 8 ' CONV T63A071,F63A071 9 ? CONV T63A072,F63A072 : < CONV T63A073,F63A073 ; > CONV T63A074,F63A074 < CONV T63A075,F63A075 = \ CONV T63A076,F63A076 > CONV T63A077,F63A077 ? ; CONV T63A100,F63A100 @ CONV T63A101,F63A101 A CONV T63A102,F63A102 B CONV T63A103,F63A103 C CONV T63A104,F63A104 D CONV T63A105,F63A105 E CONV T63A106,F63A106 F CONV T63A107,F63A107 G CONV T63A110,F63A110 H CONV T63A111,F63A111 I CONV T63A112,F63A112 J CONV T63A113,F63A113 K CONV T63A114,F63A114 L CONV T63A115,F63A115 M CONV T63A116,F63A116 N CONV T63A117,F63A117 O CONV T63A120,F63A120 P CONV T63A121,F63A121 Q CONV T63A122,F63A122 R CONV T63A123,F63A123 S CONV T63A124,F63A124 T CONV T63A125,F63A125 U CONV T63A126,F63A126 V CONV T63A127,F63A127 W CONV T63A130,F63A130 X CONV T63A131,F63A131 Y CONV T63A132,F63A132 Z CONV T63A133,F63A133 [ CONV T63A134,F63A134 \ CONV T63A135,F63A135 ] CONV T63A136,F63A136 ^ CONV T63A137,F63A137 _ CONV T63A140,F63A140 CONV T63A141,F63A141 A CONV T63A142,F63A142 B CONV T63A143,F63A143 C CONV T63A144,F63A144 D CONV T63A145,F63A145 E CONV T63A146,F63A146 F CONV T63A147,F63A147 G CONV T63A150,F63A150 H CONV T63A151,F63A151 I CONV T63A152,F63A152 J CONV T63A153,F63A153 K CONV T63A154,F63A154 L CONV T63A155,F63A155 M CONV T63A156,F63A156 N CONV T63A157,F63A157 O CONV T63A160,F63A160 P CONV T63A161,F63A161 Q CONV T63A162,F63A162 R CONV T63A163,F63A163 S CONV T63A164,F63A164 T CONV T63A165,F63A165 U CONV T63A166,F63A166 V CONV T63A167,F63A167 W CONV T63A170,F63A170 X CONV T63A171,F63A171 Y CONV T63A172,F63A172 Z CONV T63A173,F63A173 L BRACE CONV T63A174,F63A174 V LINE CONV T63A175,F63A175 R BRACE CONV T63A176,F63A176 TILDE CONV T63A177,F63A177 DEL CONV T63A200,F63A200 NUL CONV T63A201,F63A201 SOH @ CONV T63A202,F63A202 STX ^ CONV T63A203,F63A203 ETX CONV T63A204,F63A204 EOT % CONV T63A205,F63A205 ENQ CONV T63A206,F63A206 ACK CONV T63A207,F63A207 BEL CONV T63A210,F63A210 BS CONV T63A211,F63A211 HT CONV T63A212,F63A212 LF CONV T63A213,F63A213 VT CONV T63A214,F63A214 FF CONV T63A215,F63A215 CR CONV T63A216,F63A216 SO CONV T63A217,F63A217 SI CONV T63A220,F63A220 DLE CONV T63A221,F63A221 DC1 CONV T63A222,F63A222 DC2 CONV T63A223,F63A223 DC3 CONV T63A224,F63A224 DC4 CONV T63A225,F63A225 NAK CONV T63A226,F63A226 SYN CONV T63A227,F63A227 ETB CONV T63A230,F63A230 CAN CONV T63A231,F63A231 EM CONV T63A232,F63A232 SUB CONV T63A233,F63A233 ESC CONV T63A234,F63A234 FS CONV T63A235,F63A235 GS CONV T63A236,F63A236 RS CONV T63A237,F63A237 US CONV T63A240,F63A240 BLANK CONV T63A241,F63A241 ! CONV T63A242,F63A242 " CONV T63A243,F63A243 # CONV T63A244,F63A244 $ CONV T63A245,F63A245 % CONV T63A246,F63A246 & CONV T63A247,F63A247 ' CONV T63A250,F63A250 ( CONV T63A251,F63A251 ) CONV T63A252,F63A252 * CONV T63A253,F63A253 + CONV T63A254,F63A254 , CONV T63A255,F63A255 - CONV T63A256,F63A256 . CONV T63A257,F63A257 / CONV T63A260,F63A260 0 CONV T63A261,F63A261 1 CONV T63A262,F63A262 2 CONV T63A263,F63A263 3 CONV T63A264,F63A264 4 CONV T63A265,F63A265 5 CONV T63A266,F63A266 6 CONV T63A267,F63A267 7 CONV T63A270,F63A270 8 CONV T63A271,F63A271 9 CONV T63A272,F63A272 : CONV T63A273,F63A273 ; CONV T63A274,F63A274 < CONV T63A275,F63A275 = CONV T63A276,F63A276 > CONV T63A277,F63A277 ? CONV T63A300,F63A300 @ CONV T63A301,F63A301 A A CONV T63A302,F63A302 B B CONV T63A303,F63A303 C C CONV T63A304,F63A304 D D CONV T63A305,F63A305 E E CONV T63A306,F63A306 F F CONV T63A307,F63A307 G G CONV T63A310,F63A310 H H CONV T63A311,F63A311 I I CONV T63A312,F63A312 J J CONV T63A313,F63A313 K K CONV T63A314,F63A314 L L CONV T63A315,F63A315 M M CONV T63A316,F63A316 N N CONV T63A317,F63A317 O O CONV T63A320,F63A320 P P CONV T63A321,F63A321 Q Q CONV T63A322,F63A322 R R CONV T63A323,F63A323 S S CONV T63A324,F63A324 T T CONV T63A325,F63A325 U U CONV T63A326,F63A326 V V CONV T63A327,F63A327 W W CONV T63A330,F63A330 X X CONV T63A331,F63A331 Y Y CONV T63A332,F63A332 Z Z CONV T63A333,F63A333 [ L BRACE CONV T63A334,F63A334 \ V LINE CONV T63A335,F63A335 ] R BRACE CONV T63A336,F63A336 ^ TILDE CONV T63A337,F63A337 _ DEL CONV T63A340,F63A340 NUL CONV T63A341,F63A341 A SOH CONV T63A342,F63A342 B STX CONV T63A343,F63A343 C ETX CONV T63A344,F63A344 D EOT CONV T63A345,F63A345 E ENQ CONV T63A346,F63A346 F ACK CONV T63A347,F63A347 G BEL CONV T63A350,F63A350 H BS CONV T63A351,F63A351 I HT CONV T63A352,F63A352 J LF CONV T63A353,F63A353 K VT CONV T63A354,F63A354 L FF CONV T63A355,F63A355 M CR CONV T63A356,F63A356 N SO CONV T63A357,F63A357 O SI CONV T63A360,F63A360 P DLE CONV T63A361,F63A361 Q DC1 CONV T63A362,F63A362 R DC2 CONV T63A363,F63A363 S DC3 CONV T63A364,F63A364 T DC4 CONV T63A365,F63A365 U NAK CONV T63A366,F63A366 V SYN CONV T63A367,F63A367 W ETB CONV T63A370,F63A370 X CAN CONV T63A371,F63A371 Y EM CONV T63A372,F63A372 Z SUB CONV T63A373,F63A373 L BRACE ESC CONV T63A374,F63A374 V LINE FS CONV T63A375,F63A375 R BRACE GS CONV T63A376,F63A376 TILDE RS CONV T63A377,F63A377 DEL US CONV ZBCH,ZBCH ZB ZB CONV EORC,EORC EOR EOR CONV EOFC,EOFC EOF EOF CONV EOIC,EOIC EOI EOI LOC *O QUAL * SPACE 4,10 TAS8 BSS 0 SHORT VERSION OF 8 BIT ASCII. QUAL COMTCVT LOC 0 * TO FROM * ASCII8 ASCII8 CONV T8AS000,F8AS000 NUL NUL CONV T8AS001,F8AS001 SOH SOH CONV T8AS002,F8AS002 STX STX CONV T8AS003,F8AS003 ETX ETX CONV T8AS004,F8AS004 EOT EOT CONV T8AS005,F8AS005 ENQ ENQ CONV T8AS006,F8AS006 ACK ACK CONV T8AS007,F8AS007 BEL BEL CONV T8AS010,F8AS010 BS BS CONV T8AS011,F8AS011 HT HT CONV T8AS012,F8AS012 LF LF CONV T8AS013,F8AS013 VT VT CONV T8AS014,F8AS014 FF FF CONV T8AS015,F8AS015 CR CR CONV T8AS016,F8AS016 SO SO CONV T8AS017,F8AS017 SI SI CONV T8AS020,F8AS020 DLE DLE CONV T8AS021,F8AS021 DC1 DC1 CONV T8AS022,F8AS022 DC2 DC2 CONV T8AS023,F8AS023 DC3 DC3 CONV T8AS024,F8AS024 DC4 DC4 CONV T8AS025,F8AS025 NAK NAK CONV T8AS026,F8AS026 SYN SYN CONV T8AS027,F8AS027 ETB ETB CONV T8AS030,F8AS030 CAN CAN CONV T8AS031,F8AS031 EM EM CONV T8AS032,F8AS032 SUB SUB CONV T8AS033,F8AS033 ESC ESC CONV T8AS034,F8AS034 FS FS CONV T8AS035,F8AS035 GS GS CONV T8AS036,F8AS036 RS RS CONV T8AS037,F8AS037 US US CONV T8AS040,F8AS040 BLANK BLANK CONV T8AS041,F8AS041 ! ! CONV T8AS042,F8AS042 "" "" CONV T8AS043,F8AS043 # # CONV T8AS044,F8AS044 $ $ CONV T8AS045,F8AS045 % % CONV T8AS046,F8AS046 & & CONV T8AS047,F8AS047 ' ' CONV T8AS050,F8AS050 ( ( CONV T8AS051,F8AS051 ) ) CONV T8AS052,F8AS052 * * CONV T8AS053,F8AS053 + + CONV T8AS054,F8AS054 , , CONV T8AS055,F8AS055 - - CONV T8AS056,F8AS056 . . CONV T8AS057,F8AS057 / / CONV T8AS060,F8AS060 0 0 CONV T8AS061,F8AS061 1 1 CONV T8AS062,F8AS062 2 2 CONV T8AS063,F8AS063 3 3 CONV T8AS064,F8AS064 4 4 CONV T8AS065,F8AS065 5 5 CONV T8AS066,F8AS066 6 6 CONV T8AS067,F8AS067 7 7 CONV T8AS070,F8AS070 8 8 CONV T8AS071,F8AS071 9 9 CONV T8AS072,F8AS072 : : CONV T8AS073,F8AS073 ; ; CONV T8AS074,F8AS074 < < CONV T8AS075,F8AS075 = = CONV T8AS076,F8AS076 > > CONV T8AS077,F8AS077 ? ? CONV T8AS100,F8AS100 @ @ CONV T8AS101,F8AS101 A A CONV T8AS102,F8AS102 B B CONV T8AS103,F8AS103 C C CONV T8AS104,F8AS104 D D CONV T8AS105,F8AS105 E E CONV T8AS106,F8AS106 F F CONV T8AS107,F8AS107 G G CONV T8AS110,F8AS110 H H CONV T8AS111,F8AS111 I I CONV T8AS112,F8AS112 J J CONV T8AS113,F8AS113 K K CONV T8AS114,F8AS114 L L CONV T8AS115,F8AS115 M M CONV T8AS116,F8AS116 N N CONV T8AS117,F8AS117 O O CONV T8AS120,F8AS120 P P CONV T8AS121,F8AS121 Q Q CONV T8AS122,F8AS122 R R CONV T8AS123,F8AS123 S S CONV T8AS124,F8AS124 T T CONV T8AS125,F8AS125 U U CONV T8AS126,F8AS126 V V CONV T8AS127,F8AS127 W W CONV T8AS130,F8AS130 X X CONV T8AS131,F8AS131 Y Y CONV T8AS132,F8AS132 Z Z CONV T8AS133,F8AS133 [ [ CONV T8AS134,F8AS134 \ \ CONV T8AS135,F8AS135 ] ] CONV T8AS136,F8AS136 ^ ^ CONV T8AS137,F8AS137 _ _ CONV T8AS140,F8AS140 CONV T8AS141,F8AS141 A A CONV T8AS142,F8AS142 B B CONV T8AS143,F8AS143 C C CONV T8AS144,F8AS144 D D CONV T8AS145,F8AS145 E E CONV T8AS146,F8AS146 F F CONV T8AS147,F8AS147 G G CONV T8AS150,F8AS150 H H CONV T8AS151,F8AS151 I I CONV T8AS152,F8AS152 J J CONV T8AS153,F8AS153 K K CONV T8AS154,F8AS154 L L CONV T8AS155,F8AS155 M M CONV T8AS156,F8AS156 N N CONV T8AS157,F8AS157 O O CONV T8AS160,F8AS160 P P CONV T8AS161,F8AS161 Q Q CONV T8AS162,F8AS162 R R CONV T8AS163,F8AS163 S S CONV T8AS164,F8AS164 T T CONV T8AS165,F8AS165 U U CONV T8AS166,F8AS166 V V CONV T8AS167,F8AS167 W W CONV T8AS170,F8AS170 X X CONV T8AS171,F8AS171 Y Y CONV T8AS172,F8AS172 Z Z CONV T8AS173,F8AS173 L BRACE L BRACE CONV T8AS174,F8AS174 V LINE V LINE CONV T8AS175,F8AS175 R BRACE R BRACE CONV T8AS176,F8AS176 TILDE TILDE CONV T8AS177,F8AS177 DEL DEL CONV T8AS200,F8AS200 NUL NUL CONV T8AS201,F8AS201 SOH SOH CONV T8AS202,F8AS202 STX STX CONV T8AS203,F8AS203 ETX ETX CONV T8AS204,F8AS204 EOT EOT CONV T8AS205,F8AS205 ENQ ENQ CONV T8AS206,F8AS206 ACK ACK CONV T8AS207,F8AS207 BEL BEL CONV T8AS210,F8AS210 BS BS CONV T8AS211,F8AS211 HT HT CONV T8AS212,F8AS212 LF LF CONV T8AS213,F8AS213 VT VT CONV T8AS214,F8AS214 FF FF CONV T8AS215,F8AS215 CR CR CONV T8AS216,F8AS216 SO SO CONV T8AS217,F8AS217 SI SI CONV T8AS220,F8AS220 DLE DLE CONV T8AS221,F8AS221 DC1 DC1 CONV T8AS222,F8AS222 DC2 DC2 CONV T8AS223,F8AS223 DC3 DC3 CONV T8AS224,F8AS224 DC4 DC4 CONV T8AS225,F8AS225 NAK NAK CONV T8AS226,F8AS226 SYN SYN CONV T8AS227,F8AS227 ETB ETB CONV T8AS230,F8AS230 CAN CAN CONV T8AS231,F8AS231 EM EM CONV T8AS232,F8AS232 SUB SUB CONV T8AS233,F8AS233 ESC ESC CONV T8AS234,F8AS234 FS FS CONV T8AS235,F8AS235 GS GS CONV T8AS236,F8AS236 RS RS CONV T8AS237,F8AS237 US US CONV T8AS240,F8AS240 BLANK BLANK CONV T8AS241,F8AS241 ! ! CONV T8AS242,F8AS242 QUOTE QUOTE CONV T8AS243,F8AS243 # # CONV T8AS244,F8AS244 $ $ CONV T8AS245,F8AS245 % % CONV T8AS246,F8AS246 & & CONV T8AS247,F8AS247 ' ' CONV T8AS250,F8AS250 ( ( CONV T8AS251,F8AS251 ) ) CONV T8AS252,F8AS252 * * CONV T8AS253,F8AS253 + + CONV T8AS254,F8AS254 , , CONV T8AS255,F8AS255 - - CONV T8AS256,F8AS256 . . CONV T8AS257,F8AS257 / / CONV T8AS260,F8AS260 0 0 CONV T8AS261,F8AS261 1 1 CONV T8AS262,F8AS262 2 2 CONV T8AS263,F8AS263 3 3 CONV T8AS264,F8AS264 4 4 CONV T8AS265,F8AS265 5 5 CONV T8AS266,F8AS266 6 6 CONV T8AS267,F8AS267 7 7 CONV T8AS270,F8AS270 8 8 CONV T8AS271,F8AS271 9 9 CONV T8AS272,F8AS272 : : CONV T8AS273,F8AS273 ; ; CONV T8AS274,F8AS274 < < CONV T8AS275,F8AS275 = = CONV T8AS276,F8AS276 > > CONV T8AS277,F8AS277 ? ? CONV T8AS300,F8AS300 @ @ CONV T8AS301,F8AS301 A A CONV T8AS302,F8AS302 B B CONV T8AS303,F8AS303 C C CONV T8AS304,F8AS304 D D CONV T8AS305,F8AS305 E E CONV T8AS306,F8AS306 F F CONV T8AS307,F8AS307 G G CONV T8AS310,F8AS310 H H CONV T8AS311,F8AS311 I I CONV T8AS312,F8AS312 J J CONV T8AS313,F8AS313 K K CONV T8AS314,F8AS314 L L CONV T8AS315,F8AS315 M M CONV T8AS316,F8AS316 N N CONV T8AS317,F8AS317 O O CONV T8AS320,F8AS320 P P CONV T8AS321,F8AS321 Q Q CONV T8AS322,F8AS322 R R CONV T8AS323,F8AS323 S S CONV T8AS324,F8AS324 T T CONV T8AS325,F8AS325 U U CONV T8AS326,F8AS326 V V CONV T8AS327,F8AS327 W W CONV T8AS330,F8AS330 X X CONV T8AS331,F8AS331 Y Y CONV T8AS332,F8AS332 Z Z CONV T8AS333,F8AS333 [ [ CONV T8AS334,F8AS334 \ \ CONV T8AS335,F8AS335 ] ] CONV T8AS336,F8AS336 ^ ^ CONV T8AS337,F8AS337 _ _ CONV T8AS340,F8AS340 CONV T8AS341,F8AS341 A A CONV T8AS342,F8AS342 B B CONV T8AS343,F8AS343 C C CONV T8AS344,F8AS344 D D CONV T8AS345,F8AS345 E E CONV T8AS346,F8AS346 F F CONV T8AS347,F8AS347 G G CONV T8AS350,F8AS350 H H CONV T8AS351,F8AS351 I I CONV T8AS352,F8AS352 J J CONV T8AS353,F8AS353 K K CONV T8AS354,F8AS354 L L CONV T8AS355,F8AS355 M M CONV T8AS356,F8AS356 N N CONV T8AS357,F8AS357 O O CONV T8AS360,F8AS360 P P CONV T8AS361,F8AS361 Q Q CONV T8AS362,F8AS362 R R CONV T8AS363,F8AS363 S S CONV T8AS364,F8AS364 T T CONV T8AS365,F8AS365 U U CONV T8AS366,F8AS366 V V CONV T8AS367,F8AS367 W W CONV T8AS370,F8AS370 X X CONV T8AS371,F8AS371 Y Y CONV T8AS372,F8AS372 Z Z CONV T8AS373,F8AS373 L BRACE L BRACE CONV T8AS374,F8AS374 V LINE V LINE CONV T8AS375,F8AS375 R BRACE R BRACE CONV T8AS376,F8AS376 TILDE TILDE CONV T8AS377,F8AS377 DEL DEL CONV ZBCH,ZBCH ZB ZB CONV EORC,EORC EOR EOR CONV EOFC,EOFC EOF EOF CONV EOIC,EOIC EOI EOI LOC *O QUAL * SPACE 4,10 TASC BSS 0 FULL 8 BIT ASCII QUAL COMTCVT LOC 0 * TO FROM * ASCII ASCII CONV TASC000,FASC000 NUL NUL CONV TASC001,FASC001 SOH SOH CONV TASC002,FASC002 STX STX CONV TASC003,FASC003 ETX ETX CONV TASC004,FASC004 EOT EOT CONV TASC005,FASC005 ENQ ENQ CONV TASC006,FASC006 ACK ACK CONV TASC007,FASC007 BEL BEL CONV TASC010,FASC010 BS BS CONV TASC011,FASC011 HT HT CONV TASC012,FASC012 LF LF CONV TASC013,FASC013 VT VT CONV TASC014,FASC014 FF FF CONV TASC015,FASC015 CR CR CONV TASC016,FASC016 SO SO CONV TASC017,FASC017 SI SI CONV TASC020,FASC020 DLE DLE CONV TASC021,FASC021 DC1 DC1 CONV TASC022,FASC022 DC2 DC2 CONV TASC023,FASC023 DC3 DC3 CONV TASC024,FASC024 DC4 DC4 CONV TASC025,FASC025 NAK NAK CONV TASC026,FASC026 SYN SYN CONV TASC027,FASC027 ETB ETB CONV TASC030,FASC030 CAN CAN CONV TASC031,FASC031 EM EM CONV TASC032,FASC032 SUB SUB CONV TASC033,FASC033 ESC ESC CONV TASC034,FASC034 FS FS CONV TASC035,FASC035 GS GS CONV TASC036,FASC036 RS RS CONV TASC037,FASC037 US US CONV TASC040,FASC040 BLANK BLANK CONV TASC041,FASC041 ! ! CONV TASC042,FASC042 "" "" CONV TASC043,FASC043 # # CONV TASC044,FASC044 $ $ CONV TASC045,FASC045 % % CONV TASC046,FASC046 & & CONV TASC047,FASC047 ' ' CONV TASC050,FASC050 ( ( CONV TASC051,FASC051 ) ) CONV TASC052,FASC052 * * CONV TASC053,FASC053 + + CONV TASC054,FASC054 , , CONV TASC055,FASC055 - - CONV TASC056,FASC056 . . CONV TASC057,FASC057 / / CONV TASC060,FASC060 0 0 CONV TASC061,FASC061 1 1 CONV TASC062,FASC062 2 2 CONV TASC063,FASC063 3 3 CONV TASC064,FASC064 4 4 CONV TASC065,FASC065 5 5 CONV TASC066,FASC066 6 6 CONV TASC067,FASC067 7 7 CONV TASC070,FASC070 8 8 CONV TASC071,FASC071 9 9 CONV TASC072,FASC072 : : CONV TASC073,FASC073 ; ; CONV TASC074,FASC074 < < CONV TASC075,FASC075 = = CONV TASC076,FASC076 > > CONV TASC077,FASC077 ? ? CONV TASC100,FASC100 @ @ CONV TASC101,FASC101 A A CONV TASC102,FASC102 B B CONV TASC103,FASC103 C C CONV TASC104,FASC104 D D CONV TASC105,FASC105 E E CONV TASC106,FASC106 F F CONV TASC107,FASC107 G G CONV TASC110,FASC110 H H CONV TASC111,FASC111 I I CONV TASC112,FASC112 J J CONV TASC113,FASC113 K K CONV TASC114,FASC114 L L CONV TASC115,FASC115 M M CONV TASC116,FASC116 N N CONV TASC117,FASC117 O O CONV TASC120,FASC120 P P CONV TASC121,FASC121 Q Q CONV TASC122,FASC122 R R CONV TASC123,FASC123 S S CONV TASC124,FASC124 T T CONV TASC125,FASC125 U U CONV TASC126,FASC126 V V CONV TASC127,FASC127 W W CONV TASC130,FASC130 X X CONV TASC131,FASC131 Y Y CONV TASC132,FASC132 Z Z CONV TASC133,FASC133 [ [ CONV TASC134,FASC134 \ \ CONV TASC135,FASC135 ] ] CONV TASC136,FASC136 ^ ^ CONV TASC137,FASC137 _ _ CONV TASC140,FASC140 CONV TASC141,FASC141 A A CONV TASC142,FASC142 B B CONV TASC143,FASC143 C C CONV TASC144,FASC144 D D CONV TASC145,FASC145 E E CONV TASC146,FASC146 F F CONV TASC147,FASC147 G G CONV TASC150,FASC150 H H CONV TASC151,FASC151 I I CONV TASC152,FASC152 J J CONV TASC153,FASC153 K K CONV TASC154,FASC154 L L CONV TASC155,FASC155 M M CONV TASC156,FASC156 N N CONV TASC157,FASC157 O O CONV TASC160,FASC160 P P CONV TASC161,FASC161 Q Q CONV TASC162,FASC162 R R CONV TASC163,FASC163 S S CONV TASC164,FASC164 T T CONV TASC165,FASC165 U U CONV TASC166,FASC166 V V CONV TASC167,FASC167 W W CONV TASC170,FASC170 X X CONV TASC171,FASC171 Y Y CONV TASC172,FASC172 Z Z CONV TASC173,FASC173 L BRACE L BRACE CONV TASC174,FASC174 V LINE V LINE CONV TASC175,FASC175 R BRACE R BRACE CONV TASC176,FASC176 TILDE TILDE CONV TASC177,FASC177 DEL DEL CONV TASC200,FASC200 CONV TASC201,FASC201 CONV TASC202,FASC202 CONV TASC203,FASC203 CONV TASC204,FASC204 CONV TASC205,FASC205 CONV TASC206,FASC206 CONV TASC207,FASC207 CONV TASC210,FASC210 CONV TASC211,FASC211 CONV TASC212,FASC212 CONV TASC213,FASC213 CONV TASC214,FASC214 CONV TASC215,FASC215 CONV TASC216,FASC216 CONV TASC217,FASC217 CONV TASC220,FASC220 CONV TASC221,FASC221 CONV TASC222,FASC222 CONV TASC223,FASC223 CONV TASC224,FASC224 CONV TASC225,FASC225 CONV TASC226,FASC226 CONV TASC227,FASC227 CONV TASC230,FASC230 CONV TASC231,FASC231 CONV TASC232,FASC232 CONV TASC233,FASC233 CONV TASC234,FASC234 CONV TASC235,FASC235 CONV TASC236,FASC236 CONV TASC237,FASC237 CONV TASC240,FASC240 CONV TASC241,FASC241 CONV TASC242,FASC242 CONV TASC243,FASC243 CONV TASC244,FASC244 CONV TASC245,FASC245 CONV TASC246,FASC246 CONV TASC247,FASC247 CONV TASC250,FASC250 CONV TASC251,FASC251 CONV TASC252,FASC252 CONV TASC253,FASC253 CONV TASC254,FASC254 CONV TASC255,FASC255 CONV TASC256,FASC256 CONV TASC257,FASC257 CONV TASC260,FASC260 CONV TASC261,FASC261 CONV TASC262,FASC262 CONV TASC263,FASC263 CONV TASC264,FASC264 CONV TASC265,FASC265 CONV TASC266,FASC266 CONV TASC267,FASC267 CONV TASC270,FASC270 CONV TASC271,FASC271 CONV TASC272,FASC272 CONV TASC273,FASC273 CONV TASC274,FASC274 CONV TASC275,FASC275 CONV TASC276,FASC276 CONV TASC277,FASC277 CONV TASC300,FASC300 CONV TASC301,FASC301 CONV TASC302,FASC302 CONV TASC303,FASC303 CONV TASC304,FASC304 CONV TASC305,FASC305 CONV TASC306,FASC306 CONV TASC307,FASC307 CONV TASC310,FASC310 CONV TASC311,FASC311 CONV TASC312,FASC312 CONV TASC313,FASC313 CONV TASC314,FASC314 CONV TASC315,FASC315 CONV TASC316,FASC316 CONV TASC317,FASC317 CONV TASC320,FASC320 CONV TASC321,FASC321 CONV TASC322,FASC322 CONV TASC323,FASC323 CONV TASC324,FASC324 CONV TASC325,FASC325 CONV TASC326,FASC326 CONV TASC327,FASC327 CONV TASC330,FASC330 CONV TASC331,FASC331 CONV TASC332,FASC332 CONV TASC333,FASC333 CONV TASC334,FASC334 CONV TASC335,FASC335 CONV TASC336,FASC336 CONV TASC337,FASC337 CONV TASC340,FASC340 CONV TASC341,FASC341 CONV TASC342,FASC342 CONV TASC343,FASC343 CONV TASC344,FASC344 CONV TASC345,FASC345 CONV TASC346,FASC346 CONV TASC347,FASC347 CONV TASC350,FASC350 CONV TASC351,FASC351 CONV TASC352,FASC352 CONV TASC353,FASC353 CONV TASC354,FASC354 CONV TASC355,FASC355 CONV TASC356,FASC356 CONV TASC357,FASC357 CONV TASC360,FASC360 CONV TASC361,FASC361 CONV TASC362,FASC362 CONV TASC363,FASC363 CONV TASC364,FASC364 CONV TASC365,FASC365 CONV TASC366,FASC366 CONV TASC367,FASC367 CONV TASC370,FASC370 CONV TASC371,FASC371 CONV TASC372,FASC372 CONV TASC373,FASC373 CONV TASC374,FASC374 CONV TASC375,FASC375 CONV TASC376,FASC376 CONV TASC377,FASC377 CONV ZBCH,ZBCH ZB ZB CONV EORC,EORC EOR EOR CONV EOFC,EOFC EOF EOF CONV EOIC,EOIC EOI EOI LOC *O QUAL * SPACE 4,10 TEBC BSS 0 FULL 8 BIT EBCDIC QUAL COMTCVT LOC 0 TO FROM EBCDIC EBCDIC CONV TEBC000,FEBC000 NUL NUL CONV TEBC001,FEBC001 SOH SOH CONV TEBC002,FEBC002 STX STX CONV TEBC003,FEBC003 ETX ETX CONV TEBC004,FEBC004 EOT PF CONV TEBC005,FEBC005 ENQ HT CONV TEBC006,FEBC006 ACK LC CONV TEBC007,FEBC007 BEL DEL CONV TEBC010,FEBC010 BS GE CONV TEBC011,FEBC011 HT RLF CONV TEBC012,FEBC012 LF SMM CONV TEBC013,FEBC013 VT VT CONV TEBC014,FEBC014 FF FF CONV TEBC015,FEBC015 CR CR CONV TEBC016,FEBC016 SO SO CONV TEBC017,FEBC017 SI SI CONV TEBC020,FEBC020 DLE DLE CONV TEBC021,FEBC021 DC1 DC1 CONV TEBC022,FEBC022 DC2 DC2 CONV TEBC023,FEBC023 DC3 (TM) TM (DC3) CONV TEBC024,FEBC024 DC4 RES CONV TEBC025,FEBC025 NAK NL CONV TEBC026,FEBC026 SYN BS CONV TEBC027,FEBC027 ETB IL CONV TEBC030,FEBC030 CAN CAN CONV TEBC031,FEBC031 EM EM CONV TEBC032,FEBC032 SUB CC CONV TEBC033,FEBC033 ESC CU1 CONV TEBC034,FEBC034 FS (IFS) IFS (FS) CONV TEBC035,FEBC035 GS (IGS) IGS (GS) CONV TEBC036,FEBC036 RS (IRS) IRS (RS) CONV TEBC037,FEBC037 US (IUS) IUS (US) CONV TEBC040,FEBC040 BLANK DS CONV TEBC041,FEBC041 ! SOS CONV TEBC042,FEBC042 " FS CONV TEBC043,FEBC043 # CONV TEBC044,FEBC044 $ BYP CONV TEBC045,FEBC045 % LF CONV TEBC046,FEBC046 & ETB CONV TEBC047,FEBC047 ' ESC CONV TEBC050,FEBC050 ( CONV TEBC051,FEBC051 ) CONV TEBC052,FEBC052 * SM CONV TEBC053,FEBC053 + CU2 CONV TEBC054,FEBC054 , CONV TEBC055,FEBC055 - ENQ CONV TEBC056,FEBC056 . ACK CONV TEBC057,FEBC057 / BEL CONV TEBC060,FEBC060 0 CONV TEBC061,FEBC061 1 CONV TEBC062,FEBC062 2 SYN CONV TEBC063,FEBC063 3 CONV TEBC064,FEBC064 4 PN CONV TEBC065,FEBC065 5 RS CONV TEBC066,FEBC066 6 UC CONV TEBC067,FEBC067 7 EOT CONV TEBC070,FEBC070 8 CONV TEBC071,FEBC071 9 CONV TEBC072,FEBC072 : CONV TEBC073,FEBC073 ; CU3 CONV TEBC074,FEBC074 < DC4 CONV TEBC075,FEBC075 = NAK CONV TEBC076,FEBC076 > CONV TEBC077,FEBC077 ? SUB CONV TEBC100,FEBC100 @ SPACE CONV TEBC101,FEBC101 A CONV TEBC102,FEBC102 B CONV TEBC103,FEBC103 C CONV TEBC104,FEBC104 D CONV TEBC105,FEBC105 E CONV TEBC106,FEBC106 F CONV TEBC107,FEBC107 G CONV TEBC110,FEBC110 H CONV TEBC111,FEBC111 I CONV TEBC112,FEBC112 J CENT SIGN ([) CONV TEBC113,FEBC113 K . CONV TEBC114,FEBC114 L < CONV TEBC115,FEBC115 M ( CONV TEBC116,FEBC116 N + CONV TEBC117,FEBC117 O VERT LINE (!) CONV TEBC120,FEBC120 P & CONV TEBC121,FEBC121 Q CONV TEBC122,FEBC122 R CONV TEBC123,FEBC123 S CONV TEBC124,FEBC124 T CONV TEBC125,FEBC125 U CONV TEBC126,FEBC126 V CONV TEBC127,FEBC127 W CONV TEBC130,FEBC130 X CONV TEBC131,FEBC131 Y CONV TEBC132,FEBC132 Z ! CONV TEBC133,FEBC133 [ $ CONV TEBC134,FEBC134 \ * CONV TEBC135,FEBC135 ] ) CONV TEBC136,FEBC136 ^ ; CONV TEBC137,FEBC137 _ ^ CONV TEBC140,FEBC140 - CONV TEBC141,FEBC141 A LC / CONV TEBC142,FEBC142 B LC CONV TEBC143,FEBC143 C LC CONV TEBC144,FEBC144 D LC CONV TEBC145,FEBC145 E LC CONV TEBC146,FEBC146 F LC CONV TEBC147,FEBC147 G LC CONV TEBC150,FEBC150 H LC CONV TEBC151,FEBC151 I LC CONV TEBC152,FEBC152 J LC VERT LINE CONV TEBC153,FEBC153 K LC , CONV TEBC154,FEBC154 L LC % CONV TEBC155,FEBC155 M LC _ CONV TEBC156,FEBC156 N LC > CONV TEBC157,FEBC157 O LC ? CONV TEBC160,FEBC160 P LC CONV TEBC161,FEBC161 Q LC CONV TEBC162,FEBC162 R LC CONV TEBC163,FEBC163 S LC CONV TEBC164,FEBC164 T LC CONV TEBC165,FEBC165 U LC CONV TEBC166,FEBC166 V LC CONV TEBC167,FEBC167 W LC CONV TEBC170,FEBC170 X LC CONV TEBC171,FEBC171 Y LC BACKWARDS AP CONV TEBC172,FEBC172 Z LC : CONV TEBC173,FEBC173 L BRACKET # CONV TEBC174,FEBC174 VERT LINE @ CONV TEBC175,FEBC175 R BRACKET ' CONV TEBC176,FEBC176 TILDE = CONV TEBC177,FEBC177 DEL " CONV TEBC200,FEBC200 (DS) CONV TEBC201,FEBC201 (SOS) A LC CONV TEBC202,FEBC202 (FS) B LC CONV TEBC203,FEBC203 C LC CONV TEBC204,FEBC204 (BYP) D LC CONV TEBC205,FEBC205 (NL) E LC CONV TEBC206,FEBC206 (LC) F LC CONV TEBC207,FEBC207 (IL) G LC CONV TEBC210,FEBC210 H LC CONV TEBC211,FEBC211 I LC CONV TEBC212,FEBC212 (SM) CONV TEBC213,FEBC213 (CU2) CONV TEBC214,FEBC214 CONV TEBC215,FEBC215 (RLF) CONV TEBC216,FEBC216 (SMM) CONV TEBC217,FEBC217 (CU1) CONV TEBC220,FEBC220 CONV TEBC221,FEBC221 J LC CONV TEBC222,FEBC222 (CC) K LC CONV TEBC223,FEBC223 L LC CONV TEBC224,FEBC224 (PN) M LC CONV TEBC225,FEBC225 (RS) N LC CONV TEBC226,FEBC226 (UC) O LC CONV TEBC227,FEBC227 (GE) P LC CONV TEBC230,FEBC230 Q LC CONV TEBC231,FEBC231 R LC CONV TEBC232,FEBC232 CONV TEBC233,FEBC233 (CU3) CONV TEBC234,FEBC234 (PF) CONV TEBC235,FEBC235 (RES) CONV TEBC236,FEBC236 CONV TEBC237,FEBC237 CONV TEBC240,FEBC240 CONV TEBC241,FEBC241 TILDE CONV TEBC242,FEBC242 S LC CONV TEBC243,FEBC243 T LC CONV TEBC244,FEBC244 U LC CONV TEBC245,FEBC245 V LC CONV TEBC246,FEBC246 W LC CONV TEBC247,FEBC247 X LC CONV TEBC250,FEBC250 Y LC CONV TEBC251,FEBC251 Z LC CONV TEBC252,FEBC252 CONV TEBC253,FEBC253 CONV TEBC254,FEBC254 CONV TEBC255,FEBC255 CONV TEBC256,FEBC256 CONV TEBC257,FEBC257 CONV TEBC260,FEBC260 CONV TEBC261,FEBC261 CONV TEBC262,FEBC262 CONV TEBC263,FEBC263 CONV TEBC264,FEBC264 CONV TEBC265,FEBC265 CONV TEBC266,FEBC266 CONV TEBC267,FEBC267 CONV TEBC270,FEBC270 CONV TEBC271,FEBC271 CONV TEBC272,FEBC272 CONV TEBC273,FEBC273 CONV TEBC274,FEBC274 CONV TEBC275,FEBC275 CONV TEBC276,FEBC276 CONV TEBC277,FEBC277 CONV TEBC300,FEBC300 LEFT BRACKET CONV TEBC301,FEBC301 A CONV TEBC302,FEBC302 B CONV TEBC303,FEBC303 C CONV TEBC304,FEBC304 D CONV TEBC305,FEBC305 E CONV TEBC306,FEBC306 F CONV TEBC307,FEBC307 G CONV TEBC310,FEBC310 H CONV TEBC311,FEBC311 I CONV TEBC312,FEBC312 CONV TEBC313,FEBC313 CONV TEBC314,FEBC314 ZIG-ZAG SHAPE CONV TEBC315,FEBC315 CONV TEBC316,FEBC316 Y SHAPE CONV TEBC317,FEBC317 CONV TEBC320,FEBC320 RIGHT BRACKET CONV TEBC321,FEBC321 J CONV TEBC322,FEBC322 K CONV TEBC323,FEBC323 L CONV TEBC324,FEBC324 M CONV TEBC325,FEBC325 N CONV TEBC326,FEBC326 O CONV TEBC327,FEBC327 P CONV TEBC330,FEBC330 Q CONV TEBC331,FEBC331 R CONV TEBC332,FEBC332 CONV TEBC333,FEBC333 CONV TEBC334,FEBC334 CONV TEBC335,FEBC335 CONV TEBC336,FEBC336 CONV TEBC337,FEBC337 CONV TEBC340,FEBC340 \ CONV TEBC341,FEBC341 CONV TEBC342,FEBC342 S CONV TEBC343,FEBC343 T CONV TEBC344,FEBC344 U CONV TEBC345,FEBC345 V CONV TEBC346,FEBC346 W CONV TEBC347,FEBC347 X CONV TEBC350,FEBC350 Y CONV TEBC351,FEBC351 Z CONV TEBC352,FEBC352 (ZIG-ZAG) CONV TEBC353,FEBC353 CONV TEBC354,FEBC354 (Y SHAPE) CHAIR SHAPE CONV TEBC355,FEBC355 CONV TEBC356,FEBC356 CONV TEBC357,FEBC357 CONV TEBC360,FEBC360 0 CONV TEBC361,FEBC361 1 CONV TEBC362,FEBC362 2 CONV TEBC363,FEBC363 3 CONV TEBC364,FEBC364 4 CONV TEBC365,FEBC365 5 CONV TEBC366,FEBC366 (CHAIR SH.) 6 CONV TEBC367,FEBC367 7 CONV TEBC370,FEBC370 8 CONV TEBC371,FEBC371 9 CONV TEBC372,FEBC372 ((LVM)) VERT LINE (LVM) CONV TEBC373,FEBC373 CONV TEBC374,FEBC374 CONV TEBC375,FEBC375 CONV TEBC376,FEBC376 CONV TEBC377,FEBC377 EO (EO) * CONV ZBCH,ZBCH CONV EORC,EORC CONV EOFC,EOFC CONV EOIC,EOIC * LOC *O QUAL * BASE * TITLE PRESET. PRS SPACE 4,15 ** PRS - PRESET PROGRAM. * * EXIT (A0) = FWA CONVERSION TABLE. * = 0 IF NO CONVERSION NEEDED. * (B2) = CURRENT POSITION IN INPUT WORD. * (B3) = CURRENT POSITION IN OUTPUT WORD. * (B4) = INPUT CHARACTER LENGTH. * (B5) = OUTPUT CHARACTER LENGTH. * * CALLS ARG, BLD, CLP, DXB, FBH, VLC. * * MACROS ABORT, FILINFO, MEMORY, MESSAGE, OPEN, SETFET. PRS SUBR EXTRY/EXIT SA1 ACTR GET ARGUMENT COUNT SB4 X1 R= A4,ARGR SET ADDRESS OF FIRST ARGUMENT SB5 TARG SET ADDRESS OF ARGUMENT TABLE RJ ARG PROCESS ARGUMENTS ZR X1,PRS2 IF NO ARGUMENT ERRORS SX3 PRSA * ERROR IN FCOPY ARGUMENTS.* PRS1 MESSAGE X3,3 ABORT ABORT PRS2 SA1 P CHECK FILE NAMES FOR CONFLICT SA2 N BX6 X1-X2 AX6 18 NZ X6,PRS3 IF NO FILE NAME CONFLICT SX3 PRSB * FILE NAME CONFLICT.* EQ PRS1 ABORT PRS3 MX0 42 SET FILE NAME IN PARAMETER BLOCK SA2 PRSE BX1 X0*X1 SX2 X2 BX6 X1+X2 SA6 A2+ FILINFO PRSE GET INPUT FILE INFORMATION SA1 PRSE+1 LX1 59-24 PL X1,PRS6 IF INPUT FILE IS NOT A TAPE SA2 PRSE+5 CHECK FOR STRANGER TAPE AX2 6 SX2 X2-/COMSMTX/TFS ZR X2,PRS5 IF INPUT FILE IS AN S-FORMAT TAPE SX2 X2+/COMSMTX/TFS-/COMSMTX/TFL NZ X2,PRS6 IF INPUT FILE IS NOT AN L-FORMAT TAPE PRS5 SX7 B1+ SET STRANGER TAPE INPUT FILE FLAG SA7 STPI PRS6 LX1 19 AX1 48 SX3 PRSD * INPUT FILE NOT FOUND.* ZR X1,PRS1 IF FILE DOES NOT EXIST SA1 N SET OUTPUT FILE NAME IN PARAMETER BLOCK MX0 42 SA2 PRSE BX1 X0*X1 SX2 X2 BX6 X1+X2 SA6 A2+ FILINFO PRSE GET OUTPUT FILE INFORMATION SA1 PRSE+1 LX1 59-24 PL X1,PRS9 IF OUTPUT FILE IS NOT A TAPE SA2 PRSE+5 CHECK FOR STRANGER TAPE AX2 6 SX2 X2-/COMSMTX/TFS ZR X2,PRS8 IF OUTPUT FILE IS AN S-FORMAT TAPE SX2 X2+/COMSMTX/TFS-/COMSMTX/TFL NZ X2,PRS9 IF OUTPUT FILE IS NOT AN L-FORMAT TAPE PRS8 SX7 B1+ SET STRANGER TAPE OUTPUT FILE FLAG SA7 STPO PRS9 SA1 CSMR CHECK CHARACTER SET MODE SB7 B1+ PRESET FOR CALL(S) TO *DXB* NG X1,PRS10 IF IN 64 CHARACTER MODE SA2 ADTE GET ALTERNATE TYPE TABLE ENTRIES SA3 AATE BX6 X2 BX7 X3 SA6 ADTP SET ALTERNATE TYPE TABLE ENTRIES SA7 AATP PRS10 SA4 FL CHECK *FL* AND *LB* SA5 LB ZR X4,PRS11 IF NO *FL* SPECIFIED NZ X5,PRS13 IF BOTH *FL* AND *LB* SPECIFIED BX5 X4 CALCULATE *LB* FROM *FL* RJ DXB CONVERT TO DECIMAL SA6 A4 SX5 MXCB MAXIMUM CHARACTERS PER BLOCK IX6 X5/X6 SA6 A5 EQ PRS14 CONTINUE PRS11 ZR X5,PRS12 IF NO *FL* OR *LB* SPECIFIED RJ DXB SET *LB* SA6 A5 SX6 80D DEFAULT VALUE FOR *FL* SA6 A4 EQ PRS14 CONTINUE PRS12 SX6 80D SET DEFAULTS FOR *FL* AND *LB* SX7 48D SA6 A4 SA7 A5 EQ PRS14 CONTINUE PRS13 RJ DXB TRANSLATE FROM DISPLAY SA6 A5 SA5 A4 RJ DXB SA6 FL PRS14 SA1 PL GET INPUT FILE LINE TERMINATOR SA4 STPI GET STRANGER TAPE INPUT FILE FLAG SA3 PC GET INPUT FILE CHARACTER SET RJ CLP CHECK LINE TERMINATOR PARAMETER NZ X3,PRS1 IF ERROR SA1 NL GET OUTPUT FILE LINE TERMINATOR SA4 STPO GET STRANGER TAPE OUTPUT FILE FLAG SA3 NC GET OUTPUT FILE CHARACTER SET RJ CLP CHECK LINE TERMINATOR PARAMETER NZ X3,PRS1 IF ERROR SA1 PC CHECK FILE CHARACTERISTICS SX3 PRSC * UNRECOGNIZED CODE SET PARAMETER.* MX0 42 SA2 TCHT PRS15 ZR X2,PRS1 IF END OF *TCHT* TABLE BX6 X1-X2 BX6 X0*X6 ZR X6,PRS16 IF LEGAL *PC* VALUE SA2 A2+2 EQ PRS15 READ NEXT TABLE ENTRY PRS16 SA2 A2+B1 GET FWA OF INPUT BASE TABLE SB6 X2 AX2 18 SX1 B1 BX1 X2*X1 GET STRANGER TAPE ALLOWED FLAG AX2 30 SB4 X2+ SA2 STPI SX3 PRSF * INCORRECT FILE TYPE FOR SPECIFIED ... * IX2 X1+X2 ZR X2,PRS17 IF INPUT FILE NOT STRANGER TAPE SX2 X2-2 NZ X2,PRS1 IF INCORRECT FILE TYPE FOR CHARACTER SET SA1 FL SA2 LB SB7 B4+ RJ FBH FORM INPUT FILE BLOCK HEADER WORD SA6 IBHW SA6 P+6 SAVE HEADER WORD IN FET+6 MX5 -18 BX5 -X5*X6 SX5 X5-PBUFL+2 NG X5,PRS17 IF LESS THAN ALLOCATED SIZE MEMORY ,PRSG,R GET CURRENT FIELD LENGTH SA1 PRSG AX1 30 IX6 X1+X5 NEW FIELD LENGTH LX6 30 SA6 A1 MEMORY ,PRSG,R SET NEW FIELD LENGTH SETFET P,BUF=(PBUF,X5+PBUFL) SET BUFFER POINTERS SETFET N,BUF=(X5+NBUF,NBUFL) PRS17 SA1 NC SA2 TCHT SX3 PRSC * UNRECOGNIZED CODE SET PARAMETER.* PRS18 ZR X2,PRS1 IF END OF *TCHT* TABLE BX6 X1-X2 BX6 X0*X6 ZR X6,PRS19 IF LEGAL *NC* VALUE SA2 A2+2 EQ PRS18 READ NEXT TABLE ENTRY PRS19 SA2 A2+1 GET FWA OF OUTPUT BASE TABLE SB2 X2 AX2 18 SX1 B1+ BX1 X2*X1 GET STRANGER TAPE ALLOWED FLAG AX2 30 SB5 X2+ SA2 STPO SX3 PRSF * INCORRECT FILE TYPE FOR SPECIFIED ... * IX2 X1+X2 ZR X2,PRS21 IF OUTPUT FILE NOT STRANGER TAPE SX2 X2-2 NZ X2,PRS1 IF INCORRECT FILE TYPE FOR CHARACTER SET SA1 FL SA2 LB SB7 B5+ RJ FBH FORM OUTPUT FILE BLOCK HEADER WORD SA6 OBHW SA6 N+6 SAVE HEADER WORD IN FET+6 MX5 -18 BX5 -X5*X6 SX5 X5-NBUFL+2 NG X5,PRS20 IF LESS THAN ALLOCATED SIZE MEMORY ,PRSG,R GET CURRENT FIELD LENGTH SA1 PRSG AX1 30 IX6 X1+X5 NEW FIELD LENGTH LX6 30 SA6 A1 MEMORY ,PRSG,R SET NEW FIELD LENGTH SA1 N+1 FIRST SETFET N,BUF=(X1,X5+NBUFL) SET BUFFER POINTERS PRS20 SA1 LB PRESET NUMBER OF LINES IN OUTPUT BLOCK SA2 FL PRESET NUMBER OF CHARACTERS IN OUTPUT LINE BX6 X1 BX7 X2 SA6 OLCT SA7 OLCC SA3 N+2 PRESET POINTER TO SPACE FOR HEADER WORD BX6 X3 SA6 IPTR SA1 SPAC SET PROPER BLANK FOR FILLING SHORT LINES SA2 X1+B2 AX2 18 BX7 X2 SA7 A1+ PRS21 SB7 B2+ SA2 STPI SA1 PL OLD FILE LINE TERMINATOR SX6 X1+ NZ X2,PRS22 IF INPUT FILE IS STRANGER TAPE SB2 B4 CHARACTER LENGTH SB3 B6 FWA OF CONVERSION TABLE RJ VLC VERIFY LINE TERMINATOR WITH CODE SET NZ X3,PRS1 IF AN ERROR PRS22 SA6 PL SAVE CONVERTED LINE TERMINATOR SA2 STPO SA1 NL NEW FILE LINE TERMINATOR SX6 X1+ NZ X2,PRS23 IF OUTPUT FILE IS STRANGER TAPE SB2 B5 CHARACTER LENGTH SB3 B7 FWA OF CONVERSION TABLE RJ VLC VERIFY LINE TERMINATOR WITH CODE SET NZ X3,PRS1 IF AN ERROR PRS23 SA6 NL SAVE CONVERTED LINE TERMINATOR OPEN P,READNR,R OPEN INPUT FILE OPEN N,READNR,R OPEN OUTPUT FILE SA1 PL INPUT FILE LINE TERMINATOR SA2 NL OUTPUT FILE LINE TERMINATOR SA3 STPI BX6 X1-X2 NZ X6,PRS24 IF LINE TERMINATORS ARE DIFFERENT NE B4,B5,PRS24 IF CHARACTER LENGTHS ARE DIFFERENT NZ X3,PRS24 IF STRANGER TAPE(S) INVOLVED EQ B6,B7,PRS25 IF JUST COPY, NO CONVERSION PRS24 RJ BLD BUILD CONVERSION TABLE SB2 B0+ ZERO CURRENT POSITION IN INPUT WORD SB3 60D RESET CURRENT POSITION IN OUTPUT WORD EQ PRSX RETURN PRS25 SA0 B0+ SET FOR SIMPLE COPY EQ PRSX RETURN PRSA DATA C* ERROR IN FCOPY ARGUMENTS.* PRSB DATA C* FILE NAME CONFLICT.* PRSC DATA C* UNRECOGNIZED CODE SET PARAMETER.* PRSD DATA C* INPUT FILE NOT FOUND.* PRSF DATA C* INCORRECT FILE TYPE FOR SPECIFIED CHARACTER SET.* PRSE VFD 42/0,6/PRSEL,12/1 *FILINFO* PARAMETER BLOCK BSS FIPBL-1 *FILINFO* PARAMETER BLOCK LENGTH VFD 54/0,6/FMTK PRSEL EQU *-PRSE PRSG BSSZ 1 MEMORY WORD SPACE 4,10 * PRESET COMMON DECKS. *CALL COMCARG *CALL COMCDXB SPACE 4,10 ** TARG - ARGUMENT TABLE. TARG BSS 0 P ARG P,P OLD FILE NAME N ARG N,N NEW FILE NAME PC ARG PC,PC OLD FILE INTERNAL CHARACTERISTIC NC ARG NC,NC NEW FILE INTERNAL CHARACTERISTIC PL ARG PL,PL,400B OLD LINE TERMINATOR NL ARG NL,NL,400B NEW LINE TERMINATOR FL ARG FL,FL FIXED LINE LENGTH (STRANGER TAPE ONLY) LB ARG LB,LB BLOCK LENGTH (STRANGER TAPE ONLY) R ARG -ASV,R REWIND A ARG -ASV,A ABORT ARG SPACE 4,10 ** TCHT - CHARACTER TYPE TABLE. * *T 42/CS, 18/0 *T 12/CCL, 29/0, 1/STF, 18/CBTA * * CS = CHARACTER SET NAME. * CCL = CHARACTER CODE LENGTH. * STF = 1 IF CHARACTER SET ONLY USED WITH STRANGER TAPE. * CBTA = CONVERSION BASE TABLE FWA. TCHT BSS 0 VFD 42/0LDIS,18/0 ADTP VFD 12/6,30/0,18/TD64 VFD 42/0LDIS63,18/0 ADTE VFD 12/6,30/0,18/TD63 VFD 42/0LDIS64,18/0 VFD 12/6,30/0,18/TD64 VFD 42/0LASCII,18/0 AATP VFD 12/6,30/0,18/TA64 VFD 42/0LASCII63,18/0 AATE VFD 12/6,30/0,18/TA63 VFD 42/0LASCII64,18/0 VFD 12/6,30/0,18/TA64 VFD 42/0LASCII8,18/0 VFD 12/12,30/0,18/TAS8 ASCI VFD 42/0LASCII88,18/0 VFD 12/8,30/0,18/TASC VFD 42/0LASCFL,18/0 VFD 12/8,29/0,1/1,18/TASC VFD 42/0LEBCFL,18/0 VFD 12/8,29/0,1/1,18/TEBC VFD 42/0LICS,18/0 VFD 12/12,30/0,18/0 CON 0 SPACE 4,10 ** TLNT - TABLE OF LINE TERMINATORS. * *T 42/TERMINATOR NAME,18/0 *T 1/D, 1/C, 42/0, 16/TERMINATOR VALUE(S) * * D = DOUBLE LENGTH FLAG. * C = CONVERTED TERMINATOR FLAG. TLNT BSS 0 VFD 42/0LZB,18/0 DTRM VFD 1/0,1/1,42/0,16/ZBCH VFD 42/0LCR,18/0 VFD 1/0,1/0,42/0,16/15B VFD 42/0LFF,18/0 VFD 1/0,1/0,42/0,16/14B VFD 42/0LLF,18/0 VFD 1/0,1/0,42/0,16/12B VFD 42/0LUS,18/0 ATRM VFD 1/0,1/0,42/0,16/37B VFD 42/0LRS,18/0 VFD 1/0,1/0,42/0,16/36B VFD 42/0LCRLF,18/0 VFD 1/1,1/0,42/0,8/15B,8/12B VFD 42/0LLFCR,18/0 VFD 1/1,1/0,42/0,8/12B,8/15B CON 0 SPACE 4,10 ** BLD - BUILD TABLE. * * ENTRY (B5) = OUTPUT CHARACTER LENGTH. * (B6) = FWA INPUT CONVERSION BASE TABLE. * (B7) = FWA OUTPUT CONVERSION BASE TABLE. * * EXIT (A0) = FWA CONVERSION TABLE. * * USES X - ALL. * A - 0, 1, 2, 4, 5, 6, 7. * B - 2, 3, 6, 7. BLD SUBR ENTRY/EXIT SB2 TLEN SET BASE TABLE LENGTH SA0 TCVT SET ADDRESS OF CONVERSION TABLE MX0 5 FORM MASKS MX2 -11 MX5 -12 SB3 B0 INITIALIZE TABLE OFFSET BLD1 SA1 B6+B3 GET NEXT TABLE ENTRY NZ B6,BLD2 IF INPUT CHARACTER IS NOT *ICS* SA1 B7+B3 GET NEXT TABLE ENTRY AX1 18 BLD2 LX1 59-17 EXTRACT FLAGS BX6 X0*X1 NZ X6,BLD3 IF EITHER FLAG IS SET ZR B6,BLD3 IF INPUT CHARACTER SET IS *ICS* ZR B7,BLD3 IF OUTPUT CHARACTER SET IS *ICS* LX1 -59+17 BX1 -X2*X1 GET *ICS* CHARACTER SA1 B7+X1 GET CONVERSION FOR CHARACTER LX1 59-35 EXTRACT FLAGS BX6 X0*X1 BLD3 LX1 59-30-59+35 FORM COUNT SX4 B1 PL X1,BLD4 IF DOUBLE LENGTH FLAG NOT SET SX4 2 BLD4 LX1 59-17-59+30 EXTRACT CHARACTER FIELD BX1 -X5*X1 LX4 54 FORM FINAL TABLE WORD LX6 59-32-59+35 BX4 X4+X1 BX6 X4+X6 SA6 A0+B3 SAVE TABLE WORD SB3 B3+B1 INCREMENT TABLE POINTER LE B3,B2,BLD1 IF MORE TABLE ENTRIES TO BUILD * ADD LINE TERMINATOR CONVERSIONS TO TABLE. SA1 PL GET OLD LINE TERMINATOR SA2 NL GET NEW LINE TERMINATOR SX4 1 FORM NEW LINE TERMINATOR LENGTH PL X2,BLD5 IF NEW TERMINATOR IS DOUBLE LENGTH SX4 2 BLD5 MX0 1 EXTRACT CHARACTERS BX6 -X0*X2 LX4 59-5 FORM NEW LINE TERMINATOR WORD BX6 X4+X6 NG X1,BLD6 IF OLD TERMINATOR IS DOUBLE LENGTH SB3 X1 SA6 A0+B3 SAVE LINE TERMINATOR WORD EQ BLDX RETURN BLD6 SA6 BLDA SAVE NEW LINE TERMINATOR WORD SB3 B4-B1 FORM MASK FOR OLD CHARACTERS AX0 B3 LX0 B4 BX3 X0*X1 EXTRACT SECOND CHARACTER OF OLD TERMINATOR AX1 B4 EXTRACT FIRST CHARACTER OF OLD TERMINATOR BX1 X0*X1 SB7 6 SX4 TLEN+1 PRESET OFFSET TO TERMINATOR CONVERSION NE B4,B7,BLD7 IF OLD CHARACTER SET IS NOT 6/12 SX5 X1-74B CHECK FOR 74B ESCAPE CODE SX4 200B SET OFFSET FOR 74B ESCAPE CODE ZR X5,BLD7 IF FIRST CHARACTER IS 74B ESCAPE CODE SX4 300B SET OFFSET FOR 76B ESCAPE CODE BLD7 MX7 1 FORM OFFSET WORD BX7 X7+X4 SB6 X4+ SET OFFSET TO TABLE EXTENSION SA7 BLDB SAVE OFFSET WORD EQ B4,B7,BLD10 IF CHARACTER SET IS 6/12 * BUILD CONVERSION TABLE EXTENSION. SB3 B0 INITIALIZE TABLE POINTER SB7 X1+ (B7) = FIRST CHARACTER OF OLD TERMINATOR SA4 A0+B7 TRANSLATE TERMINATOR CHARACTER MX0 3 FORM MASK FOR CHARACTER COUNT LX0 60-3 BX7 X0*X4 EXTRACT CHARACTER COUNT MX2 -36 SA7 BLDC BX6 -X2*X4 EXTRACT CONVERTED TERMINATOR CHARACTERS BX2 X4 FORM ALTERATION WORD FOR DELETION ENTRY BLD8 SA5 A0+B3 GET NEXT TABLE ENTRY BX7 X0*X5 EXTRACT TRANSLATION CHARACTER COUNT LX7 6 SX4 B5 IX7 X7*X4 COMPUTE TOTAL BITS SB2 X7 LX7 X6,B2 CONVERTED FIRST TERMINATOR CHARACTER SA4 BLDC CHARACTER COUNT BX7 X5+X7 CURRENT CONVERTED CHARACTER IX7 X4+X7 FINAL CONVERSION CHARACTER COUNT LX5 1 PL X5,BLD9 IF NORMAL CONVERSION ENTRY BX7 X2 USE ALTERATION WORD FOR DELETION ENTRY BLD9 SB7 B6+B3 SAVE EXTENSION ENTRY SA7 A0+B7 SB3 B3+B1 INCREMENT TABLE POINTER LT B3,B6,BLD8 IF TABLE EXTENSION NOT COMPLETE SX7 B7+ SET NEW TABLE LENGTH SA7 TCVTL BLD10 SA4 BLDB GET OFFSET-TO-TABLE-EXTENSION ENTRY SA5 BLDA GET NEW TERMINATOR ENTRY BX6 X4 SB2 X1 BX7 X5 SB6 B6+X3 SA6 A0+B2 SAVE OFFSET ENTRY SA7 A0+B6 SAVE NEW TERMINATOR ENTRY EQ BLDX RETURN BLDA CON 0 TEMPORARY STORAGE BLDB CON 0 TEMPORARY STORAGE BLDC CON 0 TEMPORARY STORAGE CLP SPACE 4,15 ** CLP - CHECK LINE TERMINATOR PARAMETER. * * ENTRY (X1) = LINE TERMINATOR PARAMETER VALUE. * (X3) = CHARACTER SET PARAMETER VALUE. * (X4) = STRANGER FORMAT TAPE FLAG. * * EXIT (X3) = 0 IF NO ERROR, OTHERWISE ERROR MESSAGE ADDRESS. * * USES X - 0, 2, 3, 4, 5, 6. * A - 2, 4, 6. * B - 7. * * CALLS DXB. CLP4 SX3 CLPA * UNRECOGNIZED LINE TERMINATOR PARAMETER.* CLP SUBR ENTRY/EXIT MX0 42 SA2 TLNT NZ X1,CLP0.1 IF LINE TERMINATOR WAS INPUT SA4 ASCI CHECK CHARACTER SET SA2 DTRM SET DEFAULT TERMINATOR MX0 42 BX4 X4-X3 BX4 X0*X4 NZ X4,CLP3 IF CHARACTER SET NOT *ASCII88* SA2 ATRM SET DEFAULT TERMINATOR FOR *ASCII88* EQ CLP3 SAVE DEFAULT TERMINATOR CLP0.1 ZR X4,CLP1 IF NOT STRANGER TAPE SX3 CLPB * LINE TERMINATORS NOT USED ... * EQ CLPX RETURN CLP1 ZR X2,CLP2 IF END OF *TLNT* TABLE BX6 X1-X2 BX6 X0*X6 SA2 A2+1 ZR X6,CLP3 IF LEGAL LINE TERMINATOR VALUE SA2 A2+1 EQ CLP1 READ NEXT TABLE ENTRY CLP2 SB7 B0 ASSUME OCTAL BX5 X1*X0 RJ DXB CONVERT FROM DISPLAY CODE NZ X4,CLP4 IF ERROR IN CONVERSION MX2 1 LX2 -1 BX2 X6+X2 SET CONVERTED LINE TERMINATOR FLAG CLP3 BX6 X2 SA6 A1 SAVE LINE TERMINATOR VALUE BX3 X3-X3 SET NO ERROR EQ CLPX RETURN CLPA DATA C* UNRECOGNIZED LINE TERMINATOR PARAMETER.* CLPB DATA C* LINE TERMINATORS NOT USED ON A STRANGER TAPE.* VLC SPACE 4,15 ** VLC - VERIFY LINE TERMINATOR WITH CODE SET. * * ENTRY (B2) = CHARACTER LENGTH. * (B3) = FWA OF CONVERSION TABLE. * (X1) = LINE TERMINATOR. * * EXIT (X3) = 0 IF NO ERROR, OTHERWISE ERROR MESSAGE ADDRESS. * (X6) = CONVERTED LINE TERMINATOR. * * USES X - 1, 2, 3, 4, 5, 6. * A - 1, 2. * B - 2. VLC6 SX3 VLCA *CODE SET LINE TERMINATOR CONFLICT* VLC SUBR ENTRY/EXIT SX3 B0+ PRESET TO NO ERROR BX6 X1 LX6 59-58 PL X6,VLC4 IF TERMINATOR NEEDS TO BE CONVERTED SB2 B2-B1 SX1 X1 REMOVE FLAGS SX2 X1-ZBCH BX6 X1 NZ X2,VLC1 IF TERMINATOR NOT ZERO BYTE SX2 B3-TASC ZR X2,VLC6 IF CHARACTER SET IS *ASCII88* EQ VLCX RETURN VLC1 MX6 1 AX6 B2 SB2 B2+1 LX6 B2 BX5 -X6*X1 NZ X5,VLC2 IF TERMINATOR LARGER THAN CHARACTER LENGTH BX6 X1*X6 EQ VLCX RETURN LINE TERMINATOR VALUE VLC2 SX2 B3-TA64 ZR X2,VLC3 IF 6/12 CHARACTER SET SX2 B3-TA63 NZ X2,VLC3 IF NOT 6/12 CHARACTER SET VLC3 AX4 X1,B2 CHECK FIRST CHARACTER OF TERMINATOR SX2 X4-74B ZR X2,VLCX IF FIRST CHARACTER IS 74B ESCAPE CODE SX2 X4-76B ZR X2,VLCX IF FIRST CHARACTER IS 76B ESCAPE CODE EQ VLC6 ERROR IN TERMINATOR VLC4 MX6 60-8 NG X1,VLC5 IF DOUBLE LENGTH TERMINATOR BX1 -X6*X1 SA1 B3+X1 GET CHARACTER FROM TABLE MX6 60-12 AX1 18 BX6 -X6*X1 EXTRACT CHARACTER MX2 1 LX1 59-12 BX2 X1*X2 BX6 X2+X6 MERGE DOUBLE LENGTH FLAG MX2 60-5 BX1 -X2*X1 EXTRACT SPECIAL FLAGS NZ X1,VLC6 IF SPECIAL FLAGS SET EQ VLCX RETURN VLC5 LX1 -8 BX2 -X6*X1 SA2 B3+X2 GET CHARACTER FROM TABLE MX4 60-12 AX2 18 BX5 -X4*X2 EXTRACT CHARACTER AX2 12 NZ X2,VLC6 IF ANY FLAGS SET LX5 X5,B2 LX1 8 BX2 -X6*X1 SA2 B3+X2 AX2 18 BX6 -X4*X2 EXTRACT CHARACTER AX2 12 NZ X2,VLC6 IF ANY FLAGS SET BX6 X5+X6 MERGE CHARACTERS MX1 1 BX6 X6+X1 SET DOUBLE LENGTH FLAG EQ VLCX RETURN VLCA DATA C* CODE SET LINE TERMINATOR CONFLICT.* SPACE 4,10 END FCOPY