QLiberator section

QLiberator logo  

Last updated: 17/06/17


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 Adrian Soundy.


QLiberator 1 - 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 Software) [13/06/17]
QLiberator 1 manual - PDF of the manual for v1 of the compiler. (563K) [13/06/17]

QLiberator 3.36 - the latest official version of the compiler. (64K) (Liberation Software) [13/06/17]
QLiberator 3.36 manual - PDF of the manual for v3.36 of the compiler. (824K) [14/06/17]
Q_Liberator 3.36 manual - Word version of the QLiberator 3.36 manual. (634K) [14/06/17]

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) [13/06/17]
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 are.
qlibrun335mod.zip (10K) (Thierry Godefroy) [07/02/06]
qlibrun336mod.zip (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)

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.

Structured SuperBASIC - 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)

Return to the home page. | Return to Downloads Index