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
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 »

@antoniovillena, otra opción a corto plazo que se podría valorar es el nuevo modelo arduino nano every, que es compatible en pineado y con 48K de flash y 6K de SRAM.

Los modelos actuales que tuvieran ya un nano de los antiguos podrían soportar un retrofit ...
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 »

Liberada la versión v1.51 de Maxduino con mejoras en la carga de los ficheros cas de DRAGON 32 y COCO.
ahora puede cargar ficheros TOSEC.

Saludos,

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, los dumpeos (.cas) de los juegos de dragon/tandy coco son un dolor... ya que hay ciertos bugs, sobre todo los juegos de tandy/coco que ha de terminar para dar el EOF en 0x55 y muchos juegos no los tienen, sin el EOF da fallo en la carga I/O error, pero aún así dar la orden de ejecución funciona perfectamente.

Un saludo.
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 v1.52 con soporte preliminar para el nuevo micro Arduino Nano Every.

Los escollos pues los de siempre.. las librerías: SDFAT (solucionado) y TimerOne que voy solucionando. :P
El nuevo micro dispone de 48K, lo que da bastante más juego. Aunque empieza a ser operativa, tengo que pulir un tema del reloj, por si alguien la quiere ir trasteando. Esta es la salida tras la compilación en la IDE:

Archiving built core (caching) in: C:\Users\Rafael\AppData\Local\Temp\arduino_cache_576650\core\core_arduino_megaavr_nona4809_mode_on_c685b38b5f89eadeafaf4113a80c81c4.a
El Sketch usa 30732 bytes (62%) del espacio de almacenamiento de programa. El máximo es 49152 bytes.
Las variables Globales usan 1902 bytes (30%) de la memoria dinámica, dejando 4242 bytes para las variables locales. El máximo es 6144 bytes.

Un pequeño video con el cacharrito en acción:

Avatar de Usuario
merlinkv
Hermano de Lucifer
Hermano de Lucifer
Mensajes: 6360
Registrado: 06 Abr 2015, 23:08
Ubicación: Madrid / Europa del Este
Has thanked: 114 times
Been thanked: 319 times
Contactar:

Re: Probando el TZXDuino

Mensaje por merlinkv »

Hola rcmolina,

No es por dar el coñazo con las Mega 2560, pero estaba buscando lo que costaban en eBay las Nano Every y mi pregunta es: ¿No son mucho más baratas las Mega 2560 Pro Embed? ... Es que estas últimas se encuentran a 6 o 7 euros ...
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, si tienes razón pero como ya te comenté nadie se anima a fabricar una placa de manera comercial . Por lo menos para mí esta tiene la ventaja de que sólo cambias el chip y te vale el diseño de la placa anterior También estoy seguro que no tardarán en clonarlo.

Resumiendo, mientras nadie se anime con algún prototipo decente con el Mega2560 que pueda comprar y centrarme en el desarrollo no me queda otra. Llevamos dos años con el proyecto y en el foro hay un montón de especialistas en hw pero ninguno ha dado el paso de construir un kit con el mega2560.

Saludos,

Rafa
Avatar de Usuario
merlinkv
Hermano de Lucifer
Hermano de Lucifer
Mensajes: 6360
Registrado: 06 Abr 2015, 23:08
Ubicación: Madrid / Europa del Este
Has thanked: 114 times
Been thanked: 319 times
Contactar:

Re: Probando el TZXDuino

Mensaje por merlinkv »

Hola rcmolina,

Pues mira ya que llevo unas semanillas trasteando con el KiCad para ponerme las pilas con su funcionamiento. Voy a ver si, tomando como base los diseños basados en Nano, diseño una PCB para el Mega 2560 Pro Embed ...

Ya te contaré. :)

Edito: El diseño que pretendo hacer (según mi tiempo), será una especie de "shield" para la Mega 2560 Pro Embed.
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
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 rafa, ante todo enhorabuena por la gran actualización que has generado con el nuevo microcontrolador Arduino nano Every Atmaga 4809.

acabo de realizar pruebas de compilación con las siguientes configuraciones del user-config.h

define Use_MENU // removing menu saves space
#define Use_CAS // .cas files playback on MSX / Dragon / CoCo Tandy computers
#define Use_DRAGON
#define Use_Dragon_sLeader // short Leader of 0x55 allowed for loading TOSEC files
#define Use_UEF // .uef files playback on BBC Micro / Electron / Atom computers
#define Use_c112 // integer gap chunk for .uef
#define Use_hqUEF // .hq.uef files playback on BBC Micro / Electron / Atom computers
#define Use_c104 // defined tape format data block: data bits per packet/parity/stop bits
//#define Use_c114 // security cycles replaced with carrier tone
//#define Use_c116 // floating point gap chunk for .hq.uef

#ifdef __AVR_ATmega4809__
//#define SERIALSCREEN // For testing and debugging

#define LCD_I2C_ADDR 0x27 // Set the i2c address of your 1602LCD usually 0x27
#define LCDSCREEN16x2 // Set if you are using a 1602 LCD screen

//#define OLED_SETCONTRAS 0xcf // Override default value inside Diplay.ino, bigger to increase output current per segment
//#define OLED1306 // Set if you are using OLED 1306 display
//#define OLED1306_128_64 // 128x64 resolution with 8 rows
//#define OLED1106_1_3 // Use this line as well if you have a 1.3" OLED screen
#else //__AVR_ATmega328P__
//#define SERIALSCREEN // For testing and debugging

//#define LCD_I2C_ADDR 0x27 // Set the i2c address of your 1602LCD usually 0x27
//#define LCD_I2C_ADDR 0x3f // Set the i2c address of your 1602LCD usually 0x3f
//#define LCDSCREEN16x2 // Set if you are using a 1602 LCD screen

//#define OLED_SETCONTRAS 0xcf // Override default value inside Diplay.ino, bigger to increase output current per segment
//#define OLED1306 // Set if you are using OLED 1306 display
//#define OLED1306_128_64 // 128x64 resolution with 8 rows
//#define OLED1106_1_3 // Use this line as well if you have a 1.3" OLED screen
//#define P8544 // Set if you are Display Nokia 5110 display
#endif

63% 31334 bytes almacenamiento y 30% 1903 bytes de memoria dinámica.

#ifdef __AVR_ATmega4809__
//#define SERIALSCREEN // For testing and debugging

//#define LCD_I2C_ADDR 0x27 // Set the i2c address of your 1602LCD usually 0x27
//#define LCDSCREEN16x2 // Set if you are using a 1602 LCD screen

//#define OLED_SETCONTRAS 0xcf // Override default value inside Diplay.ino, bigger to increase output current per segment
#define OLED1306 // Set if you are using OLED 1306 display
#define OLED1306_128_64 // 128x64 resolution with 8 rows
//#define OLED1106_1_3 // Use this line as well if you have a 1.3" OLED screen
#else //__AVR_ATmega328P__
//#define SERIALSCREEN // For testing and debugging

//#define LCD_I2C_ADDR 0x27 // Set the i2c address of your 1602LCD usually 0x27
//#define LCD_I2C_ADDR 0x3f // Set the i2c address of your 1602LCD usually 0x3f
//#define LCDSCREEN16x2 // Set if you are using a 1602 LCD screen

//#define OLED_SETCONTRAS 0xcf // Override default value inside Diplay.ino, bigger to increase output current per segment
//#define OLED1306 // Set if you are using OLED 1306 display
//#define OLED1306_128_64 // 128x64 resolution with 8 rows
//#define OLED1106_1_3 // Use this line as well if you have a 1.3" OLED screen
//#define P8544 // Set if you are Display Nokia 5110 display
#endif

65% 32412 bytes de espacio y 30% 1981 bytes de memoria dinámica

añaniendo OLED 1306 LED1306_128_64 y #define Use_c114 #define Use_c116

66% y 32652 bytes de espacio y 30% 1891 bytes de memoria dinámica.

en resumen, dichas compilaciones está bastante bien de espacio de trabajo.

También he realizado las primeras pruebas en MSX con Arduino Nano Every con el formato TSX (lo primero que tenía a mano y rápido:
velocidad máxima actual: hasta 2400 baudios de manera estable en cargas de msx en formato TSX, velocidades 3600 y superiores no funciona correctamente.
probado en ordenador MSX Sony HB-75P.

un saludo.
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 »

Gracias Alfredo por las pruebas,

¿observas problemas con las pausas?

Hay un tema con el reloj pero todavía hay más cosas que arreglar ... el rejoj del TCB se coge del TCA. y esto genera que las órdenes delay() micro() y millis() se vean afectadas (y lo más alucinante es que las configuracines de pre-scaling son diferentes en los dos tipos.
Ya lo contaré más despacio, como todo esta parte también tiene tiene su solución.

Bueno, que está muy verde aunque mola que vaya ya cargando.

Saludetes
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 »

si, escuchando los pilot tone y tonos de datos entre ambas no genera la pausa correcta, es demasiado seguida, pero realizando pruebas en MSX y ZX Spectrum lo tolera bastante bien.

acabo de realizar pruebas en ZX Spectrum realizando cargas con ficheros tzx, en robocop cargando perfectamente, Gryzor con turbo loader Speed Lock en ID11 (ID 11 - Turbo Speed Data Block) no funciona correctamente.
El juego donkey kong tampoco me ha funcionado correctamente.

En resumen, partiendo del ID10 Standard speed data block parece que esta bastante estable
los ID 11 Turbo speed data block juegos como donkey kong y gryzor me ha generado fallos en carga.
ID 4B kansas City Standard en MSX ha funcionado correctamente hasta 2400 baudios.

Un saludo.
Responder

Volver a “Proyectos de hardware abiertos”