Working with VESA 1.2

Another little something I should mention, either for my own reference in the future, or in case someone else comes stumbling through here seeking help with very old graphics cards.

The video card in my Pentium is a horrid old relic, a Chips and Technologies F65548. It’ll actually do a graphical desktop, and I’ve used it for some unusual setups in the past — IceWM, Awesome, even Openbox once or twice (with terrible results 😦 ). But it’s a slow beast, doesn’t like to work too hard, and would probably rather be sleeping out it’s physical lifespan in the bottom of a landfill, somewhere on Honshu.

Another one of its eccentricities is that it predates VESA 2.0, which is, as I understand it, pretty much the standard for VESA graphics any more. I am not so much a hardware junkie to try and explain that, but suffice to say that it can’t do all the regular framebuffer settings that a machine only a year or two younger can do.

The consequence is that I’m left with a sort of “porthole” effect, with basically a 640×480 lit area surrounded by a black frame. It’s not a terribly annoying thing, but it does irritate me for wasted screen space.

The alternatives are to run X on the machine, which is possible but somewhat sluggish. X, for all its faults, doesn’t seem to have a problem utilizing the entire screen. Which means I could conceivably run Awesome and take advantage of the full 800×600.

On the other hand, I could stick to the console, suffer the frame effect and get as much speed as possible out of a 100Mhz machine. So my choices are, screen space or speed?

Lately I’ve been sticking to speed, because I found a small loophole in the situation. I accidentally fed it the wrong VGA setting one day, and booted to a prompt asking me for a correction to the video mode. And an option to “scan” for other modes.

Making a long story short, I found I could force-feed the kernel line an 80×34 textmode screen, which pops the frame effect out a little bit, and gives me more area to work with. If you find your way to the same screen setup menu and find a mode you want to keep, add it to the kernel line with vga=0xHEX, where HEX is the three-digit code for the dimensions you want.

Once that was working, I could change the terminal font to a 14-point Terminus (12-point won’t work for me), and get a few more lines around the bottom.

So in short, picking a video mode with extra lines forced the graphics system to open up a little bit, and picking a different font gave me more lines still. Add screen and dvtm, a few extra frills, and I can enjoy a little more space without suffering a heavy drag on a machine that has very little speed to start with.

In any case, if you have a machine that refuses to play nicely with the newer framebuffer settings (and I say that knowing full well that anyone in the same boat as me is extremely rare), you might try that trick, and see if it helps. 🙂

P.S.: I’d show you a screenshot, but … there’s no framebuffer, remember? 😛


6 thoughts on “Working with VESA 1.2

  1. thealphanerd

    There is also two ways for screenshots:

    1. Find some way to print the terminal output on a printer, then scan it. Requires cups and sane.

    2. Get xorg, and fire up an xterm session.

  2. Pingback: Do more with less « Motho ke motho ka botho

  3. Pingback: An apology, and an update « Motho ke motho ka botho

  4. Mulenmar

    This is probably something you’ve already considered, but have you tried building a custom framebuffer-only Xserver for it? Not something I could do — yet, anyway 8~J — but if you could and show us how, it would be beyond awesome.

  5. Pingback: Life just isn’t fair « Motho ke motho ka botho

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s