The COP8C Code Development System includes:
an optimising C Cross-compiler.
the BCLink linker.
an Integrated Development Environment and editor.
a built-in macro cross-assembler.
New Memory Management techniques, such as the SPECIAL memory directive, add support for variables in all types of memory: available LCD controller RAM, I2C, EEPROM and Flash. LOCAL address space lets you maximize the use of RAM, direct the placement of local variables, re-use RAM locations and pass multiple arguments to functions
Other features of the COP8C Code Development System include:
Highly optimised generated code. Full versions generate ROMable code, demonstration versions generate listing files with assembly.
part-specific header files describe the unique features of each target device.
compiler configuration using #pragma directives.
ports are declared and protected using the #pragma port series of directives
the #pragma vector directive specifies the location and assigned name for interrupt sources.
BCLIDE Windows IDE organizes access to project settings and facilitates quick project build.
BClink Linker links object files and libraries compiled with cop8c.exe
object libraries can be included directly in C source files using Absolute Code Mode.
named address spaces support the grouping of variables at specific memory locations.
SPECIAL address space declares variables at special locations such as external devices or internal EPROM.
LOCAL address space allows you to use local variables.
extensions to the C language designed specifically for the embedded systems developer. Some extensions include bit-sized data types, binary constants, extended case statements, direct variable placement with the @ symbol, and support for processor-specific functions.
interrupt handler support in C; makes context saving and restoring easy.
data types include:
char, short, int, long
int8, int16 (unambiguous ints)
register-oriented types for direct access to processor registers when necessary
selectable 8 or 16 bit int data type.
packed bit fields in structs.
include single and multiple lines of inline assembly within a C program with the #asm and #endasm directives
extensive control over computer-generated initializations.
generates source-level information required for emulators.
COP8C extends support for the National Semiconductor COP8™ family of processors including the new SGR and SGE derivatives.
support for source-level debugging with popular emulators, or manual inspection using listing files.
supports processor specific instructions NOP, STOP
supports the instruction extensions 888, 820, 840, 800, 880, and SREG
direct access to AC, B, X, PSW and S registers
source level debugging supported by MetaLink's emulators