Muy bueno 👍🏻 tengo el emulador de Spectrum en la Raspberry, pero esta solución es muuucho más compacta y cómoda, y me deja libre la RPi si quiero jugar. Incluso estoy pensando hacérmelo para llevármelo en la maleta de vacaciones. Gracias. P.D.: no entiendo que alguien le haya podido dar al “no me gusta” 😒
Yo también aluciné... entré en contacto con el ESP32 por trabajo, lo utilizábamos como módulo de comunicaciones de un sistema más grande, recibía datos por bluetooth y wifi y los enviaba por un enlace serie a otro microcontrolador. Cuando vi que podía generar señal de vídeo, recibir entrada de teclado y, en definitiva, funcionar como un ordenador completo, ahí fue cuando aluciné ;-)
Uf, con lo complicado y arriesgado que es montar un negocio. Estas cosas son proyectos caseros, yo no me liaría la manta a la cabeza con algo así a no ser que ya estuviera en un negocio similar... A sí que no hay más remedio que montárselo uno mismo o recurrir a un familiar o amigo habilidoso...
Después de ver la entrevista con Víctor en el canal del Spectrumero Javi Ortiz, he recordado que tenía este vídeo en favoritos y quería volverlo a ver. Gran proyecto el ESPectrum 😊
Es una chulada, la verdad. Lo uso bastante para jugar a algunos juegos difíciles, haciendo snapshots. Ya me contarás si te haces el montaje. Un saludo.
Genial el proyecto, cada día me sorprendo más de lo que se puede usar para emulación!! Pero creo que para mi nivel de habilidades mejor empiezo con una Raspberry aunque sea la Zero :) Ya estoy buscando un teclado como ese, igual me sería mejor con conexión USB :))
Hay opciones de emulación para todos los gustos, aquí te dejo un vídeo mío para la Raspberry. ruclips.net/video/1dwUrC5ooDg/видео.html Y si quieres complicarte aún menos, te sugiero que busques BOBcera.
En principio sirve cualquier ESP32 (no los ESP32-S2 que solo tienen 1 core y menos RAM). Aunque tampoco te lo puedo asegurar al 100%, yo he usado los Devkit de Espressif, y es preferible la versión con PSRAM (los WRover), para poder emular modos de 128K. También me gusta el Lilygo que viene con los conectores PS/2 (y el levelshifter, y el VGA, y el DAC R/2R) todo ya montado.
Supongo que sí, que basta con un transistor de características parecidas. Aunque si fuera a hacer el montaje ahora, en lugar de fabricarme el convertidor de niveles, compraría uno ya hecho, por ejemplo: www.sparkfun.com/products/12009
Thank you! Where can I find more info on hardware options and requirements? Specifically the ESP32 WROOM. There seem to be many variations. Any leads would be welcome. Thank you again.
Hello, and thanks for your interest. This project has evolved into another one, the ESPectrum project. Please check here: zxespectrum.speccy.org/ (in spanish but you can use google translate) Telegram group: t.me/ZXESPectrum Currently runs on lilygo TTGO VGA32, Olimex-ESP32-SBC-FabGL, and Antonio Villena's ESPectrum board which fits into a Spectrum 48K case and uses the membrane keyboard. The ESPectrum emulator firmware is far more advanced than this old project, but you still can create your own board using an ESP32 and auxiliary electronics. Some people in the Telegram group is doing that.
@@Davidprograma Hi David, thank you for all the info and leads. I misunderstood originally. I first thought you needed TTGO VGA32 + ESP32 WROOM. (or other ESP32 board) So just one ESP32 board? (is my understanding)
@@darynsmith4938 Yes, just _one_ ESP32 board. The easiest way is a TTGO VGA32 with everything built-in (VGA, PS/2, SD and audio) and ready to use. The other way is use a ESP32 WRover DevKit (the one with PSRam) and connect everything yourself using the GPIOs, using R-2R DACs for VGA, logic level converters for PS/2 and wiring the SD and audio. Here is (old) a video for the lilygo: ruclips.net/video/GXHBrQVTfBw/видео.html
El proyecto ESPectrum es la continuación y mejora de este proyecto: zxespectrum.speccy.org/ Y entre otras muchas cosas, carga TAPs a velocidad estándar, se ven las líneas y se oyen los tonos de carga.
Hola David. Gracias por el video. Tengo algunas dudas sobre el proyecto, se podria usar teclado con ficha din, o sea teclados viejos de pc (antes de ps2) tecnicamente tendria que ser lo mismo?, El dispositivo viene con lector de tarjetas microsd?. Se podrian leer archivos TAP ademas de (z80 y SNA) o hay que convertir todo? Tengo mas preguntas sobre el emulador pero te las podria preguntar por mensaje privado. Muchas gracias desde ya.
Hola German. No estoy seguro al 100%, pero creo que podría funcionar un teclado viejo con din (en su día utilicé adaptadores de din a ps2 y viceversa), y creo que eléctricamente son iguales. Esta placa no viene con lector de microsd, pero se puede adaptar (eso sí, hay que modificar el firmware para darle soporte). He hecho otro vídeo sobre una placa china que trae lector de microsd integrado pero no lo uso por la misma razón. En cuanto a formatos de emulador, únicamente soporto SNA porque es lo más sencillo de cargar (únicamente es un volcado de la memoria y el estado de los registros en el momento de la instantánea) y no hay que involucrar a las rutinas de carga. Podría soportar también .Z80 que es también un snapshot, pero con distinta cabecera, lo pensaré. Así que hay que convertirlo todo a SNA. Puedes escribirme por privado a mi usuario de github (el de mi repositorio con el proyecto) arroba gmail punto com.
@@Davidprograma David. Muchisimas gracias por contestar tan prontamente. En el mensaje privado te voy a escribir sobre el objetivo del desarrollo del dispositivo que pienso crear, en base a tu video. Es para un proyecto qu tengo en puertas.
@@Davidprograma Se ve muy bueno el emulador, es una lástima que no soporte formatos .tap o .tzx, ya que hay un gran porcentaje de juegos que tienen carga por niveles, y no podríamos jugarlos correctamente. Ojalá sigas desarrollando y actualizando el emulador. Gracias!
En realidad, el emulador se sigue actualizando, sólo que no soy yo el desarrollador principal. Échale un vistazo a zxespectrum.speccy.org/ o al canal de telegram t.me/ZXESPectrum
I'm sorry, I'm not using Arduino IDE for this project, but PlatformIO. I consider Arduino IDE is best suited for "toy projects" with just a few source code files. But this project has lots of source files and is best managed from a more "serious" IDE like PlatformIO. Anyway, it might be possible to use Arduino IDE for compiling this project, but I'm not providing support about how to do it (first of all, because I have not tried, due to what I think about Arduino IDE not suited for big projects).
Una ESP32 no tiene un gran consumo energético... posiblemente dure muchas horas alimentada por usb con un powerbank normal a 5V. El problema es la pantalla, será complicado encontrar una pantalla con entrada VGA que consuma poco y se pueda alimentar con baterías.
Estoy empezando con el tema arduino y me crié con un SPECTRUM 48k, ¿se puede realizar con un ESP8266? mas que nada porque tengo una sin dar uso... Gracias por el aporte.
Hay un adaptador de joystick DB9 a PS2, busca ESPJoy Antonio Villena. Funciona en placas Lilygo, Olimex y Antonio Villena. Más información en el grupo de Telegram "ESPectrum". En cuanto a otros emus para ESP32, Ackerman tiene unos cuantos, detalles en retrowiki: retrowiki.es/viewforum.php?f=114
El proyecto me parece muy interesante, pero me gustaría replicarlo en una caja que tengo de un zx spectrum + de inves y poder usar el teclado original. Podrías ayudarme, pues he podico leer algo, pero no se exactamente como realizarlo.
Tendrías que hacerte con unos conectores de cinta de teclado como los del proyecto del ZXBaremulator y conectarlo a 5+8 pines del ESP32. Creo que se queda sin pines y tendrías que sacar únicamente RGB 3 bits (sin brillo). En el código del ZX-ESPectrum-Wiimote está previsto, mediante el #define ZX_KEYB_PRESENT. Hace tiempo lo probé con un teclado de Spectrum real y funcionaba. Hay que desactivar teclado PS/2 y revisar que no haya colisión de pines (que un pin se use para dos cosas). Es factible, pero hay que saber cacharrear y estar decidido a dedicarle algo de tiempo.
You can look the pins up in the file hardpins.h from the repository code. You can even change the pins at your convenience, but beware, not all pins can be used for anything, as stated in the ESP32 docs.
Hola David. El proyecto está genial. Estoy intentarno replicarlo, lo cargo en el ESP32 (Devkitc V4) con Platformio sin problemas, hago todas las conexiones VGA al monitor... pero en pantalla no aparece la señal. No tengo ni idea de qué hago mal, no sé si a alguien más le ha pasado.
El código está preparado para ello. En hardconfig.h habría que comentar USE_INT_FLASH y descomentar USE_SD_CARD. Además habría que conectar al ESP32 una ranura para microSD (o soldar directamente sobre un adaptador SD a microSD) y conectarle 6 pines: alimentación (+3.3V y GND), CS, CLK, MISO y MOSI. En hardpins.h habria que designar dichos pines indicando a qué pin se ha conectado SDCARD_CS, SDCARD_CLK, SDCARD_MISO y SDCARD_MOSI. Habría que tener cuidado de 1) no asignar pines que ya estuvieran asignados y 2) mirar un pinout de ESP32 para saber qué pines se pueden usar y cuales no; los hay que son sólo entrada (GPIO 34 a 39), mejor usar los designados como entrada/salida. Una vez hechos estos cambios, recompilar y flashear. Por último, formatear una tarjeta en Fat32 y copiar el contenido de la carpeta data (el contenido, no la carpeta) a la tarjeta. Los juegos irían en /sna (formatos .sna o .z80).
Curioso... tengo un Spectrum 128K con fallos en la RAM, podría intentar arreglarlo, o bien hacer algún invento con él. De Jeri me ha interesado el vídeo sobre protección de sobrecorriente y polaridad inversa, ya me he cargado más de un cacharro por cosas de esas...
Good day. I'm trying to connect a microsd to download games. cs - 5 di - 23 do - 19 clk - 18 #define SDCARD_CS 5 #define SDCARD_MOSI 23 #define SDCARD_MISO 19 #define SDCARD_CLK 18 When testing card reading from arduino studio - everything goes with a bang, all folders and files are displayed. when starting the project - I get an error while loading: Rebooting... ets Jul 29 2019 12:21:46 rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT) configsip: 0, SPIWP:0xee clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00 mode:DIO, clock div:2 load:0x3fff0018,len:4 load:0x3fff001c,len:1044 load:0x40078000,len:10124 load:0x40080400,len:5828 entry 0x400806a8 ZX-ESPectrum + Wiimote initializing... Running on little endian CPU Initalizing VGA PSRAM size: 4194252 Free heap at begin of setup: 221304 Free heap after wiimote: 201720 Initializing external storage... [E][sd_diskio.cpp:194] sdCommand(): Card Failed! cmd: 0x00 [E][sd_diskio.cpp:775] sdcard_mount(): f_mount failed: (3) The physical drive cannot work [E][sd_diskio.cpp:194] sdCommand(): Card Failed! cmd: 0x00 Card Mount Failed Cannot mount external storage! /home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/freertos/queue.c:719 (xQueueGenericSend)- assert failed! abort() was called at PC 0x400986c2 on core 1 ELF file SHA256: 0000000000000000 Backtrace: 0x40097aa8:0x3ffcbce0 0x40097d21:0x3ffcbd00 0x400986c2:0x3ffcbd20 0x400d5ead:0x3ffcbd60 0x400d7954:0x3ffcbd80 0x400d8612:0x3ffcbda0 0x40084562:0x3ffcbdd0 0x400d55ab:0x3ffcbe10 0x400e51cf:0x3ffcbeb0 0x400e9a02:0x3ffcbed0 0x40098d66:0x3ffcbef0 Rebooting...
@@Davidprograma cierto, cierto. Y mira que lo había visto en ti canal. Estaba pensando en algo peque como el esp32, supongo que una pi3 ya estará baratita
Este no lleva ranura de tarjetas microsd... lleva una flash interna de 4MB. Con el esquema de particiones que se usa, quedan 3MB para juegos, a ~48Kb por juego de Spectrum 48K en formato SNA, da para unos 60 juegos.
Hola, de momento no he visto emulador de MSX para la ESP32, pero sí para Amstrad, Commodore y bastantes sistemas más. Ackerman en RetroWiki está haciendo un gran trabajo portando emuladores a ESP32, te dejo aquí un enlace: retrowiki.es/viewtopic.php?f=86&t=200036016&sid=2e4cea2f8047c8455a57fe8f807ad810
Sí, únicamente. Es lo que tenía a mano y es lo que le pude programar. El código está disponible, a disposición de quien quiera modificarlo y añadirle soporte para lo que desee.
Hello Pavel, first of all, I have not tested the code with a DevKit ESP32, but with a chinese Lilygo TTGo VGA32 which comes with the microSD slot already connected to pins stated in original hardpins.h. There may be another components (ex: capacitors, resistors) connected somewhere. Check this schematic: www.retrowiki.es/download/file.php?style=14&id=200021273&sid=6ca73f184b442bb1c112b307303af6af But in the other comment you say you could access files on SD from Arduino Studio... so the only thing I may imagine to cause the problem is if you are reusing the same pin for more than one purpose; check the hardpins.h file and make sure to use every one of the CS, MISO, MOSI, CLK pin numbers just once. Also, make sure to un#define any feature you are not using (EAR, MIC, ZX_KEYB...) Even if you are using every pin number for only one purpose, try to change pins, sometimes not every pin is suitable for any purpose, or there may be something in the coding repurposing any of the pins you are using for SD. Also, which board are you using? I have used Espressif DevKit v4 boards, some with WRoom, some with WRover.
@@Davidprograma Found a problem. Tied to pin 13 for a straight line, a small error in the code. corrected and it all worked :) FileUtils.cpp line 80 #if (!SD.begin(13, customSPI, 4000000, "/sd")) { if (!SD.begin(SDCARD_CS, customSPI, 4000000, "/sd")) {
dont know if anyone gives a damn but if you're stoned like me atm then you can stream pretty much all the latest movies and series on instaflixxer. I've been watching with my brother for the last few months :)
😳 flipante
☺️👍❤️ Gran trabajo
Pedazo de video 😉👍
Muy bueno 👍🏻 tengo el emulador de Spectrum en la Raspberry, pero esta solución es muuucho más compacta y cómoda, y me deja libre la RPi si quiero jugar. Incluso estoy pensando hacérmelo para llevármelo en la maleta de vacaciones. Gracias.
P.D.: no entiendo que alguien le haya podido dar al “no me gusta” 😒
Impresionante ! Estoy empezando con el ESP32, y viendo estas cosas alucino
Yo también aluciné... entré en contacto con el ESP32 por trabajo, lo utilizábamos como módulo de comunicaciones de un sistema más grande, recibía datos por bluetooth y wifi y los enviaba por un enlace serie a otro microcontrolador. Cuando vi que podía generar señal de vídeo, recibir entrada de teclado y, en definitiva, funcionar como un ordenador completo, ahí fue cuando aluciné ;-)
Just found your channel. Excellent Content - another sub for you sir!
Que guapo David!!! Pero estas cosas tendría que comercializarse....😅
Uf, con lo complicado y arriesgado que es montar un negocio. Estas cosas son proyectos caseros, yo no me liaría la manta a la cabeza con algo así a no ser que ya estuviera en un negocio similar... A sí que no hay más remedio que montárselo uno mismo o recurrir a un familiar o amigo habilidoso...
Después de ver la entrevista con Víctor en el canal del Spectrumero Javi Ortiz, he recordado que tenía este vídeo en favoritos y quería volverlo a ver.
Gran proyecto el ESPectrum 😊
Y lo que ha mejorado desde el vídeo 🤩
@@Davidprogramasi, muchísimo. Deseando ver vuestro directo del viernes
Vaya proyecto más chulo. Es probable que siga tus pasos. Tienes un suscriptor más. Gracias por el vídeo...
Es una chulada, la verdad. Lo uso bastante para jugar a algunos juegos difíciles, haciendo snapshots. Ya me contarás si te haces el montaje. Un saludo.
Gracias por compartir tu proyecto, yo soy dele Brasil e aprecio mucho tu videos
Genial el proyecto, cada día me sorprendo más de lo que se puede usar para emulación!! Pero creo que para mi nivel de habilidades mejor empiezo con una Raspberry aunque sea la Zero :) Ya estoy buscando un teclado como ese, igual me sería mejor con conexión USB :))
Hay opciones de emulación para todos los gustos, aquí te dejo un vídeo mío para la Raspberry.
ruclips.net/video/1dwUrC5ooDg/видео.html
Y si quieres complicarte aún menos, te sugiero que busques BOBcera.
Buenísimo vídeo. Muchas gracias por compartir
Impresionante..... Felicidades.!
That tutorial looks really well done 👍
Sadly i do not understand Spanish. Right now, i wish i could 😅
Just activate the subtitles. English and Spanish ones are hand-made and adjusted, not autogenerated ;-)
@@Davidprograma oh, thanks
I'll give it a try 👍
Espectacular. Saludos desde Chile.
fantastic my friend
great job
Muchísimas Gracias por compartir !!
Eres un maquina...ya me he subscrito
Impresionante.
eres un crack chaval estoy impresionado.mucho XD
Gracias! Me alegro de que te haya gustado :D
Muy bien explicado. Espero montarlo yo. ;)
¿Sirve cualquier ESP-32 o solo el modelo que indicas?
En principio sirve cualquier ESP32 (no los ESP32-S2 que solo tienen 1 core y menos RAM). Aunque tampoco te lo puedo asegurar al 100%, yo he usado los Devkit de Espressif, y es preferible la versión con PSRAM (los WRover), para poder emular modos de 128K. También me gusta el Lilygo que viene con los conectores PS/2 (y el levelshifter, y el VGA, y el DAC R/2R) todo ya montado.
Simplemente epico
Muy buen vídeo!! Para el transistor MOSFET del teclado se puede usar cualquier otro modelo, no?
Supongo que sí, que basta con un transistor de características parecidas. Aunque si fuera a hacer el montaje ahora, en lugar de fabricarme el convertidor de niveles, compraría uno ya hecho, por ejemplo:
www.sparkfun.com/products/12009
@@Davidprograma perfecto!! Esos usaré. Mil gracias!!
Excelente !!!!
Great Work!
Thanks!
Thank you! Where can I find more info on hardware options and requirements? Specifically the ESP32 WROOM. There seem to be many variations. Any leads would be welcome. Thank you again.
Hello, and thanks for your interest. This project has evolved into another one, the ESPectrum project. Please check here:
zxespectrum.speccy.org/
(in spanish but you can use google translate)
Telegram group:
t.me/ZXESPectrum
Currently runs on lilygo TTGO VGA32, Olimex-ESP32-SBC-FabGL, and Antonio Villena's ESPectrum board which fits into a Spectrum 48K case and uses the membrane keyboard.
The ESPectrum emulator firmware is far more advanced than this old project, but you still can create your own board using an ESP32 and auxiliary electronics. Some people in the Telegram group is doing that.
@@Davidprograma Hi David, thank you for all the info and leads. I misunderstood originally. I first thought you needed TTGO VGA32 + ESP32 WROOM. (or other ESP32 board) So just one ESP32 board? (is my understanding)
@@darynsmith4938 Yes, just _one_ ESP32 board. The easiest way is a TTGO VGA32 with everything built-in (VGA, PS/2, SD and audio) and ready to use. The other way is use a ESP32 WRover DevKit (the one with PSRam) and connect everything yourself using the GPIOs, using R-2R DACs for VGA, logic level converters for PS/2 and wiring the SD and audio.
Here is (old) a video for the lilygo:
ruclips.net/video/GXHBrQVTfBw/видео.html
@@Davidprograma Thank you David, awesome! Really appreciate the info.
Genial tu proyecto! Existe alguna versión del software que muestre el proceso de carga completo del juego?
El proyecto ESPectrum es la continuación y mejora de este proyecto:
zxespectrum.speccy.org/
Y entre otras muchas cosas, carga TAPs a velocidad estándar, se ven las líneas y se oyen los tonos de carga.
Quiero uno de esos..
masterpiece
Это просто изумительно! Отличный результат!
Спасибо :-)
Hola David. Gracias por el video. Tengo algunas dudas sobre el proyecto, se podria usar teclado con ficha din, o sea teclados viejos de pc (antes de ps2) tecnicamente tendria que ser lo mismo?, El dispositivo viene con lector de tarjetas microsd?. Se podrian leer archivos TAP ademas de (z80 y SNA) o hay que convertir todo? Tengo mas preguntas sobre el emulador pero te las podria preguntar por mensaje privado. Muchas gracias desde ya.
Hola German. No estoy seguro al 100%, pero creo que podría funcionar un teclado viejo con din (en su día utilicé adaptadores de din a ps2 y viceversa), y creo que eléctricamente son iguales. Esta placa no viene con lector de microsd, pero se puede adaptar (eso sí, hay que modificar el firmware para darle soporte). He hecho otro vídeo sobre una placa china que trae lector de microsd integrado pero no lo uso por la misma razón. En cuanto a formatos de emulador, únicamente soporto SNA porque es lo más sencillo de cargar (únicamente es un volcado de la memoria y el estado de los registros en el momento de la instantánea) y no hay que involucrar a las rutinas de carga. Podría soportar también .Z80 que es también un snapshot, pero con distinta cabecera, lo pensaré. Así que hay que convertirlo todo a SNA. Puedes escribirme por privado a mi usuario de github (el de mi repositorio con el proyecto) arroba gmail punto com.
@@Davidprograma David. Muchisimas gracias por contestar tan prontamente. En el mensaje privado te voy a escribir sobre el objetivo del desarrollo del dispositivo que pienso crear, en base a tu video. Es para un proyecto qu tengo en puertas.
@@Davidprograma Se ve muy bueno el emulador, es una lástima que no soporte formatos .tap o .tzx, ya que hay un gran porcentaje de juegos que tienen carga por niveles, y no podríamos jugarlos correctamente.
Ojalá sigas desarrollando y actualizando el emulador. Gracias!
En realidad, el emulador se sigue actualizando, sólo que no soy yo el desarrollador principal. Échale un vistazo a zxespectrum.speccy.org/ o al canal de telegram t.me/ZXESPectrum
Hola,
Muy Bueno el video!!
Se puede Utilizar un teclado USB ?
No, no se puede. Un saludo
Amazing! I saw your improved version with sd card and AY-3-8910 sound. Can you made video how it works? I think it's a huge step from this version.
Thanks! This ESP32-into-keyboard project has no SD card, I may try to install it inside the keyboard, but there is little space left.
How you load libary IDE Arduino ?
In my case not work
I'm sorry, I'm not using Arduino IDE for this project, but PlatformIO. I consider Arduino IDE is best suited for "toy projects" with just a few source code files. But this project has lots of source files and is best managed from a more "serious" IDE like PlatformIO.
Anyway, it might be possible to use Arduino IDE for compiling this project, but I'm not providing support about how to do it (first of all, because I have not tried, due to what I think about Arduino IDE not suited for big projects).
no hay que colocarle resistencias al cable vga ?
me gustaría pueda ayudarme y saber como puedo hacer lo mismo pero portátil.
Una ESP32 no tiene un gran consumo energético... posiblemente dure muchas horas alimentada por usb con un powerbank normal a 5V. El problema es la pantalla, será complicado encontrar una pantalla con entrada VGA que consuma poco y se pueda alimentar con baterías.
by the way , circuit of wired project where i can download please thanks
Круто. Просто супер !!!!
Спасибо, наслаждайтесь!
Estoy empezando con el tema arduino y me crié con un SPECTRUM 48k, ¿se puede realizar con un ESP8266? mas que nada porque tengo una sin dar uso...
Gracias por el aporte.
Buscando en google he encontrado esto:
github.com/aldolo69/esp8266_zxspectrum_emulator
Eso sí, no lo he probado ni se si funciona. Un saludo.
@@Davidprograma muchas gracias por responder, espero nuevos aportes de su parte.
sabes si funciona con algun joystic o cosa asi? sabes si hay algo asi con otros pc? tipo amstrad?
Hay un adaptador de joystick DB9 a PS2, busca ESPJoy Antonio Villena. Funciona en placas Lilygo, Olimex y Antonio Villena. Más información en el grupo de Telegram "ESPectrum".
En cuanto a otros emus para ESP32, Ackerman tiene unos cuantos, detalles en retrowiki:
retrowiki.es/viewforum.php?f=114
El proyecto me parece muy interesante, pero me gustaría replicarlo en una caja que tengo de un zx spectrum + de inves y poder usar el teclado original. Podrías ayudarme, pues he podico leer algo, pero no se exactamente como realizarlo.
Tendrías que hacerte con unos conectores de cinta de teclado como los del proyecto del ZXBaremulator y conectarlo a 5+8 pines del ESP32. Creo que se queda sin pines y tendrías que sacar únicamente RGB 3 bits (sin brillo). En el código del ZX-ESPectrum-Wiimote está previsto, mediante el #define ZX_KEYB_PRESENT. Hace tiempo lo probé con un teclado de Spectrum real y funcionaba. Hay que desactivar teclado PS/2 y revisar que no haya colisión de pines (que un pin se use para dos cosas). Es factible, pero hay que saber cacharrear y estar decidido a dedicarle algo de tiempo.
Eu posso adaptar um teclado usb nesse projeto
Can I have an exact wiring diagram for the controller? Which pin to connect to? The video is not very clear ... :(
You can look the pins up in the file hardpins.h from the repository code. You can even change the pins at your convenience, but beware, not all pins can be used for anything, as stated in the ESP32 docs.
Hola David. El proyecto está genial. Estoy intentarno replicarlo, lo cargo en el ESP32 (Devkitc V4) con Platformio sin problemas, hago todas las conexiones VGA al monitor... pero en pantalla no aparece la señal. No tengo ni idea de qué hago mal, no sé si a alguien más le ha pasado.
Hola, siento que no te funcione a la primera. ¿Puedes hacer un monitor en el platformio y pasarme el log de depuración?
y sabes si se puede o como se puede, añadir algún modulo de micro sd para poder añadir mas juegos?
El código está preparado para ello. En hardconfig.h habría que comentar USE_INT_FLASH y descomentar USE_SD_CARD. Además habría que conectar al ESP32 una ranura para microSD (o soldar directamente sobre un adaptador SD a microSD) y conectarle 6 pines: alimentación (+3.3V y GND), CS, CLK, MISO y MOSI. En hardpins.h habria que designar dichos pines indicando a qué pin se ha conectado SDCARD_CS, SDCARD_CLK, SDCARD_MISO y SDCARD_MOSI. Habría que tener cuidado de 1) no asignar pines que ya estuvieran asignados y 2) mirar un pinout de ESP32 para saber qué pines se pueden usar y cuales no; los hay que son sólo entrada (GPIO 34 a 39), mejor usar los designados como entrada/salida.
Una vez hechos estos cambios, recompilar y flashear. Por último, formatear una tarjeta en Fat32 y copiar el contenido de la carpeta data (el contenido, no la carpeta) a la tarjeta. Los juegos irían en /sna (formatos .sna o .z80).
Esp8266 funcionaria para el proyecto?
No, no tiene suficiente memoria RAM.
Like ! You +AY music ?
Has AY emu.
Joder que máquina... Para cuando algo como esto?
ruclips.net/video/_kDhpFaf4EY/видео.html
En tu caso podría ser guitarra más Spectrum...
Curioso... tengo un Spectrum 128K con fallos en la RAM, podría intentar arreglarlo, o bien hacer algún invento con él. De Jeri me ha interesado el vídeo sobre protección de sobrecorriente y polaridad inversa, ya me he cargado más de un cacharro por cosas de esas...
Good day. I'm trying to connect a microsd to download games.
cs - 5
di - 23
do - 19
clk - 18
#define SDCARD_CS 5
#define SDCARD_MOSI 23
#define SDCARD_MISO 19
#define SDCARD_CLK 18
When testing card reading from arduino studio - everything goes with a bang, all folders and files are displayed.
when starting the project - I get an error while loading:
Rebooting...
ets Jul 29 2019 12:21:46
rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0018,len:4
load:0x3fff001c,len:1044
load:0x40078000,len:10124
load:0x40080400,len:5828
entry 0x400806a8
ZX-ESPectrum + Wiimote initializing...
Running on little endian CPU
Initalizing VGA
PSRAM size: 4194252
Free heap at begin of setup: 221304
Free heap after wiimote: 201720
Initializing external storage...
[E][sd_diskio.cpp:194] sdCommand(): Card Failed! cmd: 0x00
[E][sd_diskio.cpp:775] sdcard_mount(): f_mount failed: (3) The physical drive cannot work
[E][sd_diskio.cpp:194] sdCommand(): Card Failed! cmd: 0x00
Card Mount Failed
Cannot mount external storage!
/home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/freertos/queue.c:719 (xQueueGenericSend)- assert failed!
abort() was called at PC 0x400986c2 on core 1
ELF file SHA256: 0000000000000000
Backtrace: 0x40097aa8:0x3ffcbce0 0x40097d21:0x3ffcbd00 0x400986c2:0x3ffcbd20 0x400d5ead:0x3ffcbd60 0x400d7954:0x3ffcbd80 0x400d8612:0x3ffcbda0 0x40084562:0x3ffcbdd0 0x400d55ab:0x3ffcbe10 0x400e51cf:0x3ffcbeb0 0x400e9a02:0x3ffcbed0 0x40098d66:0x3ffcbef0
Rebooting...
Hay algo similar pero para HDMI?
Zxbaremulator
@@Davidprograma cierto, cierto. Y mira que lo había visto en ti canal. Estaba pensando en algo peque como el esp32, supongo que una pi3 ya estará baratita
de cuánto la Micro.sd 4 .. 6 Gb ??
es para ver si tengo o compro SD
me voy a picar en hacer uno 😸
Este no lleva ranura de tarjetas microsd... lleva una flash interna de 4MB. Con el esquema de particiones que se usa, quedan 3MB para juegos, a ~48Kb por juego de Spectrum 48K en formato SNA, da para unos 60 juegos.
@@Davidprograma aaah
gracias , pues a comprar
A ver cuándo hacen uno así pero para MSX
Hola, de momento no he visto emulador de MSX para la ESP32, pero sí para Amstrad, Commodore y bastantes sistemas más. Ackerman en RetroWiki está haciendo un gran trabajo portando emuladores a ESP32, te dejo aquí un enlace:
retrowiki.es/viewtopic.php?f=86&t=200036016&sid=2e4cea2f8047c8455a57fe8f807ad810
solo admite el mando de la wii?
Sí, únicamente. Es lo que tenía a mano y es lo que le pude programar. El código está disponible, a disposición de quien quiera modificarlo y añadirle soporte para lo que desee.
@@Davidprograma a vale perfecto entonces muchas gracias, saludos
Tell me what could be the problem ?
Hello Pavel, first of all, I have not tested the code with a DevKit ESP32, but with a chinese Lilygo TTGo VGA32 which comes with the microSD slot already connected to pins stated in original hardpins.h. There may be another components (ex: capacitors, resistors) connected somewhere. Check this schematic:
www.retrowiki.es/download/file.php?style=14&id=200021273&sid=6ca73f184b442bb1c112b307303af6af
But in the other comment you say you could access files on SD from Arduino Studio... so the only thing I may imagine to cause the problem is if you are reusing the same pin for more than one purpose; check the hardpins.h file and make sure to use every one of the CS, MISO, MOSI, CLK pin numbers just once. Also, make sure to un#define any feature you are not using (EAR, MIC, ZX_KEYB...)
Even if you are using every pin number for only one purpose, try to change pins, sometimes not every pin is suitable for any purpose, or there may be something in the coding repurposing any of the pins you are using for SD.
Also, which board are you using? I have used Espressif DevKit v4 boards, some with WRoom, some with WRover.
@@Davidprograma
Found a problem.
Tied to pin 13 for a straight line, a small error in the code. corrected and it all worked :)
FileUtils.cpp
line 80
#if (!SD.begin(13, customSPI, 4000000, "/sd")) {
if (!SD.begin(SDCARD_CS, customSPI, 4000000, "/sd")) {
@@pbadun Yes, that was a bug, thank you for finding it :-)
I have already fixed it in the repo. Thanks again!
hey great work. can you please provide the circuit diagram of the connections. it would mean alot
Perfect! Great job!
dont know if anyone gives a damn but if you're stoned like me atm then you can stream pretty much all the latest movies and series on instaflixxer. I've been watching with my brother for the last few months :)
@Davian Jabari Definitely, I have been watching on InstaFlixxer for years myself =)
@Davian Jabari Yup, have been watching on instaflixxer for months myself :D