From bd16eaaacfa8b08d5a163dafa00bfa5ae93517fc Mon Sep 17 00:00:00 2001 From: boykopovar Date: Fri, 11 Sep 2026 16:41:01 +0300 Subject: [PATCH] refactor(libs): organize libSceVideoOut with cmakelists --- core/libs/prx/libSceVideoOut/CMakeLists.txt | 8 + core/libs/prx/libSceVideoOut/Export.cpp | 219 ------------------ .../prx/libSceVideoOut/include/Buffer.hpp | 19 ++ .../libs/prx/libSceVideoOut/include/Event.hpp | 26 +++ .../prx/libSceVideoOut/include/Output.hpp | 25 ++ core/libs/prx/libSceVideoOut/src/Buffer.cpp | 58 +++++ core/libs/prx/libSceVideoOut/src/Event.cpp | 79 +++++++ core/libs/prx/libSceVideoOut/src/Output.cpp | 97 ++++++++ 8 files changed, 312 insertions(+), 219 deletions(-) create mode 100644 core/libs/prx/libSceVideoOut/CMakeLists.txt delete mode 100644 core/libs/prx/libSceVideoOut/Export.cpp create mode 100644 core/libs/prx/libSceVideoOut/include/Buffer.hpp create mode 100644 core/libs/prx/libSceVideoOut/include/Event.hpp create mode 100644 core/libs/prx/libSceVideoOut/include/Output.hpp create mode 100644 core/libs/prx/libSceVideoOut/src/Buffer.cpp create mode 100644 core/libs/prx/libSceVideoOut/src/Event.cpp create mode 100644 core/libs/prx/libSceVideoOut/src/Output.cpp diff --git a/core/libs/prx/libSceVideoOut/CMakeLists.txt b/core/libs/prx/libSceVideoOut/CMakeLists.txt new file mode 100644 index 000000000..087ce8db3 --- /dev/null +++ b/core/libs/prx/libSceVideoOut/CMakeLists.txt @@ -0,0 +1,8 @@ +add_library(libSceVideoOut SHARED EXCLUDE_FROM_ALL + ${CMAKE_CURRENT_SOURCE_DIR}/src/Event.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/src/Buffer.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/src/Output.cpp +) + +target_include_directories(libSceVideoOut PRIVATE ${LIBS_INCLUDE_DIR}) +target_link_libraries(libSceVideoOut PRIVATE libc) diff --git a/core/libs/prx/libSceVideoOut/Export.cpp b/core/libs/prx/libSceVideoOut/Export.cpp deleted file mode 100644 index ebe8d9ced..000000000 --- a/core/libs/prx/libSceVideoOut/Export.cpp +++ /dev/null @@ -1,219 +0,0 @@ -#include -#include -#include "SceTypes.hpp" -#include "prx/libc/include/General.hpp" - -extern "C" { - -int APS5_VABI sceVideoOutAddFlipEvent(KernelEqueue eq, int handle, void* udata) { - (void)eq; - (void)handle; - (void)udata; - NotImplemented_nid_no_patch(__func__); - return 0; -} - -int APS5_VABI sceVideoOutAddOutputModeEvent(KernelEqueue eq, int handle, void* udata) { - (void)eq; - (void)handle; - (void)udata; - NotImplemented_nid_no_patch(__func__); - return 0; -} - -int APS5_VABI sceVideoOutAddPreVblankStartEvent(KernelEqueue eq, int handle, void* udata) { - (void)eq; - (void)handle; - (void)udata; - NotImplemented_nid_no_patch(__func__); - return 0; -} - -int APS5_VABI sceVideoOutAddVblankEvent(KernelEqueue eq, int handle, void* udata) { - (void)eq; - (void)handle; - (void)udata; - NotImplemented_nid_no_patch(__func__); - return 0; -} - -int APS5_VABI sceVideoOutClose(int handle) { - (void)handle; - NotImplemented_nid_no_patch(__func__); - return 0; -} - -int APS5_VABI sceVideoOutConfigureOutput(int handle, uint64_t mode, const VideoOutOutputOptions* options, void* reserved_ptr, uint64_t reserved) { - (void)handle; - (void)mode; - (void)options; - (void)reserved_ptr; - (void)reserved; - NotImplemented_nid_no_patch(__func__); - return 0; -} - -int APS5_VABI sceVideoOutDeleteFlipEvent(KernelEqueue eq, int handle) { - (void)eq; - (void)handle; - NotImplemented_nid_no_patch(__func__); - return 0; -} - -int APS5_VABI sceVideoOutDeletePreVblankStartEvent(KernelEqueue eq, int handle) { - (void)eq; - (void)handle; - NotImplemented_nid_no_patch(__func__); - return 0; -} - -int APS5_VABI sceVideoOutDeleteVblankEvent(KernelEqueue eq, int handle) { - (void)eq; - (void)handle; - NotImplemented_nid_no_patch(__func__); - return 0; -} - -int APS5_VABI sceVideoOutGetEventCount(const KernelEvent* ev) { - (void)ev; - NotImplemented_nid_no_patch(__func__); - return 0; -} - -int APS5_VABI sceVideoOutGetEventData(const KernelEvent* ev, int64_t* data) { - (void)ev; - (void)data; - NotImplemented_nid_no_patch(__func__); - return 0; -} - -int APS5_VABI sceVideoOutGetEventId(const KernelEvent* ev) { - (void)ev; - NotImplemented_nid_no_patch(__func__); - return 0; -} - -int APS5_VABI sceVideoOutGetFlipStatus(int handle, VideoOutFlipStatus* status) { - (void)handle; - (void)status; - NotImplemented_nid_no_patch(__func__); - return 0; -} - -int APS5_VABI sceVideoOutGetOutputStatus(int handle, VideoOutOutputStatus* status) { - (void)handle; - (void)status; - NotImplemented_nid_no_patch(__func__); - return 0; -} - -int APS5_VABI sceVideoOutGetVblankStatus(int handle, VideoOutVblankStatus* status) { - (void)handle; - (void)status; - NotImplemented_nid_no_patch(__func__); - return 0; -} - -int APS5_VABI sceVideoOutInitializeOutputOptions(VideoOutOutputOptions* options) { - (void)options; - NotImplemented_nid_no_patch(__func__); - return 0; -} - -int APS5_VABI sceVideoOutIsFlipPending(int handle) { - (void)handle; - NotImplemented_nid_no_patch(__func__); - return 0; -} - -int APS5_VABI sceVideoOutIsOutputSupported(int handle, uint64_t mode, const VideoOutOutputOptions* options, void* reserved_ptr, uint64_t reserved) { - (void)handle; - (void)mode; - (void)options; - (void)reserved_ptr; - (void)reserved; - NotImplemented_nid_no_patch(__func__); - return 0; -} - -int APS5_VABI sceVideoOutOpen(int user_id, int bus_type, int index, const void* param) { - (void)user_id; - (void)bus_type; - (void)index; - (void)param; - NotImplemented_nid_no_patch(__func__); - return 0; -} - -int APS5_VABI sceVideoOutRegisterBuffers2(int handle, int set_index, int buffer_index_start, const VideoOutBuffers* buffers, int buffer_num, const VideoOutBufferAttribute2* attribute, int category, void* option) { - (void)handle; - (void)set_index; - (void)buffer_index_start; - (void)buffers; - (void)buffer_num; - (void)attribute; - (void)category; - (void)option; - NotImplemented_nid_no_patch(__func__); - return 0; -} - -void APS5_VABI sceVideoOutSetBufferAttribute2(VideoOutBufferAttribute2* attribute, uint64_t pixel_format, uint32_t tiling_mode, uint32_t width, uint32_t height, uint64_t option, uint32_t dcc_control, uint64_t dcc_cb_register_clear_color) { - (void)attribute; - (void)pixel_format; - (void)tiling_mode; - (void)width; - (void)height; - (void)option; - (void)dcc_control; - (void)dcc_cb_register_clear_color; - NotImplemented_nid_no_patch(__func__); -} - -int APS5_VABI sceVideoOutSetFlipRate(int handle, int rate) { - (void)handle; - (void)rate; - NotImplemented_nid_no_patch(__func__); - return 0; -} - -int APS5_VABI sceVideoOutSetWindowModeMargins(int handle, int top, int bottom) { - (void)handle; - (void)top; - (void)bottom; - NotImplemented_nid_no_patch(__func__); - return 0; -} - -int APS5_VABI sceVideoOutSubmitChangeBufferAttribute2(int handle, int set_index, const VideoOutBufferAttribute2* attribute, void* option) { - (void)handle; - (void)set_index; - (void)attribute; - (void)option; - NotImplemented_nid_no_patch(__func__); - return 0; -} - -int APS5_VABI sceVideoOutSubmitFlip(int handle, int index, int flip_mode, int64_t flip_arg) { - (void)handle; - (void)index; - (void)flip_mode; - (void)flip_arg; - NotImplemented_nid_no_patch(__func__); - return 0; -} - -int APS5_VABI sceVideoOutUnregisterBuffers(int handle, int set_index) { - (void)handle; - (void)set_index; - NotImplemented_nid_no_patch(__func__); - return 0; -} - -int APS5_VABI sceVideoOutWaitVblank(int handle) { - (void)handle; - NotImplemented_nid_no_patch(__func__); - return 0; -} - -} diff --git a/core/libs/prx/libSceVideoOut/include/Buffer.hpp b/core/libs/prx/libSceVideoOut/include/Buffer.hpp new file mode 100644 index 000000000..77e7d7b45 --- /dev/null +++ b/core/libs/prx/libSceVideoOut/include/Buffer.hpp @@ -0,0 +1,19 @@ +#ifndef CORE_LIBS_PRX_LIBSCEVIDEOUOUT_INCLUDE_OUTPUT_HPP +#define CORE_LIBS_PRX_LIBSCEVIDEOUOUT_INCLUDE_OUTPUT_HPP + +#include + +#include "prx/libc/include/General.hpp" +#include "SceTypes.hpp" + +extern "C" { + +int APS5_VABI sceVideoOutRegisterBuffers2(int handle, int set_index, int buffer_index_start, const VideoOutBuffers* buffers, int buffer_num, const VideoOutBufferAttribute2* attribute, int category, void* option); +void APS5_VABI sceVideoOutSetBufferAttribute2(VideoOutBufferAttribute2* attribute, uint64_t pixel_format, uint32_t tiling_mode, uint32_t width, uint32_t height, uint64_t option, uint32_t dcc_control, uint64_t dcc_cb_register_clear_color); +int APS5_VABI sceVideoOutSubmitChangeBufferAttribute2(int handle, int set_index, const VideoOutBufferAttribute2* attribute, void* option); +int APS5_VABI sceVideoOutSubmitFlip(int handle, int index, int flip_mode, int64_t flip_arg); +int APS5_VABI sceVideoOutUnregisterBuffers(int handle, int set_index); + +#endif + +} diff --git a/core/libs/prx/libSceVideoOut/include/Event.hpp b/core/libs/prx/libSceVideoOut/include/Event.hpp new file mode 100644 index 000000000..8b07233df --- /dev/null +++ b/core/libs/prx/libSceVideoOut/include/Event.hpp @@ -0,0 +1,26 @@ +#ifndef CORE_LIBS_PRX_LIBSCEVIDEOUOUT_INCLUDE_EVENT_HPP +#define CORE_LIBS_PRX_LIBSCEVIDEOUOUT_INCLUDE_EVENT_HPP + +#include + +#include "prx/libc/include/General.hpp" +#include "SceTypes.hpp" + +extern "C" { + +int APS5_VABI sceVideoOutAddFlipEvent(KernelEqueue eq, int handle, void* udata); +int APS5_VABI sceVideoOutAddOutputModeEvent(KernelEqueue eq, int handle, void* udata); +int APS5_VABI sceVideoOutAddPreVblankStartEvent(KernelEqueue eq, int handle, void* udata); +int APS5_VABI sceVideoOutAddVblankEvent(KernelEqueue eq, int handle, void* udata); + +int APS5_VABI sceVideoOutDeleteFlipEvent(KernelEqueue eq, int handle); +int APS5_VABI sceVideoOutDeletePreVblankStartEvent(KernelEqueue eq, int handle); +int APS5_VABI sceVideoOutDeleteVblankEvent(KernelEqueue eq, int handle); + +int APS5_VABI sceVideoOutGetEventCount(const KernelEvent* ev); +int APS5_VABI sceVideoOutGetEventData(const KernelEvent* ev, int64_t* data); +int APS5_VABI sceVideoOutGetEventId(const KernelEvent* ev); + +#endif + +} diff --git a/core/libs/prx/libSceVideoOut/include/Output.hpp b/core/libs/prx/libSceVideoOut/include/Output.hpp new file mode 100644 index 000000000..d1fe0e1c6 --- /dev/null +++ b/core/libs/prx/libSceVideoOut/include/Output.hpp @@ -0,0 +1,25 @@ +#ifndef CORE_LIBS_PRX_LIBSCEVIDEOUOUT_INCLUDE_OUTPUT_HPP +#define CORE_LIBS_PRX_LIBSCEVIDEOUOUT_INCLUDE_OUTPUT_HPP + +#include +#include "prx/libc/include/General.hpp" +#include "SceTypes.hpp" + +extern "C" { + +int APS5_VABI sceVideoOutOpen(int user_id, int bus_type, int index, const void* param); +int APS5_VABI sceVideoOutClose(int handle); +int APS5_VABI sceVideoOutConfigureOutput(int handle, uint64_t mode, const VideoOutOutputOptions* options, void* reserved_ptr, uint64_t reserved); +int APS5_VABI sceVideoOutIsOutputSupported(int handle, uint64_t mode, const VideoOutOutputOptions* options, void* reserved_ptr, uint64_t reserved); +int APS5_VABI sceVideoOutInitializeOutputOptions(VideoOutOutputOptions* options); +int APS5_VABI sceVideoOutSetFlipRate(int handle, int rate); +int APS5_VABI sceVideoOutSetWindowModeMargins(int handle, int top, int bottom); +int APS5_VABI sceVideoOutGetFlipStatus(int handle, VideoOutFlipStatus* status); +int APS5_VABI sceVideoOutGetOutputStatus(int handle, VideoOutOutputStatus* status); +int APS5_VABI sceVideoOutGetVblankStatus(int handle, VideoOutVblankStatus* status); +int APS5_VABI sceVideoOutIsFlipPending(int handle); +int APS5_VABI sceVideoOutWaitVblank(int handle); + +#endif + +} diff --git a/core/libs/prx/libSceVideoOut/src/Buffer.cpp b/core/libs/prx/libSceVideoOut/src/Buffer.cpp new file mode 100644 index 000000000..5df1d26bf --- /dev/null +++ b/core/libs/prx/libSceVideoOut/src/Buffer.cpp @@ -0,0 +1,58 @@ +#include +#include "SceTypes.hpp" + +#include "prx/libSceVideoOut/include/Buffer.hpp" + +extern "C" { + +int APS5_VABI sceVideoOutRegisterBuffers2(int handle, int set_index, int buffer_index_start, const VideoOutBuffers* buffers, int buffer_num, const VideoOutBufferAttribute2* attribute, int category, void* option) { + (void)handle; + (void)set_index; + (void)buffer_index_start; + (void)buffers; + (void)buffer_num; + (void)attribute; + (void)category; + (void)option; + NotImplemented_nid_no_patch(__func__); + return 0; +} + +void APS5_VABI sceVideoOutSetBufferAttribute2(VideoOutBufferAttribute2* attribute, uint64_t pixel_format, uint32_t tiling_mode, uint32_t width, uint32_t height, uint64_t option, uint32_t dcc_control, uint64_t dcc_cb_register_clear_color) { + (void)attribute; + (void)pixel_format; + (void)tiling_mode; + (void)width; + (void)height; + (void)option; + (void)dcc_control; + (void)dcc_cb_register_clear_color; + NotImplemented_nid_no_patch(__func__); +} + +int APS5_VABI sceVideoOutSubmitChangeBufferAttribute2(int handle, int set_index, const VideoOutBufferAttribute2* attribute, void* option) { + (void)handle; + (void)set_index; + (void)attribute; + (void)option; + NotImplemented_nid_no_patch(__func__); + return 0; +} + +int APS5_VABI sceVideoOutSubmitFlip(int handle, int index, int flip_mode, int64_t flip_arg) { + (void)handle; + (void)index; + (void)flip_mode; + (void)flip_arg; + NotImplemented_nid_no_patch(__func__); + return 0; +} + +int APS5_VABI sceVideoOutUnregisterBuffers(int handle, int set_index) { + (void)handle; + (void)set_index; + NotImplemented_nid_no_patch(__func__); + return 0; +} + +} diff --git a/core/libs/prx/libSceVideoOut/src/Event.cpp b/core/libs/prx/libSceVideoOut/src/Event.cpp new file mode 100644 index 000000000..5e7e89796 --- /dev/null +++ b/core/libs/prx/libSceVideoOut/src/Event.cpp @@ -0,0 +1,79 @@ +#include "SceTypes.hpp" +#include "prx/libc/include/General.hpp" +#include "../include/Event.hpp" + +extern "C" { + +int APS5_VABI sceVideoOutAddFlipEvent(KernelEqueue eq, int handle, void* udata) { + (void)eq; + (void)handle; + (void)udata; + NotImplemented_nid_no_patch(__func__); + return 0; +} + +int APS5_VABI sceVideoOutAddOutputModeEvent(KernelEqueue eq, int handle, void* udata) { + (void)eq; + (void)handle; + (void)udata; + NotImplemented_nid_no_patch(__func__); + return 0; +} + +int APS5_VABI sceVideoOutAddPreVblankStartEvent(KernelEqueue eq, int handle, void* udata) { + (void)eq; + (void)handle; + (void)udata; + NotImplemented_nid_no_patch(__func__); + return 0; +} + +int APS5_VABI sceVideoOutAddVblankEvent(KernelEqueue eq, int handle, void* udata) { + (void)eq; + (void)handle; + (void)udata; + NotImplemented_nid_no_patch(__func__); + return 0; +} + +int APS5_VABI sceVideoOutDeleteFlipEvent(KernelEqueue eq, int handle) { + (void)eq; + (void)handle; + NotImplemented_nid_no_patch(__func__); + return 0; +} + +int APS5_VABI sceVideoOutDeletePreVblankStartEvent(KernelEqueue eq, int handle) { + (void)eq; + (void)handle; + NotImplemented_nid_no_patch(__func__); + return 0; +} + +int APS5_VABI sceVideoOutDeleteVblankEvent(KernelEqueue eq, int handle) { + (void)eq; + (void)handle; + NotImplemented_nid_no_patch(__func__); + return 0; +} + +int APS5_VABI sceVideoOutGetEventCount(const KernelEvent* ev) { + (void)ev; + NotImplemented_nid_no_patch(__func__); + return 0; +} + +int APS5_VABI sceVideoOutGetEventData(const KernelEvent* ev, int64_t* data) { + (void)ev; + (void)data; + NotImplemented_nid_no_patch(__func__); + return 0; +} + +int APS5_VABI sceVideoOutGetEventId(const KernelEvent* ev) { + (void)ev; + NotImplemented_nid_no_patch(__func__); + return 0; +} + +} diff --git a/core/libs/prx/libSceVideoOut/src/Output.cpp b/core/libs/prx/libSceVideoOut/src/Output.cpp new file mode 100644 index 000000000..9e0a88709 --- /dev/null +++ b/core/libs/prx/libSceVideoOut/src/Output.cpp @@ -0,0 +1,97 @@ +#include +#include "SceTypes.hpp" +#include "prx/libc/include/General.hpp" +#include "../include/Output.hpp" + +extern "C" { + +int APS5_VABI sceVideoOutOpen(int user_id, int bus_type, int index, const void* param) { + (void)user_id; + (void)bus_type; + (void)index; + (void)param; + NotImplemented_nid_no_patch(__func__); + return 0; +} + +int APS5_VABI sceVideoOutClose(int handle) { + (void)handle; + NotImplemented_nid_no_patch(__func__); + return 0; +} + +int APS5_VABI sceVideoOutConfigureOutput(int handle, uint64_t mode, const VideoOutOutputOptions* options, void* reserved_ptr, uint64_t reserved) { + (void)handle; + (void)mode; + (void)options; + (void)reserved_ptr; + (void)reserved; + NotImplemented_nid_no_patch(__func__); + return 0; +} + +int APS5_VABI sceVideoOutIsOutputSupported(int handle, uint64_t mode, const VideoOutOutputOptions* options, void* reserved_ptr, uint64_t reserved) { + (void)handle; + (void)mode; + (void)options; + (void)reserved_ptr; + (void)reserved; + NotImplemented_nid_no_patch(__func__); + return 0; +} + +int APS5_VABI sceVideoOutInitializeOutputOptions(VideoOutOutputOptions* options) { + (void)options; + NotImplemented_nid_no_patch(__func__); + return 0; +} + +int APS5_VABI sceVideoOutSetFlipRate(int handle, int rate) { + (void)handle; + (void)rate; + NotImplemented_nid_no_patch(__func__); + return 0; +} + +int APS5_VABI sceVideoOutSetWindowModeMargins(int handle, int top, int bottom) { + (void)handle; + (void)top; + (void)bottom; + NotImplemented_nid_no_patch(__func__); + return 0; +} + +int APS5_VABI sceVideoOutGetFlipStatus(int handle, VideoOutFlipStatus* status) { + (void)handle; + (void)status; + NotImplemented_nid_no_patch(__func__); + return 0; +} + +int APS5_VABI sceVideoOutGetOutputStatus(int handle, VideoOutOutputStatus* status) { + (void)handle; + (void)status; + NotImplemented_nid_no_patch(__func__); + return 0; +} + +int APS5_VABI sceVideoOutGetVblankStatus(int handle, VideoOutVblankStatus* status) { + (void)handle; + (void)status; + NotImplemented_nid_no_patch(__func__); + return 0; +} + +int APS5_VABI sceVideoOutIsFlipPending(int handle) { + (void)handle; + NotImplemented_nid_no_patch(__func__); + return 0; +} + +int APS5_VABI sceVideoOutWaitVblank(int handle) { + (void)handle; + NotImplemented_nid_no_patch(__func__); + return 0; +} + +}