- What's New
- product registration
- Distributors and resellers
- About Us
- Fixed Point
- Fuzzy Logic
- FAE/Client Login
- more information
C6808 Product News
The following sections describe new features in Byte Craft Limited C6808 Product.
C6808 now supports the RS08 core. Code generation now extends across HC08, HCS08, and RS08 parts.
To target an RS08 part, choose the correct header file for your target part from
RS08 code generation is enabled with a #pragma has directive. This directive is present in the device header files, and can be added to custom headers. See the product documentation for more information.
The Code Development System supports a new threading architecture. Threads are C functions declared with a C expression that governs their dispatch.
For more information, see the printed or online documentation, or the tutorial.
C6808 fully supports the HCS08 family.
Device header files for HCS08 parts are present in the
The compiler accepts the #pragma has S08 directive. This configures the compiler to use the new instructions and additional addressing modes offered by the HCS08 parts.
The compiler features numerous built-in functions that map to machine instructions not otherwise provided for in the compiler. For more information see the product documentation.
#pragma fill =
#pragma fill [
#pragma fill @
This directive causes the compiler to fill program memory (ROM or otherwise) with elements of a list. Valid
list items are any values or strings, defined as constant data or preprocessor definitions. Separate list items with commas.
If you do not specify the
size, the compiler will place the
list in memory once. Otherwise, the compiler will fill
size words of memory with the data. The compiler will truncate the
list to fit
size, or repeat it to fill
size words completely. If
size is 0, no memory will be written.
Strings will be filled with a zero terminator. The compiler will truncate a string to meet
If you do not specify
location, the compiler will place the list at the current program counter location.
#pragma MotorolaS19; /* S19 file contents */ ; // terminates the S19 image
#pragma MotorolaS19 sets the compiler to use the contents of a Motorola S19 hex file in the generated program. This command effectively merges the S19 file with the executable generated by the compiler.
The compiler preserves address information in the file. This means that program data previously allocated to those areas may be overwritten by the S19 file, and program data generated subsequently may overwrite the S19 file. Ensure that the S19 data does not conflict with the program or constants generated by the compiler.
S0 records (descriptive headers) are ignored. A S9 record terminates the S19 image. A single semicolon on a line also terminates the image.
The S19 records must appear in the file itself, but you can use the #include statement to read in the records from an external S19 file.
You can set the value stored in unused ROM locations with the #pragma option fillrom statement:
#pragma option fillrom
value is an 8-bit integer expression.
The default integer size of Code Development Systems is 8 bits. If the symbol __INT16 is defined, it indicates that the default integer size is 16 bits.
The __INT16 preprocessor symbol is defined by the compiler when either the +i is set on the command line, or the #pragma option +h directive appears in a source file.