GFA-BASIC Compiler  Version 3.6  Revision 12
GFA-BASIC Linker    Version 3.6  Revision 08


Released Sep 27, 2006
Modifications by Lonny Pursell
http:\\www.bright.net\~gfabasic\


This package contains updated binary releases.  Due to the serious nature
of some of these bugs, simply patching them just wasn't possible anymore.
They have been fully dis-assembled and repaired/recoded and re-assembled from
the ground up.  Some of these corrections are based on some older patches,
namely the Deep Sleep patch (aka GFA-Patch v1.07).  Deep Sleep was
contacted, promised me the source code to their patches, but what seems to be
typical when it comes to GFA matters, they did NOT deliver the goods.  That is
when more extensive research was put into the problems, and the repairs have
mutated into something I feel is far more than just a clone of the old
GFA-Patch.


Also you will noticed that there are no extra copyrights or other
messages displayed.  I do not claim to have written this software, only that
I have spent the time to recode portions of it.  The idea is to make minimal
changes, that is, only what is required to solve the problems.


These binaries can be used with the following libraries:
  The library in this archive
  GFA-Patch library
  RUN! Software library
  LicomLIB is not supported!  You have been warned!!


Note: The old binaries automatically appended extenders.  This caused nothing
but problems under MiNT and so this behavior has been removed.  The path that
is passed will be used 'as is'.


If you have a problem with this software, please contact me.  I cannot fix
what I do not know about.  :o)


------------------------------------------------------------------------------


GFA-BASIC Compiler release notes:

r12
  Program exit code is now a standard MiNT error code
    Disk full error code (-1) changed to -91
    Not enough memory error code (-8) changed to -39
    File type/format error code (-100) changed to -26

r11
  $X with FUNCTIONs (with no parameters) sometimes added a stack correction
    Incorrectly tested a filler byte (one token to far) at the end of the line
    If the routine was called enough, it would eventually crash

r10
  $X with VAR parameters calculated the wrong amount of stack correction
    If VAR was used the calculation was always too small
    Caused the stack space to be slowly eaten away
    If the routine was called enough, it would eventually crash
  $X with FUNCTIONs (with parameters) produced no stack correction at all
    Caused the stack space to be eaten away even faster
  Norwegian/NO translation added

r9
  GRAF_MKSTATE() bug fixed
    GRAF_MKSTATE() with no parameters whatsoever was fatal
  DIM bug fixed
    A line such as DIM (1,2,3,4,5,6,7,8) was fatal
    This will now generate a logical error message
  MAT INPUT bug fixed
    A line such as MAT INPUT x() was fatal
    This will cause input to be accepted on the console as expected
  MAT DET/QDET/RANG bug fixed
    A line such as MAT DET a(1,1),float was fatal
  Crashes related to undefined functions within structure commands fixed
    A line such as IF @my_func(params)=0 could be fatal, but not always
    It will now halt at the first undefined function
  MSHRINK() always failed (returned error code -40)
    This command now works as it should
  Slightly cleaner start up code in the compiled application (NOP replaced)
    The NOP caused a weird problem with MagicPC + JIT compiler enabled  (Ingo)
  ILLEGAL instructions in various parts of the code replaced
    Should any of these errors occur it will report the error and exit cleanly
  Header flags are preset to use fastram if you have it
    This actually speeds up the compile process
  Recompiled with Devpac's optimizations enabled

r8
  Added a new real time line counter option
    The old interrupt method is still in place, but should be avoided
      Would crashed sometimes on my 060 with MiNT, as it was rather unstable
    The new counter is only available via GBE (v1.4 and up)

r7
  Pdomain() call added for better long file name support

r6
  Swedish/SE an Slovenian/SI translations added

r5
  French/FR translation added

r4
  German/DE translation added

r3
  Typos and incorrect wording in text strings corrected
    It would appear nobody at GFA did any proof reading  ;o)

r2
  Crash under MagiC (and MagiC-PC/Magic-Mac) fixed
    MCB was destroyed, thew out the DeepSleep fix, reworked the statup code

r1
  Double extender bug fixed (*.gfa.gfa)
    This occured on certain file systems, mostly those that support long names
  File names default to lower case
    All the default file names stored in the binary are now lower case

r0
  Disassembly started with the English/US version
    A binary match was established


------------------------------------------------------------------------------


GFA-BASIC Linker release notes:

r8
  Program exit code is now a standard MiNT error code
    Disk full error code (-1) changed to -91
    Fatal error code (-2) changed to -12

r7
  Norwegian/NO translation added

r6
  ILLEGAL instructions in various parts of the code replaced
    See compiler notes, same changes made
  Header flags are preset to use fastram if you have it
    See compiler notes, same changes made
  Recompiled with Devpac's optimizations enabled

r5
  Libraries with extenders didn't work (*.lib)
    It will now properly handle libraries such as 'custom.lib'

r4
  Failure under MagiC corrected (gemdos error)
    This was related to how the linker determines file sizes
  Swedish/SE an Slovenian/SI translations added

r3
  French/FR translation added

r2
  German/DE translation added

r1
  Double extender bug fixed (*.o.o)
    This only occured if linking additional object files into a project
    See compiler notes, same exact problem
  File names default to lower case
    See compiler notes, same changes made

r0
  Disassembly started with the English/US version
    A binary match was established


------------------------------------------------------------------------------


Helped with translations:
    English: lp
     German: Curly and rtc
     French: kellis and MystikShadows
    Swedish: PeP and GokMasE
  Slovenian: SWE and Curly
  Norwegian: ozk


eof
