diff options
Diffstat (limited to '')
-rw-r--r-- | src/VBox/Devices/Graphics/shaderlib/wine/include/dls1.h | 212 |
1 files changed, 212 insertions, 0 deletions
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/dls1.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/dls1.h new file mode 100644 index 00000000..cdad5898 --- /dev/null +++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/dls1.h @@ -0,0 +1,212 @@ +/* Defines and Structures for Instrument Collection Form RIFF DLS1 + * + * Copyright (C) 2003-2004 Rok Mandeljc + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + */ + +/* + * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice + * other than GPL or LGPL is available it will apply instead, Oracle elects to use only + * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where + * a choice of LGPL license versions is made available with the language indicating + * that LGPLv2 or any later version may be used, or where a choice of which version + * of the LGPL is applied is otherwise unspecified. + */ + + +#ifndef __WINE_INCLUDE_DLS1_H +#define __WINE_INCLUDE_DLS1_H + +/***************************************************************************** + * FOURCCs + */ +#define FOURCC_DLS mmioFOURCC('D','L','S',' ') +#define FOURCC_DLID mmioFOURCC('d','l','i','d') +#define FOURCC_COLH mmioFOURCC('c','o','l','h') +#define FOURCC_WVPL mmioFOURCC('w','v','p','l') +#define FOURCC_PTBL mmioFOURCC('p','t','b','l') +#define FOURCC_PATH mmioFOURCC('p','a','t','h') +#define FOURCC_wave mmioFOURCC('w','a','v','e') +#define FOURCC_LINS mmioFOURCC('l','i','n','s') +#define FOURCC_INS mmioFOURCC('i','n','s',' ') +#define FOURCC_INSH mmioFOURCC('i','n','s','h') +#define FOURCC_LRGN mmioFOURCC('l','r','g','n') +#define FOURCC_RGN mmioFOURCC('r','g','n',' ') +#define FOURCC_RGNH mmioFOURCC('r','g','n','h') +#define FOURCC_LART mmioFOURCC('l','a','r','t') +#define FOURCC_ART1 mmioFOURCC('a','r','t','1') +#define FOURCC_WLNK mmioFOURCC('w','l','n','k') +#define FOURCC_WSMP mmioFOURCC('w','s','m','p') +#define FOURCC_VERS mmioFOURCC('v','e','r','s') + +/***************************************************************************** + * Flags + */ + +#define CONN_DST_NONE 0x000 +#define CONN_DST_ATTENUATION 0x001 +#define CONN_DST_PITCH 0x003 +#define CONN_DST_PAN 0x004 + +#define CONN_DST_LFO_FREQUENCY 0x104 +#define CONN_DST_LFO_STARTDELAY 0x105 + +#define CONN_DST_EG1_ATTACKTIME 0x206 +#define CONN_DST_EG1_DECAYTIME 0x207 +#define CONN_DST_EG1_RELEASETIME 0x209 +#define CONN_DST_EG1_SUSTAINLEVEL 0x20A + +#define CONN_DST_EG2_ATTACKTIME 0x30A +#define CONN_DST_EG2_DECAYTIME 0x30B +#define CONN_DST_EG2_RELEASETIME 0x30D +#define CONN_DST_EG2_SUSTAINLEVEL 0x30E + +#define CONN_SRC_NONE 0x000 +#define CONN_SRC_LFO 0x001 +#define CONN_SRC_KEYONVELOCITY 0x002 +#define CONN_SRC_KEYNUMBER 0x003 +#define CONN_SRC_EG1 0x004 +#define CONN_SRC_EG2 0x005 +#define CONN_SRC_PITCHWHEEL 0x006 + +#define CONN_SRC_CC1 0x081 +#define CONN_SRC_CC7 0x087 +#define CONN_SRC_CC10 0x08A +#define CONN_SRC_CC11 0x08B + +#define CONN_TRN_NONE 0x000 +#define CONN_TRN_CONCAVE 0x001 + +#define F_INSTRUMENT_DRUMS 0x80000000 + +#define F_RGN_OPTION_SELFNONEXCLUSIVE 0x1 + +#define F_WAVELINK_PHASE_MASTER 0x1 + +#define F_WSMP_NO_TRUNCATION 0x1 +#define F_WSMP_NO_COMPRESSION 0x2 + +#define POOL_CUE_NULL 0xFFFFFFFF + +#define WAVELINK_CHANNEL_LEFT 0x1 +#define WAVELINK_CHANNEL_RIGHT 0x2 + +#define WLOOP_TYPE_FORWARD 0x0 + +/***************************************************************************** + * Structures + */ +/* typedef definitions */ +typedef struct _DLSID DLSID, *LPDLSID; +typedef struct _DLSVERSION DLSVERSION, *LPDLSVERSION; +typedef struct _CONNECTION CONNECTION, *LPCONNECTION; +typedef struct _CONNECTIONLIST CONNECTIONLIST, *LPCONNECTIONLIST; +typedef struct _RGNRANGE RGNRANGE, *LPRGNRANGE; +typedef struct _MIDILOCALE MIDILOCALE, *LPMIDILOCALE; +typedef struct _RGNHEADER RGNHEADER, *LPRGNHEADER; +typedef struct _INSTHEADER INSTHEADER, *LPINSTHEADER; +typedef struct _DLSHEADER DLSHEADER, *LPDLSHEADER; +typedef struct _WAVELINK WAVELINK, *LPWAVELINK; +typedef struct _POOLCUE POOLCUE, *LPPOOLCUE; +typedef struct _POOLTABLE POOLTABLE, *LPPOOLTABLE; +typedef struct _rwsmp WSMPL, *LPWSMPL; +typedef struct _rloop WLOOP, *LPWLOOP; + +/* actual structures */ +struct _DLSID { + ULONG ulData1; + USHORT usData2; + USHORT usData3; + BYTE abData4[8]; +}; + +struct _DLSVERSION { + DWORD dwVersionMS; + DWORD dwVersionLS; +}; + +struct _CONNECTION { + USHORT usSource; + USHORT usControl; + USHORT usDestination; + USHORT usTransform; + LONG lScale; +}; + +struct _CONNECTIONLIST { + ULONG cbSize; + ULONG cConnections; +}; + +struct _RGNRANGE { + USHORT usLow; + USHORT usHigh; +}; + +struct _MIDILOCALE { + ULONG ulBank; + ULONG ulInstrument; +}; + +struct _RGNHEADER { + RGNRANGE RangeKey; + RGNRANGE RangeVelocity; + USHORT fusOptions; + USHORT usKeyGroup; +}; + +struct _INSTHEADER { + ULONG cRegions; + MIDILOCALE Locale; +}; + +struct _DLSHEADER { + ULONG cInstruments; +}; + +struct _WAVELINK { + USHORT fusOptions; + USHORT usPhaseGroup; + ULONG ulChannel; + ULONG ulTableIndex; +}; + +struct _POOLCUE { + ULONG ulOffset; +}; + +struct _POOLTABLE { + ULONG cbSize; + ULONG cCues; +}; + +struct _rwsmp { + ULONG cbSize; + USHORT usUnityNote; + SHORT sFineTune; + LONG lAttenuation; + ULONG fulOptions; + ULONG cSampleLoops; +}; + +struct _rloop { + ULONG cbSize; + ULONG ulType; + ULONG ulStart; + ULONG ulLength; +}; + +#endif /* __WINE_INCLUDE_DLS1_H */ |