netkas.org forum

General Category => PC EFI => Topic started by: Thrawnhex on December 04, 2007, 09:35:03 PM



Title: GFX-Strings
Post by: Thrawnhex on December 04, 2007, 09:35:03 PM
Hello,

You wrote about using gfx strings with pc_efi v8, and i think I know ho to use them.

So my question is how to create or to find out those strings... I've read the comments below your post "About gfx strings" but the commandos seems not to work.

So if you could help me, I think you'll help the community to understand the whole thing even better.

*Waves to Netkas*

Thrawnhex


Title: Re: GFX-Strings
Post by: Thrawnhex on December 04, 2007, 10:39:23 PM
OK some people in irc helped me to get a solution:
http://forum.osx86scene.com/viewtopic.php?f=16&t=2520&st=0&sk=t&sd=a

"11. Type the following:
CODE: SELECT ALL
sudo ioreg -l -w0 -p IODeviceTree | grep device-prop > ~/Desktop/gfx.txt

This will dump your card details on your desktop in a file called "gfx.txt"

but my dump only contains this:

 | |  "device-properties" = {"acpi-path"="IOACPIPlane:/_SB/PCI0@0","acpi-device"="IOACPIPlatformDevice is not serializable"}

3 other people have the same "error", so what are we doing wrong?

Thanks for your help, Thrawnhex


Title: Re: GFX-Strings
Post by: netkas on December 05, 2007, 12:28:57 AM
U will get right dump only on mac, or after u wil add gfx string.


Title: Re: GFX-Strings
Post by: netkas on December 05, 2007, 12:38:51 AM
gfx string getting from appleacpiplatform
hexrays dump
Code:
  v0 = IORegistryEntry__fromPath("IODeviceTree:/efi", 0, 0, 0, 0);
  v1 = v0;
  if ( v0 )
  {
    v3 = (*(int (__cdecl **)(_DWORD, _DWORD))(*(_DWORD *)v0 + 356))(v0, "device-properties");
    gEFIDevicePathData = OSMetaClassBase__safeMetaCast(v3, OSData__metaClass);

end merginf to ioreg in

function AppleACPIPlatformExpert::mergeEFIProperties(IORegistryEntry*, OSDictionary*)


Title: Re: GFX-Strings
Post by: vecchio on December 06, 2007, 01:41:49 AM
Hi netkas,

first off, of course, congrats on the achievements.

Now, onto business.  FYI I am an embedded programmer who lives on os x (iMac) at home and linux at work. I'd like to help out, but I don't get what you are referring to here...

I figured you were maybe talking about patching AppleACPIPlatform.kext, but I don't find it on: http://www.opensource.apple.com/darwinsource/10.5/, but perhaps IOACPIFamilly-3 which has a  AppleACPIPlatformExpert file??

And then maybe you are talking about running this patched code somehow, somewhere... in the machine which has the graphics card we are trying to profile...  it's all very vague for someone new to this particular subject. Can you elaborate, maybe point to concepts and articles I should wikipedia or google?

edit: I see hex-rays decompiler is used to get code out of non-open source appleacpiplatform kext... (which explains v1, v2) I thought this was really really crappy code, actually knew someone who coded like this. anyways... getting closer, but still need some more pointers.

I want to help, but having trouble getting started.


Title: Re: GFX-Strings
Post by: bob on December 10, 2007, 06:59:00 AM
MacBook Pro 17" Ati X1600 256mb

ATI Radeon X1600:

  Chipset Model:   ATY,RadeonX1600
  Type:   Display
  Bus:   PCIe
  PCIe Lane Width:   x16
  VRAM (Total):   256 MB
  Vendor:   ATI (0x1002)
  Device ID:   0x71c5
  Revision ID:   0x0000
  ROM Revision:   113-xxxxxx-086
  EFI Driver Version:   01.00.086
  Displays:
Color LCD:
  Display Type:   LCD
  Resolution:   1680 x 1050
  Depth:   32-bit Color
  Built-In:   Yes
  Core Image:   Hardware Accelerated
  Main Display:   Yes
  Mirror:   Off
  Online:   Yes
  Quartz Extreme:   Supported
Display Connector:
  Status:   No display connected



    | |   "device-properties" = <9d0f00000100000002000000e40e00003c00000002010c00d041030a000000000101060000010101060000007fff040014000000400030002c006e0061006d00650000000d0000004154592c576f726d7922000000400030002c006400650076006900630065005f00740079007000650000000b000000646973706c617920000000400030002c0063006f006d00700061007400690062006c00650000000d0000004154592c576f726d7914000000400031002c006e0061006d00650000000d0000004154592c576f726d7922000000400031002c006400650076006900630065005f00740079007000650000000b000000646973706c617920000000400031002c0063006f006d00700061007400690062006c00650000000d0000004154592c576f726d792a0000004100540059002c0050004300490043006f006e00660069006700530070006100630065000000040100000210c571070010000000000340000000080000800130000000003098000000000000000000000000000000006b1080000000feff5000000000000000000100000000000000000000000000006b108000015802060000000010801100a00f2c0110080000010d00004200011100000000000000000000000000000000000000000500800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000300000004100540059002c004600720061006d0065004200750066006600650072004f006600660073006500740000000800000080000000280000004100540059002c0049004f00530070006100630065004f006600660073006500740000000800000000003000340000004100540059002c0052006500670069007300740065007200530070006100630065004f006600660073006500740000000800000098300000260000004100540059002c005600520041004d002c004d0065006d00530069007a006500000008000000000100001a0000004100540059002c0052006500660043004c004b000000080000008c0a0000160000004100540059002c00530043004c004b00000008000000c0c20400160000004100540059002c004d0043004c004b00000008000000e0930400220000004100540059002c00450046004900560065007200730069006f006e0000000e00000030312e30302e303836002a0000004100540059002c0045004600490043006f006d00700069006c006500440061007400650000000f0000004d61722032372032303036160000004100540059002c0052006f006d0023000000120000003131332d7878787878782d303836180000004100540059002c00430061007200640023000000110000003130392d7878787878782d3030200000004100540059002c0043006f007000790072006900670068007400000028000000436f707972696768742041544920546563686e6f6c6f6769657320496e632e20323030351e0000004100540059002c00560065006e0064006f0072004900440000000600000002101e0000004100540059002c0044006500760069006300650049004400000006000000c5711a0000004100540059002c00480057004700500049004f00000008000000211000000e0000006e0061006d0065000000130000004154592c576f726d79506172656e741c0000006400650076006900630065005f0074007900700065000000130000004154592c576f726d79506172656e74100000006d006f00640065006c000000130000004154592c526164656f6e5831363030260000004100540059002c0050006c006100740066006f0072006d0049006e0066006f0000008400000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002c0000004100540059002c004d0065006d00560065006e0064006f00720049004400460075006c006c0000000800000001ffffff140000004100540059002c004d00520054000000140100007000000000007f006a000080100000006b00008010000000ffffffff020000006a000080000000006b00008000000000080000801240000a7000000000007f0068000080000100006900008000010000ffffffff0200000060000080fe2f0f02ffffffff0200000060000080fe2f0f12ffffffff0200000068000080800100006900008080010000680000808000000069000080800000007000000000007f00080000801240000a760000800000020076000080884001007600008073051100ffffffff1400000076000080730401007600008073040300760000807304030076000080730403007600008073041300080000801240008a0a0000803b3b1f0060000080fe3f0f12e000008073040000240000004100540059002c004d0065006d00560065006e0064006f007200490044000000060000000100180000004100410050004c00300030002c005400310000000800000000000000180000004100410050004c00300030002c005400320000000800000001000000180000004100410050004c00300030002c0054003300000008000000c8000000180000004100410050004c00300030002c0054003400000008000000c8000000180000004100410050004c00300030002c005400350000000800000001000000180000004100410050004c00300030002c005400360000000800000000000000180000004100410050004c00300030002c005400370000000800000090010000360000004100410050004c00300030002c0049006e007600650072007400650072004600720065007100750065006e006300790000000800000008520000240000004100410050004c00300030002c004c0069006e006b00540079007000650000000800000000000000240000004100410050004c00300030002c004400750061006c004c0069006e006b00000008000000010000002a0000004100410050004c00300030002c0044006100740061004a0075007300740069006600790000000800000001000000280000004100410050004c00300030002c004c0069006e006b0046006f0072006d0061007400000008000000000000002a0000004100410050004c00300030002c0050006900780065006c0046006f0072006d006100740000000800000000000000240000004100410050004c00300030002c0049006e0076006500720074006500720000000800000000000000200000004100410050004c00300030002c0044006900740068006500720000000800000000000000320000004100410050004c00300030002c0049006e00760065007200740065007200430075007200720065006e007400000008000000000000000e0000004d005600410044000000440000003e5c8200ff9000ebfb5f8200ff9000f17c2e90063007300020001a043804030006001a049006000012205805a8063800700000032303020003000003580500001e000000730061007600650064002d0063006f006e006600690067000000040100003e5c8200ff9000ebfb5f8200ff9000f17c2e90063007300020001a043804030006001a049006000012205805a8063800700000032303020003000003580500000000000001000000c8000000c80000000100000000000000900100000852000000400606110000003a0700000600000007000000007f980100c3ec038877e83e09813e000200010001000100007f9801007f98010100000083020000a877e83e0000000001000000c8000000c800000001000000000000009001000008520000ff040606010000009e020000020000000b000000010000008040e6038440e60309813e000200010001000100c440e6030100000001000000c040e603c440e6032e000000400030002c0064006900730070006c00610079002d006400750061006c002d006c0069006e006b00000008000000020000002e000000400030002c0064006900730070006c00610079002d006c0069006e006b002d0074007900700065000000080000000000000040000000400030002c0064006900730070006c00610079002d0064006100740061002d006a0075007300740069006600690063006100740069006f006e000000080000000000000038000000400030002c0064006900730070006c00610079002d006400690074006800650072002d0073007500700070006f0072007400000008000000000000002c000000400030002c0069006e007600650072007400650072002d00630075007200720065006e007400000008000000000000002c000000400030002c0064006900730070006c00610079002d0069006e007600650072007400650072000000080000000200000030000000400030002c006200610063006b006c0069006700680074002d00500057004d002d0066007200650071000000080000000852000048000000400030002c0064006900730070006c00610079002d0069006e007600650072007400650072002d00640065006600610075006c0074002d006300790063006c006500000005000000ff38000000400030002c0064006900730070006c00610079002d0070006f007700650072002d00730065007100750065006e0063006500000034000000000000000000000001000000c8000000c80000000100000000000000900100000000000000000000000000000000000042000000400030002c0064006900730070006c00610079002d006c0069006e006b002d0063006f006d0070006f006e0065006e0074002d0062006900740073000000080000000600000044000000400030002c0064006900730070006c00610079002d0070006900780065006c002d0063006f006d0070006f006e0065006e0074002d0062006900740073000000080000000600000036000000400030002c0064006900730070006c00610079002d0063006f006e006e006500630074002d0066006c006100670073000000080000000000000028000000400030002c004100540059002c0045004600490044006900730070006c00610079000000080000004c564453ad0000000300000002010c00d041030a0000000001010600001b7fff040028000000500069006e0043006f006e00660069006700750072006100740069006f006e00730000001c00000022e0010112e1af9021e1179031e0810123f0451132c0c511180000006c00610079006f00750074002d006900640000000800000004000000260000004d006100780069006d0075006d0043006f006400650063004700610069006e0000000500000075>
    | |   "device-properties" = {"acpi-path"="IOACPIPlane:/_SB/PCI0@0","acpi-device"="IOACPIPlatformDevice is not serializable"}


Title: Re: GFX-Strings
Post by: bob on December 10, 2007, 07:02:51 AM
Can some one share the strings for a GF 8600 GT 256 on a MacPro? Also can be good GF 7900 GT 512 (i have one too) ...
I tested using the strings from the iMac 7600GT and i got video with the 7900 but with artifacts and no mouse cursor :(


Title: Re: GFX-Strings
Post by: lebidou on December 10, 2007, 10:27:22 AM
bob,
could you send us the GeForce 7600 you got or a link to it, please ?
Thanx


Title: Re: GFX-Strings
Post by: bob on December 10, 2007, 02:15:42 PM
iMac6,1 24″ 2.16GHz, 7600GT (by sanXp)

    | |   "device-properties" = <f20900000100000003000000db0800002a00000002010c00d041030a000000000101060000010101060000007fff04001e000000730061007600650064002d0063006f006e006600690067000000040100000a082e0201040000700010069c650103027f8007b004200830005000dd04030009000000f03c7440000000000100000000000000000001000000000000ff02800000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e00000072006f006d002d007200650076006900730069006f006e00000008000000333032321c0000006400650076006900630065005f00740079007000650000000f0000004e5644412c506172656e741e000000730075006200730079007300740065006d002d006900640000000800000001040000200000004e005600440041002c0046006500610074007500720065007300000008000000ef020104100000006d006f00640065006c0000001a0000004e5649444941204765466f726365203736303020475414000000400030002c006e0061006d0065000000120000004e5644412c446973706c61792d4122000000400030002c006400650076006900630065005f00740079007000650000000b000000646973706c617920000000400030002c0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d616314000000400031002c006e0061006d0065000000120000004e5644412c446973706c61792d4222000000400031002c006400650076006900630065005f00740079007000650000000b000000646973706c617920000000400031002c0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d61631c000000400030002c006200750069006c0074002d0069006e0000000400000014000000400030002c00450044004900440000008400000000ffffffffffff000610659c0101010100100103803420780ac774a3574a9d2511505400001001010101010101010101010101010101f03c80a070b02d4030203600d62c1100001e000000010006103011010000000000000a20000000fe004c4d3234307775322d734c4131000000fc00436f6c6f72204c43440a202020005722000000400031002c0064006900730070006c00610079002d00630066006700000008000000ffff360124000000400031002c00630061006e002d0068006f0074002d0070006c0075006700000004000000100000004e00560043004100500000001800000004000101080002000d0000000000010a00000000360000004100410050004c002c006100750078002d0070006f007700650072002d0063006f006e006e006500630074006500640000000800000001000000180000004100410050004c00300030002c005400310000000800000000000000180000004100410050004c00300030002c005400320000000800000001000000180000004100410050004c00300030002c0054003300000008000000c8000000180000004100410050004c00300030002c0054003400000008000000c8000000180000004100410050004c00300030002c005400350000000800000001000000180000004100410050004c00300030002c005400360000000800000000000000180000004100410050004c00300030002c005400370000000800000090010000360000004100410050004c00300030002c0049006e007600650072007400650072004600720065007100750065006e006300790000000800000008520000240000004100410050004c00300030002c004c0069006e006b00540079007000650000000800000000000000240000004100410050004c00300030002c004400750061006c004c0069006e006b00000008000000010000002a0000004100410050004c00300030002c0044006100740061004a0075007300740069006600790000000800000001000000280000004100410050004c00300030002c004c0069006e006b0046006f0072006d0061007400000008000000010000002a0000004100410050004c00300030002c0050006900780065006c0046006f0072006d006100740000000800000001000000240000004100410050004c00300030002c0049006e0076006500720074006500720000000800000001000000200000004100410050004c00300030002c0044006900740068006500720000000800000000000000320000004100410050004c00300030002c0049006e00760065007200740065007200430075007200720065006e00740000000800000000000000320000004100410050004c002c006200610063006b006c0069006700680074002d0063006f006e00740072006f006c000000080000000100000038000000400030002c007500730065002d006200610063006b006c0069006700680074002d0062006c0061006e006b0069006e0067000000040000002e000000400030002c006200610063006b006c0069006700680074002d0063006f006e00740072006f006c00000008000000010000001e000000400030002c00700061006e0065006c0069006e0066006f000000080000000064150022000000400030002c0064006900730070006c00610079002d00630066006700000008000000030350001c000000400030002c00660062006f0066006600730065007400000008000000000002002e000000400030002c004100410050004c002c0062006f006f0074002d0064006900730070006c006100790000000400000014000000400030002c004e0056004d00540000005c0000000a037f200610659c8007b0042008b007d0070000dd04b304b9040000005f4c0900000000010000ff00000000000000000000000000000000000000000000000000000000ffff0000000000000000000001000000000000005a0000000100000002010c00d041030a0000000001010600001c0101060000007fff04002e00000061006e00740065006e006e0061002d00720078002d006400690076006500720073006900740079000000080000004d61696eb10000000300000002010c00d041030a0000000001010600001b7fff0400260000004d006100780069006d0075006d0043006f006400650063004700610069006e000000050000003028000000500069006e0043006f006e00660069006700750072006100740069006f006e00730000002000000050402b0120308b01400110901001a0904101109060e04b0130e0cb01180000006c00610079006f00750074002d006900640000000800000010000000>
    | |   "device-properties" = {"acpi-path"="IOACPIPlane:/_SB/PCI0@0","acpi-device"="IOACPIPlatformDevice is not serializable"}


Title: Re: GFX-Strings
Post by: bob on December 10, 2007, 02:22:43 PM
MacBook X3100 (by theslug)

    | |   "device-properties" = <2a0b00000100000003000000bc0900002900000002010c00d041030a000000000101060000027fff040020000000730061007600650064002d00740069006d0069006e00670031000000a400000000100080000000000000000000000000000000000000000000000000000000000000000000000000c05f3b0400000000c05f3b0400000000c05f3b040000000000050000a0000000300000002000000020030000170000000300000006000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000001e000000730061007600650064002d0063006f006e0066006900670000000401000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000061000005f9c000000000000c05f3b04a005000000050000a00500003005000050050000370300002003000037030000230300002903000001000000000000000000000000000000020000000000000000000000640000000010008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000320000004100410050004c002c006200610063006b006c0069006700680074002d0063006f006e00740072006f006c0000000800000001000000260000004100410050004c002c004e0075006d0044006900730070006c00610079007300000008000000040000002a0000004100410050004c002c0044006900730070006c006100790043006f006e006600690067000000240000001300000000000001210000000000000041000000000000008100000000000000200000004100410050004c002c00480061007300500061006e0065006c00000008000000010000001c0000004100410050004c002c004800610073004c0069006400000008000000010000002e0000004100410050004c002c004e0075006d004600720061006d006500620075006600660065007200730000000800000002000000380000004100410050004c002c00530065006c006600520065006600720065007300680053007500700070006f00720074006500640000000800000001000000300000004100410050004c002c004200610063006b006c00690067006800740052006500730074006f007200650000000800000001000000360000004100410050004c002c006100750078002d0070006f007700650072002d0063006f006e006e006500630074006500640000000800000001000000180000004100410050004c00300031002c005400300000000800000000000000180000004100410050004c00300031002c005400310000000800000001000000180000004100410050004c00300031002c0054003200000008000000c8000000180000004100410050004c00300031002c0054003300000008000000c8000000180000004100410050004c00300031002c005400340000000800000001000000180000004100410050004c00300031002c005400350000000800000000000000180000004100410050004c00300031002c005400360000000800000090010000360000004100410050004c00300031002c0049006e007600650072007400650072004600720065007100750065006e006300790000000800000008520000240000004100410050004c00300031002c004c0069006e006b00540079007000650000000800000000000000240000004100410050004c00300031002c004400750061006c004c0069006e006b00000008000000000000002a0000004100410050004c00300031002c0044006100740061004a0075007300740069006600790000000800000001000000280000004100410050004c00300031002c004c0069006e006b0046006f0072006d0061007400000008000000000000002a0000004100410050004c00300031002c0050006900780065006c0046006f0072006d006100740000000800000000000000240000004100410050004c00300031002c0049006e0076006500720074006500720000000800000000000000200000004100410050004c00300031002c0044006900740068006500720000000800000000000000320000004100410050004c00300031002c0049006e00760065007200740065007200430075007200720065006e00740000000800000000000000380000004100410050004c00300031002c004200610063006b006c00690067006800740049006e00740065006e00730069007400790000000800000064000000300000004100410050004c00300031002c00430075007200720065006e00740044006900730070006c006100790000000800000000000000200000004100410050004c00300031002c00480065006900670068007400000008000000200300001e0000004100410050004c00300031002c0057006900640074006800000008000000000500001e0000004100410050004c00300031002c004400650070007400680000000800000020000000220000004100410050004c00300031002c0052006500660072006500730068000000080000003b000000260000004100410050004c00300031002c0049006e007400650072006c0061006300650000000800000000000000260000004100410050004c00300031002c00530074007200650074006300680065006400000008000000000000001c0000004100410050004c00300031002c00450044004900440000008400000000ffffffffffff0006105f9c0000000008100103801d12780a2f309758538b2925505400000001010101010101010101010101010101bc1b00a050201730302036001eb310000018000000010006102000000000000000000a20000000fe004c503133335758312d544c4131000000fe00436f6c6f72204c43440a20202000c22e0000004100410050004c00300031002c0049004f0044006900730070006c00610079004d006f0064006500000008000000001000801c0000004100410050004c00300031002c005000690070006500000008000000010000002a0000004100410050004c00300031002c0042006f006f00740044006900730070006c006100790000000800000001000000420000004100410050004c00300031002c0062006c00610063006b00730063007200650065006e002d0070007200650066006500720065006e0063006500730000000800000000000008420000004100410050004c00300030002c0062006c00610063006b00730063007200650065006e002d0070007200650066006500720065006e0063006500730000000800000000000008520000000100000002010c00d041030a0000000001010600001e0101060000037fff04001200000066007700740075006e00650000001c00000000000008e3e3000000000808e3e3180100004008200000bf100100000500000002010c00d041030a0000000001010600001b7fff04002200000070006c006100740066006f0072006d00460061006d0069006c00790000000500000000300000004d006100780069006d0075006d0042006f006f007400420065006500700056006f006c0075006d00650000000500000037260000004100460047004c006f00770050006f00770065007200530074006100740065000000080000000300000028000000500069006e0043006f006e00660069006700750072006100740069006f006e0073000000200000004001109050402b01410110901001a09020308b0160e04b0130e0cb01180000006c00610079006f00750074002d006900640000000800000036000000>


Title: Re: GFX-Strings
Post by: bob on December 10, 2007, 02:29:21 PM
Maybe some one of you guys can find some friends with PCI Ex cards, the most complicated to find strings but supproted by osx, like the GF 8600 GT, 7900 GT, and plug it on a another friend MacPro and get the string? :)

Can be a goood contribution!!! THANKS!!!


Title: Re: GFX-Strings
Post by: frantisheq on December 10, 2007, 03:07:24 PM
was there any 7300 on Macs? i'm on 7300LE


Title: Re: GFX-Strings
Post by: Thrawnhex on December 10, 2007, 03:10:18 PM
If I ever find a Intel Mac with any GFX-Card I'll make a dump.. the only thing is that were i live most of the macs are G4-5 with PPC Prozessors...

And thanks for the 7600gt String ;)

Thrawnhex


Title: Re: GFX-Strings
Post by: bob on December 10, 2007, 03:37:53 PM
Thanks Thrawnhex, im hoping to get my 8600 gt working... :)

frantisheq, there's a Mac Pro dump with Nvidia 7300 GT (by SEEYOU) that maybe works for you... here ya go:

    | |   "device-properties" = <d405000001000000020000001b0500001600000002010c00d041030a000000000101060000040101060000007fff04001e000000730061007600650064002d0063006f006e006600690067000000040100000a082e0200040000410000000000000002062003580220042800a8007402010005000000a00f0000000000000000000000000000000000000000000000ff0280000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e00000072006f006d002d007200650076006900730069006f006e00000008000000333031311c0000006400650076006900630065005f00740079007000650000000f0000004e5644412c506172656e741e000000730075006200730079007300740065006d002d006900640000000800000000040000200000004e005600440041002c0046006500610074007500720065007300000008000000ef020004100000006d006f00640065006c0000001a0000004e5649444941204765466f726365203733303020475414000000400030002c006e0061006d0065000000120000004e5644412c446973706c61792d4122000000400030002c006400650076006900630065005f00740079007000650000000b000000646973706c617920000000400030002c0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d616314000000400031002c006e0061006d0065000000120000004e5644412c446973706c61792d4222000000400031002c006400650076006900630065005f00740079007000650000000b000000646973706c617920000000400031002c0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d616322000000400030002c0064006900730070006c00610079002d00630066006700000008000000ffff360024000000400030002c00630061006e002d0068006f0074002d0070006c007500670000000400000024000000400031002c00630061006e002d0068006f0074002d0070006c0075006700000004000000100000004e00560043004100500000001800000004000100000003000c0000000000000a00000000360000004100410050004c002c006100750078002d0070006f007700650072002d0063006f006e006e006500630074006500640000000800000001000000320000004100410050004c002c006200610063006b006c0069006700680074002d0063006f006e00740072006f006c000000080000000000000022000000400031002c0064006900730070006c00610079002d0063006600670000000800000000ff3e011c000000400031002c00660062006f0066006600730065007400000008000000000002002e000000400031002c004100410050004c002c0062006f006f0074002d0064006900730070006c006100790000000400000014000000400031002c004e0056004d00540000005c0000000a00ff20000000002003580200044003900300006e0259025c0200004021470200000000000000ff00000000000000000000000000000000000000000000000000000000ffff000000000000000000000100000000000000ad0000000300000002010c00d041030a0000000001010600001b7fff0400260000004d006100780069006d0075006d0043006f006400650063004700610069006e000000050000004028000000500069006e0043006f006e00660069006700750072006100740069006f006e00730000001c0000005041010140402102103181013001109060e1450120e1c501180000006c00610079006f00750074002d00690064000000080000000c000000>
    | |   "device-properties" = {"acpi-path"="IOACPIPlane:/_SB/PCI0@0","acpi-device"="IOACPIPlatformDevice is not serializable"}


Title: Re: GFX-Strings
Post by: Thrawnhex on December 10, 2007, 04:53:07 PM
Mhh.. i just tried the string 2 times... but for me it does not completely work... means i have no cursor..

I'm on Geforce 7600gt/256 MB/Manufacturer: XFX... If somebody has it working please write in here!

Dudes, lets find a solution for this!

Thrawnhex


Title: Re: GFX-Strings
Post by: bob on December 10, 2007, 05:05:11 PM
Hmmm, Thrawnhex i thought it was my card.. i tested the 7600 string with a GF 7900 GT 512mb, and i got the same problem, no cursor!
I'm starting to thing that that string contains more than the GFX card things and thats why some work some not... If you open IORegistryExplorer in a mac, then set it to show iodevice tree, that string is under efi tree and there are also few other strings under it... can be good if some hacker can get this hacked to specify any card....


Title: Re: GFX-Strings
Post by: frantisheq on December 10, 2007, 06:40:12 PM
Thanks Thrawnhex, im hoping to get my 8600 gt working... :)

frantisheq, there's a Mac Pro dump with Nvidia 7300 GT (by SEEYOU) that maybe works for you... here ya go:

    | |   "device-properties" = <d405000001000000020000001b0500001600000002010c00d041030a000000000101060000040101060000007fff04001e000000730061007600650064002d0063006f006e006600690067000000040100000a082e0200040000410000000000000002062003580220042800a8007402010005000000a00f0000000000000000000000000000000000000000000000ff0280000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e00000072006f006d002d007200650076006900730069006f006e00000008000000333031311c0000006400650076006900630065005f00740079007000650000000f0000004e5644412c506172656e741e000000730075006200730079007300740065006d002d006900640000000800000000040000200000004e005600440041002c0046006500610074007500720065007300000008000000ef020004100000006d006f00640065006c0000001a0000004e5649444941204765466f726365203733303020475414000000400030002c006e0061006d0065000000120000004e5644412c446973706c61792d4122000000400030002c006400650076006900630065005f00740079007000650000000b000000646973706c617920000000400030002c0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d616314000000400031002c006e0061006d0065000000120000004e5644412c446973706c61792d4222000000400031002c006400650076006900630065005f00740079007000650000000b000000646973706c617920000000400031002c0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d616322000000400030002c0064006900730070006c00610079002d00630066006700000008000000ffff360024000000400030002c00630061006e002d0068006f0074002d0070006c007500670000000400000024000000400031002c00630061006e002d0068006f0074002d0070006c0075006700000004000000100000004e00560043004100500000001800000004000100000003000c0000000000000a00000000360000004100410050004c002c006100750078002d0070006f007700650072002d0063006f006e006e006500630074006500640000000800000001000000320000004100410050004c002c006200610063006b006c0069006700680074002d0063006f006e00740072006f006c000000080000000000000022000000400031002c0064006900730070006c00610079002d0063006600670000000800000000ff3e011c000000400031002c00660062006f0066006600730065007400000008000000000002002e000000400031002c004100410050004c002c0062006f006f0074002d0064006900730070006c006100790000000400000014000000400031002c004e0056004d00540000005c0000000a00ff20000000002003580200044003900300006e0259025c0200004021470200000000000000ff00000000000000000000000000000000000000000000000000000000ffff000000000000000000000100000000000000ad0000000300000002010c00d041030a0000000001010600001b7fff0400260000004d006100780069006d0075006d0043006f006400650063004700610069006e000000050000004028000000500069006e0043006f006e00660069006700750072006100740069006f006e00730000001c0000005041010140402102103181013001109060e1450120e1c501180000006c00610079006f00750074002d00690064000000080000000c000000>
    | |   "device-properties" = {"acpi-path"="IOACPIPlane:/_SB/PCI0@0","acpi-device"="IOACPIPlatformDevice is not serializable"}


tried but no go. thx anyway


Title: Re: GFX-Strings
Post by: lebidou on December 10, 2007, 07:41:05 PM
I tried the 7600GT string on a 7600GO (on a fujistu-siemens laptop)
NVDANV40HAL.kext loaded (got the nvdanv40hal recognized and registered message in verbose mode) but I got black screen.
Thanks to some sounds I could "hear" the system was running anyway.
I didn't tried to connect an external monitor, I did not have one with me.

I was wondering if there were any EDID or NVCAP value included in that long string that could be modified to make it work. But it seems to be more complicated...

Thanx for all everybody


Title: Re: GFX-Strings
Post by: 0xdeadbeef on December 10, 2007, 08:20:14 PM
Anyone able to get their hands on a dump from an iMac with Radeon HD2400?


Title: Re: GFX-Strings
Post by: Thrawnhex on December 10, 2007, 09:47:22 PM
@bob: how can i open this IORegistryExplorer? I used spotlight but nothing was found...


Title: Re: GFX-Strings
Post by: frantisheq on December 10, 2007, 10:19:29 PM
@bob: how can i open this IORegistryExplorer? I used spotlight but nothing was found...

thrawnex you have to install XCode and then /Developer/Applications/Utilities/IORegistryExplorer


Title: Re: GFX-Strings
Post by: Thrawnhex on December 10, 2007, 10:51:11 PM
Ah thanks... i've searched with google and saw it is only for developers, but it's at the leo disk, too

Thrawnhex


Title: Re: GFX-Strings
Post by: nightcbis on December 11, 2007, 09:52:47 AM
iMac6,1 24″ 2.16GHz, 7600GT (by sanXp)

    | |   "device-properties" = <f20900000100000003000000db0800002a00000002010c00d041030a000000000101060000010101060000007fff04001e000000730061007600650064002d0063006f006e006600690067000000040100000a082e0201040000700010069c650103027f8007b004200830005000dd04030009000000f03c7440000000000100000000000000000001000000000000ff02800000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e00000072006f006d002d007200650076006900730069006f006e00000008000000333032321c0000006400650076006900630065005f00740079007000650000000f0000004e5644412c506172656e741e000000730075006200730079007300740065006d002d006900640000000800000001040000200000004e005600440041002c0046006500610074007500720065007300000008000000ef020104100000006d006f00640065006c0000001a0000004e5649444941204765466f726365203736303020475414000000400030002c006e0061006d0065000000120000004e5644412c446973706c61792d4122000000400030002c006400650076006900630065005f00740079007000650000000b000000646973706c617920000000400030002c0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d616314000000400031002c006e0061006d0065000000120000004e5644412c446973706c61792d4222000000400031002c006400650076006900630065005f00740079007000650000000b000000646973706c617920000000400031002c0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d61631c000000400030002c006200750069006c0074002d0069006e0000000400000014000000400030002c00450044004900440000008400000000ffffffffffff000610659c0101010100100103803420780ac774a3574a9d2511505400001001010101010101010101010101010101f03c80a070b02d4030203600d62c1100001e000000010006103011010000000000000a20000000fe004c4d3234307775322d734c4131000000fc00436f6c6f72204c43440a202020005722000000400031002c0064006900730070006c00610079002d00630066006700000008000000ffff360124000000400031002c00630061006e002d0068006f0074002d0070006c0075006700000004000000100000004e00560043004100500000001800000004000101080002000d0000000000010a00000000360000004100410050004c002c006100750078002d0070006f007700650072002d0063006f006e006e006500630074006500640000000800000001000000180000004100410050004c00300030002c005400310000000800000000000000180000004100410050004c00300030002c005400320000000800000001000000180000004100410050004c00300030002c0054003300000008000000c8000000180000004100410050004c00300030002c0054003400000008000000c8000000180000004100410050004c00300030002c005400350000000800000001000000180000004100410050004c00300030002c005400360000000800000000000000180000004100410050004c00300030002c005400370000000800000090010000360000004100410050004c00300030002c0049006e007600650072007400650072004600720065007100750065006e006300790000000800000008520000240000004100410050004c00300030002c004c0069006e006b00540079007000650000000800000000000000240000004100410050004c00300030002c004400750061006c004c0069006e006b00000008000000010000002a0000004100410050004c00300030002c0044006100740061004a0075007300740069006600790000000800000001000000280000004100410050004c00300030002c004c0069006e006b0046006f0072006d0061007400000008000000010000002a0000004100410050004c00300030002c0050006900780065006c0046006f0072006d006100740000000800000001000000240000004100410050004c00300030002c0049006e0076006500720074006500720000000800000001000000200000004100410050004c00300030002c0044006900740068006500720000000800000000000000320000004100410050004c00300030002c0049006e00760065007200740065007200430075007200720065006e00740000000800000000000000320000004100410050004c002c006200610063006b006c0069006700680074002d0063006f006e00740072006f006c000000080000000100000038000000400030002c007500730065002d006200610063006b006c0069006700680074002d0062006c0061006e006b0069006e0067000000040000002e000000400030002c006200610063006b006c0069006700680074002d0063006f006e00740072006f006c00000008000000010000001e000000400030002c00700061006e0065006c0069006e0066006f000000080000000064150022000000400030002c0064006900730070006c00610079002d00630066006700000008000000030350001c000000400030002c00660062006f0066006600730065007400000008000000000002002e000000400030002c004100410050004c002c0062006f006f0074002d0064006900730070006c006100790000000400000014000000400030002c004e0056004d00540000005c0000000a037f200610659c8007b0042008b007d0070000dd04b304b9040000005f4c0900000000010000ff00000000000000000000000000000000000000000000000000000000ffff0000000000000000000001000000000000005a0000000100000002010c00d041030a0000000001010600001c0101060000007fff04002e00000061006e00740065006e006e0061002d00720078002d006400690076006500720073006900740079000000080000004d61696eb10000000300000002010c00d041030a0000000001010600001b7fff0400260000004d006100780069006d0075006d0043006f006400650063004700610069006e000000050000003028000000500069006e0043006f006e00660069006700750072006100740069006f006e00730000002000000050402b0120308b01400110901001a0904101109060e04b0130e0cb01180000006c00610079006f00750074002d006900640000000800000010000000>
    | |   "device-properties" = {"acpi-path"="IOACPIPlane:/_SB/PCI0@0","acpi-device"="IOACPIPlatformDevice is not serializable"}

Hey guys. I just tested this with my XFX 7600GT. But it didn't work at all.
Should I use the second line too somehow? In that case how? I can't find anything about it here.

Thanks alot!


Title: Re: GFX-Strings
Post by: gotoh on December 11, 2007, 03:49:13 PM
NVCAP and EDID are contained in device-properties string.

NVCAP after 4E 00 56 00 43 00 41 00 50 00 00 00 18 00 00 00
EDID after 45 00 44 00 49 00 44

but this device-properties string contains really too many things, like display name, card name, inverter and backlight data so this is likely to work only on very few cards, especially when using laptop or iMac strings, which use integrated display and specific inverter hardware... These data are absolutely not dynamic, so it is only useful when hardware is really very close to Mac hardware, GPU and card model matching is way far from being enough. (IMHO)


Title: Re: GFX-Strings
Post by: bob on December 11, 2007, 05:31:12 PM
gotoh, Yeah i thought so thats why it doesnt work well... I think the solition is some one at a store or something get some cards, find a MacPro, plug the cards there and get the strings :)


Title: Re: GFX-Strings
Post by: gotoh on December 11, 2007, 05:53:25 PM
what use would it be ? The card would not work in MacPro if it does not have EFI ROM or module loaded...
Also, as it uses "saved-config" and "display-cfg" data, as well as display EDID, the string you use may conflict when using a different kind of display, and different kind of outputs.
Really, I think titan method (and clones) for ATI or NVIDIA cards is still much better as :
1/ it is at least able to determine correct device according to deviceID
2/ has ability to detect correctly (most of the time) at least one display
3/ has very few forced settings which can conflict with different hardware (the most annoying is NVCAP for NVIDIA cards) but ATI cards don't even have something similar. ATI cards just require a tolerant NDRV provided by Apple/ATI...


Title: Re: GFX-Strings
Post by: Thrawnhex on December 11, 2007, 09:40:06 PM
But you forgot the coolness factor!

 If it's possible to get my pc as close as possible to a mac, I'll do this... So if you don't want this it's ok..
By the way: I put the String in a Hex-Editor and got some kind of text out... It'll be easier to handle this... There are some letters not converted correctly, but i think this is another problem.

http://www.mediafire.com/?1jgyz115wpw (http://www.mediafire.com/?1jgyz115wpw)


Title: Re: GFX-Strings
Post by: netkas on December 11, 2007, 09:55:09 PM
Hi netkas,

first off, of course, congrats on the achievements.

Now, onto business.  FYI I am an embedded programmer who lives on os x (iMac) at home and linux at work. I'd like to help out, but I don't get what you are referring to here...

I figured you were maybe talking about patching AppleACPIPlatform.kext, but I don't find it on: http://www.opensource.apple.com/darwinsource/10.5/, but perhaps IOACPIFamilly-3 which has a  AppleACPIPlatformExpert file??

And then maybe you are talking about running this patched code somehow, somewhere... in the machine which has the graphics card we are trying to profile...  it's all very vague for someone new to this particular subject. Can you elaborate, maybe point to concepts and articles I should wikipedia or google?

edit: I see hex-rays decompiler is used to get code out of non-open source appleacpiplatform kext... (which explains v1, v2) I thought this was really really crappy code, actually knew someone who coded like this. anyways... getting closer, but still need some more pointers.

I want to help, but having trouble getting started.

yeah, appleacpliplatform is a closed source , so we have to use decompilers to know how it works.
It parses device-properties, then merges values to device tree.


Title: Re: GFX-Strings
Post by: lebidou on December 11, 2007, 10:16:16 PM
Thanks to the gotoh info, I could change the EDID and NVCAP in the 7600GT device properties string to mine (7600GO).
And it works !

QE/CI are enabled, I did not noticed neither performance improvement nor slow down.
Everything is exactly the same as before, exept that system profiler knows my card as a 7600GT.

What I did :
Got the NVCAP string from the Info.plist file in NVinjectGO.kext and copy/paste
Got the EDID string thanks to SwitchResX and coy/paste

Then copy paste the string in com.apple.Boot.plist, removed NVinjectGO.kext and restart.
And "voilà" !

Thanx everybody !


Title: Re: GFX-Strings
Post by: netkas on December 11, 2007, 11:24:08 PM
post your string here :P


Title: Re: GFX-Strings
Post by: time ed on December 12, 2007, 12:35:44 AM
What I did :
Got the NVCAP string from the Info.plist file in NVinjectGO.kext and copy/paste
Got the EDID string thanks to SwitchResX and coy/paste

Pulled NVCAP from IOregdump. Or does it have to come from NVinject? NVinject info.plist has what looks like a placeholder entry.

Got the EDID from Switchres. That's an awfully long byte string.

Is there a tool you used to edit? Or did you copy/paste in vi?


Title: Re: GFX-Strings
Post by: nightcbis on December 12, 2007, 04:56:24 AM
It seams like you guys have found something here. Can this be a solution for uss to activate any card that NVinject, Titan and Natit supports?

lebidou: Please explain exaclty how you did it. Thanks alot!


Title: Re: GFX-Strings
Post by: Thrawnhex on December 12, 2007, 07:38:43 AM
@lebidou: You are at a laptop, right? Cause I don't think this'll work on PC's with external Display, because this Dump was made on an Imac... But I'll test this "solution" in a few hours.
And BTW: You can change to 7600GO, too... try to replace
Code:
4E 56 49 44 49 41 20 47 65 46 6F 72 63 65 20 37 36 30 30 20 47 54
with
Code:
4E 56 49 44 49 41 20 47 65 46 6F 72 63 65 20 37
36 30 30 20 47 4F


Title: Re: GFX-Strings
Post by: djchaos82 on December 12, 2007, 08:44:04 AM
Hi,

i've got a 8800 GTS with 320MB (MSI 320MB 8800GTS T2D320E-HD OC PCIe)
so i thought that i should be able to get it running with gfx-string.


but it seems that i was wrong, when i insert the gfx-string from http://tinyurl.com/2cuaj all i get is a really distorted (pixelates,
low-res) screen.

it is still working and i can switch resolution but it has no effect,
the screen stats extremly low-res (<640).

any clue what i can do :)?

thanks in advance...

PS: Apart from thats, EFI is great, THANKS :D


Title: Re: GFX-Strings
Post by: lebidou on December 12, 2007, 09:40:14 AM
Hello, I didn't have an extarnel display yesterday to test it, I tested it today and internal display doesn't load when an external one is plugged in.
So this 'solution' is not perfect.

For those who doesn't care of it :

1//  I replaced the NVCAP value in the device properties string that's after 4E 00 56 00 43 00 41 00 50 00 00 00 18 00 00 00 (using the find utility in textedit and countig the letters, there are 30), by the one I use in the info.plist of NVinjectGO.kext.
The ioreg dump value should be the same I think, shouldn't it ?

2//  I downloaded SwitchResX to get the EDID value (wich is quite long). Then I used the find util in textedit again to find 45 00 44 00 49 00 44 and replace the iMac's EDID after it.

3// I copied the string in com.apple.Boot.plist, removed NVinjectGO.kext and restart.

My laptop is a Fujitsu siemens amilo pi 1556. So I suppose the EDID value wil change from a computer to an other more likely than the NVCAP.

Here is the string
7600G1.txt (http://www.gael-philippe.fr/7600G1.txt)


Title: Re: GFX-Strings
Post by: gotoh on December 12, 2007, 10:46:09 AM
check the rtf file :

in bold are cards' name, EDID and NVCAP...
just copy these strings in an hex editor if you want to see what it looks like in ASCII.
You can just replace with what your actual hardware requires.

Also, what probably needs to be edited is FBOFFSET depending on your card's VRAM amount. inverter and backlight info should be removed for non laptop cards (IMO). There's also a part at the end of the device-properties which has nothing to do with graphics (related to antenna so prolly airport, and codec pin config, prolly HDA audio) These strings could interfer with present physical audio and wireless setup, so I suggest to remove them too...


Title: Re: GFX-Strings
Post by: lebidou on December 12, 2007, 11:57:45 AM
I think many of us are not developpers (including me), I made my 'tip' in a completly empirical way. I don't understand anything to this too long string, even using an hex editor. Is there any way to translate it in an understandable language ?

Maybe someone could, if possible, create a kind of app that could write the right string by using datas entered by the user. I mean, some datas doesn't changes, some does... I was thinking about some choices to be done : gfx card model, laptop, not laptop, and text field for nvcap, fboffset, edid. Something like an assistant or so. As I said I'm not developper, it's just an idea.



Title: Re: GFX-Strings
Post by: 0xdeadbeef on December 12, 2007, 02:34:54 PM

Maybe someone could, if possible, create a kind of app that could write the right string by using datas entered by the user. I mean, some datas doesn't changes, some does... I was thinking about some choices to be done : gfx card model, laptop, not laptop, and text field for nvcap, fboffset, edid. Something like an assistant or so. As I said I'm not developper, it's just an idea.


This is what I'm working on now. I can already inject arbitary properties into the gfx strings:

(http://img98.imageshack.us/img98/5001/propsrx5.png)

I will get it together to arrange load/save of property strings too.


Title: Re: GFX-Strings
Post by: lebidou on December 12, 2007, 03:11:20 PM
That's a great news !

Maybe this could work out the dual display problem I got. I remember I had the same problem (internal display not working with external display plugged in) with Natit and NVinjectGO was the solution.

Anyway, I'm ready to test anything proposed.

Just more info if it could help : I'm using Leo 10.5.1 with ToH kernel, on a Fujitsu Amilo Pi 1556, my gfx card is 7600 GO (256Mo) with DVI output, on PCIe. pc_efi v8 (because of MBR)


Title: Re: GFX-Strings
Post by: Thrawnhex on December 12, 2007, 03:52:14 PM
Yes, that sounds very good! If we can help you (maybe betatesting ;) ) just ask!

Thrawnhex


Title: Re: GFX-Strings
Post by: gotoh on December 12, 2007, 04:04:01 PM
yep, don hesitate to ask for beta testers...
I have a few cards ready for testing, GF 7900GS and 7600GS, Radeon X1900GT. Also got a 8600GT but this one is hopeless...


Title: Re: GFX-Strings
Post by: frantisheq on December 12, 2007, 04:15:16 PM
7300LE here


Title: Re: GFX-Strings
Post by: time ed on December 12, 2007, 04:45:07 PM
@lebidou: You are at a laptop, right? Cause I don't think this'll work on PC's with external Display
That seems to be the case. So far I've had no luck with 7600GT DVI out to Samsung 226BW. Last try got me a nice display, but no QE/CI/resolution change. Maybe if I can get some tips on removing the laptop-specific stuff.

Also, what probably needs to be edited is FBOFFSET depending on your card's VRAM amount. inverter and backlight info should be removed for non laptop cards (IMO). There's also a part at the end of the device-properties which has nothing to do with graphics (related to antenna so prolly airport, and codec pin config, prolly HDA audio) These strings could interfer with present physical audio and wireless setup, so I suggest to remove them too...

Gotoh -- what is the byte string for FBOFFSET? I have a 256Mb card. Does it matter?

To lose the other strings you suggest removing (inverter, backlight, antenna), what is the best way to do that without corrupting the string? I'm using Hex Fiend, but if there's a better tool...

I've noticed something about these strings. So far lebidou's (up a few posts) is the only one that gotten me remotely close. That is, when I put his string in hex editor, all the ASCII is readable (he has a Philips LCD display). Its 2552 bytes. The rest I've tried are of varying byte length and unreadable past a certain point in the header.

@0xdeadbeef -- I'll try it. XFX 7600GT (256Mb), Leo 10.5.1 with vanilla kernel, pc_efi v8.


Title: Re: GFX-Strings
Post by: 0xdeadbeef on December 12, 2007, 05:09:01 PM
What you need to know about the format of the gfx strings:

The first 4 bytes are a little-endian longword which is the size of the entire string.

Example: size is 4660 bytes == hex: 0x1234 -> 34120000
After that comes some bytes of crud that I don't thing is important for our purposes.

Each property in the gfx string has a name and a value. The name is a UNICODE_STRING that has a little-endian longword length attribute immediately before it. The length attribute includes the 4 bytes needed for itself:

Example "A.T.Y.,.C.r.a.p." => 1C0000004100540059002C0043007200610070000000

The value comes immediately after (also with a length attribute):

=>08000000DEADBEEF

So if you want to remove a property, you need to:
1. Remove the property name + it's length attribute
2. Remove the following value + it's length attribute
3. Enter your new length in the first 4 bytes of the string.

Good luck!


Title: Re: GFX-Strings
Post by: time ed on December 12, 2007, 06:27:24 PM
So in theory I could lop off everything after the NVCAP string, recalculate the total byte length and be good?

What about all the other AAPL attributes such as pixel format, dither, justify, data link?

One more thing:
The first 4 bytes are a little-endian longword which is the size of the entire string.
Example: size is 4660 bytes == hex: 0x1234 -> 34120000

The total length of lebidou's working string in Hex Fiend is 2552 bytes. The first 4 bytes of the string is FC 09 00 00. 0x09fc == 2556. I'm confused.


Title: Re: GFX-Strings
Post by: lebidou on December 12, 2007, 09:48:30 PM
Quote
The total length of lebidou's working string in Hex Fiend is 2552 bytes. The first 4 bytes of the string is FC 09 00 00. 0x09fc == 2556. I'm confused.

something's wrong : the first 4 bytes in my file are F2 09 00 00. Seems to be 2546, wich still wrong, but as I edited it in TextEdit, nothing's guaranted... try F8 09 maybe


Title: Re: GFX-Strings
Post by: Thrawnhex on December 12, 2007, 10:49:22 PM
Maybe it reads only as long as the lenght in the string is given, so if the string is longer then the length hex-value it'll not read until the end... (only a guess)

Btw.: Thanks for the great discussion!

Thrawnhex


Title: Re: GFX-Strings
Post by: time ed on December 12, 2007, 11:04:08 PM

My bad. Its 0x09f2. Still...

I think you're right. The last 4-6 bytes look like padding. Obviously the string works for lebidou. I'll spend a little more time disecting it. I would be nice to have one from a Mac Pro.

OT: hey lebidou -- where can I get nutella machine? I love that stuff, but its hard to find here...


Title: Re: GFX-Strings
Post by: lebidou on December 12, 2007, 11:41:27 PM
The string worked for me but not dual display.

Comparing the ascii code to the NVinjectGO's info.plist values I noticed some were not the same such as inverter. Does someone knows what is inverter and if it could interfer with dual display ?

Moreover there's a NVMT value in the string that's not in NVinject info.plist, and NVPM value in the info.plist that's not in the string. What are they used for ?

And about the nutella machine, the prototype has melt while presenting it to the Nutella's CEO. So we lost the contest... But I'm happy to know you would like to have one.


Title: Re: GFX-Strings
Post by: 0xdeadbeef on December 13, 2007, 05:45:49 AM
Maybe it reads only as long as the lenght in the string is given, so if the string is longer then the length hex-value it'll not read until the end... (only a guess)

Btw.: Thanks for the great discussion!

Thrawnhex

I wouldn't rely on that. If the structure is invalid, that could lead to big trouble in the EFIMergeProperties . Make sure you start with a valid copy of a string before you start chopping away it it, then double-check every edit you make.

One more thing: If you are posting hacked gfx strings at least label them clearly and state the starting string and the edits made: how many "¤%"¤ing versions of "Natit.kext" are floating around without anyone knowing what was done to them?  ;D


Title: Re: GFX-Strings
Post by: netkas on December 13, 2007, 11:48:45 AM
What you need to know about the format of the gfx strings:

The first 4 bytes are a little-endian longword which is the size of the entire string.

Example: size is 4660 bytes == hex: 0x1234 -> 34120000
After that comes some bytes of crud that I don't thing is important for our purposes.

Each property in the gfx string has a name and a value. The name is a UNICODE_STRING that has a little-endian longword length attribute immediately before it. The length attribute includes the 4 bytes needed for itself:

Example "A.T.Y.,.C.r.a.p." => 1C0000004100540059002C0043007200610070000000

The value comes immediately after (also with a length attribute):

=>08000000DEADBEEF

So if you want to remove a property, you need to:
1. Remove the property name + it's length attribute
2. Remove the following value + it's length attribute
3. Enter your new length in the first 4 bytes of the string.

Good luck!

Yeah, that;'s how i done 2600 string, cause originaly it was >64k size. but !
there is two fields  - one for gfx and one for audiocards, both have size and number of command i guess, so need to edit that too, cause i got long property:
    | |   |     |   "ATY,FrameBufferOffset" = <0000000080000000>
    | |   |     |    = <0400000002010c00d041030a0000000001010600001b7fff04002200
000070006c006100740066006f0072006


Title: Re: GFX-Strings
Post by: netkas on December 13, 2007, 01:48:46 PM
ok, i reversed it, it's now close to complete :D
based on 7300 string

Quote
main header
size is 12 bytes (0Ch)
dw = 06f4 - size
dw = 01   - idk what
dw = 03   - guess num of entries

gfx entry
header is 24 h:
dw = 05e1 - length
dw = 18h - num of commands
16-bytes array = 02010C00D041030a0000000001010600  - looks llike signature

unknown entry
header is 24h:
dw = 5a  - length
dw = 1    - num of entries
16-bytes array = 02010C00D041030a0000000001010600  - looks llike signature

sound entry
header is 1eh
dw = ADh - length
dw = 03h   - num of entries
16-bytes array = 02010C00D041030a0000000001010600  - looks llike signature


Title: Re: GFX-Strings
Post by: lebidou on December 13, 2007, 02:53:07 PM
Thinking it could help, i made ioreg dumps for the four following cases :
- dual screen wtih nvinjectgo
- dual screen with gfx string
- single screen wtih nvinjectgo
- single screen with gfx string

I sent the com.apple.Boot.plist I use with the string.

And for info, the NVinjectGO.kext I use the 0.0.9 from nvinject.free.fr. I never had to modify it.
ioreg-nvinject-dual.txt (http://www.gael-philippe.fr/ioreg-nvinject-dual.txt)
ioreg-efi-dual.txt (http://www.gael-philippe.fr/ioreg-efi-dual.txt)
ioreg-nvinject-single.txt (http://www.gael-philippe.fr/ioreg-nvinject-single.txt)
ioreg-efi-single.txt (http://www.gael-philippe.fr/ioreg-efi-single.txt)
com.apple.Boot.plist (http://client.lwserv1.com/lwswebtransfert/index.php?ftpserver=80.248.217.35&ftpserverport=21&username=gael-41094&password_encrypted=6261796F6E6E65&language=fr&skin=blue&ftpmode=automatic&passivemode=no&sslconnect=no&viewmode=list&sort=&sortorder=&directory=%2Fhtdocs&entry=com.apple.Boot.plist&state=downloadfile) link corrected


Title: Re: GFX-Strings
Post by: netkas on December 13, 2007, 03:03:13 PM
last link - 404 :P



Title: Re: GFX-Strings
Post by: mcmatrix on December 13, 2007, 03:20:54 PM
ok, i reversed it, it's now close to complete :D
based on 7300 string

Quote
main header
size is 12 bytes (0Ch)
dw = 06f4 - size
dw = 01   - idk what
dw = 03   - guess num of entries

gfx entry
header is 24 h:
dw = 05e1 - length
dw = 18h - num of commands
16-bytes array = 02010C00D041030a0000000001010600  - looks llike signature

unknown entry
header is 24h:
dw = 5a  - length
dw = 1    - num of entries
16-bytes array = 02010C00D041030a0000000001010600  - looks llike signature

sound entry
header is 1eh
dw = ADh - length
dw = 03h   - num of entries
16-bytes array = 02010C00D041030a0000000001010600  - looks llike signature

ok here are my trackings:
[main header]:
4bytes (int32) - file size
4bytes (int32) - ??? unknown
4bytes (int32) - this is number of datablocks

[datablock header]
4bytes (int32) - size of block
4bytes (int32) - number of entries (key -> value)
then comes this
02010C00 D041030A 00000000 010106000002 7FFF0400
i think that these are positions in hardware ioregistry "IOACPIPlane:/_SB/PCI0@0/GFX0@20000"

7F FF 04 00 seems to be signature before data

and this sound entry has header:
02010C00 D041030A 00000000 01010600 00 1B 7FFF0400
seems that this device is in ioreg "+-o HDEF@1B  <class IOPCIDevice, registered, matched, active, busy 0, retain 8>"


I have found from internet http://linux.dell.com/efibootmgr/efibootmgr.txt that "In this case, the ACPI HID is "0A0341d0" and the UID is "0"."
interesting? :)

http://www.ndt-uk.net/etc/files/ioreg.txt some ioreg dump from internet

my research is based x3100 dump from here

iam working on a little program to convert gfx string to xml plist and back :)


Title: Re: GFX-Strings
Post by: netkas on December 13, 2007, 05:58:17 PM
so, in that part of datablock header
02010C00 D041030A 00000000 01010600 00 1B 7FFF0400

only 00 1b sounds usefull, btw, for 2600pro it's 00 00

so, there is only one unknown values only now, i guess we can keep it as 1. maybe it's number of such strings(big blocks, not a datablocks), and it's always  1, in this case


Title: Re: GFX-Strings
Post by: mcmatrix on December 13, 2007, 06:11:45 PM
Ok the decoding part is done.

out of program:

Start decoding gfx data...
========= GFX header =========
filesize : 2858
id : 1
count of blocks : 3
==============================
------- GFX block --------
blocksize : 272
records : 5
ioreg??? (22): 02010C00D041030A0000000001010600001B7FFF0400
***************************
   'layout-id' (10) -> '36000000' (4)
   'PinConfigurations' (18) -> '4001109050402B01410110901001A09020308B0160E04B0130E0CB01' (28)
   'AFGLowPowerState' (17) -> '03000000' (4)
   'MaximumBootBeepVolume' (22) -> '37' (1)
   'platformFamily' (15) -> '00' (1)
------- GFX block --------
blocksize : 82
records : 1
ioreg??? (28): 02010C00D041030A0000000001010600001E0101060000037FFF0400
***************************
   'fwtune' (7) -> '00000008E3E3000000000808E3E3180100004008200000BF' (24)
------- GFX block --------
blocksize : 2492
records : 41
ioreg??? (22): 02010C00D041030A000000000101060000027FFF0400
***************************
   'AAPL00,blackscreen-preferences' (31) -> '00000008' (4)
   'AAPL01,blackscreen-preferences' (31) -> '00000008' (4)
   'AAPL01,BootDisplay' (19) -> '01000000' (4)
   'AAPL01,Pipe' (12) -> '01000000' (4)
   'AAPL01,IODisplayMode' (21) -> '00100080' (4)
   'AAPL01,EDID' (12) -> '00FFFFFFFFFFFF0006105F9C0000000008100103801D12780A2F309758538B2925505400000001010101010101010101010101010101BC1B00A050201730302036001EB310000018000000010006102000000000000000000A20000000FE004C503133335758312D544C4131000000FE00436F6C6F72204C43440A20202000C2' (128)
   'AAPL01,Stretched' (17) -> '00000000' (4)
   'AAPL01,Interlace' (17) -> '00000000' (4)
   'AAPL01,Refresh' (15) -> '3B000000' (4)
   'AAPL01,Depth' (13) -> '20000000' (4)
   'AAPL01,Width' (13) -> '00050000' (4)
   'AAPL01,Height' (14) -> '20030000' (4)
   'AAPL01,CurrentDisplay' (22) -> '00000000' (4)
   'AAPL01,BacklightIntensity' (26) -> '64000000' (4)
   'AAPL01,InverterCurrent' (23) -> '00000000' (4)
   'AAPL01,Dither' (14) -> '00000000' (4)
   'AAPL01,Inverter' (16) -> '00000000' (4)
   'AAPL01,PixelFormat' (19) -> '00000000' (4)
   'AAPL01,LinkFormat' (18) -> '00000000' (4)
   'AAPL01,DataJustify' (19) -> '01000000' (4)
   'AAPL01,DualLink' (16) -> '00000000' (4)
   'AAPL01,LinkType' (16) -> '00000000' (4)
   'AAPL01,InverterFrequency' (25) -> '08520000' (4)
   'AAPL01,T6' (10) -> '90010000' (4)
   'AAPL01,T5' (10) -> '00000000' (4)
   'AAPL01,T4' (10) -> '01000000' (4)
   'AAPL01,T3' (10) -> 'C8000000' (4)
   'AAPL01,T2' (10) -> 'C8000000' (4)
   'AAPL01,T1' (10) -> '01000000' (4)
   'AAPL01,T0' (10) -> '00000000' (4)
   'AAPL,aux-power-connected' (25) -> '01000000' (4)
   'AAPL,BacklightRestore' (22) -> '01000000' (4)
   'AAPL,SelfRefreshSupported' (26) -> '01000000' (4)
   'AAPL,NumFramebuffers' (21) -> '02000000' (4)
   'AAPL,HasLid' (12) -> '01000000' (4)
   'AAPL,HasPanel' (14) -> '01000000' (4)
   'AAPL,DisplayConfig' (19) -> '1300000000000001210000000000000041000000000000008100000000000000' (32)
   'AAPL,NumDisplays' (17) -> '04000000' (4)
   'AAPL,backlight-control' (23) -> '01000000' (4)
   'saved-config' (13) -> '00000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000061000005F9C000000000000C05F3B04A005000000050000A00500003005000050050000370300002003000037030000230300002903000001000000000000000000000000000000020000000000000000000000640000000010008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' (256)
   'saved-timing1' (14) -> '00100080000000000000000000000000000000000000000000000000000000000000000000000000C05F3B0400000000C05F3B0400000000C05F3B040000000000050000A000000030000000200000002003000017000000030000000600000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000' (160)
Done.

Now comes hard part. Converting to plist and from plist to bin.
Iam not verry good on CoreFoundation part so learning takes little time :)

Netkas if you are interested i may share my code. Its very beta code yet.


Title: Re: GFX-Strings
Post by: mcmatrix on December 13, 2007, 07:37:28 PM
Now creating plist file is working.
Little sample from program:
<?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>02010C00D041030A000000000101060000027FFF0400</key>
   <dict>
      <key>AAPL,BacklightRestore</key>
      <data>
      AQAAAA==
      </data>
      <key>AAPL,DisplayConfig</key>
      <data>
      EwAAAAAAAAEhAAAAAAAAAEEAAAAAAAAAgQAAAAAAAAA=
      </data>
      <key>AAPL,HasLid</key>
      <data>
      AQAAAA==
      </data>
      <key>AAPL,HasPanel</key>
      <data>
      AQAAAA==
      </data>
      <key>AAPL,NumDisplays</key>
      <data>
      BAAAAA==
      </data>
      <key>AAPL,NumFramebuffers</key>
      <data>
      AgAAAA==
      </data>
      <key>AAPL,SelfRefreshSupported</key>
      <data>
      AQAAAA==
      </data>
      <key>AAPL,aux-power-connected</key>
      <data>
      AQAAAA==
      </data>
      <key>AAPL,backlight-control</key>
      <data>
      AQAAAA==
      </data>
      <key>AAPL00,blackscreen-preferences</key>
      <data>
      AAAACA==
      </data>
      <key>AAPL01,BacklightIntensity</key>
      <data>
      ZAAAAA==
      </data>
      <key>AAPL01,BootDisplay</key>
      <data>
      AQAAAA==
      </data>
      <key>AAPL01,CurrentDisplay</key>
      <data>
      AAAAAA==
      </data>
      <key>AAPL01,DataJustify</key>
      <data>
      AQAAAA==
      </data>
      <key>AAPL01,Depth</key>
      <data>
      IAAAAA==
      </data>
      <key>AAPL01,Dither</key>
      <data>
      AAAAAA==
      </data>
      <key>AAPL01,DualLink</key>
      <data>
      AAAAAA==
      </data>
      <key>AAPL01,EDID</key>
      <data>
      AP///////wAGEF+cAAAAAAgQAQOAHRJ4Ci8wl1hTiyklUFQAAAABAQEBAQEB
      AQEBAQEBAQEBvBsAoFAgFzAwIDYAHrMQAAAYAAAAAQAGECAAAAAAAAAAAAog
      AAAA/gBMUDEzM1dYMS1UTEExAAAA/gBDb2xvciBMQ0QKICAgAMI=
      </data>
      <key>AAPL01,Height</key>
      <data>
      IAMAAA==
      </data>
      <key>AAPL01,IODisplayMode</key>
      <data>
      ABAAgA==
      </data>
      <key>AAPL01,Interlace</key>
      <data>
      AAAAAA==
      </data>
      <key>AAPL01,Inverter</key>
      <data>
      AAAAAA==
      </data>
      <key>AAPL01,InverterCurrent</key>
      <data>
      AAAAAA==
      </data>
      <key>AAPL01,InverterFrequency</key>
      <data>
      CFIAAA==
      </data>
      <key>AAPL01,LinkFormat</key>
      <data>
      AAAAAA==
      </data>
      <key>AAPL01,LinkType</key>
      <data>
      AAAAAA==
      </data>
      <key>AAPL01,Pipe</key>
      <data>
      AQAAAA==
      </data>
      <key>AAPL01,PixelFormat</key>
      <data>
      AAAAAA==
      </data>
      <key>AAPL01,Refresh</key>
      <data>
      OwAAAA==
      </data>
      <key>AAPL01,Stretched</key>
      <data>
      AAAAAA==
      </data>
      <key>AAPL01,T0</key>
      <data>
      AAAAAA==
      </data>
      <key>AAPL01,T1</key>
      <data>
      AQAAAA==
      </data>
      <key>AAPL01,T2</key>
      <data>
      yAAAAA==
      </data>
      <key>AAPL01,T3</key>
      <data>
      yAAAAA==
      </data>
      <key>AAPL01,T4</key>
      <data>
      AQAAAA==
      </data>
      <key>AAPL01,T5</key>
      <data>
      AAAAAA==
      </data>
      <key>AAPL01,T6</key>
      <data>
      kAEAAA==
      </data>
      <key>AAPL01,Width</key>
      <data>
      AAUAAA==
      </data>
      <key>AAPL01,blackscreen-preferences</key>
      <data>
      AAAACA==
      </data>
      <key>saved-config</key>
      <data>
      AAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
      AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
      AAAAAAAAAAAAAAYQAABfnAAAAAAAAMBfOwSgBQAAAAUAAKAFAAAwBQAAUAUA
      ADcDAAAgAwAANwMAACMDAAApAwAAAQAAAAAAAAAAAAAAAAAAAAIAAAAAAAAA
      AAAAAGQAAAAAEACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
      AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
      </data>
      <key>saved-timing1</key>
      <data>
      ABAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBfOwQA
      AAAAwF87BAAAAADAXzsEAAAAAAAFAACgAAAAMAAAACAAAAAgAwAAFwAAAAMA
      AAAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAA
      AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
      </data>
   </dict>
   <key>02010C00D041030A0000000001010600001B7FFF0400</key>
   <dict>
      <key>AFGLowPowerState</key>
      <data>
      AwAAAA==
      </data>
      <key>MaximumBootBeepVolume</key>
      <data>
      Nw==
      </data>
      <key>PinConfigurations</key>
      <data>
      QAEQkFBAKwFBARCQEAGgkCAwiwFg4EsBMODLAQ==
      </data>
      <key>layout-id</key>
      <data>
      NgAAAA==
      </data>
      <key>platformFamily</key>
      <data>
      AA==
      </data>
   </dict>
   <key>02010C00D041030A0000000001010600001E0101060000037FFF0400</key>
   <dict>
      <key>fwtune</key>
      <data>
      AAAACOPjAAAAAAgI4+MYAQAAQAggAAC/
      </data>
   </dict>
</dict>
</plist>

I put this signature to block header. Now i need to do datatype detection (data, integer, string) and then the hard part convert plist back to binary form.


Title: Re: GFX-Strings
Post by: netkas on December 13, 2007, 08:18:50 PM
yeah, i would like to get decryption code

btw, we do not need that block, with fwtune
so we can give it up.

and about this things

ioreg??? (22): 02010C00D041030A0000000001010600001B7FFF0400
ioreg??? (22): 02010C00D041030A000000000101060000027FFF0400

no need to display iot whole imho
just smth like
pci device - 1B or 02 (18th byte of array)
and then generation for specified pci device (like 00 for most videocards or 02 for gma cards or 1b for soun cards)


Title: Re: GFX-Strings
Post by: lebidou on December 13, 2007, 08:43:40 PM
Looking at the dumps i've made I noticed that when I use the gfx string, it always acts like if there were only one display, even with an external display plugged in.

I was wondering if it could be because the original string (the one from the iMac with 7600GT) was grabbed from a machine without an external display plugged in.

Could someone get the gfx-string form an iMac with 7600GT and an external display plugged ?

Thanx


Title: Re: GFX-Strings
Post by: 0xdeadbeef on December 13, 2007, 09:13:02 PM

I put this signature to block header. Now i need to do datatype detection (data, integer, string) and then the hard part convert plist back to binary form.



EFI doesn't appear to care about the datatype - for example radeon.efi just adds them to the properties as length-counted binary arrays as far as I can see. I think it's up to the receiving drivers to decide what datatype they are.

IE in the bootloader they are all just "data"  :o


Title: Re: GFX-Strings
Post by: cynix on December 14, 2007, 02:35:18 AM
EFI doesn't appear to care about the datatype - for example radeon.efi just adds them to the properties as length-counted binary arrays as far as I can see. I think it's up to the receiving drivers to decide what datatype they are.

IE in the bootloader they are all just "data"  :o

I think he meant displaying data in their corresponding types in the plist so it's easier for editing?


Title: Re: GFX-Strings
Post by: 0xdeadbeef on December 14, 2007, 08:23:29 AM

I think he meant displaying data in their corresponding types in the plist so it's easier for editing?



What? You mean we're not going to do our editing in a little-endian binary representation? Sheesh!  ;)


Title: Re: GFX-Strings
Post by: mcmatrix on December 14, 2007, 01:00:55 PM
New version of gfxutil is out!!!
http://forum.netkas.org/index.php?topic=64.0

------------------------

Ok here it is, very first alpha version.
http://rapidshare.com/files/76485904/gfxutil.zip.html

Its very simple program.
It only accepts to files input and output files.

input file has to be binary device-properties (not hex dump) or XML plist file.
output file content depends on input file.
If input file is gfx binary then output is XML plist
and if input is xml plist then output is binary device-properties.

For converting hexdump to binary you may use xxd tool:

'xxd -r -p x3100.hex x3100.bin' will convert from hex to bin
'xxd -p x3100.bin >x3100.hex' will convert from bin to hex

using steps:
1. use xxd to convert from hex to bin
2. use gfxutil to convert from bin to plist file
3. use 'Property List Editor' to modify you settings
4. use gfxutil to convert from plist to bin again
5. use xxd to convert from bin to hex dump

NB! This program is in apha/beta phase. So use it only for betatesting.
I TAKE NO RESPONSEBILITY FOR ANY LOSS, DAMAGE OR INJURY ARISING FROM THE USE OF THIS PROGRAM! 


Title: Re: GFX-Strings
Post by: Thrawnhex on December 14, 2007, 01:45:20 PM
The Converting works for me! But I can't really understand the meanings of values in the data fields. I'll comprehend with other strings...

So thank you!!! And another Question: Is the code free and in which language is is written... i learn objectiv-c and i'd like to watch at the code...

Thrawnhex


Title: Re: GFX-Strings
Post by: mcmatrix on December 14, 2007, 01:54:15 PM
Its base64, it is CoreFoundation property list CFDataRef format.
Binary data will automatically encoded (base64) for saving to xml by CF.

Use "Property List Editor" you can install it from XCode tools.
PL Editor will decode datafields and if you modify them and save then
Editor will encode fields back.


Title: Re: GFX-Strings
Post by: frantisheq on December 14, 2007, 03:07:39 PM
not sure so better to ask :) where to get the input file and how do i use exported file? what is this all about? it will generate gfx string from hackintosh or what?

if i understand good i convert hex dump to bin with xxd then use gfxutil util on the bin. edit with property list editor then again plist to bin with gfxutil and bin to hex with xxd. then i add generated hex to boot.plist. OK? stupid question but will this enable me to use 7300GT string on 7300LE?


Title: Re: GFX-Strings
Post by: 0xdeadbeef on December 14, 2007, 03:11:14 PM

Ok here it is, very first alpha version.


Good work! We'll have this efi rubbish fixed yet!  ;)


Title: Re: GFX-Strings
Post by: mcmatrix on December 14, 2007, 03:25:04 PM
not sure so better to ask :) where to get the input file and how do i use exported file? what is this all about? it will generate gfx string from hackintosh or what?

You need to get gfx string from real mac and then you can change/hack it to
make it fit with your computer needs :)

The <dict> key contains (long hex key in plist) the important io aadresses. It represents where in iodevicetree registry these device settings will be and following key value pairs are specific device settings that device kext will query from efi.

Correct me if iam wrong.


Title: Re: GFX-Strings
Post by: frantisheq on December 14, 2007, 03:27:37 PM
ok thx. should be in #leopard topic
 i wanted to make string for 7300LE from 7300GT  :P couldn't even find 7300GT ID in generated plist  ;D



Title: Re: GFX-Strings
Post by: mcmatrix on December 14, 2007, 05:39:45 PM
ok thx. should be in #leopard topic
 i wanted to make string for 7300LE from 7300GT  :P couldn't even find 7300GT ID in generated plist  ;D



You are free to modify you plist /add/delete/change/   key -> value pairs
or even add or delete dict sub block.
If you know what you are doing then just add device_id propertie into plist.

Only requirement is that value field has to be DATA type.


Title: Re: GFX-Strings
Post by: netkas on December 14, 2007, 06:52:49 PM
there is mostly no devid.

it uses pci adress to ident card, e.g. display@0 or display@2 and etc.. read this thread to find more info


Title: Re: GFX-Strings
Post by: netkas on December 15, 2007, 01:40:25 AM
continuing our mess

e.g. 2600xt

02010C00'D041030A'00000000'01010600'00010101'06000000'7FFF0400
and adress for card is
IODeviceTree:/PCI0@0/POP1@1/display@0
so, u can see 0000 in string, 0101 and 0 at end..

and now sound

02010C00D041030A0000000001010600001B7FFF0400

IODeviceTree:/PCI0@0/pci8086,27d8@1b

that's why string for sound is shorter, it has less parents than display.

soo, lets think  more
p.s. actualy it's 1@10000 and 0@00000 and  etc


Title: Re: GFX-Strings
Post by: netkas on December 15, 2007, 02:34:10 AM
a bit more
EfiDevicePath.h

#define EFI_DP_TYPE_MASK                    0x7F
#define EFI_DP_TYPE_UNPACKED                0x80
#define END_DEVICE_PATH_TYPE                0x7f
#define END_ENTIRE_DEVICE_PATH_SUBTYPE      0xff
#define END_INSTANCE_DEVICE_PATH_SUBTYPE    0x01

also files

DevicePathToText.c DevicePathFromText.c

DevicePath.c


Title: Re: GFX-Strings
Post by: netkas on December 15, 2007, 03:23:40 AM
my guess - 010106 is sort of separators
so
Code:
02010C00'D041030A'00000000'010106'000001'010106'000000'7FFF0400
           ACPI   00@000000 sepr  01@10000 sep    @0
                   PCI0@0        P0P1@10000
we need to look at things only after @


Title: Re: GFX-Strings
Post by: blackknight on December 15, 2007, 08:24:32 AM
netkas,

I thought that maybe I was just inputing the string into the boot.plist wrong since it was being wrapped instead of a single line, but that didn't fix the problem. One thing I did notice when looking at the Ioreg is that my graphics card is at PCE2@2 and not 0@0 like others I've seen. Is this info included in the 02010C00'D041030A'00000000'01010600'00010101'06000000'7FFF0400 string?

Thanks.


Title: Re: GFX-Strings
Post by: netkas on December 15, 2007, 12:56:59 PM
yeah
change
06000000'7FFF0
to
06000002'7FFF0


Title: Re: GFX-Strings
Post by: djchaos82 on December 15, 2007, 03:54:49 PM
Hi,

i've got a 8800 GTS with 320MB (MSI 320MB 8800GTS T2D320E-HD OC PCIe)
so i thought that i should be able to get it running with gfx-string.


but it seems that i was wrong, when i insert the gfx-string from http://tinyurl.com/2cuaj all i get is a really distorted (pixelates,
low-res) screen.

it is still working and i can switch resolution but it has no effect,
the screen stats extremly low-res (<640).

any clue what i can do :)?

thanks in advance...

PS: Apart from thats, EFI is great, THANKS :D

i hate to push it, but has anyone a clue whats going on?

if not i will just use the old method, which works fine too...

(using this http://rs283.rapidshare.com/files/73580074/gfx_strings.tar.bz2)


Title: Re: GFX-Strings
Post by: gotoh on December 15, 2007, 04:04:33 PM
you need to change the display EDID data in the GFX string you're using...


Title: Re: GFX-Strings
Post by: netkas on December 15, 2007, 05:52:13 PM
just remove EDID, so it will detect it

gotoh, do u want to mess around it and create small strings for gf7/8 ? :)


Title: Re: GFX-Strings
Post by: time ed on December 15, 2007, 06:08:06 PM
Ok here it is, very first alpha version.

one more dumb question, sorry -- will this only work with 2600 string?

I get "./gfxutil: invalid property list xml inputfile '7600.bin'!"

with Bob's 7600gt string from the first page


Title: Re: GFX-Strings
Post by: mcmatrix on December 15, 2007, 06:48:03 PM
Ok here it is, very first alpha version.

one more dumb question, sorry -- will this only work with 2600 string?

I get "./gfxutil: invalid property list xml inputfile '7600.bin'!"

with Bob's 7600gt string from the first page

This is how prog detects file type, gfxutil reads first 4 bytes and compares it with filesize. If both integers are same then gfxutil will read binary file, if not then util tries load xml plist.
So it is possible that your file is wrong binary, maybe hex or even modified manualy (so that datasize does not match real filesize.)


Title: Re: GFX-Strings
Post by: lebidou on December 15, 2007, 07:21:13 PM
Even by modifying the hex file in order to make file lenght and the first 4 bytes gfxutil tells me :

Code:
./gfxutil 7600G1bin 7600G1.plist
readBinary: invalid binary data
./gfxutil: invalid gfx inputfile '7600G1bin'!

four first bytes are F2 09 00 00 (0x09f2 = 2546) and file lenght 2546 bytes


Title: Re: GFX-Strings
Post by: time ed on December 15, 2007, 09:43:32 PM
The 7600 sting from first page is 2546 bytes. First four bytes F2090000 == 2546?


Title: Re: GFX-Strings
Post by: lebidou on December 15, 2007, 10:21:56 PM
Quote
The 7600 sting from first page is 2546 bytes. First four bytes F2090000 == 2546?

That's what Hex Fiend tells
(http://www.gael-philippe.fr/image_1.png)


Title: Re: GFX-Strings
Post by: gotoh on December 16, 2007, 08:58:51 AM
sure,

even for GMA X3100 now that I have a brand new shining MacBook ;)
just remove EDID, so it will detect it

gotoh, do u want to mess around it and create small strings for gf7/8 ? :)


Title: Re: GFX-Strings
Post by: gotoh on December 16, 2007, 09:15:47 AM
anyone want to try this x3100 edited ?


Title: Re: GFX-Strings
Post by: gotoh on December 16, 2007, 09:36:20 AM
edited GeForce GFX strings :

for "any" GeForce 5/6/7/8, using NVCAP from MacBook 7300GT, generic "GeForce" encoded name.
number for each file according to physical VRAM on card, so try and report...

untested yet ;)


Title: Re: GFX-Strings
Post by: gotoh on December 16, 2007, 09:47:23 AM
well, does not work here with GeForce 7900...

I'll try with GFX string from 7600GT...


Title: Re: GFX-Strings
Post by: lebidou on December 16, 2007, 03:02:23 PM
didn't worked for me too


Title: Re: GFX-Strings
Post by: mcmatrix on December 16, 2007, 05:18:26 PM
a bit more
EfiDevicePath.h

#define EFI_DP_TYPE_MASK                    0x7F
#define EFI_DP_TYPE_UNPACKED                0x80
#define END_DEVICE_PATH_TYPE                0x7f
#define END_ENTIRE_DEVICE_PATH_SUBTYPE      0xff
#define END_INSTANCE_DEVICE_PATH_SUBTYPE    0x01

also files

DevicePathToText.c DevicePathFromText.c

DevicePath.c


Where did you get those files?


Title: Re: GFX-Strings
Post by: Tek_No on December 16, 2007, 05:28:35 PM
Gotoh,

is this supposed to be working with a Quadro NVS320M as well (in fact this card is exactly the same as a 8700GT) ?



edited GeForce GFX strings :

for "any" GeForce 5/6/7/8, using NVCAP from MacBook 7300GT, generic "GeForce" encoded name.
number for each file according to physical VRAM on card, so try and report...

untested yet ;)


Title: Re: GFX-Strings
Post by: 0xdeadbeef on December 16, 2007, 05:37:34 PM

Where did you get those files?



They are both in the Tianocore Intel EFI SDK and the GNU EFI SDK.


Title: Re: GFX-Strings
Post by: frantisheq on December 16, 2007, 05:39:34 PM
gotoh 7300LE no go


Title: Re: GFX-Strings
Post by: gotoh on December 16, 2007, 06:27:31 PM
did anyone who tried the files I uploaded had success with other GFXstring, or only working NVIDIA with titan (or clone) ?

BTW, GMA X3100 will only work if deviceID is the same as MacBook GMA (0x2a028086) DeviceID is hardcoded in AppleIntelGMAX3100 and AppleIntelGMAX3100FB so you may edit binaries to replace 8680282a with your actual deviceID, not just editing info.plist files. But they may be a no go most of the time. I managed to get G33 based desktop mobo GMA X3100 "partly" working, but I had to boot with no display, hotplug display, then it would work at 1024x768 256 colours. Trying to change resolution made the rig freeze, and thousands or million colours was not available. However, QE/CI loaded successfully but OpenGL test would make it freeze too...


Title: Re: GFX-Strings
Post by: frantisheq on December 16, 2007, 06:33:10 PM
NVinject only. Dual display


Title: Re: GFX-Strings
Post by: lebidou on December 16, 2007, 06:40:30 PM
I edited the 7600GT string using the gfxutil the PropertyList Editor but didn't work on my 7600GO


Title: Re: GFX-Strings
Post by: pm_mickey on December 16, 2007, 07:03:09 PM
pc_efi 8.0 and 256 mb NVIDIA GrForce 7600 GS + ViewSonic VP171b DVI on Gigabyte GA-p35-DS4 C2D E6750 2 GB PC 800 MHz RAM with string for 256mb NVIDIA dont work with nvinject.kext disabled. Just 1024 768 without QE. I also tested some custom made strings without success!


Title: Re: GFX-Strings
Post by: gotoh on December 16, 2007, 09:14:29 PM
X1900 deviceID 7249 GFX string for testing...
I'll test it myself tomorrow.


Title: Re: GFX-Strings
Post by: errandwolfe on December 16, 2007, 09:53:10 PM
I am trying to get this working on a Dell Latitude D630 with a GMAX3100.  Once I have the string converted to plist, I have tried editing several things including my EDID.  So far I have had no success.  I get a brief blue screen followed immediately by my LCD going black, I believe powering down.


Title: Re: GFX-Strings
Post by: Thrawnhex on December 16, 2007, 10:08:11 PM
Yeessss!!!! Finally after 10 hours of trying out different configurations my 7600gt is working!! Dual Display Support and Mouse Pointer is there, too ;).

I think the only thing for other GeForce 7xxx Cards is to change the name... from "NVIDIA GeForce 7600 GT EFI" to whatever you like!

I tried my string on XFX 7600gt 256MB VRAM...

Please try this, on every Geforce Card from 5xxx to 8xxx, to see if it workes there, too...

Here is the String: http://www.mediafire.com/?5dwd0yzm9nz (http://www.mediafire.com/?5dwd0yzm9nz)

Thrawnhex

P.S.: I created 2 new file-formats called .bst (=Binary STring) and .hst (=Hexadecimal STring)


Title: Re: GFX-Strings
Post by: lebidou on December 16, 2007, 10:32:20 PM
It works on my 7600 GO.
I'll try dual display tomorrow.

Great job guys, thanx !

PS. : Noticed a problem with colors. Gradients are not smooth (like in 24 bits mode). I ever had this problem with Natit (from Diabolik) and with newer versions of NVinject (from nvinject.free.fr). The only Titan's clone that corrected it was NVinjectGO 0.0.9.

I tried to change NVCAP but with no success. I didn't have this issue with the string I modified myself with TextEdit.


Title: Re: GFX-Strings
Post by: time ed on December 16, 2007, 10:39:59 PM
can you post the binary string too?


Title: Re: GFX-Strings
Post by: lebidou on December 16, 2007, 10:52:01 PM
It's simply the same as Thrawnhex.


Title: Re: GFX-Strings
Post by: Thrawnhex on December 16, 2007, 11:03:23 PM
Ok this is 2nd alpha release...

I made strings for GT/GS/GO... all binaries are there, too...

Download here: http://www.mediafire.com/?0xvdubycdmz

lebidou: I'll look for your problem, tomorrow... The NVCAP thing seems to be the right way...

Thrawnhex


Title: Re: GFX-Strings
Post by: bob on December 16, 2007, 11:28:16 PM
Hey guys, a im trying here but im alittle confused... can some one help me?
Here is my IODeviceTree for display0:


Quote
| | +-o display@0  <class IOPCIDevice, registered, matched, active, busy 0, retain 10>
    | |     {
    | |       "IOPCIResourced" = Yes
    | |       "IOInterruptControllers" = ("io-apic-0","IOPCIMessagedInterruptController")
    | |       "IOName" = "display"
    | |       "subsystem-id" = <43820000>
    | |       "IODeviceMemory" = (({"address"=18446744073206235136,"length"=16777216}),({"address"=18446744072904245248,"length"=268435456}),({"address"=18446744073172680704,"length"=33554432}),{"parent"=({"address"=0,"length"=65536}),"offset"=12288,"length"=128})
    | |       "display-connect-flags" = <00000000>
    | |       "class-code" = <00000300>
    | |       "revision-id" = <a1000000>
    | |       "IOChildIndex" = 1
    | |       "assigned-addresses" = <1000018200000000000000e20000000000000001140001c200000000000000d000000000000000101c00018200000000000000e00000000000000002240001810000000000300000000000008000000030000182000000000000feff0000000000000200>
    | |       "AAPL,iokit-ndrv" = <e0d28e66>
    | |       "name" = "display"
    | |       "subsystem-vendor-id" = <43100000>
    | |       "AAPL,RegEntryID" = <005ec906ffa136f9656d69537a6c7552>
    | |       "AAPL,gray-page" = <01000000>
    | |       "reg" = <0000010000000000000000000000000000000000100001020000000000000000000000000000000114000142000000000000000000000000000000101c0001020000000000000000000000000000000224000101000000000000000000000000800000003000010200000000000000000000000000000200>
    | |       "compatible" = <"pci1043,8243","pci10de,402","pciclass,030000">
    | |       "NVKernelLoaded" = <01000000>
    | |       "IOHibernateState" = <00000000>
    | |       "NVDA,current-arch" = 132
    | |       "IOPMIsPowerManaged" = Yes
    | |       "NVDA,gart-width" = 64
    | |       "IOPCIExpressLinkCapabilities" = 81153
    | |       "rm_multiboard_capable" = <01000000>
    | |       "IOPowerManagement" = {"ChildrenPowerState"=2,"CurrentPowerState"=2}
    | |       "AAPL,gart-width" = 64
    | |       "IOInterruptSpecifiers" = (<1000000007000000>,<0a00000000000100>)
    | |       "device-id" = <02040000>
    | |       "vendor-id" = <de100000>
    | |       "AAPL,gray-value" = <c38c6400>
    | |       "IOPCIExpressLinkStatus" = 4353
    | |       "AAPL,ndrv-dev" = Yes
    | |     }

Thanks...


Title: Re: GFX-Strings
Post by: bob on December 16, 2007, 11:30:29 PM
This is what i am trying to modify.. the only thing i changed was the memory (to 256) and the model... What else i need to change here?


Title: Re: GFX-Strings
Post by: djmastera2000 on December 16, 2007, 11:42:57 PM
Sorry for asking but, how can i test the strings posted by Thrawnhex now? EFI V8 installed already...

Wanna see if my 7600GO is working...


Title: Re: GFX-Strings
Post by: lebidou on December 16, 2007, 11:46:56 PM
djmastera2000, check this http://netkas.org/?p=40 (http://netkas.org/?p=40)


Title: Re: GFX-Strings
Post by: djmastera2000 on December 16, 2007, 11:55:32 PM
Thank You, lebidou, didn't see it lol

The string to add is that ment e.g. in here: 7600go-new.hst ?


Title: Re: GFX-Strings
Post by: bob on December 17, 2007, 12:08:00 AM
Any help please?

Without any gfx string, this is what i get when system starts:

Quote
Dec 16 21:01:44 localhost kernel[0]: NVDANV50HAL loaded and registered.
Dec 16 21:01:44 localhost kernel[0]: display: family specific matching fails
Dec 16 21:01:45: --- last message repeated 1 time ---
Dec 16 21:01:45 localhost kernel[0]: display: match category IOFramebuffer exists
Dec 16 21:01:45 localhost bootlog[57]: BOOT_TIME: 1197846097 0
Dec 16 21:01:45 localhost rpc.statd[38]: statd.notify - no notifications needed
Dec 16 21:01:45 localhost kernel[0]: dsmos: Initializing...
Dec 16 21:01:45 localhost fseventsd[48]: bumping event counter to: 0x5dcb07 (current 0x0) from log file '00000000000007a9'
Dec 16 21:01:46 localhost kernel[0]: dsmos: Hook and decryption contexts set!

And this is what i see on System Profiler:

Quote
Display:

  Type:   Display
  Bus:   PCIe
  PCIe Lane Width:   x16
  VRAM (Total):   32 MB
  Vendor:   NVIDIA (0x10de)
  Device ID:   0x0402
  Revision ID:   0x00a1
  Displays:
  Display:
      Resolution:   1024 x 768
      Depth:   32-bit Color
      Core Image:   Software
      Main Display:   Yes
      Mirror:   Off
      Online:   Yes
      Quartz Extreme:   Not Supported

Please heeelp....


Title: Re: GFX-Strings
Post by: netkas on December 17, 2007, 12:33:42 AM
8600 will not work probably.


Title: Re: GFX-Strings
Post by: djmastera2000 on December 17, 2007, 12:49:42 AM
Wow, works here with 7600GO! :)

Quote
NVIDIA GeForce 7600 GO EFI:

  Chipsatz-Modell:   NVIDIA GeForce 7600 GO EFI
  Typ:   Monitor
  Bus:   PCIe
  PCIe-Lane-Breite:   x16
  VRAM (gesamt):   256 MB
  Hersteller:   NVIDIA (0x10de)
  Geräte-ID:   0x0398
  Versions-ID:   0x00a1
  ROM-Version:   3022
  Monitore:
Monitor:
  Auflösung:   1280 x 800
  Farbtiefe:   32-Bit Farbe
  Core Image:   Hardware-unterstützt
  Hauptmonitor:   Ja
  Synchronisierung:   Aus
  Eingeschaltet:   Ja
  Quartz Extreme:   Unterstützt
  Rotation:   Unterstützt
Monitoranschluss:
  Status:   Kein Monitor angeschlossen

Sorry, is a German version LOL

Will test ext. monitor next days...


Title: Re: GFX-Strings
Post by: prolinesurfer on December 17, 2007, 01:04:24 AM
In case it hasn't been posted yet: Here's output from a 8600M GT from a MacBook Pro:

    | |   "device-properties" = <970a00000100000002000000ad0900002d00000002010c00d041030a000000000101060000010101060000007fff04001e000000730061007600650064002d0063006f006e006600690067000000040100000b083002a0000000700010069c670003027fa0058403d806400060009b03030006000d00d22528230000000001000000000000000000c30001000000000000ff028000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000320000004100410050004c002c006200610063006b006c0069006700680074002d0063006f006e00740072006f006c00000008000000010000001e00000072006f006d002d007200650076006900730069006f006e00000008000000333137351c0000006400650076006900630065005f00740079007000650000000f0000004e5644412c506172656e741e000000730075006200730079007300740065006d002d0069006400000008000000a0000000200000004e005600440041002c0046006500610074007500720065007300000008000000ff02a000100000006d006f00640065006c000000180000004765466f72636520383630304d20475420202020220000005600520041004d002c0074006f00740061006c00730069007a0065000000080000000000000814000000400030002c006e0061006d0065000000120000004e5644412c446973706c61792d4122000000400030002c006400650076006900630065005f00740079007000650000000b000000646973706c617920000000400030002c0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d616314000000400031002c006e0061006d0065000000120000004e5644412c446973706c61792d4222000000400031002c006400650076006900630065005f00740079007000650000000b000000646973706c617920000000400031002c0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d61631c000000400030002c006200750069006c0074002d0069006e0000000400000038000000400030002c007500730065002d006200610063006b006c0069006700680074002d0062006c0061006e006b0069006e0067000000040000002e000000400030002c006200610063006b006c0069006700680074002d0063006f006e00740072006f006c000000080000000100000014000000400030002c00450044004900440000008400000000ffffffffffff000610679c0000000000110103802115780a9c609958518e26125054000000010101010101010101010101010101019f25a04051840c30402033004ccf10000018000000010006103000000000000000000a20000000fe004c503135345750322d544c4131000000fe00436f6c6f72204c43440a202020004622000000400031002c0064006900730070006c00610079002d00630066006700000008000000ffff000124000000400031002c00630061006e002d0068006f0074002d0070006c0075006700000004000000100000004e005600430041005000000018000000050101010e0001000e0000000000010b00000001360000004100410050004c002c006100750078002d0070006f007700650072002d0063006f006e006e006500630074006500640000000800000001000000180000004100410050004c00300030002c005400310000000800000000000000180000004100410050004c00300030002c005400320000000800000001000000180000004100410050004c00300030002c0054003300000008000000c8000000180000004100410050004c00300030002c0054003400000008000000c8000000180000004100410050004c00300030002c005400350000000800000001000000180000004100410050004c00300030002c005400360000000800000000000000180000004100410050004c00300030002c005400370000000800000090010000360000004100410050004c00300030002c0049006e007600650072007400650072004600720065007100750065006e0063007900000008000000a3010000240000004100410050004c00300030002c004c0069006e006b00540079007000650000000800000000000000240000004100410050004c00300030002c004400750061006c004c0069006e006b00000008000000010000002a0000004100410050004c00300030002c0044006100740061004a0075007300740069006600790000000800000001000000280000004100410050004c00300030002c004c0069006e006b0046006f0072006d0061007400000008000000000000002a0000004100410050004c00300030002c0050006900780065006c0046006f0072006d006100740000000800000000000000240000004100410050004c00300030002c0049006e0076006500720074006500720000000800000000000000200000004100410050004c00300030002c0044006900740068006500720000000800000000000000320000004100410050004c00300030002c0049006e00760065007200740065007200430075007200720065006e007400000008000000000000001c000000400030002c00700077006d002d0069006e0066006f000000180000000114006478690000a30100003e0000000004000022000000400030002c0064006900730070006c00610079002d00630066006700000008000000030100001c000000400030002c00660062006f0066006600730065007400000008000000000003002e000000400030002c004100410050004c002c0062006f006f0074002d0064006900730070006c006100790000000400000014000000400030002c004e0056004d0054000000640000000b037f200610679ca0058403d806e005000600009b0387038a030000205bc505000001013000000000000000000000000000000000000000000000000000000000000000ffff000000000000804a5d05020000000000000000080000c3000000420000004100410050004c00300030002c0062006c00610063006b00730063007200650065006e002d0070007200650066006500720065006e0063006500730000000800000000000008420000004100410050004c00300031002c0062006c00610063006b00730063007200650065006e002d0070007200650066006500720065006e0063006500730000000800000000000008de0000000400000002010c00d041030a0000000001010600001b7fff04002200000070006c006100740066006f0072006d00460061006d0069006c00790000000500000000300000004d006100780069006d0075006d0042006f006f007400420065006500700056006f006c0075006d0065000000050000003228000000500069006e0043006f006e00660069006700750072006100740069006f006e00730000001c0000004001109050402b011001a09020308b0160e04b0130e0cb01180000006c00610079006f00750074002d00690064000000080000002c000000>



Title: Re: GFX-Strings
Post by: bob on December 17, 2007, 04:33:52 AM
Yeah maybe not, but not sure; its already working for 8600m gt, who knows :) thats why i want to test but not sure what i need to add... Can some one help me please?


Title: Re: GFX-Strings
Post by: nightcbis on December 17, 2007, 05:12:04 AM
When I converted the string to bin and then to .plist and opened it. Every "data" field was just numbers. Should it really be that way? Even the name were numbers. Unreadable.

Is this really correct?
It would be alot simpler if I could edit for example the name as normal text.



Title: Re: GFX-Strings
Post by: Thrawnhex on December 17, 2007, 06:17:57 AM
Yes it's correct, because gfxutil can only convert hexdata... if you open the binary file you can change things like the name... but the file has to have the same lenght after editing... when you open with Property List Editor, you see numbers but with Hex Fiend you can convert them to strings, than change your values, and convert them back.

Sry... but for the last package i forgot to remove to remove the breaks... so you should do this to get to work.

@djmastera2000: are you sure you have no color issues like lebidou? ---Grüße aus Deutschland ;)---

@netkas: does it work in any way? and if yes, thats the issue?

New versions in about 6 hours...

Thrawnhex


Title: Re: GFX-Strings
Post by: 0xdeadbeef on December 17, 2007, 08:57:51 AM
I don't know how important this is for those with Radeon cards, but  the ATY,PCIConfigSpace value contains the DEV_ID, mem & i/o values for a particular card. Maybe setting these values to the ones for your particular machine ( get it with PCI Explorer or something) might help. Still having no luck with my HD2400 mobility, even though the dev_id is already in the 10.5.1 X2000 kext.

Anyone had any luck with a HD2400 mobility at all?

 


Title: Re: GFX-Strings
Post by: netkas on December 17, 2007, 09:42:14 AM
check my old blog, on freeflux, it works with external screen.


Title: Re: GFX-Strings
Post by: gotoh on December 17, 2007, 09:47:16 AM
Thrawnhex, did the secondary display became active after adding GPU sensor data (same data as in NVinject) ?

EDIT
btw, X1900 string is not working here either... So far, I did not get a single string to work on any card I have...
I'll try the latest Thrawnhex string now.


Title: Re: GFX-Strings
Post by: 0xdeadbeef on December 17, 2007, 10:36:40 AM
check my old blog, on freeflux, it works with external screen.

Yeah, I reported it working 10.4.9 with Natit.mobility ;D
No luck on Leo with EFI yet though.


Title: Re: GFX-Strings
Post by: gotoh on December 17, 2007, 10:41:47 AM
Well, I don't know if this is because of my mobos (P35 and G33 based) but none of the things I've tried worked.
Tested on GeForce 7900GS, 7600GS, 8600GT and Radeon X1900GT...

My rigs are totally GFXstring non compliant... :(


Title: Re: GFX-Strings
Post by: lebidou on December 17, 2007, 11:09:54 AM
I tried the last Thrawnhex's gfx-string in dual display mode :

first it didn't work but replacing the NVCAP by the one used in NVinjectGO 0.0.9 made dual screen working.
A strange thing happens about the colour problem : the external display is full colored but not the internal one. So I tried to add the EDID in the plist file (@1,EDID) driver doesn't load.

My  NVCAP is : 04000000 00000d00 02000000 00000007 00000000

Attached the ioreg dump with dual display conf and Thrawnhex's string


Title: Re: GFX-Strings
Post by: djmastera2000 on December 17, 2007, 11:47:41 AM
...

@djmastera2000: are you sure you have no color issues like lebidou? ---Grüße aus Deutschland ;)---

...

New versions in about 6 hours...

Thrawnhex


Grüße zurück :-D

No, not any issues yet, works perfectly w/ QE/CI/O-GL/Full Color/Full Resolution :)
What a mass LOL

Hope external will do it to...


I tried the last Thrawnhex's gfx-string in dual display mode :

first it didn't work but replacing the NVCAP by the one used in NVinjectGO 0.0.9 made dual screen working.
A strange thing happens about the colour problem : the external display is full colored but not the internal one. So I tried to add the EDID in the plist file (@1,EDID) driver doesn't load.

My  NVCAP is : 04000000 00000d00 02000000 00000007 00000000

Attached the ioreg dump with dual display conf and Thrawnhex's string

So you did it external by replacing NVCAP inside the string only? That would be very cool...:)
Would you post the whole string posted by Thrawnhex(7600GO plz) w/ added NVCAP only please?
So i could test it then when i am at home...


@ALL

Thank you all for doing such good thing, keep up the great work!!! :)


PS: My PCMCIA still doesn't work LOL


Title: Re: GFX-Strings
Post by: lebidou on December 17, 2007, 12:36:56 PM
Quote
So you did it external by replacing NVCAP inside the string only?
Did you tried dual mode without modifying the string ? It seems to depend on cards. Maybe it works for you without any changes.

Quote
No, not any issues yet, works perfectly w/ QE/CI/O-GL/Full Color/Full Resolution
I know the color problem occured on some 7600GO with Natit but not all of them. Seems to occur on some Sony laptops too.

I attached my com.apple.Boot.plist

PS. : If you get color issues with my NVCAP please report us. I would like to know if this is the problem or not.



Title: Re: GFX-Strings
Post by: masaemon on December 17, 2007, 01:06:29 PM
Yeessss!!!! Finally after 10 hours of trying out different configurations my 7600gt is working!! Dual Display Support and Mouse Pointer is there, too ;).

I think the only thing for other GeForce 7xxx Cards is to change the name... from "NVIDIA GeForce 7600 GT EFI" to whatever you like!

I tried my string on XFX 7600gt 256MB VRAM...

Please try this, on every Geforce Card from 5xxx to 8xxx, to see if it workes there, too...

Here is the String: http://www.mediafire.com/?5dwd0yzm9nz (http://www.mediafire.com/?5dwd0yzm9nz)

Thrawnhex

P.S.: I created 2 new file-formats called .bst (=Binary STring) and .hst (=Hexadecimal STring)
Yes! it woks for my 7900GS 512M!!!(V-rom flashed),now i'll try it with the original v-ram.
 Thank you all very much!
  P.S. How can i let it shows "7900GS"?

-----------update----------
 i tried it with my org un-flashed v-rom and failed (black screen.);;
 flashing v-rom is a good way, but my 3G system memory only be shown 2.45G...

 


Title: Re: GFX-Strings
Post by: Thrawnhex on December 17, 2007, 02:10:56 PM
@lebidou: I made 2 Strings for Geforce 7xxx Go... I looked at the NVInjectGO 0.0.9 and found some values, that could be the matter.... please try!

@masaemon: after a card is reported working i'll make a string with this cardname... But you can du this, too.. just read around ;) or wait until tomorrow.

GeForce 7 Go Package: http://www.mediafire.com/?5u1vey2g0vt

Please use 7600go.hst only for 7600go... the 7xxx should work for all 7xxxGO cards...

Thrawnhex

BTW: Discussion is on irc.osx86.hu ,room #efi-gfx


Title: Re: GFX-Strings
Post by: lebidou on December 17, 2007, 02:23:31 PM
Youpi !
Thrawnhex, you made it !
I tried the 7xxxGO string without any change and everything works with full color !

Thank you everybody ! i do not even know how you do but it's simply amazing !

Code:
NVIDIA GeForce 7600 GO EFI :

  Jeu de composants : NVIDIA GeForce 7600 GO EFI
  Type : Moniteur
  Bus : PCIe
  Longueur de la voie PCIe : x16
  VRAM (totale) : 256 Mo
  Fournisseur : NVIDIA (0x10de)
  Identifiant du périphérique : 0x0398
  Identifiant de révision : 0x00a1
  Révision de la ROM : 3022-GO
  Moniteurs :
Moniteur de type inconnu :
  Résolution : 1152 x 870 @ 75 Hz
  Profondeur : Couleurs 32 bits
  Intégré : Oui
  Core Image : Avec accélération matérielle
  Miroir : Désactivé
  Connecté : Oui
  Quartz Extreme : Géré
Moniteur de type inconnu :
  Résolution : 1280 x 800
  Profondeur : Couleurs 32 bits
  Intégré : Oui
  Core Image : Avec accélération matérielle
  Moniteur principal : Oui
  Miroir : Désactivé
  Connecté : Oui
  Quartz Extreme : Géré


Title: Re: GFX-Strings
Post by: masaemon on December 17, 2007, 02:24:25 PM
@lebidou: I made 2 Strings for Geforce 7xxx Go... I looked at the NVInjectGO 0.0.9 and found some values, that could be the matter.... please try!

@masaemon: after a card is reported working i'll make a string with this cardname... But you can du this, too.. just read around ;) or wait until tomorrow.

GeForce 7 Go Package: http://www.mediafire.com/?5u1vey2g0vt

Please use 7600go.hst only for 7600go... the 7xxx should work for all 7xxxGO cards...

Thrawnhex

BTW: Discussion is on irc.osx86.hu ,room #efi-gfx

Thank you for your great work Thrawnhex!
   Any way to let my card works without v-rom flashing?
   Thanks!


Title: Re: GFX-Strings
Post by: stellarola on December 17, 2007, 02:34:16 PM
Just tried the gfx-string from Thrawnhex on my 7900GS 256MB. It's a no go on my end. Just goes straight to desktop as if there were no gfx drivers at all.

-Stell


Title: Re: GFX-Strings
Post by: gotoh on December 17, 2007, 03:01:31 PM
@lebidou: I made 2 Strings for Geforce 7xxx Go... I looked at the NVInjectGO 0.0.9 and found some values, that could be the matter.... please try!

@masaemon: after a card is reported working i'll make a string with this cardname... But you can du this, too.. just read around ;) or wait until tomorrow.

GeForce 7 Go Package: http://www.mediafire.com/?5u1vey2g0vt

Please use 7600go.hst only for 7600go... the 7xxx should work for all 7xxxGO cards...

Thrawnhex

BTW: Discussion is on irc.osx86.hu ,room #efi-gfx

Thank you for your great work Thrawnhex!
   Any way to let my card works without v-rom flashing?
   Thanks!
you could try adding a VRAM,totalsize arg (which would be <00000020> for 512Mb)
Also adding or editing FBoffset may help...


Title: Re: GFX-Strings
Post by: eberts on December 17, 2007, 03:39:47 PM
Hi,
my devicetree reports display0 under pci-bridge1. Is that common for a external PCIe card? I couldn't find any complete Mac Pro dump. I'm a little confused cause none of the strings worked with my MSI 7300GT.
Thanx


Title: Re: GFX-Strings
Post by: masaemon on December 17, 2007, 03:46:19 PM
@lebidou: I made 2 Strings for Geforce 7xxx Go... I looked at the NVInjectGO 0.0.9 and found some values, that could be the matter.... please try!

@masaemon: after a card is reported working i'll make a string with this cardname... But you can du this, too.. just read around ;) or wait until tomorrow.

GeForce 7 Go Package: http://www.mediafire.com/?5u1vey2g0vt

Please use 7600go.hst only for 7600go... the 7xxx should work for all 7xxxGO cards...

Thrawnhex

BTW: Discussion is on irc.osx86.hu ,room #efi-gfx


Thank you for your great work Thrawnhex!
   Any way to let my card works without v-rom flashing?
   Thanks!
you could try adding a VRAM,totalsize arg (which would be <00000020> for 512Mb)
Also adding or editing FBoffset may help...

 Hey,gotoh!nice to see you!
 how should i do? any detail?
 Thanx!


Title: Re: GFX-Strings
Post by: gotoh on December 17, 2007, 04:02:49 PM
you would have to use the GFXutil to convert your working string to plist (xml) then add in the device properties the VRAM,totalsize entry, and add in data for this field 00000020


Title: Re: GFX-Strings
Post by: masaemon on December 17, 2007, 04:18:55 PM
you would have to use the GFXutil to convert your working string to plist (xml) then add in the device properties the VRAM,totalsize entry, and add in data for this field 00000020
you mean as this?
<key>VRAM,totalsize</key>
<data>00000020</data>

and how to use the plist file?
can i modify the plist file of NVinject directly?
thanx!


Title: Re: GFX-Strings
Post by: pm_mickey on December 17, 2007, 04:19:51 PM
Does for someone this strings work with GeForce 7600 GS 256 MB PCIE 16?
On p35 chipset with two PCIE_16 port and one NVIDIA GeForce 7600 GS 256 MB tested every string without success!

Card is on
    | |   +-o pci-bridge@1  <class IOPCIDevice, registered, matched, active, busy 0, retain 10>


Title: Re: GFX-Strings
Post by: frantisheq on December 17, 2007, 04:27:42 PM
Looking at NVDANV40Hal.kext Info.plist there is no 0x01d1 (or is it?) IOPCIPrimaryMatch string for 7300LE. But if i use Thrawnex's gfx string it loads NVDANV40Hal.kext. Why? Only 1024x768 though.


Title: Re: GFX-Strings
Post by: gotoh on December 17, 2007, 05:01:58 PM
you would have to use the GFXutil to convert your working string to plist (xml) then add in the device properties the VRAM,totalsize entry, and add in data for this field 00000020
you mean as this?
<key>VRAM,totalsize</key>
<data>00000020</data>

and how to use the plist file?
can i modify the plist file of NVinject directly?
thanx!
yes, and then convert back the plist file you converted with GFXutil to binary file as detailed here : http://forum.netkas.org/index.php/topic,9.msg307.html#msg307


Title: Re: GFX-Strings
Post by: masaemon on December 17, 2007, 05:40:38 PM
you would have to use the GFXutil to convert your working string to plist (xml) then add in the device properties the VRAM,totalsize entry, and add in data for this field 00000020
you mean as this?
<key>VRAM,totalsize</key>
<data>00000020</data>

and how to use the plist file?
can i modify the plist file of NVinject directly?
thanx!
yes, and then convert back the plist file you converted with GFXutil to binary file as detailed here : http://forum.netkas.org/index.php/topic,9.msg307.html#msg307

 I tried it, the result is:
1)with patched v-rom:
  NVIDIA GeForce 7600 GT EFI:

  Chipset Model:   NVIDIA GeForce 7600 GT EFI
  Type:   Display
  Bus:   PCIe
  PCIe Lane Width:   x16
  VRAM (Total):   -716 MB
  Vendor:   NVIDIA (0x10de)
  Device ID:   0x0292
  Revision ID:   0x00a1
  ROM Revision:   3022
  Displays:
RDT221WM:
  Resolution:   1680 x 1050 @ 60 Hz
  Depth:   32-bit Color
  Core Image:   Hardware Accelerated
  Main Display:   Yes
  Mirror:   Off
  Online:   Yes
  Quartz Extreme:   Supported
  Rotation:   Supported
Display Connector:
  Status:   No display connected

2)with original v-rom
  i got a black screen.

 i thinks maybe some data setting wrong...
 must go to bed today, c u all tomorrow!
 Thanks!!


Title: Re: GFX-Strings
Post by: pm_mickey on December 17, 2007, 05:55:52 PM
try...

<key>VRAM,totalsize</key>
<data>20000000</data>


for 512 mb cards


Title: Re: GFX-Strings
Post by: gotoh on December 17, 2007, 06:02:56 PM
ok, so data are reversed...


Title: Re: GFX-Strings
Post by: Thrawnhex on December 17, 2007, 06:47:07 PM
Hello,

I've looked around a bit to get better knowledge of some keys...

The 7300 series is still a problem.. and i don't know how to solve this...

The Vram things seems to be interesting for GF8xxx users, too!
Are there any working 8xxx drivers?

Anybody with 7200, 7500 here, who has any results for us?

Thrawnhex


Title: Re: GFX-Strings
Post by: bob on December 17, 2007, 07:19:02 PM
I am still looking to get 8600GT work .. :S
Ive added the id to NVDAResman and NVDANV50Hal also the actual plist i am ussing is atached.
But after booting i saw this:

Quote
Dec 17 15:23:26 localhost kernel[0]: NVDANV50HAL loaded and registered.
Dec 17 15:23:26 localhost kernel[0]: NVDA::probe(display)
Dec 17 15:23:26 localhost kernel[0]: NVDA::start(display) <1>

But the GUI never commes... :(




Title: Re: GFX-Strings
Post by: Thrawnhex on December 17, 2007, 07:37:42 PM
Is there a kext that works with 8600gt?

Thrawnhex

Edit: New Versions! Only changes are the Names...http://www.mediafire.com/?cytghb0gvnj
@masaemon: this should work to change your gfx-name ;)


Title: Re: GFX-Strings
Post by: djmastera2000 on December 17, 2007, 07:50:58 PM
Quote
So you did it external by replacing NVCAP inside the string only?
Did you tried dual mode without modifying the string ? It seems to depend on cards. Maybe it works for you without any changes.

Quote
No, not any issues yet, works perfectly w/ QE/CI/O-GL/Full Color/Full Resolution
I know the color problem occured on some 7600GO with Natit but not all of them. Seems to occur on some Sony laptops too.

I attached my com.apple.Boot.plist

PS. : If you get color issues with my NVCAP please report us. I would like to know if this is the problem or not.



I can test it tomorrow budd :)


Title: Re: GFX-Strings
Post by: lebidou on December 17, 2007, 07:56:56 PM
I'm not sure you need to. The lastest Thrawnhex's versions works great, even in dual display mode, and color problem is resolved !


Title: Re: GFX-Strings
Post by: bob on December 17, 2007, 08:01:23 PM
I cant get this working... But here are if you want to test...


MBP Santa Rosa (MacBookPro3,1)
GeForce 8600M GT
NVIDIA (0x10de)
Device ID 0x0407
Version ID 0x00a1
ROM Version 3175

ioreg -l -w0 -p IODeviceTree | grep device-propmacbookpro:~ user$ ioreg -l -w0 -p IODeviceTree | grep device-prop
    | |   "device-properties" = <970a00000100000002000000ad0900002d00000002010c00d041030a000000000101060000010101060000007fff04001e000000730061007600650064002d0063006f006e006600690067000000040100000b083002a0000000700010069c660003027fa0058403d806400060009b03030006000d00d22528230000000001000000000000000000850101000000000000ff028000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000320000004100410050004c002c006200610063006b006c0069006700680074002d0063006f006e00740072006f006c00000008000000010000001e00000072006f006d002d007200650076006900730069006f006e00000008000000333137351c0000006400650076006900630065005f00740079007000650000000f0000004e5644412c506172656e741e000000730075006200730079007300740065006d002d0069006400000008000000a0000000200000004e005600440041002c0046006500610074007500720065007300000008000000ff02a000100000006d006f00640065006c000000180000004765466f72636520383630304d20475420202020220000005600520041004d002c0074006f00740061006c00730069007a0065000000080000000000000814000000400030002c006e0061006d0065000000120000004e5644412c446973706c61792d4122000000400030002c006400650076006900630065005f00740079007000650000000b000000646973706c617920000000400030002c0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d616314000000400031002c006e0061006d0065000000120000004e5644412c446973706c61792d4222000000400031002c006400650076006900630065005f00740079007000650000000b000000646973706c617920000000400031002c0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d61631c000000400030002c006200750069006c0074002d0069006e0000000400000038000000400030002c007500730065002d006200610063006b006c0069006700680074002d0062006c0061006e006b0069006e0067000000040000002e000000400030002c006200610063006b006c0069006700680074002d0063006f006e00740072006f006c000000080000000100000014000000400030002c00450044004900440000008400000000ffffffffffff000610669c0101010128100103802115780a50c59858528e27255054000000010101010101010101010101010101019e25a04051840c30402033004ccf10000018000000010006103000000000000000000a20000000fe0042313534505730342056300a20000000fe00436f6c6f72204c43440a202020008722000000400031002c0064006900730070006c00610079002d00630066006700000008000000ffff000124000000400031002c00630061006e002d0068006f0074002d0070006c0075006700000004000000100000004e005600430041005000000018000000050101010e0001000e0000000000010b00000001360000004100410050004c002c006100750078002d0070006f007700650072002d0063006f006e006e006500630074006500640000000800000001000000180000004100410050004c00300030002c005400310000000800000000000000180000004100410050004c00300030002c005400320000000800000001000000180000004100410050004c00300030002c0054003300000008000000c8000000180000004100410050004c00300030002c0054003400000008000000c8000000180000004100410050004c00300030002c005400350000000800000001000000180000004100410050004c00300030002c005400360000000800000000000000180000004100410050004c00300030002c005400370000000800000090010000360000004100410050004c00300030002c0049006e007600650072007400650072004600720065007100750065006e0063007900000008000000a3010000240000004100410050004c00300030002c004c0069006e006b00540079007000650000000800000000000000240000004100410050004c00300030002c004400750061006c004c0069006e006b00000008000000010000002a0000004100410050004c00300030002c0044006100740061004a0075007300740069006600790000000800000001000000280000004100410050004c00300030002c004c0069006e006b0046006f0072006d0061007400000008000000000000002a0000004100410050004c00300030002c0050006900780065006c0046006f0072006d006100740000000800000000000000240000004100410050004c00300030002c0049006e0076006500720074006500720000000800000000000000200000004100410050004c00300030002c0044006900740068006500720000000800000000000000320000004100410050004c00300030002c0049006e00760065007200740065007200430075007200720065006e007400000008000000000000001c000000400030002c00700077006d002d0069006e0066006f000000180000000114006478690000a30100003e0000000004000022000000400030002c0064006900730070006c00610079002d00630066006700000008000000030100001c000000400030002c00660062006f0066006600730065007400000008000000000003002e000000400030002c004100410050004c002c0062006f006f0074002d0064006900730070006c006100790000000400000014000000400030002c004e0056004d0054000000640000000b037f200610669ca0058403d806e005000600009b0387038a030000205bc505000001016100000000000000000000000000000000000000000000000000000000000000ffff000000000000804a5d0502000000000000000008000085010000420000004100410050004c00300030002c0062006c00610063006b00730063007200650065006e002d0070007200650066006500720065006e0063006500730000000800000000000008420000004100410050004c00300031002c0062006c00610063006b00730063007200650065006e002d0070007200650066006500720065006e0063006500730000000800000000000008de0000000400000002010c00d041030a0000000001010600001b7fff04002200000070006c006100740066006f0072006d00460061006d0069006c00790000000500000000300000004d006100780069006d0075006d0042006f006f007400420065006500700056006f006c0075006d0065000000050000003228000000500069006e0043006f006e00660069006700750072006100740069006f006e00730000001c0000004001109050402b011001a09020308b0160e04b0130e0cb01180000006c00610079006f00750074002d00690064000000080000002c000000>



Title: Re: GFX-Strings
Post by: gotoh on December 17, 2007, 08:47:38 PM
for those of you who get the GFXstring working, what PCI bridge is being used ? Also are there any P35 users with success ?


Title: Re: GFX-Strings
Post by: BladeRunner on December 17, 2007, 08:51:34 PM
I have been following this topic with great interest.  I know there must be a value to this approach given all the effort being expended.  However, I am not sure what that value is.

I can see value to keeping com.apple.Boot.plist rather plain and easy to edit using vi or some other *nix editor.  So, I wonder why is this approach more desirable than something like Natit.kext or NVInject.kext?



Title: Re: GFX-Strings
Post by: Thrawnhex on December 17, 2007, 08:57:25 PM
BladeRunner: Bacause it makes you PC more beeing like a mac! And you shoud be able to boot up faster ;)

I started looking at GF8600, now trying to combine the dump and my 7xxx string!

Thrawnhex

Edit: I made a string... If it works, only for GF8600... pleas try! http://www.mediafire.com/?9wtwmsxmgnl


Title: Re: GFX-Strings
Post by: Thrawnhex on December 17, 2007, 10:19:17 PM
Ok, this one didn't work... but a made a new one, and i hope like always, that it works :D

Alpha for GF8600:

http://www.mediafire.com/?51unn1jjmkb

And a pre-alpha for 7300LE: NOT WORKING!!!

http://www.mediafire.com/?7syfxugi1d9

Thrawnhex


Title: Re: GFX-Strings
Post by: masaemon on December 18, 2007, 01:48:50 AM
anyone knows how to remove the "return" character from the hex file converted by gfxutil?

Thanks!



Title: Re: GFX-Strings
Post by: citizentim on December 18, 2007, 02:12:43 AM
anyone knows how to remove the "return" character from the hex file converted by gfxutil?

Thanks!



Here you go.  Just change the inputfile and outputfile filenames.

Quote
perl -e 'open FILE,"inputfile.txt";foreach (<FILE>) {chomp ($_);print "$_";}' > outputfile.txt



Title: Re: GFX-Strings
Post by: blackknight on December 18, 2007, 02:20:38 AM
yeah
change
06000000'7FFF0
to
06000002'7FFF0

I tried this and still no go. I really can't figuere what I'm doing wrong. I started with the 2600 file you gave me, edited it with my deviceID, converted it back as usual, and copied/pasted into the boot.plist. I still get a black screen with random artifacts (same thing whenever Natit isn't running).


Title: Re: GFX-Strings
Post by: citizentim on December 18, 2007, 02:28:17 AM
For the people not inclined to write shell scripts, here are a couple of small scripts to automate all the conversion process.  Extract the attached .tgz file to the directory of your choosing (should be /usr/bin or your gfxutil directory).  step1.sh makes your plist from a string text file, and step2.sh converts your plist back into a string (with truncated CR's).

http://rapidshare.com/files/77319155/gfxutilauto.tgz.html (http://rapidshare.com/files/77319155/gfxutilauto.tgz.html)


Title: Re: GFX-Strings
Post by: masaemon on December 18, 2007, 02:48:51 AM
anyone knows how to remove the "return" character from the hex file converted by gfxutil?

Thanks!



Here you go.  Just change the inputfile and outputfile filenames.

Quote
perl -e 'open FILE,"inputfile.txt";foreach (<FILE>) {chomp ($_);print "$_";}' > outputfile.txt


i'll try it tonight, thank you very much!


Title: Re: GFX-Strings
Post by: masaemon on December 18, 2007, 02:50:39 AM
anyone got the 7xxx 512M desktop card work without V-rom flashing?


Title: Re: GFX-Strings
Post by: bob on December 18, 2007, 03:14:51 AM
Just an advice for every one.. dont even think about MacVidia driver!, its not just its not gonna work (kernel panic), but it also f... all the system!!! I had to reinstall Leo!!!


Title: Re: GFX-Strings
Post by: djmastera2000 on December 18, 2007, 07:45:04 AM
I'm not sure you need to. The lastest Thrawnhex's versions works great, even in dual display mode, and color problem is resolved !

Sure i wanna test it lol

And how about tv-out, also working, or crap :-D


Title: Re: GFX-Strings
Post by: aportner on December 18, 2007, 08:30:05 AM
Has anyone tried the 8600M alpha yet?  Really interested to see if this works.


Title: Re: GFX-Strings
Post by: Thrawnhex on December 18, 2007, 08:50:27 AM
anyone knows how to remove the "return" character from the hex file converted by gfxutil?

Thanks!



Here you go.  Just change the inputfile and outputfile filenames.

Quote
perl -e 'open FILE,"inputfile.txt";foreach (<FILE>) {chomp ($_);print "$_";}' > outputfile.txt



OK, I simply search with textedit for the breakes, using a copied return from another textfile ;) Thats fast, and without terminal :D

anyone got the 7xxx 512M desktop card work without V-rom flashing?

There isn't a kext... or at least an NVCAP value, so creating a string will be very hard...

The TV out.... mhh.. i haven't test yet, so try! If it works: good, and if not, this'll be another project!

@citizentim: i made such scripts for myself, but thank you!

Thrawnhex





Title: Re: GFX-Strings
Post by: 0xdeadbeef on December 18, 2007, 09:07:36 AM
anyone knows how to remove the "return" character from the hex file converted by gfxutil?

Thanks!

Alternatively:

Quote

tr -d ' \n' <in.txt >out.txt



Title: Re: GFX-Strings
Post by: masaemon on December 18, 2007, 09:47:01 AM
Thank you all so much!! ;D ;D


Title: Re: GFX-Strings
Post by: 0xdeadbeef on December 18, 2007, 10:46:31 AM
Here's a little helper script I'm using when doing "extreme editing" of gfx strings. ;)

Quote


#!/bin/sh

if [ -z $1 ]; then
        echo "USAGE: $0 plistfile"
        exit -1;
fi

./gfxutil "$1" "/tmp/gfxtmp.bin"

sudo defaults write '/Library/Preferences/SystemConfiguration/com.apple.Boot' \
                'device-properties' `xxd -ps '/tmp/gfxtmp.bin' | tr -d '\n'`

sudo plutil -convert xml1 '/Library/Preferences/SystemConfiguration/com.apple.Boot.plist'



it converts and trims the string before inserting it into com.apple.Boot.plist


Title: Re: GFX-Strings
Post by: Thrawnhex on December 18, 2007, 10:49:34 AM
I made a thread for nVidia gfx-cards...

@Minority: please make one for Ati cards!

@0xdeadbeef: thank you for this! It's all inone ;)

@all: you use it with -v and the name of your plist file.

Thrawnhex


Title: Re: GFX-Strings
Post by: masaemon on December 18, 2007, 11:56:26 AM
try...

<key>VRAM,totalsize</key>
<data>20000000</data>


for 512 mb cards

i tried this too and got all same result:
maybe there is no way without flashing bios...
1)with patched v-rom:
  NVIDIA GeForce 7600 GT EFI:

  Chipset Model:   NVIDIA GeForce 7600 GT EFI
  Type:   Display
  Bus:   PCIe
  PCIe Lane Width:   x16
  VRAM (Total):   -716 MB
  Vendor:   NVIDIA (0x10de)
  Device ID:   0x0292
  Revision ID:   0x00a1
  ROM Revision:   3022
  Displays:
RDT221WM:
  Resolution:   1680 x 1050 @ 60 Hz
  Depth:   32-bit Color
  Core Image:   Hardware Accelerated
  Main Display:   Yes
  Mirror:   Off
  Online:   Yes
  Quartz Extreme:   Supported
  Rotation:   Supported
Display Connector:
  Status:   No display connected

2)with original v-rom
  i got a black screen.



Title: Re: GFX-Strings
Post by: freebsdx on December 18, 2007, 12:21:28 PM
Hi everyone. When using the GFX strings methods, can Geforce 8800GTX and 8800GTS using G80 kernel work?

And what's more, it is said that the Geforce 8600GT is under developing. So I am wondering how well it is supported? Or is there any defects when using the GFX strings to driver 8600GT?

Thank you for any reply.


Title: Re: GFX-Strings
Post by: Thrawnhex on December 18, 2007, 01:10:15 PM
OK, for nVidia discussion pleas go to the nVidia Thread...

But, nothing works with Gf8xxx yet :(

Thrawnhex


Title: Re: GFX-Strings
Post by: time ed on December 18, 2007, 02:41:57 PM
try...

<key>VRAM,totalsize</key>
<data>20000000</data>

for 512 mb cards

I thought 512 would be 00000200


Title: Re: GFX-Strings
Post by: AlainTox on December 18, 2007, 08:58:09 PM
Hi everybody, thanks for all your efforts to make hackintosh always working better.
Special thanks to netkas for it amazing work with EFI emulation.

I own an ATI X1600 pro 256MB.
examples from bob device-propertiesafter conversion to plist.

Here is some little finds, hope this could help

~ : echo "c571" | xxd -r -p  | openssl enc -base64
xXE=

xXE= is the value i want to change to fit my card in the plist file

~ : echo "BAAAAA==" | openssl enc -base64 -d | xxd -p
04000000

~ : printf "01.00.086" | openssl enc -base64
MDEuMDAuMDg2

Add AA== at the end

~ : echo "MDEuMDAuMDY4AA==" | openssl enc -base64 -d
01.00.068~ :



Title: Re: GFX-Strings
Post by: [quark] on December 18, 2007, 10:57:46 PM
I started with the 2600 file you gave me, edited it with my deviceID, converted it back as usual, and copied/pasted into the boot.plist. I still get a black screen with random artifacts (same thing whenever Natit isn't running).

The same here...


Title: Re: GFX-Strings
Post by: mcmatrix on December 20, 2007, 09:23:59 AM
New version of gfxutil is out!

http://forum.netkas.org/index.php?topic=64.0


Title: Re: GFX-Strings
Post by: keplenk on December 28, 2007, 03:28:28 AM
anyone want to try this x3100 edited ?


Hi gotoh,

I tried using the your edited x3100 string, remove Paulicat Natit.kext, rebooted and it shown a totally distorted white screen.  However, I know it went to desktop because when I use voice over (alt + F5), the computer talks.

How I used the string.

I just copied the the whole sting from your txt file and pasted it on my com.apple.Boot.plist

added: <key>device-properties</key>
       <string>blablablalba</string>

My DevID is actually the same with the real macbook so I dont know if I did something wrong.

Do I add something or do I have to edit your "edited X3100 string"

THank you very much


Title: Re: GFX-Strings
Post by: gotoh on December 28, 2007, 09:53:22 AM
you should try editing it with the GFXutil from mcmatrix


Title: Re: GFX-Strings
Post by: keplenk on December 28, 2007, 02:34:27 PM
you should try editing it with the GFXutil from mcmatrix

Hi gotoh,

THanks for your reply.

What(How) do I exactly edit with your txt file using GFXutil?  What information do I put in and how do I start it.  I see that the new guide doesnt say about editing it.  It only talks about putting it on your Boot.plist.

After I've converted your txt file to plist.  Opened it with plist editor, what should I edit there? Or what information should I put inside the plist file before I convert it back to hex?

I see this:

....
<dict>
   <key>02010C00D041030A000000000101060000027FFF0400</key>
   <dict>
      <key>AAPL,NumDisplays</key>
      <integer>4</integer>
      <key>AAPL,NumFramebuffers</key>
      <integer>2</integer>
      <key>AAPL,SelfRefreshSupported</key>
      <integer>1</integer>
          so on ....


I'm really sorry for these noob questions, but I would also like to help since only a few people with X3100 is trying this out.

Thank you.

 


Title: Re: GFX-Strings
Post by: omni on December 29, 2007, 06:12:07 PM
Hi Keplenk,

I'm experiencing the same issue like you (and a few others) are, having the garbled screen with X3100 (my system is an AOpen miniPC with 2a02 device-id which should technically work out of the box).

That garbled screen tells me that the timings are all wrong which implies that no settings are being sent to the driver either from GMANatit or from the device-properties string in the Boot plist.

Hopefully we can figure this out (soon) ...


Title: Re: GFX-Strings
Post by: mcmatrix on December 29, 2007, 07:10:20 PM
I have found a interesting picture (table). See attachment.
This is how gfx device address is build.
If you want to dig deeply into efi then
look https://edk.tianocore.org/ files.

That edk includes all specification to encode and decode this device address hex.
I hope to include this encode/decode functionality into some gfxutils future version.


Title: Re: GFX-Strings
Post by: neosonic2k on December 30, 2007, 06:38:38 AM
No go with any of the strings posted here. Same result, screen goes white then fades to black horribly, external display works. Stupid sony vaio and go7400...

Looks like my go7400 is 64+192, since darwin bootloader only detects 64, and its supposed to be 256MB. I think.

Well, on the bright side, this forced me to learn how to use single user mode to restore the com.apple.Boot.plist the hard way. No more reinstalling. Yay.

If I could find out how to have QE/CI (i learned those two terms last week...), 1280x800 on my internal laptop display... I don't care about s-video or external vga for that matter...


Title: GFX-Strings question
Post by: mb2k on December 30, 2007, 04:23:45 PM
Hi All and sorry for the stupid question ...

What do I get/save by using gfx-strings? ,
does it save me from needing to use modified display kests ? or it just makes osx see my card as an apple brand? ,
TIA



Title: Re: GFX-Strings
Post by: mcmatrix on December 31, 2007, 12:12:03 PM
Does someone know why ioreg wont show device-properties hex string?
I have EFI8 installed (at least i think that i have, how can i prove that) and Boot.plist correctly modified.

I have tried "ioreg -w0 -l |grep device-prop" in single user mode
and windowed mode with no success.

What may be the reason of that?
Does PCEFI at all reads my hexstr from Boot.plist?

My test computer is HP DC7100, P4 computer with Radeon HD2400Pro (PCIE)(not working yet). Iam using patched kernel 10.5.1



Problem solved.... seems that i was daydreaming because it was so simple mistake :) "-p IODeviceTree" was the missing switch from ioreg.


Title: Re: GFX-Strings
Post by: tom3q on December 31, 2007, 01:54:53 PM
mcmatrix:

Do you have XCode Tools installed? If yes, you should have a nice tool to view IORegistry called IORegistryExplorer...


Title: GFX-Strings
Post by: Tomaso on December 31, 2007, 03:57:32 PM
Can someone please point to a tutorial for newbies?

I understand that with the EFI bootloader - congrats to Netkas- we are able to use the original Apple kexts (drivers) for gfx cards and even modify them to work on gfx cards which are not used in current models of Apple computers. So we can forget Natit.kext, Nvinject.kext etc.
 
I  assume that this way pure EFI commands are sent to the VGA card and Netkas bootloader acts as an interface and converts these EFI calls to standard BIOS calls which are then understandable for standard PC VGA card’s firmware.

So I think the reason that Netkas bootloader needs the gfx-string data in com.apple.Boot.plist is to be able to capture the commands of the original Apple VGA kexts and and convert EFI to BIOS commands.

These are just my thoughts about how this thing works, I am not a developer/programmer so I just try to think logically.

My problem is that I don’t know which files to use with gfxutil and where can I edit/delete EDID data.

I have a Radeon HD2600 XT 256 MB card.
Currently I am using PC_EFI V8.0 bootloader with Vanilla kernel 10.5.1, I read somewhere that 10.5.2 is out, but apple software update is not downloading it yet.

So when I paste this card’s gfx-string data into com.apple.Boot.plist and delete Natit.kext and I reboot I just get a pixel garbage on my screen, I read that in this case I should remove EDID data so it will detect it and would work.

But where, in what file do I find the EDID data? And where is the bin file I should convert to hex with xxd and convert it to plist with gfxutil modify settings and convert it back to bin? I only know com.apple.Boot.plist file and nothing more.

I think that when I open System Profiler and look at Software->Extensions info I see only the kexts currently in use on my system. ATIRadeonX2000.kext is in use, should I fiddle with that? I didn’t find EDID information in it either.

Can someone please help and write or point to a little howto on this issue, what files to use and where to copy them?

Thanks in advance!

Tomaso


Title: Re: GFX-Strings
Post by: 0xdeadbeef on December 31, 2007, 04:16:25 PM


I understand that with the EFI bootloader -

Tomaso


Nope. The "EFI bootloader" just provides a fake "map" (if you like) of hardware that is installed in the machine to the OS. Pretty much like Natit does for gfx hardware in the device tree later in the boot sequence.

EFI itself is a much more complicated beast which can provide runtime services etc, but that has nothing to do with the bootloader per se.


Title: Re: GFX-Strings
Post by: BladeRunner on January 01, 2008, 03:04:14 AM
Does someone know why ioreg wont show device-properties hex string?
I have EFI8 installed (at least i think that i have, how can i prove that) and Boot.plist correctly modified.

I have tried "ioreg -w0 -l |grep device-prop" in single user mode
and windowed mode with no success.

What may be the reason of that?
Does PCEFI at all reads my hexstr from Boot.plist?

My test computer is HP DC7100, P4 computer with Radeon HD2400Pro (PCIE)(not working yet). Iam using patched kernel 10.5.1




I have not been able to get device properties to work, but it did show up in my ioreg dump.  I use this command:

Code:
ioreg -l -w0 -p IODeviceTree

I don't kow how to tell which version of efi is installed, but there is an indication that some version is installed if you use the -v flag when you boot the system.


Title: Re: GFX-Strings
Post by: FavleX on January 02, 2008, 12:00:58 PM
Hi!
anyone here could point me to the right direction to get the gfx-string for nvidia 7900GS 256 MB?
Or do u think it will never be supported?


Title: Re: GFX-Strings
Post by: Thrawnhex on January 03, 2008, 03:44:01 PM
I think no gs card s supported right now.. except the 512mb cards flashed... Make your own string or wait...

Thrawnhex


Title: Re: GFX-Strings
Post by: dotsam on January 04, 2008, 01:53:34 AM
This is the string I have working for my 7900GS

 
Code:
a603000001000000010000009a0300001400000002010c00d041030a000000000101060000010101060000007fff040014000000400032002c006e0061006d00650000001100000073656e736f722d706172656e7436000000400032002c00680077006300740072006c002d0070006100720061006d0073002d00760065007200730069006f006e00000008000000000000021c0000006400650076006900630065005f0074007900700065000000100000004e5644412c4765466f7263650e0000006e0061006d00650000000f0000004e5644412c506172656e7422000000400030002c006400650076006900630065005f00740079007000650000000b000000646973706c6179100000006d006f00640065006c0000001e0000004e5649444941204765466f72636520373930302047532045464922000000400031002c006400650076006900630065005f00740079007000650000000b000000646973706c617912000000400032002c007200650067000000080000000000000222000000400032002c006400650076006900630065005f0074007900700065000000120000004e5644412c6770752d64696f646520000000400032002c0063006f006d00700061007400690062006c0065000000160000004e5644412c73656e736f722d706172656e7422000000400032002c002300730069007a0065002d00630065006c006c0073000000080000000000000020000000400031002c0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d616314000000400030002c006e0061006d0065000000120000004e5644412c446973706c61792d413a000000400032002c0068007700730065006e0073006f0072002d0070006100720061006d0073002d00760065007200730069006f006e000000080000000000000226000000400032002c0023006100640072006500730073002d00630065006c006c0073000000080000000000000114000000400031002c006e0061006d0065000000120000004e5644412c446973706c61792d4220000000400030002c0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d61631e00000072006f006d002d007200650076006900730069006f006e0000000800000033303232100000004e00560043004100500000001800000004000000000003000c00000000000007000000000e0000004e00560050004d0000002000000001000000000000000000000000000000000000000000000000000000


Title: Re: GFX-Strings
Post by: FavleX on January 04, 2008, 09:04:52 PM
@ThrawnhexThanks.but next time try to be less rude with me.I was just asking, not pretending. :(

@dotsamThanks. That string is related to a 512 Mb flashed?


Title: Re: GFX-Strings
Post by: raggedjagged on January 04, 2008, 09:08:34 PM
This is the string I have working for my 7900GS

 
Code:
a603000001000000010000009a0300001400000002010c00d041030a000000000101060000010101060000007fff040014000000400032002c006e0061006d00650000001100000073656e736f722d706172656e7436000000400032002c00680077006300740072006c002d0070006100720061006d0073002d00760065007200730069006f006e00000008000000000000021c0000006400650076006900630065005f0074007900700065000000100000004e5644412c4765466f7263650e0000006e0061006d00650000000f0000004e5644412c506172656e7422000000400030002c006400650076006900630065005f00740079007000650000000b000000646973706c6179100000006d006f00640065006c0000001e0000004e5649444941204765466f72636520373930302047532045464922000000400031002c006400650076006900630065005f00740079007000650000000b000000646973706c617912000000400032002c007200650067000000080000000000000222000000400032002c006400650076006900630065005f0074007900700065000000120000004e5644412c6770752d64696f646520000000400032002c0063006f006d00700061007400690062006c0065000000160000004e5644412c73656e736f722d706172656e7422000000400032002c002300730069007a0065002d00630065006c006c0073000000080000000000000020000000400031002c0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d616314000000400030002c006e0061006d0065000000120000004e5644412c446973706c61792d413a000000400032002c0068007700730065006e0073006f0072002d0070006100720061006d0073002d00760065007200730069006f006e000000080000000000000226000000400032002c0023006100640072006500730073002d00630065006c006c0073000000080000000000000114000000400031002c006e0061006d0065000000120000004e5644412c446973706c61792d4220000000400030002c0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d61631e00000072006f006d002d007200650076006900730069006f006e0000000800000033303232100000004e00560043004100500000001800000004000000000003000c00000000000007000000000e0000004e00560050004d0000002000000001000000000000000000000000000000000000000000000000000000

You mean now I can use my 7900GS 256MB Natively without using NVInject? How do I do that??


Title: Re: GFX-Strings
Post by: bob on January 04, 2008, 10:07:45 PM
I got my 8600GT working with pcefi8 + 10.5.2 kexts with this string!!
I am on Intel DG33BU mobo with Core2Quad, and my card is a Asus Silent GForce 8600 GT 256mb :)


9b0a00000100000002000000ad0900002d00000002010c00d041030a010000000101060000010101060000007fff04001e000000730061007600650064002d0063006f006e006600690067000000040100000b083002a0000000700010069c690003027f8007b004200830005000d304030009000d00283c28230000000001000000000000000000d70301000000000000ff028000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000320000004100410050004c002c006200610063006b006c0069006700680074002d0063006f006e00740072006f006c00000008000000010000001e00000072006f006d002d007200650076006900730069006f006e00000008000000333137351c0000006400650076006900630065005f00740079007000650000000f0000004e5644412c506172656e741e000000730075006200730079007300740065006d002d0069006400000008000000a0000000200000004e005600440041002c0046006500610074007500720065007300000008000000ff02a000100000006d006f00640065006c000000180000004765466f72636520383630304d20475420202020220000005600520041004d002c0074006f00740061006c00730069007a0065000000080000000000001014000000400030002c006e0061006d0065000000120000004e5644412c446973706c61792d4122000000400030002c006400650076006900630065005f00740079007000650000000b000000646973706c617920000000400030002c0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d616314000000400031002c006e0061006d0065000000120000004e5644412c446973706c61792d4222000000400031002c006400650076006900630065005f00740079007000650000000b000000646973706c617920000000400031002c0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d61631c000000400030002c006200750069006c0074002d0069006e0000000400000038000000400030002c007500730065002d006200610063006b006c0069006700680074002d0062006c0061006e006b0069006e0067000000040000002e000000400030002c006200610063006b006c0069006700680074002d0063006f006e00740072006f006c000000080000000100000014000000400030002c00450044004900440000008400000000ffffffffffff000610699c000000000f110103802517780a5c209858518e2522505400000001010101010101010101010101010101283c80a070b02340302036006fe610000018000000010006103000000000000000000a20000000fe004c503137315755312d544c4231000000fe00436f6c6f72204c43440a202020001e22000000400031002c0064006900730070006c00610079002d00630066006700000008000000ffff000124000000400031002c00630061006e002d0068006f0074002d0070006c0075006700000004000000100000004e005600430041005000000018000000050101010e0001000e0000000000010b00000000360000004100410050004c002c006100750078002d0070006f007700650072002d0063006f006e006e006500630074006500640000000800000001000000180000004100410050004c00300030002c005400310000000800000000000000180000004100410050004c00300030002c005400320000000800000001000000180000004100410050004c00300030002c0054003300000008000000c8000000180000004100410050004c00300030002c0054003400000008000000c8000000180000004100410050004c00300030002c005400350000000800000001000000180000004100410050004c00300030002c005400360000000800000000000000180000004100410050004c00300030002c005400370000000800000090010000360000004100410050004c00300030002c0049006e007600650072007400650072004600720065007100750065006e006300790000000800000008520000240000004100410050004c00300030002c004c0069006e006b00540079007000650000000800000000000000240000004100410050004c00300030002c004400750061006c004c0069006e006b00000008000000010000002a0000004100410050004c00300030002c0044006100740061004a0075007300740069006600790000000800000001000000280000004100410050004c00300030002c004c0069006e006b0046006f0072006d0061007400000008000000000000002a0000004100410050004c00300030002c0050006900780065006c0046006f0072006d006100740000000800000000000000240000004100410050004c00300030002c0049006e0076006500720074006500720000000800000000000000200000004100410050004c00300030002c0044006900740068006500720000000800000000000000320000004100410050004c00300030002c0049006e00760065007200740065007200430075007200720065006e007400000008000000000000001c000000400030002c00700077006d002d0069006e0066006f00000018000000011400647869000008520000010000000004000022000000400030002c0064006900730070006c00610079002d00630066006700000008000000030100001c000000400030002c00660062006f0066006600730065007400000008000000000003002e000000400030002c004100410050004c002c0062006f006f0074002d0064006900730070006c006100790000000400000014000000400030002c004e0056004d0054000000640000000b037f200610699c8007b0042008b007d0070000d304b304b904000080da2d0900000101f500000000000000000000000000000000000000000000000000000000000000ffff000000000000804a5d05020000000000000000080000d7030000420000004100410050004c00300030002c0062006c00610063006b00730063007200650065006e002d0070007200650066006500720065006e0063006500730000000800000000000008420000004100410050004c00300031002c0062006c00610063006b00730063007200650065006e002d0070007200650066006500720065006e0063006500730000000800000000000008e20000000400000002010c00d041030a0000000001010600001b7fff04002200000070006c006100740066006f0072006d00460061006d0069006c00790000000500000000300000004d006100780069006d0075006d0042006f006f007400420065006500700056006f006c0075006d0065000000050000003028000000500069006e0043006f006e00660069006700750072006100740069006f006e0073000000200000004001109050402b01410110901001a09020308b0160e04b0130e0cb01180000006c00610079006f00750074002d00690064000000080000002e000000


Title: Re: GFX-Strings
Post by: dotsam on January 05, 2008, 10:45:22 AM
@dotsamThanks. That string is related to a 512 Mb flashed?

Nope, that's working with my 256mb 7900GS.


Title: Re: GFX-Strings
Post by: raggedjagged on January 07, 2008, 04:52:08 PM
@dotsamThanks. That string is related to a 512 Mb flashed?

Nope, that's working with my 256mb 7900GS.
How do that? How do i "apply" that string? Because I have a 7900GS with 256MB too, can someone please help?


Title: Re: GFX-Strings
Post by: FavleX on January 07, 2008, 05:12:05 PM
How do that? How do i "apply" that string? Because I have a 7900GS with 256MB too, can someone please help?

Just here http://forum.netkas.org/index.php/topic,66.0.html (http://forum.netkas.org/index.php/topic,66.0.html)  :)


Title: Re: GFX-Strings
Post by: joshua on January 07, 2008, 07:13:26 PM
Hi all,

What about cards like mine (8400m gs) on which the ioreg command do not give me any gfx strings?!...

Is there a way to get, find one... perhaps create one(lol)?

An howto somewhere?

That would be great.

Thanks in advance.

Regards.
Josh.


Title: Re: GFX-Strings
Post by: sfera on January 08, 2008, 09:44:51 AM
Dump for ATI 1900XT.

;)


Title: Re: GFX-Strings
Post by: MoDs on January 09, 2008, 09:43:49 AM
How do i make my own gfx string? Do i have to have a real macpro? Is there anyway i can create my string without having a real mac (trial and error, guessing, ...)?

Please someone answer my question, cause i'm definitely lost here ???

Thanks in advance.


Title: Re: GFX-Strings
Post by: B666 on January 12, 2008, 08:09:15 AM
I have this same question here in my mind, cause i've used a 7600GT string from a iMac, and get a black screen, i compare my string (the same from here, from the Gxxxx package), and they're different.
Sorry for this noobish question, but, i'm little lost about it.
Thanx!


Title: Re: GFX-Strings
Post by: time ed on January 12, 2008, 03:20:59 PM
How do i make my own gfx string?

I have this same question here

REV2/1.13.08
A. Synopsis:
1. dump your ioreg
2. find your device properties
3. find your device path
4. edit your device path and properties into a reference doc - either string or plist
5. edit com.apple.Boot.plist

B. Detail:
1. grab mcmatrixs' gfxutil here and give a *thorough* read to this thread:
http://forum.netkas.org/index.php/topic,64.msg519.html#msg519

2. dump your device tree. In Terminal type: ioreg -w0 -l IODeviceTree > regdump.txt

3. Find a reference hex string/plist for your device (or one that's close) one of two ways: A) comb the forums here as there are many posted; B) use one of the supplied strings in netkas' efi package.

4. if using a hex string, convert to xml: ./gfxutil -i hex -o xml in.hex out.plist.
(if you want a nice decoded list of all the strings and data in the plist: ./gfxutil -s -n -v -i hex -o xml in.hex out.plist).

5. find PCI0@0 in your regdump. Note the acpi-path and _UID.

6. follow the device tree from PCI0@0 to display@0. When you find display@0, note the parent device. This will be your path, i.e.:
+-o PCI0@0  <class IOACPIPlatformDevice, registered, matched, active, busy 0, retain 67>
      | {
      ...
      |   "acpi-path" = "IOACPIPlane:/_SB/PCI0@0"
      |   "_UID" = "1"
      ...       
      | }
      |
      +-o pci-bridge@1  <class IOPCIDevice, registered, matched, active, busy 0, retain 9>
         | {
         ...
         |
         +-o display@0  <class IOPCIDevice, registered, matched, active, busy 0, retain 16>

Path in this example is: _SB/PCI0@0_UID=1/pci-bridge@1/display@0
Shorthand is: pciroot(0x1)/pci(0x1,0x0)/pci(0x0,0x0)

7. following mcmatrixs' guide, convert your device path to shorthand notation, then edit <key> for device path in your plist, i.e.:
...
<key>PciRoot(0x1)/Pci(0x1,0x0)/Pci(0x0,0x0)</key>
   <dict>
        ...

8. add or change in the plist all properties for your device found in syslog:
a) open Console in Applications >Utilities
b) click "Show Log List" and highlight system.log
c) in the Filter field (top right) type NVinject or ATIinject or whatever you use to get your card working.
d) you should see something like this for NVInject:
NVinject: Probing.
NVinject: Setting NVPM=<data not shown>
NVinject: Setting @0,device_type=display
NVinject: Setting NVCAP=<data not shown>
NVinject: Setting @0,compatible=NVDA,NVMac
NVinject: Setting model=Graphics by NVIDIA
NVinject: Setting @1,name=NVDA,Display-B
NVinject: Setting device_type=NVDA,Parent
NVinject: Setting name=display
NVinject: Setting rom-revision=NVinject 0.1.7
NVinject: Setting @0,name=NVDA,Display-A
NVinject: Setting @1,compatible=NVDA,NVMac
NVinject: Setting @1,device_type=display

..or something like this with ATIinject:
ATIinject: Setting @0,display-link-component-bits=0x00000006
ATIinject: Setting DFP1,EDID=<data not shown>
ATIinject: Setting ATY,Copyright=Copyright ATI Technologies Inc. 2005
ATIinject: Setting @0,display-connect-flags=0000000000
ATIinject: Setting @0,display-dual-link=0x00000002
ATIinject: Setting @0,ATY,EFIDisplay=LVDS
ATIinject: Setting model=ATY,RadeonX1600
ATIinject: Setting AAPL00,DualLink=0x00000001
ATIinject: Setting @0,device_type=display
ATIinject: Setting LVDS,EDID=<data not shown>
ATIinject: Setting @1,display-connect-flags=0000000000
ATIinject: Setting AAPL,backlight-control=0x00000001
ATIinject: Setting ATY,DeviceID=<data not shown>
ATIinject: Setting name=ATY,WormyParent
ATIinject: Setting AAPL00,Coherency=0x00000002
ATIinject: Setting @1,connector-type=0x00000004
ATIinject: Setting @0,compatible=ATY,Wormy
ATIinject: Setting @1,name=ATY,Wormy
ATIinject: Setting @0,AAPL,boot-display=0x00000001
ATIinject: Setting @0,name=ATY,Wormy
ATIinject: Setting @1,compatible=ATY,Wormy
ATIinject: Setting @0,display-dither-support=0000000000
ATIinject: Setting @0,connector-type=0x00000002
ATIinject: Setting @0,inverter-current=0000000000
ATIinject: Setting @1,device_type=display
ATIinject: Setting @0,display-link-type=0000000000
ATIinject: Setting device-id=<data not shown>
ATIinject: Setting ATY,EFIVersion=01.00.068
ATIinject: Setting device_type=ATY,WormyParent
ATIinject: Setting AAPL00,LinkType=0000000000
ATIinject: Setting ATY,VendorID=0x00001002

[CAUTION: Observation] I have no idea which properties to include in a string. When I built the .plist for my card (XFX7600GT), I included the device path, and the minimum information found in my syslog. For me, that worked. YMMV. You should carefully match device properties in your ioreg with those in an "already working" string.

9. convert plist to hex: ./gfxutil -i xml -o hex in.plist out.hex

10. insert new hex string into com.apple.Boot.plist.

11. Remove 3rd party kexts, clear cache, and reboot.

Comments, suggestions, revisions welcomed! Please PM or email me.

[String Editing Note]: try not use TextEdit when working with the hex string or xml plist. Its been my experience that using TextEdit will add application metadata to the file and corrupt your hex. Plist Editor (an X-Code add-on tool) works well for editing the plist, but vi or nano is necessary when working with the hex string. vi and nano are Terminal applications and very simple to use. Docs are available for the googling, or can be found in Terminal by typing: man vi; or man nano.


Title: Re: GFX-Strings
Post by: MoDs on January 12, 2008, 09:36:36 PM
@time ed: Thanks a ton  ;D


Title: Re: GFX-Strings
Post by: macgirl on January 12, 2008, 10:04:28 PM
Yeah, thnaks, I succeeded.


Title: Re: GFX-Strings
Post by: macgirl on January 12, 2008, 10:45:48 PM
What so different in a Geforce 6600?

I cant create a working gxf string    :'(


Title: Re: GFX-Strings
Post by: B666 on January 12, 2008, 11:17:54 PM
time ed, thanx a lot dude!


Title: Re: GFX-Strings
Post by: time ed on January 13, 2008, 02:33:14 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: GFX-Strings
Post by: SticMAN on January 14, 2008, 12:02:52 AM
i have for a ASUS en7300gs on PCI1@1000 display0

<string>7c0200000100000001000000700200000e00000002010c00d041030a040000000101060000010101060000007fff04000e0000004e00560050004d000000200000000100000000000000000000000000000000000000000000000000000024000000400030002c005600520041004d002c006d0065006d00730069007a00650000000c00000000000004000000081c0000006400650076006900630065005f0074007900700065000000100000004e5644412c4765466f7263650e0000006e0061006d00650000000f0000004e5644412c506172656e7422000000400030002c006400650076006900630065005f00740079007000650000000b000000646973706c617922000000400031002c006400650076006900630065005f00740079007000650000000b000000646973706c6179100000006d006f00640065006c000000150000004153555320454e3733303047532045464920000000400031002c0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d616314000000400030002c006e0061006d0065000000120000004e5644412c446973706c61792d4114000000400031002c006e0061006d0065000000120000004e5644412c446973706c61792d4220000000400030002c0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d61631e00000072006f006d002d007200650076006900730069006f006e0000000800000033313735100000004e00560043004100500000001800000004000000000003000c000000000000070000000024000000400031002c005600520041004d002c006d0065006d00730069007a00650000000c0000000000000400000008</string>


Title: Re: GFX-Strings
Post by: f41qu3 on January 17, 2008, 05:22:26 PM
i make 4 and no one can...(666)

someone have a string to gma950 to i can test here?

gr8tz


Title: Re: GFX-Strings
Post by: indraganzo on January 17, 2008, 05:35:24 PM
i make 4 and no one can...(666)

someone have a string to gma950 to i can test here?

gr8tz
why dont you look at gma + EFI subject
http://forum.netkas.org/index.php/topic,58.0.html


Title: Re: GFX-Strings
Post by: f41qu3 on January 17, 2008, 05:56:39 PM
right thanx =)

but i dump and apply...and ... nothing change...

accepting ideas

----added----

all works =) thx all


Title: Re: GFX-Strings
Post by: spanakorizo on January 18, 2008, 11:02:39 PM
8800gt?


Title: Re: GFX-Strings
Post by: SMF on January 19, 2008, 05:10:33 PM
I'm trying to get a deeper understanding of strings and I've noticed some strange behaviour.  I"m working now on graphics strings to enable my 7600 GT.  If I use thawnhex's string moded for my p35 it works fine.  If I use the tutorial and nvinject data from console I can get the resulting plist and string to work but my display shows up differently.  With nvinject and thawnhex's string it shows up as the first display.  When I use a string based on my plist the display shows up as the second display.

Anyone see what I've done wrong or understand what might be going on here?

Thanks,
SMF


Title: Re: GFX-Strings
Post by: scrizz on February 23, 2008, 11:59:58 PM
omfg  ATI x1800xl(7109) pls?


Title: Re: GFX-Strings
Post by: law on February 26, 2008, 08:32:24 AM
This is the string I have working for my 7900GS

 
Code:
a603000001000000010000009a0300001400000002010c00d041030a000000000101060000010101060000007fff040014000000400032002c006e0061006d00650000001100000073656e736f722d706172656e7436000000400032002c00680077006300740072006c002d0070006100720061006d0073002d00760065007200730069006f006e00000008000000000000021c0000006400650076006900630065005f0074007900700065000000100000004e5644412c4765466f7263650e0000006e0061006d00650000000f0000004e5644412c506172656e7422000000400030002c006400650076006900630065005f00740079007000650000000b000000646973706c6179100000006d006f00640065006c0000001e0000004e5649444941204765466f72636520373930302047532045464922000000400031002c006400650076006900630065005f00740079007000650000000b000000646973706c617912000000400032002c007200650067000000080000000000000222000000400032002c006400650076006900630065005f0074007900700065000000120000004e5644412c6770752d64696f646520000000400032002c0063006f006d00700061007400690062006c0065000000160000004e5644412c73656e736f722d706172656e7422000000400032002c002300730069007a0065002d00630065006c006c0073000000080000000000000020000000400031002c0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d616314000000400030002c006e0061006d0065000000120000004e5644412c446973706c61792d413a000000400032002c0068007700730065006e0073006f0072002d0070006100720061006d0073002d00760065007200730069006f006e000000080000000000000226000000400032002c0023006100640072006500730073002d00630065006c006c0073000000080000000000000114000000400031002c006e0061006d0065000000120000004e5644412c446973706c61792d4220000000400030002c0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d61631e00000072006f006d002d007200650076006900730069006f006e0000000800000033303232100000004e00560043004100500000001800000004000000000003000c00000000000007000000000e0000004e00560050004d0000002000000001000000000000000000000000000000000000000000000000000000

Thanks, this worked with my 7600 GS also. In SystemProfiler under Display now writes NVIDIA 7900 GS EFI :)


Title: Re: GFX-Strings
Post by: websrvr on June 03, 2008, 10:59:25 PM
Can someone post a non-encoded gfx string for an ATI video card.

While it seems to be the norm to post the encoded string the issue is building a more elaborate string to include other features and while I have heard lots of talk about ATI gfx strings I have yet to see a single one.


Title: Re: GFX-Strings
Post by: inside on June 04, 2008, 08:56:45 AM
ATI X1900XTX

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>----->your device path<------</key>
<dict>
<key>@0,AAPL,boot-display</key>
<string>0x00000001</string>
<key>@0,ATY,EFIDisplay</key>
<string>0x42414756</string>
<key>@0,compatible</key>
<string>ATY,Alopias</string>
<key>@0,connector-type</key>
<string>0x00000200</string>
<key>@0,device_type</key>
<string>display</string>
<key>@0,name</key>
<string>ATY,Alopias</string>
<key>@1,compatible</key>
<string>ATY,Alopias</string>
<key>@1,connector-type</key>
<string>0x00000004</string>
<key>@1,device_type</key>
<string>display</string>
<key>@1,name</key>
<string>ATY,Alopias</string>
<key>AAPL,aux-power-connected</key>
<string>0x00000001</string>
<key>AAPL,backlight-control</key>
<string>0x00000000</string>
<key>ATY,Card#</key>
<string>109-A52027-00</string>
<key>ATY,Copyright</key>
<string>Copyright ATI Technologies Inc. 2005-2006</string>
<key>ATY,DeviceID</key>
<string>0x7249</string>
<key>ATY,EFICompileDate</key>
<string>Aug 18 2006</string>
<key>ATY,EFIHWInitStatus</key>
<string>0x00000000</string>
<key>ATY,EFIOrientation</key>
<string>0x08</string>
<key>ATY,EFIPostRBBM</key>
<string>0x0000444f</string>
<key>ATY,EFIPreRBBM</key>
<string>0x0000000f</string>
<key>ATY,EFIRestored</key>
<string>0x00000008</string>
<key>ATY,EFIVersion</key>
<data>
MDEuMDAuMTQwAA==
</data>
<key>ATY,FrameBufferOffset</key>
<string>0x000000e0</string>
<key>ATY,HWGPIO</key>
<string>0x0003daa3</string>
<key>ATY,IOSpaceOffset</key>
<string>0x00100000</string>
<key>ATY,MCLK</key>
<string>0x0009eb10</string>
<key>ATY,MRT</key>
<data>
cAAAAAAAfwBoAACAAAEAAGkAAIAAAQAA/////wIAAABgAACA/i8PAv////8C
AAAAYAAAgP4vDxL/////AgAAAGgAAICAAQAAaQAAgIABAABoAACAgAAAAGkA
AICAAAAAaAAAgAAAAABpAACAAAAAAHAAAAAAAH8AaAAAgAABAABpAACAAAEA
AP////8CAAAAYAAAgP4vDwL/////AgAAAGAAAID+Lw8S/////wIAAABoAACA
gAEAAGkAAICAAQAAaAAAgIAAAABpAACAgAAAAGgAAIAAAAAAaQAAgAAAAABw
AAAAAAB/AAgAAIASRAADdgAAgAAAAgB2AACAqEABAHYAAIAzBxEA/////xQA
AAB2AACAMwYBAHYAAIAzBgMAdgAAgDMGAwB2AACAMwYDAHYAAIAzBhMACAAA
gBJEAIMKAACAIiIHAGAAAIDuPw8S4AAAgDMGAAA=
</data>
<key>ATY,MemVendorID</key>
<string>0x0002</string>
<key>ATY,MemVendorIDFull</key>
<string>0xffff80ff</string>
<key>ATY,PCIConfigSpace</key>
<data>
AhBJcgcAEAAAAAADQAAAAAgAAOABEAAAAACy8AAAAAAAAAAAAAAAAAAAAAAC
EElyAACw8FAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAIQSXIBWAIGAAAAABCA
EQCgDwAAEAgAAAENAARAAAERAAAAAAAAAAAAAAAAAAAAAAAAAAAFAIAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
</data>
<key>ATY,PlatformInfo</key>
<data>
AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
</data>
<key>ATY,RefCLK</key>
<string>0x00000a8c</string>
<key>ATY,RegisterSpaceOffset</key>
<string>0x0000b2f0</string>
<key>ATY,Rom#</key>
<string>113-A52027-140</string>
<key>ATY,SCLK</key>
<string>0x000927c0</string>
<key>ATY,VendorID</key>
<string>0x1002</string>
<key>MVAD</key>
<data>
JwSCABcHALcnBIIAFwcAk0g/QAZwCEAAwACwBOIEAQADALAEQAYAA0g/QAZw
CEAAwACwBOIEAQADALAEQAYAAw==
</data>
<key>device_type</key>
<string>ATY,AlopiasParent</string>
<key>model</key>
<string>ATY,RadeonX1900</string>
<key>name</key>
<string>ATY,AlopiasParent</string>
<key>saved-config</key>
<data>
JwSCABcHALcnBIIAFwcAk0g/QAZwCEAAwACwBOIEAQADALAEQAYAA0g/QAZw
CEAAwACwBOIEAQADALAEQAYAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AADYt2ZIZxAAABAAAAhoAQAAAQAAAAYAAAC4nEICGAAAANi3ZkhonEICIG95
ByBveQfot2ZIGAAAAAAAAAAGAgAA+LdmSAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAABYOX9HgiAAABAAAAhoAQAAAQAAAAYAAAACAAEAAQABAETJRAbE
7TsAAQAAAEDJRAZEyUQGze47AAMAAgACAAIApGjnBQ==</data>
</dict>
</dict>
</plist>


Title: Re: GFX-Strings
Post by: websrvr on June 04, 2008, 01:56:13 PM
ATI X1900XTX

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>----->your device path<------</key>
<dict>
<key>@0,AAPL,boot-display</key>
<string>0x00000001</string>
<key>@0,ATY,EFIDisplay</key>
<string>0x42414756</string>
<key>@0,compatible</key>
<string>ATY,Alopias</string>
<key>@0,connector-type</key>
<string>0x00000200</string>
<key>@0,device_type</key>
<string>display</string>
<key>@0,name</key>
<string>ATY,Alopias</string>
<key>@1,compatible</key>
<string>ATY,Alopias</string>
<key>@1,connector-type</key>
<string>0x00000004</string>
<key>@1,device_type</key>
<string>display</string>
<key>@1,name</key>
<string>ATY,Alopias</string>
<key>AAPL,aux-power-connected</key>
<string>0x00000001</string>
<key>AAPL,backlight-control</key>
<string>0x00000000</string>
<key>ATY,Card#</key>
<string>109-A52027-00</string>
<key>ATY,Copyright</key>
<string>Copyright ATI Technologies Inc. 2005-2006</string>
<key>ATY,DeviceID</key>
<string>0x7249</string>
<key>ATY,EFICompileDate</key>
<string>Aug 18 2006</string>
<key>ATY,EFIHWInitStatus</key>
<string>0x00000000</string>
<key>ATY,EFIOrientation</key>
<string>0x08</string>
<key>ATY,EFIPostRBBM</key>
<string>0x0000444f</string>
<key>ATY,EFIPreRBBM</key>
<string>0x0000000f</string>
<key>ATY,EFIRestored</key>
<string>0x00000008</string>
<key>ATY,EFIVersion</key>
<data>
MDEuMDAuMTQwAA==
</data>
<key>ATY,FrameBufferOffset</key>
<string>0x000000e0</string>
<key>ATY,HWGPIO</key>
<string>0x0003daa3</string>
<key>ATY,IOSpaceOffset</key>
<string>0x00100000</string>
<key>ATY,MCLK</key>
<string>0x0009eb10</string>
<key>ATY,MRT</key>
<data>
cAAAAAAAfwBoAACAAAEAAGkAAIAAAQAA/////wIAAABgAACA/i8PAv////8C
AAAAYAAAgP4vDxL/////AgAAAGgAAICAAQAAaQAAgIABAABoAACAgAAAAGkA
AICAAAAAaAAAgAAAAABpAACAAAAAAHAAAAAAAH8AaAAAgAABAABpAACAAAEA
AP////8CAAAAYAAAgP4vDwL/////AgAAAGAAAID+Lw8S/////wIAAABoAACA
gAEAAGkAAICAAQAAaAAAgIAAAABpAACAgAAAAGgAAIAAAAAAaQAAgAAAAABw
AAAAAAB/AAgAAIASRAADdgAAgAAAAgB2AACAqEABAHYAAIAzBxEA/////xQA
AAB2AACAMwYBAHYAAIAzBgMAdgAAgDMGAwB2AACAMwYDAHYAAIAzBhMACAAA
gBJEAIMKAACAIiIHAGAAAIDuPw8S4AAAgDMGAAA=
</data>
<key>ATY,MemVendorID</key>
<string>0x0002</string>
<key>ATY,MemVendorIDFull</key>
<string>0xffff80ff</string>
<key>ATY,PCIConfigSpace</key>
<data>
AhBJcgcAEAAAAAADQAAAAAgAAOABEAAAAACy8AAAAAAAAAAAAAAAAAAAAAAC
EElyAACw8FAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAIQSXIBWAIGAAAAABCA
EQCgDwAAEAgAAAENAARAAAERAAAAAAAAAAAAAAAAAAAAAAAAAAAFAIAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
</data>
<key>ATY,PlatformInfo</key>
<data>
AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
</data>
<key>ATY,RefCLK</key>
<string>0x00000a8c</string>
<key>ATY,RegisterSpaceOffset</key>
<string>0x0000b2f0</string>
<key>ATY,Rom#</key>
<string>113-A52027-140</string>
<key>ATY,SCLK</key>
<string>0x000927c0</string>
<key>ATY,VendorID</key>
<string>0x1002</string>
<key>MVAD</key>
<data>
JwSCABcHALcnBIIAFwcAk0g/QAZwCEAAwACwBOIEAQADALAEQAYAA0g/QAZw
CEAAwACwBOIEAQADALAEQAYAAw==
</data>
<key>device_type</key>
<string>ATY,AlopiasParent</string>
<key>model</key>
<string>ATY,RadeonX1900</string>
<key>name</key>
<string>ATY,AlopiasParent</string>
<key>saved-config</key>
<data>
JwSCABcHALcnBIIAFwcAk0g/QAZwCEAAwACwBOIEAQADALAEQAYAA0g/QAZw
CEAAwACwBOIEAQADALAEQAYAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AADYt2ZIZxAAABAAAAhoAQAAAQAAAAYAAAC4nEICGAAAANi3ZkhonEICIG95
ByBveQfot2ZIGAAAAAAAAAAGAgAA+LdmSAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAABYOX9HgiAAABAAAAhoAQAAAQAAAAYAAAACAAEAAQABAETJRAbE
7TsAAQAAAEDJRAZEyUQGze47AAMAAgACAAIApGjnBQ==</data>
</dict>
</dict>
</plist>
Thank you for posting the data.

Is it safe to assume that the encoded data will be the same regardless of ATI card in question or will there be different data for X1300, X1550, X1600, X1650... ?

What I have found is that some of the video cards (those with DVI and VGA ports) the VGA port is the primary port and the DVI port displays no video and I believe it is a detection issue due to the lack of driver compatibility.

If the table can be used for other ATI video cards with minor changes I believe that a gfx string might just allow both ports to be active resolving the no-DVI issue.

Other ATI cards that the DVI port is the primary port suffer the reverse problem where the VGA port does not display video so the same should be true.

Of course the proper solution would be to have an injector do this work but since the source for natit.kext is not publicly available, solving it in the injector is impossible and only leaves one to look for an alternate solution.
Does this allow both video ports to be active?
If this is true then I think we can make a generic


Title: Re: GFX-Strings
Post by: DrDeelay on June 04, 2008, 02:02:46 PM
Well, I guess no, since some Cards just are not supported, eg the X1650....
My 7400Go didn't work after 10.5.3 anymore, even with the correct EFI-String.
Or would a modified EFI-String work then.

I'm not quite clear about that....

regards,
DrDeelay!


Title: Re: GFX-Strings
Post by: Darkvine on June 20, 2008, 12:40:13 AM
Guys i have a serious( ) problem.I recently updated to 10.5.3 and all went fine except for the qe/ci thing.so after trying everything(NVKush,NVInject,blah blah blah )i came across the EFI String solution.So my plist is the following:



<?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(0x1)/Pci(0x2,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>@2,#adress-cells</key>
      <string>0x01000000</string>
      <key>@2,#size-cells</key>
      <string>0x00000000</string>
      <key>@2,compatible</key>
      <string>NVDA,sensor-parent</string>
      <key>@2,device_type</key>
      <string>NVDA,gpu-diode</string>
      <key>@2,hwctrl-params-version</key>
      <string>0x02000000</string>
      <key>@2,hwsensor-params-version</key>
      <string>0x02000000</string>
      <key>@2,name</key>
      <string>sensor-parent</string>
      <key>@2,reg</key>
      <string>0x02000000</string>
      <key>NVCAP</key>
      <data>
      BAAAAAAAAwAMAAAAAAAABwAAAAA=
      </data>
      <key>NVPM</key>
      <data>
      AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
      </data>
      <key>device_type</key>
      <string>NVDA,GeForce</string>
      <key>model</key>
      <string>NVIDIA GeForce 7300GS</string>
      <key>name</key>
      <string>NVDA,Parent</string>
      <key>rom-revision</key>
      <string>0xa1000000</string>
   </dict>
</dict>
</plist>
 

Everything is ok(and the pci root ,checked it through gfxutil) but the qe/ci thing,COuld someone tell me what is the problem with this plist?My card is a 7300gs 265MB ,motherboard MSI k9 vgm-v.Thanx in advance gyus!!!


Title: Re: GFX-Strings
Post by: sWORDs on June 21, 2008, 10:54:10 AM
Guys i have a serious( ) problem.I recently updated to 10.5.3 and all went fine except for the qe/ci thing.so after trying everything(NVKush,NVInject,blah blah blah )i came across the EFI String solution.So my plist is the following:



...
 

Everything is ok(and the pci root ,checked it through gfxutil) but the qe/ci thing,COuld someone tell me what is the problem with this plist?My card is a 7300gs 265MB ,motherboard MSI k9 vgm-v.Thanx in advance gyus!!!
Use this: http://www.mediafire.com/?xl19omzld9j


Title: Re: GFX-Strings
Post by: thor486 on June 23, 2008, 07:04:51 PM
I created an EFI string for ASUS Geforce 8800GT 512MB, I tried to use the default EFI string for 8800 but I got the card recognized as XFX 8800GTS 640MB so I decided to create my own string :D

Here it is :D


Title: Re: GFX-Strings
Post by: djmastera2000 on July 07, 2008, 10:33:01 PM
Hello guys,

what happened after updateting to 10.5.4???

Installed string(7600go.hst) for 7600Go from Nvidia+EFI, applied 10.5.4 Combo, but after this no CI/QE :(

Can anybody tell me what changed, or what to do to get back acceleration please?

Big THX! :)


Title: Re: GFX-Strings
Post by: kdawg on July 01, 2009, 08:10:58 PM
So I've extracted the ROMs for both my 512 8800GT and 256 8500GT. Then ran them through the NVCAP Utility found at NVinject.free.fr forums. I get these values.

04000000000003000c0000000000000700000000
0400000000000300040000000000000700000000

Problem is I need to convert them to a format similar to this,
BAAAAAAAAwAMAAAAAAAABwAAAAA=
…so I can insert them into my apple.com.boot.plist EFI strings.

Can anyone out there help me out?

Thanks.