1
0
mirror of https://github.com/PDP-10/its.git synced 2026-01-28 12:59:20 +00:00
Files
PDP-10.its/src/sysen2/sty.25
Eric Swenson dba4fb52c6 Added STY.
2016-12-10 18:43:00 +01:00

92 lines
1.2 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
TITLE PSEUDO-TTY HACK
A=1
B=2
C=3
D=4
P=17
TYI==1
TYO==2
PYI==3
PYO==4
GO: MOVEI P,PDL-1
.SUSET [.SMSK2,,[1_TYI+1_PYI+1_TYO]]
.OPEN TYI,[SIXBIT / $TTY/]
.LOSE %LSFIL
.OPEN TYO,[SIXBIT / %TTY/]
.LOSE %LSFIL
.OPEN PYI,[SIXBIT / STY/]
.LOSE %LSFIL
.OPEN PYO,[SIXBIT / %STY/]
.LOSE %LSFIL
.IOT PYO,[^Z]
JFCL
.HANG ;WAIT, AND WAIT, AND WAIT...
ZZ==.
LOC 42
JSR TSINT
LOC ZZ
TSINT: 0
0
MOVE B,TSINT
TRNE B,1_TYO
PUSHJ P,MORINT
TRNE B,1_TYI
PUSHJ P,INTYI
TRNE B,1_PYI
PUSHJ P,INPYI
.DISMISS TSINT+1
INPYI: PUSH P,TSINT+1
.SUSET [.SDF2,,[1_PYI]]
.SUSET [.SPICLR,,[-1]]
LP: .IOT PYI,C
JUMPL C,OUT ;THAT WASN'T REALLY A CHARACTER
.IOT TYO,C
JRST LP
CPOPJ: POPJ P,
INTYI: PUSH P,C
MOVEI C,TYI
.ITYIC C,
JRST POPCJ ;NOT REALLY A CHARACTER THERE
.IOT TYI,C
.IOT PYO,C
JRST POPCJ
OUT: .SUSET [.SPICLR,,[0]]
.SUSET [.SDF2,,[0]]
POP P,TSINT+1
POPJ P,
MORINT: PUSH P,C
MOVEI C,[ASCIZ /--MORE--/]
PUSHJ P,TYPSTR
.IOT TYI,C
PUSH P,C
MOVEI C,[ASCIZ /
/]
PUSHJ P,TYPSTR
POP P,C
CAIE C,40
CAIN C,177
CAIA
.IOT PYO,C
POPCJ: POP P,C
POPJ P,
TYPSTR: HRLI C,440700
TYPST1: ILDB D,C
JUMPE D,CPOPJ
.IOT TYO,D
JRST TYPST1
PDL: BLOCK 50
END GO