summaryrefslogtreecommitdiff
path: root/src/core/core.cpp
diff options
context:
space:
mode:
authorGravatar Fernando S2022-10-06 21:29:53 +0200
committerGravatar GitHub2022-10-06 21:29:53 +0200
commit1effa578f12f79d7816e3543291f302f126cc1d2 (patch)
tree14803b31b6817294d40d57446f6fa94c5ff3fe9a /src/core/core.cpp
parentMerge pull request #9025 from FernandoS27/slava-ukrayini (diff)
parentvulkan_blitter: Fix pool allocation double free. (diff)
downloadyuzu-1effa578f12f79d7816e3543291f302f126cc1d2.tar.gz
yuzu-1effa578f12f79d7816e3543291f302f126cc1d2.tar.xz
yuzu-1effa578f12f79d7816e3543291f302f126cc1d2.zip
Merge pull request #8467 from FernandoS27/yfc-rel-1
Project yuzu Fried Chicken (Y.F.C.) Part 1
Diffstat (limited to 'src/core/core.cpp')
-rw-r--r--src/core/core.cpp15
1 files changed, 8 insertions, 7 deletions
diff --git a/src/core/core.cpp b/src/core/core.cpp
index 121092868..1deeee154 100644
--- a/src/core/core.cpp
+++ b/src/core/core.cpp
@@ -27,7 +27,6 @@
27#include "core/file_sys/savedata_factory.h" 27#include "core/file_sys/savedata_factory.h"
28#include "core/file_sys/vfs_concat.h" 28#include "core/file_sys/vfs_concat.h"
29#include "core/file_sys/vfs_real.h" 29#include "core/file_sys/vfs_real.h"
30#include "core/hardware_interrupt_manager.h"
31#include "core/hid/hid_core.h" 30#include "core/hid/hid_core.h"
32#include "core/hle/kernel/k_memory_manager.h" 31#include "core/hle/kernel/k_memory_manager.h"
33#include "core/hle/kernel/k_process.h" 32#include "core/hle/kernel/k_process.h"
@@ -51,6 +50,7 @@
51#include "core/telemetry_session.h" 50#include "core/telemetry_session.h"
52#include "core/tools/freezer.h" 51#include "core/tools/freezer.h"
53#include "network/network.h" 52#include "network/network.h"
53#include "video_core/host1x/host1x.h"
54#include "video_core/renderer_base.h" 54#include "video_core/renderer_base.h"
55#include "video_core/video_core.h" 55#include "video_core/video_core.h"
56 56
@@ -215,6 +215,7 @@ struct System::Impl {
215 215
216 telemetry_session = std::make_unique<Core::TelemetrySession>(); 216 telemetry_session = std::make_unique<Core::TelemetrySession>();
217 217
218 host1x_core = std::make_unique<Tegra::Host1x::Host1x>(system);
218 gpu_core = VideoCore::CreateGPU(emu_window, system); 219 gpu_core = VideoCore::CreateGPU(emu_window, system);
219 if (!gpu_core) { 220 if (!gpu_core) {
220 return SystemResultStatus::ErrorVideoCore; 221 return SystemResultStatus::ErrorVideoCore;
@@ -224,7 +225,6 @@ struct System::Impl {
224 225
225 service_manager = std::make_shared<Service::SM::ServiceManager>(kernel); 226 service_manager = std::make_shared<Service::SM::ServiceManager>(kernel);
226 services = std::make_unique<Service::Services>(service_manager, system); 227 services = std::make_unique<Service::Services>(service_manager, system);
227 interrupt_manager = std::make_unique<Hardware::InterruptManager>(system);
228 228
229 // Initialize time manager, which must happen after kernel is created 229 // Initialize time manager, which must happen after kernel is created
230 time_manager.Initialize(); 230 time_manager.Initialize();
@@ -373,6 +373,7 @@ struct System::Impl {
373 app_loader.reset(); 373 app_loader.reset();
374 audio_core.reset(); 374 audio_core.reset();
375 gpu_core.reset(); 375 gpu_core.reset();
376 host1x_core.reset();
376 perf_stats.reset(); 377 perf_stats.reset();
377 kernel.Shutdown(); 378 kernel.Shutdown();
378 memory.Reset(); 379 memory.Reset();
@@ -450,7 +451,7 @@ struct System::Impl {
450 /// AppLoader used to load the current executing application 451 /// AppLoader used to load the current executing application
451 std::unique_ptr<Loader::AppLoader> app_loader; 452 std::unique_ptr<Loader::AppLoader> app_loader;
452 std::unique_ptr<Tegra::GPU> gpu_core; 453 std::unique_ptr<Tegra::GPU> gpu_core;
453 std::unique_ptr<Hardware::InterruptManager> interrupt_manager; 454 std::unique_ptr<Tegra::Host1x::Host1x> host1x_core;
454 std::unique_ptr<Core::DeviceMemory> device_memory; 455 std::unique_ptr<Core::DeviceMemory> device_memory;
455 std::unique_ptr<AudioCore::AudioCore> audio_core; 456 std::unique_ptr<AudioCore::AudioCore> audio_core;
456 Core::Memory::Memory memory; 457 Core::Memory::Memory memory;
@@ -668,12 +669,12 @@ const Tegra::GPU& System::GPU() const {
668 return *impl->gpu_core; 669 return *impl->gpu_core;
669} 670}
670 671
671Core::Hardware::InterruptManager& System::InterruptManager() { 672Tegra::Host1x::Host1x& System::Host1x() {
672 return *impl->interrupt_manager; 673 return *impl->host1x_core;
673} 674}
674 675
675const Core::Hardware::InterruptManager& System::InterruptManager() const { 676const Tegra::Host1x::Host1x& System::Host1x() const {
676 return *impl->interrupt_manager; 677 return *impl->host1x_core;
677} 678}
678 679
679VideoCore::RendererBase& System::Renderer() { 680VideoCore::RendererBase& System::Renderer() {