Download QB64 2.0

Spread the love

QB64 is a modern version of the BASIC programming language. The code is compiled to machine language, making it fast and linking to external C and C++ programming libraries. It is nearly fully compatible with QBasic 4.5 and includes support for extensions such as OpenGL. QB64 is also open source, available for Windows, Linux and macOS, has a good wiki and support forum. In version 2.0 we find new debug features in the IDE. The changelog for this release looks like this:

New features

All platforms

  • New $Debug metacommand, with added breakpoint/step abilities and real-time variable watching to the IDE.
  • Quick reference for commands is now shown in the status bar when syntax errors are detected.
  • _Source is now also set to _Console when $Console:Only is used.
  • Allows Ctrl+\ to be used as a shortcut to repeat search (legacy QBasic shortcut).
  • Functions _MK$ and _CV can now deal with _OFFSET values.
  • New “View on Wiki” button on help panel (launches equivalent wiki page using the default browser).
  • New _EnvironCount function to show how many environment variables are found.
  • Color schemes can now be set/saved individually for each running instance of the IDE.


  • Automatically embeds a manifest file when compiling an exe with $VersionInfo, so that Common Controls v6.0 gets linked at runtime.
  • Adds the %TEMP%, Program Files and Program Files (x86) directories to _Dir$() folder specifications.


All platforms

  • Improved wiki parser.
  • Contextual menu would crash when right-clicking a series of high-ascii characters.
  • Fixes an issue with passing an array as a Sub/Function argument (missing parenthesis now properly detected).
  • Fixes Clear making $Console mode invalid.
  • Fixes a syntax highlighter issue regarding scientific notation.
  • Fixes an issue in Windows Vista and up with incorrect resolution returned on a scaled desktop.
  • Fixes Const parser accepting unsupported string functions and failing with some very specific const names.
  • Explicitly sets x87 fpu to extended precision mode.
  • Removes 255-character limit for Input/Line Input with strings.
  • Fixes Data commands failing to compile in some circumstances.
  • $NoPrefix, Option _Explicit and Option _ExplicitArray can now be placed anywhere in a program, no longer having to be the first statement.
  • Fixes MEM reverting to _MEM as a sub parameter in $NoPrefix mode.
  • Fixes case adjustment of array names in UBound/LBound calls.
  • Prevents users from creating self-referencing Type blocks.
  • Fixes issue that prevented loading file names beginning with numbers.
  • Fixes file open/save dialogs issue with path navigation.
  • Complete rewrite of the internals for Environ$().
  • Fixes evaluation of valid var/flag names for $Let/$If – same rules for variable names now apply.
  • Fixes incorrect parsing of Type blocks with multiple elements using the AS type element-list syntax.
  • Fixes issue with Put # and variable-length strings in UDTs (Binary files).
  • Fixes issue with recursive functions without parameters.


  • Allows $Console:Only programs to return _WindowHandle.
  • Saving a file to the root of a drive would display double backslashes in the Recent Files list.
  • Allows the “move” mouse icon to be set with _MouseShow.


  • Flushes the console output so Print can properly display text even while retaining the cursor.
  • Allows the “cycle” mouse icon to be set with _MouseShow.


  • xmessage added to dependency list (setup script).
  • Fixes InKey$ acting too slow.
  • Fixes compilation error with Data statements on gcc 11.
  • Detects non-x86 based architectures.
  • Flushes the console output so Print can properly display text even while retaining the cursor.
  • Allows the “cycle”/”move” mouse icons to be set with _MouseShow.

Version number 2.0
Release status Final
Operating systems Windows 7, Linux, Windows XP, macOS, Windows Vista, Windows 8, Windows 10, Windows 11
Website QB64
file size


License type GPL
You might also like