Commit Graph

218 Commits

Author SHA1 Message Date
Le Philousophe
5f86c391ec GRAPHICS: Remove global variables of HQ scaler
This allows multiple instances to run in parallel
2022-01-03 10:52:11 +01:00
Le Philousophe
2b549a763a GRAPHICS: Make HQx ASM scalers relocations free
This is considered as a good practice to not have relocations in text
segment.
The binary is now completely PIC and can easily be relocated at any
address (ASLR).
2022-01-03 10:52:11 +01:00
Eugene Sandulenko
34f96756d6
ALL: Update license in ARM assembly files too 2021-12-26 19:02:46 +01:00
Eugene Sandulenko
abea37c9bb
ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Cameron Cawley
a21961516a GRAPHICS: Split ScalerPluginObject into two classes 2021-11-23 23:32:58 +01:00
Cameron Cawley
f590352165 GRAPHICS: Fix invalid memory write in the DotMatrix scaler 2021-11-21 23:53:34 +00:00
Orgad Shaneh
b531894158 GRAPHICS: JANITORIAL: Remove 'virtual' when override is specified 2021-11-14 14:31:21 +02:00
Max Horn
c9c13f49d8 GRAPHICS: fix global constructor warnings
Arguably it's better to use a hard code constant anyway, as the result
of sqrt(2) can vary between platforms (not that it is likely to matter
in practice ;-) ).
2021-08-07 10:46:14 +02:00
Max Horn
b7e6d61669 JANITORIAL: Fix compiler warnings about unused code 2021-08-07 10:46:14 +02:00
Paul Gilbert
baccbedf50 GRAPHICS: Changed surface classes sizes from uint16 to int16 2021-07-04 18:24:27 -07:00
Cameron Cawley
82a85494cd GRAPHICS: Integrate Graphics::ColorMasks with Graphics::PixelFormat 2021-06-24 11:55:54 +02:00
Cameron Cawley
0c59abf327 GRAPHICS: Optimize the Normal scaler slightly 2021-05-23 10:33:18 +03:00
Cameron Cawley
909be8a933 GRAPHICS: Add a Normal5x scaler 2021-05-23 10:33:18 +03:00
Orgad Shaneh
a05e54f00c JANITORIAL: Remove trailing whitespaces 2021-05-04 11:46:30 +03:00
Eugene Sandulenko
5e7fe2dc57
JANITORIAL: Replace spaces in indentation with tabs 2021-04-15 21:20:36 +02:00
Orgad Shaneh
d69db0c54f GRAPHICS: Remove deprecated register keyword 2021-03-25 08:17:55 +02:00
Orgad Shaneh
05b72a8896 GRAPHICS: Remove deprecated register keyword 2021-03-24 01:05:17 +02:00
Cameron Cawley
b596ebf8b8 GRAPHICS: Remove use of gBitFormat from the aspect ratio code 2021-03-15 16:48:40 +02:00
Cameron Cawley
b68dbf9eec GRAPHICS: Ensure that _bufferedOutput is resized when the scale factor changes 2021-03-15 16:48:40 +02:00
Cameron Cawley
6a6cdc2bce GRAPHICS: Use override and final keywords 2021-03-15 16:48:40 +02:00
Cameron Cawley
97e176a098 GRAPHICS: Increase the number of extra pixels required by AdvMame4x 2021-03-15 16:48:40 +02:00
Cameron Cawley
9030ac7305 GRAPHICS: Remove unused code 2021-03-15 16:48:40 +02:00
Johannes Schickel
5df18f7d86 GRAPHICS: Take advantage of ColorMasks::PixelType in scaler code. 2021-03-15 16:48:40 +02:00
Johannes Schickel
088119b57c GRAPHICS: Very small cleanup for Edge scaler code. 2021-03-15 16:48:40 +02:00
Johannes Schickel
8825c9e3b4 GRAPHICS: Keep destination buffer in SourceScaler instead of SDL backend. 2021-03-15 16:48:40 +02:00
Johannes Schickel
5420a7f6bd GRAPHICS: Add a default implementation for ScalerPluginObject::getFactor. 2021-03-15 16:48:40 +02:00
Johannes Schickel
6942dba3da GRAPHICS: Let each scaler handle 1x scaling. 2021-03-15 16:48:40 +02:00
Cameron Cawley
b78323897d SDL: Fix compilation 2021-03-15 16:48:40 +02:00
Eric Culp
4674c7c7b0 GRAPHICS: Check bytesPerPixel when USE_SCALERS is undefined 2021-03-15 16:48:40 +02:00
Eric Culp
3e9bd387e7 GRAPHICS: Clean up Edge plugin source
Add static keyword to some functions.

Rename functions to camelCase style.
2021-03-15 16:48:40 +02:00
Eric Culp
4c4028cf1d GRAPHICS: Various formatting fixes 2021-03-15 16:48:40 +02:00
Eric Culp
4c967c5fbc GRAPHICS,SDL: Revision to scaler API
oldSrcScale() is now unified with scale(). Use enableSource(bool enable)
to switch functionality. Partial screen updates are also posible because
of this.

initialize() had its prototype changes although it is functionally the
same.

setSource() no longer has a type parameter, removing support for
multiple source surfaces. They weren't useful anyway.

useOldSrc() was renamed to useOldSource() to conform to the names of
other functions.
2021-03-15 16:48:40 +02:00
Eric Culp
c5c5662330 GRAPHICS,SDL: Change oldSrcScale api
More bookkeeping is kept in common scaler code instead of the backend.
Plugins inheriting SourceScaler will have this functionality.

TODO: Some new functions may still be able to be combined to simplify
the API.
2021-03-15 16:48:40 +02:00
Eric Culp
c915efa452 GRAPHICS: Respect alpha and rgba formats in interpolation and conversion 2021-03-15 16:48:40 +02:00
Eric Culp
179705071d GRAPHICS: Fix Edge3x scaler 2021-03-15 16:48:40 +02:00
Eric Culp
86c2307351 GRAPHICS: Add some 32bpp abilty to Edge scalers
It is still broken, but it seems to be close.
2021-03-15 16:48:40 +02:00
Eric Culp
1e724e6640 GRAPHICS: Use new oldSrcScale API for EdgePlugin 2021-03-15 16:48:40 +02:00
Eric Culp
f40485ee37 GRAPHICS: Move and format comments from edge.cpp to edge.h 2021-03-15 16:48:40 +02:00
Eric Culp
a6e6f7676d GRAPHICS: Remove unused parameter to findPricipleAxis in Edge plugin 2021-03-15 16:48:40 +02:00
Eric Culp
0dcd6bae37 GRAPHICS: 32bpp-ize chooseGreyscale for Edge plugin 2021-03-15 16:48:40 +02:00
Eric Culp
4552ec6138 GRAPHICS: Add function to convert pixels to 16bpp format 2021-03-15 16:48:40 +02:00
Eric Culp
c84db891bf GRAPHICS: Remove unused define in edge.cpp. 2021-03-15 16:48:40 +02:00
Eric Culp
c9b63ba7e3 GRAPHICS: Remove more unused code from the Edge plugin. 2021-03-15 16:48:40 +02:00
Eric Culp
917ef83043 GRAPHICS: Add more templating to Edge plugin 2021-03-15 16:48:40 +02:00
Eric Culp
3574823828 GRAPHICS: Remove code from Edge plugin that will never be used. 2021-03-15 16:48:40 +02:00
Eric Culp
664ba9ae5d GRAPHICS: Change variable name to remove shadowing 2021-03-15 16:48:40 +02:00
Eric Culp
18a099c7d3 GRAPHICS: Remove unused variable in Edge Plugin 2021-03-15 16:48:40 +02:00
Eric Culp
a4741a7268 GRAPHICS: Template Edge plugin over pixel format
calcPixelDiffNosqrt is the only function with a valid implementation.
The rest of the templated functions just have skeleton templates (for
now).
2021-03-15 16:48:40 +02:00
Eric Culp
f4e0331f2d GRAPHICS: Run edge.cpp through astyle to conform to style guidelines 2021-03-15 16:48:40 +02:00
Eric Culp
5688622889 GRAPHICS: Move static variables to class members in Edge Plugin 2021-03-15 16:48:40 +02:00