aboutsummaryrefslogtreecommitdiff
path: root/backends/platform/android/android.cpp
AgeCommit message (Collapse)Author
2011-03-16ANDROID: Input system overhauldhewg
Rewritten input system with many new feature. Fixed related bugs and shortcomings on the way.
2011-03-15ANDROID: Add missing cases to getFeatureState()dhewg
2011-03-15ANDROID: Cleanupdhewg
2011-03-14ANDROID: Halve the audio buffer sizedhewg
Also, run into the blocking audio write without sleep. This hopefully fixes audio hickups on slow devices.
2011-03-14ANDROID: Extend clearScreen to take care of all casesdhewg
Hopefully that'll help me to not forget about the double buffering. This fixes some gfx leftovers when not running games in fullscreen mode.
2011-03-14ANDROID: Update screen rects on surface changesdhewg
Fixes regression introduced with 4267011e
2011-03-13ANDROID: Clip mouse coordinatesdhewg
2011-03-13ANDROID: Don't merge mouse move eventsdhewg
Breaks more than it solves
2011-03-13ANDROID: Add graphics mode for linear filteringdhewg
2011-03-13ANDROID: Remove leftover TODOdhewg
Resolved with a93229c and 2721e28
2011-03-13ANDROID: Add support for video feature flagsdhewg
kFeatureFullscreenMode and kFeatureAspectRatioCorrection are supported now. The former prevents scaling to the full display - it scales one axis and keeps the game AR.
2011-03-13ANDROID: Add missing updateScreen() callsdhewg
2011-03-13ANDROID: Buffer 16bit texture contentsdhewg
Same issue as in the last commit: glTexSubImage2D is slow, so cache all copyRect*() calls in a buffer, and update the dirty rect once when drawing. Reduces CPU usage on 16bit games significantly. Also, lockScreen() returns now pixel data for non-CLUT8 games instead of asserting.
2011-03-13ANDROID: Don't use compressed textures for the game screendhewg
Some GLES drivers suck so much that uploading data to the GPU takes ages. CLUT8 games now use a faked paletted texture, which internally uses a RGB565 hardware texture (Android's native pixel format). This seems to be the only way to efficiently implement constant changing textures with GLES1 - at the cost of extra buffers. Then again, we can now use glTexSubImage2D to only update the dirty rects, which wasn't possible before because glCompressedTexSubImage2D is only usable on GLES2. This commit does exactly that. Overall, the CPU usage is massively reduced for CLUT8 games.
2011-03-12ANDROID: Use 16bit pixel formats on CLUT8 texturesdhewg
This reduces the CPU usage on 640x480 games by ~5% on my droid when reuploading the textures to the GPU
2011-03-07ANDROID: Move the overlay initializationdhewg
There's no point in doing that in initSize() every time
2011-03-05ANDROID: Add initial 16bit gfx supportdhewg
Supported pixel formats: 565, 5551, 4444 Missing: 555 (doesn't exist on GLES)
2011-03-05ANDROID: Remove some vtable overhead on texturesdhewg
2011-03-03ANDROID: Implement surface resizesdhewg
Split surface code into helper functions to avoid code duplication, and distinguish between screen resizes and surface recreation. The former happens when toggling the softkeyb, where we just have to reset the viewport. Fixes garbled textures in those cases.
2011-03-03ANDROID: Remove an indirection when pausingdhewg
2011-03-03ANDROID: Formatting/whitespacesdhewg
2011-03-02ANDROID: Properly release texture resourcesdhewg
When calling glDeleteTextures() we need a valid surface.
2011-03-02ANDROID: On pause, put all threads in a comadhewg
Since not every engine respects pauseEngine(), or they're in a state where it simply gets ignored, put all threads in a group coma. Without this, code still kept looping and wasting cpu cycles, while the user might want to do use her/his droid for something else.
2011-03-02ANDROID: Check for a surface in updateScreen()dhewg
2011-03-02ANDROID: cleanupdhewg
2011-03-02ANDROID: Untangle JNI interweavingdhewg
- make the startup sequence more linear - use SurfaceHolder events - get rid of the surface lock - remove unnecessary JNI calls - make the ScummVM class implement Runnable - cleanup
2011-03-02ANDROID: Don't use warning()/error() in a threaddhewg
2011-02-27ANDROID: Prevent AudioTrack unpause on startupdhewg
2011-02-27ANDROID: Remove dead codedhewg
2011-02-27ANDROID: Check audio buffer for silencedhewg
Most games register a music channel, and when there is no music, they still stream silence (and run through all the Converter::flow code!). Scan the buffer for that to pause the AudioTrack. Ugly, but worth it - reduces CPU usage on many games and hence saves battery life.
2011-02-27ANDROID: Pause the AudioTrack when possibledhewg
Only works in situations without any registered channels (or all paused) at the mixer (like on the launcher or GMM). CPU usage before (Galaxy Tab): ~5% scummvm ~15% mediaserver After: ~2% scummvm 0% mediaserver ;)
2011-02-27ANDROID: Rework audio systemdhewg
Move the audio thread to the bright side
2011-02-24ANDROID: Check thread origin when debugging GLdhewg
2011-02-24ANDROID: Move rest of everything JNIdhewg
2011-02-24ANDROID: Wrap JNI code in a classdhewg
2011-02-24ANDROID: Move the global back reference to jni.cppdhewg
2011-02-24ANDROID: Split code into multiple filesdhewg
And get rid of unnecessary JNI calls to get a pointer to g_system
2011-02-19ANDROID: Fix cursor scalingdhewg
2011-02-19ANDROID: Fix cursor when hotspot coords > 0dhewg
2011-02-19Merge branch 'osystem-palette' of https://github.com/lordhoto/scummvm into ↵Johannes Schickel
master Conflicts: backends/platform/android/android.cpp engines/sci/graphics/screen.cpp engines/sci/graphics/transitions.cpp
2011-02-19ANDROID: Move helper defines in a new header filedhewg
- added a few macros for convinience - use them - replaced CHECK_GL_ERROR with GLCALL - spam GLCALL
2011-02-19ANDROID: Formattingdhewg
2011-02-18ANDROID: Formattingdhewg
maybe now?
2011-02-18ANDROID: Formattingdhewg
and hoping for buildbot to pick up the toolchain now
2011-02-14ANDROID: Adapt to [set|grab]Palette RGBA->RGB change.dhewg
2011-02-14ANDROID: Fix JNI calls for the timer threaddhewg
JNI calls can happen through the timer mechanism (hence from another thread). Attach the timer thread to the VM to prevent assert()s
2011-02-14ANDROID: Fix assert() to log outputdhewg
add bionic replacement __assert2(), so we actually see what's happening
2011-02-14ANDROID: Unify log prefixdhewg
adb logcat ScummVM:\* \*:S
2011-02-14ANDROID: Protect port files with our definedhewg
get rid of -DANDROID and -DANDROID_BACKEND
2011-02-09AUDIO: Rename sound/ dir to audio/Max Horn
svn-id: r55850