Re: Emulated PCI devices?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]


22.10.2016 16:34, Mouse пишет:
Its just that usually when you have some expensive HW, emulating it
in software is not enough because the HW is usually doing something
useful, not just makes some program to work. :)  If you don't need
any functionality of that HW other than to make some DOS prog happy,
Sort of.  It's a (relatively-)high-speed input device, and we plan to
replace it with either a pre-canned data file or a network connection
as a data source.  But, even once the host machine has the data, we
have to get it into the program somehow.  I could replace all the
relevant hardware accesses with traps to the emulator, but I could also
simulate the hardware it's expecting.
I wonder if there is a big difference.
Any hardware access you don't have ioperm permissions to,
makes it into an emulator trap. So I very much suspect you are
talking differently about the same thing. If you patch every
in/out insn of your prog into hlt, nothing will really change other
than it will be more difficult to simulate.

then I am afraid dosemu is not prepared for that, and you'll need to
implement the PCI emulator (in which case you can try qemu).
OK, I'll talk with the other people invovled and we'll decide what tack
to take: hack on the program, add PCI emulation to dosemu, switch
emulators, whatever.
Since dosemu is really a virtual machine (not like ntvdm or wine,
for example dosemu can run real windows31), and so is qemu,
you can get most of everything you had with dosemu, with qemu
too. Its just that dosemu sets up many things for you automatically,
which makes people think of it as of wine or ntvdm, but its not.
With qemu you'll have to do a lot of manual setup to get the
host FS access for example, but at the end you can get the
same results.
OTOH adding the PCI emulator to dosemu is not exceptionally
difficult, provided that it already has the PCI bios and emulation
of the config space ports. Its not like implementing everything
from scratches because you likely only need to emulate the
device config space. I suppose the device emulation itself will
take much more time anyway, esp if it uses DMA.
To unsubscribe from this list: send the line "unsubscribe linux-msdos" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at

[Index of Archives]     [Linux Console]     [Linux Audio]     [Linux for Hams]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite Camping]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Samba]     [Linux Media]     [Fedora Users]

  Powered by Linux