Re: Still not understanding pixmaps vs RGBs



Havoc Pennington wrote:

window, the server may take some default action (e.g. clearing to
background color) before the gtk app gets a look at the event?

Yes that's right. Exactly what happens depends on the window
background, which can be a solid color, a tiled pixmap, or "None"


Aha, this explains some behavior I see when I switch video modes.

In GTK 2 everything is automatically double-buffered though, so you
wouldn't _see_ the tiles most likely.

Since you have an embedded system you could always go in gdkrgb.c,
find the tile size, and change it. ;-)


;) Yes I can do this. I'd like to avoid modifying any of the underlying libraries though, if possible. One of the reasons for choosing an Intel-compatible architecture, and Linux, is that it permits end-users to develop their own software extensions for our device.

Thus, we can provide documentation to the prospective developer that reads something like this:

1. Install Red Hat 7.2 on your development PC.
2. Learn to program X ;)
3. Our application will call your application using the following protocols: blah, blah, blah-de, blah.
4. Test your application in vitro on your PC.
5. Install your application on our device using our system XYZ and test on the real hardware.

Any subtle trickery I do to standard libraries increases the amount of head-scratching between step 4 and the implicit step 6, "ship your software". Any technical head-scratching like that means a support call that will instantly be escalated to me because I'm the only one in our company who understands this code.


Does the X server ONLY work with video RAM? This system has 3Mb video

The server can fall back to main memory, but I'm told it has kind of a
dumb algorithm (it doesn't "swap out" things from video RAM, just puts
the first pixmaps to be created in video RAM).


OK. I really don't care what else it does with video RAM :) In my system there is no speed penalty for data transfer into/out of video RAM vs. system memory.


The system I'm using is a National Semiconductor Geode processor with
a Cyrix 5530 companion IC. This is a unified memory architecture. All


Yeah, you don't have the luxury of just figuring the Radeon will be
fast like the rest of us do. ;-)


Embedded programming (and I regard this project as barely borderline embedded programming, it's more like a PC OEMing job) has its own pleasures and luxuries though. Mostly, being able to tell the user "anything even slightly third party is your own problem and by the way, you just voided your warranty" ;).

And by using the GX1 processor, I can build a complete 300MHz PC with SVGA, Ethernet, audio, 256Mb RAM, USB etc in the same footprint as a 3.5" hard drive (but thinner), requiring only +5V at 1A, for about $100 :)

--
-- Lewin A.R.W. Edwards (Embedded Engineer)
Work     http://www.digi-frame.com/
Personal http://www.larwe.com/
Tel (914) 937-4090 9am-6pm ET M-F






[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]