home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / mmpm21tk.zip / TK / H / MIDIOS2.H < prev    next >
C/C++ Source or Header  |  1993-01-25  |  2KB  |  59 lines

  1. /*static char *SCCSID = "@(#)midi.h    13.11 92/04/13";*/
  2.  
  3. /**************************START OF SPECIFICATIONS **************************/
  4. /*                                                                          */
  5. /* Module NAME:  MIDI.H                                                     */
  6. /*                                                                          */
  7. /*                                                                          */
  8. /* OS/2 2.0 Multimedia Extensions Midi structures and definitions           */
  9. /*                                                                          */
  10. /* Copyright (c) International Business Machines Corporation 1990,1991      */
  11. /*                         All Rights Reserved                              */
  12. /************************** END OF SPECIFICATIONS ***************************/
  13.  
  14. #define STATUS_BIT      0x80
  15.  
  16. #define TRACK_OFF       0
  17. #define TRACK_ON        1
  18.  
  19.  
  20. #define NORMAL_SYSEX    0xf0
  21. #define ESCAPE_SYSEX    0xf7
  22. #define META            0xff
  23. /* Meta stuff */
  24.  
  25.  
  26.  
  27. /* user defined messages for IO PROC */
  28.  
  29. #define  MMIO_SEQ          MMIOM_USER + 1
  30. #define  MMIO_MERGE        MMIOM_USER + 2
  31. #define  MMIO_FROM_SEQ     MMIOM_USER + 3
  32. #define  MMIO_TIMED_READ   MMIOM_USER + 4
  33. #define  MMIO_SET_TRACKS   MMIOM_USER + 5
  34. #define  MMIO_FORMAT_0     MMIOM_USER + 6
  35. #define  MMIO_GETHEADER    MMIOM_GETHEADER
  36. #define  MMIOM_GETFILELENGTH MMIOM_USER + 10
  37. #define  MMIOM_GETTRACKLENGTH MMIOM_USER + 11
  38.  
  39. #pragma pack(1)
  40.  
  41. typedef struct _MIDIHEADER {              /* midiheader */
  42.   CHAR            chHeaderChunk[ 4 ];
  43.   ULONG           ulHeaderLength;
  44.   USHORT          usFormat;
  45.   USHORT          usNumTracks;
  46.   USHORT          usDivision;
  47.   void            *vpAdditionalInformation;
  48.   } MIDIHEADER;
  49.  
  50. typedef struct _MMMIDIHEADER {               /* mmmidiheader */
  51.    ULONG           ulHeaderLength;           /* Length in Bytes */
  52.    ULONG           ulContentType;            /* Image content */
  53.    ULONG           ulMediaType;              /* type of media */
  54.    MIDIHEADER      midiheader;               /* header */
  55.    } MMMIDIHEADER;
  56.  
  57. #pragma pack()
  58. typedef MMMIDIHEADER *PMMMIDIHEADER;
  59.