FORTR / FORTRAN SUBR FOR SCOPE OUTPUT. ONCE ININITIALIZED / ALL WRITE STATEMENTS (ON TTY) ARE DIVERTED TO / VR-12 SCOPE. / ABS(I)=#AC CYCLES/SCOPE REFRESH. I>0 CLEARS EXISTING / SCOPE BUFFER (AND FROZEN FLAG). I<0 LEAVES FORMER / SCOPE BUFFER INTACT (AND FROZEN FLAG, IF ANY). / J=0 DIVERTS OUTPUT BACK TO TTY. ELSE, ABS(J) / =MAX. NO DISPLAY LINES SHOWN. J>0 KEEPS ONLY MOST / RECENT J LINES ON SCOPE. J<0 FREEZES SCOPE WHEN -J / LINES ARE DISPLAYED; RINGS BELL WHEN THIS HAPPENS, / AND ALL SUBSEQUENT OUTPUT IS LOST UNTIL ANY TTY KEY / IS STRUCK, AT WHICH POINT SCOPE DISPLAY STARTS ANEW. / / SUBROUTINE SCOPE(I,J) ENTRY SCOPE SCOPE, BLOCK 2 IOF /INTERRUPT OFF DURING SCOPE DUMMY \I TAD I SCOPE DCA \I INC SCOPE# TAD I SCOPE DCA \I# INC SCOPE# DUMMY \J TAD I SCOPE DCA \J INC SCOPE# TAD I SCOPE DCA \J# INC SCOPE# TAD (5402 DCA 1 /PUT 5402 IN 0001 TAD (6025 DCA 2 /PUT 6025 IN 0002 / I1=I TAD I \I DCA \I1 / J1=J TAD I \J DCA \J1 AND I \I1 /DUMMY TO REMOVE 6201 05 6201 /INDIRECT TO FIELD 0 TAD \J1 DCA I DISPON /0:TTY,ELSE SCOPE TAD \J1 SNA JMP TTYON /J=0:SCOPE OFF,TTY BACK ON SPA CIA /ABS(J) CMA DCA I MLINES /FOR LMODE LINE INDEXING TAD \J1 SPA CLA CMA /FULLSN=-1:FREEZE WHEN FULL DCA I FULLSN /FULLSN=0:NO FREEZE WHEN FULL TAD \I1 SNA IAC /I=0 TREATED AS I=1 SMA CIA DCA I RFRESH /-CYCLES/REFRESH CMA DCA I CYCLES /-1 TO CYCLE COUNTER TAD \I1 SPA CLA JMP NOCLR /I<0: LEAVE SCOPE BUFFER INTACT TAD I ADBUFR /I>0: CLEAR BUFFER, FROZEN FLAG DCA I BUFPTR /RESET BUFFER PTR DCA I FROZEN /CLEAR FROZEN FLAG TAD (2000 TAD I ADBUFR /PMODE OF LMODE BUFFER ADDR DCA TEMP DCA I TEMP /0=BUFFER END-MARKER TAD I MLINES DCA I LCOUNT /INITIALIZE LINE COUNTER NOCLR, TAD (60 6134 /CLEN(60): TRIGGER 1=INTERRUPT ION /INTERRUPT FOR SCOPE REFRESH / RETURN RETRN SCOPE TTYON, 6134 /CLEN(0):TRIGGER 1 OFF / RETURN RETRN SCOPE RFRESH,6024 LCOUNT,6005 DISPON,6004 MLINES,6022 FULLSN,6006 ADBUFR,6007 BUFPTR,6010 CYCLES,6023 FROZEN,6003 TEMP,0 ONE,5402 /INTERRUPT INSTR=JMP I 2 TWO,6025 /ADDR. DISP=6025 / END CALL 0,EXIT \I, BLOCK 2 \J, BLOCK 2 [0, BLOCK 2 END LAP \I1, BLOCK 1 \J1, BLOCK 1 DUMMY [0 CPAGE 6 EAP CALL 0,OPEN PAUSE