This is a rework of Cormac O'Brien's GSoC project to try and boot MacOS 9 under QEMU, the original version of which was posted to the qemu-devel list at the end of August (https://lists.gnu.org/archive/html/qemu-devel/2015-08/msg02521.html).
The patchset consisted of some simple patches from Alex and then a large set of CUDA changes supplied as a single patch which were the result of Cormac analysing MOL with Alex's help to try and further the boot process. In their previous form, the patches were unsuitable for applying upstream since while they furthered MacOS 9 boot, they also caused a couple of major regressions such as breaking the mouse and causing Darwin/OS X boot to panic on startup. This reworked patchset fixes these regressions, includes some other clean-ups and more importantly now passes all of my OpenBIOS image boot tests with an OpenBIOS binary from SVN trunk (separate pull request to be sent shortly). Whilst OpenBIOS still needs one additional patch to run the MacOS 9 bootloader, I've uploaded a pre-compiled binary to https://www.ilande.co.uk/tmp/openbios-ppc for people interested in testing the new MacOS 9 functionality. Apologies for the delay in sending this out on-list, however due to recent circumstances I've been without a reliable broadband connection for a couple of weeks. However given that this is mostly a rework of the previous patchset and looks good in testing here, I'd definitely like it to be considered for application during soft freeze. Signed-off-by: Mark Cave-Ayland <mark.cave-ayl...@ilande.co.uk> Alexander Graf (3): PPC: Allow Rc bit to be set on mtspr PPC: Fix lsxw bounds checks PPC: mac99: Always add USB controller Mark Cave-Ayland (10): cuda.c: fix CUDA ADB error packet format cuda.c: fix CUDA_PACKET response packet format cuda.c: implement simple CUDA_GET_6805_ADDR command cuda.c: implement dummy IIC access commands cuda.c: fix CUDA SR interrupt clearing cuda.c: add defines for CUDA registers cuda.c: refactor get_tb() so that the time can be passed in cuda.c: rename get_counter() state variable from s to ti for consistency cuda.c: fix T2 timer and enable its interrupt cuda.c: add delay to setting of SR_INT bit hw/misc/macio/cuda.c | 243 ++++++++++++++++++++++++++++++----------------- hw/ppc/mac.h | 3 + hw/ppc/mac_newworld.c | 3 +- target-ppc/mem_helper.c | 5 +- target-ppc/translate.c | 2 +- 5 files changed, 163 insertions(+), 93 deletions(-) -- 1.7.10.4