mirror of
https://github.com/PDP-10/its.git
synced 2026-04-25 20:01:40 +00:00
Fix IOPUSH UUO and .CALL scribbling random memory location.
At some point, AIOPUSH was changed not to load B from (R). On top of that, the call to AIOPP1 clobbers B. This makes TYIIOP unhappy, because it expects B to retain the information from AIOPUSH. Since R is unchanged, we can just restore B in AIOPP1.
This commit is contained in:
committed by
Eric Swenson
parent
86dfd49727
commit
f185e2b74e
@@ -3337,6 +3337,7 @@ STATY2: CAIL B,TIBS-10.
|
|||||||
TYOIOP: TDZA A,A ;OUUTPUT CHNL.
|
TYOIOP: TDZA A,A ;OUUTPUT CHNL.
|
||||||
TYIIOP: MOVEI A,TYIMSK-TYOMSK ;INPUT CHNL, SET TYIMSK INSTEAD TYOMSK.
|
TYIIOP: MOVEI A,TYIMSK-TYOMSK ;INPUT CHNL, SET TYIMSK INSTEAD TYOMSK.
|
||||||
CONO PI,CLKOFF ;TO PREVENT TELETYPE (IF CONSOLE) FROM MOVING AROUND
|
CONO PI,CLKOFF ;TO PREVENT TELETYPE (IF CONSOLE) FROM MOVING AROUND
|
||||||
|
MOVE B,(R) ;GET I/O CHANNEL WORD
|
||||||
JUMPGE B,TYIOP1 ;JUMP IF OPEN AS DEVICE
|
JUMPGE B,TYIOP1 ;JUMP IF OPEN AS DEVICE
|
||||||
SKIPGE TTYTBL(U) ;IF PROCEDURE DOESN'T HAVE CONSOLE,
|
SKIPGE TTYTBL(U) ;IF PROCEDURE DOESN'T HAVE CONSOLE,
|
||||||
JRST CLKONJ ;THEN THAT'S ALL
|
JRST CLKONJ ;THEN THAT'S ALL
|
||||||
Reference in New Issue
Block a user