Trailing-Edge
-
PDP-10 Archives
-
AP-4178E-RM
-
swskit-sources/lpfedv.mac
There are 49 other files named lpfedv.mac in the archive. Click here to see a list.
;<3A.MONITOR>LPFEDV.MAC.1, 24-Mar-78 14:36:07, EDIT BY MILLER
;USE MSTRDT FOR ALL DTE NUMBERS
;<3.SM10-RELEASE-3>LPFEDV.MAC.13, 22-Feb-78 18:44:34, EDIT BY MILLER
;ADD RESCD SO MOST OF CODE IS RESIDENT
;<3.SM10-RELEASE-3>LPFEDV.MAC.12, 12-Feb-78 23:30:56, Edit by MCLEAN
;<1MCLEAN>LPFEDV.MAC.11, 8-Feb-78 22:48:37, Edit by MCLEAN
;<1MCLEAN>LPFEDV.MAC.10, 8-Feb-78 16:09:36, Edit by MCLEAN
;<1MCLEAN>LPFEDV.MAC.7, 7-Feb-78 15:25:38, Edit by MCLEAN
;ADD ANOTHER DEVICE DEPENDENT DISPATCH
;<3.SM10-RELEASE-3>LPFEDV.MAC.3, 8-Feb-78 15:46:33, Edit by MCLEAN
;<3.SM10-RELEASE-3>LPFEDV.MAC.2, 8-Feb-78 15:45:32, Edit by MCLEAN
;<3.SM10-RELEASE-3>LPFEDV.MAC.1, 8-Feb-78 15:41:10, Edit by MCLEAN
;<3-MONITOR>LPFEDV.MAC.6, 7-Nov-77 13:03:40, EDIT BY KIRSCHEN
;MORE COPYRIGHT UPDATING...
;<3-MONITOR>LPFEDV.MAC.5, 12-Oct-77 13:55:51, EDIT BY KIRSCHEN
;UPDATE COPYRIGHT FOR RELEASE 3
;<3-MONITOR>LPFEDV.MAC.4, 4-May-77 22:49:07, Edit by MCLEAN
;ADD PRINTX AND TWO NEW VECTOR ENTRIES
;<3-MONITOR>LPDRFE.MAC.3, 12-Mar-77 20:24:04, Edit by MCLEAN
;<1MCLEAN>LPDRFE.MAC.2, 12-Mar-77 13:23:01, Edit by MCLEAN
;THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY ONLY BE USED
; OR COPIED IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE.
;
;COPYRIGHT (C) 1976, 1977, 1978 BY DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS.
; FRONT-END DEVICE DEPENDENT CODE FOR THE LINE PRINTER
; (LP20 - DTE20 SERVICE) SPECIFIC CODE.
; LINE PRINTER DEVICE DISPATCH TABLE
FELPVT: IFIW!FESFLO ;SEND FLUSH
IFIW!FESLOP ;PAGE COUNTER
IFIW!FESACK ;ACK
IFIW!FESDTA ;SEND DATA
IFIW!FESEOF ;EOF
IFIW!FESNDS ;STRING DATA
IFIW!FETGLP ;SEND STATUS
IFIW!R ;RESTART
IFIW!R ;INITALIZE
IFIW!R ;INTERRUPT CHECK
IFN <.-FELPMX>-FELPVT,<PRINTX %%INVALID DEVICE DEPENDENT TABLE SIZE>
; Line printer dispatch table
;FIRST THE PROTOCOL VECTOR
RESCD
LPTDTV::0 ; NO STRING DATA
LPTDON ; ACK
LPTTLS ; STATUS
LPTSLA ; SET LINE ALLOCATION
LPTSER ; SYSERR ENTRY
LPTRLD ; -11 RELOAD
SWAPCD
; ROUTINE TO SEND A FLUSH TO THE -11
FESFLO: HRRZ A,MSTRDT ;GET MASTER DTE NUMBER
MOVE B,[.DFFDO,,.FELPT] ;FUNCTION IS FLUSH OUTPUT, DEVICE IS LPT
SETZM C ;LOCAL DATUM IS LINE NUMBER
MOVEI D,(U) ;GET UNIT NUMBER
CALL DTEQ ;ASK -11 TO FLUSH LPT OUTPUT
JFCL ;SHOULD NOT FAIL
RET ;RETURN
RESCD
FESLOP: HRRZ A,MSTRDT ;GET MASTER DTE NUMBER
MOVE B,[.DFSDO,,.FELPT] ;FUNCTION IS SPECIAL OPERATION, DEVICE IS LPT
MOVSI C,(U) ;GET UNIT NUMBER
HRRI C,4 ;FOUR BYTES OF INFORMATION
MOVSI D,(POINT 8,) ;GET SIZE AND POSITION PART OF POINTER
HRRI D,PGDATA(U) ;GET ADDRESS FIELD OF POINTER TO DATA PACKET
CALLRET DTEQ ;SEND PAGE COUNTER STUFF TO -11, AND RETURN
; ROUTINE TO SEND AN ACK TO THE FRONT-END
FESACK: HRRZ A,MSTRDT ;GET DTE NUMBER OF MASTER DTE
MOVE B,[.DFLBE,,.FELPT] ;ACK FUNCTION, TO LINE PRINTER
SETZM C ;CLEAR COUNT
MOVEI D,(U) ;UNIT NUMBER
CALL DTEQ ;GO SEND ACK TO FRONT-END
JFCL ;SHOULD NOT HAPPEN
RET ;RETURN
FESDTA: HRRZ A,MSTRDT ;GET MASTER DTE NUMBER
HRLI A,LODDON ;GET POSTING ADDRESS
HRRI B,.FELPT ;GET DEVICE CODE (LPT)
MOVSI C,(U) ;GET UNIT NUMBER
HRR C,D ;GET COUNT FROM SIN
HRLI D,(POINT 8,) ;GET SIZE, POSITION PART OF POINTER
HRR D,LPTRLP(U) ;GET ADDRESS PART OF POINTER
OPSTR <SKIPN>,ALTP,(