6 ms·
PC-XT Emulator on a ESP8266 (2018)
- userbinator 7y ago1MB of the flash is used as a swapfile and creates virtual RAM space to the emulation through a MMU caching system That sounds like it would wear out the flash very quickly, especially given that the embedded flash on MCUs like these are not really designed for much in the way of write cycles (the usual case being firmware updates and configuration changes, both not high-frequency operations.) Interesting hack nonetheless, it reminds me of this: https://dmitry.gr/?r=05.Projects&proj=07.%20Linux%20on%208bit https://dmitry.gr/?r=05.Projects&proj=07.%20Linux%20on%208bi...
- basementcat 7y agoThe same person also has a C-64 emulator working on the same board. https://mcuhacker.wordpress.com/2018/03/03/running-the-c64-on-the-esp8266/ https://mcuhacker.wordpress.com/2018/03/03/running-the-c64-o...
- qwerty456127 7y agoWhat I (and, probably, a lot of people) would actually like to have is a 486 emulator (with at least 8 MB RAM) with a working ISA bus I could connect old extension cards to. That would be a way more practical (in fact insanely cool) although a ghost of a genuine antique like 640K XT still surely is a fun thing to touch. That could even have commercial applications - I believe there are many 486/ISA-based solutions still running in production in the wild.
- kristopolous 7y agoThere's ISA to USB devices for under $40 so you can hook the hardware up to a modern machine Then I'm sure you can use one of the many emulator solutions on the market to bridge the rest and if none are suitable it can't be that hard, the data is making it to the machine... I'll happily make it happen if you need to hack something like qemu, sounds like fun.
- userbinator 7y agoI think a lot of these ISA cards are for industrial control in realtime systems, so the added latency of USB is not going to work.
- kristopolous 7y agoAre you sure? We aren't in the world of USB 1.1 latency any more. Things have improved vastly since then.
- kevin_thibedeau 7y agoThere's still latency getting data DMAed through buffers from Host to slave no matter how fast the link is. It's also non-deterministic.
- userbinator 7y agoI found two people who measured latencies, one a PCIe parallel port and the other USB 3.0: https://stackoverflow.com/questions/41987430/what-is-the-lowest-latency-communication-method-between-a-computer-and-a-microco https://stackoverflow.com/questions/41987430/what-is-the-low... https://stackoverflow.com/questions/13831008/what-is-the-minimum-latency-of-usb-3-0 https://stackoverflow.com/questions/13831008/what-is-the-min... PCIe parallel port: 4-8us USB 3.0: 30us I believe a regular PCI or even ISA parallel port can be below 1us. Those are "real" buses, unlike USB and PCIe which are more similar to packet-switched networks.
- GekkePrutser 7y agoOk that is impressive... Very well done. And then to imagine I paid thousands for one back in the day (though my dad's work "PC at home" project). I could have just waited 35 years and spent 1 buck for the ESP8266 :)
- Koshkin 7y agoYet, “you get what you pay for” is still true...
- elliottkember 7y agoI'm always fascinated to see these projects on ESP8266. The board is great, but the ESP32 is a lot better - bluetooth LE, WiFi and dual-core at 240mhz, vs the WiFi and 80mhz available on the 8266. The firmware wasn't as robust until recently, but these days I use it constantly for little projects.
- jes5199 7y agoI’ve got projects on both, but honestly the extra power of the ESP32 is sort of overwhelming. If I want to use DMA SPC on the 8266, there’s only one pin I can use. On the 32, I can choose between most of the pins, but certain choices will prevent me from using certain other features, not that I necessarily need other features right now but maybe later, and also it affects my circuit layout. So the mental overhead is a lot higher!
- StavrosK 7y agoI'm in the same boat, plus the ESP8266 (and the ESP8285, there are some very nice bare packages of it) is only $1.8, so I can toss it into whatever throwaway thing and not care.
- sjwright 7y agoThe ESP32 is a lot better in many ways, but it suffers a bit from version 2 syndrome. The decision to go dual-core in particular. Personally I'm looking forward to the ESP32-S2 coming in quantity.
- leggomylibro 7y agoThe S2 lacks Bluetooth though, doesn't it? The second core is meant to handle the network stack, leaving the first core to focus on program logic. With ESP8266s, it can be hard to write complex applications while keeping heavy WiFi usage stable. Although, I'll bet the 8266 firmwares and libraries have improved a lot since I was using them.
- 7y ago
- DeathArrow 7y agoCan it run Wolfenstein 3D and Duke Nukem?
- DanBC 7y agoHe has another post where he runs a super low Res Wolfenstein on an ESP8266. https://mcuhacker.wordpress.com/2018/03/06/esp8266-tvout-library/ https://mcuhacker.wordpress.com/2018/03/06/esp8266-tvout-lib...