You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
99 lines
4.8 KiB
99 lines
4.8 KiB
#ifndef _STANDARD_HPP_
|
|
#define _STANDARD_HPP_
|
|
// Ruler
|
|
// 1 2 3 4 5 6 7 8
|
|
//345678901234567890123456789012345678901234567890123456789012345678901234567890
|
|
|
|
/********************************************************************/
|
|
/* */
|
|
/* The standard data types. */
|
|
/* */
|
|
/* The standard data types should be used in preference to the */
|
|
/* data types defined in the C++ language. This is to allow */
|
|
/* for easier porting. If no suitable standard type exists */
|
|
/* then one should be created and documented here. */
|
|
/* */
|
|
/********************************************************************/
|
|
|
|
#define AUTO auto
|
|
#define CONST const
|
|
#define CONSTANT const
|
|
#define EXTERN extern
|
|
#define GLOBAL extern
|
|
#define INLINE __forceinline
|
|
#define LOCAL auto
|
|
#define REGISTER register
|
|
#define STATIC static
|
|
#define VIRTUAL virtual
|
|
#define VOLATILE volatile
|
|
|
|
/********************************************************************/
|
|
/* */
|
|
/* The standard C++ types. */
|
|
/* */
|
|
/* The C++ standard reserves various lower case keywords. This */
|
|
/* system uses a similar standard. All upper case words are */
|
|
/* either constants or types. All words begining with a single */
|
|
/* upper case letter are variables. */
|
|
/* */
|
|
/********************************************************************/
|
|
|
|
typedef unsigned char BOOLEAN;
|
|
|
|
typedef char CHAR;
|
|
typedef short int SHORT;
|
|
typedef int INT;
|
|
typedef long int LONG;
|
|
|
|
typedef signed char SCHAR;
|
|
typedef signed short int SSHORT;
|
|
typedef signed int SINT;
|
|
typedef signed long int SLONG;
|
|
|
|
typedef unsigned char UCHAR;
|
|
typedef unsigned short int USHORT;
|
|
typedef unsigned int UINT;
|
|
typedef unsigned long int ULONG;
|
|
|
|
typedef unsigned char *FAULT;
|
|
typedef void *POINTER;
|
|
|
|
/********************************************************************/
|
|
/* */
|
|
/* The optional standard types. */
|
|
/* */
|
|
/* Some of the standard types are specified in other headers. */
|
|
/* We need to be careful not to redefine these specifications */
|
|
/* if they already exist. */
|
|
/* */
|
|
/********************************************************************/
|
|
|
|
#ifndef CDECL
|
|
#define CDECL _cdecl
|
|
#endif
|
|
|
|
#ifndef VOID
|
|
#define VOID void
|
|
#endif
|
|
|
|
/********************************************************************/
|
|
/* */
|
|
/* The fixed length types. */
|
|
/* */
|
|
/* The above types are intended to shadow the standard C++ types */
|
|
/* built into the language. However, these types don't assure */
|
|
/* any level of accuracy. Each of following types is defined */
|
|
/* to provide a minimum level of precision. */
|
|
/* */
|
|
/********************************************************************/
|
|
|
|
typedef unsigned __int8 BIT8;
|
|
typedef unsigned __int16 BIT16;
|
|
typedef unsigned __int32 BIT32;
|
|
typedef unsigned __int64 BIT64;
|
|
|
|
typedef signed __int8 SBIT8;
|
|
typedef signed __int16 SBIT16;
|
|
typedef signed __int32 SBIT32;
|
|
typedef signed __int64 SBIT64;
|
|
#endif
|