QDOS Internals

Anything you never knew you wanted to know about the Sinclair QL.

User Tools

Site Tools


SuperBasic Variables Area

$00 Long BV_BFBAS Buffer Base
$04 Long BV_BFP Buffer running pointer - aka Top
$08 Long BV_TKBAS Token List
$0C Long BV_TKP Token List Top
$10 Long BV_PFBAS Program File Base
$14 Long BV_PFP Program File Top
$18 Long BV_NTBAS Name Table Base
$1C Long BV_NTP Name Table Top
$20 Long BV_NLBAS Name List Base
$24 Long BV_NLP Name List Top
$28 Long BV_VVBAS Variables Values Base
$2C Long BV_VVP Variables Values Top
$30 Long BV_CHBAS Channel Table Base
$34 Long BV_CHP Channel Table Top
$38 Long BV_RTBAS Return Table Base
$3C Long BV_RTP Return Table Top
$40 Long BV_LNBAS Line Number Table Base
$44 Long BV_LNP Line Number Table Top
$48 Long BV_BTP Backtrack Stack during parsing
$4C Long BV_BTBAS Backtrack Stack Base
$50 Long BV_TGP Temporary Graph Stack during Parsing
$54 Long BV_TGBAS Temporary Graph Stack Base
$58 Long BV_RIP Maths Stack Top
$5C Long BV_RIBAS Maths Stack Base
$60 Long BV_SSP System Stack Top
$64 Long BV_SSBAS System Stack Base
$68 Word BV_LINUM Current Line Number
$6A Word BV_LENGTH Current Line Length
$6C Byte BV_STMNT Current Statement on Line
$6D Byte BV_CONT Continue ($80) or stop ($00) Processing
$6E Byte BV_INLIN Processing in-line clause or not. Loop ($01), other ($FF) or off ($00)
$6F Byte BV_SING Single line execution on ($ff) or off ($00)
$70 Word BV_INDEX Name table row of last in-line loop index used
$72 Long BV_VVFREE First free space in variables area
$76 Long BV_SSSAV Value of SP to go to when Out of Memory occurs
$7A 6 Bytes Currently unused
$80 Long BV_RAND Randon number
$84 Long BV_COMCH Command Channel ID
$88 Word BV_NXLIN Line number to start after
$8A Byte BV_NXSTM Statement to start after
$8B Byte BV_COMLN Command line saved ($FF) or not ($00)
$8C Word BV_STOPN Set stop number
$8E Byte BV_EDIT Program has been edited ($FF) or not ($00)
$8F Byte BV_BRK Break during I/O ($00) or not ($80)
$90 Byte BV_UNRVL Need to unravel ($FF) or not ($00)
$91 Byte BV_CNSTM Statement to CONTinue after
$92 Word BV_CNLNO Line number to CONTinue after
$94 Word BV_DALNO Current DATA line number
$96 Byte BV_DASTM Current DATA stamement number
$97 Byte BV_DAITM DATA item counter
$98 Word BV_CNIND In-line loop index to CONTinue with
$9A Byte BV_CNINL In-line loop flag for CONTinue
$9B Byte BV_LSANY Whether checking LIST ($FF) or not ($00)
$9C Word BV_LSBEF Invisible top line number
$9E Word BV_LSBAS Bottom line number in window
$A0 Word BV_LSAFT Invisible bottom line number
$A2 Word BV_LENLN Length of window line
$A4 Word BV_MAXLN Number of lines in window
$A6 Word BV_TOTLN Number of window lines so far
$A8 Word Currently unused
$AA Byte BV_AUTO AUTO or EDIT is on ($FF) or off ($00)
$AB Byte BV_PRINT Print from PRTOK ($FF) or not ($00)
$AC Word BV_EDLIN Next editable line number
$AE Word BV_EDINC AUTO incerment number
$B0 Long BV_TKPOS Location of A4 in Token List when starting a PROCedure
$B4 Long BV_PTEMP Temporary pointer for GO_PROC
$B8 Byte BV_UNDO Undo return stack ($FF) or not ($00). Results in PROC/FN Cleared.
$B9 Byte BV_ARROW Arrow down ($FF) or up ($01) or neither ($00)
$BA Word BV_LSFIL Where to fill window to, when relisting
$BC Word BV_WRLNO WHEN ERRor line number. QDOS 1.10 onwards
$BE Byte BV_WRSTM WHEN ERRor statement number. QDOS 1.10 onwards
$BF Byte BV_WRINL WHEN ERRor in-line ($FF) or not ($000). QDOS 1.10 onwards
$C0 Word BV_WHERR Processing WHEN ERRor ($80) or not ($00). QDOS 1.10 onwards
$C2 Long BV_ERROR Last error code. QDOS 1.10 onwards
$C6 Word BV_ERLIN Last error line number. QDOS 1.10 onwards
$C8 Word BV_WVNUM Number of watched (WHEN) variables. QDOS 1.10 onwards
$CA Long BV_WVBAS Base of WHEN variable table. QDOS 1.10 onwards
$CF-$9F49 Bytes Currently unused
$100 BV_END End of Basic Variables
qdosmsq/sbinternal/sbvars.txt · Last modified: 2016/03/17 16:18 by superuser