Home     Blog    News    Ask a Question   

68xxx C Compiler & Assembler for Windows

68xxx C Compiler & Assembler for Windows

The Crossware C680X0NT is an ANSI standard C compiler that generates code for the M68000 microprocessor, M68020 microprocessor and M68881 maths coprocessor and Motorola microcontrollers based upon the CPU32 and CPU32+ cores. Supported chips include the M68000, M68008, M68302, M68306, M68307, M68322 and M68328, M68020, M68330, M68332, M68340, M68349 and M68360. It comes complete with the Crossware Embedded Development Studio and runs under Windows 7 and above.



The package includes the following tools and utilities:

(The Embedded Development Studio is described in detail in a separate data sheet) 

All of these tools and utilities are Win32 applications built to make the most of your 32 bit computing environment. All tools can be used outside of the Embedded Development Studio if required using conventional command-line instructions.



Language Definition
The compiler conforms to the ANSI C specification and in addition, provides a number of enhancements including:

The support libraries are a subset of the ANSI standard libraries. The supported functions are listed below.

Data Sizes
The compiler uses the following sizes for the various C data types:

char and unsigned char : 1 byte
short int and unsigned short int : 2 bytes
int and unsigned int : 4 bytes;
long and unsigned long : 4 bytes
float : 4bytes (32 bits)
double : 8 bytes (64 bits)
long double : 8 bytes (64 bits)
enum : up to 4 bytes (minimum size
to accommodate members)
bit fields : up to 32 bits

In-Line Assembler
Assembler code can be included in your C source files both within and outside of C functions. In-line assembler code is passed unmodified to the relocatable assembler and so any assembler constructs including macros, segment directives and conditional assembly directives can be included.

Optimizations include:

Code and data location
Compiler generated code and data are automatically located in appropriate memory segments. Linker options allow these segments to be located at user defined memory locations. String constants and objects declared as const are located in code space. Initialized and uninitialised data are located in separate segments and initialisation of these segments is automatically carried out at run time.


The cross assembler converts assembler code into an intermediate object module format which is subsequently linked with other intermediate object modules to create the final program. Features include:


The linker combines object modules created with the compiler and/or the assembler to create the final code that will run on your target system. It carries out the following functions:

The target program can be produced in a number of different formats including Motorola S records, HP/Microtec IEEE695 format or as a binary rom image.

An optional link map will show the final location and sizes of all segments and the values of all global variables.


The assembler can optionally generate full source level debug information. The linker updates these debug records to take account of the final location of the target program and outputs them to the target program file in IEEE695 format. Debuggers and in-circuit emulators that support this popular format can then use it to facilitate full source level debugging.


Instead of being used to create a final target program, the object modules produced by the compiler and assembler can be integrated into a library. The library manager performs the tasks of:


The MAKE utility simplifies the task of keeping object files, libraries and target programs up-to-date. It detects if any source or dependency files have changed since the last build and runs the appropriate tools (compiler, assembler, linker or library manager) to rebuild out-of-date files. It supports many advanced features including macros, inference rules, conditional inclusion and other preprocessing directives and in-line files with automatic temporary file creation.

Although the Embedded Development Studio uses its own integrated routines to keep projects up-to-date, this stand-alone MAKE utility can be used to build projects from the command-line or from within another application. The Embedded Development Studio will automatically create a makefile which is fully compatible with this stand-alone MAKE utility.


PC running Windows 7 or above (32-bit or 64-bit).