On 30/01/14 21:55, Olivier Danet wrote:
Here are a few patches for QEMU and OpenBIOS, about SPARC32, grouped into two diffs:
- SparcStation10/20 mode fix (drivers/iommu.c, drivers/sbus.c)
- TCX properties (drivers/tcx.fs)
- next-property (forth/device/property.fs)
- Keyboard property (drivers/escc.c)
- Memory allocation/deallocation (arch/sparc32/lib.c,
arch/sparc32/ofmem_sparc32.c, libopenbios/ofmem_common.c, arch/sparc32/romvec.h)
- a.out file loading (libopenbios/aout_load.c)
- Dummy TICK counter (arch/sparc32/romvec.c)
- Interrupt/Timer properties (include/drivers/drivers.h,
- TCX Hardware acceleration : Blitter, Stippler, HW cursor
- "!TC on DATA XFER" warning under NetBSD (hw/scsi/esp.c)
- Timer Run/Stop bit correction (hw/timer/slavio_timer.c)
TCX emulation with acceleration seems good enough, although it is incomplete and it is probably impossible to implement the 24bits mode accurately and efficiently in QEMU.
I will post each patch separately on the two mailing lists. TCX patches should be synchronised : OpenBIOS cannot advertise an hardware cursor until it is actually implemented.
One more thing.
After NetBSD and TCX acceleration, I tried NextSTEP, which needs the patches marked + above. Alas, this is not enough to make it run. Maybe it is because QEMU SCSI disk and ESP emulation are too fast.
These look great, and I can already see things that could potentially fix a few bug reports I've received off-list. Looking forward to receiving the unsquashed versions for review :)