Bert Freudenberg wrote: > > On 25.11.2008, at 17:37, Jordan Crouse wrote: > >> Bert Freudenberg wrote: >>> On 25.11.2008, at 11:57, Strider wrote: >>>> Hi, >>>> I have a XO Laptop which is a nice machine machine with a high res >>>> display of 1200x900 pixels. The problem with this is that the >>>> laptop isn't powerful enugh to handle fullscreen applications at >>>> this resolution. If only the display could switch to a lower >>>> resolution things would be much better but it seems that this >>>> laptop only supports a single resolution. >>>> >>>> So I was wondering if it would be possible of simulating lower res >>>> at a low level, that is the xf86-video-geode driver. >>>> I'm not an expert in video drivers but i imagine that there are >>>> functions to request a pixel to be drawn on screen based on what's >>>> in the video ram. >>>> Now let's say that it's not one pixel but two that we put on >>>> screen, and that we draw each lines two times. That would result in >>>> a 600x450 resolution. >>>> If we do the same thing but repating the operations three times , >>>> we would have a 400x300 resolution. >>>> Some emulators have a scale option to do such a thing and manage it >>>> quite well, but if we had such an option in the video driver, the >>>> result would be even faster ! >>>> >>>> So what do you think about this? Is it possible ? >>> The Geode actually can do real upscaling (that is, scale multiple >>> graphics resolutions to the panel resolution), it works fine on >>> other machines and LCDs. But latest word is that this somehow >>> interacts badly with our DCON, so no-one has gotten it to work >>> correctly on the XO yet. >> >> Indeed. I think there is a DCON interaction happening, because the >> mouse gets "corrupted" during upscaling as well - and that implies >> that the issue is happening after the screen is constructed. The >> upscaling works fine on a CRT and on a "standard" TFT panel, so that >> is what leads me back to the DCON. Its also a long shot that the >> 1200x900 resolution is confusing the scaler, but I doubt it since the >> aspect ratio is still 4:3. I would love for other people to try the >> driver (it is in the latest debxo, I think); perhaps you can see the >> pattern that I can't. >> >>> There still may be hope, because the video upscaler can take RGB >>> 5:6:5 data, so in theory a lower-res 16 bpp frame buffer could be >>> upscaled on-the-fly (and the upscaler does 30 fps easily). But I >>> guess getting this to work would require a very determined X hacker ... >> >> The RGB video overlay should just work (TM). So it would take less of >> a determined X hacker, and more of a determined application hacker to >> put all the pieces together. > > > Well, I meant that this could be used to actually provide, say, an > 800x600x16 mode in the driver, without having to hack applications. > While adapting a single app may be comparatively easy, it's still a > major hassle to patch each and every app. Having it in the driver would > make things just work (TM). But that would be a major hack, don't you > agree?
So if I understand what you are getting at - you want to set up a single overlay over the whole screen, and render everything on that? Thats probably doable - you could set up a shadow framebuffer like we do for rotation, and hook the damage code into the video overlay. It might work out well, but it would preclude using the video overlay for anything else (such as, video). It would probably also preclude rotation - maybe not. But rather then invent fanciful ways to handle this, the efforts would be better spent figuring out how to fix the current driver. Mitch reports that the Windows driver works just fine, so clearly the bug is on our side. We need developers to start understanding how the driver works. Everybody with a professional interest in the X driver has moved on to other pastures, and OLPC desperately needs community members to pick up the slack. Jordan _______________________________________________ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel