Commit Graph

363 Commits

Author SHA1 Message Date
elasota 6efbd4f51f AUDIO: Change default GM device back to "null" 2024-03-18 13:49:12 +01:00
Lars Sundström bef7933e25 IOS7: Make "Designed for iPad" on Mac silicon great again
It is possible to run iOS applications on macOS on Mac computers
running on Apple Silicon. This was possible before moving to the
ModularGraphicsBackend implementation in the iOS7 port with just
a little tweaking.

After the move to ModularGraphicsBackend, the ScummVM application
crashed on launch. There were two reasons for crashing;

1. dlsym() was called with the special handle RTLD_SELF to search
for the address binding of the GLES2 load symbol. Using RTLD_SELF
the search for the symbol is limited to the shared object issuing
the call to dlsym() and those shared objjects which were loaded
after it. When running an iOS app in macOS it seems that the app
is running inside a wrapper, which means that the objects resides
in a different level. Changing the search level to RTLD_DEFAULT
changes the search to also include all objects loaded at program
start-up.

2. As for the native macOS application, XCode also adds the
argument -NSDocumentRevisionsDebugMode YES if XCode option
"Allow debugging when using document Versions Browser" is on.
Make sure not to parse that argument also when building the
IPHONE target.

Cherry-pick of: 9d63f3901c
2024-03-02 12:06:27 +01:00
Thierry Crozat 95a060e4fe AUDIO: Add a basic soundfont for fluidsynth
The soundfont was already included in the Libretro port. It is
now included in all platforms.
2023-12-03 16:17:32 +00:00
Coen Rampen f1abbff901 MIDI: Update FluidSynth settings
This updates the FluidSynth settings to the value ranges and defaults used by
the current version 2.3.4.

Reverb
- Room size: 0.00-1.20 / 0.20 to 0.00-1.00 / 0.20
- Width: 0-100 / 1 to 0.0-100.0 / 0.5
Chorus
- Level: 0.00-1.00 / 1.00 to 0.00 - 10.00 / 2.00
- Speed: 0.30-5.00 / 0.30 to 0.10-5.00 / 0.30
- Depth: 0.0-21.0 / 8.0 to 0.0-256.0 / 8.0
2023-11-25 22:26:53 +01:00
elasota cc64a58b68 BASE: Don't expose disable-sdl-audio or disable-sdl-parachute options when not using SDL 2023-11-07 02:45:49 +01:00
elasota bd857272f4 BACKENDS: SDL: Use null mixer if audio initialization fails, and add a flag to forcibly disable it for testing. Add an alternate call that returns true if the mixer manager is a null device.
SDL audio init will fail on Windows if all audio output devices are disabled.
Only about 10 engines are checking for this case and numerous pieces of common code (EmulatedOPL, VideoDecoder) fail as well, so this acts as a fallback to prevent instability.
2023-11-07 02:45:49 +01:00
elasota 8bb2afd217 AUDIO: Change default GM device to "auto" 2023-08-28 22:06:19 +02:00
Abhinav Chennubhotla ad8be9d8d5 BASE: Add quotes to metadata while exporting 2023-08-21 15:40:25 +02:00
Abhinav Chennubhotla 28401ee7c0 BASE: Export header in dumpAllDetectionEntries() 2023-08-21 15:40:25 +02:00
Abhinav Chennubhotla bb20579bee BASE: Add dumpAllDetectionEntries() to commandLine
- Add virtual function dumpDetectionEntries() to
   MetaEngine
 - Glk, Sky and SCUMM do not have proper
   definitions for dumpDetectionEntries()
 - Add md5PropToGameFile() to extract prefixes for
   md5s
 - AdvancedDetector writes content of DAT file to
   STDOUT
2023-07-03 13:54:50 +03:00
Abhinav Chennubhotla 5f3e062f97 BASE: Add --dump-all-detection-entries command
- Creates metaengine instances for all engines, which will
   contain detection md5s of the engine
2023-07-03 13:54:50 +03:00
Thierry Crozat 0f159b2569 BASE: Slightly change the formatting of the --stats command output 2023-06-15 00:04:11 +01:00
Thierry Crozat ef53dc058a BASE: Add number of game variants to --stats option 2023-06-09 18:21:47 +02:00
Thierry Crozat 1ba7b12102 BASE: Include target count in --stats option 2023-06-09 18:21:47 +02:00
Thierry Crozat b742c2e7f9 BASE: Allow specifying engines for --list-targets option 2023-06-09 18:21:47 +02:00
Thierry Crozat 46f0e28624 BASE: Support listing games for multiple engines 2023-06-09 18:21:47 +02:00
Thierry Crozat 8ce91026fe BASE: Add --stats command line option 2023-06-09 18:21:47 +02:00
elasota 72fb9311b3 BASE: Move sdl-sys.h include outside of Base namespace 2023-06-05 19:30:03 +02:00
Wyatt Radkiewicz 8a0fffa672 BASE: Fixed typo when erasing window-size (#4866)
When parsing the command line option "window-size" the DO_LONG_OPTION
inserts "window-size" into the settings StringMap. This is soon later
deleted, but instead of deleting "window-size" it deletes the
non-existent setting "window_size". This is needed because width and
height are stored in "last_window_width" and "last_window_height"
respectivly and "window-size" is not used anywhere.
2023-04-05 10:11:23 +02:00
Thierry Crozat be98f2a812 BASE: Add default extrapath and themepahth when running in tree
This means building and running scummvm in tree now works out of the box.

Unfortnatelly registering them as defaults would not work as
ConfMan::hasKey() returns false when only defined as a default, and
in most places this is checked before using those paths. So if we
wanted to use defaults we would need to replace all those checks with
a check that the path is not empty.

There is a drawback to using the session domain though: it takes
priority over all other domains. So a custom extrapath defined for
a game will be ignored. We try to mitigate the issue by only adding
those path if they exist(so that it does not break shadow builds for
example).

Also the change is excluded on Windows as it is not needed there
since the themes and engine data files are embedded in the executable.
2023-03-28 18:21:21 +02:00
Eugene Sandulenko d1203ffe0a BASE: Fix --logfile command line option
It was plainly not functional. We were never passing it to backend
2023-03-25 19:43:32 +01:00
Thierry Crozat ed193bc449 BASE: Add --no-exit command line flag
This allows opening the launcher after running a command line command,
such as --add. The main use for this would be for backends to be able
to easily add games from a folder on launch.
2023-03-24 21:11:50 +01:00
Lothar Serra Mari 6fcfdaa1b4 BASE: SDL: Show SDL version in --version output 2023-03-20 18:55:30 +01:00
Little Cat 70c94aced3 SCUMM HE: Command line host/join Moonbase games.
Normally, GameSpy Arcade (or a third-party app) would set these settings
into moonbase.ini for the game to read.  But I feel like a couple of
command line options would be a lot simpler.

Also, doubles as a quick way to host and join a game for testing.

Unfortunately this does not support the demo version.
2023-03-06 00:07:13 +01:00
Cameron Cawley a305fe56d6 BASE: Enable the --start-movie argument when the Testbed engine is enabled 2023-02-22 20:48:32 +00:00
elasota 3a07524b73 COMMON: Add initial config file option.
This allows an initial/default configuration file to be specified via the command line.  This allows a default settings file to be bundled and loaded even if it's installed to a read-only location, such as Program Files on Windows, and allows the written config file to be deleted without losing the custom defaults.
2023-01-11 14:46:39 +01:00
Eugene Sandulenko a404ddaee6 BASE: Fix potential memory override when parsing long options 2023-01-03 23:46:59 +01:00
Eugene Sandulenko 49a0a54e9d BASE: Added --random-seed command line option 2023-01-02 16:12:44 +01:00
Vladimir Serbinenko 39d4e1e030 BASE: Switch --md5mac to openFileOrDataFork 2022-12-11 21:32:30 +01:00
Roberto Sánchez 5854585b33 BASE: Add check to avoid domain override when launching from command line with -p argument 2022-12-07 22:58:48 +01:00
Cameron Cawley 6506e59064 ENGINES: Add getMD5Bytes to the base MetaEngineDetection class 2022-11-30 23:29:37 +02:00
Cameron Cawley 749fd8b490 SDL: Allow selecting the audio channel count from the command line 2022-11-18 17:17:00 +01:00
Le Philousophe 111d259015 ALL: Add limits.h for all codebase 2022-08-22 15:38:10 +02:00
Le Philousophe bffb6e244a BASE: Allow platforms to not include the help messages
This allows to save some space on constrained devices which still allow
for command line.
Enable this space saving on DS and enable back command line support.
Cleanup old workaround for 3DS.
2022-07-29 13:08:22 +02:00
Le Philousophe 8593f576fd JANITORIAL: Remove useless DS ifdefs
DS port already defines DISABLE_COMMAND_LINE
2022-07-29 13:08:22 +02:00
Le Philousophe 458535cee1 JANITORIAL: Remove useless ANDROID ifdef
The ANDROID define has been removed in 8de5edde95.
This means this if branch was never taken for more than 10 years.
2022-07-29 13:08:22 +02:00
Cameron Cawley f3b094e53f ENGINES: Change the MetaEngineDetection interface to match MetaEngine 2022-07-23 23:31:58 +02:00
Eugene Sandulenko 1fa331f44a BASE: Generate list of languages and platforms instead of hardcoding 2022-07-22 15:04:27 +02:00
Eugene Sandulenko b65e00a6ef BASE: Synced the plaoform list in command line help 2022-07-22 14:27:26 +02:00
Thierry Crozat 97f45352fc BASE: Add back default to 60 for engine_speed settings
This is used by 3D games to limit the frames per seconds.
The default value was lost in commit b586571900 when sync'ing
ScummVM and ResidualVM code. This resulting in a default of 0,
which means no throtling.

This should fix bug #13631
2022-06-25 19:54:19 +01:00
Torbjörn Andersson 78c8bd2fbf BASE: Print error messages on invalid command line parameters again
The condition was accidentally inverted when the Symbian port was
removed, I belive.
2022-06-25 16:27:59 +02:00
Thunderforge 87728fa9b6 COMMON: Adding iconspath parameter to the command line 2022-06-22 14:33:04 +02:00
Thierry Crozat dfaa00c235 BASE: Reorganize code to save command line settings 2022-06-12 22:21:27 +01:00
Thierry Crozat 5ea034391b GUI: Add slider for Grid Launcher icon size 2022-06-12 22:08:53 +01:00
Thierry Crozat bde10f0dda BASE: Store screenshotpath command line in Session domain
The SDL backend was getting that path at the start and storing
it in a class member so that it would persist for the session.
But now that we have a kSessionDomain in ConfMan, it is cleaner
to use that (and this will also work for non-SDL backends).
2022-06-05 15:39:36 +01:00
grisenti 7b53202a9e ALL: add support for --config and refactor code 2022-05-29 13:56:21 +02:00
grisenti d6dbf721b6 ALL: add support for --subtitles 2022-05-29 13:56:21 +02:00
grisenti 7f1eafcb2f ALL: add support for --opl-driver and --talkspeed 2022-05-29 13:56:21 +02:00
grisenti 358bec9967 ALL: add support for --scaler and --scale-factor 2022-05-29 13:56:21 +02:00
grisenti e934e7d279 ALL: add support for native-mt32 and fix enable-gs 2022-05-29 13:56:21 +02:00