• Please review our updated Terms and Rules here

Drop-in 8088 CPU Emulator for the IBM PC - MCL86+

The project in this thread. Technically speaking both this and the PiStorm replace the original CPU entirely with an emulator, which wears the original hardware like a skin suit and can completely under program control choose to override various aspects of it. The only difference is a Raspberry Pi has a lot more onboard hardware to ”enhance the experience” with.
For sure, but the PiStorm is something else entirely in terms of what it does to an Amiga.

Maybe I’m just a grumpy old coot, but I can’t quite get into the PiStorm. There’s a line in there where you’re just turning your real old computer into a very fancy keyboard for an emulator, and eh, whatever floats your boat, I guess, but the Pi could probably run the same emulation objectively better if you just stuck it in an old mint box and hooked a nice gamer keyboard to it.
No doubt, a Raspberry PI is really just another computer. For my money though I would love if somebody used an FPGA to interface a Pentium into an 8088 - I don't know why. I feel like the Inboard/386 got CLOSE to what I would want. For me, it lies in using as much of my Vendex 888-XT so that I can try to see it through my youthful eyes on what it can do. Playing Wolfenstein 3D full screen without lag is pretty special on that machine. My machine is now a Franken PC for sure. This project I would really love if it added instruction sets, MEMORY, a second PIC, etc.
 
This project I would really love if it added instruction sets, MEMORY, a second PIC, etc.

I did that back in the 90’s by stuffing Pentium-class baby AT boards into XTs. Been there, done that, got the tee shirt.

For sure, but the PiStorm is something else entirely in terms of what it does to an Amiga.

Yep, turns it into a big ‘ol anchor the PI has to lug around.
 
I wonder if a 487SX style approach would be feasible-- some sort of plug that deactivated the 8088 CPU, and then pairing it with a CPU card intended for a passive-backplane that could go potentially as high as like Socket 370.

As much as can be done on the accelerator board, the problem is that the moment you reach beyond the 40-pin socket, it's still an XT with a single PIC and the other limitations of the platform. External peripherals are always going to see only that. (Although I suppose seeing a 586-class CPU but only 8-bit bus slots will also look kind of zany)
 
In the late 90s there were a couple upgrade "upgrade boards" like the Powerleap Renaissance that basically shoved everything onto a single card. So the host bus wasn't needed at all.
 
Technically speaking both this and the PiStorm replace the original CPU entirely with an emulator, which wears the original hardware like a skin suit and can completely under program control choose to override various aspects of it. The only difference is a Raspberry Pi has a lot more onboard hardware to ”enhance the experience” with.
This is incorrect.
Maybe I’m just a grumpy old coot, but I can’t quite get into the PiStorm. There’s a line in there where you’re just turning your real old computer into a very fancy keyboard for an emulator, and eh, whatever floats your boat, I guess, but the Pi could probably run the same emulation objectively better if you just stuck it in an old mint box and hooked a nice gamer keyboard to it.
and why post this?
 
This is incorrect.

Excuse me for asking, but how is this “incorrect”? I realize that on an implementation level your project hews closer to being more directly an “accelerator“ in scope, but both projects involve an ARM CPU running an emulator which effectively uses the host computer as a collection of peripherals interfaced via a somewhat awkward bus.

You’ve noted in this very thread that you can, at will, with your device override “physical” memory on the host board with RAM on the Teensy, that you have the option of using the Teensy to do native execution of ARM code (a thing you’ve also demonstrated with your Z80 and 6502 versions), and, if I’m recalling correctly, with that Z80 version you even demonstrated running an emulator for one computer (TRS-80) translating I/O through the body of a different computer. (NABU).

Again, obviously there are differences here in implementation and the scope to which the computer that’s running the emulator can run independent of its host/the capabilities it can add, but where am I fundamentally wrong here?

And, FWIW, my criticisms of the PiStorm weren’t aimed at your project. I think your approach is interesting and might have real value for applications other than acceleration; it’s basically an ICE and could be great for troubleshooting/development/whatever. I just find the PiStorm a little absurd if someone is using it connected to an HDMI monitor using RTG graphics and 128mb of emulated RAM, etc, etc, and pretending they’re using the original hardware as anything but a keyboard and maybe a sound DAC.
 
I wonder if a 487SX style approach would be feasible-- some sort of plug that deactivated the 8088 CPU, and then pairing it with a CPU card intended for a passive-backplane that could go potentially as high as like Socket 370.

As much as can be done on the accelerator board, the problem is that the moment you reach beyond the 40-pin socket, it's still an XT with a single PIC and the other limitations of the platform. External peripherals are always going to see only that. (Although I suppose seeing a 586-class CPU but only 8-bit bus slots will also look kind of zany)
Well for me the perfect "accelerator board" would look like this:

A bus extender with wired connectors to get a real 16 bit bus, so imagine 5 or 6 edge connectors with ribbon cables going into the card.
Adding a true 486+ class BIOS.
All of the other components needed so the system "sees" a real 486
Integrated Video with HDMI out with all of the bells and whistles possible including hardware MPEG, 3DFX, etc.
An integrated SD card hard drive

I still would want it to be able to use legacy cards and to use the motherboard for serial/para or on-board floppy.

I have no idea why I would want this to exist, but I would want it to exist. I think this is why people go Raspberry Pi route for these things because trying to get them all using legacy hardware would be impossible. An alternative would be a single other cable with a card edge connector for a Vesa Local Bus or PCI for a video card.

I know all of that is easy to do with another motherboard, but for some reason, for me, a card upgrade to the original bus just somehow feels like putting a porsche engine in a gremlin.

Chris
 
Such an upgrade would be closer to an entire Porsche with a Gremlin body kit. I suppose there is some appeal if the original system has a weird form factor that is not easily upgraded a newer motherboard.
 
Such an upgrade would be closer to an entire Porsche with a Gremlin body kit. I suppose there is some appeal if the original system has a weird form factor that is not easily upgraded a newer motherboard.
I didn't say it was practical....
 
The original project in the thread is perfectly cool, don't need to add all that things you guys are asking for to much.
The only thing is if the full 640k could be cached, could make this better. They are little software for 256k in dos.
 
The original project in the thread is perfectly cool, don't need to add all that things you guys are asking for to much.
The only thing is if the full 640k could be cached, could make this better. They are little software for 256k in dos.
Why not caching the full 1st meg? There is BIOS code in slow EPROMs which is perfect for cache. And it can emulate upper memory.
 
I get that but it is just the case. I want electrons to flow through the motherboard.

Clearly someone needs to bang up a simple DOS program and matching 8-bit ISA card that lets an ancient PC emulate a PS/2 or USB keyboard. Then you can just toss an Intel NUC loosely inside your XT's case, thread an HDMI cable through the back, and boom, the upgrade of your dreams.
 
Back
Top