Google
 

Trailing-Edge - PDP-10 Archives - bb-h138e-bm_tops20_v6_1_distr - language-sources/pltprm.mac
There are 38 other files named pltprm.mac in the archive. Click here to see a list.
UNIVERSAL PLTPRM
SUBTTL	/DZN/PAH	6-Jan-83



;COPYRIGHT (C) 1973, 1983 BY
;DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS.
;
;
;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 WHICH IS NOT SUPPLIED BY DIGITAL.


CUSTVR==0		;CUSTOMER VERSION
DECVER==5		;DEC VERSION
DECMVR==1		;DEC MINOR VERSION
DECEVR==2026		;DEC EDIT VERSION
SUBTTL	REVISION HISTORY


;START OF VERSION 4A
;1217	Clean up the listings for release.
;1220	Release on both TOPS-10 and TOPS-20 as version 4A(1220).

;Start of Version 5.1
;2026	Update copyright notice.
	T0=0
	T1=1
	R0=0
	R1=1
	AP=16
	P=17

	DEFINE ARGS (A) <
	ARG.L=15
	CNT.=0
	IRP A,<
	A=ARG.L-CNT.
	CNT.=CNT.+1>
	IRP A,<
	MOVE	ARG.L,-15-CNT.(P)
	ARG.L=ARG.L-1
	CNT.=CNT.-1>>

	DEFINE LOCSUB (A,B) <
	C.....=0
	IFNB <B>,< IRP B,<C.....=C.....+1
			 PUSH	P,B>>
	PUSHJ	P,A 
	IFN C.....,< SUB	P,[C.....,,C.....]>
>

	DEFINE	FUNCT2(A,B)<
;	SALL
	T.....=0
	ST....=1
	IF2,<IFNDEF A,<EXTERNAL A>>
	IFNB <B>,<
	PUSH	P,AP
	IRP	B,<IFIDN <B> <$1>, <ST....=0>
		   IFIDN <B> <$2>, <ST....=-1>
		   IFDIF <B> <$1>,<
			IFDIF <B> <$2>,<
			   IFG ST....,<PUSH	P,B
			   T.....=T.....+1
>
			   ST....=1>>>
	R.....=0
	   IRP  B,<IFIDN <B> <$1>, <ST....=0>
		   IFIDN <B> <$2>, <ST....=-1>
		   IFDIF <B> <$1>,<
			IFDIF <B> <$2>,<
			   IFE ST....,<T......=T......+1
				    PUSH	P,B>
			   IFL ST....,<T.....=T.....+1
				    PUSH	P,[B]>
			   IFG ST....,<T......=T......+1
					R.....=R.....+1
					HRRZI	AP,-T.....+R.....+1(P)
					PUSH	P,AP
>
			   ST....=1>>>>
	MOVEI	AP,-T.....+R.....+1(P)
	PUSHJ	P,A
	IFNB <B>,<
	SUB	P,[T.....,,T.....]
	POP	P,AP>>

	DEFINE SAVE (A)<
	IRP A,<	PUSH	P,A>>

	DEFINE RESTOR (A)<
	IRP A,<	POP	P,A>>


	DEFINE	SAVALL <
	HRRZ	R0,P
	ADD	R0,[2,,1]
	BLT	R0,16(P)
	ADD	P,[15,,15]>

	DEFINE RETURN <
	JRST	RAX$##>

	DEFINE POPALL <
	SUB	P,[15,,15]
	HRLZ	AP,P
	ADD	AP,[1,,2]
	BLT	AP,16>

	L=16
SUBTTL	D. TODD/DRT/HPW/SRM		4-FEB-74



; THIS FILE MUST BE ASSEMBLED WITH ALL SOURCE FILES
; OF THE FORTRAN OBJECT TIME STSTEM (FOROTS)

; EXTERNAL SYSTEM SYMBOLS
	EXTERN	.JBFF,.JBREL,.JBOPS,.JBSA,.JBTPC,.JBOPC,.JB41,.JBHRL
	EXTERN	FOROT%		;DEFINE ENTRY POINT TO FOROTS


; PDP-10 PROCESSOR SWITCHES
	; PDP-6		PR0CESS=PDP6
	; PDP-10 (KA10)	PROCESSOR=KA10
	; PDP-10 (KI10)	PROCESS==KI10

	PDP6==0
	KA10==1
	KI10==2
	IFNDEF CPU,<CPU==KI10>	;THE DEFAULT CPU
	CPU==KA10	;;;;;

; FOROTS SYSTEM DEVICE

	;FOROTS ON DSK	SYSDEV=SIXBIT /DSK/
	;FOROTS ON SYS	SYSDEV=SIXBIT /SYS/

	IFNDEF SYSDEV,<SYSDEV=SIXBIT /SYS/> ;DEFAULT ON DSK FOR DEVELOP.


; TO MAKE TWOSEG

	HILOW==0
	LPSYM==0	;FOR LINK PLT, LPT SIMULATION IS ON
	F40LIB==0
	F10LIB==1
	ALONE==1	;FOR LINK TSTOUT
	CONCEA==0	; CONCEAL?

	OPDEF PJRST [JRST]	;PUSHJ/POPJ
	DEFINE ERROR(CLASS,TYPE,SEVER,RETURN)<
IFE CONCEA,<
	XCT	0,FORER.##	;PROCESS CLASS ERROR
>
IFN CONCEA,<
	XCT	ER%'CLASS,FORER%##	;PROCESS CLASS ERROR
>
	CAI	TYPE,RETURN(SEVER)	;SEVERITY CODE AND ERROR RETURN
	>

	SUBTTL FORLIB MACROS (USED BY THE LIBRARY ROUTINES)

	DEFINE	FUNCT(A,B)<
	SALL
	C.....=0
	IRP B,<C.....=C.....+1>
	IF2,<IFNDEF A,<EXTERNAL A>>
	IFNB <B>,<
	PUSH	P,L
	MOVEI	L,[XWD -C.....,0
		IRP B,<B>]+1>
	PUSHJ	P,A
	IFNB <B>,<
	POP	P,L>>

	DEFINE HELLO (A,B)<
	SALL
	IFNB <B>,<IFIDN <B>,<.>,<SIXBIT /A/
				 ENTRY A'.
				 A'.:>
		  IFDIF <B>,<.>,<SIXBIT /B/
				 ENTRY A
				 A:>
		 >
	IFB  <B>,<SIXBIT /A/
		  ENTRY	A
		  A:>
IFN F40LIB,<
	CAIA
	PUSH	P,CEXIT.##
>
>	;END OF HELLO MACRO

	DEFINE GOODBY (N)<
	POPJ	P,N>


	END