Jump to content

OS X for SSE (qemu)


Dragon
 Share

417 posts in this topic

Recommended Posts

I know what your saying. And I certainely know its hard work. I was pretty pissed off that day for some reason. Oh, I have an idea. I will flash lin bos on my p3. Then I will experment.....

Link to comment
Share on other sites

hey guys, i'm extremely interested in your project as it would be brilliant to get os x to work on any old pc! i would be interested in testing etc. have got your slax image although i don't have a copy of os x at the moment (there's dozens of linux cds around here though!).

 

before i try to download a 2gig torrent or something, do you guys reckon i should go for the intel or the ppc one? i'm leaning towards going for the ppc ver as i know that pearpc has been developed for a lot longer than qemu, although i know that length of development isn't everything! also, if anyone lives in the uk and happy to do a rip of one for me i'd gleefully accept and send you a postal order for the p&p/price of disk in the post ;)

Link to comment
Share on other sites

hi

 

yes finally i could run OSX on my box (Athlon Xp 2600+) but it´s very slowww i think because it´s running from X, i can´t open qemu from the slax console it says somenthing like "couldn´t open PC bios ./bios.bin" and "can´t open SDL display library" now i ask why couldn´t it run from console and can from X server? and another issue the deadmoo Vmware image has a patch for running SSE2 opcodes but the qemu included on dragon´s slax iso has SSE3 support, i think the SSE2 patch is f***ing the speed of the deadmoo image if qemu has SSE3 support why apply SSE2 patch? i think if we can make an SSE3 clear instalation of OSX qemu will run it faster ( not too fast but we can win a little speed) an what about linuxBios i´m very interest on this did you see? you can have a linux console in less than 6 seconds it´s amazing!

 

thnxs all for helping with this special thinks to dragon for making slax iso and help all of us to run OSX on SSE-less hardware

Link to comment
Share on other sites

Qemu requires SDL libraries and a minimal x server. But good thinking @ndres on the SSE3 emulation in deadmoo, but we aren't going to be using 10.4.1. If you take an image of a 10.4.8 install without the SSE3 patch, we can use that for a final DVD. At the moment there is a problem booting from an OS X iso, so until we can solve that, we have to use HD images. A 10.4.8 image won't have SSE3 patches applied.

 

this is the plan :

P3 Athlon XP etc.. flashed with linux bios (if compatible)

 

7 seconds ---> x server + sdl

startup script

messagebox asking for pearpc/qemu (kqemu option for people who can't get OS X working on their P4 comps) + option to boot from hd image or dvd (new install)

initiate pearpc/qemu as fullscreen reading from hd or dvd

 

PS: Masterofcomputers, check if your bios is compatible for LinuxBIOS

Link to comment
Share on other sites

I've been thinking if is there any way to make qemu virtualize real hardware like Graphics card, sound and ehternet, if it's possible qemu will run OSX just like native because it will virtualize the hardware and just emulate SSE2/3 opcodes so the speed will increase (i think) and we can use our real Grapics card, get some aceleration, use native network, and sound i think with linuxbios it will be possible, but it just an idea.

 

Now i'm integrating SSE3 patch to qemu 0.9.0 i read in changelog that this version is fully compatible with ACPI and with SSE3 support posibly it boot the .iso to make a clear instalation of OSX. just testing

Link to comment
Share on other sites

i´ve got too problems while compiling qemu (0.9.0 and 0.8.2) i just apply SSE3 patch succefully but the when i try to compile it say somenthing like "[leaving directory..... /.../../] error 1 , make *** [op.o] Error 2 " i´m using gcc 3.2 from knoppix live cd, i´ll try with another gcc.

 

pd: target-i386/helper2.c file from qemu 0.9.0 got one line more so :

 

qemu 0.8.2 modified helper2.c file:

 

/* #ifdef TARGET_X86_64 */

/* currently not enabled for std i386 because not fully tested */

env->cpuid_features |= CPUID_APIC;

env->cpuid_ext2_features = (env->cpuid_features & 0x0183F3FF);

env->cpuid_ext2_features |= CPUID_EXT2_LM | CPUID_EXT2_SYSCALL;

env->cpuid_xlevel = 0x80000008;

 

/* these features are needed for Win64 and aren't fully implemented */

env->cpuid_features |= CPUID_MTRR | CPUID_CLFLUSH | CPUID_MCA;

/* #endif */

 

and qemu 0.9.0 original helper2.c file:

 

#ifdef TARGET_X86_64

/* currently not enabled for std i386 because not fully tested */

env->cpuid_ext2_features = (env->cpuid_features & 0x0183F3FF);

env->cpuid_ext2_features |= CPUID_EXT2_LM | CPUID_EXT2_SYSCALL | CPUID_EXT2_NX;

env->cpuid_xlevel = 0x80000008;

 

/* these features are needed for Win64 and aren't fully implemented */

env->cpuid_features |= CPUID_MTRR | CPUID_CLFLUSH | CPUID_MCA;

/* this feature is needed for Solaris and isn't fully implemented */

env->cpuid_features |= CPUID_PSE36;

#endif

 

i don´t if just copy and paste the Drjargemeister code or just write the same line only adding "/*....*/" symbols like:

 

/*#ifdef TARGET_X86_64*/

/* currently not enabled for std i386 because not fully tested */

env->cpuid_ext2_features = (env->cpuid_features & 0x0183F3FF);

env->cpuid_ext2_features |= CPUID_EXT2_LM | CPUID_EXT2_SYSCALL | CPUID_EXT2_NX;

env->cpuid_xlevel = 0x80000008;

 

/* these features are needed for Win64 and aren't fully implemented */

env->cpuid_features |= CPUID_MTRR | CPUID_CLFLUSH | CPUID_MCA;

/* this feature is needed for Solaris and isn't fully implemented */

env->cpuid_features |= CPUID_PSE36;

/*#endif*/

Link to comment
Share on other sites

hmm, did you ./configure?

 

also i noticed this on the qemu page :

 

6.4 Mac OS X

The Mac OS X patches are not fully merged in QEMU, so you should look at the QEMU mailing list archive to have all the necessary information.

 

 

also I think we need to use the Mac OS X user space emulator that was mentioned before.

Link to comment
Share on other sites

obviously i´ve done it

cd /to/qemu/path --> gzip -dc sse3.diff.gz | patch -p0 = sse3 patch applied to qemu 0.8.2 and 0.9.0

modify targeti386/helper2.c file

cd /qemu/path/

./configure

make = *** [op.o] Error 2

f :) ck!!!

 

this is what i´ve done, i think it doesn´t work cause i´m using and old version of gcc and i´m using a live cd to compile it "knoppix 3.2" (i got suse 10.0 with gcc 4 and it doesn´t work).

 

what do you mean with "Mac OS X user space emulator" i don´t understand your post and what about ny hardware virtualization idea is it possible?

Link to comment
Share on other sites

Dragon, i think using pearpc is doing somenthing that is already done, for me it seem like we are still emulating OSX on ppc, (that is not too fast) and this is not the intention, we still try to run OSX in the fastest x86 SSE-less machines so we could win speed, the problem is to figure out how can we make it run just like native this is the problem no?

 

in other way we can try to integrate the SSE2/3 emulation code in the kernel to run it natively, but we both don´t know anything about kernel tunning, and as i can see we´re just alone in this (no one has replied to our posts).

 

i´ll still trying with qemu if anyone can help we´ll been thankfull

Link to comment
Share on other sites

I was thinking of:

 

1. An SSE-version of Darwin (I saw compile instructions for this somewhere) + QEMU

2. QEMU loads OSX Desktop (Aqua)

 

I have no idea how to do it however, and I fear it will still be slow.

Is it possible to use KQEMU in Darwin?

Link to comment
Share on other sites

I think that's basically what the OS X user space emulator does.

Also sorry @ndres for not being able to make it onto IRC this weekend. I will try to get on ASAP this week.

Link to comment
Share on other sites

Dragon, it´s OK don´t worry. I think the OS X user space emulator is other possibility, just tell me how it works an i´ll be pleased to feedback

 

is there anyway to contact someone like semthex or Jas, just to ask if they´re interesed in colaborate on this project ?

Link to comment
Share on other sites

Well I am here, but I am not capable of helping you with the project. If you send me detailed descriptions I can test for you on my SSE only machine, but I doubt that is less work than test it yourself. Looking forward to run OS X on my laptop (SSE only).

 

If you need any financial compensation, I will be glad to help...as I am a student it will not be much, but there is some...

 

Greetings,

Eddie.

Link to comment
Share on other sites

Eddie if you want to help, install an SSE version of darwin (8.0 and lower) and try to run an SSE2 app using qemu-darwin-user /path/to/app

 

please post results

Link to comment
Share on other sites

  • 5 weeks later...

Hello, is this dead or are people still actively working on it? I have some idea's to speed up the performance which i am trying on my old computer and will take bench marks. If this is dead, well sorry for disturbing it's peace. :)

Link to comment
Share on other sites

Mikeccc987, this is not dead Dragon and me still working on it, we´ll gratefull you can help testing and feedbacking, for now qemu idea is out but we still trying to integrate a Darwin OSX-User espace emulation code onto K**nel to make it work native and all of us can make a clean installation of OSX. If you want to help, Start installing Darwin for X86 SSE pc 8.0 or lower and wait for instructions from me or from dragon.

Link to comment
Share on other sites

Hmm... How far have you guys got in making a sse2 emulating kernel? Are you going to use the nx, sse3 and core duo commands from other kernels.. or will you be making your own? Also what method are you guys using for installing darwin 8 on sse computers?

Link to comment
Share on other sites

 Share

×
×
  • Create New...