/* unixtypes.h * * This include file contains type definitions which are appropriate * for a typical modern UNIX box using GNU C for the RTEMS simulator. * * COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994. * On-Line Applications Research Corporation (OAR). * All rights assigned to U.S. Government, 1994. * * This material may be reproduced by or for the U.S. Government pursuant * to the copyright license under the clause at DFARS 252.227-7013. This * notice must appear in all copies of this file and its derivatives. * * $Id$ */ #ifndef __UNIX_TYPES_h #define __UNIX_TYPES_h #ifndef ASM #ifdef __cplusplus extern "C" { #endif /* * some C++ compilers (eg: HP's) don't do 'signed' or 'volatile' */ #if defined(__cplusplus) && !defined(__GNUC__) #define signed #define volatile #endif /* * This section defines the basic types for this processor. */ typedef unsigned char unsigned8; /* unsigned 8-bit integer */ typedef unsigned short unsigned16; /* unsigned 16-bit integer */ typedef unsigned int unsigned32; /* unsigned 32-bit integer */ typedef unsigned16 Priority_Bit_map_control; typedef signed char signed8; /* 8-bit signed integer */ typedef signed short signed16; /* 16-bit signed integer */ typedef signed int signed32; /* 32-bit signed integer */ /* * some C++ compilers (eg: HP's) don't do 'long long' */ #if defined(__GNUC__) typedef unsigned long long unsigned64; /* unsigned 64-bit integer */ typedef signed long long signed64; /* 64 bit signed integer */ #endif typedef unsigned32 boolean; /* Boolean value */ typedef float single_precision; /* single precision float */ typedef double double_precision; /* double precision float */ typedef void unix_isr; typedef unix_isr ( *unix_isr_entry )( void ); #ifdef __cplusplus } #endif #endif /* !ASM */ #endif /* end of include file */