;<134-TENEX>FILTTY.MAC;15 28-APR-75 11:38:44 EDIT BY CLEMENTS ;<134-TENEX>FILTTY.MAC;14 24-APR-75 14:19:32 EDIT BY CLEMENTS ;FILTTY.MAC;13 9-NOV-73 19:57:16 EDIT BY CLEMENTS ; NTTYS TO NVTLO ;FILTTY.MAC;12 13-JUN-73 21:37:18 EDIT BY CLEMENTS ;FILTTY.MAC;11 19-OCT-72 19:57:41 EDIT BY TOMLINSON ;FILTTY.MAC;10 25-AUG-72 17:49:32 EDIT BY TOMLINSON ;FILTTY.MAC;9 29-JUN-72 10:11:50 EDIT BY TOMLINSON SEARCH STENEX,PROLOG TITLE FILTTY USE SWAPPC EXTERN PBYTPO,PBYTSZ EXTERN SAVAC,RESAC,CHKDEV,CAPENB EXTERN CPOPJ,SKPRET EXTERN CTRLTT ; Controlling tty EXTERN TCI,TCIB ; Character type in routine EXTERN TCO,TCOB ; Character type out routine EXTERN TTFORK ; Lh ==> job to which tty is assigned EXTERN JOBNO ; Current job number IFDEF NETN, ; tty dispatch table TTYDTB::TTYSET REPEAT OPEND-1, TTYOPN TTYIN TTYOUT TTYCLZ REPEAT SDSTD-CLOSD, TTYSET: TEST(O,NVERF,NNAMF) POPJ P, TTYIN: CAIL JFN,400000 ; Real jfn? JRST TTYINX ; No LDB B,[POINT 4,STS,35] JUMPE B,[LDB B,PBYTSZ CAIE B,8 JRST .+2 JRST .+3] CAIE B,10 TTYINX: SKIPA B,[TCI] MOVEI B,TCIB PUSHJ P,SAVAC HLRZ 2,DEV PUSHJ P,@B-NSAC+1(P) MOVEM 1,A-NSAC+1(P) PUSHJ P,RESAC CAIL JFN,400000 POPJ P, HLLZ B,FILBYT(JFN) TLZ B,770000 HRRI B,A LDB A,B POPJ P, TTYOUT: CAIL JFN,400000 JRST TTYOUX HLLZ B,FILBYT(JFN) TLZ B,770000 HRRI B,A LDB A,B LDB B,[POINT 4,STS,35] JUMPE B,[LDB B,PBYTSZ CAIE B,8 JRST .+2 JRST .+3] CAIE B,10 TTYOUX: SKIPA B,[TCO] MOVEI B,TCOB PUSHJ P,SAVAC HLRZ B,DEV PUSHJ P,@B-NSAC+1(P) PUSHJ P,RESAC POPJ P, TTYOPN: HLRZ B,DEV ; Get tty line number HLRZ C,TTFORK(B) ; Get job to which tty is assigned MOVE A,CAPENB TRNN A,WHEEL!OPR CAMN C,JOBNO ; Is assigned to this job? JRST TTYOP1 MOVEI A,OPNX7 CAIE C,777777 ; Or not assigned? POPJ P, ; No. fail MOVE C,JOBNO HRLM C,TTFORK(B) TTYOP1: TEST(ZE,RNDF) ;TURN APPENDING INTO WRITING TEST(O,WRTF) ; .. TEST(O,SIZF) JRST SKPRET TTYCLZ: HLRZ B,DEV HLRZ A,TTFORK(B) CAME B,CTRLTT CAME A,JOBNO JRST SKPRET MOVEI A,400000(B) PUSHJ P,CHKDEV POPJ P, TLNE C,(1B6) JRST SKPRET HRROS TTFORK(A) IFDEF NETN,< HRRZ B,A CAIL B,NVTLO PUSHJ P,NVTDET> JRST SKPRET END