home *** CD-ROM | disk | FTP | other *** search
/ Sound Sensations! / sound_sensations.iso / miscprog / mvsrc / musiclib.h < prev    next >
Text File  |  1991-01-01  |  1KB  |  39 lines

  1. /*
  2.  
  3.    Header file to the MusicLib library of sound routines for Turbo C.
  4.  
  5. */
  6.  
  7.  
  8. #define BASENOTE 440.00     /* frequency of LA in octave 3 */
  9. #define BASEOCTAVE 3
  10. #define K 1.0595   /* k^12=2 -- constant of the geometric sequence of note frequencies */
  11. #define OCTAVESIZE 12 /* number of notes in octave */
  12. #define BASENOTENUM 11  /* number of LA */
  13.  
  14.  
  15.  
  16. typedef struct {
  17.      char octave;
  18.      char note;
  19.      char staccato;
  20.      unsigned length;
  21.    } NOTEREC;
  22.  
  23. typedef struct { unsigned frequency;
  24.                  unsigned time;
  25.                  unsigned end_delay;  /* delay at the end -- staccato */
  26.          } SOUNDREC;
  27.  
  28.  
  29.                       /* function prototypes */
  30.  
  31. void beep (unsigned freq, unsigned length);
  32. void playnote (unsigned note, unsigned octave, unsigned length, unsigned staccato);
  33. int playnotefile (char *notefilename);
  34. unsigned get_note_freq (unsigned note, unsigned octave);
  35. SOUNDREC *read_note_file (char *fname, SOUNDREC **notebuf, size_t *buf_size);
  36.  
  37.  
  38.  
  39.