home *** CD-ROM | disk | FTP | other *** search
/ Large Pack of OldSkool DOS MOD Trackers / goattracker_2.68.zip / src / bme / bme_main.h < prev    next >
C/C++ Source or Header  |  2008-04-01  |  6KB  |  222 lines

  1. // BME main definitions header file
  2.  
  3. #define GFX_SCANLINES 1
  4. #define GFX_DOUBLESIZE 2
  5. #define GFX_USE1PAGE 0
  6. #define GFX_USE2PAGES 4
  7. #define GFX_USE3PAGES 8
  8. #define GFX_WAITVBLANK 16
  9. #define GFX_FULLSCREEN 32
  10. #define GFX_WINDOW 64
  11. #define GFX_NOSWITCHING 128
  12. #define GFX_USEDIBSECTION 256
  13.  
  14. #define MOUSE_ALWAYS_VISIBLE 0
  15. #define MOUSE_FULLSCREEN_HIDDEN 1
  16. #define MOUSE_ALWAYS_HIDDEN 2
  17.  
  18. #define MOUSEB_LEFT 1
  19. #define MOUSEB_RIGHT 2
  20. #define MOUSEB_MIDDLE 4
  21.  
  22. #define JOY_LEFT 1
  23. #define JOY_RIGHT 2
  24. #define JOY_UP 4
  25. #define JOY_DOWN 8
  26. #define JOY_FIRE1 16
  27. #define JOY_FIRE2 32
  28. #define JOY_FIRE3 64
  29. #define JOY_FIRE4 128
  30.  
  31. #define LEFT 0
  32. #define MIDDLE 128
  33. #define RIGHT 255
  34.  
  35. #define B_OFF 0
  36. #define B_SOLID 1
  37. #define B_NOTSOLID 2
  38.  
  39. #define MONO 0
  40. #define STEREO 1
  41. #define EIGHTBIT 0
  42. #define SIXTEENBIT 2
  43.  
  44. #define VM_OFF 0
  45. #define VM_ON 1
  46. #define VM_ONESHOT 0
  47. #define VM_LOOP 2
  48. #define VM_16BIT 4
  49.  
  50. #define KEY_BACKSPACE    SDLK_BACKSPACE
  51. #define KEY_CAPSLOCK     SDLK_CAPSLOCK
  52. #define KEY_ENTER        SDLK_RETURN
  53. #define KEY_ESC          SDLK_ESCAPE
  54. #define KEY_ALT          SDLK_LALT
  55. #define KEY_CTRL         SDLK_LCTRL
  56. #define KEY_LEFTCTRL     SDLK_LCTRL
  57. #define KEY_RIGHTALT     SDLK_RALT
  58. #define KEY_RIGHTCTRL    SDLK_RCTRL
  59. #define KEY_LEFTSHIFT    SDLK_LSHIFT
  60. #define KEY_RIGHTSHIFT   SDLK_RSHIFT
  61. #define KEY_NUMLOCK      SDLK_NUMLOCK
  62. #define KEY_SCROLLLOCK   SDLK_SCROLLOCK
  63. #define KEY_SPACE        SDLK_SPACE
  64. #define KEY_TAB          SDLK_TAB
  65. #define KEY_F1           SDLK_F1
  66. #define KEY_F2           SDLK_F2
  67. #define KEY_F3           SDLK_F3
  68. #define KEY_F4           SDLK_F4
  69. #define KEY_F5           SDLK_F5
  70. #define KEY_F6           SDLK_F6
  71. #define KEY_F7           SDLK_F7
  72. #define KEY_F8           SDLK_F8
  73. #define KEY_F9           SDLK_F9
  74. #define KEY_F10          SDLK_F10
  75. #define KEY_F11          SDLK_F11
  76. #define KEY_F12          SDLK_F12
  77. #define KEY_A            SDLK_a
  78. #define KEY_N            SDLK_n
  79. #define KEY_B            SDLK_b
  80. #define KEY_O            SDLK_o
  81. #define KEY_C            SDLK_c
  82. #define KEY_P            SDLK_p
  83. #define KEY_D            SDLK_d
  84. #define KEY_Q            SDLK_q
  85. #define KEY_E            SDLK_e
  86. #define KEY_R            SDLK_r
  87. #define KEY_F            SDLK_f
  88. #define KEY_S            SDLK_s
  89. #define KEY_G            SDLK_g
  90. #define KEY_T            SDLK_t
  91. #define KEY_H            SDLK_h
  92. #define KEY_U            SDLK_u
  93. #define KEY_I            SDLK_i
  94. #define KEY_V            SDLK_v
  95. #define KEY_J            SDLK_j
  96. #define KEY_W            SDLK_w
  97. #define KEY_K            SDLK_k
  98. #define KEY_X            SDLK_x
  99. #define KEY_L            SDLK_l
  100. #define KEY_Y            SDLK_y
  101. #define KEY_M            SDLK_m
  102. #define KEY_Z            SDLK_z
  103. #define KEY_1            SDLK_1
  104. #define KEY_2            SDLK_2
  105. #define KEY_3            SDLK_3
  106. #define KEY_4            SDLK_4
  107. #define KEY_5            SDLK_5
  108. #define KEY_6            SDLK_6
  109. #define KEY_7            SDLK_7
  110. #define KEY_8            SDLK_8
  111. #define KEY_9            SDLK_9
  112. #define KEY_0            SDLK_0
  113. #define KEY_MINUS        SDLK_MINUS
  114. #define KEY_EQUAL        SDLK_EQUALS
  115. #define KEY_BRACKETL     SDLK_LEFTBRACKET
  116. #define KEY_BRACKETR     SDLK_RIGHTBRACKET
  117. #define KEY_SEMICOLON    SDLK_SEMICOLON
  118. #define KEY_APOST1       SDLK_QUOTE
  119. #define KEY_APOST2       SDLK_BACKQUOTE
  120. #define KEY_COMMA        SDLK_COMMA
  121. #define KEY_COLON        SDLK_PERIOD
  122. #define KEY_PERIOD       SDLK_PERIOD
  123. #define KEY_SLASH        SDLK_SLASH
  124. #define KEY_BACKSLASH    SDLK_BACKSLASH
  125. #define KEY_DEL          SDLK_DELETE
  126. #define KEY_DOWN         SDLK_DOWN
  127. #define KEY_END          SDLK_END
  128. #define KEY_HOME         SDLK_HOME
  129. #define KEY_INS          SDLK_INSERT
  130. #define KEY_LEFT         SDLK_LEFT
  131. #define KEY_PGDN         SDLK_PAGEDOWN
  132. #define KEY_PGUP         SDLK_PAGEUP
  133. #define KEY_RIGHT        SDLK_RIGHT
  134. #define KEY_UP           SDLK_UP
  135. #define KEY_WINDOWSL     SDLK_LSUPER
  136. #define KEY_WINDOWSR     SDLK_RSUPER
  137. #define KEY_MENU         SDLK_MENU
  138. #define KEY_PAUSE        SDLK_PAUSE
  139. #define KEY_KPDIVIDE     SDLK_KP_DIVIDE
  140. #define KEY_KPMULTIPLY   SDLK_KP_MULTIPLY
  141. #define KEY_KPPLUS       SDLK_KP_PLUS
  142. #define KEY_KPMINUS      SDLK_KP_MINUS
  143. #define KEY_KP0          SDLK_KP0
  144. #define KEY_KP1          SDLK_KP1
  145. #define KEY_KP2          SDLK_KP2
  146. #define KEY_KP3          SDLK_KP3
  147. #define KEY_KP4          SDLK_KP4
  148. #define KEY_KP5          SDLK_KP5
  149. #define KEY_KP6          SDLK_KP6
  150. #define KEY_KP7          SDLK_KP7
  151. #define KEY_KP8          SDLK_KP8
  152. #define KEY_KP9          SDLK_KP9
  153. #define KEY_KPUP         SDLK_KP8
  154. #define KEY_KPDOWN       SDLK_KP2
  155. #define KEY_KPLEFT       SDLK_KP4
  156. #define KEY_KPRIGHT      SDLK_KP6
  157. #define KEY_KPENTER      SDLK_KP_ENTER
  158. #define KEY_KPEQUALS     SDLK_KP_EQUALS
  159. #define KEY_KPPERIOD     SDLK_KP_PERIOD
  160.  
  161.  
  162. typedef struct
  163. {
  164.     Sint8 *start;
  165.     Sint8 *repeat;
  166.     Sint8 *end;
  167.     unsigned char voicemode;
  168. } SAMPLE;
  169.  
  170. typedef struct
  171. {
  172.     volatile Sint8 *pos;
  173.     Sint8 *repeat;
  174.     Sint8 *end;
  175.     SAMPLE *smp;
  176.     unsigned freq;
  177.     volatile unsigned fractpos;
  178.     int vol;
  179.     int mastervol;
  180.     unsigned panning;
  181.     volatile unsigned voicemode;
  182. } CHANNEL;
  183.  
  184. typedef struct
  185. {
  186.   unsigned rawcode;
  187.   char *name;
  188. } KEY;
  189.  
  190. typedef struct
  191. {
  192.   Sint16 xsize;
  193.   Sint16 ysize;
  194.   Sint16 xhot;
  195.   Sint16 yhot;
  196.   Uint32 offset;
  197. } SPRITEHEADER;
  198.  
  199. typedef struct
  200. {
  201.   Uint32 type;
  202.   Uint32 offset;
  203. } BLOCKHEADER;
  204.  
  205. typedef struct
  206. {
  207.   Uint8 blocksname[13];
  208.   Uint8 palettename[13];
  209. } MAPHEADER;
  210.  
  211. typedef struct
  212. {
  213.   Sint32 xsize;
  214.   Sint32 ysize;
  215.   Uint8 xdivisor;
  216.   Uint8 ydivisor;
  217.   Uint8 xwrap;
  218.   Uint8 ywrap;
  219. } LAYERHEADER;
  220.  
  221. extern int bme_error;
  222.