These fix the problem with OpenBIOS's accesses to the VBE DISPI ports. The problem stems from weird memory regions created by ioport.c.
Patches 1-3 simplify some of the MemoryRegionPortio arrays. This makes it easier to ascertain the effect of patch 6, since the patch only affects MemoryRegionPortio entries whose size is greater than one. Patch 4 fixes a comment. ioport.c is crazy enough without wrong documentation. The fix is in patch 6; however it makes it possible to trigger some assertions in ioport.c so patch 5 is needed in order to loosen them. Peter, if you prefer you can just revert c3c1bb99. Paolo Paolo Bonzini (6): sb16: remove useless mixer_write_indexw gus: clean up MemoryRegionPortio ide: there is only one data port ioport: remove wrong comment ioport: loosen assertions on emulation of 16-bit ports ioport: reserve the whole range of an I/O port in the AddressSpace hw/audio/gus.c | 22 ++-------------------- hw/audio/sb16.c | 7 ------- hw/ide/core.c | 4 ++-- ioport.c | 30 +++++++++++++++++------------- 4 files changed, 21 insertions(+), 42 deletions(-) -- 2.3.4