Share on Facebook Share on Twitter Email
Answers.com

Game port

 

An I/O connector used to attach a joy stick or other video game controller. The legacy game port on a PC is a 15-pin socket. See video game controller.

The Orange Socket
The game port on this PC is the DB-15 orange-colored socket toward the bottom left. Game controllers also plug into the USB port.

Download Computer Desktop Encyclopedia to your iPhone/iTouch

Search unanswered questions...
Enter a question here...
Search: All sources Community Q&A Reference topics
Wikipedia: Game port
Top
Game port
Da-15 port.PNG
A DA-15 connector on a Soundcard
Type Joystick input port
Production history
Designer IBM
Superseded by USB
Specifications
Hot pluggable yes
External yes
Pins 15
Connector DA-15
Pin out
DA-15 DSubM.png
Pin 1 +5 V +5 V DC
Pin 2 B1 Button 1
Pin 3 X1 X axis for joystick 1 (0–100 kΩ)
Pin 4 GND Ground for B1
Pin 5 GND Ground for B2
Pin 6 Y1 Y axis for joystick 1 (0–100 kΩ)
Pin 7 B2 Button 2
Pin 8 +5V +5V DC
Pin 9 +5V +5V DC
Pin 10 B4 Button 4
Pin 11 X2 X axis for joystick 2 (0–100 kΩ)
Pin 12 GND Ground for buttons 3 and 4 (or MIDI out)
Pin 13 Y2 Y axis for joystick 2 (0–100 kΩ)
Pin 14 B3 Button 3
Pin 15 +5 V +5 V DC (or MIDI in, sometimes unconnected)

The game port is the traditional connector for video game input devices on x86-based PCs. Since about 1990, the game port has usually been integrated with a PC I/O or sound card, either ISA or PCI, or as an on-board feature of some motherboards; before that, it was usually on a dedicated ISA card. Microsoft has discontinued game port support with Windows Vista,[1] so it is probable that manufacturers will cease to produce boards with this connector. However, it's still entirely possible to provide third-party drivers that will work with the game port, and some companies that have produced game port cards in the past do so. USB adapters that allow gameport controllers to work have also been available.

Contents

Game port details

Analog interface

Unlike most other joystick connectors (and controllers) during the early days of home computing and game consoles, the game port is actually analog rather than digital, relying on some form of ADC to interpret joystick movements. Early IBM-PC manuals describe this port as suitable for connecting two analog paddles rather than joysticks. This approach has historically given the IBM-PC an advantage in simulation games, especially flight simulators,[citation needed] but on the other hand, rendered the design and use of simpler arcade or console joysticks more complex and needlessly convoluted, apart from being essentially incompatible with any existing joystick interface, most notably the de facto standard DE-9 connector Atari joysticks.

Acquisition and programming

Also, while other joystick standards (such as Atari or NES joysticks) are very easy and straightforward for programmers to use, the game port requires careful programming and well-timed software interrupt triggering to read an input. This of course caused performance issues as reading the game port took a notable amount of CPU time, especially compared to systems with a 'normal' digital (TTL) joystick port.

Circuits

The typical implementation of a game port uses a capacitor and a simple voltage comparator, which together form a sort of crude ramp-compare ADC, which needs to be periodically polled and reset at precise moments to read an input, something that must be done several times (generally above 30) per second to provide a responsive game input, and the actual acquisition frequency and value typically depend on the joystick's internal resistance, noise, CPU speed and the total joystick-capacitor's RC time constant.

Known issues

Its analog nature has also been the cause of many problems e.g. all kinds of joysticks needed "calibration", even arcade-style ones since no game controller and no joystick produced the same measurements each time, but they were dependent on the exact way acquisition was made and even on the CPU's speed in some rather poor designs. Also, all kinds of PC game ports suffer from electrical noise.

The calibration procedure is still required at some phase, even under modern operating systems such as Windows XP and usually consists of moving the joystick around all of its axes to measure the maximum axis excursion values, no matter if the joystick uses analog signals (from potentiometers) or digital signals (using microswitches or contacts). USB joysticks do not require calibration, in general.

In the days of DOS, each game using the game port(s) had to do its own calibration, often each time the game started, and some poorly coded calibration routines even failed to work consistently and properly, rendering some joysticks unusable with some games. With Windows XP, only one calibration per joystick is enough, which is assumed "valid" until a joystick is unplugged.

Certain applications and games were (and are) however able to use some analog joysticks without explicit calibration, under certain restricted conditions. In general, if only a purely directional input with no precise intensity information is required, an analog joystick can be "self calibrated" just by leaving the joystick in the middle position and taking a measurement, and then using some arbitrary or adaptive threshold to detect movement and excursion from the middle position. The limitation of this method is that the reading of the same joystick over the same game port can change over time, and some joysticks cannot work at all with this method. Also, the joystick must be in the middle position at least once when the implicit "self calibration" takes place, even if not explicitly stated.

Microsoft announced it would no longer include support for game ports in operating systems beginning with MS-Windows XP Professional x64 edition, reasoning that USB-based gaming equipment had become more common. This leaves game port support up to the manufacturer of the device (i.e. Sound card or USB converters) the game port ships on.

Electrical characteristics

The game port power can be loaded with approximately 750 mA [2], however this is shared with keyboard (max 100 mA[3]), mouse (~ 25 mA[4]), and the video port (VGA, uses 50 mA[2]). Leaving approximately 575 mA for actual game port usage.

Extensions of the game port capabilities

Some advanced game port joysticks supports more than 4 buttons (e.g. 6 or 8) but typically require a special device driver for the additional buttons to work properly, since the game port doesn't have actual hardware support for more than 4 distinct buttons.

This can be overcome by using pins and input meant for the second joystick (i.e. button 5 through 8 are mapped to the signals to the axis pins meant for the second joystick - resulting in the issue of the two buttons mapped to the same axis being not simultaneously usable), using some normally "unused" pins, or changing the joystick's circuits (and related software) to read a 4-bit state code from the four button inputs, thus giving up to 16 button combinations (albeit with some limitations e.g. some buttons may not be held down) or a combination of both techniques.

High-end game port joysticks such as the Microsoft SideWinder rely on multiplexing a proprietary data stream through the 4 standard button inputs and sometimes through the "unused" pins, achieving full support for a rather high number of buttons (e.g. 16 or 20) while special features such as daisy-chaining multiple joysticks, force feedback or joystick programming become possible in some cases.

The obvious drawback is the need for a special device driver to interpret the joystick input, and making its use time consuming and operating system-dependent, while the joystick is usually unusable without a special driver (unless multiple operating modes are supported).

Some hardware and DIY enthusiasts have found ways to connect a wide array of input devices to the game port and even found other applications for it, such as voltage or current measurement or simple interfacing and data acquisition.

History and variants

Y-splitter

The original game port design by IBM (released in 1981 as a separate expansion card for the first IBM PC[5]) initially allowed four analog axes and four buttons on one port, allowing two joysticks or four paddles to be connected, although this required a special "Y-splitter" cable and isn't fully supported by some combined midi/game ports usually found on sound cards.

Some poorly implemented game ports (usually built-in on old motherboards and I/O cards) didn't fully support either 4 axes or 4 buttons, making only the use of a single 2-axis and 2-button joystick possible.

The 15-pin game port is no longer provided on presently manufactured PCs, though adapters exist that allow older joysticks and controllers to connect via USB. However, Microsoft's Vista operating system natively lacks all game port support, even for USB adapters.

MIDI connectors

Game ports use DA-15 connectors (also incorrectly called DB-15). Since the game port moved from dedicated expansion cards to sound cards about 1990, these connectors usually double as connectors for MIDI instruments; two of the redundant +5V and GND pins of the original standard were rededicated to MIDI input and output to make this possible. To use a game port with MIDI instruments, one requires a cable with a male and a female DA-15 and two male 5-pin DIN connectors. The drivers and hardware for the game port midi capabilities are based around the now standard Roland MPU-401 MIDI interface (in UART mode only), and support most MPU-401 standard applications for Windows and DOS. The official proper design for a game port-MIDI adapter can be found at this MIDI page.

See also

References

  1. ^ Rivera, Andre (11 September 2006). "Hardware Compatibility and Drivers 5600". http://social.technet.microsoft.com/forums/en-US/itprovistahardware/thread/4491e426-a9ec-4fea-8bf0-4a54fa2744ae/. "Q: Are MIDI/game ports supported under Vista? A: We've removed support for these types of devices, in favor of USB connected devices." 
  2. ^ a b "System board D1170 reference manual". http://www.rm.com/_RMVirtual/Media/Downloads/d1170.pdf.  091205 rm.com
  3. ^ "Small footprint Notebook style PS/2 Keyboard". http://img.custompublish.com/getfile.php/628305.31.tbtabqqeba/AK-4400-GP_Datasheet.pdf?return=www.tftplaza.nl.  091205 img.custompublish.com
  4. ^ "Solid-state optical mouse sensor with PS/2 and quadrature outputs. Technical Data. HDNS-2000". http://www.iammp.org/design/files/h2000.pdf.  091205 iammp.org
  5. ^ Calvert, J. B. (18 August 2002). "The Game Control Adapter". A Review of Electronics. http://mysite.du.edu/~etuttle/electron/elect57.htm. 

External links


Shopping: Game port
Top
 
 

 

Copyrights:

Computer Desktop Encyclopedia. THIS DEFINITION IS FOR PERSONAL USE ONLY.
All other reproduction is strictly prohibited without permission from the publisher.
© 1981-2010 The Computer Language Company Inc.  All rights reserved.  Read more
Wikipedia. This article is licensed under the Creative Commons Attribution/Share-Alike License. It uses material from the Wikipedia article "Game port" Read more