They can't do it because they don't have the balls (or resourcing) to write native drivers. An OS has drivers to insulate it from the hardware, and those drivers aren't part of the OS. By implementing a special trap in their emulator to jump to PowerPC code (simple to do) that would enable them to selectively "supplement" the hardware drivers that Windows comes with. These new drivers would, when called, drop into native PowerPC code and do the work more quickly, possibly using native MacOS X services (e.g. OpenGL) to do so.
VPC took the approach of purely emulating the hardware and thus using the Microsoft drivers (written in x86) to pretend to use the fake hardware that they fake using PowerPC. This is very inefficient, but it allowed them to make it at least as stable as Windows running on the real hardware they chose to emulate. With a bit more work they could improve performance tremendously. This has been done before so the fact that the VPC guys say it can't be done is just a cop-out.
Direct X is a COM dll. Just reimplement the code using something that was compiled for the PPC and ship a special version of windows with VPC that is all native x86 code except for the Driect X dll (and charge an extra $50). COM was meant for stuff like this. There is ABSOLUTELY NO REASON why you can't ship a version of windows that couldn't work in this way. One of the points of COM was abstracting the implementation of some code from the interface. The interface is platform independent so that the implementation can be platfrom dependent.
Also, OS X has a pretty rich graphics API that is hardware accelerated (Quartz Extreme). I would guess that a good portion of Direct X calls could simply be forwarded to their corresponding OS X calls.
The reason why MS wouldn't do it is that it is still a significant effort to port Direct X to OS X. That is alot of work, but at least you have the same video cards on the Mac side as on the PC side (actually, you only have Nvidia and ATI, so the Mac video card scene is simpler than the PC scene). I guess the question is how much effort does MS want to put into the Mac market for VPC? If MS shipped VPC witn native video drivers, then the software developers would probably cease to write code for Macs. How cunning is MS? I can see them doing this (and if I was MS, I would totally do it just to play with Apple), and as a PC user who wants a Mac, this would make it all to easy for me to make my next computer a Mac.
Out of curiousity (and the need for speed), what versions of VPC and Windows are people running? I need to eek out as much speed as possible to justify transitioning to OSX and VPC.
Direct X is a COM dll. Just reimplement the code using something that was compiled for the PPC and ship a special version of windows with VPC that is all native x86 code except for the Driect X dll (and charge an extra $50).
This would speed things up a little, but really it is fairly minor compared to the benefit of a native driver. Most of what the DirectX DLL does (when its not emulating a GPU) is pass information along to the device driver. A 3D driver does a fair bit of work, plus it talks to the hardware. This is what takes most of the time, and it is a published and reasonably well-understood interface that companies outside of Microsoft are already using. It is the perfect candidate for VPC acceleration, and is much more cost effective than rewriting parts of the OS (e.g. DirectX DLL), which would be the versioning & compatibility nightmare that AirSluf is talking about above.
Out of curiousity (and the need for speed), what versions of VPC and Windows are people running? I need to eek out as much speed as possible to justify transitioning to OSX and VPC.
I run Win98 on VPC6. It works OK, but it is not intended to replace a desktop PC. However, I expect VPC6 to mimic the performance of a 1.4 GHz PC on my dual G5. That will be more than adequate for my Windows-only applications.
I run Win98 on VPC6. It works OK, but it is not intended to replace a desktop PC. However, I expect VPC6 to mimic the performance of a 1.4 GHz PC on my dual G5. That will be more than adequate for my Windows-only applications.
I would be surprised if VPC could achieve that. The 970 (and thus Apple's G5) is optimized for bandwith and streaming oriented algorithms. This is where it excels. Emulated code is notoriously bad for branch prediction and thus extracts a serious penalty from heavily pipelined processors. This is one area where I don't have high hopes for the 970.
Seriously tho...AirSluf people like me are on a PowerBook. I am not going to nor can I afford a separate PC notebook to lug around. I assume everyone in this thread has their various needs for VPC. Considering what it does it's an incredible app. M$ could make it so much better though. But..there hasn't been a single update. Nary a mention of one. Hmm.
I agree Aquatic. I am using VPC 5 w/XP on a 600Mhz iBook. In OS9, it is usable, but in OSX it is worthless. I don't want to buy a second portable, nor will I accept buying one (or two) Windoze boxes. I think people are looking for a solution in one, portable, machine.
Ultimately, is there a solution (either currently, or expected) that provides a workable mobile solution in OSX?
Kickaha and Amorph couldn't moderate themselves out of a paper bag. Abdicate responsibility and succumb to idiocy. Two years of letting a member make personal attacks against others, then stepping aside when someone won't put up with it. Not only that but go ahead and shut down my posting priviledges but not the one making the attacks. Not even the common decency to abide by their warning (afer three days of absorbing personal attacks with no mods in sight), just shut my posting down and then say it might happen later if a certian line is crossed. Bullshit flag is flying, I won't abide by lying and coddling of liars who go off-site, create accounts differing in a single letter from my handle with the express purpose to decieve and then claim here that I did it. Everyone be warned, kim kap sol is a lying, deceitful poster.
Now I guess they should have banned me rather than just shut off posting priviledges, because kickaha and Amorph definitely aren't going to like being called to task when they thought they had it all ignored *cough* *cough* I mean under control. Just a couple o' tools.
Don't worry, as soon as my work resetting my posts is done I'll disappear forever.
Yes you are right. I agree. That was definitely the case with Connectix. But now Microsoft, one of the largest companies on the planet, owns VPC.
Consider what they could do. They could make VPC so good it would hurt Apple. This is how they work. It's how I play monopoly too. I go overboard and mortgage everything to be able to buy lots of property, then I take over the market (or get hotels on the board.) This is what they did with XBox. nintendo and sony are in trouble. Look at all the cool exclusive games they are getting. No perfect dark for gamecube for me. Same with that new star wars game.
....Consider what they could do. They could make VPC so good it would hurt Apple. This is how they work. It's how I play monopoly too. I go overboard and mortgage everything to be able to buy lots of property, then I take over the market (or get hotels on the board.) This is what they did with XBox. nintendo and sony are in trouble. Look at all the cool exclusive games they are getting. No perfect dark for gamecube for me. Same with that new star wars game.
First off, the only thing that is going to substaintially improve VPC's performance is a faster host processor. As for Ninetendo and Sony, they are doing just fine, thank you. M$ is dumping millions of your Windows and Office $'s into the Xbox to prop it up. I have said it before and I will say it here. Sony will introduce the PS3 before the Xbox ever sees a profit. I expect the Xbox never to see a profit.
Nintendo has great product and the fans are just as hardcore as Apple's but I feel sorry for them. Microsoft gets what it wants. It will use money, the DoJ, pressure on other companies, etc to kick Nintendo in the balls and make them a niche player just like Apple. They'll turn into the next Sega. M$ wants the XBox to be the home entertainment hub and they have the money to make it happen. Sony might be big enough to weather the storm but not Nintendo. Resistance is futile.
However they could use the same technique to make VPC good through R&D into ideas like Programmer has mentioned and this could either be good or bad for Apple, we shall see how the games goes. I just want to know if something is going happen either way soon. A press announcement from M$MacBU would be nice.
Nintendo has great product and the fans are just as hardcore as Apple's but I feel sorry for them. Microsoft gets what it wants. It will use money, the DoJ, pressure on other companies, etc to kick Nintendo in the balls and make them a niche player just like Apple. They'll turn into the next Sega. M$ wants the XBox to be the home entertainment hub and they have the money to make it happen. Sony might be big enough to weather the storm but not Nintendo. Resistance is futile.
The game console market is fundamentally different than the personal computer market. All of the advantages that M$ enjoys in the computer market are in the possession of the competition here. Personal computer users often have to use M$ products because their customers, colleagues, and vendors use the same M$ products. That is not true here. A gamer may buy the latest and greatest today. However, if a better console from a different vendor enters the market one month later, there is nothing to stop his brother from buying the new product. A large percentage of personal computer users have their computing choices made for them by IT staff. Game consoles are sold on an individual basis.
The bottom line is this: There are legitimate economic causes for much of Microsoft's dominance in the personal computer market. Virtually none of those circumstances exist in the game console market. Therefore, it will be virtually impossible for M$ to leverage its position in this market into the kind of long-term dominance it has enjoyed in the personal computer market.
Nintendo has great product and the fans are just as hardcore as Apple's but I feel sorry for them. Microsoft gets what it wants. It will use money, the DoJ, pressure on other companies, etc to kick Nintendo in the balls and make them a niche player just like Apple. They'll turn into the next Sega. M$ wants the XBox to be the home entertainment hub and they have the money to make it happen. Sony might be big enough to weather the storm but not Nintendo. Resistance is futile.
However they could use the same technique to make VPC good through R&D into ideas like Programmer has mentioned and this could either be good or bad for Apple, we shall see how the games goes. I just want to know if something is going happen either way soon. A press announcement from M$MacBU would be nice.
Nintendo currently has the #1 console system. Sony the #2. Microsoft is a distant third, and people have been saying the Xbox is going to take over the market since it was introduced. It hasn't. Microsoft has proven a number of times that they can't dominate other fields the way they do the OS, and Office fields. Name one other Microsoft product with a monopoly? SQL server? It's 3rd in the database market I believe. IIS? Apache is killing it. Windows CE? Linux and Java are big in the embedded market... .NET? Hasn't taken off anywhere near the way Microsoft would like and Java is doing a lot of the things Microsoft said you could only get from .NET. IE? Only because it comes pre-installed with Windows. When Windows starts shipping with an included Xbox, then maybe Xbox will become dominant.
Good software could fix it though. If Microsoft decided to (for whatever reason) they could implement a native PowerPC/OpenGL driver for the DirectX Windows subsystem and performance would improve very very dramatically.
Quote:
Originally posted by Idiot
Well, perhaps I can just dream of a version of Virtual PC that operates with 3D graphics support.........
Phhp! Who needs windows when you have all the software you could ever need for Macintosh. Well, not every single thing, but most. And if we all start using only Mac software, the windows developers will all switch to Macintosh and the world will be a better place! Lol, Just kidding. I dont want to hurt any of you windows lover's feelings out there. It would be nice though!
While I agree that as a corporation Connectix wasn't exactly populated by rocket scientists (and that is being extremely nice)
I need to jump in here and call BS. I personally know several Connectix and ex-Connectix employees. Believe me, they're not dumb. At all. In fact, most people describe them as "brilliant" or "rocket scientists."
Whether or not their software runs they way you want or has the features you want is another issue entirely.
Don't imply that they're stupid unless you actually know them personally. It's not fair to them, and in this case your implication happens to be flat-out wrong.
Maybe MS has a plan that would make it worth the effort to vastly improve VPC. What if it ran 70 percent efficiency, as was suggested above?
VPC is already capable of executing x86 code at around 60% of the host's CPU speed. That means my 1ghz tibook executes code about as fast as a 600mhz windows machine, which isn't too shabby.
Disk and video performance is a fair bit slower than on the windows machine, but the CPU emulation itself - as others have pointed out - is already damn good. Of course, this just makes the graphics issue that much more critical IMHO.
Comments
Originally posted by Programmer
Hogwash.
They can't do it because they don't have the balls (or resourcing) to write native drivers. An OS has drivers to insulate it from the hardware, and those drivers aren't part of the OS. By implementing a special trap in their emulator to jump to PowerPC code (simple to do) that would enable them to selectively "supplement" the hardware drivers that Windows comes with. These new drivers would, when called, drop into native PowerPC code and do the work more quickly, possibly using native MacOS X services (e.g. OpenGL) to do so.
VPC took the approach of purely emulating the hardware and thus using the Microsoft drivers (written in x86) to pretend to use the fake hardware that they fake using PowerPC. This is very inefficient, but it allowed them to make it at least as stable as Windows running on the real hardware they chose to emulate. With a bit more work they could improve performance tremendously. This has been done before so the fact that the VPC guys say it can't be done is just a cop-out.
Direct X is a COM dll. Just reimplement the code using something that was compiled for the PPC and ship a special version of windows with VPC that is all native x86 code except for the Driect X dll (and charge an extra $50). COM was meant for stuff like this. There is ABSOLUTELY NO REASON why you can't ship a version of windows that couldn't work in this way. One of the points of COM was abstracting the implementation of some code from the interface. The interface is platform independent so that the implementation can be platfrom dependent.
Also, OS X has a pretty rich graphics API that is hardware accelerated (Quartz Extreme). I would guess that a good portion of Direct X calls could simply be forwarded to their corresponding OS X calls.
The reason why MS wouldn't do it is that it is still a significant effort to port Direct X to OS X. That is alot of work, but at least you have the same video cards on the Mac side as on the PC side (actually, you only have Nvidia and ATI, so the Mac video card scene is simpler than the PC scene). I guess the question is how much effort does MS want to put into the Mac market for VPC? If MS shipped VPC witn native video drivers, then the software developers would probably cease to write code for Macs. How cunning is MS? I can see them doing this (and if I was MS, I would totally do it just to play with Apple), and as a PC user who wants a Mac, this would make it all to easy for me to make my next computer a Mac.
Originally posted by Yevgeny
Direct X is a COM dll. Just reimplement the code using something that was compiled for the PPC and ship a special version of windows with VPC that is all native x86 code except for the Driect X dll (and charge an extra $50).
This would speed things up a little, but really it is fairly minor compared to the benefit of a native driver. Most of what the DirectX DLL does (when its not emulating a GPU) is pass information along to the device driver. A 3D driver does a fair bit of work, plus it talks to the hardware. This is what takes most of the time, and it is a published and reasonably well-understood interface that companies outside of Microsoft are already using. It is the perfect candidate for VPC acceleration, and is much more cost effective than rewriting parts of the OS (e.g. DirectX DLL), which would be the versioning & compatibility nightmare that AirSluf is talking about above.
Originally posted by maclawyer
Out of curiousity (and the need for speed), what versions of VPC and Windows are people running? I need to eek out as much speed as possible to justify transitioning to OSX and VPC.
I run Win98 on VPC6. It works OK, but it is not intended to replace a desktop PC. However, I expect VPC6 to mimic the performance of a 1.4 GHz PC on my dual G5. That will be more than adequate for my Windows-only applications.
Originally posted by Mr. Me
I run Win98 on VPC6. It works OK, but it is not intended to replace a desktop PC. However, I expect VPC6 to mimic the performance of a 1.4 GHz PC on my dual G5. That will be more than adequate for my Windows-only applications.
I would be surprised if VPC could achieve that. The 970 (and thus Apple's G5) is optimized for bandwith and streaming oriented algorithms. This is where it excels. Emulated code is notoriously bad for branch prediction and thus extracts a serious penalty from heavily pipelined processors. This is one area where I don't have high hopes for the 970.
Ultimately, is there a solution (either currently, or expected) that provides a workable mobile solution in OSX?
Now I guess they should have banned me rather than just shut off posting priviledges, because kickaha and Amorph definitely aren't going to like being called to task when they thought they had it all ignored *cough* *cough* I mean under control. Just a couple o' tools.
Don't worry, as soon as my work resetting my posts is done I'll disappear forever.
Consider what they could do. They could make VPC so good it would hurt Apple. This is how they work. It's how I play monopoly too. I go overboard and mortgage everything to be able to buy lots of property, then I take over the market (or get hotels on the board.) This is what they did with XBox. nintendo and sony are in trouble. Look at all the cool exclusive games they are getting. No perfect dark for gamecube for me. Same with that new star wars game.
Originally posted by Aquatic
....Consider what they could do. They could make VPC so good it would hurt Apple. This is how they work. It's how I play monopoly too. I go overboard and mortgage everything to be able to buy lots of property, then I take over the market (or get hotels on the board.) This is what they did with XBox. nintendo and sony are in trouble. Look at all the cool exclusive games they are getting. No perfect dark for gamecube for me. Same with that new star wars game.
First off, the only thing that is going to substaintially improve VPC's performance is a faster host processor. As for Ninetendo and Sony, they are doing just fine, thank you. M$ is dumping millions of your Windows and Office $'s into the Xbox to prop it up. I have said it before and I will say it here. Sony will introduce the PS3 before the Xbox ever sees a profit. I expect the Xbox never to see a profit.
However they could use the same technique to make VPC good through R&D into ideas like Programmer has mentioned and this could either be good or bad for Apple, we shall see how the games goes. I just want to know if something is going happen either way soon. A press announcement from M$MacBU would be nice.
Originally posted by Aquatic
Nintendo has great product and the fans are just as hardcore as Apple's but I feel sorry for them. Microsoft gets what it wants. It will use money, the DoJ, pressure on other companies, etc to kick Nintendo in the balls and make them a niche player just like Apple. They'll turn into the next Sega. M$ wants the XBox to be the home entertainment hub and they have the money to make it happen. Sony might be big enough to weather the storm but not Nintendo. Resistance is futile.
The game console market is fundamentally different than the personal computer market. All of the advantages that M$ enjoys in the computer market are in the possession of the competition here. Personal computer users often have to use M$ products because their customers, colleagues, and vendors use the same M$ products. That is not true here. A gamer may buy the latest and greatest today. However, if a better console from a different vendor enters the market one month later, there is nothing to stop his brother from buying the new product. A large percentage of personal computer users have their computing choices made for them by IT staff. Game consoles are sold on an individual basis.
The bottom line is this: There are legitimate economic causes for much of Microsoft's dominance in the personal computer market. Virtually none of those circumstances exist in the game console market. Therefore, it will be virtually impossible for M$ to leverage its position in this market into the kind of long-term dominance it has enjoyed in the personal computer market.
Originally posted by Aquatic
Nintendo has great product and the fans are just as hardcore as Apple's but I feel sorry for them. Microsoft gets what it wants. It will use money, the DoJ, pressure on other companies, etc to kick Nintendo in the balls and make them a niche player just like Apple. They'll turn into the next Sega. M$ wants the XBox to be the home entertainment hub and they have the money to make it happen. Sony might be big enough to weather the storm but not Nintendo. Resistance is futile.
However they could use the same technique to make VPC good through R&D into ideas like Programmer has mentioned and this could either be good or bad for Apple, we shall see how the games goes. I just want to know if something is going happen either way soon. A press announcement from M$MacBU would be nice.
Nintendo currently has the #1 console system. Sony the #2. Microsoft is a distant third, and people have been saying the Xbox is going to take over the market since it was introduced. It hasn't. Microsoft has proven a number of times that they can't dominate other fields the way they do the OS, and Office fields. Name one other Microsoft product with a monopoly? SQL server? It's 3rd in the database market I believe. IIS? Apache is killing it. Windows CE? Linux and Java are big in the embedded market... .NET? Hasn't taken off anywhere near the way Microsoft would like and Java is doing a lot of the things Microsoft said you could only get from .NET. IE? Only because it comes pre-installed with Windows. When Windows starts shipping with an included Xbox, then maybe Xbox will become dominant.
Originally posted by Programmer
Good software could fix it though. If Microsoft decided to (for whatever reason) they could implement a native PowerPC/OpenGL driver for the DirectX Windows subsystem and performance would improve very very dramatically.
Originally posted by Idiot
Well, perhaps I can just dream of a version of Virtual PC that operates with 3D graphics support.........
VPC 2.0 had Voodoo2 support.
When Windows starts shipping with an included Xbox, then maybe Xbox will become dominant.
Yea...
Originally posted by AirSluf
While I agree that as a corporation Connectix wasn't exactly populated by rocket scientists (and that is being extremely nice)
I need to jump in here and call BS. I personally know several Connectix and ex-Connectix employees. Believe me, they're not dumb. At all. In fact, most people describe them as "brilliant" or "rocket scientists."
Whether or not their software runs they way you want or has the features you want is another issue entirely.
Don't imply that they're stupid unless you actually know them personally. It's not fair to them, and in this case your implication happens to be flat-out wrong.
Originally posted by snoopy
Maybe MS has a plan that would make it worth the effort to vastly improve VPC. What if it ran 70 percent efficiency, as was suggested above?
VPC is already capable of executing x86 code at around 60% of the host's CPU speed. That means my 1ghz tibook executes code about as fast as a 600mhz windows machine, which isn't too shabby.
Disk and video performance is a fair bit slower than on the windows machine, but the CPU emulation itself - as others have pointed out - is already damn good. Of course, this just makes the graphics issue that much more critical IMHO.