On Tue, 22 May 2001, Willow Schlanger wrote:
> If anyone's insterested, here's something I'm working on: I'm writing a
> miniture OS that communicates with a host computer via the
> parallel-port. The host computer has the BIOS and CMOS images on it and
> then executes the BIOS code, emulating only the CPU, RAM, PIC, RTC/CMOS,
> and hard disk. When it encounters any other I/O, it signals the "guest"
> computer (via the parallel port) to perform that I/O. Memory references
> that are not inside RAM will be be redirected to/from the guest PC. Thus
> I should be able to have a guest that I can use like plex86 does, only
> I'll be able to use an _actual_ BIOS, complete with all its chipset
> references. Even SVGA support would work. The "guest" PC has an SVGA
> video card and I've got another monitor connected to it. Isn't that a
> cool idea? The purpose of it is, this way I can run things in the
> virtualized environment, that will think they have all the chipset
> stuff. You'll note that an actual PC BIOS doesn't work in plex86 due to
> incomplete emulation of e.g. port 61, all the PCI stuff, ... etc. But
> this way it doesn't have to work!
>
> Anyways I digged up an old bi-directional parallel cable. I'm planning
> on booting from a 486 SX this way which is the reason why I don't want
> the virtualization code running _on_ the guest PC. Too slow.
>
> Anyways the "guest" mini-OS will just be a dummy program that receives
> packets and executes them. The packets can contain an OUT instruction.
> Thus the BIOS will run on my host PC under virtualization and if it does
> some fancy I/O to some chipset thing, that I/O will actually execute on
> the guest PC where I copied the BIOS from!
>
> Now if only I had an oscilliscope, I could.... (heh heh)
>
> -WS
>
Cool idea for debugging but the SVGA's MMIO throuth the LPT cable wouldn't
run fast (needs massive bandwitch).
Uhus