GSOC qemu Boot Mac OS >= 8.5 on PowerPC system

About Qemu-system-ppc, a PPC Mac emulator for Windows, macOS and Linux that can run Mac OS 9.0 up to Mac OS X 10.5

Moderators: Cat_7, Ronald P. Regensburg

Post Reply
Amade
Tinkerer
Posts: 63
Joined: Thu Feb 18, 2010 10:09 pm

GSOC qemu Boot Mac OS >= 8.5 on PowerPC system

Post by Amade »

sheepmyshaver123
Granny Smith
Posts: 106
Joined: Thu Apr 30, 2009 12:15 am
Location: Internet Island

Re: GSOC qemu Boot Mac OS >= 8.5 on PowerPC system

Post by sheepmyshaver123 »

Amade wrote:Hopefully, we can have Mac OS 9.2 emulation in qemu :D

more info:
http://www.google-melange.com/gsoc/proj ... willh/6001
http://wiki.qemu.org/Google_Summer_of_C ... _emulation
Did the development will finished?
Amade
Tinkerer
Posts: 63
Joined: Thu Feb 18, 2010 10:09 pm

Post by Amade »

Who knows, according to timeline codings starts on 23 May and ends in August, so we will see the results then.

On qemu site it is written that only ROM is missing, and from the parts of code I read and my usage it seems so. They have PowerMac implementation with keyboard, mouse, monitor, disk, processor, openbios, so the only missing part is Mac ROM.

In the case you don't know what GSOC is, it is the Google sponsoring students to write code for open source projects.
Ambassador
Apple Corer
Posts: 203
Joined: Thu Oct 16, 2008 10:09 pm
Location: Canada
Contact:

Post by Ambassador »

In the meantime, using QEMU PPC emulation with Mac-On-Linux running inside might work.
User avatar
ClockWise
Site Admin
Posts: 4397
Joined: Mon May 20, 2002 4:37 am
Location: Uiwang

Post by ClockWise »

Just noticed that another project is to "Add Macintosh to 68k system emulation." That would be fun, too. Maybe an emulation that does things that Basilisk II does not!
Amade
Tinkerer
Posts: 63
Joined: Thu Feb 18, 2010 10:09 pm

Post by Amade »

ClockWise wrote:Just noticed that another project is to "Add Macintosh to 68k system emulation." That would be fun, too. Maybe an emulation that does things that Basilisk II does not!
It would be nice, however seems like nobody wanted to do it this year or was accepted
here is a list of all accepted entries projects:
http://www.google-melange.com/gsoc/proj ... e/gsoc2011
MetalSnake
Granny Smith
Posts: 120
Joined: Fri Nov 09, 2007 5:42 pm

Post by MetalSnake »

Amade wrote:
ClockWise wrote:Just noticed that another project is to "Add Macintosh to 68k system emulation." That would be fun, too. Maybe an emulation that does things that Basilisk II does not!
It would be nice, however seems like nobody wanted to do it this year or was accepted
here is a list of all accepted entries projects:
http://www.google-melange.com/gsoc/proj ... e/gsoc2011
Seems like William Hahne is doing it! :) (search for qemu in the organisation field)

edit: seems like in 2010 they had the same project: http://wiki.qemu.org/Google_Summer_of_C ... _emulation
User avatar
Cat_7
Expert User
Posts: 6145
Joined: Fri Feb 13, 2004 8:59 am
Location: Sittard, The Netherlands

Post by Cat_7 »

Great!

August will be interesting. Or earlier for the ones that like adventure and building early qemu versions?

Best,
Cat_7
MetalSnake
Granny Smith
Posts: 120
Joined: Fri Nov 09, 2007 5:42 pm

Post by MetalSnake »

Any idea where to find the gsoc forks? I can't find anything about what is done. :(
Amade
Tinkerer
Posts: 63
Joined: Thu Feb 18, 2010 10:09 pm

Post by Amade »

GSOC is coming to an end and it seems some work was done:
http://lists.nongnu.org/archive/html/qe ... 01403.html
http://lists.nongnu.org/archive/html/qe ... 01418.html

However messages doesn't mention anything about it working or not

[edit]
There is more info on openbios list
http://lists.openbios.org/pipermail/ope ... 06613.html
While Mac OS does not yet fully boot, with these patches I have gotten the Mac OS 10.2 kernel to load and begin booting.
IPalindromeI
Tinkerer
Posts: 83
Joined: Wed Feb 09, 2011 8:39 pm

Post by IPalindromeI »

Basically X will run, hoping lower versions will. PearPC apparently now has competition :)
Amade
Tinkerer
Posts: 63
Joined: Thu Feb 18, 2010 10:09 pm

Re: GSOC qemu Boot Mac OS >= 8.5 on PowerPC system

Post by Amade »

So I decided to give qemu a try, I used patched bios here are results:

Mac OS X 10.0
Image
It smiles :D
Image
Loading modules
Image
And it stops :(

Mac OS X 10.2
Image
The apple!
Image
Also stops :cry:

Seems to me like it fails while initializing graphics

How to:

Get openbios (http://www.openfirmware.info/OpenBIOS):

Code: Select all

svn co svn://openbios.org/openbios/trunk/openbios-devel
You also need powerpc crosscompiler (Somethink like: powerpc-unknown-linux-gnu-gcc etc.)
(If using gentoo just run: "crossdev powerpc-unknown-linux-gnu")

Apply patches:
http://lists.openbios.org/pipermail/ope ... 06653.html
http://lists.openbios.org/pipermail/ope ... 06615.html
http://lists.openbios.org/pipermail/ope ... 06616.html
http://lists.openbios.org/pipermail/ope ... 06617.html
http://lists.openbios.org/pipermail/ope ... 06623.html
http://lists.openbios.org/pipermail/ope ... 06618.html
http://lists.openbios.org/pipermail/ope ... 06619.html - Note that lines having only "\" need space after "\" so they should be "\ "
http://lists.openbios.org/pipermail/ope ... 06620.html
http://lists.openbios.org/pipermail/ope ... 06651.html
http://lists.openbios.org/pipermail/ope ... 06702.html

you may need to edit function select_prefix on line 100 in ./config/scripts/switch-arch to be

Code: Select all

for TARGET in ${1}-unknown-linux-gnu- ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi-
Build:

Code: Select all

cd openbios-devel
./config/scripts/switch-arch qemu-ppc

#always do this after editing any file
make clean

make
Your bios is in ./obj-ppc/ named openbios-qemu.elf

Here is what I got:
http://free-uploading.com/t0uwrodvvxkz/ ... u.elf.html

How to run qemu if booting from existing CD:
qemu-system-ppc -bios path_to_your_bios/openbios-qemu.elf -cdrom /dev/cdrom -boot d -m 1024

Or if like me you have images to not throw CD's around
qemu-system-ppc -bios path_to_your_bios/openbios-qemu.elf -cdrom path_to_your_image -boot d -m 1024
Amade
Tinkerer
Posts: 63
Joined: Thu Feb 18, 2010 10:09 pm

Re: GSOC qemu Boot Mac OS >= 8.5 on PowerPC system

Post by Amade »

So I got a bit further today, I was right the problem was graphics, it needs 32bit depth

Mac OS X 10.2
Image

Mac OS X 10.0
Image

New command is:

Code: Select all

qemu-system-ppc -bios path_to_your_bios/openbios-qemu.elf -cdrom /dev/cdrom -boot d -m 1024 -g 800x600x32
Note -g 800x600x32 at the end
User avatar
adespoton
Forum All-Star
Posts: 4226
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: GSOC qemu Boot Mac OS >= 8.5 on PowerPC system

Post by adespoton »

Congrats! You've got as far as I did, although I was using the default openbios in a patched version of qemu-ppc.

As PearPC's going to be faster at emulating 10.1 and later, I've been focusing on 9.1 through 10.0; when you trace down the panic, please post what you did to get past that point!

Interestingly, qemu appears to be the only thing that emulates the PPC MMU -- which is why 9.1 through 10.0 will only ever have a hope of running on qemu.
User avatar
adespoton
Forum All-Star
Posts: 4226
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: GSOC qemu Boot Mac OS >= 8.5 on PowerPC system

Post by adespoton »

Did anyone get further on this?
Amade
Tinkerer
Posts: 63
Joined: Thu Feb 18, 2010 10:09 pm

Re: GSOC qemu Boot Mac OS >= 8.5 on PowerPC system

Post by Amade »

You are right on time :D, there was new release of openbios with changes merged just few days ago.
http://lists.openbios.org/pipermail/ope ... 07700.html
And new bios was put into qemu development tree, so you can probably try this (although from my tests openbios still needs to be patched https://lists.nongnu.org/archive/html/q ... 01418.html or changed from openbios prompt)

There is still problem with "Waiting for root device" on 10.2, 10.4 (and some darwinppc releases) and 10.0 still panics, I'm slowly working on this (setting up pearpc to build kernel with debugging enabled). As far as I can tell, there are problems with how disk access is emulated (ATAPI or something next to it).
Amade
Tinkerer
Posts: 63
Joined: Thu Feb 18, 2010 10:09 pm

Re: GSOC qemu Boot Mac OS >= 8.5 on PowerPC system

Post by Amade »

Preview of things to come, thanks to work of QEMU & OpenBIOS maintainers, it's still a work in progress so I'm not posting any instruction. (https://github.com/agraf/qemu/commits/macos and http://tracker.coreboot.org/trac/openbi ... bios-devel)

Image

good thing is it seems to boot some of cd's which doesn't run in pearpc :smile:
bad is that it seems somehow slower :(
User avatar
Cat_7
Expert User
Posts: 6145
Joined: Fri Feb 13, 2004 8:59 am
Location: Sittard, The Netherlands

Re: GSOC qemu Boot Mac OS >= 8.5 on PowerPC system

Post by Cat_7 »

Great! I am curious to see where this goes.

Best,
Cat_7
User avatar
adespoton
Forum All-Star
Posts: 4226
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: GSOC qemu Boot Mac OS >= 8.5 on PowerPC system

Post by adespoton »

Me too... I see a lot of potential now that these updates have been committed :D
We might even be able to run OS 9.2.2 and 10.0.4!
And once these changes have been debugged, we might even be able to wrap a PearPC interface around QEmu (who am I kidding... I'll be creating stand-alone blobs).
User avatar
Cat_7
Expert User
Posts: 6145
Joined: Fri Feb 13, 2004 8:59 am
Location: Sittard, The Netherlands

Re: GSOC qemu Boot Mac OS >= 8.5 on PowerPC system

Post by Cat_7 »

I've been trying to get openbios built. Seems it is not that easy. On PPC mac the eabi compiler is missing, etc. Next try: cross compiling on cygwin.

Best,
Cat_7
User avatar
Cat_7
Expert User
Posts: 6145
Joined: Fri Feb 13, 2004 8:59 am
Location: Sittard, The Netherlands

Re: GSOC qemu Boot Mac OS >= 8.5 on PowerPC system

Post by Cat_7 »

Given up! A PM is always welcome!

Best,
Cat_7
Amade
Tinkerer
Posts: 63
Joined: Thu Feb 18, 2010 10:09 pm

Re: GSOC qemu Boot Mac OS >= 8.5 on PowerPC system

Post by Amade »

To compile openbios you need powerpc compiler or crosscompiler, on system there should be something like powerpc-unknown-linux-gnu-gcc

cd openbios-devel
./config/scripts/switch-arch qemu-ppc
make
User avatar
Cat_7
Expert User
Posts: 6145
Joined: Fri Feb 13, 2004 8:59 am
Location: Sittard, The Netherlands

Re: GSOC qemu Boot Mac OS >= 8.5 on PowerPC system

Post by Cat_7 »

Yes, that is what I tried on PPC Mac OS X 10.5.8 on my G5
I came up with an error that the "eabi" compiler is missing.

Best,
Cat_7
airat78
Inquisitive Elf
Posts: 27
Joined: Fri Feb 15, 2013 3:27 pm

Re: GSOC qemu Boot Mac OS >= 8.5 on PowerPC system

Post by airat78 »

Is it will be nightly builds for qemu openbios? Don't want compile each version
uyjulian
Apple Corer
Posts: 244
Joined: Fri Aug 27, 2010 1:02 am

Re: GSOC qemu Boot Mac OS >= 8.5 on PowerPC system

Post by uyjulian »

Wow, I wonder where this is going to go...
Post Reply