Blassic: System variables.

Last revision: 30-jan-2005

The system variables area begins at the position returned by the function SYSVARPTR, and can be accessed with PEEK and POKE.

The values of the multibyte variables are stored in Intel format, even if the actual architecture use a different format, to maximize portability.

The name given is used in the source code or Blassic, it will not be recognized in a Blassic program.

The value of the Writable column is Yes when writing the variable modifies the behaviour of Blassic, No indicates that the value written is not used by Blassic, but can alter further readings.

Name Position Length Writable Description
GraphicsWidth 0 2 No Width of the window in graphics mode.
GraphicsHeight 2 2 No Height of the window in graphics mode.
NumArgs 4 2 No Numbers of args passed to the program from the command line (program name excluded).
VersionMajor 6 2 No First chunk of version number.
VersionMinor 8 2 No Second chunk of version number.
VersionRelease 10 2 No Last chunk of version number.
AutoInit 12 4 Yes Starting number of line used by AUTO by default and when loading text programs without line numbers.
AutoInc 16 4 Yes Increment of line number used by AUTO by default and when loading text programs without line numbers.
CharGen 20 4 No Location in memory of the character generator used in graphics mode.
ShellResult 24 1 No Return value of the last command invoked by the SHELL instruction.
TypeOfVal 25 1 Yes Type of VAL function: 0 for only numbers, 1 for expressions evaluation.
TypeOfNextCheck 26 1 Yes Type of NEXT check: 0, all FOR has to be nested; 1, check relaxed.
TypeOfDimCheck 27 1 Yes Type of DIM check: 0, DIM an array already dimensioned is an error; 1, is accepted.
MaxHistory 28 2 Yes Maximun size of the history buffer.
Flags1 30 1 Yes Bit 0: style of LOCATE, 0 Microsoft (row, col), 1 Amstrad CPC (col, row). Default value 0.
Bit 1: TAB style: 0 normal, 1 Spectrum.
Bit 2: THEN omitted, 0 not accepted, 1 accepted.
Bit 3: space before positive number in PRINT, 0 No, 1 Yes.
Bit 4: space before positive number in STR$, 0 No, 1 Yes.
Bit 5: convert Line Feed to Carriage Return in GET and INKEY$, 0 No, 1 Yes.
Bit 6: show additional info on some error conditions.
Bit 7: relaxed goto mode. 0 the line specified must exist, 1 use the next line existent.
PrinterLine 31 1 Yes Type of line separator in printer output. 0 --> LF only, 1 --> CR + LF, 2 --> CR only. The default value is 1 in Windows and 0 in other systems.
MaxFnLevel 32 4 Yes Maximum level of nested FN calls.
DebugLevel 36 2 Yes Current debug level. Used by the IF_DEBUG instruction.
Zone 38 2 Yes Size of the zone for the , PRINT separator in graphics mode and printer output. Stablished by a ZONE instruction.
GraphRotate 40 1 Yes Type of graphics rotation: 0 - no rotation, 1 - 90 degress, other values undefined.
Flags2 41 1 Yes Bit 0: GO TO and GO SUB in listings.
Bit 1: value of true: 0 - true is -1, 1 - true is 1
Bit 2: type of boolean operations: 0 - numeric, 1 - boolean
Bit 3: take empty lines as comments when loading text programs: 0 - no, 1 - yes
All other bits reserved for future use.
TronChannel 42 2 No Last channel number used for TRON or TRON LINE.
TronFlags 44 1 No Bit 0: TRON or TRON LINE is active.
Bit 1: TRON LINE is active.
All other bits reserved for future use.

 That's all folks!