This commit is contained in:
wheremyfoodat 2022-09-24 02:45:57 +03:00
parent 75070ca6ef
commit be4fae5104
33 changed files with 341 additions and 70 deletions

View file

@ -1,11 +1,13 @@
#pragma once
#include "helpers.hpp"
#include "kernel_types.hpp"
#include "logger.hpp"
#include "memory.hpp"
class APTService {
Handle handle = KernelHandles::APT;
Memory& mem;
MAKE_LOG_FUNCTION(log, aptLogger)
// Service commands
void getLockHandle(u32 messagePointer);

View file

@ -1,11 +1,13 @@
#pragma once
#include "helpers.hpp"
#include "kernel_types.hpp"
#include "logger.hpp"
#include "memory.hpp"
class FSService {
Handle handle = KernelHandles::FS;
Memory& mem;
MAKE_LOG_FUNCTION(log, fsLogger)
// Service commands
void initialize(u32 messagePointer);

View file

@ -3,6 +3,7 @@
#include "PICA/gpu.hpp"
#include "helpers.hpp"
#include "kernel_types.hpp"
#include "logger.hpp"
#include "memory.hpp"
enum class GPUInterrupt : u8 {
@ -26,6 +27,7 @@ class GPUService {
// This is the PID of that process
u32 privilegedProcess;
MAKE_LOG_FUNCTION(log, gspGPULogger)
void processCommandBuffer();
// Service commands
@ -40,6 +42,7 @@ class GPUService {
// GSP commands processed via TriggerCmdReqQueue
void processCommandList(u32* cmd);
void memoryFill(u32* cmd);
void triggerDisplayTransfer(u32* cmd);
public:
GPUService(Memory& mem, GPU& gpu, u32& currentPID) : mem(mem), gpu(gpu), currentPID(currentPID) {}

View file

@ -1,11 +1,13 @@
#pragma once
#include "helpers.hpp"
#include "kernel_types.hpp"
#include "logger.hpp"
#include "memory.hpp"
class LCDService {
Handle handle = KernelHandles::LCD;
Memory& mem;
MAKE_LOG_FUNCTION(log, gspLCDLogger)
// Service commands

View file

@ -1,11 +1,13 @@
#pragma once
#include "helpers.hpp"
#include "kernel_types.hpp"
#include "logger.hpp"
#include "memory.hpp"
class HIDService {
Handle handle = KernelHandles::HID;
Memory& mem;
MAKE_LOG_FUNCTION(log, hidLogger)
// Service commands
void getIPCHandles(u32 messagePointer);

View file

@ -1,11 +1,13 @@
#pragma once
#include "helpers.hpp"
#include "kernel_types.hpp"
#include "logger.hpp"
#include "memory.hpp"
class NDMService {
Handle handle = KernelHandles::NDM;
Memory& mem;
MAKE_LOG_FUNCTION(log, ndmLogger)
// Service commands
void overrideDefaultDaemons(u32 messagePointer);

View file

@ -1,6 +1,7 @@
#pragma once
#include <array>
#include "helpers.hpp"
#include "logger.hpp"
#include "memory.hpp"
#include "services/apt.hpp"
#include "services/hid.hpp"
@ -12,6 +13,7 @@
class ServiceManager {
std::array<u32, 16>& regs;
Memory& mem;
MAKE_LOG_FUNCTION(log, srvLogger)
APTService apt;
HIDService hid;