summaryrefslogtreecommitdiff
path: root/src/core
diff options
context:
space:
mode:
authorGravatar lat9nq2023-05-10 17:57:25 -0400
committerGravatar lat9nq2023-07-21 10:56:07 -0400
commit8e151460265f04c7bf4a981b5f97f252a0444c27 (patch)
treedc02219effed841c9a2c20b013db9390ed3981c6 /src/core
parentper_game: Remove general tab (diff)
downloadyuzu-8e151460265f04c7bf4a981b5f97f252a0444c27.tar.gz
yuzu-8e151460265f04c7bf4a981b5f97f252a0444c27.tar.xz
yuzu-8e151460265f04c7bf4a981b5f97f252a0444c27.zip
configure_system: Implement with for loop
Diffstat (limited to 'src/core')
-rw-r--r--src/core/core.cpp20
-rw-r--r--src/core/file_sys/control_metadata.cpp3
-rw-r--r--src/core/file_sys/patch_manager.cpp4
-rw-r--r--src/core/hle/service/ns/ns.cpp2
-rw-r--r--src/core/hle/service/set/set.cpp10
5 files changed, 24 insertions, 15 deletions
diff --git a/src/core/core.cpp b/src/core/core.cpp
index da1baa892..e2902a91f 100644
--- a/src/core/core.cpp
+++ b/src/core/core.cpp
@@ -145,13 +145,7 @@ struct System::Impl {
145 core_timing.SetMulticore(is_multicore); 145 core_timing.SetMulticore(is_multicore);
146 core_timing.Initialize([&system]() { system.RegisterHostThread(); }); 146 core_timing.Initialize([&system]() { system.RegisterHostThread(); });
147 147
148 const auto posix_time = std::chrono::system_clock::now().time_since_epoch(); 148 RefreshTime();
149 const auto current_time =
150 std::chrono::duration_cast<std::chrono::seconds>(posix_time).count();
151 Settings::values.custom_rtc_differential =
152 (Settings::values.custom_rtc_enabled ? Settings::values.custom_rtc.GetValue()
153 : current_time) -
154 current_time;
155 149
156 // Create a default fs if one doesn't already exist. 150 // Create a default fs if one doesn't already exist.
157 if (virtual_filesystem == nullptr) { 151 if (virtual_filesystem == nullptr) {
@@ -188,6 +182,16 @@ struct System::Impl {
188 Initialize(system); 182 Initialize(system);
189 } 183 }
190 184
185 void RefreshTime() {
186 const auto posix_time = std::chrono::system_clock::now().time_since_epoch();
187 const auto current_time =
188 std::chrono::duration_cast<std::chrono::seconds>(posix_time).count();
189 Settings::values.custom_rtc_differential =
190 (Settings::values.custom_rtc_enabled ? Settings::values.custom_rtc.GetValue()
191 : current_time) -
192 current_time;
193 }
194
191 void Run() { 195 void Run() {
192 std::unique_lock<std::mutex> lk(suspend_guard); 196 std::unique_lock<std::mutex> lk(suspend_guard);
193 197
@@ -1022,6 +1026,8 @@ void System::Exit() {
1022} 1026}
1023 1027
1024void System::ApplySettings() { 1028void System::ApplySettings() {
1029 impl->RefreshTime();
1030
1025 if (IsPoweredOn()) { 1031 if (IsPoweredOn()) {
1026 Renderer().RefreshBaseSettings(); 1032 Renderer().RefreshBaseSettings();
1027 } 1033 }
diff --git a/src/core/file_sys/control_metadata.cpp b/src/core/file_sys/control_metadata.cpp
index cd9ac2e75..0697c29ae 100644
--- a/src/core/file_sys/control_metadata.cpp
+++ b/src/core/file_sys/control_metadata.cpp
@@ -68,7 +68,8 @@ NACP::NACP(VirtualFile file) {
68NACP::~NACP() = default; 68NACP::~NACP() = default;
69 69
70const LanguageEntry& NACP::GetLanguageEntry() const { 70const LanguageEntry& NACP::GetLanguageEntry() const {
71 Language language = language_to_codes[Settings::values.language_index.GetValue()]; 71 Language language =
72 language_to_codes[static_cast<s32>(Settings::values.language_index.GetValue())];
72 73
73 { 74 {
74 const auto& language_entry = raw.language_entries.at(static_cast<u8>(language)); 75 const auto& language_entry = raw.language_entries.at(static_cast<u8>(language));
diff --git a/src/core/file_sys/patch_manager.cpp b/src/core/file_sys/patch_manager.cpp
index d3286b352..2ba1b34a4 100644
--- a/src/core/file_sys/patch_manager.cpp
+++ b/src/core/file_sys/patch_manager.cpp
@@ -626,8 +626,8 @@ PatchManager::Metadata PatchManager::ParseControlNCA(const NCA& nca) const {
626 auto nacp = nacp_file == nullptr ? nullptr : std::make_unique<NACP>(nacp_file); 626 auto nacp = nacp_file == nullptr ? nullptr : std::make_unique<NACP>(nacp_file);
627 627
628 // Get language code from settings 628 // Get language code from settings
629 const auto language_code = 629 const auto language_code = Service::Set::GetLanguageCodeFromIndex(
630 Service::Set::GetLanguageCodeFromIndex(Settings::values.language_index.GetValue()); 630 static_cast<u32>(Settings::values.language_index.GetValue()));
631 631
632 // Convert to application language and get priority list 632 // Convert to application language and get priority list
633 const auto application_language = 633 const auto application_language =
diff --git a/src/core/hle/service/ns/ns.cpp b/src/core/hle/service/ns/ns.cpp
index 376067a95..91c5a2182 100644
--- a/src/core/hle/service/ns/ns.cpp
+++ b/src/core/hle/service/ns/ns.cpp
@@ -409,7 +409,7 @@ ResultVal<u8> IApplicationManagerInterface::GetApplicationDesiredLanguage(
409 409
410 // Get language code from settings 410 // Get language code from settings
411 const auto language_code = 411 const auto language_code =
412 Set::GetLanguageCodeFromIndex(Settings::values.language_index.GetValue()); 412 Set::GetLanguageCodeFromIndex(static_cast<s32>(Settings::values.language_index.GetValue()));
413 413
414 // Convert to application language, get priority list 414 // Convert to application language, get priority list
415 const auto application_language = ConvertToApplicationLanguage(language_code); 415 const auto application_language = ConvertToApplicationLanguage(language_code);
diff --git a/src/core/hle/service/set/set.cpp b/src/core/hle/service/set/set.cpp
index f5788b481..83f888c54 100644
--- a/src/core/hle/service/set/set.cpp
+++ b/src/core/hle/service/set/set.cpp
@@ -93,7 +93,8 @@ void GetAvailableLanguageCodesImpl(HLERequestContext& ctx, std::size_t max_entri
93} 93}
94 94
95void GetKeyCodeMapImpl(HLERequestContext& ctx) { 95void GetKeyCodeMapImpl(HLERequestContext& ctx) {
96 const auto language_code = available_language_codes[Settings::values.language_index.GetValue()]; 96 const auto language_code =
97 available_language_codes[static_cast<s32>(Settings::values.language_index.GetValue())];
97 const auto key_code = 98 const auto key_code =
98 std::find_if(language_to_layout.cbegin(), language_to_layout.cend(), 99 std::find_if(language_to_layout.cbegin(), language_to_layout.cend(),
99 [=](const auto& element) { return element.first == language_code; }); 100 [=](const auto& element) { return element.first == language_code; });
@@ -162,7 +163,7 @@ void SET::GetQuestFlag(HLERequestContext& ctx) {
162 163
163 IPC::ResponseBuilder rb{ctx, 3}; 164 IPC::ResponseBuilder rb{ctx, 3};
164 rb.Push(ResultSuccess); 165 rb.Push(ResultSuccess);
165 rb.Push(static_cast<u32>(Settings::values.quest_flag.GetValue())); 166 rb.Push(static_cast<s32>(Settings::values.quest_flag.GetValue()));
166} 167}
167 168
168void SET::GetLanguageCode(HLERequestContext& ctx) { 169void SET::GetLanguageCode(HLERequestContext& ctx) {
@@ -170,7 +171,8 @@ void SET::GetLanguageCode(HLERequestContext& ctx) {
170 171
171 IPC::ResponseBuilder rb{ctx, 4}; 172 IPC::ResponseBuilder rb{ctx, 4};
172 rb.Push(ResultSuccess); 173 rb.Push(ResultSuccess);
173 rb.PushEnum(available_language_codes[Settings::values.language_index.GetValue()]); 174 rb.PushEnum(
175 available_language_codes[static_cast<s32>(Settings::values.language_index.GetValue())]);
174} 176}
175 177
176void SET::GetRegionCode(HLERequestContext& ctx) { 178void SET::GetRegionCode(HLERequestContext& ctx) {
@@ -178,7 +180,7 @@ void SET::GetRegionCode(HLERequestContext& ctx) {
178 180
179 IPC::ResponseBuilder rb{ctx, 3}; 181 IPC::ResponseBuilder rb{ctx, 3};
180 rb.Push(ResultSuccess); 182 rb.Push(ResultSuccess);
181 rb.Push(Settings::values.region_index.GetValue()); 183 rb.Push(static_cast<u32>(Settings::values.region_index.GetValue()));
182} 184}
183 185
184void SET::GetKeyCodeMap(HLERequestContext& ctx) { 186void SET::GetKeyCodeMap(HLERequestContext& ctx) {