define	AADR x'1000'	# Basisadresse der Variablen in Bank 1
define	BADR x'1100'	# Basisadresse des Bildes in Bank 1


	subroutine fenstr(auf)
#
# setzt das Bildschirm-Fenster 0 
# - falls auf=true: auf 0,0 bis 29,24 und loescht es
# - falls auf=false: auf 0,0 bis 79,24
#
logical	auf
#
if (auf) write(1,10)
else write(1,20)
10 format(' C  =7')
20 format(' C  o7')
return
end


	subroutine plott
#
# plottet das Bild in Bank 1 links unten auf dem Schirm.
#
# Externe Routine:
# Name		File,Bibliothek
# window	PLOTLIB		initialisiert das Plott-Fenster
# frame 	PLOTLIB		umrandet das Plott-Fenster
# putp		PLOTLIB		setzt einen Plottpunkt
# loadb		BANKLIB		holt ein Byte aus Bank 1
# loadw		BANKLIB		holt zwei Bytes aus Bank 1
#
byte	g,pon
integer	i,k
integer x,y,x1,y1,x2,y2
integer	xanz,yanz
common	/bild/xanz,yanz
data	pon/1/
#
k=AADR+8 ; call loadw(xanz,k)		# Hole Bildgrenzen aus Bank1
k=k+2	 ; call loadw(yanz,k)
#
x1=158-xanz ; y1=0 			# Plotte Fenster
x2=x1+xanz+1 ; y2=y1+yanz+1
call window(x1,y1,x2,y2) ; call frame
do y=1,yanz				# und Bild
[	i=yanz-y+1
	do x=1,xanz
	[	k=BADR+(x-1)*yanz+y-1
		call loadb(g,k)
		if (g==0) call putp(x,i,pon)
]	]
return
end


	subroutine mark(tx,ty,ux,uy)
#
# markiert die Strecke tu als Bandlinien-Element.
#
# Externe Routine:
# Name		File,Bibliothek
# vector	PLOTLIB		plottet eine Strecke
#
byte	gw		# Markierungs-Grauwert
integer	tx,ty,ux,uy
#
data	gw/0/
#
call vector(tx,ty,ux,uy,gw)
return
end
