No X Display pm ThinkPad - Out of Ideas


Forum: Laptops
Topic: No X Display pm ThinkPad - Out of Ideas
started by: mattruben

Posted by mattruben on Feb. 08 2006,02:57
Apologies in advance for my noob-ness, but here goes...

Setup: ThinkPad 701c, 16MB RAM, floppy drive, no CD
DSL Setup: "poorman" install - boot from floppy, "KNOPPIX" directory/file on HD (on C drive of a Windows volume)

DSL boots from floppy, and finds the Knoppix file on hda1, and boots from it. But I cannot for the life of me successfully start up X Windows.

I have tried the following cheatcodes:
- fb640x480
- fb800x600
- dsl vga=769 (that's 640x480, 256 colors, the native capability of the 701c's screen)
- lowram (similar to "dsl failsafe" but also sets the X server to "minimal")
- dsl xsetup (booter allows you to configure X manually)

In the X setup process I've tried both fb and vesa.

- with fb I get a fatal IO error (the one that's been cited by others in this forum) and X won't even start

- with vesa I select 640x480, 256 colors, and X starts but I get nothing on the screen.

I'm nearing the end of my rope here. Any ideas?

TIA.

Best,
Matt

Posted by cbagger01 on Feb. 08 2006,07:14
How about:

dsl vga=769 xsetup

and then choose the xfbdev server when prompted?

Posted by mattruben on Feb. 08 2006,16:04
Quote (cbagger01 @ Feb. 08 2006,02:14)
How about:

dsl vga=769 xsetup

and then choose the xfbdev server when prompted?

Thanks for the suggestion. I should have mentioned in my first post that I have also tried many combinations of the cheatcodes I listed.

I haven't actually tried "dsl=769 xsetup", but ever since the first time I used "dsl xsetup," I get the xsetup dialogs even when I don't use the xsetup cheatcode. So in other words, I have used dsl=769 and then gone through the xsetup process, and selected xfbdev - whenever I select xfbdev, I get a fatal IO error 104 and X won't start up.

I gather from reading around here that this older laptop really "wants" xfbdev rather than xvesa (although if I'm not mistaken the booter sees the screen as a vesa vga). But with xfbdev selected it just refuses to start up X.

Since my original post I've also tries some additional cheatcodes, based on Web pages of people who've gotten other versions of Linux (or BSD) running with X on their 701c's. I've tried dsl xscreen=640x480, and I've tried setting maxhsync and vsync values, but still no love.

Again, TIA for any ideas.

Best,
Matt

Posted by mattruben on Feb. 08 2006,20:56
FYI a little more info on my situation:

Just before X attempts to start, I get the following error:

/opt/bootlocal.sh no such file or directory

After that, there's one more line about setting up something in .Xauthority.

Then, when I've chosen xfbdev as my Xserver, the IO error I mentioned before includes the following: "could not find module fb0"

It then kicks me back to a CLI prompt.

When I've chosen xvesa as my Xserver, the IO error doesn't appear and X starts (I think), but to a black/blank screen.

Matt

Posted by doobit on Feb. 08 2006,21:12
You may have corrupted something in your file system, or you don't have a complete install if it can't find /opt/bootlocal.sh
Posted by mattruben on Feb. 08 2006,23:38
Quote (doobit @ Feb. 08 2006,16:12)
You may have corrupted something in your file system, or you don't have a complete install if it can't find /opt/bootlocal.sh

Thanks for this info - I was unaware.

Question: I copied the KNOPPIX and BOOT directories over to the computer's C: drive as per the "alternative poorman's install, boot from floppy" method (in the DSL wiki IIRC).

But I think I copied these directories from the isolinux version of the DSL CD. Given that my machine is very old, and given that the boot floppy appears to use syslinux to boot, should I try again by copying over the KNOPPIX and BOOT directories from the syslinux version of the DSL CD? Do you think that might make a difference?

Matt

Posted by cbagger01 on Feb. 09 2006,04:40
No, it should not make a difference.  The booting is actually done from the files on the floppy and then the knoppix file is used.  So the isolinux files are ignored unless you choose to run the frugal or hd install scripts.

I also doubt that your filesystem is corrupted.  Usually, you get something like "cloop error" messages when your knoppix file is corrupted, and you did not see these messages.

My guess is that you get some kinda error message like

"undefined mode selected" or something like that and then you press space and boot in NON-framebuffer mode, which would explain why the fb0 error happens when you try to use the framebuffer for X-Windows.

Try a bunch of alternative framebuffer resolutions like 771 or 785

Posted by mattruben on Feb. 09 2006,06:45
Quote (cbagger01 @ Feb. 08 2006,23:40)
No, it should not make a difference.  The booting is actually done from the files on the floppy and then the knoppix file is used.  So the isolinux files are ignored unless you choose to run the frugal or hd install scripts.

I also doubt that your filesystem is corrupted.  Usually, you get something like "cloop error" messages when your knoppix file is corrupted, and you did not see these messages.

My guess is that you get some kinda error message like

"undefined mode selected" or something like that and then you press space and boot in NON-framebuffer mode, which would explain why the fb0 error happens when you try to use the framebuffer for X-Windows.

Try a bunch of alternative framebuffer resolutions like 771 or 785

Thanks for the clarification. This is extremely helpful.

But I am still confused on one point of your response:

- I understand how to specify alternative framebuffer resolutions - I use "dsl vga=771" type cheatcodes at boot, yes?

- I do indeed get the "machine has passed an undefined mode" error early on in the boot process. Sometimes I press space, and other times I press enter and select 0 for 80x25 text display.

What I don't understand is how these two are related. For example, when I press Enter and 0 to choose 80x25, am I booting in framebuffer mode or not? If not, would I boot in framebuffer mode if I made another choice (i.e. 80x28 or something)?

Relatedly, the reason I've been using 769 as my vga= value is because I thought that was a display parameter for the actual screen, as opposed to a framebuffer value - in other words, I haven't yet tried the vga=788 that many people use, because that's for a resolution (800x600) not supported by the 701c's video circuitry (its screen is 640x480-only).

So - then is it true that the vga= cheatcode controls only the framebuffer resolution/size?

And - other than not pressing space - how do I ensure I'm booting in framebuffer mode after I get the "undefined mode" error?

I think I'm getting close to figuring this out.

TIA again for any further assistance. Sorry to be such a bother.

Best,
Matt

Posted by cbagger01 on Feb. 09 2006,18:01
Let me explain a little further.

It is possible to boot DSL with a VGA text mode console.  You can do this by either booting with:

dsl vga=normal

or by NOT entering a graphical framebuffer resolution code at the Undefined Mode prompt.

However, you DO need a valid graphical frame buffer up and running in order to use the xfbdev server.

The easiest way to tell if you are using a graphical frame buffer mode that is valid for your computer is:

1) You don't get the "Undefined Mode" message.
2) When the bootup text appears on your screen, a small image of a penguin will appear in the upper left hand corner of your monitor screen.

So you need to try other vga=xxx codes until you find one that is supported by your PC.  Or maybe search google for your laptop model and linux and framebuffer or "frame buffer".

Once you get this far, you can then boot with your new xxx code like this:

dsl vga=xxx xsetup

and choose the xfbdev server when prompted.

Hope this helps.

Posted by mattruben on Feb. 11 2006,05:15
Thanks again, cbagger01. Very helpful, and I think I'm finally zeroing in on the problem.

You're correct about the framebuffer - I don't get the little Penguin graphic, and I get the undefined mode error. I haven't exhausted every single vga= cheatcode, but I've tried several and it makes no difference.

From doing a little Googling on the TP701c with other flavors of Linux, one recurrent theme is that users seem to have to specify the graphics chip in their XFree86 Config files, under a "device" heading, like this:

Section "Device"
Identifier  "Card0"
Driver      "chips"
ChipSet     "ct65545"
VideoRam    1024
BusID       "ISA"
EndSection

For some reason, according to the sites I've checked, the installer misidentifies the graphics chip.

So either the graphics chip needs to be specified via a dsl cheatcode somehow, or else support for that chip isn't in the compile of the linux kernel used by dsl (which I sort of doubt) - or I need to be able to call up the X86Config file at the DSL terminal prompt, edit it, save it, and then try starting X again.

Ugh. Any suggestions?  A dsl cheatcode would obviously be easiest, but somehow I doubt I could do that.

It's a shame - I really like what I've seen of DSL so far. The booter recognizes the TP's PCMCIA slot, and the ancient IBM enet PC card in the slot (more than I can for Windows 3 and OS/2 Warp on this particular model of Thinkpad), and it even starts DHCP broadcasting, all of which I find absolutely amazing for an uncustomized *nix running "live".

So anyway, if anyone has any ideas I'd love to hear them.

Thanks!

Matt

Posted by mattruben on Feb. 11 2006,07:30
Okay, I've done some more searching here and elsewhere, and have found out the following:

- No one has gotten X running with DSL on a ThinkPad 701c, except by doing a HD install and then downloading and installing xFree86, which allows for a proper XConfig file in which one can properly specify the exact graphics chip/device.

- Doing an "Xvesa -listmodes" brings up a number of modes for the 701's graphics chip (a Chips and Technology 65545 with 1MB VRAM). However, all the color modes say "(no linear framebuffer)" - which I believe means that this graphics chip is vesa 1.2 compliant and NOT vesa 2.0 compliant. That in turn means that there's no way to make it work with the xvesa or xfbdev drivers included in DSL.

- The only modes that are not listed as "no linear framebuffer" are monochrome modes. I took the hex code for 640x480x1 (i.e. 640x480 monochrome), converted it to decimal, and used a cheatcode with it: "dsl vga=529". But this code appears to be unsupported, as it does not prevent the "undefined mode number" error during early boot, and it does not enable X to start up properly with fbdev or xvesa.

So... it looks like the ThinkPad 701 and DSL are a no-go combination in a Live/standard version, unless/until someone makes a VESA 1.2-compatible fbdev, or perhaps finds a way to make the xvesa/fbdev X system configurable to the extent that XFree86 is.

Oh well.  :(

Matt

Posted by cbagger01 on Feb. 11 2006,22:31
The xfbdev server does not care about compatibility.

It just takes your currently activated framebuffer driver (from the linux kernel) and uses it to run X-Windows graphics.

I agree that XVesa does not support VESA1.2 but xfbdev does not understand or even talk to your video card's BIOS or low level video driver.

So the real solution is to find a linux framebuffer cheatcode (similar to vga=771) that works with your video card.  Maybe googling for either the laptop model number or the chipset model number and combined with "linux frame buffer" will get you somewhere.

Otherwise, you will need to use XFree86.

As far as I know (I don't use it), it IS POSSIBLE to use the XFree86.dsl when running from livecd and not just for a full hd install.

HOWEVER, you will probably need a decent amount or RAM + SWAP SPACE in order to use it.

Posted by mattruben on Feb. 11 2006,22:48
Quote (cbagger01 @ Feb. 11 2006,17:31)
The xfbdev server does not care about compatibility.

It just takes your currently activated framebuffer driver (from the linux kernel) and uses it to run X-Windows graphics.

[snip]

So the real solution is to find a linux framebuffer cheatcode (similar to vga=771) that works with your video card.  Maybe googling for either the laptop model number or the chipset model number and combined with "linux frame buffer" will get you somewhere.

Thanks again for your continued help, cbagger01.

I have done a lot of googling on the TP701c and framebuffer, and so far I haven't turned up any success stories that don't make use of xfree86. (I don't have anything against xfree86, but as you point out it's rather resource-intensive, which pretty much negates most of the benefits of using DSL on this old machine.)

When I use "vga=normal" I don't get the "undefined mode number" error during the boot process. But I still don't get the Penguin graphic, and X still won't work (with xfbdev it's the fb0 module error; with xvesa it's a black screen).

I do still have a couple of vga cheatcodes left to try, but my feeling is that it's probably going to be a no-go.

Also, for the fb cheatcodes, I wish I could try fb640x480, but apparently there's no support for that in the kernel.

Best,
Matt

Posted by mattruben on Feb. 18 2006,06:28
Update - I've tried every single supported VGA cheatcode and I cannot get X to load - no supported framebuffer for the graphics chip in the Thinkpad 701c.  :(

Such a shame - during boot DSL detects a PCMCIA enet card in the machine and automatically starts up TCP/IP and (apparently) gets DHCP info from my router - something no other *nix or old-school OS does.

Matt

Powered by Ikonboard 3.1.2a
Ikonboard © 2001 Jarvis Entertainment Group, Inc.