You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
97 lines
2.3 KiB
C
97 lines
2.3 KiB
C
/*
|
|
* 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_ */
|