• Hello MLAers! We've re-enabled auto-approval for accounts. If you are still waiting on account approval, please check this thread for more information.

Fixing Broken Screen Brightness for Pismo Running Mac OS 9.0.x

CC_333

68040
I only just today discovered this minor, but important problem, and since nowadays, there's really no practical benefit to running the latest version of OS 9 (except perhaps for compatibility with the relatively few applications that require 9.1 and up), this is something that should probably be fixed.

Apparently it has to do with an incompatibility with a firmware update Apple released for it, and the fix was simply to update to 9.1 or newer.

9.0.x, however, apparently has somewhat better backwards compatibility, based on some comments over at Macintosh Garden, so it got me curious to see if perhaps this could be fixed somehow by backporting the updated brightness adjust and clamshell mode resources from 9.1+ to 9.0.x.

I admit that this is rather arcane, but it could matter for those who wish to restore their Pismos to stock condition with stock OS and software for reasons and expect it to work.

Thoughts?

c
 
Update: The resources for display brightness control are in Mac OS ROM!

On a hunch, I thought I'd try copying the Mac OS ROM off the OS 9.1 CD I have handy here (which can control brightness) and attempting to boot 9.0.4 with it.

Well, it didn't work, because it crashed with innumerable errors (address errors, bus errors, illegal instructions, the works). So, I put the original ROM back, and then copied a barebones System folder to a flash drive for testing so I don't have to mess up the working install until I come across a configuration that works.

I next tried the Mac OS ROM file I used for CHRP-enabled OS 7.6 (Mac OS ROM 10.2.1), because I figured that it was the newest available ROM, and relatively universal (plus the brightness controls worked while booted into 7.6 – an important clue. Not only did 9.0.4 boot up like normal, the brightness control actually works now!

So apparently that's all it takes.

I had forgotten how refreshingly simple these old Macs are.

c
 
UPDATE #2: Perhaps I was a bit premature.

The flash drive System folder boots up perfectly with ROM 10.2.1, but when I put it in the System folder on the internal hard drive, it locks up hard just before the Finder is supposed to load. No more errors at least, but it's not exactly an improvement, either.

So back to the stock ROM I go.

What this exercise did was point to where the broken resources are, and newer ROMs fixed them, so all one needs to do to maintain full compatibility with 9.0.4 is to patch that version's ROM with the updated resources.

I would give it a try, but I'm not that advanced. I'll poke around though. Maybe it'll be easier than I think, especially if I can find the relevant resources in ResEdit.

c
 
Have you tried one of the intermediate ROM versions? 9.0.4 spans ROM 3.7 through 5.5.1, and 9.1 spans 6.1 through 7.9.1, so there's lots of things that could change between ROM version for the same OS release.
 
No, I haven't! I'll have to do that!

Do you know where I could find that specific version? Is there a repository of Mac OS ROMs somewhere?

c
 
Ahh, OK!

I didn't realize there were stock ROMs there. I thought there were only patched versions.

I'll check it out!

c
 
OK, I downloaded Mac OS ROM 5.5.1. Is it ready to go as is, or do I have to do anything to it?

I guess I'll try a few things and find out.... EDIT. I just expanded it.

However, 5.5.1 didn't work; I got a "this startup disk is not supported by your model" error just after the Happy Mac.

c
 
Last edited:
Tried 3.9. That worked, but brightness is still broken.

All the machine-specific versions are, unsurprisingly, not working. Can that "This won't work on your model" stuff be patched out?

I would try patching these ROMs myself, if I knew how (I don't).

c
 
Tried 3.9. That worked, but brightness is still broken.

All the machine-specific versions are, unsurprisingly, not working. Can that "This won't work on your model" stuff be patched out?

I would try patching these ROMs myself, if I knew how (I don't).

c
The "This won't work on your model" can be patched out... however, some of that stuff... won't work on your model. So instead of throwing an error, the machine will lock up or crash.
 
The "This won't work on your model" can be patched out... however, some of that stuff... won't work on your model. So instead of throwing an error, the machine will lock up or crash.
I see.

The least problematic solution, therefore, would seem to be to find the routines in the newer ROM that allow the brightness controls to work (fortunately, it was fixed relatively early on; the initial retail release of 9.1, which contains ROM 6.1, has a working brightness control) and patch those into the earlier ROM (I don't know what could be gained by running ROM 3.9 over 3.7, but both appear to work 100%, aside from the brightness control).

This is an arcane and insignificant problem for sure, but I nevertheless wouldn't mind seeing it get fixed!

c
 
Arcane and insignificant, but I feel like we all need to get better at identifying, extracting, and patching features, as it appears that we can mix and match for OSes all the way back to 7.5.0 at this point.
 
Back
Top