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
Avatar de Usuario
yoxxxoy
Mensajes: 25
Registrado: 23 Sep 2016, 23:15
Ubicación: inst:@yoxxxoy
Contactar:

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

Mensaje por yoxxxoy » 14 Jun 2018, 16:49

Ante todos quiero agradecer a Aitor @Spark2k06 por el gran esfuerzo que ha hecho para culminar este proyecto. Siempre dispuesto a aclarar cualquier duda y estudiar todas las propuestas. Este ha sido tu proyecto y lo has culminado con nota, a la vista están los resultados.

Por mi parte ha sido un placer haber colaborado con mis humildes conocimientos. Estos meses, olvidados ya los momentos de frustración, han sido sobre todo educativos y divertidos. Como resultado tenemos un gran addon para el ZXUNO.

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

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

Mensaje por spark2k06 » 12 Ene 2019, 15:48

Disponible una nueva release del firmware de Sugarless +2 aquí.

Release 2 (12/01/2019)

* Compatibilidad con gamepads famicom en Joy2PS2 mediante atajo (Extra+U -> J)
* Extra+H -> Keypad - (C64, C16, Atari 800XL, BBC Micro y Apple II: Scanlines)
* Extra+M -> Keypad * (Atari 800XL: PAL/NTSC)

Al hacer el atajo de Extra+U -> J, pasará de famicom a atari/megadrive y viceversa, mostrándose por pantalla ".JOY FAMICOM" ó ".JOY ATARISMD" y guardando la configuración en la EEPROM, de manera que la última selección se encontrará disponible en siguientes arranques.

Al igual que en el proyecto de Joy2PS2, no es necesario ningún adaptador para el funcionamiento de gamepads de tipo famicom, sólo la actualización del firmware.

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

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

Mensaje por spark2k06 » 09 Jun 2019, 08:46

Disponible última release del firmware de Sugarless +2 aquí.

Release 3 (07/06/2019)
  • * Release final
    * Migracion al nuevo sistema de ZXUnoPS2
    * Los atajos especiales de Sugarless pasan a ser los siguientes:

    CS + SS + F -> T: TZXDUINO ON / OFF
    CS + SS + F -> Q: XCHG CURSORS KBPC ON / OFF
    CS + SS + F -> W: XCHG DEL BREAK ON / OFF
    CS + SS + F -> J: Famicom <-> Atari/Megadrive
Nota: CS + SS es lo mismo que pulsar sólo EXTRA.

Al igual que el proyecto ZXUnoPS2, dejo los fuentes, binarios y resto de ficheros relativos al proyecto disponibles en un repositorio propio para facilitar su clonación o fork.

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

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

Mensaje por parax » 20 Ago 2019, 12:55

Buenas,

He parcheado recientemente mi MEGA 2560 con esta release 3 (anteriormente tenía la 1.1 del 14/05/2018), y noto varios problemas con la detección de las pulsaciones de teclas en mi +2 gris. Principalmente, parece ser que las teclas que llevan modificadores con caps shift (cursores, tecla extra, borrar...) no siempre son detectadas correctamente. Arrancando el core de Spectrum con una ROM de +2, y yendo al editor BASIC, puedo comprobar que al pulsar algunas de estas teclas a menudo se imprime únicamente el valor de la tecla principal sin el modificador CS. Por ejemplo:

* Si pulso "borrar", a menudo escribe "0".
* Si pulso cursor izquierda, a menudo escribe "5".
* Si pulso cursor derecha, a menudo escribe "8".
* Si pulso cursor abajo, a menudo escribe "6".
* Si pulso cursor arriba, a menudo escribe "7".

Si pulso la tecla en conjunto con caps shift, entonces parece que se fuerza la detección de la misma correctamente.

¿Alguna idea?
Última edición por parax el 20 Ago 2019, 13:04, editado 1 vez en total.

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

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

Mensaje por parax » 20 Ago 2019, 12:58

Y aprovecho para una pregunta tonta fruto del desconocimiento: ¿Se puede programar el MEGA 2560 conectándolo por su puerto USB sin desconectarlo de la placa Sugarless? Temo que en las distintas desconexiones / conexiones de las hileras de pines acabe cargándome alguno. Me imagino que no hay ningún problema, ¿no?

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

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

Mensaje por spark2k06 » 20 Ago 2019, 13:18

Se puede programar sin desconectarlo, sin problema. Lo del teclado, me parece raro que tenga algo que ver con el firmware, tampoco veo que los últimos cambios realizados puedan tener el efecto que comentas, no te sucede en absoluto con versiones anteriores del firmware?

Enviado desde mi Redmi 4 mediante Tapatalk

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

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

Mensaje por parax » 20 Ago 2019, 13:37

spark2k06 escribió:Lo del teclado, me parece raro que tenga algo que ver con el firmware, tampoco veo que los últimos cambios realizados puedan tener el efecto que comentas, no te sucede en absoluto con versiones anteriores del firmware?
Totalmente seguro de que no le sucede con al menos la versión previamente instalada. Acabo de reprogramar el MEGA 2560 con el hex sugarless_2560_release1_1.hex (la versión que tenía anteriormente), y el teclado funciona ahora a la perfección.

Imagen

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

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

Mensaje por spark2k06 » 20 Ago 2019, 13:46

Puesto que tu teclado corresponde a un 8x5, prueba a desactivar el define membrane13x11 en el fichero config.h, lo cuál acelerará el bucle que el AVR tiene que recorrer y por tanto se mejora el rendimiento. Adicionalmente, si el problema persiste, puedes probar a bajar el delay de teclas especiales a ver si se soluciona.Imagen

Enviado desde mi Redmi 4 mediante Tapatalk

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

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

Mensaje por parax » 20 Ago 2019, 14:41

He probado con tres versiones:

* define membrane13x11 desactivado, delay_specialkeys a su valor inicial de 250
* define membrane13x11 desactivado, delay_specialkeys cambiado a 100
* define membrane13x11 desactivado, delay_specialkeys cambiado a 20

En ninguno de los casos el problema desaparece. En un principio parece que todas estas versiones operan mejor (definitivamente, al inicio el problema no parece surgir pronto), pero al cabo de unas cuantas pulsaciones reaparecen los mismos efectos.

Intentaré echar un ojo a un diff de ambas versiones (1.1 vs 3.0) a ver qué cosas han cambiado, por si veo algo más que pudiera afectar (aunque no estoy nada familiarizado con este código).

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

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

Mensaje por parax » 20 Ago 2019, 14:54

Estoy un poco confuso. La release 1.1 parece corresponder con este punto del repositorio zxuno (la no existencia de tags en el repo lo complica un poco, pero la fecha del hex oficial era del 14/5/2018, y este es el último commit en esa fecha):

https://github.com/spark2k06/zxuno/tree ... re/sources

En esta carpeta veo un par de makefiles, los ficheros de cabecera, y un main.c cuyos comentarios al principio del fichero indican ser "Firmware Sugarless +2 (A ZX-Uno Companion) Alpha 1". Pero al mismo tiempo, hay una subcarpeta "sugarless" donde el fichero main.c pasa a ser sugarless.ino (con la misma versión Alpha 1 indicada al comienzo del código) y hay otras copias de los ficheros de cabecera.

¿Qué versión es la buena (quiero decir, aquella que se utilizó para generar el sugarless_2560_release1_1.hex)?

Responder