Das Zeichnen von Bildern auf den Schneider CPCs war bislang eine mühselige Sache. Neben dem Wissenum die grafischen Daten des Computers mußte man auch einen guten Schuß künstlerischen Talents besitzen. Unser Listing des Monats »Happy-Painter« erlaubt es Ihnen, auch ohne detaillierte Systemkenntnisse, erstklassige Bilder zu zeichnen.
An Malprogrammen für die Schneider-CPCs herrscht kein Mangel. Gute Programme, die sowohl schnell als auch benutzerfreundlich arbeiten, sind jedoch selten und teuer. Wir bieten Ihnen in dieser Ausgabe als Listing des Monats »Happy Painter« an, das alle positiven Eigenschaften eines Zeichenprogramms in sich vereint. Es ist sehr schnell, durch seine vielfältigen Funktionen und die komfortable Bedienung äußerst anwendungsfreundlich und arbeitet problemlos auf allen CPC-Modellen. So schneidet Happy-Painter auch beim Vergleich mit professionellen Malprogrammen hervorragend ab.
Happy Pointer besteht aus drei Programmteilen. Listing 1 zeigt als ersten Teil das Basic-Programm, das gleichzeitig den Hauptteil von Happy Pointer darstellt. Die RSX-Befehlserweiterung GRAPHEXTBIN sorgt für die hohe Geschwindigkeit der Bildverarbeitung, da hier zeitkritische Routinen in Maschinensprache geschrieben wurden. Der Programmteil ist in Listing 2 als DATA Lader abgedruckt und erzeugt nach dem Start automatisch die Datei GRAPHEXT.BIN. Die Grafikdaten (Icons), die für die grafische Benutzeroberfläche notwendig sind, stellt die Datei ICONS.BIN zur Verfügung. Auch dieser Programmteil besteht aus einem DATA Lader (Listing 3). CPC-Besitzer, die Happy Pointer auf Kassette speichern möchten, müssen die einzelnen Programmteile in der genannten Reihenfolge auf Band speichern. Wenn der Basic-Teil geladen wurde, drückt man nicht die Stoptaste, sondern startet das Programm mit»RUN«. Die beiden Binärdateien werden automatisch nachgeladen.
Nach dem Titelbild von Happy-Painter erscheint das Hauptmenü (siehe Bild, Seite 60), das die einzelnen Funktionen sehr übersichtlich anzeigt. Happy Pointer wird komplett über Joystick gesteuert. Wünschen Sie eine bestimmte Funktion, so müssen Sie den kleinen Pfeil (Zeiger) mit dem entsprechenden Feld zur Deckung bringen. Die Funktion wird ausgewählt (angeklickt), indem der Feuerknopf des Joysticks betätigt wird. Nur Dateinamen und Bildtexte müssen Sie über die Tastatur eingeben.
Das rechte Fenster des Menüs ist für grundlegende Operationen wie Dateiverwaltung und Grundeinstellungen von Arbeitswerten (Modus 0 oder 1, Joystickgeschwindigkeit etc.), zuständig. Außerdem können Sie mit der Funktion »Hardcopy« Bilder auf den Drucker NLQ 401 von Schneider übertragen. Die Hardcopy-Routine wurde aus der Happy-Computer-Ausgabe 6/86, übernommen und kann durch vier Steuerzeichen an andere Drucker angepaßt werden. Mit »Muster« wird ein Untermenü aufgerufen, das die Konstruktion von Mustern nach eigenem Geschmack erlaubt. Diese Muster sind zum Füllen von Flächen und Bildteilen geeignet.
Das linke obere Fenster zeigt an, welche Muster gegenwärtig zur Verfügung stehen. Das momentan eingestellte Muster ist durch einen hellen Rand gekennzeichnet. Darunter befindet sich die Werkzeugbox, die alle verfügbaren Funktionen zum direkten Bearbeiten eines Bildes auflistet. Jede Funktion wird durch ein geschickt gewähltes Symbol repräsentiert, so daß nach kurzer Eingewöhnungszeit die Bedeutung aller Symbole klar ist. Die eingestellte Funktion ist wieder durch einen hellen Rand gekennzeichnet.
In der linken unteren Ecke des Menüs befindet sich ein Fenster, das für Drehungen, Spiegelungen und Verkleinerungen zuständig ist. Anhand des Buchstabens R werden die Bildmanipulationen angezeigt und durch Anklicken ausgewählt. In den acht oberen Feldern sucht man die Art der Drehung und Spiegelung aus, die unteren vier Felder. zeigen die Formen der Verkleinerung an. Rechts daneben liegen die beiden Farbkreuze -für Vordergrundfarbe (PEN) und Hintergrundfarbe (PAPER). Die Nummer des Farbregisters (erster INK-Wert) wird horizontal und der Farbinhalt (zweiter INK-Wert) vertikal eingestellt. Farbregisternummer und Nummer des Farbinhaltes zeigt die Fußzeile an.
Die Save-Funktion erlaubt das Speichern eines Bildschirminhalts mit kurzem Zusatztext auf Kassette oder Diskette. Für das Aufzeichnungsformat steht ein Standardformat und ein speicherplatzsparendes, komprimiertes Format zur Verfügung. Bei Wahl des Standardformats speichert das Programm die Daten mit der Extension PIC, sonst mit der Extension MAL. Direkt vor dem Speichern können Sie noch einen kurzen Begleittext eingeben. Die Load-Funktion liest die gespeicherten Bilder wieder ein. Hier müssen Sie unbedingt die Extension mit angeben.
Die Muster-Funktion ruft ein Untermenü auf, in dem ein neues Muster definiert werden kann. In einem Feld, dessen Größe dem Viertel eines Musters vom Musterblocks entspricht, können Sie einzelne Pixel durch Anklicken setzen und zurücksetzen, »fertig« installiert das neue Muster im Musterblock und »quit« beendet das Untermenü. Über das Feld »Zurück zum Bild« wird die Zeichenfläche aufgerufen. Diese enthält am unteren Rand eine Menüleiste, in der Sie die Muster, Funktionen, sowie Vorder- und Hintergrundfarbe einstellen können, ohne das Hauptmenü aufrufen zu müssen. Über Anklicken des Feldes mit dem nach links weisenden Pfeil-blättert man zurück und über das Feld mit dem nach rechts weisenden Pfeil vorwärts. In dem Feld mit der Vordergrundfarbe können Sie zusätzlich die Strichstärke (breit oder schmal) wählen. Die Strichstärke wird von allen Strichfunktionen; und von der Sprühfunktion berücksichtigt.
Insgesamt sind für den Anwender 16 verschiedene Funktionen zur Bildbearbeitung verfügbar.
Das übersichtliche Hauptmenü von Happy Painter
Nach dem Programmabbruch wird ein Warmsta durch gleichzeitiges Drücken der < CTRL > - und < ENTER > Taste ausgelöst.
Die Beschreibung der Fähigkeiten von Happy Painter ist knapp, aber ausreichend. Um mit der Bedienung des Programms voll vertraut zu werden, empfehlen wir Ihnen, mit den Funktionen des Programmes zu experimentieren.
Die Steuerung mit dem Joystick dürfte zu Beginn etwa ungewohnt sein, da der Zeiger beschleunigt. Mit der Zeit tritt jedoch ein Gewöhnungseffekt ein. Zudem können Sie Beschleunigung und Geschwindigkeit des Joysticks über die Joystick-Funktion den eigenen Bedürfnissen anpassen.
Wer mit der Joystick-Steuerung grundsätzlich nicht einverstanden ist, kann von Programmzeile 10010 bis 10230 seine eigene Abfrageroutine einbauen. Die Variablen xb, yb müssen vor Verlassen der Routine die neuen und xalt, yalt die alten Koordinaten des Cursors enthalten. Außerdem muß der Cursor bei Verlassen der Routine auf seiner neuen Position stehen.
Besitzer eines Grünmonitors können bei Bedarf die Belegung der Farbregister in Zeile 8400 ändern.