Topic : The GFA-Basic Compendium Author : GFA Systemtechnik GmbH Version : GFABasic.HYP v2.98 (12/31/2023) Subject : Documentation/Programming Nodes : 899 Index Size : 28056 HCP-Version : 3 Compiled on : Atari @charset : atarist @lang : @default : Document not found @help : Help @options : +g -i -s +z @width : 75 @hostname : STRNGSRV @hostname : CAB @hostname : HIGHWIRE @hostname : THING View Ref-FileYou can find a listing of the shell on your disk. In the listing you can set the parameters described in the previous section. You will find the following lines in the first part of the listing: gfaints$="GFABASIC.PRG" gfacom$="GFA_BCOM.PRG" gfalnk$="GL.PRG" These define the names of the interpreter, compiler, and linker and can, of course, be altered. The parameters G3OBJ, G3PRG, and G3LIB take their default values from the following lines: tobj$="G3OBJ=TEST.O" tprg$="G3PRG=TEST.PRG" tlib$="G3LIB=GFA3BLIB" The parameters G3WAIT and G3MOVE get their values from these lines in the shell listing: t_wait$="G3WAIT=ON" t_move$="G3MOVE=ON" You can enable these options by deleting the underscore character in the variable name. The lines: coi&=0 ! No I cos&=3 ! S& and S< cof&=0 ! F< cod&=0 ! No %3 com&=0 ! No *& coe&=0 ! No E cop&=0 ! No P> dbsym&=0 ! No -s auto&=0 ! not xxx.prg from xxx.gfa define the the default compiler and linker options. The line INLINE irq%,&HD6 contains an interrupt routine which during compilation displays the number of the currently compiled line. Should you wish to save the shell as a LST file, the INLINE section needs to be saved separately (go to INLINE line, press Help and save. See a full explanation of INLINE in the Basic Interpreter manual). The following line: {irq%+2}=V:a& declares a 16-bit variable to be displayed in the interrupt. The lines: BYTE{irq%+6}=32+35 BYTE{irq%+7}=32+10 define column 35 as the X position for the text output of the interrupt routine and column 10 as the Y position. When examining the shell program on the disk, you may notice that no redraw routine has been implemented. This makes the program shorter and saves memory space (shells ought to be small). The primary reason for this, however, is to keep visible the screen contents left behind by a program which has just been run by the menu item "Test".