mirror of
https://github.com/SysRay/psOff_public.git
synced 2024-10-07 03:43:54 +00:00
[skip ci] Initial commit
This commit is contained in:
parent
5bc47aa04a
commit
634bb3c821
4
.gitmodules
vendored
4
.gitmodules
vendored
@ -11,3 +11,7 @@
|
||||
path = third_party/SDL2
|
||||
url = https://github.com/libsdl-org/SDL.git
|
||||
branch = SDL2
|
||||
[submodule "third_party/libpng"]
|
||||
path = third_party/libpng
|
||||
url = https://github.com/pnggroup/libpng
|
||||
branch = libpng16
|
||||
|
@ -10,3 +10,14 @@ constexpr int32_t UNSUPPORT_DATA = 0x80690011;
|
||||
constexpr int32_t DECODE_ERROR = 0x80690012;
|
||||
constexpr int32_t FATAL = 0x80690020;
|
||||
} // namespace Err
|
||||
|
||||
enum class ScePngDecColorSpace : uint16_t {
|
||||
GRAYSCALE = 2,
|
||||
RGB = 3,
|
||||
CLUT = 4,
|
||||
GRAYSCALE_ALPHA = 18,
|
||||
RGBA = 19,
|
||||
};
|
||||
|
||||
constexpr uint8_t SCE_PNG_DEC_IMAGE_FLAG_ADAM7_INTERLACE = 1;
|
||||
constexpr uint8_t SCE_PNG_DEC_IMAGE_FLAG_TRNS_CHUNK_EXIST = 2;
|
||||
|
@ -27,14 +27,19 @@ EXPORT SYSV_ABI int32_t scePngDecDelete(ScePngDecHandle handle) {
|
||||
}
|
||||
|
||||
EXPORT SYSV_ABI int32_t scePngDecParseHeader(const ScePngDecParseParam* param, ScePngDecImageInfo* ii) {
|
||||
if (param->pngAddr == nullptr) return Err::INVALID_ADDR;
|
||||
if (param->pngSize < 8) return Err::INVALID_SIZE;
|
||||
LOG_USE_MODULE(libScePngDec);
|
||||
LOG_ERR(L"todo %S", __FUNCTION__);
|
||||
return Ok;
|
||||
}
|
||||
|
||||
EXPORT SYSV_ABI int32_t scePngDecQueryMemorySize(const ScePngDecCreateParam* param) {
|
||||
if (param == nullptr) return Err::INVALID_ADDR;
|
||||
if (param->cbSize != sizeof(ScePngDecCreateParam)) return Err::INVALID_SIZE;
|
||||
if (param->maxImageWidth > 1000000) return Err::INVALID_PARAM;
|
||||
LOG_USE_MODULE(libScePngDec);
|
||||
LOG_ERR(L"todo %S", __FUNCTION__);
|
||||
return Ok;
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
@ -4,21 +4,21 @@
|
||||
typedef void* ScePngDecHandle;
|
||||
|
||||
struct ScePngDecParseParam {
|
||||
const void* pngMemAddr;
|
||||
uint32_t pngMemSize;
|
||||
uint32_t reserved0;
|
||||
const void* pngAddr;
|
||||
uint32_t pngSize;
|
||||
uint32_t reserved;
|
||||
};
|
||||
|
||||
struct ScePngDecImageInfo {
|
||||
uint32_t imageWidth;
|
||||
uint32_t imageHeight;
|
||||
uint16_t colorSpace;
|
||||
ScePngDecColorSpace colorSpace;
|
||||
uint16_t bitDepth;
|
||||
uint32_t imageFlag;
|
||||
};
|
||||
|
||||
struct ScePngDecCreateParam {
|
||||
uint32_t thisSize;
|
||||
uint32_t cbSize;
|
||||
uint32_t attribute;
|
||||
uint32_t maxImageWidth;
|
||||
};
|
||||
|
14
third_party/CMakeLists.txt
vendored
14
third_party/CMakeLists.txt
vendored
@ -6,6 +6,7 @@ include(ExternalProject)
|
||||
add_subdirectory(optick)
|
||||
add_subdirectory(p7)
|
||||
add_subdirectory(SDL2)
|
||||
add_subdirectory(libpng)
|
||||
|
||||
install(DIRECTORY "ffmpeg/bin/" DESTINATION "${CMAKE_BINARY_DIR}/bin"
|
||||
FILES_MATCHING PATTERN "*.dll"
|
||||
@ -24,4 +25,17 @@ set_target_properties(SDL2
|
||||
RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/install/bin"
|
||||
)
|
||||
|
||||
set_target_properties(libpng
|
||||
PROPERTIES
|
||||
ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/install/lib"
|
||||
LIBRARY_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/install/lib"
|
||||
RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/install/bin"
|
||||
)
|
||||
|
||||
option(BUILD_SHARED_LIBS "Build shared libraries" OFF)
|
||||
|
||||
set(PNG_SHARED ON CACHE BOOL "" FORCE)
|
||||
set(PNG_STATIC OFF CACHE BOOL "" FORCE)
|
||||
set(PNG_EXECUTABLES OFF CACHE BOOL "" FORCE)
|
||||
set(PNG_TESTS OFF CACHE BOOL "" FORCE)
|
||||
set(SKIP_INSTALL_ALL OFF CACHE BOOL "" FORCE)
|
||||
|
1
third_party/libpng
vendored
Submodule
1
third_party/libpng
vendored
Submodule
@ -0,0 +1 @@
|
||||
Subproject commit f1848a3b560ddcad065242268433af475948461e
|
Loading…
Reference in New Issue
Block a user