
 .TITLE PLOTPAC      /FORTRAN PLOT PACKAGE
 .GLOBL PINIT,.DA,PCLS,PLOT
/
TSF=700401
TCF=700402
TLS=700406
ION=700042
IOF=700002
/
/   CALL SEQUENCE:
/      CALL PINIT(n)
/      CALL PLOT(IY,N,i)
/      CALL PCLS(n)
/
/ Where n = 0 for no erase
/                 1 for erase graphics
/                 2 for erase alphanumerics
/                 3 for 1 & 2
/
/              IY = array name
/              N = # of elements in IY 
/              i = 0 for normal dot
/                   1 for blink dot
/                   2 for blank dot
/                   3 for start/stop
/              add 4 to interpolate to right
/
 .EJECT
PINIT 0
 JMS GTARG     /GET ONE ARGUMENT
 LAC* I
 AND (2
 SZA
 JMS CS       /CLEAR SCREEN
 LAC (6      / ^F
 JMS PRNT
 LAC (26       / ^V
 JMS PRNT      /GRAPHICS MODE ENTERED
 LAC* I
 AND (1
 SZA
 JMS CG        /CLEAR GRAPHICS
 ION
 JMP* PINIT
/
PCLS 0
 JMS GTARG
 AND (1
 SZA
 JMS CG
 LAC (7
 JMS PRNT
 LAC* I
 AND (2
 SZA
 JMS CS
 ION
 JMP* PCLS
/
PLOT 0
 JMS .DA
 JMP .+3+1
A         /ARRAY POINTER
N         / # OF ELEMENTS
M         /PLOT MODE
/
 IOF
 LAC* M
 TCA
 DAC NW
 LAC A
 DAC YPT    /Y VALUE POINTER
PLTLP LAC* YPT
 AND (77
 XOR (100
 JMS PRNT
 LAC Y
 AND 300
 RTR
 RTR
 RTR
 DAC Y
 LAC* M
 AND (7
 RTL
 XOR Y
 XOR (140
 JMS PRNT
 ISZ YPT
 ISZ NW
 JMP PLTLP
 ION
 JMP* PLOT
NW
YPT
Y
/
PRNT 0
 TLS
 TSF
 JMP .-1
 TCF
 JMP* PRNT
/
GTARG 0
 JMS* .DA
 JMP .+1+1
I 0
/
 IOF
 JMS* GTARG
/
CS 0   /CLEAR ALPHANUMERICS
 LAC (24
 JMS PRNT
 JMP* CS
/
CG 0
 LAC (10
 JMS PRNT
 JMP* CG
/
 .END
