diff --git a/src/xenia/emulator.cc b/src/xenia/emulator.cc index 22cd25220..4a59fc4fd 100644 --- a/src/xenia/emulator.cc +++ b/src/xenia/emulator.cc @@ -92,6 +92,8 @@ DEFINE_int32(priority_class, 0, "values: 0 - Normal, 1 - Above normal, 2 - High", "General"); +DECLARE_int32(console_type); + namespace xe { using namespace xe::literals; @@ -313,7 +315,11 @@ X_STATUS Emulator::Setup( // HLE kernel modules. LOAD_KERNEL_MODULE(xboxkrnl::XboxkrnlModule); LOAD_KERNEL_MODULE(xam::XamModule); - LOAD_KERNEL_MODULE(xbdm::XbdmModule); + + // 415608C3 anti-cheat checks if XDBM is loaded. + if (cvars::console_type >= 0) { + LOAD_KERNEL_MODULE(xbdm::XbdmModule); + } #undef LOAD_KERNEL_MODULE plugin_loader_ = std::make_unique( kernel_state_.get(), storage_root() / "plugins"); diff --git a/src/xenia/kernel/xbdm/xbdm_misc.cc b/src/xenia/kernel/xbdm/xbdm_misc.cc index e371c0009..df06d3058 100644 --- a/src/xenia/kernel/xbdm/xbdm_misc.cc +++ b/src/xenia/kernel/xbdm/xbdm_misc.cc @@ -22,9 +22,10 @@ DECLARE_bool(debug); DEFINE_bool(force_mount_devkit, false, "Force devkit mount", "Storage"); -DEFINE_int32(console_type, 0, - "Console Type Identifier: 0 - Development Kit, 1 - Test Kit", - "Kernel"); +DEFINE_int32( + console_type, -1, + "Console Type Identifier: -1 - Retail, 0 - Development Kit, 1 - Test Kit", + "Kernel"); namespace xe { namespace kernel {