mirror of
				https://git.zaroz.cloud/nintendo-back-up/yuzu/yuzu-mainline.git
				synced 2025-03-21 01:53:15 +00:00 
			
		
		
		
	core/loader: Track the NSO build ID of the current process
This commit is contained in:
		
							parent
							
								
									943662dc3c
								
							
						
					
					
						commit
						f6c53526b3
					
				| @ -339,6 +339,7 @@ struct System::Impl { | ||||
| 
 | ||||
|     std::unique_ptr<Memory::CheatEngine> cheat_engine; | ||||
|     std::unique_ptr<Tools::Freezer> memory_freezer; | ||||
|     std::array<u8, 0x20> build_id{}; | ||||
| 
 | ||||
|     /// Frontend applets
 | ||||
|     Service::AM::Applets::AppletManager applet_manager; | ||||
| @ -640,6 +641,14 @@ bool System::GetExitLock() const { | ||||
|     return impl->exit_lock; | ||||
| } | ||||
| 
 | ||||
| void System::SetCurrentProcessBuildID(std::array<u8, 32> id) { | ||||
|     impl->build_id = id; | ||||
| } | ||||
| 
 | ||||
| const std::array<u8, 32>& System::GetCurrentProcessBuildID() const { | ||||
|     return impl->build_id; | ||||
| } | ||||
| 
 | ||||
| System::ResultStatus System::Init(Frontend::EmuWindow& emu_window) { | ||||
|     return impl->Init(*this, emu_window); | ||||
| } | ||||
|  | ||||
| @ -330,6 +330,10 @@ public: | ||||
| 
 | ||||
|     bool GetExitLock() const; | ||||
| 
 | ||||
|     void SetCurrentProcessBuildID(std::array<u8, 0x20> id); | ||||
| 
 | ||||
|     const std::array<u8, 0x20>& GetCurrentProcessBuildID() const; | ||||
| 
 | ||||
| private: | ||||
|     System(); | ||||
| 
 | ||||
|  | ||||
| @ -150,6 +150,7 @@ std::optional<VAddr> AppLoader_NSO::LoadModule(Kernel::Process& process, | ||||
|     // Apply cheats if they exist and the program has a valid title ID
 | ||||
|     if (pm) { | ||||
|         auto& system = Core::System::GetInstance(); | ||||
|         system.SetCurrentProcessBuildID(nso_header.build_id); | ||||
|         const auto cheats = pm->CreateCheatList(system, nso_header.build_id); | ||||
|         if (!cheats.empty()) { | ||||
|             system.RegisterCheatList(cheats, nso_header.build_id, load_base, image_size); | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 Zach Hilman
						Zach Hilman