Version 2.92.1 (July 20, 2026)
  - Bugfix in replace$


Version 2.92.0 (July 19, 2026)
  - New function 'replace$' to replace substrings within a sring
  - New peeks 'screenposx' and y to get cursor position


Version 2.94.0 (July 19, 2026)
  - New function 'replace$' to replace substrings within a sring
  - New peeks 'screenposx' and y to get cursor position


Version 2.91.4 (August 31, 2025)
  - Fixed compile-warnings for missing prototypes
  - Some minor updates in toolchain


Version 2.91.3 (June 14, 2025)
  - Fixed a bug with 'print reverse' under windows.
  - Documentation


Version 2.91.2 (March 23, 2025)
  - New peeks 'displayheight' and 'displaywidth'
    to get the resolution of your monitor.
  - Fix for option '--docu'


Version 2.91.1 (January 24, 2025)
  - New pokes 'console_foreground_color' and 'console_background_color'
    to set the default fore- and background color for the console.
  - The input-statement now supports the clauses at() and color().


Version 2.91.0 (January 7, 2025)
  - New poke 'console_foreground_intensity' to change (once perrun)
    the intensity of colored text printed with yabasic.
  - New function string$ to multiply a string.


Version 2.90.5 (November 11, 2024)
  - Fixed a bug related with 'inkey$'.
  - For Windows: Needed to switch to a new version of Visual Studio.
    unfortunately, this breaks compatibility with Windows XP; however
    older versions of yabasic are still provided for download.


Version 2.90.4 (September 17, 2023)
  - Fixed a bug related with 'print using' under windows.
    Thanx to Paul Shutler for reporting this !


Version 2.90.3 (February 26, 2023)
  - Introductory sections about subroutines and libraries
  - Updated the docu from docbook 4.5 to 5


Version 2.90.2 (January 6, 2022)
  - Fixed precision error for print using under windows
  - Better error-reporting for an edge case of short-if
  - Allow '==' to check for equality and '!=' for inequality ('=' and '<>' still work)


Version 2.90.1 (July 11, 2021)
  - Repaired the docu (especially yabasic.htm)
  - Removed references to the old documentation (still available on github)


Version 2.90.0 (July 10, 2021)
  - Fixed an error with local variables
  - Moved to a new building-environment (see github and there README.org for details)


Version 2.89.1 (January 30, 2021)
  - Fixes for documentation


Version 2.89.0 (December 29, 2020)
  - Fixed for Problem with system-command after clear screen on MacOS
  - Added functions eval and eval$


Version 2.87.1 (November 07, 2020)
  - Fixed for libffi on 32 bit systems
  - Updated included header files (windows) of ffi from libffi 3.3


Version 2.87.0 (August 12, 2020)
  - Fixed an edge-case in for-loops
  - Allow eof(0) and peek(0) to refer to standard input


Version 2.86.9 (June 6, 2020)
  - Fix formatting of larger numbers with '####' et.al.


Version 2.86.8 (May 9, 2020)
  - Bringing pkg.m4 with us to ease build process


Version 2.86.7 (April 4, 2020)
  - Using pkg-config (if available) to locate libffi


Version 2.86.6 (March 8, 2020)
  - Advancing version for technical reasons


Version 2.86.5 (March 8, 2020)
  - Fix double backslash in string before quote


Version 2.86.4 (January 1, 2020)
  - Fix for do-loop / continue


Version 2.86.3 (December 15, 2019)
  - Fix for heap overflow found with honggfuzz


Version 2.86.2 (December 12, 2019)
  - Another fix for heap-buffer-offerflow found with address sanitizer


Version 2.86.1 (December 8, 2019)
  - Fix for heap-buffer-offerflow


Version 2.86.0 (November 28, 2019)
  - Added new functions bitnot
  - Fixes for bit-arithmetic (signes/unsigned)


Version 2.85.0 (November 16, 2019)
  - Added new functions shl, shr and round
  - Introduced binary literals preceeded by 0b
  - Fixes for hex literals
  - The error-command no longer adds a line number


Version 2.84.3 (November 3, 2019)
  - Better debugging for library path
  - Clean builds for Windows setup-program


Version 2.84.2 (October 6, 2019)
  - Fixed some potential stackoverflows
  - Removed empty dir related with nano
  - Tests with tmux only within the Rakefile


Version 2.84.1 (July 20, 2019)
  - Make unload_library after call the default for foreign_functions
  - Fixes to docu
  - Requiring libffi for build (unless specified other by configure-option)
  - explicit error no longer unwinds call-stack


Version 2.84.0 (July 12, 2019)
  - New command foreign_buffer_set_buffer


Version 2.83.3 (June 30, 2019)
  - Documentation


Version 2.83.2 (June 30, 2019)
  - Allow specifying null-pointer for foreign functions


Version 2.83.1 (June 26, 2019)
  - Fix for line-numbers in errors after import
  - Updating the manual


Version 2.83.0 (April 29, 2019)
  - Unix: Added a syntax-file for the nano-editor;
    contributed by Stephan Muesse
  - Made parentheses around condition in while and until optional
  - Better error messages on misaligned control structures
  - New family of functions and commands foreign_* to invoke functions
    from external c-libraries
  - Fixes for line-numbers in error messages
  - Revised and updated the documentation


Version 2.82.1 (March 11, 2019)
  - Allowing comments after import statement
  - Fixes regarding error messages


Version 2.82.0 (February 17, 2019)
  - Advanced version of autoconf and other tools
  - Fix in tests
  - Fixed nested import of libraries
  - Libraries can now be found in the directory of the main file too
  - Error messages try to show and mark the offending part of the code
  - Hexadecimal numerical literals are supported, e.g. print 0xff


Version 2.81.4 (January 27, 2019)
  - Fixed error with inkey$ and clear screen
  - Fixed fatal error with inkey$ and upper case letters


Version 2.81.3 (January 13, 2019)
  - Fixed a compile-problem on macos
  - Corrected a rendering problem on www.yabasic.de, which had cut off the
    bottom-lines of many pages


Version 2.81.2 (January 2, 2019)
  - Fixed a problem under netbsd, which prevented yabasic from finding
    its own executable
  - Fix on macos for curses-initialization e.g. during "clear screen"
  - Fix that allows libraries to start with a comment introduced by 
    a hash or a single quote
  - Made the prior "Guide into the guts" available again as "Some
    remarks on changing Yabasic"; see www.yabasic.de
  - Document options for unix and windows in the same chapter


Version 2.81.1 (November 1, 2018)
  - Fix: Allow yabasic to run from within a script


Version 2.81.0 (October 27, 2018)
  - New function chomp$
  - Added new peek "interpreter_path"
  - Fixed a sporadic issue with bound programs


Version 2.80.0 (September 8, 2018)
  - Added functions floor() and ceil()
  - Checking for function clock_gettime during configure


Version 2.79.2 (May 13, 2018)
  - No changes over 2.79.1
  - Advanced patchlevel to get in line with tagging again


Version 2.79.1 (May 1, 2018)
  - Fixed error related with yydebug


Version 2.79.0 (April 21, 2018)
  - Introduced new peeks "secondsrunning" and "millisrunning"
  - Bugfixes regarding the switch statement


Version 2.78.5 (April 3, 2018)
  - Within a bound yabasic-programs the name is correctly set (as returned by peeking "program_name")
  - Introduced new string-peeks "program_name" and "program_file_name"
  - Bugfixes regarding bound programs and libraries


Version 2.78.4 (March 21, 2018)
  - Fixed a problem with bound yabasic-programs, that include more than three libraries
  - Introduced new peek "secondsrunning"


Version 2.78.3 (January 21, 2018)
  - Fixed an up to 4-times performance penalty, that has been introduced
    in a previous version
  - Brought back "Edit" to the windows context menu


Version 2.78.2 (August 27, 2017)
  - The ran()-function is now guaranteed to return 2**30
    different values


Version 2.78.1 (August 13, 2017)
  - No more dump when using color without window open
  - Processing of yabasic.xml finds hellip-entity


Version 2.78.0 (January 21, 2017)
  - Allowed for numeric argument after break
  - Fixed format of manpage
  - Reworked the switch-statement, added tests


Version 2.77.3 (December 29, 2016)
  - Fixed insecure usage of strcpy
  - Better logging for windows installer
  - Spelling corrections


Version 2.77.2 (December 17, 2016)
  - Fixes for coloured text under windows
  - msvcr140.dll is no longer required under Windows
  - Several spelling corrections
  - Updated and fixed man-page under linux


Version 2.77.1 (September 7, 2016)
  - New poke "random_seed" to initialize random number generator
  - Bugfixes and additions to documentation
  - Yabasic is now covered by the MIT License
  - Switched to semantic Versioning (e.g. 2.77.1 instead of 2.771)
  - Adopted a development workflow based on git and github


Version 2.764 (January 22, 2014)
  - Added support for later versions of ncurses and 64 bit Systems
  - Avoided forks for inkey$


Version 2.763 (September 19, 2005)
  - Tiny fix in the documentation: Sections now have
    their own toc again.


Version 2.762 (September 16, 2005)
  - Swapped the precedence of unary minus and exponentiation to
    follow the mainstream of programming languages. Suggested
    by Mike Hoffman.
  - Fixed a bug with drawing the outline of a triangle.
  - Lots bugs and typos fixed in the docu. Thanx to A. Costa !
  - rinstr() is okay again.
  - system$() may not dump any longer, if an external command returns no output.
  - Some improvements for compiling on FreeBSD.
  - Made the text-command working again.
  - Maybe yabasic does not leak resources under Windows 95 any longer.
  - Some fixes related with the console window under Windows
  - Added a list of reserved words to the documentation.
  - Special thanks to Derek and Mike Huffmann !


Version 2.76 (April 25, 2005)
  - Some major improvements for grafics
  - Full color support !
  - Different fonts for the text-command
  - The new command triangle


Version 2.75 (May 19, 2004)
  - Yabasic finally has an Icon under Windows
  - The str$()-function, may now format numbers
    like 123,456.56 (or 123.456,56 for german conventions)
  - Changed the system()-function under Windows
    to use the right command-processor
  - Added a list of command, grouped by topics to the
    documentation
  - Yellow is no longer brown under windows
  - Removed a security problem related with printing
    under Unix
  - Programs, that import libraries can now be
    bound, including all the imported libraries


Version 2.740 (January 18, 2003)
  - Implemented the bind-feature
  - More verbose messages on failing open-calls


Version 2.730 (August 19, 2003)
  - Complete rewrite of the documentation
  - Updated my system, which introduced new
    versions of the toolchain (gcc, autoconf, ...)
  - No changes in yabasic itself


Version 2.720
  - Added two argument version of log
  - Changed copyright notice


Version 2.717
  - Bugfix by Tom Ellestad: Better Error-
    checking for import-statement


Version 2.716
  - Bugfix: fixed 'open "foo" for reading as 1'


Version 2.715
  - Bugfix: continue is no longer disturbed by switch
    statements
  - The special option '--' stops option processing


Version 2.714
  - Bigfix: >> if (not open("bad","r")) error "!" <<
    now works as designed


Version 2.713
  - Fixed a memory leak associated with arrays-refs
  - return from within a switch statement is now possible


Version 2.712
  - The new Option '-check' can be used to check for
    compatibility with previous versions of yabasic
  - The instr(a$,b$)-function now returns 0, if
    b$ is the empty string


Version 2.710
  - Improved the short if-statement to be more intuitive
  - Added switch-case statement
  - Better loop-control: break and continue


Version 2.70
  - Allowd hex-escapes in string constants (e.g. "\xa").
  - Better warnings for forgotten endif, endsub or next.
  - Allowed for dumping of stack of subroutine calls.
  - Various bugfixes related with: print using,token$()
    and with printing to mixed streams


Version 2.690
  - implemented logical shortcuts, i.e. conditions within
    if or while statements are only evaluated as far as needed.
  - New form of the open statement: open "foo" for reading as #1
  - New form of the open function: open(a,"foo") intended for use
    in if-statements:
    if (not open(a,"foo")) print "Shit !"
  - The same time an old variant of open within if has gone:
    if (not open a,"foo") print "Shit !"
    is no longer valid.
  - You may now write: print #a "Hello"
  - Finally: there is no distinction between expressions and conditions
    any more, i.e. wihin the condition of an if-statement you may
    now use arbitrary expressions; even something like this:
    if (cos(x)) print "Strange"
  - Fixed a bug with printing under Windows: The screen now scrolls up
    if the cursor has reached the bottom


Version 2.681
  - Finished the work started with 2.680; yabasic can now
    parse its own demo again correctly.


Version 2.680
  - Essentially removed the distinction between expressions
    and conditions, i.e. you may write things like this:
    okay=(1<10) : if (okay) print "Hallo"
    Included the man page with the distribution. Thanx to Dejan Lekic !


Version 2.671
  - Bugfix, yabasic will now build under hpux.


Version 2.670
  - Changed the scheme of version numbers: 2.67 Release 0 is now 2.670
  - Unix only: Used automake to generate Makefile.in. Therefore you now
    have all the standard GNU make targets: make check, make install, make uninstall.

