netkas.org forum

General Category => PC EFI => Topic started by: mcmatrix on December 20, 2007, 09:15:04 AM



Title: GFXUtil News & Announcements (v0.71b + src)
Post by: mcmatrix on December 20, 2007, 09:15:04 AM
12.01.2007 - New version of gfxutil is out. Please test and give feedback!
06.08.2009 - gfxutil sourcecode is now available!
http://rapidshare.com/files/264264563/gfxutil_source.zip.html
You are free to use it and whatever you do please keep the result free for community

http://rapidshare.com/files/83220759/gfxutil.zip.html
Version 0.71b (LATEST)
---------------------
Changelog 0.71b
* _UID value bug is fixed.
* New efi short notation PCI node "PciAdr".
* New switch [-f name] it finds object devicepath with give name from IODeviceTree plane.
* New verbose output format

PropertyList XML format description

Sample plist file:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>DevicePath for Device #n</key>
    <dict>
        <key>binary_value</key>
        <data>base64encoded</data>
        <key>string_value</key>
        <string>helloworld</string>
        <key>boolean_value</key>
        <true/> or <false/>
        <key>uint32_value</key>
        <integer>0x8744</integer> or <integer>12345</integer>
        <key>uint32_value</key>
        <string>0x00000000</string>
        <key>uint16_value</key>
        <string>0x0000</string>
        <key>uint8_value</key>
        <string>0x00</string>
    </dict>
</dict>
</plist>

* Device path can be in hexadecimal (without prefix '0x') or efi shorthand notation device path format.
* All keys are saved like unicode text.
* Binary values are base64 encoded between <data></data> tags.
* Boolean single tag values are saved like uint8 values (true - 0x01, false - 0x00)
* <integer></integer> both hexadecimal and decimal numbers are accepted (hex. values must begin with prefix 0x). Values are saved like uint32.
* <string>0x00000000</string> is saved like uint32 value. Range: 0x00000000 - 0xffffffff
* <string>0x0000</string> is saved like uint16 value. Range: 0x0000 - 0xffff
* <string>0x00</string> is saved like uint8 value. Range: 0x00 - 0xff

String hexadecimal values must preserve its constant length by having needed count of leading zeros. Also values must have hex prefix '0x' or are treated like ordinary text.

Device path search function note!
Supported IODeviceTree registry entries are IOPCIDevice and IOACPIPlatformDevice.
name - may be "IOName" or "name" property value or registry entry name.

Usage examples:

* Converting from hex file to property list file
./gfxutil -i hex -o xml ./r2600.hex ./r2400.plist

* Converting from plist file to hex file
./gfxutil -i xml -o hex ./r2600.plist ./r2400.hex

* Converting from hex to plist using string and number detection
./gfxutil -s -n -i hex -o xml ./r2600.hex ./r2400.plist

* Same as previous example but using additional verbose output
./gfxutil -v -s -n -i hex -o xml ./r2600.hex ./r2400.plist

* Converting from hex to property list file (reading input from stdin)
./gfxutil -i hex -o xml /dev/stdin ./r2400.plist <r2400.hex

* Converting from hex to property list xml (reading input from stdin and output to stdout)
./gfxutil -i hex -o xml /dev/stdin /dev/stdout <r2400.hex >r2400.plist

* You want find device path of devices with name "display" and "ethernet".
./gfxutil -f display
output: DevicePath = PciRoot(0x0)/Pci(0x1,0x0)Pci(0x0,0x0)

./gfxutil -f ethernet
output: DevicePath = PciRoot(0x0)/Pci(0x1c,0x1)/Pci(0x0,0x0)
 

Supported efi shorthand notation syntax description:

Syntax is case insensitive!

Both hexadecimal and decimal numbers are accepted as input values.
Hexadecimal numbers must start with prefix '0x'!

uint8 - 1 byte unsigned number (range 0x0 - 0xff)
uint16 - 2 byte unsigned number (range 0x0  - 0xffff)
uint32 - 4 byte unsigned number (range 0x0 - 0xffffffff)


Acpi(PNPxxxx, uint32 uid) - ACPI device (xxxx is PNP type device HID for example 0a03)
ACPI Device Path. This Device Path is used to describe devices whose enumeration is not
described in an industry-standard fashion. These devices must be described using ACPI AML
in the ACPI name space; this Device Path is a linkage to the ACPI name space.


PciRoot(uint32 uid) - alias for Acpi(PNP0a03,uid)

Pci(uint8 device, uint8 function) - PCI device node
The Device Path for PCI defines the path to the PCI configuration space address for a PCI device.
There is one PCI Device Path entry for each device and function number that defines the path from the root PCI bus to the device. The PCI Device Path entry must be preceded by an ACPI Device Path entry that uniquely identifies the PCI root bus.


PciAdr(uint32 adr) - alias for PCI node with using alternative address value.
adr is PCI device "_ADR" property value that your may find from pci device properties in IOACPIPlane.
for example:
...
o-PCX4@1c0003
  |-_ADR = 1835011     (hex 0x1c0003)
...
PCX4@xxxxyyyy - (add leading zeros)
xxxx - pci device
yyyy - pci function

This ioreg entry in shorthand notation is PciAdr(1835011) or PciAdr(0x1c0003) or Pci(0x1c,0x3)
 
example paths:
PciRoot(0x0)/PciAdr(0x1c0003)/Pci(0x0,0x0)

PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)
same with Acpi
Acpi(PNP0a03,0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)

I TAKE NO RESPONSEBILITY FOR ANY LOSS, DAMAGE OR INJURY ARISING FROM THE USE OF THIS PROGRAM! 



Tips for building hex device path.

Important!
from ioreg tree you have to clarify your pciroot UID!!!
for example:   
+-o PCI0@0  <class IOACPIPlatformDevice, registered, matched, active, busy 0>
    | |   "_UID" = "4"
If there isnt any _UID prop then uid is probably 0

for example your devpath in ioreg:
IOACPIPlane:/_SB/PCI0@0/P0P5@1c0001/ethernet@0
if device hasnt IOACPIPlane or other acpi path then you have to manually design it, follow
hierarchical ioreg devtree starting from pciroot (PCI0@0 or from other pciroot depending on your hardware config) and ending with your chosen device.


How to convert it to hexadecimal efi devicepath?
It's easy :) Just follow my guide:

1. ROOT PCI BRIDGE node. ACPI Device Path _HID PNP0A03, _UID 0. ACPI name space \_SB\PCI0. Shorthand notation is Acpi(PNP0A03,0)
  • from ioreg: find _SB/PCI0@0 or similar (if there is PCI1@0 or similar then you probably have to change UID part)
  • into efi: 02010c00d041030a00000000 (last 4 bytes are UID for example if you want set UID = 1 then change last 4 bytes 01000000)
    _HID - the EISA ID of an on-board device. This is used to identify the device.
    _UID - the unit number of an on-board device. This is used to distinguish between same kind of device.

2. first PCI DEVICE node. Shorthand notation is Pci(0x1c,0x1)
  • from ioreg: find _SB/PCI0@0/P0P5@1c0001 or similar
    P0P5@1c0001 -> add leading zeros POP5@001c0001
    POP5@xxxxyyyy
    xxxx - pci device
    yyyy - pci function
    efi template: 01010600yyxx
  • into efi: 01010600011c (pci node is like that 01-hardware path type, 01-pci device type, 0600 - length, 01 - pci function (1 byte), 1c - pci device (1byte) )

3. second PCI DEVICE node. Shorthand notation is Pci(0x0,0x0)
  • from ioreg: find _SB/PCI0@0/P0P5@1c0001/ethernet@0 or similar
    ethernet@0 -> add leading zeros ethernet@00000000
    ethernet@xxxxyyyy
    xxxx - pci device
    yyyy - pci function
    efi template: 01010600yyxx
  • into efi: 010106000000 (pci node is like that 01-hardware path type, 01-pci device type, 0600 - length, 00 - pci function (1 byte), 00 - pci device (1byte) )

4. Device path end node.
into efi: 7fff0400

5. put these parts together and voila
from: IOACPIPlane:/_SB/PCI0@0/P0P5@1c0001/ethernet@0
into: 02010c00d041030a0000000001010600011c0101060000007fff0400

efi device path shorthand notation legend:
pciroot acpi node -  Acpi(PNP0A03,uid)
full hex pciroot - 02010c00d041030a00000000
ACPI - 02010c00
PNP - d041
0A03 - 030a
uid - 00000000

pci node - Pci(device,function)
full hex pci - 01010600011c
PCI - 01010600
function - 0x01
device - 0x1c

efi dev path must end with end node
full hex end node - 7fff0400

NB! All hexadecimal binary strings are using little endian format.
"Little Endian" means that the low-order byte of the number is stored in memory at the lowest address, and the high-order byte at the highest address. (The little end comes first.) For example, a 4 byte uint32

    Byte3 Byte2 Byte1 Byte0

will be arranged in memory as follows:
    Base Address+0   Byte0
    Base Address+1   Byte1
    Base Address+2   Byte2
    Base Address+3   Byte3

and 2 byte short or word or uint16
    Byte1 Byte0

will be arranged in memory as follows:

    Base Address+0   Byte0
    Base Address+1   Byte1


Title: Re: GFXUtil News & Announcements
Post by: [quark] on December 20, 2007, 10:43:22 AM
Very nice tool...

The next milestone should be a GUI version... I think it's not very complicated but very comfortable ;)
+ automatic com.apple.Boot.plist patching...


Title: Re: GFXUtil News & Announcements
Post by: 0xdeadbeef on December 20, 2007, 11:22:06 AM

New version of gfxutil is out.


Nice work! Could I request that you arrange it just to read/write from stdin/stdout if no filenames are given? Give us bash scripters a boost!  ;)



Title: Re: GFXUtil News & Announcements
Post by: netkas on December 20, 2007, 04:33:44 PM
good works. and, better to keep Number as Data


Title: Re: GFXUtil News & Announcements
Post by: BladeRunner on December 20, 2007, 05:35:56 PM
@mcmatrix:

I *really* like the new version.  The use of string data types makes it easy to use the plist editor directly. Previously I had to copy the value data and paste it into an open hexedit file to modify it.



Title: Re: GFXUtil News & Announcements
Post by: hiw99 on December 21, 2007, 03:48:21 PM
thanks for gfxutil..

but i cant use it.

Follow message, what can i do  :'(

dyld:  lazy symbol binding failed: Symbol not found:  _getopt$UNIX2003


Title: Re: GFXUtil News & Announcements
Post by: Thrawnhex on December 21, 2007, 04:36:26 PM
You're using Tiger, right? Only works under leo ;)

Thrawnhex


Title: Re: GFXUtil News & Announcements
Post by: netkas on December 29, 2007, 02:07:12 PM
gfxutil isn't good yet

for me, gfxstring doesn't work at all after editing with gfxutil



Title: Re: GFXUtil News & Announcements
Post by: mcmatrix on December 29, 2007, 03:54:55 PM
gfxutil isn't good yet

for me, gfxstring doesn't work at all after editing with gfxutil



Please could you give more detail feedback.


Title: Re: GFXUtil News & Announcements
Post by: netkas on December 29, 2007, 04:52:00 PM
if i converts from bin to hst with gfxutils , then string doesn't work for me, if with own tool - works...
but maybe it necause of how i pasted it to boot.plist, not sure here..


Title: Re: GFXUtil News & Announcements
Post by: mcmatrix on December 29, 2007, 06:13:54 PM
if i converts from bin to hst with gfxutils , then string doesn't work for me, if with own tool - works...
but maybe it necause of how i pasted it to boot.plist, not sure here..

Seems working for me. (using latest 0.51b version)
I have tried with original x3100 and 8600MGT device_prop hex files.
Converted from org. hex to bin and then back hex. MD5 hash of both hex files was same.
Could you try 0.51b version of gfxutil.
If possible please send me those two files. One converted by gfxutil and second converted by your tool.


Title: Re: GFXUtil News & Announcements
Post by: BladeRunner on December 29, 2007, 08:13:38 PM
I tried the new version 0.51b but it kept putting all my output as <data>..</data>.  Then just on a whim, I tried using one of the strings made for the 7600gs.  Much to my surprise, the xml data was produced as <string>..</string> just as you said.

Now if I can just get a string made for my GFX 5500 that will work like the 7600 strings I will be happy.


Title: Re: GFXUtil News & Announcements
Post by: mcmatrix on January 02, 2008, 08:22:27 AM
gfxutil isn't good yet

for me, gfxstring doesn't work at all after editing with gfxutil



Maybe the uppercase and lowercase hex strings are relevant.
Last version of gfxutil now outputs lowercase hex dump.
Before that using uppercase hex my hackmac was not responding to inserted hexstring.

But using lowercase hex string. I got black screen ;) It means that OSX reacts! :)

Can someone confirm that lowercase hex thing or i am on wrong way.


Title: Re: GFXUtil News & Announcements
Post by: netkas on January 02, 2008, 10:03:54 AM
lowercase or uppwercase shouldn't matter cause pcefi convert .e.g both f and F to 0xf
but maybe there is bug in pc_efi about it:D


Title: Re: GFXUtil News & Announcements
Post by: mtrr on January 06, 2008, 06:42:33 PM
thanks, will give it a try


Title: Re: GFXUtil News & Announcements
Post by: BladeRunner on January 06, 2008, 08:48:30 PM
Tips for building hex device path.

for example your devpath in ioreg:
IOACPIPlane:/_SB/PCI0@0/P0P5@1c0001/ethernet@0
How to convert it to hexadecimal efi devicepath?
It easy :)
Follow my guide:

1. ROOT PCI BRIDGE node. ACPI Device Path _HID PNP0A03, _UID 0. ACPI name space \_SB\PCI0. Shorthand notation is ACPI(PNP0A03,0)
  • from ioreg: find _SB/PCI0@0 or similar (if there is PCI1@0 or similar then you probably have to change UID part)
  • into efi: 02010c00d041030a00000000 (last 4 bytes are UID, if in system are two dev with same HID then system inc UID, if you want set UID = 1, then change last 4 bytes 01000000)

2. first PCI DEVICE node. Shorthand notation is PCI(1c|1)
  • from ioreg: find _SB/PCI0@0/P0P5@1c0001 or similar
    P0P5@1c0001 -> add leading zeros POP5@001c0001
    POP5@xxxxyyyy
    xxxx - pci device
    yyyy - pci func
  • into efi: 01010600011c (pci node is like that 01-hardware path type, 01-pci device type, 0600 - length, 01 - pci function (1 byte), 1c - pci device (1byte) )

3. second PCI DEVICE node. Shorthand notation is PCI(0|0)
  • from ioreg: find _SB/PCI0@0/P0P5@1c0001/ethernet@0 or similar
    ethernet@0 -> add leading zeros ethernet@00000000
    ethernet@xxxxyyyy
    xxxx - pci device
    yyyy - pci func
  • into efi: 010106000000 (pci node is like that 01-hardware path type, 01-pci device type, 0600 - length, 01 - pci function (1 byte), 1c - pci device (1byte) )

4. Device path end node.
into efi: 7fff0400

5. put these parts together and
from: IOACPIPlane:/_SB/PCI0@0/P0P5@1c0001/ethernet@0
into: 02010c00d041030a0000000001010600011c0101060000007fff0400

Updated for better description:

I wanted to give this a try so I could eliminate the patched IONetworkingFamily.kext but I can't locate any of the search strings you referenced in your guide.  I have an after market PCI 10/100/1000 ethernet card in one of my two PCI slots. The other slot has my Nvidia GFX 5500 video card. Both cards are plugged into a riser card which is inserted into the mother board.  IBM did this to make a low profile system unit.

When I scan the ioreg DeviceTree dump I only see one reference to ethernet which does not appear to be related to the search strings in the guide.

I made a device tree dump using the stock 10.5.1 IONetworkingFamily.kext.  I would appreciate any suggestions on how to proceed. I don't understand how to map what I see to the parts of your guide.

The full devicetree dump is attached below along with an extracted dump which just contains the part of the tree related to the ethernet card.

Thanks. BladeRunner


Title: Re: GFXUtil News & Announcements
Post by: mcmatrix on January 07, 2008, 07:33:36 AM
Tips for building hex device path.

for example your devpath in ioreg:
IOACPIPlane:/_SB/PCI0@0/P0P5@1c0001/ethernet@0
How to convert it to hexadecimal efi devicepath?
It easy :)
Follow my guide:

1. ROOT PCI BRIDGE node. ACPI Device Path _HID PNP0A03, _UID 0. ACPI name space \_SB\PCI0. Shorthand notation is ACPI(PNP0A03,0)
  • from ioreg: find _SB/PCI0@0 or similar (if there is PCI1@0 or similar then you probably have to change UID part)
  • into efi: 02010c00d041030a00000000 (last 4 bytes are UID, if in system are two dev with same HID then system inc UID, if you want set UID = 1, then change last 4 bytes 01000000)

2. first PCI DEVICE node. Shorthand notation is PCI(1c|1)
  • from ioreg: find _SB/PCI0@0/P0P5@1c0001 or similar
    P0P5@1c0001 -> add leading zeros POP5@001c0001
    POP5@xxxxyyyy
    xxxx - pci device
    yyyy - pci func
  • into efi: 01010600011c (pci node is like that 01-hardware path type, 01-pci device type, 0600 - length, 01 - pci function (1 byte), 1c - pci device (1byte) )

3. second PCI DEVICE node. Shorthand notation is PCI(0|0)
  • from ioreg: find _SB/PCI0@0/P0P5@1c0001/ethernet@0 or similar
    ethernet@0 -> add leading zeros ethernet@00000000
    ethernet@xxxxyyyy
    xxxx - pci device
    yyyy - pci func
  • into efi: 010106000000 (pci node is like that 01-hardware path type, 01-pci device type, 0600 - length, 01 - pci function (1 byte), 1c - pci device (1byte) )

4. Device path end node.
into efi: 7fff0400

5. put these parts together and
from: IOACPIPlane:/_SB/PCI0@0/P0P5@1c0001/ethernet@0
into: 02010c00d041030a0000000001010600011c0101060000007fff0400

Updated for better description:

I wanted to give this a try so I could eliminate the patched IONetworkingFamily.kext but I can't locate any of the search strings you referenced in your guide.  I have an after market PCI 10/100/1000 ethernet card in one of my two PCI slots. The other slot has my Nvidia GFX 5500 video card. Both cards are plugged into a riser card which is inserted into the mother board.  IBM did this to make a low profile system unit.

When I scan the ioreg DeviceTree dump I only see one reference to ethernet which does not appear to be related to the search strings in the guide.

I made a device tree dump using the stock 10.5.1 IONetworkingFamily.kext.  I would appreciate any suggestions on how to proceed. I don't understand how to map what I see to the parts of your guide.

The full devicetree dump is attached below along with an extracted dump which just contains the part of the tree related to the ethernet card.

Thanks. BladeRunner

Try these paths: Acpi(PNP0A03,0)/Pci(0x1e,0)/Pci(0,0)/Pci(0,0) or Acpi(PNP0A03,0)/Pci(0x1e,0)/Pci(0,0)

efi shothand notation reference:
http://forum.netkas.org/index.php/topic,64.msg851.html#msg851


Title: Re: GFXUtil News & Announcements
Post by: BladeRunner on January 07, 2008, 10:25:06 PM
Quote
Try these paths: Acpi(PNP0A03,0)/Pci(0x1e,0)/Pci(0,0)/Pci(0,0) or Acpi(PNP0A03,0)/Pci(0x1e,0)/Pci(0,0)

efi shothand notation reference:
http://forum.netkas.org/index.php/topic,64.msg851.html#msg851

I tried using the latest version of gfxutil (0.6b) but it kept crashing using the device paths you suggested. So, I tired the two you gave as examples in the first post. The one which begins "PciRoot(0x0)/P" works and produces a hex output file. The other example, which looks like the two you suggested I try, failed with the following error:

Quote
bash-3.2# ./gfxutil -v -s -n -i xml -o hex ./timeMachine.plist ./timeMachine.hex
GFX Data: filesize=56
GFX Data: numofblocks=1

 Header: blocksize=44
 Header: records=1
UnpackDevicePath: Probably a bogus device path
Assertion failed: (UnpackDevPath != NULL), function ConvertDevicePathToText, file /Users/fox/Desktop/Projects/gfxutil/efidevp.c, line 1039.
Abort trap
bash-3.2#

Both of the strings you suggested for me failed with the same error.

I have attached the input ./timeMachine.plist file. Please tell me if I am using gfxutil incorrectly or the input plist file is bad.


Title: Re: GFXUtil News & Announcements
Post by: mcmatrix on January 08, 2008, 01:34:39 PM
Quote
Try these paths: Acpi(PNP0A03,0)/Pci(0x1e,0)/Pci(0,0)/Pci(0,0) or Acpi(PNP0A03,0)/Pci(0x1e,0)/Pci(0,0)

efi shothand notation reference:
http://forum.netkas.org/index.php/topic,64.msg851.html#msg851

I tried using the latest version of gfxutil (0.6b) but it kept crashing using the device paths you suggested. So, I tired the two you gave as examples in the first post. The one which begins "PciRoot(0x0)/P" works and produces a hex output file. The other example, which looks like the two you suggested I try, failed with the following error:

Quote
bash-3.2# ./gfxutil -v -s -n -i xml -o hex ./timeMachine.plist ./timeMachine.hex
GFX Data: filesize=56
GFX Data: numofblocks=1

 Header: blocksize=44
 Header: records=1
UnpackDevicePath: Probably a bogus device path
Assertion failed: (UnpackDevPath != NULL), function ConvertDevicePathToText, file /Users/fox/Desktop/Projects/gfxutil/efidevp.c, line 1039.
Abort trap
bash-3.2#

Both of the strings you suggested for me failed with the same error.

I have attached the input ./timeMachine.plist file. Please tell me if I am using gfxutil incorrectly or the input plist file is bad.


New fixed version 0.65b is available!

Your devicepath syntax is a bit wrong:
<key>ACPI(PNP0A03,0)/PCI(1e|0)/PCI(0|0)</key>
gfxutil will accept following syntx
<key>ACPI(PNP0A03,0)/PCI(0x1e,0)/PCI(0,0)</key>

Please try and give feedback!


Title: Re: GFXUtil News & Announcements (v0.65b)
Post by: BladeRunner on January 08, 2008, 07:28:07 PM
I tried the new version - with corrected syntax - and it worked. I used the device path in your previous post and also switched to the new true/false tag. The output below is from that test.  Now I just need to see if it works to fix the TimeMachine problem for me.

Code:
bash-3.2# ./gfxutil -a
./gfxutil Version: 0.65b by McMatrix
bash-3.2# ./gfxutil -v -s -n -i xml -o hex ./timeMachine.plist ./timeMachine.hex
GFX Data: filesize=75
GFX Data: numofblocks=1

 Header: blocksize=63
 Header: records=1
 Header: hex devicepath =<02010c00d041030a0000000001010600001e0101060000007fff0400>
 Header: txt devicepath=PciRoot(0x0)/Pci(0x1e,0x0)/Pci(0x0,0x0)
  Setting: built-in=0x01

By the way, many thanks for the GREAT utility.


Title: Re: GFXUtil News & Announcements (v0.65b)
Post by: bob on January 09, 2008, 12:36:47 AM
No luck here... See the acpi-path on the atached img.. for that i,ve used:
   
     ACPI(PNP0A03,0)/PCI(0x1b,0)/PCI(0,0)

But then the tool says:

    Header: txt devicepath=PciRoot(0x0)/Pci(0x1b,0x0)/Pci(0x0,0x0)

Acpi its the same as PciRoot? because dont matter i use ACPI, the tool converts it to PciRoot...

Also i've tested without the Last PCI(0,0) and still the tool convert to PciRoot...


Also, why not use IORegistryExplorer/IODeviceTree format as input?





Title: Re: GFXUtil News & Announcements (v0.65b)
Post by: krijonk on January 09, 2008, 07:14:20 AM
Ok, I have tried reading through this long enough, I just can't seem to get it....

If somebody wants to take a shot at converting this EFI device path to HEX, feel free, it will be much appreciated.


IOACPIPlane:/_SB/PCI0@0/P0P1@1e0000/ethernet@4


-krijonk


Title: Re: GFXUtil News & Announcements (v0.65b)
Post by: mcmatrix on January 09, 2008, 08:20:16 AM
Ok, I have tried reading through this long enough, I just can't seem to get it....

If somebody wants to take a shot at converting this EFI device path to HEX, feel free, it will be much appreciated.


IOACPIPlane:/_SB/PCI0@0/P0P1@1e0000/ethernet@4

-krijonk

Need your full IODeviceTree dump.

ioreg -l -w0 -p IODeviceTree >dump.txt


Title: Re: GFXUtil News & Announcements (v0.65b)
Post by: mcmatrix on January 09, 2008, 08:22:34 AM
No luck here... See the acpi-path on the atached img.. for that i,ve used:
   
     ACPI(PNP0A03,0)/PCI(0x1b,0)/PCI(0,0)

But then the tool says:

    Header: txt devicepath=PciRoot(0x0)/Pci(0x1b,0x0)/Pci(0x0,0x0)

Acpi its the same as PciRoot? because dont matter i use ACPI, the tool converts it to PciRoot...

Also i've tested without the Last PCI(0,0) and still the tool convert to PciRoot...


Also, why not use IORegistryExplorer/IODeviceTree format as input?



ACPI(PNP0A03,0) is yor pciroot!. Pciroot(0x0) is just alias for ACPI(PNP0A03,0).
So this is not a case.

Need your full IODeviceTree dump:

ioreg -l -w0 -p IODeviceTree >dump.txt


Title: Re: GFXUtil News & Announcements (v0.65b)
Post by: krijonk on January 09, 2008, 09:24:37 AM
Here is my IODeviceTree Dump:

I also can't seem to get gfx-string working for 7300GS, even using a reported "working" string from this forum for the EXACT same card i have (Gigabyte 7300GS 128MB).

I appreciate all the help you can offer....

-krijonk


Title: Re: GFXUtil News & Announcements (v0.65b)
Post by: time ed on January 09, 2008, 12:43:53 PM
Here is my IODeviceTree Dump:

Your device path is _SB/PCI0@0/P0P2@10000/Display@0. Shorthand is:
PciRoot(0x1)/Pci(0x1,0x0)/Pci(0x0,0x0)
...so <key> string should be?
02010c00d041030a000000000101060000010101060000007fff04001

Your best bet is to download mcmatrixs' util, convert a working string to xml, edit device path key, then convert back to hex. While you're editing, you should also change device property keys to match those in your IOReg (like NVCAP, address cells, etc..)


Title: Re: GFXUtil News & Announcements (v0.65b)
Post by: mcmatrix on January 09, 2008, 12:46:54 PM
Here is my IODeviceTree Dump:

Your device path is _SB/PCI0@0/P0P2@10000/Display@0. Shorthand is:
PciRoot(0x1)/Pci(0x1,0x0)/Pci(0x0,0x0)
...so <key> string should be?
02010c00d041030a000000000101060000010101060000007fff04001

Your best bet is to download mcmatrixs' util, convert a working string to xml, edit device path key, then convert back to hex. While you're editing, you should also change device property keys to match those in your IOReg (like NVCAP, address cells, etc..)

No his pciroot is pciroot(0x0) because PCI0@0 _UID = 0 :)


Title: Re: GFXUtil News & Announcements (v0.65b)
Post by: time ed on January 09, 2008, 01:08:35 PM
No his pciroot is pciroot(0x0) because PCI0@0 _UID = 0 :)

Oh! My bad. But I believe in spite of my fat finger, the <key> string is still correct?

Regards,
t-e


Title: Re: GFXUtil News & Announcements (v0.65b)
Post by: bob on January 09, 2008, 03:35:51 PM
here's my dump...




Title: Re: GFXUtil News & Announcements (v0.65b)
Post by: time ed on January 09, 2008, 03:56:21 PM
here's my dump...

Device path:
_SB/PCI0@0/PEGP@10000/Display@0

Shorthand
PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)

Key:
02010c00d041030a000000000101060000010101060000007fff04001


Title: Re: GFXUtil News & Announcements (v0.65b)
Post by: bob on January 09, 2008, 04:34:00 PM
Thanks timed but what im trying, is to make my ALC888 card and Intel82566 to work with efi; that i had no luck; no one works.. The gfx, i got it working at some point, but removed because its 100 times more unstable than using nvinject, because somehow i get blue screen time to time and opengl shows a black screen, and some artifacts time to time, etc... even removing everything, and leaving only the common params, vram, nvcaps, etc, it does not work well... :( i am on 8600GT, maybe thats why, the beta drivers or something...


Title: Re: GFXUtil News & Announcements (v0.65b)
Post by: frantisheq on January 09, 2008, 05:03:23 PM
that intel 82566 would be great. got one. but what about sigmatel audio? any chance it will work too?


Title: Re: GFXUtil News & Announcements (v0.65b)
Post by: time ed on January 09, 2008, 06:13:37 PM
Thanks timed but what im trying, is to make my ALC888 card and Intel82566 to work with efi;

Well, I needed the practice :)

Device path is _SB/PCI0@0/AZAL@1b0000, same as mine, ALC888S.
Shorthand
PciRoot(0x0)/Pci(0x1b,0x0)
Problem is, I don't see pin configurations in your ioreg - I think this is necessary to build the Boot.plist string.

I've given up trying with 8256x NIC. My hack has 82562V built in. 8256x has a 8245x family controller. I can force the Apple 8245x driver load by adding device-id; and I can get a link, but it won't pass traffic. Same behavior under Linux; the Ubuntu crowd has been looking for a driver for that NIC family for a while. I saw a few posts with no details on InsanelyMac claiming to have 82562/82566 running under Tiger. But as far as I know, none have it working with Leopard. On the other hand, I've had great luck with 3Com 905 family cards...


Title: Re: GFXUtil News & Announcements (v0.65b)
Post by: bob on January 09, 2008, 07:01:18 PM
Yeah, but as suggested in other post, i've used an empty pinconfiguration, but anyway, didnt work...


Title: Re: GFXUtil News & Announcements (v0.65b)
Post by: krijonk on January 09, 2008, 08:37:44 PM
THANKS!!!!!

I got 7300GS working with the DevicePath from time ed.  (And using the other "working" 7300GS posted string in the Nvidia thread)

Thank you both time ed, mcmatrix for help/utility, and of course netkas for all of this efi stuff

NOT DONE YET:

**OK, now...i am still having trouble fixing time machine using gfx string.  I have tried a few times with no success, anybody want to take a shot at it....i have two ethernet cards, but I only use one.  I will attach my IOReg dump again.  Thanks in advance.

ETHERNET:    IOACPIPlane:/_SB/PCI0@0/P0P1@1e0000/ethernet@4

-krijonk


Title: Re: GFXUtil News & Announcements (v0.65b)
Post by: time ed on January 10, 2008, 04:31:26 AM
**OK, now...i am still having trouble fixing time machine
ETHERNET: IOACPIPlane:/_SB/PCI0@0/P0P1@1e0000/ethernet@4

02010c00d041030a0000000001010600001e0101060000047fff0400
PciRoot(0x0)/Pci(0x1e,0x0)/Pci(0x4,0x0)


Title: Re: GFXUtil News & Announcements (v0.65b)
Post by: netkas on January 10, 2008, 07:36:30 PM
check keys of IOACPIPlane:/_SB/PCI0@0/

there is _UID key, which will tell u what pciroot uhave.


Title: Re: GFXUtil News & Announcements (v0.7b)
Post by: SMF on January 11, 2008, 09:33:58 PM
Trying to learn more about strings - I've input the string for my 7600gt (256mb) modified for P35 into com.apple.boot.plist and it works fine for both tiger and leopard.  When I use gfxutil to convert the hex string to a plist and view it in property list editor it shows the address of PciRoot(0x1)/Pci(0x1,0x0)/Pci(0x0,0x0).

When I use gfxutil -f display I get DevicePath = PciRoot(0xbfff0031)/Pci(0x1,0x0)/Pci(0x0,0x0) - note the difference in the Pciroot value. 

When I use gfxutil -f ethernet I get DevicePath = PciRoot(0xbfff0031)/Pci(0x1c,0x5)/Pci(0x0,0x0).  When I use PciRoot(0x1)/Pci(0x1c,0x5)/Pci(0x0,0x0) in the property list editor and convert the combined plist (display and ethernet) to a hex string and insert it into com.apple.boot.plist both my display and time machine work so it would seem that PCIRoot of (0x1) is correct.

Why the difference in PCIRoot with gfxutil?

Thanks,
SMF


Title: Re: GFXUtil News & Announcements (v0.7b)
Post by: time ed on January 12, 2008, 02:16:03 AM

I think there's a bug. See here:
http://forum.netkas.org/index.php/topic,55.msg1009.html#msg1009


Title: Re: GFXUtil News & Announcements (v0.7b)
Post by: macgirl on January 12, 2008, 10:47:08 AM
Is it posible to make the string of a 8400GS and Sigmatel HDA but there is no ethernet detected I use USB to Ehernet and USB to WiFi?

On my other hackintosh I have a Geforce 6600, so I can make the string from my IODeviceTree with natit or nviject?


Title: Re: GFXUtil News & Announcements (v0.7b)
Post by: mcmatrix on January 12, 2008, 03:44:47 PM

I think there's a bug. See here:
http://forum.netkas.org/index.php/topic,55.msg1009.html#msg1009
That nasty bug is now fixed.


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: macgirl on January 12, 2008, 08:11:59 PM
Well I did it.

No ALCinject and no NViject

Now how do I know if the Ethernet fix is working?

here is my com.apple.Boot.plist for Dell XPS M1330 Laptop wint NV GF 8400M GS and Sigmatel 9228.


Title: Re: GFXUtil News & Announcements (v0.7b)
Post by: BladeRunner on January 12, 2008, 09:37:27 PM

I think there's a bug. See here:
http://forum.netkas.org/index.php/topic,55.msg1009.html#msg1009
That nasty bug is now fixed.

Many thanks for your work on gfxutil.  This new version reported a pci root path different than I had been using for my ethernet nic and now timemachine works with the original ionetworkingfamily.kext.

I still have a problem with my GeForce FX5500 vidio card.  I am not sure, but it looks like gfxutil reports the path for the first display found.  I think the one reported is the one integrated on the mother board, not the one plugged into the pci slot.

Would it be possible, without major work, to continue the search and report all the display or ethernet paths found?  That way we could pick the one that relates to the device we are using.  Just a thought.   

Again, thanks for a great program.


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: time ed on January 12, 2008, 11:33:49 PM
Now how do I know if the Ethernet fix is working?

Same question here:
http://forum.netkas.org/index.php/topic,92.msg953.html#msg953

Can one of you kind mac pro/imac owners zip up from syslog a clean start up for me? Please sanitize all personal info: IP's, MAC's, hostnames, keys, etc..


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: time ed on January 13, 2008, 02:34:45 PM
"Making a GFX String" tutorial amended:
http://forum.netkas.org/index.php/topic,9.msg1028.html#msg1028

Added section for finding device properties.


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: frantisheq on January 14, 2008, 05:11:21 PM
what about GUI version of gfxutil that would list dev tree, convert plist to hex, etc. i think it would be much easier for some ppl to work with it. i'm not a programmer so no i won't make it :)


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: tom3q on January 15, 2008, 09:29:23 PM
what about GUI version of gfxutil that would list dev tree, convert plist to hex, etc. i think it would be much easier for some ppl to work with it. i'm not a programmer so no i won't make it :)

I can make that application, but only if mcmatrix would accept that, because GFXutil was originally his idea.


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: frantisheq on January 15, 2008, 09:33:17 PM
what about GUI version of gfxutil that would list dev tree, convert plist to hex, etc. i think it would be much easier for some ppl to work with it. i'm not a programmer so no i won't make it :)

I can make that application, but only if mcmatrix would accept that, because GFXutil was originally his idea.

great


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: MacPaq on February 02, 2008, 12:19:21 AM
Hi thanks for this guide and thanks for the gfxutil. I really got into it, I love to dissect stuffs like that now it really make sense to me. This is only for the dev path, how can I get the rest of the efi string? For example, I want to get a card to work, let's say a XYZ vid card or an ABC audio, I still need to get the rest of the data to past to right? How does that work? If I understand correctly, I would still need some kind of Inject.kext, right.

Soory if it's a dumb question, I am new to this efi stuff and I really like to learn more.

Thanks in advance.


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: time ed on February 02, 2008, 03:12:12 PM
The object of boot strings is to give your system information about your I/O devices at boot time. Using strings relieves the need for injector kexts (added bonus).

To get XYZ video card or ABC audio device to work, yes, you will have to pass the system some properties of the device along with its location. How does that work? By adding device properties to an XML file, using mcmatrixs' tool to convert the XML to hex, then adding the hex string to a boot file for your system to interpret.

Not all devices work. First, your system must already have a driver for the device. Next, you must determine the properties of the device your system requires. For that, you will have to experiment. Audio on my system requires a modified HDA kext along with layout-ID and pin configuration in the string. Some audio devices need only location. Some Nvidia cards require more device information than others. You get the idea.

The best thing to do is scout around the forum for .plists describing devices similar to yours. Edit the plist with the correct path for device and give it a try. If it fails, you will have to research the properties for your device and try again. If it works, please post for others...


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: FavleX on February 04, 2008, 08:50:28 AM
thanks time ed.
good small tutorial on the infamous strings.  :)


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: MacPaq on February 04, 2008, 05:56:42 PM
Thanks for the reply Time ed.

So the IORegistryExplorer is the main source for property info? I have a hard time to decided what properties are needed when I look at the thing, guess just have to try them all out, right. Is there a minimal set of rule the all vid cards must have or is it all depend on the card.  Also I heard that some pcs can't handle efi, is it truth? Since mine can already boot using pc_efi_v8 in GUID, that shouldn't be an issue, am I correct?

BTW, I am also trying to get the sound working(headphone line-in, mic and digital>) Perhaps even 5:1 sound but that's not important. Right now I am using Azalia. which is ok but just like to have the headphone and line-in as well. Does anyone have the ALC888 ICH7 string? I patched it with someone's patcher using the linux codec code dump, after that, in the sound preferences, I have all the controls but then there's no sound or mic or anything. Is this because some AppleHDA layers are messed up?

Thank you as always :) 


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: pnoytechie on February 07, 2008, 04:33:27 PM
Hi, I need help.

Could the gfxutil.zip be posted other than rapidshare?

rapidshare doesn't work with my provider (we're like thousand of users in one NAT). megaupload doesn't work either.

could this be upload like in mediafire or 4shared?

thanks in advance.


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: time ed on February 13, 2008, 01:36:56 PM
So the IORegistryExplorer is the main source for property info?

Is there a minimal set of rule the all vid cards must have or is it all depend on the card?

BTW, I am also trying to get the sound working(headphone line-in, mic and digital>) Perhaps even 5:1 sound but that's not important. Does anyone have the ALC888 ICH7 string?

I don't know if its the main source, but so far for me its been the best source. You will find the address of the device and the values the system sees for working components. One of the devs would know better...

It depends on the card. If you use injector kext, your system.log will give an idea. You need to compare what you find in system.log with what is actually in the device tree. As a rule of thumb, use only the items that match exactly.

My machine is ALC888S/ICH7-DH. My codec is posted here, along with an archive codec that that can be used in a pinch:
http://forum.insanelymac.com/index.php?showtopic=74964

I've had the best luck with Taruga's v1.17 patcher (v1.18-v1.20 do funny things and don't consistently enable all features):
http://forum.insanelymac.com/index.php?showtopic=32859

Attached is complete .plist with graphic, networking, and audio for reference. Edit; convert to hex; apply.

Audio still requires patched kext with boot string.


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: MacPaq on February 13, 2008, 07:22:13 PM
Hi time_ed, thanks for your reply as always. I tried all taruga's patchers with my codec, the one come cloest for me is the v1.20, after applying the patch, all properly inputs and outputs show up in the sound preferences, however, still have no speaker or headphione  and mic. Perhaps I need to mess around with theAppleHDA layers. I will take a look at your plist see what I have done wrong.

cheers


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: time ed on February 14, 2008, 03:46:56 PM

You could also try some different codec/patcher combinations to see if that changes anything.


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: MacPaq on February 14, 2008, 11:38:44 PM
So the IORegistryExplorer is the main source for property info?

Is there a minimal set of rule the all vid cards must have or is it all depend on the card?

BTW, I am also trying to get the sound working(headphone line-in, mic and digital>) Perhaps even 5:1 sound but that's not important. Does anyone have the ALC888 ICH7 string?

I don't know if its the main source, but so far for me its been the best source. You will find the address of the device and the values the system sees for working components. One of the devs would know better...

It depends on the card. If you use injector kext, your system.log will give an idea. You need to compare what you find in system.log with what is actually in the device tree. As a rule of thumb, use only the items that match exactly.

My machine is ALC888S/ICH7-DH. My codec is posted here, along with an archive codec that that can be used in a pinch:
http://forum.insanelymac.com/index.php?showtopic=74964

I've had the best luck with Taruga's v1.17 patcher (v1.18-v1.20 do funny things and don't consistently enable all features):
http://forum.insanelymac.com/index.php?showtopic=32859

Attached is complete .plist with graphic, networking, and audio for reference. Edit; convert to hex; apply.

Audio still requires patched kext with boot string.


Hi time ed, I tried out your plist, sadly it didn't work for me, I guess your Asus mobo is very different from mine. This ACER is a PITA, still can't get it to run on all 4 cores yet. :( I was using a PNY Geforce 7300gt. It works fine with NVinject and I adjusted the path for my machine as well.

I am trying to get the ALC888 to work, I used my Linux codec dump and patched it with taruga's 1.20, as I said before, all available controls show up in the sound preference, I also noticed today that the S/PDIP red light in the back panel lite up. I guess something is working! But I still have no spk, headphone and mic.

I also noticed in the ALCinject.kext and AppleHDAController.kext, the plists didn't have my dev and ven id (pci10de,0393)

         <string>com_max_ALCinject</string>
         <key>IONameMatch</key>
         <array>
            <string>pci10de,0393</string>
            <string>pci8086,293e</string>
            <string>pci8086,2668</string>
            <string>pci8086,27d8</string>
                                 ......

in the AppleHDAController.kext,
                      <string>0x039310de 0x793a1002 0x437a1002 0x43831002 0x269a8086 0x26688086 0x27d88086 0x284b8086 0x293e8086 0x026c10de 0x037110de......

the wired thing is in the ConfigData, it's all blank, shouldn't there be some data? And what would that be?

         <key>HDAConfigDefault</key>
         <array>
            <dict>
               <key>CodecID</key>
               <integer>283904136</integer>
               <key>ConfigData</key>
               <data>
               /* Why is this BLANK? :( */
               </data>
               <key>FuncGroup</key>
               <integer>1</integer>
               <key>LayoutID</key>
               <integer>12</integer>
            </dict>
         </array>

Am I going about on the right track or am I doing something stupid. I have a good feeling that I am getting closer to success!!

Thanks again.



Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: time ed on February 15, 2008, 02:19:28 AM

I honestly don't know what should be in those kext's. You might want to check with Taruga or one of the devs more familiar with them.....


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: MacPaq on February 15, 2008, 03:18:59 PM
Hi time_ed, though u might like to know, on your plist, I seperated the audio part of it, use only the vidoe part, put in my dev path and it works great on my PNY7300gt 256M. :) thanks.


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: dubhead on March 21, 2008, 06:27:52 PM
Can anyone please help me with my dump...please?


P5LD2-V ,D930,XFX 7300GS 256MB,ALC882,88E8053 Marvel Yukon,GUID,EFIv8,10.5.2



..../gfxutil -f display
DevicePath = PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)
../gfxutil -f ethernet
DevicePath = PciRoot(0x0)/Pci(0x1c,0x2)/Pci(0x0,0x0)



### Fixed it up ..thanks for all here..Graphics,Ethernet, Sound..cleaned up ; )   ;D


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: inside on May 22, 2008, 02:06:05 PM
I did a graphical interface for mcmatrix gfxutil.
It´s done quick and dirty with cocoa  ;D

(http://img134.imageshack.us/img134/3644/efiscle0.jpg)

(http://img3.imageshack.us/img3/6145/bild2a.png)

features:
• import hex files and plist files.
• copy hex strings to clipboard.
• patch com.apple.Boot.plist with generated string.
• search for device paths.
• integrated plist for nvidia gfx cards, ethernet (aka timemachine fix) and sound.

download:http://www.mediafire.com/download.php?xz14ytrmddo (http://www.mediafire.com/download.php?xz14ytrmddo)

please post bugs and and your comments

update: 31.05.08
added: lspci window
added: com.apple.Boot.plist Editor
added: Admin Tools (Repair Permissions etc.)
fix: changed code for patching com.apple.Boot.plist

update: 5.06.08
added: plist manager. you can add your own plist files inside the Programm Bundle.
added: Base64 String Decododing (right click on a base64 string)
added: pc-efi v8 Installer (not active ! i cant try it on my Apple MacPro...)
added: some ATI and Nvidia plists.

update: 20.6.08
added HDEF Audio for P5K and DS3 Users (thanks to sWORDs).

update: 2.3.09
Version 1.1
added: EFI Boot Partition Installer
added: new com.apple.Boot.plist Editor
added: new cards: 9800GT 1024MB, 9800GTX+ 512MB


enjoy
inside


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: bob on May 22, 2008, 03:13:59 PM
Awesome, thanks :)


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: mcmatrix on May 23, 2008, 09:24:32 AM
Excellent front-end for users.
Keep going ;)


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: blackCH on May 31, 2008, 08:36:09 AM
Great Tool!
...but it doesnt write the string onto the boot.plist here. I must add it manually...
Thanks for sharing anyway


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: Mr_jojo on May 31, 2008, 10:37:26 AM
Great Tool!
...but it doesnt write the string onto the boot.plist here. I must add it manually...
Thanks for sharing anyway

me too, i finaly got my 8800 gtx to work with 10.5.3

thx you so much for the tool

it works, except for the bootlist writing, i did that manually


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: DDrDark on May 31, 2008, 02:18:58 PM
impresiv job inside! thanks a lot for share it with us! ;)


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: blackCH on May 31, 2008, 02:39:25 PM
Yeah, the last build works perfect! Thanx again.
Will be nice to integrate this app to the install DVD so you could patch your boot.plist right after the install is done...


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: bigpoppa on June 01, 2008, 02:18:10 AM
Looks good, but does not recognize my 8800 GT card.


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: jrangles on June 01, 2008, 03:19:47 PM
Looks good, but does not recognize my 8400 GS card.


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: macfr on June 02, 2008, 10:15:51 AM
Seems great, do you plan to support 8800GT ?


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: inside on June 02, 2008, 05:17:09 PM
Quote
do you plan to support 8800GT
yes, maybe a user with a working device string for the 8800 gt post the string here.
i can add it to efistudio in a minute  ;)
ps: some strings for ati cards are welcome too....


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: gu3d3s on June 02, 2008, 10:41:48 PM
HI,

For ATI X1900XTX....

I will make ono for 8800GT 512MB


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: websrvr on June 03, 2008, 11:45:14 PM
As much as I think the utility and GUI are useful in general, I have been unable to run gfxutil cause it was compiled for Leo only and the source is not available for me to compile it to run in Tiger.

The GUI is also distributed in binary format so getting one that works in Tiger seems impossible as long as it's source is not available.


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: muitommy on June 04, 2008, 06:35:36 AM
8800GT 512MB G92
Code:
ee0400000100000002000000bf0300001500000002010c00d041030a010000000101060000130101060000007fff040014000000400032002c006e0061006d00650000001100000073656e736f722d706172656e74220000005600520041004d002c0074006f00740061006c00730069007a0065000000080000000000002036000000400032002c00680077006300740072006c002d0070006100720061006d0073002d00760065007200730069006f006e00000008000000000000021c0000006400650076006900630065005f0074007900700065000000100000004e5644412c4765466f7263650e0000006e0061006d00650000000f0000004e5644412c506172656e7422000000400030002c006400650076006900630065005f00740079007000650000000b000000646973706c6179100000006d006f00640065006c000000190000004e5649444941204765466f7263652038383030475422000000400031002c006400650076006900630065005f00740079007000650000000b000000646973706c617912000000400032002c007200650067000000080000000000000222000000400032002c006400650076006900630065005f0074007900700065000000120000004e5644412c6770752d64696f646520000000400032002c0063006f006d00700061007400690062006c0065000000160000004e5644412c73656e736f722d706172656e7422000000400032002c002300730069007a0065002d00630065006c006c0073000000080000000000000020000000400031002c0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d616314000000400030002c006e0061006d0065000000120000004e5644412c446973706c61792d413a000000400032002c0068007700730065006e0073006f0072002d0070006100720061006d0073002d00760065007200730069006f006e000000080000000000000226000000400032002c0023006100640072006500730073002d00630065006c006c0073000000080000000000000114000000400031002c006e0061006d0065000000120000004e5644412c446973706c61792d4220000000400030002c0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d61631e00000072006f006d002d007200650076006900730069006f006e0000000800000076312e30100000004e00560043004100500000001800000004000000000003000c00000000000007000000000e0000004e00560050004d0000002000000001000000000000000000000000000000000000000000000000000000230100000700000002010c00d041030a0100000001010600010f7fff04001c0000007200650076006900730069006f006e002d0069006400000008000000a200000028000000500069006e0043006f006e00660069006700750072006100740069006f006e00730000000400000018000000760065006e0064006f0072002d0069006400000008000000de1000002c000000730075006200730079007300740065006d002d00760065006e0064006f0072002d0069006400000008000000de1000001e000000730075006200730079007300740065006d002d00690064000000080000005ec50000180000006c00610079006f00750074002d00690064000000080000000c000000160000006200750069006c0074002d0069006e0000000500000000


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: inside on June 04, 2008, 08:51:08 AM
thanks to muitommy and gu3d3s for the strings.:D
i added the plists to the app. i reworte the plist manager, it´s now possible to extend
the integrated plists by yourself. :)
i will upload the new version today.


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: macfr on June 04, 2008, 09:14:48 PM
i will upload the new version today.

Cool, I will be pleased to try it for my 8800GT !


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: macfr on June 15, 2008, 01:02:53 PM
i will upload the new version today.

Cool, I will be pleased to try it for my 8800GT !

Just works !

I've a PNY 8800 GT.


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: macfr on June 16, 2008, 09:02:50 AM
i will upload the new version today.

Cool, I will be pleased to try it for my 8800GT !

Just works !

I've a PNY 8800 GT.


I did it for Video, audio and ethernet. Everything works fine. So simmple with your app, great Work !

I've a PNY 8800 GT and GA-EP35-DS3P.


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: SkipG on June 19, 2008, 05:51:23 AM
i rewrote the plist manager, it´s now possible to extend
the integrated plists by yourself. :)
i will upload the new version today.

Inside,

I think this was asked before, but I can't find it. Can you add support for the ALC883 audio chip (ASUS P5K) or explain how we can add the plist support? It's supported by the AppleHDA.kext. I have gotten it working manually, and have attached both the plist and hex output.

Thanks,




Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: sWORDs on June 19, 2008, 08:48:01 AM
Inside,

I think this was asked before, but I can't find it. Can you add support for the ALC883 audio chip (ASUS P5K) or explain how we can add the plist support? It's supported by the AppleHDA.kext. I have gotten it working manually, and have attached both the plist and hex output.

Thanks,



ok. i thought that the graficcard poup is very nice for noobs and i think i let it like that. ::)
but i add popus (or context menu) for the nvcap values. i think this will expand the the pro use alot.
for the device-id, i add under AZAL a new option called AsusP5K Audio. ok  ;)

today i finished my vacation, so it can take a little...
When using HDAenabler (the newer version of ALCinject) it's no longer AZAL, but HDEF (atleast on DS3 and P5K), so maybe you should add that too. (acpi-path under HDEF is IOACPIPlane:/_SB/PCI0@0/AZAL@1b0000) This post (http://forum.insanelymac.com/index.php?s=&showtopic=87236&view=findpost&p=620512) claims that for 10.5.2 HDEF is needed and that Taruga found (http://forum.insanelymac.com/index.php?s=&showtopic=77191&view=findpost&p=545576) that Realtek 885 (so 889A should work too, codec dump of 889A gives 885) is added in 10.5.2.

With all this info, there must be a way to use EFI and have 883(P5K) 889A(DS3) working with only EFI (so no modified AppleHDA or HDAenabler. Even with showing up under Builtin Audio without modifying not found info. If only I could figure out how.


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: McNasty on June 21, 2008, 04:30:22 AM
Anyone know where I can find an EFI String for a ATI Radeon HD 2600 XT 256MB?


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: sWORDs on June 21, 2008, 04:34:09 AM
I did a graphical interface for mcmatrix gfxutil.
It´s done quick and dirty with cocoa  ;D

...

please post bugs and and your comments

update: 31.05.08
added: lspci window
added: com.apple.Boot.plist Editor
added: Admin Tools (Repair Permissions etc.)
fix: changed code for patching com.apple.Boot.plist

update: 5.06.08
added: plist manager. you can add your own plist files inside the Programm Bundle.
added: Base64 String Decododing (right click on a base64 string)
added: pc-efi v8 Installer (not active ! i cant try it on my Apple MacPro...)
added: some ATI and Nvidia plists.

update: 20.6.08
added HDEF Audio for P5K and DS3 Users (thanks to sWORDs).


enjoy
inside


I've added all Geforce 6/7/8 single GPU cards that I could find. Download version with 126 GF6/7/8 single cpu cards (http://www.mediafire.com/?3xhtbdfhozo)

And maybe you should note that you need HDAenabler (http://wiki.taruga.net/tiki-list_file_gallery.php?galleryId=1) to use HDEF. (And visa versa, so when using HDAenabler instead of ALCinject use HDEF.)

Using HDEF your card also comes up in SystemProfiler. Great work from Taruga/Kabyl. If your inputs aren't correct also use Taruga's HDApatcher (http://wiki.taruga.net/tiki-list_file_gallery.php?galleryId=1) with a linux codec dump, next still to be released version of HDApatcher can do the dump for you so no more need for a linux codec dump. Taruga (http://wiki.taruga.net) also has ALC882/883/885/888/889a AppleHDA.kext files (http://wiki.taruga.net/tiki-list_file_gallery.php?galleryId=3) that already include HDAenabler

I've attached the script I used to create the plist files, incase you ever need to make modifications to all plists:


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: inside on June 21, 2008, 08:23:23 AM
Quote
I've added all Geforce 6/7/8 single GPU cards that I could find
nice sWORDs , thank you  :)


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: sWORDs on June 21, 2008, 05:23:37 PM
Anyone know where I can find an EFI String for a ATI Radeon HD 2600 XT 256MB?
Use EFISTUDIO and select HD 2400 - 256 mb and replace Iago with Hypoprion and rename 2400 to 2600 XT.

Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>!!!!PUTYOURCORRECTPATHHERE!!!!</key>
<dict>
<key>@0,AAPL,boot-display</key>
<data>
AQAAAA==
</data>
<key>@0,ATY,EFIDisplay</key>
<string>TMDSA</string>
<key>@0,VRAM,memsize</key>
<data>
AAAAEAAAABA=
</data>
<key>@0,compatible</key>
<string>ATY,Hypoprion</string>
<key>@0,connector-type</key>
<data>
BAAAAA==
</data>
<key>@0,device_type</key>
<string>display</string>
<key>@0,display-connect-flags</key>
<data>
AAAEAA==
</data>
<key>@0,display-type</key>
<string>LCD</string>
<key>@0,name</key>
<string>ATY,Hypoprion</string>
<key>@1,VRAM,memsize</key>
<data>
AAAAAAAAABA=
</data>
<key>@1,compatible</key>
<string>ATY,Hypoprion</string>
<key>@1,connector-type</key>
<data>
AAIAAA==
</data>
<key>@1,device_type</key>
<string>display</string>
<key>@1,display-type</key>
<string>NONE</string>
<key>@1,name</key>
<string>ATY,Hypoprion</string>
<key>AAPL,EMC-Display-List</key>
<data>
AwAAAAAAAAAAAAAAAAAAAAYQAAAbkgAAAAAAAAAAAAAG
EAAAHJIAAAAAAAAAAAAABhAAACGSAAAAAAAAAAAAAA==
</data>
<key>AAPL,aux-power-connected</key>
<data>
AQAAAA==
</data>
<key>AAPL,backlight-control</key>
<data>
AAAAAA==
</data>
<key>AAPL00,blackscreen-preferences</key>
<data>
AAAACA==
</data>
<key>AAPL01,Coherency</key>
<data>
AgAAAA==
</data>
<key>AAPL01,blackscreen-preferences</key>
<data>
AAAACA==
</data>
<key>ATY,Card#</key>
<string>109-B148xx-00</string>
<key>ATY,Copyright</key>
<string>Copyright AMD Inc. All Rights Reserved. 2005-2008</string>
<key>ATY,EFICompileDate</key>
<string>Dec 18 2007</string>
<key>ATY,EFIDriverType</key>
<data>
Ag==
</data>
<key>ATY,EFIEnabledMode</key>
<data>
Ag==
</data>
<key>ATY,EFIHWInitStatus</key>
<data>
AAAAAAAAAAA=
</data>
<key>ATY,EFIOrientation</key>
<data>
AQ==
</data>
<key>ATY,EFIVersion</key>
<data>
MDEuMDAuMjM2AA==
</data>
<key>ATY,EFIVersionBios</key>
<string>113-B14801-023</string>
<key>ATY,FrameBufferOffset</key>
<data>
AAAAAIAAAAA=
</data>
<key>ATY,HWGPIO</key>
<data>
I6hIAA==
</data>
<key>ATY,IOSpaceOffset</key>
<data>
AAAAAAAAIAA=
</data>
<key>ATY,MCLK</key>
<data>
ADUMAA==
</data>
<key>ATY,MRT</key>
<string></string>
<key>ATY,MemRevisionID</key>
<data>
AQA=
</data>
<key>ATY,MemVendorID</key>
<data>
BgA=
</data>
<key>ATY,PCIConfigSpace</key>
<data>
AhCIlQcAEAAAAAADQAAAAAwAAIAAAAAABACikAAAAAAB
IAAAAAAAAAAAAABrEKYAAACgkFAAAAAAAAAAAAEAAAAA
AAAAAAAAAAAAAGsQpgABWAMGAAAAABCgEQCgjwAAEAgA
AAINAAhCAAIRAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAgAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
</data>
<key>ATY,PlatformInfo</key>
<data>
AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
</data>
<key>ATY,RefCLK</key>
<data>
jAoAAA==
</data>
<key>ATY,RegisterSpaceOffset</key>
<data>
AAAAAJCiAAA=
</data>
<key>ATY,Rom#</key>
<string>113-B1480A-236</string>
<key>ATY,SCLK</key>
<data>
YK4KAA==
</data>
<key>ATY,VendorID</key>
<data>
AhA=
</data>
<key>MVAD</key>
<data>
PlyCAP+QAMoAAAAAAAAAAHwukAYwBzAAIAAaBDgEAwAG
ABoEkAYAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
</data>
<key>device_type</key>
<string>ATY,HypoprionParent</string>
<key>model</key>
<string>ATI Radeon HD 2600 XT</string>
<key>name</key>
<string>ATY,HypoprionParent</string>
</dict>
</dict>
</plist>

I'll add 1300, 1600, 1800, 1900, 2400, 2600, 2900, 3400 and 3800 ATI cards to EFISTUDIO one off these days.


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: SkipG on June 22, 2008, 03:01:23 AM
I did a graphical interface for mcmatrix gfxutil.
It´s done quick and dirty with cocoa  ;D

...

please post bugs and and your comments

update: 31.05.08
added: lspci window
added: com.apple.Boot.plist Editor
added: Admin Tools (Repair Permissions etc.)
fix: changed code for patching com.apple.Boot.plist

update: 5.06.08
added: plist manager. you can add your own plist files inside the Programm Bundle.
added: Base64 String Decododing (right click on a base64 string)
added: pc-efi v8 Installer (not active ! i cant try it on my Apple MacPro...)
added: some ATI and Nvidia plists.

update: 20.6.08
added HDEF Audio for P5K and DS3 Users (thanks to sWORDs).


enjoy
inside


Inside,

Thank you for adding support for HDEF!

I tried it out today with my P5K(R) board with embedded ALC883 codec.
Several items in the generated plist differed from my manually generated one:

revision-id
subsystem-id
subsystem-vendor-id

See below:

--------------------
EFI Studio
--------------------
<key>PciRoot(0x0)/Pci(0x1b,0x0)</key>
  <dict>
      <key>PinConfigurations</key>
      <string></string>
      <key>built-in</key>
      <string>0x00</string>
      <key>layout-id</key>
      <string>0x0000000c</string>
      <key>revision-id</key>
      <string>0x00000001</string>
      <key>subsystem-id</key>
      <string>0x0000a002</string>
      <key>subsystem-vendor-id</key>
      <string>0x00001458</string>
      <key>vendor-id</key>
      <string>0x00008086</string>
   </dict>
--------------------
Manually generated
--------------------
   <key>PciRoot(0x0)/Pci(0x1b,0x0)</key>
   <dict>
       <key>PinConfigurations</key>
       <string></string>
       <key>built-in</key>
       <string>0x01</string>
       <key>layout-id</key>
       <string>0x0000000c</string>
       <key>revision-id</key>
       <string>0x00000002</string>
       <key>subsystem-id</key>
       <string>0x0000829f</string>
       <key>subsystem-vendor-id</key>
       <string>0x00001043</string>
       <key>vendor-id</key>
       <string>0x00008086</string>
   </dict>
------------------------------


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: inside on June 22, 2008, 08:44:50 AM
Quote
Several items in the generated plist differed from my manually generated one
i got no p5k board here, so i can´t test this. i use the same generic .plist for AZAL and HDEF.
if u wish i can add your self generated plist for HDEF instead of the generic AZAL one i used. what you think ?
btw: the buid-in must be 0x01 or ?


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: SkipG on June 22, 2008, 10:12:35 AM
Quote
Several items in the generated plist differed from my manually generated one
i got no p5k board here, so i can´t test this. i use the same generic .plist for AZAL and HDEF.
if u wish i can add your self generated plist for HDEF instead of the generic AZAL one i used. what you think ?

I think we need more than one HDEF template. There are at least two different codecs involved: the 883 is used by several vendors, and may require different templates depending on the board. There is also the 889(a) and possibly the 885. I know they will have different PCI IDs than the 883.

Quote
btw: the buid-in must be 0x01 or ?

Good catch! I tried it both ways, and it didn't matter. The value was 0x00 when I checked it out in IO Registry Explorer.


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: McNasty on June 22, 2008, 10:18:39 AM
Thanks for the reply, but when I boot with this gfx string and only the HD 2600 XT installed I get a black screen when login starts. I threw in my 8800GTS as well as the HD 2600 XT and merged the gfx strings for dual cards and the 8800GTS runs two monitors fine but a third monitor attached to the HD 2600 XT black screens.

In this configuration both cards do show up in the System Profiler as:

NVIDIA GeForce 8800 GTS [G92]:

  Chipset Model:   NVIDIA GeForce 8800 GTS [G92]
  Type:   Display
  Bus:   PCIe
  PCIe Lane Width:   x8
  VRAM (Total):   512 MB
  Vendor:   NVIDIA (0x10de)
  Device ID:   0x0600
  Revision ID:   0x00a2
  ROM Revision:   NVIDIA GeForce 8800 GTS [G92] OpenGL Engine [EFI]
  Displays:
DELL 3007WFP:
  Resolution:   2560 x 1600
  Depth:   32-bit Color
  Core Image:   Hardware Accelerated
  Main Display:   Yes
  Mirror:   Off
  Online:   Yes
  Quartz Extreme:   Supported
  Rotation:   Supported
DELL 2407WFP:
  Resolution:   1920 x 1200 @ 60 Hz
  Depth:   32-bit Color
  Core Image:   Hardware Accelerated
  Mirror:   Off
  Online:   Yes
  Quartz Extreme:   Supported
  Rotation:   Supported

ATI Radeon HD 2600 XT:

  Chipset Model:   ATI Radeon HD 2600 XT
  Type:   Display
  Bus:   PCIe
  PCIe Lane Width:   x8
  VRAM (Total):   256 MB
  Vendor:   ATI (0x1002)
  Device ID:   0x9588
  Revision ID:   0x0000
  ROM Revision:   113-B1480A-236
  EFI Driver Version:   01.00.236
  Displays:
Display Connector:
Display Connector:

The fact that it doesn't panic on its own and does show up in the profiler with both cards in leads me to believe that I am close to getting this working. Does it make a difference that the HD 2600 XT is an apple card out of a mac pro with dual dvi? I removed the Natit.kext and nVinject.kext from the Extensions, is there some other kexts that I need to remove as well?

Here is the merged plist for both cards:

Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)</key>
<dict>
<key>@0,compatible</key>
<string>NVDA,NVMac</string>
<key>@0,device_type</key>
<string>display</string>
<key>@0,name</key>
<string>NVDA,Display-A</string>
<key>@1,compatible</key>
<string>NVDA,NVMac</string>
<key>@1,device_type</key>
<string>display</string>
<key>@1,name</key>
<string>NVDA,Display-B</string>
<key>NVCAP</key>
<data>
BAAAAAAAAwAMAAAAAAAABwAAAAA=
</data>
<key>NVPM</key>
<data>
AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
</data>
<key>VRAM,totalsize</key>
<string>0x20000000</string>
<key>device_type</key>
<string>NVDA,Parent</string>
<key>model</key>
<string>NVIDIA GeForce 8800 GTS [G92]</string>
<key>name</key>
<string>display</string>
<key>rom-revision</key>
<string>NVIDIA GeForce 8800 GTS [G92] OpenGL Engine [EFI]</string>
</dict>
<key>PciRoot(0x0)/Pci(0x3,0x0)/Pci(0x0,0x0)</key>
<dict>
<key>@0,AAPL,boot-display</key>
<string>0x00000001</string>
<key>@0,ATY,EFIDisplay</key>
<string>TMDSA</string>
<key>@0,VRAM,memsize</key>
<data>
AAAAEAAAABA=
</data>
<key>@0,compatible</key>
<string>ATY,Hypoprion</string>
<key>@0,connector-type</key>
<string>0x00000004</string>
<key>@0,device_type</key>
<string>display</string>
<key>@0,display-connect-flags</key>
<string>0x00040000</string>
<key>@0,display-type</key>
<string>LCD</string>
<key>@0,name</key>
<string>ATY,Hypoprion</string>
<key>@1,VRAM,memsize</key>
<data>
AAAAAAAAABA=
</data>
<key>@1,compatible</key>
<string>ATY,Hypoprion</string>
<key>@1,connector-type</key>
<string>0x00000200</string>
<key>@1,device_type</key>
<string>display</string>
<key>@1,display-type</key>
<string>0x454e4f4e</string>
<key>@1,name</key>
<string>ATY,Hypoprion</string>
<key>AAPL,EMC-Display-List</key>
<data>
AwAAAAAAAAAAAAAAAAAAAAYQAAAbkgAAAAAAAAAAAAAGEAAAHJIAAAAAAAAA
AAAABhAAACGSAAAAAAAAAAAAAA==
</data>
<key>AAPL,aux-power-connected</key>
<string>0x00000001</string>
<key>AAPL,backlight-control</key>
<string>0x00000000</string>
<key>AAPL00,blackscreen-preferences</key>
<string>0x08000000</string>
<key>AAPL01,Coherency</key>
<string>0x00000002</string>
<key>AAPL01,blackscreen-preferences</key>
<string>0x08000000</string>
<key>ATY,Card#</key>
<string>109-B148xx-00</string>
<key>ATY,Copyright</key>
<string>Copyright AMD Inc. All Rights Reserved. 2005-2008</string>
<key>ATY,EFICompileDate</key>
<string>Dec 18 2007</string>
<key>ATY,EFIDriverType</key>
<string>0x02</string>
<key>ATY,EFIEnabledMode</key>
<string>0x02</string>
<key>ATY,EFIHWInitStatus</key>
<data>
AAAAAAAAAAA=
</data>
<key>ATY,EFIOrientation</key>
<string>0x01</string>
<key>ATY,EFIVersion</key>
<data>
MDEuMDAuMjM2AA==
</data>
<key>ATY,EFIVersionBios</key>
<string>113-B14801-023</string>
<key>ATY,FrameBufferOffset</key>
<data>
AAAAAIAAAAA=
</data>
<key>ATY,HWGPIO</key>
<string>0x0048a823</string>
<key>ATY,IOSpaceOffset</key>
<data>
AAAAAAAAIAA=
</data>
<key>ATY,MCLK</key>
<string>0x000c3500</string>
<key>ATY,MRT</key>
<string></string>
<key>ATY,MemRevisionID</key>
<string>0x0001</string>
<key>ATY,MemVendorID</key>
<string>0x0006</string>
<key>ATY,PCIConfigSpace</key>
<data>
AhCIlQcAEAAAAAADQAAAAAwAAIAAAAAABACikAAAAAABIAAAAAAAAAAAAABr
EKYAAACgkFAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAGsQpgABWAMGAAAAABCg
EQCgjwAAEAgAAAINAAhCAAIRAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAgAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
</data>
<key>ATY,PlatformInfo</key>
<data>
AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
</data>
<key>ATY,RefCLK</key>
<string>0x00000a8c</string>
<key>ATY,RegisterSpaceOffset</key>
<data>
AAAAAJCiAAA=
</data>
<key>ATY,Rom#</key>
<string>113-B1480A-236</string>
<key>ATY,SCLK</key>
<string>0x000aae60</string>
<key>ATY,VendorID</key>
<string>0x1002</string>
<key>MVAD</key>
<data>
PlyCAP+QAMoAAAAAAAAAAHwukAYwBzAAIAAaBDgEAwAGABoEkAYAAQAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAA==
</data>
<key>device_type</key>
<string>ATY,HypoprionParent</string>
<key>model</key>
<string>ATI Radeon HD 2600 XT</string>
<key>name</key>
<string>ATY,HypoprionParent</string>
</dict>
</dict>
</plist>

Thanks for any advice you can offer.


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: sWORDs on June 22, 2008, 10:42:16 AM
Thanks for the reply, but when I boot with this gfx string and only the HD 2600 XT installed I get a black screen when login starts. I threw in my 8800GTS as well as the HD 2600 XT and merged the gfx strings for dual cards and the 8800GTS runs two monitors fine but a third monitor attached to the HD 2600 XT black screens.

In this configuration both cards do show up in the System Profiler as:

NVIDIA GeForce 8800 GTS [G92]:

  Chipset Model:   NVIDIA GeForce 8800 GTS [G92]
  Type:   Display
  Bus:   PCIe
  PCIe Lane Width:   x8
  VRAM (Total):   512 MB
  Vendor:   NVIDIA (0x10de)
  Device ID:   0x0600
  Revision ID:   0x00a2
  ROM Revision:   NVIDIA GeForce 8800 GTS [G92] OpenGL Engine [EFI]
  Displays:
DELL 3007WFP:
  Resolution:   2560 x 1600
  Depth:   32-bit Color
  Core Image:   Hardware Accelerated
  Main Display:   Yes
  Mirror:   Off
  Online:   Yes
  Quartz Extreme:   Supported
  Rotation:   Supported
DELL 2407WFP:
  Resolution:   1920 x 1200 @ 60 Hz
  Depth:   32-bit Color
  Core Image:   Hardware Accelerated
  Mirror:   Off
  Online:   Yes
  Quartz Extreme:   Supported
  Rotation:   Supported

ATI Radeon HD 2600 XT:

  Chipset Model:   ATI Radeon HD 2600 XT
  Type:   Display
  Bus:   PCIe
  PCIe Lane Width:   x8
  VRAM (Total):   256 MB
  Vendor:   ATI (0x1002)
  Device ID:   0x9588
  Revision ID:   0x0000
  ROM Revision:   113-B1480A-236
  EFI Driver Version:   01.00.236
  Displays:
Display Connector:
Display Connector:

The fact that it doesn't panic on its own and does show up in the profiler with both cards in leads me to believe that I am close to getting this working. Does it make a difference that the HD 2600 XT is an apple card out of a mac pro with dual dvi? I removed the Natit.kext and nVinject.kext from the Extensions, is there some other kexts that I need to remove as well?

Here is the merged plist for both cards:

Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)</key>
<dict>
<key>@0,compatible</key>
<string>NVDA,NVMac</string>
<key>@0,device_type</key>
<string>display</string>
<key>@0,name</key>
<string>NVDA,Display-A</string>
<key>@1,compatible</key>
<string>NVDA,NVMac</string>
<key>@1,device_type</key>
<string>display</string>
<key>@1,name</key>
<string>NVDA,Display-B</string>
<key>NVCAP</key>
<data>
BAAAAAAAAwAMAAAAAAAABwAAAAA=
</data>
<key>NVPM</key>
<data>
AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
</data>
<key>VRAM,totalsize</key>
<string>0x20000000</string>
<key>device_type</key>
<string>NVDA,Parent</string>
<key>model</key>
<string>NVIDIA GeForce 8800 GTS [G92]</string>
<key>name</key>
<string>display</string>
<key>rom-revision</key>
<string>NVIDIA GeForce 8800 GTS [G92] OpenGL Engine [EFI]</string>
</dict>
<key>PciRoot(0x0)/Pci(0x3,0x0)/Pci(0x0,0x0)</key>
<dict>
<key>@0,AAPL,boot-display</key>
<string>0x00000001</string>
<key>@0,ATY,EFIDisplay</key>
<string>TMDSA</string>
<key>@0,VRAM,memsize</key>
<data>
AAAAEAAAABA=
</data>
<key>@0,compatible</key>
<string>ATY,Hypoprion</string>
<key>@0,connector-type</key>
<string>0x00000004</string>
<key>@0,device_type</key>
<string>display</string>
<key>@0,display-connect-flags</key>
<string>0x00040000</string>
<key>@0,display-type</key>
<string>LCD</string>
<key>@0,name</key>
<string>ATY,Hypoprion</string>
<key>@1,VRAM,memsize</key>
<data>
AAAAAAAAABA=
</data>
<key>@1,compatible</key>
<string>ATY,Hypoprion</string>
<key>@1,connector-type</key>
<string>0x00000200</string>
<key>@1,device_type</key>
<string>display</string>
<key>@1,display-type</key>
<string>0x454e4f4e</string>
<key>@1,name</key>
<string>ATY,Hypoprion</string>
<key>AAPL,EMC-Display-List</key>
<data>
AwAAAAAAAAAAAAAAAAAAAAYQAAAbkgAAAAAAAAAAAAAGEAAAHJIAAAAAAAAA
AAAABhAAACGSAAAAAAAAAAAAAA==
</data>
<key>AAPL,aux-power-connected</key>
<string>0x00000001</string>
<key>AAPL,backlight-control</key>
<string>0x00000000</string>
<key>AAPL00,blackscreen-preferences</key>
<string>0x08000000</string>
<key>AAPL01,Coherency</key>
<string>0x00000002</string>
<key>AAPL01,blackscreen-preferences</key>
<string>0x08000000</string>
<key>ATY,Card#</key>
<string>109-B148xx-00</string>
<key>ATY,Copyright</key>
<string>Copyright AMD Inc. All Rights Reserved. 2005-2008</string>
<key>ATY,EFICompileDate</key>
<string>Dec 18 2007</string>
<key>ATY,EFIDriverType</key>
<string>0x02</string>
<key>ATY,EFIEnabledMode</key>
<string>0x02</string>
<key>ATY,EFIHWInitStatus</key>
<data>
AAAAAAAAAAA=
</data>
<key>ATY,EFIOrientation</key>
<string>0x01</string>
<key>ATY,EFIVersion</key>
<data>
MDEuMDAuMjM2AA==
</data>
<key>ATY,EFIVersionBios</key>
<string>113-B14801-023</string>
<key>ATY,FrameBufferOffset</key>
<data>
AAAAAIAAAAA=
</data>
<key>ATY,HWGPIO</key>
<string>0x0048a823</string>
<key>ATY,IOSpaceOffset</key>
<data>
AAAAAAAAIAA=
</data>
<key>ATY,MCLK</key>
<string>0x000c3500</string>
<key>ATY,MRT</key>
<string></string>
<key>ATY,MemRevisionID</key>
<string>0x0001</string>
<key>ATY,MemVendorID</key>
<string>0x0006</string>
<key>ATY,PCIConfigSpace</key>
<data>
AhCIlQcAEAAAAAADQAAAAAwAAIAAAAAABACikAAAAAABIAAAAAAAAAAAAABr
EKYAAACgkFAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAGsQpgABWAMGAAAAABCg
EQCgjwAAEAgAAAINAAhCAAIRAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAgAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
</data>
<key>ATY,PlatformInfo</key>
<data>
AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
</data>
<key>ATY,RefCLK</key>
<string>0x00000a8c</string>
<key>ATY,RegisterSpaceOffset</key>
<data>
AAAAAJCiAAA=
</data>
<key>ATY,Rom#</key>
<string>113-B1480A-236</string>
<key>ATY,SCLK</key>
<string>0x000aae60</string>
<key>ATY,VendorID</key>
<string>0x1002</string>
<key>MVAD</key>
<data>
PlyCAP+QAMoAAAAAAAAAAHwukAYwBzAAIAAaBDgEAwAGABoEkAYAAQAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAA==
</data>
<key>device_type</key>
<string>ATY,HypoprionParent</string>
<key>model</key>
<string>ATI Radeon HD 2600 XT</string>
<key>name</key>
<string>ATY,HypoprionParent</string>
</dict>
</dict>
</plist>

Thanks for any advice you can offer.

Can't you check the devicestring on the mac pro first?


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: sWORDs on June 22, 2008, 10:55:39 AM
Quote
Several items in the generated plist differed from my manually generated one
i got no p5k board here, so i can´t test this. i use the same generic .plist for AZAL and HDEF.
if u wish i can add your self generated plist for HDEF instead of the generic AZAL one i used. what you think ?
btw: the buid-in must be 0x01 or ?
Builtin should be 0, but subvendor etc should be read from IODeviceTree, or you should add audio per motherboard.


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: McNasty on June 22, 2008, 01:57:16 PM
Can't you check the devicestring on the mac pro first?

Unfortunately not. The card was a deal off of Craigslist. I don't currently have a mac pro to test it on.

After some more fooling around I am now able to boot the card with full functionality on both dvi displays with Natit. I used the "ATI Radeon HD 2600XT PciE" installer from lastExile.  However I was hoping to be able to get it to work with efi gfx strings and eventually as a second card to run my third monitor.

After a little poking around in the plist from the Natit install I found that under the "ATI Radeon 2600 Series" it was using "ATY,Lamna" I replaced the "ATY,Hypoprion" and was able to boot to a blue screen but no further.

Maybe I am approaching this wrong. Is there an easier way to get dual graphics cards to work. I really need my third monitor on my OSX side. I have several cards to work with: 8800 GTS 512mb G92, 8800 GTS 320mb G80, 7900 GTX 512mb, and the HD 2600 XT. I have tried several combinations and they all pretty much lock up at login launch.

The only cards I was able to boot together so far was the HD 2600 XT and the 8800 GTS 512 and then only the monitors connected to the 8800 GTS 512 worked. The HD 2600 XT is the only one I can't get working on its own with gfx strings. I figure that I need to get them working on their own before I try to pair them up.

I really appreciate the help.


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: sWORDs on June 23, 2008, 01:46:53 AM
Can't you check the devicestring on the mac pro first?

Unfortunately not. The card was a deal off of Craigslist. I don't currently have a mac pro to test it on.

After some more fooling around I am now able to boot the card with full functionality on both dvi displays with Natit. I used the "ATI Radeon HD 2600XT PciE" installer from lastExile.  However I was hoping to be able to get it to work with efi gfx strings and eventually as a second card to run my third monitor.

After a little poking around in the plist from the Natit install I found that under the "ATI Radeon 2600 Series" it was using "ATY,Lamna" I replaced the "ATY,Hypoprion" and was able to boot to a blue screen but no further.

Maybe I am approaching this wrong. Is there an easier way to get dual graphics cards to work. I really need my third monitor on my OSX side. I have several cards to work with: 8800 GTS 512mb G92, 8800 GTS 320mb G80, 7900 GTX 512mb, and the HD 2600 XT. I have tried several combinations and they all pretty much lock up at login launch.

The only cards I was able to boot together so far was the HD 2600 XT and the 8800 GTS 512 and then only the monitors connected to the 8800 GTS 512 worked. The HD 2600 XT is the only one I can't get working on its own with gfx strings. I figure that I need to get them working on their own before I try to pair them up.

I really appreciate the help.
As far as I knew Framebuffer should be:
x1300 - Caretta
x1600 - Wormy
x1800 - Alopias
x1900 - Alopias
HD2400 - Iago
HD2600 - Hypoprion (Natit uses Lamna)
HD2900 - Franklin (not available in 10.5.3)
HD3400 - Lago
HD3600 - Lamna
HD3800 - Lamna
HD3800X2 - Triakis  (not available in 10.5.3)
I'm not sure where Prionace (not available in 10.5.3) and Spyrna are for.

But for the Macpro http://netkas.org/?p=49 (http://netkas.org/?p=49)
Quote
January 27, 2008

New ATI Radeon HD news
January 27th 2008 Posted to ATI
There is few good and funny news
1) MacPro’s Radeon 2600 XT works fine in plain PC.
2) MacPro’s Radeon 2600 XT uses Lamna as framebuffer.
3) we managed to get working unmodified triakis (for 3870/3850) and Lamna (for 2600) , 3870 card even got working sleep
4) There is no more Triakis in 10.5.2 updates, but we have working fine version
5) Releasing natit for it planned after 10.5.2 release, because time is money


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: sWORDs on June 24, 2008, 10:29:24 AM
Quote
I've added all Geforce 6/7/8 single GPU cards that I could find
nice sWORDs , thank you  :)
Why won't you just add the memorysize plist files and auto fill the name by using lspci -s [path] -i [idfile] (http://pciids.sourceforge.net/pci.ids)?

Or lspci -s [path] after putting this this (http://pciids.sourceforge.net/pci.ids.gz) in /usr/local/share.

with old id file:
bash-3.2# lspci -s 01:00.0
01:00.0 VGA compatible controller: nVidia Corporation Unknown device 0421 (rev a1)

new id file:
bash-3.2# lspci -s 01:00.0
01:00.0 VGA compatible controller: nVidia Corporation GeForce 8500 GT (rev a1)

Or:
bash-3.2# lspci -m -nn -s 01:00.0 -v
Device:   01:00.0
Class:   VGA compatible controller [0300]
Vendor:   nVidia Corporation [10de]
Device:   GeForce 8500 GT [0421]
SVendor:   ASUSTeK Computer Inc. [1043]
SDevice:   Unknown device [8264]
Rev:   a1


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: sWORDs on July 10, 2008, 12:17:39 AM
~pcwiz pm'ed about an error with 32, 64 and 128 mb cards which sometimes occured. I've found the mistake and changed all 32, 64 and 128 mb cards. Here's the new version. (http://www.mediafire.com/?3xhtbdfhozo)


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: kd-hackin on July 11, 2008, 09:59:28 AM
stupid question, i used efi studio and have graphics working great, but am havingg problems with audio, once i delete the injector but leave the patched hda kext i lose audio, i checked the paths efi studio used and they were correct, any ideas?  audio is rlt268.  Do i need to edit something on the hda kext?  Also how do i tell if my ethernet efi string is working, ethernet worked out of box but was told if i wanted to use time machine had to do efi string so would like to test incase i ever decide to use.  Thanks for the help and great programs
kev


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: SkipG on July 11, 2008, 12:42:01 PM
stupid question, i used efi studio and have graphics working great, but am havingg problems with audio, once i delete the injector but leave the patched hda kext i lose audio, i checked the paths efi studio used and they were correct, any ideas?  audio is rlt268.  Do i need to edit something on the hda kext?  Also how do i tell if my ethernet efi string is working, ethernet worked out of box but was told if i wanted to use time machine had to do efi string so would like to test incase i ever decide to use.  Thanks for the help and great programs
kev

Which audio? Are you using the HDAenabler?

Ethernet string only adds string for builtin = yes. Check your system log for UUID related errors. I have about 15 of them at boot, but none after that. Eliminating the error is the goal, and it can be eliminated by patching IONetworkingFamily or by including the builtin=0x01 string. Without the fix, you'll get a UUID error every time a program launches.


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: kd-hackin on July 13, 2008, 09:49:43 AM
audio is 268, patched with patcher"taruga" then deleted alcinject and loaded hdaenabler.  then wrote efi strings, deleted hdaenabler and lose sound


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: sWORDs on July 13, 2008, 10:50:55 AM
audio is 268, patched with patcher"taruga" then deleted alcinject and loaded hdaenabler.  then wrote efi strings, deleted hdaenabler and lose sound
EFI Studio does not create correct audio hex, besides that, using devicestrings for audio is pointless if your codec and pinout isn't in applehda.


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: kd-hackin on July 13, 2008, 12:51:21 PM
audio is 268, patched with patcher"taruga" then deleted alcinject and loaded hdaenabler.  then wrote efi strings, deleted hdaenabler and lose sound
EFI Studio does not create correct audio hex, besides that, using devicestrings for audio is pointless if your codec and pinout isn't in applehda.
what info is the patcher changing in the hda kext then?  i thought the efi string was to replace the injector, not the patched hda kext, is 268 not supported? don't really understand what you are saying? do i need to input some info from my linux dump to make the efi string correctly?  Please help thanks
kev


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: poldi on July 16, 2008, 07:29:10 PM
Hello netkas,

nice thing thi EFI studio!! But unfortunately it does not work for me :-((.

Here is what i did:

-installed Leo4all Version 2 (because with this my ASUS 8600 GT 512 MB runs with drivers from installation DVD)
- tested QE/CI with the onDVD drivers -> worked!
- then updated to 10.5.3 -> QE/CI has gone as expected.
- removed of course nvinject.kext, natit was not installed.
- tried both EFI string from EFI studio and generated myself the string with instructions of zeph's wiki page -> QE / CI did NOT   come back
- i installed EFI v8 from within EFI Studio and restarted system with -f -> no success :-(

I did not update the kernel, so i am still on default speedstep 9.2.0

the only thing i have is res change, but nothing more.
- I replaced prior the AppleSMBios to get rid of the "about this mac" crash. I believe this cannot be the culprit.
- 10.5.4 i did not try anymore, since i lost after that my docking bar and the fix by rogue did not change the situation.

The strange thing is, after adding MY EFI string to boot.plist the sys profiler showed my ASUS 8600 GT as 256 MB version?!??

Maybe u or someone else have a tipp?? I attached my string to this post.

Can somebody try that and report?

Still thanks very much for the good work!

cheers


 



 


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: kd-hackin on July 17, 2008, 06:02:06 AM
Hello netkas,

nice thing thi EFI studio!! But unfortunately it does not work for me :-((.

Here is what i did:

-installed Leo4all Version 2 (because with this my ASUS 8600 GT 512 MB runs with drivers from installation DVD)
- tested QE/CI with the onDVD drivers -> worked!
- then updated to 10.5.3 -> QE/CI has gone as expected.
- removed of course nvinject.kext, natit was not installed.
- tried both EFI string from EFI studio and generated myself the string with instructions of zeph's wiki page -> QE / CI did NOT   come back
- i installed EFI v8 from within EFI Studio and restarted system with -f -> no success :-(

I did not update the kernel, so i am still on default speedstep 9.2.0

the only thing i have is res change, but nothing more.
- I replaced prior the AppleSMBios to get rid of the "about this mac" crash. I believe this cannot be the culprit.
- 10.5.4 i did not try anymore, since i lost after that my docking bar and the fix by rogue did not change the situation.

The strange thing is, after adding MY EFI string to boot.plist the sys profiler showed my ASUS 8600 GT as 256 MB version?!??

Maybe u or someone else have a tipp?? I attached my string to this post.

Can somebody try that and report?

Still thanks very much for the good work!

cheers


 to make sure the efi string took, just look at about this mac and see what the rom says, you lost qe/ci during the upgrade nothing to do with efi strings.  To get back qe/ci open pacifist from applications, then open the nvinstaller package, and authorize root, then reinstall only the needed kext from pacifist and all video will be back



 


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: websrvr on July 22, 2008, 11:16:08 AM
I believe a lot of the issues could be resolved if the source for natit and gfxutil was available to help you figure things out.

The problem with that is netkas isn't making the sources available so you have to rely on him figure it out for you.

Personally I dread the though of relying on netkas to resolve things in a timely manner, the ATI DVI issue is still unresolved for more than a year now and as he stated, he has no intentions of fixing it so until it is released this will never be resolved.


Title: Re: GFXUtil News & Announcements
Post by: websrvr on July 22, 2008, 11:44:02 AM
Quote
Try these paths: Acpi(PNP0A03,0)/Pci(0x1e,0)/Pci(0,0)/Pci(0,0) or Acpi(PNP0A03,0)/Pci(0x1e,0)/Pci(0,0)

efi shothand notation reference:
http://forum.netkas.org/index.php/topic,64.msg851.html#msg851

I tried using the latest version of gfxutil (0.6b) but it kept crashing using the device paths you suggested. So, I tired the two you gave as examples in the first post. The one which begins "PciRoot(0x0)/P" works and produces a hex output file. The other example, which looks like the two you suggested I try, failed with the following error:

Quote
bash-3.2# ./gfxutil -v -s -n -i xml -o hex ./timeMachine.plist ./timeMachine.hex
GFX Data: filesize=56
GFX Data: numofblocks=1

 Header: blocksize=44
 Header: records=1
UnpackDevicePath: Probably a bogus device path
Assertion failed: (UnpackDevPath != NULL), function ConvertDevicePathToText, file /Users/fox/Desktop/Projects/gfxutil/efidevp.c, line 1039.
Abort trap
bash-3.2#

Both of the strings you suggested for me failed with the same error.

I have attached the input ./timeMachine.plist file. Please tell me if I am using gfxutil incorrectly or the input plist file is bad.

Code:
void * ConvertDevicePathToText(int a1, char a2, char a3)
{
  void *v3;
  int v4;
  void *v5;
  void *v6;
  int v7;
  int v8 = ' ';
  int v9 = ' ';
  int v10 = ' ';
  int v11;
  int v12;
  void *v13;
  void *v15;
  size_t v16;
  char v17;
  char v18;
  void *v19;

  v3 = 0;
  v4 = a1;
  v17 = a2;
  v18 = a3;
  if ( a1 )
  {
    v5 = calloc(0x1000u, 1u);
    v15 = UnpackDevicePath(v4);
    v6 = v15;
    v19 = v15;
    if ( v15 )
    {
      while ( 1 )
      {
        v12 = *(_BYTE *)v6 & 0x7F;
        if ( v12 == 127 )
        {
          if ( *((_BYTE *)v6 + 1) == -1 )
            break;
        }
        v11 = 0;
        v10 = 28772;
        while ( *(_DWORD *)v10 )
        {
          if ( v12 == *(_BYTE *)(v10 - 4) && *((_BYTE *)v6 + 1) == *(_BYTE *)(v10 - 3) )
          {
            v9 = *(_DWORD *)&stru_7064[v11].anonymous_0;
            if ( v9 )
              goto LABEL_12;
            break;
          }
          ++v11;
          v10 += 8;
        }
        v9 = 21482;
LABEL_12:
        if ( *(_BYTE *)v5 )
        {
          if ( v9 != 21466 )
          {
            if ( *((_BYTE *)v5 + strlen((const char *)v5) - 1) != 44 )
              CatPrintf((int)v5, 28399);
          }
        }
        ((int (__cdecl *)(void *, void *, _DWORD, _DWORD))v9)(v5, v6, v17, v18);
        v6 = (char *)v6 + ((*((_BYTE *)v6 + 3) << 8) | *((_BYTE *)v6 + 2));
      }
      free(v19);
      v16 = strlen((const char *)v5);
      v13 = realloc(v5, v16 + 1);
      v3 = v13;
      if ( v13 )
        goto LABEL_22;
      v8 = 27821;
      v7 = 829;
    }
    else
    {
      v8 = 28377;
      v7 = 787;
    }
    __assert_rtn("ConvertDevicePathToText", "/Users/fox/Desktop/Projects/gfxutil/efidevp.c", v7, (const char *)v8);
LABEL_22:
    *((_BYTE *)v3 + strlen((const char *)v13)) = 0;
  }
  return v3;
}


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: fmac on July 22, 2008, 06:00:00 PM
Hello netkas,

nice thing thi EFI studio!! But unfortunately it does not work for me :-((.

Here is what i did:

-installed Leo4all Version 2 (because with this my ASUS 8600 GT 512 MB runs with drivers from installation DVD)
- tested QE/CI with the onDVD drivers -> worked!
- then updated to 10.5.3 -> QE/CI has gone as expected.
- removed of course nvinject.kext, natit was not installed.
- tried both EFI string from EFI studio and generated myself the string with instructions of zeph's wiki page -> QE / CI did NOT   come back
- i installed EFI v8 from within EFI Studio and restarted system with -f -> no success :-(

I did not update the kernel, so i am still on default speedstep 9.2.0

the only thing i have is res change, but nothing more.
- I replaced prior the AppleSMBios to get rid of the "about this mac" crash. I believe this cannot be the culprit.
- 10.5.4 i did not try anymore, since i lost after that my docking bar and the fix by rogue did not change the situation.

The strange thing is, after adding MY EFI string to boot.plist the sys profiler showed my ASUS 8600 GT as 256 MB version?!??

Maybe u or someone else have a tipp?? I attached my string to this post.

Can somebody try that and report?

Still thanks very much for the good work!

cheers


 



 

Hi poldi

I am  siiting here on a hackintosh with a Foxconn 8600 GTS 256 MB, running 10.5.4
my first efi string from efistudio did not work (only 1024x768 no ci/qe)
then i found the last version of efistudio here in this forum (from 10.July)
and now is it working (all resolutions, ci, qe, and rotation)
here is the string I´m using

6e0200000100000001000000620200000d00000002010c00d041030a010000000101060000010101060000007fff04000e0000004e00560050004d0000002000000001000000000000000000000000000000000000000000000000000000220000005600520041004d002c0074006f00740061006c00730069007a006500000008000000000000101c0000006400650076006900630065005f00740079007000650000000f0000004e5644412c506172656e740e0000006e0061006d00650000000b000000646973706c617922000000400030002c006400650076006900630065005f00740079007000650000000b000000646973706c617922000000400031002c006400650076006900630065005f00740079007000650000000b000000646973706c6179100000006d006f00640065006c0000001b0000006e5669646961204765466f72636520383630302047545320000000400031002c0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d616314000000400030002c006e0061006d0065000000120000004e5644412c446973706c61792d4114000000400031002c006e0061006d0065000000120000004e5644412c446973706c61792d4220000000400030002c0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d6163100000004e00560043004100500000001800000004000000000003000c00000000000007000000001e00000072006f006d002d007200650076006900730069006f006e0000002f0000006e5669646961204765466f726365203836303020475453204f70656e474c20456e67696e65205b4546495d


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: lilos on August 17, 2008, 08:06:20 AM
Anyone know where I can find an EFI String for a ATI Radeon HD 2600 XT 256MB?
Use EFISTUDIO and select HD 2400 - 256 mb and replace Iago with Hypoprion and rename 2400 to 2600 XT.

Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>!!!!PUTYOURCORRECTPATHHERE!!!!</key>
<dict>
<key>@0,AAPL,boot-display</key>
<data>
AQAAAA==
</data>
<key>@0,ATY,EFIDisplay</key>
<string>TMDSA</string>
<key>@0,VRAM,memsize</key>
<data>
AAAAEAAAABA=
</data>
<key>@0,compatible</key>
<string>ATY,Hypoprion</string>
<key>@0,connector-type</key>
<data>
BAAAAA==
</data>
<key>@0,device_type</key>
<string>display</string>
<key>@0,display-connect-flags</key>
<data>
AAAEAA==
</data>
<key>@0,display-type</key>
<string>LCD</string>
<key>@0,name</key>
<string>ATY,Hypoprion</string>
<key>@1,VRAM,memsize</key>
<data>
AAAAAAAAABA=
</data>
<key>@1,compatible</key>
<string>ATY,Hypoprion</string>
<key>@1,connector-type</key>
<data>
AAIAAA==
</data>
<key>@1,device_type</key>
<string>display</string>
<key>@1,display-type</key>
<string>NONE</string>
<key>@1,name</key>
<string>ATY,Hypoprion</string>
<key>AAPL,EMC-Display-List</key>
<data>
AwAAAAAAAAAAAAAAAAAAAAYQAAAbkgAAAAAAAAAAAAAG
EAAAHJIAAAAAAAAAAAAABhAAACGSAAAAAAAAAAAAAA==
</data>
<key>AAPL,aux-power-connected</key>
<data>
AQAAAA==
</data>
<key>AAPL,backlight-control</key>
<data>
AAAAAA==
</data>
<key>AAPL00,blackscreen-preferences</key>
<data>
AAAACA==
</data>
<key>AAPL01,Coherency</key>
<data>
AgAAAA==
</data>
<key>AAPL01,blackscreen-preferences</key>
<data>
AAAACA==
</data>
<key>ATY,Card#</key>
<string>109-B148xx-00</string>
<key>ATY,Copyright</key>
<string>Copyright AMD Inc. All Rights Reserved. 2005-2008</string>
<key>ATY,EFICompileDate</key>
<string>Dec 18 2007</string>
<key>ATY,EFIDriverType</key>
<data>
Ag==
</data>
<key>ATY,EFIEnabledMode</key>
<data>
Ag==
</data>
<key>ATY,EFIHWInitStatus</key>
<data>
AAAAAAAAAAA=
</data>
<key>ATY,EFIOrientation</key>
<data>
AQ==
</data>
<key>ATY,EFIVersion</key>
<data>
MDEuMDAuMjM2AA==
</data>
<key>ATY,EFIVersionBios</key>
<string>113-B14801-023</string>
<key>ATY,FrameBufferOffset</key>
<data>
AAAAAIAAAAA=
</data>
<key>ATY,HWGPIO</key>
<data>
I6hIAA==
</data>
<key>ATY,IOSpaceOffset</key>
<data>
AAAAAAAAIAA=
</data>
<key>ATY,MCLK</key>
<data>
ADUMAA==
</data>
<key>ATY,MRT</key>
<string></string>
<key>ATY,MemRevisionID</key>
<data>
AQA=
</data>
<key>ATY,MemVendorID</key>
<data>
BgA=
</data>
<key>ATY,PCIConfigSpace</key>
<data>
AhCIlQcAEAAAAAADQAAAAAwAAIAAAAAABACikAAAAAAB
IAAAAAAAAAAAAABrEKYAAACgkFAAAAAAAAAAAAEAAAAA
AAAAAAAAAAAAAGsQpgABWAMGAAAAABCgEQCgjwAAEAgA
AAINAAhCAAIRAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAgAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
</data>
<key>ATY,PlatformInfo</key>
<data>
AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
</data>
<key>ATY,RefCLK</key>
<data>
jAoAAA==
</data>
<key>ATY,RegisterSpaceOffset</key>
<data>
AAAAAJCiAAA=
</data>
<key>ATY,Rom#</key>
<string>113-B1480A-236</string>
<key>ATY,SCLK</key>
<data>
YK4KAA==
</data>
<key>ATY,VendorID</key>
<data>
AhA=
</data>
<key>MVAD</key>
<data>
PlyCAP+QAMoAAAAAAAAAAHwukAYwBzAAIAAaBDgEAwAG
ABoEkAYAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
</data>
<key>device_type</key>
<string>ATY,HypoprionParent</string>
<key>model</key>
<string>ATI Radeon HD 2600 XT</string>
<key>name</key>
<string>ATY,HypoprionParent</string>
</dict>
</dict>
</plist>

I'll add 1300, 1600, 1800, 1900, 2400, 2600, 2900, 3400 and 3800 ATI cards to EFISTUDIO one off these days.

I was make saphire2600XT string from your plist with my PciRoot and only get blue screen at login.
My card working fine with Natit.What i can take from natit and put it on plsit file ?




Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: nigelbb on August 23, 2008, 10:50:27 AM

I was make saphire2600XT string from your plist with my PciRoot and only get blue screen at login.
My card working fine with Natit.What i can take from natit and put it on plsit file ?
No modern ATI card (2xxx/3xxx/4xxx) works with EFI-strings. Despite EFI-Studio offering these cards as an option the resultant strings do not work.


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: zAo on August 28, 2008, 07:12:50 PM
Did anyone try EFI strings with the Intel X4500?

I want to, but have no string :)


Title: Re: GFXUtil News & Announcements (v0.71b)
Post by: EXistation on August 28, 2008, 10:45:44 PM
Hi.
Can you add one little function to EFIStudio.
The function is make dump of devices (video, audio)

This will be a good.
And the program may to save this dump's and mail to mailbox them.
Device....
Id's  ....
dump  ....
will be good.

How I can made dump for ATI Mobilty Radeon X2300 (0x17881002) Friend's Laptop.
I have patch the x1000.kext by add id. But only what i have is qe/ci whith out of resolution.

Thank for you grate work.
My card is working by EFIStudio.

nVidia GeForce 7600 GT:

  Chipset Model:   nVidia GeForce 7600 GT
  Type:                   Display
  Bus:                   PCIe
  PCIe Lane Width:   x16
  VRAM (Total):           256 MB
  Vendor:           NVIDIA (0x10de)
  Device ID:           0x0391
  Revision ID:           0x00a1
  ROM Revision:           nVidia GeForce 7600 GT OpenGL Engine [EFI]
  Displays:
SyncMaster:
  Resolution:           1600 x 1200 @ 60 Hz
  Depth:           32-bit Color
  Core Image:           Hardware Accelerated
  Main Display:           Yes
  Mirror:           Off
  Online:           Yes
  Quartz Extreme:   Supported
  Rotation:           Supported
SyncMaster:
  Resolution:           1600 x 1200 @ 60 Hz
  Depth:           32-bit Color
  Core Image:           Hardware Accelerated
  Mirror:           Off
  Online:           Yes
  Quartz Extreme:   Supported
  Rotation:           Supported


Title: Re: GFXUtil News & Announcements (v0.71b + src)
Post by: mcmatrix on August 06, 2009, 07:46:45 AM
gfxutil sourcecode is available for download. See first post on this topic.
You are free to use it and whatever you do
please keep the result free for community ;)


Title: Re: GFXUtil News & Announcements (v0.71b + src)
Post by: kocoman on February 15, 2010, 08:14:49 AM
wow, the forums are very quiet ? its feb now but the last post was in Dec?

Referring to http://forum.netkas.org/index.php/topic,64.60.html  EFI Studio

1) Is it possible to merge EFIStudio's "hex editor" into GFXUtil?  ie: without copying and pasting..  edit the plist and the HEX decoded in ONE window..

2) Is "inside" still around to do it or plan to release his source code?

3) can he fix the com.boot.plist so that it edits the one in /Extra and not in /Library/Preferences/SystemConfig...


Title: Re: GFXUtil News & Announcements (v0.71b + src)
Post by: inukaze on November 05, 2011, 03:49:36 AM
Hi there , i really need your help plz , i try to "active" "OpenGL" on my "Mac OS X 10.6.3 - Snow Leopard" i run in ( 32 Bits Mode )

Well , the Point is , i not found any solution for my MotherBoard , Chipset & Graphics Card .

MotherBoard : Asus N2M68-AM SE2
Processor : AMD Athlon X2 Dual Core 6000+
ChipSet : nForce 630a
Graphics Card : GeForce 7025 | Memory : 512 MB ( Linux & Windows Say That )
Link to Full Image : http://goo.gl/pl59N (http://goo.gl/pl59N)

I Write my Own Guide for This Installation of "iATKOS S3 V2" >> http://goo.gl/irTrH (http://goo.gl/irTrH)

Well , someone can explain me , what thing i must do , to get "OpenGL" Working ???

i had the follow Issues / Bug / Errors :

1 - i can't take Screenshots
2 - i can't play Videos ( DVD Play Crash on Begin ) VLC play Sound , but no image
3 - How i know if OpenGL its Full Working ?
4 - How i know if the Mac OS X get 512 MB of Video ???

Thank you for any help , and sorry if this the wrong site , to this questions . again thanks for any help you can get me . to solve my problems :D


Title: Re: GFXUtil News & Announcements (v0.71b + src)
Post by: vicxtorzii on February 24, 2013, 05:17:59 PM
12.01.2007 - New version of gfxutil is out. Please test and give feedback!
06.08.2009 - gfxutil sourcecode is now available!
http://rapidshare.com/files/264264563/gfxutil_source.zip.html
You are free to use it and whatever you do please keep the result free for community

http://rapidshare.com/files/83220759/gfxutil.zip.html
Version 0.71b (LATEST)
---------------------

These 2 files download link were broken.
Could anybody share these 2 files ?

Thank you very much.


Title: Omjgpnjdxuv Moncler Uw mensen hoed kunnen presenteren mensen echt Cyladjkmcyuatgrqe
Post by: GregoriaB0k on December 20, 2013, 02:24:22 AM
De exacte mensen jasje kan instrueren iedereen vrij  cre"eren.  Moncler jassen Moncler (http://www.royalhousingsociety.com)  stoffen simplex combinatie met avontuur opstaan opmerkzaamheid  alleen op  chromatische het verschaffen van een gebruik aspect van geholpen door de meningen van onze eigen jongens en meisjes gewaad up Moncler jassen overtollige haren constante ambacht.  Moncler overhemd is er om onontkoombare feit van de speciale editie tijdens gebruik vakantie periode duur bij gebruik van de gehele jaar.  ik persoonlijk klopte en dus Moncler (http://www.royalhousingsociety.com)  geduldig gewacht voor slechts een moment, nu duwde een keer.  Een belangrijk daadwerkelijke kleding dat is zeker uitgespreid primair tussen nieuwe deze moncler moncler vest dames (http://www.royalhousingsociety.com)   is gewoon gewapende dienst trui. ...<br> tttttt


Title: Re: GFXUtil News & Announcements (v0.71b + src)
Post by: MyGuyzmo on January 16, 2017, 09:50:51 AM
Hello everybody...

Does anyone have a link for gfxutil please ?
Rapidshare seem down..

Thank's a lot