2014-04-15 21:03:41 -07:00
|
|
|
// Copyright 2014 Citra Emulator Project
|
|
|
|
// Licensed under GPLv2
|
|
|
|
// Refer to the license.txt file included.
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include "core/hle/service/service.h"
|
|
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
2014-04-16 17:46:05 -07:00
|
|
|
// Namespace GSP_GPU
|
2014-04-15 21:03:41 -07:00
|
|
|
|
|
|
|
namespace GSP_GPU {
|
|
|
|
|
2014-05-17 13:26:45 -07:00
|
|
|
enum class GXCommandId : u32 {
|
|
|
|
REQUEST_DMA = 0x00000000,
|
|
|
|
SET_COMMAND_LIST_LAST = 0x00000001,
|
2014-06-04 09:30:23 -07:00
|
|
|
SET_MEMORY_FILL = 0x01000102, // TODO: Confirm?
|
2014-05-17 13:26:45 -07:00
|
|
|
SET_DISPLAY_TRANSFER = 0x00000003,
|
|
|
|
SET_TEXTURE_COPY = 0x00000004,
|
|
|
|
SET_COMMAND_LIST_FIRST = 0x00000005,
|
|
|
|
};
|
|
|
|
|
|
|
|
union GXCommand {
|
|
|
|
struct {
|
|
|
|
GXCommandId id;
|
|
|
|
};
|
|
|
|
|
|
|
|
u32 data[0x20];
|
|
|
|
};
|
|
|
|
|
2014-04-16 17:46:05 -07:00
|
|
|
/// Interface to "srv:" service
|
2014-04-15 21:03:41 -07:00
|
|
|
class Interface : public Service::Interface {
|
|
|
|
public:
|
|
|
|
|
|
|
|
Interface();
|
|
|
|
|
|
|
|
~Interface();
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Gets the string port name used by CTROS for the service
|
|
|
|
* @return Port name of service
|
|
|
|
*/
|
2014-05-18 18:43:29 -07:00
|
|
|
const char *GetPortName() const {
|
2014-04-15 21:03:41 -07:00
|
|
|
return "gsp::Gpu";
|
|
|
|
}
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
} // namespace
|