From e6e293f191c3899082a968819d2ef88873e62de2 Mon Sep 17 00:00:00 2001 From: Leon Styhre Date: Sun, 16 Aug 2020 15:44:07 +0200 Subject: [PATCH 1/3] Minor changes to some game systems names. --- INSTALL.md | 3 +++ USERGUIDE.md | 25 +++++++++++++--------- resources/templates/es_systems.cfg_unix | 10 ++++----- resources/templates/es_systems.cfg_windows | 10 ++++----- 4 files changed, 28 insertions(+), 20 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index becba04d1..684ae422c 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -269,6 +269,7 @@ The following packages are not readily available for Windows, so clone the repos git clone git://git.savannah.gnu.org/freetype/freetype2.git git checkout VER-2-10-2 mkdir build +cd build cmake -G "MinGW Makefiles" -DBUILD_SHARED_LIBS=ON .. make ``` @@ -276,6 +277,7 @@ make [pugixml](https://pugixml.org) ``` git clone git://github.com/zeux/pugixml +cd pugixml git checkout v1.10 cmake -G "MinGW Makefiles" -DBUILD_SHARED_LIBS=ON . make @@ -286,6 +288,7 @@ As for RapidJSON, you don't need to compile it, you just need the include files: [RapidJSON](http://rapidjson.org) ``` git clone git://github.com/Tencent/rapidjson +cd rapidjson git checkout v1.1.0 ``` diff --git a/USERGUIDE.md b/USERGUIDE.md index e33a13fc7..e164944bb 100644 --- a/USERGUIDE.md +++ b/USERGUIDE.md @@ -961,6 +961,11 @@ There are numerous locations throughout ES where custom scripts will be executed The setup for this is a bit technical, so please refer to the [INSTALL.md](INSTALL.md) document to see how it's configured. +## Portable installation (Windows only) + +On Windows, ES can be installed to and run from a removable media device such as a USB memory stick. Together with games and emulators this makes for a fully portable retro gaming solution. The setup is somewhat technical, please refer to the [INSTALL.md](INSTALL.md) document to see how it's configured. + + ## Command line arguments You can use **--help** or **-h** to view a list of command line options, as shown here. @@ -1032,10 +1037,10 @@ Sometimes the name of the console is (more or less) the same for multiple region | :-------------------- | :-------------------------------------------- | :----------------------------------- | | 3do | 3DO | | | ags | Adventure Game Studio | | -| amiga | Amiga | WHDLoad hard disk image in .hdf or .hdz format, or diskette image in .adf format (with .m3u playlist if multi-disk) | -| amiga600 | Amiga 600 | WHDLoad hard disk image in .hdf or .hdz format, or diskette image in .adf format (with .m3u playlist if multi-disk) | -| amiga1200 | Amiga 1200 | WHDLoad hard disk image in .hdf or .hdz format, or diskette image in .adf format (with .m3u playlist if multi-disk) | -| amigacd32 | Amiga CD32 | | +| amiga | Commodore Amiga | WHDLoad hard disk image in .hdf or .hdz format, or diskette image in .adf format (with .m3u playlist if multi-disk) | +| amiga600 | Commodore Amiga 600 | WHDLoad hard disk image in .hdf or .hdz format, or diskette image in .adf format (with .m3u playlist if multi-disk) | +| amiga1200 | Commodore Amiga 1200 | WHDLoad hard disk image in .hdf or .hdz format, or diskette image in .adf format (with .m3u playlist if multi-disk) | +| amigacd32 | Commodore Amiga CD32 | | | amstradcpc | Amstrad CPC | | | apple2 | Apple II | | | apple2gs | Apple IIGS | | @@ -1050,7 +1055,7 @@ Sometimes the name of the console is (more or less) the same for multiple region | atarilynx | Atari Lynx | | | atarist | Atari ST | | | atarixe | Atari XE | | -| atomiswave | | | +| atomiswave | Atomiswave | | | bbcmicro | BBC Micro | | | c64 | Commodore 64 | Single disk, tape or cartridge image in root folder and/or multi-disk images in separate folder | | cavestory | Cave Story (NXEngine) | | @@ -1067,13 +1072,13 @@ Sometimes the name of the console is (more or less) the same for multiple region | famicom | Nintendo Family Computer | Single archive or ROM file in root folder | | fba | Final Burn Alpha | Single archive file following MAME name standard | | fbneo | FinalBurn Neo | Single archive file following MAME name standard | -| fds | Famicom Disk System | | +| fds | Nintendo Famicom Disk System | | | gameandwatch | Nintendo Game and Watch | | -| gamegear | Sega Gamegear | | +| gamegear | Sega Game Gear | | | gamecube | Nintendo GameCube | | -| gb | Game Boy | | -| gba | Game Boy Advance | | -| gbc | Game Boy Color | | +| gb | Nintendo Game Boy | | +| gba | Nintendo Game Boy Advance | | +| gbc | Nintendo Game Boy Color | | | genesis | Sega Genesis | Single archive or ROM file in root folder | | gx4000 | Amstrad GX4000 | | | intellivision | Mattel Electronics Intellivision | | diff --git a/resources/templates/es_systems.cfg_unix b/resources/templates/es_systems.cfg_unix index 61e9c69f5..b7fca1e20 100644 --- a/resources/templates/es_systems.cfg_unix +++ b/resources/templates/es_systems.cfg_unix @@ -345,7 +345,7 @@ fds - Famicom Disk System + Nintendo Famicom Disk System %ROMPATH%/fds .nes .NES .fds .FDS .unf .UNF .UNIF .UNIF .7z .7Z .zip .ZIP retroarch -L ~/.config/retroarch/cores/nestopia_libretro.so %ROM% @@ -363,7 +363,7 @@ gamegear - Sega Gamegear + Sega Game Gear %ROMPATH%/gamegear .mdx .MDX .md .MD .smd .SMD .gen .GEN .bin .BIN .cue .CUE .iso .ISO .sms .SMS .gg .GG .sg .SG .68k .68K .chd .CHD .7z .7Z .zip .ZIP retroarch -L ~/.config/retroarch/cores/genesis_plus_gx_libretro.so %ROM% @@ -381,7 +381,7 @@ gb - Game Boy + Nintendo Game Boy %ROMPATH%/gb .sfc .SFC .smc .SMC .gb .GB .gbc .GBC .7z .7Z .zip .ZIP retroarch -L ~/.config/retroarch/cores/bsnes_libretro.so %ROM% @@ -390,7 +390,7 @@ gba - Game Boy Advance + Nintendo Game Boy Advance %ROMPATH%/gba .gba .GBA .agb .AGB .bin .BIN .7z .7Z .zip .ZIP retroarch -L ~/.config/retroarch/cores/mednafen_gba_libretro.so %ROM% @@ -399,7 +399,7 @@ gbc - Game Boy Color + Nintendo Game Boy Color %ROMPATH%/gbc .sfc .SFC .smc .SMC .gb .GB .gbc .GBC .7z .7Z .zip .ZIP retroarch -L ~/.config/retroarch/cores/bsnes_libretro.so %ROM% diff --git a/resources/templates/es_systems.cfg_windows b/resources/templates/es_systems.cfg_windows index 041ae13b3..be2f597ba 100644 --- a/resources/templates/es_systems.cfg_windows +++ b/resources/templates/es_systems.cfg_windows @@ -345,7 +345,7 @@ fds - Famicom Disk System + Nintendo Famicom Disk System %ROMPATH%\fds .nes .NES .fds .FDS .unf .UNF .UNIF .UNIF .7z .7Z .zip .ZIP retroarch.exe -L "%EMUPATH%\cores\nestopia_libretro.dll" %ROM% @@ -363,7 +363,7 @@ gamegear - Sega Gamegear + Sega Game Gear %ROMPATH%\gamegear .mdx .MDX .md .MD .smd .SMD .gen .GEN .bin .BIN .cue .CUE .iso .ISO .sms .SMS .gg .GG .sg .SG .68k .68K .chd .CHD .7z .7Z .zip .ZIP retroarch.exe -L "%EMUPATH%\cores\genesis_plus_gx_libretro.dll" %ROM% @@ -381,7 +381,7 @@ gb - Game Boy + Nintendo Game Boy %ROMPATH%\gb .sfc .SFC .smc .SMC .gb .GB .gbc .GBC .7z .7Z .zip .ZIP retroarch.exe -L "%EMUPATH%\cores\bsnes_libretro.dll" %ROM% @@ -390,7 +390,7 @@ gba - Game Boy Advance + Nintendo Game Boy Advance %ROMPATH%\gba .gba .GBA .agb .AGB .bin .BIN .7z .7Z .zip .ZIP retroarch.exe -L "%EMUPATH%\cores\mednafen_gba_libretro.dll" %ROM% @@ -399,7 +399,7 @@ gbc - Game Boy Color + Nintendo Game Boy Color %ROMPATH%\gbc .sfc .SFC .smc .SMC .gb .GB .gbc .GBC .7z .7Z .zip .ZIP retroarch.exe -L "%EMUPATH%\cores\bsnes_libretro.dll" %ROM% From 130d9654f52690f04b59f9bf96912fe99025d616 Mon Sep 17 00:00:00 2001 From: Leon Styhre Date: Sun, 16 Aug 2020 15:58:29 +0200 Subject: [PATCH 2/3] Video scraping is now enabled by default. --- USERGUIDE.md | 4 ++-- es-core/src/Settings.cpp | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/USERGUIDE.md b/USERGUIDE.md index e164944bb..a4a3e4699 100644 --- a/USERGUIDE.md +++ b/USERGUIDE.md @@ -420,7 +420,7 @@ A selection of which systems to scrape for. It's possible to automatically scrap #### Content settings -Describes the content types to include in the scraping. Most users will probably not need to adjust so many of these, excect perhaps to enable video scraping. +Describes the content types to include in the scraping. Most users will probably not need to adjust so many of these. **Scrape game names** @@ -436,7 +436,7 @@ This includes the game description, release date, developer, publisher, genre an **Scrape videos** _(ScreenScraper only)_ -Videos of actual gameplay. This option is disabled by default as it slows down the scraping significantly as well as consuming bandwidth and disk space. Not all users want gameplay videos in their frontend after all. +Videos of actual gameplay. **Scrape screenshot images** diff --git a/es-core/src/Settings.cpp b/es-core/src/Settings.cpp index 12800c293..0afeec08f 100644 --- a/es-core/src/Settings.cpp +++ b/es-core/src/Settings.cpp @@ -164,7 +164,7 @@ void Settings::setDefaults() mBoolMap["ScrapeCovers"] = true; mBoolMap["ScrapeMarquees"] = true; mBoolMap["ScrapeScreenshots"] = true; - mBoolMap["ScrapeVideos"] = false; + mBoolMap["ScrapeVideos"] = true; // Other settings. #ifdef _RPI_ From 7383322bac642cf6896b28239d126dab85c77c30 Mon Sep 17 00:00:00 2001 From: Leon Styhre Date: Sun, 16 Aug 2020 16:53:49 +0200 Subject: [PATCH 3/3] Changed scraper to always display the game name. Some minor cosmetic changes as well. --- es-app/src/guis/GuiScraperSearch.cpp | 33 ++++++++++++++++++---------- 1 file changed, 22 insertions(+), 11 deletions(-) diff --git a/es-app/src/guis/GuiScraperSearch.cpp b/es-app/src/guis/GuiScraperSearch.cpp index 149527e38..f9764fd2e 100644 --- a/es-app/src/guis/GuiScraperSearch.cpp +++ b/es-app/src/guis/GuiScraperSearch.cpp @@ -311,18 +311,16 @@ void GuiScraperSearch::onSearchDone(const std::vector& resu } else { mFoundGame = true; - if (!(mSearchType == ACCEPT_SINGLE_MATCHES && results.size() == 1)) { - ComponentListRow row; + ComponentListRow row; - for (size_t i = 0; i < results.size(); i++) { - row.elements.clear(); - row.addElement(std::make_shared(mWindow, - Utils::String::toUpper(results.at(i).mdl.get("name")), font, color), true); - row.makeAcceptInputHandler([this, i] { returnResult(mScraperResults.at(i)); }); - mResultList->addRow(row); - } - mGrid.resetCursor(); + for (size_t i = 0; i < results.size(); i++) { + row.elements.clear(); + row.addElement(std::make_shared(mWindow, + Utils::String::toUpper(results.at(i).mdl.get("name")), font, color), true); + row.makeAcceptInputHandler([this, i] { returnResult(mScraperResults.at(i)); }); + mResultList->addRow(row); } + mGrid.resetCursor(); } mBlockAccept = false; @@ -382,7 +380,20 @@ void GuiScraperSearch::updateInfoPane() if (i != -1 && (int)mScraperResults.size() > i) { ScraperSearchResult& res = mScraperResults.at(i); - mResultName->setText(Utils::String::toUpper(res.mdl.get("name"))); + std::string formattedName; + + // Hack to make the game name align better with the image when using automatic mode. + mSearchType == ALWAYS_ACCEPT_FIRST_RESULT ? + formattedName = " " + Utils::String::toUpper(res.mdl.get("name")) : + formattedName = Utils::String::toUpper(res.mdl.get("name")); + + // If the game name is too long, cut it down. This does not affect the value that + // is actually scraped. + if (formattedName.size() > 40) + formattedName = formattedName.erase(40, formattedName.size()-40) + "..."; + + mResultName->setText(formattedName); + mResultDesc->setText(Utils::String::toUpper(res.mdl.get("desc"))); mDescContainer->reset();