summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/core/hle/service/filesystem/fsp_srv.cpp14
-rw-r--r--src/core/hle/service/filesystem/fsp_srv.h1
-rw-r--r--src/core/hle/service/nfp/nfp_types.h2
-rw-r--r--src/video_core/renderer_vulkan/vk_scheduler.cpp6
-rw-r--r--src/yuzu/configuration/configure_graphics.cpp7
-rw-r--r--src/yuzu/main.cpp16
6 files changed, 39 insertions, 7 deletions
diff --git a/src/core/hle/service/filesystem/fsp_srv.cpp b/src/core/hle/service/filesystem/fsp_srv.cpp
index e23eae36a..c08274ef9 100644
--- a/src/core/hle/service/filesystem/fsp_srv.cpp
+++ b/src/core/hle/service/filesystem/fsp_srv.cpp
@@ -707,7 +707,7 @@ FSP_SRV::FSP_SRV(Core::System& system_)
707 {31, nullptr, "OpenGameCardFileSystem"}, 707 {31, nullptr, "OpenGameCardFileSystem"},
708 {32, nullptr, "ExtendSaveDataFileSystem"}, 708 {32, nullptr, "ExtendSaveDataFileSystem"},
709 {33, nullptr, "DeleteCacheStorage"}, 709 {33, nullptr, "DeleteCacheStorage"},
710 {34, nullptr, "GetCacheStorageSize"}, 710 {34, &FSP_SRV::GetCacheStorageSize, "GetCacheStorageSize"},
711 {35, nullptr, "CreateSaveDataFileSystemByHashSalt"}, 711 {35, nullptr, "CreateSaveDataFileSystemByHashSalt"},
712 {36, nullptr, "OpenHostFileSystemWithOption"}, 712 {36, nullptr, "OpenHostFileSystemWithOption"},
713 {51, &FSP_SRV::OpenSaveDataFileSystem, "OpenSaveDataFileSystem"}, 713 {51, &FSP_SRV::OpenSaveDataFileSystem, "OpenSaveDataFileSystem"},
@@ -1107,6 +1107,18 @@ void FSP_SRV::GetProgramIndexForAccessLog(Kernel::HLERequestContext& ctx) {
1107 rb.Push(access_log_program_index); 1107 rb.Push(access_log_program_index);
1108} 1108}
1109 1109
1110void FSP_SRV::GetCacheStorageSize(Kernel::HLERequestContext& ctx) {
1111 IPC::RequestParser rp{ctx};
1112 const auto index{rp.Pop<s32>()};
1113
1114 LOG_WARNING(Service_FS, "(STUBBED) called with index={}", index);
1115
1116 IPC::ResponseBuilder rb{ctx, 6};
1117 rb.Push(ResultSuccess);
1118 rb.Push(s64{0});
1119 rb.Push(s64{0});
1120}
1121
1110class IMultiCommitManager final : public ServiceFramework<IMultiCommitManager> { 1122class IMultiCommitManager final : public ServiceFramework<IMultiCommitManager> {
1111public: 1123public:
1112 explicit IMultiCommitManager(Core::System& system_) 1124 explicit IMultiCommitManager(Core::System& system_)
diff --git a/src/core/hle/service/filesystem/fsp_srv.h b/src/core/hle/service/filesystem/fsp_srv.h
index 36f552e05..3d88b97f9 100644
--- a/src/core/hle/service/filesystem/fsp_srv.h
+++ b/src/core/hle/service/filesystem/fsp_srv.h
@@ -54,6 +54,7 @@ private:
54 void OutputAccessLogToSdCard(Kernel::HLERequestContext& ctx); 54 void OutputAccessLogToSdCard(Kernel::HLERequestContext& ctx);
55 void GetProgramIndexForAccessLog(Kernel::HLERequestContext& ctx); 55 void GetProgramIndexForAccessLog(Kernel::HLERequestContext& ctx);
56 void OpenMultiCommitManager(Kernel::HLERequestContext& ctx); 56 void OpenMultiCommitManager(Kernel::HLERequestContext& ctx);
57 void GetCacheStorageSize(Kernel::HLERequestContext& ctx);
57 58
58 FileSystemController& fsc; 59 FileSystemController& fsc;
59 const FileSys::ContentProvider& content_provider; 60 const FileSys::ContentProvider& content_provider;
diff --git a/src/core/hle/service/nfp/nfp_types.h b/src/core/hle/service/nfp/nfp_types.h
index 867ea2f36..c09f9ddb6 100644
--- a/src/core/hle/service/nfp/nfp_types.h
+++ b/src/core/hle/service/nfp/nfp_types.h
@@ -167,7 +167,7 @@ struct AmiiboDate {
167 167
168 bool IsValidDate() const { 168 bool IsValidDate() const {
169 const bool is_day_valid = GetDay() > 0 && GetDay() < 32; 169 const bool is_day_valid = GetDay() > 0 && GetDay() < 32;
170 const bool is_month_valid = GetMonth() >= 0 && GetMonth() < 13; 170 const bool is_month_valid = GetMonth() > 0 && GetMonth() < 13;
171 const bool is_year_valid = GetYear() >= 2000; 171 const bool is_year_valid = GetYear() >= 2000;
172 return is_year_valid && is_month_valid && is_day_valid; 172 return is_year_valid && is_month_valid && is_day_valid;
173 } 173 }
diff --git a/src/video_core/renderer_vulkan/vk_scheduler.cpp b/src/video_core/renderer_vulkan/vk_scheduler.cpp
index d96720b80..7934f2a51 100644
--- a/src/video_core/renderer_vulkan/vk_scheduler.cpp
+++ b/src/video_core/renderer_vulkan/vk_scheduler.cpp
@@ -139,6 +139,7 @@ void Scheduler::WorkerThread(std::stop_token stop_token) {
139 Common::SetCurrentThreadName("VulkanWorker"); 139 Common::SetCurrentThreadName("VulkanWorker");
140 do { 140 do {
141 std::unique_ptr<CommandChunk> work; 141 std::unique_ptr<CommandChunk> work;
142 bool has_submit{false};
142 { 143 {
143 std::unique_lock lock{work_mutex}; 144 std::unique_lock lock{work_mutex};
144 if (work_queue.empty()) { 145 if (work_queue.empty()) {
@@ -150,9 +151,10 @@ void Scheduler::WorkerThread(std::stop_token stop_token) {
150 } 151 }
151 work = std::move(work_queue.front()); 152 work = std::move(work_queue.front());
152 work_queue.pop(); 153 work_queue.pop();
154
155 has_submit = work->HasSubmit();
156 work->ExecuteAll(current_cmdbuf);
153 } 157 }
154 const bool has_submit = work->HasSubmit();
155 work->ExecuteAll(current_cmdbuf);
156 if (has_submit) { 158 if (has_submit) {
157 AllocateWorkerCommandBuffer(); 159 AllocateWorkerCommandBuffer();
158 } 160 }
diff --git a/src/yuzu/configuration/configure_graphics.cpp b/src/yuzu/configuration/configure_graphics.cpp
index 87e5d0f48..bd69d04a6 100644
--- a/src/yuzu/configuration/configure_graphics.cpp
+++ b/src/yuzu/configuration/configure_graphics.cpp
@@ -57,9 +57,10 @@ ConfigureGraphics::ConfigureGraphics(const Core::System& system_, QWidget* paren
57 UpdateBackgroundColorButton(new_bg_color); 57 UpdateBackgroundColorButton(new_bg_color);
58 }); 58 });
59 59
60 ui->api->setEnabled(!UISettings::values.has_broken_vulkan); 60 ui->api->setEnabled(!UISettings::values.has_broken_vulkan && ui->api->isEnabled());
61 ui->api_widget->setEnabled(!UISettings::values.has_broken_vulkan || 61 ui->api_widget->setEnabled(
62 Settings::IsConfiguringGlobal()); 62 (!UISettings::values.has_broken_vulkan || Settings::IsConfiguringGlobal()) &&
63 ui->api_widget->isEnabled());
63 ui->bg_label->setVisible(Settings::IsConfiguringGlobal()); 64 ui->bg_label->setVisible(Settings::IsConfiguringGlobal());
64 ui->bg_combobox->setVisible(!Settings::IsConfiguringGlobal()); 65 ui->bg_combobox->setVisible(!Settings::IsConfiguringGlobal());
65} 66}
diff --git a/src/yuzu/main.cpp b/src/yuzu/main.cpp
index 4146ebc2c..f45a25410 100644
--- a/src/yuzu/main.cpp
+++ b/src/yuzu/main.cpp
@@ -262,6 +262,18 @@ static QString PrettyProductName() {
262 return QSysInfo::prettyProductName(); 262 return QSysInfo::prettyProductName();
263} 263}
264 264
265#ifdef _WIN32
266static void OverrideWindowsFont() {
267 // Qt5 chooses these fonts on Windows and they have fairly ugly alphanumeric/cyrllic characters
268 // Asking to use "MS Shell Dlg 2" gives better other chars while leaving the Chinese Characters.
269 const QString startup_font = QApplication::font().family();
270 const QStringList ugly_fonts = {QStringLiteral("SimSun"), QStringLiteral("PMingLiU")};
271 if (ugly_fonts.contains(startup_font)) {
272 QApplication::setFont(QFont(QStringLiteral("MS Shell Dlg 2"), 9, QFont::Normal));
273 }
274}
275#endif
276
265bool GMainWindow::CheckDarkMode() { 277bool GMainWindow::CheckDarkMode() {
266#ifdef __linux__ 278#ifdef __linux__
267 const QPalette test_palette(qApp->palette()); 279 const QPalette test_palette(qApp->palette());
@@ -4137,6 +4149,10 @@ int main(int argc, char* argv[]) {
4137 QCoreApplication::setAttribute(Qt::AA_DontCheckOpenGLContextThreadAffinity); 4149 QCoreApplication::setAttribute(Qt::AA_DontCheckOpenGLContextThreadAffinity);
4138 QApplication app(argc, argv); 4150 QApplication app(argc, argv);
4139 4151
4152#ifdef _WIN32
4153 OverrideWindowsFont();
4154#endif
4155
4140 // Workaround for QTBUG-85409, for Suzhou numerals the number 1 is actually \u3021 4156 // Workaround for QTBUG-85409, for Suzhou numerals the number 1 is actually \u3021
4141 // so we can see if we get \u3008 instead 4157 // so we can see if we get \u3008 instead
4142 // TL;DR all other number formats are consecutive in unicode code points 4158 // TL;DR all other number formats are consecutive in unicode code points