File Annotation

Not logged in
4e2933c620 2015-04-21        kinaba: /***********************************************************************\
4e2933c620 2015-04-21        kinaba: *                               mmsystem.d                              *
4e2933c620 2015-04-21        kinaba: *                                                                       *
4e2933c620 2015-04-21        kinaba: *                       Windows API header module                       *
4e2933c620 2015-04-21        kinaba: *                                                                       *
4e2933c620 2015-04-21        kinaba: *                 Translated from MinGW Windows headers                 *
4e2933c620 2015-04-21        kinaba: *                                                                       *
4e2933c620 2015-04-21        kinaba: *                       Placed into public domain                       *
4e2933c620 2015-04-21        kinaba: \***********************************************************************/
c2b7a98c21 2011-02-23        kinaba: module win32.mmsystem;
9b639cf2d6 2015-05-05        kinaba: pragma(lib, "winmm");
c2b7a98c21 2011-02-23        kinaba: 
4e2933c620 2015-04-21        kinaba: /*	The #defines MAKEFOURCC, mmioFOURCC, sndAlias are used to define
4e2933c620 2015-04-21        kinaba:  *	compile-time constants, so they are implemented as templates.
4e2933c620 2015-04-21        kinaba:  */
c2b7a98c21 2011-02-23        kinaba: 
4e2933c620 2015-04-21        kinaba: private import win32.w32api, win32.windef, win32.winver;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: align(1):
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MAXPNAMELEN = 32;
4e2933c620 2015-04-21        kinaba: const MAXERRORLENGTH = 256;
4e2933c620 2015-04-21        kinaba: const MAX_JOYSTICKOEMVXDNAME = 260;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const TIME_MS      = 1;
4e2933c620 2015-04-21        kinaba: const TIME_SAMPLES = 2;
4e2933c620 2015-04-21        kinaba: const TIME_BYTES   = 4;
4e2933c620 2015-04-21        kinaba: const TIME_SMPTE   = 8;
4e2933c620 2015-04-21        kinaba: const TIME_MIDI    = 16;
4e2933c620 2015-04-21        kinaba: const TIME_TICKS   = 32;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: template MAKEFOURCC(char c0, char c1, char c2, char c3)
4e2933c620 2015-04-21        kinaba: {
4e2933c620 2015-04-21        kinaba: 	const DWORD MAKEFOURCC = c0 | (c1<<8) | (c2<<16) | (cast(DWORD)c3 <<24);
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: template mmioFOURCC(char c0, char c1, char c2, char c3)
4e2933c620 2015-04-21        kinaba: {
4e2933c620 2015-04-21        kinaba: 	const DWORD mmioFOURCC = c0 | (c1<<8) | (c2<<16) | (cast(DWORD)c3 <<24);
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: enum {
4e2933c620 2015-04-21        kinaba: 	MM_JOY1MOVE            = 0x3A0,
4e2933c620 2015-04-21        kinaba: 	MM_JOY2MOVE,
4e2933c620 2015-04-21        kinaba: 	MM_JOY1ZMOVE,
4e2933c620 2015-04-21        kinaba: 	MM_JOY2ZMOVE,       // = 0x3A3
4e2933c620 2015-04-21        kinaba: 	MM_JOY1BUTTONDOWN      = 0x3B5,
4e2933c620 2015-04-21        kinaba: 	MM_JOY2BUTTONDOWN,
4e2933c620 2015-04-21        kinaba: 	MM_JOY1BUTTONUP,
4e2933c620 2015-04-21        kinaba: 	MM_JOY2BUTTONUP,
4e2933c620 2015-04-21        kinaba: 	MM_MCINOTIFY,       // = 0x3B9
4e2933c620 2015-04-21        kinaba: 	MM_WOM_OPEN            = 0x3BB,
4e2933c620 2015-04-21        kinaba: 	MM_WOM_CLOSE,
4e2933c620 2015-04-21        kinaba: 	MM_WOM_DONE,
4e2933c620 2015-04-21        kinaba: 	MM_WIM_OPEN,
4e2933c620 2015-04-21        kinaba: 	MM_WIM_CLOSE,
4e2933c620 2015-04-21        kinaba: 	MM_WIM_DATA,
4e2933c620 2015-04-21        kinaba: 	MM_MIM_OPEN,
4e2933c620 2015-04-21        kinaba: 	MM_MIM_CLOSE,
4e2933c620 2015-04-21        kinaba: 	MM_MIM_DATA,
4e2933c620 2015-04-21        kinaba: 	MM_MIM_LONGDATA,
4e2933c620 2015-04-21        kinaba: 	MM_MIM_ERROR,
4e2933c620 2015-04-21        kinaba: 	MM_MIM_LONGERROR,
4e2933c620 2015-04-21        kinaba: 	MM_MOM_OPEN,
4e2933c620 2015-04-21        kinaba: 	MM_MOM_CLOSE,
4e2933c620 2015-04-21        kinaba: 	MM_MOM_DONE,        // = 0x3C9
4e2933c620 2015-04-21        kinaba: 	MM_DRVM_OPEN           = 0x3D0,
4e2933c620 2015-04-21        kinaba: 	MM_DRVM_CLOSE,
4e2933c620 2015-04-21        kinaba: 	MM_DRVM_DATA,
4e2933c620 2015-04-21        kinaba: 	MM_DRVM_ERROR,
4e2933c620 2015-04-21        kinaba: 	MM_STREAM_OPEN,
4e2933c620 2015-04-21        kinaba: 	MM_STREAM_CLOSE,
4e2933c620 2015-04-21        kinaba: 	MM_STREAM_DONE,
4e2933c620 2015-04-21        kinaba: 	MM_STREAM_ERROR,    // = 0x3D7
4e2933c620 2015-04-21        kinaba: 	MM_MOM_POSITIONCB      = 0x3CA,
4e2933c620 2015-04-21        kinaba: 	MM_MCISIGNAL,
4e2933c620 2015-04-21        kinaba: 	MM_MIM_MOREDATA,    // = 0x3CC
4e2933c620 2015-04-21        kinaba: 	MM_MIXM_LINE_CHANGE    = 0x3D0,
4e2933c620 2015-04-21        kinaba: 	MM_MIXM_CONTROL_CHANGE = 0x3D1
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MMSYSERR_BASE     =    0;
4e2933c620 2015-04-21        kinaba: const WAVERR_BASE       =   32;
4e2933c620 2015-04-21        kinaba: const MIDIERR_BASE      =   64;
4e2933c620 2015-04-21        kinaba: const TIMERR_BASE       =   96;
4e2933c620 2015-04-21        kinaba: const JOYERR_BASE       =  160;
4e2933c620 2015-04-21        kinaba: const MCIERR_BASE       =  256;
4e2933c620 2015-04-21        kinaba: const MIXERR_BASE       = 1024;
4e2933c620 2015-04-21        kinaba: const MCI_STRING_OFFSET =  512;
4e2933c620 2015-04-21        kinaba: const MCI_VD_OFFSET     = 1024;
4e2933c620 2015-04-21        kinaba: const MCI_CD_OFFSET     = 1088;
4e2933c620 2015-04-21        kinaba: const MCI_WAVE_OFFSET   = 1152;
4e2933c620 2015-04-21        kinaba: const MCI_SEQ_OFFSET    = 1216;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: enum {
4e2933c620 2015-04-21        kinaba: 	MMSYSERR_NOERROR        = 0,
4e2933c620 2015-04-21        kinaba: 	MMSYSERR_ERROR          = MMSYSERR_BASE+1,
4e2933c620 2015-04-21        kinaba: 	MMSYSERR_BADDEVICEID,
4e2933c620 2015-04-21        kinaba: 	MMSYSERR_NOTENABLED,
4e2933c620 2015-04-21        kinaba: 	MMSYSERR_ALLOCATED,
4e2933c620 2015-04-21        kinaba: 	MMSYSERR_INVALHANDLE,
4e2933c620 2015-04-21        kinaba: 	MMSYSERR_NODRIVER,
4e2933c620 2015-04-21        kinaba: 	MMSYSERR_NOMEM,
4e2933c620 2015-04-21        kinaba: 	MMSYSERR_NOTSUPPORTED,
4e2933c620 2015-04-21        kinaba: 	MMSYSERR_BADERRNUM,
4e2933c620 2015-04-21        kinaba: 	MMSYSERR_INVALFLAG,
4e2933c620 2015-04-21        kinaba: 	MMSYSERR_INVALPARAM,
4e2933c620 2015-04-21        kinaba: 	MMSYSERR_HANDLEBUSY,
4e2933c620 2015-04-21        kinaba: 	MMSYSERR_INVALIDALIAS,
4e2933c620 2015-04-21        kinaba: 	MMSYSERR_BADDB,
4e2933c620 2015-04-21        kinaba: 	MMSYSERR_KEYNOTFOUND,
4e2933c620 2015-04-21        kinaba: 	MMSYSERR_READERROR,
4e2933c620 2015-04-21        kinaba: 	MMSYSERR_WRITEERROR,
4e2933c620 2015-04-21        kinaba: 	MMSYSERR_DELETEERROR,
4e2933c620 2015-04-21        kinaba: 	MMSYSERR_VALNOTFOUND,
4e2933c620 2015-04-21        kinaba: 	MMSYSERR_NODRIVERCB, // = MMSYSERR_BASE+20
4e2933c620 2015-04-21        kinaba: 	MMSYSERR_LASTERROR      = MMSYSERR_NODRIVERCB
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: enum {
4e2933c620 2015-04-21        kinaba: 	DRV_LOAD = 1,
4e2933c620 2015-04-21        kinaba: 	DRV_ENABLE,
4e2933c620 2015-04-21        kinaba: 	DRV_OPEN,
4e2933c620 2015-04-21        kinaba: 	DRV_CLOSE,
4e2933c620 2015-04-21        kinaba: 	DRV_DISABLE,
4e2933c620 2015-04-21        kinaba: 	DRV_FREE,
4e2933c620 2015-04-21        kinaba: 	DRV_CONFIGURE,
4e2933c620 2015-04-21        kinaba: 	DRV_QUERYCONFIGURE,
4e2933c620 2015-04-21        kinaba: 	DRV_INSTALL,
4e2933c620 2015-04-21        kinaba: 	DRV_REMOVE,
4e2933c620 2015-04-21        kinaba: 	DRV_EXITSESSION,
4e2933c620 2015-04-21        kinaba: 	DRV_POWER
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const DRV_RESERVED = 0x800;
4e2933c620 2015-04-21        kinaba: const DRV_USER = 0x4000;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const DRVCNF_CANCEL = 0;
4e2933c620 2015-04-21        kinaba: const DRVCNF_OK = 1;
4e2933c620 2015-04-21        kinaba: const DRVCNF_RESTART = 2;
4e2933c620 2015-04-21        kinaba: const DRV_CANCEL = DRVCNF_CANCEL;
4e2933c620 2015-04-21        kinaba: const DRV_OK = DRVCNF_OK;
4e2933c620 2015-04-21        kinaba: const DRV_RESTART = DRVCNF_RESTART;
4e2933c620 2015-04-21        kinaba: const DRV_MCI_FIRST = DRV_RESERVED;
4e2933c620 2015-04-21        kinaba: const DRV_MCI_LAST  = DRV_RESERVED + 0xFFF;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const CALLBACK_TYPEMASK = 0x70000;
4e2933c620 2015-04-21        kinaba: const CALLBACK_NULL     = 0;
4e2933c620 2015-04-21        kinaba: const CALLBACK_WINDOW   = 0x10000;
4e2933c620 2015-04-21        kinaba: const CALLBACK_TASK     = 0x20000;
4e2933c620 2015-04-21        kinaba: const CALLBACK_FUNCTION = 0x30000;
4e2933c620 2015-04-21        kinaba: const CALLBACK_THREAD   = CALLBACK_TASK;
4e2933c620 2015-04-21        kinaba: const CALLBACK_EVENT    = 0x50000;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const SND_SYNC=0;
4e2933c620 2015-04-21        kinaba: const SND_ASYNC=1;
4e2933c620 2015-04-21        kinaba: const SND_NODEFAULT=2;
4e2933c620 2015-04-21        kinaba: const SND_MEMORY=4;
4e2933c620 2015-04-21        kinaba: const SND_LOOP=8;
4e2933c620 2015-04-21        kinaba: const SND_NOSTOP=16;
4e2933c620 2015-04-21        kinaba: const SND_NOWAIT=0x2000;
4e2933c620 2015-04-21        kinaba: const SND_ALIAS=0x10000;
4e2933c620 2015-04-21        kinaba: const SND_ALIAS_ID=0x110000;
4e2933c620 2015-04-21        kinaba: const SND_FILENAME=0x20000;
4e2933c620 2015-04-21        kinaba: const SND_RESOURCE=0x40004;
4e2933c620 2015-04-21        kinaba: const SND_PURGE=0x40;
4e2933c620 2015-04-21        kinaba: const SND_APPLICATION=0x80;
4e2933c620 2015-04-21        kinaba: const SND_ALIAS_START=0;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: template sndAlias(char c0, char c1)
4e2933c620 2015-04-21        kinaba: {
4e2933c620 2015-04-21        kinaba: 	const DWORD sndAlias = SND_ALIAS_START + c0 | (c1<<8);
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: 
9b639cf2d6 2015-05-05        kinaba: const SND_ALIAS_SYSTEMASTERISK    = sndAlias!('S', '*');
9b639cf2d6 2015-05-05        kinaba: const SND_ALIAS_SYSTEMQUESTION    = sndAlias!('S', '?');
9b639cf2d6 2015-05-05        kinaba: const SND_ALIAS_SYSTEMHAND        = sndAlias!('S', 'H');
9b639cf2d6 2015-05-05        kinaba: const SND_ALIAS_SYSTEMEXIT        = sndAlias!('S', 'E');
9b639cf2d6 2015-05-05        kinaba: const SND_ALIAS_SYSTEMSTART       = sndAlias!('S', 'S');
9b639cf2d6 2015-05-05        kinaba: const SND_ALIAS_SYSTEMWELCOME     = sndAlias!('S', 'W');
9b639cf2d6 2015-05-05        kinaba: const SND_ALIAS_SYSTEMEXCLAMATION = sndAlias!('S', '!');
9b639cf2d6 2015-05-05        kinaba: const SND_ALIAS_SYSTEMDEFAULT     = sndAlias!('S', 'D');
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: enum {
4e2933c620 2015-04-21        kinaba: 	WAVERR_BADFORMAT  = (WAVERR_BASE + 0),
4e2933c620 2015-04-21        kinaba: 	WAVERR_STILLPLAYING,
4e2933c620 2015-04-21        kinaba: 	WAVERR_UNPREPARED,
4e2933c620 2015-04-21        kinaba: 	WAVERR_SYNC,  // = WAVERR_BASE + 3;
4e2933c620 2015-04-21        kinaba: 	WAVERR_LASTERROR = WAVERR_SYNC
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const WOM_OPEN  = MM_WOM_OPEN;
4e2933c620 2015-04-21        kinaba: const WOM_CLOSE = MM_WOM_CLOSE;
4e2933c620 2015-04-21        kinaba: const WOM_DONE  = MM_WOM_DONE;
4e2933c620 2015-04-21        kinaba: const WIM_OPEN  = MM_WIM_OPEN;
4e2933c620 2015-04-21        kinaba: const WIM_CLOSE = MM_WIM_CLOSE;
4e2933c620 2015-04-21        kinaba: const WIM_DATA  = MM_WIM_DATA;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const UINT WAVE_MAPPER= -1;  // FIXME: This doesn't make sense!
4e2933c620 2015-04-21        kinaba: const WAVE_FORMAT_QUERY=1;
4e2933c620 2015-04-21        kinaba: const WAVE_ALLOWSYNC=2;
4e2933c620 2015-04-21        kinaba: const WAVE_MAPPED=4;
4e2933c620 2015-04-21        kinaba: const WAVE_FORMAT_DIRECT=8;
4e2933c620 2015-04-21        kinaba: const WAVE_FORMAT_DIRECT_QUERY=(WAVE_FORMAT_QUERY|WAVE_FORMAT_DIRECT);
4e2933c620 2015-04-21        kinaba: const WHDR_DONE=1;
4e2933c620 2015-04-21        kinaba: const WHDR_PREPARED=2;
4e2933c620 2015-04-21        kinaba: const WHDR_BEGINLOOP=4;
4e2933c620 2015-04-21        kinaba: const WHDR_ENDLOOP=8;
4e2933c620 2015-04-21        kinaba: const WHDR_INQUEUE=16;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const WAVECAPS_PITCH=1;
4e2933c620 2015-04-21        kinaba: const WAVECAPS_PLAYBACKRATE=2;
4e2933c620 2015-04-21        kinaba: const WAVECAPS_VOLUME=4;
4e2933c620 2015-04-21        kinaba: const WAVECAPS_LRVOLUME=8;
4e2933c620 2015-04-21        kinaba: const WAVECAPS_SYNC=16;
4e2933c620 2015-04-21        kinaba: const WAVECAPS_SAMPLEACCURATE=32;
4e2933c620 2015-04-21        kinaba: const WAVECAPS_DIRECTSOUND=64;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const WAVE_INVALIDFORMAT=0;
4e2933c620 2015-04-21        kinaba: const WAVE_FORMAT_1M08=1;
4e2933c620 2015-04-21        kinaba: const WAVE_FORMAT_1S08=2;
4e2933c620 2015-04-21        kinaba: const WAVE_FORMAT_1M16=4;
4e2933c620 2015-04-21        kinaba: const WAVE_FORMAT_1S16=8;
4e2933c620 2015-04-21        kinaba: const WAVE_FORMAT_2M08=16;
4e2933c620 2015-04-21        kinaba: const WAVE_FORMAT_2S08=32;
4e2933c620 2015-04-21        kinaba: const WAVE_FORMAT_2M16=64;
4e2933c620 2015-04-21        kinaba: const WAVE_FORMAT_2S16=128;
4e2933c620 2015-04-21        kinaba: const WAVE_FORMAT_4M08=256;
4e2933c620 2015-04-21        kinaba: const WAVE_FORMAT_4S08=512;
4e2933c620 2015-04-21        kinaba: const WAVE_FORMAT_4M16=1024;
4e2933c620 2015-04-21        kinaba: const WAVE_FORMAT_4S16=2048;
4e2933c620 2015-04-21        kinaba: const WAVE_FORMAT_PCM=1;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: enum {
4e2933c620 2015-04-21        kinaba: 	MIDIERR_UNPREPARED = MIDIERR_BASE,
4e2933c620 2015-04-21        kinaba: 	MIDIERR_STILLPLAYING,
4e2933c620 2015-04-21        kinaba: 	MIDIERR_NOMAP,
4e2933c620 2015-04-21        kinaba: 	MIDIERR_NOTREADY,
4e2933c620 2015-04-21        kinaba: 	MIDIERR_NODEVICE,
4e2933c620 2015-04-21        kinaba: 	MIDIERR_INVALIDSETUP,
4e2933c620 2015-04-21        kinaba: 	MIDIERR_BADOPENMODE,
4e2933c620 2015-04-21        kinaba: 	MIDIERR_DONT_CONTINUE, // = MIDIERR_BASE+7
4e2933c620 2015-04-21        kinaba: 	MIDIERR_LASTERROR = MIDIERR_DONT_CONTINUE
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MIDIPATCHSIZE=128;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MIM_OPEN=MM_MIM_OPEN;
4e2933c620 2015-04-21        kinaba: const MIM_CLOSE=MM_MIM_CLOSE;
4e2933c620 2015-04-21        kinaba: const MIM_DATA=MM_MIM_DATA;
4e2933c620 2015-04-21        kinaba: const MIM_LONGDATA=MM_MIM_LONGDATA;
4e2933c620 2015-04-21        kinaba: const MIM_ERROR=MM_MIM_ERROR;
4e2933c620 2015-04-21        kinaba: const MIM_LONGERROR=MM_MIM_LONGERROR;
4e2933c620 2015-04-21        kinaba: const MOM_OPEN=MM_MOM_OPEN;
4e2933c620 2015-04-21        kinaba: const MOM_CLOSE=MM_MOM_CLOSE;
4e2933c620 2015-04-21        kinaba: const MOM_DONE=MM_MOM_DONE;
4e2933c620 2015-04-21        kinaba: const MIM_MOREDATA=MM_MIM_MOREDATA;
4e2933c620 2015-04-21        kinaba: const MOM_POSITIONCB=MM_MOM_POSITIONCB;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const UINT MIDIMAPPER= -1; // FIXME: uint is nonsense for this!
4e2933c620 2015-04-21        kinaba: const UINT MIDI_MAPPER= -1; // FIXME: uint is nonsense for this!
4e2933c620 2015-04-21        kinaba: const MIDI_IO_STATUS=32;
4e2933c620 2015-04-21        kinaba: const MIDI_CACHE_ALL=1;
4e2933c620 2015-04-21        kinaba: const MIDI_CACHE_BESTFIT=2;
4e2933c620 2015-04-21        kinaba: const MIDI_CACHE_QUERY=3;
4e2933c620 2015-04-21        kinaba: const MIDI_UNCACHE=4;
4e2933c620 2015-04-21        kinaba: const MOD_MIDIPORT=1;
4e2933c620 2015-04-21        kinaba: const MOD_SYNTH=2;
4e2933c620 2015-04-21        kinaba: const MOD_SQSYNTH=3;
4e2933c620 2015-04-21        kinaba: const MOD_FMSYNTH=4;
4e2933c620 2015-04-21        kinaba: const MOD_MAPPER=5;
4e2933c620 2015-04-21        kinaba: const MIDICAPS_VOLUME=1;
4e2933c620 2015-04-21        kinaba: const MIDICAPS_LRVOLUME=2;
4e2933c620 2015-04-21        kinaba: const MIDICAPS_CACHE=4;
4e2933c620 2015-04-21        kinaba: const MIDICAPS_STREAM=8;
4e2933c620 2015-04-21        kinaba: const MHDR_DONE=1;
4e2933c620 2015-04-21        kinaba: const MHDR_PREPARED=2;
4e2933c620 2015-04-21        kinaba: const MHDR_INQUEUE=4;
4e2933c620 2015-04-21        kinaba: const MHDR_ISSTRM=8;
4e2933c620 2015-04-21        kinaba: const MEVT_F_SHORT=0;
4e2933c620 2015-04-21        kinaba: const MEVT_F_LONG=0x80000000;
4e2933c620 2015-04-21        kinaba: const MEVT_F_CALLBACK=0x40000000;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: BYTE MEVT_EVENTTYPE(DWORD x) { return cast(BYTE)((x>>24) &0xFF); }
4e2933c620 2015-04-21        kinaba: DWORD MEVT_EVENTPARM(DWORD x) { return x & 0xFFFFFF; }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MEVT_SHORTMSG=0;
4e2933c620 2015-04-21        kinaba: const MEVT_TEMPO=1;
4e2933c620 2015-04-21        kinaba: const MEVT_NOP=2;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const BYTE MEVT_LONGMSG = 0x80;
4e2933c620 2015-04-21        kinaba: const BYTE MEVT_COMMENT = 0x82;
4e2933c620 2015-04-21        kinaba: const BYTE MEVT_VERSION = 0x84;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MIDISTRM_ERROR = -2;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MIDIPROP_SET = 0x80000000;
4e2933c620 2015-04-21        kinaba: const MIDIPROP_GET = 0x40000000;
4e2933c620 2015-04-21        kinaba: const MIDIPROP_TIMEDIV = 1;
4e2933c620 2015-04-21        kinaba: const MIDIPROP_TEMPO = 2;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const UINT AUX_MAPPER = -1;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const AUXCAPS_CDAUDIO=1;
4e2933c620 2015-04-21        kinaba: const AUXCAPS_AUXIN=2;
4e2933c620 2015-04-21        kinaba: const AUXCAPS_VOLUME=1;
4e2933c620 2015-04-21        kinaba: const AUXCAPS_LRVOLUME=2;
4e2933c620 2015-04-21        kinaba: const MIXER_SHORT_NAME_CHARS=16;
4e2933c620 2015-04-21        kinaba: const MIXER_LONG_NAME_CHARS=64;
4e2933c620 2015-04-21        kinaba: const MIXERR_INVALLINE=MIXERR_BASE;
4e2933c620 2015-04-21        kinaba: const MIXERR_INVALCONTROL=(MIXERR_BASE+1);
4e2933c620 2015-04-21        kinaba: const MIXERR_INVALVALUE=(MIXERR_BASE+2);
4e2933c620 2015-04-21        kinaba: const MIXERR_LASTERROR=(MIXERR_BASE+2);
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MIXER_OBJECTF_HANDLE=0x80000000;
4e2933c620 2015-04-21        kinaba: const MIXER_OBJECTF_MIXER=0;
4e2933c620 2015-04-21        kinaba: const MIXER_OBJECTF_HMIXER=(MIXER_OBJECTF_HANDLE|MIXER_OBJECTF_MIXER);
4e2933c620 2015-04-21        kinaba: const MIXER_OBJECTF_WAVEOUT=0x10000000;
4e2933c620 2015-04-21        kinaba: const MIXER_OBJECTF_HWAVEOUT=(MIXER_OBJECTF_HANDLE|MIXER_OBJECTF_WAVEOUT);
4e2933c620 2015-04-21        kinaba: const MIXER_OBJECTF_WAVEIN=0x20000000;
4e2933c620 2015-04-21        kinaba: const MIXER_OBJECTF_HWAVEIN=(MIXER_OBJECTF_HANDLE|MIXER_OBJECTF_WAVEIN);
4e2933c620 2015-04-21        kinaba: const MIXER_OBJECTF_MIDIOUT=0x30000000;
4e2933c620 2015-04-21        kinaba: const MIXER_OBJECTF_HMIDIOUT=(MIXER_OBJECTF_HANDLE|MIXER_OBJECTF_MIDIOUT);
4e2933c620 2015-04-21        kinaba: const MIXER_OBJECTF_MIDIIN=0x40000000;
4e2933c620 2015-04-21        kinaba: const MIXER_OBJECTF_HMIDIIN=(MIXER_OBJECTF_HANDLE|MIXER_OBJECTF_MIDIIN);
4e2933c620 2015-04-21        kinaba: const MIXER_OBJECTF_AUX=0x50000000;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MIXERLINE_LINEF_ACTIVE=1;
4e2933c620 2015-04-21        kinaba: const MIXERLINE_LINEF_DISCONNECTED=0x8000;
4e2933c620 2015-04-21        kinaba: const MIXERLINE_LINEF_SOURCE=0x80000000;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MIXERLINE_COMPONENTTYPE_DST_FIRST=0;
4e2933c620 2015-04-21        kinaba: const MIXERLINE_COMPONENTTYPE_DST_UNDEFINED=MIXERLINE_COMPONENTTYPE_DST_FIRST;
4e2933c620 2015-04-21        kinaba: const MIXERLINE_COMPONENTTYPE_DST_DIGITAL=(MIXERLINE_COMPONENTTYPE_DST_FIRST+1);
4e2933c620 2015-04-21        kinaba: const MIXERLINE_COMPONENTTYPE_DST_LINE=(MIXERLINE_COMPONENTTYPE_DST_FIRST+2);
4e2933c620 2015-04-21        kinaba: const MIXERLINE_COMPONENTTYPE_DST_MONITOR=(MIXERLINE_COMPONENTTYPE_DST_FIRST+3);
4e2933c620 2015-04-21        kinaba: const MIXERLINE_COMPONENTTYPE_DST_SPEAKERS=(MIXERLINE_COMPONENTTYPE_DST_FIRST+4);
4e2933c620 2015-04-21        kinaba: const MIXERLINE_COMPONENTTYPE_DST_HEADPHONES=(MIXERLINE_COMPONENTTYPE_DST_FIRST+5);
4e2933c620 2015-04-21        kinaba: const MIXERLINE_COMPONENTTYPE_DST_TELEPHONE=(MIXERLINE_COMPONENTTYPE_DST_FIRST+6);
4e2933c620 2015-04-21        kinaba: const MIXERLINE_COMPONENTTYPE_DST_WAVEIN=(MIXERLINE_COMPONENTTYPE_DST_FIRST+7);
4e2933c620 2015-04-21        kinaba: const MIXERLINE_COMPONENTTYPE_DST_VOICEIN=(MIXERLINE_COMPONENTTYPE_DST_FIRST+8);
4e2933c620 2015-04-21        kinaba: const MIXERLINE_COMPONENTTYPE_DST_LAST=(MIXERLINE_COMPONENTTYPE_DST_FIRST+8);
4e2933c620 2015-04-21        kinaba: const MIXERLINE_COMPONENTTYPE_SRC_FIRST=0x1000;
4e2933c620 2015-04-21        kinaba: const MIXERLINE_COMPONENTTYPE_SRC_UNDEFINED=MIXERLINE_COMPONENTTYPE_SRC_FIRST;
4e2933c620 2015-04-21        kinaba: const MIXERLINE_COMPONENTTYPE_SRC_DIGITAL=(MIXERLINE_COMPONENTTYPE_SRC_FIRST+1);
4e2933c620 2015-04-21        kinaba: const MIXERLINE_COMPONENTTYPE_SRC_LINE=(MIXERLINE_COMPONENTTYPE_SRC_FIRST+2);
4e2933c620 2015-04-21        kinaba: const MIXERLINE_COMPONENTTYPE_SRC_MICROPHONE=(MIXERLINE_COMPONENTTYPE_SRC_FIRST+3);
4e2933c620 2015-04-21        kinaba: const MIXERLINE_COMPONENTTYPE_SRC_SYNTHESIZER=(MIXERLINE_COMPONENTTYPE_SRC_FIRST+4);
4e2933c620 2015-04-21        kinaba: const MIXERLINE_COMPONENTTYPE_SRC_COMPACTDISC=(MIXERLINE_COMPONENTTYPE_SRC_FIRST+5);
4e2933c620 2015-04-21        kinaba: const MIXERLINE_COMPONENTTYPE_SRC_TELEPHONE=(MIXERLINE_COMPONENTTYPE_SRC_FIRST+6);
4e2933c620 2015-04-21        kinaba: const MIXERLINE_COMPONENTTYPE_SRC_PCSPEAKER=(MIXERLINE_COMPONENTTYPE_SRC_FIRST+7);
4e2933c620 2015-04-21        kinaba: const MIXERLINE_COMPONENTTYPE_SRC_WAVEOUT=(MIXERLINE_COMPONENTTYPE_SRC_FIRST+8);
4e2933c620 2015-04-21        kinaba: const MIXERLINE_COMPONENTTYPE_SRC_AUXILIARY=(MIXERLINE_COMPONENTTYPE_SRC_FIRST+9);
4e2933c620 2015-04-21        kinaba: const MIXERLINE_COMPONENTTYPE_SRC_ANALOG=(MIXERLINE_COMPONENTTYPE_SRC_FIRST+10);
4e2933c620 2015-04-21        kinaba: const MIXERLINE_COMPONENTTYPE_SRC_LAST=(MIXERLINE_COMPONENTTYPE_SRC_FIRST+10);
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: enum {
4e2933c620 2015-04-21        kinaba: 	MIXERLINE_TARGETTYPE_UNDEFINED = 0,
4e2933c620 2015-04-21        kinaba: 	MIXERLINE_TARGETTYPE_WAVEOUT,
4e2933c620 2015-04-21        kinaba: 	MIXERLINE_TARGETTYPE_WAVEIN,
4e2933c620 2015-04-21        kinaba: 	MIXERLINE_TARGETTYPE_MIDIOUT,
4e2933c620 2015-04-21        kinaba: 	MIXERLINE_TARGETTYPE_MIDIIN,
4e2933c620 2015-04-21        kinaba: 	MIXERLINE_TARGETTYPE_AUX // =5
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MIXER_GETLINEINFOF_DESTINATION=0;
4e2933c620 2015-04-21        kinaba: const MIXER_GETLINEINFOF_SOURCE=1;
4e2933c620 2015-04-21        kinaba: const MIXER_GETLINEINFOF_LINEID=2;
4e2933c620 2015-04-21        kinaba: const MIXER_GETLINEINFOF_COMPONENTTYPE=3;
4e2933c620 2015-04-21        kinaba: const MIXER_GETLINEINFOF_TARGETTYPE=4;
4e2933c620 2015-04-21        kinaba: const MIXER_GETLINEINFOF_QUERYMASK=15;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLF_UNIFORM=1;
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLF_MULTIPLE=2;
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLF_DISABLED=0x80000000;
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CT_CLASS_MASK=0xF0000000;
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CT_CLASS_CUSTOM=0;
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CT_CLASS_METER=0x10000000;
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CT_CLASS_SWITCH=0x20000000;
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CT_CLASS_NUMBER=0x30000000;
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CT_CLASS_SLIDER=0x40000000;
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CT_CLASS_FADER=0x50000000;
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CT_CLASS_TIME=0x60000000;
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CT_CLASS_LIST=0x70000000;
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CT_SUBCLASS_MASK=0xF000000;
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CT_SC_SWITCH_BOOLEAN=0;
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CT_SC_SWITCH_BUTTON=0x1000000;
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CT_SC_METER_POLLED=0;
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CT_SC_TIME_MICROSECS=0;
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CT_SC_TIME_MILLISECS=0x1000000;
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CT_SC_LIST_SINGLE=0;
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CT_SC_LIST_MULTIPLE=0x1000000;
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CT_UNITS_MASK=0xFF0000;
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CT_UNITS_CUSTOM=0;
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CT_UNITS_BOOLEAN=0x10000;
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CT_UNITS_SIGNED=0x20000;
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CT_UNITS_UNSIGNED=0x30000;
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CT_UNITS_DECIBELS=0x40000;
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CT_UNITS_PERCENT=0x50000;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLTYPE_CUSTOM=(MIXERCONTROL_CT_CLASS_CUSTOM|MIXERCONTROL_CT_UNITS_CUSTOM);
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLTYPE_BOOLEANMETER=(MIXERCONTROL_CT_CLASS_METER|MIXERCONTROL_CT_SC_METER_POLLED|MIXERCONTROL_CT_UNITS_BOOLEAN);
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLTYPE_SIGNEDMETER=(MIXERCONTROL_CT_CLASS_METER|MIXERCONTROL_CT_SC_METER_POLLED|MIXERCONTROL_CT_UNITS_SIGNED);
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLTYPE_PEAKMETER=(MIXERCONTROL_CONTROLTYPE_SIGNEDMETER+1);
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLTYPE_UNSIGNEDMETER=(MIXERCONTROL_CT_CLASS_METER|MIXERCONTROL_CT_SC_METER_POLLED|MIXERCONTROL_CT_UNITS_UNSIGNED);
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLTYPE_BOOLEAN=(MIXERCONTROL_CT_CLASS_SWITCH|MIXERCONTROL_CT_SC_SWITCH_BOOLEAN|MIXERCONTROL_CT_UNITS_BOOLEAN);
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLTYPE_ONOFF=(MIXERCONTROL_CONTROLTYPE_BOOLEAN+1);
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLTYPE_MUTE=(MIXERCONTROL_CONTROLTYPE_BOOLEAN+2);
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLTYPE_MONO=(MIXERCONTROL_CONTROLTYPE_BOOLEAN+3);
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLTYPE_LOUDNESS=(MIXERCONTROL_CONTROLTYPE_BOOLEAN+4);
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLTYPE_STEREOENH=(MIXERCONTROL_CONTROLTYPE_BOOLEAN+5);
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLTYPE_BUTTON=(MIXERCONTROL_CT_CLASS_SWITCH|MIXERCONTROL_CT_SC_SWITCH_BUTTON|MIXERCONTROL_CT_UNITS_BOOLEAN);
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLTYPE_DECIBELS=(MIXERCONTROL_CT_CLASS_NUMBER|MIXERCONTROL_CT_UNITS_DECIBELS);
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLTYPE_SIGNED=(MIXERCONTROL_CT_CLASS_NUMBER|MIXERCONTROL_CT_UNITS_SIGNED);
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLTYPE_UNSIGNED=(MIXERCONTROL_CT_CLASS_NUMBER|MIXERCONTROL_CT_UNITS_UNSIGNED);
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLTYPE_PERCENT=(MIXERCONTROL_CT_CLASS_NUMBER|MIXERCONTROL_CT_UNITS_PERCENT);
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLTYPE_SLIDER=(MIXERCONTROL_CT_CLASS_SLIDER|MIXERCONTROL_CT_UNITS_SIGNED);
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLTYPE_PAN=(MIXERCONTROL_CONTROLTYPE_SLIDER+1);
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLTYPE_QSOUNDPAN=(MIXERCONTROL_CONTROLTYPE_SLIDER+2);
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLTYPE_FADER=(MIXERCONTROL_CT_CLASS_FADER|MIXERCONTROL_CT_UNITS_UNSIGNED);
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLTYPE_VOLUME=(MIXERCONTROL_CONTROLTYPE_FADER+1);
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLTYPE_BASS=(MIXERCONTROL_CONTROLTYPE_FADER+2);
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLTYPE_TREBLE=(MIXERCONTROL_CONTROLTYPE_FADER+3);
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLTYPE_EQUALIZER=(MIXERCONTROL_CONTROLTYPE_FADER+4);
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLTYPE_SINGLESELECT=(MIXERCONTROL_CT_CLASS_LIST|MIXERCONTROL_CT_SC_LIST_SINGLE|MIXERCONTROL_CT_UNITS_BOOLEAN);
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLTYPE_MUX=(MIXERCONTROL_CONTROLTYPE_SINGLESELECT+1);
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLTYPE_MULTIPLESELECT=(MIXERCONTROL_CT_CLASS_LIST|MIXERCONTROL_CT_SC_LIST_MULTIPLE|MIXERCONTROL_CT_UNITS_BOOLEAN);
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLTYPE_MIXER=(MIXERCONTROL_CONTROLTYPE_MULTIPLESELECT+1);
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLTYPE_MICROTIME=(MIXERCONTROL_CT_CLASS_TIME|MIXERCONTROL_CT_SC_TIME_MICROSECS|MIXERCONTROL_CT_UNITS_UNSIGNED);
4e2933c620 2015-04-21        kinaba: const MIXERCONTROL_CONTROLTYPE_MILLITIME=(MIXERCONTROL_CT_CLASS_TIME|MIXERCONTROL_CT_SC_TIME_MILLISECS|MIXERCONTROL_CT_UNITS_UNSIGNED);
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MIXER_GETLINECONTROLSF_ALL=0;
4e2933c620 2015-04-21        kinaba: const MIXER_GETLINECONTROLSF_ONEBYID=1;
4e2933c620 2015-04-21        kinaba: const MIXER_GETLINECONTROLSF_ONEBYTYPE=2;
4e2933c620 2015-04-21        kinaba: const MIXER_GETLINECONTROLSF_QUERYMASK=15;
4e2933c620 2015-04-21        kinaba: const MIXER_GETCONTROLDETAILSF_VALUE=0;
4e2933c620 2015-04-21        kinaba: const MIXER_GETCONTROLDETAILSF_LISTTEXT=1;
4e2933c620 2015-04-21        kinaba: const MIXER_GETCONTROLDETAILSF_QUERYMASK=15;
4e2933c620 2015-04-21        kinaba: const MIXER_SETCONTROLDETAILSF_VALUE=0;
4e2933c620 2015-04-21        kinaba: const MIXER_SETCONTROLDETAILSF_CUSTOM=1;
4e2933c620 2015-04-21        kinaba: const MIXER_SETCONTROLDETAILSF_QUERYMASK=15;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const TIMERR_NOERROR=0;
4e2933c620 2015-04-21        kinaba: const TIMERR_NOCANDO=(TIMERR_BASE+1);
4e2933c620 2015-04-21        kinaba: const TIMERR_STRUCT=(TIMERR_BASE+33);
4e2933c620 2015-04-21        kinaba: const TIME_ONESHOT=0;
4e2933c620 2015-04-21        kinaba: const TIME_PERIODIC=1;
4e2933c620 2015-04-21        kinaba: const TIME_CALLBACK_FUNCTION=0;
4e2933c620 2015-04-21        kinaba: const TIME_CALLBACK_EVENT_SET=16;
4e2933c620 2015-04-21        kinaba: const TIME_CALLBACK_EVENT_PULSE=32;
4e2933c620 2015-04-21        kinaba: 
9b639cf2d6 2015-05-05        kinaba: static if (_WIN32_WINNT >= 0x501) {
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const TIME_KILL_SYNCHRONOUS=0x0100;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const JOYERR_NOERROR = 0;
4e2933c620 2015-04-21        kinaba: const JOYERR_PARMS=(JOYERR_BASE+5);
4e2933c620 2015-04-21        kinaba: const JOYERR_NOCANDO=(JOYERR_BASE+6);
4e2933c620 2015-04-21        kinaba: const JOYERR_UNPLUGGED=(JOYERR_BASE+7);
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON1=1;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON2=2;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON3=4;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON4=8;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON1CHG=256;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON2CHG=512;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON3CHG=1024;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON4CHG=2048;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON5=257;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON6=513;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON7=1025;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON8=2049;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON9=256;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON10=512;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON11=1024;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON12=2048;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON13=4096;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON14=8192;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON15=16384;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON16=32768;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON17=65536;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON18=0x20000;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON19=0x40000;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON20=0x80000;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON21=0x100000;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON22=0x200000;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON23=0x400000;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON24=0x800000;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON25=0x1000000;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON26=0x2000000;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON27=0x4000000;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON28=0x8000000;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON29=0x10000000;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON30=0x20000000;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON31=0x40000000;
4e2933c620 2015-04-21        kinaba: const JOY_BUTTON32=0x80000000;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: enum  : DWORD {
4e2933c620 2015-04-21        kinaba: 	JOY_POVCENTERED = -1,
4e2933c620 2015-04-21        kinaba: 	JOY_POVFORWARD  = 0,
4e2933c620 2015-04-21        kinaba: 	JOY_POVBACKWARD = 18000,
4e2933c620 2015-04-21        kinaba: 	JOY_POVLEFT     = 27000,
4e2933c620 2015-04-21        kinaba: 	JOY_POVRIGHT    = 9000
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const DWORD
4e2933c620 2015-04-21        kinaba: 	JOY_RETURNX        = 0x00000001,
4e2933c620 2015-04-21        kinaba: 	JOY_RETURNY        = 0x00000002,
4e2933c620 2015-04-21        kinaba: 	JOY_RETURNZ        = 0x00000004,
4e2933c620 2015-04-21        kinaba: 	JOY_RETURNR        = 0x00000008,
4e2933c620 2015-04-21        kinaba: 	JOY_RETURNU        = 0x00000010,
4e2933c620 2015-04-21        kinaba: 	JOY_RETURNV        = 0x00000020,
4e2933c620 2015-04-21        kinaba: 	JOY_RETURNPOV      = 0x00000040,
4e2933c620 2015-04-21        kinaba: 	JOY_RETURNBUTTONS  = 0x00000080,
4e2933c620 2015-04-21        kinaba: 	JOY_RETURNRAWDATA  = 0x00000100,
4e2933c620 2015-04-21        kinaba: 	JOY_RETURNPOVCTS   = 0x00000200,
4e2933c620 2015-04-21        kinaba: 	JOY_RETURNCENTERED = 0x00000400,
4e2933c620 2015-04-21        kinaba: 	JOY_USEDEADZONE    = 0x00000800,
4e2933c620 2015-04-21        kinaba: 	JOY_RETURNALL      = JOY_RETURNX | JOY_RETURNY | JOY_RETURNZ | JOY_RETURNR
4e2933c620 2015-04-21        kinaba: 	                     | JOY_RETURNU | JOY_RETURNV | JOY_RETURNPOV
4e2933c620 2015-04-21        kinaba: 	                     | JOY_RETURNBUTTONS,
4e2933c620 2015-04-21        kinaba: 	JOY_CAL_READALWAYS = 0x00010000,
4e2933c620 2015-04-21        kinaba: 	JOY_CAL_READXYONLY = 0x00020000,
4e2933c620 2015-04-21        kinaba: 	JOY_CAL_READ3      = 0x00040000,
4e2933c620 2015-04-21        kinaba: 	JOY_CAL_READ4      = 0x00080000,
4e2933c620 2015-04-21        kinaba: 	JOY_CAL_READXONLY  = 0x00100000,
4e2933c620 2015-04-21        kinaba: 	JOY_CAL_READYONLY  = 0x00200000,
4e2933c620 2015-04-21        kinaba: 	JOY_CAL_READ5      = 0x00400000,
4e2933c620 2015-04-21        kinaba: 	JOY_CAL_READ6      = 0x00800000,
4e2933c620 2015-04-21        kinaba: 	JOY_CAL_READZONLY  = 0x01000000,
4e2933c620 2015-04-21        kinaba: 	JOY_CAL_READRONLY  = 0x02000000,
4e2933c620 2015-04-21        kinaba: 	JOY_CAL_READUONLY  = 0x04000000,
4e2933c620 2015-04-21        kinaba: 	JOY_CAL_READVONLY  = 0x08000000;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const JOYSTICKID1=0;
4e2933c620 2015-04-21        kinaba: const JOYSTICKID2=1;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const JOYCAPS_HASZ=1;
4e2933c620 2015-04-21        kinaba: const JOYCAPS_HASR=2;
4e2933c620 2015-04-21        kinaba: const JOYCAPS_HASU=4;
4e2933c620 2015-04-21        kinaba: const JOYCAPS_HASV=8;
4e2933c620 2015-04-21        kinaba: const JOYCAPS_HASPOV=16;
4e2933c620 2015-04-21        kinaba: const JOYCAPS_POV4DIR=32;
4e2933c620 2015-04-21        kinaba: const JOYCAPS_POVCTS=64;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MMIOERR_BASE=256;
4e2933c620 2015-04-21        kinaba: const MMIOERR_FILENOTFOUND=(MMIOERR_BASE+1);
4e2933c620 2015-04-21        kinaba: const MMIOERR_OUTOFMEMORY=(MMIOERR_BASE+2);
4e2933c620 2015-04-21        kinaba: const MMIOERR_CANNOTOPEN=(MMIOERR_BASE+3);
4e2933c620 2015-04-21        kinaba: const MMIOERR_CANNOTCLOSE=(MMIOERR_BASE+4);
4e2933c620 2015-04-21        kinaba: const MMIOERR_CANNOTREAD=(MMIOERR_BASE+5);
4e2933c620 2015-04-21        kinaba: const MMIOERR_CANNOTWRITE=(MMIOERR_BASE+6);
4e2933c620 2015-04-21        kinaba: const MMIOERR_CANNOTSEEK=(MMIOERR_BASE+7);
4e2933c620 2015-04-21        kinaba: const MMIOERR_CANNOTEXPAND=(MMIOERR_BASE+8);
4e2933c620 2015-04-21        kinaba: const MMIOERR_CHUNKNOTFOUND=(MMIOERR_BASE+9);
4e2933c620 2015-04-21        kinaba: const MMIOERR_UNBUFFERED=(MMIOERR_BASE+10);
4e2933c620 2015-04-21        kinaba: const MMIOERR_PATHNOTFOUND=(MMIOERR_BASE+11);
4e2933c620 2015-04-21        kinaba: const MMIOERR_ACCESSDENIED=(MMIOERR_BASE+12);
4e2933c620 2015-04-21        kinaba: const MMIOERR_SHARINGVIOLATION=(MMIOERR_BASE+13);
4e2933c620 2015-04-21        kinaba: const MMIOERR_NETWORKERROR=(MMIOERR_BASE+14);
4e2933c620 2015-04-21        kinaba: const MMIOERR_TOOMANYOPENFILES=(MMIOERR_BASE+15);
4e2933c620 2015-04-21        kinaba: const MMIOERR_INVALIDFILE=(MMIOERR_BASE+16);
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const CFSEPCHAR='+';
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MMIO_RWMODE=3;
4e2933c620 2015-04-21        kinaba: const MMIO_SHAREMODE=0x70;
4e2933c620 2015-04-21        kinaba: const MMIO_CREATE=0x1000;
4e2933c620 2015-04-21        kinaba: const MMIO_PARSE=256;
4e2933c620 2015-04-21        kinaba: const MMIO_DELETE=512;
4e2933c620 2015-04-21        kinaba: const MMIO_EXIST=0x4000;
4e2933c620 2015-04-21        kinaba: const MMIO_ALLOCBUF=0x10000;
4e2933c620 2015-04-21        kinaba: const MMIO_GETTEMP=0x20000;
4e2933c620 2015-04-21        kinaba: const MMIO_DIRTY=0x10000000;
4e2933c620 2015-04-21        kinaba: const MMIO_READ=0;
4e2933c620 2015-04-21        kinaba: const MMIO_WRITE=1;
4e2933c620 2015-04-21        kinaba: const MMIO_READWRITE=2;
4e2933c620 2015-04-21        kinaba: const MMIO_COMPAT=0;
4e2933c620 2015-04-21        kinaba: const MMIO_EXCLUSIVE=16;
4e2933c620 2015-04-21        kinaba: const MMIO_DENYWRITE=32;
4e2933c620 2015-04-21        kinaba: const MMIO_DENYREAD=0x30;
4e2933c620 2015-04-21        kinaba: const MMIO_DENYNONE=64;
4e2933c620 2015-04-21        kinaba: const MMIO_FHOPEN=16;
4e2933c620 2015-04-21        kinaba: const MMIO_EMPTYBUF=16;
4e2933c620 2015-04-21        kinaba: const MMIO_TOUPPER=16;
4e2933c620 2015-04-21        kinaba: const MMIO_INSTALLPROC=0x10000;
4e2933c620 2015-04-21        kinaba: const MMIO_GLOBALPROC=0x10000000;
4e2933c620 2015-04-21        kinaba: const MMIO_REMOVEPROC=0x20000;
4e2933c620 2015-04-21        kinaba: const MMIO_UNICODEPROC=0x1000000;
4e2933c620 2015-04-21        kinaba: const MMIO_FINDPROC=0x40000;
4e2933c620 2015-04-21        kinaba: const MMIO_FINDCHUNK=16;
4e2933c620 2015-04-21        kinaba: const MMIO_FINDRIFF=32;
4e2933c620 2015-04-21        kinaba: const MMIO_FINDLIST=64;
4e2933c620 2015-04-21        kinaba: const MMIO_CREATERIFF=32;
4e2933c620 2015-04-21        kinaba: const MMIO_CREATELIST=64;
4e2933c620 2015-04-21        kinaba: const MMIOM_READ=MMIO_READ;
4e2933c620 2015-04-21        kinaba: const MMIOM_WRITE=MMIO_WRITE;
4e2933c620 2015-04-21        kinaba: const MMIOM_SEEK=2;
4e2933c620 2015-04-21        kinaba: const MMIOM_OPEN=3;
4e2933c620 2015-04-21        kinaba: const MMIOM_CLOSE=4;
4e2933c620 2015-04-21        kinaba: const MMIOM_WRITEFLUSH=5;
4e2933c620 2015-04-21        kinaba: const MMIOM_RENAME=6;
4e2933c620 2015-04-21        kinaba: const MMIOM_USER=0x8000;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const FOURCC_RIFF = mmioFOURCC!('R', 'I', 'F', 'F');
4e2933c620 2015-04-21        kinaba: const FOURCC_LIST = mmioFOURCC!('L', 'I', 'S', 'T');
4e2933c620 2015-04-21        kinaba: const FOURCC_DOS  = mmioFOURCC!('D', 'O', 'S', ' ');
4e2933c620 2015-04-21        kinaba: const FOURCC_MEM  = mmioFOURCC!('M', 'E', 'M', ' ');
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MMIO_DEFAULTBUFFER=8192;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: enum {
4e2933c620 2015-04-21        kinaba: 	MCIERR_INVALID_DEVICE_ID = MCIERR_BASE + 1,
4e2933c620 2015-04-21        kinaba: 	MCIERR_UNRECOGNIZED_KEYWORD = MCIERR_BASE + 3,
4e2933c620 2015-04-21        kinaba: 	MCIERR_UNRECOGNIZED_COMMAND = MCIERR_BASE + 5,
4e2933c620 2015-04-21        kinaba: 	MCIERR_HARDWARE,
4e2933c620 2015-04-21        kinaba: 	MCIERR_INVALID_DEVICE_NAME,
4e2933c620 2015-04-21        kinaba: 	MCIERR_OUT_OF_MEMORY,
4e2933c620 2015-04-21        kinaba: 	MCIERR_DEVICE_OPEN,
4e2933c620 2015-04-21        kinaba: 	MCIERR_CANNOT_LOAD_DRIVER,
4e2933c620 2015-04-21        kinaba: 	MCIERR_MISSING_COMMAND_STRING,
4e2933c620 2015-04-21        kinaba: 	MCIERR_PARAM_OVERFLOW,
4e2933c620 2015-04-21        kinaba: 	MCIERR_MISSING_STRING_ARGUMENT,
4e2933c620 2015-04-21        kinaba: 	MCIERR_BAD_INTEGER,
4e2933c620 2015-04-21        kinaba: 	MCIERR_PARSER_INTERNAL,
4e2933c620 2015-04-21        kinaba: 	MCIERR_DRIVER_INTERNAL,
4e2933c620 2015-04-21        kinaba: 	MCIERR_MISSING_PARAMETER,
4e2933c620 2015-04-21        kinaba: 	MCIERR_UNSUPPORTED_FUNCTION,
4e2933c620 2015-04-21        kinaba: 	MCIERR_FILE_NOT_FOUND,
4e2933c620 2015-04-21        kinaba: 	MCIERR_DEVICE_NOT_READY,
4e2933c620 2015-04-21        kinaba: 	MCIERR_INTERNAL,
4e2933c620 2015-04-21        kinaba: 	MCIERR_DRIVER,
4e2933c620 2015-04-21        kinaba: 	MCIERR_CANNOT_USE_ALL,
4e2933c620 2015-04-21        kinaba: 	MCIERR_MULTIPLE,
4e2933c620 2015-04-21        kinaba: 	MCIERR_EXTENSION_NOT_FOUND,
4e2933c620 2015-04-21        kinaba: 	MCIERR_OUTOFRANGE, // = MCIERR_BASE+26
4e2933c620 2015-04-21        kinaba: 	MCIERR_FLAGS_NOT_COMPATIBLE = MCIERR_BASE + 28,
4e2933c620 2015-04-21        kinaba: 	MCIERR_FILE_NOT_SAVED = MCIERR_BASE + 30,
4e2933c620 2015-04-21        kinaba: 	MCIERR_DEVICE_TYPE_REQUIRED,
4e2933c620 2015-04-21        kinaba: 	MCIERR_DEVICE_LOCKED,
4e2933c620 2015-04-21        kinaba: 	MCIERR_DUPLICATE_ALIAS,
4e2933c620 2015-04-21        kinaba: 	MCIERR_BAD_CONSTANT,
4e2933c620 2015-04-21        kinaba: 	MCIERR_MUST_USE_SHAREABLE,
4e2933c620 2015-04-21        kinaba: 	MCIERR_MISSING_DEVICE_NAME,
4e2933c620 2015-04-21        kinaba: 	MCIERR_BAD_TIME_FORMAT,
4e2933c620 2015-04-21        kinaba: 	MCIERR_NO_CLOSING_QUOTE,
4e2933c620 2015-04-21        kinaba: 	MCIERR_DUPLICATE_FLAGS,
4e2933c620 2015-04-21        kinaba: 	MCIERR_INVALID_FILE,
4e2933c620 2015-04-21        kinaba: 	MCIERR_NULL_PARAMETER_BLOCK,
4e2933c620 2015-04-21        kinaba: 	MCIERR_UNNAMED_RESOURCE,
4e2933c620 2015-04-21        kinaba: 	MCIERR_NEW_REQUIRES_ALIAS,
4e2933c620 2015-04-21        kinaba: 	MCIERR_NOTIFY_ON_AUTO_OPEN,
4e2933c620 2015-04-21        kinaba: 	MCIERR_NO_ELEMENT_ALLOWED,
4e2933c620 2015-04-21        kinaba: 	MCIERR_NONAPPLICABLE_FUNCTION,
4e2933c620 2015-04-21        kinaba: 	MCIERR_ILLEGAL_FOR_AUTO_OPEN,
4e2933c620 2015-04-21        kinaba: 	MCIERR_FILENAME_REQUIRED,
4e2933c620 2015-04-21        kinaba: 	MCIERR_EXTRA_CHARACTERS,
4e2933c620 2015-04-21        kinaba: 	MCIERR_DEVICE_NOT_INSTALLED,
4e2933c620 2015-04-21        kinaba: 	MCIERR_GET_CD,
4e2933c620 2015-04-21        kinaba: 	MCIERR_SET_CD,
4e2933c620 2015-04-21        kinaba: 	MCIERR_SET_DRIVE,
4e2933c620 2015-04-21        kinaba: 	MCIERR_DEVICE_LENGTH,
4e2933c620 2015-04-21        kinaba: 	MCIERR_DEVICE_ORD_LENGTH,
4e2933c620 2015-04-21        kinaba: 	MCIERR_NO_INTEGER, // = MCIERR_BASE + 56
4e2933c620 2015-04-21        kinaba: 	MCIERR_WAVE_OUTPUTSINUSE = MCIERR_BASE + 64,
4e2933c620 2015-04-21        kinaba: 	MCIERR_WAVE_SETOUTPUTINUSE,
4e2933c620 2015-04-21        kinaba: 	MCIERR_WAVE_INPUTSINUSE,
4e2933c620 2015-04-21        kinaba: 	MCIERR_WAVE_SETINPUTINUSE,
4e2933c620 2015-04-21        kinaba: 	MCIERR_WAVE_OUTPUTUNSPECIFIED,
4e2933c620 2015-04-21        kinaba: 	MCIERR_WAVE_INPUTUNSPECIFIED,
4e2933c620 2015-04-21        kinaba: 	MCIERR_WAVE_OUTPUTSUNSUITABLE,
4e2933c620 2015-04-21        kinaba: 	MCIERR_WAVE_SETOUTPUTUNSUITABLE,
4e2933c620 2015-04-21        kinaba: 	MCIERR_WAVE_INPUTSUNSUITABLE,
4e2933c620 2015-04-21        kinaba: 	MCIERR_WAVE_SETINPUTUNSUITABLE, // = MCIERR_BASE + 73
4e2933c620 2015-04-21        kinaba: 	MCIERR_SEQ_DIV_INCOMPATIBLE = MCIERR_BASE + 80,
4e2933c620 2015-04-21        kinaba: 	MCIERR_SEQ_PORT_INUSE,
4e2933c620 2015-04-21        kinaba: 	MCIERR_SEQ_PORT_NONEXISTENT,
4e2933c620 2015-04-21        kinaba: 	MCIERR_SEQ_PORT_MAPNODEVICE,
4e2933c620 2015-04-21        kinaba: 	MCIERR_SEQ_PORT_MISCERROR,
4e2933c620 2015-04-21        kinaba: 	MCIERR_SEQ_TIMER,
4e2933c620 2015-04-21        kinaba: 	MCIERR_SEQ_PORTUNSPECIFIED,
4e2933c620 2015-04-21        kinaba: 	MCIERR_SEQ_NOMIDIPRESENT, // = MCIERR_BASE + 87
4e2933c620 2015-04-21        kinaba: 	MCIERR_NO_WINDOW = MCIERR_BASE + 90,
4e2933c620 2015-04-21        kinaba: 	MCIERR_CREATEWINDOW,
4e2933c620 2015-04-21        kinaba: 	MCIERR_FILE_READ,
4e2933c620 2015-04-21        kinaba: 	MCIERR_FILE_WRITE,
4e2933c620 2015-04-21        kinaba: 	MCIERR_NO_IDENTITY // = MCIERR_BASE + 94
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: const MCIERR_CUSTOM_DRIVER_BASE = MCIERR_BASE + 256;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MCI_FIRST=DRV_MCI_FIRST;
4e2933c620 2015-04-21        kinaba: const MCI_OPEN=0x803;
4e2933c620 2015-04-21        kinaba: const MCI_CLOSE=0x804;
4e2933c620 2015-04-21        kinaba: const MCI_ESCAPE=0x805;
4e2933c620 2015-04-21        kinaba: const MCI_PLAY=0x806;
4e2933c620 2015-04-21        kinaba: const MCI_SEEK=0x807;
4e2933c620 2015-04-21        kinaba: const MCI_STOP=0x808;
4e2933c620 2015-04-21        kinaba: const MCI_PAUSE=0x809;
4e2933c620 2015-04-21        kinaba: const MCI_INFO=0x80A;
4e2933c620 2015-04-21        kinaba: const MCI_GETDEVCAPS=0x80B;
4e2933c620 2015-04-21        kinaba: const MCI_SPIN=0x80C;
4e2933c620 2015-04-21        kinaba: const MCI_SET=0x80D;
4e2933c620 2015-04-21        kinaba: const MCI_STEP=0x80E;
4e2933c620 2015-04-21        kinaba: const MCI_RECORD=0x80F;
4e2933c620 2015-04-21        kinaba: const MCI_SYSINFO=0x810;
4e2933c620 2015-04-21        kinaba: const MCI_BREAK=0x811;
4e2933c620 2015-04-21        kinaba: const MCI_SAVE=0x813;
4e2933c620 2015-04-21        kinaba: const MCI_STATUS=0x814;
4e2933c620 2015-04-21        kinaba: const MCI_CUE=0x830;
4e2933c620 2015-04-21        kinaba: const MCI_REALIZE=0x840;
4e2933c620 2015-04-21        kinaba: const MCI_WINDOW=0x841;
4e2933c620 2015-04-21        kinaba: const MCI_PUT=0x842;
4e2933c620 2015-04-21        kinaba: const MCI_WHERE=0x843;
4e2933c620 2015-04-21        kinaba: const MCI_FREEZE=0x844;
4e2933c620 2015-04-21        kinaba: const MCI_UNFREEZE=0x845;
4e2933c620 2015-04-21        kinaba: const MCI_LOAD=0x850;
4e2933c620 2015-04-21        kinaba: const MCI_CUT=0x851;
4e2933c620 2015-04-21        kinaba: const MCI_COPY=0x852;
4e2933c620 2015-04-21        kinaba: const MCI_PASTE=0x853;
4e2933c620 2015-04-21        kinaba: const MCI_UPDATE=0x854;
4e2933c620 2015-04-21        kinaba: const MCI_RESUME=0x855;
4e2933c620 2015-04-21        kinaba: const MCI_DELETE=0x856;
4e2933c620 2015-04-21        kinaba: const MCI_USER_MESSAGES=(DRV_MCI_FIRST+0x400);
4e2933c620 2015-04-21        kinaba: const MCI_LAST=0xFFF;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MCIDEVICEID MCI_ALL_DEVICE_ID = -1;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MCI_DEVTYPE_VCR=513;
4e2933c620 2015-04-21        kinaba: const MCI_DEVTYPE_VIDEODISC=514;
4e2933c620 2015-04-21        kinaba: const MCI_DEVTYPE_OVERLAY=515;
4e2933c620 2015-04-21        kinaba: const MCI_DEVTYPE_CD_AUDIO=516;
4e2933c620 2015-04-21        kinaba: const MCI_DEVTYPE_DAT=517;
4e2933c620 2015-04-21        kinaba: const MCI_DEVTYPE_SCANNER=518;
4e2933c620 2015-04-21        kinaba: const MCI_DEVTYPE_ANIMATION=519;
4e2933c620 2015-04-21        kinaba: const MCI_DEVTYPE_DIGITAL_VIDEO=520;
4e2933c620 2015-04-21        kinaba: const MCI_DEVTYPE_OTHER=521;
4e2933c620 2015-04-21        kinaba: const MCI_DEVTYPE_WAVEFORM_AUDIO=522;
4e2933c620 2015-04-21        kinaba: const MCI_DEVTYPE_SEQUENCER=523;
4e2933c620 2015-04-21        kinaba: const MCI_DEVTYPE_FIRST=MCI_DEVTYPE_VCR;
4e2933c620 2015-04-21        kinaba: const MCI_DEVTYPE_LAST=MCI_DEVTYPE_SEQUENCER;
4e2933c620 2015-04-21        kinaba: const MCI_DEVTYPE_FIRST_USER=0x1000;
4e2933c620 2015-04-21        kinaba: const MCI_MODE_NOT_READY=(MCI_STRING_OFFSET+12);
4e2933c620 2015-04-21        kinaba: const MCI_MODE_STOP=(MCI_STRING_OFFSET+13);
4e2933c620 2015-04-21        kinaba: const MCI_MODE_PLAY=(MCI_STRING_OFFSET+14);
4e2933c620 2015-04-21        kinaba: const MCI_MODE_RECORD=(MCI_STRING_OFFSET+15);
4e2933c620 2015-04-21        kinaba: const MCI_MODE_SEEK=(MCI_STRING_OFFSET+16);
4e2933c620 2015-04-21        kinaba: const MCI_MODE_PAUSE=(MCI_STRING_OFFSET+17);
4e2933c620 2015-04-21        kinaba: const MCI_MODE_OPEN=(MCI_STRING_OFFSET+18);
4e2933c620 2015-04-21        kinaba: const MCI_FORMAT_MILLISECONDS=0;
4e2933c620 2015-04-21        kinaba: const MCI_FORMAT_HMS=1;
4e2933c620 2015-04-21        kinaba: const MCI_FORMAT_MSF=2;
4e2933c620 2015-04-21        kinaba: const MCI_FORMAT_FRAMES=3;
4e2933c620 2015-04-21        kinaba: const MCI_FORMAT_SMPTE_24=4;
4e2933c620 2015-04-21        kinaba: const MCI_FORMAT_SMPTE_25=5;
4e2933c620 2015-04-21        kinaba: const MCI_FORMAT_SMPTE_30=6;
4e2933c620 2015-04-21        kinaba: const MCI_FORMAT_SMPTE_30DROP=7;
4e2933c620 2015-04-21        kinaba: const MCI_FORMAT_BYTES=8;
4e2933c620 2015-04-21        kinaba: const MCI_FORMAT_SAMPLES=9;
4e2933c620 2015-04-21        kinaba: const MCI_FORMAT_TMSF=10;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: // Macros
4e2933c620 2015-04-21        kinaba: BYTE MCI_HMS_HOUR(DWORD t) { return cast(BYTE)(t); }
4e2933c620 2015-04-21        kinaba: BYTE MCI_HMS_MINUTE(DWORD t) { return cast(BYTE)(t>>>8); }
4e2933c620 2015-04-21        kinaba: BYTE MCI_HMS_SECOND(DWORD t) { return cast(BYTE)( t>>>16); }
4e2933c620 2015-04-21        kinaba: DWORD MCI_MAKE_HMS(BYTE h, BYTE m, BYTE s) { return h |(m<<8)|(cast(DWORD)(s)<<16); }
4e2933c620 2015-04-21        kinaba: DWORD MCI_MAKE_MSF(BYTE m, BYTE s, BYTE f) { return m |(s<<8)|(cast(DWORD)(f)<<16); }
4e2933c620 2015-04-21        kinaba: DWORD MCI_MAKE_TMSF(BYTE t, BYTE m, BYTE s, BYTE f) {
4e2933c620 2015-04-21        kinaba:  return t |(m<<8)|(s<<16)|(cast(DWORD)(f)<< 24); }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: BYTE MCI_MSF_MINUTE(DWORD t) { return cast(BYTE)(t); }
4e2933c620 2015-04-21        kinaba: BYTE MCI_MSF_SECOND(DWORD t) { return cast(BYTE)(t >>> 8); }
4e2933c620 2015-04-21        kinaba: BYTE MCI_MSF_FRAME(DWORD t)  {  return cast(BYTE)(t >>> 16); }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: BYTE MCI_TMSF_TRACK(DWORD t)  { return cast(BYTE)(t); }
4e2933c620 2015-04-21        kinaba: BYTE MCI_TMSF_MINUTE(DWORD t) { return cast(BYTE)(t>>8); }
4e2933c620 2015-04-21        kinaba: BYTE MCI_TMSF_SECOND(DWORD t) { return cast(BYTE)(t>>16); }
4e2933c620 2015-04-21        kinaba: BYTE MCI_TMSF_FRAME(DWORD t)  { return cast(BYTE)(t>>24); }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MCI_NOTIFY_SUCCESSFUL=1;
4e2933c620 2015-04-21        kinaba: const MCI_NOTIFY_SUPERSEDED=2;
4e2933c620 2015-04-21        kinaba: const MCI_NOTIFY_ABORTED=4;
4e2933c620 2015-04-21        kinaba: const MCI_NOTIFY_FAILURE=8;
4e2933c620 2015-04-21        kinaba: const MCI_NOTIFY=1;
4e2933c620 2015-04-21        kinaba: const MCI_WAIT=2;
4e2933c620 2015-04-21        kinaba: const MCI_FROM=4;
4e2933c620 2015-04-21        kinaba: const MCI_TO=8;
4e2933c620 2015-04-21        kinaba: const MCI_TRACK=16;
4e2933c620 2015-04-21        kinaba: const MCI_OPEN_SHAREABLE=256;
4e2933c620 2015-04-21        kinaba: const MCI_OPEN_ELEMENT=512;
4e2933c620 2015-04-21        kinaba: const MCI_OPEN_ALIAS=1024;
4e2933c620 2015-04-21        kinaba: const MCI_OPEN_ELEMENT_ID=2048;
4e2933c620 2015-04-21        kinaba: const MCI_OPEN_TYPE_ID=0x1000;
4e2933c620 2015-04-21        kinaba: const MCI_OPEN_TYPE=0x2000;
4e2933c620 2015-04-21        kinaba: const MCI_SEEK_TO_START=256;
4e2933c620 2015-04-21        kinaba: const MCI_SEEK_TO_END=512;
4e2933c620 2015-04-21        kinaba: const MCI_STATUS_ITEM=256;
4e2933c620 2015-04-21        kinaba: const MCI_STATUS_START=512;
4e2933c620 2015-04-21        kinaba: const MCI_STATUS_LENGTH=1;
4e2933c620 2015-04-21        kinaba: const MCI_STATUS_POSITION=2;
4e2933c620 2015-04-21        kinaba: const MCI_STATUS_NUMBER_OF_TRACKS=3;
4e2933c620 2015-04-21        kinaba: const MCI_STATUS_MODE=4;
4e2933c620 2015-04-21        kinaba: const MCI_STATUS_MEDIA_PRESENT=5;
4e2933c620 2015-04-21        kinaba: const MCI_STATUS_TIME_FORMAT=6;
4e2933c620 2015-04-21        kinaba: const MCI_STATUS_READY=7;
4e2933c620 2015-04-21        kinaba: const MCI_STATUS_CURRENT_TRACK=8;
4e2933c620 2015-04-21        kinaba: const MCI_INFO_PRODUCT=256;
4e2933c620 2015-04-21        kinaba: const MCI_INFO_FILE=512;
4e2933c620 2015-04-21        kinaba: const MCI_INFO_MEDIA_UPC=1024;
4e2933c620 2015-04-21        kinaba: const MCI_INFO_MEDIA_IDENTITY=2048;
4e2933c620 2015-04-21        kinaba: const MCI_INFO_NAME=0x1000;
4e2933c620 2015-04-21        kinaba: const MCI_INFO_COPYRIGHT=0x2000;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MCI_GETDEVCAPS_ITEM=256;
4e2933c620 2015-04-21        kinaba: const MCI_GETDEVCAPS_CAN_RECORD=1;
4e2933c620 2015-04-21        kinaba: const MCI_GETDEVCAPS_HAS_AUDIO=2;
4e2933c620 2015-04-21        kinaba: const MCI_GETDEVCAPS_HAS_VIDEO=3;
4e2933c620 2015-04-21        kinaba: const MCI_GETDEVCAPS_DEVICE_TYPE=4;
4e2933c620 2015-04-21        kinaba: const MCI_GETDEVCAPS_USES_FILES=5;
4e2933c620 2015-04-21        kinaba: const MCI_GETDEVCAPS_COMPOUND_DEVICE=6;
4e2933c620 2015-04-21        kinaba: const MCI_GETDEVCAPS_CAN_EJECT=7;
4e2933c620 2015-04-21        kinaba: const MCI_GETDEVCAPS_CAN_PLAY=8;
4e2933c620 2015-04-21        kinaba: const MCI_GETDEVCAPS_CAN_SAVE=9;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MCI_SYSINFO_QUANTITY=256;
4e2933c620 2015-04-21        kinaba: const MCI_SYSINFO_OPEN=512;
4e2933c620 2015-04-21        kinaba: const MCI_SYSINFO_NAME=1024;
4e2933c620 2015-04-21        kinaba: const MCI_SYSINFO_INSTALLNAME=2048;
4e2933c620 2015-04-21        kinaba: const MCI_SET_DOOR_OPEN=256;
4e2933c620 2015-04-21        kinaba: const MCI_SET_DOOR_CLOSED=512;
4e2933c620 2015-04-21        kinaba: const MCI_SET_TIME_FORMAT=1024;
4e2933c620 2015-04-21        kinaba: const MCI_SET_AUDIO=2048;
4e2933c620 2015-04-21        kinaba: const MCI_SET_VIDEO=0x1000;
4e2933c620 2015-04-21        kinaba: const MCI_SET_ON=0x2000;
4e2933c620 2015-04-21        kinaba: const MCI_SET_OFF=0x4000;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MCI_SET_AUDIO_ALL=0;
4e2933c620 2015-04-21        kinaba: const MCI_SET_AUDIO_LEFT=1;
4e2933c620 2015-04-21        kinaba: const MCI_SET_AUDIO_RIGHT=2;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MCI_BREAK_KEY=256;
4e2933c620 2015-04-21        kinaba: const MCI_BREAK_HWND=512;
4e2933c620 2015-04-21        kinaba: const MCI_BREAK_OFF=1024;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MCI_RECORD_INSERT=256;
4e2933c620 2015-04-21        kinaba: const MCI_RECORD_OVERWRITE=512;
4e2933c620 2015-04-21        kinaba: const MCI_SAVE_FILE=256;
4e2933c620 2015-04-21        kinaba: const MCI_LOAD_FILE=256;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MCI_VD_MODE_PARK=(MCI_VD_OFFSET+1);
4e2933c620 2015-04-21        kinaba: const MCI_VD_MEDIA_CLV=(MCI_VD_OFFSET+2);
4e2933c620 2015-04-21        kinaba: const MCI_VD_MEDIA_CAV=(MCI_VD_OFFSET+3);
4e2933c620 2015-04-21        kinaba: const MCI_VD_MEDIA_OTHER=(MCI_VD_OFFSET+4);
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MCI_VD_FORMAT_TRACK=0x4001;
4e2933c620 2015-04-21        kinaba: const MCI_VD_PLAY_REVERSE=0x10000;
4e2933c620 2015-04-21        kinaba: const MCI_VD_PLAY_FAST=0x20000;
4e2933c620 2015-04-21        kinaba: const MCI_VD_PLAY_SPEED=0x40000;
4e2933c620 2015-04-21        kinaba: const MCI_VD_PLAY_SCAN=0x80000;
4e2933c620 2015-04-21        kinaba: const MCI_VD_PLAY_SLOW=0x100000;
4e2933c620 2015-04-21        kinaba: const MCI_VD_SEEK_REVERSE=0x10000;
4e2933c620 2015-04-21        kinaba: const MCI_VD_STATUS_SPEED=0x4002;
4e2933c620 2015-04-21        kinaba: const MCI_VD_STATUS_FORWARD=0x4003;
4e2933c620 2015-04-21        kinaba: const MCI_VD_STATUS_MEDIA_TYPE=0x4004;
4e2933c620 2015-04-21        kinaba: const MCI_VD_STATUS_SIDE=0x4005;
4e2933c620 2015-04-21        kinaba: const MCI_VD_STATUS_DISC_SIZE=0x4006;
4e2933c620 2015-04-21        kinaba: const MCI_VD_GETDEVCAPS_CLV=0x10000;
4e2933c620 2015-04-21        kinaba: const MCI_VD_GETDEVCAPS_CAV=0x20000;
4e2933c620 2015-04-21        kinaba: const MCI_VD_SPIN_UP=0x10000;
4e2933c620 2015-04-21        kinaba: const MCI_VD_SPIN_DOWN=0x20000;
4e2933c620 2015-04-21        kinaba: const MCI_VD_GETDEVCAPS_CAN_REVERSE=0x4002;
4e2933c620 2015-04-21        kinaba: const MCI_VD_GETDEVCAPS_FAST_RATE=0x4003;
4e2933c620 2015-04-21        kinaba: const MCI_VD_GETDEVCAPS_SLOW_RATE=0x4004;
4e2933c620 2015-04-21        kinaba: const MCI_VD_GETDEVCAPS_NORMAL_RATE=0x4005;
4e2933c620 2015-04-21        kinaba: const MCI_VD_STEP_FRAMES=0x10000;
4e2933c620 2015-04-21        kinaba: const MCI_VD_STEP_REVERSE=0x20000;
4e2933c620 2015-04-21        kinaba: const MCI_VD_ESCAPE_STRING=256;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MCI_CDA_STATUS_TYPE_TRACK=0x4001;
4e2933c620 2015-04-21        kinaba: const MCI_CDA_TRACK_AUDIO=MCI_CD_OFFSET;
4e2933c620 2015-04-21        kinaba: const MCI_CDA_TRACK_OTHER=(MCI_CD_OFFSET+1);
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MCI_WAVE_PCM=MCI_WAVE_OFFSET;
4e2933c620 2015-04-21        kinaba: const MCI_WAVE_MAPPER=(MCI_WAVE_OFFSET+1);
4e2933c620 2015-04-21        kinaba: const MCI_WAVE_OPEN_BUFFER=0x10000;
4e2933c620 2015-04-21        kinaba: const MCI_WAVE_SET_FORMATTAG=0x10000;
4e2933c620 2015-04-21        kinaba: const MCI_WAVE_SET_CHANNELS=0x20000;
4e2933c620 2015-04-21        kinaba: const MCI_WAVE_SET_SAMPLESPERSEC=0x40000;
4e2933c620 2015-04-21        kinaba: const MCI_WAVE_SET_AVGBYTESPERSEC=0x80000;
4e2933c620 2015-04-21        kinaba: const MCI_WAVE_SET_BLOCKALIGN=0x100000;
4e2933c620 2015-04-21        kinaba: const MCI_WAVE_SET_BITSPERSAMPLE=0x200000;
4e2933c620 2015-04-21        kinaba: const MCI_WAVE_INPUT=0x400000;
4e2933c620 2015-04-21        kinaba: const MCI_WAVE_OUTPUT=0x800000;
4e2933c620 2015-04-21        kinaba: const MCI_WAVE_STATUS_FORMATTAG=0x4001;
4e2933c620 2015-04-21        kinaba: const MCI_WAVE_STATUS_CHANNELS=0x4002;
4e2933c620 2015-04-21        kinaba: const MCI_WAVE_STATUS_SAMPLESPERSEC=0x4003;
4e2933c620 2015-04-21        kinaba: const MCI_WAVE_STATUS_AVGBYTESPERSEC=0x4004;
4e2933c620 2015-04-21        kinaba: const MCI_WAVE_STATUS_BLOCKALIGN=0x4005;
4e2933c620 2015-04-21        kinaba: const MCI_WAVE_STATUS_BITSPERSAMPLE=0x4006;
4e2933c620 2015-04-21        kinaba: const MCI_WAVE_STATUS_LEVEL=0x4007;
4e2933c620 2015-04-21        kinaba: const MCI_WAVE_SET_ANYINPUT=0x4000000;
4e2933c620 2015-04-21        kinaba: const MCI_WAVE_SET_ANYOUTPUT=0x8000000;
4e2933c620 2015-04-21        kinaba: const MCI_WAVE_GETDEVCAPS_INPUTS=0x4001;
4e2933c620 2015-04-21        kinaba: const MCI_WAVE_GETDEVCAPS_OUTPUTS=0x4002;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MCI_SEQ_DIV_PPQN=MCI_SEQ_OFFSET;
4e2933c620 2015-04-21        kinaba: const MCI_SEQ_DIV_SMPTE_24=(MCI_SEQ_OFFSET+1);
4e2933c620 2015-04-21        kinaba: const MCI_SEQ_DIV_SMPTE_25=(MCI_SEQ_OFFSET+2);
4e2933c620 2015-04-21        kinaba: const MCI_SEQ_DIV_SMPTE_30DROP=(MCI_SEQ_OFFSET+3);
4e2933c620 2015-04-21        kinaba: const MCI_SEQ_DIV_SMPTE_30=(MCI_SEQ_OFFSET+4);
4e2933c620 2015-04-21        kinaba: const MCI_SEQ_FORMAT_SONGPTR=0x4001;
4e2933c620 2015-04-21        kinaba: const MCI_SEQ_FILE=0x4002;
4e2933c620 2015-04-21        kinaba: const MCI_SEQ_MIDI=0x4003;
4e2933c620 2015-04-21        kinaba: const MCI_SEQ_SMPTE=0x4004;
4e2933c620 2015-04-21        kinaba: const MCI_SEQ_NONE=65533;
4e2933c620 2015-04-21        kinaba: const MCI_SEQ_MAPPER=65535;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MCI_SEQ_STATUS_TEMPO=0x4002;
4e2933c620 2015-04-21        kinaba: const MCI_SEQ_STATUS_PORT=0x4003;
4e2933c620 2015-04-21        kinaba: const MCI_SEQ_STATUS_SLAVE=0x4007;
4e2933c620 2015-04-21        kinaba: const MCI_SEQ_STATUS_MASTER=0x4008;
4e2933c620 2015-04-21        kinaba: const MCI_SEQ_STATUS_OFFSET=0x4009;
4e2933c620 2015-04-21        kinaba: const MCI_SEQ_STATUS_DIVTYPE=0x400A;
4e2933c620 2015-04-21        kinaba: const MCI_SEQ_STATUS_NAME=0x400B;
4e2933c620 2015-04-21        kinaba: const MCI_SEQ_STATUS_COPYRIGHT=0x400C;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MCI_SEQ_SET_TEMPO=0x10000;
4e2933c620 2015-04-21        kinaba: const MCI_SEQ_SET_PORT=0x20000;
4e2933c620 2015-04-21        kinaba: const MCI_SEQ_SET_SLAVE=0x40000;
4e2933c620 2015-04-21        kinaba: const MCI_SEQ_SET_MASTER=0x80000;
4e2933c620 2015-04-21        kinaba: const MCI_SEQ_SET_OFFSET=0x1000000;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_OPEN_WS=0x10000;
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_OPEN_PARENT=0x20000;
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_OPEN_NOSTATIC=0x40000;
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_PLAY_SPEED=0x10000;
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_PLAY_REVERSE=0x20000;
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_PLAY_FAST=0x40000;
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_PLAY_SLOW=0x80000;
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_PLAY_SCAN=0x100000;
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_STEP_REVERSE=0x10000;
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_STEP_FRAMES=0x20000;
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_STATUS_SPEED=0x4001;
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_STATUS_FORWARD=0x4002;
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_STATUS_HWND=0x4003;
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_STATUS_HPAL=0x4004;
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_STATUS_STRETCH=0x4005;
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_INFO_TEXT=0x10000;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_GETDEVCAPS_CAN_REVERSE=0x4001;
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_GETDEVCAPS_FAST_RATE=0x4002;
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_GETDEVCAPS_SLOW_RATE=0x4003;
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_GETDEVCAPS_NORMAL_RATE=0x4004;
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_GETDEVCAPS_PALETTES=0x4006;
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_GETDEVCAPS_CAN_STRETCH=0x4007;
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_GETDEVCAPS_MAX_WINDOWS=0x4008;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_REALIZE_NORM=0x10000;
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_REALIZE_BKGD=0x20000;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_WINDOW_HWND=0x10000;
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_WINDOW_STATE=0x40000;
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_WINDOW_TEXT=0x80000;
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_WINDOW_ENABLE_STRETCH=0x100000;
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_WINDOW_DISABLE_STRETCH=0x200000;
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_WINDOW_DEFAULT=0x0;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_RECT=0x10000;
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_PUT_SOURCE=0x20000;
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_PUT_DESTINATION=0x40000;
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_WHERE_SOURCE=0x20000;
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_WHERE_DESTINATION=0x40000;
4e2933c620 2015-04-21        kinaba: const MCI_ANIM_UPDATE_HDC=0x20000;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const MCI_OVLY_OPEN_WS=0x10000;
4e2933c620 2015-04-21        kinaba: const MCI_OVLY_OPEN_PARENT=0x20000;
4e2933c620 2015-04-21        kinaba: const MCI_OVLY_STATUS_HWND=0x4001;
4e2933c620 2015-04-21        kinaba: const MCI_OVLY_STATUS_STRETCH=0x4002;
4e2933c620 2015-04-21        kinaba: const MCI_OVLY_INFO_TEXT=0x10000;
4e2933c620 2015-04-21        kinaba: const MCI_OVLY_GETDEVCAPS_CAN_STRETCH=0x4001;
4e2933c620 2015-04-21        kinaba: const MCI_OVLY_GETDEVCAPS_CAN_FREEZE=0x4002;
4e2933c620 2015-04-21        kinaba: const MCI_OVLY_GETDEVCAPS_MAX_WINDOWS=0x4003;
4e2933c620 2015-04-21        kinaba: const MCI_OVLY_WINDOW_HWND=0x10000;
4e2933c620 2015-04-21        kinaba: const MCI_OVLY_WINDOW_STATE=0x40000;
4e2933c620 2015-04-21        kinaba: const MCI_OVLY_WINDOW_TEXT=0x80000;
4e2933c620 2015-04-21        kinaba: const MCI_OVLY_WINDOW_ENABLE_STRETCH=0x100000;
4e2933c620 2015-04-21        kinaba: const MCI_OVLY_WINDOW_DISABLE_STRETCH=0x200000;
4e2933c620 2015-04-21        kinaba: const MCI_OVLY_WINDOW_DEFAULT=0x0;
4e2933c620 2015-04-21        kinaba: const MCI_OVLY_RECT=0x10000;
4e2933c620 2015-04-21        kinaba: const MCI_OVLY_PUT_SOURCE=0x20000;
4e2933c620 2015-04-21        kinaba: const MCI_OVLY_PUT_DESTINATION=0x40000;
4e2933c620 2015-04-21        kinaba: const MCI_OVLY_PUT_FRAME=0x80000;
4e2933c620 2015-04-21        kinaba: const MCI_OVLY_PUT_VIDEO=0x100000;
4e2933c620 2015-04-21        kinaba: const MCI_OVLY_WHERE_SOURCE=0x20000;
4e2933c620 2015-04-21        kinaba: const MCI_OVLY_WHERE_DESTINATION=0x40000;
4e2933c620 2015-04-21        kinaba: const MCI_OVLY_WHERE_FRAME=0x80000;
4e2933c620 2015-04-21        kinaba: const MCI_OVLY_WHERE_VIDEO=0x100000;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const NEWTRANSPARENT=3;
4e2933c620 2015-04-21        kinaba: const QUERYROPSUPPORT=40;
4e2933c620 2015-04-21        kinaba: const SELECTDIB=41;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: LONG DIBINDEX(WORD n) {
9b639cf2d6 2015-05-05        kinaba: 	return MAKELONG(n, 0x10FF);
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: const CAPS1=94;
4e2933c620 2015-04-21        kinaba: const C1_TRANSPARENT=1;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const SEEK_SET=0;
4e2933c620 2015-04-21        kinaba: const SEEK_CUR=1;
4e2933c620 2015-04-21        kinaba: const SEEK_END=2;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: alias DWORD MCIERROR;
4e2933c620 2015-04-21        kinaba: alias UINT MCIDEVICEID;
9b639cf2d6 2015-05-05        kinaba: alias UINT function (MCIDEVICEID, DWORD) YIELDPROC;
4e2933c620 2015-04-21        kinaba: alias UINT MMVERSION;
c2b7a98c21 2011-02-23        kinaba: alias UINT MMRESULT;
c2b7a98c21 2011-02-23        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MMTIME {
4e2933c620 2015-04-21        kinaba: 	UINT wType;
4e2933c620 2015-04-21        kinaba: 	union {
4e2933c620 2015-04-21        kinaba: 		DWORD ms;
4e2933c620 2015-04-21        kinaba: 		DWORD sample;
4e2933c620 2015-04-21        kinaba: 		DWORD cb;
4e2933c620 2015-04-21        kinaba: 		DWORD ticks;
4e2933c620 2015-04-21        kinaba: 		struct smpte {
4e2933c620 2015-04-21        kinaba: 			BYTE hour;
4e2933c620 2015-04-21        kinaba: 			BYTE min;
4e2933c620 2015-04-21        kinaba: 			BYTE sec;
4e2933c620 2015-04-21        kinaba: 			BYTE frame;
4e2933c620 2015-04-21        kinaba: 			BYTE fps;
4e2933c620 2015-04-21        kinaba: 			BYTE dummy;
9b639cf2d6 2015-05-05        kinaba: 			BYTE[2] pad;
4e2933c620 2015-04-21        kinaba: 		};
4e2933c620 2015-04-21        kinaba: 		struct midi {
4e2933c620 2015-04-21        kinaba: 			DWORD songptrpos;
4e2933c620 2015-04-21        kinaba: 		}
4e2933c620 2015-04-21        kinaba: 	}
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MMTIME* PMMTIME, LPMMTIME;
4e2933c620 2015-04-21        kinaba: 
9b639cf2d6 2015-05-05        kinaba: alias TypeDef!(HANDLE) HDRVR;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct DRVCONFIGINFO {
4e2933c620 2015-04-21        kinaba: 	DWORD dwDCISize;
4e2933c620 2015-04-21        kinaba: 	LPCWSTR lpszDCISectionName;
4e2933c620 2015-04-21        kinaba: 	LPCWSTR lpszDCIAliasName;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias DRVCONFIGINFO * PDRVCONFIGINFO, LPDRVCONFIGINFO;
4e2933c620 2015-04-21        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct DRVCONFIGINFOEX {
4e2933c620 2015-04-21        kinaba: 	DWORD dwDCISize;
4e2933c620 2015-04-21        kinaba: 	LPCWSTR lpszDCISectionName;
4e2933c620 2015-04-21        kinaba: 	LPCWSTR lpszDCIAliasName;
4e2933c620 2015-04-21        kinaba: 	DWORD dnDevNode;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias DRVCONFIGINFOEX* PDRVCONFIGINFOEX, LPDRVCONFIGINFOEX;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: extern(Windows):
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: /+FIXME: I couldn't find these in MSDN.
9b639cf2d6 2015-05-05        kinaba: alias void function (HDRVR, UINT, DWORD, DWORD, DWORD) DRVCALLBACK;
9b639cf2d6 2015-05-05        kinaba: LRESULT DRIVERPROC (DWORD, HDRVR, UINT, LPARAM, LPARAM);
4e2933c620 2015-04-21        kinaba: alias DRVCALLBACK* LPDRVCALLBACK, PDRVCALLBACK;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: alias DRVCALLBACK WAVECALLBACK;
4e2933c620 2015-04-21        kinaba: alias WAVECALLBACK* LPWAVECALLBACK;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: alias DRVCALLBACK MIDICALLBACK;
4e2933c620 2015-04-21        kinaba: alias MIDICALLBACK* LPMIDICALLBACK;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: +/
4e2933c620 2015-04-21        kinaba: 
9b639cf2d6 2015-05-05        kinaba: alias TypeDef!(HANDLE) HWAVE;
9b639cf2d6 2015-05-05        kinaba: alias TypeDef!(HANDLE) HWAVEIN;
9b639cf2d6 2015-05-05        kinaba: alias TypeDef!(HANDLE) HWAVEOUT;
4e2933c620 2015-04-21        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias HWAVEIN* LPHWAVEIN;
c2b7a98c21 2011-02-23        kinaba: alias HWAVEOUT* LPHWAVEOUT;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct WAVEHDR {
4e2933c620 2015-04-21        kinaba: 	LPSTR lpData;
4e2933c620 2015-04-21        kinaba: 	DWORD dwBufferLength;
4e2933c620 2015-04-21        kinaba: 	DWORD dwBytesRecorded;
4e2933c620 2015-04-21        kinaba: 	DWORD dwUser;
4e2933c620 2015-04-21        kinaba: 	DWORD dwFlags;
4e2933c620 2015-04-21        kinaba: 	DWORD dwLoops;
4e2933c620 2015-04-21        kinaba: 	WAVEHDR *lpNext;
4e2933c620 2015-04-21        kinaba: 	DWORD reserved;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias WAVEHDR* PWAVEHDR, LPWAVEHDR;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct WAVEOUTCAPSA {
4e2933c620 2015-04-21        kinaba: 	WORD wMid;
4e2933c620 2015-04-21        kinaba: 	WORD wPid;
4e2933c620 2015-04-21        kinaba: 	MMVERSION vDriverVersion;
9b639cf2d6 2015-05-05        kinaba: 	CHAR[MAXPNAMELEN] szPname;
4e2933c620 2015-04-21        kinaba: 	DWORD dwFormats;
4e2933c620 2015-04-21        kinaba: 	WORD wChannels;
4e2933c620 2015-04-21        kinaba: 	WORD wReserved1;
4e2933c620 2015-04-21        kinaba: 	DWORD dwSupport;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias WAVEOUTCAPSA* PWAVEOUTCAPSA, LPWAVEOUTCAPSA;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct WAVEOUTCAPSW {
4e2933c620 2015-04-21        kinaba: 	WORD wMid;
4e2933c620 2015-04-21        kinaba: 	WORD wPid;
4e2933c620 2015-04-21        kinaba: 	MMVERSION vDriverVersion;
9b639cf2d6 2015-05-05        kinaba: 	WCHAR[MAXPNAMELEN] szPname;
4e2933c620 2015-04-21        kinaba: 	DWORD dwFormats;
4e2933c620 2015-04-21        kinaba: 	WORD wChannels;
4e2933c620 2015-04-21        kinaba: 	WORD wReserved1;
4e2933c620 2015-04-21        kinaba: 	DWORD dwSupport;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias WAVEOUTCAPSW* PWAVEOUTCAPSW, LPWAVEOUTCAPSW;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct WAVEINCAPSA {
4e2933c620 2015-04-21        kinaba: 	WORD wMid;
4e2933c620 2015-04-21        kinaba: 	WORD wPid;
4e2933c620 2015-04-21        kinaba: 	MMVERSION vDriverVersion;
9b639cf2d6 2015-05-05        kinaba: 	CHAR[MAXPNAMELEN] szPname;
4e2933c620 2015-04-21        kinaba: 	DWORD dwFormats;
4e2933c620 2015-04-21        kinaba: 	WORD wChannels;
4e2933c620 2015-04-21        kinaba: 	WORD wReserved1;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias WAVEINCAPSA* PWAVEINCAPSA, LPWAVEINCAPSA;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct WAVEINCAPSW {
4e2933c620 2015-04-21        kinaba: 	WORD wMid;
4e2933c620 2015-04-21        kinaba: 	WORD wPid;
4e2933c620 2015-04-21        kinaba: 	MMVERSION vDriverVersion;
9b639cf2d6 2015-05-05        kinaba: 	WCHAR[MAXPNAMELEN] szPname;
4e2933c620 2015-04-21        kinaba: 	DWORD dwFormats;
4e2933c620 2015-04-21        kinaba: 	WORD wChannels;
4e2933c620 2015-04-21        kinaba: 	WORD wReserved1;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias WAVEINCAPSW* PWAVEINCAPSW, LPWAVEINCAPSW;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct WAVEFORMAT {
4e2933c620 2015-04-21        kinaba: 	WORD wFormatTag;
4e2933c620 2015-04-21        kinaba: 	WORD nChannels;
4e2933c620 2015-04-21        kinaba: 	DWORD nSamplesPerSec;
4e2933c620 2015-04-21        kinaba: 	DWORD nAvgBytesPerSec;
4e2933c620 2015-04-21        kinaba: 	WORD nBlockAlign;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias WAVEFORMAT* PWAVEFORMAT, LPWAVEFORMAT;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct PCMWAVEFORMAT {
4e2933c620 2015-04-21        kinaba: 	WAVEFORMAT wf;
4e2933c620 2015-04-21        kinaba: 	WORD wBitsPerSample;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias PCMWAVEFORMAT* PPCMWAVEFORMAT, LPPCMWAVEFORMAT;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct WAVEFORMATEX {
4e2933c620 2015-04-21        kinaba: 	WORD wFormatTag;
4e2933c620 2015-04-21        kinaba: 	WORD nChannels;
4e2933c620 2015-04-21        kinaba: 	DWORD nSamplesPerSec;
4e2933c620 2015-04-21        kinaba: 	DWORD nAvgBytesPerSec;
4e2933c620 2015-04-21        kinaba: 	WORD nBlockAlign;
4e2933c620 2015-04-21        kinaba: 	WORD wBitsPerSample;
4e2933c620 2015-04-21        kinaba: 	WORD cbSize;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias WAVEFORMATEX* PWAVEFORMATEX, LPWAVEFORMATEX;
9b639cf2d6 2015-05-05        kinaba: alias const(WAVEFORMATEX)* LPCWAVEFORMATEX;
4e2933c620 2015-04-21        kinaba: 
9b639cf2d6 2015-05-05        kinaba: alias TypeDef!(HANDLE) HMIDI;
9b639cf2d6 2015-05-05        kinaba: alias TypeDef!(HANDLE) HMIDIIN;
9b639cf2d6 2015-05-05        kinaba: alias TypeDef!(HANDLE) HMIDIOUT;
9b639cf2d6 2015-05-05        kinaba: alias TypeDef!(HANDLE) HMIDISTRM;
4e2933c620 2015-04-21        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias HMIDI* LPHMIDI;
c2b7a98c21 2011-02-23        kinaba: alias HMIDIIN* LPHMIDIIN;
c2b7a98c21 2011-02-23        kinaba: alias HMIDIOUT* LPHMIDIOUT;
c2b7a98c21 2011-02-23        kinaba: alias HMIDISTRM* LPHMIDISTRM;
4e2933c620 2015-04-21        kinaba: 
9b639cf2d6 2015-05-05        kinaba: alias WORD[MIDIPATCHSIZE] PATCHARRAY;
c2b7a98c21 2011-02-23        kinaba: alias WORD* LPPATCHARRAY;
9b639cf2d6 2015-05-05        kinaba: alias WORD[MIDIPATCHSIZE] KEYARRAY;
c2b7a98c21 2011-02-23        kinaba: alias WORD* LPKEYARRAY;
c2b7a98c21 2011-02-23        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MIDIOUTCAPSA {
4e2933c620 2015-04-21        kinaba: 	WORD wMid;
4e2933c620 2015-04-21        kinaba: 	WORD wPid;
4e2933c620 2015-04-21        kinaba: 	MMVERSION vDriverVersion;
9b639cf2d6 2015-05-05        kinaba: 	CHAR[MAXPNAMELEN] szPname;
4e2933c620 2015-04-21        kinaba: 	WORD wTechnology;
4e2933c620 2015-04-21        kinaba: 	WORD wVoices;
4e2933c620 2015-04-21        kinaba: 	WORD wNotes;
4e2933c620 2015-04-21        kinaba: 	WORD wChannelMask;
4e2933c620 2015-04-21        kinaba: 	DWORD dwSupport;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MIDIOUTCAPSA* PMIDIOUTCAPSA, LPMIDIOUTCAPSA;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MIDIOUTCAPSW {
4e2933c620 2015-04-21        kinaba: 	WORD wMid;
4e2933c620 2015-04-21        kinaba: 	WORD wPid;
4e2933c620 2015-04-21        kinaba: 	MMVERSION vDriverVersion;
9b639cf2d6 2015-05-05        kinaba: 	WCHAR[MAXPNAMELEN] szPname;
4e2933c620 2015-04-21        kinaba: 	WORD wTechnology;
4e2933c620 2015-04-21        kinaba: 	WORD wVoices;
4e2933c620 2015-04-21        kinaba: 	WORD wNotes;
4e2933c620 2015-04-21        kinaba: 	WORD wChannelMask;
4e2933c620 2015-04-21        kinaba: 	DWORD dwSupport;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MIDIOUTCAPSW* PMIDIOUTCAPSW, LPMIDIOUTCAPSW;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MIDIINCAPSA {
4e2933c620 2015-04-21        kinaba: 	WORD wMid;
4e2933c620 2015-04-21        kinaba: 	WORD wPid;
4e2933c620 2015-04-21        kinaba: 	MMVERSION vDriverVersion;
9b639cf2d6 2015-05-05        kinaba: 	CHAR[MAXPNAMELEN] szPname;
4e2933c620 2015-04-21        kinaba: 	DWORD dwSupport;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MIDIINCAPSA* PMIDIINCAPSA, LPMIDIINCAPSA;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MIDIINCAPSW {
4e2933c620 2015-04-21        kinaba: 	WORD wMid;
4e2933c620 2015-04-21        kinaba: 	WORD wPid;
4e2933c620 2015-04-21        kinaba: 	MMVERSION vDriverVersion;
9b639cf2d6 2015-05-05        kinaba: 	WCHAR[MAXPNAMELEN] szPname;
4e2933c620 2015-04-21        kinaba: 	DWORD dwSupport;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MIDIINCAPSW* PMIDIINCAPSW, LPMIDIINCAPSW;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MIDIHDR {
4e2933c620 2015-04-21        kinaba: 	LPSTR lpData;
4e2933c620 2015-04-21        kinaba: 	DWORD dwBufferLength;
4e2933c620 2015-04-21        kinaba: 	DWORD dwBytesRecorded;
4e2933c620 2015-04-21        kinaba: 	DWORD dwUser;
4e2933c620 2015-04-21        kinaba: 	DWORD dwFlags;
4e2933c620 2015-04-21        kinaba: 	MIDIHDR *lpNext;
4e2933c620 2015-04-21        kinaba: 	DWORD reserved;
4e2933c620 2015-04-21        kinaba: 	DWORD dwOffset;
9b639cf2d6 2015-05-05        kinaba: 	DWORD[8] dwReserved;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MIDIHDR* PMIDIHDR, LPMIDIHDR;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MIDIEVENT {
4e2933c620 2015-04-21        kinaba: 	DWORD dwDeltaTime;
4e2933c620 2015-04-21        kinaba: 	DWORD dwStreamID;
4e2933c620 2015-04-21        kinaba: 	DWORD dwEvent;
9b639cf2d6 2015-05-05        kinaba: 	DWORD[1] dwParms;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MIDISTRMBUFFVER {
4e2933c620 2015-04-21        kinaba: 	DWORD dwVersion;
4e2933c620 2015-04-21        kinaba: 	DWORD dwMid;
4e2933c620 2015-04-21        kinaba: 	DWORD dwOEMVersion;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MIDIPROPTIMEDIV {
4e2933c620 2015-04-21        kinaba: 	DWORD cbStruct;
4e2933c620 2015-04-21        kinaba: 	DWORD dwTimeDiv;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MIDIPROPTIMEDIV* LPMIDIPROPTIMEDIV;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MIDIPROPTEMPO {
4e2933c620 2015-04-21        kinaba: 	DWORD cbStruct;
4e2933c620 2015-04-21        kinaba: 	DWORD dwTempo;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MIDIPROPTEMPO* LPMIDIPROPTEMPO;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct AUXCAPSA {
4e2933c620 2015-04-21        kinaba: 	WORD wMid;
4e2933c620 2015-04-21        kinaba: 	WORD wPid;
4e2933c620 2015-04-21        kinaba: 	MMVERSION vDriverVersion;
9b639cf2d6 2015-05-05        kinaba: 	CHAR[MAXPNAMELEN] szPname;
4e2933c620 2015-04-21        kinaba: 	WORD wTechnology;
4e2933c620 2015-04-21        kinaba: 	WORD wReserved1;
4e2933c620 2015-04-21        kinaba: 	DWORD dwSupport;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias AUXCAPSA* PAUXCAPSA, LPAUXCAPSA;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct AUXCAPSW {
4e2933c620 2015-04-21        kinaba: 	WORD wMid;
4e2933c620 2015-04-21        kinaba: 	WORD wPid;
4e2933c620 2015-04-21        kinaba: 	MMVERSION vDriverVersion;
9b639cf2d6 2015-05-05        kinaba: 	WCHAR[MAXPNAMELEN] szPname;
4e2933c620 2015-04-21        kinaba: 	WORD wTechnology;
4e2933c620 2015-04-21        kinaba: 	WORD wReserved1;
4e2933c620 2015-04-21        kinaba: 	DWORD dwSupport;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias AUXCAPSW* PAUXCAPSW, LPAUXCAPSW;
4e2933c620 2015-04-21        kinaba: 
9b639cf2d6 2015-05-05        kinaba: alias TypeDef!(HANDLE) HMIXEROBJ;
4e2933c620 2015-04-21        kinaba: alias HMIXEROBJ* LPHMIXEROBJ;
4e2933c620 2015-04-21        kinaba: 
9b639cf2d6 2015-05-05        kinaba: alias TypeDef!(HANDLE) HMIXER;
4e2933c620 2015-04-21        kinaba: alias HMIXER* LPHMIXER;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MIXERCAPSA {
4e2933c620 2015-04-21        kinaba: 	WORD wMid;
4e2933c620 2015-04-21        kinaba: 	WORD wPid;
4e2933c620 2015-04-21        kinaba: 	MMVERSION vDriverVersion;
9b639cf2d6 2015-05-05        kinaba: 	CHAR[MAXPNAMELEN] szPname;
4e2933c620 2015-04-21        kinaba: 	DWORD fdwSupport;
4e2933c620 2015-04-21        kinaba: 	DWORD cDestinations;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MIXERCAPSA* PMIXERCAPSA, LPMIXERCAPSA;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MIXERCAPSW {
4e2933c620 2015-04-21        kinaba: 	WORD wMid;
4e2933c620 2015-04-21        kinaba: 	WORD wPid;
4e2933c620 2015-04-21        kinaba: 	MMVERSION vDriverVersion;
9b639cf2d6 2015-05-05        kinaba: 	WCHAR[MAXPNAMELEN] szPname;
4e2933c620 2015-04-21        kinaba: 	DWORD fdwSupport;
4e2933c620 2015-04-21        kinaba: 	DWORD cDestinations;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MIXERCAPSW* PMIXERCAPSW, LPMIXERCAPSW;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MIXERLINEA {
4e2933c620 2015-04-21        kinaba: 	DWORD cbStruct;
4e2933c620 2015-04-21        kinaba: 	DWORD dwDestination;
4e2933c620 2015-04-21        kinaba: 	DWORD dwSource;
4e2933c620 2015-04-21        kinaba: 	DWORD dwLineID;
4e2933c620 2015-04-21        kinaba: 	DWORD fdwLine;
4e2933c620 2015-04-21        kinaba: 	DWORD dwUser;
4e2933c620 2015-04-21        kinaba: 	DWORD dwComponentType;
4e2933c620 2015-04-21        kinaba: 	DWORD cChannels;
4e2933c620 2015-04-21        kinaba: 	DWORD cConnections;
4e2933c620 2015-04-21        kinaba: 	DWORD cControls;
9b639cf2d6 2015-05-05        kinaba: 	CHAR[MIXER_SHORT_NAME_CHARS] szShortName;
9b639cf2d6 2015-05-05        kinaba: 	CHAR[MIXER_LONG_NAME_CHARS] szName;
4e2933c620 2015-04-21        kinaba: 	struct Target {
4e2933c620 2015-04-21        kinaba: 		DWORD dwType;
4e2933c620 2015-04-21        kinaba: 		DWORD dwDeviceID;
4e2933c620 2015-04-21        kinaba: 		WORD wMid;
4e2933c620 2015-04-21        kinaba: 		WORD wPid;
4e2933c620 2015-04-21        kinaba: 		MMVERSION vDriverVersion;
9b639cf2d6 2015-05-05        kinaba: 		CHAR[MAXPNAMELEN] szPname;
4e2933c620 2015-04-21        kinaba: 	}
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MIXERLINEA* PMIXERLINEA, LPMIXERLINEA;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MIXERLINEW {
4e2933c620 2015-04-21        kinaba: 	DWORD cbStruct;
4e2933c620 2015-04-21        kinaba: 	DWORD dwDestination;
4e2933c620 2015-04-21        kinaba: 	DWORD dwSource;
4e2933c620 2015-04-21        kinaba: 	DWORD dwLineID;
4e2933c620 2015-04-21        kinaba: 	DWORD fdwLine;
4e2933c620 2015-04-21        kinaba: 	DWORD dwUser;
4e2933c620 2015-04-21        kinaba: 	DWORD dwComponentType;
4e2933c620 2015-04-21        kinaba: 	DWORD cChannels;
4e2933c620 2015-04-21        kinaba: 	DWORD cConnections;
4e2933c620 2015-04-21        kinaba: 	DWORD cControls;
9b639cf2d6 2015-05-05        kinaba: 	WCHAR[MIXER_SHORT_NAME_CHARS] szShortName;
9b639cf2d6 2015-05-05        kinaba: 	WCHAR[MIXER_LONG_NAME_CHARS] szName;
4e2933c620 2015-04-21        kinaba: 	struct Target {
4e2933c620 2015-04-21        kinaba: 		DWORD dwType;
4e2933c620 2015-04-21        kinaba: 		DWORD dwDeviceID;
4e2933c620 2015-04-21        kinaba: 		WORD wMid;
4e2933c620 2015-04-21        kinaba: 		WORD wPid;
4e2933c620 2015-04-21        kinaba: 		MMVERSION vDriverVersion;
9b639cf2d6 2015-05-05        kinaba: 		WCHAR[MAXPNAMELEN] szPname;
4e2933c620 2015-04-21        kinaba: 	}
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MIXERLINEW* PMIXERLINEW, LPMIXERLINEW;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MIXERCONTROLA {
4e2933c620 2015-04-21        kinaba: 	DWORD cbStruct;
4e2933c620 2015-04-21        kinaba: 	DWORD dwControlID;
4e2933c620 2015-04-21        kinaba: 	DWORD dwControlType;
4e2933c620 2015-04-21        kinaba: 	DWORD fdwControl;
4e2933c620 2015-04-21        kinaba: 	DWORD cMultipleItems;
9b639cf2d6 2015-05-05        kinaba: 	CHAR[MIXER_SHORT_NAME_CHARS] szShortName;
9b639cf2d6 2015-05-05        kinaba: 	CHAR[MIXER_LONG_NAME_CHARS] szName;
4e2933c620 2015-04-21        kinaba: 	union _Bounds {
4e2933c620 2015-04-21        kinaba: 		struct {
4e2933c620 2015-04-21        kinaba: 			LONG lMinimum;
4e2933c620 2015-04-21        kinaba: 			LONG lMaximum;
4e2933c620 2015-04-21        kinaba: 		}
4e2933c620 2015-04-21        kinaba: 		struct {
4e2933c620 2015-04-21        kinaba: 			DWORD dwMinimum;
4e2933c620 2015-04-21        kinaba: 			DWORD dwMaximum;
4e2933c620 2015-04-21        kinaba: 		}
9b639cf2d6 2015-05-05        kinaba: 		DWORD[6] dwReserved;
4e2933c620 2015-04-21        kinaba: 	}
4e2933c620 2015-04-21        kinaba: 	_Bounds Bounds;
4e2933c620 2015-04-21        kinaba: 	union _Metrics {
4e2933c620 2015-04-21        kinaba: 		DWORD cSteps;
4e2933c620 2015-04-21        kinaba: 		DWORD cbCustomData;
9b639cf2d6 2015-05-05        kinaba: 		DWORD[6] dwReserved;
4e2933c620 2015-04-21        kinaba: 	}
4e2933c620 2015-04-21        kinaba: 	_Metrics Metrics;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MIXERCONTROLA* PMIXERCONTROLA, LPMIXERCONTROLA;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MIXERCONTROLW {
4e2933c620 2015-04-21        kinaba: 	DWORD cbStruct;
4e2933c620 2015-04-21        kinaba: 	DWORD dwControlID;
4e2933c620 2015-04-21        kinaba: 	DWORD dwControlType;
4e2933c620 2015-04-21        kinaba: 	DWORD fdwControl;
4e2933c620 2015-04-21        kinaba: 	DWORD cMultipleItems;
9b639cf2d6 2015-05-05        kinaba: 	WCHAR[MIXER_SHORT_NAME_CHARS] szShortName;
9b639cf2d6 2015-05-05        kinaba: 	WCHAR[MIXER_LONG_NAME_CHARS] szName;
4e2933c620 2015-04-21        kinaba: 	union _Bounds {
4e2933c620 2015-04-21        kinaba: 		struct {
4e2933c620 2015-04-21        kinaba: 			LONG lMinimum;
4e2933c620 2015-04-21        kinaba: 			LONG lMaximum;
4e2933c620 2015-04-21        kinaba: 		}
4e2933c620 2015-04-21        kinaba: 		struct {
4e2933c620 2015-04-21        kinaba: 			DWORD dwMinimum;
4e2933c620 2015-04-21        kinaba: 			DWORD dwMaximum;
4e2933c620 2015-04-21        kinaba: 		}
9b639cf2d6 2015-05-05        kinaba: 		DWORD[6] dwReserved;
4e2933c620 2015-04-21        kinaba: 	}
4e2933c620 2015-04-21        kinaba: 	_Bounds Bounds;
4e2933c620 2015-04-21        kinaba: 	union _Metrics {
4e2933c620 2015-04-21        kinaba: 		DWORD cSteps;
4e2933c620 2015-04-21        kinaba: 		DWORD cbCustomData;
9b639cf2d6 2015-05-05        kinaba: 		DWORD[6] dwReserved;
4e2933c620 2015-04-21        kinaba: 	}
4e2933c620 2015-04-21        kinaba: 	_Metrics Metrics;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: alias MIXERCONTROLW* PMIXERCONTROLW, LPMIXERCONTROLW;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MIXERLINECONTROLSA {
4e2933c620 2015-04-21        kinaba: 	DWORD cbStruct;
4e2933c620 2015-04-21        kinaba: 	DWORD dwLineID;
4e2933c620 2015-04-21        kinaba: 	union {
4e2933c620 2015-04-21        kinaba: 		DWORD dwControlID;
4e2933c620 2015-04-21        kinaba: 		DWORD dwControlType;
4e2933c620 2015-04-21        kinaba: 	}
4e2933c620 2015-04-21        kinaba: 	DWORD cControls;
4e2933c620 2015-04-21        kinaba: 	DWORD cbmxctrl;
4e2933c620 2015-04-21        kinaba: 	LPMIXERCONTROLA pamxctrl;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MIXERLINECONTROLSA* PMIXERLINECONTROLSA, LPMIXERLINECONTROLSA;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MIXERLINECONTROLSW {
4e2933c620 2015-04-21        kinaba: 	DWORD cbStruct;
4e2933c620 2015-04-21        kinaba: 	DWORD dwLineID;
4e2933c620 2015-04-21        kinaba: 	union {
4e2933c620 2015-04-21        kinaba: 		DWORD dwControlID;
4e2933c620 2015-04-21        kinaba: 		DWORD dwControlType;
4e2933c620 2015-04-21        kinaba: 	}
4e2933c620 2015-04-21        kinaba: 	DWORD cControls;
4e2933c620 2015-04-21        kinaba: 	DWORD cbmxctrl;
4e2933c620 2015-04-21        kinaba: 	LPMIXERCONTROLW pamxctrl;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MIXERLINECONTROLSW* PMIXERLINECONTROLSW, LPMIXERLINECONTROLSW;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MIXERCONTROLDETAILS {
4e2933c620 2015-04-21        kinaba: 	DWORD cbStruct;
4e2933c620 2015-04-21        kinaba: 	DWORD dwControlID;
4e2933c620 2015-04-21        kinaba: 	DWORD cChannels;
4e2933c620 2015-04-21        kinaba: 	union {
4e2933c620 2015-04-21        kinaba: 		HWND hwndOwner;
4e2933c620 2015-04-21        kinaba: 		DWORD cMultipleItems;
4e2933c620 2015-04-21        kinaba: 	}
4e2933c620 2015-04-21        kinaba: 	DWORD cbDetails;
4e2933c620 2015-04-21        kinaba: 	PVOID paDetails;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MIXERCONTROLDETAILS* PMIXERCONTROLDETAILS, LPMIXERCONTROLDETAILS;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MIXERCONTROLDETAILS_LISTTEXTA {
4e2933c620 2015-04-21        kinaba: 	DWORD dwParam1;
4e2933c620 2015-04-21        kinaba: 	DWORD dwParam2;
9b639cf2d6 2015-05-05        kinaba: 	CHAR[MIXER_LONG_NAME_CHARS] szName;
4e2933c620 2015-04-21        kinaba: }
9b639cf2d6 2015-05-05        kinaba: alias MIXERCONTROLDETAILS_LISTTEXTA* PMIXERCONTROLDETAILS_LISTTEXTA, LPMIXERCONTROLDETAILS_LISTTEXTA;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MIXERCONTROLDETAILS_LISTTEXTW {
4e2933c620 2015-04-21        kinaba: 	DWORD dwParam1;
4e2933c620 2015-04-21        kinaba: 	DWORD dwParam2;
9b639cf2d6 2015-05-05        kinaba: 	WCHAR[MIXER_LONG_NAME_CHARS] szName;
4e2933c620 2015-04-21        kinaba: }
9b639cf2d6 2015-05-05        kinaba: alias MIXERCONTROLDETAILS_LISTTEXTW* PMIXERCONTROLDETAILS_LISTTEXTW, LPMIXERCONTROLDETAILS_LISTTEXTW;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MIXERCONTROLDETAILS_BOOLEAN {
4e2933c620 2015-04-21        kinaba: 	LONG fValue;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MIXERCONTROLDETAILS_BOOLEAN* PMIXERCONTROLDETAILS_BOOLEAN, LPMIXERCONTROLDETAILS_BOOLEAN;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MIXERCONTROLDETAILS_SIGNED {
4e2933c620 2015-04-21        kinaba: 	LONG lValue;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MIXERCONTROLDETAILS_SIGNED* PMIXERCONTROLDETAILS_SIGNED, LPMIXERCONTROLDETAILS_SIGNED;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MIXERCONTROLDETAILS_UNSIGNED {
4e2933c620 2015-04-21        kinaba: 	DWORD dwValue;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MIXERCONTROLDETAILS_UNSIGNED* PMIXERCONTROLDETAILS_UNSIGNED, LPMIXERCONTROLDETAILS_UNSIGNED;
4e2933c620 2015-04-21        kinaba: 
9b639cf2d6 2015-05-05        kinaba: alias void function (UINT, UINT, DWORD, DWORD, DWORD) LPTIMECALLBACK;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct TIMECAPS {
4e2933c620 2015-04-21        kinaba: 	UINT wPeriodMin;
4e2933c620 2015-04-21        kinaba: 	UINT wPeriodMax;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias TIMECAPS* PTIMECAPS, LPTIMECAPS;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct JOYCAPSA {
4e2933c620 2015-04-21        kinaba: 	WORD wMid;
4e2933c620 2015-04-21        kinaba: 	WORD wPid;
9b639cf2d6 2015-05-05        kinaba: 	CHAR[MAXPNAMELEN] szPname;
9b639cf2d6 2015-05-05        kinaba: 	UINT wXmin;
9b639cf2d6 2015-05-05        kinaba: 	UINT wXmax;
9b639cf2d6 2015-05-05        kinaba: 	UINT wYmin;
9b639cf2d6 2015-05-05        kinaba: 	UINT wYmax;
9b639cf2d6 2015-05-05        kinaba: 	UINT wZmin;
9b639cf2d6 2015-05-05        kinaba: 	UINT wZmax;
9b639cf2d6 2015-05-05        kinaba: 	UINT wNumButtons;
9b639cf2d6 2015-05-05        kinaba: 	UINT wPeriodMin;
9b639cf2d6 2015-05-05        kinaba: 	UINT wPeriodMax;
9b639cf2d6 2015-05-05        kinaba: 	UINT wRmin;
9b639cf2d6 2015-05-05        kinaba: 	UINT wRmax;
9b639cf2d6 2015-05-05        kinaba: 	UINT wUmin;
9b639cf2d6 2015-05-05        kinaba: 	UINT wUmax;
9b639cf2d6 2015-05-05        kinaba: 	UINT wVmin;
9b639cf2d6 2015-05-05        kinaba: 	UINT wVmax;
9b639cf2d6 2015-05-05        kinaba: 	UINT wCaps;
9b639cf2d6 2015-05-05        kinaba: 	UINT wMaxAxes;
9b639cf2d6 2015-05-05        kinaba: 	UINT wNumAxes;
9b639cf2d6 2015-05-05        kinaba: 	UINT wMaxButtons;
9b639cf2d6 2015-05-05        kinaba: 	CHAR[MAXPNAMELEN] szRegKey;
9b639cf2d6 2015-05-05        kinaba: 	CHAR[MAX_JOYSTICKOEMVXDNAME] szOEMVxD;
9b639cf2d6 2015-05-05        kinaba: }
9b639cf2d6 2015-05-05        kinaba: alias JOYCAPSA* PJOYCAPSA, LPJOYCAPSA;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: struct JOYCAPSW {
9b639cf2d6 2015-05-05        kinaba: 	WORD wMid;
9b639cf2d6 2015-05-05        kinaba: 	WORD wPid;
9b639cf2d6 2015-05-05        kinaba: 	WCHAR[MAXPNAMELEN] szPname;
4e2933c620 2015-04-21        kinaba: 	UINT wXmin;
4e2933c620 2015-04-21        kinaba: 	UINT wXmax;
4e2933c620 2015-04-21        kinaba: 	UINT wYmin;
4e2933c620 2015-04-21        kinaba: 	UINT wYmax;
4e2933c620 2015-04-21        kinaba: 	UINT wZmin;
4e2933c620 2015-04-21        kinaba: 	UINT wZmax;
4e2933c620 2015-04-21        kinaba: 	UINT wNumButtons;
4e2933c620 2015-04-21        kinaba: 	UINT wPeriodMin;
4e2933c620 2015-04-21        kinaba: 	UINT wPeriodMax;
4e2933c620 2015-04-21        kinaba: 	UINT wRmin;
4e2933c620 2015-04-21        kinaba: 	UINT wRmax;
4e2933c620 2015-04-21        kinaba: 	UINT wUmin;
4e2933c620 2015-04-21        kinaba: 	UINT wUmax;
4e2933c620 2015-04-21        kinaba: 	UINT wVmin;
4e2933c620 2015-04-21        kinaba: 	UINT wVmax;
4e2933c620 2015-04-21        kinaba: 	UINT wCaps;
4e2933c620 2015-04-21        kinaba: 	UINT wMaxAxes;
4e2933c620 2015-04-21        kinaba: 	UINT wNumAxes;
4e2933c620 2015-04-21        kinaba: 	UINT wMaxButtons;
9b639cf2d6 2015-05-05        kinaba: 	WCHAR[MAXPNAMELEN] szRegKey;
9b639cf2d6 2015-05-05        kinaba: 	WCHAR[MAX_JOYSTICKOEMVXDNAME] szOEMVxD;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias JOYCAPSW* PJOYCAPSW, LPJOYCAPSW;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct JOYINFO {
4e2933c620 2015-04-21        kinaba: 	UINT wXpos;
4e2933c620 2015-04-21        kinaba: 	UINT wYpos;
4e2933c620 2015-04-21        kinaba: 	UINT wZpos;
4e2933c620 2015-04-21        kinaba: 	UINT wButtons;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias JOYINFO* PJOYINFO, LPJOYINFO;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct JOYINFOEX {
4e2933c620 2015-04-21        kinaba: 	DWORD dwSize;
4e2933c620 2015-04-21        kinaba: 	DWORD dwFlags;
4e2933c620 2015-04-21        kinaba: 	DWORD dwXpos;
4e2933c620 2015-04-21        kinaba: 	DWORD dwYpos;
4e2933c620 2015-04-21        kinaba: 	DWORD dwZpos;
4e2933c620 2015-04-21        kinaba: 	DWORD dwRpos;
4e2933c620 2015-04-21        kinaba: 	DWORD dwUpos;
4e2933c620 2015-04-21        kinaba: 	DWORD dwVpos;
4e2933c620 2015-04-21        kinaba: 	DWORD dwButtons;
4e2933c620 2015-04-21        kinaba: 	DWORD dwButtonNumber;
4e2933c620 2015-04-21        kinaba: 	DWORD dwPOV;
4e2933c620 2015-04-21        kinaba: 	DWORD dwReserved1;
4e2933c620 2015-04-21        kinaba: 	DWORD dwReserved2;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias JOYINFOEX* PJOYINFOEX, LPJOYINFOEX;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: alias DWORD FOURCC;
4e2933c620 2015-04-21        kinaba: alias char* HPSTR;
4e2933c620 2015-04-21        kinaba: 
9b639cf2d6 2015-05-05        kinaba: alias TypeDef!(HANDLE) HMMIO;
4e2933c620 2015-04-21        kinaba: 
9b639cf2d6 2015-05-05        kinaba: alias LRESULT function (LPSTR, UINT, LPARAM, LPARAM) LPMMIOPROC;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MMIOINFO {
4e2933c620 2015-04-21        kinaba: 	DWORD dwFlags;
4e2933c620 2015-04-21        kinaba: 	FOURCC fccIOProc;
4e2933c620 2015-04-21        kinaba: 	LPMMIOPROC pIOProc;
4e2933c620 2015-04-21        kinaba: 	UINT wErrorRet;
4e2933c620 2015-04-21        kinaba: 	HTASK htask;
4e2933c620 2015-04-21        kinaba: 	LONG cchBuffer;
4e2933c620 2015-04-21        kinaba: 	HPSTR pchBuffer;
4e2933c620 2015-04-21        kinaba: 	HPSTR pchNext;
4e2933c620 2015-04-21        kinaba: 	HPSTR pchEndRead;
4e2933c620 2015-04-21        kinaba: 	HPSTR pchEndWrite;
4e2933c620 2015-04-21        kinaba: 	LONG lBufOffset;
4e2933c620 2015-04-21        kinaba: 	LONG lDiskOffset;
9b639cf2d6 2015-05-05        kinaba: 	DWORD[3] adwInfo;
4e2933c620 2015-04-21        kinaba: 	DWORD dwReserved1;
4e2933c620 2015-04-21        kinaba: 	DWORD dwReserved2;
4e2933c620 2015-04-21        kinaba: 	HMMIO hmmio;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MMIOINFO* PMMIOINFO, LPMMIOINFO;
9b639cf2d6 2015-05-05        kinaba: alias const(MMIOINFO)* LPCMMIOINFO;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MMCKINFO {
4e2933c620 2015-04-21        kinaba: 	FOURCC ckid;
4e2933c620 2015-04-21        kinaba: 	DWORD cksize;
4e2933c620 2015-04-21        kinaba: 	FOURCC fccType;
4e2933c620 2015-04-21        kinaba: 	DWORD dwDataOffset;
4e2933c620 2015-04-21        kinaba: 	DWORD dwFlags;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MMCKINFO* PMMCKINFO, LPMMCKINFO;
9b639cf2d6 2015-05-05        kinaba: alias const(MMCKINFO)* LPCMMCKINFO;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_GENERIC_PARMS {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_GENERIC_PARMS* PMCI_GENERIC_PARMS, LPMCI_GENERIC_PARMS;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_OPEN_PARMSA {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	MCIDEVICEID wDeviceID;
4e2933c620 2015-04-21        kinaba: 	LPCSTR lpstrDeviceType;
4e2933c620 2015-04-21        kinaba: 	LPCSTR lpstrElementName;
4e2933c620 2015-04-21        kinaba: 	LPCSTR lpstrAlias;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_OPEN_PARMSA* PMCI_OPEN_PARMSA, LPMCI_OPEN_PARMSA;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_OPEN_PARMSW {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	MCIDEVICEID wDeviceID;
4e2933c620 2015-04-21        kinaba: 	LPCWSTR lpstrDeviceType;
4e2933c620 2015-04-21        kinaba: 	LPCWSTR lpstrElementName;
4e2933c620 2015-04-21        kinaba: 	LPCWSTR lpstrAlias;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_OPEN_PARMSW* PMCI_OPEN_PARMSW, LPMCI_OPEN_PARMSW;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_PLAY_PARMS {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	DWORD dwFrom;
4e2933c620 2015-04-21        kinaba: 	DWORD dwTo;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_PLAY_PARMS* PMCI_PLAY_PARMS, LPMCI_PLAY_PARMS;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_SEEK_PARMS {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	DWORD dwTo;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_SEEK_PARMS* PMCI_SEEK_PARMS, LPMCI_SEEK_PARMS;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_STATUS_PARMS {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	DWORD dwReturn;
4e2933c620 2015-04-21        kinaba: 	DWORD dwItem;
4e2933c620 2015-04-21        kinaba: 	DWORD dwTrack;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_STATUS_PARMS* PMCI_STATUS_PARMS, LPMCI_STATUS_PARMS;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_INFO_PARMSA {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	LPSTR lpstrReturn;
4e2933c620 2015-04-21        kinaba: 	DWORD dwRetSize;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_INFO_PARMSA* LPMCI_INFO_PARMSA;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_INFO_PARMSW {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	LPWSTR lpstrReturn;
4e2933c620 2015-04-21        kinaba: 	DWORD dwRetSize;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_INFO_PARMSW* LPMCI_INFO_PARMSW;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_GETDEVCAPS_PARMS {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	DWORD dwReturn;
4e2933c620 2015-04-21        kinaba: 	DWORD dwItem;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_GETDEVCAPS_PARMS* PMCI_GETDEVCAPS_PARMS, LPMCI_GETDEVCAPS_PARMS;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_SYSINFO_PARMSA {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	LPSTR lpstrReturn;
4e2933c620 2015-04-21        kinaba: 	DWORD dwRetSize;
4e2933c620 2015-04-21        kinaba: 	DWORD dwNumber;
4e2933c620 2015-04-21        kinaba: 	UINT wDeviceType;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_SYSINFO_PARMSA* PMCI_SYSINFO_PARMSA, LPMCI_SYSINFO_PARMSA;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_SYSINFO_PARMSW {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	LPWSTR lpstrReturn;
4e2933c620 2015-04-21        kinaba: 	DWORD dwRetSize;
4e2933c620 2015-04-21        kinaba: 	DWORD dwNumber;
4e2933c620 2015-04-21        kinaba: 	UINT wDeviceType;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_SYSINFO_PARMSW* PMCI_SYSINFO_PARMSW, LPMCI_SYSINFO_PARMSW;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_SET_PARMS {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	DWORD dwTimeFormat;
4e2933c620 2015-04-21        kinaba: 	DWORD dwAudio;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_SET_PARMS* PMCI_SET_PARMS, LPMCI_SET_PARMS;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_BREAK_PARMS {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	int nVirtKey;
4e2933c620 2015-04-21        kinaba: 	HWND hwndBreak;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_BREAK_PARMS* PMCI_BREAK_PARMS, LPMCI_BREAK_PARMS;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_SAVE_PARMSA {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	LPCSTR lpfilename;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_SAVE_PARMSA* PMCI_SAVE_PARMSA, LPMCI_SAVE_PARMSA;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_SAVE_PARMSW {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	LPCWSTR lpfilename;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_SAVE_PARMSW* PMCI_SAVE_PARMSW, LPMCI_SAVE_PARMSW;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_LOAD_PARMSA {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	LPCSTR lpfilename;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_LOAD_PARMSA* PMCI_LOAD_PARMSA, LPMCI_LOAD_PARMSA;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_LOAD_PARMSW {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	LPCWSTR lpfilename;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_LOAD_PARMSW* PMCI_LOAD_PARMSW, LPMCI_LOAD_PARMSW;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_RECORD_PARMS {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	DWORD dwFrom;
4e2933c620 2015-04-21        kinaba: 	DWORD dwTo;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_RECORD_PARMS* LPMCI_RECORD_PARMS;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_VD_PLAY_PARMS {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	DWORD dwFrom;
4e2933c620 2015-04-21        kinaba: 	DWORD dwTo;
4e2933c620 2015-04-21        kinaba: 	DWORD dwSpeed;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_VD_PLAY_PARMS* PMCI_VD_PLAY_PARMS, LPMCI_VD_PLAY_PARMS;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_VD_STEP_PARMS {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	DWORD dwFrames;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_VD_STEP_PARMS* PMCI_VD_STEP_PARMS, LPMCI_VD_STEP_PARMS;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_VD_ESCAPE_PARMSA {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	LPCSTR lpstrCommand;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_VD_ESCAPE_PARMSA* PMCI_VD_ESCAPE_PARMSA, LPMCI_VD_ESCAPE_PARMSA;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_VD_ESCAPE_PARMSW {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	LPCWSTR lpstrCommand;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_VD_ESCAPE_PARMSW* PMCI_VD_ESCAPE_PARMSW, LPMCI_VD_ESCAPE_PARMSW;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_WAVE_OPEN_PARMSA {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	MCIDEVICEID wDeviceID;
4e2933c620 2015-04-21        kinaba: 	LPCSTR lpstrDeviceType;
4e2933c620 2015-04-21        kinaba: 	LPCSTR lpstrElementName;
4e2933c620 2015-04-21        kinaba: 	LPCSTR lpstrAlias;
4e2933c620 2015-04-21        kinaba: 	DWORD dwBufferSeconds;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_WAVE_OPEN_PARMSA* PMCI_WAVE_OPEN_PARMSA, LPMCI_WAVE_OPEN_PARMSA;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_WAVE_OPEN_PARMSW {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	MCIDEVICEID wDeviceID;
4e2933c620 2015-04-21        kinaba: 	LPCWSTR lpstrDeviceType;
4e2933c620 2015-04-21        kinaba: 	LPCWSTR lpstrElementName;
4e2933c620 2015-04-21        kinaba: 	LPCWSTR lpstrAlias;
4e2933c620 2015-04-21        kinaba: 	DWORD dwBufferSeconds;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_WAVE_OPEN_PARMSW* PMCI_WAVE_OPEN_PARMSW, LPMCI_WAVE_OPEN_PARMSW;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_WAVE_DELETE_PARMS {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	DWORD dwFrom;
4e2933c620 2015-04-21        kinaba: 	DWORD dwTo;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_WAVE_DELETE_PARMS* PMCI_WAVE_DELETE_PARMS, LPMCI_WAVE_DELETE_PARMS;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_WAVE_SET_PARMS {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	DWORD dwTimeFormat;
4e2933c620 2015-04-21        kinaba: 	DWORD dwAudio;
4e2933c620 2015-04-21        kinaba: 	UINT wInput;
4e2933c620 2015-04-21        kinaba: 	UINT wOutput;
4e2933c620 2015-04-21        kinaba: 	WORD wFormatTag;
4e2933c620 2015-04-21        kinaba: 	WORD wReserved2;
4e2933c620 2015-04-21        kinaba: 	WORD nChannels;
4e2933c620 2015-04-21        kinaba: 	WORD wReserved3;
4e2933c620 2015-04-21        kinaba: 	DWORD nSamplesPerSec;
4e2933c620 2015-04-21        kinaba: 	DWORD nAvgBytesPerSec;
4e2933c620 2015-04-21        kinaba: 	WORD nBlockAlign;
4e2933c620 2015-04-21        kinaba: 	WORD wReserved4;
4e2933c620 2015-04-21        kinaba: 	WORD wBitsPerSample;
4e2933c620 2015-04-21        kinaba: 	WORD wReserved5;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_WAVE_SET_PARMS* PMCI_WAVE_SET_PARMS, LPMCI_WAVE_SET_PARMS;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: extern (Windows):
9b639cf2d6 2015-05-05        kinaba: LRESULT CloseDriver(HDRVR, LONG, LONG);
9b639cf2d6 2015-05-05        kinaba: HDRVR OpenDriver(LPCWSTR, LPCWSTR, LONG);
9b639cf2d6 2015-05-05        kinaba: LRESULT SendDriverMessage(HDRVR, UINT, LONG, LONG);
4e2933c620 2015-04-21        kinaba: HMODULE DrvGetModuleHandle(HDRVR);
4e2933c620 2015-04-21        kinaba: HMODULE GetDriverModuleHandle(HDRVR);
9b639cf2d6 2015-05-05        kinaba: LRESULT DefDriverProc(DWORD, HDRVR, UINT, LPARAM, LPARAM);
4e2933c620 2015-04-21        kinaba: UINT mmsystemGetVersion();
4e2933c620 2015-04-21        kinaba: // FIXME: I believe this next line is a mistake
4e2933c620 2015-04-21        kinaba: //alias OutputDebugString OutputDebugStr;
9b639cf2d6 2015-05-05        kinaba: BOOL sndPlaySoundA(LPCSTR, UINT);
9b639cf2d6 2015-05-05        kinaba: BOOL sndPlaySoundW(LPCWSTR, UINT);
9b639cf2d6 2015-05-05        kinaba: BOOL PlaySoundA(LPCSTR, HMODULE, DWORD);
9b639cf2d6 2015-05-05        kinaba: BOOL PlaySoundW(LPCWSTR, HMODULE, DWORD);
4e2933c620 2015-04-21        kinaba: UINT waveOutGetNumDevs();
9b639cf2d6 2015-05-05        kinaba: MMRESULT waveOutGetDevCapsA(UINT, LPWAVEOUTCAPSA, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT waveOutGetDevCapsW(UINT, LPWAVEOUTCAPSW, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT waveOutGetVolume(HWAVEOUT, PDWORD);
9b639cf2d6 2015-05-05        kinaba: MMRESULT waveOutSetVolume(HWAVEOUT, DWORD);
9b639cf2d6 2015-05-05        kinaba: MMRESULT waveOutGetErrorTextA(MMRESULT, LPSTR, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT waveOutGetErrorTextW(MMRESULT, LPWSTR, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT waveOutOpen(LPHWAVEOUT, UINT, LPCWAVEFORMATEX, DWORD, DWORD, DWORD);
4e2933c620 2015-04-21        kinaba: MMRESULT waveOutClose(HWAVEOUT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT waveOutPrepareHeader(HWAVEOUT, LPWAVEHDR, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT waveOutUnprepareHeader(HWAVEOUT, LPWAVEHDR, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT waveOutWrite(HWAVEOUT, LPWAVEHDR, UINT);
4e2933c620 2015-04-21        kinaba: MMRESULT waveOutPause(HWAVEOUT);
4e2933c620 2015-04-21        kinaba: MMRESULT waveOutRestart(HWAVEOUT);
4e2933c620 2015-04-21        kinaba: MMRESULT waveOutReset(HWAVEOUT);
4e2933c620 2015-04-21        kinaba: MMRESULT waveOutBreakLoop(HWAVEOUT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT waveOutGetPosition(HWAVEOUT, LPMMTIME, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT waveOutGetPitch(HWAVEOUT, PDWORD);
9b639cf2d6 2015-05-05        kinaba: MMRESULT waveOutSetPitch(HWAVEOUT, DWORD);
9b639cf2d6 2015-05-05        kinaba: MMRESULT waveOutGetPlaybackRate(HWAVEOUT, PDWORD);
9b639cf2d6 2015-05-05        kinaba: MMRESULT waveOutSetPlaybackRate(HWAVEOUT, DWORD);
9b639cf2d6 2015-05-05        kinaba: MMRESULT waveOutGetID(HWAVEOUT, LPUINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT waveOutMessage(HWAVEOUT, UINT, DWORD, DWORD);
4e2933c620 2015-04-21        kinaba: UINT waveInGetNumDevs();
9b639cf2d6 2015-05-05        kinaba: MMRESULT waveInGetDevCapsA(UINT, LPWAVEINCAPSA, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT waveInGetDevCapsW(UINT, LPWAVEINCAPSW, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT waveInGetErrorTextA(MMRESULT, LPSTR, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT waveInGetErrorTextW(MMRESULT, LPWSTR, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT waveInOpen(LPHWAVEIN, UINT, LPCWAVEFORMATEX, DWORD, DWORD, DWORD);
4e2933c620 2015-04-21        kinaba: MMRESULT waveInClose(HWAVEIN);
9b639cf2d6 2015-05-05        kinaba: MMRESULT waveInPrepareHeader(HWAVEIN, LPWAVEHDR, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT waveInUnprepareHeader(HWAVEIN, LPWAVEHDR, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT waveInAddBuffer(HWAVEIN, LPWAVEHDR, UINT);
4e2933c620 2015-04-21        kinaba: MMRESULT waveInStart(HWAVEIN);
4e2933c620 2015-04-21        kinaba: MMRESULT waveInStop(HWAVEIN);
4e2933c620 2015-04-21        kinaba: MMRESULT waveInReset(HWAVEIN);
9b639cf2d6 2015-05-05        kinaba: MMRESULT waveInGetPosition(HWAVEIN, LPMMTIME, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT waveInGetID(HWAVEIN, LPUINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT waveInMessage(HWAVEIN, UINT, DWORD, DWORD);
4e2933c620 2015-04-21        kinaba: UINT midiOutGetNumDevs();
9b639cf2d6 2015-05-05        kinaba: MMRESULT midiStreamOpen(LPHMIDISTRM, LPUINT, DWORD, DWORD, DWORD, DWORD);
4e2933c620 2015-04-21        kinaba: MMRESULT midiStreamClose(HMIDISTRM);
9b639cf2d6 2015-05-05        kinaba: MMRESULT midiStreamProperty(HMIDISTRM, LPBYTE, DWORD);
9b639cf2d6 2015-05-05        kinaba: MMRESULT midiStreamPosition(HMIDISTRM, LPMMTIME, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT midiStreamOut(HMIDISTRM, LPMIDIHDR, UINT);
4e2933c620 2015-04-21        kinaba: MMRESULT midiStreamPause(HMIDISTRM);
4e2933c620 2015-04-21        kinaba: MMRESULT midiStreamRestart(HMIDISTRM);
4e2933c620 2015-04-21        kinaba: MMRESULT midiStreamStop(HMIDISTRM);
9b639cf2d6 2015-05-05        kinaba: MMRESULT midiConnect(HMIDI, HMIDIOUT, PVOID);
9b639cf2d6 2015-05-05        kinaba: MMRESULT midiDisconnect(HMIDI, HMIDIOUT, PVOID);
9b639cf2d6 2015-05-05        kinaba: MMRESULT midiOutGetDevCapsA(UINT, LPMIDIOUTCAPSA, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT midiOutGetDevCapsW(UINT, LPMIDIOUTCAPSW, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT midiOutGetVolume(HMIDIOUT, PDWORD);
9b639cf2d6 2015-05-05        kinaba: MMRESULT midiOutSetVolume(HMIDIOUT, DWORD);
9b639cf2d6 2015-05-05        kinaba: MMRESULT midiOutGetErrorTextA(MMRESULT, LPSTR, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT midiOutGetErrorTextW(MMRESULT, LPWSTR, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT midiOutOpen(LPHMIDIOUT, UINT, DWORD, DWORD, DWORD);
4e2933c620 2015-04-21        kinaba: MMRESULT midiOutClose(HMIDIOUT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT midiOutPrepareHeader(HMIDIOUT, LPMIDIHDR, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT midiOutUnprepareHeader(HMIDIOUT, LPMIDIHDR, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT midiOutShortMsg(HMIDIOUT, DWORD);
9b639cf2d6 2015-05-05        kinaba: MMRESULT midiOutLongMsg(HMIDIOUT, LPMIDIHDR, UINT);
4e2933c620 2015-04-21        kinaba: MMRESULT midiOutReset(HMIDIOUT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT midiOutCachePatches(HMIDIOUT, UINT, LPWORD, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT midiOutCacheDrumPatches(HMIDIOUT, UINT, LPWORD, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT midiOutGetID(HMIDIOUT, LPUINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT midiOutMessage(HMIDIOUT, UINT, DWORD, DWORD);
4e2933c620 2015-04-21        kinaba: UINT midiInGetNumDevs();
9b639cf2d6 2015-05-05        kinaba: MMRESULT midiInGetDevCapsA(UINT, LPMIDIINCAPSA, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT midiInGetDevCapsW(UINT, LPMIDIINCAPSW, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT midiInGetErrorTextA(MMRESULT, LPSTR, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT midiInGetErrorTextW(MMRESULT, LPWSTR, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT midiInOpen(LPHMIDIIN, UINT, DWORD, DWORD, DWORD);
4e2933c620 2015-04-21        kinaba: MMRESULT midiInClose(HMIDIIN);
9b639cf2d6 2015-05-05        kinaba: MMRESULT midiInPrepareHeader(HMIDIIN, LPMIDIHDR, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT midiInUnprepareHeader(HMIDIIN, LPMIDIHDR, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT midiInAddBuffer(HMIDIIN, LPMIDIHDR, UINT);
4e2933c620 2015-04-21        kinaba: MMRESULT midiInStart(HMIDIIN);
4e2933c620 2015-04-21        kinaba: MMRESULT midiInStop(HMIDIIN);
4e2933c620 2015-04-21        kinaba: MMRESULT midiInReset(HMIDIIN);
9b639cf2d6 2015-05-05        kinaba: MMRESULT midiInGetID(HMIDIIN, LPUINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT midiInMessage(HMIDIIN, UINT, DWORD, DWORD);
4e2933c620 2015-04-21        kinaba: UINT auxGetNumDevs();
9b639cf2d6 2015-05-05        kinaba: MMRESULT auxGetDevCapsA(UINT, LPAUXCAPSA, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT auxGetDevCapsW(UINT, LPAUXCAPSW, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT auxSetVolume(UINT, DWORD);
9b639cf2d6 2015-05-05        kinaba: MMRESULT auxGetVolume(UINT, PDWORD);
9b639cf2d6 2015-05-05        kinaba: MMRESULT auxOutMessage(UINT, UINT, DWORD, DWORD);
4e2933c620 2015-04-21        kinaba: UINT mixerGetNumDevs();
9b639cf2d6 2015-05-05        kinaba: MMRESULT mixerGetDevCapsA(UINT, LPMIXERCAPSA, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT mixerGetDevCapsW(UINT, LPMIXERCAPSW, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT mixerOpen(LPHMIXER, UINT, DWORD, DWORD, DWORD);
4e2933c620 2015-04-21        kinaba: MMRESULT mixerClose(HMIXER);
9b639cf2d6 2015-05-05        kinaba: DWORD mixerMessage(HMIXER, UINT, DWORD, DWORD);
9b639cf2d6 2015-05-05        kinaba: MMRESULT mixerGetLineInfoA(HMIXEROBJ, LPMIXERLINEA, DWORD);
9b639cf2d6 2015-05-05        kinaba: MMRESULT mixerGetLineInfoW(HMIXEROBJ, LPMIXERLINEW, DWORD);
9b639cf2d6 2015-05-05        kinaba: MMRESULT mixerGetID(HMIXEROBJ, PUINT, DWORD);
9b639cf2d6 2015-05-05        kinaba: MMRESULT mixerGetLineControlsA(HMIXEROBJ, LPMIXERLINECONTROLSA, DWORD);
9b639cf2d6 2015-05-05        kinaba: MMRESULT mixerGetLineControlsW(HMIXEROBJ, LPMIXERLINECONTROLSW, DWORD);
9b639cf2d6 2015-05-05        kinaba: MMRESULT mixerGetControlDetailsA(HMIXEROBJ, LPMIXERCONTROLDETAILS, DWORD);
9b639cf2d6 2015-05-05        kinaba: MMRESULT mixerGetControlDetailsW(HMIXEROBJ, LPMIXERCONTROLDETAILS, DWORD);
9b639cf2d6 2015-05-05        kinaba: MMRESULT mixerSetControlDetails(HMIXEROBJ, LPMIXERCONTROLDETAILS, DWORD);
9b639cf2d6 2015-05-05        kinaba: MMRESULT timeGetSystemTime(LPMMTIME, UINT);
4e2933c620 2015-04-21        kinaba: DWORD timeGetTime();
9b639cf2d6 2015-05-05        kinaba: MMRESULT timeSetEvent(UINT, UINT, LPTIMECALLBACK, DWORD, UINT);
4e2933c620 2015-04-21        kinaba: MMRESULT timeKillEvent(UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT timeGetDevCaps(LPTIMECAPS, UINT);
4e2933c620 2015-04-21        kinaba: MMRESULT timeBeginPeriod(UINT);
4e2933c620 2015-04-21        kinaba: MMRESULT timeEndPeriod(UINT);
4e2933c620 2015-04-21        kinaba: UINT joyGetNumDevs();
9b639cf2d6 2015-05-05        kinaba: MMRESULT joyGetDevCapsA(UINT, LPJOYCAPSA, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT joyGetDevCapsW(UINT, LPJOYCAPSW, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT joyGetPos(UINT, LPJOYINFO);
9b639cf2d6 2015-05-05        kinaba: MMRESULT joyGetPosEx(UINT, LPJOYINFOEX);
9b639cf2d6 2015-05-05        kinaba: MMRESULT joyGetThreshold(UINT, LPUINT);
4e2933c620 2015-04-21        kinaba: MMRESULT joyReleaseCapture(UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT joySetCapture(HWND, UINT, UINT, BOOL);
9b639cf2d6 2015-05-05        kinaba: MMRESULT joySetThreshold(UINT, UINT);
9b639cf2d6 2015-05-05        kinaba: FOURCC mmioStringToFOURCCA(LPCSTR, UINT);
9b639cf2d6 2015-05-05        kinaba: FOURCC mmioStringToFOURCCW(LPCWSTR, UINT);
9b639cf2d6 2015-05-05        kinaba: LPMMIOPROC mmioInstallIOProcA(FOURCC, LPMMIOPROC, DWORD);
9b639cf2d6 2015-05-05        kinaba: LPMMIOPROC mmioInstallIOProcW(FOURCC, LPMMIOPROC, DWORD);
9b639cf2d6 2015-05-05        kinaba: HMMIO mmioOpenA(LPSTR, LPMMIOINFO, DWORD);
9b639cf2d6 2015-05-05        kinaba: HMMIO mmioOpenW(LPWSTR, LPMMIOINFO, DWORD);
9b639cf2d6 2015-05-05        kinaba: MMRESULT mmioRenameA(LPCSTR, LPCSTR, LPCMMIOINFO, DWORD);
9b639cf2d6 2015-05-05        kinaba: MMRESULT mmioRenameW(LPCWSTR, LPCWSTR, LPCMMIOINFO, DWORD);
9b639cf2d6 2015-05-05        kinaba: MMRESULT mmioClose(HMMIO, UINT);
9b639cf2d6 2015-05-05        kinaba: LONG mmioRead(HMMIO, HPSTR, LONG);
9b639cf2d6 2015-05-05        kinaba: LONG mmioWrite(HMMIO, LPCSTR, LONG);
9b639cf2d6 2015-05-05        kinaba: LONG mmioSeek(HMMIO, LONG, int);
9b639cf2d6 2015-05-05        kinaba: MMRESULT mmioGetInfo(HMMIO, LPMMIOINFO, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT mmioSetInfo(HMMIO, LPCMMIOINFO, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT mmioSetBuffer(HMMIO, LPSTR, LONG, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT mmioFlush(HMMIO, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT mmioAdvance(HMMIO, LPMMIOINFO, UINT);
9b639cf2d6 2015-05-05        kinaba: LRESULT mmioSendMessage(HMMIO, UINT, LPARAM, LPARAM);
9b639cf2d6 2015-05-05        kinaba: MMRESULT mmioDescend(HMMIO, LPMMCKINFO, const(MMCKINFO)*, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT mmioAscend(HMMIO, LPMMCKINFO, UINT);
9b639cf2d6 2015-05-05        kinaba: MMRESULT mmioCreateChunk(HMMIO, LPMMCKINFO, UINT);
9b639cf2d6 2015-05-05        kinaba: MCIERROR mciSendCommandA(MCIDEVICEID, UINT, DWORD, DWORD);
9b639cf2d6 2015-05-05        kinaba: MCIERROR mciSendCommandW(MCIDEVICEID, UINT, DWORD, DWORD);
9b639cf2d6 2015-05-05        kinaba: MCIERROR mciSendStringA(LPCSTR, LPSTR, UINT, HWND);
9b639cf2d6 2015-05-05        kinaba: MCIERROR mciSendStringW(LPCWSTR, LPWSTR, UINT, HWND);
4e2933c620 2015-04-21        kinaba: MCIDEVICEID mciGetDeviceIDA(LPCSTR);
4e2933c620 2015-04-21        kinaba: MCIDEVICEID mciGetDeviceIDW(LPCWSTR);
9b639cf2d6 2015-05-05        kinaba: MCIDEVICEID mciGetDeviceIDFromElementIDA(DWORD, LPCSTR);
9b639cf2d6 2015-05-05        kinaba: MCIDEVICEID mciGetDeviceIDFromElementIDW(DWORD, LPCWSTR);
9b639cf2d6 2015-05-05        kinaba: BOOL mciGetErrorStringA(MCIERROR, LPSTR, UINT);
9b639cf2d6 2015-05-05        kinaba: BOOL mciGetErrorStringW(MCIERROR, LPWSTR, UINT);
9b639cf2d6 2015-05-05        kinaba: BOOL mciSetYieldProc(MCIDEVICEID, YIELDPROC, DWORD);
4e2933c620 2015-04-21        kinaba: HTASK mciGetCreatorTask(MCIDEVICEID);
9b639cf2d6 2015-05-05        kinaba: YIELDPROC mciGetYieldProc(MCIDEVICEID, PDWORD);
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_SEQ_SET_PARMS {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	DWORD dwTimeFormat;
4e2933c620 2015-04-21        kinaba: 	DWORD dwAudio;
4e2933c620 2015-04-21        kinaba: 	DWORD dwTempo;
4e2933c620 2015-04-21        kinaba: 	DWORD dwPort;
4e2933c620 2015-04-21        kinaba: 	DWORD dwSlave;
4e2933c620 2015-04-21        kinaba: 	DWORD dwMaster;
4e2933c620 2015-04-21        kinaba: 	DWORD dwOffset;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_SEQ_SET_PARMS* PMCI_SEQ_SET_PARMS, LPMCI_SEQ_SET_PARMS;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_ANIM_OPEN_PARMSA {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	MCIDEVICEID wDeviceID;
4e2933c620 2015-04-21        kinaba: 	LPCSTR lpstrDeviceType;
4e2933c620 2015-04-21        kinaba: 	LPCSTR lpstrElementName;
4e2933c620 2015-04-21        kinaba: 	LPCSTR lpstrAlias;
4e2933c620 2015-04-21        kinaba: 	DWORD dwStyle;
4e2933c620 2015-04-21        kinaba: 	HWND hWndParent;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_ANIM_OPEN_PARMSA* PMCI_ANIM_OPEN_PARMSA, LPMCI_ANIM_OPEN_PARMSA;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_ANIM_OPEN_PARMSW {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	MCIDEVICEID wDeviceID;
4e2933c620 2015-04-21        kinaba: 	LPCWSTR lpstrDeviceType;
4e2933c620 2015-04-21        kinaba: 	LPCWSTR lpstrElementName;
4e2933c620 2015-04-21        kinaba: 	LPCWSTR lpstrAlias;
4e2933c620 2015-04-21        kinaba: 	DWORD dwStyle;
4e2933c620 2015-04-21        kinaba: 	HWND hWndParent;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_ANIM_OPEN_PARMSW* PMCI_ANIM_OPEN_PARMSW, LPMCI_ANIM_OPEN_PARMSW;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_ANIM_PLAY_PARMS {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	DWORD dwFrom;
4e2933c620 2015-04-21        kinaba: 	DWORD dwTo;
4e2933c620 2015-04-21        kinaba: 	DWORD dwSpeed;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_ANIM_PLAY_PARMS* PMCI_ANIM_PLAY_PARMS, LPMCI_ANIM_PLAY_PARMS;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_ANIM_STEP_PARMS {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	DWORD dwFrames;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_ANIM_STEP_PARMS* PMCI_ANIM_STEP_PARMS, LPMCI_ANIM_STEP_PARMS;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_ANIM_WINDOW_PARMSA {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	HWND hWnd;
4e2933c620 2015-04-21        kinaba: 	UINT nCmdShow;
4e2933c620 2015-04-21        kinaba: 	LPCSTR lpstrText;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_ANIM_WINDOW_PARMSA* PMCI_ANIM_WINDOW_PARMSA, LPMCI_ANIM_WINDOW_PARMSA;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_ANIM_WINDOW_PARMSW {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	HWND hWnd;
4e2933c620 2015-04-21        kinaba: 	UINT nCmdShow;
4e2933c620 2015-04-21        kinaba: 	LPCWSTR lpstrText;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_ANIM_WINDOW_PARMSW* PMCI_ANIM_WINDOW_PARMSW, LPMCI_ANIM_WINDOW_PARMSW;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_ANIM_RECT_PARMS {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	//#ifdef MCI_USE_OFFEXT
4e2933c620 2015-04-21        kinaba: 	//	POINT ptOffset;
4e2933c620 2015-04-21        kinaba: 	//	POINT ptExtent;
4e2933c620 2015-04-21        kinaba: 	//#else
4e2933c620 2015-04-21        kinaba: 	RECT rc;
4e2933c620 2015-04-21        kinaba: 	//#endif
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_ANIM_RECT_PARMS* PMCI_ANIM_RECT_PARMS, LPMCI_ANIM_RECT_PARMS;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_ANIM_UPDATE_PARMS {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	RECT rc;
4e2933c620 2015-04-21        kinaba: 	HDC hDC;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_ANIM_UPDATE_PARMS* PMCI_ANIM_UPDATE_PARMS, LPMCI_ANIM_UPDATE_PARMS;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_OVLY_OPEN_PARMSA {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	MCIDEVICEID wDeviceID;
4e2933c620 2015-04-21        kinaba: 	LPCSTR lpstrDeviceType;
4e2933c620 2015-04-21        kinaba: 	LPCSTR lpstrElementName;
4e2933c620 2015-04-21        kinaba: 	LPCSTR lpstrAlias;
4e2933c620 2015-04-21        kinaba: 	DWORD dwStyle;
4e2933c620 2015-04-21        kinaba: 	HWND hWndParent;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_OVLY_OPEN_PARMSA* PMCI_OVLY_OPEN_PARMSA, LPMCI_OVLY_OPEN_PARMSA;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_OVLY_OPEN_PARMSW {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	MCIDEVICEID wDeviceID;
4e2933c620 2015-04-21        kinaba: 	LPCWSTR lpstrDeviceType;
4e2933c620 2015-04-21        kinaba: 	LPCWSTR lpstrElementName;
4e2933c620 2015-04-21        kinaba: 	LPCWSTR lpstrAlias;
4e2933c620 2015-04-21        kinaba: 	DWORD dwStyle;
4e2933c620 2015-04-21        kinaba: 	HWND hWndParent;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_OVLY_OPEN_PARMSW* PMCI_OVLY_OPEN_PARMSW, LPMCI_OVLY_OPEN_PARMSW;
c2b7a98c21 2011-02-23        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_OVLY_WINDOW_PARMSA {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	HWND hWnd;
4e2933c620 2015-04-21        kinaba: 	UINT nCmdShow;
4e2933c620 2015-04-21        kinaba: 	LPCSTR lpstrText;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_OVLY_WINDOW_PARMSA* PMCI_OVLY_WINDOW_PARMSA, LPMCI_OVLY_WINDOW_PARMSA;
c2b7a98c21 2011-02-23        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_OVLY_WINDOW_PARMSW {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	HWND hWnd;
4e2933c620 2015-04-21        kinaba: 	UINT nCmdShow;
4e2933c620 2015-04-21        kinaba: 	LPCWSTR lpstrText;
c2b7a98c21 2011-02-23        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_OVLY_WINDOW_PARMSW* PMCI_OVLY_WINDOW_PARMSW, LPMCI_OVLY_WINDOW_PARMSW;
c2b7a98c21 2011-02-23        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_OVLY_RECT_PARMS {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	//#ifdef MCI_USE_OFFEXT
4e2933c620 2015-04-21        kinaba: 	//	POINT ptOffset;
4e2933c620 2015-04-21        kinaba: 	//	POINT ptExtent;
4e2933c620 2015-04-21        kinaba: 	//#else
4e2933c620 2015-04-21        kinaba: 	RECT rc;
4e2933c620 2015-04-21        kinaba: 	//#endif
c2b7a98c21 2011-02-23        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_OVLY_RECT_PARMS* PMCI_OVLY_RECT_PARMS, LPMCI_OVLY_RECT_PARMS;
c2b7a98c21 2011-02-23        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_OVLY_SAVE_PARMSA {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	LPCSTR lpfilename;
4e2933c620 2015-04-21        kinaba: 	RECT rc;
c2b7a98c21 2011-02-23        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_OVLY_SAVE_PARMSA* PMCI_OVLY_SAVE_PARMSA, LPMCI_OVLY_SAVE_PARMSA;
c2b7a98c21 2011-02-23        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_OVLY_SAVE_PARMSW {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	LPCWSTR lpfilename;
4e2933c620 2015-04-21        kinaba: 	RECT rc;
c2b7a98c21 2011-02-23        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_OVLY_SAVE_PARMSW* PMCI_OVLY_SAVE_PARMSW, LPMCI_OVLY_SAVE_PARMSW;
c2b7a98c21 2011-02-23        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_OVLY_LOAD_PARMSA {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	LPCSTR lpfilename;
4e2933c620 2015-04-21        kinaba: 	RECT rc;
c2b7a98c21 2011-02-23        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_OVLY_LOAD_PARMSA* PMCI_OVLY_LOAD_PARMSA, LPMCI_OVLY_LOAD_PARMSA;
c2b7a98c21 2011-02-23        kinaba: 
4e2933c620 2015-04-21        kinaba: struct MCI_OVLY_LOAD_PARMSW {
4e2933c620 2015-04-21        kinaba: 	DWORD dwCallback;
4e2933c620 2015-04-21        kinaba: 	LPCWSTR lpfilename;
4e2933c620 2015-04-21        kinaba: 	RECT rc;
c2b7a98c21 2011-02-23        kinaba: }
4e2933c620 2015-04-21        kinaba: alias MCI_OVLY_LOAD_PARMSW* PMCI_OVLY_LOAD_PARMSW, LPMCI_OVLY_LOAD_PARMSW;
c2b7a98c21 2011-02-23        kinaba: 
4e2933c620 2015-04-21        kinaba: version(Unicode) {
4e2933c620 2015-04-21        kinaba: 	alias WAVEOUTCAPSW WAVEOUTCAPS;
4e2933c620 2015-04-21        kinaba: 	alias WAVEINCAPSW WAVEINCAPS;
4e2933c620 2015-04-21        kinaba: 	alias MIDIOUTCAPSW MIDIOUTCAPS;
4e2933c620 2015-04-21        kinaba: 	alias MIDIINCAPSW MIDIINCAPS;
4e2933c620 2015-04-21        kinaba: 	alias AUXCAPSW AUXCAPS;
4e2933c620 2015-04-21        kinaba: 	alias MIXERCAPSW MIXERCAPS;
4e2933c620 2015-04-21        kinaba: 	alias MIXERLINEW MIXERLINE;
4e2933c620 2015-04-21        kinaba: 	alias MIXERCONTROLA MIXERCONTROL;
4e2933c620 2015-04-21        kinaba: 	alias MIXERLINECONTROLSW MIXERLINECONTROLS;
4e2933c620 2015-04-21        kinaba: 	alias MIXERCONTROLDETAILS_LISTTEXTW MIXERCONTROLDETAILS_LISTTEXT;
4e2933c620 2015-04-21        kinaba: 	alias JOYCAPSW JOYCAPS;
4e2933c620 2015-04-21        kinaba: 	alias MCI_OPEN_PARMSW MCI_OPEN_PARMS;
4e2933c620 2015-04-21        kinaba: 	alias MCI_INFO_PARMSW MCI_INFO_PARMS;
4e2933c620 2015-04-21        kinaba: 	alias MCI_SYSINFO_PARMSW MCI_SYSINFO_PARMS;
4e2933c620 2015-04-21        kinaba: 	alias MCI_SAVE_PARMSW MCI_SAVE_PARMS;
4e2933c620 2015-04-21        kinaba: 	alias MCI_LOAD_PARMSW MCI_LOAD_PARMS;
4e2933c620 2015-04-21        kinaba: 	alias MCI_VD_ESCAPE_PARMSW MCI_VD_ESCAPE_PARMS;
4e2933c620 2015-04-21        kinaba: 	alias MCI_WAVE_OPEN_PARMSW MCI_WAVE_OPEN_PARMS;
4e2933c620 2015-04-21        kinaba: 	alias MCI_ANIM_OPEN_PARMSW MCI_ANIM_OPEN_PARMS;
4e2933c620 2015-04-21        kinaba: 	alias MCI_ANIM_WINDOW_PARMSW MCI_ANIM_WINDOW_PARMS;
4e2933c620 2015-04-21        kinaba: 	alias MCI_OVLY_OPEN_PARMSW MCI_OVLY_OPEN_PARMS;
4e2933c620 2015-04-21        kinaba: 	alias MCI_OVLY_WINDOW_PARMSW MCI_OVLY_WINDOW_PARMS;
4e2933c620 2015-04-21        kinaba: 	alias MCI_OVLY_SAVE_PARMSW MCI_OVLY_SAVE_PARMS;
c2b7a98c21 2011-02-23        kinaba: 
4e2933c620 2015-04-21        kinaba: 	alias sndPlaySoundW sndPlaySound;
4e2933c620 2015-04-21        kinaba: 	alias PlaySoundW PlaySound;
4e2933c620 2015-04-21        kinaba: 	alias waveOutGetDevCapsW waveOutGetDevCaps;
4e2933c620 2015-04-21        kinaba: 	alias waveOutGetErrorTextW waveOutGetErrorText;
4e2933c620 2015-04-21        kinaba: 	alias waveInGetDevCapsW waveInGetDevCaps;
4e2933c620 2015-04-21        kinaba: 	alias waveInGetErrorTextW waveInGetErrorText;
4e2933c620 2015-04-21        kinaba: 	alias midiOutGetDevCapsW midiOutGetDevCaps;
4e2933c620 2015-04-21        kinaba: 	alias midiOutGetErrorTextW midiOutGetErrorText;
4e2933c620 2015-04-21        kinaba: 	alias midiInGetDevCapsW midiInGetDevCaps;
4e2933c620 2015-04-21        kinaba: 	alias midiInGetErrorTextW midiInGetErrorText;
4e2933c620 2015-04-21        kinaba: 	alias auxGetDevCapsW auxGetDevCaps;
4e2933c620 2015-04-21        kinaba: 	alias mixerGetDevCapsW mixerGetDevCaps;
4e2933c620 2015-04-21        kinaba: 	alias mixerGetLineInfoW mixerGetLineInfo;
4e2933c620 2015-04-21        kinaba: 	alias mixerGetLineControlsW mixerGetLineControls;
4e2933c620 2015-04-21        kinaba: 	alias mixerGetControlDetailsW mixerGetControlDetails;
4e2933c620 2015-04-21        kinaba: 	alias joyGetDevCapsW joyGetDevCaps;
4e2933c620 2015-04-21        kinaba: 	alias mmioInstallIOProcW mmioInstallIOProc;
4e2933c620 2015-04-21        kinaba: 	alias mmioStringToFOURCCW mmioStringToFOURCC;
4e2933c620 2015-04-21        kinaba: 	alias mmioOpenW mmioOpen;
4e2933c620 2015-04-21        kinaba: 	alias mmioRenameW mmioRename;
4e2933c620 2015-04-21        kinaba: 	alias mciSendCommandW mciSendCommand;
4e2933c620 2015-04-21        kinaba: 	alias mciSendStringW mciSendString;
4e2933c620 2015-04-21        kinaba: 	alias mciGetDeviceIDW mciGetDeviceID;
4e2933c620 2015-04-21        kinaba: 	alias mciGetDeviceIDFromElementIDW mciGetDeviceIDFromElementID;
4e2933c620 2015-04-21        kinaba: 	alias mciGetErrorStringW mciGetErrorString;
c2b7a98c21 2011-02-23        kinaba: 
4e2933c620 2015-04-21        kinaba: } else {
4e2933c620 2015-04-21        kinaba: 	alias WAVEOUTCAPSA WAVEOUTCAPS;
4e2933c620 2015-04-21        kinaba: 	alias WAVEINCAPSA WAVEINCAPS;
4e2933c620 2015-04-21        kinaba: 	alias MIDIOUTCAPSA MIDIOUTCAPS;
4e2933c620 2015-04-21        kinaba: 	alias MIDIINCAPSA MIDIINCAPS;
4e2933c620 2015-04-21        kinaba: 	alias AUXCAPSA AUXCAPS;
4e2933c620 2015-04-21        kinaba: 	alias MIXERCAPSA MIXERCAPS;
4e2933c620 2015-04-21        kinaba: 	alias MIXERLINEA MIXERLINE;
4e2933c620 2015-04-21        kinaba: 	alias MIXERCONTROLA MIXERCONTROL;
4e2933c620 2015-04-21        kinaba: 	alias MIXERLINECONTROLSA MIXERLINECONTROLS;
4e2933c620 2015-04-21        kinaba: 	alias MIXERCONTROLDETAILS_LISTTEXTA MIXERCONTROLDETAILS_LISTTEXT;
4e2933c620 2015-04-21        kinaba: 	alias JOYCAPSA JOYCAPS;
4e2933c620 2015-04-21        kinaba: 	alias MCI_OPEN_PARMSA MCI_OPEN_PARMS;
4e2933c620 2015-04-21        kinaba: 	alias MCI_INFO_PARMSA MCI_INFO_PARMS;
4e2933c620 2015-04-21        kinaba: 	alias MCI_SYSINFO_PARMSA MCI_SYSINFO_PARMS;
4e2933c620 2015-04-21        kinaba: 	alias MCI_SAVE_PARMSA MCI_SAVE_PARMS;
4e2933c620 2015-04-21        kinaba: 	alias MCI_LOAD_PARMSA MCI_LOAD_PARMS;
4e2933c620 2015-04-21        kinaba: 	alias MCI_VD_ESCAPE_PARMSA MCI_VD_ESCAPE_PARMS;
4e2933c620 2015-04-21        kinaba: 	alias MCI_WAVE_OPEN_PARMSA MCI_WAVE_OPEN_PARMS;
4e2933c620 2015-04-21        kinaba: 	alias MCI_ANIM_OPEN_PARMSA MCI_ANIM_OPEN_PARMS;
4e2933c620 2015-04-21        kinaba: 	alias MCI_ANIM_WINDOW_PARMSA MCI_ANIM_WINDOW_PARMS;
4e2933c620 2015-04-21        kinaba: 	alias MCI_OVLY_OPEN_PARMSA MCI_OVLY_OPEN_PARMS;
4e2933c620 2015-04-21        kinaba: 	alias MCI_OVLY_WINDOW_PARMSA MCI_OVLY_WINDOW_PARMS;
4e2933c620 2015-04-21        kinaba: 	alias MCI_OVLY_SAVE_PARMSA MCI_OVLY_SAVE_PARMS;
c2b7a98c21 2011-02-23        kinaba: 
4e2933c620 2015-04-21        kinaba: 	alias sndPlaySoundA sndPlaySound;
4e2933c620 2015-04-21        kinaba: 	alias PlaySoundA PlaySound;
4e2933c620 2015-04-21        kinaba: 	alias waveOutGetDevCapsA waveOutGetDevCaps;
4e2933c620 2015-04-21        kinaba: 	alias waveOutGetErrorTextA waveOutGetErrorText;
4e2933c620 2015-04-21        kinaba: 	alias waveInGetDevCapsA waveInGetDevCaps;
4e2933c620 2015-04-21        kinaba: 	alias waveInGetErrorTextA waveInGetErrorText;
4e2933c620 2015-04-21        kinaba: 	alias midiOutGetDevCapsA midiOutGetDevCaps;
4e2933c620 2015-04-21        kinaba: 	alias midiOutGetErrorTextA midiOutGetErrorText;
4e2933c620 2015-04-21        kinaba: 	alias midiInGetDevCapsA midiInGetDevCaps;
4e2933c620 2015-04-21        kinaba: 	alias midiInGetErrorTextA midiInGetErrorText;
4e2933c620 2015-04-21        kinaba: 	alias auxGetDevCapsA auxGetDevCaps;
4e2933c620 2015-04-21        kinaba: 	alias mixerGetDevCapsA mixerGetDevCaps;
4e2933c620 2015-04-21        kinaba: 	alias mixerGetLineInfoA mixerGetLineInfo;
4e2933c620 2015-04-21        kinaba: 	alias mixerGetLineControlsA mixerGetLineControls;
4e2933c620 2015-04-21        kinaba: 	alias mixerGetControlDetailsA mixerGetControlDetails;
4e2933c620 2015-04-21        kinaba: 	alias joyGetDevCapsA joyGetDevCaps;
4e2933c620 2015-04-21        kinaba: 	alias mmioInstallIOProcA mmioInstallIOProc;
4e2933c620 2015-04-21        kinaba: 	alias mmioStringToFOURCCA mmioStringToFOURCC;
4e2933c620 2015-04-21        kinaba: 	alias mmioOpenA mmioOpen;
4e2933c620 2015-04-21        kinaba: 	alias mmioRenameA mmioRename;
4e2933c620 2015-04-21        kinaba: 	alias mciSendCommandA mciSendCommand;
4e2933c620 2015-04-21        kinaba: 	alias mciSendStringA mciSendString;
4e2933c620 2015-04-21        kinaba: 	alias mciGetDeviceIDA mciGetDeviceID;
4e2933c620 2015-04-21        kinaba: 	alias mciGetDeviceIDFromElementIDA mciGetDeviceIDFromElementID;
4e2933c620 2015-04-21        kinaba: 	alias mciGetErrorStringA mciGetErrorString;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
4e2933c620 2015-04-21        kinaba: alias WAVEOUTCAPS* PWAVEOUTCAPS, LPWAVEOUTCAPS;
4e2933c620 2015-04-21        kinaba: alias WAVEINCAPS* PWAVEINCAPS, LPWAVEINCAPS;
4e2933c620 2015-04-21        kinaba: alias MIDIOUTCAPS* PMIDIOUTCAPS, LPMIDIOUTCAPS;
4e2933c620 2015-04-21        kinaba: alias MIDIINCAPS* PMIDIINCAPS, LPMIDIINCAPS;
4e2933c620 2015-04-21        kinaba: alias AUXCAPS* PAUXCAPS, LPAUXCAPS;
4e2933c620 2015-04-21        kinaba: alias MIXERCAPS* PMIXERCAPS, LPMIXERCAPS;
4e2933c620 2015-04-21        kinaba: alias MIXERLINE* PMIXERLINE, LPMIXERLINE;
4e2933c620 2015-04-21        kinaba: alias MIXERCONTROL* PMIXERCONTROL, LPMIXERCONTROL;
4e2933c620 2015-04-21        kinaba: alias MIXERLINECONTROLS* PMIXERLINECONTROLS, LPMIXERLINECONTROLS;
4e2933c620 2015-04-21        kinaba: alias MIXERCONTROLDETAILS_LISTTEXT* PMIXERCONTROLDETAILS_LISTTEXT, LPMIXERCONTROLDETAILS_LISTTEXT;
4e2933c620 2015-04-21        kinaba: alias JOYCAPS* PJOYCAPS, LPJOYCAPS;
4e2933c620 2015-04-21        kinaba: alias MCI_OPEN_PARMS* PMCI_OPEN_PARMS, LPMCI_OPEN_PARMS;
4e2933c620 2015-04-21        kinaba: alias MCI_INFO_PARMS* LPMCI_INFO_PARMS;
4e2933c620 2015-04-21        kinaba: alias MCI_SYSINFO_PARMS* PMCI_SYSINFO_PARMS, LPMCI_SYSINFO_PARMS;
4e2933c620 2015-04-21        kinaba: alias MCI_SAVE_PARMS* PMCI_SAVE_PARMS, LPMCI_SAVE_PARMS;
4e2933c620 2015-04-21        kinaba: alias MCI_LOAD_PARMS* PMCI_LOAD_PARMS, LPMCI_LOAD_PARMS;
4e2933c620 2015-04-21        kinaba: alias MCI_VD_ESCAPE_PARMS* PMCI_VD_ESCAPE_PARMS, LPMCI_VD_ESCAPE_PARMS;
4e2933c620 2015-04-21        kinaba: alias MCI_WAVE_OPEN_PARMS* PMCI_WAVE_OPEN_PARMS, LPMCI_WAVE_OPEN_PARMS;
4e2933c620 2015-04-21        kinaba: alias MCI_ANIM_OPEN_PARMS* PMCI_ANIM_OPEN_PARMS, LPMCI_ANIM_OPEN_PARMS;
4e2933c620 2015-04-21        kinaba: alias MCI_ANIM_WINDOW_PARMS* PMCI_ANIM_WINDOW_PARMS, LPMCI_ANIM_WINDOW_PARMS;
4e2933c620 2015-04-21        kinaba: alias MCI_OVLY_OPEN_PARMS* PMCI_OVLY_OPEN_PARMS, LPMCI_OVLY_OPEN_PARMS;
4e2933c620 2015-04-21        kinaba: alias MCI_OVLY_WINDOW_PARMS* PMCI_OVLY_WINDOW_PARMS, LPMCI_OVLY_WINDOW_PARMS;
4e2933c620 2015-04-21        kinaba: alias MCI_OVLY_SAVE_PARMS* PMCI_OVLY_SAVE_PARMS, LPMCI_OVLY_SAVE_PARMS;