Usuari:Mcapdevila/Port de jocs

Port de jocs

Un connector DA-15 en una targeta de so
Un connector DA-15 en una targeta de so

Tipus Port d'entrada de joystick
Història de producció
Dissenyador IBM
Especificacions
Connectable en calent
Extern
Pins 15
Connector DA-15
Patillatge
Patillatge
Pin 1 +5 V
Pin 2 B1
Pin 3 X1 Eix X per joystick 1 (000-100 kΩ)
Pin 4 GND Terra per B1
Pin 5 GND Terra per B2
Pin 6 Y1 Eix I per joystick 1 (000-100 kΩ)
Pin 7 B2 Botó 2
Pin 8 +5 V +5 V DC
Pin 9 +5 V +5 V DC
Pin 10 B4 Botó 4
Pin 11 X2 Eix X per joystick 2 (000-100 kΩ)
Pin 12 GND Terra per Botons 3 i 4 (o sortida MIDI)
Pin 13 I2 Eix I per joystick 2 (000-100 kΩ)
Pin 14 B3 Botó 3
Pin 15 +5 V +5 V DC (o MIDI de vegades desconnectat)

El port de jocs (game port) és la connexió tradicional per als dispositius de control de videojocs en les arquitectures x86 dels PC's. El port de jocs s'integra, de manera freqüent, en una entrada/sortida de l'ordinador o de la targeta de so (sigui ISA o PCI), o com una característica més d'algunes plaques base.

Característiques

modifica

Interfície analògica

modifica

Durant els primers passos de la informàtica popularitzada i les videoconsoles, a diferència d'altres connectors (i controladors) per joysticks, el port de jocs era íntegrament analògic amb algun tipus de convertidor analògic-digital per interpretar els moviments del joystick. Aviat, els manuals de IBM PC descrivien la capacitat d'aquest port per connectar dos palanques (eixos) analògiques. Aquesta aproximació permetia una millor simulació en els videojocs, especialment en els simuladors de vol.

En el següent esquema es detalla el significat de cada un dels pins del port de jocs. A la dreta de la mateixa apareixen a la part superior el connector femella (ordinador) i avall el connector mascle (perifèric):

Adquisició i programació

modifica

Mentre que altres estàndards per joysticks (com els joysticks d'ATARI o NES) són molt senzills per als programadors, el port de jocs requereix una programació acurada i una rutina d'interrupció programari amb els temps precisos i exactes per llegir una entrada. Això, per descomptat, és la clau que explica que llegir pel port de jocs és una operació més costosa pel que fa a cicles de CPU, comparant-la amb la lectura en system digitals (TTL).

Circuits

modifica

La implementació típica d'un port de jocs empra un condensador i un simple comparador de tensió, que constitueixen un tipus de convertidor analògic digital de rampa. Aquest ha de ser enquestat periòdicament i reiniciat en moments molt concrets per llegir una entrada, una cosa que necessita realitzar diverses vegades (generalment al voltant de 30) per segon per aconseguir una entrada sensible. La freqüència d'adquisició actual depèn de la resistivitat interna del joystick, el soroll, la velocitat de la CPU i el total de les constants de temps dels circuits RC dels joysticks.

Altres característiques rellevants

modifica

La seva naturalesa analògica ha estat la causa de molts dels problemes dels joysticks, com, per exemple, la necessitat de recalibració de qualsevol tipus de joystick (obligatòria des que els controladors de jocs no generen les mateixes quantitats de tensió cada vegada). A més, totes les classes de controladors de jocs pateixen les conseqüències de l'soroll elèctric.

El procediment de calibratge és encara necessari. A sistemes operatius moderns, com Windows XP, aquest procés consisteix a moure el joystick en tots els seus eixos per tal de mesurar els valors màxims de cada eix (si el joystick servir senyals analògics es fa servir un potenciòmetre, i si per contra, genera senyals digitals es mesura utilitzant interruptors elèctrics). Els joystick USB no requereixen de calibració prèvia, en general.

En els temps de Sistema operatiu de disc, cada joc que volgués accedir al port de jocs havia de realitzar la seva pròpia calibratge; sovint, es portava a terme quan el joc s'iniciava. Algunes rutines de calibratge (pobrament programades) fallaven en aquesta tasca fent que alguns joysticks no es poguessin utilitzar amb alguns jocs.

Extensions de les capacitats del port de jocs

modifica

Alguns joysticks per al port de jocs tenen més de 4 botons (6 o 8, per exemple). Però requeriran un driver especial per treballar correctament, ja que el port de jocs no ofereix suport maquinari per més de 4 botons diferents.

Això pot ser superat utilitzant qualsevol dels pins que normalment no s'utilitzen o canviant els circuits dels joysticks (i el programari corresponent) per llegir un codi d'estat de 4 bits dels quatre botons d'entrada, aconseguint fins a 16 combinacions de botons diferents (però podem tenir algunes limitacions com que alguns botons no podrien mantenir estrets), o una combinació d'ambdues tècniques.

Els joysticks més sofisticats, com el Sidewinder de Microsoft, compten amb un corrent de dades multiplexats a través de les quatre entrades estàndards de botons i, de vegades, també gràcies als pins inútils. D'aquesta manera, aconsegueixen un suport total per a més botons (per exemple 16 o 20) i altres característiques especials com vibració o múltiples joysticks en un sol port (mecanisme daisychaining ).

El desavantatge òbvia en aquest aspecte és la necessitat de drivers específics per a interpretar l'entrada del joystick, de manera que s'augmenta el consum de temps de processament i la dependència del sistema operatiu. Aquest joystick no podria ser usat sense aquest driver especial.

Alguns entusiastes del món del maquinari i DIY (Do It Yourself - Fes-t'ho) han trobat mecanismes per connectar una àmplia varietat de dispositius d'entrada al port de jocs i fins i tot han ideat altres aplicacions per a aquest port com la mesura de voltatge, l'adquisició de dades, etc.

Història

modifica

El port de jocs original va ser inicialment dissenyat per IBM. Permetia quatre eixos analògics i quatre botons en un mateix port. A més, suporta dos joysticks o quatre pàdel s (palanques) connectades mitjançant un cable "I-splitter" (encara que no funcionava aquesta estructura en alguns ports de jocs/MIDI de la targeta de so).

Algunes implementacions pobre del port de jocs (generalment les incloses en velles plaques base i targetes d'Entrada/Sortida) no suportaven completament els 4 eixos o els 4 botons, fent possible l'ús de simples joysticks amb 2 eixos i 2 botons.

El port de jocs de 15 pins, el qual també pot fer de port MIDI, ha estat eliminat d'algun dels nous ordinadors personals, a favor del port USB. Tot i això, avui en dia, encara hi ha plaques base que segueixen incloent aquest port (permetent la seva configuració com a port de jocs o com a port MIDI mitjançant la seva BIOS). A més, determinats fabricants venen adaptadors per connectar vells joysticks al port USB.

Connectors MIDI

modifica
 
Una targeta de so PCI amb un connector DA-15.

El port de jocs empra connectors DA-15 (també anomenats, de forma incorrecta, DB-15), i generalment s'utilitza també per a instruments MIDI. Per utilitzar un port de jocs amb un instrument musical MIDI es necessita un cable (poc comú) amb un connector mascle i un femella DA-15 i dos connectors mascle DIN 5-pins. Els drivers i el maquinari per a les capacitats MIDI del port de jocs es centren al voltant del estàndard d'interfície MIDI Roland MPU-401 (només en mode UART), i suporten la major part de les aplicacions MPU-401 per a Windows i DOS. El disseny oficial per un adaptador MIDI per al port de jocs es pot consultar en el següent enllaç.

Altres tipus de connectors per a controladors de jocs

modifica

Anteriorment, el port de jocs intentar ser reemplaçat per altres interfícies com el port paral·lel, el port sèrie o PS/2 amb molt poc èxit. Fins a la introducció de l'estàndard Bus Sèrie Universal (USB), el qual està substituint al port de jocs. Encara USB permet millor suport plug-and-play (connectar i funcionar), el port de jocs encara segueix sent una elecció popular per joystick si gamepad s analògics ja que els controladors basats en el port de jocs són en general més barats que els basats en USB.

Vegeu també

modifica