/* | |
* File: common.h | |
* Purpose: File to be included by all project files | |
* | |
* Notes: | |
* | |
* License: All software covered by license agreement in - | |
* docs/Freescale_Software_License.pdf | |
*/ | |
#ifndef _COMMON_H_ | |
#define _COMMON_H_ | |
/********************************************************************/ | |
/* | |
* Debug prints ON (#define) or OFF (#undef) | |
*/ | |
#undef DEBUG_PRINT | |
#undef DEBUG_PRINT_D0D1 | |
/* | |
* Include the generic CPU header file | |
*/ | |
#include "mcf5xxx.h" | |
/* | |
* Include the specific CPU header file | |
*/ | |
#include "mcf5225x.h" | |
#include "mcf5225x_evb.h" | |
/* | |
* MetroWerks looks for an underscore prepended to C function names | |
*/ | |
#define _UNDERSCORE_ | |
/* | |
* The source uses __interrupt__ to identify a function as | |
* an interrupt or exception handler. Codewarrior uses | |
* __declspec(interrupt), so we are appeasing it like this. | |
*/ | |
#define __interrupt__ __declspec(interrupt) | |
/* | |
* Force functions to return values in D0 | |
*/ | |
#pragma pointers_in_D0 | |
/* | |
* Provide a few assembly instructions for C level routines | |
*/ | |
#define halt() asm( halt) | |
#define nop() asm( nop) | |
#define tpf() asm( tpf) | |
#define stop_2700() asm( stop #0x2700) | |
#define stop_2600() asm( stop #0x2600) | |
#define stop_2500() asm( stop #0x2500) | |
#define stop_2400() asm( stop #0x2400) | |
#define stop_2300() asm( stop #0x2300) | |
#define stop_2200() asm( stop #0x2200) | |
#define stop_2100() asm( stop #0x2100) | |
#define stop_2000() asm( stop #0x2000) | |
/* | |
* Define custom sections for relocating code, data, and constants | |
*/ | |
#pragma define_section relocate_code ".relocate_code" far_absolute RX | |
#pragma define_section relocate_data ".relocate_data" far_absolute RW | |
#pragma define_section relocate_const ".relocate_const" far_absolute R | |
#define __relocate_code__ __declspec(relocate_code) | |
#define __relocate_data__ __declspec(relocate_data) | |
#define __relocate_const__ __declspec(relocate_const) | |
/* | |
* Include common utilities | |
*/ | |
void assert_failed(char *, int); | |
#ifdef DEBUG_PRINT | |
#define ASSERT(expr) \ | |
if (!(expr)) \ | |
assert_failed(__FILE__, __LINE__) | |
#else | |
#define ASSERT(expr) | |
#endif | |
//#include "assert.h" | |
//#include "io.h" | |
//#include "stdlib.h" | |
/********************************************************************/ | |
#endif /* _COMMON_H_ */ |