Commit Graph
8933 Commits
Author SHA1 Message Date
Cameron Cawley 64fc110586 IPHONE: Remove unneeded use of Graphics::ColorMasks 2021-06-24 11:55:54 +02:00
Cameron Cawley cdc00c41be IOS7: Remove unneeded use of Graphics::ColorMasks 2021-06-24 11:55:54 +02:00
Orgad Shaneh 780c4568c1 GUI: Fix compiler warning
../scummvm/gui/options.cpp: In member function 'virtual void GUI::OptionsDialog::apply()':
../scummvm/gui/options.cpp:647:82: warning: comparison of integer expressions of different signedness: 'uint' {aka 'unsigned int'} and 'int' [-Wsign-compare]
  647 |     else if (scalerPlugins[defaultScaler]->get<ScalerPluginObject>().getFactor() != g_system->getDefaultScaleFactor())
      |              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2021-06-24 11:34:45 +03:00
Cameron Cawley ac9980a9dd SDL: Fix the default scale factor for high resolution games 2021-06-23 23:31:49 +01:00
Cameron Cawley c2ae54306f BASE: Update scaler settings from old config files 2021-06-23 21:29:53 +02:00
Cameron Cawley da5d773924 BACKENDS: Add getDefaultScaler and getDefaultScaleFactor to OSystem 2021-06-23 21:29:53 +02:00
Cameron Cawley 7ed5984e2f SDL: Add some validation to setScaler() 2021-06-23 21:29:53 +02:00
Cameron Cawley 0e6b9c2bb6 SDL: Begin refactoring the API for selecting scalers 2021-06-23 21:29:53 +02:00
Lothar Serra Mari af7e042ac4 BACKENDS: SDL: Allow setting OpenGL mode via registerDefault 2021-06-21 21:23:34 +02:00
Lothar Serra Mari e555923e0e DISTS: WIN32: Use OpenGL as default renderer 2021-06-21 17:53:30 +02:00
Orgad Shaneh d31b843f9f MAKEFILE: Add win32dist-mingw target (#2999)
Installs, and bundles all required dlls in WIN32PATH or DESTDIR.
2021-06-20 12:01:09 +03:00
Cameron Cawley c1702a0953 ANDROID: Add an on-screen menu button 2021-06-19 14:37:35 +02:00
Martin Gerhardy 5af1192580 BACKENDS: fixed segfault in EventRecorder with buffer out of bounds writes
==3124361== Invalid write of size 8
==3124361==    at 0x483F803: memmove (vg_replace_strmem.c:1270)
==3124361==    by 0x4DBF61: SurfaceSdlGraphicsManager::grabOverlay(void*, int) const (surfacesdl-graphics.cpp:1753)
==3124361==    by 0x482051: ModularGraphicsBackend::grabOverlay(void*, int) (modular-backend.cpp:215)
==3124361==    by 0x434EE1: GUI::ThemeEngine::clearAll() (ThemeEngine.cpp:376)
==3124361==    by 0x40128E: GUI::EventRecorder::preDrawOverlayGui() (EventRecorder.cpp:558)
==3124361==    by 0x481DB2: ModularGraphicsBackend::updateScreen() (modular-backend.cpp:173)
==3124361==    by 0x559967: Graphics::Screen::updateScreen() (screen.cpp:62)
==3124361==    by 0x55991C: Graphics::Screen::update() (screen.cpp:56)
==3124361==    by 0x38AFC7: TwinE::TwineScreen::update() (twine.cpp:126)
==3124361==    by 0x3B8759: TwinE::Screens::adjustPalette(unsigned char, unsigned char, unsigned char, unsigned int const*, int) (screens.cpp:150)
==3124361==    by 0x3B8A89: TwinE::Screens::fadeToPal(unsigned int const*) (screens.cpp:207)
==3124361==    by 0x3B8403: TwinE::Screens::loadImage(int, int, bool) (screens.cpp:80)
==3124361==  Address 0x31453050 is 16 bytes after a block of size 512,000 alloc'd
==3124361==    at 0x483AB65: calloc (vg_replace_malloc.c:760)
==3124361==    by 0x55B38C: Graphics::Surface::create(unsigned short, unsigned short, Graphics::PixelFormat const&) (surface.cpp:75)
==3124361==    by 0x551111: Graphics::ManagedSurface::create(unsigned short, unsigned short, Graphics::PixelFormat const&) (managed_surface.cpp:153)
==3124361==    by 0x4352D5: GUI::ThemeEngine::setGraphicsMode(GUI::ThemeEngine::GraphicsMode) (ThemeEngine.cpp:453)
==3124361==    by 0x434A52: GUI::ThemeEngine::init() (ThemeEngine.cpp:324)
==3124361==    by 0x43501B: GUI::ThemeEngine::refresh() (ThemeEngine.cpp:394)
==3124361==    by 0x405780: GUI::GuiManager::screenChange() (gui-manager.cpp:603)
==3124361==    by 0x405C6B: GUI::GuiManager::processEvent(Common::Event const&, GUI::Dialog*) (gui-manager.cpp:677)
==3124361==    by 0x404EBA: GUI::GuiManager::runLoop() (gui-manager.cpp:429)
==3124361==    by 0x3FD847: GUI::Dialog::runModal() (dialog.cpp:77)
==3124361==    by 0x36D747: launcherDialog() (main.cpp:106)
==3124361==    by 0x36FF92: scummvm_main (main.cpp:552)

It looks like the _videoMode.overlayHeight in SurfaceSdlGraphicsManager::grabOverlay and ThemeEngine::_backBuffer::h are somehow out of sync after
starting the game in a different resolution as the gui was started with. So the overlayHeight is updated - but the backbuffer (Surface) is not resized.

This is with event recorder being active - right after starting the game and switching the resolution.
2021-06-19 14:34:52 +02:00
Cameron Cawley 0a9bf3708f DS: Update the MaxMod callback manually 2021-06-19 14:32:10 +02:00
Cameron Cawley b1ccd91ba6 OPENGL: Fix compilation on Android 2021-06-17 00:52:46 +01:00
Cameron Cawley 66c0c57d10 BACKENDS: Add support for OpenGL 1.1 contexts 2021-06-16 23:16:01 +01:00
Lothar Serra Mari f4eb3a63b8 BACKENDS: OPENGLSDL: Improve auto-handling of window sizes 2021-06-13 07:50:43 +02:00
sluicebox 674ed112aa JANITORIAL: Update more old bug tracker numbers
I missed the six digit ones and a few others in:
93eeffc84d
2021-06-09 14:28:52 -06:00
Thierry Crozat 31a6b39fb3 SDL: Add new pixel perfect stretch mode for OpenGL
This mode ensure that an integral scaling is used both for the width
and for the height. Compared to the old pixel perfect stretch mode
it thus differs in the way it handles the aspect ratio correction.
It may stretch or squeeze the vertical direction to snap it to a
multiple of the original game height.
2021-06-05 14:17:40 +01:00
Thierry Crozat 1e51093102 Revert "OPENGL: Fix aspect ratio bug when switching render"
This reverts commit 8af0b8baa5.

That commit introduced a regression causing toggling the
aspect ratio correction using the hotkey to be ignored. And
I checked that reverting the commit did not reintroduced the
bug that it was supposed to fix. However since commit ceca0b5ae
the window size in OpenGL mode no longer depends on whether
the Aspect Ratio correction is enabled or not.
2021-06-02 21:50:18 +01:00
SupSuper e3d082df65 MSVC: Add compiler printf validation 2021-06-02 08:35:31 +03:00
Lothar Serra Mari e2d417e785 BACKENDS: OPENGLSDL: Fix division by zero when no previous resizing events occured 2021-05-29 19:47:37 +02:00
athrxx ff3d0e83c2 GRAPHICS: fix Edge scaler glitch (bug no. 12553)
Force the creation of a new screen buffer for the scaler after leaving the overlay. The whole "old source" code looks a bit unfinished. Anyway, this fix should only kick in for one particular scaler and one particular situation and one particular backend. So I guess it is safe enough...
2021-05-28 20:26:28 +02:00
Ori Avtalion 50e8dc815a DOCS,TRAVIS: Change IRC links to libera.chat 2021-05-27 22:47:32 +03:00
Hubert MaierandLe Philousophe 21e709af1d AMIGAOS: Support the new reduced README.md for AmigaGuide conversion (#3025)
AMIGAOS: Support the new reduced README.md for AmigaGuide conversion

Co-authored-by: Le Philousophe <lephilousophe@users.noreply.github.com>
2021-05-25 23:10:21 +02:00
Thierry Crozat dce06f179c IOS7: Render the GUI in HiDPI 2021-05-24 23:46:51 +01:00
Thierry Crozat 37aa9f9081 IOS7: Support using 4bpp cursors
This fixes an assert with the new GUI (bug #12578).

This also required changing the logic to handle the cursor key color
as the new GUI does not use that key color but use the alpha channel.
The logic in the iOS backend was overwriting the alpha channel
by checking the key color, removing all the transparency. Now the
two are combined (hopefully there is no case were it uses the key
color while also using a pixel format with alpha, but not setting
this alpha, because if there is, this will now result in a fully
transparent cursor).
2021-05-24 23:46:51 +01:00
Thierry Crozat bf406f66c0 BACKENDS: SDL: Do not allocate memory in SurfaceSdlGraphicsManager::getSupportedGraphicsModes 2021-05-08 21:58:30 +01:00
Mathias Parnaudeau 800c673b62 BACKENDS: SDL: Fix memory leak in supported graphics modes
Supported graphics modes are grouped in an merged array in which
the first part contains modes from the non-OpenGL SDL manager,
obtained by a copy dynamically allocated.

When the array was rebuilt or aimed to be destroyed, it was only
cleared (removing elements) but not freeing duplicated fields
name and description.

An additional leak came from the temporary array (srcModes)
not freed.
2021-05-08 21:58:30 +01:00
Orgad Shaneh a05e54f00c JANITORIAL: Remove trailing whitespaces 2021-05-04 11:46:30 +03:00
Filippos Karapetis 99e5de932e AUDIO: Remove the broken ARM audio rate converter
This code has been broken and unmaintained for at least 7 years now,
and had been disabled. This also removes the associated define
USE_ARM_SOUND_ASM
2021-05-04 01:16:14 +03:00
Martin Gerhardy 9d82fa51df COMMON: removed USE_TTS check from engines
OSystem now just returns a nullptr if there is no text to speech manager instance
(because none is compiled into the binary, or the system doesn't provide support
for it). This removed the need for the engine authors to add scummvm osystem compile
time options checks into their engine code
2021-05-03 14:13:41 +03:00
Eugene Sandulenko e2d65a4ba8 BACKENDS: OPENGL: Comment out noisy warning 2021-05-02 17:47:41 +02:00
BeWorld 3e7eb8485e MorphOS: cleanup code
- remove utf8toLocal and use internal encode
- save only path (drawer) on browser_lastpath
2021-05-01 20:00:01 +03:00
Le Philousophe 993779259f AMIGAOS: Strip trailing / to ensure .info file is placed beside folder 2021-05-01 18:03:13 +02:00
Hubert Maier 37ef6b4204 AMIGAOS: Typo in comment 2021-05-01 18:03:13 +02:00
Hubert Maier ae9ad5b187 AMIGAOS: Revert MorphOS change (taken care in another PR) 2021-05-01 18:03:13 +02:00
Hubert Maier e776921a7e AMIGAOS: Revert some chnages to use new install path 2021-05-01 18:03:13 +02:00
Hubert Maier 630a58d262 AMIGAOS: Revert most of the superfluous spaces 2021-05-01 18:03:13 +02:00
Hubert Maier abd09fd5b0 MORPHOS: Fix oversight in debug message 2021-05-01 18:03:13 +02:00
Hubert Maier d0185f5172 AMIGAOS: Quite some clean up
- Cleaned up comments
- Debug messages enhanced
- Fix some leftover spaces instead of TABs
- Removed the newlib workaround: A new version has been released which fixed the cause
- Removed an old workaround dealing with a buffer set too low due to an ill combination of newlib build and disk filesystem.
Even forcing the described behaviour i was not able to see slowdowns in videos.
Also, since "slow video playback" is rather vague and no specific case were given in the comment, i wasn´t able to do specific tesing.

Works for me...
2021-05-01 18:03:13 +02:00
SupSuper 60f1fd98aa SDL: Use the window display index when querying display modes 2021-05-01 11:22:22 +03:00
rsn8887 8ab7d43079 BACKENDS: PSP: Fix pixelformat, fixes crash on startup 2021-04-30 22:29:24 -05:00
SupSuper 5219b1ea57 SDL: Get the window decoration size from the backend
It's been 5 years since SDL 2.0.5, I think it's safe to use
2021-04-29 04:44:55 +01:00
Lothar Serra Mari db52dde75d BACKENDS: OPENGLSDL: Fix typo while initializing _windowIsMaximized state 2021-04-28 14:36:46 +02:00
Lothar Serra Mari 1b68301540 BACKENDS: OPENGLSDL: Properly handle maximized windows 2021-04-27 07:25:22 +02:00
Cameron Cawley d67b16a55d COMMON: Improve debugging of forbidden symbol issues 2021-04-27 04:05:11 +01:00
Orgad Shaneh 59752c2835 MAKEFILE: Auto-generate dependencies for scummvm.rc 2021-04-23 02:01:09 +02:00
rsn8887 39d396cf83 SWITCH: Fix wrong zoom in 3D games 2021-04-21 14:14:51 -05:00
Eugene Sandulenko 50e6460fe2 BACKENDS: OPENGL: Add workaround for macOS window size memorizing 2021-04-19 13:10:25 +02:00