Microsoft KB Archive/227511

= Digital Joystick Works Intermittently or Not at All on Windows 2000-Based Computer =

Article ID: 227511

Article Last Modified on 2/27/2007

-

APPLIES TO


 * Microsoft Windows 2000 Server
 * Microsoft Windows 2000 Advanced Server
 * Microsoft Windows 2000 Professional Edition

-



This article was previously published under Q227511



SYMPTOMS
When you try to use a digital joystick on a computer that is running Windows 2000, you may find that the digital joystick works inconsistently or does not work at all.



CAUSE
This behavior can occur because Windows 2000 16-bit direct memory access (DMA) is in use for audio playback and only 8-bit is left for the digital joystick to use. Eventually the program that uses the digital joystick loses contact.

This can happen when you are playing audio files that are monaural, 8-bit, or of lower sample rates. However, since this behavior is dependent on network or CPU usage, it is most likely to occur when processing is at the highest rates.



STATUS
Microsoft has confirmed this to be a problem in Microsoft Windows 2000.



MORE INFORMATION
During DMA operations, the digital joystick waits for the audio to finish. The driver that reads the joystick essentially processes the gameport at high level, turning off possible interrupts on the operating system and waiting for the transitions between the two devices to occur. On some systems, the processor is locked out of ability to read the gameport during each audio DMA transfer.

If the processor works over its capacity, sometimes a retry occurs and some data may be lost. Since analog devices rely on timing to figure out the joystick's signals, these small interruptions seldom cause a noticeable issue. However, when an interrupt occurs with a digital joystick, the signals from the joystick become corrupted and must be sent again for the driver to identify them. If enough interrupts occur, the operating system identifies the digital joystick as not connected.

With FDMA (faster DMA) enabled, there are fewer interrupts and the digital joystick stays connected. However, Windows 2000 enables FDMA only for devices with Advanced Configuration and Power Interface (ACPI) basic input/output (BIOS). Computers without a new ACPI BIOS have trouble attaining maximum compatibility between digital joysticks and audio.

Keywords: kbbug kbpending kbsound KB227511

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.