Commit Graph

235 Commits

Author SHA1 Message Date
Eugene Sandulenko
20682fdc3c
IOS: Report the scummvm.log file location 2023-03-27 00:24:45 +02:00
elasota
3db67a33ac GRAPHICS: Add support for pixels with masks and inverted pixels 2023-02-19 23:51:09 +01:00
Cameron Cawley
7f2d9fd0fd GRAPHICS: Split conversion.cpp into multiple files 2022-12-22 23:45:14 +01:00
Cameron Cawley
9f4f22b3bf AUDIO: Support mono audio output in the mixer 2022-11-18 17:17:00 +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
Eugene Sandulenko
abea37c9bb
ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Andrea Boscarino
f37489dd80 AUDIO/BACKENDS: Store output audio buffer size in Mixer 2021-12-09 22:03:40 +01:00
Cameron Cawley
5022489277 BACKENDS: Refactor the API for creating Mutexes 2021-11-12 20:19:45 +01:00
Le Philousophe
68a327ecb1 BACKENDS: Harden grabOverlay in all platforms
Use specific copy code where applicable and replace duplicated code by
calls to copyBlit which optimizes blitting
2021-08-04 13:27:07 +02:00
Martin Gerhardy
a0c237f7b9 EVENTRECORDER: added new event for OSystem::getTimeAndDate 2021-07-09 19:23:21 +02:00
Le Philousophe
851282af60 IPHONE/IOS7: Fix compilation 2021-06-25 09:20:27 +02:00
Cameron Cawley
64fc110586 IPHONE: Remove unneeded use of Graphics::ColorMasks 2021-06-24 11:55:54 +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
832f5d1c4a IPHONE: Make use of ModularMutexBackend 2020-11-09 19:12:33 +00:00
Cameron Cawley
626755db94 IPHONE: Use kFeatureFilteringMode to toggle filtering 2020-11-07 18:05:53 +00:00
Thierry Crozat
d43d86f3c0 IPHONE: Fix transparency with RGB cursors using a key color 2020-10-11 03:55:32 +01:00
Cameron Cawley
5a47b09455 BACKENDS: Move default implementations of getScreenPixelBuffer into BaseBackend 2020-10-10 18:00:17 +02:00
Eugene Sandulenko
806ab17c1a IPHONE: Fix compilation 2020-10-10 00:13:35 +02:00
Cameron Cawley
31be074893 BACKENDS: Add a function to return if the overlay is visible 2020-09-15 00:09:11 +02:00
Thierry Crozat
58d13fb863 IPHONE: Fix compilation 2020-08-30 14:43:41 +02:00
Cameron Cawley
2e6de7ee3f BACKENDS: Replace use of bzero() 2020-07-26 23:55:28 +01:00
Thierry Crozat
e0441544d1 IPHONE: Add support for kFeatureNoQuit
This will ensure the Quit buttons in the GUI are hidden.
2020-04-26 16:26:03 +01:00
Thierry Crozat
ea53202de9 IPHONE: Disable idle timer while an engine is running 2020-01-23 20:33:37 +00:00
Cameron Cawley
2048c9cc78 AUDIO: Remove unused parameter from the MixerImpl constructor 2019-11-30 17:47:34 +02:00
sluicebox
40415a5c4a IPHONE: Implement horizontal shake 2019-11-19 00:20:40 +01:00
sluicebox
b8390fa161 GRAPHICS: Add interface for horizontal shake 2019-11-19 00:20:40 +01:00
Colin Snover
bda253b1ac BACKENDS: Constify PaletteManager::grabPalette implementations 2017-10-15 13:47:19 -05:00
Johannes Schickel
afd4b82a8a IPHONE: Make includes match our style. 2016-01-07 12:44:48 +01:00
Vincent Bénony
b5ef98637c IOS: Renames a macro 2016-01-07 09:55:56 +01:00
Vincent Bénony
638dc113f8 IOS: Create two targets for old iPhone (iOS <= 6) and new one (iOS >= 7)
The "iphone" backend is the support for the old iPhones.
The "ios7" backend is for the new iPhones.
2016-01-06 16:17:33 +01:00
Vincent Bénony
124d37247b IOS: Remove extra comma 2016-01-06 16:17:33 +01:00
Vincent Bénony
de6e78eecd IOS: Fixes a typo 2016-01-06 16:17:32 +01:00
Vincent Bénony
3b5d14b51a ISO: Updates instructions for command line compilation 2016-01-06 16:17:31 +01:00
Vincent Bénony
4713f76802 IOS: Clean the path of the Savegames directory 2016-01-06 16:17:31 +01:00
Vincent Bénony
e9934b8cc4 IOS: Fixes a crash on startup on iOS 7 2016-01-06 16:17:31 +01:00
Vincent Bénony
c1e664b6d6 IOS: Replaces spaces with tabs 2016-01-06 16:17:31 +01:00
Vincent Bénony
106e3a87bd IOS: Updates the compilation instructions 2016-01-06 16:17:31 +01:00
Vincent Bénony
5bea2b416d IOS: Moves the compilation instructions in the platform directory 2016-01-06 16:17:31 +01:00
Vincent Bénony
3f829daa1d IOS: Fixes tabs 2016-01-06 16:17:30 +01:00
Vincent Bénony
39b98c1cc6 IOS: Fixes rotation and event handling 2016-01-06 15:35:31 +01:00
Vincent Bénony
62606412b1 IOS: Uses the chroot filesystem 2016-01-06 15:35:31 +01:00
Vincent Bénony
452968ec67 IOS: Adds a getter for the touchpad mode 2016-01-06 15:35:31 +01:00
Vincent Bénony
e82a46c2e3 IOS: Fixes the virtual keyboard 2016-01-06 15:35:31 +01:00
Johannes Schickel
c6a2d86be7 IPHONE: Scale input according to content scale factor.
This hopefully fixes input positions in retina devices. The idea is stolen
from QT: 0726127285:src/plugins/platforms/uikit/quikitwindow.mm#L261-296

Complicated way to retrieve scale's return value properly is taken from:
https://stackoverflow.com/questions/3130464 We sadly can't use the cleaner
solution since we don't want to require a newer SDK...
2014-06-05 04:42:57 +02:00
Johannes Schickel
4bc07f63f2 IPHONE: Remove superflous semicolon. 2014-06-04 20:22:54 +02:00
Johannes Schickel
2f87b338d8 IPHOME: Make GPL headers consistent in themselves. 2014-02-18 02:39:35 +01:00
Johannes Schickel
952a119ae1 IPHONE: Fix accidental double free.
This was a copy&paste error. I also adapted the comment to be more clear.
2013-08-07 21:41:24 +02:00
Johannes Schickel
09f7e4d5d4 IPHONE: Do not access Surface::pixels directly. 2013-08-06 03:51:11 +02:00
Johannes Schickel
7670680aa8 IPHONE: Take advantage of Surface::getPixels. 2013-08-03 04:02:53 +02:00
Eugene Sandulenko
f59512c47e RECORDER: Implement Events Recorder 2013-05-17 00:18:09 +03:00