Tips und Tricks für GFA-Programmierer

Angepaßter Drucker

Ausgaben auf den Drucker steht oftmals das leidige Problem der korrekten Anpassung entgegen. So müssen Sie für Funktionen, wie Fett-, Kursiv- oder Zweizeilendruck immer besondere Steuercodes vorausschicken. Das nachfolgende Listing bietet ein Grundgerüst für eine einfache Druckeranpassung. Damit legen Sie beispielsweise eine Steuersequenz auf ein Zeichen oder ersetzen einen Buchstaben durch einen anderen. In unserem Listing verwenden wir die Steuercodes der NEC-Drucker.

(Sandro Lucifora / Lars van Straelen / ah)

Aus eins mach zwei

Mittlerweile hat GEM in umfangreichem Ausmaß einen festen Platz bei Programmen eingenommen. Die oftmals benötigte Resource-Datei entwicklen Sie bekanntlich mit einem Resource Construction Set. jedoch darf diese Datei eine Länge von 64 KByte nicht überschreiten. Durch die wachsende Anzahl an Zusatzfunktionen und die erreichte Icon-Vielfalt stößt ein Programmierer manchmal an diese Grenze. Einen Ausweg bietet das Laden und Verwenden zweier oder mehrerer Resourcen. Das Problem hierbei liegt darin, daß das Betriebssystem auf diesen Fall nicht vorbereitet ist, Es lädt Resourcen an eine bestimmte Adresse, die später ausschlaggebend für fehlerfreie Nutzung ist. Unser Listing in GfA-Basic bietet einen Rahmen, mit dem dieses Problem umgangen wird. Zunächst sind zwei Puffer zu dimensionieren, deren Größe abhängig von Ihrem Bedarf ist. Wir ermitteln die Anfangsadresse der Puffer, legen die Länge der Resourcen fest, laden die erste Datei in den Speicher und holen die Adresse des ersten Objekts. Damit wir beim Laden der zweiten Resource-Datei die erste nicht gleich wieder überschreiben, sichern wir diese in dem zuvor angelegten Puffer. Derselbe Vorgang geschieht auch mit weiteren Resource-Dateien. Die DO ... LOOP-Schleife kopiert vor Ausgabe der Objekte zunächst den Pufferinhalt an die Originaladresse, an der das Programm die Resource erwartet (MENU(-1)).

(Sandro Lucifora/Lars van Straelen/ah)

Kompatibilität vorprogrammiert

Seit Erscheinendes TT verzichten viele Programmierer aus Kompatibilitätsgründen auf die Verwendung von Line-A-Funktionen. Der GfA-Befehl RC_COPY() gehört zu denjenigen, die nicht ohne Line-A auskommen. Im Listing finden Sie ist eine neue RC_COPY-Prozedur, die der des GfA-BASIC ähnlich ist, jedoch keine Line-Routinen benutzt. Die Übergabeparameter entsprechen exakt den Beschreibungen zur Originalroutine.

(Sandro Lucifora / Lars van Straelen / ah)



Aus: TOS 03 / 1992, Seite

Links

Copyright-Bestimmungen: siehe Über diese Seite