Compare commits

...

7 Commits

Author SHA1 Message Date
TheLastRar
f03ab6f728 Deps: Bump ffnvcodec to 13.0.19.0 2026-01-28 01:14:08 +01:00
PCSX2 Bot
e9275d78b5 [ci skip] Qt: Update Base Translation. 2026-01-28 01:04:00 +01:00
lightningterror
8ababb3890 GS/DX/VK: Properly align uniform buffers.
Make sure uniform buffers are 16 bytes aligned.
Make sure full size is 32 bytes with padding, was 28 previously which can be bad for cpu cache.
2026-01-28 01:00:36 +01:00
Mrlinkwii
422aba4b20 UI : rename fast boot option heading 2026-01-27 12:01:20 +01:00
wxvu
045b9bbf40 GameDB: Add EE Nearest Rounding to Steambot Chronicles (Bumpy Trot)
GameDB: Add EE Nearest Rounding to Steambot Chronicles (Bumpy Trot)

GameDB: Add EE Nearest Rounding to Steambot Chronicles (Bumpy Trot)
2026-01-27 12:00:25 +01:00
PCSX2 Bot
1f519acf92 [ci skip] Qt: Update Base Translation. 2026-01-27 11:59:55 +01:00
lightningterror
ac9ebdecba GS/DX12: Check if D3D12GetInterface is supported first.
On older versions of Windows 10 (example 2019 LTSC) D3D12GetInterface may fail because it doesn't exist, in such case we can check if D3D12GetInterface exists first.
2026-01-27 00:09:43 +01:00
9 changed files with 193 additions and 175 deletions

View File

@@ -25,7 +25,7 @@ LIBBACKTRACE=ad106d5fdd5d960bd33fae1c48a351af567fd075
LIBJPEGTURBO=3.1.2
LIBPNG=1.6.53
LIBWEBP=1.6.0
NVENC=11.1.5.3
NVENC=13.0.19.0
SDL=SDL3-3.4.0
QT=6.10.1
QTAPNG=1.3.0
@@ -57,7 +57,7 @@ e4ab7009bf0629fd11982d4c2aa83964cf244cffba7347ecd39019a9e38c4564 libwebp-$LIBWE
082cbf5f429e0d80820f68dc2b507a94d4cc1b4e70817b119bbb8ec6a69584b8 $SDL.tar.gz
452a1a290bd0cf18737fad0057dc17b7fdf10a73eda2d6d4f31ba04fda25ef2c libpng-$LIBPNG-apng.patch.gz
537512904744b35e232912055ccf8ec66d768639ff3abe5788d90d792ec5f48b lz4-$LZ4.tar.gz
2974b91062197e0527dffa3aadd8fe3bfa6681ae45f5ff9181bc0ca6479abd59 nv-codec-headers-$NVENC.tar.gz
13da39edb3a40ed9713ae390ca89faa2f1202c9dda869ef306a8d4383e242bee nv-codec-headers-$NVENC.tar.gz
c465aa56757e7746ac707f582b6e2d51546569a4a2488c1172fb543aa5fdfc2c vulkan-sdk-$VULKAN.tar.gz
eb33e51f49a15e023950cd7825ca74a4a2b43db8354825ac24fc1b7ee09e6fa3 zstd-$ZSTD.tar.gz
5a6226f7e23db51fdc3223121eba53f3f5447cf0cc4d6cb82a3a2df7a65d265d qtbase-everywhere-src-$QT.tar.xz

View File

@@ -2075,6 +2075,8 @@ SCAJ-20128:
SCAJ-20129:
name: "Ponkotsu Roman Daikatsugeki Bumpy Trot"
region: "NTSC-Unk"
roundModes:
eeRoundMode: 0 # Fixes broken load triggers.
gsHWFixes:
getSkipCount: "GSC_IRem"
halfPixelOffset: 2 # Aligns effects.
@@ -7614,6 +7616,8 @@ SCKA-20058:
name: "액션 로망 범피 트롯"
name-en: "Action Romance Bumpy Trot"
region: "NTSC-K"
roundModes:
eeRoundMode: 0 # Fixes broken load triggers.
gsHWFixes:
getSkipCount: "GSC_IRem"
halfPixelOffset: 2 # Aligns effects.
@@ -25578,6 +25582,8 @@ SLES-54137:
SLES-54138:
name: "Steambot Chronicles"
region: "PAL-E"
roundModes:
eeRoundMode: 0 # Fixes broken load triggers.
gsHWFixes:
getSkipCount: "GSC_IRem"
halfPixelOffset: 2 # Aligns effects.
@@ -26228,6 +26234,8 @@ SLES-54333:
SLES-54335:
name: "Steambot Chronicles"
region: "PAL-F"
roundModes:
eeRoundMode: 0 # Fixes broken load triggers.
gsHWFixes:
getSkipCount: "GSC_IRem"
halfPixelOffset: 2 # Aligns effects.
@@ -35853,6 +35861,8 @@ SLPM-60255:
name-sort: "ぽんこつろまんだいかつげきばんぴーとろっと [たいけんばん]"
name-en: "Ponkotsu Roeman Daikatsugeki Bumpy Trot [Trial]"
region: "NTSC-J"
roundModes:
eeRoundMode: 0 # Fixes broken load triggers.
gsHWFixes:
getSkipCount: "GSC_IRem"
halfPixelOffset: 2 # Aligns effects.
@@ -35924,6 +35934,8 @@ SLPM-60266:
name-sort: "ぽんこつろまんだいかつげきばんぴーとろっと [たいけんばん]"
name-en: "Ponkotsu Roeman Daikatsugeki Bumpy Trot [Trial]"
region: "NTSC-J"
roundModes:
eeRoundMode: 0 # Fixes broken load triggers.
gsHWFixes:
getSkipCount: "GSC_IRem"
halfPixelOffset: 2 # Aligns effects.
@@ -59824,6 +59836,8 @@ SLPS-25457:
name-sort: "ぽんこつろまんだいかつげきばんぴーとろっと"
name-en: "Ponkotsu Roeman Daikatsugeki Bumpy Trot"
region: "NTSC-J"
roundModes:
eeRoundMode: 0 # Fixes broken load triggers.
gsHWFixes:
getSkipCount: "GSC_IRem"
halfPixelOffset: 2 # Aligns effects.
@@ -61228,6 +61242,8 @@ SLPS-25683:
name-sort: "ぽんこつろまんだいかつげきばんぴーとろっと [Irem COLLECTION]"
name-en: "Ponkotsu Roman Daikatsugeki Bumpy Trot [Irem Collection]"
region: "NTSC-J"
roundModes:
eeRoundMode: 0 # Fixes broken load triggers.
gsHWFixes:
getSkipCount: "GSC_IRem"
halfPixelOffset: 2 # Aligns effects.
@@ -71360,6 +71376,8 @@ SLUS-21344:
name: "Steambot Chronicles"
region: "NTSC-U"
compat: 5
roundModes:
eeRoundMode: 0 # Fixes broken load triggers.
gsHWFixes:
getSkipCount: "GSC_IRem"
halfPixelOffset: 2 # Aligns effects.
@@ -74901,6 +74919,8 @@ SLUS-28059:
SLUS-28061:
name: "Steambot Chronicles [Trade Demo]"
region: "NTSC-U"
roundModes:
eeRoundMode: 0 # Fixes broken load triggers.
gsHWFixes:
getSkipCount: "GSC_IRem"
halfPixelOffset: 2 # Aligns effects.
@@ -75679,6 +75699,8 @@ SLUS-29185:
SLUS-29188:
name: "Steambot Chronicles [Regular Demo]"
region: "NTSC-U"
roundModes:
eeRoundMode: 0 # Fixes broken load triggers.
gsHWFixes:
getSkipCount: "GSC_IRem"
halfPixelOffset: 2 # Aligns effects.

View File

@@ -135,7 +135,7 @@
<item>
<widget class="QGroupBox" name="groupBox_2">
<property name="title">
<string>Options and Patches</string>
<string>Fast Boot Options</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<item>

View File

@@ -2223,7 +2223,7 @@ Leaderboard Position: {1} of {2}</source>
</message>
<message>
<location filename="../Settings/BIOSSettingsWidget.ui" line="138"/>
<source>Options and Patches</source>
<source>Fast Boot Options</source>
<translation type="unfinished"></translation>
</message>
<message>
@@ -6804,11 +6804,6 @@ The URL was: %1</source>
<source>BIOS Selection</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/ImGui/FullscreenUI.cpp" line="9512"/>
<source>Options and Patches</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/ImGui/FullscreenUI.cpp" line="9513"/>
<source>Skips the intro screen, and bypasses region checks.</source>
@@ -9942,6 +9937,11 @@ Do you want to shutdown anyway and IRREVERSIBLY CORRUPT YOUR MEMORY CARD?</sourc
<source>Shows the number of dumped and loaded texture replacements on the OSD.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/ImGui/FullscreenUI.cpp" line="9512"/>
<source>Fast Boot Options</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/ImGui/FullscreenUI.cpp" line="9604"/>
<source>Bilinear Dirty Upscale</source>
@@ -11893,7 +11893,7 @@ This action cannot be undone.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/GS/Renderers/Vulkan/GSDeviceVK.cpp" line="5055"/>
<location filename="../../pcsx2/GS/Renderers/Vulkan/GSDeviceVK.cpp" line="5052"/>
<source>Spin GPU During Readbacks is enabled, but calibrated timestamps are unavailable. This might be really slow.</source>
<translation type="unfinished"></translation>
</message>
@@ -19742,12 +19742,12 @@ Savestates should not be used in place of in-game saves.</source>
<context>
<name>MemoryCardListWidget</name>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="456"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="450"/>
<source>Yes</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="456"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="450"/>
<source>No</source>
<translation type="unfinished"></translation>
</message>
@@ -19781,7 +19781,7 @@ Savestates should not be used in place of in-game saves.</source>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.ui" line="90"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="113"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="107"/>
<source>Reset</source>
<translation type="unfinished"></translation>
</message>
@@ -19812,170 +19812,149 @@ Savestates should not be used in place of in-game saves.</source>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.ui" line="148"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="305"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="299"/>
<source>Create</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.ui" line="155"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="299"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="293"/>
<source>Rename</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.ui" line="162"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="300"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="294"/>
<source>Convert</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.ui" line="169"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="301"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="295"/>
<source>Delete</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.ui" line="181"/>
<source>Settings</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.ui" line="187"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="62"/>
<source>Automatically manage saves based on running game</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="63"/>
<source>Checked</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="64"/>
<source>(Folder type only / Card size: Auto) Loads only the relevant booted game saves, ignoring others. Avoids running out of space for saves.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="93"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="87"/>
<source>Swap Memory Cards</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="113"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="107"/>
<source>Eject Memory Card</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="152"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="275"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="340"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="146"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="269"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="334"/>
<source>Error</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="212"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="222"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="206"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="216"/>
<source>Delete Memory Card</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="237"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="244"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="251"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="258"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="231"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="238"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="245"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="252"/>
<source>Rename Memory Card</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="237"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="231"/>
<source>New Card Name</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="244"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="238"/>
<source>New name is invalid, it must end with .ps2</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="252"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="246"/>
<source>New name is invalid, a card with this name already exists.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="105"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="99"/>
<source>Slot %1</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="152"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="146"/>
<source>This Memory Card cannot be recognized or is not a valid file type.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="213"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="207"/>
<source>Are you sure you wish to delete the Memory Card &apos;%1&apos;?
This action cannot be reversed, and you will lose any saves on the card.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="223"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="217"/>
<source>Failed to delete the Memory Card. The log may have more information.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="259"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="253"/>
<source>Failed to rename Memory Card. The log may contain more information.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="275"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="269"/>
<source>Cannot convert an unformatted memory card.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="294"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="288"/>
<source>Use for Slot %1</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="340"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="334"/>
<source>Both slots must have a card selected to swap.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="356"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="350"/>
<source>PS2 (8MB)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="359"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="353"/>
<source>PS2 (16MB)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="362"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="356"/>
<source>PS2 (32MB)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="365"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="359"/>
<source>PS2 (64MB)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="368"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="362"/>
<source>PS1 (128KB)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="372"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="381"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="366"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="375"/>
<source>Unknown</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="377"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="371"/>
<source>PS2 (Folder)</source>
<translation type="unfinished"></translation>
</message>
@@ -19983,12 +19962,12 @@ This action cannot be reversed, and you will lose any saves on the card.</source
<context>
<name>MemoryCardSlotWidget</name>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="513"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="507"/>
<source>%1 [%2]</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="519"/>
<location filename="../Settings/MemoryCardSettingsWidget.cpp" line="513"/>
<source>%1 [Missing]</source>
<extracomment>Ignore Crowdin&apos;s warning for [Missing], the text should be translated.</extracomment>
<translation type="unfinished"></translation>
@@ -22483,115 +22462,120 @@ Scanning recursively takes more time, but will identify files in subdirectories.
</message>
<message>
<location filename="../ShortcutCreationDialog.cpp" line="139"/>
<location filename="../ShortcutCreationDialog.cpp" line="154"/>
<location filename="../ShortcutCreationDialog.cpp" line="163"/>
<location filename="../ShortcutCreationDialog.cpp" line="160"/>
<location filename="../ShortcutCreationDialog.cpp" line="170"/>
<location filename="../ShortcutCreationDialog.cpp" line="181"/>
<location filename="../ShortcutCreationDialog.cpp" line="203"/>
<location filename="../ShortcutCreationDialog.cpp" line="214"/>
<location filename="../ShortcutCreationDialog.cpp" line="290"/>
<location filename="../ShortcutCreationDialog.cpp" line="301"/>
<location filename="../ShortcutCreationDialog.cpp" line="309"/>
<location filename="../ShortcutCreationDialog.cpp" line="337"/>
<location filename="../ShortcutCreationDialog.cpp" line="370"/>
<location filename="../ShortcutCreationDialog.cpp" line="409"/>
<location filename="../ShortcutCreationDialog.cpp" line="177"/>
<location filename="../ShortcutCreationDialog.cpp" line="188"/>
<location filename="../ShortcutCreationDialog.cpp" line="210"/>
<location filename="../ShortcutCreationDialog.cpp" line="221"/>
<location filename="../ShortcutCreationDialog.cpp" line="297"/>
<location filename="../ShortcutCreationDialog.cpp" line="308"/>
<location filename="../ShortcutCreationDialog.cpp" line="316"/>
<location filename="../ShortcutCreationDialog.cpp" line="344"/>
<location filename="../ShortcutCreationDialog.cpp" line="377"/>
<location filename="../ShortcutCreationDialog.cpp" line="416"/>
<source>Failed to create shortcut</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ShortcutCreationDialog.cpp" line="139"/>
<location filename="../ShortcutCreationDialog.cpp" line="301"/>
<location filename="../ShortcutCreationDialog.cpp" line="308"/>
<source>Filename contains illegal character.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ShortcutCreationDialog.cpp" line="154"/>
<location filename="../ShortcutCreationDialog.cpp" line="160"/>
<source>Could not create start menu directory.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ShortcutCreationDialog.cpp" line="163"/>
<source>Home path is empty.</source>
<location filename="../ShortcutCreationDialog.cpp" line="170"/>
<source>&apos;Desktop&apos; directory not found</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ShortcutCreationDialog.cpp" line="170"/>
<source>User&apos;s &apos;Start Menu\Programs&apos; directory not found</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ShortcutCreationDialog.cpp" line="177"/>
<source>A shortcut with the same name already exists.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ShortcutCreationDialog.cpp" line="181"/>
<location filename="../ShortcutCreationDialog.cpp" line="370"/>
<location filename="../ShortcutCreationDialog.cpp" line="188"/>
<location filename="../ShortcutCreationDialog.cpp" line="377"/>
<source>File path contains invalid character(s).</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ShortcutCreationDialog.cpp" line="203"/>
<location filename="../ShortcutCreationDialog.cpp" line="210"/>
<source>CoInitialize failed (%1)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ShortcutCreationDialog.cpp" line="223"/>
<location filename="../ShortcutCreationDialog.cpp" line="230"/>
<source>CoCreateInstance failed</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ShortcutCreationDialog.cpp" line="232"/>
<location filename="../ShortcutCreationDialog.cpp" line="239"/>
<source>SetPath failed (%1)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ShortcutCreationDialog.cpp" line="241"/>
<location filename="../ShortcutCreationDialog.cpp" line="248"/>
<source>SetWorkingDirectory failed (%1)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ShortcutCreationDialog.cpp" line="252"/>
<location filename="../ShortcutCreationDialog.cpp" line="259"/>
<source>SetArguments failed (%1)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ShortcutCreationDialog.cpp" line="263"/>
<location filename="../ShortcutCreationDialog.cpp" line="270"/>
<source>SetIconLocation failed (%1)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ShortcutCreationDialog.cpp" line="271"/>
<location filename="../ShortcutCreationDialog.cpp" line="278"/>
<source>QueryInterface failed (%1)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ShortcutCreationDialog.cpp" line="280"/>
<location filename="../ShortcutCreationDialog.cpp" line="287"/>
<source>Failed to save the shortcut (%1)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ShortcutCreationDialog.cpp" line="290"/>
<location filename="../ShortcutCreationDialog.cpp" line="297"/>
<source>Cannot create a shortcut without a title.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ShortcutCreationDialog.cpp" line="309"/>
<location filename="../ShortcutCreationDialog.cpp" line="316"/>
<source>Executable path is empty.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ShortcutCreationDialog.cpp" line="337"/>
<location filename="../ShortcutCreationDialog.cpp" line="344"/>
<source>Path to the Home directory is empty.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ShortcutCreationDialog.cpp" line="399"/>
<location filename="../ShortcutCreationDialog.cpp" line="406"/>
<source>Desktop Shortcut Files (*.desktop)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ShortcutCreationDialog.cpp" line="401"/>
<location filename="../ShortcutCreationDialog.cpp" line="408"/>
<source>Select Shortcut Save Destination</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ShortcutCreationDialog.cpp" line="409"/>
<location filename="../ShortcutCreationDialog.cpp" line="416"/>
<source>Failed to create .desktop file</source>
<translation type="unfinished"></translation>
</message>
@@ -25524,42 +25508,42 @@ Error was: {}</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3171"/>
<location filename="../../pcsx2/VMManager.cpp" line="3169"/>
<source>Fast CDVD is enabled, this may break games.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3175"/>
<location filename="../../pcsx2/VMManager.cpp" line="3173"/>
<source>Cycle rate/skip is not at default, this may crash or make games run too slow.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3185"/>
<location filename="../../pcsx2/VMManager.cpp" line="3183"/>
<source>Upscale multiplier is below native, this will break rendering.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3225"/>
<location filename="../../pcsx2/VMManager.cpp" line="3223"/>
<source>Mipmapping is disabled. This may break rendering in some games.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3230"/>
<location filename="../../pcsx2/VMManager.cpp" line="3228"/>
<source>Debug device is enabled. This will massively reduce performance.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3260"/>
<location filename="../../pcsx2/VMManager.cpp" line="3258"/>
<source>Texture filtering is not set to Bilinear (PS2). This will break rendering in some games.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3723"/>
<location filename="../../pcsx2/VMManager.cpp" line="3721"/>
<source>No Game Running</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3190"/>
<location filename="../../pcsx2/VMManager.cpp" line="3188"/>
<source>Trilinear filtering is not set to automatic. This may break rendering in some games.</source>
<translation type="unfinished"></translation>
</message>
@@ -25643,142 +25627,142 @@ PCSX2 will be able to run once you&apos;ve placed your BIOS image inside the fol
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3118"/>
<location filename="../../pcsx2/VMManager.cpp" line="3116"/>
<source>Cheats have been disabled due to RetroAchievements Hardcore Mode.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3195"/>
<location filename="../../pcsx2/VMManager.cpp" line="3193"/>
<source>Blending Accuracy is below Basic, this may break effects in some games.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3200"/>
<location filename="../../pcsx2/VMManager.cpp" line="3198"/>
<source>Hardware Download Mode is not set to Accurate, this may break rendering in some games.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3235"/>
<location filename="../../pcsx2/VMManager.cpp" line="3233"/>
<source>Dithering is set to Force 32 bit. This will break rendering in some games.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3240"/>
<location filename="../../pcsx2/VMManager.cpp" line="3238"/>
<source>Dithering is disabled. This will cause color banding in some games.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3245"/>
<location filename="../../pcsx2/VMManager.cpp" line="3243"/>
<source>Integer scaling is enabled. This may shrink the image.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3254"/>
<location filename="../../pcsx2/VMManager.cpp" line="3252"/>
<source>Graphics API is not set to Automatic. This may cause performance problems and graphical issues.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3266"/>
<location filename="../../pcsx2/VMManager.cpp" line="3264"/>
<source>EE FPU Round Mode is not set to default, this may break some games.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3272"/>
<location filename="../../pcsx2/VMManager.cpp" line="3270"/>
<source>EE FPU Clamp Mode is not set to default, this may break some games.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3277"/>
<location filename="../../pcsx2/VMManager.cpp" line="3275"/>
<source>VU0 Round Mode is not set to default, this may break some games.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3282"/>
<location filename="../../pcsx2/VMManager.cpp" line="3280"/>
<source>VU1 Round Mode is not set to default, this may break some games.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3289"/>
<location filename="../../pcsx2/VMManager.cpp" line="3287"/>
<source>VU Clamp Mode is not set to default, this may break some games.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3294"/>
<location filename="../../pcsx2/VMManager.cpp" line="3292"/>
<source>128MB RAM is enabled. Compatibility with some games may be affected.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3299"/>
<location filename="../../pcsx2/VMManager.cpp" line="3297"/>
<source>Game Fixes are not enabled. Compatibility with some games may be affected.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3304"/>
<location filename="../../pcsx2/VMManager.cpp" line="3302"/>
<source>Compatibility Patches are not enabled. Compatibility with some games may be affected.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3308"/>
<location filename="../../pcsx2/VMManager.cpp" line="3306"/>
<source>Frame rate for NTSC is not default. This may break some games.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3310"/>
<location filename="../../pcsx2/VMManager.cpp" line="3308"/>
<source>Frame rate for PAL is not default. This may break some games.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3329"/>
<location filename="../../pcsx2/VMManager.cpp" line="3327"/>
<source>EE Recompiler is not enabled, this will significantly reduce performance.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3334"/>
<location filename="../../pcsx2/VMManager.cpp" line="3332"/>
<source>VU0 Recompiler is not enabled, this will significantly reduce performance.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3339"/>
<location filename="../../pcsx2/VMManager.cpp" line="3337"/>
<source>VU1 Recompiler is not enabled, this will significantly reduce performance.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3344"/>
<location filename="../../pcsx2/VMManager.cpp" line="3342"/>
<source>IOP Recompiler is not enabled, this will significantly reduce performance.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3349"/>
<location filename="../../pcsx2/VMManager.cpp" line="3347"/>
<source>EE Cache is enabled, this will significantly reduce performance.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3354"/>
<location filename="../../pcsx2/VMManager.cpp" line="3352"/>
<source>EE Wait Loop Detection is not enabled, this may reduce performance.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3359"/>
<location filename="../../pcsx2/VMManager.cpp" line="3357"/>
<source>INTC Spin Detection is not enabled, this may reduce performance.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3362"/>
<location filename="../../pcsx2/VMManager.cpp" line="3360"/>
<source>Fastmem is not enabled, this will reduce performance.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3366"/>
<location filename="../../pcsx2/VMManager.cpp" line="3364"/>
<source>Instant VU1 is disabled, this may reduce performance.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3371"/>
<location filename="../../pcsx2/VMManager.cpp" line="3369"/>
<source>mVU Flag Hack is not enabled, this may reduce performance.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3205"/>
<location filename="../../pcsx2/VMManager.cpp" line="3203"/>
<source>GPU Palette Conversion is enabled, this may reduce performance.</source>
<translation type="unfinished"></translation>
</message>
@@ -25788,17 +25772,17 @@ PCSX2 will be able to run once you&apos;ve placed your BIOS image inside the fol
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3210"/>
<location filename="../../pcsx2/VMManager.cpp" line="3208"/>
<source>Texture Preloading is not Full, this may reduce performance.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3215"/>
<location filename="../../pcsx2/VMManager.cpp" line="3213"/>
<source>Estimate texture region is enabled, this may reduce performance.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../pcsx2/VMManager.cpp" line="3220"/>
<location filename="../../pcsx2/VMManager.cpp" line="3218"/>
<source>Texture dumping is enabled, this will continually dump textures to disk.</source>
<translation type="unfinished"></translation>
</message>

View File

@@ -899,14 +899,13 @@ void GSDevice::ShadeBoost()
if (ResizeRenderTarget(&m_target_tmp, m_current->GetWidth(), m_current->GetHeight(), false, false))
{
// predivide to avoid the divide (multiply) in the shader
const float params[4] = {
const GSVector4 params(
static_cast<float>(GSConfig.ShadeBoost_Brightness) * (1.0f / 50.0f),
static_cast<float>(GSConfig.ShadeBoost_Contrast) * (1.0f / 50.0f),
static_cast<float>(GSConfig.ShadeBoost_Saturation) * (1.0f / 50.0f),
static_cast<float>(GSConfig.ShadeBoost_Gamma) * (1.0f / 50.0f),
};
static_cast<float>(GSConfig.ShadeBoost_Gamma) * (1.0f / 50.0f));
DoShadeBoost(m_current, m_target_tmp, params);
DoShadeBoost(m_current, m_target_tmp, params.v);
m_current = m_target_tmp;
}

View File

@@ -1397,7 +1397,7 @@ void GSDevice11::PresentRect(GSTexture* sTex, const GSVector4& sRect, GSTexture*
const float right = dRect.z * 2 / ds.x - 1.0f;
const float bottom = 1.0f - dRect.w * 2 / ds.y;
GSVertexPT1 vertices[] =
const GSVertexPT1 vertices[] =
{
{GSVector4(left, top, 0.5f, 1.0f), GSVector2(sRect.x, sRect.y)},
{GSVector4(right, top, 0.5f, 1.0f), GSVector2(sRect.z, sRect.y)},
@@ -1427,13 +1427,14 @@ void GSDevice11::PresentRect(GSTexture* sTex, const GSVector4& sRect, GSTexture*
void GSDevice11::UpdateCLUTTexture(GSTexture* sTex, float sScale, u32 offsetX, u32 offsetY, GSTexture* dTex, u32 dOffset, u32 dSize)
{
// match merge cb
struct Uniforms
struct alignas(16) Uniforms
{
float scale;
float pad1[3];
u32 offsetX, offsetY, dOffset;
u32 pad2;
};
const Uniforms cb = {sScale, {}, offsetX, offsetY, dOffset};
const Uniforms cb = {sScale, {}, offsetX, offsetY, dOffset, 0};
m_ctx->UpdateSubresource(m_merge.cb.get(), 0, nullptr, &cb, 0, 0);
const GSVector4 dRect(0, 0, dSize, 1);
@@ -1444,14 +1445,15 @@ void GSDevice11::UpdateCLUTTexture(GSTexture* sTex, float sScale, u32 offsetX, u
void GSDevice11::ConvertToIndexedTexture(GSTexture* sTex, float sScale, u32 offsetX, u32 offsetY, u32 SBW, u32 SPSM, GSTexture* dTex, u32 DBW, u32 DPSM)
{
// match merge cb
struct Uniforms
struct alignas(16) Uniforms
{
float scale;
float pad1[3];
u32 SBW, DBW, SPSM;
u32 pad2;
};
const Uniforms cb = {sScale, {}, SBW, DBW, SPSM};
const Uniforms cb = {sScale, {}, SBW, DBW, SPSM, 0};
m_ctx->UpdateSubresource(m_merge.cb.get(), 0, nullptr, &cb, 0, 0);
const GSVector4 dRect(0, 0, dTex->GetWidth(), dTex->GetHeight());
@@ -1461,7 +1463,7 @@ void GSDevice11::ConvertToIndexedTexture(GSTexture* sTex, float sScale, u32 offs
void GSDevice11::FilteredDownsampleTexture(GSTexture* sTex, GSTexture* dTex, u32 downsample_factor, const GSVector2i& clamp_min, const GSVector4& dRect)
{
struct Uniforms
struct alignas(16) Uniforms
{
float weight;
float step_multiplier;
@@ -2063,13 +2065,13 @@ void GSDevice11::RenderImGui()
UpdateImGuiTextures();
const float L = 0.0f;
constexpr float L = 0.0f;
const float R = static_cast<float>(m_window_info.surface_width);
const float T = 0.0f;
constexpr float T = 0.0f;
const float B = static_cast<float>(m_window_info.surface_height);
// clang-format off
const float ortho_projection[4][4] =
const GSVector4 ortho_projection[4] =
{
{ 2.0f/(R-L), 0.0f, 0.0f, 0.0f },
{ 0.0f, 2.0f/(T-B), 0.0f, 0.0f },

View File

@@ -193,11 +193,24 @@ void GSDevice12::LoadAgilitySDK()
if (agility_loaded)
return;
HRESULT hr;
// On older versions of Windows 10 (example 2019 LTSC) D3D12GetInterface may fail because it doesn't exist,
// in such case we can check if D3D12GetInterface exists first.
const HMODULE d3d12 = GetModuleHandleW(L"d3d12.dll");
if (!d3d12)
return;
using PFN_D3D12GetInterface = HRESULT(WINAPI*)(REFCLSID rclsid, REFIID riid, void** ppv);
auto pD3D12GetInterface = reinterpret_cast<PFN_D3D12GetInterface>(GetProcAddress(d3d12, "D3D12GetInterface"));
if (!pD3D12GetInterface)
{
Console.Error("D3D12: Agility SDK configuration is not available");
return;
}
// See https://microsoft.github.io/DirectX-Specs/d3d/IndependentDevices.html
ComPtr<ID3D12SDKConfiguration1> sdk_configuration;
hr = D3D12GetInterface(CLSID_D3D12SDKConfiguration, IID_PPV_ARGS(sdk_configuration.put()));
HRESULT hr;
hr = pD3D12GetInterface(CLSID_D3D12SDKConfiguration, IID_PPV_ARGS(sdk_configuration.put()));
if (FAILED(hr))
{
Console.Error("D3D12: Agility SDK configuration is not available");
@@ -1622,14 +1635,14 @@ void GSDevice12::UpdateCLUTTexture(
GSTexture* sTex, float sScale, u32 offsetX, u32 offsetY, GSTexture* dTex, u32 dOffset, u32 dSize)
{
// match merge cb
struct Uniforms
struct alignas(16) Uniforms
{
float scale;
float pad1[3];
u32 offsetX, offsetY, dOffset;
u32 pad2;
};
const Uniforms cb = {sScale, {}, offsetX, offsetY, dOffset};
const Uniforms cb = {sScale, {}, offsetX, offsetY, dOffset, 0};
SetUtilityRootSignature();
SetUtilityPushConstants(&cb, sizeof(cb));
@@ -1643,14 +1656,15 @@ void GSDevice12::ConvertToIndexedTexture(
GSTexture* sTex, float sScale, u32 offsetX, u32 offsetY, u32 SBW, u32 SPSM, GSTexture* dTex, u32 DBW, u32 DPSM)
{
// match merge cb
struct Uniforms
struct alignas(16) Uniforms
{
float scale;
float pad1[3];
u32 SBW, DBW, SPSM;
u32 pad2;
};
const Uniforms cb = {sScale, {}, SBW, DBW, SPSM};
const Uniforms cb = {sScale, {}, SBW, DBW, SPSM, 0};
SetUtilityRootSignature();
SetUtilityPushConstants(&cb, sizeof(cb));
@@ -1662,7 +1676,7 @@ void GSDevice12::ConvertToIndexedTexture(
void GSDevice12::FilteredDownsampleTexture(GSTexture* sTex, GSTexture* dTex, u32 downsample_factor, const GSVector2i& clamp_min, const GSVector4& dRect)
{
struct Uniforms
struct alignas(16) Uniforms
{
float weight;
float step_multiplier;
@@ -2171,7 +2185,7 @@ void GSDevice12::RenderImGui()
const float B = static_cast<float>(m_window_info.surface_height);
// clang-format off
const float ortho_projection[4][4] =
const GSVector4 ortho_projection[4] =
{
{ 2.0f/(R-L), 0.0f, 0.0f, 0.0f },
{ 0.0f, 2.0f/(T-B), 0.0f, 0.0f },

View File

@@ -3131,7 +3131,7 @@ void GSDeviceVK::UpdateCLUTTexture(
GSTexture* sTex, float sScale, u32 offsetX, u32 offsetY, GSTexture* dTex, u32 dOffset, u32 dSize)
{
// Super annoying, but apparently NVIDIA doesn't like floats/ints packed together in the same vec4?
struct Uniforms
struct alignas(16) Uniforms
{
u32 offsetX, offsetY, dOffset, pad1;
float scale;
@@ -3150,7 +3150,7 @@ void GSDeviceVK::UpdateCLUTTexture(
void GSDeviceVK::ConvertToIndexedTexture(
GSTexture* sTex, float sScale, u32 offsetX, u32 offsetY, u32 SBW, u32 SPSM, GSTexture* dTex, u32 DBW, u32 DPSM)
{
struct Uniforms
struct alignas(16) Uniforms
{
u32 SBW;
u32 DBW;
@@ -3171,7 +3171,7 @@ void GSDeviceVK::ConvertToIndexedTexture(
void GSDeviceVK::FilteredDownsampleTexture(GSTexture* sTex, GSTexture* dTex, u32 downsample_factor, const GSVector2i& clamp_min, const GSVector4& dRect)
{
struct Uniforms
struct alignas(16) Uniforms
{
GSVector2i clamp_min;
int downsample_factor;
@@ -4434,16 +4434,13 @@ void GSDeviceVK::RenderImGui()
UpdateImGuiTextures();
const float uniforms[2][2] = {{
2.0f / static_cast<float>(m_window_info.surface_width),
2.0f / static_cast<float>(m_window_info.surface_height),
},
{
-1.0f,
-1.0f,
}};
const GSVector4 uniforms(
2.0f / static_cast<float>(m_window_info.surface_width),
2.0f / static_cast<float>(m_window_info.surface_height),
-1.0f,
-1.0f);
SetUtilityPushConstants(uniforms, sizeof(uniforms));
SetUtilityPushConstants(&uniforms, sizeof(uniforms));
SetPipeline(m_imgui_pipeline);
if (m_utility_sampler != m_linear_sampler)

View File

@@ -4461,7 +4461,7 @@ void FullscreenUI::DrawBIOSSettingsPage()
});
}
MenuHeading(FSUI_CSTR("Options and Patches"));
MenuHeading(FSUI_CSTR("Fast Boot Options"));
DrawToggleSetting(bsi, FSUI_ICONSTR(ICON_FA_FORWARD_FAST, "Fast Boot"), FSUI_CSTR("Skips the intro screen, and bypasses region checks."),
"EmuCore", "EnableFastBoot", true);
@@ -9509,7 +9509,7 @@ TRANSLATE_NOOP("FullscreenUI", "Resets configuration to defaults (excluding cont
TRANSLATE_NOOP("FullscreenUI", "BIOS Configuration");
TRANSLATE_NOOP("FullscreenUI", "Changes the BIOS image used to start future sessions.");
TRANSLATE_NOOP("FullscreenUI", "BIOS Selection");
TRANSLATE_NOOP("FullscreenUI", "Options and Patches");
TRANSLATE_NOOP("FullscreenUI", "Fast Boot Options");
TRANSLATE_NOOP("FullscreenUI", "Skips the intro screen, and bypasses region checks.");
TRANSLATE_NOOP("FullscreenUI", "Speed Control");
TRANSLATE_NOOP("FullscreenUI", "Sets the speed when running without fast forwarding.");