Please login or register.

Login with username, password and session length
Advanced search  

News:

Pages: [1]   Go Down

Author Topic: I got sound working on a Powerbook G4 5,4 using open firmware scripting  (Read 545 times)

samoflange

  • 4 MB
  • **
  • Posts: 5
  • Hacker Man.

I couldn't accept that this won't work when so many similar systems do, so I spent a week poking around at the system, documenting the architecture and layout of this system vs the ones that do. I actually went so far as to start writing a custom driver, thinking that was all that would solve this. (I seriously have most of a functioning driver for the TAS3004. My head hurts)

So I bought and started poking around at a 1.2 ghz 12" iBook because audio works on it. It is so similar, but also has some differences that stood out. Parts of this system's firmware are still very similar to the older supported systems, yet still running on the Intrepid platform and with a 7447a G4 and a TAS3004 sound system. I think this system is the key to fixing a lot of problems.

Open Firmware hurts my soul, so I enlisted the help of Claude to take the information I found, and spoofed some of the device names and addresses in open firmware to match the iBook. It worked! I strongly suspect this can be done to fix some of the weirdness with the other aluminum powerbooks, and will be looking into this further. I'll also be sharing some of the information I found to make this work, because a lot of it was incredibly difficult to find. I even had to decompile a few bits of the OS with Ghidra and dig around.

I have no idea which other systems this specific script will work on, but I have tested it fairly extensively on a 1.33 ghz Powerbook 5,4. The 5,3 is so similar I am almost certain it will work there too. It's probably worth at least testing on any aluminum powerbook.

This should also offer a solution to things like inverted headphone switch polarity, etc, but I don't really have much hardware to poke around at and find out.  I am almost certain audio can be made to work on most Aluminum powerbooks and iBooks with this method.

I'm attaching 2 scripts. One that is just a direct clone of the iBook hardware spoofed to the powerbook. Another that includes some additional information to activate the inputs. The microphone seems to work, headphone jack auto detect works, volume controls work. I have not done much testing with inputs, but they appear.

I have encountered a few bugs that I'm looking at. There's some crackling occasionally. Most likely because the EQ settings for the iBook and Powerbook aren't an exact match. I have also encountered a bug where it crashes every other boot. This seems to be related to a write to the sound preferences, and can be solved by locking that preference file. It's some sort of extension conflict, because booting with extensions off seems to solve it.

TLDR; I think I found the fix for sound on most iBooks and Aluminum Powerbooks.


Just drop one of the scripts at the root of your hard drive, and set open firmware to boot from script.

boot holding command+option +OF

then type:

setenv boot-device hd:\bootscript
reset-all

I'd be really interested to hear if this works for others and which systems you've tried. And if anyone can figure out what's causing that crash.


Logged
Amateur speaker sadist.

joevt

  • 128 MB
  • ****
  • Posts: 174
  • New Member
Re: I got sound working on a Powerbook G4 5,4 using open firmware scripting
« Reply #1 on: September 14, 2026, 11:01:24 PM »

Your work deals with newer Power Macs and Mac OS 9.

Regarding older Power Macs and Mac OS X:

I was looking at audio problems with the B&W G3 emulation in DingusPPC. I managed to fix the problem (missing an ID value) but while I was doing research, I did notice a file: "/Volumes/Tiger/System/Library/Extensions/AudioDeviceTreeUpdater.kext/Contents/Info.plist" which made device tree changes for various early Mac models. The B&W G3 is PowerMac1,1.

The reason I bring that up is because it deals with similar properties that your patch fixes:
#-detects
#-features
#-inputs
#-outputs
sound-objects
model
i2s-serial-format
Logged

samoflange

  • 4 MB
  • **
  • Posts: 5
  • Hacker Man.
Re: I got sound working on a Powerbook G4 5,4 using open firmware scripting
« Reply #2 on: September 15, 2026, 05:44:41 AM »

AudioDeviceTreeUpdater.kext was indeed the treasure trove that contained many answers I spent way too long looking for on my own. It's fortunate the hacking I need to do if from the days when Apple still released a decent amount of code.

I gave up programming over 25 years ago, but I have enough coding and hardware hacking knowledge to know when AI is hallucinating a stupid idea, so I do OK piloting Claude at least.
Logged
Amateur speaker sadist.

joevt

  • 128 MB
  • ****
  • Posts: 174
  • New Member
Re: I got sound working on a Powerbook G4 5,4 using open firmware scripting
« Reply #3 on: September 15, 2026, 07:34:12 PM »

AudioDeviceTreeUpdater.kext was indeed the treasure trove that contained many answers I spent way too long looking for on my own. It's fortunate the hacking I need to do if from the days when Apple still released a decent amount of code.
Right. There is Apple source code that might help explain the properties being added or modified by AudioDeviceTreeUpdater.kext. AppleDTUpdater.cpp is in AppleOnboardAudio of Apple Open Source or in OpenLegacyAudio of XPostFacto (which has a README about that).
Logged

samoflange

  • 4 MB
  • **
  • Posts: 5
  • Hacker Man.
Re: I got sound working on a Powerbook G4 5,4 using open firmware scripting
« Reply #4 on: September 17, 2026, 07:49:29 PM »

Now baked into a rom! Includes write-up and explanation of changes, as well as a OF script to test or change as needed.

Most folks will just want to drop the rom in your system folder, but if you're feeling extra geeky read the notes.  8)

Only tested on Powerbook G4 5,4 1.33ghz
But it's possible it will work on other Aluminum G4 models.

If anyone would like to volunteer to run a few information gathering scripts I can try to customize it for other models. 5,1 - 5,7 should be fairly easy, there should be only a few little bits to shift around. 5,8 and 5,9 are unlikely, like most fixes, due to significant differences in architecture.

My next target is iBooks and the Mac Mini - I discovered some unexpected info that might make full volume control on the Mini possible, and a bit easier than expected.
Logged
Amateur speaker sadist.

ssp3

  • Moderator
  • 1024 MB
  • ******
  • Posts: 1051
Re: I got sound working on a Powerbook G4 5,4 using open firmware scripting
« Reply #5 on: September 17, 2026, 11:25:42 PM »

Now baked into a rom! Includes write-up and explanation of changes, as well as a OF script to test or change as needed
Thanks, @samoflange, I will try it out. I do have one 5,4 somewhere in the stash.
5,1 - 5,7 should be fairly easy, there should be only a few little bits to shift around.
Strangely, when I made my own ROM for 5,3 there wasn't that much to do. Unless I've missed something, of course.
http://macos9lives.com/smforum/index.php?topic=6878.0

Also, you might find this little utility useful:
http://macos9lives.com/smforum/index.php?topic=2337.msg51516#msg51516
Logged
If you're not part of the solution, you're part of the problem.

samoflange

  • 4 MB
  • **
  • Posts: 5
  • Hacker Man.

Quote
Strangely, when I made my own ROM for 5,3 there wasn't that much to do. Unless I've missed something, of course.

I think the systems with Nvidia graphics tend to be wired closer to a working state.

The whole range is weird with compatibility. They are all TAS3004 "Snapper" but it's all tangled up. Some work out of the box, some have the jack detect inverted or no inputs. So the driver is just sitting there half activated waiting for info. That state also seems to block USB audio from jacking into the sound manager properly sometimes. On my system there is some sort of auto-sensing feature in the input that is showing up as an actual port and when that 4th port tries to activate it crashes part of the sound system. My best guess is it's the unused ambient light sensor.

Thanks for the links! I've been trying to do all of this stuff on my own forever and just found these forums a little while ago. I think I checked them once years ago during an outage or reorganization and assumed they were dead. Oh well!
Logged
Amateur speaker sadist.

redstudio

  • 128 MB
  • ****
  • Posts: 165
  • New Member

Hello, I own several aluminum PowerBooks, and I can say that up to model 5.5, the audio works perfectly without any modifications. By using the ROM for unsupported G4s and modifying the Open Firmware (OF) settings to ensure the processor is recognized, everything works flawlessly. I use my 1.5 GHz PowerBook G4 with OS 9 daily and am very happy with it. The problem arises with the 5.7 model (1.67 GHz); to get it to boot into OS 9, I had to disable the audio via OF using instructions found onlineβ€”otherwise, it wouldn't boot and would just get stuck on the gray screen. I replaced the ROM with the one attached here and re-enabled the audio in OF, but it still won't boot. How do I embed the OF instructions directly into the ROM? Could a ROM be created or modified (perhaps one that recognizes more than 1.5 GB of RAM) to allow the 5.7 model to boot? Please let me know,thanks!
Logged

smilesdavis

  • 1024 MB
  • ******
  • Posts: 1292
  • ...

PowerBook G4 β€” Mac OS 9 Internal Sound Timeline

Legend
βœ… = confirmed working
🟑 = working with limitation/workaround
❌ = not currently working
? = no model-specific confirmation found

YearmodelModel IDSoundMac OS 9 method / result
2001PowerBook G4 400 (Original - Ti)PowerBook3,2βœ… NativeOfficial Mac OS 9 support. No modification.
2001PowerBook G4 500 (Original - Ti)PowerBook3,2βœ… NativeOfficial Mac OS 9 support. No modification.
2001PowerBook G4 550 (Gigabit - Ti)PowerBook3,3βœ… NativeOfficial Mac OS 9 support. No modification.
2001PowerBook G4 667 (Gigabit - Ti)PowerBook3,3βœ… NativeOfficial Mac OS 9 support. No modification.
2002PowerBook G4 667 (DVI - Ti)PowerBook3,4βœ… NativeOfficial Mac OS 9 support. No modification.
2002PowerBook G4 800 (DVI - Ti)PowerBook3,4βœ… NativeOfficial Mac OS 9 support. No modification.
2002PowerBook G4 867 (Ti)PowerBook3,5βœ… NativeOfficial Mac OS 9 support. No modification.
2002PowerBook G4 1.0 (Ti)PowerBook3,5βœ… NativeOfficial Mac OS 9 support. Fastest officially OS 9 bootable PowerBook G4.
2003PowerBook G4 867 12" (Al)PowerBook6,1🟑Headphones work. Internal speakers reported to wake with headphone/dummy plug inserted.
2003PowerBook G4 1.0 17" (Al)PowerBook5,1🟑Modified/iMic ROM. Reversed jack detection: insert 1/8" plug to activate internal speakers. Speakers + output then active together.
2003PowerBook G4 1.0 12" (DVI - Al)PowerBook6,2?No distinct model-specific OS 9 internal-audio result found.
2003PowerBook G4 1.0 15" (FW800 - Al)PowerBook5,2βœ…CPU-version OF patch only. Remove the "screamer" sound-node spoof. 2025 report: audio fully working.
2003PowerBook G4 1.25 15" (FW800 - Al)PowerBook5,2βœ…Working OS 9 audio reported. No separate sound workaround required.
2003PowerBook G4 1.33 17" (Al)PowerBook5,3βœ…ssp3 PowerBook5,3-specific ROM. "Audio works without quirks." Remove Multiprocessing folder.
2004PowerBook G4 1.33 12" (Al)PowerBook6,4βœ…Unsupported OS 9 installation + required OF setup + remove Multiprocessing. No sound hack. Speakers/headphone detection work normally.
2004PowerBook G4 1.33 15" (Al)PowerBook5,4βœ…2026 samoflange PowerBook5,4 sound-fix ROM or OF bootscript. Speakers, headphone detection, volume controls and microphone work. Occasional crackle / boot-crash issue reported.
2004PowerBook G4 1.5 15" (Al)PowerBook5,4βœ…Working audio reported with unsupported-G4 ROM + CPU-recognition OF setup. No audio spoof required. New 5,4 sound ROM itself tested on 1.33 GHz model.
2004PowerBook G4 1.5 17" (Al)PowerBook5,5βœ…2026 owner report: audio works without audio modification. Unsupported-G4 ROM + CPU-recognition OF setup.
2005PowerBook G4 1.5 12" (Al)PowerBook6,8❌OS 9 boots with Nanopico-derived ROM + Screamer OF fix; documented result: no internal audio.
2005PowerBook G4 1.5 15" (SMS/BT2 - Al)PowerBook5,6?No clean model-specific 1.5 GHz internal-audio confirmation found. Do not assume Screamer is required.
2005PowerBook G4 1.67 15" (Al)PowerBook5,6βœ…Audio can work. 2020 report used CPU + Screamer OF patches. 2025 report restored audio by removing Screamer. Current first choice: correct ROM/CPU patch, native audio node unchanged.
2005PowerBook G4 1.67 17" (Al)PowerBook5,7❌2026 report: boots OS 9 only with audio disabled/spoofed in OF. Re-enabling audio causes gray-screen/boot hang. 5,4 sound ROM does not solve it unchanged.
2005PowerBook G4 1.67 15" (DLSD/HR - Al)PowerBook5,8❌No confirmed usable OS 9 boot. 5,6 method fails. Audio not yet testable as a normal working OS 9 configuration.
2005PowerBook G4 1.67 17" (DLSD/HR - Al)PowerBook5,9❌No confirmed usable OS 9 + internal-audio configuration. Architecture differs substantially from 5,1–5,7.

Current pattern

PowerBook3,2–3,5 β€” native OS 9 audio

PowerBook5,2 β€” working; remove Screamer spoof

PowerBook5,3 β€” working; model-specific ROM

PowerBook6,4 β€” working; no audio hack

PowerBook5,4 β€” working; 2026 device-tree/ROM fix available

PowerBook5,5 β€” working without audio modification

PowerBook6,1 β€” working with jack/speaker workaround

PowerBook5,1 β€” working with reversed jack-detect workaround

PowerBook5,6 β€” working possible; conflicting Screamer-era instructions

PowerBook6,8 β€” boots OS 9; no confirmed internal audio

PowerBook5,7 β€” current boot-vs-audio conflict

PowerBook5,8 / 5,9 β€” usable OS 9 boot not yet solved

PowerBook6,2 β€” ?

Screamer

"Screamer" is not a universal audio fix.

It was used mainly as an OF/device-tree compatibility spoof to get some unsupported machines to boot.

Confirmed later cases:
PowerBook5,2 β€” removing Screamer restores working audio.
PowerBook5,6 β€” later report also restores audio by removing Screamer.

2026 TAS3004 / Snapper findings

Aluminum PowerBooks use TAS3004 "Snapper" audio hardware across multiple models.

OS 9 behavior depends on Open Firmware/device-tree properties including:
#-detects
#-features
#-inputs
#-outputs
sound-objects
model
i2s-serial-format

Different models expose incomplete/different values:

* normal sound
* reversed jack detection
* missing inputs
* Sound Manager instability
* boot failure when audio initializes

PowerBook5,4 2026 fix:

* OF bootscript available
* ROM with fix baked in available
* speakers working
* headphone auto-detect working
* volume controls working
* microphone working
* occasional crackle reported
* occasional preference/extension-related boot crash reported

Sources

EveryMac β€” PowerBook G4

Mac OS 9 Lives β€” PowerBook5,4 Open Firmware sound fix / ROM

Mac OS 9 Lives β€” PowerBook5,3 ROM

Mac OS 9 Lives β€” PowerBook5,1

Mac OS 9 Lives β€” unsupported Aluminum PowerBook testing

Mac OS 9 Lives β€” PowerBook5,2 / Screamer audio testing
Logged
new in September: iSight (box), System 7 (box)

samoflange

  • 4 MB
  • **
  • Posts: 5
  • Hacker Man.

Thanks @SmilesDavis. I guess it's got far more support than last I checked! Looks like I got one of the few models that didn't work. I think some of those inverted jacks that need a dummy plug can be fixed. I think I fixed the crashing and crackle in the rom I dropped, but it would be worth seeing if anyone else can test it before changing the chart.


Quote
Could a ROM be created or modified (perhaps one that recognizes more than 1.5 GB of RAM) to allow the 5.7 model to boot? Please let me know,thanks!

@redstudio - I'll take a look into your model's specs and see what I can find. I haven't messed with integrating any of the RAM boosts or USB 2 support yet, but I've got audio mapped out pretty well. Would you be willing to run a few probes from an app I made that pulls your exact device tree and maps your system?

Logged
Amateur speaker sadist.

redstudio

  • 128 MB
  • ****
  • Posts: 165
  • New Member

I'm certainly available to run tests. Does your program still run on OS 9, or do I need to install another operating system as well? I actually have a dual-boot setup with OS 9 and OS X 10.5. Give me a weekβ€”I'm going on vacationβ€”and then we can collaborate. I also have a 5.9 model, if you're interested, but it has unsupported Mac ROMs and issues with OF CPU recognition; the audio is disabled, and I get a black screen when booting OS 9β€”perhaps the video card is incompatible too? I'm not sure... we'll touch base later. Thanks to Smiledevis for the excellent summary of models that work in OS 9!
Logged
Pages: [1]   Go Up

Recent Topics