Software-update: QB64 Phoenix Edition 4.3.0

QB64 Phoenix Edition logo (Über)QB64 is een moderne versie van de programmeertaal BASIC. De code wordt gecompileerd naar machinetaal en is daardoor snel en kan er worden gelinkt naar externe C- en C++-programmeerbibliotheken. Het is nagenoeg volledig compatibel met QBasic 4.5 en biedt ondersteuning voor extensies, zoals OpenGL. Nadat Fellippe Heitor drie jaar geleden plotseling bij QB64 vertrok werd het erg stil rondom dit project. Een nieuwe groep ontwikkelaars heeft met QB64 Phoenix Edition echter een doorstart gemaakt. Net als QB64 is QB64 Phoenix Edition opensource, beschikbaar voor Windows, Linux en macOS, en heeft het een goed supportforum. Versie 4.3.0 is uitgekomen en de changelog daarvan kan hieronder worden gevonden.

Enhancements
  • #647, #648, #649, #650, #652 - Implements the $USELIBRARY meta-command and functionality
    • For use of our brand new QB64-PE Libraries Pack add-on.
    • The add-on is optional to ease library usage, but the traditional way of $INCLUDEing libraries still works without changes.
  • #651 - Implements three new IDE editing features
    • Auto-closing of brackets and quotes.
    • Ctrl+D for line/selection block duplication (Edit -> Duplicate lines).
    • Alt+Shift+Up and Alt+Shift+Down to move lines/selection blocks up and down.
    image.png (view on web) Captura.de.Tela.2025-12-03.as.20.57.07.png (view on web)
  • #662 - Implements a feature request to define another EXE output folder, this closes issue #661
    Where is my EXE saved?
    Master behavior determined by IDE config as follows:
    |
    +-> Save EXE to Source Folder?
          |         |
         OFF        ON
          |         |
          |         +-> EXE goes to source folder, except new unsaved code,
          |             which goes to default location (no known source
          |             path yet), hence always save new code before first
          |             compiling to avoid the default location fallback.
          |
          +-> Default EXE location set?     (IDE Run menu > Set Default EXE Folder...)
                |               |
               YES              NO
                |               |
                |               +-> EXE goes to 'qb64pe' folder.
                |
                +-> EXE goes to the user chosen location if existing,
                    else fallback to 'qb64pe' folder. The exist check is
                    performed once at start time, hence a removable USB
                    drive or virtual RAM DISK must be accessible at start
                    of QB64-PE. However, the fallback is temporary, if the
                    user location is accessible at next start, then it is
                    used again.
    
      Command line compiling follows the logic above, except if the '-o'
      option is used, in fact the only method to override this logic.
      A given absolute path here will save the EXE exactly there, any
      relative path assumes _STARTDIR$ as root.
    
      To change the default location from command line use the new switch:
        -s:ExeDefaultDir=<path>   (quotes may be required)
      The path may be absolute or relative assuming _STARTDIR$ as root.
      Note the new location is saved and will be used by the IDE too then.
    
Library Updates
  • #645, #654 - Update and refactoring of various libraries
    • Replaces image_log_error with image_log_warn to reduce unnecessary error-level log output.
    • Reorders image format loading sequence to: stb_image, sg_pcx, qoi, sg_curico, and finally nanosvg.
    • Updates nanosvg, miniaudio, libcurl, FreeType, and clip to their latest versions. These updates include important bug fixes and security patches.
    • Removes obsolete logging code in libqb, now superseded by the recently added logging system.
    • Switches the build to C++20, preparing for upcoming features that will rely on the newer standard.
  • #655 - Further relaxing ALIAS name validation, building on the work introduced in #535
    • The previous update did not account for several critical C++ operators, which are essential for leveraging the underlying C++ compiler in more advanced and novel ways. By including these operators, developers can now use techniques that enable direct use of the C++ compiler without the need for additional header libraries.
Bug Fixes
  • #615 - Fixed a rather subtle IDE module error
    • Reported at Discord https://discord.com/channels/975381912350752819/975383819848912926/1446352493884739635
    • If there was a program with a line count close below the next 1000s boundary and a search was performed, then if the found position was close to the program end and the IDE window height was bigger than the remaining program lines after the found match, then empty line padding could lead to a "subscribt out of range" error in an internal array in case the number of empty padding lines was bigger than the difference of the next 1000s boundary minus total program lines.
  • #657 - Fixes a bug in the font library function UTF32::ConvertUTF16()
    • The function incorrectly attempted to consume a UTF-16 BOM even when none was present.

Full Changelog: v4.2.0...v4.3.0

QB64 Phoenix Edition screenshot

Versienummer 4.3.0
Releasestatus Final
Besturingssystemen Linux, macOS, Windows 8, Windows 10, Windows 11
Website QB64 Phoenix Edition
Download https://github.com/QB64-Phoenix-Edition/QB64pe/releases/tag/v4.3.0
Licentietype GPL

Door Bart van Klaveren

Downloads en Best Buy Guide

22-12-2025 • 07:30

2

Bron: QB64 Phoenix Edition

Reacties (2)

Sorteer op:

Weergave:

10 ECHO "Hoi"
20 GOTO 10

Good old days 😄
Met QBasic krijg ik toch altijd "qbasic gorrilas.bas" als reminder uit mijn jeugd ;) Nostalgie ten top!

Om te kunnen reageren moet je ingelogd zijn