Probando el TZXDuino [y CASDuino, MaxDuino,...]

Proyectos de hardware con sus esquemáticos y si llevan software en fuente

Moderadores: cacharreo, Fundadores

Reglas del Foro
Aquí solo tienen cabida proyectos de hardware que incluyan siempre al menos sus esquemáticos para poder reproducirlos si llevan componentes electrónicos, y si es posible los ficheros del programa en que se hacen, los diseños de las placas, los gerber, etc. Si llevan algún tipo de software asociado debe estar diponible el código fuente

Para los que no cumplen estas condiciones se debe postear en el foro de proyectos generales.
Avatar de Usuario
merlinkv
Hermano de Lucifer
Hermano de Lucifer
Mensajes: 6349
Registrado: 06 Abr 2015, 23:08
Ubicación: Madrid / Europa del Este
Has thanked: 113 times
Been thanked: 316 times
Contactar:

Re: Probando el TZXDuino

Mensaje por merlinkv »

Al final he conseguido dos Mega 2560 Pro Embed (que llevan el USB-UART) de RobotDyn, a ver si tengo tiempo y me pongo a trastear ... ;)
No sé como será la tercera Guerra Mundial. Pero sí sé como será la cuarta: Con palos y piedras.
Aquí yace un valiente, un temible adversario y un verdadero hombre de honor. Descanse en paz. 21-04-1918
Visita mi Github igual te gusta algo.
Avatar de Usuario
rcmolina
Demonio tercer orden
Demonio tercer orden
Mensajes: 515
Registrado: 07 Feb 2016, 10:27
Been thanked: 7 times

Re: Probando el TZXDuino

Mensaje por rcmolina »

@merlinkv, que buena pinta el Mega 2560 Pro Embed !!

He dejado en https://github.com/rcmolina/MaxDuino_BETA

la versión 1.38, básicamente permite jugar también con eliminar el código de los cas para msx .. quitando el menú, los cas de MSX y los uef de lso Acorn se te queda en un 80%, que ya admite seguir haciendo algún desarrollo nuevo. :D
Avatar de Usuario
rcmolina
Demonio tercer orden
Demonio tercer orden
Mensajes: 515
Registrado: 07 Feb 2016, 10:27
Been thanked: 7 times

Re: Probando el TZXDuino

Mensaje por rcmolina »

Maxduino v.1.39

https://github.com/rcmolina/MaxDuino

+Soporte parcial de los .hq.uef en los acorn. En los BBC micro permite cargar los juegos de Ultimate.
+sketch reorganizado y nuevo userconfig.h para facilitar la configuración del usuario.
Avatar de Usuario
acf76es
Demonio tercer orden
Demonio tercer orden
Mensajes: 829
Registrado: 03 Nov 2014, 22:48
Ubicación: Cantabria
Has thanked: 1 time
Been thanked: 39 times

Re: Probando el TZXDuino

Mensaje por acf76es »

saludos, un video demostrativo del funcionamiento en las cargas de juegos en Acorn Electron con la nueva implementación del sporte hq.uef.

debido a problemas de incompatibilidad de mi BBC Micro B+ por su versión de OS no he podido generar videos de la misma.

adjunto enlace:

Avatar de Usuario
spark2k06
Demonio segundo orden
Demonio segundo orden
Mensajes: 1048
Registrado: 16 Oct 2017, 10:18
Has thanked: 9 times
Been thanked: 6 times
Contactar:

Re: Probando el TZXDuino

Mensaje por spark2k06 »

A raíz de una sugerencia por parte de yoxxxoy, usuario de Sugarless +2 y tzxduino reloaded compatible con éste, he implementado un nuevo modo de tipo "SalvaPantallas". Es activable de forma opcional mediante defines:

https://github.com/spark2k06/MaxDuino_v ... 9d523b1cd9

Lo comparto para quien le pueda interesar, y por si se considera interesante para añadir a la rama principal del proyecto de maxduino.
Avatar de Usuario
rcmolina
Demonio tercer orden
Demonio tercer orden
Mensajes: 515
Registrado: 07 Feb 2016, 10:27
Been thanked: 7 times

Re: Probando el TZXDuino

Mensaje por rcmolina »

@spark2k06 , lo pruebo y lo incorporamos ya a la beta 1.41

La beta 1.40 la liberé ayer, y Alfredo la ha probado esta mañana con video en su página web, por lo que ya la he pasado a oficial:



.. falta un video, con la carga de 3 juegos Ultimate Play the Game en los Acorn, espero que no tarde. Por cierto una chulada, como se cargan las pantallas. Adjunto un collage para abrir boca :)

+ Ahorro de un 5% al compilar el sketch para LCD, (consumo excesivo de la función String).
+ Implementado en modo pausa el uso del botón menú (root) para cambiar sobre la marcha la polaridad/control de velocidad en tzx/(des)activar modo turbo para los ficheros .uef de los Acorn.
* Acorn: Re-implementado el chunk 116 (pausa en coma flotante), con una mejor conversión a entero en milisegundos.


saludos,
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.
Última edición por rcmolina el 23 Jun 2018, 05:56, editado 5 veces en total.
Avatar de Usuario
rcmolina
Demonio tercer orden
Demonio tercer orden
Mensajes: 515
Registrado: 07 Feb 2016, 10:27
Been thanked: 7 times

Re: Probando el TZXDuino

Mensaje por rcmolina »

@spark2k06, ¿y no es un riesgo para la pantalla dejar el logo fijo al principio?

¿no sería mejor implementar algún efecto persiana o borrado lateral? Tengo dudas según leo:

https://elandroidelibre.elespanol.com/2 ... tarlo.html
No es el fin del mundo, solo ten cuidado

"Sobre todo, nunca dejes una imagen fija. Es lo que pasa en dispositivos de tiendas de telefonía con pantalla OLED que se pasan horas y horas mostrando lo mismo y acaban deteriorándose".

:o
Avatar de Usuario
spark2k06
Demonio segundo orden
Demonio segundo orden
Mensajes: 1048
Registrado: 16 Oct 2017, 10:18
Has thanked: 9 times
Been thanked: 6 times
Contactar:

Re: Probando el TZXDuino

Mensaje por spark2k06 »

Tienes razon, si se queda fija se podría quemar... pero eso imagino que sucedería si se queda muchas horas. En la parte del código que se queda a la espera con un while... no se podría hacer modificaciones rápidas de pixeles aleatorios que vuelvan al estado original sin que el ojo lo aprecie mucho... o que cada vez que se cumpla el timeout definido (60 segundos en mi caso) se vuelva a hacer un refresco de la pantalla? No se, se te ocurre alguna otra cosa así que pueda minimizar en estos casos? que como digo, sería para evitar dejarlo ahí encendido horas y horas... supongo que para un uso normal no pasaría nada.

Por cierto, podrías añadir un par de logos mas de sugarless diseñados por yoxxxoy?

display.ino

#ifdef SUGARLESS_1
// 'Sugarless1_128x32'
const byte logo [] PROGMEM = {
0x00, 0x00, 0x00, 0x00, 0xE0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0,
0xA0, 0x00, 0xE0, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x00,
0x00, 0xE0, 0xE0, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0xE0, 0xE0, 0x00, 0x00,
0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xE0, 0xE0, 0x00, 0xE0, 0xE0,
0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x00, 0xF8, 0xF8, 0x00,
0xE0, 0xE0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xE0, 0x00, 0x00, 0xE0,
0xE0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0x00, 0x00, 0xE0, 0xA0,
0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x42, 0x42, 0x42, 0x42, 0x42, 0xC2, 0xC2, 0x02, 0x42, 0x43,
0x83, 0x80, 0x03, 0x03, 0x82, 0x42, 0x42, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0xC3, 0xC0,
0x00, 0x0B, 0x0B, 0x0A, 0xCA, 0x8A, 0x8A, 0x0A, 0x0A, 0x0A, 0x0A, 0xCA, 0x4F, 0x4F, 0x40, 0x40,
0x43, 0x42, 0x42, 0x82, 0x82, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x03, 0x03, 0x00, 0x03, 0x03,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x00,
0x03, 0x03, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x00, 0x00, 0x02,
0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x03, 0x00, 0x00, 0x02, 0x02,
0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x06, 0x06, 0x05, 0x05, 0x04, 0x04, 0x04, 0x04, 0x04,
0x02, 0x02, 0x01, 0x01, 0x02, 0x04, 0x04, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x03, 0x03,
0x04, 0x04, 0x04, 0x04, 0x03, 0x00, 0x00, 0x01, 0x01, 0x02, 0x02, 0x07, 0x00, 0x00, 0x03, 0x03,
0x04, 0x04, 0x04, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
#endif

#ifdef SUGARLESS_2
// 'Maxduino3_128x32'
const byte logo [] PROGMEM = {
0x00, 0x00, 0x00, 0x80, 0xC0, 0xE0, 0xF0, 0xF8, 0xFC, 0x3C, 0x1E, 0x1E, 0x0E, 0x0E, 0x8F, 0x4F,
0x8F, 0x0F, 0x0E, 0x0E, 0x1E, 0x1E, 0x3C, 0x7C, 0xF8, 0xF0, 0xE0, 0xC0, 0x80, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04,
0xFC, 0x04, 0x04, 0x00, 0x04, 0x84, 0x64, 0x34, 0x0C, 0x04, 0x00, 0x04, 0x8C, 0x70, 0x70, 0x8C,
0x04, 0x00, 0x00, 0xFC, 0x04, 0x04, 0x04, 0x8C, 0xF8, 0x00, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x00,
0x00, 0xFC, 0x00, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x00, 0xFC, 0x08, 0x30, 0x40, 0x80, 0xFC, 0x00,
0x00, 0x00, 0xF8, 0x8C, 0x04, 0x04, 0x8C, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0xC0, 0xFC, 0xFF, 0xFF, 0x0F, 0x07, 0x07, 0x0F, 0x1F, 0xBF, 0xFE, 0x7E, 0xFC, 0xFA, 0xF1, 0xE0,
0xE0, 0xD9, 0x86, 0x04, 0x88, 0x50, 0x60, 0x10, 0x20, 0x41, 0x83, 0x0F, 0xFF, 0xFF, 0xFC, 0x80,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x20, 0x20, 0x20, 0x40, 0x00, 0x00,
0x01, 0xE0, 0x00, 0x00, 0x01, 0x01, 0xE1, 0x01, 0x01, 0x01, 0xC0, 0x61, 0x21, 0x20, 0x20, 0x41,
0x01, 0x00, 0x00, 0x01, 0xC1, 0x21, 0xC1, 0x01, 0x00, 0x00, 0x00, 0xE0, 0x20, 0x21, 0x21, 0xC1,
0x01, 0x00, 0x00, 0xE0, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0xE0, 0x20, 0x20, 0x20, 0x21, 0x00,
0x00, 0x00, 0xC0, 0x21, 0x21, 0x21, 0x41, 0x00, 0x00, 0x00, 0xC0, 0x20, 0x20, 0x20, 0x40, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x03, 0x3F, 0xFF, 0xFF, 0xF0, 0xC0, 0x80, 0x76, 0x89, 0x10, 0x10, 0xE0, 0x10, 0x89, 0x47, 0x3F,
0x07, 0xDF, 0x9F, 0x3F, 0x3E, 0xFE, 0xFC, 0xFC, 0xF2, 0xE1, 0xEE, 0xF0, 0xFF, 0xFF, 0x3F, 0x01,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x09, 0x09, 0x09, 0x06, 0x00, 0x00,
0x00, 0x07, 0x08, 0x08, 0x08, 0x08, 0x07, 0x00, 0x00, 0x00, 0x07, 0x0C, 0x08, 0x09, 0x09, 0x07,
0x00, 0x00, 0x08, 0x07, 0x02, 0x02, 0x02, 0x07, 0x08, 0x00, 0x00, 0x0F, 0x01, 0x01, 0x03, 0x04,
0x08, 0x00, 0x00, 0x0F, 0x08, 0x08, 0x08, 0x08, 0x00, 0x00, 0x0F, 0x09, 0x09, 0x09, 0x09, 0x00,
0x00, 0x00, 0x04, 0x09, 0x09, 0x09, 0x06, 0x00, 0x00, 0x00, 0x04, 0x09, 0x09, 0x09, 0x06, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x0F, 0x1F, 0x3E, 0x3D, 0x79, 0x7A, 0x71, 0x70, 0x70, 0xF0,
0xF0, 0x70, 0x70, 0x71, 0x79, 0x78, 0x3C, 0x3F, 0x1F, 0x0F, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x41, 0x61, 0x59, 0x4D, 0x43, 0x41, 0x00, 0x41,
0x63, 0x1C, 0x1C, 0x63, 0x41, 0x00, 0x00, 0x3F, 0x40, 0x40, 0x40, 0x40, 0x3F, 0x00, 0x00, 0x00,
0x7F, 0x02, 0x0C, 0x10, 0x20, 0x7F, 0x00, 0x00, 0x00, 0x3E, 0x63, 0x41, 0x41, 0x63, 0x3E, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
#endif

userconfig.h

//#define SUGARLESS_1 1 //YoxxxoY
//#define SUGARLESS_2 1 //YoxxxoY
Avatar de Usuario
rcmolina
Demonio tercer orden
Demonio tercer orden
Mensajes: 515
Registrado: 07 Feb 2016, 10:27
Been thanked: 7 times

Re: Probando el TZXDuino

Mensaje por rcmolina »

@spark2k06 , ya he abierto la 1.41 beta: https://github.com/rcmolina/MaxDuino_BETA

y he metido los logos de Sugarless

Si estás de acuerdo, le voy a dar un vuelta al tema del refresco, te comento en el foro y cuando lo tengamos cerrado lo subo a la beta.
Avatar de Usuario
spark2k06
Demonio segundo orden
Demonio segundo orden
Mensajes: 1048
Registrado: 16 Oct 2017, 10:18
Has thanked: 9 times
Been thanked: 6 times
Contactar:

Re: Probando el TZXDuino

Mensaje por spark2k06 »

Perfecto. Puestos a hacer un salvapantallas de verdad, pensemos que ahora mismo, la solución que planteo y dejarlo como está es lo mismo, al menos para la OLED, imagino que con la LCD 16x2 da igual, ¿por qué? Pues porque si alguien se deja el tzxduino encendido sin estar cargando, la imagen también está fija... y si no se hace nada y se deja así durante muchas horas, también se podría quemar, no? Se me ocurre algo, el funcionamiento del salvapantallas actual, el mismo, pero si pasado un tiempo adicional (pongamos el definido por TIMEOUT x 5), se apaga la pantalla, eso sí es un salvapantallas de verdad. Y por último, llevar el timeout también al menú de maxduino, que ahí no lo he añadido, y alguien podría quedarse en dicho menú y no hacer ninguna acción durante horas :-)
Responder

Volver a “Proyectos de hardware abiertos”