home *** CD-ROM | disk | FTP | other *** search
/ Shareware Overload / ShartewareOverload.cdr / windows / winsrc.zip / PORT.H < prev    next >
Text File  |  1990-08-17  |  2KB  |  76 lines

  1. /**************************************
  2. **
  3. ** PORT.H : Miscellaneous definitions for portability.    Please add
  4. ** to this file for any new machines/compilers you may have.
  5. */
  6.  
  7. #ifndef PORT_H        /* If this is defined, this file has been    */
  8. #define PORT_H 1    /* included already in this module.            */
  9.  
  10. #ifdef MSDOS        /* Microsoft C 5.1 for OS/2 and MSDOS */
  11.     typedef unsigned char U8;
  12.     typedef signed char S8;
  13.     typedef unsigned short U16;
  14.     typedef signed short S16;
  15.     typedef unsigned long U32;
  16.     typedef signed long S32;
  17.     #define CONST const
  18.     #define PRINTER "/dev/prn"
  19.     #define LOBYTEFIRST 1
  20. #else            /* may be Turbo-C */
  21. #ifdef __MSDOS__        /* TURBO-C */
  22.     typedef unsigned char U8;
  23.     typedef signed char S8;
  24.     typedef unsigned short U16;
  25.     typedef signed short S16;
  26.     typedef unsigned long U32;
  27.     typedef signed long S32;
  28.     #define CONST const
  29.     #define PRINTER "/dev/prn"
  30.     #define LOBYTEFIRST 1
  31. #else                /* Have to nest because #elif is not portable */
  32. #ifdef AMIGA        /* Lattice C 3.02 for Amiga */
  33.     typedef UBYTE U8;
  34.     typedef BYTE S8;
  35.     typedef UWORD U16;
  36.     typedef WORD S16;
  37.     typedef unsigned int U32;
  38.     typedef int S32;
  39.     #define CONST
  40.     #define PRINTER "PRT:"
  41. #else
  42. #ifdef unix            /* AT&T 7300 (Unix PC) */
  43.     typedef unsigned char U8;
  44.     typedef char S8;
  45.     typedef unsigned short U16;
  46.     typedef short S16;
  47.     typedef long U32;    /* May cause some problems */
  48.     typedef long S32;
  49.     #define CONST
  50.     #define PRINTER "/dev/lp"
  51. #endif
  52. #endif
  53. #endif
  54. #endif
  55.  
  56. #ifdef MSDOS
  57.     #define READMODE    "rb"    /* Correct DOS text-mode        */
  58.     #define WRITEMODE    "wb"    /* file open "feature".         */
  59. #else
  60. #ifdef __MSDOS__
  61.     #define READMODE    "rb"    /* Correct DOS text-mode        */
  62.     #define WRITEMODE    "wb"    /* file open "feature".         */
  63. #else
  64.     #define READMODE    "r"
  65.     #define WRITEMODE    "w"
  66. #endif
  67. #endif
  68.  
  69. #ifdef LOBYTEFIRST
  70.     #define GET16(c,i)        (i)=*((U16*)(&(c)))
  71. #else
  72.     #define GET16(c,i)        (i)=(c)+(*((char*)&(c)+1))<<8
  73. #endif
  74.  
  75. #endif    /* PORT_H */
  76.