Jump to content

ATILead - natit-like injector for Radeon.


Slice
 Share

107 posts in this topic

Recommended Posts

looks similar to mine. How about the dedicated memory? is it automatically detected?

I don't know.

My experiments with AAPL,vram-memory give me results

1. I can enter desktop only with value

2. With this value AGP doesn't work at any agp_base. -_-

Anyone have any results?

Link to comment
Share on other sites

again that fuzzy screen. I've noticed that even that i've changed the F8 size, the injector still sets a small value. Same thing with Ati1Slice.kext. Why that?

 

Impossible!

How do you know that? Dmesg?

Link to comment
Share on other sites

I've seen that ny booting in verbose mode and same in IOREG, i didn't do a dmesg.

How about using the memory range shown in windows, in device manager, i've posted a screenshot in the x200 thread. Could that be useful somehow?

You can see the same memory ranges in ioreg.

	| |   |   | |   "IODeviceMemory" = (({"address"=0xffffffffd8000000,"length"=0x8000000}),({"address"=0xffffffffbfef0000,"length"=0x10000}))

First range is Vram memory, second is Radeon internal registers space. I already use its.

As you see at my sign QE/CI is impossible at any drivers. We can fight only for Resolution and may be for DVD playback.

Link to comment
Share on other sites

There are OLE2 and Slinger2g. But ve-e-ery slo-o-o-o-ow. As me too.

I want nontheless to fight for speed of softwareOpenGL but with rotating cube and working DVDPlayback. I need a time and advices.

Link to comment
Share on other sites

how can apple get that QE/CI enable with x1600 in the previous macbook pro if the readon mobility cant support QE/CI

according to wikipedia, the requirment to switch on QE/CI is support by x200 already...

it is a very interesting question...

Link to comment
Share on other sites

I made new version 1.2.0 with BIOS reading. Now it may support any Radeon.

change

				<key>@0,compatible</key>
			 <string>display</string>

to

				<key>@0,compatible</key>
			 <string>ATY,Wormy</string>

to launch ATINDRV. I am still unsuccessful because of Radeon9000.

What about EDID?

If you know more reliable string for you - replace it.

ATILead120.src.zip

Link to comment
Share on other sites

Bump...

 

Downloads - yes.

Feedbacks - no.

 

Hello,

 

Does your driver work with X600 Mobility (ID 3150) in Leo 10.5.1? I used to have QE/CI in Tiger using callisto+koverg but no chance in Leo. I fixed only the resolution so far. Pls let me know is worth to try your driver and how to install it if I installed already callisto and koverg. Thx.

Link to comment
Share on other sites

Hello,

 

Does your driver work with X600 Mobility (ID 3150) in Leo 10.5.1? I used to have QE/CI in Tiger using callisto+koverg but no chance in Leo. I fixed only the resolution so far. Pls let me know is worth to try your driver and how to install it if I installed already callisto and koverg. Thx.

AFAIK koverg patch is not correct for X600. It is better to make the follow

Take some version of ATIRadeon9700.kext.

Extract ATIRadeon9700.kext/Context/MacOS/ATIRadeon9700 to other place (for example /patch)

type in terminal

perl -pi -e 's|\x66\x3d\x50\x3e|\x66\x3d\x50\x31|g' /patch/ATIRadeon9700

if no change then

perl -pi -e 's|\x3d\x50\x3e\x00\x00|\x3d\x50\x31\x00\x00|g' /patch/ATIRadeon9700

And place corrected file back to kext

Write 0x31501002 into info.plist.

I never INSTALL KEXT. I simply put it in /System/Library/Extensions/ and then

chown -R root:wheel /S*/L*/E*/ATI*

chmod -R 755 /S*/L*/E*/ATI*

diskutil repairpermissions /

Edit GA.pluign/info.plist to

		<key>IOProviderClass</key>
	<string>IOFramebuffer</string>

But I don't know if Callisto works in Leo.

I am trying to develop new ATIFramebuffer working in pair with ATILead.

http://forum.insanelymac.com/index.php?sho...=96664&st=0

Initial stage.

 

ATILead may replace CallistoHAL if you change it's info.plist as in first version

Link to comment
Share on other sites

Thx Slice. Doing this seems that is not enough for x600 Mobility, there are some workarounds using some files from Tiger but I realy want to get rid of mouse artefacts, hope you will succeed to develop a better driver for Leo. Good luck.

Link to comment
Share on other sites

  • 4 weeks later...

Slice,

I finally got some answers about why the framebuffer doesn't work on 8500 and 9700 based cards.

After checking, what's contained inside framebuffer kexts on intel macs (ATY_wormy, ATY_lamna, ATY_franklin, ATY_Iago etc...) is contained inside the ROM of PPC cards.

Hence no framebuffer file existing, and injecting will lead nowhere reguarding the framebuffer, but could give something with QE/CI. Maybe this data could be turned into the form of a kext tho I'm not very confident about this, unless we're lucky and that part is exactly respecting the same template as any other kext plugin (still possible, so far it looks it's rather close to the kexts...). If so : extract it, create a kext plugin like the others, inject the right ATY codename...

I made 2 others interesting discoveries : the "magic word" for 8500 cards is "R200", and for 9700 cards, it's "GoldenEye".

Would be very interesting to inject...

 

Latest intel Leopard update still contains those 8500 and 9700 kexts, it seems there's definitely something to do with those kexts and it's not only left by accident.

 

EDIT : Found other codenames

 

9000 : Pheonix

9200 : Bugsy

9650 : ChockStone

9800 special edition : Elan

X800XT : Tracer

X850XT : Piranha

 

I can find many others for other models, if it's usefull just tell me.

 

Other random supported codenames : / ATY,R300id / ATY,Aphrodite2 / ATY,Merlin / ATY,Alterac / ATY,Aphrodite / ATY,Apollo / ATY,Piranha / ATY,ChockStone / ATY,Piton / ATY,RockHopper2 / ATY,Elan / ATY,Whelk / ATY,Rocket / ATY,Simone / ATY,GreenStar / ATY,Rage6p / ATY,BlueDasher / ATY,Tracer / ATY,Stallion / ATY,Bugsy / ATY,Xmen / ATY,Apache / ATY,Radeon9000i / ATY,Rage128v / ATY,RADEONr / ATY,RADEONp / ATY,RV100 / ATY,R200 / ATY,XCLAIMVRPro / ATY,XCLAIM_LTPro

I also join a maybe interesting dump of infos I found bundled with the 9800 special edition ROM

 

EDIT 2 : there are big chances that the ATINDRV expects to find the ROM somewhere in the RAM, maybe we could think about a kind of injecter that sends the ROM where it's supposed to be ?

In the plist of the PPC version of ATINDRV you can find this :

IONDRVFileMatching

IONameMatch

ATY,*

This must be what checks for presence of ATY,* device in the IO tree and loads the ATIDriver/ATIRuntimeDriver

 

Also, until 10.4.7, ATINDRV did not have that "plugin architecture", it was a monolithic file, with some luck (again) it has generic ATI data and is more flexible (sounding here like "compatible with old ATIs"). It wouldn't be surprising since we know that apple dropped all support for hardware that wasn't found on intel macs after 10.4.7

 

EDIT 3 : Checked 10.4.4 NDRV, it only contains code for the "ATY_Wormy" card (x1600). 10.4.4 was the 1st public version, at that time, X1600 was used on both imac and macbook pro. It was the only ATI used on intel, so that make sense... Gonna check older betas, they may have something better.

 

EDIT 4 : I think I got how it works. ATINDRV is for X1000 cards and above, whereas for older cards the framebuffer is AppleNDRV. It contains a bundle ATIDriver which contains codenames of many older cards, including (mach64, goldeneye, snowy!, aphrodite2).

The other bundle ATIRuntimeDriver.bundle, contains other references (ragepro, rage128, radeon, radeon9000i)

Those codenames definitely worth a try in the injecter.

Now the question is how to load those bundles. They are not kexts and I've no idea of how and by what they're called.

 

EDIT 5 : Here is a IOReg from a PPC mac-mini. The GFX is RockHopper2 (Radeon 9200, RV280) (thank you Sheeplover)

I checked the bundles inside AppleNDRV down to 10.4.1, they're all PPC, so no way, your framebuffer is definitely needed, but I still don't get why we can't get QE, that kext may be broken too. An other question is why do we have working 9700 QE and no framebuffer. I mean what's the point of compiling a half of a driver ?

SE.txt

Link to comment
Share on other sites

Thanks Krazubu!

 

PPC driver uses not only PPC ROM that contains part of driver, but also another manner of working.

For example framebuffer driver be called through interrupts. PPC AGP bus contains interrupt vector but Intel - no.

I think we have QE/CI on some Radeon card even without driver because they work in standart VESA mode and uses PCIe bus that has interrupt.

 

From now ATILead is not independent project. I will make new version only for new version of ATIFramebuffer.

I have no enough information for successfully working so I propose someone give me new information by the testing. But if I got reports "How to use it?" or "It's not working!" - there are no information for me.

 

P.S. NDRV means NoDRiVer. AppleNDRV is a substitution if no native driver is present.

Link to comment
Share on other sites

  • 2 months later...

Hi, a bit offtopic.

 

I only get my ATI HD 3850 to work (no kernel panic & all working) if i use the NATIT which injectes TRIAKIS (found in ATINDRV.KEXT) and not LAMNA code/codename.

 

Does someone know if TRIAKIS is an homemade/membermade code or if its from Apple/ATI ?

 

Also this works only if i use older ATIRADEON2000.KEXT and ATIRADEON2000GL.KEXT (those and a, for me wrong natit are in some ATI3800 packadges).

 

Its not an thing of .pist (DEV-ID) modding, they are all in (also in orig. ATI Apple drivers).

 

Also changing dev-ID (by injecting or flashing bios) to same GPU but modell 3870 didnt work, and Win ATI drivers complain "not ATI".

 

Does Apple read mor than only DEV-ID and SUB-ID from the card ? (By direct GPU register read or something like that ?)

Link to comment
Share on other sites

Hi, a bit offtopic.

 

I only get my ATI HD 3850 to work (no kernel panic & all working) if i use the NATIT which injectes TRIAKIS (found in ATINDRV.KEXT) and not LAMNA code/codename.

 

Does someone know if TRIAKIS is an homemade/membermade code or if its from Apple/ATI ?

 

Also this works only if i use older ATIRADEON2000.KEXT and ATIRADEON2000GL.KEXT (those and a, for me wrong natit are in some ATI3800 packadges).

 

Its not an thing of .pist (DEV-ID) modding, they are all in (also in orig. ATI Apple drivers).

 

Also changing dev-ID (by injecting or flashing bios) to same GPU but modell 3870 didnt work, and Win ATI drivers complain "not ATI".

 

Does Apple read mor than only DEV-ID and SUB-ID from the card ? (By direct GPU register read or something like that ?)

I don't know how different are these cards. The most simple suggestion that they have different connections.

Yes, for some card ATIRadeonXXXX.kext read not only PCI information but also GPU registers like 0x4018 or 0x42c8. As I know the last one is a number of pipelines.

Can't say you something more.

Link to comment
Share on other sites

I don't know how different are these cards. The most simple suggestion that they have different connections.

Yes, for some card ATIRadeonXXXX.kext read not only PCI information but also GPU registers like 0x4018 or 0x42c8. As I know the last one is a number of pipelines.

Can't say you something more.

 

Thanks.

 

I now tested to use the ATIRADEON2000* + OpenGL Framework from OS X dev 10.5.5 (9F9).

I have now OpenGL V 1.5.30 , all is OK. No white menue (a major problem , we had to use 1.5.24 insted of 1.5.28 drivers to aviod this)

I didnt updated the ATINDRV (have to use some TRIAKIS insted LAMNA).

Link to comment
Share on other sites

  • 2 months later...

Hello, I just tried ATILead with ATI Mobility X1900 and it's almost working. But the VRAM size in System Profiler is shown as 4Mo instead of 256, and I can't have 32 bits color depth with resolutions higher than 1024x640.

 

Moreover, 16 bits color-depth is crappy :

image1uk1.th.png

 

 

I attached the ioreg and the ATILead Info.plist file I used, in case you find some info in it.

 

Thanx for your help!

ioreg.txt

Info.plist.txt

Link to comment
Share on other sites

 Share

×
×
  • Create New...