home *** CD-ROM | disk | FTP | other *** search
/ Chestnut's Multimedia Mania / MM_MANIA.ISO / midi / cmtcmu / musiprog.h < prev    next >
Encoding:
C/C++ Source or Header  |  1990-06-28  |  1.0 KB  |  52 lines

  1. /* musiprog.h -- include file for cmt application programs */
  2.  
  3. #define true 1
  4. #define false 0
  5.  
  6. /*
  7.  * override the definition of l_rest
  8.  */
  9. #define l_rest(d) m_rest(d)
  10. #define l_restuntil(t) m_restuntil(t)
  11.  
  12. long gettime();
  13.  
  14. #define rest(x) l_rest( (long) x )
  15. #define restuntil(x) l_restuntil( (long) x)
  16.  
  17. #define when if (
  18. #define then ) {
  19. #define otherwise ;} else {
  20. #define endif ;}
  21. #define endwhen ;}
  22. #define begin {
  23. #define end ;}
  24.  
  25. #define repeat(var, count) {int var; for (var=1; var <= count; var++) {
  26. #define endrep ;}}
  27.  
  28. extern cause();
  29. extern long event_time;
  30.  
  31. int moxc_loudness = 127;
  32.  
  33. #define loud(l) moxc_loudness = (l);
  34.  
  35. /* pnote -- play a note, return immediately */
  36. /**/
  37. pnote(pitch, duration)
  38.     begin
  39.     midi_note(1, pitch, moxc_loudness);
  40.     cause(duration, midi_note, 1, pitch, 0);
  41.     end
  42.  
  43.  
  44. /* note -- play a note, return after end of note */
  45. /**/
  46. note(pitch, duration)
  47.     begin
  48.         midi_note(1, pitch, moxc_loudness);
  49.     rest(duration);
  50.     midi_note(1, pitch, 0);
  51.     end
  52.