Sugarless +2 (A ZX-Uno Companion)

Proyectos ajenos al equipo oficial pero desarrollados o promovidos por la comunidad, relacionados con el ZX-UNO / Projects outside the official team but developed or promoted by the community, related to the ZX-UNO
parax
Mensajes: 37
Registrado: 07 Feb 2017, 23:29

Re: Sugarless +2 (A ZX-Uno Companion)

Mensaje por parax » 20 Ago 2019, 15:20

He aquí el diff, por cierto: https://pastebin.com/29hcT22L

Avatar de Usuario
spark2k06
Mensajes: 1188
Registrado: 12 Feb 2016, 13:58

Re: Sugarless +2 (A ZX-Uno Companion)

Mensaje por spark2k06 » 20 Ago 2019, 15:34

Todos los cambios estarían relacionados con los del proyecto ZXUnoPS2, más detalles aquí:

http://www.zxuno.com/forum/viewtopic.php?p=25909#p25909

Ahora bien, todo esto fue probado en teclados tipo gomas y en +2A para sugarless. La particularidad del +2 gris en cuanto a determinadas teclas especiales, como los cursores, es que la membrana de éstos hace que se puedan presionar dos teclas "al mismo tiempo", CS + la tecla correspondiente, de manera que hay algún problema en la detección de esta simultaneidad... cuestión de revisar y ajustar, seguro.

Enviado desde mi Redmi 4 mediante Tapatalk

Avatar de Usuario
spark2k06
Mensajes: 1188
Registrado: 12 Feb 2016, 13:58

Re: Sugarless +2 (A ZX-Uno Companion)

Mensaje por spark2k06 » 20 Ago 2019, 15:54

Por ejemplo, en CS+0, se estará detectando antes el 0 que el CS...y por eso se escribe el 0.

Enviado desde mi Redmi 4 mediante Tapatalk

Avatar de Usuario
spark2k06
Mensajes: 1188
Registrado: 12 Feb 2016, 13:58

Re: Sugarless +2 (A ZX-Uno Companion)

Mensaje por spark2k06 » 27 Sep 2020, 08:14

Mil disculpas por el retraso @parax, me olvidé por completo de este problema :oops:
spark2k06 escribió:
20 Ago 2019, 15:54
Por ejemplo, en CS+0, se estará detectando antes el 0 que el CS...y por eso se escribe el 0.

Enviado desde mi Redmi 4 mediante Tapatalk
He detectado exactamente cual es el problema, la clave está en este último post. Y aunque no dispongo de un teclado gris, puedo simular fácilmente su comportamiento con este tipo de teclas del gris, pulsando al mismo tiempo CS y 0, o similares.

Lo primero decirte que hay una forma de que no te suceda en el modo de teclado de Spectrum de la nueva versión alternativa, y es desactivando el modo de teclado completo con CS + SS + F -> D, después guardas la configuración en la EEPROM con CS + SS + F -> X y listo... si lo pruebas veras que te funciona a la perfección, al igual que con el firmware de teclado original.

Sin embargo, la forma de trabajar en el modo de teclado completo hará que también te suceda este problema en el resto de cores porque por defecto trabajan igual (en este firmware desactivarlo sólo es válido para Spectrum, para dar acceso al uso de esas teclas modificadoras de forma independiente).

Y la mala noticia de todo esto es que también te va a suceder con la versión original de firmware en cuanto cambies de tipo de teclado, por ejemplo pasa a modo .CPC y compruébalo por ti mismo. El motivo al final es el mismo, para imprimir caracteres especiales en otros cores, la forma de hacerlo es distinta que en el teclado original del Spectrum, primero se intercepta la pulsación de CS o SS y después el carácter especial (ya sean unas comillas, punto y coma, etc...), y lo que es muy importante, sólo en ese orden es posible su manejo.

El problema sucede con el acceso a cursores u otros accesos de tipo CS + tecla que lleva a cabo de forma simultánea la membrana de los +2 gris, en esta simultaneidad radica el problema de incompatibilidad con estos modos de teclado y me temo que no va a tener solución, al menos con el diseño base de este firmware, o si la tiene desde luego no sería nada sencilla, no tiene que ver con timmings ni nada por el estilo :( . Puedes tratar de investigar si quieres, pero verás que llegas a la misma conclusión.

En definitiva, por mi parte:

1. Tanto en el firmware de teclado original como en el alternativo, no es compatible en su totalidad con el manejo de teclados distintos al específico del Spectrum para la membrana de un teclado +2 GRIS.

2. El teclado +2A/+3 funciona correctamente también en este tipo de teclas porque son interceptadas de forma independiente, no se lleva a cabo simultaneidad de CS + tecla para su interceptación por parte del firmware.

¿Solución más eficaz para poder usar el firmware con todos los cores y sin problemas? Comprar una membrana de +2A/+3 y que se la cambies ;)

parax
Mensajes: 37
Registrado: 07 Feb 2017, 23:29

Re: Sugarless +2 (A ZX-Uno Companion)

Mensaje por parax » 27 Sep 2020, 14:57

spark2k06 escribió:
27 Sep 2020, 08:14
Mil disculpas por el retraso @parax, me olvidé por completo de este problema :oops:
Ni te preocupes. No tenías ninguna responsabilidad en hacerlo, y entendí que por lo que fuese se te complicó la cosa. Esto es una afición después de todo. Yo también lo dejé aparcado una vez restauré el firmware antiguo, ya que el Sugarless lo tengo más bien por nostalgia (por haber reutilizado el +2 gris de mi infancia, mi primer ordenador personal), pero corre con un ZX-Uno sencillo. Le he dado más uso al ZX-Go, al cual, cuando hemos querido una mejor experiencia de teclado, le hemos enchufado un PS/2.
spark2k06 escribió:
20 Ago 2019, 15:54
Lo primero decirte que hay una forma de que no te suceda en el modo de teclado de Spectrum de la nueva versión alternativa, y es desactivando el modo de teclado completo con CS + SS + F -> D, después guardas la configuración en la EEPROM con CS + SS + F -> X y listo... si lo pruebas veras que te funciona a la perfección, al igual que con el firmware de teclado original.
Vale, muchísimas gracias por la detallada explicación. O sea, que mientras el uso se limite al core de Spectrum con el modo de teclado de Spectrum (modo que puede establecerse como el modo por defecto grabándolo en EEPROM), no debería tener problemas con el nuevo firmware, y si quiero otros cores o bien cambio de membrana o bien le enchufo un teclado PS/2 y lo uso en modo de teclado completo.

Lo que no he terminado de entender es qué diferencia hay entre el modo de teclado "completo" y el modo de teclado de Spectrum. ¿Es quizás porque en las membranas de un +2A o un +3 se usan códigos independientes para estas teclas, mientras que en el caso del +2 gris estas se usan como combinación de otras como en un Spectrum original?

A ver si saco un rato para reprogramar de nuevo el ATmega y lo pruebo todo.

Una vez más, muchísimas gracias por el cable :maestro:

Avatar de Usuario
spark2k06
Mensajes: 1188
Registrado: 12 Feb 2016, 13:58

Re: Sugarless +2 (A ZX-Uno Companion)

Mensaje por spark2k06 » 27 Sep 2020, 15:39

parax escribió: Ni te preocupes. No tenías ninguna responsabilidad en hacerlo, y entendí que por lo que fuese se te complicó la cosa. Esto es una afición después de todo.
Lo sé, pero a pesar de que como ya he comentado no llevaré a cabo más desarrollos, no me gusta dejar asuntos pendientes sin cerrar ;)
parax escribió: Yo también lo dejé aparcado una vez restauré el firmware antiguo, ya que el Sugarless lo tengo más bien por nostalgia (por haber reutilizado el +2 gris de mi infancia, mi primer ordenador personal), pero corre con un ZX-Uno sencillo. Le he dado más uso al ZX-Go, al cual, cuando hemos querido una mejor experiencia de teclado, le hemos enchufado un PS/2.
El firmware alternativo te permite precisamente no depender de un teclado PS/2 externo, aunque ello pueda implicar a ser un poco más complejo su manejo.
parax escribió: Vale, muchísimas gracias por la detallada explicación. O sea, que mientras el uso se limite al core de Spectrum con el modo de teclado de Spectrum (modo que puede establecerse como el modo por defecto grabándolo en EEPROM), no debería tener problemas con el nuevo firmware, y si quiero otros cores o bien cambio de membrana o bien le enchufo un teclado PS/2 y lo uso en modo de teclado completo.
Por una parte, sí, si usas el core de Spectrum y cambias a modo teclado de Spectrum normal, o convencial como queramos llamarlo... sin modo completo, efectivamente, lo podrás usar sin problema.

Si quieres usar otros cores, en principio tampoco supone un problema su uso con la membrana del +2 Gris, lo que pasa que no podrás utilizar las teclas adicionales (adicionales a las de un gomas) pero no necesitas utilizar obligatoriamente un teclado PS/2 externo. No obstante, conociéndote la combinación correspondiente de sus CS + tecla asociadas, podrás utilizarlo de esta manera. Así que es un sí puedes, pero con restricciones... y si cambias la membrana por una de +2A/+3, se terminaron esas restricciones.

parax escribió: Lo que no he terminado de entender es qué diferencia hay entre el modo de teclado "completo" y el modo de teclado de Spectrum. ¿Es quizás porque en las membranas de un +2A o un +3 se usan códigos independientes para estas teclas, mientras que en el caso del +2 gris estas se usan como combinación de otras como en un Spectrum original?

A ver si saco un rato para reprogramar de nuevo el ATmega y lo pruebo todo.
Pues hay una diferencia importante. El teclado completo se refiere a completo equivalente a un teclado PS/2 externo, pero accesible desde el mismo firmware. Su uso implica que, al igual que sucede con el resto de modos de teclado para otros cores, se necesite utilizar CS y SS como teclas modificadoras para sacar símbolos y nuevos caracteres, y no funcionen de la forma convencional como lo hacen en un Spectrum real. @desubikado hizo un breve resumen de este modo en un PDF que está subido en la carpeta de Alternative del proyecto ZXUnoPS2:

https://github.com/spark2k06/zxunops2/b ... -GO%2B.pdf

Aunque sí que es cierto que es un poco confuso para nuevos usuarios del mismo, y no se explica con detalle. Creo que este firmware alternativo se ha quedado como el gran incomprendido, cuando realmente tiene mucho potencial, aunque ello requiera un reentrenamiento mental para hacerse con los nuevos combos necesarios para su uso y comprensión.

En definitiva, requeriría dedicar un buen tiempo al desarrollo de esa documentación detallada que haga replantearse a la gente si realmente le interesa o no dar el salto a la misma, pero con toda la información sobre ambos firmwares bien interiorizada y comprendida... esa es la verdadera tarea pendiente.
parax escribió: Una vez más, muchísimas gracias por el cable :maestro:
No hay de qué, para eso estamos ;)

Avatar de Usuario
baltasarq
Mensajes: 29
Registrado: 13 Jul 2017, 12:20
Ubicación: España
Contactar:

Re: Sugarless +2 (A ZX-Uno Companion)

Mensaje por baltasarq » 14 Jul 2021, 21:51

Hola,

Tengo una Sugarless y un ZXUno (0.59, exdos 0.8.6). Quería dar los pasos finales (hasta ahora utilizaba un teclado PS/2), y conectar el teclado del Speccy +2 a la Sugarless. Y en fin, prepararlo ya todo.

- Lo cierto es que lo conecto (las dos cintas del teclado a la parte izquierda de la sugarless), y... nada. Pero nada de nada. No funciona ni una sola tecla (con el teclado PS/2 sí)... ¿estaré haciendo algo mal? ¿Qué necesidades tiene la sugarless? ¿Será una cuestión de la membrana?

- Quería utilizar el conector PS/2 de la sugarless en lugar del conector de la ZXUno. Para ello, he visto que se conectan cables entre los pines de ambos conectores, pero... ¿son cables dupont? ¿Si lo son, cómo les quito los conectores a estos cables?

- En el repositorio del ZXUno, para bajarme el contenido de la SD (BIN y SYS), he visto que las releases son para ZX-Dos... ¿son compatibles?

Gracias,
-- Baltasar

Avatar de Usuario
spark2k06
Mensajes: 1188
Registrado: 12 Feb 2016, 13:58

Re: Sugarless +2 (A ZX-Uno Companion)

Mensaje por spark2k06 » 15 Jul 2021, 21:38

En la BIOS, tienes puesto el layout de teclado de Spectrum?

Un enlace útil es la FAQ que hizo UTO:

http://uto.speccy.org/sugarlessfaq.html

Imprescindible por supuesto también es tener el firmware del Arduino grabado y la salida PS/2 interna del sugarless conectada a la entrada PS/2 del ZXUno.

Avatar de Usuario
baltasarq
Mensajes: 29
Registrado: 13 Jul 2017, 12:20
Ubicación: España
Contactar:

Re: Sugarless +2 (A ZX-Uno Companion)

Mensaje por baltasarq » 24 Jul 2021, 22:23

Hola,
Imprescindible por supuesto también es tener el firmware del Arduino grabado y la salida PS/2 interna del sugarless conectada a la entrada PS/2 del ZXUno.
Los cables... claro, es eso (yo es que soy así). Pensaba que solo era necesario para conectar el PS/2 desde fuera, pero es obvio que si no, no hay forma de que las dos placas se comuniquen.

El cable PS/2 a PS/2 lo probé, pero ocupa demasiado y la caja no cierra.

En los dos conectores hembra PS/2, el del ZXUNO y el de la Sugarless, he conectado con cables dupont "los dos de arriba" (5, 6) y "los dos de abajo" (1, 2). Si conecto un teclado PS/2 a la sugarless (no al ZXUNO), el teclado externo funciona perfectamente, y tengo que pulsar CTRL+P para sacar las comillas, con lo que creo que está en modo Speccy. CTRL+ALT+BORRAR reinicia y CTRL+ALT+F5 saca el browser de la SD.

Sin embargo, en el propio teclado del Spectrum +2, pasa algo... muy raro. La semifila QWERTY... genera 123456..., la ASDGF QWERTY y así más o menos el resto, como si estuvieran desplazadas. Es muy raro, pq ya digo que el teclado externo funciona. A no ser que haya que conectar las cintas del teclado de alguna manera extraña, no lo entiendo.

También es curioso lo del sonido. Arranco en el SPECCY IV Anya (es el único en el que se puede teclear letra a letra con el DIVIDE activado). Si pongo una cinta en PLAY en el reproductor del +2, no pasa nada. Si utilizo un reproductor externo y lo conecto a la entrada de sonido de la sugarless (que está conectada a la ZXUNO por un jack 3.5 macho-macho), oigo el sonido de carga por la tele, pero no carga tampoco.

-- Baltasar

Avatar de Usuario
spark2k06
Mensajes: 1188
Registrado: 12 Feb 2016, 13:58

Re: Sugarless +2 (A ZX-Uno Companion)

Mensaje por spark2k06 » 25 Jul 2021, 12:06

baltasarq escribió:
24 Jul 2021, 22:23

Sin embargo, en el propio teclado del Spectrum +2, pasa algo... muy raro. La semifila QWERTY... genera 123456..., la ASDGF QWERTY y así más o menos el resto, como si estuvieran desplazadas. Es muy raro, pq ya digo que el teclado externo funciona. A no ser que haya que conectar las cintas del teclado de alguna manera extraña, no lo entiendo.
Si estás utilizando el teclado de un +2 gris es fácil que hayas podido conectar las fajas desplazadas. El sugarless tiene los conectores para fajas de 11/13 de los +2A, si utilizas la del +2 serán de 8/5, y debes conectarlas al inicio de éstas, asegúrate de ello, pasa una foto para que vea cómo lo tienes conectado si no...

También es curioso lo del sonido. Arranco en el SPECCY IV Anya (es el único en el que se puede teclear letra a letra con el DIVIDE activado). Si pongo una cinta en PLAY en el reproductor del +2, no pasa nada. Si utilizo un reproductor externo y lo conecto a la entrada de sonido de la sugarless (que está conectada a la ZXUNO por un jack 3.5 macho-macho), oigo el sonido de carga por la tele, pero no carga tampoco.
Para que cargue con la cinta de un +2 gris, revisa los jumpers que hacen referencia a la cinta, es distinto también para éstos que para los +2A. Respecto al Jack que se oye pero no carga, mira a ver si no lo has conectado a la salida de audio en lugar del Jack de EAR.

https://github.com/spark2k06/ZXUnoCompa ... rs_CFG.png

Responder