Commit graph

155 commits

Author SHA1 Message Date
Leon Styhre 1009cdee80 Added support for scraping Daphne on TheGamesDB and Atari XE and BBC Micro on ScreenScraper. 2021-02-05 17:38:21 +01:00
Leon Styhre ec669a79c0 Changed the system name for Thomson MO/TO from 'thomson' to 'moto' to follow the RetroPie naming convention. 2021-02-05 17:27:55 +01:00
Leon Styhre b1b58fe90c Added some additional error logging. 2021-02-01 22:06:28 +01:00
Leon Styhre d05f42b3b8 (Windows) Fixed a scraping issue caused by the idiotic file locking on this OS. 2021-02-01 19:27:48 +01:00
Leon Styhre 04d99f15ea Fixed a ScreenScraper issue for searches with 'The' in the game name.
Also some additional improvements and some refactoring of the ScreenScraper search code.
2021-02-01 19:00:38 +01:00
Leon Styhre dc3731660b Fixed an issue where the gamelist entry would not update properly if the user aborted the single-game scraper. 2021-02-01 18:52:49 +01:00
Leon Styhre 7ab7dcc7c6 Added 1-to-1 directory structure matching for game ROMs and media files. 2021-01-31 19:53:55 +01:00
Leon Styhre 5558557dc8 Updated the ScreenScraper API access credentials. 2021-01-29 19:54:39 +01:00
Leon Styhre a50f81c72a Minor cosmetic scraper log output change. 2021-01-28 21:17:05 +01:00
Leon Styhre 8c71bce8f8 Expanded the strings for region and language in GuiScraperMenu. 2021-01-26 21:04:16 +01:00
Leon Styhre 01e726f23a Fixed an issue where ScreenScraper searches would fail for game names ending with plus characters. 2021-01-26 17:31:27 +01:00
Leon Styhre ad544d684d Minor cosmetic changes to the scraper log output. 2021-01-26 17:28:54 +01:00
Leon Styhre 735ce39812 Some cosmetic code cleanup. 2021-01-19 22:29:13 +01:00
Leon Styhre 23dd5b838f Fixed an issue with scraping arcade games using the metadata name. 2021-01-08 20:34:11 +01:00
Leon Styhre c95334756d Fixed a lot of MSVC compiler warnings. 2020-12-29 12:54:24 +01:00
Leon Styhre 963f93e0f8 Replaced the custom math functions with standard C++ functions. 2020-12-28 11:29:32 +01:00
Leon Styhre bb3cc4d4a1 Added logic and menu option for handling invalid media files during scraping.
Also added a shortcut for defining the scraper searches and fixed an issue where games were automatically selected after refining the search.
2020-12-18 16:35:19 +01:00
Leon Styhre debf072a0e Rewrote some code from C to C++ 2020-12-16 23:59:00 +01:00
Leon Styhre ab2b29f398 Scraping using ScreenScraper now always shows the ratings in the GUI. 2020-12-16 19:03:05 +01:00
Leon Styhre 0b6dce687e Changed to C++ casts throughout the application. 2020-11-17 23:06:54 +01:00
Leon Styhre 4fb12a4801 Fixed an issue where the wrong thumbnail could be displayed in the scraper. 2020-11-14 20:46:08 +01:00
Leon Styhre e5fcb51f57 Added support for multiple search results for ScreenScraper.
Also fixed some other scraping issues and added some additional scraper logging.
2020-11-14 15:30:49 +01:00
Leon Styhre 2c3b452401 Some cosmetic code cleanup and some small documentation updates. 2020-11-08 22:58:06 +01:00
Leon Styhre f1f0596fe1 Added support for user accounts for ScreenScraper. 2020-11-07 15:34:15 +01:00
Leon Styhre 923d1df479 Fixed a libcurl memory leak in the scraper. 2020-10-18 11:01:56 +02:00
Leon Styhre 96da134f7d Added option to scrape based on the metadata name. 2020-10-10 13:05:12 +02:00
Leon Styhre 6ec1898e97 Implemented handling of invalid ScreenScraper responses. 2020-09-26 13:07:52 +02:00
Leon Styhre 8db04c5fcb Added SPDX license identifiers to all source files. 2020-09-21 19:17:34 +02:00
Leon Styhre 88a5962926 Changed '#ifdef' to '#if defined()' throughout the code. 2020-08-23 17:04:30 +02:00
Leon Styhre 408be5120c Multi-scraper folder scraping and folder scraper exclusions added.
A quick-skip shortcut was added to the multi-scraper as well and some minor changes were done to the ScreenScraper debug logging.
2020-08-06 15:12:04 +02:00
Leon Styhre 2ee67407d8 Scraper allowance information is now logged as debug info. 2020-08-06 12:52:06 +02:00
Leon Styhre c3de18dd96 Added support for scraping videos using ScreenScraper. 2020-08-05 22:38:44 +02:00
Leon Styhre 939f3389d5 Improved the ScreenScraper error reporting. 2020-08-05 10:51:02 +02:00
Leon Styhre 996af43299 Added some missing game platforms.
Also updated scrapers with some additional missing systems.
2020-08-05 10:45:27 +02:00
Leon Styhre dec3a74e16 Fixed ScreenScraper handling of missing game metadata. 2020-08-02 14:19:51 +02:00
Leon Styhre 9b23741bda Some small cosmetic changes to scraper error messages. 2020-07-31 15:20:55 +02:00
Leon Styhre 3f9c43afb9 Fixed a scraping issue where failed image writing was not handled correctly. 2020-07-31 15:00:07 +02:00
Leon Styhre af37173a0b Fixed an issue where the scraper wouldn't handle errors correctly. 2020-07-31 14:20:37 +02:00
Leon Styhre 676b076e07 Some changes mostly to get Ports working properly. 2020-07-30 22:19:37 +02:00
Leon Styhre 9b7ad8966e Added some additional error logging for ScreenScraper. 2020-07-30 20:11:45 +02:00
Leon Styhre 949365c822 Renamed system 'pc' to 'dos' and adjusted some graphics files. 2020-07-29 11:19:26 +02:00
Leon Styhre 3cea714f9c Updated the ScreenScraper error handling slightly.
Also added the possibility to hide a folder in the same way as a game file.
2020-07-28 23:15:35 +02:00
Leon Styhre bad9e772e9 Changed most setting values to lowercase in es_settings.cfg
Audio devices apparently need to be case sensitive.
2020-07-27 12:11:30 +02:00
Leon Styhre b5485b4ca9 Changed log levels from numbers to text. 2020-07-26 23:30:45 +02:00
Leon Styhre 6735dd3d76 Added missing systems to PlatformId.
Also did some other small system name changes.
2020-07-25 16:18:41 +02:00
Leon Styhre 5e5da8c52f Fixed an issue where attempting to read nonexisting JSON data would crash the application. 2020-07-20 09:25:54 +02:00
Leon Styhre 57d6dab2cc Some cosmetic code changes. 2020-07-13 20:58:25 +02:00
Leon Styhre 6199f7371d Made the automatic gamelist view style work with the new media handling logic. 2020-07-13 20:10:09 +02:00
Leon Styhre 6028777be4 Added creation of es_settings.cfg on first application startup and improved media directory error handling. 2020-07-11 10:10:07 +02:00
Leon Styhre 31da561695 Complete UTF-16 (Unicode) support added for Windows.
ROM names with Unicode characters are supported, as well as running ES from a directory that has Unicode characters in its name.
2020-07-10 18:32:23 +02:00
Leon Styhre 9ba4f01a29 Deactivated the audio device settings and added a new setting for custom scripts.
Also changed some other setting names.
2020-07-09 19:24:20 +02:00
Leon Styhre 5a7fb828a6 Added proper error handling for resource files and improved overall logging. 2020-07-08 17:01:47 +02:00
Leon Styhre 76aa239855 Initial update to make the application build and run on Windows.
Much more work will be needed to get the Windows port working properly.
2020-07-03 20:23:51 +02:00
Leon Styhre e4fdd1e20d Code cleanup and code documentation update.
As of this commit, the initial code cleanup and code documentation has been completed for the entire application.
2020-06-28 18:39:18 +02:00
Leon Styhre ee4a55e9d6 Fixed 'Refine Search' for the TheGamesDB scraper which I apparently broke in the last commit. 2020-06-25 20:37:41 +02:00
Leon Styhre 0387d515fb Update to fully support Clang/LLVM.
Also a general cleanup of CMakeLists.txt and many small code changes to satisfy Clang that complained quite a lot and actually wouldn't compile the binary at all at first.
2020-06-25 19:52:38 +02:00
Leon Styhre fb4c5708b7 Made pugixml an external dependency and fixed the cmake/cpack installation and package creation.
As pugixml seems to be well supported nowadays and seems to ship with most distributions it's pretty pointless to keep bundling it with EmulationStation.
2020-06-24 17:38:41 +02:00
Leon Styhre 6b62065595 Large code cleanup and code documentation update.
The initial code cleanup of es-app is now complete as of this commit.
2020-06-23 20:07:00 +02:00
Leon Styhre 0a02d710f3 Removed the last remnants of the usage of /etc and updated the documenation accordingly. 2020-06-22 19:46:09 +02:00
Leon Styhre 67aa6b3dbd Huge code cleanup and code documentation update.
Includes lots of conversions from tabs to spaces. Only cosmetic code changes in this commit.
2020-06-21 14:25:28 +02:00
Leon Styhre b7feedd287 Moved all components into es-core and renamed ScraperSearchComponent to GuiScraperSearch as it's a GUI and not a component. 2020-06-06 14:14:13 +02:00
Leon Styhre 90735d44e3 Major update to scraper including support for new media handling logic, ability to download more media file types (screenshot, cover, marquee, 3D box) and an improved scraper GUI. As well a rewrite of the navigation sound code. 2020-06-06 13:10:33 +02:00
Leon Styhre fd7da08bf9 Large code cleanup and code documentation update, mostly related to the scraper. Only cosmetic changes in this commit. 2020-05-26 18:34:33 +02:00
Leon Styhre 4aa30017bf Changed the version format and added proper handling of invalid command line arguments 2020-05-15 18:46:06 +02:00
Leon Styhre eec27c0258 Updated Scraper to not use deprecated pugixml method 2020-05-15 18:39:54 +02:00
PhilaPhan80 85dc2b59a2 Update TheGamesDB API URL to include "v1" within the path per note by Zer0xFF at https://forums.thegamesdb.net/viewtopic.php?f=5&t=1223 2020-01-05 01:52:03 -05:00
Cristi Mitrana b46c082821 Add scraping support for ChannelF, OpenBOR, Solarus and ZX81 Sinclair 2019-11-27 09:52:35 +02:00
Tomas Jakobsson 9de16045c9 whitespace cleanup
fix faulty line endings
silence warnings on windows
2019-08-25 17:23:02 +02:00
Cristi Mitrana 023e9d8916 Eliminate duplicate requests when multiple platforms are present for a system 2019-07-31 18:50:49 +03:00
Cristi Mitrana 6e123ba8c6 scraper: change ScreenScraper API URL 2019-05-02 11:54:55 +03:00
Tomas Jakobsson 5cc6bafd7d Silence warnings 2019-03-09 00:23:13 +01:00
Spongman 718eae91fb
Update GamesDBJSONScraper.cpp
prevent `IsObject` assertion failure during `HasMember` call.
2019-02-16 18:07:26 -08:00
Cristi Mitrana 1ee09bcca8 Fix ScreenScraper search by filename 2019-02-10 12:47:53 +02:00
acrummyidea 44395f5f45 Adding new scraper GamesDBJSONScraper. The scraper uses the new GamesDb JSON API.
On the first run it downloads a few resource files needed to intepret the otput of
game search api calls these resources go into ~/.emulatiostation/scrapers
The resource files include the list of developers and the list of publishers.
To update the lists simply delete the files and relaunch emulationstation.
Searching a game by id (GamesDB id) is done as before by manually edit the search
query and query for "id:<gameId>".
2019-02-07 21:08:11 -05:00
Cristi Mitrana 253e5716d2 Remove the TGDB scraper from the list of enabled scrapers 2019-01-24 20:05:07 +02:00
Cristi Mitrana ce04f7f297 Add checks for the Scraper, when the settings no longer match the list of available scrapers.
If the Scraper configured in the settings is no longer available, don't crash when running the scraper.
For single game scrapes, we show an error for the user to change the configuration.
For batch scraping, silently choose the 1st scraper available in the list
2019-01-24 20:00:19 +02:00
Cristi Mitrana cdd43bf7e9 Add ScreenScraper.fr as scraping source 2019-01-19 09:01:35 +02:00
Keith F. Kelly 8c4c024de1 Add support to built-in thegamesdb.net scraper for TurboGrafx CD platform. 2018-11-28 11:09:52 -08:00
John Rassa 86a2cb7840 set curl to follow redirects to fix scraper error
update to use legacy thegamesdb url
2018-06-05 19:00:42 -07:00
Jools Wills bb678eecd1
Merge pull request #363 from jrassa/g-w-scraper-fix
fix platform name for game and watch
2018-02-01 03:50:48 +00:00
John Rassa d223831d53 fix platform name for game and watch 2018-01-30 20:16:30 -08:00
Tomas Jakobsson 421e4a23df The final traces of boost has been eliminated 2018-01-30 19:21:09 +01:00
Tomas Jakobsson 403b798572 Remove the last traces of boost::filesystem::operational, this is PR 4 of 5 in the boost::filesystem removal quest 2018-01-27 22:52:14 +01:00
Tomas Jakobsson 3d3fb2c277 Switched over the last functions in Utils.cpp to Utils::String, step 3 of 5 in the quest to remove boost::filesystem 2018-01-27 18:04:28 +01:00
Tomas Jakobsson c1f8e7294c Update and rename some Utils::FileSystem functions
Replace boost::filesystem::is_directory
with    Utils::FileSystem::isDirectory

Replace boost::filesystem::is_regular_file
with    Utils::FileSystem::isRegularFile

Replace boost::filesystem::is_symlink
with    Utils::FileSystem::isSymlink

Replace boost::filesystem::exists
with    Utils::FileSystem::exists

Replace boost::filesystem::create_directory
with    Utils::FileSystem::createDirectory

Replace boost::filesystem::remove
with    Utils::FileSystem::removeFile
2018-01-23 12:07:20 +01:00
Tomas Jakobsson 11b8dbfc43 Replaced boost::posix_time with Utils::Time 2017-12-01 18:49:56 +01:00
Tomas Jakobsson 160ef73eee Fix NES and SNES scraper that broke during boost cleanup 2017-11-18 18:11:58 +01:00
Tomas Jakobsson 9fbe95daa3 iterator -> const_iterator 2017-11-12 00:05:19 +01:00
Tomas Jakobsson 7719bff8ae Clean up pugixml.hpp includes 2017-11-10 20:16:42 +01:00
Tomas Jakobsson ac01e8fcd4 Removed all boost::assign::list_of 2017-11-03 01:33:08 +01:00
Tomas Jakobsson a8fc560749 Header inclusion cleanup 2017-11-02 19:16:01 +01:00
Tomas Jakobsson 44e3e39083 Add pragma once and ifndef header guards to all headers 2017-10-31 18:12:50 +01:00
Tomas Jakobsson d3e87739e3 fix warnings 2017-10-28 22:07:31 +02:00
Markus Pointner d75510bde1 TheGamesDB scrapper should use GetGameList.php
Previously GetGame.php was used, but GetGamesList.php is
the "search" API call and more reliably returns the correct game.
2017-09-28 23:30:28 +02:00
dirk-de-bugger d2eb7079e1 Make ScraperSearchHandle::update() non-blocking and ScraperSearchComponent::search() show the busy animation. 2017-05-25 19:56:06 +02:00
Leonardo S. Meira 0cf21a09fd Add new platforms to scraper 2017-05-23 17:22:34 -03:00
zefie 8ed1792913 add support to search for specific game id using id:### 2017-05-22 14:58:30 -04:00
zefie 54931f12bd add Famicom Disk System to scraper 2017-05-22 14:28:32 -04:00
ottopower 6178e8f981 Update GamesDBScraper.cpp 2017-05-10 01:31:30 +02:00
Daniel c2b76aaa73 #69: Fixing user input from scraper. It now does an exact name search (#123)
* #69: Fixing user input from scraper. It now does an exact name search for the game. Anything not found by the normal game search can be found through this. It does not fail on special characters or when there are only three letter words.
2017-05-04 16:33:45 +01:00