Blue Swirl wrote: [snip] > > > Qemu is not also aimed for 100% accurate emulation of the hardware. > > > There are no caches or cycle counters and hardware devices run > > > unrealistically fast from CPU standpoint. Emulating performance > > > counters or the errata the most CPUs have would be extremely > > > difficult. I doubt Qemu CPU emulation can ever pass POST of real > > > BIOSes. > > > > I am working on making the Malta emulation boot a unaltered YAMON > > image. I don't see why a PC BIOS would be harder to accomodate. > > Emulating microcode, or firmware blobs loaded to misc devices. Think > writing a BIOS for Transmeta,
Writing the emulation for a transmeta is IMHO more challenging than writing the "BIOS". Btw, if you are interested in the x86 mode, you can handle the transmeta just as a x86 variant (with a much more standard BIOS). > Alpha or a SoC. Writing "Firmware for a SoC" is part of my dayjob. > > > Real BIOSes are also closed source, proprietary binary blobs. > > > > At least YAMON, CFE and PMON are not closed source. YAMON has a funny > > license which - I hope - will change. > > > > > Making open source BIOSes a viable alternative is in my opinion a much > > > more important goal. > > > > The one doesn't exclude the other. That said, I regard the ability to > > boot unaltered real-world firmare as an important test of the quality > > of a system emulation. > > Maybe. The CPU probes for cacheline size, checks for errata #42 vs > #45, reads debug registers, attempts to identify the bus speed by > comparing I/O access times, tries to verify the system using a TPM and > fails all cases. What can you do? Improve the emulation to handle at least one probing path. Thiemo