Commit graph

242 commits

Author SHA1 Message Date
Leon Styhre daa0fe3a91 Added a program release number. 2023-02-16 22:24:42 +01:00
Leon Styhre 5be55d38ed Added support for running the application at lower resolution in fullscreen padded mode.
Also added support for offsetting the screen contents within the application window.
2023-02-12 22:14:09 +01:00
Leon Styhre f22da24486 Added a theme loading log entry about the applied aspect ratio configuration.
Also renamed some incorrectly named variables in ThemeData.
2023-02-10 00:34:24 +01:00
Leon Styhre cf8ce151dd The application startup can now be aborted via an OS signal or using the configured keyboard quit shortcut. 2023-02-07 18:14:16 +01:00
Leon Styhre b33c7603bb Added support for rotating the application screen contents 0, 90, 180 or 270 degrees.
Also improved post processing shader rendering when running in vertical orientation.
2023-02-06 23:38:35 +01:00
Leon Styhre 5125f81c78 SDL events are now parsed on startup before the main application loop.
Also removed the mouse pointer removal hack.
2023-01-29 22:38:16 +01:00
Leon Styhre e9b1718fca Multiple improvements to the progress bar to reduce startup times and increase consistency.
Also changed from SDL_GetTicks64() to SDL_GetTicks() in SystemData as the 64-bit function doesn't work with older SDL releases.
2023-01-27 17:34:38 +01:00
Leon Styhre b0d3133983 The splash screen is now rendered much earlier during the application startup. 2023-01-24 18:18:51 +01:00
Leon Styhre fd85df2716 Changed the log message on missing game files from error to info. 2023-01-23 18:06:53 +01:00
Leon Styhre 022446bce7 Found a better method to limit buffer swaps during splash screen rendering. 2023-01-22 23:24:08 +01:00
Leon Styhre e44c18bc1b Added a startup progress bar to the splash screen. 2023-01-22 21:03:08 +01:00
Leon Styhre 65f0c0e3c2 The .emulationstation/gamelists directory is now created on application startup instead of when scraping for the first time. 2023-01-09 21:16:45 +01:00
Leon Styhre 6d3d2ddb34 Added support for 2x and 4x MSAA anti-aliasing (OpenGL renderer only). 2023-01-09 17:55:54 +01:00
Leon Styhre 1f0bf21675 Some minor code cleanup. 2023-01-08 16:30:39 +01:00
Leon Styhre e553f68e90 Greatly improved application startup time by removing a lot of unnecessary splash screen re-rasterizations. 2022-08-23 22:34:56 +02:00
Leon Styhre 12f7e20c95 Fixed a crash when there are no game ROMs present. 2022-08-19 17:02:25 +02:00
Leon Styhre b69706fc35 The currently loaded theme set name is now logged to to es_log.txt on startup, reload and theme change. 2022-08-14 20:24:26 +02:00
Leon Styhre 08d893b119 Fixed an issue where the IgnoreGamelist setting was saved although it shouldn't.
Also made a change so that passing the --ignore-gamelist command line option now immediately disables the ParseGamelistOnly setting.
2022-06-29 17:17:31 +02:00
Leon Styhre f27de7f860 Added an es_log.txt entry if running in portable mode. 2022-06-12 10:34:17 +02:00
Leon Styhre 6b24533c0d (Windows) Added support for creating a portable installation in the root of a device, such as E: or F: 2022-06-11 18:59:40 +02:00
Leon Styhre 40bf018aaa Changed theme loading into a populateThemeSets function and created a separate getter function.
Also removed a deprecated theme check in the game directory.
2022-06-11 18:34:53 +02:00
Leon Styhre 0008e44294 Removed all short enums comments as they're now properly solved by AllowShortEnumsOnASingleLine. 2022-06-05 12:36:55 +02:00
Leon Styhre cc004a45f1 Renamed the --create-systemdirs command line option to --create-system-dirs 2022-05-19 17:24:12 +02:00
Leon Styhre 6a0b1bad5b Added custom event script triggers on application startup, screensaver start and screensaver end. 2022-05-18 23:56:51 +02:00
Leon Styhre 5b63ecb828 Removed the last remnants of the PowerSaver. 2022-05-18 21:08:55 +02:00
Leon Styhre 43191e4005 Added a --create-systemdirs command line option to generate the game system directories. 2022-05-18 18:32:13 +02:00
Leon Styhre f0c35d8509 Refactored the rendering code into proper classes. 2022-03-14 19:51:48 +01:00
Leon Styhre ac6cc41059 Added a command line option to rotate the application screen 180 degrees.
Also fixed a shader post-processing bug when rotating the application screen.
2022-03-12 00:40:03 +01:00
Leon Styhre c35a297d9a Large update to get the new theme engine up and running. 2022-01-29 18:41:22 +01:00
Leon Styhre a443f86235 Removed a huge amount of unnecessary Window* function arguments. 2022-01-19 18:01:54 +01:00
Leon Styhre a6be6225d8 Renamed SystemScreensaver to Screensaver. 2022-01-17 18:43:29 +01:00
Leon Styhre acd18bd1f8 Very minor change to the command line --help output. 2022-01-17 18:35:03 +01:00
Leon Styhre 8a6652552f Set the clang-format option SpaceBeforeCpp11BracedList to true. 2022-01-16 12:09:55 +01:00
Leon Styhre 750ee07351 Improved the structure of main.cpp
Also partially added support for Emscripten.
2022-01-12 21:38:37 +01:00
Leon Styhre b4e08ba92b Renamed Platform to utils/PlatformUtil 2022-01-10 18:56:04 +01:00
Leon Styhre 2d149c5161 Moved all Platform functions to the utility namespace. 2022-01-10 18:43:17 +01:00
Leon Styhre f80658696c Removed some unnecessary time measurement constants. 2022-01-09 23:50:08 +01:00
Leon Styhre c62a069448 Fixed an issue where the audio device was accessed after it had been closed. 2022-01-05 00:08:50 +01:00
Leon Styhre f8e201d347 Moved the CollectionSystemsManager cleanup from the destructor to a deinit function. 2022-01-04 23:14:12 +01:00
Leon Styhre 119dfc90f8 Changed ViewController::get() to ViewController::getInstance() 2022-01-04 21:49:22 +01:00
Leon Styhre 254b00a3d8 Large refactoring to improve thread safety and improve singleton pattern usage. 2022-01-04 21:21:26 +01:00
Leon Styhre 9e86908a47 (Windows) Fixed a window focusing issue when hiding the taskbar. 2021-12-09 20:23:09 +01:00
Leon Styhre 515577c8f9 (Unix) Changed the fullscreen mode to SDL_WINDOW_FULLSCREEN_DESKTOP.
Also removed the --windowed, --fullscreen-normal and --fullscreen-borderless command line options and menu entry.
2021-12-05 13:51:39 +01:00
Leon Styhre 445b914379 Completely refactored MameNames. 2021-11-17 21:32:40 +01:00
Leon Styhre dd0f36f82b Changed most increment and decrement operators from postfix to prefix for es-app. 2021-11-17 17:35:34 +01:00
Leon Styhre 6bc4a09c9b Multiple thread safety improvements to AudioManager and VideoFFmpegComponent.
Also some general refactoring and re-enabling of some SDL_AudioStream functions.
2021-11-15 22:43:06 +01:00
Leon Styhre 0fecb43066 Increased the maximum supported display height to 7680 pixels. 2021-10-18 18:14:49 +02:00
Leon Styhre a2e12ace6a Lowered the minimal supported resolution from 640x480 to 224x224. 2021-09-30 19:51:04 +02:00
Leon Styhre 79849188d1 Fixed an issue where animations would play incorrectly when disabling a collection. 2021-09-19 20:43:36 +02:00
Leon Styhre 970b7dd63d (Windows) Fixed some MinGW compiler warnings. 2021-09-19 15:27:32 +02:00
Leon Styhre 42458a7d76 Very minor code cleanup. 2021-09-17 21:10:16 +02:00
Leon Styhre 5942b2815e Added support for selecting alternative emulators per game.
Also made some changes to the system-wide alternative emulators logic.
2021-09-04 11:21:55 +02:00
Leon Styhre 5381f38231 Added support for defining and choosing between alternative emulators. 2021-08-22 15:26:38 +02:00
Leon Styhre 7b5d673050 Replaced the internal Vector2i data type and functions with the GLM library equivalent.
Also applied some code formatting changes for braced lists using clang-format.
2021-08-17 18:41:45 +02:00
Leon Styhre d3be0b73d3 Changed the word 'front-end' to 'frontend'. 2021-08-12 12:03:11 +02:00
Leon Styhre e4ee4855df Changed the header text in main.cpp 2021-07-08 18:47:29 +02:00
Leon Styhre af5e32e121 Formatted the es-app source tree using clang-format. 2021-07-07 20:03:42 +02:00
Leon Styhre 11ae6ba6f5 Improved the support for portable installations. 2021-06-30 17:27:20 +02:00
Leon Styhre f6122ed94a Changed the descriptive name of ~/.emulationstation to the ES-DE home directory. 2021-06-25 00:00:49 +02:00
Leon Styhre 55a0cef4d1 The scripts and themes directories are now created during startup.
Also cleaned up some startup messages which now also refer to ~/.emulationstation as the base directory.
2021-06-24 23:29:03 +02:00
Leon Styhre c8af5816a3 Added a version setting which can be used to detect upgrades of the application. 2021-06-22 17:47:01 +02:00
Leon Styhre dc29b97e91 Changed es_settings.cfg to es_settings.xml 2021-06-16 19:05:24 +02:00
Leon Styhre fa624f9f2c Changed the logic for the systems configuration file, it now loads from the resources directory.
Also renamed the file from es_systems.cfg to es_systems.xml
2021-06-16 18:54:04 +02:00
Leon Styhre dde840c5f8 Added a game launch screen. 2021-06-14 19:15:22 +02:00
Leon Styhre 83b764cf1f Small cosmetic changes to the input device configuration screen. 2021-05-23 10:16:47 +02:00
Leon Styhre 0bde8dc79d Migrated to the SDL2 GameController API. 2021-05-22 22:18:00 +02:00
Leon Styhre 3ed17fbea2 Added a fullscreen game media viewer. 2021-05-16 13:12:31 +02:00
Leon Styhre 8bf304b867 Added check for non-numeric characters in the arguments for the --resolution flag. 2021-03-21 21:54:30 +01:00
Leon Styhre 924b3ac033 Fixed a memory leak in Settings. 2021-03-19 18:40:37 +01:00
Leon Styhre b90ab39cb7 Fixed a memory leak related to the navigation sounds. 2021-03-19 18:37:56 +01:00
Leon Styhre 84ecb7489e Moved the AudioManager initialization a bit forward during startup. 2021-03-17 20:08:33 +01:00
Leon Styhre 9779ca8bd5 The MAME names file processing is now done after displaying the splash screen. 2021-03-15 21:03:44 +01:00
Leon Styhre b115a94668 Added a sanity check to the --resolution flag to keep the values within reason. 2021-03-12 21:12:54 +01:00
Leon Styhre 90bd12ef1c (macOS) Disabled the save state functionality which removed the splash screen on startup. 2021-03-11 17:42:08 +01:00
Leon Styhre 2432e118a7 Added the ability to automatically generate the game systems directory structure. 2021-03-10 18:21:49 +01:00
Leon Styhre 9c957ee93c Fixed an issue where the --vsync command line option could crash the application. 2021-02-28 15:20:34 +01:00
Leon Styhre 97575fa7a4 (macOS) Fixed an issue where the mouse cursor would jump to the Dock on startup. 2021-01-28 21:32:25 +01:00
Leon Styhre 777480aa6e Small cosmetic change to the --display command line option. 2021-01-26 17:33:20 +01:00
Leon Styhre 7bb89693f3 Settings are now saved immediately when using some command line options. 2021-01-25 18:10:11 +01:00
Leon Styhre 4d2ef89864 Added multi-monitor support. 2021-01-24 23:44:50 +01:00
Leon Styhre cf489be504 Reorganized the command line options. 2021-01-24 22:17:36 +01:00
Leon Styhre 735ce39812 Some cosmetic code cleanup. 2021-01-19 22:29:13 +01:00
Leon Styhre 8b5f65c789 The mouse cursor is now hidden during application startup. 2021-01-19 20:14:37 +01:00
Leon Styhre c6687f8995 Removed a remnant from the PowerSaver. 2021-01-03 11:24:50 +01:00
Leon Styhre 9b6789529b (Windows) Fixed an issue with a potentially unclean application shutdown. 2020-12-31 13:50:55 +01:00
Leon Styhre 327676d7d7 Renamed CollectionSystemManager to CollectionSystemsManager. 2020-12-23 18:06:30 +01:00
Leon Styhre a27c961987 Some changes to the startup logging.
Also removed some unnecessary audio code.
2020-12-23 17:56:21 +01:00
Leon Styhre 214a7861f9 Modernized the audio handling code a bit. 2020-12-21 00:23:22 +01:00
Leon Styhre bb7097a1af Changed the order of two command line parameters. 2020-12-20 15:09:47 +01:00
Leon Styhre defb16b6da Fixed multiple issues with the UI modes (full/kiosk/kid).
Also improved the quit menu.
2020-12-17 23:45:29 +01:00
Leon Styhre 29abe2dc8c Removed the deprecated PowerSaver. 2020-12-16 17:57:10 +01:00
Leon Styhre 5de61ecb4d Removed two ambiguous NULL values. 2020-11-30 20:42:16 +01:00
Leon Styhre 208d3a9fb3 Fixed a crash when attempting to change the ROM directory. 2020-11-30 20:19:29 +01:00
Leon Styhre 0b6dce687e Changed to C++ casts throughout the application. 2020-11-17 23:06:54 +01:00
Leon Styhre 6368ae0cc1 OCD update renaming ScreenSaver to Screensaver. 2020-11-10 22:33:57 +01:00
Leon Styhre bbb2aa5217 Overhaul of the screensaver. 2020-11-10 22:18:20 +01:00
Leon Styhre 1a6bec2e3b Overhaul of settings code. 2020-11-05 18:18:11 +01:00
Leon Styhre 0b6d0bfcd6 Improved some logging as well as handling of a missing es_systems.cfg file. 2020-10-19 17:28:20 +02:00
Leon Styhre f5e36dec54 Added an application startup timer as debug logging output. 2020-10-18 12:45:19 +02:00
Leon Styhre 0beb40d9c9 Fixed a tiny memory leak.
Also fixed a Clang static analyzer error for SystemData.
2020-10-17 14:32:08 +02:00