Commit graph

88 commits

Author SHA1 Message Date
Pedro Montes Alcalde
4a14d546ba
Tick Tick Tick, thats the sound of 2024 flying by (#3503) 2025-01-19 18:51:43 -03:00
Zangetsu38
5720241850 packages: Implement decrypt fself in a fly.
- Refactor license.
2025-01-02 18:55:43 +03:00
Zangetsu38
baecccb0a8 io: Implement support of tty(2/3). 2024-12-31 02:04:08 +03:00
oltolm
c61895e6f4
vita3k: Add support for mingw-w64 (#3406)
* make the code compile on mingw-w64

* make compile with Clang 19

* make compile with GCC
2024-10-26 23:41:51 +02:00
nishinji
048e83c262
vita3k: Use hex for error codes (#3387)
* vita3k: Use hex as it is preferred in error codes

* vita3k: Fixed small mistakes
2024-09-25 00:31:28 +02:00
scribam
77abeaa167
vita3k: More cleanup (#3379)
* vita3k: Use C++17 nested namespace definition

* vita3k: Remove redundant call to c_str()

* vita3k: Prefer C++ header

* vita3k: Use structured bindings

* shader: Add explicit fallthrough

* vita3k: Cleanup headers and dependencies

* util: Add WIN32_LEAN_AND_MEAN before <Windows.h>

* modules: Remove redundant 'const' specifier on a constexpr variable

* modules: Remove redundant return statement at the end of a function with a void return type

* clang-format: Use C++20 standard

* vita3k: Insert new line at EOF

* host: rename filesystem.hpp to filesystem.h
2024-09-18 21:48:08 +02:00
Pedro Montes Alcalde
4abf877d43
io/modules: Make modules load the case sensitive file found in fs 2024-06-23 17:17:03 -03:00
nishinji
584e1f172f vita3k: Minor optimize, code refactor
Co-authored-by: GermanAizek <GermanAizek@yandex.ru>
2024-05-21 23:42:57 +02:00
Croden1999
6bfe0872f6 io/file: Add cstddef head file.
Should fix Linux build.
2024-05-20 17:41:12 +02:00
bookmist
1fda880a94 vita3k: big code cleanup
Improvements
* lang: a bit more verbose error on wrong lang xml

Bugfixes
* kernel/sync_primitives: fix theoretically possible AV
* modules/SceAudio: a bit more correct sceAudioOutSetConfig
* fix wrong objects initialisation ({0} -> {})

Warning fixes
* clang warning: Macro argument should be enclosed in parentheses
[bugprone-macro-parentheses]
* modules: set unsigned type for Sce*ErrorCode enums
* clang warning: variable might be not be initialized
* clang warning: Function returns by const value. Consider returning by non-const value instead.
* clang warning: Prefer transparent functors [modernize-use-transparent-functors]

Refactoring
* io/device: move functions implementation from .h to .cpp file
* vita3k: fix fs::path usage
* clang warning: 'if' statement is unnecessary; deleting null pointer has no effect
* vita3k: use structured bindings and references in for-each-loops
* vita3k: simplify container operations, extract frequent operations to utility functions
* clang⚠️ 'contains' member function can be used
* kernel/sync_primitives: refactoring. drop unused parameter of handle_timeout
* vita3k: drop unused function parameters

* vita3k: fix typecasts
use static_cast instead of reinterpret casts if possible
use correct constants (1/1.0/1.0f)
correct variable types to minimise typecasts
use explicit typecasts (not everywhere)
replace c-style typecasts to c++ style typecasts (not everywhere)
* clang warning: remove redundant typecasts
* clang warning: Cast drops const qualifier

Optimisation
* vita3k: remove unused includes
* clang warning: Constness of returning variable prevents automatic move
[performance-no-automatic-move]
* clang warning: String concatenation results in allocation of unnecessary temporary strings
[performance-inefficient-string-concatenation]
* vita3k: use std::move
* vita3k: optimization. push_back -> emplace_back
* vita3k: fix datatypes to avoid unnesessary conversions
* clang warning: remove unneeded string->c_str->string conversion
* clang warning: The parameter is copied for each invocation but only used as a const reference; consider making it a const reference [performance-unnecessary-value-param]
* clang warning: 'find' called with a string literal consisting of a single character
[performance-faster-string-find]
* clang warning: Result of a postfix operator is discarded, consider replacing it with a prefix operator
* clang warning: Pass value parameters by const reference

Code cleanup
* io/io: remove once used variables
* net/posixsocket: remove struct keyword
* vita3k: use raw string literals to avoid excessive escaping
* vita3k: refactoring. replace Ptr<> to pointer in Sce functions
* vita3k: drop unused variables and incorrect comments
* clang warning: readability-inconsistent-declaration-parameter-name
* clang warning: Extra ';' after member function definition
* clang warning: Possible misuse of comma operator (, is used instead of ;)
* clang warning: Algorithm accepting an iterator and a count can be used
* clang warning: Declaration and assignment can be joined
* clang warning: Type trait can be simplified using a template alias or a variable template

* vita3k: cleanup class methods
remove unimplemented (and obviously not used) methods
move deleted methods to public
change empty body to =default
remove auto constructors
set member default values
2024-03-18 15:44:56 +03:00
bookmist
6ce9b6598e vita3k: some minor bugfixes
kernel/thread: fix possible crash in log_stack_traceback
modules/SceLibKernel: more correct sceClibSnprintf
kernel/load_self: fix possible crash on incorrect library modules. load process params from first loaded module (eboot.bin) only
modules/SceGxm: fix crash if display_thread not found
kernel/debugger: remove direct access to mem.memory to support memory mapping more complete
vita3k: remove direct access to kernel.threads (it's not thread-safe)
vita3k: implement and fix virtual destructors for class hierarchies to prevent memory leaks (except screen_filters)
clang-tidy warning: Constructing string from nullptr is undefined behaviour
clang warning: use after std::move
2024-02-12 20:21:40 +03:00
bookmist
da73a57c38 io: implement music0, photo0, video0 devices 2024-02-05 20:40:38 +03:00
bookmist
d3f3038aee vita3k: set fs::path type for string paths and refactoring
avoid not need conversion string->wstring->string for linux and macos
native logging of fs::path
more correct conversion from std path to boost path
refactor pathes for shaders compiler, shorten parameters lists
crypto::hex_string: remove not needed null character as last character in string
2024-01-24 11:33:30 +03:00
Pedro Montes Alcalde
34565e3ef4
Vita2024K: Happy 2024 2024-01-01 12:36:32 -03:00
redpolline
1fe42cdc4f io: Support emuenv changes
kernel: Support emuenv changes
modules: Support emuenv changes
packages: Support emuenv changes
2023-10-17 13:31:19 +02:00
bookmist
c7440923c2 vita3k: refactoring module load and start, use LLE for libsmart and libface 2023-07-25 15:16:59 +03:00
Zangetsu38
5810acf29c modules/SceRegistryMgr: Initial implement of regmgr functions. 2023-07-09 14:03:17 +02:00
SaturnSky
5c3754e3ae io/open_file: Returns an error when trying to open a directory 2023-07-01 16:47:36 +02:00
Zangetsu38
3ebf0627f7 modules/SceLibKernel: implement SceIoRename. 2023-07-01 15:32:05 +02:00
Pedro Montes Alcalde
5f63d53095
io: use copy_options instead of copy_option 2023-04-29 12:03:37 -03:00
Macdu
350029986d io: Standardize path of overlays 2023-03-26 13:34:20 +02:00
Seungyun Lee
8744f03136 vita3k: Support building for aarch64 macOS 2023-02-24 19:09:44 +01:00
EXtremeExploit
41a17e79c7 Planet Earth Season 2023 2023-01-02 10:46:20 +01:00
bookmist
af225e6ced io/io: workaround of exception on file delete 2022-11-25 21:34:07 +03:00
Pedro Montes Alcalde
57dd26bba1
tracy: Add enums overloads for modules that need them (#2171) 2022-10-30 08:41:08 -03:00
Macdu
636b1dfedd kernel: Rewrite the way svc and callbacks are handled 2022-09-16 21:57:57 +02:00
Macdu
79c7653f59 modules/SceFios2User: Partial implementation of fios overlays 2022-09-10 23:36:33 +02:00
Pedro Montes Alcalde
da2461725b
kernel: Partially implement command for sceIoDevctl (#1964) 2022-08-01 12:12:32 -03:00
Pedro Montes Alcalde
ed6c0dd978
io: Do not log file stats by default (#1966) 2022-07-31 20:36:36 -03:00
Pedro Montes Alcalde
1262a1576d
io: Fix case sensitive path when it doesn't exist (#1944) 2022-07-12 17:53:47 -03:00
hobyst
1169da50bc host: Rename host to emuenv
This commit renames the host library as emuenv (emulated PS Vita
environment) to avoid confusion with the future host OS abstraction
layer
2022-07-03 14:31:24 +02:00
hobyst
0f65fac20d host, package: Decouple package code from host
Since most code inside host library doesn't really have to do with the
emulated PS Vita environment but rather with handling the different
package formats used in the console, this commit moves the code from
the host library into its own dedicated library. In summary:
- Moved package code into its own library and edited function calls
to accomodate the change
- Edited some function interfaces in order not to cause a dependency
hell due to cross-referenced types in headers that depended in
one another and edited function calls and resource access to accomodate
the change
- copy_directories() and copy_path() from `vita3k/interface.cpp` have
been modified and moved to io library due to being used in package
library and others. Keeping them as they were before causes dependency
hell
- All functions whose interface has been changed now have a Doxygen
comment block explaining the new interface
- host has been declared as an INTERFACE CMake library to fix linking
issues on Windows due to the fact that it doesn't compile C++ source
files anymore
2022-07-03 14:31:24 +02:00
Macdu
ae6654a134 io: Do not log file reads and seeks by default 2022-06-30 23:40:21 +02:00
Macdu
9466f3d2b0 io: Allow ftell to work on files bigger than 2 GB 2022-06-04 01:42:57 +02:00
Zangetsu38
e39015ff34 modules/SceAppUtil: small refactor of SafeMemory func.
io: clean code unneeded in open file.
2022-05-25 13:01:21 +02:00
Zangetsu38
8a40b19e5f io: fix open file when create flag is not here.
modules/SceAppUtil: fix open file flag.
2022-05-23 15:41:06 +02:00
Zangetsu38
77fd8e8f78 project: run format. 2022-03-16 02:11:11 +01:00
CreepNT
b37293faf1 modules/SceLibKernel: fix Offset value send on SceIo(Pread/Pwrite).
- io/state functions: fix Offset value and using using _fseeki64.
2022-03-03 06:21:34 +01:00
CreepNT
a4819a20e2 io/stat file: Increment size of value, with using _wstati64. 2022-03-03 06:21:34 +01:00
Zangetsu38
e55db4f355 modules/SceAppUtil: fix delete savedata when try delete folder. 2022-01-04 01:20:01 +01:00
Zangetsu38
d59a044399 shaders: split shaders cache to shaderlog. 2021-12-29 16:13:03 +01:00
Zangetsu38
0507b45400 shader: implement pre-compile shader.
gui/shaders compiled: Add progress bar durring pre compile shader.
io: remove useless create shaderlog folder.
gui/app context menu: remove shaderlog path and move shaders cache in good path.
2021-12-24 12:17:51 +01:00
Zangetsu38
6a71f50d71 external: update psvpfstools.
- fix compile.
2021-12-14 18:58:45 +01:00
Zangetsu38
fb969fe311 build: add support of VS 2022.
- external: update boost to 1.78.
- gen-windows: using version of VS installed.
2021-12-13 19:12:39 +01:00
Zangetsu38
95b32c48ea addcont: Add support of INSTALL_DIR_ADDCONT value in sfo.
- should fix game no found dlc after install it.
2021-10-30 22:27:30 +02:00
Zangetsu38
d9ddb97fef savedata: Add support of INSTALL_DIR_SAVEDATA value in sfo. 2021-10-22 21:17:23 +02:00
hobyst
168dfb19ca Add license notice on source files which didn't have one
- Also updated the copyright notice year on all files to 2021
2021-08-19 23:14:27 +02:00
IllusionMan1212
b316b57c70 io: replace invalid slashes in translated_path instead of normalized_path 2021-08-19 22:22:17 +02:00
Francisco José García García
5c5239e649
io: add IFREG if is_regular_file (#1429) 2021-07-22 11:47:30 +02:00
sunho
9eb2a9e41d io: Correct life cycle of vita_loc 2021-05-27 04:04:17 +02:00