
/***************************************************************************
**
**    $Header$
**
**    $Log$
** 
****************************************************************************/

/****************************************************************************
**
**  Name:  types.h
**
**  Description:
**     Definitions of BASIC TYPES.  This is used by the symbol manager to 
**     initialize the basic types for a processor.
**
**  Status:  PRELIMINARY
**
**  $Log$
** 
**  $Header:   D:/EPSLDV1/SRC/LOG/TYPES.H__   1.7.1.0.1.0   11 Nov 1996 12:58:44   ZJRD  $
**
**  Copyright (C) 1995 Microtek International.  All rights reserved.
**
*****************************************************************************/

#ifndef _TYPES_

                       /****************************
                        *                          *
                        *       INCLUDE FILES      *
                        *                          *
                        ****************************/

                       /****************************
                        *                          *
                        *        DEFINITIONS       *
                        *                          *
                        ****************************/

#define BASIC_TYPE_COUNT 27

/* This initializes the names for the basic variable types.  */

PRIVATE S8 *basicTypeName[] = {
   "Unknown Type", "void", "signed char", "unsigned char", "signed short int",
   "unsigned short int", "signed long", "unsigned long", "signed long long",
   "unsigned long long","float", "double", "long double", "long long double",
   "string", "instruction address", "int", "unsigned", "unsigned int",
   "signed char", // for omf51 char default is unsigned char . old is "char",
   "long", "short", "unsigned short", "short int", "signed short",
   "BCD float","bit"
};
// Removed since they become loaded complex types; i.e. pointers to
// basic types.
// "\0", "\0", "\0", "\0", "\0", "\0",
// "Unknown Type *", "void *", "signed char *", "unsigned char *",
// "signed short int *", "unsigned short int *", "signed long *",
// "unsigned long *", "signed long long *", "unsigned long long *","float *",
// "double *", "long double *", "long long double *", "string *",
// "instruction address *", "int *", "unsigned *", "unsigned int *",
// "char *", "long *", "short *", "unsigned short *", "short int *",
// "signed short *", "BCD float *"
// };

/* this initializes the size in bytes of the basic variable types. */

static U8 basicTypeSize[BASIC_TYPE_COUNT] = {
   0, 0, 1, 1, 2, 2, 4, 4,
   8, 8, 4, 8,10,16, 0, 0,
   2, 2, 2, 1, 4, 2, 2, 2,
   2, 8, 1
};
// Removed since they have become loaded complex types; i.e. pointers to
// basic types.
//       0, 0, 0, 0, 0, 0,
// 4, 4, 4, 4, 4, 4, 4, 4,
// 4, 4, 4, 4, 4, 4, 4, 4,
// 4, 4, 4, 4

                       /****************************
                        *                          *
                        *        PROTOTYPES        *
                        *                          *
                        ****************************/

#define _TYPES_
#endif
/******************************** E O F ***********************************/
