feat(libs): add new declarations to libSceAgc
This commit is contained in:
parent
411a4d00a5
commit
8400150f80
|
|
@ -22,6 +22,20 @@ uint32_t* APS5_VABI sceAgcCbBranch(CommandBuffer* buf, uint8_t mode, uint8_t com
|
|||
return nullptr;
|
||||
}
|
||||
|
||||
uint32_t* APS5_VABI sceAgcCbSetUcRegisterRangeDirect(CommandBuffer* buf, uint32_t offset, const uint32_t* values, uint32_t num) {
|
||||
(void)buf;
|
||||
(void)offset;
|
||||
(void)values;
|
||||
(void)num;
|
||||
NotImplemented_nid_no_patch(__func__);
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
uint32_t APS5_VABI sceAgcCbBranchGetSize() {
|
||||
NotImplemented_nid_no_patch(__func__);
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint32_t* APS5_VABI sceAgcCbDispatch(CommandBuffer* buf, uint32_t thread_group_x, uint32_t thread_group_y, uint32_t thread_group_z, uint32_t modifier) {
|
||||
(void)buf;
|
||||
(void)thread_group_x;
|
||||
|
|
|
|||
|
|
@ -14,6 +14,33 @@ uint32_t* APS5_VABI sceAgcDcbDrawIndex(CommandBuffer* buf, uint32_t index_count,
|
|||
return nullptr;
|
||||
}
|
||||
|
||||
uint32_t* APS5_VABI sceAgcDcbDrawIndirectMulti(CommandBuffer* buf, uint32_t data_offset_in_bytes, uint32_t count_indirect, uint32_t max_count_or_count, const volatile void* count_addr, uint32_t stride_in_bytes, uint64_t modifier) {
|
||||
(void)buf;
|
||||
(void)data_offset_in_bytes;
|
||||
(void)count_indirect;
|
||||
(void)max_count_or_count;
|
||||
(void)count_addr;
|
||||
(void)stride_in_bytes;
|
||||
(void)modifier;
|
||||
NotImplemented_nid_no_patch(__func__);
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
uint32_t APS5_VABI sceAgcDcbDrawIndirectMultiGetSize() {
|
||||
NotImplemented_nid_no_patch(__func__);
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint32_t APS5_VABI sceAgcDcbDrawIndexIndirectMultiGetSize() {
|
||||
NotImplemented_nid_no_patch(__func__);
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint32_t APS5_VABI sceAgcDcbDrawIndexIndirectGetSize() {
|
||||
NotImplemented_nid_no_patch(__func__);
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint32_t APS5_VABI sceAgcDcbDrawIndexGetSize(void) {
|
||||
NotImplemented_nid_no_patch(__func__);
|
||||
return 0;
|
||||
|
|
@ -149,16 +176,5 @@ uint32_t* APS5_VABI sceAgcDcbGetLodStats(CommandBuffer* buf, uint8_t cache_polic
|
|||
NotImplemented_nid_no_patch(__func__);
|
||||
return nullptr;
|
||||
}
|
||||
std::uint32_t* APS5_VABI sceAgcDcbDrawIndirectMulti(CommandBuffer* buf, std::uint32_t dataOffsetInBytes, std::uint32_t countIndirect, std::uint32_t maxCountOrCount, const volatile void* countAddr, std::uint32_t strideInBytes, std::uint64_t modifier) {
|
||||
(void)buf;
|
||||
(void)dataOffsetInBytes;
|
||||
(void)countIndirect;
|
||||
(void)maxCountOrCount;
|
||||
(void)countAddr;
|
||||
(void)strideInBytes;
|
||||
(void)modifier;
|
||||
NotImplemented_nid_no_patch(__func__);
|
||||
return 0;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -12,6 +12,38 @@ uint32_t* APS5_VABI sceAgcDcbSetCxRegisterDirect(CommandBuffer* buf, ShaderRegis
|
|||
return nullptr;
|
||||
}
|
||||
|
||||
uint32_t APS5_VABI sceAgcDcbSetBaseDispatchIndirectArgsGetSize() {
|
||||
NotImplemented_nid_no_patch(__func__);
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint32_t APS5_VABI sceAgcDcbQueueEndOfShaderActionGetSize() {
|
||||
NotImplemented_nid_no_patch(__func__);
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint32_t APS5_VABI sceAgcDcbGetLodStatsGetSize() {
|
||||
NotImplemented_nid_no_patch(__func__);
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint32_t APS5_VABI sceAgcDcbSetShRegistersIndirectGetSize(uint32_t num_regs) {
|
||||
(void)num_regs;
|
||||
NotImplemented_nid_no_patch(__func__);
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint32_t APS5_VABI sceAgcDcbSetBaseDrawIndirectArgsGetSize() {
|
||||
NotImplemented_nid_no_patch(__func__);
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint64_t APS5_VABI sceAgcDcbContextStateOpGetSize(uint32_t operation) {
|
||||
(void)operation;
|
||||
NotImplemented_nid_no_patch(__func__);
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint32_t APS5_VABI sceAgcDcbSetCxRegisterDirectGetSize(void) {
|
||||
NotImplemented_nid_no_patch(__func__);
|
||||
return 0;
|
||||
|
|
@ -62,12 +94,6 @@ uint32_t* APS5_VABI sceAgcDcbContextStateOp(CommandBuffer* buf, uint32_t operati
|
|||
return nullptr;
|
||||
}
|
||||
|
||||
uint64_t APS5_VABI sceAgcDcbContextStateOpGetSize(uint32_t operation) {
|
||||
(void)operation;
|
||||
NotImplemented_nid_no_patch(__func__);
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint32_t* APS5_VABI sceAgcDcbSetFlip(CommandBuffer* buf, uint32_t video_out_handle, int32_t display_buffer_index, uint32_t flip_mode, int64_t flip_arg) {
|
||||
(void)buf;
|
||||
(void)video_out_handle;
|
||||
|
|
@ -78,6 +104,24 @@ uint32_t* APS5_VABI sceAgcDcbSetFlip(CommandBuffer* buf, uint32_t video_out_hand
|
|||
return nullptr;
|
||||
}
|
||||
|
||||
APS5_EXPORT("23LRUSvYu1M", sceAgcInit);
|
||||
int APS5_VABI sceAgcInit(uint32_t* state, uint32_t ver) {
|
||||
(void)state;
|
||||
(void)ver;
|
||||
NotImplemented_nid_no_patch(__func__);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
APS5_EXPORT("qj7QZpgr9Uw", sceAgcDcbContextStateAnotherOp);
|
||||
uint32_t* APS5_VABI sceAgcDcbContextStateAnotherOp(CommandBuffer* buf, uint32_t operation) {
|
||||
(void)buf;
|
||||
(void)operation;
|
||||
NotImplemented_nid_no_patch(__func__);
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
|
||||
uint32_t* APS5_VABI sceAgcDcbSetPredication(CommandBuffer* buf, uint8_t condition, uint8_t op, uint8_t wait_op, const volatile void* address, uint32_t count_in_dwords) {
|
||||
(void)buf;
|
||||
(void)condition;
|
||||
|
|
|
|||
|
|
@ -3,6 +3,11 @@
|
|||
#include "SceTypes.hpp"
|
||||
#include "prx/libc/include/General.hpp"
|
||||
|
||||
struct SizeAlign {
|
||||
uint64_t m_size;
|
||||
size_t m_align;
|
||||
};
|
||||
|
||||
extern "C" {
|
||||
|
||||
uint32_t APS5_VABI sceAgcGetPacketSize(uint32_t* packet) {
|
||||
|
|
@ -17,6 +22,34 @@ void* APS5_VABI sceAgcGetRegisterDefaults2(uint32_t ver) {
|
|||
return nullptr;
|
||||
}
|
||||
|
||||
APS5_EXPORT("fd5Bp5tGTgo", sceAgcUnknownFuseShaderHalves);
|
||||
int APS5_VABI sceAgcUnknownFuseShaderHalves(Shader* fused_result, const Shader* front, const Shader* back, void* scratch_mem) {
|
||||
(void)fused_result;
|
||||
(void)front;
|
||||
(void)back;
|
||||
(void)scratch_mem;
|
||||
NotImplemented_nid_no_patch(__func__);
|
||||
return 0;
|
||||
}
|
||||
|
||||
APS5_EXPORT("dolOmWH+huQ", sceAgcUnknownGetFusedShaderSize);
|
||||
int APS5_VABI sceAgcUnknownGetFusedShaderSize(SizeAlign* dst, const Shader* front, const Shader* back) {
|
||||
(void)dst;
|
||||
(void)front;
|
||||
(void)back;
|
||||
NotImplemented_nid_no_patch(__func__);
|
||||
return 0;
|
||||
}
|
||||
|
||||
APS5_EXPORT("V++UgBtQhn0", sceAgcGetDataPacketPayloadAnotherAddress);
|
||||
int APS5_VABI sceAgcGetDataPacketPayloadAnotherAddress(uint32_t** addr, uint32_t* cmd, int type) {
|
||||
(void)addr;
|
||||
(void)cmd;
|
||||
(void)type;
|
||||
NotImplemented_nid_no_patch(__func__);
|
||||
return 0;
|
||||
}
|
||||
|
||||
void* APS5_VABI sceAgcGetRegisterDefaults2Internal(uint32_t ver) {
|
||||
(void)ver;
|
||||
NotImplemented_nid_no_patch(__func__);
|
||||
|
|
|
|||
|
|
@ -34,6 +34,13 @@ int APS5_VABI sceAgcQueueEndOfPipeActionPatchAddress(uint32_t* cmd, const volati
|
|||
return 0;
|
||||
}
|
||||
|
||||
uint32_t* APS5_VABI sceAgcSetNop(CommandBuffer* buf, uint32_t size_dw) {
|
||||
(void)buf;
|
||||
(void)size_dw;
|
||||
NotImplemented_nid_no_patch(__func__);
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
int APS5_VABI sceAgcQueueEndOfPipeActionPatchData(uint32_t* cmd, uint32_t context_id, uint32_t data_sel, uint64_t data) {
|
||||
(void)cmd;
|
||||
(void)context_id;
|
||||
|
|
|
|||
|
|
@ -117,6 +117,7 @@ int APS5_VABI sceAgcUpdatePrimState(ShaderRegister* cx_regs, ShaderRegister* uc_
|
|||
return 0;
|
||||
}
|
||||
|
||||
APS5_EXPORT("HV4j+E0MBHE", sceAgcCreateInterpolantMapping);
|
||||
int APS5_VABI sceAgcCreateInterpolantMapping(ShaderRegister* regs, const Shader* gs, const Shader* ps) {
|
||||
constexpr auto fn = __func__;
|
||||
if (regs == nullptr) {
|
||||
|
|
|
|||
|
|
@ -242,14 +242,6 @@ int APS5_VABI sceAgcCondExecPatchSetEnd(uint32_t* cmd, const volatile uint32_t*
|
|||
return 0;
|
||||
}
|
||||
|
||||
int APS5_VABI sceAgcCreateInterpolantMapping(ShaderRegister* regs, const Shader* gs, const Shader* ps) {
|
||||
(void)regs;
|
||||
(void)gs;
|
||||
(void)ps;
|
||||
NotImplemented_nid_no_patch(__func__);
|
||||
return 0;
|
||||
}
|
||||
|
||||
int APS5_VABI sceAgcCreatePrimState(ShaderRegister* cx_regs, ShaderRegister* uc_regs, const Shader* hs, const Shader* gs, uint32_t prim_type) {
|
||||
(void)cx_regs;
|
||||
(void)uc_regs;
|
||||
|
|
|
|||
|
|
@ -2,13 +2,14 @@
|
|||
#define CORE_LIBS_PRX_LIBC_INCLUDE_GENERAL_EXPORTMACROS_HPP
|
||||
|
||||
#if defined(__GNUC__) || defined(__clang__)
|
||||
#define APS_EXPORT(exportName, funcName) \
|
||||
__asm__(".globl " exportName "\n" exportName " = " #funcName "_nid_no_patch_cut")
|
||||
#define APS5_EXPORT(exportName, funcName) \
|
||||
__asm__(".globl \"" exportName "\"\n\t" \
|
||||
".set \"" exportName "\", " #funcName "_nid_no_patch_cut")
|
||||
#elif defined(_MSC_VER)
|
||||
#define APS_EXPORT(exportName, funcName) \
|
||||
#define APS5_EXPORT(exportName, funcName) \
|
||||
__pragma(comment(linker, "/export:" exportName "=" #funcName "_nid_no_patch_cut"))
|
||||
#else
|
||||
#define APS_EXPORT(exportName, funcName)
|
||||
#define APS5_EXPORT(exportName, funcName)
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Reference in New Issue