ASMB,R,Q,C * * * NAME: T.PAR * SOURCE: 92076-18030 * RELOC: PART OF 92076-16002 * PGMR: B.J.L. * * * **************************************************************** * * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1979. ALL RIGHTS * * * RESERVED. NO PART OF THIS PROGRAM MAY BE PHOTOCOPIED, * * * REPRODUCED OR TRANSLATED TO ANOTHER PROGRAM LANGUAGE WITHOUT * * * THE PRIOR WRITTEN CONSENT OF HEWLETT-PACKARD COMPANY. * * **************************************************************** * NAM T.PAR,8 92076-1X030 REV.2040 800802 92076-16002 * * * THIS ROUTINE UTILIZIES THE FRONT END OF THE BASIC/L * INTERPERTER WHICH PARSES THE COMMAND STRING AND RETRIEVES * THE LIST DEVICE OR LOGLU (DEFAULT LIST DEVICE). * * THE T.MAD, T.CON, T.ERN AND T.LST ADDRESSES ARE TYPED AS GLOBAL * FROM THE MAIN, BATBL. NAMR WILL BE USED TO PARSE THE * COMMAND NAME AND TO PARSE THE LIST DEVICE WHICH MUST BE NUMERIC * OR AN ERROR WILL BE RETURNED. * * ANY RESULTING ERRORS WILL BE PASSED BACK VIA T.ERN. THE RESULTING * NAME/LU WILL BE IN CMNAM BUFFER THAT T.MAD POINTS TO. * THE RESULTING LIST DEVICE, BE IT LOGLU OR DEVICE, WILL BE PASSED * BACK IN T.CON AND THE ASCII LU WILL BE PASSED BACK IN T.LST. * * EXT GETST,LOGLU,NAMR,T.CON,T.MAD,T.ERN EXT KCVT,IFTTY,T.LST ENT T.PAR * * READDED CALL TO T.LST 800802**** * T.PAR NOP JSB GETST FETCH RUN STRING DEF GOON DEF BUFR1 TO BE USED FOR NAMR (40 WORDS) DEF M80 LENGTH IN -CHARS FOR NAMR DEF ILOG TRANS. LOG GOON JSB LOGLU GET LOG ON DEVICE DEF *+2 DEF HOLD1 DUMMY PLACE HOLDER STA LIST SAVE FOR POSSIBLE LIST DEVICE STA T.LST READDED SAVING LU FOR END MESSAGE *800802** * * LDA ILOG WAS THERE A STRING? SZA,RSS JMP ERR1 NO, ISSUE NEED COMMAND STRING ERROR LDA .1 YES, PARSE THE COMMAND FILE STA ISTRC BY INITIALIZING ISTRC TO 1 TO START JSB NAME PARSE NAME LDA BUFR+3 IS THERE A NAME? SZA,RSS JMP ERR1 NEED COMMAND STRING ERROR CPA .1 IS THIS A LU? RSS CHECK FOR INTERACTIVE JMP GOON2 NO, FILE NAME JSB IFTTY YES, CHECK FOR TERM. DEF CKLU1 DEF BUFR LU IN NAMR'S BUFFER CKLU1 SZA A=0 FOR NON-INTERACTIVE JMP ERR3 ELSE ISSUE ERROR * GOON2 LDA T.MAD STA PNTR GOON3 LDA POINT,I MOVE NAMR FROM BUFR TO CMNAM STA PNTR,I ISZ POINT ISZ PNTR ISZ M3 JMP GOON3 ISZ POINT INCREMENT PASSED TYPE WORD OF NAMR LDA POINT,I PICK UP SECURITY CODE STA PNTR,I ISZ POINT ISZ PNTR LDA POINT,I PICK UP CRN# STA PNTR,I * LDA ILOG IS THERE A LIST DEVICE? INA ADD 1 TO COVER ISTRC ADDITION CHAR.CNT CMA,INA ADA ISTRC SZA JMP GETIT YES, GO GET IT! EXIT1 STA T.ERN LDA LIST NO, USE LOGLU EXIT2 IOR B200 SET FOR POSSIBLE LINE PRINTER STA T.CON SET IN CONTROL WORD FROM MAIN JMP T.PAR,I AND RETURN GETIT JSB NAME GO GET POSSIBLE LIST DEVICE LDA BUFR+3 IS IT NUMERIC? CPA .1 RSS YES JMP ERR2 NO JSB KCVT CONVERT TO ASCII DEF GET1 DEF BUFR LU FROM NAMR PARSE *GET1 STA T.LST A=ASCII CHAR. *800728** GET1 LDA BUFR GET LU JMP EXIT2 AND LEAVE ERR1 LDA .29 NO COMMAND STRING ERROR JMP EXIT1 ERR2 LDA .27 MUST BE NUMERIC LIST DEVICE ERROR JMP EXIT1 ERR3 LDA .28 MUST BE INTERACTIVE DEVICE ERROR JMP EXIT1 * * * PARSING ROUTINE USING NAMR * NAME NOP JSB NAMR DEF DONE DEF BUFR RESULTING BUFFER DEF BUFR1 SOURCE BUFFER FROM GETST DEF ILOG ILOG FROM GETST (+CHARS) DEF ISTRC VARIABLE LOCATION COUNTER DONE JMP NAME,I * A OCT 0 B200 OCT 200 PNT DEF BUFR1 POINT DEF BUFR BUFR BSS 10 BUFR1 BSS 40 ISTRC BSS 1 ILOG NOP LIST NOP PNTR NOP HOLD1 NOP M80 DEC -80 M3 DEC -3 .1 DEC 1 .29 DEC 29 **800115** .27 DEC 27 .28 DEC 28 END T.PAR