über mich Startseite Links Programmieren - CodeOptimierung - CodeConventionen - GFA-Basic Atari Hardware- Basteleien Witze Zitate Sprüche Braille Kunst Buch-Tip historisches Impressum |
GFA-BasicÜbersicht:
GFA-Basic und ich [^]Eine der ersten Programmiersprachen, die ich gelernt habe, war GFA-Basic. Das war noch zu meiner Schulzeit und ist schon lange her. Ich selber programmiere schon lange nicht mehr in GFA-Basic. Da es da draußen noch GFA-Basic-Programmierer/-Interessierte gibt, stelle ich hier einige meiner alten Quellcodes zur freien Verfügung. Die Quellcode sind oft nicht besonders vorbildlich und würden sicherlich heute von mir so nicht mehr geschrieben werden. Damals aber wußte ich es nicht besser oder hatte irgendwelche Gründe so vorzugehen. Ich hoffe, daß mein Quellcodes für irgendjemanden von Nutzen sind. Erzeugung der HTML-Seiten Listings [^]Für die Veröffentlichung im WWW habe ich ein einfaches Java-Programm geschrieben, welches GFA-Basic-Listings zu farbigen HTML-Seite umwandelt. Das Programm ist bei weitem nicht komplett. Näheres zu Schwächen und Verbesserungsideen, siehe im Java-Quellcode. GFA-Basic-Optimierungen [^]Wenn du schon mal ein GFA-BASIC Programm geschrieben hast, dann ist es dir, wie jedem Programmierer, bestimmt schon passiert, daß dein Programm nicht mit der gewünschten Geschwindigkeit abläuft. Mir ist das selbe auch immer wieder passiert (vor allem, weil der ATARI-ST ja eh nicht der schnellste ist). Als ich die erste lauffähige Version eines GIF-Kompressors/Dekompressors vollendet hatte, fing ich an systematisch nach Optimierungen zu suchen. Bei meiner Suche stieß ich auf einen Artikel der Computerzeitschrift c't über Optimierungen beim schreiben von GFA-BASIC 2.0 Programmen. Ich habe die dort angegebenen Hinweise getestet und die Hinweise über die Speicherersparnis und den Vorteil globaler Variablen übernommen. Bei den anderen Optimierungen handelt es sich um, durch Tests, festgestellte eigene Erfahrungen (siehe Test-Programm). Meine Untersuchungen beziehen sich alle auf GFA-BASIC 3.0 (bei mir 3.07 D) und den entsprechenden Compiler.(bei mir 3.03 D) Optimierungen:
Die Beschleunigungswerte sind auf einem MEGA-ST2 im Compilat, mit dem weiter unten verlinkten Programm, ermittelt worden. Weitere Optimierungen: MEHR SPEICHER ZUR LAUFZEIT Wenn Du während der Entwicklung deines Programms oft Variablen verwendet hast, die in der endgültigen Version nicht mehr vorkommen, dann solltest du wissen, das diese trotzdem zur Laufzeit des compilierten Programms auch weiterhin Arbeitsspeicher verbrauchen. (obwohl sie nirgends im Programm auftauchen!!!) Lösung: Speichere dein Programm einmal mit Save,A als Listing ab und lade das Programm dann wieder mit Merge. Nun kannst du es wieder mit Save speichern (Programmlänge ist ca. wie vor der ganzen Aktion) Nun steht dir zur Laufzeit mehr Speicher zur Verfügung! Hinweis: Inlines müssen mach dem Merge neu geladen werden! Download des Testprogramms:
Meine "opti_erg.txt" hier als Referenz. Besuchen sie doch meine Seite zu Quellcode Optimierungs-Tips. Dort finden sie allgemeine Tips, die nicht speziell für GFA-Basic sind. Solltest du weiter Optimierungen kennen, schicke sie mir!Fehlende Dateien [^]Einige der Listings benötigen zur Ausführung weitere Dateien. Diese werde ich aber hier nicht veröffentlichen, da sie nicht GFA-Basic-Quellcode sind und ich hier nicht Programme verbreiten will, sonder nur Beispiele für GFA-Basic Quellcodes andern Programmierern zur Verfügung stellen will. Quellcode-Liste [^]
Buchempfehlungen [^]
zurück zur Programmier-Seite des Folkes zurück zur Startseite des Folkes
Stand: 19.05.2008 (Inhaltlich: 19.05.2008) Brief an Folke:(Folke_R@gmx.de) |
Link zu dieser Seite: |
Sie haben eine Internetseite und finden meine Seite gut?
Dann wäre es nett, wenn Sie einen Link zu meiner hinzufügen. Haben Sie eine Seite zum gleichen Thema? Schicken Sie mir eine E-Mail mit der URL (Betreff: 'HOMEPAGE: Link (hier Ihre URL einfügen)'). Vielleicht setze ich einen Link. |
Benachrichtigung über Änderungen dieser Seite: |
Wollen sie informiert werden, wenn sich der Inhalt dieser Seite
ändert? Schicken Sie mir eine E-Mail mit dem Betreff:
'HOMEPAGE: informiere mich (www.rinneberg.de/programming/gfa.htm)'. |
about myself Home links programming - CodeOptimisation - CodeConventions - GFA-basic Atari hardware- modifications jokes quotations patter braille art book-tip history imprint |
GFA-BasicContent:
GFA-Basic and Me [^]GFA-Basic was one of the first programming languages I learned. I was still at school and that is long time ago. I myself did not program in GFA-Basic any more for quite a long time. Out there in the WWW there are still GFA-Basic programmers or interested people, therefore I put some of my old source codes on my web site. The source codes are not of high quality and I would quite sure write them different today. When I wrote them I had few experiences with programming or I had other reasons for my programming style. I hope my source codes are of interest for someone out there. Generation of the Source Code HTML-Sites [^]To publish the source code on the WWW I wrote a simple Java program to generate a syntax highlighted web site out of a GFA-Basic listing. This program is far away from being complete. More informations about weaknesses and improvement ideas for this program can be read in the Java source code. GFA-Basic-Optimisations [^]
If you ever programmed a GFA-basic program, you surely had sometimes the
problem that your program runs not fast enough.
Other optimisations: MORE RAM WHILE THE PROGRAM RUNS If you used variables while the development stages which no longer exist in the final version, you should know that this variables still consume RAM even in the compiled version of your program (seams to be a bug of GFA-basic). Solution: Save your final program with the menu Save,As as a listing and load the program again after restarting the GFA-basic editor with Merge. This way all variables no longer existing in your program are totally removed. Now you can again save the program by using Save. Remark: If you use inlines the content of these got lost while using Save,As. Therefore inlines must be reloaded after the hole procedure. Download of the speed-test-program I used:
My "opti_erg.txt" can be downloaded for comparing here. Visit my page Source Code Optimisation Tips were you find more tips, which are not specially for GFA-Basic. If you know about other optimisations, write me an e-mail.Missing Files [^]Some of the source codes need extra files to be executed. This extra files are not published on this web site because I did not want to publish applications on this site. Only examples for GFA-Basic source codes as examples for other programmers. List Of Source Codes [^]
Book Tips [^]I have no tips for books written in English. The following list contains only books written in German.
back to Folke's programming page back to Folke's homepage
last updated: 19.05.2008 (content: 19.05.2008) e-mail to Folke:(Folke_R@gmx.de) |
Link this web site: |
You have your own web site and like mine?
It would be nice to add a link to mine. If you have similar content on your web page, write me an e-mail with the URL (subject: 'HOMEPAGE: link (insert your URL here)'). I possibly add a link to it on this site. |
Be informed of content changes: |
You want to be informed, if the content of this page
has changed? Then write me an e-mail with the subject:
'HOMEPAGE: remind me (www.rinneberg.de/programming/gfa.htm)' |
Help to improve this web page: |
Because I am no native English speaker, it is likely that there can be made a lot of improvements to my translation. I am very interested in every proposal how to improve the English part of this web page. |