name	mmsystem
type	win16

#1      pascal  MMSYSTEM_WEP(word word word ptr) MMSYSTEM_WEP
2      pascal  SNDPLAYSOUND(ptr word) sndPlaySound
5      pascal  MMSYSTEMGETVERSION() mmsystemGetVersion
6      pascal  DriverProc(long word word long long) DriverProc
30     pascal  OUTPUTDEBUGSTR(ptr) OutputDebugStr
31     pascal  DriverCallback(long word word word long long long)
               DriverCallback
#32    pascal  STACKENTER
#33    pascal  STACKLEAVE
#34    pascal  MMDRVINSTALL
101    pascal  JOYGETNUMDEVS() JoyGetNumDevs
102    pascal  JOYGETDEVCAPS(word ptr word) JoyGetDevCaps
103    pascal  JOYGETPOS(word ptr) JoyGetPos
104    pascal  JOYGETTHRESHOLD(word ptr) JoyGetThreshold
105    pascal  JOYRELEASECAPTURE(word) JoyReleaseCapture
106    pascal  JOYSETCAPTURE(word word word word) JoySetCapture
107    pascal  JOYSETTHRESHOLD(word word) JoySetThreshold
109    pascal  JOYSETCALIBRATION(word) JoySetCalibration
201    pascal  MIDIOUTGETNUMDEVS() midiOutGetNumDevs
202    pascal  MIDIOUTGETDEVCAPS(word segptr word) midiOutGetDevCaps
203    pascal  MIDIOUTGETERRORTEXT(word ptr word) midiOutGetErrorText
204    pascal  MIDIOUTOPEN(ptr word ptr long long long) midiOutOpen
205    pascal  MIDIOUTCLOSE(word) midiOutClose
206    pascal  MIDIOUTPREPAREHEADER(word segptr word) midiOutPrepareHeader
207    pascal  MIDIOUTUNPREPAREHEADER(word segptr word) midiOutUnprepareHeader
208    pascal  MIDIOUTSHORTMSG(word long) midiOutShortMsg
209    pascal  MIDIOUTLONGMSG(word ptr word) midiOutLongMsg
210    pascal  MIDIOUTRESET(word) midiOutReset
211    pascal  MIDIOUTGETVOLUME(word segptr) midiOutGetVolume
212    pascal  MIDIOUTSETVOLUME(word long) midiOutSetVolume
213    pascal  MIDIOUTCACHEPATCHES(word word segptr word) midiOutCachePatches
214    pascal  MIDIOUTCACHEDRUMPATCHES(word word segptr word) midiOutCacheDrumPatches
215    pascal  MIDIOUTGETID(word ptr) midiOutGetID
216    pascal  MIDIOUTMESSAGE(word word long long) midiOutMessage
301    pascal  MIDIINGETNUMDEVS() midiInGetNumDevs
302    pascal  MIDIINGETDEVCAPS(word segptr word) midiInGetDevCaps
303    pascal  MIDIINGETERRORTEXT(word ptr word) midiInGetErrorText
304    pascal  MIDIINOPEN(ptr word ptr long long long) midiInOpen
305    pascal  MIDIINCLOSE(word) midiInClose
306    pascal  MIDIINPREPAREHEADER(word segptr word) midiInPrepareHeader
307    pascal  MIDIINUNPREPAREHEADER(word segptr word) midiInUnprepareHeader
309    pascal  MIDIINSTART(word) midiInStart
310    pascal  MIDIINSTOP(word) midiInStop
311    pascal  MIDIINRESET(word) midiInReset
312    pascal  MIDIINGETID(word ptr) midiInGetID
313    pascal  MIDIINMESSAGE(word word long long) midiInMessage
350    pascal  AUXGETNUMDEVS() auxGetNumDevs
351    pascal  AUXGETDEVCAPS(word segptr word) auxGetDevCaps
352    pascal  AUXGETVOLUME(word segptr) auxGetVolume
353    pascal  AUXSETVOLUME(word long) auxSetVolume
354    pascal  AUXOUTMESSAGE(word word long long) auxOutMessage
401    pascal  WAVEOUTGETNUMDEVS() waveOutGetNumDevs
402    pascal  WAVEOUTGETDEVCAPS(word segptr word) waveOutGetDevCaps
403    pascal  WAVEOUTGETERRORTEXT(word ptr word) waveOutGetErrorText
404    pascal  WAVEOUTOPEN(ptr word ptr long long long) waveOutOpen
405    pascal  WAVEOUTCLOSE(word) waveOutClose
406    pascal  WAVEOUTPREPAREHEADER(word segptr word) waveOutPrepareHeader
407    pascal  WAVEOUTUNPREPAREHEADER(word segptr word) waveOutUnprepareHeader
408    pascal  WAVEOUTWRITE(word segptr word) waveOutWrite
409    pascal  WAVEOUTPAUSE(word) waveOutPause
410    pascal  WAVEOUTRESTART(word) waveOutRestart
411    pascal  WAVEOUTRESET(word) waveOutReset
412    pascal  WAVEOUTGETPOSITION(word segptr word) waveOutGetPosition
413    pascal  WAVEOUTGETPITCH(word ptr) waveOutGetPitch
414    pascal  WAVEOUTSETPITCH(word long) waveOutSetPitch
415    pascal  WAVEOUTGETVOLUME(word segptr) waveOutGetVolume
416    pascal  WAVEOUTSETVOLUME(word long) waveOutSetVolume
417    pascal  WAVEOUTGETPLAYBACKRATE(word ptr) waveOutGetPlaybackRate
418    pascal  WAVEOUTSETPLAYBACKRATE(word long) waveOutSetPlaybackRate
419    pascal  WAVEOUTBREAKLOOP(word) waveOutBreakLoop
420    pascal  WAVEOUTGETID(word ptr) waveOutGetID
421    pascal  WAVEOUTMESSAGE(word word long long) waveOutMessage
501    pascal  WAVEINGETNUMDEVS() waveInGetNumDevs
502    pascal  WAVEINGETDEVCAPS(word segptr word) waveInGetDevCaps
503    pascal  WAVEINGETERRORTEXT(word ptr word) waveInGetErrorText
504    pascal  WAVEINOPEN(ptr word ptr long long long) waveInOpen
505    pascal  WAVEINCLOSE(word) waveInClose
506    pascal  WAVEINPREPAREHEADER(word segptr word) waveInPrepareHeader
507    pascal  WAVEINUNPREPAREHEADER(word segptr word) waveInUnprepareHeader
508    pascal  WAVEINADDBUFFER(word segptr word) waveInAddBuffer
509    pascal  WAVEINSTART(word) waveInStart
510    pascal  WAVEINSTOP(word) waveInStop
511    pascal  WAVEINRESET(word) waveInReset
512    pascal  WAVEINGETPOSITION(word segptr word) waveInGetPosition
513    pascal  WAVEINGETID(word ptr) waveInGetID
514    pascal  WAVEINMESSAGE(word word long long) waveInMessage
601    pascal  timeGetSystemTime(ptr word) timeGetSystemTime
602    pascal  timeSetEvent(word word segptr long word) timeSetEvent
603    pascal  timeKillEvent(word) timeKillEvent
604    pascal  timeGetDevCaps(ptr word) timeGetDevCaps
605    pascal  timeBeginPeriod(word) timeBeginPeriod
606    pascal  timeEndPeriod(word) timeEndPeriod
607    pascal  timeGetTime() timeGetTime
701    pascal  MCISENDCOMMAND(word word long long) mciSendCommand
702    pascal  MCISENDSTRING(ptr ptr word word) mciSendString
703    pascal  MCIGETDEVICEID(ptr) mciSendCommand
706    pascal  MCIGETERRORSTRING(long ptr word) mciGetErrorString
#900   pascal  MMTASKCREATE
#902   pascal  MMTASKBLOCK
#903   pascal  MMTASKSIGNAL
#904   pascal  MMGETCURRENTTASK
#905   pascal  MMTASKYIELD
1100   pascal  DRVOPEN(ptr ptr long) DrvOpen
1101   pascal  DRVCLOSE(word long long) DrvClose
1102   pascal  DRVSENDMESSAGE(word word long long) DrvSendMessage
1103   pascal  DRVGETMODULEHANDLE(word) DrvGetModuleHandle
1104   pascal  DRVDEFDRIVERPROC(long word word long long) DrvDefDriverProc
1210   pascal  MMIOOPEN(ptr ptr long) mmioOpen
1211   pascal  MMIOCLOSE(word word) mmioClose
1212   pascal  MMIOREAD(word ptr long) mmioRead
1213   pascal  MMIOWRITE(word ptr long) mmioWrite
1214   pascal  MMIOSEEK(word long word) mmioSeek
1215   pascal  MMIOGETINFO(word ptr word) mmioGetInfo
1216   pascal  MMIOSETINFO(word ptr word) mmioSetInfo
1217   pascal  MMIOSETBUFFER(word ptr long word) mmioSetBuffer
1218   pascal  MMIOFLUSH(word word) mmioFlush
1219   pascal  MMIOADVANCE(word ptr word) mmioAdvance
1220   pascal  MMIOSTRINGTOFOURCC(ptr word) mmioStringToFOURCC
1221   pascal  MMIOINSTALLIOPROC(long ptr long) mmioInstallIOProc
1222   pascal  MMIOSENDMESSAGE(word word long long) mmioSendMessage
1223   pascal  MMIODESCEND(word ptr ptr word) mmioDescend
1224   pascal  MMIOASCEND(word ptr word) mmioAscend
1225   pascal  MMIOCREATECHUNK(word ptr word) mmioCreateChunk
1226   pascal  MMIORENAME(ptr ptr ptr long) mmioRename


