1/* Defines and Structures for Instrument Collection Form RIFF DLS2
  2 *
  3 * Copyright (C) 2003-2004 Rok Mandeljc
  4 *
  5 * This program is free software; you can redistribute it and/or
  6 * modify it under the terms of the GNU Lesser General Public
  7 * License as published by the Free Software Foundation; either
  8 * version 2.1 of the License, or (at your option) any later version.
  9 *
 10 * This program is distributed in the hope that it will be useful,
 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 13 * Lesser General Public License for more details.
 14 *
 15 * You should have received a copy of the GNU Lesser General Public
 16 * License along with this program; if not, write to the Free Software
 17 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
 18 */
 19
 20#ifndef __WINE_INCLUDE_DLS2_H
 21#define __WINE_INCLUDE_DLS2_H
 22
 23/*****************************************************************************
 24 * DLSIDs - property set
 25 */ 
 26DEFINE_GUID(DLSID_GMInHardware,       0x178f2f24,0xc364,0x11d1,0xa7,0x60,0x00,0x00,0xf8,0x75,0xac,0x12);
 27DEFINE_GUID(DLSID_GSInHardware,       0x178f2f25,0xc364,0x11d1,0xa7,0x60,0x00,0x00,0xf8,0x75,0xac,0x12);
 28DEFINE_GUID(DLSID_ManufacturersID,    0xb03e1181,0x8095,0x11d2,0xa1,0xef,0x00,0x60,0x08,0x33,0xdb,0xd8);
 29DEFINE_GUID(DLSID_ProductID,          0xb03e1182,0x8095,0x11d2,0xa1,0xef,0x00,0x60,0x08,0x33,0xdb,0xd8);
 30DEFINE_GUID(DLSID_SampleMemorySize,   0x178f2f28,0xc364,0x11d1,0xa7,0x60,0x00,0x00,0xf8,0x75,0xac,0x12);
 31DEFINE_GUID(DLSID_SupportsDLS1,       0x178f2f27,0xc364,0x11d1,0xa7,0x60,0x00,0x00,0xf8,0x75,0xac,0x12);
 32DEFINE_GUID(DLSID_SupportsDLS2,       0xf14599e5,0x4689,0x11d2,0xaf,0xa6,0x00,0xaa,0x00,0x24,0xd8,0xb6);
 33DEFINE_GUID(DLSID_SamplePlaybackRate, 0x2a91f713,0xa4bf,0x11d2,0xbb,0xdf,0x00,0x60,0x08,0x33,0xdb,0xd8);
 34DEFINE_GUID(DLSID_XGInHardware,       0x178f2f26,0xc364,0x11d1,0xa7,0x60,0x00,0x00,0xf8,0x75,0xac,0x12);
 35
 36/*****************************************************************************
 37 * FOURCCs
 38 */ 
 39#define FOURCC_RGN2  mmioFOURCC('r','g','n','2')
 40#define FOURCC_LAR2  mmioFOURCC('l','a','r','2')
 41#define FOURCC_ART2  mmioFOURCC('a','r','t','2')
 42#define FOURCC_CDL   mmioFOURCC('c','d','l',' ')
 43#define FOURCC_DLID  mmioFOURCC('d','l','i','d')
 44
 45/*****************************************************************************
 46 * Flags
 47 */
 48#define CONN_DST_GAIN             0x001
 49#define CONN_DST_KEYNUMBER        0x005
 50
 51#define CONN_DST_LEFT             0x010
 52#define CONN_DST_RIGHT            0x011
 53#define CONN_DST_CENTER           0x012
 54#define CONN_DST_LEFTREAR         0x013
 55#define CONN_DST_RIGHTREAR        0x014
 56#define CONN_DST_LFE_CHANNEL      0x015
 57#define CONN_DST_CHORUS           0x080
 58#define CONN_DST_REVERB           0x081
 59
 60#define CONN_DST_VIB_FREQUENCY    0x114
 61#define CONN_DST_VIB_STARTDELAY   0x115	
 62
 63#define CONN_DST_EG1_DELAYTIME    0x20B
 64#define CONN_DST_EG1_HOLDTIME     0x20C
 65#define CONN_DST_EG1_SHUTDOWNTIME 0x20D
 66
 67#define CONN_DST_EG2_DELAYTIME    0x30F
 68#define CONN_DST_EG2_HOLDTIME     0x310
 69
 70#define CONN_DST_FILTER_CUTOFF    0x500
 71#define CONN_DST_FILTER_Q         0x501
 72
 73#define CONN_SRC_POLYPRESSURE     0x007
 74#define CONN_SRC_CHANNELPRESSURE  0x008
 75#define CONN_SRC_VIBRATO          0x009
 76#define CONN_SRC_MONOPRESSURE     0x00A
 77
 78#define CONN_SRC_CC91             0x0DB
 79#define CONN_SRC_CC93             0x0DD
 80
 81#define CONN_TRN_CONVEX           0x002
 82#define CONN_TRN_SWITCH           0x003
 83
 84#define DLS_CDL_AND            0x01
 85#define DLS_CDL_OR             0x02
 86#define DLS_CDL_XOR            0x03
 87#define DLS_CDL_ADD            0x04
 88#define DLS_CDL_SUBTRACT       0x05
 89#define DLS_CDL_MULTIPLY       0x06
 90#define DLS_CDL_DIVIDE         0x07
 91#define DLS_CDL_LOGICAL_AND    0x08
 92#define DLS_CDL_LOGICAL_OR     0x09
 93#define DLS_CDL_LT             0x0A
 94#define DLS_CDL_LE             0x0B
 95#define DLS_CDL_GT             0x0C
 96#define DLS_CDL_GE             0x0D
 97#define DLS_CDL_EQ             0x0E
 98#define DLS_CDL_NOT            0x0F
 99#define DLS_CDL_CONST          0x10
100#define DLS_CDL_QUERY          0x11
101#define DLS_CDL_QUERYSUPPORTED 0x12
102
103#define F_WAVELINK_MULTICHANNEL 0x2
104
105#define WLOOP_TYPE_RELEASE 0x1
106
107#endif	/* __WINE_INCLUDE_DLS2_H */