aboutsummaryrefslogtreecommitdiff
path: root/base/commandLine.cpp
AgeCommit message (Collapse)Author
2017-12-03BASE: Remove bad casts between incompatible Plugin typesColin Snover
Previously, a C-style cast was used to convert a Common::Array<Plugin *>, populated with pointers to StaticPlugin and DynamicPlugin instances, to a Common::Array<PluginSubclass<T> *>, but PluginSubclass<T> is a *sibling* class to StaticPlugin/DynamicPlugin, so this cast was invalid and the results undefined. The methods for retrieving subclasses of plugins can't be easily changed to just generate an array of temporary wrapper objects that expose an identical API which dereferences to the preferred PluginObject subclass because pointers to these objects are retained by other parts of ScummVM, so the wrappers would needed to be persisted or they would need to just re-expose the underlying Plugin object again. This indicated that a way to solve this problem is to have the callers receive Plugin objects and get the PluginObject from the Plugin by explicitly stating their desired type, in a similar manner to std::get(std::variant), so that the pattern used by this patch to solve the problem. Closes gh-1051.
2017-11-02BASE: Minor command line detection cleanupBastien Bouclet
2017-08-06CMD: Handle --game=<ID> for --detect and --auto-detectThierry Crozat
The README and command line help indicated this should work, but this was not implemented.
2017-08-06CMD: Improve warnings for --detect and --add when no game is foundThierry Crozat
2017-08-06CMD: Print full path information for --detectTobia Tesan
2017-08-06CMD: Update error codes in case of autodetector errorTobia Tesan
2017-08-06CMD: Add --recursive option for adding & detectionTobia Tesan
New semantics is as follows: [-p <dir>] --add adds all games in <dir> or working dir [-p <dir>] --detect enumerates dectected games in <dir> with their ids [-p <dir>] --game <id> --add adds just game <id> if found in <dir> and not already added [-p <dir>] --recursive --add adds all games in <dir> and subdirs if not already added [-p <dir>] --recursive --game <id> --add adds just game <id> if found in <dir> or its subdirs and not already added [-p <dir>] --recursive --detect enumerates games in <dir> and subdirs [-p <dir>] --auto-detect launches the first game found in <dir> [-p <dir>] --recursive --auto-detect displays error message The reason for the displaying an error message when attempting to do autodetection on a whole tree is mainly one of UX, IMO it *might* get confusing on a sufficiently large/deep tree. The relevant if() can be removed safely if it's concluded that's not the case.
2017-08-06CMD: Fix batch adding of gamesTobia Tesan
This implements the behaviour as discussed in PR926: https://github.com/scummvm/scummvm/pull/926#discussion_r126132411 Essentially: [-p <dir>] --add adds all games in <dir> or working dir [-p <dir>] --detect enumerates dectected games with their ids [-p <dir>] --game <id> --add adds just game <id>
2017-05-03BASE: Fix auto-detect command to detect and start gameThierry Crozat
There were several issues. The first one was introduced recently and caused the preferred target to be used as a game ID, which resulted in an error when this is not a valid game ID. Thus this fixes bug #9754. The other issues were here since the auto-detect command was added and caused other command line options, suh as the path, to be lost. This usually resulted in a failure to start the game as the data files could not be found (unless the ID happened to be the same name as a target previously added). This also caused a reappearance of the old bug
2017-04-24BASE: Improve error handling when detecting gamesThierry Crozat
2017-04-24BASE: Check scanf return value when adding a gameThierry Crozat
2017-04-23CMD: Detect and add game(s) with commandlineyinsimei
This implements feature request #7885
2017-02-06BASE: Ignore -NSDocumentRevisionDebugMode command line argument on OS XThierry Crozat
This is automatically added by Xcode when not toggling off the "Allow debugging when using document Versions Browser". Since this is on by default, and to avoid everybody having to google it, I have decided to just ignore it on OS X.
2016-11-07BASE: Auto-detect now starts the first game foundThierry Crozat
2016-10-29BASE: Clarify how to specify a path in help for the auto-detect commandThierry Crozat
2016-10-29BASE: Auto-detect option now uses the specified pathThierry Crozat
2016-10-29BASE: Formatting codeiskrich
2016-10-29BASE: Add --auto-detect commandiskrich
Allows to display games in the current directory that are compatible with ScummVM. This option enables the user to find games in the directory from which ScummVM was launched. In terminal it looks like: -------------------------------------------------------------------------------------- $ scummvm --auto-detect ID Description -------------------- --------------------------------------------------------- drascula Drascula: The Vampire Strikes Back (DOS/English) queen Flight of the Amazon Queen (Talkie/DOS/English) -------------------------------------------------------------------------------------- The current directory is defined as dir(".") then using EngineMan.detectGames to recognise games.
2016-10-24BASE: Add command line for specifyong Director start movieEugene Sandulenko
2016-10-13GUI: Add checkbox and config option to enable/disable graphics filteringThierry Crozat
2016-08-13COMMON: Introduce --debug-channels-only command line flag.Eugene Sandulenko
Many of our systems currently generate significant amount of debug output on deeper levels. Now, when your engine is using Debug Channels, you might want to show that debug information only, which is currently not possible, as the generic output will be mixed in your output. Alternative solution would be to implement possibility to specify per-channel debug levels.
2016-05-16Merge pull request #745 from Cruel/3dsEugene Sandulenko
3DS: New Backend
2016-04-063DS: Initial commitThomas Edvalson
2016-03-21Merge pull request #704 from lordhoto/clone2727-audiocdJohannes Schickel
Implement Custom Audio CD Support for Win32, Linux, and Mac OS X.
2016-03-13BASE: Ignore -psn command line argument on OS XThierry Crozat
Prior to OS X 10.9, the OS was passing the process serial number as an additional argument on OS X when starting an application bundle. For whatever reason, when compiling with SDL 1.2 this gets suppressed before getting to the place where we handle command line arguments. But when compiling with SDL2 this additional argument remains so we need to ignore it to avoid erroring out.
2016-03-13BACKENDS: Allow for specifying a drive via the cdrom optionMatthew Hoops
2016-02-05COMMON: Add render mode for Macintosh.Johannes Schickel
On request of m_kiewitz who wants to use it for AGI.
2016-01-21COMMON: Add render modes for Apple IIgs and Atari ST.Johannes Schickel
On request of m_kiewitz who wants to use it for AGI.
2014-08-22CLI: change "savegames" into "saved games", same as in GUIBen Castricum
2014-02-18BASE: Make GPL headers consistent in themselves.Johannes Schickel
2013-08-12COMMON: Get rid of write version of ConfigManager::getGameDomains.Johannes Schickel
This can be abused to insert Domains into the game domains without any checks. Instead, only write iterator access is given.
2013-07-05BASE: Fix --help output for --record-file-name.Johannes Schickel
Formerly it claimed the command is --record-file.
2013-05-17RECORDER: Implement Events RecorderEugene Sandulenko
2013-05-02COMMON: Change kPlatformPC to kPlatformDOSMatthew Hoops
"PC" was very ambiguous and now it matches what we show in the GUI. This also corrects sword2's platform to Windows.
2013-04-24BASE: Fixed code flow warnings. CID 1002239Eugene Sandulenko
2013-01-27GUI: Allow user to display hidden files in the browser dialog.Johannes Schickel
This implements feature request #3600774 "File browser: show hidden files".
2013-01-26Merge branch 'eriktorbjorn-fluidsynth-settings'Johannes Schickel
This is a manual merge of a slightly adapted pull request #296. The changes made are: - Each time the theme format changes, the version was increased - default.inc has been regenerated in the same commit as the theme changes
2013-01-26GUI: Make the FluidSynth settings dialog a bit more like QsynthTorbjörn Andersson
To help people familiar with Qsynth (I'm not, but it seems to be one of the more polished FluidSynth front ends), use the same presentation and terminology for the FluidSynth settings. More to follow.
2013-01-26FLUIDSYNTH: Add separate dialog for FluidSynth settingsTorbjörn Andersson
I don't really understand what these parameters do, or what the sensible values are, so for now the sliders are limited only by the allowed (or, in one case, "safe") values.
2013-01-02JANITORIAL: Fix or silence a couple of Clang analyzer warningsTorbjörn Andersson
Clang will produce plenty of warnings (most of them seem to be of the "if the stars align the wrong way, this may happen" variety), but I don't have the time or patience to look at all of them.
2012-09-26GUI: Save/restore the last used page in the grid save/load dialog.Johannes Schickel
This allows opening the dialog on (nearly) the same page again as when it was closed. Sadly due to the different number of entries in the save and load version this is not always exactly the same page as before. Same goes for resolution changes. Thanks to wjp for suggesting this.
2012-06-29GUI: Remember last save/load chooser selection.Johannes Schickel
2012-03-25GUI: Remove leftover code for the global dithering checkboxFilippos Karapetis
2012-03-17ALL: Make use of defined() for the preprocessor consistent.Johannes Schickel
This does not change the use of defined for some NDS source files, since they seem to be (based on?) third party code.
2012-03-17COMMON: Add a space between a string literal and a macro parameter so C++11 ↵Christoph Mallon
does not think the latter is a string literal suffix.
2012-02-26COMMON: Move RenderMode and GUIOptions functionality into separate filesMax Horn
2012-02-20COMMON: Move isFoo functions to namespace Common, add doxygen commentsMax Horn
2012-02-15ALL: Avoid using is* macros from ctype.hMax Horn
On some systems, passing signed chars to macros like isspace() etc. lead to a runtime error. Hence, mark these macros as forbidden by default, and introduce otherwise equivalent alternatives for them.
2011-11-23BASE: Implement a command to list all available audio devices on the shell.Johannes Schickel
2011-07-04AUDIO: add registerDefault for music_driverathrxx