Jump to content

What is the state of getting Quartz Extreme to work?


76 posts in this topic

Recommended Posts

I've reread the D3D documentation about YUV->RGB conversion and there are some restrictions there I didn't observe, so I'll try another iteration of this next upload.

 

Update: I've uploaded v1.3.0d5.

  • If VLC works for you with v1.3.0d4, feel free to stick with it, as the only change is for VLC.
  • I've redone the host-side UYVY->RGB conversion for VLC, and tried to stick as closely as possible to Microsoft's instructions. If it still doesn't work, then the host driver's claim to support this is false advertising and I give up :)
  • I've artificially checked that the conversion works on my GPU, [even though it's an unnecessary extra step].
  • If you try it on Radeons, check to see that vmware.log contains the string "Using YUV Alternate". It should log that if it's using the conversion mechanism.

Link to comment
Share on other sites

Hi,

Thanks for terrific work.

With d5 vlc play's video fine.

Didn't work with d3, didn't test d4.

Quarter cpu load than QT.

 

nvidia geforce 9800

 

GPU Feature Detection

Max Lights 10

Max FFP Texture Stages 8

Max Clip Planes 8

Vertex Shader Version vs_3_0

Vertex Shaders Yes

Pixel Shader Version ps_3_0

Pixel Shaders Yes

 

UYVY Caps

ConvertToARGB

OffscreenPlain

NoFilter

NoAlphaBlend

NoTexCoordWrapNorMip

Link to comment
Share on other sites

I've reread the D3D documentation about YUV->RGB conversion and there are some restrictions there I didn't observe, so I'll try another iteration of this next upload.

 

Update: I've uploaded v1.3.0d5.

  • If VLC works for you with v1.3.0d4, feel free to stick with it, as the only change is for VLC.
  • I've redone the host-side UYVY->RGB conversion for VLC, and tried to stick as closely as possible to Microsoft's instructions. If it still doesn't work, then the host driver's claim to support this is false advertising and I give up :D
  • I've artificially checked that the conversion works on my GPU, [even though it's an unnecessary extra step].
  • If you try it on Radeons, check to see that vmware.log contains the string "Using YUV Alternate". It should log that if it's using the conversion mechanism.

yeah i still have problem with divx starting and freezing i think its in part due to the feature in divx where you can make the surounding of the movie window darker unfortunatly for me i dont know osx enoug to try some for of registry hack like in wondows to stop that feature and since the only thing i can do is quit divx not much chance of accessing the option panel

definitly QT is alot fast even in full screen were it was barely usable before and including d3

Link to comment
Share on other sites

yeah i still have problem with divx starting and freezing i think its in part due to the feature in divx where you can make the surounding of the movie window darker unfortunatly for me i dont know osx enoug to try some for of registry hack like in wondows to stop that feature and since the only thing i can do is quit divx not much chance of accessing the option panel

definitly QT is alot fast even in full screen were it was barely usable before and including d3

see my post above. an older version of divx will work. if you use 7.0 instead of 7.3 you will not get freezing or black screen.

 

I've reread the D3D documentation about YUV->RGB conversion and there are some restrictions there I didn't observe, so I'll try another iteration of this next upload.

 

Update: I've uploaded v1.3.0d5.

  • If you try it on Radeons, check to see that vmware.log contains the string "Using YUV Alternate". It should log that if it's using the conversion mechanism.

 

genius! both divx and vlc work now on my Radeon HD 3850. from log:

Jan 18 21:44:51.519: vcpu-3| Guest: IOGL: create_host_surface_for_texture: Using YUV Alternate for texture 1

Jan 18 21:44:51.552: vcpu-1| Guest: IOGL: create_host_surface_for_texture: Using YUV Alternate for texture 3

 

thank you!!

Link to comment
Share on other sites

I think I figured out the reason for the fuzzy text. I normalized texture coordinates by dividing-by-N instead of dividing by (N-1). This has the effect of magnifying textures a tiny bit. It wasn't noticeable for images, but the icon text lines are thin...

 

Edit: turns out the right formula for image sharpness is (x + 0.5)/N. Apparently this is a Big Issue, there are whole articles about it, and there are differences between D3D9, D3D10 and OpenGL. ;)

 

Update: I uploaded v1.3.0d6

  • Fixes imprecision in texture coordinates - moved textures by half-a-pixel. The text in Apple Finder is no longer fuzzy. Also vectorized floating point ops in vertex processing code while at it.

I apologize for the frequent updates. If the fuzzy text issue doesn't bother you, skip this.

Link to comment
Share on other sites

I think I figured out the reason for the fuzzy text. I normalized texture coordinates by dividing-by-N instead of dividing by (N-1). This has the effect of magnifying textures a tiny bit. It wasn't noticeable for images, but the icon text lines are thin...

 

Edit: turns out the right formula for image sharpness is (x + 0.5)/N. Apparently this is a Big Issue, there are whole articles about it, and there are differences between D3D9, D3D10 and OpenGL. :D

 

Update: I uploaded v1.3.0d6

  • Fixes imprecision in texture coordinates - moved textures by half-a-pixel. The text in Apple Finder is no longer fuzzy. Also vectorized floating point ops in vertex processing code while at it.

I apologize for the frequent updates. If the fuzzy text issue doesn't bother you, skip this.

 

Perfect!

 

VLC now works and the icon text is normal :P

 

Working on a Radeon 4890. Thanks Zenith!

Link to comment
Share on other sites

I think I figured out the reason for the fuzzy text. I normalized texture coordinates by dividing-by-N instead of dividing by (N-1). This has the effect of magnifying textures a tiny bit. It wasn't noticeable for images, but the icon text lines are thin...

 

Edit: turns out the right formula for image sharpness is (x + 0.5)/N. Apparently this is a Big Issue, there are whole articles about it, and there are differences between D3D9, D3D10 and OpenGL. ^_^

 

Update: I uploaded v1.3.0d6

  • Fixes imprecision in texture coordinates - moved textures by half-a-pixel. The text in Apple Finder is no longer fuzzy. Also vectorized floating point ops in vertex processing code while at it.

I apologize for the frequent updates. If the fuzzy text issue doesn't bother you, skip this.

no need for apology, thx for the hard work.

Link to comment
Share on other sites

Now on beta 6

 

VLC works.

 

Now another problem I've noticed is now my Expose corners do not work except the top left one, all other three corners not responsive. Don't know if this has to do with the new formulas.

 

Any one else having this problem?

Link to comment
Share on other sites

Now on beta 6

 

VLC works.

 

Now another problem I've noticed is now my Expose corners do not work except the top left one, all other three corners not responsive. Don't know if this has to do with the new formulas.

 

Any one else having this problem?

 

Will check when I get home, however could it be something with VMWare windowing itself? Maybe it's not detecting the edges... do you have this problem in fullscreen too?

Link to comment
Share on other sites

False alarm.... on the Expose problem

 

I rebooted the Vm OSX several times and it didn't work. But when I rebooted the host, and then the Vm OSX it worked again, so I guess it was something with VMware not the driver....

Link to comment
Share on other sites

I uploaded v1.3.0d7 [link in post #23].

 

Changelog

  • Added support for FrontRow. Music Playback works. Movie playback doesn't (the freeze-frame is visible though).
  • Fixed some bugs in FBOs, mapping of texture addresses to samplers in the process.
  • optimized transfer of vertex arrays from guest to host.

 

If you'd like to play Chess, you can convince it to use the software renderer by creating a shell script

#!/bin/bash
export GL_REJECT_HW=1
open /Applications/Chess.app

and then launching Chess using this script. The same technique can be used to disable the hardware renderer for any specific app - by setting an environment variable "GL_REJECT_HW" for it. The hardware renderer can be disabled for Finder by setting GL_REJECT_HW for the WindowServer. This article by Apple discusses how to do this. In fact, this method can be used to disable QE on Apple's own systems [or any other hardware that supports QE].

 

So... is anyone up to the task of helping by writing a little shader compiler? You don't need to know anything about VMsvga2's internals, or Apple's graphics drivers to do this. It can be done as a separate code library. The translation is fairly straightforward, since it's bytecode-to-bytecode, but the compiler needs to do some register-use tracking in order to conserve registers for GPUs that don't have many, and also to help the GL driver with mapping texture addresses to samplers.

Link to comment
Share on other sites

I uploaded v1.3.0d7 [link in post #23].

So... is anyone up to the task of helping by writing a little shader compiler? You don't need to know anything about VMsvga2's internals, or Apple's graphics drivers to do this. It can be done as a separate code library.

 

I'd love to help you, but I have no clue about coding. Thank you for your work on this!

Link to comment
Share on other sites

Hi

 

I installed VMsvga2_v1.3.0d7.. But now my mac has broken the vmware tools effects (autofit windows).. so it does automatically fit in the vmware window..

 

I am using the Albert method to install on vmware 7 http://www.insanelymac.com/forum/index.php?showtopic=220750

 

So

 

1) How do i fix it.. and if i can't

2) How do I uninstall the vga driver ??

 

Thanks :D

 

ofcourse i can do diagnostics for u if need it to enhance the drivers :) on ATI mobility radeon 4500 series with Windows 7 64bit and Core2Duo T9800 Dell Studio

Link to comment
Share on other sites

For autofit guest, install VMware tools, then get the file Display/guestd_patches.pkg from here and install it. It will patch VMware tools to support fit-guest with VMsvga2.

To remove the driver completely, get uninstall.sh from the same place, and run it in a Terminal as "sudo ./uninstall.sh". Alternatively, you can remove all bundles whose name starts with VMsvga2 from /System/Library/Extensions and reboot.

Link to comment
Share on other sites

For autofit guest, install VMware tools, then get the file Display/guestd_patches.pkg from here and install it. It will patch VMware tools to support fit-guest with VMsvga2.

To remove the driver completely, get uninstall.sh from the same place, and run it in a Terminal as "sudo ./uninstall.sh". Alternatively, you can remove all bundles whose name starts with VMsvga2 from /System/Library/Extensions and reboot.

I was going to offer the same advise, to help reduce the load on your good self, but was not sure the latest "guestd_patches.pkg" and "uninstall.sh" were still valid with the new 1.3 version of the VMsvga2 drivers, thanks for the confirmation, great work on the 3D graphics driver by the way, following the thread with interest, sadly do not have the progamming skills to assist, nuts and bolts man myself, sorry! cheers MSoK.

Link to comment
Share on other sites

For autofit guest, install VMware tools, then get the file Display/guestd_patches.pkg from here and install it. It will patch VMware tools to support fit-guest with VMsvga2.

To remove the driver completely, get uninstall.sh from the same place, and run it in a Terminal as "sudo ./uninstall.sh". Alternatively, you can remove all bundles whose name starts with VMsvga2 from /System/Library/Extensions and reboot.

 

Thanks the patch worked..

 

don't think i had used it initially.. i had installed SL and then just installed vmware tools.. but since i have upgraded to 10.6.6 vmware tools update says "Could not find component on update server".. running vmware 7.1.3 workstation..

 

anyways.. great driver.. :tomato:

Link to comment
Share on other sites

  • 2 weeks later...

Hi, i've got a wierd bug. After installing the vmsvga2 v1.2.3 driver I have my webcam working perfectly but can't see any photo on preview. After installing the VMsvga2 v1.3.0d7, photos on preview work great but now I can't see the webcam "preview" in aplications like photobooth or skype. The webcam is working, it's just its preview that appears black!

 

Any thoughts?

 

Thank you.

Link to comment
Share on other sites

  • 1 month later...
have you stopped working on it or are you just to busy at the moment to work on it

Hey,

 

I am sure Zenith432 will let us know when an update is available, my understanding is this is major coding and serious geeky stuff (sorry Z432, no offence implied), so we will have to be patient, OK, MSoK.

Link to comment
Share on other sites

Would anyone mind making a quick guide to setting up VMsvga2, I've tried to follow everything and googled certain things like the stuff that needed to be edited in the vmx file but I still can't get this working.

 

Sorry if a guide already exists but I honestly can't find anything except the very short and vague explanation by Zenith432 (respect).

 

Thanks

Link to comment
Share on other sites

  • 2 weeks later...
  • 3 months later...
[*]AppleIntelGMA950GLDriver.plugin must be installed in /System/Library/Extensions [This is normally the case].

 

I only have "AppleIntelGMA950GLDriver.bundle" in my Extensions folder, NOT "AppleIntelGMA950GLDriver.plugin" and I have no idea, where to get it (google failed on searching "AppleIntelGMA950GLDriver.plugin+download", or did I? :) ).

Quicktime and .png preview are working fine, though they already worked with VMsvga2_v1.2.3.

VLC (1.1.11) sound is working, display stays black.

youtube (safari, flashplayer version 10,3,181,34) plays ad-videos displayed before some clips (sound and video work fine), the main video has just sound with black screen.

I also tried Final Cut Pro 10.0 but it even fails to load...

Is this caused by the missing "AppleIntelGMA950GLDriver.plugin"? Where can I get this plugin?

 

System (host):

Windows 7 x64 | Intel Quad-Core Q6600 @ 3.2 GHz | Nvidia GeForce GTX 285 (2 GB RAM)

2 x 2 GB OCZ DDR2-800 RAM | Sound Blaster X-Fi Titanium PCI-E

 

System (guest):

VMware 7.1.4 build-385536 | Mac OS X Lion 10.7.2 (11C26)

Link to comment
Share on other sites

  • The right name is "/System/Library/Extensions/AppleIntelGMA950GLDriver.bundle". The "plugin" ending was a typo.
  • VMsvga2 1.3.x with GL driver works only for OSes 10.6.2 - 10.6.7.
  • It's broken on OS 10.6.8, because Apple added some functions that aren't implemented.
  • It's broken on OS 10.7 because Apple made some [other] changes.
  • The "baseline capabilities" mentioned in one of the posts are
    • VMX file must say "mks.enable3d = true".
    • VMware backend must support GMRs (this is the case in all versions of Workstation since 6.5.x).
    • I don't think bare-metal vmkernel supports the 3D caps. [possibly not GMRs either.]
    • Should also have the following in VMX file
      svga.autodetect = false
      svga.vramSize = 33554432
      svga.enableScreenObject = true
      svga.enableTracesReg = true


    • The svga.enable* settings are on be default for guestos darwin.... The vram size should be at least 32MB.

    [*]The log file is vmware.log found on the host. It's got some log messages from the driver listing the caps it found and errors it encountered.

    [*]I don't presently have time to continue developing the driver and adapt it to OS 10.6.8 or OS 10.7.

Link to comment
Share on other sites

 Share

×
×
  • Create New...