Binary Dinosaurs Computer Museum
titlebar
button1Museum History button2Museum Updates button3BinarySaurs on Twitter button4Adverts&Reviews button5Moan, Bitch, Gripe scroll1
button6Inhabitants button7Reviews button8WOW! button9Contact button10Recursion 2017 scroll2
button11Links button12Search button13BDonFacebook button14CGE-UK 2004 button15WROCC 2006 scroll3
base blank_textbox

ICL OPD BASIC compiler
OPD MC BASIC COMPILER
Originally consisted of a 'Mega Capsule' only for use with
the later version of the OPD bound for the U.S.A. The 'Mega
Capsule' employs memory paging techniques that are
Incompatible with a standard OPD. However, the program has
been copied to 4 x 32k Eproms and can be inserted into a
standard 2 slot Rompack. 

The compiler was written by Tony Cheal of Computer One in
Cambridge solely to compile a Basic program for a telesales
company in the U.S. . No info is available on wether the
program ever ran.

The package consists of:
MC Basic Compiler
68008 Assembler
Editor

The menu also lists a linker, but it has been confirmed that
this section was never completed.

The compiler has been successfully tested and a number of
programs compiled to check the various Functions. The program
produced carries a large overhead of library sub-routines
making small applications uneconomic in terms of memory. Once
past the 'threshold', however, larger programs are most
suitable. Should a suite of programs be running together, it
is necessary only to load the library once. An option exists
at compiler run time to exclude the library.    
Some attempts at assembly of 68008 code have failed, but it
is thought further testing is required. No documentation is
available exclusive to the OPD.

Although officially required to compile MC Basic, many of the
features of ICL Basic for the OPD, itself a version of
Sinclairs SuperBasic, are included in tandem. This gives
access to the superior features such as user defined
Procedures instead of position dependant GOTO and GOSUB

The compiler also has the ability to compile Basic lines that MCBasic rejects.
e.g.
The command  line(x,y)-(a,b) is rejected by MCBasic but
compiles O.K. This command is the only way to draw a line
available to the OPD user. ( Graphics commands do not exist
in OPD/ICL Basic.) As there is little info on what is
acceptable to the compiler and its' syntax, it is taking some
time to access by trial and error.

The compiler writes a run-time library for each program that
takes up about 39blocks (20k). Small programs will therefore
occupy relatively more space. Medium to large programs will
save space due to the re-using of library routines. The main
advantages of the compilation of the program is in speed of
execution, memory usage (no need to load Basic),and the
ability to choose the program from the Applications menu.
During testing the 'PROGRAM TOO LARGE' error message was
encounted. It is not known at this time wether this is a
limitation of the compiler or of the memory available in the
machine.

Some documentation is available but no 'official' handbook
was written.

All images and text © Adrian Graham 1999-2017 unless otherwise noted using words. Also on