home *** CD-ROM | disk | FTP | other *** search
/ Crawly Crypt Collection 1 / crawlyvol1.bin / program / compiler / sozobon / scsrc20 / hcc / param.h < prev    next >
C/C++ Source or Header  |  1991-02-22  |  2KB  |  111 lines

  1. /* Copyright (c) 1988,1991 by Sozobon, Limited.  Author: Johann Ruegg
  2.  *
  3.  * Permission is granted to anyone to use this software for any purpose
  4.  * on any computer system, and to redistribute it freely, with the
  5.  * following restrictions:
  6.  * 1) No charge may be made other than reasonable charges for reproduction.
  7.  * 2) Modified versions must be clearly marked as such.
  8.  * 3) The authors are not responsible for any harmful consequences
  9.  *    of using this software, even if they result from defects in it.
  10.  *
  11.  *    param.h
  12.  *
  13.  *    basic parameters
  14.  */
  15.  
  16. #ifndef MMCC
  17. #define MMCC    0
  18. #endif
  19.  
  20. #ifndef CC68
  21. #define CC68    0
  22. #endif
  23.  
  24. #ifndef dLibs
  25. #define dLibs    0
  26. #endif
  27.  
  28. #undef NULL
  29. #define NULL 0L
  30.  
  31. #ifndef LAT_HOST
  32. #ifndef ACK_HOST
  33. #define ENUMS    1    /* define if host compiler can do enums */
  34. #endif
  35. #endif
  36.  
  37. #define DEBUG    1
  38.  
  39. #define NHASH    32
  40.  
  41. #define ROPEN    "r"
  42. #define WOPEN    "w"
  43. #define FLTFORM "%.3g"
  44.  
  45. #define MAXSTR    256
  46. #define MAXINCL 10
  47. #define NMSIZE    12    /* must be at least 12 */
  48. #define NMXSIZE    32
  49.  
  50. /* sizes of basic types */
  51. #ifndef NOLONGS
  52. #define SIZE_C    1    /* char */
  53. #define SIZE_I    2    /* int */
  54. #define SIZE_S    2    /* short */
  55. #define SIZE_L    4    /* long */
  56. #define SIZE_U    2    /* unsigned */
  57. #define SIZE_F    4    /* float */
  58. #define SIZE_D    4    /* double */
  59. #define SIZE_P    4    /* pointer */
  60. #define MAXINT    0x7fffL
  61. #define MININT    -0x8000L
  62. #define MAXUNS    0xffffL
  63. #else
  64. #define SIZE_C    1    /* char */
  65. #define SIZE_I    4    /* int */
  66. #define SIZE_S    2    /* short */
  67. #define SIZE_L    4    /* long */
  68. #define SIZE_U    4    /* unsigned */
  69. #define SIZE_F    4    /* float */
  70. #define SIZE_D    4    /* double */
  71. #define SIZE_P    4    /* pointer */
  72. #define MAXINT    0x7fffffff
  73. #endif
  74.  
  75. /* alignment requirements */
  76. #define ALN_C    0    /* char */
  77. #define ALN_I    1    /* int */
  78. #define ALN_S    1    /* short */
  79. #define ALN_L    1    /* long */
  80. #define ALN_U    1    /* unsigned */
  81. #define ALN_F    1    /* float */
  82. #define ALN_D    1    /* double */
  83. #define ALN_P    1    /* pointer */
  84.  
  85. #define STACKALN 1
  86.  
  87. /* usage for registers */
  88. #ifndef OUT_AZ
  89. #define DRV_START    3
  90. #define DRV_END        7
  91. #define AREG        8
  92. #define ARV_START    AREG+3
  93. #define ARV_END        AREG+5
  94. #define FRAMEP        AREG+6
  95. #else
  96. #define DRV_START    4
  97. #define DRV_END        7
  98. #define AREG        8
  99. #define ARV_START    AREG+3
  100. #define ARV_END        AREG+4
  101. #define FRAMEP        AREG+5
  102. #endif
  103.  
  104. /* definition of stack frame */
  105. #define ARG_BASE    8
  106. #define LOC_BASE    0
  107.  
  108. /* need for own buffers (ALCYON hack ) ? */
  109. #define NEEDBUF        0
  110.  
  111.