Über GFA-Basic |
GFA-Basic war einmal eine gute und effiziente Programmiersprache. Aber dann verschwand der Hersteller GFA Software Technologies ohne irgend einen Kommentar von der Bildfläche und ließ seine Nutzer im Regen stehen.
Ich selbst sah mich noch eine Weile in der Verantwortung, weil ich GFA-Basic als Einstiegssprache in meinen Artikeln empfohlen hatte.
Aber nun muß ich auch Einsteigern von GFA-Basic abraten. Der Interpreter läuft zwar klaglos, aber die erzeugten Programme (EXE-Dateien) lassen sich nicht mehr unter Windows XP starten. Verantwortlich dafür ist die benötigten Runtime-DLL GFARUN10.DLL. Es wäre eine winzige Korrektur nötig, die ihr Schöpfer Frank Ostrowski aber nicht vornimmt. Schade, das war's.
GFA-Basic für Windows, 1000-Zeilen-Version (GFAWIN.ZIP 840KB)
Sammlung von Beispiellistings für Einsteiger herunterladen (GFAWINLS.ZIP 590KB)
In win98 when a "interpiled" EXE is initiated, the GFARUN10.DLL makes a call to the 9X's kernel function InitTask() and depending of the result in AX register an exit from application is made. When we are in Win98 such exit from application is never made, but in WindowsXP "animal" a wrong AX value is returned and the "interpiled" application always ends. The only necessary thing should be to bypass the IniTask() call because in XP the call is made to the midle of the function GetConsoleDisplaymode() so the application does'nt abort. In other words: The entire InitTask() function should be ignored (not called). Remember: The GFARUN10 call points to the midle of XP's Kernel function GetConsoleDisplaymode(), that does a completely diferent task than 9X's IniTask(). |