X-Git-Url: http://git.sky-visions.com/cgi-bin/gitweb.cgi/retro-software/dec/tops10/v4.5.git/blobdiff_plain/d693caac75dd25e668e43e85c29205bfc8dea06e..HEAD:/src/pltser.mac diff --git a/src/pltser.mac b/src/pltser.mac index f7b68b1..ba07460 100644 --- a/src/pltser.mac +++ b/src/pltser.mac @@ -24,9 +24,10 @@ EXTERNAL OUT,SETACT,PLTCHN,PLTCHL,IOSET,ADVBFE,ADRERR,CPOPJ1 EXTERNAL SETIOD,STOIOS,CLRACT,ILLINP,PLTSAV,IADRCK INTERN PLTDDB,PLTINT,PLTDSP - ;DISPATCH TABLE + +;DISPATCH TABLE - JRST PLTINT ;INITIALIZE + JRST PLTINI ;INITIALIZE JRST PLTHNG ;HUNG DEVICE ERROR PLTDSP: JRST PLTREL ;RELEASE JRST PLTCLS ;CLOSE @@ -43,7 +44,7 @@ PLTREL: CONO PLT,0 ;DEASSIGN PI CHANNEL, CLEAR DONE HLLZS PLTINT ;REMOVE PLOTTER FROM DEVICE CHAIN POPJ PDP, - ;HERE BEGINS THE "OUTPUT" UUO +;HERE BEGINS THE "OUTPUT" UUO PLTOUT: PUSHJ PDP,PLTSET ;SETUP BYTE POINTER AND COUNTER JRST ADRERR ;ADDRESS ERR RETURN FROM PLTSET @@ -56,7 +57,7 @@ PLTOUT: PUSHJ PDP,PLTSET ;SETUP BYTE POINTER AND COUNTER JRST .+3 ;NO MOVEI TAC,40 ;YES, START PLOTTER WITH PEN UP TLZ IOS,PLTUP ;INIT "CLOSE" BIT - MOVE IOS,PLTIOS + MOVEM IOS,PLTIOS DATAO PLT,TAC ;START PLOTTER BY SENDING 0 OR 40 POPJ PDP, ;FROM HERE THROUGH PLTOFF IS INTERRUPT SERVICE @@ -74,7 +75,7 @@ PLTINT: CONSO PLT,10 ;PLOTTER DONE FLAG SET? PLT1: JSR PLTSAV ;SAVE AC'S. SET UP PUSH DOWN POINTER MOVEI DEVDAT,PLTDDB PUSHJ PDP,IOSET ;SETS UP PROG AND IOS - PUSHJ PDP,ADVBFE ;ADVANCE AND LOOK AT NEXT BUFFERE + PUSHJ PDP,ADVBFE ;ADVANCE AND LOOK AT NEXT BUFFER JRST PLTOFF ;NO MORE DATA AVAILABLE PUSHJ PDP,PLTSET ;SETUP BYTE POINTER AND COUNTER JRST PLTOFF ;ADDRESS ERROR RET FROM PLTSET @@ -91,7 +92,8 @@ PLTOFF: CONO PLT,0 ;SHUT DOWN PLOTTER TLZE IOS,PLTUP ;HAS THE "CLOSE" BEEN DONE? DATAO PLT,[40] ;YES, LIFT PEN JRST PLT2 - ;THIS SUBROUTINE CALCULATES A BYTE POINTER AND A BYTE COUNTER FOR + +;THIS SUBROUTINE CALCULATES A BYTE POINTER AND A BYTE COUNTER FOR ;THE BUFFER TO BE OUPUT, THE LAST WORD OF BUFFER IS ADR CHECKED TO BE IN USER AREA ; PUSHJ PDP,PLTSET ; RETURN 1 ;ADDRESS ERROR RETURN @@ -101,7 +103,7 @@ PLTSET: MOVEI TAC,@PLTADR ;GET ADDRESS OF CURRENT BUFFER ADD TAC,[POINT 6,1,35] ;CONVERT TO 6 BIT BYTE POINTER WITH ;ADDRESS OF BUFFER WORD COUNT TRNN IOS,16 ;IS THIS A TEST DATA MODE? - TLO TAC,[POINT 7,0,35] ;YES, CONVERT TO 7 BIT BYTE POINTER + TLO TAC,(POINT 7,0,35) ;YES, CONVERT TO 7 BIT BYTE POINTER MOVEM TAC,PLTPTR ;SAVE BYTE POINTER HRRZ TAC,@TAC ;GET BUFFER WORD COUNT MOVEM TAC,PLTCTR ;SAVE AS POSITIVE WORD COUNT