home *** CD-ROM | disk | FTP | other *** search
/ GEMini Atari / GEMini_Atari_CD-ROM_Walnut_Creek_December_1993.iso / files / mint / mint095s / mint.h < prev    next >
C/C++ Source or Header  |  1993-08-03  |  3KB  |  154 lines

  1. /*
  2. Copyright 1990,1991,1992 Eric R. Smith. All rights reserved.
  3. */
  4.  
  5. #ifdef OWN_LIB
  6. #include "ctype.h"
  7. #else
  8. #include <ctype.h>
  9. #include <string.h>
  10. #endif
  11. #include <osbind.h>
  12.  
  13. /* WARNING: Bconmap is defined incorrectly
  14.  * in the MiNT library osbind.h at patchlevel
  15.  * <= 19 and in the GNU C library
  16.  */
  17.  
  18. #ifdef __GNUC__
  19. #undef Bconmap
  20. #define Bconmap(dev) (long)trap_14_ww(0x2c, dev)
  21. #endif
  22.  
  23. #ifndef Bconmap
  24. #define Bconmap(dev) xbios(0x2c, dev)
  25. #endif
  26.  
  27. /* configuration options */
  28.  
  29. /* make real processor exceptions (bus error, etc.) raise a signal */
  30. #define EXCEPTION_SIGS
  31.  
  32. /* deliberately fill memory with junk when allocating: used for testing */
  33. #undef JUNK_MEM
  34.  
  35. /* PATH_MAX is the maximum path allowed. The kernel uses this in lots of
  36.  * places, so there isn't much point in file systems allowing longer
  37.  * paths (they can restrict paths to being shorter if they want).
  38.  */
  39. #define PATH_MAX 128
  40.  
  41. /* maximum length of a string passed to ksprintf: this should be
  42.  * no more than PATH_MAX
  43.  */
  44. #define SPRINTF_MAX    PATH_MAX
  45.  
  46. /* NOTE: NAME_MAX is a "suggested" maximum name length only. Individual
  47.  * file systems may choose a longer or shorter NAME_MAX, so do _not_
  48.  * use this in the kernel for anything!
  49.  */
  50. #define NAME_MAX 14
  51.  
  52. /*
  53.  * configuration section: put compiler specific stuff here
  54.  */
  55.  
  56. #ifdef __GNUC__
  57. #define EXITING volatile    /* function never returns */
  58. #else
  59. #define EXITING
  60. #endif
  61.  
  62. #ifdef dLibs
  63. #define fullpath full_path
  64. #define SHORT_NAMES
  65. #endif
  66.  
  67. #ifdef OWN_LIB
  68. /* Sigh. Some compilers are too clever for their
  69.  * own good; gcc 2.1 now makes strcpy() and some
  70.  * other string functions built-in; the built-in
  71.  * definitions disagree with ours. So we redefine
  72.  * them here. This also helps us to avoid conflict
  73.  * with any library stuff, in the event that we
  74.  * have to link in a library.
  75.  */
  76.  
  77. #define strlen    MS_len
  78. #define strcpy    MS_cpy
  79. #define strncpy    MS_ncpy
  80. #define strcat    MS_cat
  81. #define strncat    MS_ncat
  82. #define strcmp    MS_cmp
  83. #define strncmp    MS_ncmp
  84. #define strnicmp    MS_nicmp
  85. #define stricmp    MS_icmp
  86. #define strlwr    MS_lwr
  87. #define strupr    MS_upr
  88. #define sleep    M_sleep
  89. #endif
  90.  
  91. #ifdef SHORT_NAMES
  92. #define dispose_fileptr ds_fileptr
  93. #define dispose_region ds_region
  94. #define dispose_proc ds_proc
  95. #endif
  96.  
  97. /* prototype macro thingy */
  98. #ifdef __STDC__
  99. #define P_(x) x
  100. #else
  101. #define P_(x) ()
  102. #define const
  103. #endif
  104.  
  105. #include "assert.h"
  106. #include "atarierr.h"
  107. #include "basepage.h"
  108. #include "types.h"
  109. #include "signal.h"
  110. #include "mem.h"
  111. #include "proc.h"
  112. #include "proto.h"
  113. #include "sproto.h"
  114.  
  115. #ifndef NULL
  116. #define NULL ((void *)0)
  117. #endif
  118.  
  119. #ifndef TRUE
  120. #define TRUE 1
  121. #define FALSE 0
  122. #endif
  123.  
  124. #define check_addr(x) 0
  125. #define yield() sleep(READY_Q, 0L)
  126.  
  127. #define CTRL(x) ((x) & 0x1f)
  128.  
  129. extern short timestamp, datestamp;    /* in timeout.c */
  130.  
  131. typedef struct kbdvbase {
  132.     long midivec;
  133.     long vkbderr;
  134.     long vmiderr;
  135.     long statvec;
  136.     long mousevec;
  137.     long clockvec;
  138.     long joyvec;
  139.     long midisys;
  140.     long ikbdsys;
  141. } KBDVEC;
  142.  
  143. extern KBDVEC *syskey;
  144.  
  145. #define ST    0
  146. #define STE    0x00010000L
  147. #define MEGASTE 0x00010010L
  148. #define TT    0x00020000L
  149.  
  150. extern long mch;
  151.  
  152. extern int has_bconmap;    /* set in main() */
  153. extern int curbconmap;  /* see xbios.c */
  154.