Metacommands are program wide commands that start with $.
QBasic/QuickBASIC - Legacy metacommands
Syntax
REM $DYNAMIC ‘enables resizing of array dimensions with REDIM
REM $STATIC ‘arrays cannot be resized once dimensioned
Description
- QBasic Metacommands are normally used at the program start and are in effect throughout the program.
- QBasic Metacommands are always prefixed with $ and MUST be commented with an apostrophe or REM.
- $INCLUDE is always followed by a colon and the full text code file name is commented on both sides.
- $DYNAMIC allows larger arrays that are changeable in size at runtime.
- $STATIC makes all arrays unchangeable in size.
- QBasic metacommands should have their own program line because they are commented.
QB64 metacommands
Syntax
$ASSERTS:CONSOLE
$CHECKING{OFF ON} ‘disables QB64 C++ event and error checking (no spaces)
$CONSOLE ‘creates a QB64 console window throughout the program
$DEBUG enables debugging features, allowing you to step through your code line by line
$ERROR MESSAGE triggers a compilation error MESSAGE.
$EXEICON:’iconfile.ico’ ‘embeds an .ICO file into the final executable (Windows only)
$LET variable = expression
$RESIZE:{ON OFF STRETCH SMOOTH} ‘determines if re-sizing of the program screen by the user is allowed
$SCREENHIDE ‘hides the QB64 program window throughout the program
$SCREENSHOW ‘displays the main QB64 program window
$VERSIONINFO:key=value ‘embeds version info metadata into the final executable (Windows only)
$VIRTUALKEYBOARD:{ON OFF} ‘DEPRECATED keyword
Description
- $ASSERTS:CONSOLE Enables debug tests with the _ASSERT macro.
-
$CHECKING_{OFF ON}_ Should only be used with errorless code where every CPU cycle counts! Use ON to re-enable event checking. Event checking can be turned OFF or ON throughout a program. - $COLOR adds named color CONSTantes to a program.
- $CONSOLE creates a console window which can be turned off later with _CONSOLE OFF.
- $DEBUG enables debugging features, allowing you to step through your code line by line.
- $ERROR MESSAGE triggers a error MESSAGE only during your program compilation.
- $IF … $ELSEIF … $ELSE … $END IF allows selective inclusion of code in the final program.
- $LET variable = expression sets a precompiler variable to a value.
-
$RESIZE:{ON OFF STRETCH SMOOTH} allows a user to resize the program window. OFF is default. - $SCREENHIDE hides the QB64 program window throughout the program until $SCREENSHOW is used.
-
$VERSIONINFO:key=value embeds version info metadata into the final executable (Windows only).
- Do not comment out with ‘ or REM QB64-specific metacommands.