Add empty hdd tmp to UI (#16462)

This option is need for those using sprx mods and amongst other homebrew reasons such as apollo savedata.
This commit is contained in:
Darkhost1999 2024-12-28 15:20:22 -06:00 committed by GitHub
parent 5e176a390f
commit e58bd419f6
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 222 additions and 185 deletions

View File

@ -200,6 +200,7 @@ enum class emu_settings_type
KeyboardType,
EnterButtonAssignment,
EnableHostRoot,
EmptyHdd0Tmp,
LimitCacheSize,
MaximumCacheSize,
ConsoleTimeOffset,
@ -399,6 +400,7 @@ inline static const std::map<emu_settings_type, cfg_location> settings_location
{ emu_settings_type::KeyboardType, { "System", "Keyboard Type"} },
{ emu_settings_type::EnterButtonAssignment, { "System", "Enter button assignment"}},
{ emu_settings_type::EnableHostRoot, { "VFS", "Enable /host_root/"}},
{ emu_settings_type::EmptyHdd0Tmp, { "VFS", "Empty /dev_hdd0/tmp/"}},
{ emu_settings_type::LimitCacheSize, { "VFS", "Limit disk cache size"}},
{ emu_settings_type::MaximumCacheSize, { "VFS", "Disk cache maximum size (MB)"}},
{ emu_settings_type::ConsoleTimeOffset, { "System", "Console time offset (s)"}},

View File

@ -1428,6 +1428,9 @@ settings_dialog::settings_dialog(std::shared_ptr<gui_settings> gui_settings, std
m_emu_settings->EnhanceCheckBox(ui->enableHostRoot, emu_settings_type::EnableHostRoot);
SubscribeTooltip(ui->enableHostRoot, tooltips.settings.enable_host_root);
m_emu_settings->EnhanceCheckBox(ui->emptyHdd0Tmp, emu_settings_type::EmptyHdd0Tmp);
SubscribeTooltip(ui->emptyHdd0Tmp, tooltips.settings.empty_hdd0_tmp);
m_emu_settings->EnhanceCheckBox(ui->enableCacheClearing, emu_settings_type::LimitCacheSize);
SubscribeTooltip(ui->gb_DiskCacheClearing, tooltips.settings.limit_cache_size);
if (game)

View File

@ -1900,9 +1900,11 @@
<attribute name="title">
<string>System</string>
</attribute>
<layout class="QVBoxLayout" name="systemTab_layout" stretch="0,0,0,0,1,0">
<layout class="QVBoxLayout" name="systemTab_layout" stretch="0,1,0">
<item>
<layout class="QHBoxLayout" name="systemTabLayout1" stretch="1,1,1">
<layout class="QHBoxLayout" name="systemTabHorizontalLayout" stretch="1,1,1">
<item>
<layout class="QVBoxLayout" name="systemTabLeftLayout">
<item>
<widget class="QGroupBox" name="gb_sysLang">
<property name="title">
@ -1915,38 +1917,6 @@
</layout>
</widget>
</item>
<item>
<widget class="QGroupBox" name="gb_keyboardType">
<property name="title">
<string>Keyboard Type</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout_keyboardType">
<item>
<widget class="QComboBox" name="keyboardType"/>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QGroupBox" name="gb_homebrew">
<property name="title">
<string>Homebrew</string>
</property>
<layout class="QVBoxLayout" name="gb_homebrew_layout">
<item>
<widget class="QCheckBox" name="enableHostRoot">
<property name="text">
<string>Enable /host_root/</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="systemTabLayout2" stretch="1,1,1">
<item>
<widget class="QGroupBox" name="gb_console_region">
<property name="title">
@ -1959,6 +1929,97 @@
</layout>
</widget>
</item>
<item>
<widget class="QGroupBox" name="gb_enterButtonAssignment">
<property name="title">
<string>Enter Button Assignment</string>
</property>
<layout class="QVBoxLayout" name="gb_enterButtonAssignment_layout">
<item>
<widget class="QRadioButton" name="enterButtonAssignCircle">
<property name="text">
<string notr="true">Enter with the Circle button</string>
</property>
</widget>
</item>
<item>
<widget class="QRadioButton" name="enterButtonAssignCross">
<property name="text">
<string notr="true">Enter with the Cross button</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QGroupBox" name="gb_DiskCacheClearing">
<property name="title">
<string>Disk Cache</string>
</property>
<layout class="QVBoxLayout" name="gb_DiskCacheClearing_layout">
<item>
<widget class="QCheckBox" name="enableCacheClearing">
<property name="text">
<string>Clear cache automatically</string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="maximumCacheSizeLabel">
<property name="text">
<string>Cache size: 3072 MB</string>
</property>
</widget>
</item>
<item>
<widget class="QSlider" name="maximumCacheSize">
<property name="pageStep">
<number>512</number>
</property>
<property name="orientation">
<enum>Qt::Orientation::Horizontal</enum>
</property>
<property name="tickPosition">
<enum>QSlider::TickPosition::TicksBelow</enum>
</property>
<property name="tickInterval">
<number>1024</number>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<spacer name="systemTabLeftVerticalSpacer">
<property name="orientation">
<enum>Qt::Orientation::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
</spacer>
</item>
</layout>
</item>
<item>
<layout class="QVBoxLayout" name="systemTabMiddleLayout">
<item>
<widget class="QGroupBox" name="gb_keyboardType">
<property name="title">
<string>Keyboard Type</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout_keyboardType">
<item>
<widget class="QComboBox" name="keyboardType"/>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QGroupBox" name="gb_console_time">
<property name="title">
@ -2017,78 +2078,39 @@
</widget>
</item>
<item>
<widget class="QWidget" name="systemTabSpacerWidget2" native="true"/>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="systemTabLayout3" stretch="1,1,1">
<item>
<widget class="QGroupBox" name="gb_enterButtonAssignment">
<property name="title">
<string>Enter Button Assignment</string>
</property>
<layout class="QVBoxLayout" name="gb_enterButtonAssignment_layout">
<item>
<widget class="QRadioButton" name="enterButtonAssignCircle">
<property name="text">
<string notr="true">Enter with the Circle button</string>
</property>
</widget>
</item>
<item>
<widget class="QRadioButton" name="enterButtonAssignCross">
<property name="text">
<string notr="true">Enter with the Cross button</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QWidget" name="systemTabSpacerWidget3" native="true"/>
</item>
<item>
<widget class="QWidget" name="systemTabSpacerWidget4" native="true"/>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="systemTabLayout4" stretch="1,1,1">
<item>
<widget class="QGroupBox" name="gb_DiskCacheClearing">
<property name="title">
<string>Disk Cache</string>
</property>
<layout class="QVBoxLayout" name="gb_DiskCacheClearing_layout">
<item>
<widget class="QCheckBox" name="enableCacheClearing">
<property name="text">
<string>Clear cache automatically</string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="maximumCacheSizeLabel">
<property name="text">
<string>Cache size: 3072 MB</string>
</property>
</widget>
</item>
<item>
<widget class="QSlider" name="maximumCacheSize">
<property name="pageStep">
<number>512</number>
</property>
<spacer name="systemTabMiddleVerticalSpacer">
<property name="orientation">
<enum>Qt::Orientation::Horizontal</enum>
<enum>Qt::Orientation::Vertical</enum>
</property>
<property name="tickPosition">
<enum>QSlider::TickPosition::TicksBelow</enum>
<property name="sizeHint" stdset="0">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="tickInterval">
<number>1024</number>
</spacer>
</item>
</layout>
</item>
<item>
<layout class="QVBoxLayout" name="systemTabRightLayout">
<item>
<widget class="QGroupBox" name="gb_homebrew">
<property name="title">
<string>Homebrew</string>
</property>
<layout class="QVBoxLayout" name="gb_homebrew_layout">
<item>
<widget class="QCheckBox" name="enableHostRoot">
<property name="text">
<string>Enable /host_root/</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="emptyHdd0Tmp">
<property name="text">
<string>Empty /dev_hdd0/tmp/</string>
</property>
</widget>
</item>
@ -2096,10 +2118,19 @@
</widget>
</item>
<item>
<widget class="QWidget" name="systemTabSpacerWidget5" native="true"/>
<spacer name="systemTabRightVerticalSpacer">
<property name="orientation">
<enum>Qt::Orientation::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QWidget" name="systemTabSpacerWidget6" native="true"/>
</layout>
</item>
</layout>
</item>

View File

@ -260,7 +260,8 @@ public:
const QString system_language = tr("Some games may fail to boot if the system language is not available in the game itself.\nOther games will switch language automatically to what is selected here.\nIt is recommended leaving this on a language supported by the game.");
const QString keyboard_type = tr("Sets the used keyboard layout.\nCurrently only US, Japanese and German layouts are fully supported at this moment.");
const QString enter_button_assignment = tr("The button used for enter/accept/confirm in system dialogs.\nChange this to use the Circle button instead, which is the default configuration on Japanese systems and in many Japanese games.\nIn these cases having the cross button assigned can often lead to confusion.");
const QString enable_host_root = tr("Required for some Homebrew.\nIf unsure, don't use this option.");
const QString enable_host_root = tr("Required for some Homebrew.\nIf unsure, do not use this option.");
const QString empty_hdd0_tmp = tr("Required for some Homebrew or Game Mods.\nIf unsure, do not use this option");
const QString limit_cache_size = tr("Automatically removes older files from disk cache on boot if it grows larger than the specified value.\nGames can use the cache folder to temporarily store data outside of system memory. It is not used for long-term storage.\n\nThis setting is only available in the global configuration.");
const QString console_time_offset = tr("Sets the time to be used within the console. This will be applied as an offset that tracks wall clock time.\nCan be reset to current wall clock time by clicking \"Set to Now\".");
} settings;