Slashdot Mirror


WINE for Mac OS X in Development

TylerL82 writes "The Darwine Project aims to get WINE up and running through X11 on Mac OS X/Darwin. According to the site, WINE itself compiles rather well, and they'll be using Bochs for the actual x86 emulation. Quite an interesting idea. It's crazy, but it just might work!"

150 comments

  1. wwwwoooorrrrrkkkkk by soboroff · · Score: 3, Insightful


    It just might work... but veeeeeeery slowly, if Bochs is underneath it.

    1. Re:wwwwoooorrrrrkkkkk by forsetti · · Score: 4, Insightful

      Actually, this might work out OK -- from their site, Bochs is going to be stripped down (no interface, no SDL, etc) and /just/ provide x86 emulation -- sort of like a software processor. Yes, it will not provide native speed, but it might just be "good enough"....

      --
      10b||~10b -- aah, what a question!
    2. Re:wwwwoooorrrrrkkkkk by Rick+the+Red · · Score: 1
      For my money, I'd rather just buy a used PC and run Windows on it. Just last month I went shopping for a used video card for my boy's PC so it would run a game he got for Christmas, and they had used midi-tower PCs with power supply, motherboard, and a 400MHz Celeron for $20. $20! Add memory, a moderate (20Gig) hard disk, video card, and keyboard and for around $100 you can have a fairly decent PC. It's used, and a bit of a Frankinstein, but it will run MS Office, and that's what most people want anyway.

      No, it won't be a gamer's PC, but then neither will a Mac with Wine and Bochs. If you're interested in games, get an Xbox or PS2.

      --
      If all this should have a reason, we would be the last to know.
    3. Re:wwwwoooorrrrrkkkkk by Ianoo · · Score: 1

      Why would a Mac user want a PC for Microsoft Office when Microsoft already produce a version of Office that is significantly superior to the Windows version that runs natively on Mac OS X?

    4. Re:wwwwoooorrrrrkkkkk by addaon · · Score: 3, Informative

      Unfortunately, the slow part of Bochs is not the front end, it's the emulator. Admittedly, calls to the WINE api will run at native speed, but I imagine that very few windows programs spend most of their time there. Otherwise, expect slowdown of 99% - 99.9%... my G3/600MHz runs console apps in Bochs at around 900kHz equivalent.

      --

      I've had this sig for three days.
    5. Re:wwwwoooorrrrrkkkkk by Rick+the+Red · · Score: 1

      That's sort of my point. Other than games, what Windows software are you going to run on your Mac that isn't available in a native Mac version? And if you want to play games, you're going to be dissapointed with an emulator. If there's some Windows app you really, really, need I think it will run faster on a $100 used PC than on this emulator within an emulator approach.

      --
      If all this should have a reason, we would be the last to know.
    6. Re:wwwwoooorrrrrkkkkk by squiggleslash · · Score: 4, Informative
      It just might work... but veeeeeeery slowly, if Bochs is underneath it.
      While the write-up says:
      According to the site, WINE itself compiles rather well, and they'll be using Bochs for the actual x86 emulation.
      The FAQ says:
      The second phase is to then integrate in WINE the QEMU binary translator.

      Additional supporting tools for launching Windows applications from the desktop and an integrated installer are desireable items for the package (like OpenOffice is doing).

      This is distinguished from simply using QEMU to run Windows because there is no Windows here. Just WINE and QEMU to run Windows applications directly under X. That will enable vastly better performance, better integration, and easier administration.

      For Mac OS X, the ideal would be to eventually use the native GUI.

      Further enhancements could include integrated support for things like FAT32/NTFS volumes with Windows under via QEMU (or other PC emulator) so that the same Windows applications could be run in either mode (Windows or WINE).

      My understanding is QEMU has a fairly good reputation, though that might simply be because it doesn't have the overhead of emulating VGA/etc.
      --
      You are not alone. This is not normal. None of this is normal.
    7. Re:wwwwoooorrrrrkkkkk by n0dez · · Score: 1

      It's crazy.

    8. Re:wwwwoooorrrrrkkkkk by CuriHP · · Score: 1

      There is a lot of custom software that will only run on Windows. My father is considering buying Virtual PC for the sole reason of accessing the hospital database remotely. It requires IE 6 running on windows.

      --
      If it's not on fire, it's a software problem.
    9. Re:wwwwoooorrrrrkkkkk by shaitand · · Score: 1

      congrats you lucked out (btw where was this?).

      Normally just that case would be $60, that barebones bundle would normally be around $200 if it was decent hardware, and $120 if it was crap. But we'll go with $20 for that.

      Memory $70
      20gig drive $40
      video card $40-$150
      keyboard $20
      mouse $20

      Going with bottom of the line video card (this entire scheme makes for a web browsing box not a gaming box but hey) that's $210 including your mobo combo.

      $400 is what MOST people are going to be able to get that box for.

    10. Re:wwwwoooorrrrrkkkkk by Anonymous Coward · · Score: 0

      Geezus, get out the house more. The software world is a lot bigger than MS Office and Photoshop.

    11. Re:wwwwoooorrrrrkkkkk by Cecil · · Score: 3, Insightful

      On the contrary. I'd suggest that *most* windows programs spend most of there time there. In particular, GDI drawing is one of the slowest things you can possibly do in the windows API -- and almost every application does it, to some extent. Which is not to say that Microsoft's GDI sucks (it does) but graphics are a notoriously slow operation when you're busy calculating margins and colors and transparencies and fonts.

      By the way, I hope your numbers are exagguration. If Bochs on a 600MHz processor is incapable of running a program faster than an 8088, then I will be somewhat disappointed.

    12. Re:wwwwoooorrrrrkkkkk by punkass · · Score: 1

      Well, I use VPC to access the windows-only management program for my AP (it was cheap, and I had a pc then...). Also, as other have mentioned, there are loads of in-house programs that (unfortunately) are written for Windows only. Then there's the whole Exchange-MAPI thing that still is only fully implemented in Outlook for WIndows. Not to mention CRM software...that's a whole other platform lock-in story. True, the home user will probably not want for software selection...but the business/enterprise user (in order to co-exist in a Windows environment, Windows virtualization/emulation is still a necessary evil.

      --
      "Nobody owns the fucking words man." - James Dean
    13. Re:wwwwoooorrrrrkkkkk by addaon · · Score: 1

      My numbers are not, unfortunately, exaggeration (how the heck do you spell that, anyway?). They are, however, based on a straight compile with no check of optimization or anything. And I assume it would be measurably less bad on a machine that didn't need to do as much byte swizzling.

      --

      I've had this sig for three days.
    14. Re:wwwwoooorrrrrkkkkk by PeterHammer · · Score: 1

      IF your company uses Visual Source safe for source control and you use a mac for development, then Wine would be mighty useful! A $100 PC does not cut out the tedium of having to switch to a whole new machine to checkout a file. One could use the emacs SS integration but that does not seem to work well, and it is useless if you want to use an IDE.

    15. Re:wwwwoooorrrrrkkkkk by Anonymous Coward · · Score: 0

      You get crappy prices on computer hardware. I found a cheap system for $219 CAD, or about $165 USD.

      It's a Celeron 633 with 256 MB RAM, 20 GB HDD, CD, etc.. You still need a keyboard and mouse, $10 each, total is now $185.

      For $185, you get much better performance than a MAC running Windows, and another computer to screw around with.

    16. Re:wwwwoooorrrrrkkkkk by Creepy · · Score: 1

      Back in my emulator days (Virtual PC 1.0-2.0 era), there were a number of lively discussions in IRC and on a couple of emu-lists on why Bochs would never be as fast as something like Virtual PC.

      Basically, it's because Bochs is written for platform compatibility, not for speed. Because of that, hardware reordering optimizations and true dynamic recompilation are not possible. Bochs also couldn't be fully register and cache optimized or use some of the PPC hardware tricks such as byte swapping using the PCI hardware endian swap (there was a way to do this on PPC 75xx and 85xx hardware). You also need to depend on the compiler to best optimize certain things like block copies. A non-optimized copy may copy large blocks using the integer unit which has a max of 4 bytes, where the floating point and altivec units can copy twice as much data per cycle (or more... not really up on the latest hardware). All PPC macs have multiple processing units that can work in parallel (as do all PCs as of Pentium Pro and all but the original MMX units), but I don't know if Bochs is written to best use parallel execution because of backwards compatibility issues (or Altivec, for that matter).

      Since this project is targeting macosx, I wonder if there are plans to processor optimize Bochs, though...

  2. This will be really slow by NanoWit · · Score: 5, Insightful

    The reason we haven't seen WINE off of x86 yet is because like the name says "Wine Is Not an Emulator". So there's no code in wine that simulates the processor/real hardware. Bochs was just pitifully slow the few times that I used it. This won't have any kind of speed

    1. Re:This will be really slow by Joey+Patterson · · Score: 5, Funny

      there's no code in wine that simulates the processor/real hardware

      True that, but what about other solutions for running PC software on your Power Mac G5?

    2. Re:This will be really slow by Isbiten · · Score: 1

      Yes and that's why they're including Boch with it for the x86 emulation.

      --
      I fought the corporate America, and the corporate America bought the law.
    3. Re:This will be really slow by radicalskeptic · · Score: 2, Insightful

      Oh god, the humanity. I saw that for the first time this morning, and I just know I'm going to have nightmares about it tonight.

      --
      WARNING: If accidentally read, induce vomiting.
    4. Re:This will be really slow by Profane+MuthaFucka · · Score: 0

      Bochs might be damn slow right now, but there's no fucking reason why that shit always needs to be slow. Compare it to Java. There's no reason why the x86 code can't be treated like a fucking virtual machine, and all the Java tricks can't be applied. Bochs can be made to go a lot fucking faster. Sounds like some damn interesting shit, actually.

      --
      Fascism trolls keeping me up every night. When I starts a preachin', he HITS ME WITH HIS REICH!
    5. Re:This will be really slow by Shishak · · Score: 2, Interesting

      Does it really need to emulate the win32s stuff. What would the performance be if the win32s stuff ran native on PPC and just ran an x86 emulator for the nonWINE .dlls and application code. All of the screen & IO API could be PPC native. The endian thunking layer may munge everything and destroy the speed though....

      --
      Now I hope and pray that I will But today I am still, just a bill
    6. Re:This will be really slow by addaon · · Score: 3, Interesting

      There's a LOT of reasons that 'all the java tricks' can't be applied; the main one is the different structure of memory. A few of the java tricks (dynamic recompilation, for example) can be; others (instruction reordering) can't be.

      --

      I've had this sig for three days.
    7. Re:This will be really slow by herko_cl · · Score: 1

      That is one of the worst things I've ever seen! It kinda puts Mr. Goatse to shame...
      I'm going to have nightmares for a really long time.

      --
      No .sig for you! ONE YEAR!
    8. Re:This will be really slow by grunherz · · Score: 1

      From my submitted items list:

      2004-01-28 19:23:31 Apple G5 converted into a PC (articles,apple) (rejected)

      Oh well, I tried.

      --
      Four weeks, Twenty papers, that's two dollars ... plus tip.
    9. Re:This will be really slow by Anonymous Coward · · Score: 0

      RTFA... WINE does compile natively on PPC. They will run the WINE libs on PPC and the non-WINE libs on x86 emu as you are suggesting. duh

    10. Re:This will be really slow by Kinniken · · Score: 1
      Apparently this one has a speed problem... Not good enough for running a websever, at least ;-)

      ----------------
      HTTP Error 403

      403.9 Access Forbidden: Too many users are connected

      This error can be caused if the Web server is busy and cannot process your request due to heavy traffic. Please try to connect again later.

      Please contact the Web server's administrator if the problem persists.

      --
      What do you know about World Politic? Find out in this quiz
    11. Re:This will be really slow by HTH+NE1 · · Score: 2, Funny

      So it's (a) WINE-Bochs?

      --
      Oh, say does that Star-Spangled Banner entwine / The myrtle of Venus with Bacchus's vine?
    12. Re:This will be really slow by jvalenzu · · Score: 1

      This won't have any kind of speed

      Good, maybe it won't kill mac gaming like it did Linux gaming.

    13. Re:This will be really slow by Llywelyn · · Score: 4, Funny

      From the article:

      >I have to say that I'm happy - I can keep on using XP. ....and thus getting what he richly deserves for that crime against nature.

      --
      Integrate Keynote and LaTeX
    14. Re:This will be really slow by minus_273 · · Score: 1

      geez how dumb can people be, wine is definetly an emulator. It is not an x86 emulator, it is a windows emulator. Don't let the name fool you.

      --
      The war with islam is a war on the beast
      The war on terror is a war for peace
    15. Re:This will be really slow by ModernGeek · · Score: 1

      That spoiled brat, he doesn't deserve it, how can someone be so stupid? Silly gamers. I can't even think how to show my anger *explodes* Seems like the same kinda guy who would get a new car from his parents and then rip it all to peices, put a "system" in, and overload the alternator. Pure and shear stupidity. He will never learn anything but howto play CS better and burn longhorn ISOs I suppose.

      --
      Sig: I stole this sig.
    16. Re:This will be really slow by splateagle · · Score: 1

      from what I understand even the worst outcome of this WINE project would probably run faster than the piece o' shit innards this kid gutted his G5 to install, especially since the brat was too dumb to realise he could have re-used the G5's gfx card...

  3. Bochs, WINE, X-Windows... by Llywelyn · · Score: 2, Funny

    What, is this a conspiracy to make Mac systems run more slowly?

    Cool idea, I wish them the best, but I like apps to load within my lifetime...

    --
    Integrate Keynote and LaTeX
    1. Re:Bochs, WINE, X-Windows... by n0dez · · Score: 1

      I guess I would run Windows on VirtualPC if I had a Mac.

  4. Not much different from 68K-PPC conversion by wowbagger · · Score: 4, Interesting

    If you think about it, this COULD be done in a manner simillar to the way Apple handled the 68K to PPC conversion:

    You have BOCHS run the actual application code. When the code makes a call to one of Wine's libraries, you hit an escape sequence and drop to native PPC code for the actual implementation. At the end of the call, you resume emulation. It would probably require some changes in the shim layers between the DLL exports and the core Wine code, but it could be done.

    That worked well for MacOS because applications spent most of their time in OS code (which was native PPC). How well it would work for Windows programs remains to be seen.

    This has been kicked around a bin on Winedev.

    Disclaimer: IAAWD (I AM a Wine developer, in my own small way - I did some cleanup on the Joystick and ADPCM audio code).

    1. Re:Not much different from 68K-PPC conversion by Anonymous Coward · · Score: 2, Interesting

      Actually, when the PPC initially came out, most of the OS was NOT yet rewritten as native code. Thus early PowerPC based Macs were only marginally faster than 68k Macs, but they sped up quicly as more and more of the OS was ported and the 68k emulation code was improved and more and more programs came out with native PPC support.

      Then there was a long hiatus. First, because Apple was retargeting its efforts at Copland (which turned out to be vaporware) and because the context shift between PPC to 68k code execution took a large amount of time, so at some point the strategy of switching one subroutine at a time to PPC actually SLOWED down the machine; you had to basically change all the rest of the OS routines in one go.

      In fact, Mac OS was not fully PPC'ed until Mac OS X came along (because OS X could not run 68k code; however, old 68k programs CAN in fact run inside of Classic).

    2. Re:Not much different from 68K-PPC conversion by Anonymous Coward · · Score: 0

      Yes that's true; but it's also due to the fact that the initial 68k emulator was an interpreter; and was replaced with a JIT emulator (starting with the first mac with PCI afaik).

      For NuBus based PowerMacs the only way to get an JIT emulator was to buy Connectix Speed Doubler (once again Connectix; same guys who made VirtualPC.).

      And it's actually not that strange that Connectix managed to carry out alot of cool products for the Mac; one of their employes wrote *SURPRISE* the apple JIT emulator provided with PCI PowerMacs.

  5. Unlikely to provide any speed by Anonymous Coward · · Score: 3, Informative

    Virtual PC may run reasonably quickly (still not what I'd call 'fast'), but that's because it used a horrible hack. All PPC processors up to and NOT including the G5 were bi-endian. VPC switched their endianness while it was running so it could do everything without swapping bytes. This is both the delay to further VPC releases and the reason x86 emulators will remain quite slow.

    1. Re:Unlikely to provide any speed by nocomment · · Score: 0, Offtopic

      bi-endians don't like to be called that, please refer to them as homosexual.

      --
      /* oops I accidentally made a comment, sorry */
      /* http://allyourbasearebelongto.us */
    2. Re:Unlikely to provide any speed by FredFnord · · Score: 3, Informative

      > All PPC processors up to and NOT including the G5 were bi-endian. VPC switched their endianness while it was
      > running so it could do everything without swapping bytes.

      Incorrect. It used specific little-endian processor instructions, but it did not put the chip into little-endian mode.

      And, oddly, Virtual PC's performance was never more than 25% or so greater than SoftWindows's performance, and SoftWindows never used them at all, and was a badly-ported 680x0 program by then to boot. So frankly, I have my doubts that this is really going to make that much of a difference.

      -fred

      --
      Sign #11 of Slashdot overdose: You see the phrase 'moderate Republican' and you wonder if that would be a +1 or a -1.
    3. Re:Unlikely to provide any speed by Anonymous Coward · · Score: 0

      Virtual PC has since been changed significantly:

      These days its closer to a PPC virtualizer than an x86 emulator, wherein whatever x86 program you want to run will be binary-translated/dynamically-recompiled from PPC code to X86, then run in a virtualizer.

      They keep the converted bytecode in the cache, so often-run code will be grabbed from the cache and be even faster.

    4. Re:Unlikely to provide any speed by clem.dickey · · Score: 1

      That would make sense, but I'm not aware of any cross-endian instructions which would not also have worked in a G5. Can you tell us what they were?

    5. Re:Unlikely to provide any speed by Anonymous Coward · · Score: 1, Informative

      No; Connectix switched the endian mode of the CPU; using their VMM implementation (that's part of the MacOS X kernel); The G5 don't have a little endian mode; however it DOES have byteswap instructions; there's no other endian instructions as far as I know (else they're secret and not meantioned in the PowerPC Programming Environments Manual).

      However one could discuss wheneither the PowerPC 970 actually is an PowerPC; or if it's a POWER PC, afaik the ability to run the CPU in little endian/big endian mode is defined in the PowerPC standard.

  6. spend all that money by thinkpol · · Score: 2, Funny

    .. to get a computer that DOESN'T run windows. One that is faster, more secure, runs a more stable OS and is more powerful, just so that you can emulate a PC so it's slower, and less stable. Weird.

    1. Re:spend all that money by radicalskeptic · · Score: 1

      I agree. For me (and for most Mac users I know), there's no reason to run Windows over OS X any more. I've been using OS X for almost two years, and there's only been one program for the PC I wanted to run that didn't have a Mac port or Mac equivalent. And that was a game.

      I actually think for what I do (audio editing, sequencing, plus all the normal day-to-day stuff like web, email, etc.) the quality of the software avaliable for OS X is better than what you might get on PC. For example, there are a lot more indivdual music programs avaliable for PC, but most of them are low-end, and kinda sucky. And don't forget Microsoft's ports of Office and IE which are arguably better than their Windows twins.

      --
      WARNING: If accidentally read, induce vomiting.
    2. Re:spend all that money by austad · · Score: 2, Informative

      Well, try viewing Visio VSD documents under a Mac. Not possible. And for those of us who are network guys, and need to use visio for work, it kind of puts a damper on having a shiny new mac sitting on my desk.

      OmniGraffle supports VSX files, but not VSD, which is what everyone is using because Visio defaults to the VSD format when saving.

      There are other various apps too that just do not exist on a Mac, but get used by network guys and only run under windows (typically config compare programs, cisco password crackers, etc)

      The point is, there needs to be some software that will allow one to move to a mac, but provides some sort of transitional workaround until something native is available.

      --
      Need Free Juniper/NetScreen Support? JuniperForum
    3. Re:spend all that money by Hes+Nikke · · Score: 1

      The point is, there needs to be some software that will allow one to move to a mac, but provides some sort of transitional workaround until something native is available.


      try this* or this

      if your still stuck in Mac OS 9, you can try this or even try to find this

      you have a lot of options, open your eyes!

      *yes it's owned by Microsoft, but only recently. VirtualPC is still the product i would recomend if you need to run windows Software on the mac. G5 support is still an issue, but version 7 (shipping soon) should fix that.

      --
      Don't call me back. Give me a call back. Bye. So yeah. But bye our, well, but alright we are on a shirt this chill.
    4. Re:spend all that money by austad · · Score: 1

      I know about virtual pc, but why would I want to run a full copy of windows when I only need to run one app?

      If the it holds true that they will be using that other QEwhatever thing instead of bochs, this has the potential to outperform VPC. VPC is sloooow. I've used it, and it sucks. Hopefully the new version will address this issue, but I'd rather use WINE to start just a single app.

      --
      Need Free Juniper/NetScreen Support? JuniperForum
    5. Re:spend all that money by Hes+Nikke · · Score: 1

      you could install gentoo with JUST X11 and WINE (and the dependancies) in virtual PC.

      compiling would be a bit slow, but thats what DistCC is for :)

      --
      Don't call me back. Give me a call back. Bye. So yeah. But bye our, well, but alright we are on a shirt this chill.
  7. I don't mean to whine but... by amichalo · · Score: 2

    DISCLAIMER: My only experience with using X11 on OS Xis running OpenOffice via it.

    I am concerned that this will simply be too slow to be useful. Even with a 1Ghz G4, loading OO.o, which uses X11, is very slow (takes minutes to load). I could only imagine loading an exe via WINE via X11 via OS X would be an exercise in patience.

    Any info on minimum system specs or performance levels the project is targetting. (I tried to RTFA but there was little substance.)

    --
    I only came here to do two things; kick some ass, and drink some beer...looks like we're almost out of beer.
    1. Re:I don't mean to whine but... by Anonymous Coward · · Score: 0

      your disclaimer says it all.. try running a small, fast program and it will run well. openoffice is a big, slow program, and it runs that way on pc's, too.

    2. Re:I don't mean to whine but... by mewyn · · Score: 1

      X11 will not be the limiting factor here. In your experience with X11, it was OpenOffice that was slow. 1.0.3 was a terribly slow program. I use X11 on my Mac all the time, and it has no performance hit what so ever.

      I am, though, concerned for the speed of Bochs. I think it may be sluggish at best, but only time will tell. And for simple Win32 programs, this may just be the way to break people out of the Windows trap.

      Mewyn Dy'ner

    3. Re:I don't mean to whine but... by Unregistered · · Score: 2, Informative

      are you using oo 1.0.3? cause tat loads slow when running a custom compiled versio on gentoo x86. Once they have oo 1.1 (they might already; i haven't checked) for OSX, it'll be much faster. It is on linux.

    4. Re:I don't mean to whine but... by ricosalomar · · Score: 0

      Minutes? c'mon. I'm running OOo 1.0.3 and it IS slow to load. But it's less than a minute, and, suprisingly, I find it more stable than Office vX.

  8. I somehow doubt this will be any good by DurendalMac · · Score: 1

    As it's been said here, Wine is not an emulator. The reason it works as well as it does is BECAUSE it's running on x86 hardware. Having it emulate x86 is going to really bog it down. I seriously doubt it will work better than VirtualPC. However, if they can get hardware vidoe acceleration working, then it might just be worth it.

    1. Re:I somehow doubt this will be any good by Lussarn · · Score: 1

      With this solution windows system calls will run native, with VirtualPC they run emulated. Could be faster if they speed up bochs. Looking at the site it seems they are going for QEMU though (FAQ)

    2. Re:I somehow doubt this will be any good by forkazoo · · Score: 3, Informative


      As it's been said here, Wine is not an emulator. The reason it works as well as it does is BECAUSE it's running on x86 hardware. Having it emulate x86 is going to really bog it down. I seriously doubt it will work better than VirtualPC. However, if they can get hardware vidoe acceleration working, then it might just be worth it.


      Video acceleration comes free, through a few layers of abstraction. Basically, the windows program will call some Win32 API function
      FooDrawTextlpsz(string);

      The CPU emulator runs along fine and dandy until it hits this point, and needs to jump to the Win32 native API code. It calls WINE for this.

      WINE is a natively compiled PPC application / library, so FooDrawText is just native compiled PPC code.

      WINE takes the Win32 function, and uses an Xlib equivalent. XFooMakeStringGetDrawn(string, MONACO) or whatever.

      The X server takes this Xlib call, and passes it to the Aqua drawing system, because on Mac OS X, the X Server is just an Application running alongside other native Apps.

      So, Aqua draws the text into the window at the correct position, just as windows would on a native system.

      This window is treated as a texture object.

      The texture is used by the Quartz Compositing engine to draw the window to the screen by using OpenGL.

      OpenGL takes the instructions to draw the windows, and hands them off to the video driver.

      The video driver then instructs the card to finally draw the window onto the screen, using native commands for the specific card.

      Lo and behold, the X86 Win32 request to draw text has resulted in a picture of some letters in our frame buffer.

      Egad, I should probably take up baking.

      So, anyhow, my point is that the Wine/ppc guys don't need to write an emulator for the video hardware. Though it's heavily abstracted, they get video acceleration for free thanks to the existing Xlib code. The Win32 application never touches the actual video device - it just makes API calls which make things happen to the hardware. Now, if this were a DOS emulator, it'd be completely different. You would need to actually emulate a VGA card that the program can have to itself.

    3. Re:I somehow doubt this will be any good by Creepy · · Score: 1

      WINE replaces the Windows API calls with X equivalents (and maybe now Quartz?), so it's faster because WINE Is Not an Emulator, it is native code replacing APIs called from a Windows App. You need an emulator to translate the program being run but any calls to Windows APIs are run natively. The speed cost will be how much time is spent in the emulated code rather than the actual Windows API code.

      Windows itself is (mostly) abstracted from the hardware anyhow, which was done initially to support Alpha processors and why it can work.

  9. Two things by Llywelyn · · Score: 3, Insightful

    ...that might throw a wrench in that, even assuming the apps do spend their time in system calls.

    0) The PowerPC was an order of magnitude faster than 68k series. IIRC the 601 had twice the clock and was faster per clock than the 68040. There is no such advantage here.

    1) In order to handle everything correctly here the bit-order is going to have to be switched (different endians). This is not fast on a good day.

    --
    Integrate Keynote and LaTeX
    1. Re:Two things by g_lightyear · · Score: 5, Informative

      Not necessarily. The technology being chosen is a combination of native code - which can do any necessary 'transitions' to a 'normal' endian mechanism at the API boundary between WINE and the application - and the emulator in question.

      The emulator in question is based on something similar to the FX! Alpha code recompiler; it provides an execution environment, yes, but also dynamically recompiles code into native.

      Between the core Windows libraries being "native" (in that they're wine lib, and therefore PPC-compiled native on OSX, not native x86) and the remainder in this 'recompiled' code execution environment, it's possible to strip out much of the endian issues.

      Not saying they will - only that there's a lot of room to manoeuvre here.

      Free.fr, where the project is hosted, is (of course) being slashdotted.

      One of the performance metrics lists the QEMU version of gzip (x86 on PPC) being 5 times slower than native (for example) - and comparison to bochs put bochs well behind (however, qemu had no MMU emulation).

      --
      -- A mind is a terrible thing.
    2. Re:Two things by clem.dickey · · Score: 4, Informative

      > the bit-order is going to have to be switched (different endians). This is not fast on a good day

      That's byte order, not bit order.

      Even on a bad day dealing with byte-reversed integers on a PPC requires just two instructions: Load Byte Reversed and Store Byte Reversed. These replace the Load and Store which PPC uses for native data.

      Floating point load/store would suffer, though. You would have to use the integer unit to reverse the bytes, as there is no Load/Store Float Byte Reversed.

      Note that data in a PPC register has no endianness, because PPC registers, unlike PPC memory, do not provide byte or bit addressability. (The original POWER processor have an "extract bit" instruction which extracted a bit at (big-endian) position n in a register. This instruction was not carried forward to the PPC.)

    3. Re:Two things by minus_273 · · Score: 1

      i think PPC processors until the G4 are biendian, that is how virtual pc does some of its magic

      --
      The war with islam is a war on the beast
      The war on terror is a war for peace
    4. Re:Two things by Anonymous Coward · · Score: 1, Interesting

      Switching order on the PPC is a breeze, it does it on the fly and does it extremely well.

      VirtualPC does this, its one of the major improvements they put in to it which is why the more recient versions are so much faster than the previous versions.

    5. Re:Two things by Lord+Kano · · Score: 2, Informative

      The PowerPC was an order of magnitude faster than 68k series. IIRC the 601 had twice the clock and was faster per clock than the 68040. There is no such advantage here.

      The PPC was faster per clock cycle. In terms of actual clock frequency, the first PPCs were slower than the fastest 68040s. The PowerMac 6100/60 ran a PPC 601 at 60 mhz. The Quadra 840AV ran a 68040 at 80mhz (all IO to the logic board was done at 40mhz), near the end of the 68k's lifetime, Apple started to refer to such machines as 40/80 when talking about their speeds.

      Running 68k code the Quadra 840 would pound a 6100/7100/8100 into the ground. When more Apps started to come compiled for the PPC, that was when they really started to shine.

      LK

      --
      "Hi. This is my friend, Jack Shit, and you don't know him." - Lord Kano
    6. Re:Two things by The+Bod · · Score: 1

      Depending on what exactly they are trying to do, there may be no overhead because of byte order (not bit). The PowerPC can be put in to little endian mode. I'm pretty sure this is what VirtualPC does. Microsoft claims the G5 doesn't support this, but they are lying.

    7. Re:Two things by Anonymous Coward · · Score: 0

      Unfortunately the 970 (err, G5) lacks the reversed load and store instructions.

    8. Re:Two things by Creepy · · Score: 1

      actually, the 601/66 WAS faster, but mainly because Apple dumped clock doubling at the same time. A 33MHz Mac actually ran on a 66MHz 68040 chip, so technically, the chips were the same speed.

      This emulator had a couple of advantages though - first, no endian swapping (as you mentioned) and second, a trick called dynamic recompilation, where commonly used instructions or loops were stored in L1 or L2 Cache. The same developer went on to develop Virtual PC's dynamic recompilation engine for Connectix. Because of this, non-native apps could be run at about 2/3 speed. By the 100MHz 601, apps were running about the same speed or slightly faster than a 33MHz 68040 (the 604e/150 was easily much faster). PC emulation using VPC 1.0 ran roughly 1/3-1/2 speed on a 604e/150. I believe my system reported a speed of 43MHz, but performance-wise it was closer to 66MHz (some sprite based games like X-Men were even faster, but some apps like Word were slower).

    9. Re:Two things by kommakazi · · Score: 1

      Actually PPC chips can process more in one cycle than an x86 chip...

  10. Soft Foundation by metrazol · · Score: 2, Interesting

    I'd love to see WINE on OS X but will it run any faster than Dosbox? I know you're thinking "Oh, great, he's comparing WINE to a game environment emulator." but hey, it's the same problem. Dosbox emulates a 286 or so wholesale, which is...well...useful for old DOS games, but can Wine promise anything more? WINE is, obviously, not an emulator, so it has to work on top of an actual emulator. Dosbox is slow. Bochs is slow. WINE is fast...on a high end x86. WINE won't run so well on your old 386. So if WINE is running on top of Bochs, is it like taking your Ferrari out for a spin in wet cement? ...or is soembody going to do some brilliant hacking that magically turns my G4 into an Athlon?...or a K6? ...P2? ...486?

    --
    "Life's funny sometimes." "And sometimes it isn't." --Cat's Cradle
    1. Re:Soft Foundation by shaitand · · Score: 1

      Maybe your getting this, and maybe not, from your post it sounds like your not understanding.

      Wine itself will be fully PPC compiled, it won't be emulated at all. That includes all wine native .dlls (which includes the most commonly called ones). It will only be actual windows dlls which will have to be emulated to run.

  11. Just Goes To Show... by Flwyd · · Score: 4, Funny

    All problems in Computer Science can be solved by adding another layer of indirection.

    --
    Ceci n'est pas une signature.
    1. Re:Just Goes To Show... by Anonymous Coward · · Score: 0

      s/Computer\sScience/Politics/

      as well...to bad

      s/Computer\sScience/Government/

      doesn't work the same way.

    2. Re:Just Goes To Show... by gidds · · Score: 1
      Don't you mean...

      All problems in Computer Science can be solved by looking here?

      --

      Ceterum censeo subscriptionem esse delendam.

  12. Not using Bochs... by BlueSteel · · Score: 5, Interesting

    According to their FAQ, they aren't using Bochs for x86 emulation, but QEMU. I have no experience with QEMU, but according to some of the posts on Darwine's sourceforge message board, it's much much faster than Bochs. I wish these guys luck. I'd love to have wine running on OS X.

    1. Re:Not using Bochs... by nathanh · · Score: 4, Informative
      According to their FAQ, they aren't using Bochs for x86 emulation, but QEMU. I have no experience with QEMU, but according to some of the posts on Darwine's sourceforge message board, it's much much faster than Bochs. I wish these guys luck. I'd love to have wine running on OS X.

      The reason QEMU is faster is because of dynamic translation.

      Bochs decodes each and every instruction just before it is executed. So if you have a loop that executes 100 times, you have to decode the same instructions 100 times. That's incredibly slow. I have seen estimates that Bochs needs 160,000 native CPU instructions to emulate a single x86 instruction.

      QEMU takes a block of code (typically a whole page) and translates the block into the native instruction set. Then it executes the translated block of code. QEMU tries to keep translated blocks around as long as possible, using dirty bits to determine when retranslation is needed. This is the same technique used by VirtualPC on the Macintosh. It is much faster than Bochs!

      There is experimental code in Plex86 to do dynamic translation and Bochs can use Plex86 as the backend (it offloads entire pages of code to Plex86). So it's possible that Bochs will one day achieve the performance of QEMU.

      Take note that QEMU is usable today, just so long as you're running purely Linux binaries. It is possible to use QEMU to run Linux/x86 binaries on Linux/PPC for example. QEMU's dynamic translation engine is pretty decent. QEMU doesn't emulate the PC hardware. Bochs does emulate the PC hardware. If you could cherry pick the dynamic translation from QEMU and the PC hardware emulation from Bochs then you'd have something to compete with VirtualPC right now.

    2. Re:Not using Bochs... by caseih · · Score: 2, Informative

      Actually QEMU has mode where they are emulating the hardware. Right there are reports of windows 98 booting in the full virtual machine that qemu can now do. Obviously the linux binary loader part of qemu is faster and lighter, but qemu is a full emulator/virtual machine, soon to be on par with bochs and maybe virtualpc. There's even talk of using the qemu dynamic translation engine in bochs instead of the slow mechanism it currently uses.

      Note that this darwine project is not a virtual machine per se, but a windows exe loader and api/ x86 code interpreter. The goal being to run windows exes on OS X as if they were native (this does not mean it has anything to do with quartz). In some respects, darwine could be compared best with the qemu linux loader portion of their project.

    3. Re:Not using Bochs... by nathanh · · Score: 1
      Actually QEMU has mode where they are emulating the hardware. Right there are reports of windows 98 booting in the full virtual machine that qemu can now do.

      That's great! The last time I checked I knew it was in development, but I didn't realise how fast the work has been progressing. Truly amazing.

  13. Bochs? by CODiNE · · Score: 5, Informative

    I don't know where all this Bochs talk is coming from. I checked the FAQ and looked around some links and never saw it mentioned. QEMU on the other hand seems to be what they're putting in the official release. Maybe Bochs is in there for now for compatibility reasons. QEMU is waaaay faster than bochs, I can't wait til this is packaged up in a DMG that I can recommend to my OS X buddies.

    --
    Cwm, fjord-bank glyphs vext quiz
    1. Re:Bochs? by TylerL82 · · Score: 1

      The Darwine guys changed every instance of Bochs on their site to QEMU after the article was submitted.

  14. Headf*ck!! Difficult to understand... by polyp2000 · · Score: 2, Interesting

    This is a really weird one, and it is difficult to say how fast or slow it might be.

    Many of the core Win32 api's and DLL's have been re-implemented as Linux native equivalents as part of the wine project. If these are compiled as linux ppc versions, and you have an x86 emulator running the non-ppc bits, you get a really bizarre hybrid of code executing. It will be really interesting to see how this works. Its also pretty difficult to say how fast or slow this thing is going to be, due to the strange architecture. My brain is having a confusing time trying to figure out how they would string these components together.

    Nonetheless, good luck to them, its an ambitious project and probably has some far reaching implications for the future.

    --
    Electronic Music Made Using Linux http://soundcloud.com/polyp
  15. "Slow" is relative by fm6 · · Score: 4, Interesting
    It's true that emulating a serious CPU takes a lot of crunching. Which is why we've traditionally relied on campatibility layers (like Wine) and hardware support. But like many other problems, this one is being nibbled at by increasing CPU specs.

    When I want to play an old DOS game on my XP system, I don't mess with a compatibility layer (complicated and unreliable) or reboot to DOS (damned inconvenient). I run DOSBox, which emulates not just the CPU, but the sound card and video adapter as well! The overhead is horrendous (Sword of the Samurai takes more than half the cycles on my 1 Ghz Pentium III), but well within the capacity of my system. And that's a real-time application! I imagine the DOSBox would barely notice the overhead for something less CPU-intensive, like a word processor. One of these days, I'm going to have to try Windows 3.0...

    I think most Windows desktop applications (database clients, productivity software) would have even less overhead than my old DOS games. But even if they had a lot more, consider the specs of a low-end Macintosh. Its CPU cycles as fast as my Dell's, and the raw crunching power of a G4 is possibly twice that of my PIII. Never mind a dual-processor G5!

    Which isn't all that expensive. If performance and usability were the only criteria for buying a computer, I'd be a Mac fanatic. As it is, I hardly ever touch one. Oh well.

    1. Re:"Slow" is relative by rollthelosindice · · Score: 1

      You bring up a very good point about some apps being less CPU intensive. This could be useful for smaller appls that are win only, or even something like soulseek, which i dont support, but the mac versions of this have been lagging, and its not CPU hungry, just bandwidth hungry.

    2. Re:"Slow" is relative by fm6 · · Score: 1

      Or just instruction set hungry ;)

    3. Re:"Slow" is relative by Ed+Avis · · Score: 1

      Windows 3.0 should be no problem - I ran it in software emulation on my 35MHz Archimedes, although the performance was not blazing fast. I think CPUs are now getting to the level where Win95 should be possible, after all the main factor affecting speed is available RAM.

      Still, you'd need some rather cunning dynamic recompilation to get anything less than a 10x slowdown in MHz terms.

      --
      -- Ed Avis ed@membled.com
  16. Lemme get this straight... by Ianoo · · Score: 2, Insightful

    Let's see now:

    x86 assembler instructions translated to PPC assembler instructions (two fundamentally different microarchitecture designs, CISC vs RISC and endian issues) using the Win32 API translated to Xlib (X Windowing System) talking to Apple's X Server translated to PDF commands and sent to Quartz.

    Can you say "speed demon"? If you need to run Adobe Illustrator that badly, then at this sort of speed it'll probably be easier to decompile it, port it and recompile it!

    1. Re:Lemme get this straight... by Anonymous Coward · · Score: 1, Funny

      Well, at least for Adobe Illustrator, even better would have been to buy the box that said "for Mac OS X" in the first place.

    2. Re:Lemme get this straight... by danigiri · · Score: 1

      Or one could use the native MacOSX Illustrator implementation.

    3. Re:Lemme get this straight... by IronDuck · · Score: 0

      - They're using Apple's X11 implementation (XFree86 4.3), not Quartz, so that's one less layer of translation you mentioned.

      - Adobe Illustrator is available for Mac OS X.

    4. Re:Lemme get this straight... by Ianoo · · Score: 1

      Okay, so what's the Mac OS X product that Adobe have stopped producing? As a Linux user I'm not "up" with all the goings on in the Mac OS X world (I'd love to own a G5 but I can't afford one at the moment!).

    5. Re:Lemme get this straight... by jterry94 · · Score: 1

      Framemaker

    6. Re:Lemme get this straight... by Graymalkin · · Score: 1

      Premiere.

      --
      I'm a loner Dottie, a Rebel.
    7. Re:Lemme get this straight... by cosmo7 · · Score: 1

      Adobe stopped supporting Premiere on Macintosh. The business decision was "Premiere meets Final Cut Pro. Game over."

    8. Re:Lemme get this straight... by jostallin · · Score: 1

      Yes, Adobe stopped supporting Premiere on the Mac with version 5. But, it didn't make headlines until version 7.

    9. Re:Lemme get this straight... by shawnce · · Score: 1

      Search the following page if you want an idea of what Adobe (use the advanced search with Adobe as a company) or any company for that matter makes for Macs.

    10. Re:Lemme get this straight... by foniksonik · · Score: 1

      Ummm Adobe Illustrator is and always will be a Mac staple for design professionals... did you seriously think it wasn't available for OS X? In fact I believe it was the first software that Adobe ported to OS X.

      As to the rest of your comment... what ever they come up with as long as it doesn't run a full implementation of Windows it will be way faster than Virtual PC. Seriously, all that extra bloat really takes it's toal.

      --
      A fool throws a stone into a well and a thousand sages can not remove it.
  17. some people by Enrico+Pulatzo · · Score: 4, Funny

    will do anything to play minesweeper.

    1. Re:some people by k_187 · · Score: 1

      Well, I do have to say that I have yet to find a version of minesweeper on Mac OS X that is as good and/or easy to play as the one that comes with windows.

      --
      11 was a racehorse
      12 was 12
      1111 Race
      12112
    2. Re:some people by PeeweeJD · · Score: 1
      I have yet to find a version of minesweeper on Mac OS X that is as good and/or easy to play as the one that comes with windows.
      Give NSMine a try. It works pretty nice IHMO And I am a pro at minesweeper on my work laptop. I have a best time of 132 seconds on expert.
  18. Crazy idea? by Anonymous Coward · · Score: 0

    I dunno, I thought it was a pretty obvious one. I always thought that combining Bochs and Wine, and alleviating the emulator of the burden of hosting the entire OS, would be a great alternative to the painfully slow experience of trying to do anything under Virtual PC. I'm glad that somebody's finally trying to make it happen.

  19. Looks like your average OS project by Lars+T. · · Score: 2, Funny

    The To Do list shows 15 tasks, one guy working on 4 (one finnished), one on another, and 3 working on the most important one: Improving the Webpage. The rest has yet to be assigned.

    --

    Lars T.

    To the guy who modded me down from perfect to terrible Karma - Apple haters still suck

    1. Re:Looks like your average OS project by n0dez · · Score: 1

      Why don't we ask Amit Singh about it?

  20. Cute project name! by Trillan · · Score: 1

    I thought it was a typo at first.

  21. Stop your whining about WINE-ing... by Thargok · · Score: 0

    WINE is actually a good solution as it can run natively on PPC with very few problems. The x86 emulation is going to be a little rough, but it seems that they are going to work on a lot of the code themselves (QEMU isn't very PPC friendly yet)

  22. How about me? by blackmonday · · Score: 2, Funny

    Anyone know when WINE is getting ported to Windows?

    1. Re:How about me? by JDWTopGuy · · Score: 1

      Obviously Microsoft already integrated the BSD-license version.

      (How many people will get this post?)

      --
      Ron Paul 2012
    2. Re:How about me? by wowbagger · · Score: 2, Informative
      Anyone know when WINE is getting ported to Windows?


      Actually, there is an effort to port Wine to run under MinG and Cygwin. The idea is that you could run a program under native Windows, then run it under Wine, and observe the differences. Then you try to make Wine more like Windows.
    3. Re:How about me? by Elwood+P+Dowd · · Score: 1

      Everyone.

      --

      There are no trails. There are no trees out here.
    4. Re:How about me? by Geoffreyerffoeg · · Score: 1

      How coincidental. I'm right now downloading dependencies so I can try to build Wine on Cygwin. I'm planning to X-forward Wine to my Mac OS X laptop. I anticipate that should be faster than Bochs+Wine.

  23. You think that's bad? by FredFnord · · Score: 1

    The US government won't even sign the international land mine treaty! Mines kill a person every twenty minutes, are damn tough to clean up, the US spends hundreds of millions every year cleaning up American landmindes...

    Some people really WILL do anything to play minesweeper.

    -fred

    --
    Sign #11 of Slashdot overdose: You see the phrase 'moderate Republican' and you wonder if that would be a +1 or a -1.
  24. Hardware Emulation instead? by goombah99 · · Score: 1
    Since you bought up the problem of cost why not make a PCI bus card or a firewire box that has a PC in it? A nice 386 PC or maybe even a pentium.

    the think is people are not going to be buying zillions of these things. So it may well be affordable at say 100 or 200 dollars to just get a hardware device rather then a slow software emulation. Now youjust have to emulate the bios and map the mac's IO onto the PC.

    --
    Some drink at the fountain of knowledge. Others just gargle.
    1. Re:Hardware Emulation instead? by Hes+Nikke · · Score: 2, Informative

      Since you bought up the problem of cost why not make a PCI bus card or a firewire box that has a PC in it? A nice 386 PC or maybe even a pentium.

      Orange Micro used to make a few cards that did this. i still have a OrangePC 550 laying around. it's a K6-2/233 with it's own dedicated 256 MiB of memory and all the external ports you'd expect on an AT PC coming off a cable 'octopus' (save keyboard) - this thing even had it's own BIOS. this card only cost $200 or $300 less then getting a full blown PC, of the era (AKA $850 for a PCI card!)

      the trick is that it hijacked the mac monitor, keyboard, and mouse while it was in use. it had a mac program running that hosted hard disk images (like virtualPC) for the PC to actually work. the host application also provided a few other VPC features like clipboard shearing.

      sadly, virtualPC running on a 500 MHz G4 is just as fast, and the card isn't even supported on Mac OS 9 anyway.

      it'd be interesting if a darwine type project could act as a new host for this card, custom OS and all....

      (Apple used to make a similar card and setup, and even bundled it with a few older macs - Performa 640, PowerMac 6100/DOS, ect. they even advertised this on TV!)

      --
      Don't call me back. Give me a call back. Bye. So yeah. But bye our, well, but alright we are on a shirt this chill.
  25. It was only a matter of time by JDWTopGuy · · Score: 1

    I've had this idea for a long time (and obviously I wasn't the only one), but I'm not skilled enough to do it. I'm glad somebody's doing it, and I can't wait to try it.

    A previous poster said they didn't think it would be very fast. In VPC, the slowest stuff is graphics. A native Win32 API would handle graphics crap natively, which would be a heckuva lot faster, probably faster than VPC's special graphics driver approach. As to how much time most windows apps spend in the APIs, I wouldn't know... but consider that those APIs == everything: GUI, networking, file access, etc. The amount of stuff being done inside the emulation will most likely be much less than in VPC or bochs.

    If they ever get DirectX (say from WineX) implemented... whoa.

    --
    Ron Paul 2012
    1. Re:It was only a matter of time by Dr.+Spork · · Score: 0

      Microsoft will be porting DirectX to the PPC for the next Xbox. Then the race will be on to run that code on a G5 mac. Interesting times ahead!

    2. Re:It was only a matter of time by JDWTopGuy · · Score: 1

      They may be porting it to PPC, but it'll still be windows code.

      --
      Ron Paul 2012
    3. Re:It was only a matter of time by Anonymous Coward · · Score: 1, Informative

      once you do that; you basically made your emulator a runtime environment instead (with CPU emulation).
      It's not really a new idea; it's however indeed alot faster; but it comes at a cost of compatibility.

    4. Re:It was only a matter of time by JDWTopGuy · · Score: 1

      Duuude... That's what it is! It's supposed to run windows programs. This is not designed to run Linux/*BSD/SkyOS/DOS.

      Just Windows.

      --
      Ron Paul 2012
  26. Convert x86 binaries into PPC? by Slur · · Score: 2, Interesting

    There is but One Rule for computational speed: "To make it go faster, make it do less."

    WINE is smart because it re-implements many Windows DLLs natively. QEMU is smart because it caches and executes native code built from x86 code. Taken together the speed should be noticeably better than VirtualPC.

    But the most optimal method by far would be to convert x86 binaries into PPC application packages that link to native libraries / frameworks corresponding to Windows DLLs. Such translated binaries would require no emulation layer, just the presence of the necessary libraries.

    But can you imagine how complex it would be to convert x86 code into PPC code? And yet part of me thinks this brute-force method is almost trivial. It's simple enough to disassemble machine language. And one could certainly disassemble x86 code into a working C equivalent where C variables correspond to x86 registers.

    Besides the fact that this would be an exacting and laborious task, what other barriers exist for this approach?

    --
    -- thinkyhead software and media
    1. Re:Convert x86 binaries into PPC? by MarcQuadra · · Score: 1

      No, the MOST optimal method would be to slap a duron and 256MB ram, and an integrated chipset (SIS?) onto a PCI card and have this WINE-on-Mac implementation execute the x86 code on the x86 processor. All the calls to the API would then get routed to the PPC-native WINE implementation.

      Hell, I'll bet even a C3 or Transmeta chip would do better than an emulator.

      Apple could sell the cards at a profit for under $200.

      Emulation not fast enogh? Upgrade the card to a faster version, maybe they should have two if it sells initially, one running a C3 on a socket 370 and one running a PIII on the same socket.

      --
      "Sometimes, I think Trent just needs a cup of hot chocolate and a blankie." -Tori Amos on Nine Inch Nails
    2. Re:Convert x86 binaries into PPC? by Anonymous Coward · · Score: 0

      The big problem with this techinque is when something uses selfmodifying code; or routines that puts code on the stack etc; cause it breaks badly.
      Interrupt emulation may also be a pain; but is probably not causing that much problems in this case considering WINE isn't a hardware emulator.

    3. Re:Convert x86 binaries into PPC? by Anonymous Coward · · Score: 0

      one could certainly disassemble x86 code into a working C equivalent where C variables correspond to x86 registers.

      Years ago, I saw a presentation at Microsoft about this. Charles Simoni had built a system he called "Zombie", for porting x86 binaries to the Alpha. (IIRC he called it "Zombie" because he considered bringing x86 binaries forward to other architectures something like necromancy. In other words, it's not unintentionally funny, it's intentional humour.)

      Each x86 instruction was turned into one or more C instructions. For example, add with carry would turn into instructions to add, plus an "if" statment to set a global carry flag variable if necessary. Then this brain-dead translation of the x86 code would be fed through the C compiler. The C compiler of course has dead-code elimination, so if no one looked at the carry flag after an addition, that code would be optimized away. I think the DOS and BIOS interrupts were replaced by calls to a compatability library.

      He had it working. He showed us the prototype.

      In the end, however, Microsoft didn't do anything with it.

  27. x86 chips by ensignyu · · Score: 1

    Remember the old days when some Performas came with additional x86 chips and you could switch between Mac/Windows?

    1. Re:x86 chips by commodoresloat · · Score: 1

      Why isn't anybody making PCI cards that do this anymore? It could cost less and be much better than VPC.

    2. Re:x86 chips by Lars+T. · · Score: 1

      AFAIK a PCI card can use 25 W max. This will have to power not only the CPU, but also chipset and then some. You'ld have to use a mobile version or a Transmeta and design and build a special mother/daughter-board. In the end it would probably not cost less than VPC, and be both more expensive and slower than a PC desktop.

      --

      Lars T.

      To the guy who modded me down from perfect to terrible Karma - Apple haters still suck

    3. Re:x86 chips by squiggleslash · · Score: 1
      A lot of firewire cards get around this restriction (they need more power than PCI busses typically supply so they can power external peripherals) by having a socket you can plug a standard mini-power plug (the kind you'd plug into a floppy drive, if you still had floppy drives) into the board itself.

      I have two firewire cards that work that way and wouldn't be able to recharge my iPod and connect it at the same time if it wasn't for that trick.

      I suspect a "PC PCI card" could do the same thing.

      I'm also sure I read about somewhere that puts full PCs into half-height 5.25" units (ie so you can put them in a spare 5.25" bay instead of an optical drive, etc), but I can't find the link. So it doesn't have to be a PCI card...

      --
      You are not alone. This is not normal. None of this is normal.
    4. Re:x86 chips by damiam · · Score: 1

      My Radeon 9700 PRO (not PCI, but close enough) has a separate power connector. A PCI x86 card could conceivably do the same.

      --
      It's hard to be religious when certain people are never incinerated by bolts of lightning.
    5. Re:x86 chips by Anonymous Coward · · Score: 0

      I remember installing one of the last 3DFX Voodoo cards that were made in a friends machine for him. It was a huge card, and it had like four of their GPUs on it. It was totally ridiculous, and required an external power supply (brick on a rope) to be plugged into the back of the card.

      What an excellent business model... Oh ATI and Nvidia's new chips are faster... we'll just slap yet another one of our same inferior chips onto our board.

    6. Re:x86 chips by Lars+T. · · Score: 1

      Well, that still leaves us with a) having to power the thing from the internal power supply, b) cooling the thing, and c) the price of the (to be designed) "mother"-board + interface to share the resources of the host-Mac.

      --

      Lars T.

      To the guy who modded me down from perfect to terrible Karma - Apple haters still suck

  28. Windows software I wish I could run on a Mac: by SkiingOnMars · · Score: 1

    Granted, it's a tiny niche, but there's a lot of software my coworkers and I use that keeps us tied to Windows. For example:

    - Texas Instruments Code Composer Studio IDE for their DSP products
    - Altera's Quartus II IDE
    - Cadence electronic design software (Orcad Capture, PSpice...)
    - Analog Devices' VisualDSP++ IDE

    I imagine many other tools in the embedded devices market are windows-only, too. It probably keeps costs down for companies like these to make their development software only available for the most ubiquitous platform. Annoying for those of us who wouldn't use windows otherwise, though, especially when the average cpu and memory requirements for many of these applications is rather low. Most of the time for me, these programs are just sitting idle while I read a schematic or pore over some code. I doubt they'd run much worse on an emulator.

    I know it's a little childish to complain about the companies that choose an established platform with obviously stock IDE GUI elements to make their IDE that will sell in small numbers. They probably don't make a lot of money off of the IDE, as it's the chips that they sell in quantity. I don't blame them for their economic good sense, and they have enough problems with their single platform to begin with.

    And I agree that a cheap $100 used PC would run most of the apps I would need it to, but that's not what I want. Windows has annoyed me enough over the years that I want to use something else now. Perhaps these guys feel similarly.

    1. Re:Windows software I wish I could run on a Mac: by QuantumSpritz · · Score: 1

      That type of niche sftware is exactly the sort of thing I associate with something like QT. Not the prettiest thing in the world, but it'll run almost anything.

  29. Premiere through 6.5 for Mac by benwaggoner · · Score: 1

    Oh, Adobe did Premiere for Mac up until the summer 2004 release of Premiere Pro (which was an all new product, really). You can still buy Premiere 6.5 for Mac, and it's Mac OS X native and everything. I still use it for things like it's very cool analyzer and bitrate graph.

    1. Re:Premiere through 6.5 for Mac by jostallin · · Score: 1

      I forgot the < sarcasm > tags.

      I know people who could never get Adobe to provide customer support for their copies of Premiere for Mac 5 thru 6.5.

      The announcement that Adobe was dropping the pretense of support with version 7 did not come as a huge shock.

  30. This could be a very good thing... by shaitand · · Score: 1



    No so much from the perspective of getting apps running on the Mac, but from from the perspective of getting Apple interested in this way of getting apps running on the Mac.

    From my understanding wine itself already compiles 100% PPC including wine dlls. Now all a developer has to do is port their own functions to PPC compilable code instead of rewrite from scratch.

    A HUGE chunk of the work in a gui windows app is dealing with the win32api. Porting to the Mac means rewriting all this... now it doesn't, now if your own functions are fairly portable then your pretty much set. Write a mac installer that gives your app it's own personal wine world like winex point2play does and this can be completely transparent to the user.

    Apple in the mac world is different than our overlord in the pc world. Apple as a hardware company wants all the software they can get running on the mac. If they don't have to write it and someone else offers it all the better.

    This could mean apple working on the wine win32 api implementation, most of which carries over or is easily carried over to the x86 version.

    1. Re:This could be a very good thing... by Quobobo · · Score: 2, Insightful

      At the same time, this would really discourage development of native OS X apps, and I think we'd probably get a lot of very shoddy quick-recompile jobs. Could be a double-edged sword.

  31. Moderation by ce25254 · · Score: 1

    Where's my choice for "-1, YOU MONSTER!!" moderation?

  32. Moronic Idiot! by Walabio · · Score: 1

    He turned the fastest massproduced computer on the planet into a WinTel! This moron reminds me about an idiot in High School who gloated about killing a cow by tipping her, while she slept, onto a sharp rock -- too bad when I called the police and SPCA, it was my word against his.

    We should hire a taxidermist, an hitman, and a clockmaker, and then, kill him, gut him, and turn him into a Grandfatherclock!

  33. Error in article - darwine intends to use qemu by Corpus_Callosum · · Score: 2, Informative

    Take a look at their forums where this question was asked: qemu, not bochs

    --
    The reason that it can be true that 1+1 > 2 is that very peculiar nonzero value of the + operator
    1. Re:Error in article - darwine intends to use qemu by TylerL82 · · Score: 1

      The Darwine guys changed to QEMU a day after the article was submitted without any mention on their site.

  34. They really screwed up this article - QEMU by Corpus_Callosum · · Score: 3, Insightful

    Unfortunately, this write-up is totally screwed up. The intended emulator is QEMU, which can already be used on PPC/Linux to run Wine at speeds aproaching native speeds. I posted a link to the forum where this is discussed elsewhere, but here it is again.

    QEMU is a dynamic translator that decompiles x86 executables and recompiles them into PPC, caching the results. You can find the qemu project here.

    Not only will this work, but it will work FAST. In fact, it will probably even be possible to drop windows DLLs onto your mac in the same way that you drop them onto Linux in order to get Wine to work better (using native windows DLLs instead of Wine clean-room versions). Remember, QEMU is a dynamic translator.

    --
    The reason that it can be true that 1+1 > 2 is that very peculiar nonzero value of the + operator
  35. INFIDEL! by Chuqmystr · · Score: 1

    Ok, I'm forming the angry mob right now. The torches and pitchforks are on me but I need someone to bring a bag of feathers and a bucket of tar. SIEZE THE CRETIN! Who's with me?

  36. I saw Wine on log, Indiana Jones game demo by Ilgaz · · Score: 1

    I tried "Indiana Jones" game demo on my mac, I did something freaky which I don't remember, game crashed and I saw some "wine" entries on OS log.

    I am kind of newbie on mac, is there any explanation from oldtimers? Is that the same Wine? e.g. licensed version etc? Maybe its already done in house?

    Oh there the game URL: http://www.aspyr.com/games.php/mac/indy/

    1. Re:I saw Wine on log, Indiana Jones game demo by Raven42rac · · Score: 2, Informative

      IIRC, some of Aspyr's games are merely "wine-ized" versions of their Windows games. This is probably a licensed version of Wine. It has the potential to make the porting process easier, since there is no real porting of the code, if it is stable I can't blame them, but customizing it to the OS instead of emulating it would have been a nice touch. NOLF 2 and Simcity 3000 being the first that pop into my mind. Also, they get kinda funky if you try to save on a different partition than the game is located.

      --
      I hate sigs.
  37. Re:This will be really slow [PCed G5] by xiaodidi · · Score: 1

    What about his parents? If they don't know anything about computers in general, and their son's interests in particular, why on earth do they go out and buy this very expensive system? What about a $ 3000 CompUSA gift certificate, next time?
    It seems to me that the entire family is highly dysfunctional, in addition to having way too much money.

  38. Better prices and how to replace VPC by Monx · · Score: 1

    Your local wholesaler will sell you an optical mouse for $3-$5. Keyboards are $1-$5 and video cards start at $5 (for the basic non-gaming kind). Cases cost $20 for the great ones. The fancy ones can pass $60. The cheap ones start at about $12. I'm not sure about memory or a drive, but your prices look way too high. I used to buy for a reseller; but the only difference in our price and the public price is the sales tax.

    Leadman was one of our suppliers. Find one of their locations and you'll probably find a dozen competing wholesalers.

    You can use a cheap PC with Windows, VNC, and SAMBA to get full PC functionality in your Mac for less than the cost of VPC. If you're using Wine and X11 anyway, you might as well skip on VNC and a copy of Windows and just use Wine on a Linux box with your Mac acting as an X11 server.

  39. this post is ** OFFTOPIC ** read at your own risk by 00420 · · Score: 1

    exaggeration (how the heck do you spell that, anyway?)

    If you're ever unsure how to spell something, type it into google. If you spelled it wrong it'll say did you mean (correct spelling)? (Example)

  40. Re:this post is ** OFFTOPIC ** read at your own ri by addaon · · Score: 1

    I did. (I use google for everything, even my primary calculator; just waiting for it to do currency conversions.) It suggested my spelling was right, which I didn't quite believe.

    --

    I've had this sig for three days.