Vous êtes sur la page 1sur 1

create account or login

ipis OS X search this site search

running OS X on the Asus Eee PC

join wiki forum contact

Quick and Dirty guide to getting temporary Audio from internal Speakers
Forum » Development / Sound » Quick and Dirty guide to getting temporary Audio from internal Speakers

summary:
started by: elroy
The adventures of one moron attempting to keep up with the guys doing the actual grunt work.
on: 28 Oct 2008, 07:41 GMT+08
number of posts: 92
RSS: new posts

unfold all | fold all | +more options

Quick and Dirty guide to getting temporary Audio from internal Speakers fold
elroy 28 Oct 2008, 07:41 GMT+08

The progress made by snickersmd, codeye, hagglebeef, Toonces and not elroy in this thread has clearly reached a point where it's attracting attention by others. So, while I'm not of much use in the aforementioned
thread, I thought I'd slap together a quick guide to getting the speakers working (temporarily - they die after reboot, or sleep).

This guide assumes that you are familiar with installing kext files (either 'by hand' / using the terminal / or via an application like Kext Helper).

Required Files:
Hagglebeef modded kexts (potentially unneeded, please leave feedback as per codeye's request)
http://rapidshare.com/files/157602713/eee901kext4sound.zip.html

AzaliaAudio.pkg.zip (i've not personally tested this source).


http://www.mediafire.com/?enez1guzz1g

Instructions:
1. Install the AppleHDA.kext from the AppleHDA269from268 folder in Hagglebeef's zip (potentially unneeded, please leave feedback as per codeye's request)
2. REBOOT
3. Run the AzaliaAudio installer
4. REBOOT

If sound goes down with sleep or reboot run the following commands (please change the memory address to that found in Ioregexplorer for your eeepc - mine (codeye's) is 0xf7db8000 EEEPC901) - You need to
have reggie_se installed from the developer tools:

This sets the verb command to turn EAPD on for the speaker Pin Complex:

sudo reggie_se -D PhysAddr -w 0x01470c02 -a 0xf7db8060 -B 32

This sends the verb command to the codec:

sudo reggie_se -D PhysAddr -w 1-a 0xf7db8068 -B 32

None of the content of this guide is my doing, all credit belongs to the guys mentioned above, and those who have helpfully participated in the original thread.

Cheers

last edited on 28 Oct 2008, 09:56 GMT+08 by elroy + show more


reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
snickersmd 28 Oct 2008, 08:25 GMT+08

Thank you for taking up the torch for the rest of the community. It's a fine starting tutorial, and I hope it will get more and more people up to speed quicker than wading through our dev discussion.

Please use the join link to request membership in the wiki, I would like to extend membership to you so that you can better support this thread and the wiki. Thanks!

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
nhirt 28 Oct 2008, 16:32 GMT+08

Hi,

It works!!! Thanks guys!!!

On a eee 1000H with iDeneb 1.3 I installed CHUD 4.6.1 from https://connect.apple.com/cgi-bin/WebObjects/MemberSite.woa/105/wo/iM5idW3xg7A335yJV6c1UDd3Z9i/7.1.17.2.1.3.3.1.1.1.1.0.3.2.3.3.1]
(must be registered to download), AzaliaAudio.pkg and did run :

sudo reggie_se -D PhysAddr -w 0x01470c02 -a 0xf7eb8060 -B 32


sudo reggie_se -D PhysAddr -w 1 -a 0xf7eb8068 -B 32

as suggested by @mitro.

This is really awesome, having sound coming out of this tiny box ;-)
If you have stuff to test, don't hesitate to throw it at me, I have created a test environment on an external HD.

Nik

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
andif62 28 Oct 2008, 17:15 GMT+08

Did exactly the same on my 1000H with MSIWIndOSX86 but no success :-(
Something seems to be wrong…
How can I check this?

last edited on 28 Oct 2008, 17:17 GMT+08 by andif62 + show more


options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
civrot 25 Nov 2008, 15:05 GMT+08

Worked for me too. Thanks.

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
nhirt 5 Nov 2008, 15:48 GMT+08

I posted a very basic wiki tutorial on how to get the sound working.
I take no credit at all it's just a writeup of all the discussion threads going on condensed in one neat page in order to
spare newcomers the task of going through all the threads.

@elroy
Hope you don't mind ;-) Please feel free to modify/complete the Tutorial.

Nik

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
elroy 5 Nov 2008, 16:11 GMT+08

No problem at all man, but if these guides get any quicker or dirtier we're gonna end up with:

What do I do?
Figure it out for yourself jackass!

:D

PS: does anyone else find this kind of threaded forum really hard to follow?

options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
nhirt 5 Nov 2008, 16:45 GMT+08

Yes it really gets hard to identify the important information in the forum threads (but hey that's what forums are about - discussing and finding solutions ;-)
But that's also why all of you should contribute to the wiki where we can distill the important information that is being provided/found in the forum part.

So all you contributors (I'm sure that snikersmd, Toonces, codeye and myself are not the only ones to be able to do some writeup) , get your keyboards and neurons ready and apply for wiki
editing rights (if that's Ok with you snikersmd).

Nik

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
codeye 28 Oct 2008, 09:04 GMT+08

elroy,
thanks for starting this thread.
You do not need the modded kexts if you run the 2 lines below in terminal.
I think, but if people could feed back that would be helpful, this will work for everyone:
Run the AzaliaAudio installer (only once!)
If sound goes down with sleep or reboot run the following commands (please change the memory address to that found in Ioregexplorer for your eeepc - mine is 0xf7db8000 EEEPC901):
sudo reggie_se -D PhysAddr -w 0x01470c02 -a 0xf7db8060 -B 32 //this sets the verb command to turn EAPD on for the speaker Pin Complex
sudo reggie_se -D PhysAddr -w 1 -a 0xf7db8068 -B 32 //this sends the verb command to the codec
I'm sure someone could write a script to automate this. You need to have reggie_se installed (obviously) from the developer tools.

last edited on 28 Oct 2008, 10:33 GMT+08 by codeye + show more


reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
Diamondsw 28 Oct 2008, 10:07 GMT+08

A few questions:
- There needs to be a space in the second command between the "1" and "-a"
- Since you mentioned your address ends in "00", does this mean in the following two commands we should be adding 0x60 and 0x68 respectively?

I was going to try to wrap this into a LaunchDaemon, but it doesn't seem they can be run on waking from sleep. :(

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
Diamondsw 28 Oct 2008, 10:39 GMT+08

Confirmed that this works (with the space added to the command as I previously mentioned). No AppleHDA required. My Eee 901 also used the same memory offsets as expected.

Regarding reggie_se: If you don't have the full developer tools installed (as I don't to save precious space on the Eee) then you won't have reggie_se. However, all you really need is the CHUD package,
which includes that along with the necessary libraries. It's in the Developer Tools on the DVD, but it is also available to free accounts on Apple's Developer Connection, which may be more convenient.

Here's my plist that will at least run the reggie commands at startup (for waking from sleep, you'll still need to run them manually):

EDIT: Something's not working properly; I'll post back if I can fix it.
EDIT2: Looks like you can't run multiple commands using "&&" from a launchd plist. Instead, try this:

<?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>Label</key>
<string>com.eee.sound</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/bin/enable-eee-sound.sh</string>
</array>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>

With the following script (made executable!) at /usr/local/bin/enable-eee-sound.sh:

For the 901:

#!/bin/sh

reggie_se -D PhysAddr -w 0x01470c02 -a 0xf7db8060 -B 32


reggie_se -D PhysAddr -w 1 -a 0xf7db8068 -B 32

Or for the 1000:

#!/bin/sh

reggie_se -D PhysAddr -w 0x01470c02 -a 0xf7eb8060 -B 32


reggie_se -D PhysAddr -w 1 -a 0xf7eb8068 -B 32

last edited on 28 Oct 2008, 12:51 GMT+08 by Diamondsw + show more


reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
codeye 28 Oct 2008, 10:40 GMT+08

Diamondsw,
thanks for pointing out the typo - fixed. Yep you need to add 0x60 & 0x68 to the base register, which is easy if the base address ends in 00 ;-)
I'm not that familiar with how OSX runs scripts on resume but why won't they run on waking?

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
Diamondsw 28 Oct 2008, 10:47 GMT+08

Well, launchd doesn't seem to have a trigger for running things on wake, which is very annoying. I can make it jump through all kinds of hoops, but seemingly not this one.

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
codeye 28 Oct 2008, 11:04 GMT+08

http://forums.macosxhints.com/archive/index.php/t-76871.html
is this helpful?

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
mitro 28 Oct 2008, 11:41 GMT+08

For 1000H:

sudo reggie_se -D PhysAddr -w 0x01470c02 -a 0xf7eb8060 -B 32


sudo reggie_se -D PhysAddr -w 1 -a 0xf7eb8068 -B 32

—> Sound works immediately after reboot / sleep.

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
dcipher 29 Oct 2008, 01:41 GMT+08

—> Sound works immediately after reboot / sleep.

???

Are you saying that you have to run this in order to get sound to work after sleep/reboot or that it continues to work past a sleep or reboot?

thanks

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
mitro 29 Oct 2008, 05:13 GMT+08

No no, I have (as everybody) to type the 2 commands to get sound.

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
choice 28 Oct 2008, 18:48 GMT+08

hey guys, thanks for all the great contributions.

i'm using a 1000h, i've tried the above method hoping to retrieve sound upon reboot, however i'm getting the following error after i've entered "sudo reggie_se -D PhysAddr -w 0x01470c02 -a 0xf7eb8060 -B 32"

kevin-macpro31:~ kevin$ sudo reggie_se -D PhysAddr -w 0x01470c02 -a 0xf7eb8060 -B 32


. 4.6.1 (227)
Memory Address - 0x00000000f7eb8060 (local)
ERROR: write failed to F7EB8060

any idea on how to fix this?

thanks

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
codeye 28 Oct 2008, 20:11 GMT+08

If you want sound out through headphones then run these settings in verb_command or reggie_se
0x15707C0 (turn headphones pin-ctrl on) 0x153B000 (turn headphones amp-out on) 0x153B080 (turn headphones amp off)
0x143B080 (turn off speaker) 0x143B000 (turn speaker on)
enjoy!

last edited on 28 Oct 2008, 20:33 GMT+08 by codeye + show more


reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
nhirt 28 Oct 2008, 21:40 GMT+08

Hi,

Based on codeeyes remarks I made two scripts that turn on/off speakers/headphones (stupid simple stuff, but who knows, this might help some noobs like me ;-)

enable_speakers.sh (turns on speaker pin-ctrl, turn headphones amp off, turn speaker on)

#!/bin/sh
sudo reggie_se -D PhysAddr -w 0x01470c02 -a 0xf7eb8060 -B 32
sudo reggie_se -D PhysAddr -w 1 -a 0xf7eb8068 -B 32
sudo reggie_se -D PhysAddr -w 0x143B000 -a 0xf7eb8060 -B 32
sudo reggie_se -D PhysAddr -w 1 -a 0xf7eb8068 -B 32
sudo reggie_se -D PhysAddr -w 0x153B080 -a 0xf7eb8060 -B 32
sudo reggie_se -D PhysAddr -w 1 -a 0xf7eb8068 -B 32

enable_headphones.sh (turn on headphones pin-ctrl, turn headphones amp on, turn speaker off)

#!/bin/sh
sudo reggie_se -D PhysAddr -w 0x15707C0 -a 0xf7eb8060 -B 32
sudo reggie_se -D PhysAddr -w 1 -a 0xf7eb8068 -B 32
sudo reggie_se -D PhysAddr -w 0x153B000 -a 0xf7eb8060 -B 32
sudo reggie_se -D PhysAddr -w 1 -a 0xf7eb8068 -B 32
sudo reggie_se -D PhysAddr -w 0x143B080 -a 0xf7eb8060 -B 32
sudo reggie_se -D PhysAddr -w 1 -a 0xf7eb8068 -B 32

Don't forget to make the files executable.


I have them on my desktop and this is close to a viable solution for me (only microphone is missing now…. ;-)

Cheers,

Nik

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
Grohman 28 Oct 2008, 22:03 GMT+08

Btw, if any noob would like to know how to run scripts without strange and scary output, there is two ways:
Run script as "enable_speakers.sh 1>/dev/null 2>/dev/null" (without quotes)
or
add " 1>/dev/null 2>/dev/null" (without quotes) to every reggie_se-string.

:)

WBR, Grohman.

options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
dcipher 29 Oct 2008, 01:37 GMT+08

Nik - Thanks for making these script files - I was just about to do the same thing :)

options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
andif62 29 Oct 2008, 02:41 GMT+08

Hi Nik,

made the files executable with chmod +x but I can only execute them as admin.
Each time I try admin passwd is asked but when I enter it it´s not accepted :-(
Seems I´m missing something.
Besides this problem all is fine!!!

options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
Grohman 29 Oct 2008, 05:54 GMT+08

I have an idea how to save headphones/speakers state after sleep-mode with sleepwatcher.
After install sleepwatcher and sleepwatcher_startupitem create empty file /opt/local/bin/sound_state.sh and make it executable.
Then add string "echo $0 > /opt/local/bin/sound_state.sh" (without quotes) to enable_speakers.sh and to enable_headphones.sh
Then add string "/opt/local/bin/sound_state.sh" to /etc/rc.wakeup
That's all! After all that strange manipulations you will forget about running any scripts to get sound afeter sleep-mode.

More of that - if you need to run enable_speakers.sh automaticly while booting Leopard, add full path to enable_speakers.sh to /etc/rc.common

WBR, Grohman

last edited on 29 Oct 2008, 05:58 GMT+08 by Grohman + show more


options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
dcipher 29 Oct 2008, 07:23 GMT+08

wow - simple and works great!


i now have sound when I boot and when waking from sleep.
If you want your machine to boot in the same state that you left it, you can just run the sound_state.sh in the rc.common instead (and seed it with whatever you want - speakers or
headphones)…

now, if i could just find a way to make it run a script when I plug the headphones in, it could be completely seemless!

thanks for the idea!

options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
Grohman 30 Oct 2008, 05:22 GMT+08

i was thinking about that for all day and… well, maybe this is not the best solution, but!
I think it'll be nice to add a hotkey for fast switching between speakers and headphones. It's possible to add hotkey for Automator-script with Spark (by the way - you can add hotkeys for
volume up/down or mute with Spark). But, unfortunaly, i don't know applescript, so i wrote it in BASH. Add this script to Automator and save somewhere as a program, then add to Spark:

FILES="/opt/local/bin";
SPEAKERS="${FILES}/enable_speakers.sh";
HEADPHONES="${FILES}/enable_headphones.sh";
STATE="${FILES}/sound_state.sh";
CUR_OUT=`cat ${STATE}`;
NEW_OUT="";

if [ ${CUR_OUT} = ${SPEAKERS} ]; then


NEW_OUT=${HEADPHONES};
elif [ ${CUR_OUT} = ${HEADPHONES} ]; then
NEW_OUT=${SPEAKERS};
fi
${NEW_OUT};

Also i tried to add growl-notification, but i don't know how :(

last edited on 30 Oct 2008, 06:41 GMT+08 by Grohman + show more


reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
codeye 28 Oct 2008, 20:50 GMT+08

choice,
You are accessing the wrong memory address. Please run IORegistryExplorer, search for hdef, and then find the correct address under the property IODeviceMemory.

last edited on 28 Oct 2008, 20:51 GMT+08 by codeye + show more


reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
MacLovin 28 Oct 2008, 22:07 GMT+08

Having the same problem as Choice. Running iDeneb 1.3 with 1000h

Here is what I have done:

1. Installed CHUD_4.6.1.dmg
2. Restarted
3. Installed AzaliaAudio.pkg
4. Restarted
5.
Ran command through terminal:
reggie_se -D PhysAddr -w 0x01470c02 -a 0xf7eb8060 -B 32

Got this error:


EeeBook:~ MacBook$ reggie_se -D PhysAddr -w 0x01470c02 -a 0xf7eb8060 -B 32
. 4.6.1 (227)
Memory Address - 0x00000000f7eb8060 (local)
ERROR: write failed to F7EB8060

6. Codeye suggested that it was the wrong address, verified with IODeviceMemory… it was correct. F7EB8000

| | +-o HDEF@1B <class IOPCIDevice, registered, matched, active, busy 0, retain 10>
| | ||{
| | | | "IOPCIResourced" = Yes
| | | | "IOInterruptControllers" = ("io-apic-0","IOPCIMessagedInterruptController")
| | | | "IOName" = "pci8086,27d8"
| | | | "subsystem-id" = <1a830000>
| | | | "IOPCIExpressLinkCapabilities" = 0
| | | | "IODeviceMemory" = (({"address"=18446744073573990400,"length"=16384}))
| | | | "class-code" = <00030400>
| | | | "IOPowerManagement" = {"ChildrenPowerState"=2,"CurrentPowerState"=2}

I'm really confused as to why this isn't working… any suggestions? Sound is enabled in BIOS… so i'm not too sure what else it could be. Are there any other kext that should be installed other than azalia?

last edited on 28 Oct 2008, 22:10 GMT+08 by MacLovin + show more


reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
codeye 28 Oct 2008, 22:12 GMT+08

Are you guys running the command as root or with sudo?

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
MacLovin 28 Oct 2008, 22:18 GMT+08

Did both ways, same result.

root:
bash-3.2# reggie_se -D PhysAddr -w 0x01470c02 -a 0xf7eb8060 -B 32
. 4.6.1 (227)
Memory Address - 0x00000000f7eb8060 (local)
ERROR: write failed to F7EB8060
bash-3.2#

sudo:
EeeBook:~ MacBook$ sudo reggie_se -D PhysAddr -w 0x01470c02 -a 0xf7eb8060 -B 32
Password:
. 4.6.1 (227)
Memory Address - 0x00000000f7eb8060 (local)
ERROR: write failed to F7EB8060
EeeBook:~ MacBook$

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
brainlessrider 28 Oct 2008, 22:35 GMT+08

Many many thanks to you for your efforts ! Finally, I can trash this poor bluetooth receiver :)

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
hagglebeef 28 Oct 2008, 22:49 GMT+08

For those of you that are not working, it could be that you still need to download the 269from268 kext, remove azalia and follow the instructions in the first post before sound will work. This is because your codec
may not be initialized to where azalia can function properly…. Let us know.

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
MacLovin 28 Oct 2008, 22:58 GMT+08

Hagglebeef

I've tried loading your version of AppleHDA and following the instructions above, however, in verbose mode, it fails to load the kext. Complaining something about "layout-id". Is that normal? In any case, followed
the instructions above and still gave me the memory address error.

Thanks all for your efforts in resolving this! Much appreciated!

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
hagglebeef 28 Oct 2008, 23:02 GMT+08

Did you already install HDAEnabler? If not, you need it to set up layout-id to 12 to load the AppleHDA. You should be able to find it here: http://ipis-osx.wikidot.com/local--files/internal-sound/HDAEnabler.kext.zip

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
MacLovin 28 Oct 2008, 23:35 GMT+08

Hagglebeef,

It totally blows my mind how there seems to be a high success rate in getting sound to work, I must be missing something and I'm pretty embarrassed in my failure in getting this to work. After doing the whole
process over again with the addition of HDAEnabler, I still get the memory address issues.

Note that after I installed azalia, i still did not have sound after reboot as everyone reports that it should work. I'm all out of ideas.

As of now I have azalia kext installed and hdaenabler installed still with memory address issues.

Sad day! :-(

last edited on 28 Oct 2008, 23:40 GMT+08 by MacLovin + show more


reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
hagglebeef 29 Oct 2008, 00:09 GMT+08

MacLovin,

I have been trying to get AppleHDA.kext to work without azalia, so there is more than enough sadness and frustration to go around. Looking at this reminds me that there are two AppleHDA.kext in the
eee901kext4sound.zip file. The one you want is under the AppleHDA269from268 and not the AppleHDA2691016 folder. The AppleHDA2691016 was an experimental kext that does not work. Remove all sound kext
and start over using the AppleHDA.kext under AppleHDA269from268 if that is the case:

# sudo rm -r /System/Library/Extensions/AppleHDA.kext
# sudo rm -r /System/Library/Extensions/AppleAzalia.kext

Otherwise, a post of your system boot log may be helpful:

# sudo dmesg

Hope this helps

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
choice 29 Oct 2008, 03:09 GMT+08

thanks for all the quick supports!

glad (and sad at the same time) that i'm not the only one encountering the problem.

macloving,

differ from your case, i actually HAD sound working after installed HDAEnabler.kext, reboot then followed by azalia pkg,reboot. I had sound both from the internal speakers as well as headphone, however it was
rather strange that when i plugged in my headphone i had sound from BOTH speakers and headphone (hence totally defeated the purpose of using headphones..)

i'm still stuck at that error, is there a way to roll back on all the sound kext and pkgs i've installed/replaced? (time machine isnt working for me)

thanks

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
akrylic 29 Oct 2008, 06:56 GMT+08

After 5 reboot, on my lenovo S10 with simply the kext and without command.
Can i help ? (with my bad english ^^)

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
MacLovin 29 Oct 2008, 07:23 GMT+08

So slightly good news…

When I download kexts I usually "sudo chown -R root:wheel" them before putting it in kext helper when installing them. Usually prevents any issues I would have if kext helper didn't work. However, this time I did a
fresh unzip of eee901kext4sound.zip, used the applehda from AppleHDA269from268. Then drag applehda and hdaenabler to kext helper. Restarted. Installed azalia. Restarted. And surprisingly I had SOUND! Yippe!

Unfortunately, when I try to use reggie_se -D PhysAddr -w 0x01470c02 -a 0xf7eb8060 -B 32, I still get the memory address error. And have to redo the whole process to get sound working again.

I'm confused!! ::scratching head::

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
QuinnStorm 29 Oct 2008, 09:01 GMT+08

Here's a quick script that wraps up all this knowledge so far. Use cases for it are:

To restore last known state (from, by default, /etc/last_sound_state)


set_audio.sh

To toggle to the opposite of last known state


set_audio.sh tog

To set to speakers
set_audio.sh spk

To set to headphones
set_audio.sh hp

This script can be called from rc.common and rc.wakeup with no parameters to restore last known state.

It attempts to use ioreg to figure out what the proper base address is, and bails if the base address doesn't end in 00. Obviously it requires ioreg and reggie_se to be present (is ioreg part of base osx?)

#!/bin/bash
# set_audio.sh
# eeePC audio output setup script
# works with the Azalia driver
# 10/2008 by Quinn Storm <livinglatexkali@gmail.com>
# call with no parameters to set last known state, tog to toggle from last known state, hp to set to hp, spk to set to spk
config()
{
#change SOUND_STATE_FILE if you would like it elsewhere
SOUND_STATE_FILE=/etc/last_sound_state

#set up verb address values


REG_BASE=$(get_base_addr)
if [ "$(echo $REG_BASE | cut -b 7-)" == "00" ]
then
BASE_ADDR=$(echo $REG_BASE | cut -b 1-6)
VERB_DATA_ADDR=0x${BASE_ADDR}60
VERB_CMD_ADDR=0x${BASE_ADDR}68
else
echo "ERROR -- Unaligned base address." 1>&2
exit 1
fi
}
get_base_addr()
{
#this ugly line gets the base address, eliminating hand configuration
ioreg -d 1 -r -n $(ioreg -x | grep 'AzaliaController' -B 1 | head -n 1 | cut -d 'o' -f 2- | cut -d '<' -f 1) -x | grep "IODeviceMemory" | cut -d '=' -f 3 | cut -d ',' -f 1 | cut -b 11-
}
send_verb()
{
#send a verb to the azalia driver
reggie_se -D PhysAddr -w "$1" -a ${VERB_DATA_ADDR} -B 32 &> /dev/null
echo -n "."
reggie_se -D PhysAddr -w 1 -a ${VERB_CMD_ADDR} -B 32 &> /dev/null
echo -n "."
}
enable_spk()
{
#set up internal speaker output
send_verb 0x01470C02 #spk pin ctl
send_verb 0x0143B000 #spk eapd off (amp on)
send_verb 0x0153B080 #hp eapd on (amp off)
}
enable_hp()
{
#set up headphone/line out port output
send_verb 0x015707C0 #hp pin ctl
send_verb 0x0153B000 #hp eapd off (amp on)
send_verb 0x0143B080 #spk eapd on (amp off)
}
do_sudo()
{
#make sure script has admin rights for reggie_se
if [ "$(id -u)" == "0" ]
then
main "$@"
else
sudo "$0" "$@"
fi
}
get_state()
{
#figure out from parameters and statefile what state to set the system to
if [ "$1" == "spk" ]
then
echo -n "spk"
return
elif [ "$1" == "hp" ]
then
echo -n "hp"
return
fi
if [ -f ${SOUND_STATE_FILE} ] && grep -q hp ${SOUND_STATE_FILE}
then
([ "$1" == "tog" ] && echo -n "spk") || echo -n "hp"
else
([ "$1" == "tog" ] && echo -n "hp") || echo -n "spk"
fi
}
set_state()
{
#store new state in statefile
echo -n "Setting state to $1"
enable_$1
echo $1 > ${SOUND_STATE_FILE}
echo "done."
}
main()
{
#thin wrapper around set_state, called by do_sudo
config
set_state $(get_state $1)
}
do_sudo "$@"

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
dcipher 29 Oct 2008, 19:37 GMT+08

thanks for wrapping it all up so neatly. I now have just the one script file and it works great.

-J

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
Toonces 4 Nov 2008, 05:17 GMT+08

QuinnStorm, THANK YOU for the excellent script. I've been using it with sleepwatcher and get seamless sound on power up & returning from sleep.

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
MacLovin 29 Oct 2008, 09:19 GMT+08

Good news!!

So while I was posting my dmesg, I thought maybe its the voodoo kernel that I'm running that is causing this issue. Sure enough it was that! I updated my kernel to the vanilla mac osx kernel and I was able to
run the command without and problems!

So to fix the memory address issue, make sure you are running a compatible kernel! Voodoo kernel does not work with reggie_se!

It appears that only the vanilla 9.5.0 kernel will work… i tried reverting back to Kernel 9.4.0 StageXNU and it gave me the memory address error as well.

SO FOR THOSE WHO HAVE THIS METHOD WORKING! CAN YOU PLEASE POST WHICH KERNEL YOU ARE USING?

last edited on 29 Oct 2008, 09:43 GMT+08 by MacLovin + show more


reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
Rickets 29 Oct 2008, 12:52 GMT+08

I'm using the stock 9.5.0 kernel and sound is working fine for me on my 1000H (using the above hacks, of course). And I want to say thanks to you guys for all your hard work :)

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
Diamondsw 29 Oct 2008, 14:11 GMT+08

Vanilla kernel - why use anything else at this point?

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
nhirt 29 Oct 2008, 18:31 GMT+08

@Diamondsw
Speedstep and Performance improvements are the first things that come to mind ;-)

The voodoo kernel should support the following:


* Supports sleep/resume as well as SpeedStep on most systems (use in conjunction with the SpeedStep kext)
* Massively improved SSE3 Emulation layer, up to 3 times faster and fully multithread-capable (thanks Turbo)
* Real-time clock fix for SSE2 users (no system slowdown/stutter when speedstep is on, supports less than 1 GHz cpu speeds)
* Raw ethernet packet support, useful for MAC spoofing and other kinds of network diagnostics (patch by Peter Bartoli)
* More secure: Execute-Disable (XD/NX) is turned on by default for supported systems
* HPET enabled on supported systems, cleaner boot-up code
* Legacy Vmware support by using busratio= bootflag.

For the moment it is in beta (site is here).


I tried this but had no success with Speedstep and speed was not noticeably improved.

Nik

options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
Diamondsw 29 Oct 2008, 23:10 GMT+08

Good info; let me rephrase - why would you use this on the Eee? :) Looks like SpeedStep, raw ethernet access, and that's about it.

options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
MacLovin 29 Oct 2008, 23:15 GMT+08

Vanilla kernel has given inconsistent shutdown, sometimes leaving the computer on. Small in the grand scheme of things, but still annoying.

I also found that my bluetooth mouse doesn't connect using the Stage XNU 9.4.0 kernel, while it works well in Voodoo and Vanilla.. so for those who are having issues with bluetooth devices.

options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
Diamondsw 30 Oct 2008, 01:54 GMT+08

This will fix the shutdown problem with the vanilla kernel:
http://store.psystar.com/opensource/openhaltrestart

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
hobsii 29 Oct 2008, 18:07 GMT+08

I can confirm this. I had the same problem and changed the kernel. Now the commands from reggie are working perfectly. Thanks a lot!

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
dcipher 29 Oct 2008, 19:38 GMT+08

i have the 9.4.0 vanilla kernel - working great.

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
hagglebeef 29 Oct 2008, 10:11 GMT+08

Hi MacLovin,

I was just about to post that I saw the Voodoo XNU kernel in your dmesg and thought that may have been it. Good to know that you already saw that.

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
choice 29 Oct 2008, 13:52 GMT+08

can you have a look at mine as well?

F policy initialized
Security policy loaded: Seatbelt Policy (mb)
Copyright (c) 1982, 1986, 1989, 1991, 1993
The Regents of the University of California. All rights reserved.

MAC Framework successfully initialized


using 10485 buffer headers and 4096 cluster IO buffer headers
IOAPIC: Version 0x20 Vectors 64:87
ACPI: System State [S0 S3 S4 S5] (S3)
—- AppleSMBIOS-28 —
Extension "com.apple.driver.ApplePCIConfigurator" has immediate dependencies on both com.apple.kernel and com.apple.kpi components; use only one style.
Extension "com.apple.driver.AppleACPIPlatform" has immediate dependencies on both com.apple.kernel and com.apple.kpi components; use only one style.
mbinit: done
Security auditing service present
BSM auditing present
Starting AppleACPIPS2Nub
Found mouse PNP device
AppleACPIPS2Nub startup complete
Extension "com.apple.driver.AppleACPIPlatform" has immediate dependencies on both com.apple.kernel and com.apple.kpi components; use only one style.
From path: "uuid",
Waiting for boot volume with UUID 48418196-F690-31C6-B1D2-9751328D3ADD
Waiting on <dict ID="0"><key>IOProviderClass</key><string ID="1">IOResources</string><key>IOResourceMatch</key><string ID="2">boot-uuid-media</string></dict>
Extension "com.apple.driver.AppleACPIPlatform" has immediate dependencies on both com.apple.kernel and com.apple.kpi components; use only one style.
Extension "com.apple.driver.AppleACPIPlatform" has immediate dependencies on both com.apple.kernel and com.apple.kpi components; use only one style.
Extension "com.superhai.driver.ACPIBattery" has immediate dependencies on both com.apple.kernel and com.apple.kpi components; use only one style.
Got boot device =
IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/IDE0@1F,2/AppleIntelPIIXATARoot/CHN0@0/AppleIntelICHxSATA/ATADeviceNub@0/AppleATADiskDriver/IOATABlockStorageDevice/IOBlockStorageDriver/ST9160827AS
ST9160827AS/IOFDiskPartitionScheme/Untitled 2@2
BSD root: disk0s2, major 14, minor 2
Extension "com.apple.driver.iTunesPhoneDriver" has no explicit kernel dependency; using version 6.0.
Jettisoning kernel linker.
Resetting IOCatalogue.
VGA: family specific matching fails
display: family specific matching fails
Matching service count = 1
Matching service count = 3
Matching service count = 3
Matching service count = 3
Matching service count = 3
Matching service count = 3
display: family specific matching fails
display: family specific matching fails
VGA: family specific matching fails
VGA: family specific matching fails
display: family specific matching fails
HDAEnabler: Copyright (c) 2008 by Kabyl
HDAEnabler: 05/05/2008 Added SPAudio support:Taruga
VGA: family specific matching fails
VGA: family specific matching fails
Alkor: Starting.
Chosen model GMA 950
Alkor: Setting built-in=<data not shown>
Alkor: Setting AAPL,HasPanel=<data not shown>
Alkor: Setting AAPL,SelfRefreshSupported=<data not shown>
Alkor: Setting AAPL,NumFramebuffers=<data not shown>
Alkor: Setting AAPL,NumDisplays=<data not shown>
Alkor: Setting AAPL01,Depth=<data not shown>
Alkor: Setting AAPL01,Pipe=<data not shown>
Alkor: Setting AAPL01,DataJustify=<data not shown>
VGA: match category IOFramebuffer exists
dsmos: Initializing…
dsmos: Hook and decryption contexts set!
dsmos: Starting…
RT2860WirelessDriver: Ethernet address 00:22:43:13:6a:6e
NTFS driver 2.1 [Flags: R/O].
NTFS volume name XP, version 3.1.
display: Not usable
ApplePS2Mouse: Unexpected data from PS/2 controller.
ApplePS2Mouse: Unexpected data from PS/2 controller.
ApplePS2Mouse: Unexpected data from PS/2 controller.
ApplePS2Mouse: Unexpected data from PS/2 controller.
ApplePS2Mouse: Unexpected data from PS/2 controller.
ApplePS2Mouse: Unexpected data from PS/2 controller.
ApplePS2Mouse: Unexpected data from PS/2 controller.
ApplePS2Mouse: Unexpected data from PS/2 controller.
0 [Time 1225233756] [Message System Sleep
System Wake

USB caused wake event (EHCI)

thanks

last edited on 29 Oct 2008, 14:13 GMT+08 by choice + show more


reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
hagglebeef 29 Oct 2008, 19:18 GMT+08

Choice,

Looks like you are using the retail/Boot-132 method. You may want to grab the latest modified 10.5.5 version of GMA950 and Framebuffer with brightness control here… http://ipis-osx.wikidot.com/forum/t-
91753/brightness-control. As for having both sound and headphones, that's because we are using Azalia kext. Its an older driver that was meant for initial testing of the Intel Macs. You should be able to follow the
post by nhirt (above) to turn on/off speakers and headphones manually. Give that a try and let us know.

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
baza210 29 Oct 2008, 22:33 GMT+08

All this progress is great, keep it up guys. One question- will this work with Kalyway 10.5.2?

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
PatrickN 30 Oct 2008, 03:36 GMT+08

Let me start by saying: WOW! You guys are amazing!!! I've been watching this site for quite awhile now, with the intention of installing OSX on my eee 1000h once more progress was made with the sound
problems. I am a complete OSX noob (mainly because of the relative costs inherent in owning a Mac vs. a PC) and it appears as though I'm going to have my first chance to get my feet wet. Especially exciting now
that you have sound working!!!

But I have a request…

Because of my noobishness I know nothing about making nhirt's commands executable and where do I go about entering these commands? THANK YOU ALL SO MUCH FOR YOUR WORK!

enable_speakers.sh (turns on speaker pin-ctrl, turn headphones amp off, turn speaker on)

#!/bin/sh
sudo reggie_se -D PhysAddr -w 0x01470c02 -a 0xf7eb8060 -B 32
sudo reggie_se -D PhysAddr -w 1 -a 0xf7eb8068 -B 32
sudo reggie_se -D PhysAddr -w 0x143B000 -a 0xf7eb8060 -B 32
sudo reggie_se -D PhysAddr -w 1 -a 0xf7eb8068 -B 32
sudo reggie_se -D PhysAddr -w 0x153B080 -a 0xf7eb8060 -B 32
sudo reggie_se -D PhysAddr -w 1 -a 0xf7eb8068 -B 32

enable_headphones.sh (turn on headphones pin-ctrl, turn headphones amp on, turn speaker off)

#!/bin/sh
sudo reggie_se -D PhysAddr -w 0x15707C0 -a 0xf7eb8060 -B 32
sudo reggie_se -D PhysAddr -w 1 -a 0xf7eb8068 -B 32
sudo reggie_se -D PhysAddr -w 0x153B000 -a 0xf7eb8060 -B 32
sudo reggie_se -D PhysAddr -w 1 -a 0xf7eb8068 -B 32
sudo reggie_se -D PhysAddr -w 0x143B080 -a 0xf7eb8060 -B 32
sudo reggie_se -D PhysAddr -w 1 -a 0xf7eb8068 -B 32

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
MacLovin 30 Oct 2008, 04:39 GMT+08

1. Open application textedit

2. Copy the script (what you pasted in your post) into text edit

3. Go to format on the top -> convert to plain text

4. Save file as enable_speakers.sh (and make sure to keep the .sh extension when it asks you when u save the file) Do the same for enable_headphones.sh.

(Can skip steps 5 - 9 if you want to, explanation at the end)

5. Go to spotlight, (the magnifying glass in the top right corner of your screen)

6. Type in: terminal

7. In terminal type in (don't hit enter at the end): chmod -X_ _ = space

8. Highlight both enable_headphones.sh and enable_speakers.sh from where you saved it to, and drag it into the terminal window.

9. Now hit enter.

10. Too keep this short, when you want to enable headphones or speakers… just drag the file to the terminal window and it'll run the script. Once you familiarize yourself with osx, then you can try using
sleepwatcher program so you don't have to do it manually. The chmod -x command will be necessary when you use this method. It is to make the script executable without your authorization.

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
choice 30 Oct 2008, 04:22 GMT+08

hagglebeef,

thanks for the reply, i acutally have modified the framebuffer with Hex already, and i will check and see if i can find the modified 10.5.5 version of GMA950 driver.

i remember checking the box for vanilla 9.5.0 kernel when i first installed osx into this machine, should i reinstall the kernek again? because is still receive the same write fail error ..

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
MacLovin 30 Oct 2008, 04:31 GMT+08

Choice

http://rapidshare.com/files/158785223/mach_kernel1055vanilla.zip.html

That is the link for the original mac 9.5.0 kernel. When you install iDeneb 1.3, you don't select any kernels when you install. This will install the default stock mac 9.5.0 kernel.

I would use osx86tools to install the kernel I linked above.

last edited on 30 Oct 2008, 04:40 GMT+08 by MacLovin + show more


reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
choice 30 Oct 2008, 16:07 GMT+08

thanks! got that working now!

now just have to work on the auto-start =)

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
atad66 30 Oct 2008, 07:35 GMT+08

Has anyone who's installed using the msi install had any luck with this? I'm using the vanilla 9.5 kernel with 10.5.5 and when I follow the methods above I get no audio devices found under system profiler.

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
mega72 30 Oct 2008, 08:29 GMT+08

can someone explain what pins this turns on, I'm trying to trouble shoot another laptop with the same chipset but different pin outs

sudo reggie_se -D PhysAddr -w 0x01470c02 -a 0xf7eb8060 -B 32


sudo reggie_se -D PhysAddr -w 1 -a 0xf7eb8068 -B 32

I get no errors, but no sound, I do see it in the valid sound output devices, so I know I'm close it's just a matter of getting the hex addresses for my card

this is a codec dump from linux and the laptop I use (lenovo s10)

Codec: Realtek ALC269


Address: 0
Vendor Id: 0x10ec0269
Subsystem Id: 0x17aa3bf8
Revision Id: 0x100004
No Modem Function Group found
Default PCM:
rates [0x5f0]: 32000 44100 48000 88200 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Default Amp-In caps: N/A
Default Amp-Out caps: N/A
GPIO: io=2, o=0, i=0, unsolicited=1, wake=1
IO[0]: enable=0, dir=0, wake=0, sticky=0, data=0
IO[1]: enable=0, dir=0, wake=0, sticky=0, data=0
Node 0x02 [Audio Output] wcaps 0x1d: Stereo Amp-Out
Amp-Out caps: ofs=0x3f, nsteps=0x40, stepsize=0x03, mute=0
Amp-Out vals: [0x24 0x24]
Converter: stream=0, channel=0
PCM:
rates [0x560]: 44100 48000 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Node 0x03 [Audio Output] wcaps 0x1d: Stereo Amp-Out
Amp-Out caps: ofs=0x3f, nsteps=0x40, stepsize=0x03, mute=0
Amp-Out vals: [0x00 0x00]
Converter: stream=0, channel=0
PCM:
rates [0x560]: 44100 48000 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Node 0x04 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x05 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x06 [Audio Output] wcaps 0x211: Stereo Digital
Converter: stream=0, channel=0
Digital:
Digital category: 0x0
PCM:
rates [0x5f0]: 32000 44100 48000 88200 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Node 0x07 [Audio Input] wcaps 0x10011b: Stereo Amp-In
Amp-In caps: ofs=0x11, nsteps=0x2e, stepsize=0x03, mute=1
Amp-In vals: [0x00 0x00]
Converter: stream=0, channel=0
SDI-Select: 0
PCM:
rates [0x160]: 44100 48000 96000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Connection: 1
0x24
Node 0x08 [Audio Input] wcaps 0x10011b: Stereo Amp-In
Amp-In caps: ofs=0x11, nsteps=0x2e, stepsize=0x03, mute=1
Amp-In vals: [0x90 0x90]
Converter: stream=0, channel=0
SDI-Select: 0
PCM:
rates [0x160]: 44100 48000 96000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Connection: 1
0x23
Node 0x09 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x0a [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x0b [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
Amp-In caps: ofs=0x17, nsteps=0x1f, stepsize=0x05, mute=1
Amp-In vals: [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80]
Connection: 5
0x18 0x19 0x1a 0x1b 0x1d
Node 0x0c [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-In vals: [0x00 0x00] [0x00 0x00]
Connection: 2
0x02 0x0b
Node 0x0d [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-In vals: [0x00 0x00] [0x00 0x00]
Connection: 2
0x03 0x0b
Node 0x0e [Audio Mixer] wcaps 0x20010a: Mono Amp-In
Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-In vals: [0x00] [0x00]
Connection: 2
0x0c 0x0d
Node 0x0f [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x10 [Audio Output] wcaps 0x211: Stereo Digital
Converter: stream=0, channel=0
Digital:
Digital category: 0x0
PCM:
rates [0x5f0]: 32000 44100 48000 88200 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Node 0x11 [Pin Complex] wcaps 0x400380: Mono Digital
Pincap 0x0814: OUT Detect
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x40: OUT
Unsolicited: tag=00, enabled=0
Connection: 1
0x10
Node 0x12 [Pin Complex] wcaps 0x400001: Stereo
Pincap 0x0820: IN
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x00:
Node 0x13 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x14 [Pin Complex] wcaps 0x40010d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x00 0x00]
Pincap 0x0810050: OUT EAPD Balanced
EAPD 0x2: EAPD
Pin Default 0x99130110: [Fixed] Speaker at Int ATAPI
Conn = ATAPI, Color = Unknown
DefAssociation = 0x1, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x40: OUT
Connection: 2
0x0c* 0x0d
Node 0x15 [Pin Complex] wcaps 0x40018d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x00 0x00]
Pincap 0x081001c: OUT HP EAPD Detect
EAPD 0x2: EAPD
Pin Default 0x0321401f: [Jack] HP Out at Ext Left
Conn = 1/8, Color = Green
DefAssociation = 0x1, Sequence = 0xf
Pin-ctls: 0xc0: OUT HP
Unsolicited: tag=04, enabled=1
Connection: 2
0x0c* 0x0d
Node 0x16 [Pin Complex] wcaps 0x40010c: Mono Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80]
Pincap 0x0810: OUT
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x40: OUT
Connection: 1
0x0e
Node 0x17 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x18 [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x00 0x00] [0x00 0x00]
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80 0x80]
Pincap 0x083734: IN OUT Detect
Vref caps: HIZ 50 GRD 80 100
Pin Default 0x03a19820: [Jack] Mic at Ext Left
Conn = 1/8, Color = Pink
DefAssociation = 0x2, Sequence = 0x0
Pin-ctls: 0x24: IN VREF_80
Unsolicited: tag=00, enabled=0
Connection: 2
0x0c* 0x0d
Node 0x19 [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x00 0x00] [0x00 0x00]
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80 0x80]
Pincap 0x083734: IN OUT Detect
Vref caps: HIZ 50 GRD 80 100
Pin Default 0x99a3092f: [Fixed] Mic at Int ATAPI
Conn = ATAPI, Color = Unknown
DefAssociation = 0x2, Sequence = 0xf
Misc = NO_PRESENCE
Pin-ctls: 0x24: IN VREF_80
Unsolicited: tag=00, enabled=0
Connection: 2
0x0c* 0x0d
Node 0x1a [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x00 0x00] [0x00 0x00]
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80 0x80]
Pincap 0x08373c: IN OUT HP Detect
Vref caps: HIZ 50 GRD 80 100
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x20: IN VREF_HIZ
Unsolicited: tag=00, enabled=0
Connection: 2
0x0c* 0x0d
Node 0x1b [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x00 0x00] [0x00 0x00]
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80 0x80]
Pincap 0x083734: IN OUT Detect
Vref caps: HIZ 50 GRD 80 100
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x20: IN VREF_HIZ
Unsolicited: tag=00, enabled=0
Connection: 2
0x0c* 0x0d
Node 0x1c [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x1d [Pin Complex] wcaps 0x400000: Mono
Pincap 0x0820: IN
Pin Default 0x4015812d: [N/A] Speaker at Ext N/A
Conn = Optical, Color = Purple
DefAssociation = 0x2, Sequence = 0xd
Misc = NO_PRESENCE
Pin-ctls: 0x20: IN
Node 0x1e [Pin Complex] wcaps 0x400380: Mono Digital
Pincap 0x0814: OUT Detect
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x40: OUT
Unsolicited: tag=00, enabled=0
Connection: 1
0x06
Node 0x1f [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x20 [Vendor Defined Widget] wcaps 0xf00040: Mono
Processing caps: benign=0, ncoeff=33
Node 0x21 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x22 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x23 [Audio Selector] wcaps 0x300101: Stereo
Connection: 7
0x18* 0x19 0x1a 0x1b 0x1d 0x12 0x0b
Node 0x24 [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-In vals: [0x00 0x00] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80]
Connection: 6
0x18 0x19 0x1a 0x1b 0x1d 0x0bs

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
Toonces 30 Oct 2008, 10:05 GMT+08

0x01470c02 is the verb for turning on the speaker's amp (EAPD). You can find all of the verbs in the ALC269 datasheet. a quick and dirty guide to reading them is this:

0x - indicates the verb is in hex

0 - codec address
14 - node id
70C - verb (Set EAPD. There is also a corresponding get verb of F0C which just reads the status of the identified node 14)
02 - verb payload (in this case, set bit 1=1 or 0000 0010 which turns EAPD on)

if you wanted to set speakers EAPD off and turn on EAPD for headphones you would send the verb 01470C00 (turn speaker EAPD off) then 01570C02 (turn headphone jack EAPD on)

Hope that helps you find the answers you are looking for!

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
cyero 31 Oct 2008, 03:37 GMT+08

HI all

This seems really great but I can't seem to download the chud framework. Can someone please point me to it? Everytime I go to apple's website with a link it tells me my session has expired. I have an ADC account
but I can't locate the file.

please help

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
gopowergoh 31 Oct 2008, 03:58 GMT+08

I am trying to take this all in, but i really am a total newb when it comes to terminal and scripts. A lot of this is pretty foreign to me. I installed chud, hda enabler, ioregistry azalia and hagglebeefs kext, but I cant
get sound at all. I am on a 901. I tried entering
#!/bin/sh

reggie_se -D PhysAddr -w 0x01470c02 -a 0xf7db8060 -B 32


reggie_se -D PhysAddr -w 1 -a 0xf7db8068 -B 32

in the terminal and get prompted for my password, i enter it, but i still get nothing. this is what my terminal says

Last login: Thu Oct 30 12:50:49 on ttys000


Powers-MacBook-Mini:~ powergoh$ #!/bin/sh
Powers-MacBook-Mini:~ powergoh$
Powers-MacBook-Mini:~ powergoh$ reggie_se -D PhysAddr -w 0x01470c02 -a 0xf7db8060 -B 32
. 4.6.0 (217)
Memory Address - 0x00000000f7db8060 (local)
Address 0xf7db8060 0x01470c02 |0 0 0 0|0 0 0 1|0 1 0 0|0 1 1 1|0 0 0 0|1 1 0 0|0 0 0 0|0 0 1 0|
Powers-MacBook-Mini:~ powergoh$ reggie_se -D PhysAddr -w 1 -a 0xf7db8068 -B 32
. 4.6.0 (217)
Memory Address - 0x00000000f7db8068 (local)
Address 0xf7db8068 0x00000001 |0 0 0 0|0 0 0 0|0 0 0 0|0 0 0 0|0 0 0 0|0 0 0 0|0 0 0 0|0 0 0 1|
Powers-MacBook-Mini:~ powergoh$

Any help would be greatly appreciated I really want to get sound working, then find a way to automate this to enable after a reboot or sleep. Thanks guys!

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
choice 31 Oct 2008, 07:00 GMT+08

gopowergoh,

did you have sound working initially after installing AppleHDA.kext in the eee901kext4sound.zip and azalia?

that sudo you've entered is intended for 1000h i believe, if ur using 901, refering to codeye's post:

"""
If sound goes down with sleep or reboot run the following commands (please change the memory address to that found in Ioregexplorer for your eeepc - mine is 0xf7db8000 EEEPC901):
sudo reggie_se -D PhysAddr -w 0x01470c02 -a 0xf7db8060 -B 32 //this sets the verb command to turn EAPD on for the speaker Pin Complex
sudo reggie_se -D PhysAddr -w 1 -a 0xf7db8068 -B 32 //this sends the verb command to the codec
"""

hope that helps

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
gopowergoh 31 Oct 2008, 07:31 GMT+08

Thanks for the response Choice. I appreciate it. I have never been able to get sound. When I enter:
sudo reggie_se -D PhysAddr -w 0x01470c02 -a 0xf7db8060 -B 32

I get
Powers-MacBook-Mini:~ powergoh$ sudo reggie_se -D PhysAddr -w 0x01470c02 -a 0xf7db8060 -B 32
Password:

Then I cant type anything in the terminal. When I entered


reggie_se -D PhysAddr -w 0x01470c02 -a 0xf7db8060 -B 32

I get a window that allows me to type in my password.

Any help would really be great. I love to get sound on my eee 901. Thanks again!

options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
Toonces 31 Oct 2008, 10:28 GMT+08

Hi Gopowergoh, I'm not sure if you know but when you get that Password: prompt you will not see anything you type in while typing your password. You just type it and hit enter. If it goes back
to a $ prompt you were successful, If you type the password wrong it will prompt you with Password: again. If the command doesn't work you will get an error message.

options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
gopowergoh 31 Oct 2008, 12:25 GMT+08

Thanks Toonces,
I tried those two commands in the terminal and just typed in my password like you said. I get:

Powers-MacBook-Mini:~ powergoh$ sudo reggie_se -D PhysAddr -w 0x01470c02 -a 0xf7db8060 -B 32


Password:
. 4.6.0 (217)
Memory Address - 0x00000000f7db8060 (local)
Address 0xf7db8060 0x01470c02 |0 0 0 0|0 0 0 1|0 1 0 0|0 1 1 1|0 0 0 0|1 1 0 0|0 0 0 0|0 0 1 0|
Powers-MacBook-Mini:~ powergoh$
Powers-MacBook-Mini:~ powergoh$ sudo reggie_se -D PhysAddr -w 1 -a 0xf7db8068 -B 32
. 4.6.0 (217)
Memory Address - 0x00000000f7db8068 (local)
Address 0xf7db8068 0x00000001 |0 0 0 0|0 0 0 0|0 0 0 0|0 0 0 0|0 0 0 0|0 0 0 0|0 0 0 0|0 0 0 1|
Powers-MacBook-Mini:~ powergoh$

Still no sound. Any ideas on what I can try next? Should I try a fresh install? Thanks. I really appreciate you guys responding to my posts.

options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
gopowergoh 31 Oct 2008, 12:36 GMT+08

I reinstalled azalia and enabled wlan on my bios and tried it again and it works! Thanks a lot guys!

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
gopowergoh 31 Oct 2008, 12:53 GMT+08

Could anyone help me with automating this for a 901? I know there are instructions but it seems a lot of the scripts are for 1000hs. I need one for 901. Being a total newb, I don't know how to create one. I would
be grateful if someone could help me with the scripts and how to automate it on startup and how to use sleepwatcher to automate in after a sleep. Right now I have
sudo reggie_se -D PhysAddr -w 0x01470c02 -a 0xf7db8060 -B 32

sudo reggie_se -D PhysAddr -w 1 -a 0xf7db8068 -B 32

on a stickie and i just copy and paste it to the terminal. If anyone could help me I would really appreciate it. My 901 is almoost perfect! Still gotta get my darn webcam working…. Maybe I should have gotten a
1000h instead…. Thanks again everyone

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
toddgarvin 31 Oct 2008, 23:16 GMT+08

Apparently this doesn't work for the Lenovo S10. Since the sound doesn't work after installation, I haven't run the terminal commands. Should this be working or is the Lenovo S10 more different than the eee 1000s
than I thought? Has anyone on an S10 got the sound to work?

Thanks

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
cyero 1 Nov 2008, 00:33 GMT+08

Hi all

I finally installed chud. It seems however that the settings i throw at the system are wrong

I have a 1000H

Here is the command I throw at my box

sudo reggie_se -D PhysAddr -w 0x01470c02 -a 0xf7eb8060 -B 32


sudo reggie_se -D PhysAddr -w 1 -a 0xf7eb8068 -B 32
sudo reggie_se -D PhysAddr -w 0x143B000 -a 0xf7eb8060 -B 32
sudo reggie_se -D PhysAddr -w 1 -a 0xf7eb8068 -B 32
sudo reggie_se -D PhysAddr -w 0x153B080 -a 0xf7eb8060 -B 32
sudo reggie_se -D PhysAddr -w 1 -a 0xf7eb8068 -B 32

Here is the output

. 4.6.1 (227)
Memory Address - 0x00000000f7eb8060 (local)
ERROR: write failed to F7EB8060
. 4.6.1 (227)
Memory Address - 0x00000000f7eb8068 (local)
ERROR: write failed to F7EB8068
. 4.6.1 (227)
Memory Address - 0x00000000f7eb8060 (local)
ERROR: write failed to F7EB8060
. 4.6.1 (227)
Memory Address - 0x00000000f7eb8068 (local)
ERROR: write failed to F7EB8068
. 4.6.1 (227)
Memory Address - 0x00000000f7eb8060 (local)
ERROR: write failed to F7EB8060
. 4.6.1 (227)
Memory Address - 0x00000000f7eb8068 (local)
ERROR: write failed to F7EB8068

So it seems the parameters I am giving it are wrong.

Any ideas? How can I determine the correct settings. I have linux and windows also installed on this machine so I can try a few things but I don't know what. Please help

Thanks

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
cyero 1 Nov 2008, 01:49 GMT+08

I am now running in eeeBuntu and ran

cat /proc/asound/card0/codec#0

Here is the output

Can someone please help me rewrite the command I need to give my box?

idealy I would like some simple scripts that would alloow me to switch between internal speakers and headphone output. I can run the scripts manually from the terminal and maybe later automate them.

Cheers

Codec: Realtek ALC269


Address: 0
Vendor Id: 0x10ec0269
Subsystem Id: 0x1043831a
Revision Id: 0x100004
No Modem Function Group found
Default PCM:
rates [0x5f0]: 32000 44100 48000 88200 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Default Amp-In caps: N/A
Default Amp-Out caps: N/A
GPIO: io=0, o=0, i=0, unsolicited=0, wake=0
Node 0x02 [Audio Output] wcaps 0x1d: Stereo Amp-Out
Amp-Out caps: ofs=0x3f, nsteps=0x40, stepsize=0x03, mute=0
Amp-Out vals: [0x2d 0x2d]
Converter: stream=0, channel=0
PCM:
rates [0x560]: 44100 48000 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Node 0x03 [Audio Output] wcaps 0x1d: Stereo Amp-Out
Amp-Out caps: ofs=0x3f, nsteps=0x40, stepsize=0x03, mute=0
Amp-Out vals: [0x2d 0x2d]
Converter: stream=0, channel=0
PCM:
rates [0x560]: 44100 48000 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Node 0x04 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x05 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x06 [Audio Output] wcaps 0x211: Stereo Digital
Converter: stream=0, channel=0
Digital:
Digital category: 0x0
PCM:
rates [0x5f0]: 32000 44100 48000 88200 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Node 0x07 [Audio Input] wcaps 0x10011b: Stereo Amp-In
Amp-In caps: ofs=0x11, nsteps=0x2e, stepsize=0x03, mute=1
Amp-In vals: [0x90 0x90]
Converter: stream=0, channel=0
SDI-Select: 0
PCM:
rates [0x160]: 44100 48000 96000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Connection: 1
0x24
Node 0x08 [Audio Input] wcaps 0x10011b: Stereo Amp-In
Amp-In caps: ofs=0x11, nsteps=0x2e, stepsize=0x03, mute=1
Amp-In vals: [0x00 0x00]
Converter: stream=0, channel=0
SDI-Select: 0
PCM:
rates [0x160]: 44100 48000 96000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Connection: 1
0x23
Node 0x09 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x0a [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x0b [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
Amp-In caps: ofs=0x17, nsteps=0x1f, stepsize=0x05, mute=1
Amp-In vals: [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80]
Connection: 5
0x18 0x19 0x1a 0x1b 0x1d
Node 0x0c [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-In vals: [0x00 0x00] [0x00 0x00]
Connection: 2
0x02 0x0b
Node 0x0d [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-In vals: [0x00 0x00] [0x00 0x00]
Connection: 2
0x03 0x0b
Node 0x0e [Audio Mixer] wcaps 0x20010a: Mono Amp-In
Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-In vals: [0x00] [0x00]
Connection: 2
0x0c 0x0d
Node 0x0f [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x10 [Audio Output] wcaps 0x211: Stereo Digital
Converter: stream=0, channel=0
Digital:
Digital category: 0x0
PCM:
rates [0x5f0]: 32000 44100 48000 88200 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Node 0x11 [Pin Complex] wcaps 0x400380: Mono Digital
Pincap 0x0814: OUT Detect
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x40: OUT
Unsolicited: tag=00, enabled=0
Connection: 1
0x10
Node 0x12 [Pin Complex] wcaps 0x400001: Stereo
Pincap 0x0820: IN
Pin Default 0x99a30920: [Fixed] Mic at Int ATAPI
Conn = ATAPI, Color = Unknown
DefAssociation = 0x2, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x20: IN
Node 0x13 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x14 [Pin Complex] wcaps 0x40010d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x00 0x00]
Pincap 0x0810050: OUT EAPD Balanced
EAPD 0x2: EAPD
Pin Default 0x99130110: [Fixed] Speaker at Int ATAPI
Conn = ATAPI, Color = Unknown
DefAssociation = 0x1, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x40: OUT
Connection: 2
0x0c* 0x0d
Node 0x15 [Pin Complex] wcaps 0x40018d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x00 0x00]
Pincap 0x081001c: OUT HP EAPD Detect
EAPD 0x2: EAPD
Pin Default 0x0121401f: [Jack] HP Out at Ext Rear
Conn = 1/8, Color = Green
DefAssociation = 0x1, Sequence = 0xf
Pin-ctls: 0xc0: OUT HP
Unsolicited: tag=04, enabled=1
Connection: 2
0x0c 0x0d*
Node 0x16 [Pin Complex] wcaps 0x40010c: Mono Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80]
Pincap 0x0810: OUT
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x40: OUT
Connection: 1
0x0e
Node 0x17 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x18 [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x00 0x00] [0x00 0x00]
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80 0x80]
Pincap 0x083734: IN OUT Detect
Vref caps: HIZ 50 GRD 80 100
Pin Default 0x01a19830: [Jack] Mic at Ext Rear
Conn = 1/8, Color = Pink
DefAssociation = 0x3, Sequence = 0x0
Pin-ctls: 0x24: IN VREF_80
Unsolicited: tag=08, enabled=1
Connection: 2
0x0c* 0x0d
Node 0x19 [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x00 0x00] [0x00 0x00]
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80 0x80]
Pincap 0x083734: IN OUT Detect
Vref caps: HIZ 50 GRD 80 100
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x24: IN VREF_80
Unsolicited: tag=00, enabled=0
Connection: 2
0x0c* 0x0d
Node 0x1a [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x00 0x00] [0x00 0x00]
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80 0x80]
Pincap 0x08373c: IN OUT HP Detect
Vref caps: HIZ 50 GRD 80 100
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x20: IN VREF_HIZ
Unsolicited: tag=00, enabled=0
Connection: 2
0x0c* 0x0d
Node 0x1b [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x00 0x00] [0x00 0x00]
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80 0x80]
Pincap 0x083734: IN OUT Detect
Vref caps: HIZ 50 GRD 80 100
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x20: IN VREF_HIZ
Unsolicited: tag=00, enabled=0
Connection: 2
0x0c* 0x0d
Node 0x1c [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x1d [Pin Complex] wcaps 0x400000: Mono
Pincap 0x0820: IN
Pin Default 0x4005822d: [N/A] Line Out at Ext N/A
Conn = Optical, Color = Purple
DefAssociation = 0x2, Sequence = 0xd
Pin-ctls: 0x20: IN
Node 0x1e [Pin Complex] wcaps 0x400380: Mono Digital
Pincap 0x0814: OUT Detect
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x40: OUT
Unsolicited: tag=00, enabled=0
Connection: 1
0x06
Node 0x1f [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x20 [Vendor Defined Widget] wcaps 0xf00040: Mono
Processing caps: benign=0, ncoeff=33
Node 0x21 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x22 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x23 [Audio Selector] wcaps 0x300101: Stereo
Connection: 7
0x18 0x19 0x1a 0x1b 0x1d 0x12* 0x0b
Node 0x24 [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-In vals: [0x00 0x00] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80]
Connection: 6
0x18 0x19 0x1a 0x1b 0x1d 0x0b

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
Toonces 1 Nov 2008, 02:57 GMT+08

Hi Cyero, Look about 3/4 of the way up in this thread for a post by QuinnStorm. His script will try to figure out the correct address for you and works perfectly on my 1000H. The codec dump
you posted doesn't give any information on the address OS X is using so you don't need to post that. You can find that address though using IORegistryExplorer (which you also need for Quinn's
script to work). Also, make sure you're using a stock 9.5.0 kernel. If you read through the thread you'll see some of the alternate kernels don't work with this.

options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
cyero 1 Nov 2008, 05:44 GMT+08

I see thank you. I seem to be running the wrong kernel

uname -a gives

Darwin eeek.local 9.4.0 Darwin Kernel Version 9.4.0: Fri Aug 1 21:34:49 EST 2008; ToH & StageXNU:xnu-1228.5.20/BUILD/obj/RELEASE_I386 i386

How do I change kernels? Also I looked for QuinnStorm's post ran it and it tried to do something but it obviously didn't work.

options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
cyero 1 Nov 2008, 05:49 GMT+08

I guess I may need to reinstall my ideneb 10.5.5 from the dvd. What kernel should I choose when I run the installer?

From what I can gather I choose none and the default kernel will be the correct one.

Is this right?

options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
QuinnStorm 1 Nov 2008, 14:57 GMT+08

btw, just for the record, I'm a girl

Also, reading other posts, looks like I guessed wrong, the verbs I labeled pin ctl are eapd and vice versa

options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
elroy 1 Nov 2008, 15:45 GMT+08

whoops! Sorry for calling you sire, dude, mate and other assorted gender inaccurate titles in the PMs I've sent you QuinnStorm.

Seriously… sorry fella. :P

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
cyero 1 Nov 2008, 05:56 GMT+08

Could someone who has a fully functional 1000H make a backup image of their machine and share it via BitTorrent? I for one would seed this file. would anyone else be interested in this?

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
gopowergoh 1 Nov 2008, 17:54 GMT+08

I figured out the scripts for the 901 to enable headphones and to enable the speakers. I also figured out how to make both scripts excutable. Currently i am using spark to activate my headphones using f5, my
speakers f6, volume down with f7 and volume up with f8. I can live with this setup, but I was wondering if anyone has a better setup? Specifically i was wondering if anyone has configured there scripts to start up
when the start up and when they wake from sleep. I installed sleepwatcher, but I have no idea how to use those at all. Any thoughts would be greatly appreciated. Thanks.

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
MacLovin 1 Nov 2008, 19:40 GMT+08

Original post was asking how to bind the Fn key, and it looks like you can't.

Its funny how I was coming here to post the same application that gopowergoh did. Its a very great application and even the sound display notifications come up as well.

How to bind volume up and down keys:


Setting up the volume up and volume down is in the system part of the application. Self-explanatory.

How to use spark to execute a shell command using applescript:

do shell script "path to .sh file"

http://www.shadowlab.org/Software/spark.php

last edited on 1 Nov 2008, 20:02 GMT+08 by MacLovin + show more


reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
murcielagotr 3 Nov 2008, 10:42 GMT+08

i got 1000H, installed MSIWIndOSX86, later update 10.5.4, add 10.5.5 gma950.pgk,azalia.pkg i was happy with this configuration,
cos i can hear from speaker and surf internet and mirror screen.

i used these commands for sound with 10.5.4 update.


for speakers
#!/bin/sh
sudo reggie_se -D PhysAddr -w 0x01470c02 -a 0xf7eb8060 -B 32
sudo reggie_se -D PhysAddr -w 1 -a 0xf7eb8068 -B 32
sudo reggie_se -D PhysAddr -w 0x143B000 -a 0xf7eb8060 -B 32
sudo reggie_se -D PhysAddr -w 1 -a 0xf7eb8068 -B 32
sudo reggie_se -D PhysAddr -w 0x153B080 -a 0xf7eb8060 -B 32
sudo reggie_se -D PhysAddr -w 1 -a 0xf7eb8068 -B 32

for headphones
#!/bin/sh
sudo reggie_se -D PhysAddr -w 0x15707C0 -a 0xf7eb8060 -B 32
sudo reggie_se -D PhysAddr -w 1 -a 0xf7eb8068 -B 32
sudo reggie_se -D PhysAddr -w 0x153B000 -a 0xf7eb8060 -B 32
sudo reggie_se -D PhysAddr -w 1 -a 0xf7eb8068 -B 32
sudo reggie_se -D PhysAddr -w 0x143B080 -a 0xf7eb8060 -B 32
sudo reggie_se -D PhysAddr -w 1 -a 0xf7eb8068 -B 32

after updating 10.5.5 i tried same commands, sound didnt work


installed azalia.pkg, tried same commands, sound didnt work

what can i do now to make sound work again?

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
Toonces 3 Nov 2008, 11:58 GMT+08

Make sure you remove AppleHDA.kext installed by 10.5.5 update. It conflicts with AppleAzaliaAudio.kext

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
murcielagotr 4 Nov 2008, 05:50 GMT+08

thx, i checked that and it was already removed.

as elroy suggested i go http://ipis-osx.wikidot.com/forum/t-101853/audieee:the-less-ugly-stop-gap#post-298779

download and install azalia.pkg again and the supper software, and it works like a charmm

THX ALL WHO HELP US TO KILL SILENCE :D

last edited on 4 Nov 2008, 05:51 GMT+08 by murcielagotr + show more


reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
elroy 3 Nov 2008, 15:07 GMT+08

Hey guys, just wanted to point people to this thread that I started earlier, could be the (temp) solution that people are looking for.

http://ipis-osx.wikidot.com/forum/t-101853/audieee:the-less-ugly-stop-gap#post-298779

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
chestnut 6 Nov 2008, 07:53 GMT+08

This is fantastic, and its great to have my little eeePC blast out some sound under OSX. I would like to thank all of those who have contributed thus far to the sound issue.

Cheers

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
dondula 14 Nov 2008, 13:21 GMT+08

Hey guys sorry for the beginner question, but i'm trying to get sound working on my gigabyte m912x which has the same codec. I'm really new to osx and was wondering how to run ioreg in order to find the
memory address. I installed chud and went to terminal and typed ioreg and got a list of stuff but I didn't see a memory address under the hdef header. I'm guessing that’s all I'll need to make this work, I already
installed the Azalia package, I just don't know how to get the speakers turned on. Any help would be appreciated.

last edited on 14 Nov 2008, 13:22 GMT+08 by dondula + show more


reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
nhirt 14 Nov 2008, 15:36 GMT+08

Type the following line (taken from QuinnStorms script of Oct 29th 2008 in this very same thread):

ioreg -d 1 -r -n $(ioreg -x | grep 'AzaliaController' -B 1 | head -n 1 | cut -d 'o' -f 2- | cut -d '<' -f 1) -x | grep "IODeviceMemory" | cut -d '=' -f 3 | cut -d ',' -f 1 | cut -b 11-

Nik

reply | options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
dondula 15 Nov 2008, 11:02 GMT+08

Hi thanks for the response, when I type in the string all I get in response is

cut: cut: No such file or directory


cut: -b: No such file or directory
cut: 11-: No such file or directory

What is it that i'm doing wrong?

last edited on 15 Nov 2008, 11:03 GMT+08 by dondula + show more


options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
Toonces 15 Nov 2008, 13:42 GMT+08

You should add sudo before that command. It's not finding cut in your path.

options

Re: Quick and Dirty guide to getting temporary Audio from internal Speakers fold
dondula 18 Nov 2008, 06:29 GMT+08

is that command to get the memory address for the headphones or internal speakers? I'm trying to get the speakers running. Sorry for all the questions I just want to make sure I do this right.
That command gave me an answer of f2540000 so what should the command look like that I type in to terminal to switch on the speakers? When I type sudo reggie_se -D PhysAddr -w
0x01470c02 -a 0xf2540000 -B 32 I get a message back saying "error: write failed to F2540000"

last edited on 18 Nov 2008, 06:43 GMT+08 by dondula + show more


reply | options

new post

Hosted by Wikidot.com — get your free wiki now! help | terms of service | privacy | report a bug | flag as objectionable

Unless stated otherwise Content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License

Vous aimerez peut-être aussi