Jump to content
438 posts in this topic

Recommended Posts

I was able to load ATINDRV during the boot. Reason it does not work for anyone is as I suspected the matching process. If you look in the Info.plist, more closely IOKitPersonality, here is what it says:

sorry for this stupid question, but wich info.plist are you talking about? when i do a search there are plenty of results. is it the one in /extensions/ati.kext/contents ?

 

thx

Omni i don't want to fight with you but you get all wrong ... ( include pressure part )

 

ATINDRV stand from ATI Native Driver - is old PPC OSX concept ,because PPC MAC ATI do have part of driver in card BIOS - atindrv is link between mac ati in "bios" low level driver functions and rest of kernel extensions ( framebuffer ) ...etc

...

 

Oh, I didnt mean to start a fight, that's pointless, but I do not believe I am wrong either (at least on some of my points posted throughout this thread) simply because I have spent the time researching these past weeks. I thought you have given up on writing any drivers since last year and thus I've decided to learn it myself.

 

The IONDRV does not support any PC side cards, that's true, and I doubt Apple will ever bother writing any support for it because it's not their plan to run OS X on plain PCs.

 

There have been reports that ATI has written a custom firmware for Apple for new iMacs which loads during EFI boot and stands in place of the old ATI ROM BIOS found on Mac ATI cards. Thus the NDRV is still used, now through its ATINDRV incarnation. Bottom line is that this ATINDRV does what old NDRVs used to do on PPC, get the missing stuff from the loaded firmware and then get the show on the road. Unless we can get the firmware extracted from the iMac Flash ROM and force-load it somehow, I do not see this ATINDRV working at all.

 

But that's beside the point, now that I see you have written the NVidia driver, I would like to ask you to share your source for the FrameBuffer/Device portion with us so that we can get the ATI driver going. I have looked at your old ATI source (one you gave JaS) and noticed that you've started writing a 2D Accelerator based on IOAccelerator as well. That is not needed - we already have full QE/CI/OpenGL working through the ATIRadeon*.kexts. When your old ATI source is compiled without Accelerator, it works just fine together with the existing ATI kexts (full QE/CI/OpenGL).

 

What we need is the low-level functions (resolution, refresh, detection) and your NVidia driver's Frame Buffer and Device could possibly be adapted to ATI (my guess with changes to accomodate ATI registers and what not). It would be a really great gesture if you'd help us out this way, so that we do not have to re-invent the wheel when you already have it turning. :)

 

thanks

Edited by omni
omni: have you tested compiling np_'s old ATI source against the 10.4.4 ATI kexts? does it work or blackscreen? for me, i'd be happy with CI/QE on an X1600 PCI-E...

The source that np_ shared with JaS is just a framework, it does not have those functions needed to setup resolution, refresh rates, query the monitor for available modes etc. The code does compile and loads and it works ok in 10.4.3. There's no mouse tearing as far as I could see, plus it coexists with ATIRadeon*.kext well, too (CI/QE/OpenGL supported) but it really does not perform any functions.

Edited by omni
ok, but i'm trying to figure out if it'd help with the black screen issues with the 10.4.4 kexts, or if that is unrelated. i'd be happy with just QE and CI, without the refresh rates stuff.

I think we need to get the 10.4.4 disc and see what's there, and hopefully get it working. ATINDRV might just need to work on 10.4.4, or it actually does need that ATI firmware which will be a bummer if we dont find a way to extract it from an iMac.

The source that np_ shared with JaS is just a framework, it does not have those functions needed to setup resolution, refresh rates, query the monitor for available modes etc. The code does compile and loads and it works ok in 10.4.3. There's no mouse tearing as far as I could see, plus it coexists with ATIRadeon*.kext well, too (CI/QE/OpenGL supported) but it really does not perform any functions.

 

omni, where is that _np source you guys are talking about. You say... "no mouse tearing" and QE/CI/OGL enabled. That is GREAT news, because a lot of us have mouse tearing. Can you post a link to _np's source?

omni, where is that _np source you guys are talking about. You say... "no mouse tearing" and QE/CI/OGL enabled. That is GREAT news, because a lot of us have mouse tearing. Can you post a link to _np's source?

I think the link was on the win2osx forum, there was a big thread there and what not, but since the forum is down I dont have the link anymore. I could upload the ZIP later on, or compile a version and upload the kext...

I have it. It's somewhere on this thread, don't remember the page. It's derived from X11 driver, right? And it's called Ati.kext.

Unfortunately, it's not loading at startup. Manually sais it registered AtiAccel and Ati personalities.

Edited by sigxcpu

i do not give up on nv driver , just too busy with my work

 

about to write driver for ATI the source ( old ATI Framebuffer ) can be finished easy

 

all need is to port part of X11 ATI driver

 

NV Driver can't be appled on ATI even with modification

 

NV use maped memory

 

ATI use I/O ( see IOPCIDevice ioRreadXX/ioWriteXX)

 

witch mean complete different

 

also NV have tons of registers to handle ,ATI have few on top of standart VGA

 

IOFramebuffer will use whatever card report - resolutions, refresh rates but provided from low level driver

 

other ugly problem is IODisplay - its shold dedect monitor and read DDC, report back monifor info - but do not work at all

 

the way is to use IOI2CInterface but even this don't work correct most of time it's return busy resource or corrupted blocks

 

 

i can help to anyone with ATI driver but i can't write it because simple i did not own ATI nor i have plans to

 

without hardware in hand is not posible - request a lot exprements , test's ..etc

 

but with handy guy i can give him right direction to do it

 

if some one interesed to write ATI driver , msg me and i will help with all i can - but please do not msg to ask "why ATINDRV do not load or sort of..."

 

thanks

 

 

 

 

hi dude. well, i was suspicious because an X1600 card appears to work with the 10.4.4 drivers in all respects except the black screen. ie SSHing into the box and running system_profiler reports Core Image and Quartz Extreme as "Supported". restarting the loginwindow process reveals a light blue screen for a second or so, then back to black. shutting down the machine also reveals the blue screen with the spinning progress thing.

 

see this thread for more info:

 

http://forum.osx86project.org/index.php?sh...t=0entry44797

 

thanks for your input anyway dude, its much appreciated.

 

munky, about black screen , try that

 

remove all ATI**GL.xxx ( kext, bundles all related to GL )

files from Extensions ran "kexctcache -k /System/Library/Extenstions" , reboot and let me know

i do not give up on nv driver , just too busy with my work

 

about to write driver for ATI the source ( old ATI Framebuffer ) can be finished easy

 

all need is to port part of X11 ATI driver

 

NV Driver can't be appled on ATI even with modification

 

NV use maped memory

 

ATI use I/O ( see IOPCIDevice ioRreadXX/ioWriteXX)

 

witch mean complete different

 

also NV have tons of registers to handle ,ATI have few on top of standart VGA

 

IOFramebuffer will use whatever card report - resolutions, refresh rates but provided from low level driver

 

other ugly problem is IODisplay - its shold dedect monitor and read DDC, report back monifor info - but do not work at all

 

the way is to use IOI2CInterface but even this don't work correct most of time it's return busy resource or corrupted blocks

i can help to anyone with ATI driver but i can't write it because simple i did not own ATI nor i have plans to

 

without hardware in hand is not posible - request a lot exprements , test's ..etc

 

but with handy guy i can give him right direction to do it

 

if some one interesed to write ATI driver , msg me and i will help with all i can - but please do not msg to ask "why ATINDRV do not load or sort of..."

Well what I meant is that you have written most of the framework for the NV driver, some things in the Framebuffer are the same for both NV and ATI, no? I agree that changes need to be made for NV memory mapping vs ATI I/O, but we need to get so little stuff going for ATI because the existing kext's already provide acceleration in 2D and 3D (QE/CI/OpenGL)

 

I've noticed that issue with I2C and I dont think it's worth while relying on Apple's implementation. Did you write your own I2C routines for the NV driver or did you use Apple's I2C?

I gather that AppleSense simply doesnt work when the hardware on our PCs is so different...

 

I any case I did send you a msg, hopefully you'll reply :D

Edited by omni

Okay, so when I remove ATIRadeonX1000GL.bundle and reboot, I can see the screen again, but I can't change resolution and there's no CI/QE. It's acts just like when the ATIRadeonX1000.kext is removed, but it is loaded if I do a kextstat:

 

62 0 0x30f7c000 0x48000 0x47000 com.apple.ATIRadeonX1000 (4.2.0) <52 51 16 11>

 

output from system_profiler, notice it no longer mentions that there is no kext loaded:

 

Graphics/Displays:

 

Display:

 

Type: VGA-Compatible Controller

Bus: PCI

VRAM (Total): 256 MB

Vendor: ATI (0x1002)

Device ID: 0x71c0

Revision ID: 0x0000

Displays:

?????????:

Resolution: 1400 x 1050

Depth: 32-bit Color

Core Image: Not Supported

Main Display: Yes

Mirror: Off

Online: Yes

Quartz Extreme: Not Supported

 

 

I'm occationally getting small mouse droppings when using menus every now and then, so something seems to be a little different.

Edited by ajv
sudo chown -R root:wheel /System/Library/Extensions

sudo chmod -R 755 /System/Library/Extensions

sudo kextcache -k /System/Library/Extensions

I am wondering about the kext cache rebuilding step in general. I was having a problem enabling AHCI on my machine yesterday until I tried skipping that step on this suggestion:

 

The only thing people are doing differently is rebuilding the kext cache. I never rebuild my kext cache, it's not needed since Mac OS 10.2 because the system does it automatically. But that shouldn't make a difference....

Even though it "shouldn't make a difference", has anyone else gotten different results by not "manually" rebuilding the kext cache?

 

What is the story with here?

Edited by bofors

256Mb 128bit X1600 Pro PCIe:

 

Display:

 

Type: VGA-Compatible Controller

Bus: PCI

Slot: PCIEX16_1

VRAM (Total): 256 MB

Vendor: ATI (0x1002)

Device ID: 0x71c2

Revision ID: 0x0000

Kernel Extension Info: No Kext Loaded

Displays:

Display:

Resolution: 1024 x 768

Depth: 32-bit Color

Core Image: Not Supported

Main Display: Yes

Mirror: Off

Online: Yes

Quartz Extreme: Not Supported

Edited by zendal
Okay, so when I remove ATIRadeonX1000GL.bundle and reboot, I can see the screen again, but I can't change resolution and there's no CI/QE. It's acts just like when the ATIRadeonX1000.kext is removed, but it is loaded if I do a kextstat:

 

62 0 0x30f7c000 0x48000 0x47000 com.apple.ATIRadeonX1000 (4.2.0) <52 51 16 11>

 

output from system_profiler, notice it no longer mentions that there is no kext loaded:

 

Graphics/Displays:

 

Display:

 

Type: VGA-Compatible Controller

Bus: PCI

VRAM (Total): 256 MB

Vendor: ATI (0x1002)

Device ID: 0x71c0

Revision ID: 0x0000

Displays:

?????????:

Resolution: 1400 x 1050

Depth: 32-bit Color

Core Image: Not Supported

Main Display: Yes

Mirror: Off

Online: Yes

Quartz Extreme: Not Supported

I'm occationally getting small mouse droppings when using menus every now and then, so something seems to be a little different.

 

ahhh , mean if you remove ATIRadeonX1000GL.bundle it's work - no blackscreen ?

 

so this also mean grab OpenGL framework from 10.4.4 inlcude AGL ..etc

 

1: backup current *GL* then install that from 10.4.4 return ATIRadeonX1000GL.bundle

 

and test again

Okay, so when I remove ATIRadeonX1000GL.bundle and reboot, I can see the screen again, but I can't change resolution and there's no CI/QE. It's acts just like when the ATIRadeonX1000.kext is removed, but it is loaded if I do a kextstat:

 

ajv get OpenGL/AGL frameworks from 10.4.4 (backup your first) and prelace with that one (10.4.4)

then back ATIRadeonX1000GL.bundle and try again (System/Library/Frameworks/**GL**)

 

let us for results

 

thanks

 

EDIT:

 

about resolutions - i don't think you will be able to change that , munky told new iMac/book max res = 1400x900 mean bigger res will cause other problem like fremebuffer glich

i only said the native res of the 17'' iMac. of course, there is an external DVI output on it and the macbook, so im not so sure we'll have to worry too much about resolutions. i'd be happy to see the damn thing work at ANY resolution first of all, then tweak it ;)

 

EDIT: also, ajv doesnt have an intel mac (afaik), he was just using the kexts leaked by kinkadius, so i dont think he'll be able to grab the frameworks :(

 

anyone with an iMac Core Duo (kinkadius?) want to help us out here?? we're not asking for a full DMG (tho that would be nice), just some files to help us get the ATI drivers to work. pretty please?

 

also, ajv, you might want to find out what device on your mobo controls access to the PCI-Express bus (is it the southbridge? or what?) and add its device ID to IOPCIFamily, to get the card recognised as 'PCIe' - might help (you never know).

Edited by munky
The MacBook supports dual-link DVI so that it can drive the 30" ACD. So it supports a max res of at least 2560 x 1600.

 

this also mean that ATI on macbook is dual head , also mean there is two framebuffers

 

can some one with loaded ATI**.kext post ioreg -l output ? ( display driver part )

 

thanks

×
×
  • Create New...