Trailing-Edge
-
PDP-10 Archives
-
BB-H138E-BM
-
language-sources/pltutl.mac
There are 38 other files named pltutl.mac in the archive. Click here to see a list.
TITLE PLTUTL
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.
SEARCH PLTPRM
SALL
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.
;THIS PROGRAM IS GENERATED FROM AN EQUIVALENT FORTRAN PROGRAM
;OF THE SAME NAME, WHICH IS INCLUDED BELOW.
; FUNCTION PLTUTL (XXX)
; C ARGUMENTS ARE PASSED IN THIS COMMON--EQUIVS. TAILOR PARTIC. LISTS
; COMMON /PLTARG/ARG0,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7
; 1 ,X,Y,DD,TT,TOP,SIDE
; INTEGER ARG0,PLTCHAR
; EQUIVALENCE (PLTCHAR,ARG0)
; REAL ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7, X,Y
; DIMENSION X(5),Y(5),DD(1),TT(1)
; DATA DD,TT/'TREE ','ARC '/
;
; ENTRY PLTORIG
; EQUIVALENCE (SETTOP,ARG1),(SETSIDE,ARG2),(STPSIZ,ARG3),
; 1 (WIDNCH,ARG4),(PSTAT,ARG5)
; INTEGER PSTAT
; REAL TOP,SIDE,SETTOP,SETSIDE,STPSIZ,WIDNCH
; PLTUTL=0
; TOP=SETTOP
; SIDE=SETSIDE
; CALL PLOTS(PSTAT,STPSIZ)
; IF (PSTAT .EQ. -1) RETURN
; ARG7=WIDNCH + 1.0
; ARG7=-ARG7
; CALL PLOT(0,ARG7,-3)
; CALL PLOT(0,0.5,-3)
; RETURN
;
; ENTRY PLTINIT
; EQUIVALENCE (XDPEST,ARG1),(YORIG,ARG2)
; REAL XDPEST,YCENTR
; INTEGER PLTUTL
;
; C THE TWO ARGS ARE IMPLICITLY PASSED ON
; PLTUTL=-1
; CALL PLOTI
; RETURN
;
; ENTRY PLTPOLY
; EQUIVALENCE (XSON,ARG1),(YSON,ARG2),
; 1 (NAMLEN,ARG3),(LNUM,ARG4),(LNAME,ARG5),(RNAME,ARG5)
; INTEGER NAMLEN,LNUM
; REAL XSON,YSON,RNAME
; DIMENSION LNAME(2)
;
; C IN A STATISTICAL SENSE IT IS BETTER TO DO THE 10 STATS ALWAYS
; C RATHER THAN CONDIT AROUND & BRANCH TO WHEN NECESSARY
;
; X(1)=XSON
; Y(1)=YSON-TOP/2
; X(2)=XSON
; Y(2)=YSON+TOP/2
; X(3)=XSON+SIDE
; Y(3)=YSON+TOP/2
; X(4)=XSON+SIDE
; Y(4)=YSON-TOP/2
; X(5)=X(1)
; Y(5)=Y(1)
;
; IF (LNUM .GT.99999) GO TO 11
; PLTCHAR='*'
; CALL NUMBER(X(1)+SIDE*7.0/16.0,Y(1)+TOP/8,SIDE/8,
; 1 FLOAT(LNUM),90.0,-1)
; CALL SYMBOL(X(1)+SIDE*14/16,Y(1)+TOP/8,SIDE/8,
; 1 LNAME,90.0,NAMLEN)
; GO TO 99
;
; 11 IF (LNUM .NE. 100000) GO TO 12
; IF (PLTUTL.NE.0) GO TO 115
;
; X(1)=XSON
; Y(1)=YSON
; X(2)=XSON+SIDE/2
; Y(2)=YSON+TOP/2
; X(3)=XSON+SIDE
; Y(3)=YSON
; X(4)=XSON+SIDE/2
; Y(4)=YSON-TOP/2
; X(5)=X(1)
; Y(5)=Y(1)
;
; 115 PLTCHAR='$'
; CALL SYMBOL(XSON+SIDE*7/16,YSON-TOP/4,SIDE/6,DD,90.0,4)
; CALL NUMBER(XSON+SIDE*14/16,YSON,SIDE/6,RNAME,90.0,-1)
; GO TO 99
;
; 12 IF (LNUM .NE. 100001) GOTO 88
; IF (PLTUTL.NE.0) GO TO 125
;
; X(1)=XSON
; Y(1)=YSON-TOP/2+TOP/6
; X(2)=XSON
; Y(2)=YSON+TOP/2-TOP/6
; X(3)=XSON+SIDE
; Y(3)=YSON+TOP/2
; X(4)=XSON+SIDE
; Y(4)=YSON-TOP/2
; X(5)=X(1)
; Y(5)=Y(1)
;
; 125 PLTCHAR='@'
; CALL SYMBOL(XSON+SIDE*7/16,YSON-TOP/3,SIDE/6,TT,90.0,3)
; CALL NUMBER(XSON+SIDE*14/16,YSON-TOP/4,SIDE/6,RNAME,90.0,-1)
; CALL SYMBOL(XSON+SIDE*14/16,YSON,SIDE/6,LNAME(2),90.0,1)
;
; 99 CALL LINE(X,Y,5,1)
; RETURN
;
; ENTRY PLTLINE
; EQUIVALENCE(XSELF,ARG1),(YSELF,ARG2),(XDAU,ARG3),(YDAU,ARG4)
; REAL YSELF,XSELF,YDAU,XDAU
; PLTCHAR='='
;
; X(1)=XSELF
; Y(1)=YSELF
; X(2)=XDAU
; Y(2)=YDAU
; CALL LINE(X,Y,2,1)
; RETURN
;
; 88 PSTAT=-1
; RETURN
; END
TWOSEG
RELOC 400000
EXTERN X,Y,SIDE,TOP,.Q0,.Q1,.Q2,.Q3,.Q4,.Q5,PLTCHA,LPBUF,ERRFND,STEPS
EXTERN PLOTI,LINE,NUMBER,SYMBOL,PLOTS,PLOT,FLOAT.
ENTRY PLTORI,PLTPOL,PLTINI,PLTLIN
PLTORI:
SAVALL
ARGS <SETTOP,SETSID,INCHES>
MOVE 2,SETTOP
MOVEM 2,TOP
MOVE 2,SETSID
MOVEM 2,SIDE
MOVEI 16,%7M
PUSHJ 17,PLOTS
MOVN 2,ERRFND
CAIN 2,1
RETURN
%8M:
MOVSI 2,201400
FADR 2,INCHES
MOVEM 2,.Q0
MOVNS 3,.Q0
MOVEI 16,%9M
PUSHJ 17,PLOT
MOVEI 16,%10M
PUSHJ 17,PLOT
RETURN
PLTINI:
MOVE 1,-2(P)
MOVEM 1,.Q0
MOVE 1,-1(P)
MOVEM 1,.Q1
FUNCT2 PLOTI,<$2,.Q0,$2,.Q1>
POPJ P,0
PLTPOL:
SAVALL
ARGS <XSON,YSON,NAMLEN,LNUM,LNAME,LNAME2>
RNAME=LNAME
MOVE 2,XSON
MOVEM 2,X
MOVN 3,TOP
FSC 3,777777
FADR 3,YSON
MOVEM 3,Y
MOVE 2,XSON
MOVEM 2,X+1
MOVE 3,TOP
FSC 3,777777
FADR 3,YSON
MOVEM 3,Y+1
MOVE 2,XSON
FADR 2,SIDE
MOVEM 2,X+2
MOVE 2,TOP
FSC 2,777777
FADR 2,YSON
MOVEM 2,Y+2
MOVE 2,XSON
FADR 2,SIDE
MOVEM 2,X+3
MOVN 2,TOP
FSC 2,777777
FADR 2,YSON
MOVEM 2,Y+3
MOVE 2,X
MOVEM 2,X+4
MOVE 2,Y
MOVEM 2,Y+4
MOVE 2,LNUM
CAILE 2,303237
JRST 0,%11P
MOVE 3,[251004020100]
MOVEM 3,PLTCHA
MOVSI 2,203700
FMPR 2,SIDE
FSC 2,777774
FADR 2,X
MOVEM 2,.Q0
MOVE 2,TOP
FSC 2,777775
FADR 2,Y
MOVEM 2,.Q1
MOVE 2,SIDE
FSC 2,777775
MOVEM 2,.Q2
FUNCT2 FLOAT.,<LNUM>
MOVEM 0,2
MOVEM 2,.Q3
MOVEI 16,%15M
PUSHJ 17,NUMBER
MOVSI 2,204700
FMPR 2,SIDE
FSC 2,777774
FADR 2,X
MOVEM 2,.Q0
MOVE 2,TOP
FSC 2,777775
FADR 2,Y
MOVEM 2,.Q1
MOVE 2,SIDE
FSC 2,777775
MOVEM 2,.Q2
MOVEM LNAME,.Q3
MOVEM LNAME2,.Q4
MOVEM NAMLEN,.Q5
MOVEI 16,%16M
PUSHJ 17,SYMBOL
JRST 0,%99P
%11P:
MOVE 2,LNUM
CAIE 2,303240
JRST 0,%12P
SKIPE 2,LPBUF
JRST 0,%115P
MOVN 2,SIDE
FSC 2,777775
FADR 2,XSON
MOVEM 2,X
MOVE 2,YSON
MOVEM 2,Y
MOVE 3,SIDE
FSC 3,777777
FADR 3,XSON
MOVEM 3,X+1
MOVE 3,TOP
FSC 3,777775
MOVE 2,TOP
FSC 2,777777
FADR 2,YSON
FADR 2,3
MOVEM 2,Y+1
MOVE 3,SIDE
FSC 3,777775
MOVE 2,SIDE
FADR 2,XSON
FADR 2,3
MOVEM 2,X+2
MOVE 2,YSON
MOVEM 2,Y+2
MOVE 2,SIDE
FSC 2,777777
FADR 2,XSON
MOVEM 2,X+3
MOVN 3,TOP
FSC 3,777775
MOVN 2,TOP
FSC 2,777777
FADR 2,YSON
FADR 2,3
MOVEM 2,Y+3
MOVE 2,X
MOVEM 2,X+4
MOVE 2,Y
MOVEM 2,Y+4
%115P:
MOVE 2,[221004020100]
MOVEM 2,PLTCHA
MOVSI 2,203700
FMPR 2,SIDE
FSC 2,777774
FADR 2,XSON
MOVEM 2,.Q0
MOVN 2,TOP
FSC 2,777776
FADR 2,YSON
MOVEM 2,.Q1
MOVE 2,SIDE
FDVRI 2,203600
MOVEM 2,.Q2
MOVEI 16,%17M
PUSHJ 17,SYMBOL
MOVSI 2,204700
FMPR 2,SIDE
FSC 2,777774
FADR 2,XSON
MOVEM 2,.Q0
MOVE 2,SIDE
FDVRI 2,203600
MOVEM 2,.Q1
MOVEM YSON,.Q2
MOVEM RNAME,.Q3
MOVEI 16,%18M
PUSHJ 17,NUMBER
JRST 0,%99P
%12P:
MOVE 2,LNUM
CAIE 2,303241
JRST 0,%88P
SKIPE 2,LPBUF
JRST 0,%125P
MOVE 2,XSON
MOVEM 2,X
MOVE 4,TOP
FDVRI 4,203600
MOVN 3,TOP
FSC 3,777777
FADR 3,YSON
FADR 3,4
MOVEM 3,Y
MOVE 2,XSON
MOVEM 2,X+1
MOVN 4,TOP
FDVRI 4,203600
MOVE 3,TOP
FSC 3,777777
FADR 3,YSON
FADR 3,4
MOVEM 3,Y+1
MOVE 2,XSON
FADR 2,SIDE
MOVEM 2,X+2
MOVE 2,TOP
FSC 2,777777
FADR 2,YSON
MOVEM 2,Y+2
MOVE 2,XSON
FADR 2,SIDE
MOVEM 2,X+3
MOVN 2,TOP
FSC 2,777777
FADR 2,YSON
MOVEM 2,Y+3
MOVE 2,X
MOVEM 2,X+4
MOVE 2,Y
MOVEM 2,Y+4
%125P:
MOVE 2,[401004020100]
MOVEM 2,PLTCHA
MOVSI 2,203700
FMPR 2,SIDE
FSC 2,777774
FADR 2,XSON
MOVEM 2,.Q0
MOVN 2,TOP
FDVRI 2,202600
FADR 2,YSON
MOVEM 2,.Q1
MOVE 2,SIDE
FDVRI 2,203600
MOVEM 2,.Q2
MOVEI 16,%19M
PUSHJ 17,SYMBOL
MOVSI 2,204700
FMPR 2,SIDE
FSC 2,777774
FADR 2,XSON
MOVEM 2,.Q0
MOVN 2,TOP
FSC 2,777776
FADR 2,YSON
MOVEM 2,.Q1
MOVE 2,SIDE
FDVRI 2,203600
MOVEM 2,.Q2
MOVEM RNAME,.Q3
MOVEI 16,%20M
PUSHJ 17,NUMBER
MOVSI 2,204700
FMPR 2,SIDE
FSC 2,777774
FADR 2,XSON
MOVEM 2,.Q0
MOVE 2,SIDE
FDVRI 2,203600
MOVEM 2,.Q1
MOVEM YSON,.Q2
MOVEM LNAME2,.Q3
MOVEI 16,%21M
PUSHJ 17,SYMBOL
%99P:
MOVEI 16,%22M
PUSHJ 17,LINE
RETURN
PLTLIN:
SAVALL
ARGS <XSELF,YSELF,XDAU,YDAU>
MOVE 2,[365004020100]
MOVEM 2,PLTCHA
MOVE 2,XSELF
MOVEM 2,X
MOVE 2,YSELF
MOVEM 2,Y
MOVE 2,XDAU
MOVEM 2,X+1
MOVE 2,YDAU
MOVEM 2,Y+1
MOVEI 16,%25M
PUSHJ 17,LINE
RETURN
%88P:
SETOB 2,ERRFND
%1M:
RETURN
; *** CONSTANTS
DD: ASCII "TREE "
TT: ASCII "ARC "
777774,,0
%25M: 200,,X
200,,Y
100,,[000000000002]
100,,[000000000001]
777774,,0
%22M: 200,,X
200,,Y
100,,[000000000005]
100,,[000000000001]
777772,,0
%21M: 200,,.Q0
200,,.Q2
200,,.Q1
100,,.Q3
200,,[207550000000]
100,,[000000000001]
777772,,0
%20M: 200,,.Q0
200,,.Q1
200,,.Q2
200,,.Q3
200,,[207550000000]
100,,[777777777777]
777772,,0
%19M: 200,,.Q0
200,,.Q1
200,,.Q2
200,,TT
200,,[207550000000]
100,,[000000000003]
777772,,0
%18M: 200,,.Q0
200,,.Q2
200,,.Q1
200,,.Q3
200,,[207550000000]
100,,[777777777777]
777772,,0
%17M: 200,,.Q0
200,,.Q1
200,,.Q2
200,,DD
200,,[207550000000]
100,,[000000000004]
777772,,0
%16M: 200,,.Q0
200,,.Q1
200,,.Q2
100,,.Q3
200,,[207550000000]
100,,.Q5
777772,,0
%15M: 200,,.Q0
200,,.Q1
200,,.Q2
200,,.Q3
200,,[207550000000]
100,,[777777777777]
777775,,0
%10M: 100,,[000000000000]
200,,[200400000000]
100,,[777777777775]
777775,,0
%9M: 100,,[000000000000]
200,,.Q0
100,,[777777777775]
777776,,0
%7M: 100,,ERRFND
200,,STEPS
SUBTTL THE END
END