Jump to content

fluid | fixed

UPDATED: AppleAC97Audio for Snow Leopard i386/x86_64


  • Please log in to reply
22 replies to this topic

#1
Roman BEránek

Roman BEránek

    InsanelyMac Protégé

  • Members
  • Pip
  • 20 posts
  • Gender:Male
  • Location:Czech Republic
Here is new version of AppleAC97Audio drivers. Original source code files were taken from Mac OS X 10.4.11 (opensource.apple.com).
I have "converted" (-> manually :D) the project into Xcode 3.2 and then replaced some deprecated calls with newer and ported asm call inl to 64-bit environment (the 'l' in "inl" means long, but long in 64-bit has 64-bits and instruction "in" can't operate with 64-bit operands).

Next goal is add 8ch support, but this will take a while 'cause it needs studying AC'97 datasheet.

UPDATED: Now with support of nForce4 audio and no "does not declare a kernel dependency" anymore
Binary:Attached File  AppleAC97Audio.kext.zip   199.66K   1419 downloads
Sources: Attached File  AppleAC97Audio_src.zip   117.96K   270 downloads

Under x86_64 NOT tested but SHOULD work.

In case of donations, you can send it here :(

Enjoy.

iSchemy

#2
Maniac10

Maniac10

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 352 posts
  • Gender:Male
Thank you Roman, I'm using it now and it seems to solve the dependence issue I had with the other versions. BTW, I'm on 64bit (with Andy's patch and kernel)


EDIT: not so fast, the dependence problem is still there, and forgot to mention that there's a typo (I think) in the AppleAC97AudioIntelICH.kext plist, the IOPCIPrimaryMatch   under the NVIDIA AC97 Audio section says 0x00da10de when it should be 0x005910de.

com.apple.kextd[12]	/System/Library/Extensions/AppleAC97Audio.kext does not declare a kernel dependency; using com.apple.kernel.6.0.
com.apple.kextd[12]	/System/Library/Extensions/AppleAC97Audio.kext/Contents/PlugIns/AppleAC97AudioIntelICH.kext does not declare a kernel dependency; using com.apple.kernel.6.0.


#3
danielkza

danielkza

    InsanelyMac Protégé

  • Members
  • PipPip
  • 66 posts
  • Gender:Male
  • Location:São Paulo - Brasil
What exactly are the advantages over VoodooHDA? Or AppleHDA?

#4
Roman BEránek

Roman BEránek

    InsanelyMac Protégé

  • Members
  • Pip
  • 20 posts
  • Gender:Male
  • Location:Czech Republic

View PosteMatoS, on Aug 29 2010, 02:10 AM, said:

Thank you Roman, I'm using it now and it seems to solve the dependence issue I had with the other versions. BTW, I'm on 64bit (with Andy's patch and kernel)


EDIT: not so fast, the dependence problem is still there, and forgot to mention that there's a typo (I think) in the AppleAC97AudioIntelICH.kext plist, the IOPCIPrimaryMatch   under the NVIDIA AC97 Audio section says 0x00da10de when it should be 0x005910de.

com.apple.kextd[12]	/System/Library/Extensions/AppleAC97Audio.kext does not declare a kernel dependency; using com.apple.kernel.6.0.
com.apple.kextd[12]	/System/Library/Extensions/AppleAC97Audio.kext/Contents/PlugIns/AppleAC97AudioIntelICH.kext does not declare a kernel dependency; using com.apple.kernel.6.0.

Oh, sorry. I was working with two version of this kext and it seems that this was the one with original plist files  :(
Anyway, it's FIXED.

View Postdanielkza, on Aug 29 2010, 05:19 AM, said:

What exactly are the advantages over VoodooHDA? Or AppleHDA?

The advantages are: it works with AC '97 soundcards.
The disadvantages are: it doesn't work with Intel HDA soundcards.

#5
MacKonsti

MacKonsti

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 222 posts
  • Gender:Male
  • Location:Muppet Show

View PostRoman BEr�nek, on Aug 29 2010, 07:45 AM, said:

The advantages are: it works with AC '97 soundcards. The disadvantages are: it doesn't work with Intel HDA soundcards.
So, mate, in the case of my mobo (Shuttle XPC SG31G2 V2) where it comes with the Realtek ALC888 (7.1 channel High Definition Audio support Digital S/PDIF in/out) and inside the DSDT I see both references to Device (AC97) and Device (AZAL) are we supposed to be able to use your driver and skip altogether the search for patched binaries for ALC888 etc.? If I install your driver over a vanilla system installation, will I have audio via AC97? That's my question...

In any case, great work. Any new driver is always welcome!

#6
Roman BEránek

Roman BEránek

    InsanelyMac Protégé

  • Members
  • Pip
  • 20 posts
  • Gender:Male
  • Location:Czech Republic
Well, there is no sign of AC '97 compatibility in a datasheet to ALC888. It sorta makes sense because there is no reason for HDA cards to pretend being AC '97.
But you can try it... simply add PCI ID of your card to Info.plist.

Give me a report  ;)

iSchemy

#7
MacKonsti

MacKonsti

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 222 posts
  • Gender:Male
  • Location:Muppet Show

View PostRoman BEr�nek, on Aug 30 2010, 01:50 PM, said:

Well, there is no sign of AC '97 compatibility in a datasheet to ALC888. It sorta makes sense because there is no reason for HDA cards to pretend being AC '97.
But you can try it... simply add PCI ID of your card to Info.plist.

Give me a report  ;)
Dear iSchemy thanks for your reply. Am I right to assume your driver was made to offer audio support to older/legacy controllers?

However, with all of us who already found a solution to having audio, via bin-patched kext or kext replacement from previous 10.6.x version, will just installing your driver mix up things? My device/vendor IDs (I guess you're referring to those, right?) are already covered/supported by the current patched binary... and the AppleHDA.kext is loaded.

For testing this one, I believe users with a stable/working system should:

(1) revert to including Device (AC97) in their DSDTs because it's usually removed when patching DSDT.

(2) somehow revert to vanilla audio kext, so that there's no (patched) audio driver loaded. In my case I must find the vanilla AppleHDA.kext for 10.6.4 because I deleted it upon installing the bin-pathed version.

(3) reboot, check there's no audio at all, then install your AC97 driver (with proper permissions) in /S/L/E and delete /System/Library/Caches/com.apple.kext.caches/Extesions.mkext and wait for your system to rebuild it, including the new AC97 kext. Reboot.

I must find some free time to do this!  ;)

#8
Roman BEránek

Roman BEránek

    InsanelyMac Protégé

  • Members
  • Pip
  • 20 posts
  • Gender:Male
  • Location:Czech Republic
You are assuming it right. This driver was made to offer audio support to audio controllers made before 2005 (Intel HDA specifications were released in 2004) under 64b kernel.
Personally, I don't see any reason to experiment with this driver when you already have a working solution. Even there is any backward compatibility, this driver can't control more than 6 channels because it is not specified in AC '97 (there are few codecs with 8-channels support, eg. ALC850 (my case) but it needs some dirty hacks (in this case 7th and 8th channels replace AuxIn) - that was by the way one of the main reasons to create Intel HDA specifications.
Rather be glad for fully working audio - not all of us have this luck :-)

Have fun.

iSchemy

P.S. if you have more speakers than two, maybe you will want this.

#9
makkernel2

makkernel2

    InsanelyMac Protégé

  • Members
  • Pip
  • 25 posts
  • Gender:Male
  • Location:Porto Alegre (Brasil) -- now!
  • Interests:Computer, women, dogs .. and many many others!
Hi, thanks. Is there some kind of support for microphone?

#10
Roman BEránek

Roman BEránek

    InsanelyMac Protégé

  • Members
  • Pip
  • 20 posts
  • Gender:Male
  • Location:Czech Republic
Mine microphone works, your not? Can you please tell me what type of codec do you have? I will look at it.

#11
Snerler

Snerler

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 272 posts
  • Gender:Male
For my NFornce4 ACL850 i installed this: http://www.kexts.com...850_(ac97).html
and I have working audio.

Whats the benefit of installing this driver?

#12
makkernel2

makkernel2

    InsanelyMac Protégé

  • Members
  • Pip
  • 25 posts
  • Gender:Male
  • Location:Porto Alegre (Brasil) -- now!
  • Interests:Computer, women, dogs .. and many many others!

View PostRoman BEr�nek, on Aug 30 2010, 07:13 PM, said:

Mine microphone works, your not? Can you please tell me what type of codec do you have? I will look at it.

My error. Hey, what are the kexts dependencies of this kext?

#13
Roman BEránek

Roman BEránek

    InsanelyMac Protégé

  • Members
  • Pip
  • 20 posts
  • Gender:Male
  • Location:Czech Republic

View Postmakkernel2, on Aug 30 2010, 11:37 PM, said:

My error. Hey, what are the kexts dependencies of this kext?

IOAudioFamily.kext

#14
kumagaya

kumagaya

    InsanelyMac Protégé

  • Members
  • Pip
  • 11 posts
hi:
Roman BEr�nek
First of all, thank you for the change, in 32-bit mode, no problem; but in 64 bit mode, I encountered a panic, (the log 64-bit mode, I almost heard the MSN, SKYPE login sound), please help me to see what the problem is caused by the conflict, there is no other solution?
ps:my alc 655 id is 0x27de8086,I changed my id。

Attached Files



#15
rals2007

rals2007

    InsanelyMac Sage

  • Members
  • PipPipPipPipPipPip
  • 421 posts

View PostRoman BEr�nek, on Aug 28 2010, 04:13 PM, said:

Here is new version of AppleAC97Audio drivers. Original source code files were taken from Mac OS X 10.4.11 (opensource.apple.com).
I have "converted" (-> manually :D) the project into Xcode 3.2 and then replaced some deprecated calls with newer and ported asm call inl to 64-bit environment (the 'l' in "inl" means long, but long in 64-bit has 64-bits and instruction "in" can't operate with 64-bit operands).

Next goal is add 8ch support, but this will take a while 'cause it needs studying AC'97 datasheet.

UPDATED: Now with support of nForce4 audio and no "does not declare a kernel dependency" anymore
Binary:Attachment AppleAC9...dio.kext.zip
Sources: Attachment AppleAC97Audio_src.zip

Under x86_64 NOT tested but SHOULD work.

In case of donations, you can send it here ;)

Enjoy.

iSchemy


Great work man!

Ca you also fix the stereo of AppleAC97AudioVIA. Seems that its only mono coz the sound is only coming from 1 channel.

Also, attached is the source AppleAC97AudioATIIXP. Can you also mod it and include in your release.

Thanks and regards :P

Attached File  AppleAC97AudioATIIXP_src.zip   13.75K   50 downloads

#16
Eps

Eps

    InsanelyMac Protégé

  • Members
  • PipPip
  • 70 posts
Is the kext support soundmax AD1984a audio? ;)

#17
Slice

Slice

    InsanelyMac Deity

  • Local Moderators
  • 1,814 posts
  • Gender:Male
  • Location:Moscow

View PostEps, on Sep 4 2010, 11:20 AM, said:

Is the kext support soundmax AD1984a audio? :unsure:
Yes, read here
http://www.insanelym...howtopic=93011#
and further how to make support for any AD198x

#18
Eps

Eps

    InsanelyMac Protégé

  • Members
  • PipPip
  • 70 posts

View PostSlice, on Sep 5 2010, 02:27 AM, said:

Yes, read here
http://www.insanelym...howtopic=93011#
and further how to make support for any AD198x

Sadly,maybe it won't work on my AD1984A(0x194a11d4).
I added ICH7(0x27d88086) in AppleAC97AudioIntelICH.kext's info.plist and added ADS70 to ADS80 in PNPVendorID.
I don't have Windows on my notenook.
How can I know that ALS number of AD1984A?  :(

#19
Slice

Slice

    InsanelyMac Deity

  • Local Moderators
  • 1,814 posts
  • Gender:Male
  • Location:Moscow

View PostEps, on Sep 6 2010, 04:12 PM, said:

Sadly,maybe it won't work on my AD1984A(0x194a11d4).
I added ICH7(0x27d88086) in AppleAC97AudioIntelICH.kext's info.plist and added ADS70 to ADS80 in PNPVendorID.
I don't have Windows on my notenook.
How can I know that ALS number of AD1984A?  :(
ioreg -lxw0 | grep PNPVendorID

#20
Eps

Eps

    InsanelyMac Protégé

  • Members
  • PipPip
  • 70 posts

View PostSlice, on Sep 6 2010, 08:44 PM, said:

ioreg -lxw0 | grep PNPVendorID

I got nothing.
Maybe AppleAC97CodecAD198x.kext is not loaded.

I try to kextload AppleAC97CodecAD198x.kext by myself.
But,I got "AppleAC97CodedAD198x.kext failed to load - (libkern/kext) validation failure (plist/executable); check the system/kernel logs for errors or try kextutil(8)." error.
Thanks,anyway.  :D





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

© 2013 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   Web hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy