
 1. About
 
 WINMM is part of HXGUI, an HX extension to run Win32 GUI applications under
 DOS.
 

 2. Supported Functions

  Name                     Dummy
 ----------------------------------
 auxGetDevCapsA            Y
 auxGetNumDevs             Y
 auxGetVolume              Y
 auxSetVolume              Y
 joyGetDevCapsA            Y
 joyGetNumDevs             Y
 joyGetPosEx               Y
 mciGetErrorStringA        Y
 mciSendCommandA           Y
 midiInClose               Y
 midiInGetDevCapsA         Y
 midiInGetNumDevs          Y
 midiInOpen                Y
 midiInStart               Y
 midiOutClose
 midiOutGetDevCapsA
 midiOutGetErrorTextA      Y
 midiOutGetNumDevs
 midiOutGetVolume          Y
 midiOutLongMsg
 midiOutOpen
 midiOutPrepareHeader
 midiOutReset
 midiOutSetVolume          Y
 midiOutShortMsg
 midiOutUnprepareHeader
 midiStreamClose           Y
 midiStreamOpen            Y
 midiStreamOut             Y
 midiStreamPause           Y
 midiStreamProperty        Y
 midiStreamRestart         Y
 midiStreamStop            Y
 mixerClose                Y
 mixerGetControlDetails    Y
 mixerGetLineControlsA     Y
 mixerGetLineInfoA         Y
 mixerGetNumDevs           Y
 mixerOpen                 Y
 mixerSetControlDetails    Y
 timeBeginPeriod           Y
 timeEndPeriod             Y
 timeGetDevCaps
 timeGetTime
 timeKillEvent
 timeSetEvent
 waveInAddBuffer           Y
 waveInClose               Y
 waveInGetDevCapsA         Y
 waveInGetNumDevs          Y
 waveInOpen                Y
 waveInPrepareHeader       Y
 waveInReset               Y
 waveInStart               Y
 waveInUnprepareHeader     Y
 waveOutClose              
 waveOutGetDevCapsA
 waveOutGetErrorTextA      Y
 waveOutGetID              Y
 waveOutGetNumDevs         
 waveOutGetPosition
 waveOutGetVolume          Y
 waveOutOpen               
 waveOutPause
 waveOutPrepareHeader      
 waveOutReset
 waveOutRestart
 waveOutSetVolume          Y
 waveOutUnprepareHeader    
 waveOutWrite              


 3. History

 2006/03/08:  version 2.4
 
  timeSetEvent now accepts a delay of 1 ms, previously if had to be at
   least 2 ms. Makes qemu 0.8.0 to work with hx.
  modified the code so it uses the DPMI virtual interrupt flag functions
   to temporarily disable interrupt. WinXP and DosEmu require to use
   these because the IF itself will not tell the truth.
  the previous version used undocumented DSP command FBh get status
   to be able to continue sound output even after another app has
   reprogrammed or reset the DSP. Using this feature is not recommended.
 
 2006/02/06:  version 2.3

  continue playing sound now checks if another app has done a SB reset.
   If yes, sound is reinitialized.
  WOM_OPEN/WOM_CLOSE notifcations for waveOut implemented.
  timeGetTime now uses GetTickCount, which has been improved to provide
   a 1 ms resolution. Previously resolution was 55 ms.
  timeGetDevCaps now implemented
  just one helper thread - if any - now created to handle all multimedia
   functions currently implemented (time, wave, midi).
  some midiOutXXX functions implemented. SB MPU 401 output should work now
   on SB 16 compatible cards.
  waveOutGetDevCapsA now implemented
  bugfix: waveOutGetNumDevs returned MMSYSERR_NODRIVER instead of NULL
   if no sound device was available.
  bugfix: if there was anything else in the BLASTER environment variable
   except Axxx, Ix, Dx, Hx, Pxxx and Tx, the scan was skipped and the 
   sound card not accepted.
   
 2006/01/22:  version 2.2
 
  waveOutGetPosition added (with TIME_BYTES type)
  waveOutPause, waveOutRestart added
  waveOutGetDevCapsA, waveOutGetVolume added (dummies)
  auxGetDevCapsA, auxGetNumDevs, auxSetVolume, auxGetVolume added (dummies)
 
 2006/01/02:  version 2.1
 
  mixerOpen added (dummy)
  wave support for SoundBlaster Pro added.
  midiInOpen, midiInClose, midiInStart, midiInGetNumDevs, midiInGetDevCapsA
   added (dummies)
  waveOutSetVolume, waveOutGetID added
  bugfix: waveOut window callback with wrong lParam
  bugfix: waveOutReset didn't dequeue buffers
 
 2005/12/20:  version 2.0
 
  waveOutOpen, waveOutClose, waveOutReset, waveOutWrite,
   waveOutPrepareHeader, waveOutUnprepareHeader now work
   with SoundBlaster 16 compatible device.
  midiOutOpen, midiOutClose, midiOutGetVolume (dummies)
  midiOutGetNumDevs, waveOutGetNumDevs added
  midiStreamPause, midiOutShortMsg added (dummies
  timeGetDevCaps, midiOutGetDevCapsA added (dummies)
  midiOutReset added (dummy)
 
 2005/12/07:  V1.2
 
  waveOutReset (dummy) added
 
 2005/11/24:  V1.1 
 
  midiXXX functions (dummy) added
 
 2005/10/10:  version 1.0

 
 4. Copyright
 
 WINMM is part of HX DOS extender. This extender is freeware.
 View HXRT.TXT or HXGUI.TXT for licence details.
 
 Japheth
