Herramientas de usuario

Herramientas del sitio


hardware:perifericos:kempston_joystick_clones

A> KEMPSTON JOYSTICK (CLONES)

Copias o clones de la interfaz oficial kempston_joystick.

Imágenes del Hardware
  • Fabricante / Origen: Siren Software (Mánchester, Reino Unido) [Identificado mediante análisis de preservación de PCB]
Descripción, Contexto e Historia de Preservación

La unidad clonada que ilustra esta página corresponde de forma exacta a la **"Siren Software Joystick Interface"**, comercializada activamente a finales de los años 80 en el Reino Unido por la casa de hardware y utilidades **Siren Software** (dirigida por Philip y Michael Davenport con sede en Mánchester). El periférico era sumamente popular en la época por distribuirse originalmente en un llamativo embalaje de color verde brillante con letras blancas, convirtiéndose en el clon compatible con Kempston más extendido para la gama Amstrad PCW 8256 y 8512.

Debido a que Amstrad omitió de fábrica cualquier puerto para mandos de juego con el fin de abaratar costes profesionales, Siren Software cubrió este nicho diseñando una interfaz económica y robusta que se pinchaba directamente en el bus de expansión lateral de 50 pines. Su gran ventaja competitiva era el diseño puramente electrónico Plug and Play: no requería de software ni drivers residentes en el sistema operativo CP/M. Además, el fabricante implementó un ingenioso "hardware hack" físico al incorporar dos puertos DE-9 paralelos cableados en espejo en la carcasa. Esto permitía tener dos joysticks conectados de manera simultánea para juegos multijugador cooperativos (como Match Day II), compartiendo eléctricamente la misma dirección de bus de datos en paralelo.

Arquitectura Electrónica y Mapeo del Puerto I/O 09Fh

A nivel de circuitos integrados lógicos tradicionales de la serie TTL (74xx) visibles en la PCB superior e inferior, la placa funciona como una compuerta electrónica directa hacia el microprocesador Zilog Z80:

  • Mapeo del Puerto E/S: La lógica digital del decodificador de direcciones monitoriza las líneas lógicas de control del PCW y se activa exclusivamente cuando lee la dirección de Entrada/Salida fija estándar de Kempston: 09Fh (Equivalente a 159 en formato decimal).
  • Lógica Activa en Alto (1): A diferencia de otros estándares de joystick de la plataforma (como Cascade o Spectravideo, que operan con lógica inversa activa en bajo), el estándar Kempston y este clon de Siren Software devuelven un '1' binario cuando se ejecuta una acción física. En estado de reposo, el puerto 09Fh devuelve un byte limpio 00h. El búfer de tres estados de la placa abre el canal y vuelca el estado de los interruptores mecánicos directamente al bus de datos del PCW cuando el software ejecuta la instrucción de lectura IN A, (09Fh).

Matriz de Mapeo de Bits en el Puerto 09Fh:

Bit del Bus Estado Físico en Alto (1) Función Asignada del Joystick (Norma Atari) Pin Físico Conector DE-9
Bit 7 0 (Fijo) Línea no utilizada / Reservada
Bit 6 0 (Fijo) Línea no utilizada / Reservada
Bit 5 0 (Fijo) Línea no utilizada / Reservada
Bit 4 1 Botón de disparo principal (FIRE) presionado Pin 6
Bit 3 1 Dirección de palanca ARRIBA (Up) activa Pin 1
Bit 2 1 Dirección de palanca ABAJO (Down) activa Pin 2
Bit 1 1 Dirección de palanca IZQUIERDA (Left) activa Pin 3
Bit 0 1 Dirección de palanca DERECHA (Right) activa Pin 4
Soporte en Software y Emulación de Preservación

Al ser el estándar de control por palanca más extendido, prácticamente la totalidad del catálogo de videojuegos de acción comerciales escritos para el CP/M Plus del PCW incluían de forma nativa la rutina de lectura directa al registro del puerto 09Fh en sus selectores de control periférico. Actualmente, este comportamiento de hardware está plenamente soportado de manera virtual en los emuladores de preservación digital CP/M Box (Habisoft) y Joyce (John Elliott), así como reproducido fielmente mediante compuertas lógicas de hardware en el Core oficial de Amstrad PCW de la plataforma MiSTer FPGA.

hardware/perifericos/kempston_joystick_clones.txt · Última modificación: por jesus