Commit Graph

2835 Commits

Author SHA1 Message Date
Stephen Miller
74b513ddcd Implement posix_getdents, getdirentries, and posix_getdirentries
Also fixes errno behavior for the kernel variants of these functions.
2025-02-17 21:11:33 -06:00
Stephen Miller
dfff0d188d Fix compile 2025-02-17 20:36:40 -06:00
Stephen Miller
c8b3af1d3f Add posix_preadv and posix_pread
Also fixes some incorrect error returns, fixes errno behavior, and removes an unnecessary hack.
2025-02-17 20:03:06 -06:00
Stephen Miller
578b6e7961 Implement posix_rename, fix sceKernelRename errno behavior 2025-02-17 19:56:16 -06:00
Stephen Miller
aa00a9ceee Add missing error conversions for more device functions 2025-02-17 19:52:52 -06:00
Stephen Miller
12af813b7c Implement posix_ftruncate
Implements posix_ftruncate and fixes errno behavior for sceKernelFtruncate
2025-02-17 19:47:45 -06:00
Stephen Miller
0032531856 Refactor fstat
Fixes errno behavior, implements fstat, and shifts exports around based on file position.
Might reorganize function locations later though.
2025-02-17 19:42:08 -06:00
Stephen Miller
7dd7ee4bfe Slight clean up of sceKernelStat
Fixes error behavior and changes some of the old data types.
2025-02-17 19:34:30 -06:00
Stephen Miller
b5fa582573 Fix errno behavior on sceKernelRmdir
Also reduces function logging to bring it closer to the level of logging seen in other filesystem functions.
2025-02-17 19:28:18 -06:00
Stephen Miller
c83c2e73f5 Swap sceKernelMkdir and posix_mkdir
Fixes errno behavior on kernel calls, also fixed some incorrect error returns.
2025-02-17 19:15:39 -06:00
Stephen Miller
db695fe3a3 Implement read
Also fixes error behavior
2025-02-17 19:04:03 -06:00
Stephen Miller
5e04d7aa91 Update file_system.cpp 2025-02-17 19:01:18 -06:00
Stephen Miller
555dea92f4 Swap around sceKernelLseek and posix_lseek
This ensures that these have the correct error behavior, and makes their behavior align with the updated implementations for earlier functions.
2025-02-17 19:00:01 -06:00
Stephen Miller
ba75bc2274 More cleanup on older functions 2025-02-17 18:59:14 -06:00
Stephen Miller
dd027c6d36 Implement posix_writev and sceKernelWritev
Also fixes error behavior on writev, since it shouldn't ever return kernel errors (since our device files return those)
2025-02-17 18:35:54 -06:00
Stephen Miller
2920707702 Cleanup readv 2025-02-17 18:34:15 -06:00
Stephen Miller
3e7d1092f2 Move sceKernelUnlink
Will deal with this one later, was just annoyed by how it's location doesn't align with the export order.
2025-02-17 18:29:40 -06:00
Stephen Miller
bb75754245 Implement posix_readv and sceKernelReadv
Also fixes error behavior on readv, as that function shouldn't be returning any kernel error codes.
2025-02-17 18:28:57 -06:00
Stephen Miller
80da8a9ae9 Oops 2025-02-17 18:22:54 -06:00
Stephen Miller
c4fae1690b Implement write and posix_write 2025-02-17 18:18:41 -06:00
Stephen Miller
801687da3f Update file_system.cpp 2025-02-17 18:10:16 -06:00
Stephen Miller
475c42bc38 Swap some stuff around
I see nothing that suggests "open" only takes two parameters, so this should be completely safe.
It's also more accurate to how these are handled in libkernel, and means I won't need to reorganize anything for readv and writev.
2025-02-17 18:09:36 -06:00
Stephen Miller
ba1c5bdc8f Remaining placeholder exports 2025-02-17 18:01:53 -06:00
Stephen Miller
534f50ba09 Missing exports
Commented out while I gradually work through them all
2025-02-17 15:50:48 -06:00
Stephen Miller
55790e37e8 Readd hack in posix_close
It's either this, or removing LLE DiscMap.
Or shadow implements posix sockets.
2025-02-17 15:22:16 -06:00
Stephen Miller
671cbfbbd0 posix_open fixups 2025-02-17 15:21:35 -06:00
Stephen Miller
4a4589a1e9 Fix log on close 2025-02-17 15:11:28 -06:00
Stephen Miller
fb8883dcea Improve close
Removes the EPERM return, as it makes no sense, and swaps sceKernelClose with posix_close to properly emulate errno behavior.
2025-02-17 15:05:45 -06:00
Stephen Miller
281a07e911 Reorganize open calls, add error log 2025-02-17 15:04:27 -06:00
Stephen Miller
84c3bdb140 Proper errno behavior on open
Since sceKernelOpen calls posix_open, errno should be set during this process.
Simplest way to handle that is to move the actual open code to posix_open and adjust error cases accordingly.
2025-02-17 14:54:29 -06:00
georgemoralis
e67263cc0e
New Crowdin updates (#2467)
* New translations en_us.ts (Romanian)

* New translations en_us.ts (French)

* New translations en_us.ts (Spanish)

* New translations en_us.ts (Arabic)

* New translations en_us.ts (Danish)

* New translations en_us.ts (German)

* New translations en_us.ts (Greek)

* New translations en_us.ts (Finnish)

* New translations en_us.ts (Hungarian)

* New translations en_us.ts (Italian)

* New translations en_us.ts (Japanese)

* New translations en_us.ts (Korean)

* New translations en_us.ts (Lithuanian)

* New translations en_us.ts (Dutch)

* New translations en_us.ts (Polish)

* New translations en_us.ts (Russian)

* New translations en_us.ts (Albanian)

* New translations en_us.ts (Swedish)

* New translations en_us.ts (Turkish)

* New translations en_us.ts (Ukrainian)

* New translations en_us.ts (Chinese Simplified)

* New translations en_us.ts (Chinese Traditional)

* New translations en_us.ts (Vietnamese)

* New translations en_us.ts (Portuguese, Brazilian)

* New translations en_us.ts (Indonesian)

* New translations en_us.ts (Persian)

* New translations en_us.ts (Portuguese)

* New translations en_us.ts (Norwegian Bokmal)

* New translations en_us.ts (French)

* New translations en_us.ts (Turkish)
2025-02-17 19:45:33 +02:00
DanielSvoboda
41496e035a
Adjust translation for RGB light (#2468) 2025-02-17 19:45:21 +02:00
georgemoralis
e40451a3f7
[ci skip] Qt GUI: Update Translation. (#2466)
Co-authored-by: georgemoralis <4313123+georgemoralis@users.noreply.github.com>
2025-02-17 17:01:22 +02:00
DanielSvoboda
154473d3b3
Fixes translation BOT (#2465)
* Update update_translation.yml

* Update update_translation.yml

* Update update_translation.yml
2025-02-17 16:59:10 +02:00
squidbus
fd3d3c4158
shader_recompiler: Implement AMD buffer bounds checking behavior. (#2448)
* shader_recompiler: Implement AMD buffer bounds checking behavior.

* shader_recompiler: Use SRT flatbuf for bounds check size.

* shader_recompiler: Fix buffer atomic bounds check.

* buffer_cache: Prevent false image-to-buffer sync.

Lowering vertex fetch to formatted buffer surfaced an issue where a CPU modified range may be overwritten with stale GPU modified image data.

* Address review comments.
2025-02-17 16:13:39 +02:00
¥IGA
b06790dfe5
Qt: Better title bar for SFO Viewer menu (#2462) 2025-02-17 12:38:17 +02:00
georgemoralis
195b94c1f1
New Crowdin updates (#2460)
* New translations en_us.ts (Portuguese)

* New translations en_us.ts (Albanian)

* New translations en_us.ts (Portuguese)

* New translations en_us.ts (Norwegian Bokmal)

* New translations en_us.ts (Portuguese)

* New translations en_us.ts (Norwegian Bokmal)

* New translations en_us.ts (Portuguese, Brazilian)

* New translations en_us.ts (Portuguese)

* New translations en_us.ts (Norwegian Bokmal)

* New translations en_us.ts (Portuguese)

* New translations en_us.ts (Norwegian Bokmal)

* New translations en_us.ts (Norwegian Bokmal)
2025-02-17 12:38:02 +02:00
¥IGA
90c01f8d92
Qt: Center Installation Dialog (#2453) 2025-02-17 12:37:11 +02:00
rainmakerv2
679f8f1f36
Add default values for Lightbar sliders and checkbox, per-game config (#2454)
* Update control_settings.cpp

* Add default for per game config checkbox as well
2025-02-17 12:36:56 +02:00
¥IGA
e9b44af469
Qt: Use Qt::SmoothTransformation for Cheats Manager (#2450) 2025-02-17 12:36:41 +02:00
¥IGA
0425bd0fd6
Qt: Fix Small Window (#2449) 2025-02-17 12:36:29 +02:00
squidbus
e13fb2e366
renderer_vulkan: Bind descriptors to specific stages in layout. (#2458) 2025-02-16 15:08:16 +02:00
DanielSvoboda
26bb3d40d9
Correct translation no_NO to nb_NO (#2455) 2025-02-16 09:41:37 +02:00
georgemoralis
7af9de353b
New Crowdin updates (#2440)
* New translations en_us.ts (Russian)

* New translations en_us.ts (Chinese Simplified)

* New translations en_us.ts (Portuguese, Brazilian)

* New translations en_us.ts (Portuguese, Brazilian)

* New translations en_us.ts (Portuguese)

* New translations en_us.ts (Japanese)

* New translations en_us.ts (Portuguese)

* New translations en_us.ts (Turkish)

* New translations en_us.ts (Turkish)

* New translations en_us.ts (Turkish)

* New translations en_us.ts (Chinese Simplified)

* New translations en_us.ts (Turkish)

* New translations en_us.ts (Norwegian Bokmal)
2025-02-16 09:40:28 +02:00
DanielSvoboda
b0169de7c4
added language pt_PT (#2452) 2025-02-15 21:40:24 +02:00
DanielSvoboda
e042710eaa
Background image sized correctly (#2451) 2025-02-15 18:19:33 +02:00
rainmakerv2
2b9a8e5605
add lightbar color override to Controller GUI (#2443)
* WIP Lightbar GUI, needs saving and loading

* Implement saving and loading lightbar values

* replace license header deleted by QT
2025-02-15 18:19:04 +02:00
¥IGA
bdf4a5249d
imgui: Displays FPS color based on FPS (#2437) 2025-02-15 10:53:25 -03:00
TheTurtle
82cacec8eb
shader_recompiler: Remove special case buffers and add support for aliasing (#2428)
* shader_recompiler: Move shared mem lowering into emitter

* IR can be quite verbose during first stages of translation, before ssa and constant prop passes have run that drastically simplify it. This lowering can also be done during emission so why not do it then to save some compilation time

* runtime_info: Pack PsColorBuffer into 8 bytes

* Drops the size of the total structure by half from 396 to 204 bytes. Also should make comparison of the array a bit faster, since its a hot path done every draw

* emit_spirv_context: Add infrastructure for buffer aliases

* Splits out the buffer creation function so it can be reused when defining multiple type aliases

* shader_recompiler: Merge srt_flatbuf into buffers list

* Its no longer a special case, yay

* shader_recompiler: Complete buffer aliasing support

* Add a bunch more types into buffers, such as F32 for float reads/writes and 8/16 bit integer types for formatted buffers

* shader_recompiler: Remove existing shared memory emulation

* The current impl relies on backend side implementaton and hooking into every shared memory access. It also doesnt handle atomics. Will be replaced by an IR pass that solves these issues

* shader_recompiler: Reintroduce shared memory on ssbo emulation

* Now it is performed with an IR pass, and combined with the previous commit cleanup, is fully transparent from the backend, other than requiring workgroup_index be provided as an attribute (computing this on every shared memory access is gonna be too verbose

* clang format

* buffer_cache: Reduce buffer sizes

* vk_rasterizer: Cleanup resource binding code

* Reduce noise in the functions, also remove some arguments which are class members

* Fix gcc
2025-02-15 14:06:56 +02:00
DanielSvoboda
290e127a4f
More fixes to make the translation work (#2439)
* more fixes to make the translation work

* If size is disabled, it will not appear on the patches screen

* Update game_install_dialog.h
2025-02-15 08:07:22 +02:00