Página 90 de 119

Re: Probando el TZXDuino

Publicado: 18 Ago 2019, 18:13
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,


Re: Probando el TZXDuino

Publicado: 19 Ago 2019, 21:38
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.

Re: Probando el TZXDuino

Publicado: 01 Sep 2019, 13:09
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:


Re: Probando el TZXDuino

Publicado: 02 Sep 2019, 05:31
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 ...

Re: Probando el TZXDuino

Publicado: 02 Sep 2019, 06:12
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

Re: Probando el TZXDuino

Publicado: 02 Sep 2019, 09:46
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.

Re: Probando el TZXDuino

Publicado: 02 Sep 2019, 21:21
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.

Re: Probando el TZXDuino

Publicado: 02 Sep 2019, 22:30
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

Re: Probando el TZXDuino

Publicado: 03 Sep 2019, 20:59
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.

Re: Probando el TZXDuino

Publicado: 05 Sep 2019, 20:21
por acf76es
Saludos, realizadas pruebas en Acorn Electron juegos Pedro y Citadel_hq, pruebas satisfactorias y correctas, pero al activar el modo turbo no ha funcionado.

Seguiremos realizando pruebas