Product Details
The BASIC11 compiler from Controlord (France) enables you to write BASIC programs on a Windows host for most MC68HC11 based target systems.
BASIC (Beginner?s All-purpose
Symbolic
Instruction
Code)
was invented in 1964 by John Kemeny and Tom Kurz at Dartmouth College. BASIC was designed as a language that would be easy to learn and use in a very short time. The first BASIC systems were interpreters that ran on computers long before the time of microprocessors and PC. BASIC had a second life as interpreter in the ROM part of microprocessors.
You often find on small microprocessors a limited version of BASIC, with the byte as single data type, IF, FOR, GOTO and GOSUB, etc. By contrast, BASIC11 uses a dialect more similar to high level languages like Pascal or C. You'll nevertheless still find the famous GOTO and GOSUB, but there are other language elements that replace these statements.
BASIC11 is not an interpreter, but a real compiler that translates the source program into an object file. This object is ready to be loaded into a ROM, PROM, EPROM, or EEPROM. The program will run on the 68HC11 without any help of an interpreter or an operating system.
What are the differences between an interpreter and a compiler?
An interpreter interprets a program, re-interpreting each instance of an identical routine.
Thus the program is very slow. A compiled program is much faster. An interpreter needs some place in the RAM and the ROM section of the target. When it is in a real ROM, you have to buy the interpreter, else you have to buy the memory for the interpreter for each target. It is obviously limited in ease-of-use and richness of the language.
An interpreter runs directly on the target. You do not need a host computer to compile
the program-- just some kind of a terminal.
Working on a P.C. as host allows you to handle and archive the source and the documentation of the program.
Compiler Features:
Declarations
of the ProgramPointer, DataPointer, StackPointer
#include
directive to include other source files
Variables
BYTE (0 to 255) or INTEGER (-32768 to +32767),
Bit
addressing: if PORTD.7 = 0 then PORTB.3 = 1
Arrays,
constant variables in EEPROM, declaration of I/O ports
Arithmetic
and logical calculations +-*/ MOD NOT AND OR
Constants
in decimal, hexadecimal, binary, characters
Loops
FOR TO STEP, NEXT,EXIT FOR
Conditional
statements IF THEN ELSE, END IF
Jumps
GOTO, GOSUB
ASM
directive to include assembly statements
PRINT
for LCD, RS232 or any other output device.
Functions
FUNCTION, RETURN, END FUNCTION, parameters, recursive functions
Global
and local variables
Interrupt
functions
The programming interface enables you to write a program, compile it, download it, and debug it. The program can be written in assembly language or BASIC.
The window on top is the main window. It allows you to start one or several editor windows to edit the source programs, and to press COMPILE to compile the program. You will get the output of the compilation in this window.
The WINDOWS menu keeps all source files and all files included by the #include directive in these files. If you click on a file in this menu, you will also bring up the file in an editor window. The OPTION dialog allows you to specify the name of the compiler, compiler options, the files to compile, and others. Double clicking on a BASIC source line brings up the assembly source lines generated by the compiler for the high-level source line. Double clicking on an assembly line brings you back to the original high level source line.
The debugger in the bottom window communicates with the target. When the debugger reaches a breakpoint or finishes a single step, you see in the left window the original source line and in the right window the assembly line, generated by the compiler. Clicking on the left margin of a source window (high-level or assembly) sets or removes a breakpoint.