Home > OS News > OSX Emulation on x86? PearPC OSX Emulation on x86? PearPC Submitted by Claudio 2004-05-10 OS News 62 Comments This is the first official release of PearPC, 0.1, and there are still unimplemented instructions, mysterious bugs and missing features. The application allows you to run PowerPC OSes under emulation on a x86 machine. About The Author Eugenia Loli Ex-programmer, ex-editor in chief at OSNews.com, now a visual artist/filmmaker. Follow me on Twitter @EugeniaLoli 62 Comments 2004-05-10 5:45 pm Good luck to them. 2004-05-10 5:45 pm I wonder how slow this is… Might be interesting to play with. 2004-05-10 5:52 pm can’t wait to play with osx in my pc!!!!!!!!!!!!!!!! 2004-05-10 5:54 pm you better get a “new world” macintosh ROM ’cause you’ll need it to boot OS X. macos X doesn’t run on just any PPC hardware, it runs on just Apple hardware 2004-05-10 6:03 pm There is no ROM on a new Mac, they have Open Firmware. You don’t need it any more. This emulator says its like 500x slower (and no altivec) anyway, so I doubt it will be particularly snappy. heh 2004-05-10 6:05 pm You’re completely wrong. This “ROM” you speak of doesn’t exist, unless you mean Open Firmware, which has nothing to do with “Mac ROMS”. The old Mac “ROM” now resides in a file, which is included on the OS X Install disc. True, Mac OS X doesn’t run on “just any PPC hardware”, but it’s been hacked to run on a lot of non-Apple hardware and emulators. See also, Mac-On-Linux, and the various minor hacks people have done to get OS X to run on 3rd-party PPC boards. Next time, do your homework before spreading FUD. Thanks! 2004-05-10 6:06 pm It is dog slow. OSX feels like on a G3 400 or something on my p4 2.4 GHz. Nice piss of Software though 2004-05-10 6:07 pm How is this compared to the other PPC emu. I believe it is called SheepShaver. SheepShaver only runs MacOS 8.6 I think though. Would this emu run it faster? 2004-05-10 6:11 pm For the sake of technology in general I hope they get somewhere with this, but they will have a VERY hard time without altivec, especially with the upcoming altivec 2 or whatever IBM is calling it. 2004-05-10 6:15 pm True, Mac OS X doesn’t run on “just any PPC hardware”, but it’s been hacked to run on a lot of non-Apple hardware and emulators. See also, Mac-On-Linux, and the various minor hacks people have done to get OS X to run on 3rd-party PPC boards. Links? I didn’t know that was possible. I’m not being snarky – I’d genuinely be interested in running OS X on, say, a PegasosPPC box. 2004-05-10 6:15 pm I’ve heard that PPC emulation, besides being DOG slow, is hard to implement, due to the highly contextual nature of the interpretation of instructions. Sounds like we’ve got something potentially great. This is the type of stuff an open source liscence, especially the GPL promotes development of. Someone may have a block, and abandon the project, only to have it completed by someone else later on. Rock on! 2004-05-10 6:24 pm If you’ve got it working on windows, post your instructions here. 2004-05-10 6:27 pm Wow, this project completely took me off-guard. Great work! And a great name, too. I have a few questions; posting them here so others can read them (and any answers): 1. How does it compare to SheepShaver? (features, performance, etc.) 2. Do you need any kind of boot firmware with this? If yes, is such firmware available as open source? There are a few projects out there that provide open source BIOS implementations for x86 machines, but none that I am aware of for PowerPCs. One last off-topic question: I am going to buy an iBook Real Soon Now, and I would like to run Linux inside OS X. I know Mac-on-Linux allows me to do the opposite, but is there any software that let’s me do what I want, efficiently (i.e. not VirtualPC)? 2004-05-10 6:36 pm Maybe I’m missing your point, but there are intstruction(and binaries apparently) for windows on the website. 2004-05-10 6:43 pm “One last off-topic question: I am going to buy an iBook Real Soon Now, and I would like to run Linux inside OS X. I know Mac-on-Linux allows me to do the opposite, but is there any software that let’s me do what I want, efficiently (i.e. not VirtualPC)?” Try Yellow Dog Linux: http://www.yellowdoglinux.com/ 2004-05-10 7:13 pm “This situation is better if you can use the JITC (about 40 times slower)” Only 40 times slower than the host? I’ve heard many people say this is impossible, so I’m impressed. 2004-05-10 7:31 pm Wow! Good luck for you, guys! I can’t wait! 2004-05-10 7:34 pm “One last off-topic question: I am going to buy an iBook Real Soon Now, and I would like to run Linux inside OS X. I know Mac-on-Linux allows me to do the opposite, but is there any software that let’s me do what I want, efficiently (i.e. not VirtualPC)?” Try out stuff like this… http://www.openosx.com/wintel/index.html Like Redbear said though, use a PPC Linux, it’ll run faster. Or you can also run X11 over Aqua, a version comes with Panther. 2004-05-10 7:40 pm I’d love to see this after it’s fairly stable. I personally would love to try out OSX on my home machine, but I wish to stay with x86 architeture. Maybe if I find that I like it, I’ll pick up a Powerbook or something. 2004-05-10 7:41 pm “Maybe if I find that I like it, I’ll pick up a Powerbook or something.” Sounds great, but keep in mind this will run OS X dog slow, so don’t consider the speed you’ll see anything like how it runs on a Mac. 2004-05-10 7:47 pm in windows, download the binaries, open a terminal by typing ‘cmd’ in your run box. go to the directory where you extracted it in the terminal.. ‘cd’ to change directories. just type in ‘ppc ppccfg.example’ to get a gui running, but you wont get much running unless you have an iso of os x for example and edit the above said config file to include the iso… also yes there was MOL, but it only works on ppc based machines i believe. sheepshaver was the first ppc emulator for x86 machines, but is only for linux. it only ran up to OS 8.6. this i believe would be the first ppc x86 emulator that would run OS X and also available for windows. 2004-05-10 7:48 pm Try out stuff like this… http://www.openosx.com/wintel/index.html Is this better than VPC though? I use VPC everyday and it is slow on my new 12-inch with 1.25 GB of RAM. (512 allotted to the VM) How reliabe is it? -Jason 2004-05-10 8:06 pm Inglorion: One last off-topic question: I am going to buy an iBook Real Soon Now, and I would like to run Linux inside OS X. I know Mac-on-Linux allows me to do the opposite, but is there any software that let’s me do what I want, efficiently (i.e. not VirtualPC)? I don’t mean to sound critical, but I would first suggest that you check whether the programs you want to run in Linux have been ported to Mac OSX. A great deal of them have – all you need to do is install Apple’s X11 server, head to any one of the many porting projects and have at. This isn’t like Mac-on-Linux, where your OS may be missing certain killer apps. You are running Unix already, you know. As for x86 Linux, Virtual PC is still the best bet, sorry. Don’t assume you need it though, unless you have binary-only apps to support that don’t already have PPC versions. 2004-05-10 8:07 pm “One last off-topic question: I am going to buy an iBook Real Soon Now, and I would like to run Linux inside OS X. I know Mac-on-Linux allows me to do the opposite, but is there any software that let’s me do what I want, efficiently (i.e. not VirtualPC)?” Well, why do you want to “run Linux inside OS X”? If you want, you can install Unix-type apps in OSX via fink, or some other programs, or even just build them yourself. Remember, it’s all Darwin (basically FreeBSD) underneath. You can even install X11 and graphical apps. And it’s not even emulation or anything- you’re just running X11 on top of OSX, the way you could over linux. Now, if you specifically want a linux kernel for some reason, you’ll probably need virtual pc or something, but if you just want some unix tools and some apps that run on an X server, I suggest <a href=”http://fink.sourceforge.net/“>fink. 2004-05-10 8:09 pm I would like to run Linux inside OS X Easy. just get some linux source code for apps and just recompile them. They should run fine in the X11 environment included with Mac OS X Panther. I have Nessus, nmapfe, xpilot, etherpeek, netrek, KDE running in OSX with no additional software. No need to hack anything. You can even run a full screen rootless session of whatever you want; enlightenment, KDE, gnome. Just get the source and install… or use Fink or Darwinports to do it via package management. 2004-05-10 9:11 pm It crashes on my side. I have it compiled with ./configure –enable-gui=qt && make Then, loaded a MacOSX real boot CD in my drive and I modified the ppccfg.example file to a ppccfg.macosx to take care of video.x location and 3GB img file. Here is the error: bash-2.05b$ ./ppc ppccfg.macosx This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111 USA client and server display characteristics DONT match 🙁 [CPU/MMU] new pagetable: sdr1 = 0x00300003 [CPU/MMU] new pagetable: sdr1 accepted [CPU/MMU] number of pages: 2^15 pagetable_start: 0x00300000 size: 2^18 [CPU/CPU] execution started at 01c00cb0 singlestep set from ppc_dec.cc:85, info: unknown instruction r00: 00000000 r01: 01c15000 r02: 00000000 r03: 47110815 r04: 00000000 r05: fffffff0 r06: 00000000 r07: 00000000 r08: 00000000 r09: 00000000 r10: 00000000 r11: 00000000 r12: 00000000 r13: 00000000 r14: 00000000 r15: 00000000 r16: 00000000 r17: 00000000 r18: 00000000 r19: 00000000 r20: 00000000 r21: 00000000 r22: 00000000 r23: 00000000 r24: 00000000 r25: 00000000 r26: 00000000 r27: 00000000 r28: 00000000 r29: 00000000 r30: 00000000 r31: 00000000 cr: 00000000 xer: 00000000 lr: 00000000 ctr: 00000000 @00000404: 00000000 dd 0x00000000 > quit singlestep set from ppc_dec.cc:85, info: unknown instruction 2004-05-10 9:11 pm Of course you can use fink, X11 and gcc to get Linux apps running under OS X, and we all know its got a FreeBSD-derived userland in there, but is there any way to run Linux virtualised on OS X? There are a number of good reasons to do this – you might want to host a number of ‘virtual servers’ similar to what is possible with User Mode Linux, you might be needing to support users on a certain flavour of Linux and want an identical setup, you might want to experiment with Linux kernel programming. You can’t do any of these things with fink and an X11 implementation. So i’ll ask as well – Lets say I want to run a number of Linux virtual machines under OS X. Is there any better solution than using virtual PC to emulate an x86 Linux environment? 2004-05-10 9:14 pm Fascinating: http://mcduke.typepad.com/mymind/2004/05/the_world_turne.html It’s not really running, it’s crawling along painfully, but it works. Great hack. 2004-05-10 9:20 pm on my 3200+, osx performance is really acceptable, especially considering what it is (ppc emulation on x86, not the reverse) that it’s a free project and stuff.. honestly, i’ve had slower virtual pcs (including vpc) on my Mac when i had one. Well done guys! 2004-05-10 9:37 pm Anybody tell me how to get an ISO I have my OS X discs just trying to figure out the easiest way to get them into ISO’s 2004-05-10 9:45 pm If you are in Linux: cp /dev/cdrom image.iso (from the documentation) It’s probably not so easy on Windows. 2004-05-10 9:51 pm How about from a Mac? I have my Powerbook sitting here next to my Windows box just can’t seem to get an ISO!! DOH! 2004-05-10 9:54 pm There are 2 CPU’s available, one of them is slooow (400x slower) but the other one is only 40x slower. Under Linux, the network works and it doesn’t need any rom or anything, just get it, compile it, configure it and play! I just got MacOS X installer CD to boot (great!). I’ll try something more tomorrow. 2004-05-10 9:56 pm Well.. If it’s Mac OS X, then typing the above command in a Terminal should work, too. Perhaps replacing /dev/cdrom with /dev/cdrom0 or whatever the device layout is on OS X. 2004-05-10 10:03 pm I guess I need to know the device layout cause /dev/cdrom and /dev/cdrom0 etc all return “no such file or directory” 2004-05-10 10:39 pm Ok got it! Using Toast I “Saved as Disc Image” which saves to a .toast file, then changed the .toast to .iso and bingo worked!!! 2004-05-10 11:00 pm rite now im tryin ‘cat disk1 disk1s1 disk1s1s1 disk1s1s2 > /macosx.iso’ on panther and it seems to be working.. not sure if its gunna build a correct iso but it seems to be working.. 2004-05-10 11:11 pm Has Apple started to include more 64bit code into OS X? Since the G5 is 64bit…. Mabe we will see more 64bit code in Tiger? If so, this emulator will need lots of work to keep up with Apple! 2004-05-10 11:18 pm Apple, arguably, needs OSX to lure people to use a MAC. A computer w/o a functional OS is useless. This OS is running by some accounts right now @ 500 x slower than it should be. But it boots. Shouldn’t Apple be worried – say a or two year from now – when the product has matured and can run much faster? 2004-05-10 11:19 pm “Has Apple started to include more 64bit code into OS X? Since the G5 is 64bit…. Mabe we will see more 64bit code in Tiger? If so, this emulator will need lots of work to keep up with Apple!” OS X currently has 64-bit addressing to take advantage of the G5, but the OS itself is 32-bit. The thing that will be hard for this emulator to keep up with is the upcoming altivec update from IBM. 2004-05-10 11:26 pm Apparently, the latest QEMU has an experimental PPC emulation (PREP kernels supported). It’s linux-only at the moment, and only seems to do ppc versions of linux. Between that, Sheepshaver and PearPC, we might get a real usable PPC emulator soon. Oh yes, let’s get the Morphos and Amiga OS4 working on PPC emulators! 2004-05-10 11:36 pm Will this thing ever run AIX ? Now that would be exciting ! 2004-05-10 11:43 pm I’m installing right now on a dual p4 xeon 3.06 ghz machine, which I’m pretty lucky to have at work. I’m using rh9 and the x86 jit option and I’m impressed that this thing works (seems to work perfectly, although it wouldnt let me boot w/o using option 2-select for the prom). However the speed isn’t great, and they had to do immense work to get it to be this good I imagine. This thing definately shows promise though. I think its going to be a great tool for PowerPC OS developers. 2004-05-11 12:02 am Mandrake and Darwin work great… I couldnt get MacOS 10.2 to work, it boots but then fails, I got my 10.3 upgrade discs to boot, however I cannot install because it requires that I have 10.2 installed. Darnit! Anyone got a work around to get 10.3 to install, or anyone found a way to get 10.2 to work? 2004-05-11 12:48 am Has anyone tried an older PPC mac disc, like OS9? You might need a rom for that though, and how does this thing handle that? 2004-05-11 1:50 am Legally, its Illegal of you to install OSX on non-ppc hardware. so… I dunno how long the osX instructions will be around. But still, nifty. 2004-05-11 2:51 am I am tring to boot Darwin 7.01, it gets stuck at : The following devices are availble for installation: the output on the PearPC console is: [IO/MACIO] dbdma: write(4) @00000000: 000000fc [IO/MACIO] dbdma: read(4) @00000004 [IO/CUDA] <Warning> keyb reg1 I did create a HD image (I D/Led the 3gb one) Anybody get any farther? 2004-05-11 3:24 am I’ve gotten booted and made the partitions. Check the cfg file and make sure the 0 is set to 1 for the primary master device (it’s not set to 1 by default). That should make a device show up right after where you “hung”. 2004-05-11 4:48 am Hmm, thanks Richard, that worked, however after I followed the directions at http://pearpc.sourceforge.net/installdarwin.html i get [IO/PROM] <Error> unknown interpret size 1972 in the console when I try to boot from my OSX iso. 2004-05-11 6:24 am Finaly got it installed on my AMD 2000+ and is really usable to play with but the install went find and tool over an hour but when it boot to the desktop the dock and finder continualy reload. Anyone else get it going or incounter this same issue? 2004-05-11 7:10 am 🙁 I downloaded the PerPC binary and then I edited the ppcconfig.example. i set a Yellowdog image for the ide0_master divice. but when i now start the ppc.exe with the ppcconfig.example, there comes only a window with a PPC log for a millisecond. and in the cmd is the following text: [CPU/MMU] new pagetable: sdr1 = 0x00300003 [CPU/MMU] new pagetable: sdr1 accepted [CPU/MMU] number of pages: 2^15 pagetable_start: 0x00300000 size: 2^18 can enyone help me? (sorry for the bad english, but im swiss) 2004-05-11 8:44 am Wow, this project completely took me off-guard. Not me really. More and more PPC emulations were released lately, so it was bound for something like this to happen. I also don’t think that this is any threat for Apple, because unlike what a lot of PC fans think, the performance difference between PCs and Macs simply isn’t big enough that a PowerMac emulation will feel anywhere near like a half-decent real machine. And since PowerMacs had quite a speed jump recently this certainly won’t change in the near future. Especially without AltiVec support MacOS X will be horribly slow (at least if it’s OS 10.2 or later), and emulation of AltiVec won’t be too fast either, because AltiVec instructions can use 8 registers out of 32, while SSE instructions can only use 2 registers out of 8. One last off-topic question: I am going to buy an iBook Real Soon Now, and I would like to run Linux inside OS X. I’m not totally sure why you want to do that, but it’s your choice… I know Mac-on-Linux allows me to do the opposite, but is there any software that let’s me do what I want, efficiently (i.e. not VirtualPC)? Currently there is no virtual machine for MacOS X (apart from Classic that only runs OS9.2), so emulating Linux/x86 is your only option at the moment (unless you want to dual-boot). But forget about the OpenOSX WinTel, which has been mentioned here, because that’s just a repackaged Bochs, and Bochs is absolutely horribly slow on MacOS X! It took several hours to install Win98 with Bochs on my PowerMac G5, and I aborted the installation after it wasn’t even anywhere near the finishing state after about 4 hours. I don’t know why Bochs is so slow, because it’s much faster on my slower PC, despite the fact that Bochs lacks virtualization or dynamic recompilation. So for PC emulation VirtualPC is your only real choice. But Mac-on-Linux is supposed to run on MacOS X soon: “Arch separation (yes… mol will soon run under OS X)” http://www.maconlinux.org/news.html Resume: Currently there is no way to run Linux/PPC inside MacOS X, but MOL might be able to do that soon. Until then dual-booting or Linux/x86 on VirtualPC is your only option. 2004-05-11 9:03 am Apparently, the latest QEMU has an experimental PPC emulation (PREP kernels supported). It’s linux-only at the moment, and only seems to do ppc versions of linux. Between that, Sheepshaver and PearPC, we might get a real usable PPC emulator soon. As far as I know QEMU uses a trick to be fairly retargettable. The trick is to mainly let the C compiler generate the code for the dynamic recompilation. If PearPC uses a hand-coded JITC (I didn’t have time to take a look at the source code yet) QEMU won’t be able to offer a speed increase, because on a level of translating one machine instruction into several machine instructions on another machine the hand-coded approach will always be better than code generated by a compiler. 2004-05-11 9:40 am I’d like to create my own boot CDs ISOs in order to try some third party PPC OS… I tried to specify yaboot to prom and then insert a ISO9660 CD but I don’t know how to access it from yaboot. (tried cd:-1,/boot/myimg and cdrom0:0,/boot/myimg), (/boot containning the myimg file) but it won’t load (says something like “unknown filsystem or…”). Are ISO9660 supported fril yaboot ? if not, how to make HFS bootable CD from win ? Leo. 2004-05-11 12:02 pm Thanks for answering my question. Guess I’ll put some effort in getting QEMU to work on my iBook, then. I guess with all these people not understanding me, I owe the world an explanation. The reason I want to run Linux under OS X is that I want to use OS X (which I see as the closest to a perfect operating system there is) as my primary OS, but I also want to keep developing Linux kernel modules. Dual booting is a gross waste of time, and running OS X under Linux would – I think – provide a subobtimal experience. 2004-05-11 2:06 pm Yeah ! What about OS 9 ? That would be a first for the x86 platform. And since OS 9 is much lighter than OS X, the speed should be much better ! 2004-05-11 2:13 pm “It is dog slow. OSX feels like on a G3 400 or something on my p4 2.4 GHz. ” Um, OS X 10.3 runs VERY VERY fast on my G3 400… 2004-05-11 2:53 pm Um, OS X 10.3 runs VERY VERY fast on my G3 400… same here! 2004-05-11 8:51 pm everything runs fine… until: disk1s1s9 hfs no no Mac OS X Install Disc 1 / FAILURE: DiskArbStart() -> 1102 any ideas? 2004-05-12 1:19 am Are you using 10.3 install discs? I got that same error when I was trying to boot with 10.2 CD’s. I got 10.3 installed and running, but the finder crashes and restarts continually. Once a few bugs are ironed out, I think this app will be amazing. 2004-05-12 7:36 pm 10.2 indeed. Testing with 10.3 now 2004-05-13 6:53 pm The project’s website has been updated with some info regarding running 10.2. You might want to check it out.