home *** CD-ROM | disk | FTP | other *** search
/ Power-Programmierung / CD2.mdf / c / library / xplatfrm / tierra / portable.h < prev    next >
Encoding:
C/C++ Source or Header  |  1992-04-26  |  3.2 KB  |  118 lines

  1. /* portable.h 28-10-91  definitions for portability */
  2. /** Tierra Simulator V3.0: Copyright (c) 1991 Thomas S. Ray **/
  3.  
  4. #include "license.h"
  5.  
  6. /*
  7. #ifndef lint
  8. static char     sccsid[] = "%W%     %G%";
  9. #endif
  10. */
  11.  
  12. #ifndef PORTABLE_H
  13. #define PORTABLE_H
  14.  
  15. #ifdef __TURBOC__
  16.  
  17. #include <stdlib.h>
  18. #include <limits.h>
  19. #include <alloc.h>
  20. #include <dir.h>
  21. #include <dos.h>
  22. #include <mem.h>
  23. #define ANSI
  24. #define Hp     huge  *
  25. #define Fp     far   *
  26. #define Np     near  *
  27. typedef signed char      I8s;   /*  8 bit integer */
  28. typedef unsigned char    I8u;   /*  8 bit integer */
  29. typedef signed int       I16s;  /* 16 bit integer */
  30. typedef unsigned int     I16u;  /* 16 bit integer */
  31. typedef signed long      I32s;  /* 32 bit integer */
  32. typedef unsigned long    I32u;  /* 32 bit integer */
  33.  
  34. #endif /* __TURBOC__ */
  35.  
  36. #ifdef MSDOS /* always defined by Microsoft C compiler & NDPC compiler */
  37.              /* Microsoft C sets _osmode == OS2_MODE or DOS_MODE */
  38.  
  39.              /* for OS/2: */
  40.              /* #define OS2_MC
  41.                 #define INCL_DOS
  42.                 #include <os2.h>
  43.                 #include <limits.h>
  44.                 #include <stdlib.h>  */
  45.  
  46. #define ANSI
  47. #define Hp     huge  *
  48. #define Fp     far   *
  49. #define Np     near  *
  50. typedef signed char      I8s;   /*  8 bit integer */
  51. typedef unsigned char    I8u;   /*  8 bit integer */
  52. typedef signed int       I16s;  /* 16 bit integer */
  53. typedef unsigned int     I16u;  /* 16 bit integer */
  54. typedef signed long      I32s;  /* 32 bit integer */
  55. typedef unsigned long    I32u;  /* 32 bit integer */
  56.  
  57. #endif /* MSDOS */
  58.  
  59. #ifdef unix
  60.  
  61. #ifdef __GNUC__
  62.  
  63. #include <limits.h>
  64. #define ANSI
  65.  
  66. #else  /* __GNUC__ not defined */
  67.  
  68. #define UCHAR_MAX ((unsigned char) (~0))
  69. #define CHAR_MAX ((char) (UCHAR_MAX >> 1))
  70. #define UINT_MAX ((unsigned short) (~0))
  71. #define INT_MAX ((short) (UINT_MAX >> 1))
  72. #define ULONG_MAX ((unsigned int) (~0))
  73. #define LONG_MAX ((int) (ULONG_MAX >> 1))
  74.  
  75. #endif /* __GNUC__ */
  76.  
  77. #define Hp     *
  78. #define Fp     *
  79. #define Np     *
  80. typedef char             I8s;   /*  8 bit integer */
  81. typedef unsigned char    I8u;   /*  8 bit integer */
  82. typedef short            I16s;  /* 16 bit integer */
  83. typedef unsigned short   I16u;  /* 16 bit integer */
  84. typedef int              I32s;  /* 32 bit integer */
  85. typedef unsigned int     I32u;  /* 32 bit integer */
  86.  
  87. #endif /* unix */
  88.  
  89. #ifdef IBM3090
  90.  
  91. #define UCHAR_MAX ((unsigned char) (~0))
  92. #define CHAR_MAX ((char) (UCHAR_MAX >> 1))
  93. #define UINT_MAX ((unsigned short) (~0))
  94. #define INT_MAX ((short) (UINT_MAX >> 1))
  95. #define ULONG_MAX ((unsigned int) (~0))
  96. #define LONG_MAX ((int) (ULONG_MAX >> 1))
  97. #define Hp     *
  98. #define Fp     *
  99. #define Np     *
  100. typedef char             I8s;   /*  8 bit integer */
  101. typedef unsigned char    I8u;   /*  8 bit integer */
  102. typedef short            I16s;  /* 16 bit integer */
  103. typedef unsigned short   I16u;  /* 16 bit integer */
  104. typedef int              I32s;  /* 32 bit integer */
  105. typedef unsigned int     I32u;  /* 32 bit integer */
  106.  
  107. #endif /* IBM3090 */
  108.  
  109. #ifdef ANSI           /* ANSI prototyping */
  110. #define P_(A) A
  111. #define const const
  112. #else                 /* non-ANSI prototyping */
  113. #define P_(A) ()
  114. #define const
  115. #endif
  116.  
  117. #endif /* #ifndef PORTABLE_H */
  118.