Página 1 de 2

Caja para teclado ZX Spectrum PS2

Publicado: 27 Dic 2014, 16:36
por sinclair200
Bueno, pues mucho currro, pero al final he podido con ella.
Esta es la caja que le he hecho para el Interface teclado PS2 de Sinclair:
Imagen
Imagen

Detalle del botón del reset, algo mejor que en el Divide, pues le he pegado un tubo al botón de la placa con loctite y ya no se cae ni se mueve, y asomando por fuera, solamente ha sido ponerle un capuchón:
Imagen

Detalle de la parte trasera, apreciándose el replicador del bus, estuve tentado de no sacarlo al exterior para ahorrarme cortes en la caja, pero creo que hubiera sido un error no hacerlo:
Imagen

Detalle del conector de teclado:
Imagen

Imagen
Imagen

Y bueno, pues ahora me queda liarme con la caja de la disquetera para el interface de disco de BCH y el de Wilco, que al ser casi lo mismo, utilizaré solo una.
Mientras llegue la caja del Transtape 3 o termine Jose Leandro el QBide....
El caso es estar liao con algo...jajajajaja +

Re: Caja para teclado XZ Spectrum PS2

Publicado: 27 Dic 2014, 16:59
por Demiurgo
¡Está genial! :D

¿Dónde has comprado la caja? ¿Puedes poner la etiqueta para descargarla? ;)

Re: Caja para teclado ZX Spectrum PS2

Publicado: 27 Dic 2014, 19:15
por scooter
Tienes unas manos fantásticas para el mecanizado...

Enhorabuena.

Re: Caja para teclado XZ Spectrum PS2

Publicado: 27 Dic 2014, 21:08
por sinclair200
Demiurgo escribió:¡Está genial! :D

¿Dónde has comprado la caja? ¿Puedes poner la etiqueta para descargarla? ;)


Si, pero son dos, la negra es una y la tira del famoso arcoíris va independiente de la primera..
Imagen
Imagen

Re: Caja para teclado ZX Spectrum PS2

Publicado: 27 Dic 2014, 22:02
por mcleod_ideafix
¡Qué chulada! ¿Qué tal funciona? ¿Se lleva bien con los teclados estos que son duales USB / PS2 ? ¿Y con los teclados que no soportan el scan mode 3?

Re: Caja para teclado ZX Spectrum PS2

Publicado: 28 Dic 2014, 01:28
por Sinclair
Como ya te he dicho, te ha quedado de miedo sinclair200.

mcleod_ideafix escribió:¡Qué chulada! ¿Qué tal funciona? ¿Se lleva bien con los teclados estos que son duales USB / PS2 ? ¿Y con los teclados que no soportan el scan mode 3?


El interface se probó en una tirada de 20 unidades que hicimos en VdR con diferentes tipos de teclados PS/2 (entre ellos algunos duales), se comporta bien y hasta la fecha nadie ha reportado ningún tipo de incompatibilidad.

Saludos.

Re: Caja para teclado ZX Spectrum PS2

Publicado: 28 Dic 2014, 02:15
por mcleod_ideafix
Sinclair escribió:Como ya te he dicho, te ha quedado de miedo sinclair200.

mcleod_ideafix escribió:¡Qué chulada! ¿Qué tal funciona? ¿Se lleva bien con los teclados estos que son duales USB / PS2 ? ¿Y con los teclados que no soportan el scan mode 3?


El interface se probó en una tirada de 20 unidades que hicimos en VdR con diferentes tipos de teclados PS/2 (entre ellos algunos duales), se comporta bien y hasta la fecha nadie ha reportado ningún tipo de incompatibilidad.

Saludos.


Ah! Estupendo.

Estaba mirando el código VHDL y veo que el autor usa la señal IORQULA, que sólo está presente en el Spectrum 16K/48K (en el Harlequin está porque me puse pesado para que se incluyera, que si no, no :D ). Esta señal no está presente en el Spectrum 128K "heatsink", y no sé si en el +2 gris. Cuando Ben hizo la versión externa de mi interfaz de teclado PS/2 le pedí que no se fiara de la señal IORQULA y que usara tanto esa señal, como la combinación de A0 + IORQ, para los equipos que no tengan la señal IORQULA. ¿Lo habeis probado con un 128K español? Si no funciona, o se queda bloqueado el ordenador, entonces es esto que te cuento de la señal esa. En tal caso, se puede remediar soldando una resistencia de 470 ohmios desde IORQ hasta IORQULA, y un transistor, pongamos un BC549, con colector a +5V, base a la señal del bus de direcciones A0, y emisor a IORQULA. Todo esto se puede hacer en la propia plaquita de la interfaz de teclado, y no interfiere con los equipos que ya llevan implementada la señal IORQULA.

Por otro lado, si quereis implementar el que el teclado del Spectrum no se deshabilite cuando se pinche vuestra interfaz PS/2, poned diodos 1N4148 en la placa de la interfaz aislando los bits D0 a D4 del bus de datos con ellos. El ánodo mirando al bit del bus de datos del conector de expansión, y el cátodo mirando al bit correspondiente del bus de datos que viene desde la CPLD. De esa forma los '1' se convierten en alta impedancia y así, cuando no se esté pulsando ninguna tecla en la interfaz, el bus de datos no enviará nada a la CPU y lo que venga de la ULA, del teclado interno, sí llegará.

Quizás en la placa actual esto sea un tanto difícil, ya que prolongais el bus trasero y no puedes aislar el bus de datos para el dispositivo que pinches detrás. Habría que cortar las pistas que van desde la CPLD hasta el bus de datos, y poner ahí los diodos. Si acaso para otra revisión de la placa se puede intentar así, si os apetece.

Esto mismo se pdoría haber hecho internamente dentro de la CPLD, pero desgraciadamente, al intentarlo en el código VHDL del proyecto, el resultado ya no cabe en la CPLD que estais usando vosotros, la 9572 :( Haría falta, por lo que veo aquí, al menos una 95108 en encapsualdo PLCC-84, que también tiene zócalo, pero es un chip más grande, y más raruno que el 9572.

Re: Caja para teclado ZX Spectrum PS2

Publicado: 28 Dic 2014, 03:19
por sinclair200
mcleod_ideafix escribió:¡Qué chulada! ¿Qué tal funciona? ¿Se lleva bien con los teclados estos que son duales USB / PS2 ? ¿Y con los teclados que no soportan el scan mode 3?


Hasta ahora solo lo he probado con un antiguo teclado Logitech PS2 y va de miedo, y como tengo un adaptador PS2/USB voy a probar con otros teclados USB mas modernos que tengo.
Me alegra que te guste, máxime por que soy un gran admirador tuyo y trato de aprender sobre todas tus explicaciones y tutoriales, aunque muchas veces no te sigo, está claro que jugamos en distintas ligas...jajajaja

Re: Caja para teclado ZX Spectrum PS2

Publicado: 28 Dic 2014, 03:40
por mcleod_ideafix
sinclair200 escribió:Hasta ahora solo lo he probado con un antiguo teclado Logitech PS2 y va de miedo, y como tengo un adaptador PS2/USB voy a probar con otros teclados USB mas modernos que tengo.

Con los teclados por ejemplo de Apple no hay manera. No implementan el protocolo doble. Tampoco parece funcionar con los teclados inhalámbricos que llevan un minirreceptor USB, ya que estos suelen ser teclado + ratón, por lo que incorporan los dos periféricos en un hub virtual USB en el interior del receptor.

sinclair200 escribió:Me alegra que te guste, máxime por que soy un gran admirador tuyo y trato de aprender sobre todas tus explicaciones y tutoriales, aunque muchas veces no te sigo, está claro que jugamos en distintas ligas...jajajaja

Gracias! Precisamente este invento del adaptador de teclado PS/2 fue la primera cosa "seria" que hice para el Spectrum. Esto fue años antes de aprender sobre CPLD's y FPGA's, así que todo el invento hubo de hacerse con microcontroladores exclusivamente. Hoy día creo que de volver a hacerlo, lo haría con algún micro STM32, más baratitos que el Silicon Labs, y más baratos que una CPLD.

Re: Caja para teclado ZX Spectrum PS2

Publicado: 28 Dic 2014, 09:27
por Sinclair
mcleod_ideafix escribió:
Sinclair escribió:Como ya te he dicho, te ha quedado de miedo sinclair200.

mcleod_ideafix escribió:¡Qué chulada! ¿Qué tal funciona? ¿Se lleva bien con los teclados estos que son duales USB / PS2 ? ¿Y con los teclados que no soportan el scan mode 3?


El interface se probó en una tirada de 20 unidades que hicimos en VdR con diferentes tipos de teclados PS/2 (entre ellos algunos duales), se comporta bien y hasta la fecha nadie ha reportado ningún tipo de incompatibilidad.

Saludos.


Ah! Estupendo.

Estaba mirando el código VHDL y veo que el autor usa la señal IORQULA, que sólo está presente en el Spectrum 16K/48K (en el Harlequin está porque me puse pesado para que se incluyera, que si no, no :D ). Esta señal no está presente en el Spectrum 128K "heatsink", y no sé si en el +2 gris. Cuando Ben hizo la versión externa de mi interfaz de teclado PS/2 le pedí que no se fiara de la señal IORQULA y que usara tanto esa señal, como la combinación de A0 + IORQ, para los equipos que no tengan la señal IORQULA. ¿Lo habeis probado con un 128K español? Si no funciona, o se queda bloqueado el ordenador, entonces es esto que te cuento de la señal esa. En tal caso, se puede remediar soldando una resistencia de 470 ohmios desde IORQ hasta IORQULA, y un transistor, pongamos un BC549, con colector a +5V, base a la señal del bus de direcciones A0, y emisor a IORQULA. Todo esto se puede hacer en la propia plaquita de la interfaz de teclado, y no interfiere con los equipos que ya llevan implementada la señal IORQULA.

Por otro lado, si quereis implementar el que el teclado del Spectrum no se deshabilite cuando se pinche vuestra interfaz PS/2, poned diodos 1N4148 en la placa de la interfaz aislando los bits D0 a D4 del bus de datos con ellos. El ánodo mirando al bit del bus de datos del conector de expansión, y el cátodo mirando al bit correspondiente del bus de datos que viene desde la CPLD. De esa forma los '1' se convierten en alta impedancia y así, cuando no se esté pulsando ninguna tecla en la interfaz, el bus de datos no enviará nada a la CPU y lo que venga de la ULA, del teclado interno, sí llegará.

Quizás en la placa actual esto sea un tanto difícil, ya que prolongais el bus trasero y no puedes aislar el bus de datos para el dispositivo que pinches detrás. Habría que cortar las pistas que van desde la CPLD hasta el bus de datos, y poner ahí los diodos. Si acaso para otra revisión de la placa se puede intentar así, si os apetece.

Esto mismo se pdoría haber hecho internamente dentro de la CPLD, pero desgraciadamente, al intentarlo en el código VHDL del proyecto, el resultado ya no cabe en la CPLD que estais usando vosotros, la 9572 :( Haría falta, por lo que veo aquí, al menos una 95108 en encapsualdo PLCC-84, que también tiene zócalo, pero es un chip más grande, y más raruno que el 9572.

Pues creo recordar que el compañero Strotrasto lo probo en un 128k y funcionaba. Respecto a lo de habilidar el teclado original no le encuentro mucha lógica pero se podría modificar sin problemas el PCB para ello añadiendo unos diodos como dices.

No he probado tu interface de teclado, creo que es el que se está vendiendo en la web de Bytedelight, ¿no es asi?

Edito:
Confirmado, se probó satisfactoriamente, incluso en un gris: http://www.va-de-retro.com/foros/viewto ... 150#p37004

(Por cierto, esto si que es gastar originalidad en un día como hoy, ...adms, sois unos cachondos, jejeje)