09 April 2011

Status of GFA-BASIC 32

It has been a while, but I certainly didn't give up on GFA-BASIC 32. In fact, I've done some fundamental research this winter to figure out a (new) direction for GFA-BASIC 32.

COM is a must
Each new Windows OS provides more COM based interfaces, rather than new DLL function APIs. A modern language must support the use of COM interfaces, and I've done a lot of research in that area. The first step in the process should be the use of non-ActiveX COM libraries. This requires adding COM references to a GFA-BASIC 32 project. Once this is completed, the language should have the ability to provide COM classes as well. So, in the next stage, GFA-BASIC 32 must support object-oriented structures like VB's Class/End Class. Finally, research must be done to evaluate the opportunity to add third party ActiveX controls.

Maintaining GFA-BASIC
This is not the only thing that is on my mind. I often get questions or receive bug reports that require a lot of time to investigate. I only have a heavily commented disassembly, I still don't understand all of it. Once I found a bug or improvement it needs to be implemented. Well, patching is an art in itself and often can be done in multiple ways. Sometimes I need to acquaint myself with entirely new ways of hacking. This costs too much time, so I need to figure out how to proceed with that. My first priority is to implement COM support.

Assemble in GFA-BASIC?
But, only recently (!) I realized I could maybe copy the disassembly to GFA-BASIC 32 and use GFA-BASIC's assembler to re-create the executable (GfaWin32,exe). I made some trials and it might actually work! That would mean I could edit the (assembly) code of the IDE directly inside GFA and then recompile (F5). Wow, maybe I give this my number one priority ...

Next blog entry
One of the questions I received contained a statement I wasn't familiar with. The code contained a declaration of an array of type "Pointer To Int". I had no idea what that meant. Do you? If not check out the next blog.


  1. I would like to start with saying thank you. Of late I've been playing with writing os software in asm. My windows programming has mostly just been some Delphi and a bit of Visual Basic stuff at work. I needed to do some windows stuff for a new project I'm working on and happened on your site. I played with GFA Basic on the Atari and Amiga. Thanks for keeping a great toy alive.

  2. Anonymous13/4/11

    To have COM support is a great extention!
    To hae this will expand the capabilities enormously.
    Is there a time line?

  3. Anonymous8/6/11

    Pointer to Int ...
    Heh ,how is posible that you dont know what that

  4. Heh, it says 'an array of type "Pointer To Int"'


  5. Anonymous9/8/11

    Please, Steve... it's not more of a toy than the 1040ST ever was. Most of the 68000 machines were superior to the Intel boxes of the time.

  6. Anonymous22/2/18

    Hey Guys! I loved GFA-Basic! Is there a way to set the ocx/control properties on the Form Editor? I tried, but does not work. I'm missing something? Thank you so much!