~10 euros ZX Spectrum Emulator [eng subs]

แชร์
ฝัง
  • เผยแพร่เมื่อ 5 ส.ค. 2024
  • [Update] The project has advanced a lot since this video was published.
    The emulator is now more mature and has more features. More info in zxespectrum.speccy.org/
    For about 10 euros, you could have a ZX Spectrum emulator on a ESP32 based board. No need for complicated pins or soldering, just connect an VGA monitor and PS/2 keyboard.
    You will need to load the emulator software (available on a GitHub repository) and the desired games (in SNA format).
    Emulation speed has been adjusted for code in repo after making of this video.
    Spectrum 48K / 128K / +2 / +3 emulation modes supported.
    Supports Wiimote (v1) controller as control method (see repository documentation and/or my previous video about Spectrum emulation on ESP32).
    We will need the Visual Studio Code development environment with the PlatformIO extension, but the steps to follow are simple.
    Links:
    Board (manufacturer):
    www.lilygo.cn/prod_view.aspx?T...
    Board (seller):
    es.aliexpress.com/item/330149...
    GitHub repository:
    github.com/dcrespo3d/ZX-ESPec...
    Visual Studio Code:
    code.visualstudio.com/
    PlatformIO:
    platformio.org/
    Note: must be installed as a extension from Visual Studio Code itself.
  • วิทยาศาสตร์และเทคโนโลยี

ความคิดเห็น • 237

  • @jameswilkinson8851
    @jameswilkinson8851 3 ปีที่แล้ว +10

    Bought TTGO 1.4 from e-bay (~£7.00), followed the instructions here (carefully), and all worked perfectly. Thank You. (I don't speak Spanish, but the video is well edited and everything you need to know is in the video.... use the English subtitles!). There are some nice 3D printable cases for the TTGO 1.4 board on Thingyverse, to finish it off. To quote Claudio, "Fabuloso, gracias. funciona de maravilla." Also, loving the IBM Model M keyboard, I don't use anything else.

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว +4

      I'm glad you did it, it's a very convenient all-in-one board, great for emulating a speccy! All my videos have english and spanish subtitles, manually adjusted. I hope you used them.

  • @Kaneoya76
    @Kaneoya76 3 ปีที่แล้ว +2

    Una maravilla , todo muy bien explicado, me suscribo 👍👍👍

  • @retrocenturyxxi2923
    @retrocenturyxxi2923 3 ปีที่แล้ว +1

    IMPRESIONANTE !!! Sólo le falta un cajita y de lujo. Enhorabuena por el video

  • @Y0Claudio
    @Y0Claudio 3 ปีที่แล้ว +3

    Fabuloso, gracias. funciona de maravilla.

  • @cristianherrera2031
    @cristianherrera2031 ปีที่แล้ว

    Muchas gracias!!! Vi los videos hace unos meses y compré un esp32 y ttgo vga32. Ya lo tengo funcionando. Tus instrucciones son muy claras. Quedé sorprendido de la potencia que tienen estos microcontroladores. Hace casi 30 años que no programaba y siempre me intrigaron. Este fue el incentivo para investigar y aprender a programarlos. Estoy alucinado con todo lo que se puede hacer. Tengo un nuevo hobby! Muchas gracias por compartir tu trabajo.

    • @Davidprograma
      @Davidprograma  ปีที่แล้ว +1

      Hola! Me alegro mucho de haberte animado a investigar y cacharrear. Es muy divertido y gratificante ;-)
      El testigo del desarrollo lo ha cogido otro programador. Todavía tiene el desarrollo en fase beta. Más adelante, cuando él lo tenga más maduro, planeo hacer un vídeo. Pero si mientras tanto tienes curiosidad, le puedes echar un vistazo en
      retrowiki.es/viewtopic.php?f=118&t=200039114

  • @sharksdiy-projetos5881
    @sharksdiy-projetos5881 9 หลายเดือนก่อน +1

    ola david programa , fantastico , instalei no meu esp32 ttgo , funciona perfeitamente parabens pelo projeto 😄

  • @noserastu
    @noserastu 3 ปีที่แล้ว +5

    Genial, eres un crack

  • @duroweek
    @duroweek 3 ปีที่แล้ว +1

    Muy bueno David. Me ha gustado

  • @scriptguru8
    @scriptguru8 7 หลายเดือนก่อน

    Thanks for this video!
    Conveniently, .z80 files work the same as .sna: just put them into the same sna folder and they'll be available from the same menu as .sna files

  • @SusanAmberBruce
    @SusanAmberBruce 2 ปีที่แล้ว

    Hello David, I got my TTGO VGA 1.4 for £14.80, so exciting, I hooked it up and started running the VIC20 basic program counting to 1 million, it's up to 297345 so far :-)

    • @Davidprograma
      @Davidprograma  2 ปีที่แล้ว

      Hello Susan, I'm glad you got your TTGO. It's a great device which requires a bit of twiddling, but as you can see, the results are worth it! Enjoy!

  • @nicolaemuntean3742
    @nicolaemuntean3742 2 ปีที่แล้ว

    Congratulations for your work but especially for sharing everything with us. Good health

    • @Davidprograma
      @Davidprograma  2 ปีที่แล้ว

      Thank you Nicolae, I'm happy if you enjoyed it. Regards!

  • @taraskyrychuk4340
    @taraskyrychuk4340 3 ปีที่แล้ว +3

    Planifique una versión compatible con Arduino IDE ?

  • @noutram1000
    @noutram1000 3 ปีที่แล้ว

    Algo Excellant!

  • @arantxagallegosomoza6820
    @arantxagallegosomoza6820 3 ปีที่แล้ว

    David,eres un crack ;)

  • @MrSofteam
    @MrSofteam ปีที่แล้ว

    Hola David! I tried to recompile the package for Lilygo TTgo VGA with a new Visual Studio Code/Platformio instalallation and it didn't show any picture on the screen, the serial monitor kept looping the reboot. I researched the other variants and in one of the comments I found out that with the latest Platformio versions, the local storage is not compiled and sent to the device, unless I run a separate command to do so. Even after the separate storage compiling, the ROM selection doesn't work, it shows 0.rom, 1.rom, 2,from, etc and gives an error on selection (no 128K or 48K menu items with their option). Is it possible to fix this and have the correct ROM menu selection function properly and the storage compiled and uploaded in a single pass? Muchas gracias!!

  • @isaias4016
    @isaias4016 3 ปีที่แล้ว

    Que maravilla con la ultima actualizacion. Ya queda poco para tenerlo perfecto.

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว +1

      Gracias. La perfección es difícil de alcanzar, pero poco a poco empieza a ser un emulador digno.

  • @TitoRico
    @TitoRico 3 ปีที่แล้ว

    Hola, antes de nada decirte q tienes unos vídeos magníficos, gracias por el aporte. Quería preguntarte, a la hora de comprar la placa aparecen dos modelos (ch9102 y cp2104), cual recomiendas ? Gracias un un saludo.

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว

      Hola, por la tabla que aparece un poco más abajo en la página, yo diría que el CP2104, que pone que soporta windows y mac, y la mejor velocidad de lectura/escritura (12Mbps), y además es es el más barato.
      De todas formas, cuando yo compré el mío, no había esta distinción, y no tengo muy claro cual de ellos tengo, no viene rotulado en la placa.
      Es el problema con algunos fabricantes chinos, que no sabes muy bien qué estás comprando.
      Algunos meses después de hacer el vídeo encontré un vendedor en ali que era más barato (~8€) y compré un par de placas 1.4, pero he consultado mis pedidos y ahora es más caro (~19€) así que no te dejo enlace. Asco de escasez global de semiconductores.
      Gracias por tus comentarios, un saludo.

  • @1billthekid
    @1billthekid 2 ปีที่แล้ว +1

    Second question.... I see no /z80 subfolder in the /data folder; since you say you updated support for z80 files, can i create a folder and transfer files there, or should i copy .z80 files to the /sna subfolder?

    • @Davidprograma
      @Davidprograma  2 ปีที่แล้ว +1

      You're right, copy .z80 to /sna

  • @stormbytes1970
    @stormbytes1970 3 ปีที่แล้ว +1

    Enhorabuena David, yo estoy esperando que me llegue la placa, entre tanto habia montado tu anterior emulador en una placa ESP32 DEV KIT V1, de momento a falta de conseguir un teclado ps/2 no he conseguido que funcione el wiimote , tengo dos , uno original y un clon chino , y ninguno lo detecta , por mas que que miro no se porque es , y me gustaria por lo menos jugar con el mando hasta conseguir un teclado

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว

      Supongo que tu DevkitV1 traerá antena integrada... he tenido algunas placas sin antena y sólo detectaban el mando si estaba a pocos centímetros del chip. Yo trataría de probar únicamente la conexión al Wiimote para descartar que sea problema de la placa, en su día la probé con el IDE de Arduino con la librería ESP32Wiimote y una demo básica (incluida) que saca por el monitor serie los códigos de los botones que pulsas. Esa librería también está en github.com/bigw00d/Arduino-ESP32Wiimote

    • @stormbytes1970
      @stormbytes1970 3 ปีที่แล้ว

      @@Davidprograma creo q es problema de los mandos, he probado esa librería en concreto por separado y tampoco lo detecta, al hacer debug parece que los mandos envían una signatura distinta ya que según he leído son más modernos y creo q la libreria es para modelos más antiguos, así q de momento estoy atascado

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว +1

      Sólo te puedo decir que intentes modificar la librería y tratar de comunicar con los mandos nuevos, puedes montarte un proyecto de prueba con PlatformIO que es bastante sencillo, incluyendo los fuentes de la librería y el ejemplo con su setup() y su loop(). No sabía que hubiera más de un modelo de mando de la Wii (el mando básico, no los extras que se conectan al conector de expansión), yo debo tener el modelo inicial.

    • @stormbytes1970
      @stormbytes1970 3 ปีที่แล้ว

      @@Davidprograma Gracias David, voy a intentar modificar la librería a ver si colocando la signatura de estos mandos el protocolo fuera igual.

    • @stormbytes1970
      @stormbytes1970 3 ปีที่แล้ว

      Definitivamente , solo son compatibles los mandos antiguos, aquellos que tienen su signatura como RVL-CNT-01, y son anteriores a 2011 aprox., la siguiente generación con signatura RVL-CNT-01-TR (el caso de los míos) al parecer tienen un firmware diferente(fuente: github.com/wiiuse/wiiuse) :( :( :(

  • @alkizx2364
    @alkizx2364 3 ปีที่แล้ว

    hola David, gracias a tu video, me he pillado la plaquita y va genial. Quería preguntarte si sabes si hay en algún lado del código donde poder configurar la orientación horizontal y vertical de la pantalla, ya que me sale muy desplazada a la derecha en el monitor, y aúnque la configuro manualmente en el monitor, sigue quedando un poco desplazada hacia la derecha, igualmente me sale un poco alta y la parte superior se me sale de la pantalla. Igual con suerte hay algún lado donde poder configurar eso. Gracias y un saludo.

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว +2

      Hola Jesús, yo también he tenido algún problema similar con algún monitor y lo he podido solucionar con los ajustes del menú, pero supongo que en tu monitor no se podrá llegar más lejos de lo que has llegado. El código no lleva ningún parámetro para configurar lo que dices, pero le he echado un vistazo rápido y creo que puede arreglarse de la siguiente manera:
      - En el fichero ZX-ESPectrum.ino, en la función "void videoTask(...)" declara una variable "int xdisp = -16;", puede estar al principio de la función, entre la llave de apertura "{" y la primera declaración "unsigned int ff...".
      - En esa función aparecen 5 llamadas a la función "vga.dotFast(...)", haz un buscar y reemplazar y substituye las 5 apariciones de la cadena "vga.dotFast(" por la cadena "vga.dotFast(xdisp+"
      Con esto podrás mover la pantalla hacia la izquierda, con un tope en xdisp = -32.
      Para el vertical estás un poco más limitado, ¿no puedes probar primero a estrechar en vertical? Si no, puedes hacer esto:
      - Primero declara una variable "int ydisp = 8;"
      - Luego substituye la línea "if (vga_lin < 3 || vga_lin > 194) {" por "if (vga_lin < ydisp || vga_lin > ydisp+191) {"
      - Y la línea "byte_offset = (vga_lin - 3) * 32 + ff;" por "byte_offset = (vga_lin - ydisp) * 32 + ff;".
      El 8 es el valor máximo para ydisp, si lo pones más grande o bien perderás pixels de la parte de abajo o bien la aplicación hará un crash y reiniciará la ESP en bucle, no se lo que hará porque no lo he podido probar.

  • @chriscollins3717
    @chriscollins3717 ปีที่แล้ว

    Good video but a little bit confused as to the location where the github files are unzipped to. Can anyone help please?

  • @PaulYoung99s
    @PaulYoung99s 2 ปีที่แล้ว +1

    Brilliant, but it would be great to have a joystick for many games. Any thoughts on this?

    • @Davidprograma
      @Davidprograma  2 ปีที่แล้ว

      There is already support for the Wiimote controller. Any other controller protocol should require a specific development/integration. Depending on the protocol, it could be done, or not (there are just a few unused input pins on the device). Personally, I'm not interested in adding more control methods (with keyboard & wiimote I have all I need), but the source code is there for anyone to contribute and extend it.

  • @antoniocabezafabret573
    @antoniocabezafabret573 2 หลายเดือนก่อน

    Quería preguntar si es un emulador tipo Rasberry o bien tipo FPGA, es decir que sea emulación más perfecta.

    • @Davidprograma
      @Davidprograma  2 หลายเดือนก่อน

      Es un emulador software (no FPGA), pero es baremetal (va sin sistema operativo). El arranque es casi instantáneo, la latencia es muy baja y la emulación es perfecta. Hay cores de FPGA poco pulidos que difieren bastante de la máquina real, y emuladores software bien acabados que son casi idénticos a la máquina real.

  • @8088argentina
    @8088argentina 2 ปีที่แล้ว

    perfect

  • @Miki-ud4rp
    @Miki-ud4rp 3 ปีที่แล้ว

    Muchas gracias, no conocía esta placa. Me he suscrito al momento a tu canal. Un pregunta: si se quieren meter más juegos, ¿ qué habría que generar otra imagen con los juegos nuevos y volver a flasear la memoria?

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว +1

      Gracias por tu apoyo :-) Si usas la memoria interna, sí, hay que flashearla entera aunque sólo sea para meter un sólo juego nuevo.
      Pero ahora con el nuevo firmware que preparé, también tienes la opción de utilizar una tarjeta SD, y copiarle los juegos a tu aire.

    • @Miki-ud4rp
      @Miki-ud4rp 3 ปีที่แล้ว

      @@Davidprograma Gracias por respuesta, pero la placa mostrada en el video tiene sitio para tarjeta SD?

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว +2

      @@Miki-ud4rp Sí, tiene una ranura. Si te fijas en el minuto 1 exacto, entre mi dedo índice y la inscripción 20-4-28 hay una ranura para microSD.

  • @juanfranciscovera2524
    @juanfranciscovera2524 3 ปีที่แล้ว

    Estupendo vídeo y muy bien explicado todo. He estado haciendo alguna prueba pero no he conseguido seleccionar, en el modo 128k, la rom, no puedo bajar el cursor y seleccionar, por ejemplo 128 BASIC, se queda en Tape Loader. Me puedes indicar si hay alguna combinación de teclas para ello. Muchas gracias por todo y enhorabuena por tu trabajo.

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว +2

      Mayúsculas+6 flecha abajo, Mayúsculas+7 flecha arriba (y Mays+5 izquierda, Mays+8 derecha). El Spectrum 48K no tenía teclas propias de flecha de cursor, ésta era laforma de acceder a las flechas, y más tarde el 128 añadió teclas específicas de cursor, pero internamente la propia membrana de teclado (mediante una capa de membrana más) producía las combinaciones M+5, M+6, M+7, M+8. Algunos emuladores (éste no) mapean las flechas del teclado a M+5, M+6, M+7, M+8, pero no es trivial, hay que tener cuidado de no dejar teclas atascadas si se pulsa una flecha y 5/6/7/8.

    • @juanfranciscovera2524
      @juanfranciscovera2524 3 ปีที่แล้ว

      @@Davidprograma Muchísimas gracias por la pronta y detallada respuesta.

  • @alonsosanchezburgos7287
    @alonsosanchezburgos7287 ปีที่แล้ว +1

    Muy buen trabajo, gracias, aunque no puedo disfrutarlo porque soy otro de los que acaba de recibir la plaquita la semana pasada y solo obtengo la pantalla negra, por lo que he leído aquí (que no me entero de casi nada), mas bien me da que pensar que los chinos nos han jodio algo, continuare leyendo aquí cada día, por si apareciera alguna solución. Muchas gracias David.

    • @Davidprograma
      @Davidprograma  ปีที่แล้ว +1

      Hola, siento que no te funcione. Yo también empiezo a pensar que el fabricante ha cambiado algo en la placa, yo tengo varias compradas entre 2020 y 2021 y sin problemas. Voy a tratar de conseguir una placa actual y ver si averiguo algo. Un saludo.

    • @Davidprograma
      @Davidprograma  ปีที่แล้ว +1

      Hola, he podido probar con una placa de las nuevas, cortesía de Luis Miguel Serra, y tengo novedades. He descubierto que con el código actual, con las nuevas placas, no funciona el modo 4:3 320x240 (que es el modo por defecto). Pero el modo 16:9 360x200 funciona perfectamente. Tengo que investigarlo un poco más, pero hay una solución parcial: Editar el fichero boot.cfg y sustituir el asp169:false por asp169:true
      Si usas memoria interna, hay que modificar el fichero en el directorio data y hacer Upload FileSystem Image. Si usas tarjeta de memoria, hay que modificar el fichero en la tarjeta de memoria y ya.
      Evidentemente no debes cambiar el aspect ratio a 4:3 porque reseteará y no verás nada.
      Pero con este cambio, al menos puedes tener el emu funcionando en un monitor 16:9.

    • @alonsosanchezburgos7287
      @alonsosanchezburgos7287 ปีที่แล้ว

      Muchisimas gracia por tu esfuerzo en buscarnos la solución, en cuanto pueda probarlo te informo de si he sido capaz de hacerlo funcionar. Muchas gracias

    • @alonsosanchezburgos7287
      @alonsosanchezburgos7287 ปีที่แล้ว

      nada, creo que no me entero de nada o los archivos están cambiados en github, te explico:
      env:lolin32 no me sale en ningún sitio, solo env:pico32
      En platformio.ini no me sale la opción para indicar el puerto com, que corresponda, me sale esto:
      [env:pico32]
      platform = espressif32
      board = pico32
      framework = arduino
      board_build.mcu = esp32
      board_build.f_cpu = 240000000L
      board_build.f_flash = 40000000L
      upload_protocol = esptool
      monitor_speed = 115200
      board_build.partitions = noota_3g.csv
      ;board_build.partitions = huge_app.csv
      build_flags =
      -w
      -DBOARD_HAS_PSRAM
      -mfix-esp32-psram-cache-issue
      y por ultimo edito el archivo boot.cfg y esto es lo que sale:
      arch:48K
      romset:SINCLAIR
      ram:Snake.sna
      slog:true
      no veo la opción para cambiar asp169:false por asp169:true.
      otra cosa que he observado es que en la televisión en vez de decir "sin señal", me pone "parámetros inválidos"
      no es igual lo que sale en tu video que lo que se descomprime del archivo ZX-ESPectrum-Wiimote-lilygo-ttgo-vga32.zip que me he descargado, por ejemplo en este ultimo hay una carpeta que se llama LIB y en el tuyo hay dos archivos mas platformio.ini, uno .linux y otro .osx.
      Seguramente en la pagina de github expliquen algo, pero como todo esta en ingles, no soy capaz de encontrar nada.
      Disculpa mi pesadez, ☹

    • @Davidprograma
      @Davidprograma  ปีที่แล้ว +1

      Hola, el proyecto va evolucionando, pero el vídeo se queda como estaba cuando se hizo. Como resultado, muchas cosas ya no coinciden con lo que se ve en el vídeo. Desde hace dos años he añadido un montón de funcionalidades, mejoras y correcciones.
      He cambiado el URL del proyecto a github.com/dcrespo3d/ZX-ESPectrum-Wiimote, prueba con esa versión.
      Si el monitor te dice "parámetros inválidos", probablemente no sea capaz de visualizar la señal, pero seguramente sí que hay señal. En este caso quizás debieras probar con otro monitor. Ten en cuenta que este es un proyecto casero para cacharrear, nada garantiza que vaya a funcionar en todos los casos.

  • @firepower9966
    @firepower9966 3 ปีที่แล้ว

    my Platformio shows no "Upload filesystem image" and SPIFFS errors when build/upload and platform home just shows "Loading...."

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว +1

      Happened to me once. I fixed it by downgrading platformIO to a previous version

  • @dopierrexzx6956
    @dopierrexzx6956 2 ปีที่แล้ว

    Hola David, funciona muy bien con un teclado PS/2 y un Wiimote. Muchas gracias por este maravilloso proyecto!Noto que ahora tiene la opción de usar el teclado original del ZX Spectrum, me gustaría hacer un modelo similar al de StormBytes1970.
    Una precunta.. cómo se selecciona el menú sin F1 en el teclado original? (disculpas, mi español no es bueno, podemos escribir inglés si lo prefieres) Gracias!

    • @Davidprograma
      @Davidprograma  2 ปีที่แล้ว +1

      Hi, the key combination for the menu is CAPS_SHIFT+SYMBOL_SHIFT+ENTER. It's checked in function detectZXKeyCombinationForMenu in Ports.cpp.
      You should use the appropiate ESP32 pins defined as AD8-AD15 and DB0-DB4. Note some GPIO pins (34,35,36,39) are input only and you should use them for DB0-DB4, as set in hardpins.h.
      Your spanish is not that bad, I wouldn't have noticed if you hadn't said ;-)

  • @marcosgrima2237
    @marcosgrima2237 3 ปีที่แล้ว

    Hay algo parecido para emular amstrad cpc 464 o 6128? Estoy buscando algo asi hace mucho tiempo.....O por ejemplo algun sistema para arrancar un rasberry pi en sistema basic como el del amstrad ?

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว

      Hay un proyecto para emular Amstrad CPC en ESP32, consulta este foro:
      retrowiki.es/viewtopic.php?f=86&t=200036016

  • @SolverTwins
    @SolverTwins 3 ปีที่แล้ว

    Primero felicitarte por el trabajo, funciona de lujo y para los que como yo empezamos en el mundo de la informática con este cacharro es un entretenimiento muy divertido ponerlo en marcha, a parte de que ya le meteré un poco de mano al código y te iré comentando ideas a ver que te parecen, preguntarte una cosilla, le he soldado directamente un altavoz (zumbador de tablet china), a la placa para que suene y la verdad es que suena casi tan mal como un spectrum, pero quiero subir el volumen, ¿me puedes decir como hacerlo?.

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว

      Hola José Luis, me alegra mucho que estés disfrutando del cacharreo con esta placa, yo también he pasado buenos ratos y mi intención con el vídeo era que otros pudieran hacer lo mismo y conocer placa y emulador. En cuanto al código, he tratado de estructurarlo y hacerlo fácil de entender y modificar, a pesar de que la emulación no es perfecta al 100%. Con respecto al altavoz, te recomiendo que hagas un amplificador sencillo con un transistor NPN, al estilo del propio spectrum, que conectaba el pin 28 de la ULA (el pin GPIO 25 en nuestro caso) a la base del transistor (a través de un diodo que seguramente aquí no hace falta), el colector a +5V, y el emisor a un pin del altavoz, y el otro pin del altavoz a masa. Consulta los esquemas del spectrum, te valen los issues 3 a 5, el altavoz está en la parte superior izquierda del esquema, haz click en uno de los schematics: spectrumforeveryone.com/technical/zx-spectrum-pcb-schematics-layout/

    • @SolverTwins
      @SolverTwins 3 ปีที่แล้ว

      @@Davidprograma Muchas gracias le echare un ojo y preparo algún invento, la verdad es que ahora suena, como sonaba el Spectrum (bajito), pero por darle un poco mas de vidilla, lo otro que he visto como idea, es que en vez de leer la carpeta de archivos Z80 y SNA, preparar un define algo como #define SPECTRUM_DATABASE y leer un fichero de texto con los nombres de los juegos y los ficheros, de forma que se pueda leer el nombre completo del juego, he visto que el sistema de archivos no permite meter nombres largos, y como idea de poder, meter una base de datos básica, que tenga esa información, de lo que me dio de tiempo a mirar ayer cambiando un par de funciones del modulo fileutils lo tendríamos hecho, si me da tiempo me pongo a ello. Un saludote.

  • @Federico.Lyonnet
    @Federico.Lyonnet ปีที่แล้ว +1

    Hola David. Muchas gracias por el video y el código. Ya lo tengo andando con un teclado ps2 y me gustaría conectarlo a un teclado ZX tradicional (gomas). Sabés dónde puedo investigar el asunto? Muchas gracias.

    • @Davidprograma
      @Davidprograma  ปีที่แล้ว +1

      Hola, tendrías que hacer un montaje similar al que propongo en mi vídeo
      th-cam.com/video/1dwUrC5ooDg/w-d-xo.html
      con 8 pines para una cinta de teclado, y 5 pines para la otra. El problema es conseguir liberar tantos pines en la placa lilygo, creo que no se pueden conseguir los 13 pines.
      Hice un montaje precario hace tiempo, utilizando no la lilygo, sino un DevKit v4, que es un chip con 38 pines. El código lo tiene previsto con el #define ZX_KEYB_PRESENT. Pero hace mucho que no pruebo esa parte del código y seguramente no estén libres los pines y haya que modificar código para reasignarlo.

  • @isaias4016
    @isaias4016 3 ปีที่แล้ว

    He descubierto hoy este video y el canal y me has convencido para pillarme un aparto de estos.

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว +1

      Me alegro :-) pero que sepas que NO me llevo comisión :-P

    • @isaias4016
      @isaias4016 3 ปีที่แล้ว

      @@Davidprograma una preguntita, es posible la carga de roms desde la microsd?.Saludos.

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว +1

      Hola Isaías, no es posible con el firmware actual (el software que corre en la ESP32). El fw actual carga ficheros en formato .SNA desde la flash interna, aunque en teoría se podría modificar para que leyera desde una tarjeta SD.

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว +2

      Hola Isaías, he modificado el firmware en el repo de GitHub y ya se pueden cargar juegos desde tarjeta microSD (eso sí, o memoria interna o microSD, no ambas a la vez). Tienes que copiar todo el directorio /data a la raíz de la SD, y poner los juegos en .SNA en el /sna de la SD. Está explicado en el README.md, pero por si acaso: hay que comentar en hardware.h el #define USE_INT_FLASH y descomentar el #define USE_SD_CARD.

    • @isaias4016
      @isaias4016 3 ปีที่แล้ว

      @@Davidprograma muchisimas gracias!! Bueno una pena que no desde las dos pero en una micro sd desde luego se pueden meter muchos mas juegos. Deseando que me llegue la plaquita para cacharrear. Y gracias de nuevo.

  • @Miki-ud4rp
    @Miki-ud4rp 3 ปีที่แล้ว

    Otra pregunta David: ¿es posible hacer esto con un Amstrad CPC?

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว +2

      Conozco a un programador llamado Ackerman que ha desarrollado un emulador de Amstrad CPC para ESP32, aquí lo tienes:
      github.com/rpsubc8/ESP32TinyCPC
      Tienes más información en este foro:
      retrowiki.es/viewtopic.php?f=86&t=200036016

  • @philippesteelant1896
    @philippesteelant1896 ปีที่แล้ว

    Hello , is it possible to save a basic program to a micro sd card that is inserted in the V1.4 unit ?

    • @Davidprograma
      @Davidprograma  ปีที่แล้ว +1

      Not yet, but it's planned. There is a new, more mature version of the emulator. Please take a look at zxespectrum.speccy.org/descargas/

  • @estebanh9456
    @estebanh9456 2 ปีที่แล้ว +1

    En el modo emulador de Zx Spectrum BASIC ¿Puedes guardar los programas que escribas, en la misma tarjera SD, para recuperarlos más tarde, o se borran una vez apagues la placa? Gracias.

    • @Davidprograma
      @Davidprograma  2 ปีที่แล้ว +1

      Sólo se puede guardar un snapshot permanente con F4, y cargarlo con F5. No hay soporte para grabar en .TAP que es lo que serviría para grabar con SAVE y cargar con LOAD.

    • @estebanh9456
      @estebanh9456 2 ปีที่แล้ว

      @@Davidprograma Gracias David, por lo pronto creo que seguiré explorando otras opciones entonces. Ahora mismo he hecho algunas pruebas con la Raspberry Pi Zero y el Retropie. Simulando el Amstrad, he tenido el mismo problema de salvado, aunque el retroarch me permite guardar un estado concreto de la máquina (que puede ser similar a lo que comentas) y seguir trabajando más tarde en el mismo programa, pero no lo puedo sacar de ahí y exportarlo si quiero luego ejecutarlo en otra máquina. No obstante echaré un vistazo al GitHub, y quién sabe, igual me pido una plaquita de esas. Muchas gracias.

    • @Davidprograma
      @Davidprograma  2 ปีที่แล้ว +1

      Si lo que quieres es un sistema pequeño para programar en BASIC de máquinas antiguas, quizás lo más conveniente fuera un Raspberry Pi con algún linux ligero y emuladores específicos. Por ejemplo FUSE (spectrum) está muy bien y tiene muchas opciones, soporte de TAP, snapshots, etc. Para otros sistemas, emulador específico.

    • @asilvestrado
      @asilvestrado 2 ปีที่แล้ว +1

      Si permite un snap siempre puedes leerlo con otros emuladores o con algún dispositivo en spectrum.

  • @mickpr
    @mickpr 3 ปีที่แล้ว

    Is it possible to implement keyboard beyond of 40 ZX Spectrum keys ? For example - Backspace on the PS2 keyboard in the emulated computer could invoked the sequence of keys SHIFT-0, or with the "apostrophe key - pressing the SymbolShift key and P key? What about the keys that require switching to specified mode (e.g. E mode and then push SC/SS + another key combination)? Could you help with any suggestion with that? How to get it?

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว

      Hello, and thanks for your interest. Actual PS/2 keystrokes modify an array of 40 key status booleans* in the emulator code (true for pressed, false for not pressed), and that array is read whenever a IN instruction is issued from emulated Z80 to port 0xFE.
      You mention two cases: simple combination, and composite combination. The first one should be easy: detecting backspace key press, and then setting both internal key status "0" and "shift" to true, then setting both to false when detecting key release.
      The second one is harder, as it depends on mode sequencing implemented in Spectrum ROM Basic, and so, key states should be sequenced. For example, for assigning key "F8" to command "INK", we could set, when pressing F8, keys status "SS" and "CS" to true; set them to false when releasing F8, and then sequence the following events: wait 40 ms, set "SS" and "X" to true, wait 80 ms, set "SS" and "X" to false.
      The timings are orientative and would depend on actual testing, and a queue should be implemented for issuing delayed events.
      *They are arranged as 8 bytes, using 5 bits for each byte, like the spectrum ports. See function ESPectrum::processKeyboard().

    • @mickpr
      @mickpr 3 ปีที่แล้ว

      @@Davidprograma Your emulator is very good, I am fascinated by its possibilities and development stage. For the day I am trying to dig through the code. Of course, I found this table and I also think that an appropriate queue of sent keys will help there. Since we are using a PS2 keyboard, it would be a sin not to use such the rest of keys. This would facilitate writing programs on such a spectrum - especially with the use of ROMs, which do not send entire tokens, but single keys (such as gw03.rom).
      The "kempston" implementation is great. It would be good to do a hard or soft reset after pressing Ctrl-Alt-Del or for example F12. I will try to "figure it out", and I will share any code, of course. Thanks for your tips. :)

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว +1

      @Michał Przybył I hope you are looking at one of the latest versions... Recently I did some heavy refactoring, hoping to make the code easier to understand, and structuring the different components into different files. At least, try to use version from 27 march (or directly, latest commit from yesterday, with better snapshot support).
      Good luck with your work, hope to hear from you soon! :)

  • @baltasarq
    @baltasarq 2 ปีที่แล้ว

    Me gustaría hacer el montaje y meterlo en un teclado antiguo, pero no es PS/2, es el PC gordo viejo con un convertidor PS/2 de la última vez que lo usé. Pero para soldar al teclado necesito conocer el esquema para él. ¿Sabrías dónde encontrar ese esquema?

    • @Davidprograma
      @Davidprograma  2 ปีที่แล้ว +1

      Supongo que te refieres al conector AT, un DIN de 5 pines a 180º. Te dejo este enlace donde se ve la equivalencia entre AT y PS/2. Un saludo.
      www.kbdbabel.org/conn/kbd_connector_ps2.png

  • @1billthekid
    @1billthekid 2 ปีที่แล้ว +1

    Thanks for the video, this is great stuff! Have you any idea how to erase/reflash the internal memory if things go wrong?

    • @Davidprograma
      @Davidprograma  2 ปีที่แล้ว +1

      Just flash again, I have flashed hundreds of times during development.

    • @1billthekid
      @1billthekid 2 ปีที่แล้ว

      @@Davidprograma Thanks! Tried it a few times, and all is ok. ;-)

  • @LasRozasDeMadrid
    @LasRozasDeMadrid 3 ปีที่แล้ว +1

    Va más rápido que el Spectrum original, se nota en la música del Manic Miner ¿Se puede cambiar la velocidad?

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว +1

      Sí, de hecho ya está cambiada en en código que hay colgado en el repositorio de GitHub. El emulador del que partí no manejaba correctamente la memoria contenida (contended memory). Cuando la CPU y la ULA acceden a la zona baja de memoria (la memoria gráfica) la ULA, que genera la señal de vídeo, tiene prioridad; así que congela la señal de reloj del Z80, introduciendo ciclos de espera. El Manic Miner utiliza varios buffers off-screen donde va dibujando, y cuando ha terminado copia los buffers a la pantalla (gracias a eso la pantalla no parpadea nada). La copia se realiza mediante la instrucción assembler LDIR, y es una instrucción muy afectada por los ciclos de espera. He parcheado la emulación de la instrucción LDIR en el código del ZX-ESPectrum-Wiimote y aunque no es perfecta al 100%, por lo menos el ManicMiner parece que va a la velocidad adecuada. Eso sí, en el vídeo se ve la versión sin parchear.

    • @bubumarcianito5682
      @bubumarcianito5682 2 ปีที่แล้ว

      @@Davidprograma Justo iba a preguntar esto. El Manic Miner va como si no hubiera un mañana... Para mí es fundamental que la emulación sea tan perfecta que uno no pueda saber si está ejecutándose en una máquina original o en una emulación/clon. Y de momento parece que esto es así... Espero que con el tiempo vaya mejorándose el emulador.

  • @oscarmoreno2603
    @oscarmoreno2603 3 ปีที่แล้ว

    Hola serie posible implementar otros tipos de archivos como los z80 o los tap o tzx que son mas compatibles. Ya que sna no me funciona practicamente ninguno en 128k.
    Un saludo!!!

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว +1

      Es posible, pero lleva bastante trabajo y como estas cosas las hago en mi tiempo libre, puede que tarde bastante en añadir funcionalidades...

    • @oscarmoreno2603
      @oscarmoreno2603 3 ปีที่แล้ว

      @@Davidprograma ok esperaremos impacientes!! Buen trabajo!!

  • @alfredodorado2821
    @alfredodorado2821 ปีที่แล้ว

    y como es lo del raton si el spectrum no tenia....

  • @yuyulapqper7680
    @yuyulapqper7680 10 หลายเดือนก่อน

    top

  • @_Jumbo_
    @_Jumbo_ 3 ปีที่แล้ว

    👍😊

  • @kunanam
    @kunanam 3 ปีที่แล้ว

    Estoy probando el emulador y es una pasada, ¿ como convertís los ficheros a .sna? he probado con Fuse pero hay algunos juegos que me dan errores en el emulador.

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว +1

      A mi me dan error todos al guardar como SNA (dice que se perdieron algunos datos), pero luego funcionan ;-)

    • @kunanam
      @kunanam 3 ปีที่แล้ว

      @@Davidprograma probaré con otra versión de fuse a ver si tengo más suerte :)

  • @MrSofteam
    @MrSofteam 3 ปีที่แล้ว

    Hello! Great accomplishment, congratulations! What chip is your board based on? The CP2104 or the CH9102F?? Gracias!

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว +1

      Hello, when I purchased the TTGo there was no choice available, and my board has no such markings. Having read the specs, I would go for the CP2104. Cheers!

    • @MrSofteam
      @MrSofteam 2 ปีที่แล้ว

      I got the board, I uploaded the image as per the instructions, and it works. The only modes that don't run are Plus3 and Plus3E-they give only a black paper and stop there. Is there any fix, or am I doing something wrong? Thank you.

    • @Davidprograma
      @Davidprograma  2 ปีที่แล้ว +1

      Hello, unfortunately those modes are untested, and maybe unimplemented. I forked Rampa's repo, refactorized the code heavily and added some features, but I was satisfied with the 48k and 128k modes working. Games may be loaded only through snapshot (not even .tap is implemented), so the natural advantage of +3 modes, which is to have disk, is unimplemented. So I didn't really care a lot about those modes. Maybe another programmer could implement those, the repo is there in github for anybody to make it better. Regards!

    • @MrSofteam
      @MrSofteam 2 ปีที่แล้ว

      David, I understand, thank you again! Regards!

  • @videosgcgabriel
    @videosgcgabriel 2 ปีที่แล้ว

    Hola buenas, primero de todo gracias por el tutorial. He seguido las indicaciones, pero no consigo que me funcione el PlatformIO IDE. Al incorporar la carpeta con el contenido del emulador que he bajado desde Github, me aparecen dos mensajes de error 1. "Error: TypeError [ERR_INVALID_ARG_TYPE]: The "path" argument must be of type string...."
    y 2. "Error: Could not start PIO Home server: Error: timeout at c:\Users\gabri\.vscode\extensions\platformio.platformio-ide-2.3.3
    ode_modules\platformio-node-helpers\dist\index.js:1:5946...". Por otro lado, en la barra de estado de Visual Studio aparece un proceso que no termina nunca: "PlatformIO: Rebuilding Intellisense Index". Un saludo y gracias de nuevo.

    • @Davidprograma
      @Davidprograma  2 ปีที่แล้ว

      Tiene pinta de error de PlatformIO, no es la primera vez que me lo reportan, seguramente haya que actualizar algo de PIO o de VSCode.

    • @videosgcgabriel
      @videosgcgabriel 2 ปีที่แล้ว

      @@Davidprograma Muchas gracias por responder. A ver si alguien se ha encontrado con el mismo problema y ha encontrado la solución. Mirando en la web, hay reportadas incidencias de este tipo desde 2018... :-(

    • @Davidprograma
      @Davidprograma  2 ปีที่แล้ว

      Es una cosa que me molesta del software moderno: La actualización automática y obligatoria. Cuando tengo montado un entorno de desarrollo estable y operativo, quiero que funcione siempre, no que venga una actualización mala y me rompa todo (como parece ser el caso). Renuncio encantado a las funcionalidades nuevas y asumo los riesgos de seguridad. Pero a veces no es posible. Un saludo.

  • @jorgeabad3008
    @jorgeabad3008 2 ปีที่แล้ว

    Gran video, funciona super. DUDA NO CONSIGO PONER JUEGOS DESDE LA SD.GRACIAS

    • @Davidprograma
      @Davidprograma  2 ปีที่แล้ว +1

      Primero, tienes que cambiar las líneas en hardconfig.h de
      #define USE_INT_FLASH 1
      //#define USE_SD_CARD 1
      a
      //#define USE_INT_FLASH 1
      #define USE_SD_CARD 1
      Segundo, tienes que copiar el contenido del directorio data (persist, rom, sna, boot.cfg) a la raíz de la microSD. Copia el contenido, no el directorio, boot.cfg tiene que estar en la raíz. También copia snapshots .sna o .z80 a la carpeta sna, que es desde donde se leen.

    • @jorgeabad3008
      @jorgeabad3008 2 ปีที่แล้ว

      Gracias por tu atención y rapidez he estado de vacaciones, me funciona la SD. Pero no consigo cargar rooms ni z80, no guardandolas con fuse ni na

  • @LaEconomiaNoEsUnChiste
    @LaEconomiaNoEsUnChiste ปีที่แล้ว +1

    Tengo varios programas particulares en cinta de casete. ¿Cómo hago para ejecutarlos en el emulador? Puedo pasarlos a formato .WAP y otros, pero no a .TAP pues uso Audacity. Gracias por una contestación.

    • @Davidprograma
      @Davidprograma  ปีที่แล้ว

      Hola, la verdad es que tiene que haber formas mejores de hacerlo. Y si conoces una forma, pues ya no buscas otras. Con un Spectrum y un DivMMC, cargo una cinta, y cuando está el programa cargado, pulso el botón NMI, y con la tecla S salvo un snapshot en la tarjeta de memoria. A mí me ha servido para preservar algunos programas que hice en su época.
      Si alguien que conozca una forma mejor (o más directa) lee esto, que lo cuente, por favor.

    • @LaEconomiaNoEsUnChiste
      @LaEconomiaNoEsUnChiste ปีที่แล้ว

      @@Davidprograma Estoy muy fuera de juego del ZX Spectrum pues hace más de 20 años que se me rompió, pero quería rescatar unos programas que hice yo (no juegos ni cosas de esas). No sé que es un DivMMC, no tengo el ordenador, solo veo que este aparato se compra y se pone en una pantalla con un ordenador y se conecta. Si me lo puedes explicar mejor, te lo agradecería, pues hay emuladores, pero no puedo grabar directamente las cintas de una cadena de música salvo en formatos música (.WAV, etc) y si pongo formato especial .TAP, parece que no lo graba, no me deja. Si con este sistema se pueden grabar directamente archivos que cargas desde un casete o equipo de música, entonces sí lo compro. He estado buscando información y es muy liosa sobre los emuladores. He descargado alguno pero no encuentro la forma. Gracias y saludos.

    • @LaEconomiaNoEsUnChiste
      @LaEconomiaNoEsUnChiste ปีที่แล้ว

      @@Davidprograma A lo mejor esto solo vale para programas comerciales de una lista y se cargan sin necesitad de casete. Lo mío son programas propios de contabilidad y gestión de empresa que hice. Era solo para ver cómo los hice. Y necesitan cargarse con cinta de casete. Gracias.

    • @Davidprograma
      @Davidprograma  ปีที่แล้ว

      Busca un emulador que te permita cargar de cinta de cassette. Haberlos haylos. El ESPectrum no, pero hay muchos otros. Como no es algo que yo haya necesitado hacer, no se decirte ninguno que lo haga.

    • @LaEconomiaNoEsUnChiste
      @LaEconomiaNoEsUnChiste ปีที่แล้ว

      @@Davidprograma OK, gracias

  • @joelfleishman5667
    @joelfleishman5667 3 ปีที่แล้ว +2

    Hola David, vengo del canal EMS. Una pregunta, está plaquita permite un Spectrum 128k?.
    Saludos

    • @rampamac
      @rampamac 3 ปีที่แล้ว +1

      permite hasta +3 (aunque no esta implementada la disquetera)

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว +1

      Hola Joel, te confirmo que la esta plaquita permite Spectrum 128k. Saludos!

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว +2

      Hola Ramón, tu respuesta me dió que pensar, teniendo en cuenta que partí de tu repositorio para mi proyecto :-) Resulta que en la documentación de la TTGo VGA32 v1.4 no menciona por ningún sitio la PSRAM, así que supuse que no tenía y seguí adelante. Pero tras leer tu comentario investigué y ví que la v1.1 sí que dice que tiene PSRAM... así que probé mi v1.4 y tiene 4MB así que soporta modos de 128K sin problemas.

    • @joelfleishman5667
      @joelfleishman5667 3 ปีที่แล้ว

      @@Davidprograma genial, me pillaré una plaquita de estás.
      Enhorabuena por tu canal y gracias por contribuir a que el Specy siga dando guerra.

  • @bymarcao
    @bymarcao 2 ปีที่แล้ว

    es posible poner otros micros como el. ¿Amstrad CPC, C64, Vic20 y otros?

    • @Davidprograma
      @Davidprograma  2 ปีที่แล้ว +1

      Sí, es posible, pero no con mi emulador. Consulta en Retrowiki el excelente trabajo de Ackerman, que ha portado emuladores para todos esos ordenadores, te dejo enlace: retrowiki.es/viewtopic.php?f=86&t=200036016

    • @bymarcao
      @bymarcao 2 ปีที่แล้ว

      @@Davidprograma La placa carecía de una salida de joystick

    • @Davidprograma
      @Davidprograma  2 ปีที่แล้ว +1

      No, no tiene entrada de Joystick. Lo que tiene son pines GPIO (entrada/salida de propósito general), por lo que uno puede programárse una entrada para algun protocolo sencillo de joystick modificando el código, y poniendo un conector adecuado.

  • @llusocu
    @llusocu ปีที่แล้ว

    Hola. Cuando arranca es instantaneo o esta unos segundos cargando el emulador?

    • @Davidprograma
      @Davidprograma  ปีที่แล้ว

      Hola, es prácticamente instantáneo. Tardará unos tres segundos...

  • @igorfarbizu4767
    @igorfarbizu4767 ปีที่แล้ว

    Me encanta tu proyecto. Lo que no consigo hacerlo funcionar. Sigo todos los pasos y parece que se ha garbado. Luego lo conecto al monitor y nada, no parece recibir ninguna señal. He probado la placa ttgo vga 1.4 con los ejemplos de FabGL y sin problemas, lo que me hace descartar un problema con la placa. No sé por dónde tirar.

    • @Davidprograma
      @Davidprograma  ปีที่แล้ว

      Hola, siento que no te funcione. Por tu comentario y el de otros usuarios empiezo a pensar que el fabricante ha cambiado algo en la placa, las que yo tengo compradas entre 2020 y 2021 funcionan perfectamente sin tocar nada de código. Voy a tratar de conseguir una placa actual a ver si consigo reproducir el problema y busco una solución. Un saludo.

    • @igorfarbizu4767
      @igorfarbizu4767 ปีที่แล้ว

      @@Davidprograma Muchas gracias David.

    • @Davidprograma
      @Davidprograma  ปีที่แล้ว +1

      Tengo novedades. He descubierto que con el código actual, con las nuevas placas, no funciona el modo 4:3 320x240 (que es el modo por defecto). Pero el modo 16:9 360x200 funciona perfectamente. Tengo que investigarlo un poco más, pero hay una solución parcial: Editar el fichero boot.cfg y sustituir el asp169:false por asp169:true
      Si usas memoria interna, hay que modificar el fichero en el directorio data y hacer Upload FileSystem Image. Si usas tarjeta de memoria, hay que modificar el fichero en la tarjeta de memoria y ya.
      Evidentemente no debes cambiar el aspect ratio a 4:3 porque reseteará y no verás nada.
      Pero con este cambio, al menos puedes tener el emu funcionando en un monitor 16:9.

    • @igorfarbizu4767
      @igorfarbizu4767 ปีที่แล้ว

      @@Davidprograma Gracias, lo probaré.

  • @firepower9966
    @firepower9966 3 ปีที่แล้ว

    Due to changes in later versions of platformio
    There is no upload file system in platformio GUI.
    1. In directory edit file "Disk.cpp" edit line 30 or 33 adding "true"
    (!SPIFFS.begin(true))
    This allows SPIFFS to compile.
    2. Run in vcltools/platformio command terminal
    pio run -t uploadfs
    This uploads files in to SPIFFS
    3. Build and upload code in vctools/platformio

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว

      Hello, I have PlatformIO with core 5.0.3, home 3.3.1. In my menu there IS an "upload filesystem image" command, under project tasks -> env:lolin32 -> platform. I can do everything as usual, with no code modifications. Only that command has moved, but not disappeared.

    • @firepower9966
      @firepower9966 3 ปีที่แล้ว

      @@Davidprograma I have no platfrom under env:pico32 , PlatformIO core 5.03, platformio IDE 2.2.1 everything updated to latest. using windows 10,

  • @rics907
    @rics907 3 ปีที่แล้ว

    Buen video, ¿Aparte de spectrum se puede emular una NES o alguna consola retro?

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว

      Sí, se pueden emular otros sistemas. Hay más gente desarrollando otros emuladores, te dejo este hilo de un foro
      retrowiki.es/viewtopic.php?f=86&t=200036016
      y el canal de Ackerman que ha trabajado en desarrollar otros emuladores para ESP32
      th-cam.com/channels/piZacfBa9OzYQf37hgficg.htmlvideos

    • @rics907
      @rics907 3 ปีที่แล้ว

      @@Davidprograma muchas gracias!!!

  • @marditohroedore
    @marditohroedore 3 ปีที่แล้ว

    Hola David, me ha gustado tanto el video, que me he comprado el Lilygo, pero tengo un problema; el Visual Code no me reconoce el aparato una vez conectado por USB. He mirado desde el administrador de dispositivos de windows y si que se ve (no lo reconoce, pero se ve), con lo que no puedo subir el código. Leyendo los comentarios, he visto que un problema parecido se solucion instalando una versión anterior a la actual, pero tampoco ha funcionado...Alguna sugerencia?

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว +1

      Hola, ahora mismo yo estoy con VSCode 1.55, PlatformIO Core 5.1.1 y Home 3.3.4, no se si con otras versiones tendrá algún problema.
      Tengo un PC en el que PlatformIO no me reconoce automáticamente el puerto de la Lilygo, esto es lo que yo hago:
      - Con la Lilygo desenchufada, voy a VSCode, a la pestaña devices de PlatformIO (también en menú lateral Quick Access -> PIO Home -> Devices), le doy al botón refresh y veo qué puertos me salen.
      Cierro la pestaña PIO Home, enchufo la lilygo y vuelvo a abrir PIO Home -> Devices, con lo cual ahora me aparece un puerto COMx nuevo.
      Ese puerto lo pongo en el fichero platformio.ini, como una línea
      upload_port = COMx
      justo antes de la línea
      upload_protocol = esptool
      Prueba a ver si así...

    • @marditohroedore
      @marditohroedore 3 ปีที่แล้ว

      @@Davidprograma bueno, pues he probado y nada. Sigue sin aparecer el puerto donde conecto la Lilygo. Voy a probar con otro pc a ver si asi...Muchas gracias por la ayuda y por todo, te ire contando

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว

      @Tato Man La placa funciona? Viene con una app de demo, es una de las demos de FabGL; si conectas VGA y la alimentas tiene que sacar imagen.
      En el administrador de dispositivos te aparece como puerto COM, o como otra cosa? Si es un COM, puedes probar a ponerlo en el platform.ini a ver. Si es otra cosa, puede que falte un driver USB a puerto serie. No recuerdo haber instalado driver explícitamente para la lilygo.
      A mí me aparece como Silicon Labs CP210x USB to UART Bridge (COM4) en el administrador de dispositivos.
      Proveedor: Silicon Laboratories Inc
      Fecha: 19/09/2016
      Versión: 6.7.4.261
      Firmante: Microsoft

    • @marditohroedore
      @marditohroedore 3 ปีที่แล้ว

      @@Davidprograma Hola, he conseguido que vea la tarjeta. Efectivamente faltaban los drivers y he instalado los de Silicon Labs. El problema ahora es que en PlatformIO no me aparece la aparece la opción env:lolin32, y comparando con la captura de video que compartes, si tengo una que no aparece en tu video que es pico32. Y otra pregunta, como cargo las roms desde la tarjeta microsd? Muchas gracias de nuevo

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว +1

      @Tato Man usa env:pico32, es la buena, cuando hice el vídeo creía que la buena era lolin32, pero en el repo tengo la pico32.
      Para cargar snapshots desde la microSD, tienes que copiar el contenido del directorio data (persist, rom, sna, boot.cfg) a la raíz de la microSD. Copia el contenido, no el directorio, boot.cfg tiene que estar en la raíz. También copia snapshots .sna o .z80 a la carpeta sna, que es desde donde se leen.

  • @MatteoPascolini
    @MatteoPascolini ปีที่แล้ว

    Can this emulate other computers of the era?

    • @Davidprograma
      @Davidprograma  ปีที่แล้ว

      No, just the speccy. However, there are other emulator projects for the ESP32.

  • @Mitrasto22
    @Mitrasto22 3 หลายเดือนก่อน

    y sabes si existe algo asi par amstrad?

    • @Davidprograma
      @Davidprograma  3 หลายเดือนก่อน +1

      Existe una prueba de concepto de emu de Amstrad CPC para ESP32, hecha por Ackerman:
      github.com/rpsubc8/ESP32TinyCPC
      Próximamente el proyecto ESPectrum comenzará el desarrollo de un emulador de CPC para ESP32, pero tardará meses.

  • @kunanam
    @kunanam 3 ปีที่แล้ว

    Hay forma de cargar programas de 128k ?, los SNA solo pueden ser de 48k ,no? por eso me daban errores en el emulador, un saludo !!

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว +1

      Los SNA también pueden ser de 128K, pero el formato no es demasiado estándar, al contrario que el SNA de 48K. Puedes probar desde FUSE a ponerlo en modo 128, cargar un TZX de 128, guardar un SNA y tratar de cargarlo desde el emulador. La verdad es que el modo 128 no lo tengo muy probado... la rutina de carga aparentemente soporta SNA de 128, pero la rutina de guardar que escribí sólo guarda SNA de 48.

    • @kunanam
      @kunanam 3 ปีที่แล้ว

      @@Davidprograma Muchas gracias David, este finde hago más pruebas !!! es una chulada

    • @isaias4016
      @isaias4016 3 ปีที่แล้ว +1

      @@kunanam yo en 128k no me carga casi ningun sna de 128. Nose si con otro tipo de formato irian mejor. Pero al menos podemos disfrutar de gran parte del catalogo.

    • @ManuelFernandezAlvarez
      @ManuelFernandezAlvarez 3 ปีที่แล้ว

      Muchas gracias por el video, al final me compré el "cacharrito", seguí tu pasos y ya lo tengo todo listo. ¿Alguien sabe si se puede cargar .tzx o algún otro formato?¿O transformar de manera masiva .tzx a .sna? De nuevo, gracias por el excelente trabajo David.

    • @isaias4016
      @isaias4016 3 ปีที่แล้ว

      @@ManuelFernandezAlvarez de momento solo soporta el formato sna. Y tendras que pasarlo uno a uno con el fuse u otro emulador. Recuerda hacerlo en modo 48k o te fallaran la mayoria. Un saludo.

  • @Mitrasto22
    @Mitrasto22 6 หลายเดือนก่อน

    0:09 ese video del emulador donde esta?

    • @Davidprograma
      @Davidprograma  6 หลายเดือนก่อน +1

      Veo que lo has encontrado ;-)

  • @YansterMors
    @YansterMors ปีที่แล้ว

    Buenas. No me da señal de video. Está la luz azul parpadeando constantemente. ¿Alguna solución?

    • @Davidprograma
      @Davidprograma  ปีที่แล้ว

      Habría que echarle un vistazo a la información de depuración que envía por el puerto serie. Se puede acceder a ella con el comando Monitor de PlatformIO.

    • @YansterMors
      @YansterMors ปีที่แล้ว

      @@Davidprograma No hay manera. Con arduino ide puedo cargar ejemplos pero con esto no me sale. Abro visual studio. Abro carpeta. En platofrm io en pico32 platform upload image y luego en default general upload y se queda en negro

    • @Davidprograma
      @Davidprograma  ปีที่แล้ว

      ¿Qué dice la salida del comando general->monitor?

    • @Bullisbullis19
      @Bullisbullis19 ปีที่แล้ว

      Acabo de recibir mi placa y me ocurre exactamente lo mismo. He probado también el Tiny ZX Spectrum que según su aurtor está basado en éste y ocurre exactamente igual. La ventaja del Tiny es que también viene el código de arduino, lo que descarta por completo que sea el Visual estudio el culpable, ya que el Tiny lo he compilado con Arduino ID. Antes de que alguien sugiera que mi placa no funciona, aclaro que si lo hace, porque he probado varios de los ejemplos de FabGL "Space invaders entre otros" y todos funcionan a la primera sin modificar nada. Mi conclusión es que esta placa es incompatible con éste emu. Quizá nos han tangado los chinos suprimiendo memoria, o vete a saber el qué, que por alguna razón usan los emus de Spectrum y los ejemplos de FabGL no. A ver si hay suerte y alguien más listo que yo encuentra la solución. Por mi parte voy a probar el emulador de Spectrum que me queda "Rampa, creo" y si funciona, editaré esto hoy.
      EDITO: El rampa tampoco funciona. Yo no creo que no saque video, pienso que ni siquiera funciona en nuestra placa. Como última prueba he vuelto a instalar el de David y lo he ejecutado como "Upload and monitor" tal y como ha recomendado David y efectivamente aparecen algunos errores pero no en programación, sino en ejecución y se queda en "Setting resolution at 320 x240". Para no ensuciar aún más el hilo de lo que lo he hecho, he subido un archivo a mi server con todo el meollo por si David o cualquiera que que le interese, quiere echarle un vistazo. El enlace es emuladores-retro.mermelado.com.es/spectrum/Log.txt

    • @Davidprograma
      @Davidprograma  ปีที่แล้ว

      Un amigo ha tenido un problema similar con el código y me ha dado una pista que todavía no he podido probar. Se trata de _eliminar_ la opción -mfix-esp32-psram-cache-issue del fichero platformio.ini (hacia el final). Y después upload and monitor como de costumbre. ¿Lo podéis probar y decirme si lo arregla? Gracias

  • @cristian_rojas_001
    @cristian_rojas_001 3 ปีที่แล้ว

    Exelente !!! ,Existe una versión del software para otro computador? Atari, Commodore? saludos?

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว +1

      Existen muchos otros emuladores de otros ordenadores para Raspberry Pi, pero no son bare-metal, funcionan sobre un sistema operativo Linux. Pruebe a buscar RetroPie o Batocera. Un saludo.

    • @cristian_rojas_001
      @cristian_rojas_001 3 ปีที่แล้ว

      @@Davidprograma Muchas Gracias, es genial tu canal, voy a implementar el emulador, saludos.

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว +1

      Mis disculpas, respondí pensando que tu comentario estaba en otro de mis vídeos que va sobre Raspberry Pi. Para ESP32 hay otros emuladores, Ackerman está desarrollando varios de ellos, para C64, Amstrad CPC, Vic20 y otros. Te dejo un enlace a un foro donde podrás encontrar referencias a otros firmwares para emular otros sistemas. Un saludo.
      retrowiki.es/viewtopic.php?f=86&t=200036016

  • @oscarperal8375
    @oscarperal8375 3 ปีที่แล้ว

    hay algo con salida HDMI ???

    • @grantasca
      @grantasca 3 ปีที่แล้ว

      th-cam.com/video/1dwUrC5ooDg/w-d-xo.html

  • @Bullisbullis19
    @Bullisbullis19 ปีที่แล้ว

    Hola de nuevo David: Si lees más abajo verás que he intervenido en una conversación sobre que no hay imagen y que he pegado un enlace con un log mío ya que tengo el mismo problema. Pero escribo ahora directamente en el hilo, porque acabo de confirmar lo que se insinua por otro usuario más abajo y que tu aclaras que no hay que bajar el del master y es que cualquiera de los dos son para la placa pico32 y en tu video pone claramente lolin32. No tengo ni idea de si ese puede ser el fallo, pero desde luego algo está mal. Te agradeceré me aclares esto y si es un problema de enlace incorrecto, pongas un link al correcto. Tambíen te agradeceré que le eches un vistazo a mi log, a ver que te parece. Muchas gracias y perdona las molestias.
    EDITO: Eliminada la linea que me has dicho y el resultado es el mismo, pantalla negra :(

    • @Davidprograma
      @Davidprograma  ปีที่แล้ว

      Un amigo ha tenido un problema similar con el código y me ha dado una pista que todavía no he podido probar. Se trata de _eliminar_ la opción -mfix-esp32-psram-cache-issue del fichero platformio.ini (hacia el final). Y después upload and monitor como de costumbre. ¿Lo podéis probar y decirme si lo arregla? Gracias

    • @Davidprograma
      @Davidprograma  ปีที่แล้ว

      He visto tu log y he encontrado algo raro...
      E (254) I2S: i2s_calculate_clock(1176): DAC clock calculate failed
      A mí no me pasa en mi placa. No estoy seguro de los detalles, pero el DAC creo se utiliza para generar señal de vídeo (en principio es un convertidor A/D de audio, pero llega a frecuencias tan altas que sirve para generar vídeo a resoluciones VGA). Creo que puede tener que ver, podría ser que hubieran cambiado algo en la placa, no sería la primera vez.

    • @Davidprograma
      @Davidprograma  ปีที่แล้ว

      En cuanto al nombre de la placa, ten en cuenta que estos proyectos van evolucionando, mejorando y corrigiendo errores. Cuando hice el vídeo el proyecto era todavía bastante parecido al emulador de Rampa, después lo modifiqué bastante y ahora es totalmente distinto (lo reestructuré y reescribí casi por completo). El nombre de placa lolin32 es la placa de desarrollo que usó Rampa, yo no lo toqué al principio porque me funcionaba, pero después ví que pico32 era más cercana a la TTGo, aunque ya no recuerdo exactamente en qué. Todas esas placas llevan ESP32 y son muy parecidas.

    • @Bullisbullis19
      @Bullisbullis19 ปีที่แล้ว

      @@Davidprograma También me llamó la atención ese error. Pero pensaba que estaría relacionado con la emulación de audio. Por internet encontré algo de info sobre esto, rreferente a que da el fallo a partir de una versión, pero no entendí bien el asunto. Es posible que el problema esté en las versiones actuales de alguna parte de software y no de la placa. Quizá desactualizando cosas, pero qué?. También hay algún problemilla más en ese log. En fin, ahora estoy trabajando. Intentaré hacer hoy esa prueba que me has comentado, a ver que está pasando y comentaré resultados. Todavía no he votado al vendedor de la placa, estoy esperando a confirmar que funciona bien :)

    • @Bullisbullis19
      @Bullisbullis19 ปีที่แล้ว

      @@Davidprograma Te lo repito aquí, poque igual no lo ves más abajo. Decía que mi gozo en un pozo, que he eliminado la linea y sigue igual :(

  • @AlexanderAbramovNN
    @AlexanderAbramovNN 3 ปีที่แล้ว +1

    Отличный девайс

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว +2

      Спасибо

    • @razerov
      @razerov 3 ปีที่แล้ว

      @@Davidprograma Pentagon-128 может сэмулировать?

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว +1

      не с этой прошивкой, но я думаю девайс могло бы эмулировать Пентагон 128 с соответствующей прошивкой.

    • @rampamac
      @rampamac 3 ปีที่แล้ว +1

      Hola, me ha encantado el vídeo, soy uno de los desarrolladores del soft. Felicidades!

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว +1

      Hola Ramón, encantado de saludarte. Soy el que os ha estado haciendo pull requests al repo este verano, aunque hasta ahora sólo había hablado con Jorge. Échale un vistazo a otro vídeo de este canal, "Emulador de Spectrum para ESP32 + teclado PS/2", donde consigo embutir una DevKit ESP32 WRover con cables y conectores dentro de un teclado PS/2 mini; en la Lilygo viene todo hecho :-)

  • @asilvestrado
    @asilvestrado 2 ปีที่แล้ว +1

    En mi caso vino con space invaders.

    • @Davidprograma
      @Davidprograma  2 ปีที่แล้ว +1

      Aparentemente el fabricante entrega la placa flasheada con una de las demos de FabGL:
      www.fabglib.org/
      En mi caso, audio output demo. En el tuyo, space invaders ;-)

    • @asilvestrado
      @asilvestrado 2 ปีที่แล้ว

      @@Davidprograma es la versión 1.4, te doy las gracias porque tu video fué el que me animó a meterme en este berenjenal, pero la versión que me bajé de tu repositorio pone otro archivo de configuración y otro modelo, lo conseguí grabar pero no me funcionó, daba errores de rom del spectrum al resetear, llegaba a cargar algún juego pero no iba bien, al final le instalé una modificación de tu proyecto que de momento me inicia bien. En tu ejemplo imagino que tienes varias tarjetas o dispositivos pero con uno sólo el paso de definir el puerto se hace automático, es un poco confuso pero una vez que entiendes la dinámica debería de funcionar pero con la ansiedad de tener un engendro funcionando pues no estoy para buscar errores. ¿ Puede tener algo que ver con no tener una SD enchufada ?, he visto en tu documentación algo de la sd, también puede ser que tenga algo "raro" o diferente en mi ordenador y no me entere, con el entorno de arduino no he tenido mucho éxito. Lo tendré que mirar con calma. Espero que te sirva de algo lo que te he puesto.

    • @Davidprograma
      @Davidprograma  2 ปีที่แล้ว +1

      Hola Pablo. Con la guía del vídeo debería funcionar, salvo que ya no hace falta indicar el puerto COM ya que lo reconoce automáticamente (en la última versión del repo el fichero platform.ini ya no indica el puerto COM).
      Hay dos formas de utilizar el emulador: con ficheros en la flash interna (USE_INT_FLASH) o con ficheros en SD (USE_SD_CARD). El código del emulador hay que grabarlo en los dos casos (opción de menú "Upload"), y si se usa la flash interna, también "Upload Filesystem Image". Si se usa la SD, hay que copiar el contenido del directorio /data a la raiz de la tarjeta (de modo que /rom esté en la raíz).
      Si te falla puedes lanzar la opción "Upload and Monitor" y ver en la consola serie de qué error se queja.
      Otra cosa, tienes que estar en la rama lilygo_ttgo_vga32 del repo. La rama master tiene configurados los pines para otro cacharro.

    • @asilvestrado
      @asilvestrado 2 ปีที่แล้ว

      @@Davidprograma Volveré al repositorio por si me bajé el que no era, pasé por varios estados de susto, en un primer intento no arrancaba, luego me cargó un juego, después no reconocía las roms pero cargaba algún juego y daba error, entre medias no encontraba las opciones de upload que había encontrado antes, muy divertido. Gracias por responder y el proyecto, en una semanas te cuento, hice todo un poco apurado y esta vez me lo voy a tomar con más calma, tengo mono de 1982 Sinclair Research Ltd, se que tú me entiendes, yo me metí en la informática por un 16k.

    • @asilvestrado
      @asilvestrado 2 ปีที่แล้ว

      Buenas noticias, descargué otra vez el programa, modifiqué la configuración para SD, borré la memoria, subí la estructura, subí el código y copié unos juegos a la SD, de momento me funciona bien, me falló el spy hunter pero el resto me fue bien, probé de distintos tamaños, 16,48 y 128. Me extrañaba lo del PICO, respecto al del vídeo.

  • @beforth
    @beforth 2 ปีที่แล้ว +1

    Por ~15 euros y subiendo...

  • @Dejotaerre
    @Dejotaerre ปีที่แล้ว

    ¿Esto es OTRO Spectrum emulado por software en vez de un hardware reimplementado con FPGAs? ¿que sentido tiene gastar un duro siquiera si se puede hacer exactamente lo mismo con PC relativamente viejo incluyendo una Raspberry PI 3 o 4?

    • @Davidprograma
      @Davidprograma  ปีที่แล้ว +2

      Tiene todo el sentido, exactamente el mismo que tiene hacer correr Doom en una cámara de fotos o en una impresora: porque se puede, y por todo lo que se aprende en el camino. El ESP32 es un microcontrolador, al contrario que un PC o un Raspberry Pi no lleva sistema operativo, sino un programa único ya que está pensado para ir embebido en otros sistemas (yo lo conocí trabajando en un cargador para coches eléctricos que lo lleva). Por no tener, no tiene ni salida de vídeo ni de audio dedicadas (aunque se pueden implementar por software/bit banging). Tampoco tiene entrada de teclado, también se implementa por bit banging. Tiene un procesador a 240Mhz y muy poca memoria, nominalmente 520kb, en la práctica mucho menos debido a la segmentación interna del ejecutable. Y con todo, es una máquina interesantísima para aprender cómo funciona un emulador, al no haber sistema operativo y tener que hacerlo todo uno mismo al correr en una máquina desnuda, se entiende mejor todo lo que está pasando, no hay capas por debajo que hagan cosas que no se llega a entender. Empecé a cacharrear con el ESP32 como una placa suelta pinchada en una placa de desarrollo conectándole cables (eso sí que fue barato). Después conocí la lilygo, que era lo mismo, pero ya venía con conectores montados, y me pareció más conveniente para personas que prefieren no lidiar con cables, pines, resistencias, soldaduras... Pero sigue teniendo su nivel de dificultad (y por tanto su nivel de satisfacción al hacerlo funcionar).

  • @Bullisbullis19
    @Bullisbullis19 ปีที่แล้ว +1

    Hola David: Enhorabuena por el trabajo, que me parece espléndido. Quería preguntarte sobre una duda que me surge con el ID de Arduino, ya que en el primer video pareces sugerir que puede usarse, pero en este video parece que por narices hay que usar visual studio, que nunca se ha llevado bien conmigo y estoy más hecho al IDE de arduino. Podrías aclararme este punto y de ser posible hacerse, unas pequeñas instrucciones? Muchas gracias.
    Edito: También quisiera saber si has probado a usarlo con adaptador hdmi, a ver que tal va. Aprovecho para pasar un link que en lugar de 15,24€, vale 15,90€, pero que los portes son gratis, frente a los exagerados 8,39€ del de tu enlace. Parece exactamente el mismo, así que te ruego revises el link y si lo consideras oportuno, pues actualices tu enlace.
    es.aliexpress.com/item/1005003908378632.html?spm=a2g0o.detail.1000014.4.2ac764a280KUuv&gps-id=pcDetailBottomMoreOtherSeller&scm=1007.40050.281175.0&scm_id=1007.40050.281175.0&scm-url=1007.40050.281175.0&pvid=3e5b0257-0954-479e-ac6f-6aa29858c79e&_t=gps-id:pcDetailBottomMoreOtherSeller,scm-url:1007.40050.281175.0,pvid:3e5b0257-0954-479e-ac6f-6aa29858c79e,tpp_buckets:668%232846%238115%232000&pdp_ext_f=%7B%22sku_id%22%3A%2212000027440535278%22%2C%22sceneId%22%3A%2230050%22%7D&pdp_npi=2%40dis%21EUR%2121.48%2115.9%21%21%21%21%21%40211b43e416691615572946311eb433%2112000027440535278%21rec

    • @Davidprograma
      @Davidprograma  ปีที่แล้ว

      Hola Luis Miguel, siento no poder ayudarte con el IDE de Arduino, lo he utilizado muy poco y no lo conozco lo suficiente para dar consejos. El desarrollo se hizo sobre VSCode y seguramente necesitaría una adaptación para el IDE de Arduino y no soy el adecuado para hacerla. Sobre los conversores vga a hdmi, tengo uno barato de 4€ (igual ahora son más caros) y a mí me va bastante bien. En cuanto al enlace, ya ves cómo ha subido todo y es normal que con el tiempo que ha pasado desde que hice el vídeo ya esté desactualizado (al menos, en cuanto a precio). Prefiero dejar el enlace a la tienda oficial lilygo, otros vendedores aparecen y desaparecen continuamente (sobre todo los que tienen pocas ventas). He puesto una nota en la descripción recomendando buscar otros vendedores.

    • @Bullisbullis19
      @Bullisbullis19 ปีที่แล้ว

      @@Davidprograma Muchas gracias David. He pedido el del enlace que te puse y ya veremos como va. Instalaré el VSCode y a ver si me aclaro :) Al igual que tú, lo que me pasa es que me acostumbro a algo y luego cambiar se me hace muy cuesta arriba. En cuanto a tu emulador, creo después de dar unos cuantos click que me lleva a otro que no se llama ESPectrum y pone que es el mismo con algunas mejoras. No tengo claro si es el correcto, pero creo que sí, pero con el WIImote implementado. Si me aclaro con el VSCCode, me gustaría experimentar con otros mandos, como los de PS3 o PS4, que sé que hay librerías. A mi lo que me gusta es palpar, porque eso de grabar el trabajo de otro tal cual y sin tocarle cosas, no me gusta y además no se aprende nada. Lo dicho, muchas gracias por todo y un fuerte abrazo. Pd: Lo olvidaba, crees que será muy complicado implemanetar carga real de cinta? No sirve para mucho, pero me gustaría :)

  • @nya111222
    @nya111222 3 ปีที่แล้ว

    Hi. I can't upload, visual studio give me a error. Help
    compilation terminated.
    *** [.pio\build\pico32\src\ESP32Lib\VGA\VGA.cpp.o] Error 1

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว +1

      That's strange, never happened to me. Any more data in the error message? Try performing a 'clean', and then a 'build'.

    • @nya111222
      @nya111222 3 ปีที่แล้ว

      @@Davidprograma i try gameboy and naw this error
      .platformio\packages\framework-arduinoespressif32\tools\sdk\lib\libapp_trace.a: file not recognized: File truncated
      collect2.exe: error: ld returned 1 exit status
      *** [.pio\build\lolin32\firmware.elf] Error 1

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว

      @@nya111222 gameboy? this is a spectrum only emulator...

    • @nya111222
      @nya111222 3 ปีที่แล้ว

      @@Davidprograma i know. i try another emulator and platformio can't build.

    • @Davidprograma
      @Davidprograma  3 ปีที่แล้ว

      @@nya111222 Maybe it's a problem with platformio itself, or its libraries; not related with the code from the spectrum or the gameboy emulators...