Google
 

Trailing-Edge - PDP-10 Archives - bb-penea-bm - galsrc/lptmac.mac
There are 22 other files named lptmac.mac in the archive. Click here to see a list.
	UNIVER	LPTMAC - Parameter File for LPTSPL
	SUBTTL	Preliminaries

;	COPYRIGHT (c) DIGITAL EQUIPMENT CORPORATION 1988.
;	ALL RIGHTS RESERVED.
;
;	THIS SOFTWARE IS FURNISHED UNDER A  LICENSE AND MAY BE USED AND  COPIED
;	ONLY IN  ACCORDANCE  WITH  THE  TERMS OF  SUCH  LICENSE  AND  WITH  THE
;	INCLUSION OF THE ABOVE  COPYRIGHT NOTICE.  THIS  SOFTWARE OR ANY  OTHER
;	COPIES THEREOF MAY NOT BE PROVIDED  OR OTHERWISE MADE AVAILABLE TO  ANY
;	OTHER PERSON.  NO  TITLE TO  AND OWNERSHIP  OF THE  SOFTWARE IS  HEREBY
;	TRANSFERRED.
;
;	THE INFORMATION IN THIS  SOFTWARE IS SUBJECT  TO CHANGE WITHOUT  NOTICE
;	AND SHOULD  NOT  BE CONSTRUED  AS  A COMMITMENT  BY  DIGITAL  EQUIPMENT
;	CORPORATION.
;
;	DIGITAL ASSUMES NO  RESPONSIBILITY FOR  THE USE OR  RELIABILITY OF  ITS
;	SOFTWARE ON EQUIPMENT THAT IS NOT SUPPLIED BY DIGITAL.
	SEARCH	GALCNF			;GET CONFIGURATION DATA
	SEARCH	GLXMAC			;SEARCH GALAXY PARAMETERS
	SEARCH	MONSYM,MACSYM		;SEARCH THE MONITOR SYMBOLS
	SEARCH	QSRMAC			;SEARCH QUASAR PARAMETERS
	SEARCH	ORNMAC			;SEARCH ORION/OPR PARAMETERS
IFN FTDN60,<
	SEARCH D60UNV			;GET IBMCOM UNIVERSAL

>
	IF1,<PRINTX BUILDING A GALAXY-20 LPTMAC>

	SALL				;SUPPRESS MACRO EXPANSIONS

	LMCMAN==:13			;MAINTENANCE EDIT NUMBER
	LMCDEV==:12			;Development edit number
	VERSIN (LMC)			;GENERATE EDIT NUMBER

	LMCWHO==0			;WHO LAST PATCHED
	LMCVER==6			;MAJOR VERSION NUMBER
	LMCMIN==0			;MINOR VERSION NUMBER

	ND	FTACNT,-1		;TURN ON ACCOUNTING

IFN FTACNT,<SEARCH ACTSYM		;SEARCH THE ACCOUNTING UNIVERSAL
>

	DEFINE	FACT,<IFN FTFACT>
	Subttl	Table of Contents

;		     Table of Contents for LPTMAC
;
;				  Section		      Page
;
;
;    1. Revision History . . . . . . . . . . . . . . . . . . .   4
;    2. AC and System Parameter Definitions  . . . . . . . . .   5
;    3. Parameters . . . . . . . . . . . . . . . . . . . . . .   6
;    4. Flag Definitions . . . . . . . . . . . . . . . . . . .   7
;    5. Macros . . . . . . . . . . . . . . . . . . . . . . . .   8
;    6. Job Parameter Area . . . . . . . . . . . . . . . . . .  10
;    7. Scheduler Parameters . . . . . . . . . . . . . . . . .  16
;    8. Listener Data Base Definitions . . . . . . . . . . . .  17
;    9. End of LPTMAC  . . . . . . . . . . . . . . . . . . . .  20
	SUBTTL	Revision History

COMMENT \

*****  Release 6.0 -- begin development edits  *****

   1	6.1003		5-Oct-87
	Create LPTMAC as the universal file for LPTSPL

   2	6.1036		23-Oct-87
	Add some flags for S that tell us what spoooler we are today

   3	6.1050		3-Nov-87
	Define LPTTYP as the LPT type mask in the AC S status register.
	Define J$LPGS which contains the address of the first of the
        listener's data pages.

   4	6.1055		3-Nov-87
	Remove the DECnet message checksumming option word CHSUMO.

   5	6.1061		6-Nov-87
	Define sysmols related to TTY and LAT terminal printer support.

   6	6.1074		13-Nov-87
	MSBSIZ is too small for DQS LPTSPL status messages.

   7	6.1090		20-Nov-87
	Shorten DECnet timeout to 15 minutes.

 10	6.1215		4-Mar-88
	Define blocks J$SDBW and .LSDBW for private GALAXY SRV: and DCN:
device name.

11	6.1220		6-Mar-88
	Add definitions J$FADR, J$FILO and J$OADR in support of inaccessible
files for cluster printing.

12	6.1225		8-Mar-88
	Update copyright notice.

13	6.1278		9-May-89
	Add support to print in portrait and landscape mode on a LN03.
In order for us to support landscape and portrait, they must be defined as:
@SET REMOTE-PRINTER CHARACTERISTIC LANDSCAPE 0 and @SET REMOTE-PRINTER
CHARACTERISTIC PORTRAIT 52.

\	;End of revision history
	SUBTTL	AC and System Parameter Definitions

;ACCUMULATOR DEFINITIONS

	M==12		;IPCF MESSAGE ADDRESS
	S==13		;STATUS FLAGS
	E==14		;POINTS TO CURRENT FILE
	J==15		;JOB CONTEXT POINTER
	LIS==15		;LISTENER DATA BASE ADDRESS
	C==16		;HOLDS A CHARACTER - ALMOST NEVER PRESERVED

;[2] Operating System dependent parameters

	SYSPRM	.MOEOF,16,.MOEOF
	SYSPRM	ERRVFU,DF.LVE,MO%LVF

	SYSPRM	BUFNUM,4,1		;NUMBER OF BUFFERS
	SYSPRM	BUFSIZ,<1000/BUFNUM>,<1000/BUFNUM>
					;SIZE OF EACH BUFFER
	SYSPRM	BUFCHR,<<BUFSIZ-3>*5>,<BUFSIZ*4>
					;NUMBER OF CHARS PER BUFFER
	SYSPRM	NPRINT,17,1		;NUMBER OF DEVICES THIS SPOOLER HANDLES

	SYSPRM	(STRNUM,^D10,NPRINT)	;NUMBER OF STRS MAXIMUM
	STRLEN==2*STRNUM		;LENGTH OF STRUCTURE TABLE
	SYSPRM	(STRSLS,<.FSDSO+<3*STRNUM>+3>,5) ;SIZE OF SEARCH LIST BLOCK

	SYSPRM	RAMNOR,SIXBIT/LP96/,SIXBIT/LP96/
	SYSPRM	SERFLG,0,0		;SYSERR flag -- 0=no entries to be made
	SYSPRM	NBRRT,2,2		;Non-blocking rest time
	SYSPRM	DOLRT,10,10		;Device off-line rest time
	SYSPRM	CONRT,3,3		;Console rest time
	SYSPRM	NENBR,25,25		;# of errors allowed for NBR return
					;  when shutting down
	SUBTTL	Parameters

;PARAMETERS WHICH MAY BE CHANGED AT ASSEMBLY TIME

	ND	PDSIZE,120	;SIZE OF PUSHDOWN LIST
	ND	LPTERR,2	;NUMBER OF LPT I/O ERRS BEFORE QUITTING
	ND	LOGPAG,12	;PAGE LIMIT FOR LOG IF OVER QUOTA
	ND	CKPTIM,^D60	;# of seconds between checkpoints
	ND	LPTBAN,2	;Default number of banner pages
	ND	LPTTRL,2	;Default number of trailer pages
	ND	LPTHDR,2	;Default number of header pages
	ND	FRWSKP,5	;DSCHD every n pages when forwardspacing
	ND	CHKWGT,4	;Weight used in eol checking
	ND	MINTIM,5	;TIME TO WAIT BETWEEN CONNECTION ATTEMPTS
	ND	MAXTIM,5*^D60	;MAXIMUM TIME BETWEEN CONNECTION ATTEMPTS
	ND	MAXFAI,^D10	;MAXIMUM NUMBER OF CONNECTION FAILURES/JOB
	ND	MAXCRH,^D10	;MAXIMUM NUMBER OF TIMES LISTENER CAN CRASH
	ND	TIMITL,3*^D60*^D15 ;[7] DECnet inactiviy time limit
	ND	FILBUF,1	;SIZE OF THE FILE TRANSFER BUFFER
	ND	DBSIZ,2		;SIZE OF THE LISTENER DATA BASE

;CONSTANT PARAMETERS

	XP	MSBSIZ,50		;[6] Size of a message block
	XP	AFDSIZ,10		;ALIGN FILE FD SIZE.

;CHECKPOINT BLOCK OFFSETS

	XP	CKFIL,0			;NUMBER OF FILES PRINTED
	XP	CKCOP,1			;NUMBER OF COPIES OF LAST FILE
	XP	CKPAG,2			;NUMBER OF PAGES OF LAST COPY
	XP	CKTPP,3			;TOTAL PAGES PRINTED
	XP	CKFLG,4			;FLAGS
		XP CKFREQ,1B0		;JOB WAS REQUEUED BY OPR
		XP CKFCHK,1B1		;JOB WAS CHECKPOINTED
	SUBTTL	Flag Definitions

;Flag bits in AC S.  The first few are defined in QSRMAC in the SETUP message
;definitons.

;LH bits are normally checked together, and they are the LPTSPL status and 
;LPTSPL mode bits.

;	SUFSHT==1B0		;[2] (shutdown bit - do not use)
;	SPLTAP==1B1		;[2] A local LPTSPL spooling to tape
;	LOCSPL==1B2		;[2] A local LPTSPL
;	CLUSPL==1B3		;[2] A Cluster LPTSPL
;	DQSSPL==1B4		;[2] A DQS LPTSPL
;	LATSPL==1B5		;[2] A LAT LPTSPL
;	TTYSPL==1B6		;[2] A Terminal LPTSPL (TTYSPL)
	D60SPL==1B7		;[2] DN60/IBM LPTSPL
	LPTTYP==177B7		;[3]LPT TYPE MASK
				;[2] B8-B13 free
	RQB==1B14		;[2] Job has been requed
	ABORT==1B15		;[2] The ship is sinking
	GOODBY==1B16		;[2] In job termination sequence
	INJOB==1B17		;[2] In a print job (checkpoints done)

;RH bits normally are chacked together (job/file status bits)

				;[2] B18-20 free
	FCONV==1B20		;[2] Next char fortran format data
	ARROW==1B21		;[2] Arrow mode in effect
	SUPFIL==1B22		;[2] No user form control
	SUPJOB==1B23		;[2] SUPPRESS /JOB
	LFTMAR==1B24		;[2] End of line found indicator
	NEWLIN==1B25		;[2] Flag for the begining of line
	SKPFIL==1B26		;[2] Skip future copies of this file completely
	FBPTOV==1B27		;[2] Spacing page table overflow
	FORWRD==1B28		;[2] Forward spacing request in progress.
	INTRPT==1B29		;[2] Stream is connected to the interrupt system
	BCKFIL==1B30		;[2] Request was backspaced 1 file
	BANHDR==1B31		;[2] Printing banner/header pages
	VFULOD==1B32		;[2] VFU load is in progress
	FRMFND==1B33		;[2] No such forms in LPFORM.INI
	TEMFIL==1B34		;[2] Temporary files are being created
	WAITIR==1B35		;[2] Wait for interrupt message response
	SUBTTL	Macros

DEFINE LP(SYM,VAL,FLAG),<
	IF1,<
		XLIST
		IFNDEF J...X,<J...X==1000>
		IFDEF SYM,<PRINTX  ?PARAM SYM USED TWICE>
		SYM==J...X
		J...X==J...X+VAL
		IFNDEF ...BP,<...BP==1B0>
		IFNDEF ...WP,<...WP==0>
		REPEAT VAL,<
		IFIDN <FLAG><Z>,<LPZ(\...WP,...BP)>
			...BP==...BP_<-1>
			IFE ...BP,<
				...BP==1B0
				...WP==...WP+1
			>  ;;END IFE ...BP
		>  ;;END REPEAT VAL
		LIST
		SALL
	>  ;END IF1

	IF2,<
	.XCREF
	J...X==SYM
	.CREF
	SYM==J...X
	>  ;END IF2
>  ;END DEFINE LP


DEFINE LPZ(A,B),<
	IFNDEF ...Z'A,<...Z'A==B>
	IFDEF ...Z'A,<...Z'A==...Z'A!B>
>  ;END DEFINE LPZ

	;Continued on next page
	;Continued from previous page

DEFINE F,<
	FF	BANNER,LPTBAN
	FF	TRAILER,LPTTRL
	FF	HEADER,LPTHDR
	FF	LINES,^D60
	FF	WIDTH,^D132
	FF	ALIGN,0
	FF	ALCNT,5
	FF	ALSLP,7
	FF	RIBBON,FRMNOR
	FF	TAPE,FRMNOR
	FF	VFU,FRMNOR
	FF	DRUM,FRMNOR
	FF	CHAIN,FRMNOR
	FF	NOTE,0
	FF	RAM,-1
	FF	NUMBER,0	;;[2] 
>
	SUBTTL	Job Parameter Area

$TDCHR==:0				;TERMINAL CHARACTERISTIC
$TDTYP==:1				;TERMINAL TYPE
$TDMOD==:2				;JFN MODE WORD
$TDCC1==:3				;CCOC WORD 1
$TDCC2==:4				;CCOC WORD 2
$TDFLG==:5				;FLAGS
$TDPOL==:6				;POLLING CHARACTERS F.I. ETX,,ACK
;**;[13]add 1 line at $TDPOL  JYCW   5/8/89
$TDREP==:7				;[13]ESC seq characters to reset
					;printer 
$TDLEN==:10				;SIZE OF THE BLOCK

	FL$XOF==:1B0			;XON/XOF PROTOCOL
	FL$POL==:1B1			;POLLING PROTOCOL
	FL$FUL==:1B2			;FULL HEADERS,BANNERS,TRAILERS
	FL$VFU==:1B3			;PROGRAMMABLE TERMINAL (LIKE VFU)
	FL$PGM==:1B4			;FORCED VFU RELOAD BEFORE EACH FILE
;**;[13]At FL$PGM+1 add bits FL$RST and FT%LND  JYCW  5/8/89
	FL$RST==:1B5			;[13]Reset printer

FT%LND==:1B7				;[13]Bit definition for landscape
					;[13]It is in the 1st word of the 4
					;[13]word block of .EQCHR.

	LP	J$$BEG,0		;BEGINNING OF PARAMETER AREA

;REQUEST PARAMETERS

	LP	J$RFLN,1		;NUMBER OF FILES IN REQUEST
	LP	J$RLIM,1,Z		;JOB LIMIT IN PAGES
	LP	J$RTIM,1		;START TIME OF JOB
	LP	J$RLFS,1,Z		;ADR OF LOG FILE SPEC
	LP	J$RNFP,1,Z		;NUMBER OF FILES PRINTED
	LP	J$RNCP,1,Z		;NUMBER OF COPIES OF CURRENT FILE
	LP	J$RNPP,1,Z		;NUMBER OF PAGES IN CURRENT COPY PRINTED
	LP	J$RACS,20		;CONTEXT ACS
	LP	J$RPDL,PDSIZE		;CONTEXT PUSHDOWN LIST

;LPT PARAMETERS

	LP	J$LBUF,1		;ADDRESS OF LPT BUFFER
	LP	J$LBFR,PAGSIZ		;LINE PRINTER BUFFER
	LP	J$LBRH,1		;BUFFER RING HEADER
	LP	J$LBPT,1		;BYTE POINTER
	LP	J$LBCT,1		;BYTE COUNT
	LP	J$LDEV,1		;ACTUAL OUTPUT DEVICE NAME
	LP	J$LERR,1		;LPT ERROR DOWNCOUNTER
	LP	J$LRAM,1		;DEFAULT RAM FILE NAME (LP64 or LP96)
	LP	J$LLCL,1		;-1 IF UPPER/LOWER CASE PRINTER
	LP	J$LDVF,1		;-1 IF DAVFU ON PRINTER
	LP	J$LPCR,1		;-1 IF DEVICE HAS A PAGE CNTR
	LP	J$LREM,1		;TYPE OF LPTSPL
	   				; 0 = LOCAL LPT
		  .JDN60==1B35		; 1 = DN60 LPT
		  .JREML==1B0		; < 0 = REMOTE LPT
		    .JLCLU==1B34 	;[2] Cluster lpt
		    .JLDQS==1B33	;[2] DQS LPT
		    .JLLAT==1B32	;[2] LAT LPT

	;Continued on next page
	;Continued from previous page

;DN60/IBM parameters

IFN FTDN60,<
	LP	J$DCND,CN$SIZ		;DN60 LINE CONDITIONING BLOCK
	LP	J$CWKT,1		;DN60 console wake-up time
	LP	J$ENBR,1		;Threshold for NBR returns
	LP	J$EDOL,1		;Threshold for DOL returns
	LP	J$D6ER,1		;Last DN60 error
	LP	J$OMSG,1,Z		;DN60 OPERATOR MESSAGE AVAILABLE FLAG
					;On(-1) if have a message or if message
					;not completed
	LP	J$D6OB,OP$SIZ		;Parameter block for D60OPN
> ;End of IFN FTDN60
	LP	J$DFLG,1		;DN60 FLAG WORD
	LP	J$D6OP,1		;DN60 OPERATOR CONSOLE ID
	LP	J$LINK,1		;DN60 OPERATORS MSG LIST ID
	LP	J$OFLN,1		;DN60 PRINTER IS OFFLINE FLAG
	LP	J$LCLS,1		;LPT CONTROLLER CLASS
	LP	J$LIOA,1		;-1 IF WE ARE IN A SOUT OR OUT
	LP	J$LLPT,1		;-1 IF DEVICE REALLY IS A LPT
	LP	J$LIOS,1		;LPT IO ERROR STATUS
	LP	J$MTAP,1		;SIXBIT MAG TAPE DEVICE NAME
	LP	J$LCHN,1		;LPT I/O CHANNEL
	LP	J$LBTZ,1		;LPT OUTPUT BYTE SIZE
	LP	J$LSTG,2		;DEVICE NAME STRING
	LP	J$LIBC,1		;INITIAL BYTE COUNT
	LP	J$LIBP,1		;INITIAL BYTE POINTER
	LP	J$TTYC,1		;[5]TERMINAL CHARACTERISTIC
	LP	J$TDEV,1		;[5]DEVICE DESIGNATOR IF OUTPUT TO TTY
	LP	J$VJFN,1		;[5]"VFU" FILE JFN IF OUTPUT TO TTY
	LP	J$TCHR,$TDLEN		;[5]TERMINAL CHARACTERISTICS BLOCK
	LP	J$CID,1			;[5]LATOP RETURNED CONNECTION-ID
	LP	J$SERN,2		;[5]ASCIZ SERVER NAME BLOCK
	;Continued on next page
	;Continued from previous page

;CURRENT FORMS PARAMETERS

DEFINE	FF(X,Y),<
	LP	J$F'X,1
>

	LP	J$FCUR,0		;START OF FORMS PARAMS
	F				;CURRENT FORMS PARAMS

	LP	J$FORM,1		;CURRENT FORMS TYPE
	LP	J$FPFM,1		;PREVIOUS FORMS TYPE
	LP	J$PDRU,1		;PREVIOUS LOADED DRUM
	LP	J$PRIB,1		;PREVIOUS LOADED RIBBON
	LP	J$PTAP,1		;PREVIOUS LOADED CARRAIGE CONTROL TAPE
	LP	J$FMSP,1,Z		;FORMS WTO/WTOR PAGE ADDRESS
	LP	J$FWCL,1		;CURRENT WIDTH CLASS
	LP	J$FLCL,1		;Current length class
	LP	J$FLVT,1		;CURRENTLY 'LOADED' VFU TYPE
	LP	J$FLRM,1		;CURRENTLY 'LOADED' TRANSLATION RAM
	LP	J$FVIF,1		;IFN OF VFU FILE ON -10
	LP	J$FBYT,1,Z		;VFU INPUT BYTE COUNT.
	LP	J$FPTR,1		;VFU INPUT BYTE POINTER.
	LP	J$LVFF,1		;FIRST TIME THROUGH FLAG FOR LPT VFU'S
	LP	J$FNBK,16		;OPERATOR NOTE BLOCK
	LP	J$WITH,1		;Number of bytes to check for eol
	LP	J$PRNT,1		;Counter used in checking for eol
	LP	J$OPRA,1,Z		;Flag if cancel from operator
IF2,<	PURGE	J$FVFU,J$FCHA		;DON'T USE THESE   >

	;Continued on next page
	;Continued from previous page

;ALIGN FILE PARAMETERS

	LP	J$APRG,1		;-1 IF ALIGN IS IN PROGRESS
	LP	J$AIFN,1		;ALIGN FILE IFN
	LP	J$ABYT,1		;ALIGN BUFFER BYTE COUNT.
	LP	J$APTR,1		;ALIGN BUFFER BYTE POINTER.
	LP	J$ASLP,1,Z		;SECONDS TO SLEEP
	LP	J$ACNT,1,Z		;LOOP COUNT
	LP	J$AFD,AFDSIZ		;THE FD FOR THE ALIGN FILE

;MISCELLANY

	LP	J$XTOP,1		;WE ARE AT TOP OF FORM
	LP	J$XFOB,FOB.SZ		;A FILE OPEN BLOCK
	LP	J$XPOS,1		;CURRENT VERTICAL POSITION
	LP	J$XHBF,<45>		;BUFFER TO BUILD HEADER LINE
	LP	J$XCOD,<^D55>		;COMPILE A ROUTINE TO CHECK
					; FOR MATCH ON /REPORT
	LP	J$XFRC,1		;FORTRAN CHARACTER REPEAT COUNT
	LP	J$XTBF,50		;$TEXT BUFFER FOR OUTPUT DEVICE
	LP	J$XTBP,1		;BYTE POINTER FOR J$XTBF.
	LP	J$RESP,2,Z		;OPERATOR RESPONSE BUFFER.
	LP	J$WTOR,^D50		;WTOR MESSAGE BUFFER.

	;Continued on next page
	;Continued from previous page

;Cluster and DQS LPTSPL

	LP	J$CDCN,^D19		;DCN: DECNET DEVICE NAME
	LP	J$RNOD,1		;REMOTE NODE NAME
	LP	J$NDAT,3		;OCTAL DATA FOR LINK CONFIRMATION
	LP	J$SDBW,8		;[10]DEBUGGING USER NAME
	LP	J$FILB,1		;PAGE # OF FILE TRANSFER BUFFER
	LP	J$FADR,1		;[11]ADDRESS OF FILE TRANSFER BUFFER
	LP	J$FILO,1		;[11]PAGE # OF OUTPUT FILE XFER BUFFER
	LP	J$OADR,1		;[11]ADR OF OUTPUT FILE XFER BUFFER
	LP	J$LSTS,1		;STATUS OF THE DECNET LINK
	LP	J$FRKH,1		;LISTENER FORK HANDLE
	LP	J$ACCT,1		;ACCOUNTING ENABLED/DISABLE FLAG
		 ERSTSZ==^D99		;MAXIMUM ASCIZ ERROR TEXT LENGTH
	LP	J$ERRA,1		;ERROR TEXT ADDRESS
	LP	J$LPTS,1		;LPTSPL SIZE IN PAGES
	LP	J$TEVT,^D<.TIMPC+1>	;DECNET INACTIVITY ENTRY
	LP	J$STAT,1		;STATE OF CLUSTER LPTSPL
	   VALMIN==1			;MINIMUM VALID STATE VALUE
		 .JSNMR==1B1		;NEXTJOB MESSAGE RESPONSE
		 .JSTMR==1B2		;TRANSFER FILE MESSAGE RESPONSE
	   VALMAX==2			;MAXIMUM VALID STATE VALUE
	LP	J$CONF,1		;DECNET CONNECTION FAILURES
	LP	J$DECR,2		;DECNET MESSAGE RESPONSE POINTER
	   J$DECS==J$DECR+1		;DECNET MESSAGE SEND POINTER
	LP	J$JFN,1			;JFN OF A FILE TO TRANSFER
	LP	J$TEM,1			;JFN OF A TEMPORARY FILE
	LP	J$FDB,2			;FILE I/O AND NUMBER OF BYTES FILE
	LP	J$SIXB,1		;SIXBIT PART OF TEMP FILE NAME
	LP	J$FDHR,^D15		;TEMPORARY FILE'S FD
	   J$TNAM==J$FDHR+1		;TEMPORARY FILE'S FILE SPEC
	LP	J$TNUM,1		;NUMBER OF TEMPORARY FILES
	   TFNLEN==^D70			;TEMPORARY FILE NAMES TABLE LENGTH
	LP	J$TFIN,TFNLEN		;TEMPORARY FILE NAMES TABLE
	LP	J$ORFD,1		;ORIGINAL FILE FD
	LP	J$REMR,1		;PRINT REQUEST ORIGINATED REMOTELY
	LP	J$TFIL,1		;CURRENT FILE IS A TEMPORARY FILE
	LP	J$RCSM,1		;TRANSFER FILE MESSAGE CHECKSUM VALUE
	LP	J$CRNM,1		;NUMBER OF TIMES LISTENER HAS CRASHED
	LP	J$LPGS,1		;[3]ADDRESS OF LISTENER'S DATA PAGES

	;Continued on next page
	;Continued from previous page

;ACCOUNTING PARAMETERS.

	LP	J$APRT,1,Z		;PAGE COUNT.
	LP	J$ADRD,1,Z		;DISK BLOCKS READ.
	LP	J$APRI,1,Z		;JOBS PRIORITY
	LP	J$ARTM,1,Z		;JOBS RUN TIME (CPU)
	LP	J$ASEQ,1,Z		;JOBS SEQUENCE NUMBER
	LP	J$AFXC,1,Z		;TOTAL FILES PRINTED (FILES*COPIES)

;FORWARD SPACE / BACK SPACE PARAMETERS

	LP	J$FBPT,1		;CURRENT PAGE TABLE POSITION
	LP	J$FPAG,PAGSIZ		;BACKSPACE PAGE TABLE
	LP	J$FCBC,1,Z		;CURRENT INPUT BUFFER BYTE COUNT
	LP	J$FTBC,1,Z		;TOTAL INPUT BYTE COUNT
	LP	J$FPIG,1,Z		;NUMBER OF PAGES TO IGNORE

;DISK FILE PARAMETERS

	LP	J$DIFN,1		;THE IFN
	LP	J$DFDA,1		;THE FD ADDRESS
	LP	J$DBPT,1		;BUFFER BYTE POINTER
	LP	J$DBCT,1,Z		;BUFFER BYTE COUNT

;LOG FILE PARAMETERS

	LP	J$GBUF,^D10		;ADDRESS OF LOG FILE BUFFERS
	LP	J$GBFR,PAGSIZ		;FIRST LOG FILE BUFFER
	LP	J$GNLN,1,Z		;NUMBER OF LINES WRITTEN IN LOG
	LP	J$GIBC,1,Z		;INTERNAL LOG BYTE COUNT
	LP	J$GIBP,1,Z		;INTERNAL LOG BYTE POINTER
	LP	J$GINP,1,Z		;NUMBER OF INTERNAL LOG PAGES

;PICTURE BLOCKS

	LP	J$PUSR,10		;USER NAME
	LP	J$PNOT,4		;/NOTE
	LP	J$PFL1,10		;FIRST LINE OF FILE NAME
	LP	J$PFL2,12		;SECOND LINE OF FILE NAME
	LP	J$PFLS,1		;BLOCKSIZE FOR FILENAME


	LP	J$$END,1		;END OF PARAMETER AREA

	J$$LEN==J$$END-J$$BEG		;LENGTH OF PARAMETER AREA
	SUBTTL	Scheduler Parameters

;SCHEDULER FLAGS

	PSF%OB==1B1		;OUTPUT BLOCKED
	PSF%DO==1B2		;DEVICE IS OFF-LINE
	PSF%ST==1B3		;STOPPED BY OPERATOR
	PSF%OR==1B4		;OPERATOR RESPONSE WAIT
	PSF%AL==1B5		;ALIGNMENT TIMER WAIT STATE.
	PSF%OO==1B6		;WAITING FOR 2780/3780 OPERATOR OUTPUT

DEFINE $DSCHD(FLAGS),<
	PUSHJ	P,DSCHD
	XLIST
	JUMP	[EXP FLAGS]
	LIST
	SALL
>  ;END DEFINE $DSCHD

DEFINE $D60ER(ADD),<
	PUSHJ	P,D60ER
	XLIST
	JUMP	ADD
	LIST
	SALL
>  ;END DEFINE $D60ER
DEFINE $D60OE(ADD),<
	PUSHJ	P,D60OE
	XLIST
	JUMP	ADD
	LIST
	SALL
>  ;END DEFINE $D60OE
	SUBTTL	Listener Data Base Definitions

;The listener has a two page listener block. The first page has the following
;format:
;
;       !=======================================================!
;       !                 Message Buffer Address                ! .LSMSG
;       !-------------------------------------------------------!
;	!                 SIXBIT Remote Node Name               ! .LSNME
;	!-------------------------------------------------------!
;	!                                                       !
;	/                 ASCIZ Remote Node Name                / .LSANN
;	!                                                       !
;	!-------------------------------------------------------!
;	!                                                       !
;	/                                                       /
;	/                   Remote Sender Name                  / .LSUSR
;	/                                                       /
;	!                                                       !
;	!-------------------------------------------------------!
;	!                                                       !
;	/                                                       /
;	/             Expected Remote Sender Name               / .LSSNE
;	/                                                       /
;	!                                                       !
;	!-------------------------------------------------------!
;	!                                                       !
;	/                                                       /
;	/             Remote Sender Optional Data               / .LSOPT
;	/                                                       /
;	!                                                       !
;	!-------------------------------------------------------!
;       !                   DECnet Link Status                  ! .LSLNK
;       !-------------------------------------------------------!
;       !                                                       !
;       /                                                       /
;       /                   Listener Stack                      / .LSPDL
;       /                                                       /
;	!                                                       !
;       !-------------------------------------------------------!
;       !                                                       !
;       /                                                       /
;       /                     Listener ACs			/ .LSACS
;       /                                                       /
;	!                                                       !
;       !-------------------------------------------------------!
;       !                 Listener's Fork Handle                ! .LSHND
;       !-------------------------------------------------------!
;       !                    DECnet Link JFN                    ! .LSJFN
;       !-------------------------------------------------------!

	;Continued on the next page
	;Continued from the previous page

;       !-------------------------------------------------------!
;	!                                                       !
;	/                                                       /
;	/          Listener's DECnet Device Name (SRV:)         / .LSSRV
;	/                                                       /
;	!                                                       !
;	!-------------------------------------------------------!
;	!                                                       !
;	/                                                       /
;	/                  Debugging User Name                  / .LSDBW
;	/                                                       /
;	!                                                       /
;	!-------------------------------------------------------!
;	!                                                       !
;	/                                                       /
;	/               GLXLIB Initialization Block             / .LSIBK
;	/                                                       /
;	!                                                       !
;	!-------------------------------------------------------!
;	!                                                       !
;	/                                                       /
;	/                PID Initialization Block               / .LSPIB
;	/                                                       /
;	!                                                       !
;	!-------------------------------------------------------!
;	!                                                       !
;	/                 Interrupt Level Table                 / .LSLEV
;	!                                                       !
;	!-------------------------------------------------------!
;	!            Interrupt Level 1 PC Save Block            ! .LS1PC
;	!-------------------------------------------------------!
;	!            Interrupt Level 2 PC Save Block            ! .LS2PC
;       !-------------------------------------------------------!
;	!            Interrupt Level 3 PC Save Block            ! .LS3PC
;	!-------------------------------------------------------!
;	!                                                       !
;	/                                                       /
;	/               MUTIL% JSYS Argument Block              / .LSMUT
;	/                                                       /
;	!                                                       !
;	!-------------------------------------------------------!
;	!      SCS% Detected That Node Has Left the Cluster     ! .LSSCS
;	!-------------------------------------------------------!
;	!                                                       !
;	/              SCS% Interrupt Enabled Block             / .LSSBK
;	!                                                       !
;	!-------------------------------------------------------!
;       !                                                       !
;       /                                                       /
;	/                     SCS% Event Block                  / .LSSEB
;	/                                                       /
;	!                                                       !
;	!-------------------------------------------------------!

	;Continued on the next page
	;Continued from the previous page

;	!-------------------------------------------------------!
;	!                                                       !
;	/                                                       /
;	/                     File Object Block                 / .LSFOB
;	/                                                       /
;	!                                                       !
;	!-------------------------------------------------------!
;	!                                                       !
;	/              Stopcode Processing Save Block           / .LSERR
;	!                                                       !
;       !=======================================================!


;LISTENER DATA BASE DEFINITIONS

	PHASE	0

.LSMSG:! BLOCK	1			;ADDRESS OF MESSAGE BUFFER
.LSNME:! BLOCK  1			;SIXBIT REMOTE NODE NAME
.LSANN:! BLOCK	2			;ASCIZ REMOTE NODE NAME
.LSUSR:! BLOCK	^D8			;REMOTE SENDER NAME
.LSSNE:! BLOCK	^D8			;EXPECTED SENDER NAME
.LSOPT:! BLOCK  4			;DECNET SENDER OPTIONAL DATA
.LSLNK:! BLOCK	1			;STATUS OF THE DECNET LINK
.LSPDL:! BLOCK	PDSIZE			;LISTENER CONTEXT PDL.
.LSACE:! BLOCK	20			;LISTENER AC
.LSHND:! BLOCK	1			;LISTENER'S PROCESS HANDLE
.LSJFN:! BLOCK	1			;DECNET LOGICAL LINK JFN
.LSSRV:! BLOCK	^D14			;DECNET DEVICE NAME
.LSDBW:! BLOCK	8			;[10]DEBUGGING USER NAME
.LSIBK:! BLOCK	IB.SZ			;GLXLIB INITIALIZATION BLOCK
.LSPIB:! BLOCK	PB.MNS			;PID INITIALIZATION BLOCK
.LSLEV:! BLOCK	3			;INTERRUPT LEVEL TABLE
.LS1PC:! BLOCK	1			;INTERRUPT LEVEL 1 PC SAVE BLOCK
.LS2PC:! BLOCK	1			;INTERRUPT LEVEL 2 PC SAVE BLOCK
.LS3PC:! BLOCK 	1			;INTERRUPT LEVEL 3 PC SAVE BLOCK
.LSMUT:! BLOCK	3			;MUTIL% ARGUMENT BLOCK
.LSSCS:! BLOCK	1			;SCS% DETECTED NODE LEFT CLUSTER
.LSSBK:! BLOCK	2			;SCS% INTERUPT ENABLED BLOCK
SCSLEN==1+.SQDTA+SQ%CDT			;SIZE OF SCS% EVENT BLOCK
.LSSEB:! BLOCK	SCSLEN			;SCS% EVENT BLOCK
.LSFOB:! BLOCK	FOB.SZ			;FILE OBJECT BLOCK
.LSERR:! BLOCK	2			;STOPCODE PROCESSING SAVE BLOCK

DBLED:!					;END OF DEFINED LISTENER DATA BASE

	DEPHASE
	SUBTTL	End of LPTMAC

END

;;;Local modes:
;;;Mode: MACRO
;;;Comment begin: ";[2] "
;;;Comment column: 40
;;;End: