BASIC_B (offset) and
|Location||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.
The SuperBASIC variables appear in the QDOS/SMS Reference Manual (Section 18.3)