Extended Plot

Ein vergrößerter Grafikschirm unter Turbo-Basic XL

Dieses Hilfsprogramm ermöglicht es, mehr Punkte als bisher auf dem Atari darzustellen. In GRAPHICS 8 stehen dann 320 x 239 Punkte zur Verfügung. GRAPHICS 15 hat nun eine Auflösung von 160 x 239 Punkten.

Benutzung des Utilitys unter Turbo-Basic XL:

Um GRAPHICS 8+ einzuschalten:
’GRAPHICS 24 : EXEC EXTEND’. Um GRAPHICS 15+ einzuschalten:
’GRAPHICS 31 : EXEC EXTEND’.

Der DRAWTO-Befehl kann nur die Y-Koordinaten 0 bis 191 bearbeiten. Der PLOT-Befehl lautet nun: ’X = [XKoord] : Y = [YKoord] : EXEC PLOT’. Für die Begriffe in eckigen Klammern sind die entsprechenden Zahlenwerte einzusetzen.

Die Grafikzeilen 192 bis 238 lassen sich nur über den neuen PLOT-Befehl bearbeiten. Da je nach Y-Koordinate der Bildschirmanfang verschoben wird, kann es vorkommen, daß der DRAWTO-Befehl durcheinandergerät. Deshalb nach Alternativen suchen. Listing 1 ist die eigentliche Generator-Routine. Hier wird der vergrößerte Grafikschirm erzeugt. Listing 2 und 3 sind Demo-Programme.

Gehen Sie bei der Eingabe folgendermaßen vor: Laden Sie Turbo-Basic XL, dann schalten Sie wie gewohnt mit *L— die Tabulierung aus. Aktivieren Sie ”PS” über BLOAD. Geben Sie Listing 1 ein und speichern Sie es mit »LIST”D:EXTEND.LST”« ab. Geben Sie dann Listing 2 ein. Abspeichern mit SAVE”D:BEISP1.TBS”. Listing 3 bekommt dementsprechend den Namen BEISP2.TBS. Nach Beendigung des Speichervorganges deaktivieren Sie ”PS”. Laden Sie nun Listing 2 von Disk. Geben Sie ENTER”D:EXTEND.LST” ein. Dann können Sie mit RUN starten. Listing 3 wird ebenso gestartet. Laden Sie fürjedes eigene Programm, das den erweiterten Grafikschirm benutzen soll, die Routine ”EXTEND.LST” mit Hilfe des ENTER-Befehls hinzu.

Listing 1: Grundroutine

	11000 PROC EXTEND
	11010 POKE 559,%0:DA=$9150:DL=DA+250*40
	11020 PW=15-(PEEK(87)=15)
	11030 DPOKE 88,DA:CLS #6
	11040 DPOKE 560,DL
	11050 POKE DL,64+PW:DPOKE DL+%l,DA
	11060 FOR I=DL+%3 TO I+95:POKE I,PW:NEXT I
	11070 POKE DL+96,64+PW:DPOKE DL+97,DA+ 94*40
	11080 FOR I=DL+99 TO DL+195:POKE I,PW: NEXT I
	11090 POKE DL+196,64+PW:DPOKE DL+197,D A+197*40
	11100 FOR I=DL+199 TO DL+244:POKE I,PW :NEXT I:POKE I,65:POKE 559,34
	11110 ENDPROC
	11150 --
	11200 PROC PLOT
	11210 IF Y>191:DPOKE 88,DA+197*40:ELSE :DPOKE 88,DA:ENDIF
	11220 PLOT X,Y-192*(Y>191)
	11230 ENDPROC

Listing 2: Demo "Sternrad”

	10 GRAPHICS 15+16:TRAP 130:EXEC EXTEND
	20 DEG :FOR R=59 TO 5 STEP -5
	30 FOR W=0 TO 360 STEP 10
	40 C=C+1:IF C=4 THEN C=1
	50 COLOR C:X=79+C0S(W)*R:Y=119+SIN(W)*R*2:EXEC PLOT:NEXT U
	60 NEXT R
	70 DO :POKE 710,PEEK(20):POKE 708,255-PEEK(20):POKE 709,PEEK(53770):LOOP
	130 ? " EXTEND-UTILITY nicht vorhanden!":? "Bitte mit ENTER ’D:EXTEND.LST’ laden.":END
	

Listing 3: Demo

	10 GRAPHICS 15+16:EXEC EXTEND
	11 C=0
	20 FOR X=0 TO 159:Q=INT(20*SIN(X/15)):R=SGN(Q):FOR P=1 TO Q STEP R
	25 C=C+1:IF C=4 THEN C=0
	30 COLOR C:Y=INT(100*SIN(X/15))+P+120
	40 EXEC PLOT:NEXT P
	50 NEXT X
	70 DO :POKE 710,PEEK(20):POKE 708,255-PEEK(20):POKE 709,PEEK(53770):LOOP

Sascha Hatjiefthimou
Aus: Atari-Magazin 01 / 1988, Seite

Links

Copyright-Bestimmungen: siehe Über diese Seite