
PC-XT Emulator on a ESP8266 (2018) - DanBC
https://mcuhacker.wordpress.com/2018/02/22/forsta-blogginlagget/
======
elliottkember
I'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.

~~~
sjwright
The 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
The 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.

~~~
sjwright
The ESP32-S2 is best thought of as a spiritual successor to the ESP8266. If
you need Bluetooth, I’m pretty sure the ESP32 is still being produced.

------
qwerty456127
What 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
There'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
I 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
Are you sure? We aren't in the world of USB 1.1 latency any more. Things have
improved vastly since then.

~~~
userbinator
I 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-
low...](https://stackoverflow.com/questions/41987430/what-is-the-lowest-
latency-communication-method-between-a-computer-and-a-microco)

[https://stackoverflow.com/questions/13831008/what-is-the-
min...](https://stackoverflow.com/questions/13831008/what-is-the-minimum-
latency-of-usb-3-0)

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.

~~~
FPGAhacker
I don’t know about ISA, but pci (not e) can easily be under 1us. It would be
an odd design to have even that much latency.

As measured on the bus.

------
basementcat
The same person also has a C-64 emulator working on the same board.

[https://mcuhacker.wordpress.com/2018/03/03/running-
the-c64-o...](https://mcuhacker.wordpress.com/2018/03/03/running-the-c64-on-
the-esp8266/)

------
userbinator
_1MB 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%208bi...](https://dmitry.gr/?r=05.Projects&proj=07.%20Linux%20on%208bit)

~~~
eschaton
Yeah, it’d almost be better to use SD for virtual memory to at least put the
flash wear on something consumable.

~~~
lann
> something consumable

ESP8266s can be had for ~$1...

------
GekkePrutser
Ok 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
Yet, “you get what you pay for” is still true...

------
DeathArrow
Can it run Wolfenstein 3D and Duke Nukem?

~~~
DanBC
He has another post where he runs a super low Res Wolfenstein on an ESP8266.

[https://mcuhacker.wordpress.com/2018/03/06/esp8266-tvout-
lib...](https://mcuhacker.wordpress.com/2018/03/06/esp8266-tvout-library/)

