ASMB,R,L,C HED FMGR1 * NAME: FMGR1 * SOURCE: 92067-18188 * RELOC: 92067-16185 * PGMR: G.A.A. * * *************************************************************** * * (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 FMGR1,5 92067-16185 REV.1903 760929 EXT PARS.,.PARS,REA.C,IFLG.,INI2. EXT $BATM,C.BUF,ABT..,AB.. EXT NO.RD,.ENTR,P.SEG,SEG.R,TR..,.IDAD EXT TTY.,ECHF.,ACTV.,BRKF.,MSS.,IFBRK SUP FMGR1 STA .IDAD LDA PARSE SET THE PARSE ROUTINE ADDRESS STA PARS. IN THE MAINS ADDRESS WORD LDA IFLG. IF INITILIZE SZA,RSS SKIP JMP P.SEG ELSE RETURN TO THE MAIN JSB PAR INITILIZE SO CALL DEF *+1 TO READ AND PARSE THE STATEMENT JMP INI2. RETURN TO THE INITILIZE CODE SPC 2 PAR NOP READ AND PARSE ENTRY POINT JSB .ENTR DEF PAR FETCH RETURN ADDRESS PAR0 JSB IFBRK CHECK FOR BREAK PENDING DEF *+1 SZA,RSS IF NO BREAK JMP NOBRK SKIP MESSAGE * JSB MSS. ELSE SEND THE BREAK MESSAGE DEF *+2 DEF ZERO * NOBRK LDA BRKF. IF A BREAK WAS PROCESSED SZA THEN JMP ANBRK GO ANALIZE IT * PAR1 LDA NO.RD IF NO READ FLAG SET SZA THEN JMP PAR2 BY PASS THE READ CALL * JSB REA.C CALL TO READ A COMMAND DEF *+1 CCA SET THE ECHO NOT DONE FLAG STA ECHF. JSB .PARS PARSE THE COMMAND DEF *+1 JMP PAR,I AND RETURN * PAR2 CLB CLEAR THE NO READ CALL FLAG STB NO.RD STB ECHF. DON'T ECHO INTERNAL CALLS SSA,RSS JMP TRLD * CLB,INB SET TO INTERACTIVE INPUT LDA TTY. SAVE THE TTY FLAG STB TTY. SET IT FOR NOW STA TMPM PARS JSB .PARS PARS THE COMMAND DEF *+1 LDA TMPM RESTORE THE TTY FLAG STA TTY. JMP PAR,I RETURN TO THE MAIN TO CALL THE SEGMENT * TRLD LDA TR JMP SEG.R * ANBRK CLA CLEAR THE BREAK FLAG STA BRKF. LDB ACTV. IF NOT ACTIVE SZB,RSS THEN JMP PAR1 JUST IGNOR THE FLAG * LDB XEQT ELSE CHECK IF WE ARE IN BATCH ADB D20 LDB B,I SSB,RSS IF NOT IN BATCH JMP PAR1 IGNOR BREAK * STA NO.RD CLEAR THE NO READ FLAG DLD $BATM GET THE BATCH TIME CLA SET A FOR OPERATOR ABORT SSB,RSS IF TIME OUT LDA N2 RESET FOR TIME OUT MESSAGE STA TMPM SET FOR CALL JSB AB.. SET UP DEF *+3 AN "AB" COMMAND DEF TMPM DEF ABTM JMP PAR0 * XEQT EQU 1717B ABTM ASC 8, ABEND JOB LIMIT N2 DEC -2 TMPM NOP TR DEF * DEF TR.. TR+1 ASAB ASC 1,AB TR+2 D20 DEC 20 TR+3 ZERO NOP TR+4 PARSE DEF PAR TR+5 DEF ABT.. TR+6 A EQU 0 B EQU 1 ORG * END FMGR1