QB64 created by Galleon

QB64 and QB64.org maintained by the QB64 Team

  • QB64 Team on Facebook
  • QB64 Team on Twitter
  • QB64 Discord Server

© 2019 by QB64 Team

QB64 Version 1.3 - Changelog

New statements and functions:
  • Drag/Drop support (Windows-only): new statements _ACCEPTFILEDROP, _TOTALDROPPEDFILES and _DROPPEDFILE$ allow your program to accept and handle files dropped from a folder at run-time.

  • _ECHO: Previously, you could have a $CONSOLE window enabled but to alternate printing to the main program and to the console you'd have to switch _DEST to _CONSOLE, print the text then switch _DEST back to the main program. With the _ECHO command a $CONSOLE-enabled program can output text to the console window without the hassle.

  • _ALLOWFULLSCREEN: the statement allows you to set the behavior of the ALT+ENTER combo. You can allow only certain modes or disable the combo altogether.

  • _SMOOTH: returns true (-1) if the current _FULLSCREEN mode has antialiasing enabled or false (0) if disabled.

  • _RGB32: of course this is not a new function but it has been improved greatly. You no longer need to alternate between _RGB32 and _RGBA32 as it now accepts an optional fourth parameter for alpha. Also: You can create a grayscale color without having to repeat parameters.

  • _INSTRREV: like INSTR, _INSTRREV allows you to search for a substring inside another string, but unlike INSTR it returns the last occurrence instead of the first one.

  • _TRIM$: Single function to remove trailing and leading spaces from a string. Macro for RTRIM$(LTRIM$(text$)).

  • _SHL and _SHR functions for bit-shifting (left/right), as in PRINT _SHL(2, 4) (returns 32) and PRINT _SHR(-8, 3) (returns -1).

Improvements:
  • Adds Ctrl+Shift+G shortcut to jump to line with error (try the shortcut when your program has an error and the IDE is indicating it on the status area)

  • New Ctrl+T to toggle comments on the current line or selection (also available via Edit menu and by right-clicking the code)

  • Updates NanoJPEG to the version 1.3.5 (try loading different jpg files to see if all works well)

  • Makes F5 run detached by default. (you no longer get an unresponsive IDE while your program is running; equivalent to Ctrl+F5 in older versions).

  • Disables maximize box when $RESIZE isn't enabled. (Windows only -> remember when a non-resizable window would still show Maximize and when you clicked it the window would just move to the top-left corner? That won't happen anymore).

  • Quick Navigation (back arrow) can now be disabled in the Search menu.

  • It is now possible to have variable-length strings in User Defined Types (UDTs).

  • [Windows version] Mingw compiler upgraded to version 8.1.0. A 64-bit package is now available officially.

  • New warnings system indicates when a declared variable isn't used and also when a constant is redefined with the same value - useful for using multiple libraries that define TRUE/FALSE for example (instead of an error stopping compilation, a warning is displayed).

Fixes:
  • Tab in included files won't generate an error anymore.

  • A bug that would cause an include line to be duplicated when resizing the IDE.

  • A bug that would not allow reassigning precompiler $LET variables.

  • A memory leak involving PRINT USING and TAB().

  • _PRINTSTRING not using the passed image handle parameters.

  • Selecting a disabled menu item with a hot key would crash the IDE.