Wack0 / maciNTosh

PowerPC Windows NT ported to Power Macintosh systems
GNU General Public License v2.0
522 stars 16 forks source link

QEMU (UTM) Compatibility #1

Closed 0x1d7 closed 2 months ago

0x1d7 commented 2 months ago

Hello, I tried booting a QEMU (UTM) VM with the following specifications without success.

Arch: PowerPC Sys: Heathrow based PowerMac (default) (g3beige) CPU: g3 (or g4) Cores: 1 Memory: 16 / 32MB Disk: 16GB Other settings default, sans removal of audio card

OpenBIOS boots, but drops to a CLI with the message:

"No valid state has been set by load or init-program"

My assumption is that the ARC firmware is simply incompatible with QEMU.

Wack0 commented 2 months ago

the "no valid state" thing is a different bug in qemu, where some part of the emulated IDE controller doesn't show up, you have to keep rebooting until it works

but you are correct. QEMU does not support MSR_LE as the PPC750 implements it, or the LE_MODE bit of the MPC106's PICR1 register, starting with 8bpp framebuffer will cause an error in the loader (as it can't set colour depth to 32bpp), starting with 32bpp framebuffer will freeze with black screen (when trying to jump to main ARC firmware)

I have a custom dingusppc tree which I've been using for testing, but I haven't released that yet.

Wack0 commented 2 months ago

I just released my dingusppc tree I've been using for testing, please note you'll need to make a custom CD image as there's no way to change CD image on a running system: https://github.com/Wack0/dingusppc-nt/releases/tag/20240712