mirror of
				https://github.com/PabloMK7/citra.git
				synced 2025-11-03 23:28:48 +00:00 
			
		
		
		
	service: Add mvd and qtm services
Adds the two New3DS-only modules. 3dbrew was used for command information.
This commit is contained in:
		
							parent
							
								
									d098d941d7
								
							
						
					
					
						commit
						2061d2014d
					
				
					 14 changed files with 271 additions and 0 deletions
				
			
		
							
								
								
									
										17
									
								
								src/core/hle/service/mvd/mvd.cpp
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								src/core/hle/service/mvd/mvd.cpp
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,17 @@
 | 
			
		|||
// Copyright 2016 Citra Emulator Project
 | 
			
		||||
// Licensed under GPLv2 or any later version
 | 
			
		||||
// Refer to the license.txt file included.
 | 
			
		||||
 | 
			
		||||
#include "core/hle/service/mvd/mvd.h"
 | 
			
		||||
#include "core/hle/service/mvd/mvd_std.h"
 | 
			
		||||
#include "core/hle/service/service.h"
 | 
			
		||||
 | 
			
		||||
namespace Service {
 | 
			
		||||
namespace MVD {
 | 
			
		||||
 | 
			
		||||
void Init() {
 | 
			
		||||
    AddService(new MVD_STD());
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
} // namespace MVD
 | 
			
		||||
} // namespace Service
 | 
			
		||||
							
								
								
									
										14
									
								
								src/core/hle/service/mvd/mvd.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								src/core/hle/service/mvd/mvd.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,14 @@
 | 
			
		|||
// Copyright 2016 Citra Emulator Project
 | 
			
		||||
// Licensed under GPLv2 or any later version
 | 
			
		||||
// Refer to the license.txt file included.
 | 
			
		||||
 | 
			
		||||
#pragma once
 | 
			
		||||
 | 
			
		||||
namespace Service {
 | 
			
		||||
namespace MVD {
 | 
			
		||||
 | 
			
		||||
/// Initializes all MVD services.
 | 
			
		||||
void Init();
 | 
			
		||||
 | 
			
		||||
} // namespace MVD
 | 
			
		||||
} // namespace Service
 | 
			
		||||
							
								
								
									
										32
									
								
								src/core/hle/service/mvd/mvd_std.cpp
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								src/core/hle/service/mvd/mvd_std.cpp
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,32 @@
 | 
			
		|||
// Copyright 2016 Citra Emulator Project
 | 
			
		||||
// Licensed under GPLv2 or any later version
 | 
			
		||||
// Refer to the license.txt file included.
 | 
			
		||||
 | 
			
		||||
#include "core/hle/service/mvd/mvd_std.h"
 | 
			
		||||
 | 
			
		||||
namespace Service {
 | 
			
		||||
namespace MVD {
 | 
			
		||||
 | 
			
		||||
const Interface::FunctionInfo FunctionTable[] = {
 | 
			
		||||
    // clang-format off
 | 
			
		||||
    {0x00010082, nullptr, "Initialize"},
 | 
			
		||||
    {0x00020000, nullptr, "Shutdown"},
 | 
			
		||||
    {0x00030300, nullptr, "CalculateWorkBufSize"},
 | 
			
		||||
    {0x000400C0, nullptr, "CalculateImageSize"},
 | 
			
		||||
    {0x00080142, nullptr, "ProcessNALUnit"},
 | 
			
		||||
    {0x00090042, nullptr, "ControlFrameRendering"},
 | 
			
		||||
    {0x000A0000, nullptr, "GetStatus"},
 | 
			
		||||
    {0x000B0000, nullptr, "GetStatusOther"},
 | 
			
		||||
    {0x001D0042, nullptr, "GetConfig"},
 | 
			
		||||
    {0x001E0044, nullptr, "SetConfig"},
 | 
			
		||||
    {0x001F0902, nullptr, "SetOutputBuffer"},
 | 
			
		||||
    {0x00210100, nullptr, "OverrideOutputBuffers"}
 | 
			
		||||
    // clang-format on
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
MVD_STD::MVD_STD() {
 | 
			
		||||
    Register(FunctionTable);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
} // namespace MVD
 | 
			
		||||
} // namespace Service
 | 
			
		||||
							
								
								
									
										22
									
								
								src/core/hle/service/mvd/mvd_std.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								src/core/hle/service/mvd/mvd_std.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,22 @@
 | 
			
		|||
// Copyright 2016 Citra Emulator Project
 | 
			
		||||
// Licensed under GPLv2 or any later version
 | 
			
		||||
// Refer to the license.txt file included.
 | 
			
		||||
 | 
			
		||||
#pragma once
 | 
			
		||||
 | 
			
		||||
#include "core/hle/service/service.h"
 | 
			
		||||
 | 
			
		||||
namespace Service {
 | 
			
		||||
namespace MVD {
 | 
			
		||||
 | 
			
		||||
class MVD_STD final : public Interface {
 | 
			
		||||
public:
 | 
			
		||||
    MVD_STD();
 | 
			
		||||
 | 
			
		||||
    std::string GetPortName() const override {
 | 
			
		||||
        return "mvd:std";
 | 
			
		||||
    }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
} // namespace MVD
 | 
			
		||||
} // namespace Service
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue