Last updated: 20/03/18
QLiberator is a comprehensive BASIC compiler for the Sinclair
QL's on-board SuperBASIC language. Originally marketed by Liberation
Software as a commercial product, the compiler and some associated
utilities were made freeware in 2017 by the authors, Ian Stewart and
- sometimes referred to as the Budget QLiberator, it was the original
version 1 compiler. Included here as it has less demanding
requirements, able to run on smaller memory systems. (36K) (Liberation
1 manual - PDF of the manual for v1 of the compiler. (563K)
QLiberator 3.36 - the
latest official version of the compiler. (64K) (Liberation Software)
Q_Liberator manuals, now with the Chapter 15 missing from some versions of the manual added, thanks to Norman Dunbar.
- PDF of the manual for v3.36 of the compiler. (2.3MB) (Jon Slater & Norman Dunbar) [13/11/17]
Q_Liberator 3.36 manual - Word DOC version of the QLiberator 3.36 manual. (1.2MB) (Jon Slater & Norman Dunbar) [13/11/17]
Q_Liberator 3.36 manual - Word DOCX version of the QLiberator 3.36 manual (396K) (Jon Slater & Norman Dunbar) [13/11/17]
versions of the Q_Liberator manual omit chapter 15, which deals with
enhancements in Release 3.3 and later. To rectify that, here's a PDF
and Word doc file of just that chapter:
QLib Chap 15.pdf (154K) PDF file version.
QLib Chap 15.doc (212K) Word DOC file version.
Witte has further improved the QLiberator manual, adding headings,
making it simple to get bookmarks into the resulting PDF version. The
original manuals will remain above for now, for posterity.
Q_Liberator 3.36+ manual.docx (447K) - Word .docx version.
Q_Liberator 3.36+ manual.pdf (894K) - PDF version
QLOAD and QREF - QLOAD is
a fast loader system for SuperBASIC (it's built into SBASIC). QSAVE
saves tokenised BASIC programs for faster loading. QREF is a
cross-reference utility for BASIC programmers - list variables,
procedures, functions etc. Version 1.9 of QLOAD and 1.3 of QREF. (15K) (Liberation Software)
QLoadRef.pdf - PDF of the manual for QLOAD and QREF. (249K) [13/06/17]
QLoadRef.docx - Word version of the QLOAD and QREF manual. (25K) [13/06/17]
QLib Patch - An
enhanced patch program for QLiberator, to
allow the Heap to exceed 512K bytes. Needs the Pointer Environment.
Available to download from the Programming Utilities page.
QLIB_RUN modified -
Original versions of the QLiberator compiler runtime extensions up to
and including v3.36 include a problem where the ERNUM and ERLIN error
returns can be reversed, causing problems for programs whichuse these
functions, for example several programs written by Thierry Godefroy.
Thierry has patched the runtimes v3.35 and v3.36 to work around these
problems. If the program documentation states you need these, here they
(10K) (Thierry Godefroy) [07/02/06]
(10K) (Thierry Godefroy) [07/02/06]
The instructions with the above are in the original French. Here is a version with an English translation too:
Word Format (29K)
PDF Format (56K)
QLIB_RUN modified 2 -
with the original QLiberator compiler up to and including v3.36 it was
not possible to get External compiled procedures working on SMSQ/E
systems. The SMSQ/E master disks included a pair of programs to patch
the compiler runtimes QLIB_RUN to allow free running procedures to be
compiled with QLiberator. Three versions are in the zip file, modified
original QLIB_RUN plus re-modified versions of Thierry Godefroy's
ERLIN/ERNUM modified versions above.
QCopy is a pointer driven utility for handling QSAVEd files - BASIC
programs saved in _sav format. Can be used to extract routines from
_sav program files, for example. (Barry J. Ansell) - available to download from the Programming Utilities page.
BASIC Linker - A
formerly commercial program from Wolfgang Lenerz, who has now made it
freeware. Like a traditional linker program, this allows you to split
up your program into manageable sized sections which you can edit in QD
editor, then 'link' or join them all up into one final output file when
program editing is complete. Parsing, _sav files for QLiberator
compiling, checking for presence of given machine code extensions etc.
all possible. Available to download from the Programming Utilities page.
Config Block Utilities
- if you'd like to make standard level 1 or level 2 config blocks for
your compiled programs to make it easier to configure default drives
etc, see programs such as BasConfig on the Config Utilities page.
- a Tim Swenson program
that takes SuperBasic programs written in the SSB style and converts
them to full running SuperBasic programs. It supports the following
features: No line numbers, Blank lines between lines of code, Labels
for GOTOs and GOSUBs, Conditional compilation, Multiple part programs,
Programs written using a text editor. In other words, an aid to
producing and compiling programs. Available to download from the Programming Utilities page.
SuperBASIC source book
- a useful little book by Tim Swenson for the BASIC compiler user, a
lot of information for QLiberator users. Available in several formats
on the eBooks page.
RPM - Resident Program Manager
is a utility for creating resident files. A resident file contains one
or more program or SuperBASIC procedures and functions designed to be
permenently linked to the QL and thus available instantly when
required. RPM produces a resident file by copying one or more source
files and some special interface code into a new file. The source file
in this context may be SuperBASIC extensions, executable program, a
QLiberator object program, possibly with externals, a SuperBASIC
program, or data files (for sequential reading onl). Either RAM
resident or ROM resident files may be produced. ROM resident files
should be position independent, not be self-modifying and contain no
data areas in the code. (21K) (Liberation Software) [13/06/17]
Word file version of RPM manual (48K)
PDF file version of RPM manual (336K)
to the home page. | Return
to Downloads Index