Commit Graph

8885 Commits

Author SHA1 Message Date
Eugene Sandulenko
fb7095f5a4
COMMON: Move all compression-related files to a separate directory 2022-12-01 11:53:02 +01:00
elasota
3496e82abc BACKENDS: Add 1-pixel border to cursors to ensure linear interpolation of edge pixels doesn't get cut off half-way. 2022-11-29 00:48:00 +01:00
Donovan Watteau
06380fc9c3 MACOSX: Prefer openURL/openURLs over openFile on macOS 10.15+
They're the recommended APIs now, and openFile is deprecated starting
with macOS 11.0. openURLs:withApplicationAtURL (for TextEdit usage)
requires macOS 10.15+, so we need different code paths.
2022-11-29 00:11:03 +01:00
Le Philousophe
77fce6614e BACKENDS: OPENGL: Disable scissor test when overlay is for games
WIthout this, the game cannot draw outside its area for subtitles.
This is exhibited when scaling is set to center.
2022-11-20 17:18:38 +01:00
Cameron Cawley
e04000d4b0 COMMON: Move FFT, DCT, MDCT, RDFT, SineTable, CosineTable and getSineWindow into Math 2022-11-20 14:32:05 +01:00
Cameron Cawley
749fd8b490 SDL: Allow selecting the audio channel count from the command line 2022-11-18 17:17:00 +01:00
Cameron Cawley
9f4f22b3bf AUDIO: Support mono audio output in the mixer 2022-11-18 17:17:00 +01:00
Paweł Kołodziejski
18f75444b2
BACKENDS3D: Revert my changes to Framebuffer viewport state.
It's useless for backend code flow.
Instead move into UpdateScreen() as short time solution.
2022-11-15 23:23:50 +01:00
Hubert Maier
c8f89326a8 AMIGAOS: Add first time user defaults 2022-11-15 08:36:33 +00:00
Gleb Mazovetskiy
d516833aef
OPENDINGUX: Reduce default cursor speed (#4422)
The default cursor speed is too fast to navigate the menus and
pixel-hunt. Reduces the default speed to 2 ("8") to make it manageable.

Also makes the cursor speed configurable from the UI.
2022-11-13 13:28:16 +01:00
Le Philousophe
17498383ee BACKENDS: Fix typo in WindowedGraphicsManager
This was the opposite of what was needed.
2022-11-13 09:14:25 +01:00
Gleb Mazovetskiy
8801b4eed2
OPENDINGUX: Update build instructions (#4421)
1. Point to the new releases page.
2. Explain how to install the toolchain.
2022-11-13 08:35:01 +01:00
Le Philousophe
970ea34905 ANDROID: Fix build 2022-11-12 20:49:20 +01:00
Le Philousophe
87bad2cc7d COMMON: Allow games to use overlay for something else than GUI
This can be used for subtitles without changing the mouse coordinates.
2022-11-12 19:12:05 +01:00
Donovan Watteau
16e2068aec JANITORIAL: Fix various single-character typos 2022-11-11 20:55:56 +01:00
Le Philousophe
6fa7a6f30f BACKENDS: OPENGL: Check if libretro is here before loading shader 2022-11-11 13:24:55 +01:00
Donovan Watteau
4578c4a6fc MACOSX: Simplify detection conditions for the older CoreAudio API
The current code checked for the CPU type to determine if we were
building for the older macOS releases requiring this older API, but
we can just check MAC_OS_X_VERSION_MAX_ALLOWED which is clearer and
more accurate.

Apart from simplification, this also lets one build ScummVM for x86
again on Tiger. I haven't checked this case, though :)

Note that the ComponentDescription -> AudioComponentDescription change
was done in macOS 10.6 and not macOS 10.5, so this also fixes this
case.

Tested on macOS 10.4, 10.5, 10.5 with the 10.4 SDK, and on 12.6.
2022-11-09 12:27:51 +01:00
Donovan Watteau
5db6e27eca MACOSX: Fix NSUInteger definition on macOS 10.4
NSUInteger should be an `unsigned int` on 32-bit Tiger, and an
`unsigned long` on 64-bit Tiger. In practice, this wasn't really a
problem since we were always using `unsigned long` which has the same
width on 32-bit Tiger, but still it's more correct to do what the
official 10.5 SDK does.

The preprocessor defines come from Apple's documentation and from
their SDK. We can use it as-is, since we're in the backend code, and
already in an ifdef only targeting Tiger (where I've tested this
change).

Also fix a small GCC warning while there.
2022-11-09 12:27:51 +01:00
Le Philousophe
e5c1a4249a BACKENDS: OPENGL: When no shader is selected, close 2022-11-06 20:02:59 +01:00
Le Philousophe
52903aff8a BACKENDS: OPENGL: Close old preset before opening a new one 2022-11-06 20:02:59 +01:00
Le Philousophe
a6dd037079 BACKENDS: OPENGL: Add support for previous frames in LibRetro 2022-11-06 20:02:59 +01:00
Le Philousophe
9d1910854b BACKENDS: OPENGL: Match vertex coordinates with RetroArch
This makes work shaders which ignore them.
A flip is done when rendering to output pipeline because RetroArch
renders directly on the back buffer
2022-11-06 20:02:59 +01:00
Le Philousophe
5484ebffae BACKENDS: OPENGL: Rework LibRetro pipeline
This makes LibRetro behave almost like other pipelines and make the code
in OpenGLGraphicsManager somewhat simpler.
2022-11-06 20:02:59 +01:00
Le Philousophe
f9005454bd BACKENDS: OPENGL: Allow to copy render settings between framebuffers 2022-11-06 20:02:59 +01:00
Le Philousophe
70cf4e9e3e BACKENDS: OPENGL: Move framebuffer out of common activate code
This allows more control over activation process.
2022-11-06 20:02:59 +01:00
Le Philousophe
6632e909da BACKENDS: OPENGL: Hide active pipeline and activate it as needed
This removes the idea of global pipeline.
The activePipeline is kept for pipeline lifecycle management only.
2022-11-06 20:02:59 +01:00
Le Philousophe
239c115249 BACKENDS: OPENGL: Rename drawTexture override
This prevents name hiding when using directly a subclass of Pipeline
2022-11-06 20:02:59 +01:00
Le Philousophe
769fe03a4b BACKENDS: OPENGL: Use override keyword 2022-11-06 20:02:59 +01:00
Le Philousophe
9b951944bc BACKENDS: OPENGL: Activate framebuffer with a specific pipeline 2022-11-06 20:02:59 +01:00
Le Philousophe
29c25ed566 BACKENDS: OPENGL: Store projection matrix as a Matrix4
This avoids extraneous copies when dealing with Shader class.
2022-11-06 20:02:59 +01:00
Le Philousophe
2d910e353b BACKENDS: OPENGL: When closing reset _isAnimated to keep performace 2022-11-06 20:02:59 +01:00
Le Philousophe
b329308b7a BACKENDS: OPENGL: Don't load a preset with no pass 2022-11-06 20:02:59 +01:00
Le Philousophe
479ef6a851 BACKENDS: OPENGL: Simplify size logic 2022-11-06 20:02:59 +01:00
Le Philousophe
96fd0b8418 BACKENDS: OPENGL: Fix missing default case 2022-11-06 20:02:59 +01:00
rsn8887
984341d73f BACKENDS: PSP: Remove unused code in RGBA8888 path 2022-11-06 10:59:02 -06:00
Donovan Watteau
7ef9247637 BACKENDS: Restore original Cabal license header when quoting it
Our derivate work remains GPLv3+, since the original allowed it thanks
to its GPLv2+ license, but when we quote the original license we can't
(and shouldn't) change the fact that it was GPLv2+.
2022-11-05 22:04:30 +01:00
rsn8887
6ae4512a42 BACKENDS: PSP: Support RGBA8888 by swapping bytes 2022-11-05 14:00:32 -05:00
Donovan Watteau
4f5ccdbe75 MACOSX: Update some comments about macOS 10.4/10.5 behavior
Found while doing a review of our existing workarounds for those
versions, and the system features which can be used there.

Also fix indentation and some typos while there.
2022-11-05 10:09:58 +01:00
Le Philousophe
06c38bbf3f OPENGLSDL: Redraw screen when receiving an expose event
Without this, the window is not refreshed when it is recovered or
minimized and restored.
2022-10-30 12:34:23 +01:00
Le Philousophe
1859cf455d OPENGL: Use texture size of cursor instead of computing it
Computation was not correct and resulted in corrupted cursor
2022-10-29 18:08:39 +02:00
Hubert Maier
80da800c46
BACKENDS: Correct spelling mistake
aquire -> acquire
2022-10-27 15:56:04 +02:00
Hubert Maier
a10cbd3199
BACKENDS: Correct spelling mistake
occured -> occurred
2022-10-27 15:56:04 +02:00
Le Philousophe
6524f7beb5 COMMON: Forbid use of unsafe sprintf and vsprintf 2022-10-23 22:46:19 +02:00
Le Philousophe
43997e2911 WIN32: Don't use unsafe sprintf and vsprintf 2022-10-23 22:46:19 +02:00
Le Philousophe
f61400075f PSP: Don't use unsafe sprintf and vsprintf 2022-10-23 22:46:19 +02:00
Le Philousophe
a60e8ff2cb MORPHOS: Don't use unsafe sprintf and vsprintf 2022-10-23 22:46:19 +02:00
Le Philousophe
29f5d51972 DC: Don't use unsafe sprintf and vsprintf 2022-10-23 22:46:19 +02:00
Le Philousophe
9c04d72471 COMMON: Forbid use of unsafe strcat and strcpy 2022-10-23 22:46:19 +02:00
Le Philousophe
6293c2b3c2 WIN32: Don't use unsafe strcat and strcpy 2022-10-23 22:46:19 +02:00
Le Philousophe
387da5b820 WII: Don't use unsafe strcat and strcpy 2022-10-23 22:46:19 +02:00