BASIC_B (offset) and

BASIC_W (offset)

BASIC_L (offset)


TinyToolkit, BTool, Turbo Toolkit (BASIC_L only)

These three functions are modified version of PEEK which return values at memory locations in the SuperBASIC system variables, which are used for storage by the SuperBASIC interpreter.

BASIC_B returns bytes, BASIC_W words and BASIC_L long words.


Although additional information about internal machine structures is necessary to make full use of these functions, some simple tasks can be performed without this knowledge, for example:

PRINT BASIC_W ( 1076 )

gives the first line number of a program in memory - this enables a machine code program to check if a program is actually loaded in the machine. The value returned by this example will always be zero from the interpreter.

100 IF NOT BASIC_W (1076) THEN
110   PRINT "No SuperBASIC program loaded"
120 END IF


These functions generally suffer the same problem as BASIC.

A file called TurboFix_bin can be used to allow BASIC_L to access Minerva MultiBASIC and SMS SBASIC variables. Some early versions of TurboFix_bin have bugs in it. Beware that not all versions of this file supports SMS SBASICs.



BASIC_B%, BASIC_W%, BPEEK%, BPEEK_W% and BPEEK_L are similar.

See also BASIC_F and PEEK_F.

The SuperBASIC variables appear in the QDOS/SMS Reference Manual (Section 18.3)