Commit Graph

54 Commits

Author SHA1 Message Date
Macdu
e5a7943c1d vita3k: Add Android version 2024-06-06 22:23:20 +02:00
Pedro Montes Alcalde
d4c0c499a4
mem/threads: Include some missing header files (#3291) 2024-05-13 17:02:42 -03: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
nishinji
d8b8e069d1
vita3k: typo fixes (#3179) 2024-01-18 11:49:08 +01:00
Pedro Montes Alcalde
34565e3ef4
Vita2024K: Happy 2024 2024-01-01 12:36:32 -03:00
Macdu
09de94c216 mem: Improve accuracy of virtual memory 2023-11-02 06:10:22 +01:00
Macdu
389f079c19 mem: Free memory when it is freed on Linux 2023-07-07 18:02:53 +02:00
Seungyun Lee
13abbd747b mem: Register signal handler also to SIGBUS on macOS 2023-06-26 15:10:12 +02:00
bookmist
4ba2e086cc Vita3K: code cleanup and optimisations 2023-05-10 15:31:55 +03:00
Macdu
c1dfe6a6a1 mem: Fix bug when adding protection 2023-05-09 22:12:31 +02:00
Macdu
73fc1be146 mem: Fix open_access_parent_protect_segment bug 2023-03-25 10:11:35 +01:00
Zangetsu38
9e0473175f app/app init: Disable high dpi for steam deck.
fix some format.
2023-03-07 12:59:23 +01:00
Macdu
c70d5266cf
mem: Improve protection (#2395) 2023-03-05 11:41:28 +01:00
Macdu
e2b07dc4f8 renderer/vulkan: Add PageTable implementation for memory mapping 2023-02-28 20:44:10 +01:00
Seungyun Lee
8744f03136 vita3k: Support building for aarch64 macOS 2023-02-24 19:09:44 +01:00
Macdu
bfa3661a0f external, vita3k: Update dynarmic and add initial support for aarch64 2023-02-22 10:46:22 +01:00
EXtremeExploit
41a17e79c7 Planet Earth Season 2023 2023-01-02 10:46:20 +01:00
bookmist
8edd333400 Fix compiler warnings 2022-11-16 21:39:55 +03:00
CreepNT
ff685b88f1 Refactor SELF loader to remove dependency on ELFIO 2022-09-20 20:32:38 +02:00
Pedro Montes Alcalde
ccca711294
vita3k: Use correct KB/KiB functions (#1971) 2022-07-31 21:10:24 -03:00
Macdu
1d93bdfa5b mem: Try to allocate the guest memory at a fixed location 2022-06-04 10:15:25 +02:00
pent0
a8ec245f31 mem: Refactoring protect functions.
- Add way to lock protection and unprotect a callback region.
2022-05-12 11:44:05 +02:00
bookmist
c1755dcdd5 mem: fix some warnings 2022-03-17 06:16:05 +01:00
Zangetsu38
77fd8e8f78 project: run format. 2022-03-16 02:11:11 +01:00
Zangetsu38
81abb783d7 mem/alloc inner: return 0 if mem is full. 2021-10-11 05:15:29 +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
sunho
c4c3b26ed2 mem: Add is_valid_range 2021-06-02 14:48:33 +02:00
sunho
92e3e76738 mem: Fix alloc with allignment 2021-06-02 09:18:10 +02:00
sunho
daf4689531 mem_tests: Add more tests 2021-06-02 08:03:28 +02:00
sunho
636f5da54c mem: Fix allocate_at 2021-06-02 08:03:28 +02:00
Sunho Kim
fff91d78eb mem: Implement unix exception handler 2021-05-31 11:00:42 +02:00
Sunho Kim
16e076369b mem: Rename and fix bitmap allocator free_slot_count 2021-05-31 11:00:42 +02:00
sunho
0cb75c1e3b mem: Add hacks to prevent crash 2021-05-31 11:00:42 +02:00
sunho
4385af0df7 renderer: It's not dirty 2021-05-31 11:00:42 +02:00
sunho
ceeaae9d9a mem: Support windows write protect
mem: Properly decommit memory in windows
renderer: Add write protect based texture dirty flag
mem: Use custom allocator and optimized page table
dynarmic_cpu: Don't use page_table
2021-05-31 11:00:42 +02:00
sunho
1c3bf6bd05 mem: Fix bugs in bitmapallocator 2021-05-31 11:00:42 +02:00
MerryMage
8db8fb9179 mem: Zeropage is invalid
Mark the zero-page as invalid in the page-table
2021-05-28 07:25:20 +09:00
sunho
7ba6d2d9af mem: Allow Ptr = nullptr 2021-05-27 04:04:17 +02:00
sunho
d5f4b954fc kerenl: Implement trampoline injection
kernel: Move debugging helpers to one place
2021-05-19 11:36:18 +09:00
pent0
b27474357b mem: Add bitmap allocator. 2021-05-15 18:31:12 +02:00
sunho
ada53448f3 cpu: Implement exclusivewrite callback for dynarmic 2021-05-08 14:34:20 +02:00
sunho
41f084e5c1 cpu: Rework cpu & thread code base
1. CPU Abstraction
2. More readable, accurate, intuitive thread execution loop
3. Eliminate weird unintuitive callback flag in thread function
4. Use halt instruction to return control to host
5. More accurate context
6. Correctly implement float registers
7. Add basic dynarmic cpu implementation
2021-05-03 14:51:13 +02:00
sunho
c10e4d0b8e mem: Add Block class 2021-05-01 19:18:53 +09:00
totlmstr
024b71285f mem: split mem.h 2021-04-12 17:32:23 +02:00
sunho
af22cab031 mem: move mempool util from ngs 2020-08-29 11:10:31 +09:00
sunho
ba18fe93d7 mem: consider host null pointer in Ptr class 2020-07-25 04:10:28 +09:00
Sunho Kim
0684489b67 mem: revert std function commit 2020-07-24 08:33:52 +02:00
Sunho Kim
3a2ce75f40 mem: std::function BreakpointCallback 2020-07-14 15:02:11 +09:00
pent0
b83eba7a06 ngs: Implement subindex inputs
Since there are so many voices plugged in one input (we will now called it port), let's just make subindex a thing
2020-07-08 14:11:50 -04:00
Sunho Kim
177ce20d53
cpu: improve gdb and add code injection (#737) 2020-06-09 09:38:41 +02:00