Age | Commit message (Collapse) | Author |
|
kFeatureFullscreenMode and kFeatureAspectRatioCorrection are supported
now. The former prevents scaling to the full display - it scales one
axis and keeps the game AR.
|
|
|
|
|
|
|
|
Thanks to waltervn for his work and help on this
|
|
|
|
|
|
|
|
|
|
|
|
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.
|
|
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.
|
|
This makes the workaround for the hang in the Colonel's Bequest
shower scene (bug #3122075) unnecessary.
|
|
Removes unnecessary overhead on the backend when the cursor has just
one frame.
|
|
|
|
|
|
This should ensure disasm will disassemble an entire function, and
not stop at an intermediate ret opcode.
|
|
This was caused by a buggy script, most probably the result of an
incorrect copy/paste while processing the original script. Fixed with a
script patch.
|
|
Fixed a bug (the "bwt" and "bc" options were inversed) and added the
ability to skip a defined number of ret calls, useful when a function
continues after a ret call
|
|
This ensures that these selectors will be detected regardless of the game
ID, when they're missing
|
|
|
|
This reduces the CPU usage on 640x480 games by ~5% on my droid when
reuploading the textures to the GPU
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The cause for this bug turns out to be a corrupt object that as
a side effect accidentally bypasses its own corruption. See the
added comments for details.
Also add a warning that points out similarly corrupted objects.
|
|
|
|
The ARM specific rate converters work with 8bit volume vars. Limit
volumes to 0xff to prevent crackling.
|
|
|
|
This might need some further thought when implementing more complex
seeking for the later games, but works for now.
|
|
This is a heap patch for an odd object used in that scene, which will
suffice for now (until we find why this works in SSCI). Thanks to wjp
for his help and work on this
|
|
|
|
A regression from 463e475bd65
|
|
A regression from d2ad7898d93
|
|
|
|
Use --enable-debug instead of not --enable-release
|
|
|
|
Extended ABI with Thumb-2 and VFP hardware FPU instructions
|
|
|
|
Trying to delete a script marked as deleted should do nothing. Hoyle 3
tried to uninstantiate scripts more than once, and we incorrectly
decreased the reference count of associated scripts more than once,
thereby killing them. This properly fixes bug #3038837 (removed the
hack for it). Many many thanks to wjp for his help on this :)
|
|
Renamed some variables, functions and comments related to the
undithering code, to make them a bit easier to understand
|
|
|
|
Thanks to waltervn (and wjp) for their investigation on this and Walter's SCI
specific workaround which I more or less just copied here so it will apply for
all engines.
|
|
This might fix odd problems when storing the device name in the config file,
when the name ends with a space by chance.
|
|
|
|
|
|
|