Página 1 de 4

Core spectrum con soporte de joy 2 botones y nuevo protocolo OPQASPACEM

Publicado: 08 Ene 2018, 14:37
por Quest
Buenas!

Hace ya un tiempo que quería poder utilizar el segundo botón del joystick (en pads de master system por ejemplo) en el core de spectrum, y de paso tener también algún modo de usar el pad con los juegos que permiten redefinir teclas, así que lo hice. Veo en diferentes hilos que hay interés en este tema, así que publico el core aquí para que lo probéis, a ver si satisface las necesidades planteadas, o si tiene algún bug que no he visto (Asumid que ahora mismo es experimental).

Para los protocolos Kempston y Fuller he utilizado la propuesta de Velesoft (así si ya hay algún juego que lo use, funcionará). Si creeis que esta propuesta (ver debajo en documentación) es útil y funciona bien, se podría dejar como base para desarrollo de nuevos juegos con soporte de 2 botones, se abre el debate :)

Proporciono también la utilidad JOYCONF adaptada a estos cambios para poder configurar todo. Si al final va a ser usado realmente este core, podemos añadir la configuración del nuevo protocolo a la BIOS.


DOCUMENTACIÓN


1- Soporte segundo botón en todos los protocolos:

- KEMPSTON: como siempre, puerto $1F. Botón 2: bit 5

- FULLER: como siempre, puerto $7F. Botón 2: bit 5

- SINCLAIR1: $FEFE. Botón 2: bit 2 (Tecla X)

- SINCLAIR2: $FEFE. Botón 2: bit 1 (Tecla Z)

- CURSOR: $EFFE. Botón 2: bit 1 (Tecla 9)


2- Nuevo protocolo OPQASPACEM:

- Se activa en el registro JOYCONF del ZX-UNO, como los demás, pero con el valor $06 (Esto ya lo hace la util modificada JOYCONF que adjunto).

- Mapea de forma fija las direcciones y 2 botones del pad/jostick real por DB9 a la las posiciones correspondientes a la matriz de teclado, de las teclas: O P Q A SPACE M, siendo estas IZQUIERDA DERECHA ARRIBA ABAJO FUEGO BOTON2 respectivamente.

Por tanto: los juegos que usen esa combinación de serie, funcionarán directamente con el josystick real eligiendo teclado. Y los juegos que permitan reconfigurar teclas, se benefician también de este mapeo, ya que puedes reconfigurar directamente pulsando las teclas del joystick/pad.

---------------

El core está basado en la última versión EXP25 (Lo identifico como EX2B08012018), y a partir de ahí he realizado los cambios necesarios, así que es necesario si lo usas, tener también actualizada la BIOS a la 0.63 (la incluyo también en la descarga -firmware.zx1-).

Adjunto descarga con el core en formato ZX1 para poner como core secundario, en ZX1 para poner como core principal (bajo tu propia responsabilidad si se flashea mal y no tienes cable para unbrick), formato bitstream (para los que usen cable Xilinx), y utilidad JOYCONF2 adaptada, para configurarlo todo (copiar en carpeta /BIN de la SD).
spectrum_EX2B.zip
(350.33 KiB) Descargado 352 veces
------------------

JOYCONF2.jpg
JOYCONF2.jpg (58.52 KiB) Visto 9175 veces

Re: Core spectrum con soporte de joy 2 botones y nuevo ptrotocolo OPQASPACEM

Publicado: 08 Ene 2018, 15:00
por desUBIKado
A más de uno nos has alegrado el día... y lo sabes :plasplas:

Re: Core spectrum con soporte de joy 2 botones y nuevo ptrotocolo OPQASPACEM

Publicado: 08 Ene 2018, 16:19
por antoniovillena
Se agradece, porque ya se habían abierto varios hilos con esta petición. Lo único me pondría de acuerdo con McLeod para que le dé el visto bueno e incluya los fuentes en su rama. Ya que de lo contrario habría que ir actualizando esta rama alternativa en cada cambio de la principal.

Re: Core spectrum con soporte de joy 2 botones y nuevo ptrotocolo OPQASPACEM

Publicado: 08 Ene 2018, 16:23
por Quest
Antonio, sí, ya está hablado con mcleod, antes de publicarlo, y con su visto bueno. De momento la idea es probar esta versión, ver si está libre de problemas y si hay conformidad y se va a usar, se verá de unificarlo en la rama principal. En caso de que finalmente sea así, supongo que te sería trivial añadir el 6º protocolo de joy a la BIOS (Solo en DB9, claro).

Re: Core spectrum con soporte de joy 2 botones y nuevo ptrotocolo OPQASPACEM

Publicado: 08 Ene 2018, 17:05
por antoniovillena
Ah, perfecto. Sí, añadir el sexto protocolo a la BIOS es trivial.

Re: Core spectrum con soporte de joy 2 botones y nuevo ptrotocolo OPQASPACEM

Publicado: 08 Ene 2018, 17:32
por Uto
Es una muy buena opción, me gusta. Cuando pase al coreo oficial lo meto en ZXUC también, aunque por supuesto en ZXUC se llamará protocolo QAOPSPACEM :roll:

Re: Core spectrum con soporte de joy 2 botones y nuevo ptrotocolo OPQASPACEM

Publicado: 08 Ene 2018, 17:41
por Quest
Uto escribió:Es una muy buena opción, me gusta. Cuando pase al coreo oficial lo meto en ZXUC también, aunque por supuesto en ZXUC se llamará protocolo QAOPSPACEM :roll:
Claro, haz lo que quieras en tu programa :D yo puse OPQA porque como no había consenso, la única consulta masiva que se hizo al respecto con resultados "oficiales", que fue en la RetroZaragoza, donde presencié el recuento, tuvo como resultado OPQA ganador :mrgreen:

Re: Core spectrum con soporte de joy 2 botones y nuevo ptrotocolo OPQASPACEM

Publicado: 08 Ene 2018, 23:59
por desUBIKado
Ya he actualizado y es una gozada disponer de un segundo disparo. En todos los casos que he probado he usado el protocolo OPQASPCM y usado REDEFINIR TECLAS.

He probado Sword of Ianna y R-Type, y perfecto con el segundo disparo.

Luego he probado Dizzy Crystal Kingdom (Dizzy-7) y el JUMP perfecto con la ESPACIO, pero el SELECT (sale una ventana), lo activo con el segundo disparo, pero volviendo a pulsar el segundo disparo no desaparece la ventana, sin embargo si pulso 'M' sí desaparece.

Re: Core spectrum con soporte de joy 2 botones y nuevo ptrotocolo OPQASPACEM

Publicado: 09 Ene 2018, 00:25
por Quest
Gracias por los tests desUBIKado, probré ese Dizzy a ver cómo hace la lectura...

Re: Core spectrum con soporte de joy 2 botones y nuevo ptrotocolo OPQASPACEM

Publicado: 09 Ene 2018, 00:53
por Haplo
hombreeeee, buenas noticias!
me parece muy buena idea y dará más juego para futuros desarrollos :okidoki;