mirror of
				https://git.suyu.dev/suyu/suyu.git
				synced 2025-11-04 12:34:39 +08:00 
			
		
		
		
	Merge pull request #6062 from ameerj/auto-stub
service: Add a toggle for auto stub fallback
This commit is contained in:
		
						commit
						1744fa6ecf
					
				@ -70,6 +70,7 @@
 | 
			
		||||
#include "core/hle/service/vi/vi.h"
 | 
			
		||||
#include "core/hle/service/wlan/wlan.h"
 | 
			
		||||
#include "core/reporter.h"
 | 
			
		||||
#include "core/settings.h"
 | 
			
		||||
 | 
			
		||||
namespace Service {
 | 
			
		||||
 | 
			
		||||
@ -146,6 +147,11 @@ void ServiceFrameworkBase::ReportUnimplementedFunction(Kernel::HLERequestContext
 | 
			
		||||
    system.GetReporter().SaveUnimplementedFunctionReport(ctx, ctx.GetCommand(), function_name,
 | 
			
		||||
                                                         service_name);
 | 
			
		||||
    UNIMPLEMENTED_MSG("Unknown / unimplemented {}", fmt::to_string(buf));
 | 
			
		||||
    if (Settings::values.use_auto_stub) {
 | 
			
		||||
        LOG_WARNING(Service, "Using auto stub fallback!");
 | 
			
		||||
        IPC::ResponseBuilder rb{ctx, 2};
 | 
			
		||||
        rb.Push(RESULT_SUCCESS);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void ServiceFrameworkBase::InvokeRequest(Kernel::HLERequestContext& ctx) {
 | 
			
		||||
 | 
			
		||||
@ -222,6 +222,7 @@ struct Values {
 | 
			
		||||
    bool quest_flag;
 | 
			
		||||
    bool disable_macro_jit;
 | 
			
		||||
    bool extended_logging;
 | 
			
		||||
    bool use_auto_stub;
 | 
			
		||||
 | 
			
		||||
    // Miscellaneous
 | 
			
		||||
    std::string log_filter;
 | 
			
		||||
 | 
			
		||||
@ -641,6 +641,7 @@ void Config::ReadDebuggingValues() {
 | 
			
		||||
        ReadSetting(QStringLiteral("disable_macro_jit"), false).toBool();
 | 
			
		||||
    Settings::values.extended_logging =
 | 
			
		||||
        ReadSetting(QStringLiteral("extended_logging"), false).toBool();
 | 
			
		||||
    Settings::values.use_auto_stub = ReadSetting(QStringLiteral("use_auto_stub"), false).toBool();
 | 
			
		||||
 | 
			
		||||
    qt_config->endGroup();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -34,6 +34,7 @@ void ConfigureDebug::SetConfiguration() {
 | 
			
		||||
    ui->homebrew_args_edit->setText(QString::fromStdString(Settings::values.program_args));
 | 
			
		||||
    ui->reporting_services->setChecked(Settings::values.reporting_services);
 | 
			
		||||
    ui->quest_flag->setChecked(Settings::values.quest_flag);
 | 
			
		||||
    ui->use_auto_stub->setChecked(Settings::values.use_auto_stub);
 | 
			
		||||
    ui->enable_graphics_debugging->setEnabled(!Core::System::GetInstance().IsPoweredOn());
 | 
			
		||||
    ui->enable_graphics_debugging->setChecked(Settings::values.renderer_debug);
 | 
			
		||||
    ui->disable_macro_jit->setEnabled(!Core::System::GetInstance().IsPoweredOn());
 | 
			
		||||
@ -47,6 +48,7 @@ void ConfigureDebug::ApplyConfiguration() {
 | 
			
		||||
    Settings::values.program_args = ui->homebrew_args_edit->text().toStdString();
 | 
			
		||||
    Settings::values.reporting_services = ui->reporting_services->isChecked();
 | 
			
		||||
    Settings::values.quest_flag = ui->quest_flag->isChecked();
 | 
			
		||||
    Settings::values.use_auto_stub = ui->use_auto_stub->isChecked();
 | 
			
		||||
    Settings::values.renderer_debug = ui->enable_graphics_debugging->isChecked();
 | 
			
		||||
    Settings::values.disable_macro_jit = ui->disable_macro_jit->isChecked();
 | 
			
		||||
    Settings::values.extended_logging = ui->extended_logging->isChecked();
 | 
			
		||||
 | 
			
		||||
@ -185,6 +185,28 @@
 | 
			
		||||
        </property>
 | 
			
		||||
       </widget>
 | 
			
		||||
      </item>
 | 
			
		||||
       <item>
 | 
			
		||||
         <widget class="QCheckBox" name="use_auto_stub">
 | 
			
		||||
           <property name="text">
 | 
			
		||||
             <string>Enable Auto-Stub</string>
 | 
			
		||||
           </property>
 | 
			
		||||
         </widget>
 | 
			
		||||
       </item>
 | 
			
		||||
      <item>
 | 
			
		||||
        <widget class="QLabel" name="label_3">
 | 
			
		||||
          <property name="font">
 | 
			
		||||
            <font>
 | 
			
		||||
              <italic>true</italic>
 | 
			
		||||
            </font>
 | 
			
		||||
          </property>
 | 
			
		||||
          <property name="text">
 | 
			
		||||
            <string>This will be reset automatically when yuzu closes.</string>
 | 
			
		||||
          </property>
 | 
			
		||||
          <property name="indent">
 | 
			
		||||
            <number>20</number>
 | 
			
		||||
          </property>
 | 
			
		||||
        </widget>
 | 
			
		||||
      </item>
 | 
			
		||||
     </layout>
 | 
			
		||||
    </widget>
 | 
			
		||||
   </item>
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user