Page 8 of 62
SBasic User's Manual SBasic Version 2.7 Page 8
Printed: December 5, 1999
where xxxx is either 6811 to generate output code for the 68HC11 MCU,
or 6812 to generate output code for the 68HC12 MCU. If you don't
supply the /m option, SB will generate code for the default MCU, the
68HC11.
The differences in output code caused by compiling for the two
machines mostly concerns the library files used. See the discussion
below on library files for more details.
Certain variations of the 68HC12, notably the 68HC912B32, use on-chip
firmware to take over the MCU's interrupt vector table. Similarly,
some 68hc11 chips include masked ROM firmware (such as BUFFALO) that
also takes over the vector table. In both these cases you need to
prevent SBasic from trying to set up a vector table on the target
machine. You can prevent SB from creating an interrupt vector table
by using the /i option. The format of this option is:
/i
If you use the /i option and your SB program must use interrupts, you
will have to add SB code to prepare the appropriate RAM-based jump
table. Refer to the Motorola literature on your target MCU for
details.
Note that the /i option surpresses ALL changes to the vector area,
including the reset vector. SB programs compiled with the /i option
must use some resident firmware, such as BUFFALO, to transfer control
to the start of the program.