Beta Improved Sdl


Wow, this looks awesome!

I know nothing about hardware scaling, can we have some details? Is this a bicubic scaler? Are there several types of scaler available? Can the pixel-based scaler like scale2x and co be done in hardware?
 
Thanks Notaz, from my limited understanding of such things this looks very promising.

Would it be possible to include this in a hotfix? When any bugs / undocumented features are ironed out that is. It would be nice if it could be, as it makes sense that all Pandoras should be running the same improved code for SDL if possible.
 
ok this one should work with uae4all:
http://notaz.gp2x.de/releases/pandora/omapsdl_r2.zip

timothee said:
I know nothing about hardware scaling, can we have some details? Is this a bicubic scaler? Are there several types of scaler available? Can the pixel-based scaler like scale2x and co be done in hardware?
It's 5-tap polyphase FIR filter, it has been discussed several times here on these boards. It's possible to customize it or make it simple nearest neighbor filter by sending quotients to the hardware (firmware provides ways to do that), but I doubt it can do stuff like scale2x.

Mr Loon said:
Would it be possible to include this in a hotfix? When any bugs / undocumented features are ironed out that is. It would be nice if it could be, as it makes sense that all Pandoras should be running the same improved code for SDL if possible.
I guess we'll include it, but every app (or at least it's launch script) needs to be updated to make use of this, so there is no "automatic" benefit.
 
Last edited by a moderator:
notaz said:
I guess we'll include it, but every app (or at least it's launch script) needs to be updated to make use of this, so there is no "automatic" benefit.
You did'nt touched the other drivers, nor made this drivers the default one. So it will be safe for the others apps ?
 
Last edited by a moderator:
notaz said:
ok this one should work with uae4all:
http://notaz.gp2x.de/releases/pandora/omapsdl_r2.zip
Great. Thanks a lot! :)

(will try it tomorrow)
 
Last edited by a moderator:
It works now - as long as you don't draw more than 240 lines in UAE4All.
If you use a resolution of e.g. 320x256 for the SDL_Surface it won't be scaled to use the full SDL_OMAP_LAYER_SIZE.

With SteveM's modded SDL this scales 320x256 to fully use 600x480 pixels in the middle of the screen (100 px wide black bars on left and right):
Code:
export SDL_VIDEODRIVER=fbcon
export SDL_FBDEV=/dev/fb1
export SDL_FB_BROKEN_MODES=1
ofbset -fb $SDL_FBDEV -pos 100 0 -size 600 480 -mem 144000 -en 1
fbset -fb $SDL_FBDEV -g 320 256 320 256 16
LD_PRELOAD=./libSDL-1.2.so.0.11.3 op_runfbapp ./uae4all_fame 256
With your SDL this just creates a small 320x256 rectangle inside the 600x480 area where gfx are drawn:
Code:
export SDL_VIDEODRIVER=omapdss
export SDL_OMAP_LAYER_SIZE=600x480
LD_PRELOAD=./libSDL-1.2.so.0 ./uae4all_fame 256    //uses 320x256 SDL_Surface
Could you please have a look at this?
 
Tried it with GnuBoy, seems to freeze. Black screen and not even the Pandora-Button (run from MiniMenu) doesn't quit it.
 
Thanks for the great work again Notaz.

I don't code but anything that gets rid of that terrible screen tearing like in the previous SDL is certainly welcome :)
 
notaz said:
Let's try this one then:
http://notaz.gp2x.de/releases/pandora/omapsdl_r3.zip
Thanks a lot - now it works correctly.

Unfortunately with doublebuffering there's a bug in UAE4All causing to constantly switch between the emulated gfx and the GUI's background pic. Don't know how to fix this. But that has nothing to do with your SDL.
 
Last edited by a moderator:
EvilDragon said:
Tried it with GnuBoy, seems to freeze. Black screen and not even the Pandora-Button (run from MiniMenu) doesn't quit it.
Couldn't reproduce, I'll need a testcase from you I guess.
 
Last edited by a moderator:
notaz said:
I wasn't too happy there was still no improved SDL for pandora so I did my own. This version has doublebuffering, vsync and hardware scaling support (plus many new bugs I guess). I don't plan to work on it any further (except bugfixes maybe), so feel free to make a better one/fork this one/send patches/whatever.

To use it, you need to copy it somewhere and set LD_LIBRARY_PATH=/there/ so it gets loaded instead of real SDL. You also need to set SDL_VIDEODRIVER=omapdss environment variable, see readme for further details.

binaries:
http://notaz.gp2x.de/releases/pandora/omapsdl_latest.zip
source (git):
git://notaz.gp2x.de/~notaz/sdl_omap.git

bloody hell! now i know why pickle said he has vsync for the latest giana's return v1.0 :) (and evildragon told me about hardware fullscreen scaling...) so a big thanks for indirectly making giana's return a nicer game :D
-koj
 
Last edited by a moderator:
Hi,

Is "hardware surfaces or hardware blitting or any other use of hardware acceleration for faster rendering/blitting operation" in the works ?

It could be useful to some projects :)

EDIT:

From SDL Wiki:

3. Special features in SDL 1.3

* Full 3D hardware acceleration
* Support for OpenGL 3.0+
* Support for multiple windows
* Support for multiple displays
* Support for multiple mice, tablets, etc.
* Force Feedback available on Windows, Mac OS X and Linux

I had a look at this 1.3 version, there is a Makefile.pandora in the sources and this in the README file:

SDL 1.3 with open pandora console support ( http://openpandora.org/ )
=====================================================================

- A pandora specific video driver was writed to allow SDL 1.3 with OpenGL ES
support to work on the pandora under the framebuffer. This driver do not have
input support for now, so if you use it you will have to add your own control code.
The video driver name is "pandora" so if you have problem running it from
the framebuffer, try to set the following variable before starting your application :
"export SDL_VIDEODRIVER=pandora"

- OpenGL ES support was added to the x11 driver, so it's working like the normal
x11 driver one with OpenGLX support, with SDL input event's etc..


(Cpasjuste)

I guess these are good news :D

EDIT 2: I've removed Cpasjuste real name and e-mail address, for privacy reasons...

Bye and thanks, Magic Sam
 
Last edited by a moderator:
There were no firmware updates for a while now, so not. Just installing is also not enough as new functionality is disabled by default (it can break things).
 
Kojote said:
bloody hell! now i know why pickle said he has vsync for the latest giana's return v1.0 :) (and evildragon told me about hardware fullscreen scaling...) so a big thanks for indirectly making giana's return a nicer game :D
-koj

I hope you still dont believe this, because I added the vsync directly into the application, I did not use this special SDL library.
 
Last edited by a moderator:
notaz said:
sebt3 said:
One question though, the readme say that it can scale from any resolution, does this mean this can also down-scale stuff ?
Sure, however I haven't tested that.
Just tested that a cool SDL game that is 800x600x16.

I get :
No video mode large enough for 800x600.

So it does look to works :(

EDIT:
As it is windowed, without the right env variables, the game does work though, its window is too big to be playable
 
Last edited by a moderator:
Back
Top