Se recuerda a los Nuevos Usuarios Registrados que es obligatorio pasarse por el hilo de Presentaciones y que, para poder descargar archivos,
se han de escribir un mínimo de cuatro mensajes en el Foro. Muchas gracias por vuestra colaboración y un saludo. La Administración.

New Registered Users are reminded that it is mandatory to visit the Introductions thread and that, in order to be able to download files,
a minimum of four messages must be written in the Forum. Thank you very much for your collaboration and best regards. The Administration.


Por Telegram también estamos...

Proyectos y Diseños RetroMegaDuino - MaxDuino basado en Mega2560 Pro Embed

Apartado dedicado a proyectos y diseños hardware del mundillo Retro que no se incluyen en los apartados anteriores.
Califica este tema
Responder
Avatar de Usuario
droman
Colaborador
Colaborador
Mensajes: 1620
Registrado: 28 Jun 2019 09:25
Ubicación: En algún lugar cerca de Null
Ha agradecido: 276 veces
Agradecido: 451 veces
Contactar:
    Linux Chrome

#461 Re: MegaDuino - MaxDuino basado en Mega2560 Pro Embed

Mensaje por droman »

merlinkv esta mañana estoy un poco espeso, lo siento, ese código que he puesto, que funciona seguro, se puede optimizar de la manera más tonta.

Código: Seleccionar todo

	#ifdef LCD16
            String filename2 = fileName;
            lcd.setCursor(0,0); lcd.print("                ");
            lcd.setCursor(0,0); lcd.print(filename2.substring(0,16)); 
            lcd.setCursor(0,1); lcd.print("Playing         ");    // Unimos las lineas de espacios de borrado con el texto.
         #endif 
         #ifdef LCD20
            String filename2 = fileName;
            lcd.setCursor(0,0); lcd.print("                    ");
            lcd.setCursor(0,0); lcd.print(filename2.substring(0,20));
            lcd.setCursor(0,1); lcd.print("Playing             "); // Unimos las lineas de espacios de borrado con el texto.
         #endif 
Con esta tontería de actulización nos ahorramos dos refrescos de pantalla que tanto latazo dan. Perdón por no haberlo visto antes.


"La muerte, segura de su victoria, nos da toda la vida de ventaja"
"Las fotografías de los que viajan, son la cultura de los que se quedan"
Avatar de Usuario
merlinkv
Administrador
Administrador
Mensajes: 6082
Registrado: 17 Nov 2018 18:38
Ubicación: España / Europa del Este
Ha agradecido: 865 veces
Agradecido: 1510 veces
Contactar:
    Windows 10 Firefox

#462 Re: MegaDuino - MaxDuino basado en Mega2560 Pro Embed

Mensaje por merlinkv »

Hola droman

Prueba mejor con ésto:

Código: Seleccionar todo

         #ifdef LCD16
            String filename2 = fileName;
            lcd.setCursor(0,0); lcd.print("                ");
            lcd.setCursor(0,0); lcd.print(filename2.substring(0,16));
            lcd.setCursor(0,1); lcd.print("                ");                     
            lcd.setCursor(0,1); lcd.print("Playing");
            lcd.setCursor(9,1); lcd.print(newpct); lcd.print("%");
            lcd.setCursor(14,1); lcd.print("000");
            if (lcdsegs % CNTRBASE != 0){itoa(lcdsegs%CNTRBASE,PlayBytes,10);lcd.setCursor(15,1);lcd.print(PlayBytes);} // // recálculo de decenas ... 10,20,30,40,50,60,70,80,90,110,120,..
              else 
                if (lcdsegs % (CNTRBASE*10) != 0) {itoa(lcdsegs%(CNTRBASE*10)/CNTRBASE*100,PlayBytes,10);lcd.setCursor(14,1);lcd.print(PlayBytes);} // recálculo de centenas ... 100,200,300,400,500,600,700,800,900,1100, ...
           lcdsegs++;                
         #endif 
         #ifdef LCD20
            String filename2 = fileName;
            lcd.setCursor(0,0); lcd.print("                    ");
            lcd.setCursor(0,0); lcd.print(filename2.substring(0,20));
            lcd.setCursor(0,1); lcd.print("                    ");            
            lcd.setCursor(0,1); lcd.print("Playing");
            lcd.setCursor(11,1); lcd.print(newpct); lcd.print("%");
            lcd.setCursor(17,1); lcd.print("000");
            if (lcdsegs % CNTRBASE != 0){itoa(lcdsegs%CNTRBASE,PlayBytes,10);lcd.setCursor(18,1);lcd.print(PlayBytes);} // recálculo de decenas ... 10,20,30,40,50,60,70,80,90,110,120,..
              else 
                if (lcdsegs % (CNTRBASE*10) != 0) {itoa(lcdsegs%(CNTRBASE*10)/CNTRBASE*100,PlayBytes,10);lcd.setCursor(17,1);lcd.print(PlayBytes);} // recálculo de centenas ... 100,200,300,400,500,600,700,800,900,1100, ...
           lcdsegs++;
         #endif
Quedarían como líneas 833 a 858.

:hola1:


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
droman
Colaborador
Colaborador
Mensajes: 1620
Registrado: 28 Jun 2019 09:25
Ubicación: En algún lugar cerca de Null
Ha agradecido: 276 veces
Agradecido: 451 veces
Contactar:
    Android Chrome

#463 Re: MegaDuino - MaxDuino basado en Mega2560 Pro Embed

Mensaje por droman »

Podió que pofessioná... lo miro esta tarde que me tienen que dejar el ordena... sin simular un infarto...


"La muerte, segura de su victoria, nos da toda la vida de ventaja"
"Las fotografías de los que viajan, son la cultura de los que se quedan"
Avatar de Usuario
merlinkv
Administrador
Administrador
Mensajes: 6082
Registrado: 17 Nov 2018 18:38
Ubicación: España / Europa del Este
Ha agradecido: 865 veces
Agradecido: 1510 veces
Contactar:
    Windows 10 Firefox

#464 Re: MegaDuino - MaxDuino basado en Mega2560 Pro Embed

Mensaje por merlinkv »

droman escribió: 03 Mar 2021 18:47Podió que pofessioná...
:carcajada1: :carcajada1: :carcajada1:

Ya quisiera yo. :sarcastico1:

No, lo que pasaba con la línea en blanco (al menos a mí) es que, no se recuperaban correctamente los contadores de %, las centenas y las decenas. Por eso los he puesto, como van sincronizados con la rutina general de reproducción, no se "pierden" vueltas ni porcentajes.

El problema de las LCD es que con 2 y 4 líneas a veces se complica el tema "visual" ... :sarcastico1: :sarcastico1:

Míralo cuando pueda y a ver qué te parece.

Las pruebas las estoy haciendo con un CPC6128 y ficheros CDT.

:beber1:


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
merlinkv
Administrador
Administrador
Mensajes: 6082
Registrado: 17 Nov 2018 18:38
Ubicación: España / Europa del Este
Ha agradecido: 865 veces
Agradecido: 1510 veces
Contactar:
    Windows 10 Firefox

#465 Re: MegaDuino - MaxDuino basado en Mega2560 Pro Embed

Mensaje por merlinkv »

Y si ves algún error o que puede quedar mejor, pls, dímelo.

:bien1:


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
merlinkv
Administrador
Administrador
Mensajes: 6082
Registrado: 17 Nov 2018 18:38
Ubicación: España / Europa del Este
Ha agradecido: 865 veces
Agradecido: 1510 veces
Contactar:
    Windows 10 Firefox

#466 Re: MegaDuino - MaxDuino basado en Mega2560 Pro Embed

Mensaje por merlinkv »

Acabo de ver que si en un equipo con Remote y con las LCD, pulsabas STOP y le dabas otra vez al Play ... no se recuperaba bien.

Un par de pequeños cambios ... quedan como líneas 635-653

Código: Seleccionar todo

if(digitalRead(btnStop)==LOW && start==1
  #ifdef btnRoot_AS_PIVOT
    && digitalRead(btnRoot)
  #endif
  ){      
  stopFile();
  debounce(btnStop);
  #ifdef LCD16
    lcd.setCursor(0,1); lcd.print("                ");  
  #endif  
  #ifdef LCD20
    lcd.setCursor(0,1); lcd.print("                    ");  
    LCDBStatusLine();
  #endif
  #ifdef OLED1306
    OledStatusLine();
  #endif     
  ltoa(filesize,PlayBytes,10);printtext(strcat_P(PlayBytes,PSTR(" bytes")),1);  
  }


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
droman
Colaborador
Colaborador
Mensajes: 1620
Registrado: 28 Jun 2019 09:25
Ubicación: En algún lugar cerca de Null
Ha agradecido: 276 veces
Agradecido: 451 veces
Contactar:
    Windows 10 Chrome

#467 Re: MegaDuino - MaxDuino basado en Mega2560 Pro Embed

Mensaje por droman »

merlinkv escribió: 03 Mar 2021 19:22 Y si ves algún error o que puede quedar mejor, pls, dímelo.

:bien1:
Hay un problema al mostrar el porcentaje... a veces. pone: Playing 1%% 001
Creo que habría que formatear la variable newpct para que tenga formato de 2 dígitos y evitar ese error, cuando llega a 10% se soluciona.


"La muerte, segura de su victoria, nos da toda la vida de ventaja"
"Las fotografías de los que viajan, son la cultura de los que se quedan"
Avatar de Usuario
merlinkv
Administrador
Administrador
Mensajes: 6082
Registrado: 17 Nov 2018 18:38
Ubicación: España / Europa del Este
Ha agradecido: 865 veces
Agradecido: 1510 veces
Contactar:
    Windows 10 Firefox

#468 Re: MegaDuino - MaxDuino basado en Mega2560 Pro Embed

Mensaje por merlinkv »

¿Te has bajado lo último? .... Lo subí hace menos de una hora ....

Lo he vuelto a subir ahora ... :sarcastico1: :sarcastico1:


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
droman
Colaborador
Colaborador
Mensajes: 1620
Registrado: 28 Jun 2019 09:25
Ubicación: En algún lugar cerca de Null
Ha agradecido: 276 veces
Agradecido: 451 veces
Contactar:
    Windows 10 Chrome

#469 Re: MegaDuino - MaxDuino basado en Mega2560 Pro Embed

Mensaje por droman »

merlinkv escribió: 03 Mar 2021 20:24 ¿Te has bajado lo último? .... Lo subí hace menos de una hora ....

Lo he vuelto a subir ahora ... :sarcastico1: :sarcastico1:
Si, lo he visto así que he actualizado con lo tuyo y algo habría mal en el mío aún que ya está resuelto.
No, sigue saliendo el % dos veces en algunas ocasiones, siempre con porcentajes inferiores a 10.

Aún así, he eliminado dos líneas de tu código (que era una cagada mía) para que no haya tantos cambios en pantalla.
Basicamente he cambiado lo que te he comentado antes, dos líneas por 1 en cada pantalla.

Código: Seleccionar todo


//El ejemplo es para LCD20, para LCD16 es igual, pero con 16 espacios, logicamente
//Estas dos lineas
lcd.setCursor(0,1); lcd.print("                    ");
lcd.setCursor(0,1); lcd.print("Playing");

// Por esta línea
lcd.setCursor(0,1); lcd.print("Playing             ");

No es que vayas a tener sitio como para implementar salida HiFi... pero dos refrescos menos para la pantalla :)


"La muerte, segura de su victoria, nos da toda la vida de ventaja"
"Las fotografías de los que viajan, son la cultura de los que se quedan"
Avatar de Usuario
merlinkv
Administrador
Administrador
Mensajes: 6082
Registrado: 17 Nov 2018 18:38
Ubicación: España / Europa del Este
Ha agradecido: 865 veces
Agradecido: 1510 veces
Contactar:
    Windows 10 Firefox

#470 Re: MegaDuino - MaxDuino basado en Mega2560 Pro Embed

Mensaje por merlinkv »

Buena idea, voy a ponerlo y veré si hay más líneas parecidas para cambiarlas.


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
droman
Colaborador
Colaborador
Mensajes: 1620
Registrado: 28 Jun 2019 09:25
Ubicación: En algún lugar cerca de Null
Ha agradecido: 276 veces
Agradecido: 451 veces
Contactar:
    Windows 10 Chrome

#471 Re: MegaDuino - MaxDuino basado en Mega2560 Pro Embed

Mensaje por droman »

Soy muy torpe. Intento hacer el formateo de la cadena, al final en 3 caracteres (000% -> 100%) pero no hay manera.

Código: Seleccionar todo

	char counter[4]="   ";   //inicializo con tres espacios en blanco, el último es para el \0
	sprintf(counter,"%03d",newpct);
Pero no consigo que rule como debe.

Tengo que dejarlo por ahora... la familia reclama comida con el cuello estirao cual pajaritos hambrientos y yo tendré que cocinar algo :furioso1:


"La muerte, segura de su victoria, nos da toda la vida de ventaja"
"Las fotografías de los que viajan, son la cultura de los que se quedan"
Avatar de Usuario
merlinkv
Administrador
Administrador
Mensajes: 6082
Registrado: 17 Nov 2018 18:38
Ubicación: España / Europa del Este
Ha agradecido: 865 veces
Agradecido: 1510 veces
Contactar:
    Windows 10 Firefox

#472 Re: MegaDuino - MaxDuino basado en Mega2560 Pro Embed

Mensaje por merlinkv »

OK, tranqui, la familia es lo primero.

Un saludote.

:hola1:


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
droman
Colaborador
Colaborador
Mensajes: 1620
Registrado: 28 Jun 2019 09:25
Ubicación: En algún lugar cerca de Null
Ha agradecido: 276 veces
Agradecido: 451 veces
Contactar:
    Windows 10 Chrome

#473 Re: MegaDuino - MaxDuino basado en Mega2560 Pro Embed

Mensaje por droman »

Joé... ayer me llegó la pantalla OLED para ponerla en el MegaDuino y flipar.... Y VAYA QUE SI FLIPO!!! Me equivoqué y he pedido una de 0.93"... NO SE VE NAAAAAA jajajaja

Seguiremos con la LCD 20x4.




Hasta que me llegue la OLED de 50"... se va a cagal!


"La muerte, segura de su victoria, nos da toda la vida de ventaja"
"Las fotografías de los que viajan, son la cultura de los que se quedan"
Avatar de Usuario
merlinkv
Administrador
Administrador
Mensajes: 6082
Registrado: 17 Nov 2018 18:38
Ubicación: España / Europa del Este
Ha agradecido: 865 veces
Agradecido: 1510 veces
Contactar:
    Windows 10 Firefox

#474 Re: MegaDuino - MaxDuino basado en Mega2560 Pro Embed

Mensaje por merlinkv »

Pues una 0.93 de 128x64, debería funcionar sin problemas. Comprueba la dirección de la pantalla que puede ser 0x3C o 0x3D.

Línea 69 de MEGA2560config.h

#define OLED_address 0x3C // 0x3C or 0x3D

También comprueba que SCL y SCA estén bien conectados.


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
droman
Colaborador
Colaborador
Mensajes: 1620
Registrado: 28 Jun 2019 09:25
Ubicación: En algún lugar cerca de Null
Ha agradecido: 276 veces
Agradecido: 451 veces
Contactar:
    Windows 10 Chrome

#475 Re: MegaDuino - MaxDuino basado en Mega2560 Pro Embed

Mensaje por droman »

merlinkv escribió: 21 Mar 2021 21:06 Pues una 0.93 de 128x64, debería funcionar sin problemas. Comprueba la dirección de la pantalla que puede ser 0x3C o 0x3D.

Línea 69 de MEGA2560config.h

#define OLED_address 0x3C // 0x3C or 0x3D

También comprueba que SCL y SCA estén bien conectados.
Espera que no me he explicado... verse se ve... PERO YO NO VEO NAAAAA ES MUY PEQUEÑO TODOOOOO jajajaja


"La muerte, segura de su victoria, nos da toda la vida de ventaja"
"Las fotografías de los que viajan, son la cultura de los que se quedan"
Avatar de Usuario
merlinkv
Administrador
Administrador
Mensajes: 6082
Registrado: 17 Nov 2018 18:38
Ubicación: España / Europa del Este
Ha agradecido: 865 veces
Agradecido: 1510 veces
Contactar:
    Windows 10 Firefox

#476 Re: MegaDuino - MaxDuino basado en Mega2560 Pro Embed

Mensaje por merlinkv »

¡Ah, bueno! Que eres de Topolandia como yo .... :sarcastico1: :sarcastico1:

Yo normalmente lo uso con un OLED de 1.3" y hasta yo lo veo bien .... :sarcastico1: :sarcastico1:


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
droman
Colaborador
Colaborador
Mensajes: 1620
Registrado: 28 Jun 2019 09:25
Ubicación: En algún lugar cerca de Null
Ha agradecido: 276 veces
Agradecido: 451 veces
Contactar:
    Windows 10 Chrome

#477 Re: MegaDuino - MaxDuino basado en Mega2560 Pro Embed

Mensaje por droman »

He pedido un adaptador I2C para pantallas gráficas de 20 pines.

En cuanto lo tenga, no descarto hacerme un MegaDuinoPollatrón 1.0 con la pantalla de 128x64 retroiluminada en azul y blanco.


"La muerte, segura de su victoria, nos da toda la vida de ventaja"
"Las fotografías de los que viajan, son la cultura de los que se quedan"
Avatar de Usuario
droman
Colaborador
Colaborador
Mensajes: 1620
Registrado: 28 Jun 2019 09:25
Ubicación: En algún lugar cerca de Null
Ha agradecido: 276 veces
Agradecido: 451 veces
Contactar:
    Linux Chrome

#478 Re: MegaDuino - MaxDuino basado en Mega2560 Pro Embed

Mensaje por droman »

Una pregunta merlinkv Me preguntan en el foro del MSXVR, si el Megaduino y tiene soporte para Atari de 8bits.

:ayuda1:


"La muerte, segura de su victoria, nos da toda la vida de ventaja"
"Las fotografías de los que viajan, son la cultura de los que se quedan"
Avatar de Usuario
merlinkv
Administrador
Administrador
Mensajes: 6082
Registrado: 17 Nov 2018 18:38
Ubicación: España / Europa del Este
Ha agradecido: 865 veces
Agradecido: 1510 veces
Contactar:
    Windows 10 Firefox

#479 Re: MegaDuino - MaxDuino basado en Mega2560 Pro Embed

Mensaje por merlinkv »

Hola droman.

Pues no tengo un Atari para poder confirmártelo, pero el MegaDuino está preparado para achivos CAS por lo que cualquier juego en ese formato debiera funcionar.

Lo que si te confirmo es que no está preparado para archivos del tipo ATR, XEX, A26 y otros.

Para crear los archivos CAS, mucha gente usa A8CAS

Un ejemplo de conversión : https://www.atarinside.com/blog/index.p ... -wav-file/


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
merlinkv
Administrador
Administrador
Mensajes: 6082
Registrado: 17 Nov 2018 18:38
Ubicación: España / Europa del Este
Ha agradecido: 865 veces
Agradecido: 1510 veces
Contactar:
    Windows 10 Firefox

#480 Re: MegaDuino - MaxDuino basado en Mega2560 Pro Embed

Mensaje por merlinkv »

Hola droman.

Yo uso un cable estéreo estándar tanto en el MegaDuino PM1.2 como en el PM 1.3 ... son dos cacharro exactamente iguales solo se diferencian en que en el segundo eliminé los conectores ICSP y puse las resistencia y condensadores como SMD.

Mira el esquema del conector de Audio y remote por si te sirve. La idea es que se pueda conectar un cable estéreo o mono indistintamente.

Aquí está todo el "cotarro" ... muy sencillito.


Imagen


:hola1:


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.
Califica este tema
Responder

Últimos 25 Usuarios que han visitado este Tema

asapreta, pintza, TINGIS53, msxmakers, Pingui, _fUstEs_, merlinkv, jorsus, morenop3, cgasper79, droman, tun40, Neville, Sup3rH4L, furabolos, jul, Fidelware, NacherasTM, TorpedoJavi, Alki, Eusebio, SamJB, Bone, o0Nosferatu0o, empardopo

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 13 invitados