The 10 Entry Limit in Windows NT/2000/XP

Since the introduction of Windows 2000 we have been regularly contacted by a few costumers, who were experiencing the following errors:

  • No wave devices (MME) appear after driver installation. Only ASIO can be used.

  • No HDSP MIDI ports appear after driver installation. MIDI therefore cannot be used with the Hammerfall DSP.

  • In both cases the properties dialog of the audio and/or MIDI device shows State: Driver enabled but not functioning properly.

  • The properties dialog of the audio and/or MIDI device says State: Driver enabled but not functioning properly. Nevertheless everything is working properly!

The errors mentioned above concern all Windows versions of NT, 2000 and XP up to the latest XP SP1. And in all cases it is the same error. Since NT, Windows has an internal list of the 32bit MIDI and wave drivers. These lists can carry up to 10 entries maximum each, after that they will never be reset, deleted or carried further.

This error is a heritage from NT and we don't expect a bug fix in the next (or the next but one) service pack. The error has nothing to do with the known WDM 10 devices limit in Windows 98 or Windows 2000. Instead, it is concerning device drivers, of which each single one can handle as many I/O ports as necessary. The problem appears with audio and MIDI devices of all manufacturers and cannot be solved from the driver side.

How can this problem be cured?

  • By installing Windows again from scratch. When many applications have been installed, this is a time consuming solution which is also getting on one's nerves.

  • By a manual reset of the list, i. e. deleting several entries and new installation of the according drivers.

Before doing this, you should have understood the list management in order to efficiently take over Windows' job.

Please note that changing the registry can cause a complete loss of the operating system. RME does not take over any responsibility for the changes with the registry editor described below!

Location and Creation of the Entries

Via 'Start/Run', the registry editor can be started by typing in 'regedit'. The relevant entries are in the path 'HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Drivers32' (left part of the window). As can be seen in the picture above, in case of an error all 10 entries for MIDI (midi to midi9) and/or audio (lower end of the list, wave to wave9) have already been created.

Windows creates an additional entry when a device driver is being installed again (but not when performing a simple driver update). This means not only during the first installation, but also when:

  • A PCI card is moved to another slot

  • A USB device is used with a different USB port than before

  • The hardware ID changes, e. g. with firmware updates of the Hammerfall DSP

But not only real hardware, also virtual ports emulating hardware use up entries. In the picture the entry midi9 is taken by gmidi.dll, which provides the virtual MIDI ports for Gigastudio. Even internal hardware can be problematic. The driver 'wdmaud.drv', Microsoft's WDM audio mapper, is actually only needed once per WDM (blaster) hardware, but it showed up 7 times in one of our customers' notebook - and this with an internal sound card, of which the resources never change!

The list management has another peculiarity. If e. g. the revision of the Hammerfall DSP changes and as shown in the picture above all 10 entries have been used, no further entry can be created. In this case the proprties dialog shows State: Driver enabled but not functioning properly, but the Hammerfall DSP is still working completely. Because there are already references to hdspmme.dll. Its 'wrong' entry number has Windows display an error without taking the device out of the race.

Deleting the Entries

For doing this, you move the mouse to the desired entry midix or wavex in the right window, right mouse button, delete. But which entries may be deleted? The best thing would of course be a new creation of the list, i. e. deleting all entries midi up to midi9 and wave up to wave9. In this case you have to be sure that you have the drivers for every hardware concerned at hand. We warn against this method and recommend a more specific procedure.

  • Delete all multiple entries but one. As explained, the device should afterwards be functioning properly despite of an error message in the properties dialog.

In our example the procedure was easy: all MIDI entries with hdspmme.dll were deleted and the drivers of the Hammerfall DSP were installed again. This way the list of 10 entries shrank to 5. The entries wdmaud.drv and gmidi.dll were not renewed. As can be seen in the picture it is no problem, if this creates gaps in the numbering.

Tip: Via the search function of the registry editor, the hardware belonging to a file xyz.xxx can be found easily, because the driver name shows up together with the manufacturers name in a couple of places.

Copyright © Matthias Carstens, 2002. All entries in this document have been thoroughly checked, however no guarantee for correctness can be given. RME cannot be held responsible for any misleading or incorrect information provided throughout this document. Lending or copying any part or the complete document or its contents requires the written permission from RME.

Home    News    Audio Converters    Sound Cards    MADI Series     DIGICheck   Mic Preamps
Accessories    Support    RME Newsgroup    Company Info    Purchasing    Downloads    Links

Copyright © 2002 RME. All rights reserved. RME is a registered trademark.
This website contains names and marks of other companies.