{"id":1163,"date":"2026-05-26T19:15:47","date_gmt":"2026-05-26T19:15:47","guid":{"rendered":"https:\/\/www.endorasoft.com\/?p=1163"},"modified":"2026-05-26T19:15:47","modified_gmt":"2026-05-26T19:15:47","slug":"esp32-sbc-fabgl-cuando-un-esp32-se-convierte-en-un-pc-con-ms-dos","status":"publish","type":"post","link":"https:\/\/www.endorasoft.com\/?p=1163","title":{"rendered":"ESP32-SBC-FabGL: Cuando un ESP32 se convierte en un PC con MS-DOS"},"content":{"rendered":"<p data-start=\"69\" data-end=\"215\">Hay proyectos que te sorprenden por lo complejos que son\u2026 y luego est\u00e1n los que te sorprenden porque funcionan much\u00edsimo mejor de lo que deber\u00edan.<\/p>\n<p data-start=\"217\" data-end=\"285\">Eso es exactamente lo que me ha pasado con la placa ESP32-SBC-FabGL.<\/p>\n<p data-start=\"287\" data-end=\"548\">La idea parece casi absurda sobre el papel: usar un \u00fanico chip ESP32 para emular un entorno Intel cl\u00e1sico capaz de arrancar MS-DOS o FreeDOS, gestionar im\u00e1genes de disquete y disco duro, ejecutar software antiguo y ofrecer una experiencia razonablemente usable.<\/p>\n<p data-start=\"550\" data-end=\"574\">Y sin embargo\u2026 funciona.<\/p>\n<p data-start=\"576\" data-end=\"886\">Aqu\u00ed hay que reconocer el enorme trabajo realizado por <span class=\"hover:entity-accent entity-underline inline cursor-pointer align-baseline\"><span class=\"whitespace-normal\">Fabrizio Di Vittorio<\/span><\/span> con FabGL. El nivel de optimizaci\u00f3n y de ingenier\u00eda detr\u00e1s del proyecto es impresionante. Estamos hablando de hacer cosas que, hace no tantos a\u00f1os, habr\u00edamos considerado imposibles en un microcontrolador de este tipo.<\/p>\n<h2 data-section-id=\"11bm0ia\" data-start=\"888\" data-end=\"910\">\u00bfPor qu\u00e9 la Olimex?<\/h2>\n<p data-start=\"912\" data-end=\"1058\">Existen muchas variantes y montajes diferentes basados en esta idea, pero yo me he decidido por la placa de <span class=\"hover:entity-accent entity-underline inline cursor-pointer align-baseline\"><span class=\"whitespace-normal\">Olimex Ltd<\/span><\/span>.<\/p>\n<p data-start=\"1060\" data-end=\"1273\">Olimex es una vieja conocida para m\u00ed. Ya trabajaba con placas basadas en ATMEGA128 de esta empresa mucho antes de que existiera el primer Arduino. As\u00ed que hab\u00eda tambi\u00e9n un componente \u201cnost\u00e1lgico\u201d en esta elecci\u00f3n.<\/p>\n<p data-start=\"1275\" data-end=\"1320\">El precio adem\u00e1s es muy razonable: unos 18 \u20ac.<\/p>\n<p data-start=\"1275\" data-end=\"1320\"><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-1164 aligncenter\" src=\"https:\/\/www.endorasoft.com\/wp-content\/uploads\/2026\/05\/380477440-ea5a9945-1495-49a1-b18d-9b9977b28bd6-300x300.jpg\" alt=\"\" width=\"300\" height=\"300\" srcset=\"https:\/\/www.endorasoft.com\/wp-content\/uploads\/2026\/05\/380477440-ea5a9945-1495-49a1-b18d-9b9977b28bd6-300x300.jpg 300w, https:\/\/www.endorasoft.com\/wp-content\/uploads\/2026\/05\/380477440-ea5a9945-1495-49a1-b18d-9b9977b28bd6-150x150.jpg 150w, https:\/\/www.endorasoft.com\/wp-content\/uploads\/2026\/05\/380477440-ea5a9945-1495-49a1-b18d-9b9977b28bd6.jpg 540w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/p>\n<p data-start=\"1322\" data-end=\"1472\">Y s\u00ed, siendo sinceros, la placa no deja de ser b\u00e1sicamente el chip de Espressif acompa\u00f1ado de conectores adicionales y algo de circuiter\u00eda de soporte.<\/p>\n<p data-start=\"1474\" data-end=\"1547\">\u00bfPodr\u00eda haberme montado esto yo mismo con una Uniprint y cableado manual?\u00a0 S\u00ed.<\/p>\n<p data-start=\"1554\" data-end=\"1587\">\u00bfMe habr\u00eda aportado algo hacerlo?\u00a0 \u00a0Sinceramente, no.<\/p>\n<p data-start=\"1554\" data-end=\"1587\">No iba a mejorar el dise\u00f1o y \u00fanicamente habr\u00eda a\u00f1adido trabajo mec\u00e1nico sin demasiado valor t\u00e9cnico adicional.<\/p>\n<h2 data-section-id=\"66mxfl\" data-start=\"1720\" data-end=\"1745\">Entendiendo el sistema<\/h2>\n<p data-start=\"1747\" data-end=\"1821\">La primera fase fue entender c\u00f3mo funciona todo el mecanismo del emulador:<\/p>\n<ul data-start=\"1823\" data-end=\"2027\">\n<li data-section-id=\"cjoke0\" data-start=\"1823\" data-end=\"1860\">Generaci\u00f3n de im\u00e1genes de disquete.<\/li>\n<li data-section-id=\"1efkdg\" data-start=\"1861\" data-end=\"1886\">Im\u00e1genes de disco duro.<\/li>\n<li data-section-id=\"zszp69\" data-start=\"1887\" data-end=\"1915\">Configuraci\u00f3n de arranque.<\/li>\n<li data-section-id=\"v0jcvj\" data-start=\"1916\" data-end=\"1957\">Carga de distintos sistemas operativos.<\/li>\n<li data-section-id=\"c32czw\" data-start=\"1958\" data-end=\"1990\">Estructura de las particiones.<\/li>\n<li data-section-id=\"1fkmirn\" data-start=\"1991\" data-end=\"2027\">&#8230; y limitaciones reales del sistema.<\/li>\n<\/ul>\n<p data-start=\"2029\" data-end=\"2207\">Despu\u00e9s de varias pruebas consegu\u00ed generar diferentes im\u00e1genes funcionales tanto para floppy como para HD y comprender bastante bien c\u00f3mo el emulador gestiona el proceso de boot.<\/p>\n<p data-start=\"2209\" data-end=\"2261\">Y aqu\u00ed apareci\u00f3 otro detalle importante: <strong>el teclado<\/strong>.<\/p>\n<p data-start=\"2263\" data-end=\"2390\">Para las pruebas he utilizado un aut\u00e9ntico IBM Model M, que sigue siendo el teclado que utilizo actualmente en mi PC principal.<\/p>\n<p data-start=\"2392\" data-end=\"2419\">S\u00ed, todav\u00eda uso un Model M.<\/p>\n<p data-start=\"2421\" data-end=\"2491\">Y sigo pensando que probablemente sea el mejor teclado de la historia.<\/p>\n<p data-start=\"2493\" data-end=\"2687\">Lo curioso es que este tipo de teclado encaja perfectamente con el esp\u00edritu de esta placa. De hecho, para disfrutar realmente de la experiencia retro, casi resulta obligatorio utilizar algo as\u00ed. Afortunadamente, a d\u00eda de hoy no es complicado seguir utiliz\u00e1ndolos mediante adaptadores modernos.<\/p>\n<p data-start=\"2789\" data-end=\"2901\"><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-1178 aligncenter\" src=\"https:\/\/www.endorasoft.com\/wp-content\/uploads\/2026\/05\/ESP32IBM_M-262x300.jpg\" alt=\"\" width=\"262\" height=\"300\" srcset=\"https:\/\/www.endorasoft.com\/wp-content\/uploads\/2026\/05\/ESP32IBM_M-262x300.jpg 262w, https:\/\/www.endorasoft.com\/wp-content\/uploads\/2026\/05\/ESP32IBM_M-894x1024.jpg 894w, https:\/\/www.endorasoft.com\/wp-content\/uploads\/2026\/05\/ESP32IBM_M-768x879.jpg 768w, https:\/\/www.endorasoft.com\/wp-content\/uploads\/2026\/05\/ESP32IBM_M-1341x1536.jpg 1341w, https:\/\/www.endorasoft.com\/wp-content\/uploads\/2026\/05\/ESP32IBM_M-1789x2048.jpg 1789w\" sizes=\"auto, (max-width: 262px) 100vw, 262px\" \/><\/p>\n<p data-start=\"2789\" data-end=\"2901\">Por otra parte, la configuraci\u00f3n del sistema operativo tambi\u00e9n tuvo su peque\u00f1a dosis de arqueolog\u00eda inform\u00e1tica.<\/p>\n<p data-start=\"2903\" data-end=\"3014\">Hubo que quitar bastantes telara\u00f1as de la memoria para volver a configurar correctamente el entorno en espa\u00f1ol:<\/p>\n<ul data-start=\"3016\" data-end=\"3201\">\n<li data-section-id=\"7naagc\" data-start=\"3016\" data-end=\"3043\">distribuci\u00f3n del teclado,<\/li>\n<li data-section-id=\"uc67s0\" data-start=\"3044\" data-end=\"3065\">p\u00e1ginas de c\u00f3digos,<\/li>\n<li data-section-id=\"hkt6iy\" data-start=\"3066\" data-end=\"3091\">configuraci\u00f3n regional,<\/li>\n<li data-section-id=\"1p347rx\" data-start=\"3092\" data-end=\"3201\">y, por supuesto, conseguir que apareciera correctamente la \u00d1 y que todas las teclas estuvieran en su sitio.<\/li>\n<\/ul>\n<p data-start=\"3203\" data-end=\"3321\">Son de esas cosas que en los a\u00f1os 90 hac\u00edamos casi de memoria y que hoy cuesta recordar c\u00f3mo demonios se configuraban.<\/p>\n<p data-start=\"3323\" data-end=\"3412\">Despu\u00e9s de un rato pele\u00e1ndome con AUTOEXEC.BAT y CONFIG.SYS, todo volvi\u00f3 a la normalidad.<\/p>\n<p data-start=\"3414\" data-end=\"3442\">Y s\u00ed\u2026 la \u00d1 volvi\u00f3 a existir.<\/p>\n<h2 data-section-id=\"rfg1k4\" data-start=\"3444\" data-end=\"3471\">Probando juegos cl\u00e1sicos<\/h2>\n<p data-start=\"3473\" data-end=\"3524\">Las primeras pruebas fueron, evidentemente, juegos. Hab\u00eda que comprobar hasta d\u00f3nde llegaba realmente el invento. Los primeros elegidos fueron algunos cl\u00e1sicos muy antiguos que recuerdo perfectamente de la plataforma MS-DOS:<\/p>\n<ul data-start=\"3701\" data-end=\"3820\">\n<li data-section-id=\"1etlrsl\" data-start=\"3701\" data-end=\"3740\"><span class=\"hover:entity-accent entity-underline inline cursor-pointer align-baseline\"><span class=\"whitespace-normal\">Congo Bongo<\/span><\/span><\/li>\n<li data-section-id=\"1fetjdh\" data-start=\"3741\" data-end=\"3780\"><span class=\"hover:entity-accent entity-underline inline cursor-pointer align-baseline\"><span class=\"whitespace-normal\">JBird<\/span><\/span><\/li>\n<li data-section-id=\"16uh11\" data-start=\"3781\" data-end=\"3820\"><span class=\"hover:entity-accent entity-underline inline cursor-pointer align-baseline\"><span class=\"whitespace-normal\">King&#8217;s Quest<\/span><\/span><\/li>\n<\/ul>\n<div style=\"width: 1280px;\" class=\"wp-video\"><video class=\"wp-video-shortcode\" id=\"video-1163-1\" width=\"1280\" height=\"720\" preload=\"metadata\" controls=\"controls\"><source type=\"video\/mp4\" src=\"https:\/\/www.endorasoft.com\/wp-content\/uploads\/2026\/05\/congobongo.mp4?_=1\" \/><a href=\"https:\/\/www.endorasoft.com\/wp-content\/uploads\/2026\/05\/congobongo.mp4\">https:\/\/www.endorasoft.com\/wp-content\/uploads\/2026\/05\/congobongo.mp4<\/a><\/video><\/div>\n<div style=\"width: 1280px;\" class=\"wp-video\"><video class=\"wp-video-shortcode\" id=\"video-1163-2\" width=\"1280\" height=\"720\" preload=\"metadata\" controls=\"controls\"><source type=\"video\/mp4\" src=\"https:\/\/www.endorasoft.com\/wp-content\/uploads\/2026\/05\/JBird.mp4?_=2\" \/><a href=\"https:\/\/www.endorasoft.com\/wp-content\/uploads\/2026\/05\/JBird.mp4\">https:\/\/www.endorasoft.com\/wp-content\/uploads\/2026\/05\/JBird.mp4<\/a><\/video><\/div>\n<div style=\"width: 1280px;\" class=\"wp-video\"><video class=\"wp-video-shortcode\" id=\"video-1163-3\" width=\"1280\" height=\"720\" preload=\"metadata\" controls=\"controls\"><source type=\"video\/mp4\" src=\"https:\/\/www.endorasoft.com\/wp-content\/uploads\/2026\/05\/KQ.mp4?_=3\" \/><a href=\"https:\/\/www.endorasoft.com\/wp-content\/uploads\/2026\/05\/KQ.mp4\">https:\/\/www.endorasoft.com\/wp-content\/uploads\/2026\/05\/KQ.mp4<\/a><\/video><\/div>\n<p data-start=\"3822\" data-end=\"3869\">Los resultados fueron sorprendentemente buenos. Todo funcion\u00f3 correctamente\u2026 excepto <em data-start=\"3908\" data-end=\"3922\">King\u2019s Quest<\/em>.<\/p>\n<p data-start=\"3925\" data-end=\"3959\">Y aqu\u00ed lleg\u00f3 la peque\u00f1a decepci\u00f3n.<\/p>\n<p data-start=\"3961\" data-end=\"4194\">Tengo la sospecha de que este juego utiliza alguna gesti\u00f3n bastante especial del modo CGA o alguna t\u00e9cnica espec\u00edfica de v\u00eddeo que el emulador no maneja del todo bien. El caso es que no hubo manera de hacerlo funcionar correctamente.<\/p>\n<p data-start=\"4196\" data-end=\"4279\">Una l\u00e1stima, porque era precisamente el que m\u00e1s ilusi\u00f3n me hac\u00eda volver a ejecutar.<\/p>\n<h2 data-section-id=\"1twmrya\" data-start=\"0\" data-end=\"45\">La prueba definitiva: compiladores Borland<\/h2>\n<p data-start=\"47\" data-end=\"83\">La siguiente etapa ya era m\u00e1s seria:<\/p>\n<p data-start=\"85\" data-end=\"120\">probar los compiladores de Borland.<\/p>\n<p data-start=\"122\" data-end=\"136\">Concretamente:<\/p>\n<ul data-start=\"138\" data-end=\"217\">\n<li data-section-id=\"15a85x\" data-start=\"138\" data-end=\"177\"><span class=\"hover:entity-accent entity-underline inline cursor-pointer align-baseline\"><span class=\"whitespace-normal\">Turbo Pascal<\/span><\/span><\/li>\n<li data-section-id=\"lyf7sl\" data-start=\"178\" data-end=\"217\"><span class=\"hover:entity-accent entity-underline inline cursor-pointer align-baseline\"><span class=\"whitespace-normal\">Turbo C<\/span><\/span><\/li>\n<\/ul>\n<p data-start=\"219\" data-end=\"255\">Y aqu\u00ed me encontr\u00e9 con algo curioso. No recordaba en absoluto que hubi\u00e9ramos programado durante tantos a\u00f1os con unas letras TAN gordas. Supongo que la memoria idealiza muchas cosas de aquella \u00e9poca.<\/p>\n<p data-start=\"421\" data-end=\"600\">Aun as\u00ed, resulta incre\u00edble ver c\u00f3mo un peque\u00f1o ESP32 puede levantar herramientas de desarrollo cl\u00e1sicas y ofrecer una experiencia perfectamente utilizable para programaci\u00f3n retro. Y eso, sinceramente, sigue pareci\u00e9ndome magia negra electr\u00f3nica.<\/p>\n<p data-start=\"668\" data-end=\"798\">La primera experiencia real con los compiladores de Borland fue escribir un peque\u00f1o programa en C para probar el modo gr\u00e1fico CGA. En su momento probablemente ten\u00eda m\u00e1s control sobre <span class=\"hover:entity-accent entity-underline inline cursor-pointer align-baseline\"><span class=\"whitespace-normal\">Turbo Pascal<\/span><\/span>, b\u00e1sicamente porque apareci\u00f3 antes que <span class=\"hover:entity-accent entity-underline inline cursor-pointer align-baseline\"><span class=\"whitespace-normal\">Turbo C<\/span><\/span> y pas\u00e9 much\u00edsimas horas programando con \u00e9l.<\/p>\n<p data-start=\"1012\" data-end=\"1029\"><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-1168 alignleft\" src=\"https:\/\/www.endorasoft.com\/wp-content\/uploads\/2026\/05\/mode-151x300.jpg\" alt=\"\" width=\"151\" height=\"300\" srcset=\"https:\/\/www.endorasoft.com\/wp-content\/uploads\/2026\/05\/mode-151x300.jpg 151w, https:\/\/www.endorasoft.com\/wp-content\/uploads\/2026\/05\/mode-514x1024.jpg 514w, https:\/\/www.endorasoft.com\/wp-content\/uploads\/2026\/05\/mode.jpg 593w\" sizes=\"auto, (max-width: 151px) 100vw, 151px\" \/>Pero ahora ya no. Despu\u00e9s de m\u00e1s de 35 a\u00f1os trabajando pr\u00e1cticamente a diario con C y C++, el lenguaje me sale de manera completamente natural. Pascal sigue siendo un gran lenguaje. De hecho, siempre he hecho la misma broma:<\/p>\n<p data-start=\"1240\" data-end=\"1312\">\u00ab&#8230;desde el punto de vista de Pascal\u2026 C no es m\u00e1s que un simple comentario!\u00bb\u00a0 \u00a0(El que lo sepa lo entendera el que no&#8230; pues no)<\/p>\n<p data-start=\"1314\" data-end=\"1382\">Para la prueba realic\u00e9 una peque\u00f1a aplicaci\u00f3n extremadamente simple: Un m\u00f3dulo que cambiaba el sistema al modo gr\u00e1fico CGA, dibujaba directamente sobre memoria de v\u00eddeo unas cuantas rayas de colores y luego regresaba otra vez al modo texto.<\/p>\n<p data-start=\"1557\" data-end=\"1565\"><em>Simpl\u00f3n. Muy simpl\u00f3n.<\/em><\/p>\n<p data-start=\"1581\" data-end=\"1711\">Pero perfecto para comprobar c\u00f3mo respond\u00eda realmente el sistema y verificar que toda la gesti\u00f3n gr\u00e1fica funcionaba correctamente.<\/p>\n<p data-start=\"1713\" data-end=\"1794\" data-is-last-node=\"\" data-is-only-node=\"\">Y lo m\u00e1s curioso es que funcion\u00f3 exactamente igual que lo recordaba hace d\u00e9cadas&#8230;<\/p>\n<div style=\"width: 1280px;\" class=\"wp-video\"><video class=\"wp-video-shortcode\" id=\"video-1163-4\" width=\"1280\" height=\"720\" preload=\"metadata\" controls=\"controls\"><source type=\"video\/mp4\" src=\"https:\/\/www.endorasoft.com\/wp-content\/uploads\/2026\/05\/mode.mp4?_=4\" \/><a href=\"https:\/\/www.endorasoft.com\/wp-content\/uploads\/2026\/05\/mode.mp4\">https:\/\/www.endorasoft.com\/wp-content\/uploads\/2026\/05\/mode.mp4<\/a><\/video><\/div>\n<p data-start=\"4949\" data-end=\"5089\">La siguiente etapa: Compilar codigo que realice hace mas de 30 a\u00f1os.\u00a0 (unos 37 a\u00f1os).\u00a0 Los primeros programas propios que decid\u00ed probar fueron algunas de las \u00faltimas pruebas que realic\u00e9 en entorno gr\u00e1fico durante aquella \u00e9poca.<\/p>\n<p data-start=\"5091\" data-end=\"5105\">Concretamente:<\/p>\n<ul data-start=\"5107\" data-end=\"5197\">\n<li data-section-id=\"1lgo2nx\" data-start=\"5107\" data-end=\"5128\">Pruebas de sprites,<\/li>\n<li data-section-id=\"10yt65k\" data-start=\"5129\" data-end=\"5148\">Rutinas gr\u00e1ficas,<\/li>\n<li data-section-id=\"1il2lp7\" data-start=\"5149\" data-end=\"5197\">&#8230; y mis experimentos con motores tipo Filmation.<\/li>\n<\/ul>\n<p data-start=\"5199\" data-end=\"5244\">Y aqu\u00ed hay que reconocer una cosa importante: yo NO era grafista.<\/p>\n<p data-start=\"5267\" data-end=\"5320\">As\u00ed que hice lo que hac\u00edamos muchos en aquellos a\u00f1os: \u201cinspirarnos intensamente\u201d en gr\u00e1ficos ya existentes.<\/p>\n<p data-start=\"5377\" data-end=\"5400\">O dicho m\u00e1s claramente: me \u201cmangu\u00e9\u201d literalmente gr\u00e1ficos de juegos de la \u00e9poca y de t\u00edtulos de <span class=\"hover:entity-accent entity-underline inline cursor-pointer align-baseline\"><span class=\"whitespace-normal\">Sinclair Research<\/span><\/span> ZX Spectrum 128K.<\/p>\n<p data-start=\"5531\" data-end=\"5672\">En concreto, ten\u00eda conectado mi Spectrum 128K\u00a0 \u201cToastrack\u201d y realizaba capturas de pantallas y sprites que luego transfer\u00eda mediante RS232.<\/p>\n<p data-start=\"5674\" data-end=\"5684\">S\u00ed, RS232!.\u00a0 \u00a0Y s\u00ed, utilizando el puerto MIDI del 128K Toastrack.<\/p>\n<p data-start=\"5739\" data-end=\"5845\">Visto desde hoy parece completamente absurdo\u2026 pero en aquel momento era una soluci\u00f3n perfectamente v\u00e1lida. Con todo aquello termin\u00e9 montando mis propias pruebas de Filmation utilizando gr\u00e1ficos claramente inspirados en:<\/p>\n<ul data-start=\"5961\" data-end=\"6044\">\n<li data-section-id=\"yuzy45\" data-start=\"5961\" data-end=\"6002\"><span class=\"hover:entity-accent entity-underline inline cursor-pointer align-baseline\"><span class=\"whitespace-normal\">Knight Lore<\/span><\/span><\/li>\n<li data-section-id=\"1flqygl\" data-start=\"6003\" data-end=\"6044\"><span class=\"hover:entity-accent entity-underline inline cursor-pointer align-baseline\"><span class=\"whitespace-normal\">Nightshade<\/span><\/span><\/li>\n<\/ul>\n<p data-start=\"6046\" data-end=\"6136\">Especialmente reutilizando y adaptando muchos de los movimientos finales del protagonista.<\/p>\n<div style=\"width: 1280px;\" class=\"wp-video\"><video class=\"wp-video-shortcode\" id=\"video-1163-5\" width=\"1280\" height=\"720\" preload=\"metadata\" controls=\"controls\"><source type=\"video\/mp4\" src=\"https:\/\/www.endorasoft.com\/wp-content\/uploads\/2026\/05\/sprites.mp4?_=5\" \/><a href=\"https:\/\/www.endorasoft.com\/wp-content\/uploads\/2026\/05\/sprites.mp4\">https:\/\/www.endorasoft.com\/wp-content\/uploads\/2026\/05\/sprites.mp4<\/a><\/video><\/div>\n<div style=\"width: 1280px;\" class=\"wp-video\"><video class=\"wp-video-shortcode\" id=\"video-1163-6\" width=\"1280\" height=\"720\" preload=\"metadata\" controls=\"controls\"><source type=\"video\/mp4\" src=\"https:\/\/www.endorasoft.com\/wp-content\/uploads\/2026\/05\/Filmation.mp4?_=6\" \/><a href=\"https:\/\/www.endorasoft.com\/wp-content\/uploads\/2026\/05\/Filmation.mp4\">https:\/\/www.endorasoft.com\/wp-content\/uploads\/2026\/05\/Filmation.mp4<\/a><\/video><\/div>\n<h2 data-section-id=\"14ivfv4\" data-start=\"0\" data-end=\"15\">Conclusiones<\/h2>\n<p data-start=\"17\" data-end=\"163\">Y sinceramente\u2026 volver a ejecutar hoy esas pruebas en un \u201cpseudo-PC\u201d construido sobre un ESP32 produce una sensaci\u00f3n bastante dif\u00edcil de explicar.<\/p>\n<p data-start=\"165\" data-end=\"220\">Es como abrir una peque\u00f1a c\u00e1psula temporal inform\u00e1tica.<\/p>\n<p data-start=\"222\" data-end=\"478\">Hay algo profundamente nost\u00e1lgico en volver a escuchar el arranque de MS-DOS, ver aparecer el prompt otra vez o ejecutar herramientas y juegos que utilizabas hace m\u00e1s de 30 a\u00f1os\u2026 pero haci\u00e9ndolo ahora sobre un simple microcontrolador que cuesta apenas 6 \u20ac.<\/p>\n<p data-start=\"480\" data-end=\"534\">Y ah\u00ed es donde realmente te explota un poco la cabeza.<\/p>\n<p data-start=\"536\" data-end=\"690\">Porque este peque\u00f1o chip de <span class=\"hover:entity-accent entity-underline inline cursor-pointer align-baseline\"><span class=\"whitespace-normal\">Espressif Systems<\/span><\/span> es capaz de hacer muchas m\u00e1s cosas que un aut\u00e9ntico IBM PC de principios de los a\u00f1os 90.<\/p>\n<p data-start=\"692\" data-end=\"706\">Much\u00edsimo m\u00e1s.<\/p>\n<p data-start=\"708\" data-end=\"924\">M\u00e1s memoria, m\u00e1s velocidad, m\u00e1s integraci\u00f3n, m\u00e1s capacidad gr\u00e1fica, almacenamiento flash, WiFi, Bluetooth\u2026 todo dentro de algo que cabe pr\u00e1cticamente en la palma de la mano y consume una fracci\u00f3n rid\u00edcula de energ\u00eda.<\/p>\n<p data-start=\"926\" data-end=\"965\">As\u00ed funcionan las cosas en inform\u00e1tica.<\/p>\n<p data-start=\"967\" data-end=\"1175\">Lo que en 1992 ocupaba una mesa completa, necesitaba fuente AT, ventilaci\u00f3n, monitor CRT y varios cientos de miles de pesetas\u2026 hoy cabe dentro de un microcontrolador barato conectado a un teclado IBM Model M.<\/p>\n<p data-start=\"1177\" data-end=\"1230\">Y aun as\u00ed, lo realmente importante no es la potencia.<\/p>\n<p data-start=\"1232\" data-end=\"1435\">Lo verdaderamente interesante es que todav\u00eda podemos experimentar aquella sensaci\u00f3n de \u201carrancar un PC\u201d, tocar CONFIG.SYS, pelearte con AUTOEXEC.BAT, cargar juegos cl\u00e1sicos o compilar programas antiguos.<\/p>\n<p data-start=\"1437\" data-end=\"1470\">No es solamente retroinform\u00e1tica.<\/p>\n<p data-start=\"1472\" data-end=\"1532\">Es recuperar una manera distinta de entender la inform\u00e1tica.<\/p>\n<p data-start=\"1534\" data-end=\"1558\">M\u00e1s cercana al hardware.<\/p>\n<p data-start=\"1560\" data-end=\"1572\">M\u00e1s directa.<\/p>\n<p data-start=\"1574\" data-end=\"1588\">M\u00e1s artesanal.<\/p>\n<p data-start=\"1590\" data-end=\"1637\" data-is-last-node=\"\" data-is-only-node=\"\">Y probablemente tambi\u00e9n bastante m\u00e1s divertida&#8230;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Hay proyectos que te sorprenden por lo complejos que son\u2026 y luego est\u00e1n los que te sorprenden porque funcionan much\u00edsimo mejor de lo que deber\u00edan. Eso es exactamente lo que me ha pasado con la placa ESP32-SBC-FabGL. La idea parece casi absurda sobre el papel: usar un \u00fanico chip ESP32 para emular un entorno Intel [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-1163","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/www.endorasoft.com\/index.php?rest_route=\/wp\/v2\/posts\/1163","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.endorasoft.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.endorasoft.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.endorasoft.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.endorasoft.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1163"}],"version-history":[{"count":8,"href":"https:\/\/www.endorasoft.com\/index.php?rest_route=\/wp\/v2\/posts\/1163\/revisions"}],"predecessor-version":[{"id":1181,"href":"https:\/\/www.endorasoft.com\/index.php?rest_route=\/wp\/v2\/posts\/1163\/revisions\/1181"}],"wp:attachment":[{"href":"https:\/\/www.endorasoft.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1163"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.endorasoft.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1163"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.endorasoft.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1163"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}