home *** CD-ROM | disk | FTP | other *** search
/ Frozen Fish 1: Amiga / FrozenFish-Apr94.iso / bbs / alib / d1xx / d114 / wblander.lha / WBLander / Source / sounds.h < prev    next >
C/C++ Source or Header  |  1987-11-22  |  997b  |  45 lines

  1. /* sounds.h - karl's meta-sample structure that defines stuff about sounds */
  2.  
  3. /* define the IOB array entries in sound structures */
  4.  
  5. #define MAX_SOUND_IOBS 5
  6.  
  7. #define ALLOC_IOB 0
  8. #define PLAY_IOB 1
  9. #define STOP_IOB 2
  10. #define PERVOL_IOB 3
  11. #define FREE_IOB 4
  12.  
  13. /* define the sound structure:  this is the master structure, containing
  14.  * pointers to name, the sample data, the IOBs, and a message port */
  15.  
  16. /* note that cycles of zero is repeat-until-aborted */
  17.  
  18. typedef struct
  19. {
  20.     char *name;
  21.     Sample *samplep;
  22.     int cycles, volume, flags, precedence, detune;
  23.     struct IOAudio *IOBs[MAX_SOUND_IOBS];
  24.     struct MsgPort *port;
  25. } Sound;
  26.  
  27. /* definitions of sound port bits */
  28.  
  29. #define LEFT0 1
  30. #define RIGHT0 2
  31. #define RIGHT1 4
  32. #define LEFT1 8
  33.  
  34. #define LEFTSIDE (LEFT0 | LEFT1)
  35. #define RIGHTSIDE (RIGHT0 | RIGHT1)
  36.  
  37. /* flag bits */
  38.  
  39. #define PLAYING 1        /* controlled by software */
  40.  
  41. #define LEFT 2            /* user parameter */
  42. #define RIGHT 0            /* placeholder user parameter */
  43.  
  44. #define EITHER 4    /* user parameter */
  45.