mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-07-13 02:08:49 +12:00
330 lines
12 KiB
C++
330 lines
12 KiB
C++
#pragma once
|
|
|
|
namespace vm { using namespace ps3; }
|
|
|
|
// Error Codes
|
|
enum
|
|
{
|
|
CELL_VPOST_ERROR_Q_ARG_CFG_NULL = 0x80610410,
|
|
CELL_VPOST_ERROR_Q_ARG_CFG_INVALID = 0x80610411,
|
|
CELL_VPOST_ERROR_Q_ARG_ATTR_NULL = 0x80610412,
|
|
CELL_VPOST_ERROR_O_ARG_CFG_NULL = 0x80610440,
|
|
CELL_VPOST_ERROR_O_ARG_CFG_INVALID = 0x80610441,
|
|
CELL_VPOST_ERROR_O_ARG_RSRC_NULL = 0x80610442,
|
|
CELL_VPOST_ERROR_O_ARG_RSRC_INVALID = 0x80610443,
|
|
CELL_VPOST_ERROR_O_ARG_HDL_NULL = 0x80610444,
|
|
CELL_VPOST_ERROR_O_FATAL_QUERY_FAIL = 0x80610460,
|
|
CELL_VPOST_ERROR_O_FATAL_CREATEMON_FAIL = 0x80610461,
|
|
CELL_VPOST_ERROR_O_FATAL_INITSPURS_FAIL = 0x80610462,
|
|
CELL_VPOST_ERROR_C_ARG_HDL_NULL = 0x80610470,
|
|
CELL_VPOST_ERROR_C_ARG_HDL_INVALID = 0x80610471,
|
|
CELL_VPOST_ERROR_C_FATAL_LOCKMON_FAIL = 0x80610490,
|
|
CELL_VPOST_ERROR_C_FATAL_UNLOCKMON_FAIL = 0x80610491,
|
|
CELL_VPOST_ERROR_C_FATAL_DESTROYMON_FAIL = 0x80610492,
|
|
CELL_VPOST_ERROR_C_FATAL_FINSPURS_FAIL = 0x80610463,
|
|
CELL_VPOST_ERROR_E_ARG_HDL_NULL = 0x806104a0,
|
|
CELL_VPOST_ERROR_E_ARG_HDL_INVALID = 0x806104a1,
|
|
CELL_VPOST_ERROR_E_ARG_INPICBUF_NULL = 0x806104a2,
|
|
CELL_VPOST_ERROR_E_ARG_INPICBUF_INVALID = 0x806104a3,
|
|
CELL_VPOST_ERROR_E_ARG_CTRL_NULL = 0x806104a4,
|
|
CELL_VPOST_ERROR_E_ARG_CTRL_INVALID = 0x806104a5,
|
|
CELL_VPOST_ERROR_E_ARG_OUTPICBUF_NULL = 0x806104a6,
|
|
CELL_VPOST_ERROR_E_ARG_OUTPICBUF_INVALID = 0x806104a7,
|
|
CELL_VPOST_ERROR_E_ARG_PICINFO_NULL = 0x806104a8,
|
|
CELL_VPOST_ERROR_E_FATAL_LOCKMON_FAIL = 0x806104c0,
|
|
CELL_VPOST_ERROR_E_FATAL_UNLOCKMON_FAIL = 0x806104c1,
|
|
CELL_VPOST_ENT_ERROR_Q_ARG_ATTR_NULL = 0x80618110,
|
|
CELL_VPOST_ENT_ERROR_O_ARG_RSRC_NULL = 0x80618140,
|
|
CELL_VPOST_ENT_ERROR_O_ARG_RSRC_INVALID = 0x80618141,
|
|
CELL_VPOST_ENT_ERROR_O_ARG_HDL_NULL = 0x80618142,
|
|
CELL_VPOST_ENT_ERROR_O_FATAL_QUERY_FAIL = 0x80618160,
|
|
CELL_VPOST_ENT_ERROR_O_FATAL_CSPUCORE_FAIL = 0x80618161,
|
|
CELL_VPOST_ENT_ERROR_C_ARG_HDL_NULL = 0x80618170,
|
|
CELL_VPOST_ENT_ERROR_C_ARG_HDL_INVALID = 0x80618171,
|
|
CELL_VPOST_ENT_ERROR_C_FATAL_SNDCMD_FAIL = 0x80618190,
|
|
CELL_VPOST_ENT_ERROR_C_FATAL_RCVRES_FAIL = 0x80618191,
|
|
CELL_VPOST_ENT_ERROR_C_FATAL_DSPUCORE_FAIL = 0x80618192,
|
|
CELL_VPOST_ENT_ERROR_E_ARG_HDL_NULL = 0x806181a0,
|
|
CELL_VPOST_ENT_ERROR_E_ARG_HDL_INVALID = 0x806181a1,
|
|
CELL_VPOST_ENT_ERROR_E_ARG_INPICBUF_NULL = 0x806181a2,
|
|
CELL_VPOST_ENT_ERROR_E_ARG_INPICBUF_INVALID = 0x806181a3,
|
|
CELL_VPOST_ENT_ERROR_E_ARG_INPICINFO_NULL = 0x806181a4,
|
|
CELL_VPOST_ENT_ERROR_E_ARG_INPICINFO_INVALID = 0x806181a5,
|
|
CELL_VPOST_ENT_ERROR_E_ARG_CTRL_NULL = 0x806181a6,
|
|
CELL_VPOST_ENT_ERROR_E_ARG_CTRL_INVALID = 0x806181a7,
|
|
CELL_VPOST_ENT_ERROR_E_ARG_COMB_INVALID = 0x806181a8,
|
|
CELL_VPOST_ENT_ERROR_E_ARG_OUTPICBUF_NULL = 0x806181a9,
|
|
CELL_VPOST_ENT_ERROR_E_ARG_OUTPICBUF_INVALID = 0x806181aa,
|
|
CELL_VPOST_ENT_ERROR_E_ARG_OUTPICINFO_NULL = 0x806181ab,
|
|
CELL_VPOST_ENT_ERROR_E_FATAL_SNDCMD_FAIL = 0x806181c0,
|
|
CELL_VPOST_ENT_ERROR_E_FATAL_RCVRES_FAIL = 0x806181c1,
|
|
CELL_VPOST_ENT_ERROR_E_FATAL_SPUCORE_FAIL = 0x806181c2,
|
|
CELL_VPOST_IPC_ERROR_Q_ARG_ATTR_NULL = 0x80618210,
|
|
CELL_VPOST_IPC_ERROR_O_ARG_RSRC_NULL = 0x80618240,
|
|
CELL_VPOST_IPC_ERROR_O_ARG_RSRC_INVALID = 0x80618241,
|
|
CELL_VPOST_IPC_ERROR_O_ARG_HDL_NULL = 0x80618242,
|
|
CELL_VPOST_IPC_ERROR_O_FATAL_QUERY_FAIL = 0x80618260,
|
|
CELL_VPOST_IPC_ERROR_O_FATAL_CSPUCORE_FAIL = 0x80618261,
|
|
CELL_VPOST_IPC_ERROR_C_ARG_HDL_NULL = 0x80618270,
|
|
CELL_VPOST_IPC_ERROR_C_ARG_HDL_INVALID = 0x80618271,
|
|
CELL_VPOST_IPC_ERROR_C_FATAL_SNDCMD_FAIL = 0x80618290,
|
|
CELL_VPOST_IPC_ERROR_C_FATAL_RCVRES_FAIL = 0x80618291,
|
|
CELL_VPOST_IPC_ERROR_C_FATAL_DSPUCORE_FAIL = 0x80618292,
|
|
CELL_VPOST_IPC_ERROR_E_ARG_HDL_NULL = 0x806182a0,
|
|
CELL_VPOST_IPC_ERROR_E_ARG_HDL_INVALID = 0x806182a1,
|
|
CELL_VPOST_IPC_ERROR_E_ARG_INPICBUF_NULL = 0x806182a2,
|
|
CELL_VPOST_IPC_ERROR_E_ARG_INPICBUF_INVALID = 0x806182a3,
|
|
CELL_VPOST_IPC_ERROR_E_ARG_INPICINFO_NULL = 0x806182a4,
|
|
CELL_VPOST_IPC_ERROR_E_ARG_INPICINFO_INVALID = 0x806182a5,
|
|
CELL_VPOST_IPC_ERROR_E_ARG_CTRL_NULL = 0x806182a6,
|
|
CELL_VPOST_IPC_ERROR_E_ARG_CTRL_INVALID = 0x806182a7,
|
|
CELL_VPOST_IPC_ERROR_E_ARG_COMB_INVALID = 0x806182a8,
|
|
CELL_VPOST_IPC_ERROR_E_ARG_OUTPICBUF_NULL = 0x806182a9,
|
|
CELL_VPOST_IPC_ERROR_E_ARG_OUTPICBUF_INVALID = 0x806182aa,
|
|
CELL_VPOST_IPC_ERROR_E_ARG_OUTPICINFO_NULL = 0x806182ab,
|
|
CELL_VPOST_IPC_ERROR_E_FATAL_SNDCMD_FAIL = 0x806182c0,
|
|
CELL_VPOST_IPC_ERROR_E_FATAL_RCVRES_FAIL = 0x806182c1,
|
|
CELL_VPOST_IPC_ERROR_E_FATAL_SPUCORE_FAIL = 0x806182c2,
|
|
CELL_VPOST_VSC_ERROR_Q_ARG_ATTR_NULL = 0x80618310,
|
|
CELL_VPOST_VSC_ERROR_O_ARG_RSRC_NULL = 0x80618340,
|
|
CELL_VPOST_VSC_ERROR_O_ARG_RSRC_INVALID = 0x80618341,
|
|
CELL_VPOST_VSC_ERROR_O_ARG_HDL_NULL = 0x80618342,
|
|
CELL_VPOST_VSC_ERROR_O_FATAL_QUERY_FAIL = 0x80618360,
|
|
CELL_VPOST_VSC_ERROR_O_FATAL_CSPUCORE_FAIL = 0x80618361,
|
|
CELL_VPOST_VSC_ERROR_C_ARG_HDL_NULL = 0x80618370,
|
|
CELL_VPOST_VSC_ERROR_C_ARG_HDL_INVALID = 0x80618371,
|
|
CELL_VPOST_VSC_ERROR_C_FATAL_SNDCMD_FAIL = 0x80618390,
|
|
CELL_VPOST_VSC_ERROR_C_FATAL_RCVRES_FAIL = 0x80618391,
|
|
CELL_VPOST_VSC_ERROR_C_FATAL_DSPUCORE_FAIL = 0x80618392,
|
|
CELL_VPOST_VSC_ERROR_E_ARG_HDL_NULL = 0x806183a0,
|
|
CELL_VPOST_VSC_ERROR_E_ARG_HDL_INVALID = 0x806183a1,
|
|
CELL_VPOST_VSC_ERROR_E_ARG_INPICBUF_NULL = 0x806183a2,
|
|
CELL_VPOST_VSC_ERROR_E_ARG_INPICBUF_INVALID = 0x806183a3,
|
|
CELL_VPOST_VSC_ERROR_E_ARG_INPICINFO_NULL = 0x806183a4,
|
|
CELL_VPOST_VSC_ERROR_E_ARG_INPICINFO_INVALID = 0x806183a5,
|
|
CELL_VPOST_VSC_ERROR_E_ARG_CTRL_NULL = 0x806183a6,
|
|
CELL_VPOST_VSC_ERROR_E_ARG_CTRL_INVALID = 0x806183a7,
|
|
CELL_VPOST_VSC_ERROR_E_ARG_COMB_INVALID = 0x806183a8,
|
|
CELL_VPOST_VSC_ERROR_E_ARG_OUTPICBUF_NULL = 0x806183a9,
|
|
CELL_VPOST_VSC_ERROR_E_ARG_OUTPICBUF_INVALID = 0x806183aa,
|
|
CELL_VPOST_VSC_ERROR_E_ARG_OUTPICINFO_NULL = 0x806183ab,
|
|
CELL_VPOST_VSC_ERROR_E_FATAL_SNDCMD_FAIL = 0x806183c0,
|
|
CELL_VPOST_VSC_ERROR_E_FATAL_RCVRES_FAIL = 0x806183c1,
|
|
CELL_VPOST_VSC_ERROR_E_FATAL_SPUCORE_FAIL = 0x806183c2,
|
|
CELL_VPOST_CSC_ERROR_Q_ARG_ATTR_NULL = 0x80618410,
|
|
CELL_VPOST_CSC_ERROR_O_ARG_RSRC_NULL = 0x80618440,
|
|
CELL_VPOST_CSC_ERROR_O_ARG_RSRC_INVALID = 0x80618441,
|
|
CELL_VPOST_CSC_ERROR_O_ARG_HDL_NULL = 0x80618442,
|
|
CELL_VPOST_CSC_ERROR_O_FATAL_QUERY_FAIL = 0x80618460,
|
|
CELL_VPOST_CSC_ERROR_O_FATAL_CSPUCORE_FAIL = 0x80618461,
|
|
CELL_VPOST_CSC_ERROR_C_ARG_HDL_NULL = 0x80618470,
|
|
CELL_VPOST_CSC_ERROR_C_ARG_HDL_INVALID = 0x80618471,
|
|
CELL_VPOST_CSC_ERROR_C_FATAL_SNDCMD_FAIL = 0x80618490,
|
|
CELL_VPOST_CSC_ERROR_C_FATAL_RCVRES_FAIL = 0x80618491,
|
|
CELL_VPOST_CSC_ERROR_C_FATAL_DSPUCORE_FAIL = 0x80618492,
|
|
CELL_VPOST_CSC_ERROR_E_ARG_HDL_NULL = 0x806184a0,
|
|
CELL_VPOST_CSC_ERROR_E_ARG_HDL_INVALID = 0x806184a1,
|
|
CELL_VPOST_CSC_ERROR_E_ARG_INPICBUF_NULL = 0x806184a2,
|
|
CELL_VPOST_CSC_ERROR_E_ARG_INPICBUF_INVALID = 0x806184a3,
|
|
CELL_VPOST_CSC_ERROR_E_ARG_INPICINFO_NULL = 0x806184a4,
|
|
CELL_VPOST_CSC_ERROR_E_ARG_INPICINFO_INVALID = 0x806184a5,
|
|
CELL_VPOST_CSC_ERROR_E_ARG_CTRL_NULL = 0x806184a6,
|
|
CELL_VPOST_CSC_ERROR_E_ARG_CTRL_INVALID = 0x806184a7,
|
|
CELL_VPOST_CSC_ERROR_E_ARG_COMB_INVALID = 0x806184a8,
|
|
CELL_VPOST_CSC_ERROR_E_ARG_OUTPICBUF_NULL = 0x806184a9,
|
|
CELL_VPOST_CSC_ERROR_E_ARG_OUTPICBUF_INVALID = 0x806184aa,
|
|
CELL_VPOST_CSC_ERROR_E_ARG_OUTPICINFO_NULL = 0x806184ab,
|
|
CELL_VPOST_CSC_ERROR_E_FATAL_SNDCMD_FAIL = 0x806184c0,
|
|
CELL_VPOST_CSC_ERROR_E_FATAL_RCVRES_FAIL = 0x806184c1,
|
|
CELL_VPOST_CSC_ERROR_E_FATAL_SPUCORE_FAIL = 0x806184c2,
|
|
};
|
|
|
|
enum CellVpostPictureDepth : s32
|
|
{
|
|
CELL_VPOST_PIC_DEPTH_8,
|
|
};
|
|
|
|
enum CellVpostPictureFormatIn : s32
|
|
{
|
|
CELL_VPOST_PIC_FMT_IN_YUV420_PLANAR,
|
|
};
|
|
|
|
enum CellVpostPictureFormatOut : s32
|
|
{
|
|
CELL_VPOST_PIC_FMT_OUT_RGBA_ILV,
|
|
CELL_VPOST_PIC_FMT_OUT_YUV420_PLANAR,
|
|
};
|
|
|
|
enum CellVpostPictureStructure : s32
|
|
{
|
|
CELL_VPOST_PIC_STRUCT_PFRM,
|
|
CELL_VPOST_PIC_STRUCT_IFRM,
|
|
CELL_VPOST_PIC_STRUCT_ITOP,
|
|
CELL_VPOST_PIC_STRUCT_IBTM,
|
|
};
|
|
|
|
enum CellVpostExecType : s32
|
|
{
|
|
CELL_VPOST_EXEC_TYPE_PFRM_PFRM,
|
|
CELL_VPOST_EXEC_TYPE_PTOP_ITOP,
|
|
CELL_VPOST_EXEC_TYPE_PBTM_IBTM,
|
|
CELL_VPOST_EXEC_TYPE_ITOP_PFRM,
|
|
CELL_VPOST_EXEC_TYPE_IBTM_PFRM,
|
|
CELL_VPOST_EXEC_TYPE_IFRM_IFRM,
|
|
CELL_VPOST_EXEC_TYPE_ITOP_ITOP,
|
|
CELL_VPOST_EXEC_TYPE_IBTM_IBTM,
|
|
};
|
|
|
|
enum CellVpostChromaPositionType : s32
|
|
{
|
|
CELL_VPOST_CHROMA_POS_TYPE_A,
|
|
CELL_VPOST_CHROMA_POS_TYPE_B,
|
|
};
|
|
|
|
enum CellVpostScanType : s32
|
|
{
|
|
CELL_VPOST_SCAN_TYPE_P,
|
|
CELL_VPOST_SCAN_TYPE_I,
|
|
};
|
|
|
|
enum CellVpostQuantRange : s32
|
|
{
|
|
CELL_VPOST_QUANT_RANGE_FULL,
|
|
CELL_VPOST_QUANT_RANGE_BROADCAST,
|
|
};
|
|
|
|
enum CellVpostColorMatrix : s32
|
|
{
|
|
CELL_VPOST_COLOR_MATRIX_BT601,
|
|
CELL_VPOST_COLOR_MATRIX_BT709,
|
|
};
|
|
|
|
enum CellVpostScalerType : s32
|
|
{
|
|
CELL_VPOST_SCALER_TYPE_BILINEAR,
|
|
CELL_VPOST_SCALER_TYPE_LINEAR_SHARP,
|
|
CELL_VPOST_SCALER_TYPE_2X4TAP,
|
|
CELL_VPOST_SCALER_TYPE_8X4TAP,
|
|
};
|
|
|
|
enum CellVpostIpcType : s32
|
|
{
|
|
CELL_VPOST_IPC_TYPE_DOUBLING,
|
|
CELL_VPOST_IPC_TYPE_LINEAR,
|
|
CELL_VPOST_IPC_TYPE_MAVG,
|
|
};
|
|
|
|
struct CellVpostCfgParam
|
|
{
|
|
be_t<u32> inMaxWidth;
|
|
be_t<u32> inMaxHeight;
|
|
be_t<s32> inDepth; // CellVpostPictureDepth
|
|
be_t<s32> inPicFmt; // CellVpostPictureFormatIn
|
|
|
|
be_t<u32> outMaxWidth;
|
|
be_t<u32> outMaxHeight;
|
|
be_t<s32> outDepth; // CellVpostPictureDepth
|
|
be_t<s32> outPicFmt; // CellVpostPictureFormatOut
|
|
|
|
be_t<u32> reserved1;
|
|
be_t<u32> reserved2;
|
|
};
|
|
|
|
struct CellVpostAttr
|
|
{
|
|
be_t<u32> memSize;
|
|
u8 delay;
|
|
be_t<u32> vpostVerUpper;
|
|
be_t<u32> vpostVerLower;
|
|
};
|
|
|
|
struct CellVpostResource
|
|
{
|
|
be_t<u32> memAddr;
|
|
be_t<u32> memSize;
|
|
be_t<s32> ppuThreadPriority;
|
|
be_t<u32> ppuThreadStackSize;
|
|
be_t<s32> spuThreadPriority;
|
|
be_t<u32> numOfSpus;
|
|
};
|
|
|
|
struct CellVpostResourceEx
|
|
{
|
|
be_t<u32> memAddr;
|
|
be_t<u32> memSize;
|
|
be_t<u32> spurs_addr;
|
|
u8 priority[8];
|
|
be_t<u32> maxContention;
|
|
};
|
|
|
|
struct CellVpostWindow
|
|
{
|
|
be_t<u32> x;
|
|
be_t<u32> y;
|
|
be_t<u32> width;
|
|
be_t<u32> height;
|
|
};
|
|
|
|
struct CellVpostCtrlParam
|
|
{
|
|
be_t<s32> execType; // CellVpostExecType
|
|
|
|
be_t<s32> scalerType; // CellVpostScalerType
|
|
be_t<s32> ipcType; // CellVpostIpcType
|
|
|
|
be_t<u32> inWidth;
|
|
be_t<u32> inHeight;
|
|
be_t<s32> inChromaPosType; // CellVpostChromaPositionType
|
|
be_t<s32> inQuantRange; // CellVpostQuantRange
|
|
be_t<s32> inColorMatrix; // CellVpostColorMatrix
|
|
CellVpostWindow inWindow;
|
|
|
|
be_t<u32> outWidth;
|
|
be_t<u32> outHeight;
|
|
CellVpostWindow outWindow;
|
|
u8 outAlpha;
|
|
|
|
be_t<u64> userData;
|
|
|
|
be_t<u32> reserved1;
|
|
be_t<u32> reserved2;
|
|
};
|
|
|
|
struct CellVpostPictureInfo
|
|
{
|
|
be_t<u32> inWidth;
|
|
be_t<u32> inHeight;
|
|
be_t<s32> inDepth; // CellVpostPictureDepth
|
|
be_t<s32> inScanType; // CellVpostScanType
|
|
be_t<s32> inPicFmt; // CellVpostPictureFormatIn
|
|
be_t<s32> inChromaPosType; // CellVpostChromaPositionType
|
|
be_t<s32> inPicStruct; // CellVpostPictureStructure
|
|
be_t<s32> inQuantRange; // CellVpostQuantRange
|
|
be_t<s32> inColorMatrix; // CellVpostColorMatrix
|
|
|
|
be_t<u32> outWidth;
|
|
be_t<u32> outHeight;
|
|
be_t<s32> outDepth; // CellVpostPictureDepth
|
|
be_t<s32> outScanType; // CellVpostScanType
|
|
be_t<s32> outPicFmt; // CellVpostPictureFormatOut
|
|
be_t<s32> outChromaPosType; // CellVpostChromaPositionType
|
|
be_t<s32> outPicStruct; // CellVpostPictureStructure
|
|
be_t<s32> outQuantRange; // CellVpostQuantRange
|
|
be_t<s32> outColorMatrix; // CellVpostColorMatrix
|
|
|
|
be_t<u64> userData;
|
|
|
|
be_t<u32> reserved1;
|
|
be_t<u32> reserved2;
|
|
};
|
|
|
|
class VpostInstance
|
|
{
|
|
public:
|
|
const bool to_rgba;
|
|
|
|
VpostInstance(bool rgba)
|
|
: to_rgba(rgba)
|
|
{
|
|
}
|
|
};
|