Trailing-Edge
-
PDP-10 Archives
-
bb-bt99e-bb
-
tx1kon.c08
There is 1 other file named tx1kon.c08 in the archive. Click here to see a list.
REP 39/9 ;08C1
MOVEM T2,CP.STS(T4)
WIT
HLLM T2,CP.STS(T4)
REP 7/12 ;08C2
SKIPL T2,CP.STS(T4) ; OR NO EXTENDED STATES
JRST TP1RD2 ;CAN'T READ DENSITY
WIT
PUSHJ P,CHKXSP ;OR NO EXTENDED STATUS
JRST TP1RD2 ;CAN'T READ DENSITY
REP 37/12 ;08C3
RDOK2: SKIPGE T2,CP.RBC(T4) ;GET BYTE COUNT
MOVE T2,XS.RBC(T2) ;FROM RIGHT AREA
WIT
RDOK2: PUSHJ P,CHKRBC ;GET BYTE COUNT
MOVE T2,XS.RBC(T2) ;FROM RIGHT AREA
REP 13/14 ;08C4
T1WTOK: ;THIS SHOULDN'T BE NECESSARY, BUT JUST IN CASE
SKIPGE T2,CP.RBC(T4) ;GET BYTE COUNT FROM RIGHT AREA
MOVE T2,XS.RBC(T2) ;GET COUNT FROM THERE
WIT
T1WTOK: PUSHJ P,CHKRBC ;GET BYTE COUNT FROM THE RIGHT AREA
MOVE T2,XS.RBC(T2) ;GET COUNT FROM THERE
REP 36/15 ;08C5
HRRZ T2,TUBFEP##(U) ;NO, SET IT UP
ADDI T2,(U) ;("FALSE" INTERRUPT FROM AN ERROR)
TLO T2,(-<CPSNSB>B<CPSBCP>)
MOVEM T2,CP.STS(T4)
WIT
HRLI T2,(-<CPSNSB>B<CPSBCP>)
HLLM T2,CP.STS(T4)
DEL 28/26 ;08C6
HRRM T2,CP.STS(T4) ;YES, UNMAP THE PHYSICAL ADDRESS
REP 45/26 ;08C7
ITUCOK: SKIPL T2,CP.STS(T4) ;GET STATUS
WIT
ITUCOK: PUSHJ P,CHKXSP ;GET STATUS
REP 12/30 ;08C8
MOVE T3,CP.STS(T4) ;PNTR TO STATUS AREA
WIT
HRRZ T3,TUBFEP##(U) ;PNTR TO EXTENDED
ADDI T3,(U) ;STATUS AREA
HRL T3,CP.STS(T4) ;..
REP 36/30 ;08C9
RDIBUS: HRRZ T2,TUBFEP##(U) ;GET XS POINTER
ADDI T2,(U) ; ...
MOVEM T2,CP.STS(T4) ;STORE IN CASE NONE PRESENT
MOVE T3,CP.STS(T4) ;POINTER TO XS AREA
WIT
RDIBUS: PUSHJ P,SETXSP ;GET XS POINTER
MOVE T3,T2
REP 25/32 ;08C10
SKIPL T3,CP.STS(T4) ;ARE SENSE BYTES AVAILABLE?
JRST FATAL ;NO - NO DISTINCTION.
WIT
PUSHJ P,CHKXSP ;ARE SENSE BYTES AVAILABLE?
JRST FATAL ;NO - NO DISTINCTION.
MOVE T3,T2 ;PUT IN T3
REP 5/33 ;08C11
SKIPL T2,CP.STS(T4) ;GET XS AREA
JRST ERREQC ;NONE - CALL IT NON-RECOVERABLE
WIT
PUSHJ P,CHKXSP ;GET XS AREA
JRST ERREQC ;NONE - CALL IT NON-RECOVERABLE
INS 43/40 ;08C12
;HERE TO CHECK POINTER TO EXTENDED STATUS AREA OR BYTE COUNT.
;ENTER WITH T4 POINTING TO ICP. EXIT WITH T2=POINTER TO EXTENDED
;STATUS AREA IF IT EXISTS, OTHERWISE WITH BYTE COUNT
CHKRBC: SKIPA T2,[SKIPGE T2,CP.RBC(T4)] ;CHECKING ON CP.RBC POSITIVE
CHKXSP: MOVE T2,[SKIPL T2,CP.STS(T4)] ;CHECKING ON CP.STS NEGATIVE
XCT T2 ;DO THE RIGHT CHECK
SOS (P) ;PROPER NON-SKIP RETURN
JUMPGE T2,CPOPJ1## ;GIVE IT IF NO MORE TO GET
HRR T2,TUBFEP##(U) ;ELSE GET VIRTUAL POINTER
ADDI T2,(U) ;TO XS AREA
JRST CPOPJ1## ;DONE
SUM 230668