Commit graph

107 commits

Author SHA1 Message Date
Dicot0721
fc30c44449 util/bytes: Fix method to get system endian type
- `(0xFFFFFFFF & 0x1) == 0x00000001` is always true.
2025-03-03 19:59:40 +03:00
nishinji
009adf6c7c util/log.h: Use to_string so that uint_8t is not mistaken for a char type 2025-02-04 21:45:52 +03:00
Pedro Montes Alcalde
4a14d546ba
Tick Tick Tick, thats the sound of 2024 flying by (#3503) 2025-01-19 18:51:43 -03:00
SpikeHD
0ebcc09292
patch: Add support for patch files (#3419)
* feat: poc patch loading

* fix: remove some logging, tweak filename requirements

* fix: clang format

* fix: loop -> memcpy

* fix: patching the wrong file

* fix: patch path in shared path on linux

* fix: newline

* fix: change to txt

* fix: explicit std

* fix: conditionally load patches

* fix: stroull -> stoull
2024-11-15 23:32:55 +01: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
oltolm
70e034efc5
cmake: Improve mingw support (#3360)
* fix CMake scripts for mingw-w64

* ffmpeg: update submodule
2024-09-26 00:08:47 +02:00
Zangetsu
9ad860e14e
util/net utils: Implement file download resume. (#3375)
gui/vita3k update: Restore download resume for the latest vita3k build.
2024-09-23 21:53:41 +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
scribam
612d1f8d81
vita3k: cleanup (#3357)
* module: add missing pragma once

* cmake/vita3k: delete unused files

* vita3k: delete useless semi-colons

* vita3k: cleanup headers

* audio: add missing override to destructors

* vita3k: fix typos

* external: disable unused curl targets
2024-09-02 13:03:58 +02:00
nishinji
b3b0b22210 vita3k/interface: support JPEG screenshot format 2024-08-08 18:45:55 +02:00
scribam
80074c8f19
external: Update submodules (#3329)
* external: Update CLI11 to version v2.4.2

* external: Update cubeb

* external: Update curl to 8.8.0

* external: Update fmt to 11.0.1

* external: Update googletest to version v1.15.0

* external: Update imgui to version v1.90.9

* external: Update imgui_club

* external: Update nativefiledialog-extended to version v1.2.0

* external: Update pugixml to version v1.14

* external: Update spdlog to v1.14.1

* external: Update stb

* external: Update tracy to version v0.11.0

* external: Update vita-toolchain
2024-07-17 07:59:00 +02:00
Macdu
d5733e358d
util: Add very-early VC++ runtime version check (#3314) 2024-06-09 22:55:31 +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
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
Dubrova Dzmitry
ed3e7e8a58
util: Rename restrict macro (#3192) 2024-01-21 21:43:42 +01:00
nishinji
d8b8e069d1
vita3k: typo fixes (#3179) 2024-01-18 11:49:08 +01:00
Macdu
fe02f4c0f9 external, packages: Use OpenSSL for crypto operations 2024-01-17 20:03:58 +01:00
Pedro Montes Alcalde
34565e3ef4
Vita2024K: Happy 2024 2024-01-01 12:36:32 -03:00
Macdu
bef1567a61
renderer/vulkan: Implement async pipeline compilation (#3145) 2023-12-25 23:56:48 +01:00
oltolm
572c2a8def
util: Fix static initialization in tracy.cpp (#3097) 2023-11-26 14:45:55 +01:00
Macdu
20668605e9
renderer/vulkan, vkutil: Refractoring of the Vulkan renderer (#3081) 2023-11-21 14:49:23 +01:00
Macdu
5c10122530
util: Improve float_to_half code (#3082) 2023-11-21 14:28:49 +01:00
Pedro Montes Alcalde
1bf9a0fbc5
io: Fix export/import textures path being same place as exec in linux 2023-11-19 18:00:32 -03:00
Pedro Montes Alcalde
9d23a76621
https: use CURL instead of raw hand made http 2023-11-08 10:46:49 -03:00
Pedro Montes Alcalde
f98ef6aa61
util: Split into multiple files 2023-11-06 14:13:33 -03:00
Macdu
bfec3f6291 renderer: Implement texture replacement 2023-10-22 11:07:57 +02:00
redpolline
f165e43409 emuenv: use XDG_DATA_DIRS / XDG_CACHE_HOME / XDG_CONFIG_HOME to init paths on Linux only
app: Fixes to support changes to emuenv, move path init from main.cpp to app::init_paths()
compat: Fixes to support changes to emuenv
config: Fixes to support changes to emuenv
lang: Fixes to support changes to emuenv
util: Fixes to support changes to emuenv

Note: End-users wishing to use the base_dir as their storage for user-data (original behavior)
can do so under Linux by running the following in a terminal or shell script (Windows and other OSes are not affected by this commit):
'XDG_DATA_DIRS="./" XDG_CACHE_HOME="./" XDG_CONFIG_HOME="./" ./Vita3K'

This change is needed to build flatpaks (Issue Vita3K/Vita3K#1418) and to fix Issue Vita3K/Vita3K#664 (use XDG directory standard for store config and logs).
2023-10-17 13:31:19 +02:00
bookmist
9e7e807704 tracy: autoregister modules, faster check if module is profiling, other optimisations 2023-10-17 10:15:57 +03:00
Macdu
6672090c10 renderer/vulkan: Rewrite surface cache 2023-10-16 00:47:43 +02:00
Macdu
6f35f1a3ab vita3k: Use LOG_..._ONCE when appropriate 2023-10-10 16:31:47 +02:00
bookmist
810c3aeacd ngs: return error and workaround crashes on invalid configurations
util/log: LOG_*_ONCE macros
modules/SceNgs: implement sceNgsVoiceGetModuleType
modules/SceNgs: return error on incomplete output paths and null voice definition
ngs/modules/player: workaround crash if required playback frequency is invalid
2023-09-23 23:31:16 +03:00
Sergi Granell
1f77ea8894 shader: Use std::bit_cast (C++20) to convert float<->int
Fixes ` warning: dereferencing type-punned pointer will break
strict-aliasing rules [-Wstrict-aliasing]` when compiling with `-Wall`.
2023-09-16 19:35:32 +02:00
scribam
df2ffeb48e
external: Update submodules (#2926)
* external: Update CLI11 to version v2.3.2

* external: Update MoltenVK to 1.2.5

* external: Update SPIRV-Cross to sdk-1.3.261.1

* external: Update Vulkan-Headers to v1.3.261

* external: Update capstone to 5.0.1

* external: Update cubeb

* external: Update dirent to 1.24

* external: Update fmt to 10.1.1

* external: Update glad to 2.0.4

* external: Update glslang to sdk-1.3.261.1

* external: Update googletest to v1.14.0

* external: Update imgui to version v1.89.9

* external: Update imgui_club

* external: Update miniz to version 3.0.2

* external: Update nativefiledialog-extended to version v1.1.0

* external: Update openssl to 3.1.2

* external: Update pugixml to version v1.13

* external: Update spdlog to v1.12.0

* external: Update stb

* external: Update tracy to v0.9.1

* external: Update vita-toolchain

* external: Update xxHash to v0.8.2

* external: Update yaml-cpp to version 0.8.0
2023-09-16 13:42:44 +02:00
Zangetsu38
b79d7d282d vita3K: fix format. 2023-09-13 22:48:49 +02:00
Macdu
9d87a2206a renderer: Rewrite texture cache 2023-09-06 22:50:14 +02:00
Macdu
a3f6cfdf7f motion: Add motion support 2023-09-02 05:04:02 +02:00
Narr the Reg
e67b464891 motion: create basic structure 2023-09-02 05:04:02 +02:00
Zangetsu38
9990ea11b3 regmgr: refactor and fix int value.
- Refactor int value for get saved it in 4 byte in file.
- reworks spacing for get int same line of value name.
- Add type of value.
- No set init value if is 0 on str/bin.

Co-Authored-By: Macdu <Macdu@users.noreply.github.com>
2023-07-24 13:26:54 +02:00
bookmist
9c41b8a900 utils: implement stoi_def and use it instead of std::stoi 2023-07-17 15:09:15 +03:00
Pedro Montes Alcalde
3adf4642b5
http: Allow for responses bigger than 5KB and better accuracy (#2659) 2023-07-10 11:39:29 -03:00
Zangetsu38
9d45a5fc66 vita3k: Using FreeConsole for Windows for execv and updater.
- Set console title.
- should fix load exec with using windows 11 terminal.
2023-05-20 16:14:34 +02:00
Pedro Montes Alcalde
2f34169266
util/log: Replace log_hex with log_hex_fast (#2507) 2023-04-20 10:00:30 -03:00
Macdu
3828e7a584 renderer/vulkan: Implement surface sync 2023-04-08 08:23:57 +02:00
bookmist
f26cf12cea util: Fix log craches again 2023-03-14 02:47:09 +01:00
bookmist
215073063a util: Fix log craches. Log unhandled C++ exceptions on all platforms 2023-03-11 15:39:39 +01:00
bookmist
4e99eb38d1 util: revert flush log file (Windows only) 2023-03-07 13:37:35 +01:00
bookmist
3ac7685395 util: log crashes and flush log file (Windows only)
also set console encoding on Windows to utf-8
2023-03-07 01:30:03 +01:00
Macdu
bfa3661a0f external, vita3k: Update dynarmic and add initial support for aarch64 2023-02-22 10:46:22 +01:00
Zangetsu38
02340194d4 vita3k: Add compatibility database.
gui/app context menu: Add Compatiblity menu.
- Add bouton for can create and open issue.
- Add compat state in information app.
2023-02-01 14:17:23 +01:00
EXtremeExploit
41a17e79c7 Planet Earth Season 2023 2023-01-02 10:46:20 +01:00