Welcome to the MacNN Forums.

If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

You are here: MacNN Forums > Enthusiast Zone > Hardware Hacking > Clamshell iBook questions - LCD, CD, logic board

Clamshell iBook questions - LCD, CD, logic board (Page 6)
Thread Tools
OwossoBorn
Fresh-Faced Recruit
Join Date: Oct 2005
Status: Offline
Reply With Quote
May 25, 2007, 02:22 AM
 
Thanks for the reply Shifuimam. I had a feeling it may be the drive's firmware. I did find an update that stops it from locking up on certain DVD RAM discs, but nothing regarding booting in general. Shoot. I thought I saw posts on other sites of people recommending this Toshiba drive over others.

I can boot off of a Tech Tool Pro cd that has OSX10.4.4 on it, so I know the drive is bootable. I just burned a copy of Ubuntu 7.04 Feisty Fawn and it too will show up in the option screen, but fails to boot. For some strange reason tonight, the Ubuntu partition on my other drive connected via firewire target disk mode showed up in the option boot screen. I selected it and hit the continue arrow on the right and I get the Ubuntu boot loader, asking if I want Linux or OSX, so I choose Linux. It instantly goes back to the option screen and won't let me boot linux. It seems that OF won't have anything to do with linux.

So now I can't get Ubuntu to even get to it's logo stage from either a firewire partition or boot CDs. With the old drive, I was at least able to see the messed up logo screen like in randy.r's flickr picture. But it never fully loaded and always hung prior to any sort of gui.

Oh well, OSX seems to run fine on the old dog. I only wanted Ubuntu so I could see the new screen work at 1024x768, making sure the hardware was connected the right way. Screen should be here tomorrow. I feel like the kid in the Disneyland commercial, "I'm too excited to sleep!"
     
shifuimam  (op)
Addicted to MacNN
Join Date: Aug 2006
Location: The deep backwoods of the PNW
Status: Offline
Reply With Quote
May 25, 2007, 09:45 AM
 
If you have another Mac, you could try connecting the clamshell in target disk mode, and use another Mac to install Ubuntu that way. I tried that once, and failed right at the end. You might have better luck, though.
Sell or send me your vintage Mac things if you don't want them.
     
OwossoBorn
Fresh-Faced Recruit
Join Date: Oct 2005
Status: Offline
Reply With Quote
May 26, 2007, 04:05 AM
 
I GOT THE NEW SCREEN WORKING 1024x768 in OSX and OS9... sorta. Actually, my current resolution is 1152x768 and is larger than the LTN121x1-L02 display. I stopped to take the time to write this up. I will have it set to 1024x768 before I go to bed tonight. The way I'm doing it, via Open Firmware, it works in both OS 9 and OS X, and during boot screens, across multiple boots. I haven't gone back into Open Firmware yet, so it may very well be full screen for that as well. (edit: open firmware is also full screen) An added bonus seems to be screen spanning as well as mirroring, but I haven't connected the video out to my television yet to verify.

My screen came in this morning. I couldn't wait to find/buy a cable that would fit the new screen so I came up with a cool alternative. (pictures coming very soon) I found a spool of 30 gage wire and soldered directly to the back of the LTN121X1-L02. I only used one of the 3.3v and one of the Gnd connections, which cut the wire count down to 10. I then stripped back the other end of the 5" wires about 1/4" and inserted them directly into the black connector on the end of my clamshell video cable. I then taped everything to the back of the screen and set 'er up in the frame. It booted up just like randy.r's, with 800x600 in the upper left corner, repeating the desktop just below that and the right edge of the screen was black. (this is where I found out that the screen I bought had a nasty red vertical line and one stuck pixel !%#$@) The picture was extremely noisy, and then I remembered the data wires were twisted in the original clamshell cable. I twisted my new wires into 4 data pairs and re-inserted into the black connector...picture is now rock solid, like it should be...albeit too small for the screen.

I then installed and tweaked ScreenResX for about 3 hours with absolutely no change whatsoever. btw, the file that ScreenResX changes is the same one mentioned in the guy's article who put the HD 1920x1200 lcd onto his powerbook. For the clamshell, it is /system/library/displays/overrides/DisplayVendorID-610/DisplayProductID-9c05. I tried copying/pasting the contents of other, larger screens into that file and it always came up 800x600 after reboot. I reset the file back to it's defaults and ventured elsewhere.

The new screen is reported the same make/model as the original screen, which confirms the screen isn't able to announce what it is. Hmm.... what if Open Firmware on this particular mac has hard coded values, and doesn't check to see what may or may not be connected at boot? I booted the following macs into Open Firmware for a little comparison session: 15" 500Mhz Ti powerbook, 15" 867Mhz Ti powerbook, clamshell. Very interesting stuff indeed! I googled Open Firmware, display, width etc.. and found enough info to show environment settings, device properties and change them. Selecting the root device on the clamshell, I can see there is a property called "display-family" and it's set to 1. On the 500Mhz powerbook, that setting is 2. On the 867Mhz powerbook, that setting doesn't exist. Instead, the 867Mhz pb had a property called "graphics-options" and it's set to 8. Selecting the Screen device on the clamshell, I could see that width/height was set to 320x258 hex, which is 800x600 decimal. No matter how many times I carefully deleted the properties for display-family, width, height, replaced them with new values and added the graphics-options property, the machine kept booting up 800x600.

I then found an article where some guy was changing the speed of his bus via Open Firmware and I got to see the syntax for the built in Open Firmware editor, nvedit. Basically, you go into nvedit and enter your 'script' one line at a time and then exit the editor. You then save the contents of what you typed in nvedit to a file called nvramrc and tell Open Firmware to use that file during each boot. So in my fussin' around with the nvramrc file, I set display-family = 2 (like in the 15" 500Mhz Ti PB), width = 400 (1024 decimal), height = 300 (768 decimal), and added the new property graphics-options = 8 (like in the 15" 867Mhz Ti PB). The black screen during reboot lasted about 10 seconds longer than I'm used to (probably loading and analyzing the nvramrc script) but next thing I know, the whole screen is white, not just 800x600!!!! Sure enough, I see the OS9 splash screen slightly to the right of center. I almost fell off my chair. When the OS 9 desktop finally appeared, it was larger than the screen, so I checked the monitors control panel to see what it was reading. I had 9 resolutions to choose from: 640x480 | 640x480 (stretched) | 720x480 | 800x600 | 800x600 (stretched) | 896x600 | 1024x768 | 1024x768 (stretched) | 1152x768. The last one was of course the current setting Most of these are available in Millions of colors.

Here's the real kicker, if I choose 1024x768, it starts 64 pixels from the left edge (1152 - 1024, divided by 2 because it's probably centered on the screen), giving me about a 1/2" black vertical strip on the LEFT side of the screen. ACK! Almost the opposite of what I had when I first connected it this morning.

I clicked on Detect Displays and it found a VGA display (not sure if that's just the video out or not) and under the Arrangement tab, I could uncheck Mirror Displays to get spanning. F'N KICK ASS!

Ok, so at this point, I think I'll take out the graphics-options property and see what that changes, if anything (edit: doesn't change anything). Then I'll change display-family back to 1, leaving width/height and see if that doesn't just give me 1024x768 max resolution (edit: switches back to 800x600. Need to find out what this property is set to on a white iBook, where this screen came from). Here's the nvedit script in case anyone else want's to give it a go. Don't worry about messing up Open Firmware, if something doesn't work, simply reboot and hold down CMD+Opt+P+R to reset things to normal...er, 800x600 repeated vertically with a nice black vertical bar on the right.

In the Open Firmware prompt: *<r> simply denotes when to hit your return key, don't type in the <r> or the gray text. The red underscores are spaces where it's challenging to see that they are spaces. After each ENTER in nvedit, the line simply disappeared, so don't lose track of where you are and just trust that it's working.

nvedit<r>
"_/" select-dev<r>
2 "_display-family" get-my-property 2drop !<r>
8 "_graphics-options" get-my-property 2drop !<r>
"_screen" select-dev<r>
400 "_width" get-my-property 2drop !<r>
300 "_height" get-my-property 2drop !<r>
Ctrl + c to exit nvedit
nvstore<r> to store the script into nvramrc file
setenv use-nvramrc? true<r> to tell OF to use the script when booting
reset-all<r> erases the edits, but leaves the contents of nvramrc file and reboots the machine.

You should now see a full white screen with your OS splash screen booting up slightly lower and to the right of center.

At one point, I even tried editing the OSX BootX boot loader file because that's what grabs the width/height from OF. I tried changing it from using the " width" and " height" OF properties to static 400x300 hex values, but I couldn't resave the file. Just as well, it probably has to be a certain type of file with certain ownership and chmod settings that I didn't bother looking into first. Could've ended up with a pile of plastic, glass and metal instead of the best damn clamshell ever.
( Last edited by OwossoBorn; May 26, 2007 at 04:55 AM. )
     
OwossoBorn
Fresh-Faced Recruit
Join Date: Oct 2005
Status: Offline
Reply With Quote
May 26, 2007, 06:05 AM
 
Apparently, if you only enter the first two lines of the nvedit script I posted above, selecting the " /" device and changing display-family to 2, your clamshell will think the display is 1152x768. If anyone has a white iBook with the LTN121x1-L02 display (don't know the exact iBook model number), could you please go into Open Firmware and post what value the property 'display-family' has?

in OF:
dev / .properties<return> that's a period just before properties

display-family is the last thing listed in both the 500Mhz Powerbook (value = 2) and my clamshell (value = 1).
I'm hoping there's a 1.5 value or anything else that would default the screen to 1024x768 instead of too small or too large.
     
shifuimam  (op)
Addicted to MacNN
Join Date: Aug 2006
Location: The deep backwoods of the PNW
Status: Offline
Reply With Quote
May 26, 2007, 02:36 PM
 
This is really an incredible step forward in our project. I have a 12" 500Mhz G3 screen sitting next to my disassembled clamshell, so I will definitely be working on this project this weekend.

I'm hoping that the LG clamshell LCD cables we've been using (covered earlier in the thread) will work the same way that your soldering work did.

I have the right white iBook, but I have no battery or power adapter for it - and the display currently isn't attached to it.

Is anyone else reading this thread anymore? Any of y'all have a 500MHz G3 iBook that you can use to get this OF value?

Keep us posted!!
Sell or send me your vintage Mac things if you don't want them.
     
seanc
Moderator Emeritus
Join Date: Apr 2005
Location: Cambridge, UK
Status: Offline
Reply With Quote
May 26, 2007, 03:31 PM
 
Owo, what happens if you just try 1.5?
     
Maxwell Smart
Forum Regular
Join Date: Feb 2006
Status: Offline
Reply With Quote
May 26, 2007, 04:19 PM
 
I'm definitely still reading this thread, I check back all the time. I have the LG cable from a while ago and my upgraded 466Mhz but still haven't sourced a LTN121x1-L02 screen (that isn't absurdly priced) to try these mods. If anyone has one PLEASE let me know so I can purchase it!
Macbook (White): 2Ghz/2GB/160GB 5400/SD/AE/10.5
Powerbook (15"): 1.5Ghz/1.5GB/60GB 5400/SD/AE/10.5
iBook (Clam): 466Mhz/576MB/40GB 7200/CD/AP/10.4
     
OwossoBorn
Fresh-Faced Recruit
Join Date: Oct 2005
Status: Offline
Reply With Quote
May 26, 2007, 04:22 PM
 
I'm sittin here laughing at the current state of this project. All of us have a few pieces to the puzzle. The more we piece together, the more pieces we realize we still need. Shifuimam, you have the right ibook but can't turn it on or see the open firmware properties if you did turn it on. It's like finding yourself stuck on a deserted island, only to think of all the things you could do if only you had fire... or simply flip open a cell phone only to find there's no signal on deserted islands etc.

Thank you Shifuimam for starting this whole thing. Without your desire to accomplish what others simply wrote off as impossible, a whole lot of people would not have learned more about their computer or themselves.

I just tried display-family = 1.5 and whereas the happy mac face was dead center for the first time, it all changed back to 800x600 when the OS9 splash screen appeared. Same results even when I added back in the width/height properties. Setting display-family to 3 resulted in a dead machine. Black screen and no HD activity. Holding down CMD+Opt+P+R took longer for the second chime to play, but it eventually cleared out the pram again. I bet we'll need more than just the display-family property to dial 'er into 1024x768.

Shifuimam, when you get into your ibook, please post all the properties associated with "/" and " screen" as there may be some other setting that triggers the right mode. When selecting the screen device, (dev screen), you can type "words" (no quotes) to see a list of all the words/commands the screen understands. One of them is show-modes, which lists out all the different resolution possibilities. 1024 x 768 is in there a few times at different speeds, but all of them are listed as not available. Mode# 35, 800x600@60hz is listed as "LCD - * Current" and 640x480@60 is listed as LCD-Disabled. I don't know how to enable a particular mode since it's not really a property but an array. There are set-mode and mode# words, but how do we use them?? It's kinda fun to type backlight-off and the screen goes black. Then backlight-on and the screen comes back to life.
     
OwossoBorn
Fresh-Faced Recruit
Join Date: Oct 2005
Status: Offline
Reply With Quote
May 26, 2007, 07:38 PM
 
(sorry for the double postings)

I can view the code that makes up set-mode by typing see set-mode. It basically checks to see if a resolution is possible based on the modes listed out in show-modes. if so, it deletes the width, height and linebytes properties and reassigns them based on the mode chosen. It then calls the built-in routine fb8-install which, "installs all of the built in default routines for driving a generic 8-bit-per-pixel frame buffer." So I typed see fb8-install and started looking through its code. Towards the latter part of the routine, after seeing that a resolution is okee dokee, it does one final (annoying) thing, if the chosen resolution is smaller than the dimension of the physical screen (as far as it can tell) it centers the chosen resolution by dividing the difference between total screen width and active screen width (which is set by the #columns property that I can't seem to track down yet). I know that it's possible to redefine forth commands and open firmware will simply use the most recent version. I'll attempt to redefine the fb8-install code and change the centering part so it sets the property 'window-left' to 1 or 0. Then we should be able to set 1024x768 as the default resolution, left-justified if you will, even though the computer still thinks the screen is actually 1152x768. We could choose 800x600 and it will left-justify as well.

Another approach if trying to change fb8-install is unsuccessful is to try and tweak the set-mode routine and simply set 'window-left' to 0 after the fb8-install call. Here's an online book on how to program Fcode (forth) that's been pretty helpful to me. http://wallaby.cs.man.ac.uk:8888/ab2...iew/18116;td=5

Another cool thing I found after going back into open firmware without clearing the nvramrc code is that not only were the properties changed that I entered with nvedit, but it now thinks it has a different video card as well, which is probably why screen spanning is turned on. The original video card was listed as ATY,RageM3p and the new listing is ATY,RageM3p12Parent@10 with the following two children devices: ATY,RageM3p12A and ATY, RageM3p12B.
     
kiwikid
Fresh-Faced Recruit
Join Date: May 2007
Status: Offline
Reply With Quote
May 26, 2007, 11:12 PM
 
There's a steady supply of "dead" 12" white iBooks in this part of the world, the faulty BGA problem. Most can be picked up for less than the combined price of ram, HD, and Combo/Superdrive, plus we get a 12" LCD bonus. I've got a couple here, unfortunately in such a state of dissarray I can't get useful OF info from them, but...

The bonus by buying a "whole, dead" white iBook is you get a mating connector and cable with the LCD. No need for cutting and soldering,
just cut the new/replacement LCD's cable down some distance, bare the wires and stuff them into the clammy's black connector. At least that's the theory. I'll let you know soon how it works, I'm about to try my first.

If it's any use I have here OF info from a white G4 14" iBook running 1024x768 on MacOS 10.4.9:

0 > dev / .properties
model PowerBook6,3
compatible PowerBook6,3
...
pid# 00001183
scb# 0000000c
display-config-info 08000013 00000000
...
display-family 00000001
graphic-options 00000003

hth
kk
     
shifuimam  (op)
Addicted to MacNN
Join Date: Aug 2006
Location: The deep backwoods of the PNW
Status: Offline
Reply With Quote
May 26, 2007, 11:29 PM
 
Be careful with that - the wires on the white iBook's LCD cable are very fine gauge. In fact, each wire isn't actually sheathed in rubber insulation - it's painted with an insulating paint to make the wire as thin as possible. You will likely be better off buying the LG clamshell cable from a third-party supplier (go to Apple's website to find your nearest certified reseller - they can order the part for you; it's around $15 USD).

On my end, I *was* going to work on this tonight, but my iBook is completely 100% DEAD. It won't boot. Not off the hard drive, not off my OS X 10.3 retail CD - which it used to be able to boot from. I need to go hunt down a firewire cable tomorrow so that I can use my boyfriend's PowerBook to see if I can back up my data and install OS X via target disk mode. If I can't do that, I don't know what the hell I'm going to do.
Sell or send me your vintage Mac things if you don't want them.
     
shifuimam  (op)
Addicted to MacNN
Join Date: Aug 2006
Location: The deep backwoods of the PNW
Status: Offline
Reply With Quote
May 27, 2007, 01:41 AM
 
Good news. I got my iBook working again - apparently removing the extra RAM module made OS X refuse to boot. Weird. I've never had that happen with a PC - if you remove a RAM module from a Windows machine, it just warns you that the amount of memory has changed, and continues booting normally.

At any rate, owossoborn, can you also post how to revert these NVRAM edits, in case we need to go back for any reason? I'm planning on making the edits now, so I'd like a fallback plan if possible. Thanks!
Sell or send me your vintage Mac things if you don't want them.
     
shifuimam  (op)
Addicted to MacNN
Join Date: Aug 2006
Location: The deep backwoods of the PNW
Status: Offline
Reply With Quote
May 27, 2007, 01:45 AM
 
also - how does one put a ! in nvedit? shift+1 results in only printing a 1.

FWIW, use only the right shift key to allow for second characters - left shift won't work.

Also, you can use the codex BBcode tag, I believe, to put your nvram edits in a code tag, so it uses a fixed-width font - should take care of any confusion as far as spaces go.

I applied your nvram edits, but it appears to have not done anything. I've still only got 800x600.
Sell or send me your vintage Mac things if you don't want them.
     
OwossoBorn
Fresh-Faced Recruit
Join Date: Oct 2005
Status: Offline
Reply With Quote
May 27, 2007, 02:06 AM
 
Ah, a new property. Thanks Kiwikid.
I just set display-family to 1 and added graphic-options 3 and it came up 800x600. I have to find out how to add a double byte entry like display-config-info has before I can test that one. It seems encouraging though.

I'm not altogether sure my width/height/linebytes properties are getting set. Whenever I reboot into OF, I can see the display-family property has taken, as well as the acceptance of the new property graphic-options, but not W/H/LB. Strange. I wonder if the alias "screen" isn't accessible from the nvramrc code? I'll try to use the actual path to the screen properties. That path changes depending on what I have display-family set to.
Edit: I tried setting a direct path and I guess it didn't recognize it because in addition to the defaulting width, height, linebytes under the screen device, I now have the same three properties under "/" So, since that doesn't happen when I use the screen alias in the code, width, height and linebytes must be setting ok but are being reset somehow before booting.

I actually am getting used to 1152x768. It's showing the first 1024 pixels across in the proper aspect ratio but it just stops at 1024 'cause that's where the screen physically ends. The only thing I can't see is the time and spotlight icons. If I zoom in (accesibility control panel), I can maneuver over to the icons on the hidden part of the desktop and move them into view, then zoom back out to normal. For all intents and purposes, it is 1024x768.
     
OwossoBorn
Fresh-Faced Recruit
Join Date: Oct 2005
Status: Offline
Reply With Quote
May 27, 2007, 02:18 AM
 
Glad to hear you got it operating! Very cool.

If you need to cancel out everything you've typed in nvedit, you can do it from inside OF or outside.

Inside OF: simply type nvedit again and use the up/down arrows to see each line. While viewing a line, you can re-edit it and use up/down arrows to check other lines. If changing a line, try not to hit return as that will cause a new blank line to be in the code and makes it challenging to use arrow keys to check what you've typed. when done editing, I down arrow to the bottom of the code and then hit Ctrl+c to get out. Typing nvstore again will resave. You can then reset-all to restart. No need to type setenv use-nvramrc? true again since it was never reset.

From outside of OF: When you turn the machine on and hear the chime, hold down CMD+Opt+P+R to erase the nvramrc code and set all properties back to defaults.

I've often tweaked the nvedit code, nvsave, reset-all and then hold down Cmd+Opt+O+F to go right back into OF to see if what I typed changed any properties.

Through trial and error, I've come up with a much shorter nvedit code: again, do not type the <r> as that is just to let you know when to hit return. There is a space prior to the /.

nvedit <r>
" /" select-dev <r>
2 " display-family" get-my-property 2drop ! <r>
Ctrl+C
nvstore <r>
reset-all <r>

Ctrl+e will jump you to the end of a line in nvedit
Ctrl+k will erase from your current position to the end of the line.
An alternate to the display-family line is: 2 encode-int " display-family" property
When you reboot, you will have 1152x768 and screen spanning. I just can't get the width, height or linebytes properties to take.

My left shift works ok in nvedit.
( Last edited by OwossoBorn; May 27, 2007 at 02:40 AM. )
     
shifuimam  (op)
Addicted to MacNN
Join Date: Aug 2006
Location: The deep backwoods of the PNW
Status: Offline
Reply With Quote
May 27, 2007, 02:30 AM
 
weird- mine doesn't. It works okay in OS X, so I know that it's functioning.

I have a 12" PowerBook G4 here. I'm about to pop into OF to see what it says.

Also, you can sudo in terminal and use:

[codex]nvram property="args"[/codex]

Such as:

[codex]nvram display-family="2"[/codex]

You can also use nvram -p in the terminal to see what everything is set to - including what's in nvramrc.

I am excited to see what's going to happen - I'm working on this now - and posting this from my semi-disassembled clamshell with a sort-of working LCD!!
Sell or send me your vintage Mac things if you don't want them.
     
OwossoBorn
Fresh-Faced Recruit
Join Date: Oct 2005
Status: Offline
Reply With Quote
May 27, 2007, 02:44 AM
 
I've been using the nvram -p to list out the properties, and have set environment properties such as "use-nvramrc? true" that way as well. I didn't think setting device properties would survive a reboot? When the contents of nvramrc are run, they go in and change properties that come straight from the physical devices, prior to being included in the final device tree for osx to read. When I change the display-family property from inside OF (not nvedit), I can refresh the screen and see it's there, but when I reboot, it's been replaced again. Just setting the display-family property from inside osx may not stick as well. I'm almost certain of that because the display-family property is a child of the / device (root), which is why you have to add " /" select-dev prior to the display-family line. I'll check it out to make sure...

That's weird that your nvedit isn't working?!?!? The main things are just setting display-family to 2, nvstore, setenv use-nvramrc? true, reboot.
( Last edited by OwossoBorn; May 27, 2007 at 02:51 AM. )
     
shifuimam  (op)
Addicted to MacNN
Join Date: Aug 2006
Location: The deep backwoods of the PNW
Status: Offline
Reply With Quote
May 27, 2007, 02:50 AM
 
I've poked around my 12" PB G4's nvram stuff - "dev / .properties" shows a value called "display-config-info" set to "27". I set this value, and it didn't make any difference. Additionally, if you try to set screen-width to 1024, it also sets the "screen-#columns" value to 100 - which is what the PB G4 is set to. The graphics-options setting on the PB G4 was set to 8, like the 500MHz TiBook.

There's got to be a way to set this - there obviously is a display family somewhere that is aware of XGA displays, since Apple has been using such a resolution since the first 12" iBook was released in 2001.
Sell or send me your vintage Mac things if you don't want them.
     
OwossoBorn
Fresh-Faced Recruit
Join Date: Oct 2005
Status: Offline
Reply With Quote
May 27, 2007, 02:54 AM
 
I know, huh?!? Why have a display-family = 1 be 800x600 and display-family = 2 be 1152x768?!? What happened to 1024x768?

You say your display-config-info is set to 00000027? (hex, not dec, right?) KiwiKid's was a double byte of 08000013 00000000. I'll try the 27 and see what happens...

Still no go on display-family=2 giving you 1152x768?
     
shifuimam  (op)
Addicted to MacNN
Join Date: Aug 2006
Location: The deep backwoods of the PNW
Status: Offline
Reply With Quote
May 27, 2007, 02:57 AM
 
i actually set my display-family to 1 and my graphics-property to 3, and that seemed to make it to 1152x768 (if I remember correctly?? I have made edits since then!). I just tried 1.5 for display-family, and it didn't even give me a split second of a centered apple logo at boot.

I'm still at 1152x768, and the zoom utility trick must be an os9 thing - no dice in Panther.

How can I retrieve the display-family value of this powerbook without going through the entire dump of the nvram?

PS if you have AOL instant messenger, we can talk about this there - give me your S/N and I'll add you to my buddy list.
Sell or send me your vintage Mac things if you don't want them.
     
OwossoBorn
Fresh-Faced Recruit
Join Date: Oct 2005
Status: Offline
Reply With Quote
May 27, 2007, 03:05 AM
 
Whenever I set display-family to anything but 2, I get 800x600, independent of any other setting. Keep in mind I'm booting into OF, editing nvedit, then saving with nvstore and rebooting to see any changes. Can't simply change these device properties from nvram in osx. There may be a way to edit the nvramrc script from nvram in osx though. Although a reboot would still be necessary for osx to pickup any changes. It's definitely not a realtime thing.

The zoom thing is OSX, not OS9, under Universal Access in System Preferences. Right in the middle, under Zoom: turn it on. Then click on the options button to the right and set maximum zoom to just above 2. Hit Done and quit Sys Prefs. To envoke the zoom, hold down Cmd+Opt+ + (plus sign) to zoom in. Multiple taps of the plus sign zoom you in a little bit more each time. Tapping the key combination once quickly zooms in to 2x screen size (or whatever you set maximum zoom to) To zoom back out, Cmd+Opt+ - (minus sign)
( Last edited by OwossoBorn; May 27, 2007 at 03:33 AM. )
     
OwossoBorn
Fresh-Faced Recruit
Join Date: Oct 2005
Status: Offline
Reply With Quote
May 27, 2007, 04:42 AM
 
I finally gathered together some closeups and screen shots of my progress and put them on flickr.com.

iBook clamshell screen update - a photoset on Flickr

Be sure to click on the "all sizes" link above each photo to see them in the larger sizes. I think a few are about 2048x1536. I'll be adding to this photo set as I go along. I still need to mount the darn thing in the lid!
     
shifuimam  (op)
Addicted to MacNN
Join Date: Aug 2006
Location: The deep backwoods of the PNW
Status: Offline
Reply With Quote
May 27, 2007, 02:05 PM
 
Have you been trying to set the screen width in the fb8-install thing, or with properties in the nvramrc file?

There are two attributes that appear to force the pixel width of the display - screen-width and screen-#columns. For a 1024 pixel-wide display, OF sees that as 100 columns (768 = 30 rows). Have you tried setting these? I would try, but I'm not sure how to add stuff to that file.
Sell or send me your vintage Mac things if you don't want them.
     
seanc
Moderator Emeritus
Join Date: Apr 2005
Location: Cambridge, UK
Status: Offline
Reply With Quote
May 27, 2007, 03:01 PM
 
Just a thought, but you must be able to edit the OF settings from within OS X. Remember the screen spanning hack? That does everything from within OS X as far as I know, then reboots the machine.
     
OwossoBorn
Fresh-Faced Recruit
Join Date: Oct 2005
Status: Offline
Reply With Quote
May 27, 2007, 04:44 PM
 
Shifuimam: All fb8-install does is take the pre-defined linebytes, height, width, "char-width / over char-height" and insert them into the frame buffer representing screen-width, screen-height, #columns, #lines. It also centers the screen if a chosen resolution is smaller than what it thinks the screen actually is. I wouldn't be able to set width in there because that would kill the ability to change resolutions at all. ie.may limit the ability to change external monitor resolutions too. I haven't figured out how to create/replace my own version of fb8-install. Every time I try to recreate it, it tells me it doesn't like the {4} at the beginning. I've successfully changed the environment property screen-#columns from 100 to 85, 80, 70 etc. and it has no affect on the displayed width. From what I've read about screen-width and screen-#columns properties, the usual width of a character is 12 pixels, so screen-#columns of 100 x 12 = 1200 pixels total width (includes pixels outside viewing area..ie. the front/back porches). The usual height of a character is 22 pixels, so 40 x 22 = 880 pixels total height (including off screen porches). These character 'usual' values were stated in a couple of different Open Firmware documents, none of which were Apple specific. So the multiplied values are guestimates at best.

No matter what I program width, height, linebytes to be, they always reset to default values after reboot. (ie.the nvramrc script is failing at changing them when it runs) In my OF, when I set display-family to 2, width defaults to 480 hex (1152 decimal), height defaults to 300 hex (768 decimal) and linebytes defaults strangely to 500 hex (1280 decimal). When I set display-family to 1, width=800, height=600, linebytes=800 and no matter what I put into nvramrc, I can't seem to change those values. Maybe it's a timing thing? Since they get set based upon my edited display-family value, maybe my script is changing the width, height, linebytes values but it comes right back and changes them back to what it finds after looking up display-family?

I keep coming back to thinking it'd be easier to leave the width and concentrate on changing the centering function, since I can see two places where centering takes place. I've tried changing width with no luck. An 1152x768 display showing 1024x768 starting from the left edge = the displayed resolution we are after. Directly after the fb8-install routine is called, set-mode goes through re-centering the screen a second time even though fb8-install does it already. (edit: on the other 15" powerbooks, both fb8-install and set-mode are different, maybe that's why set-mode forces centering again in case the version of fb8-install used doesn't do it?) So I've switched focus from fb8-install over to set-mode. I'm thinking set-mode is called from within OSX every time a resolution change is requested. So if I can hack a new version without the centering, we might be able to choose 1024x768 and have it start at the left edge of the screen, which would then fill the screen perfectly. If the OF set-mode is not called to change resolutions, and is instead in the OF in the video's rom, then there's probably no way to kill the centering. A third, option may be that the OF set-mode / fb8-install routines are simply for the display of OF itself or the booting of whatever OS is going to boot. In that case, the centering routines triggered from inside OSX would be in some plist/kext file. I have a feeling the centering is done outside of the OS since the process of switching resolutions is identical in OSX and OS9.

Seanc: I can edit environment properties from within osx with the nvram command. ie."nvram setenv screen-#columns 80" but I haven't been able to set/change any device specific properties like the ones listed from within OF with "dev screen .properties." That line say's, "show me all the properties associated with the screen device" and is limited only to the screen's scope. When trying to create/edit those properties with nvram inside OSX, they are created, but not under the screen device. They are added to the environment properties instead. Anyway, device properties get reset when rebooting, so they have to go into an nvramrc script anyway. If there is a way to edit the nvramrc script from within OSX, I'd try it, but it's not so much different to go into OF, use nvedit, save reboot. ie.have to reboot to reload the script anyway, what difference does it make where you edit the nvramrc script?

The fb8-install and set-mode FCode routines are also listed only under the screen device. (actually, fb8-install isn't listed, but by typing 'see fb8-install' you can see the code) You can find what routines/methods/words a device understands by selecting a device and typing "words" then return. So the purpose of using nvedit inside OF to create an nvramrc script is so it can run after the devices report what they are and are capable of, changing the propereties we tell it to change. Each reboot causes the devices to report their actual settings, but nvramrc comes in after and changes them back to what we want. Without nvramrc, we can't permanently set most of the device properties.
( Last edited by OwossoBorn; May 27, 2007 at 05:11 PM. )
     
OwossoBorn
Fresh-Faced Recruit
Join Date: Oct 2005
Status: Offline
Reply With Quote
May 27, 2007, 07:00 PM
 
Dead end on fb8-install and set-mode. While editing a screenshot of set-mode to upload to flickr, (uploaded now) I noticed all of the addresses were different than what I copied down by hand the other day. This means the code for set-mode is tokenized, generated on the fly and I won't be able to create a new one that could take its place. So, killing the centering routine in fb8-install is out because it gets centered again in set-mode after the call to fb8-install is complete. Killing the centering in set-mode is out since set-mode seems to be generated (or created via tokens that I have no idea how to find) on the fly when booting.
     
shifuimam  (op)
Addicted to MacNN
Join Date: Aug 2006
Location: The deep backwoods of the PNW
Status: Offline
Reply With Quote
May 27, 2007, 10:36 PM
 
CRAP!

I am wondering if we need to return to the whole display-family issue. kiwiman's 14" iBook G4 had display-family at 1 and graphics-options at 3. Perhaps we're missing something here - maybe there's another property value that can be set?

Somehow, in some way, fb8-install and/or OF does recognize XGA displays - that much is obvious from Apple's own line of machines. If we can trick this thing into thinking it's got a 15" widescreen, then I just really think there is a way to trick it into thinking it's got a 12" XGA display.

In the meantime, I have also found ways to cope with the extra off-screen pixels in 1152x768 mode. I will be focusing my efforts for now on getting the LCD physically inside the plastic casing, so that working on the functionality part will be a little easier - and less likely to damage the LCD.
Sell or send me your vintage Mac things if you don't want them.
     
kiwikid
Fresh-Faced Recruit
Join Date: May 2007
Status: Offline
Reply With Quote
May 28, 2007, 03:39 AM
 
without wanting to detract from OwossoB's great work,
I think the 1152 business may be -dis-tracting ;-)
We should be doing this on a clean Apple based 1024 display.
Just to add some more grist, I looked in OF at:

0 > dev screen show-modes

There was a whole slew of values, most of which we're not interested in. The entries referring to 1024x768 were (first entry shown in full, remainder abbreviated for simplicity):

9 1024 x 768 @ 75hz Not Available
a 70hz; b 60hz; c 0hz; 13 74hz; 1d 85hz; 1e 90hz; 1f 100hz; 20 120hz;
-----
39 60hz LCD - Disabled; 3f 60hz; 4d 75hz; 4e 70hz;
4f 60hz (no status shown for this entry)
50 0hz Not Available
58 60hz (no status shown for this entry)
59 60hz *CURRENT
5a 75hz Not Availaable

NB: altho' this is for a 1024x768 native resolution screen
it is a 14", driven by a Radeon9200.
I'm sure there's a 12" G3 somewhere at my day job,
I'll try to get figures from that...
     
OwossoBorn
Fresh-Faced Recruit
Join Date: Oct 2005
Status: Offline
Reply With Quote
May 28, 2007, 07:31 AM
 
Shifuimam: Good luck mounting that baby!! Don't cut yourself on the metal.

Well, after another day of hacking away at OF, I finally noticed something that had been staring me in the face every time I went into OF. My nvramrc code was basically "select root device, change display-family, select screen device, change width, height, linebytes" The dimensions are still not changing. When going into OF the very first line read: "Can't find device screen" It was quietly telling me it didn't know what/where the screen device was. Finally, progress.

I then spent a few hours playing around with different ways of telling it to select my display device. I decided to drop the display-family property for debugging purposes and just wanted a one line NVRAMRC file that successfully selected the screen device. In the process, I found out how to use the nvrun command!! Directly after exiting nvedit, but before executing nvstore, you can type nvrun and it will execute the contents of the temporary file location. Executing nvstore stores the script into the NVRAMRC file, but also erases the temp holding area so running nvrun will always come back "NVRAMRC not valid." Likewise, when there is code in the temp holding area, If there is anything wrong with the script, it will also say "NVRAMRC not valid." This saves a lot of time by not having to reset-all and reboot to see changes.

My display device (when display-family is set to default of 1) is at /pci@f0000000/ATY,RageM3p1@10. The alias for that path is "screen." I can also type a shortcut of /pci@f0000000/@10/. So I entered the full path as the first and only line in nvedit: " /pci@f0000000/ATY,RageM3p1@10" select-dev and exited nvedit. When I typed nvrun, the screen cleared and gave me an >ok. I typed pwd (to show me what the current device's path is) and sure enough, I was in the screen device. I then re-entered my entire NVRAMRC script, exited nvedit and ran nvrun. It set not only the display-family property, but also the width, height and linebytes! I then saved the script with nvstore and reset-all. Upon rebooting, it changes display-family, but died again on the screen section. ?!?! Whew... confusing or what? Apparently, AFTER entering OF, the NVRAMRC script has no problems finding any device. However, when trying to boot normally using the NVRAMRC script, it can never find any incarnation of the display device path. I'm hoping to find a way to setup an if / then loop that will just sit there counting milliseconds until 5, 6 or 10 seconds go by and THEN see if it can find the screen device (assuming the machine will still be processing device info while the script is paused). Also, it apparently stops running the script on the first error encountered. ie.if I tell it to select screen, change properties and THEN select " /" and set display-family, it never gets to the part of selecting " /" and the resolution stays at 800x600. Funny how I stumbled upon display-family by itself first. Had I started off with screen dimensions, I never would have thought display-family did anything.

KiwiKid: I'm not sure I follow what you mean? If you mean which computer I'm getting OF info from to try out on the clamshell, I'm not using the 15" anymore. I'm going off whatever you and Shifuimam post. Give me more, more, more...specifically all the properties of your screen device. (dev screen .properties) I thought of going to a pawn shop or apple store to find any sort of 1024x768 displayed mac. I am using an actual Apple 12.1" 1024x768 display, model Samsung LTN121x1-L02. It's from a white ibook. What's going on is that even though the computer is running at 1152x768, it's not distorting or stretching etc.. It's simply showing the first 1024 pixels across the screen and then stops because that's where the actual physical screen ends. The screen has no problem showing the first 1024x768 and it looks fantastic. If I move my hard drive alias (aliases stay where you put them in the finder across reboots) and other folders "into view," the only things I can't see are the few menu icons on the extreme right. Spotlight, clock and a few others. I don't mind that, and it seems Shifuimam is getting more used to it per her last post. You can see where it stops in a couple of the screen captures I put on flickr.com.

I am now approaching it from two angles, both of which would satisfy the goals of this thread, to have a perfectly normal 1024x768 display on a clamshell iBook. Either 1) Figure out how to stop the auto centering routine when choosing 1024x768 in the display system preference panel (it thinks the screen is wider, so it centers 1024x768 on what it thinks is a wider screen, leaving about a 64 pixel wide black vertical bar on the LEFT) so it would then be the perfect 1024x768 resolution, completely filling the screen as it should. 2) Figure out how to select the screen device in the OF nvramrc script and permanently store width, height, linebytes so the computer thinks the screen is only 1024x768. If I venture further with choice #2, I will try it first by leaving the display-family property set to default for simplicity in debugging. I'd much rather have it 1024x768 AND have display-family set to 2 to also get the screen spanning. Adding in any incarnation of graphic-options or display-config-info kills the screen spanning, even with display-family set to 2.

Hope that clarifies where I'm at.

Whereas I am comited to making this work at 1024x768, I did find the existence of a 13.3" WXGA display online today that was 1280x800, Samsung LTN133W. Can't find it on ebay though. It may fit into the clamshell lid perfectly. It's physically 24mm (.94") wider than my original clamshell screen, while being 4mm shorter! The depth is exactly the same at 5.5mm. The front bezel would need to be enlarged, that's all. How cool would it be to get upwards of 1280x800 on this baby? With display-family set to 2, the linebytes (basically the width of the screen) property defaults to 1280 decimal. So there's probably just as much chance of getting that one to work as well.
( Last edited by OwossoBorn; May 28, 2007 at 07:59 AM. )
     
shifuimam  (op)
Addicted to MacNN
Join Date: Aug 2006
Location: The deep backwoods of the PNW
Status: Offline
Reply With Quote
May 28, 2007, 12:08 PM
 
FWIW, I was able to look at a 500MHz 12" iBook for a few minutes. All I can find is the display-family, which is set to 3.

I can't find the graphics-options, so I can't look that up.

Curiouser and curiouser...
Sell or send me your vintage Mac things if you don't want them.
     
OwossoBorn
Fresh-Faced Recruit
Join Date: Oct 2005
Status: Offline
Reply With Quote
May 28, 2007, 04:35 PM
 
Shifuimam, you are a genius! I had tried display-family=3 before and I thought my machine died.. I must have been impatient and force quit after seeing a black screen for so long, but this time it turned on at 800x600 and when the OSX splash screen came up (the one that say's, "Starting Mac OS X....")it changed to .......... drum roll please...... 1024x768! I'm sitting here in disbelief at a regular 1024x768 millions of colors

It comes up 75hz, with 60hz grayed out. When I click on detect displays, nothing happens. With display-family=2, I would get the option to turn on screen spanning or leave it mirrored. Excellent, excellent, and again, most excellent. I swear, I never would have tried display-family=3 again after thinking it died with that setting a few days ago. Damn.

Edit: Same thing for OS9, the computer turns on @ 800x600 with the black bar on the right, but as soon as the OS9 splash screen appears, it changes to 1024x768. My screen dimension settings still aren't being applied, so it must sense what the screen is while booting the OS. Open Firmware and the Option boot screen are also displaying @ 800x600. Booting takes a little longer as well. Maybe 45 seconds of black after the chime, then 30 seconds of 800x600, then 1024x768 and the OS splash screen.

The screen shot is added to the end of my flickr.com set: iBook clamshell screen update - a photoset on Flickr

Now, if I can figure out how to change the NVRAMRC script from inside OSX, I'll then be able to make a clickable solution to change between 1024x768 - no screen spanning and 1152x768 - screen spanning.

For completeness, here is the minimal process for creating the NVRAMRC script to get 1024x768 out of a Samsung LTN121X1-L02 screen connected to a 466Mhz clamshell iBook: (I don't know if this works on older 300Mhz models or not)

Boot into Open Firmware by holding down Cmd+Opt+O+F just after the chime sound
at the >ok prompt, type: *do not type out green or gray text. The red underlines are spaces.
nvedit <return> you will only see one line at a time while in nvedit.
"_/" select-dev <return>
3 encode-int_"_display-family" property <return>
CTRL+C to quit the editor
nvstore <return>
setenv use-nvramrc? true <return>
reset-all <return>

That's it. Booting up will now take a little longer, so be patient. I know the first time I tried this a few days ago, I bailed after 20 seconds of black screen, but it will work.
( Last edited by OwossoBorn; May 29, 2007 at 05:37 AM. )
     
duck
Fresh-Faced Recruit
Join Date: Aug 2000
Location: Perth, WA, Australia
Status: Offline
Reply With Quote
May 29, 2007, 02:30 AM
 
Slightly OT, but you should pick up those dead G3 iBooks.. I found an electronics place here in Perth that will fix them for $44/hr (and they can do 2 per hour) :-)
     
OwossoBorn
Fresh-Faced Recruit
Join Date: Oct 2005
Status: Offline
Reply With Quote
May 29, 2007, 04:07 AM
 
Well, I guess we don't get something for nothing. DVD player starts up in both OS9 and OSX, and audio works great, but the video won't display. Booted back into display-family=2 and video is back, albeit missing right edge since it's off the screen.
     
duck
Fresh-Faced Recruit
Join Date: Aug 2000
Location: Perth, WA, Australia
Status: Offline
Reply With Quote
May 29, 2007, 04:14 AM
 
OwossoBorn: what's VLC (www.videolan.org - OSX only) like playing back DVDs on these? I suspect the problem has something to do with video overlay..
     
OwossoBorn
Fresh-Faced Recruit
Join Date: Oct 2005
Status: Offline
Reply With Quote
May 29, 2007, 05:08 AM
 
Thanks for the tip Duck. I use VLC on my PCs, never tried it on OSX. It shows the video but it's too choppy. Weird how DVD player plays back perfectly smooth in both OS9 and OSX. I'll look around and see if there's another mpeg2 codec VLC can use.
     
shifuimam  (op)
Addicted to MacNN
Join Date: Aug 2006
Location: The deep backwoods of the PNW
Status: Offline
Reply With Quote
May 29, 2007, 09:46 AM
 
There may be a need to set a specific graphics-options value. How might I find what this G3 iBook I have is set to? My boyfriend's dad is letting me borrow it this week, so I can delve into the OF as much as we need to in the evenings.

<edit>
This is the awesomest computer thing I have ever done. I am so excited to get home and do this and figure out how to mount it.

here's a thought on mounting: there are four screw holes on the sides of the XGA display. You should be able to take a piece of thin metal (tin or alumnium, I guess?) and bend it at a right angle, drill some pilot holes, and use little screws (I might have extras if you need them) to attach it - then cut out the other side of the piece to fit the iBook's casing, drill pilot holes to match with the four corners where the original display was attached, and put it all together.

I'll post a diagram if this doesn't make sense.

I should clarify for anyone keeping track of this thread:

I have tried another model of the Samsung LTN121X1. It did not work. As much as I'd like to say that you can use a non-Apple display with this project, it so far appears that you need to use a 12" display from a G3 or G4 iBook or G4 Aluminum PowerBook. Even though other Samsung 12" displays appear identical in dimensions, hardware, and cabling, they won't work. I tried it and it didn't display any image properly. Sorry!!
</edit>
( Last edited by shifuimam; May 29, 2007 at 09:53 AM. )
Sell or send me your vintage Mac things if you don't want them.
     
Shuomi
Fresh-Faced Recruit
Join Date: Nov 2006
Location: Lille, Upstate France
Status: Offline
Reply With Quote
May 29, 2007, 06:45 PM
 
Hello everyone !
Count me here as another clamshell lover/modder (I have two graphite 466 clamshells upgraded to 576mb ram, 80gb/5400 rpm hard drives, DVD+RW drives and brand new batteries, one of them even has an Airport card gutted from a Dell Truemobile PCMCIA card).
I've been following this thread with a lot of interest since November (my bookmark takes me back as far as page 2), as the small screen resolution has always been the weak point for these computers in my mind. Sadly, my funds being limited, I couldn't take the risk of buying a screen and failing. Now, this is not a problem anymore, thanks to OwossoBorn's hard work.

Now, a few questions :
I've started looking into buying an iBook screen on the French eBay, will any 12.1" iBook screen work or is it only screens from G3 iBooks ? As for cables, are they hard to find, or is the cable for the screen of one generation of iBooks easier to find (thus I should favor this screen) ?

Also, for OwossoBorn : DVD playback on the clamshell iBooks is done through a hardware decoder, which only DVD player can access. To get video working again for your DVDs, you could try to switch the screen to 800x600 through the Displays prefpane. It is after all the iBook's original "normal" resolution. Don't worry about a loss in quality, DVDs are 720x576 at best.

Best, Shuomi
     
shifuimam  (op)
Addicted to MacNN
Join Date: Aug 2006
Location: The deep backwoods of the PNW
Status: Offline
Reply With Quote
May 29, 2007, 06:55 PM
 
Hi Shuomi! I do believe that any 12" screen from an Apple computer should work - this includes the 12" G3 and G4 iBooks as well as the 12" G4 aluminum PowerBooks. All use the same cable, and I'm going to guess that all are the same model of screen. My screen is from a 500MHz first-revision 12" G3 iBook, and I think that OwossoBorn's screen is from a 12" G4 iBook.

The next challenge is going to be safely securing the screen inside the clamshell's display plastics. Once we can figure this out - as well as routing the cables, which are in different places on the display compared to the original 800x600 display - we'll be home free!

Welcome to the project!
Sell or send me your vintage Mac things if you don't want them.
     
shifuimam  (op)
Addicted to MacNN
Join Date: Aug 2006
Location: The deep backwoods of the PNW
Status: Offline
Reply With Quote
May 29, 2007, 10:57 PM
 
It would appear that the DVD playback issue is some kind of video overlay problem. Since I don't have the display mounted yet, I've got my iBook hooked up to my television. I decided to try playing a DVD, and lo and behold - video appeared! So, the OS realizes we can play DVDs, and the changes we've made in OF still allow DVD playback - again, perhaps there's another setting we need to tweak in OF to closer match the 500MHz iBook's settings. Otherwise, maybe there is another DVD playing software that will work with the clamshell's hardware DVD decoding capabilities.

I'm only going to be able to have this iBook for the remainder of this week - so we need to look now if we need other OF values. I'm not too good with working in OF, so I might need some guidance as to what commands to run to make this all work.

At least we know that DVD does work. Now we just need to figure out why it doesn't work when display-family is set to 3.

In my preliminary tries at mounting this LCD, it looks like some serious modding is going to need to be done - there's a part of the big metal bracket that will need to be sawed off, and because of the thickness of the LG cable, I had to reroute it and cut out part of that thin aluminum (tin?) plate that's got holes all through it. We'll figure it out though!
Sell or send me your vintage Mac things if you don't want them.
     
OwossoBorn
Fresh-Faced Recruit
Join Date: Oct 2005
Status: Offline
Reply With Quote
May 30, 2007, 02:50 AM
 
Shuomi: Welcome aboard. I started off looking up other apple based 12.1" screen manufacturer/model #'s and then googled around for the specification pdf on them before seriously considering ebaying for one. Without having all of the different original screen model's pdf's in front of me, I cannot say if all of them had the same pinouts. My screen was originally a Samsung LT121SU-123. So after looking at the specification pdf for that model screen, I went looking for other screens with the exact same pinouts. I found more than a few that matched up, so I settled on the LTN121x1-L02. I have no idea what computer this came out of! So, I can only say with certainty that this 'upgrade' works with the screen I bought, as well as the screen randy.r bought and Shifuimam. (same model# ?) But it would appear on paper that many other screens 'should' work as well. Keep in mind I didn't use two different cables, I soldered directly to the back of the LCD, something many people would not (should not) feel comfortable doing.

By soldering my own tiny wires to the screen's connector, I was able to lay them out nicely and tape 'em down so they fit behind the screen with no cosmetic changes necessary. Good luck on whatever screen you get and on having the patience to get the connections working in a safe manor. Check twice before turning the computer back on!!

Are you sure about the limited access DVD hardware decoder? I would think any hardware DVD mpeg2 decoding would be in the ATI video chip and not some separate apple hardware. If it's on the ATI chip, then other DVD players should be able to tap into it. The readme for the VLC program specifies that one should not expect smooth playback from any g3 with VLC. Hmmm....

Shifuimam: How about laying the lid on its back, centering the screen, and filling the lid with transparent epoxy?? Would be the heaviest laptop lid, but that screen wouldn't move a bit. I started an excel spreadsheet of all the ibooks/powerbooks screen/video settings. ie.whether or not a model had display-family or not, graphic-options or not, etc.

I don't think we've touched on it yet, but with this latest display-family = 3 setting, the ability to control the backlight has gone bye bye as well. I had this happen on my 500Mhz powerbook when I cut two of the wires going to the LCD screen. Rather than re-crack open the glued lid (what an absolute pain in the arse those powerbook lids are!), I found a free system preference called LightMe 1.5 by Daniele Margutti that allows me to assign a key combination to make the backlight full/half (any two brightness settings, plus the ability to go full). It works great on the clamshell too. The color seems a bit washed out to me, but I may have spent too many hours staring at too many different LCD screens. I have noticed a few more properties to keep an eye on re: brightness. There is a backlight device that includes the following two properties: panel-family & backlight-control. Panel-family might have something to do with the type of display attached? The clamshell is set to 3 and the 500Mhz pb is set to 5. Both the latter properties were identical.

I'll bet getting the DVD video to show up again is simply a matter of finding the right place in OSX to tweak. Although, video does work when display-family is set to 1 or 2, it may just be another OF property. Speaking of property settings, from what I googled last night on graphic-options, I've seen values of 00000000, 00000001, 00000010, 00000008. I've tried all with no luck seeing video. Oh, and yes I've tried all three resolutions available with no joy.

When I google +open +firmware +"graphic-options", I get a ton of pages referencing the screen spanning OF tweak. when googling +open +firmware +"display-family", the number one hit is this thread. Number two is my flickr.com photo set. So, I'm guessing no one has noticed/tweaked this property before AND posted about it online.

EDIT: I just found a great pdf from Apple on Open Firmware, designing pci card drivers, the boot process and hardware in general: http://developer.apple.com/documenta...ds_Drivers.pdf
I'm not sure how old it is, but it talks of the differences between old world and new world mac boot process.
( Last edited by OwossoBorn; May 30, 2007 at 03:50 AM. )
     
shifuimam  (op)
Addicted to MacNN
Join Date: Aug 2006
Location: The deep backwoods of the PNW
Status: Offline
Reply With Quote
May 30, 2007, 08:48 AM
 
Damn - not being able to control display brightness is a downside. I'd like to be able to control more than just two or three settings - I'd rather have the whole range.

How did you find he panel-family value? I'll find it tonight on this 500MHz iBook if you can tell me what to look for or what OF command to run. Did you try setting yours to 5 to see what it did?

Do you suppose there's another display-family we could try? I looked on my boyfriend's 12" 1.33GHz G4 PowerBook in OF, but it only showed me graphic-options when I ran dev / .properties - it didn't give me a display-family.

Also - is the washed-out color showing after you ran the LightMe app, or is it like that all the time? My display is extremely sharp, clear, and bright - perhaps your display is just older or in worse used condition. Also, try running the Color Assistant thing in OS X to recalibrate your display - it might help.
Sell or send me your vintage Mac things if you don't want them.
     
OwossoBorn
Fresh-Faced Recruit
Join Date: Oct 2005
Status: Offline
Reply With Quote
May 30, 2007, 11:14 PM
 
I have LightMe setup to switch between half/full brightness. I believe you can adjust it down to a certain level, then back to where it was before. By clicking the 'restore' link again, you can pump it up to full brightness. Not the same as OSX brightness control, but way better than being stuck at 50% brightness, which is where I was on two machines until I found this.

I think the washed out sensation was because the color file used for this display probably isn't meant for this display. It's using a standard Color LCD color file as the display is named Color LCD in display prefs.

To find the panel-family property, go into OF, type:
dev /pci@f2000000/mac-io@17/backlight@f300 .properties<enter>

I just erased my nvramrc script and rebooted to see what the default is for panel-family, and it's 3. So it doesn't change when using the display-family=3 property. I just reboot again with panel-family=5 (default for the 800Mhz powerbook) and nothing changed. Still no brightness.

Edit: GOT IT! I found my printout for the 1920x1200 Hid Def screen guy and followed his instructions for regaining brightness and it worked. I now have 1024x768 with normal brightness control. I can also use LightMe to jump between any two brightness settings. I also opened up the copied default display file (see link above) and changed the name of my lcd in display prefs to "Randy's Hacked LCD." Even say's it in the display menu item.
( Last edited by OwossoBorn; May 31, 2007 at 12:15 AM. )
     
OwossoBorn
Fresh-Faced Recruit
Join Date: Oct 2005
Status: Offline
Reply With Quote
May 31, 2007, 03:08 AM
 
I have removed my post due to the whole thing reverting back to 800x600. I had 1024x768 during OF, bootup, OSX/OS9, normal brightness control, video in DVD player, mirroring AND screen spanning. I rebooted a few times with no change. "This was it" I thought... then *poof* back to 800x768. The above post re: the color file edit in 1920x1200 guy should still give you full brightness control.

I'm convinced now that OSX has some files/settings re: screen size. It still boots up 1024x768, but reverts back to 800x600 when OSX splash screen appears. Opposite of how it's been.

Hopefully I'll have it sussed out and post the instructions soon.
     
shifuimam  (op)
Addicted to MacNN
Join Date: Aug 2006
Location: The deep backwoods of the PNW
Status: Offline
Reply With Quote
May 31, 2007, 08:29 AM
 
I'm a little confused - right now with using display-family=3 and that edit for the brightness, we'll still have XGA, right? Or is that not even working anymore?

Sell or send me your vintage Mac things if you don't want them.
     
OwossoBorn
Fresh-Faced Recruit
Join Date: Oct 2005
Status: Offline
Reply With Quote
May 31, 2007, 02:20 PM
 
Yes. Just have display-family set to 3 in nvedit and you'll have 1024x768. To add normal brightness control, follow the link to the 1920x1200 guy's how-to page in my second to last post and do what he does with the DisplayPropertyID files. ie.find out which DisplayPropertyID file your computer currently is using (which is based upon what display it thinks is connected), copy the DisplayVendorID-610/DisplayPropertyID-9c20 file (apple's default color lcd file) to your desktop, rename it to match the one your computer is using and copy it back to the right location, overwriting the one your computer is using. His instructions are clear, that's why I'm not duplicating them here. Although, I may want to update/extend his instructions with a quick how-to on changing the ownership of the file prior to copying back over the one your computer uses. If you know how, set the owner to system and the group to wheel fist. When I do what he outlines and reboot, keeping display-family set to 3, I get normal brightness and 1024x768.

I had stumbled upon something that unlocked everything, including video in DVD, mirroring AND spanning etc... It survived a few reboots, so I checked out a DVD. While watching the DVD, I plugged in my headphones, I must have a bad AV jack because my screen went blue as if detecting a new screen. Sure enough, it came back in dual screen mode (not sue if it was mirroring or spanning) and the DVD video was black again. No matter how many times I reset/reprogrammed/reboot, I couldn't get back to the holy grail of everything working. In fact, it had reverted all the way back to just 800x600 again. I did not think to look at which DisplayPropertyID file the computer used for those few reboots!!! I could KICK myself for that! I found some other discussions of people editing kext files and looking for EDID strings etc.. So the rabbit hole just got deeper.

Gotta run
( Last edited by OwossoBorn; May 31, 2007 at 02:26 PM. )
     
Shuomi
Fresh-Faced Recruit
Join Date: Nov 2006
Location: Lille, Upstate France
Status: Offline
Reply With Quote
May 31, 2007, 04:01 PM
 
I have managed to secure a display from a iBook G4 in Germany, for 75 euros, which is a bit more than I wanted to spend. Hopefully it'll be there by next week. Now I can start digging through the thread to find info about what cable to buy.


Keep up the good work !
     
shifuimam  (op)
Addicted to MacNN
Join Date: Aug 2006
Location: The deep backwoods of the PNW
Status: Offline
Reply With Quote
May 31, 2007, 06:35 PM
 
I entered in that OF command. Here's what I get on the 500Mhz 12" G3 iBook:
[codex]
name backlight
device_type backlight
reg 0000f300 00000000
panel-family 00000007
backlight-control 61746900
bklt 1f070019 ff000000
[/codex]

panel-family is 7 here - I believe it was 3 on the clamshells. If this is just related to the backlight, it probably won't help us with the DVD overlay problem, though.

<edit>
Big fat negative on panel-family. Setting that value put the display back to 800x600 in OS X.

<edit2>
However, brightness settings worked without any tweaks on my clamshell - weird! I just have display-family=3 in my nvramrc.
( Last edited by shifuimam; May 31, 2007 at 06:44 PM. )
Sell or send me your vintage Mac things if you don't want them.
     
OwossoBorn
Fresh-Faced Recruit
Join Date: Oct 2005
Status: Offline
Reply With Quote
May 31, 2007, 11:35 PM
 
Shifuimam: Most anytime your clamshell boots up in 800x600 at this point, it's probably loading up the DisplayProductID-9c05 color file, which gives you brightness control. When trying out new properties, make sure to add them after the working lines in nvedit. Are you prefacing the panel-family property setting with the line " pci@f2000000/mac-io@17/backlight@f300" select-dev? If not, then that could be why nothing is changing. If you are selecting " /" (root device) and setting display-property, then set panel-family there, that property would be created under the root device, not the backlight device. I've added a select-dev command, trying to get into some other device, and create a 1 encode-int " testing" property command, then boot into OF and go to that same device and hit .properties to see if it appears. If so, I know I can get into that device and manipulate properties.

The clamshell's panel-family default is 3, the 800Mhz powerbook's is 5, and now your ibook is 7. As you would say, "curiouser..." Prior to adding in another "select-dev" command, I add a line of unselect-dev by itself, which sets the device tree back to it's root. Actually, / = root device, so it sets the current device to one level above the first root device. You can type unselect-dev when in OF and then words <return> to see pages and pages of commands that OF understands. It's a print out of all the words across all of the devices.

Another little tip I just found last night: When copying over the DisplayProductID-9c20 file to get brightness, I wanted to change how it announces itself so I could tell which file is being loaded when trying new property settings. I left everything the way it was except for Manufacturer, Model & name. Brightness died. I thought the other 24 property settings in the file is what allowed brightness, but it also includes the other display info. Even just changing the display name, brightness died. Sheesh.

Shuomi: Congratulations on securing the display!! How many people does that make now? Randy.r, Shifuimam, Me, Shuomi... I think Maxwell Smart (LOVE that show) was trying to find one too.

I scored a used 15.4" 1280x854 display for the 800mhz powerbook. It has a red vertical line in the middle just like my clamshell. When I replace it, I'll take the old one and hook it up to the clamshell with display-family set to 2 and see if I can get 1280x854 out of it.
     
OwossoBorn
Fresh-Faced Recruit
Join Date: Oct 2005
Status: Offline
Reply With Quote
May 31, 2007, 11:59 PM
 
If you want to know what a certain value of a device property is from within OS X, go into a terminal window and type the following:

ioreg -l -w0 | grep "PropertyNameGoesHere"
ioreg -{LowerCaseL} -w{zero} {pipe} grep "PropertyNameGoesHere"

You don't have to know the exact device tree path to get to the device property, ioreg searches the entire registry to find it. I just typed ioreg -l -w0 | grep "panel-family" and it replied with "panel-family" = <00000003>. It's a great way to see if the properties you are trying to set in nvramrc are actually taking or not. The results of ioreg don't tell you which device the property is attached to.

Another convenient way to view device properties in OSX is to use the IORegistryExplorer that comes with XCode.

if we were to do an ioreg dump with a default clamshell, then do another dump with a property or two changed, we could then compare the two files and see exactly what changed between the two computer states. Or compare a default clamshell registry dump to a default ibook snow 1024x768 registry dump.
( Last edited by OwossoBorn; Jun 1, 2007 at 02:41 AM. )
     
shifuimam  (op)
Addicted to MacNN
Join Date: Aug 2006
Location: The deep backwoods of the PNW
Status: Offline
Reply With Quote
Jun 1, 2007, 10:54 AM
 
The brightness thing was interesting for me.

I only have "display-family=3" set in nvramrc - just like what you did. But my brightness controls on my keyboard work 100%. I wonder why?

DVD only works on a TV, though - not on the LCD.
Sell or send me your vintage Mac things if you don't want them.
     
 
Thread Tools
 
Forum Links
Forum Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Top
Privacy Policy
All times are GMT -4. The time now is 02:43 PM.
All contents of these forums © 1995-2017 MacNN. All rights reserved.
Branding + Design: www.gesamtbild.com
vBulletin v.3.8.8 © 2000-2017, Jelsoft Enterprises Ltd.,