On the threat of stating the plain, a PC is extra than simply its processor. And if you wish to precisely emulate what’s occurring contained in the CPU, you’d do properly to concentrate to the remainder of the machine, as [GloriousCow] reveals us by bus-sniffing the unique IBM Mannequin 5150.
Somewhat background is probably so as. Earlier this 12 months, [GloriousCow] revealed MartyPC, the cycle-accurate 8088 emulator written solely in Rust. A cycle-accurate emulation of the unique IBM PC is probably a bit overkill, except in fact it’s good to run one thing like Space 5150, a demo that stretches what’s doable with the unique PC structure however is notoriously finicky about what {hardware} it runs on.
Getting Space 5150 working on an emulator wasn’t sufficient for [GloriousCow]although, so a deep dive into precisely what’s occurring on the bus of an unique IBM Mannequin 5150 was so as. After toying with and correctly dismissing a number of homebrew logic analyzer options, a DSLogic U3Pro32 logic analyzer was drafted into the venture.
Becoming the probes for the 32-channel instrument might have been an issue aside from the hardly ever populated socket for the 8087 floating-point coprocessor on the motherboard. A customized adapter gave entry to a lot of the attention-grabbing traces, together with handle and information buses, whereas a number of extra alerts, just like the CGA sync traces, have been tapped immediately off the video card.
Capturing one second of operation yielded a whopping 1.48 GB CSV file, however slightly massaging with Python trimmed the file significantly. That’s when the actual enjoyable started, unusually sufficient in Excel, which [GloriousCow] used as an advert hoc however fairly efficient visualization instrument, because of the intelligent use of customized formatting. We particularly just like the column that reveals low-to-high transitions as a sq. wave — happening the column, certain, however nonetheless actually helpful.
The entire thing is a robust toolkit for exploring the motion on the bus throughout the execution of Space 5150, solely a part of which [GloriousCow] has undertaken as but. We’ll be eagerly awaiting the subsequent steps on this one — possibly it’ll even assist get the demo working in addition to 8088MPH on a modded Book8088.