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