handle src buffer underflow corner cases
[sdl_omap.git] / README.OMAP
index 29cbac2..96af240 100644 (file)
@@ -52,6 +52,8 @@ SDL_OMAP_LAYER_SIZE:
   Valid values:
     "WxH", for example "640x480"
     "fullscreen" to cover whole screen.
+    "scaled" to upscale the screen proportionally, letterboxing or pillarboxing.
+    "pixelperfect" to upscale by a whole-number factor (e.g. 2x or 3x size).
 
 SDL_OMAP_BORDER_CUT:
   This can be used to move parts of SDL surface out of screen, in other
@@ -73,10 +75,23 @@ SDL_OMAP_FORCE_DOUBLEBUF:
   Note that if app isn't updating whole buffer each frame, it will glitch.
   This is the same as specifying SDL_DOUBLEBUF to SDL_SetVideoMode.
 
+SDL_OMAP_FORCE_DIRECTBUF:
+  When double buffering is not used, this option forces all blits to go
+  directly to the framebuffer (SDL_UpdateRect[s]() has no effect), which will
+  give speed but may cause flickering. Otherwise all blits will go to offscreen
+  buffer and SDL_UpdateRect[s]() is needed to update the screen (this is how
+  standard SDL works too).
+  When double buffering is used, this option has no effect (all blits always
+  go to back buffer that's displayed after flip).
+
 SDL_OMAP_NO_TS_TRANSLATE:
   Disable automatic touchscreen screen -> layer coordinate translation,
   return real screen coordinates.
 
+SDL_OMAP_TS_FORCE_TSLIB:
+  Always use tslib to read touchscreen. Without this, use X events when they
+  are available (this gives external input device support).
+
 
 Config file
 -----------
@@ -91,9 +106,15 @@ force_vsync = 1/0
 # same as SDL_OMAP_FORCE_DOUBLEBUF
 force_doublebuf = 1/0
 
+# same as SDL_OMAP_FORCE_DIRECTBUF
+force_directbuf = 1/0
+
 # same as SDL_OMAP_NO_TS_TRANSLATE
 no_ts_translate = 1/0
 
+# same as SDL_OMAP_TS_FORCE_TSLIB
+ts_force_tslib = 1/0
+
 # can be used to bind a key to SDL keysym, good for quick ports.
 # Example:
 # bind ev_home = sdlk_space