Commit Graph

3708 Commits

Author SHA1 Message Date
Valdis Bogdāns
d448ddc8ae
Merge branch 'fontfixes' into fontlib 2026-01-16 16:38:06 +02:00
Valdis Bogdāns
692c30e62c
Merge branch 'main' into fontfixes 2026-01-16 16:33:59 +02:00
w1naenator
296e4385c4 Add system font path and override config support
Introduce new config options for system font directory, fallback font name, and per-font overrides. Update config load/save logic to handle a [SystemFonts] TOML section, supporting both fallback and individual font overrides. Improve user instructions for custom font setup and clarify related code comments. These changes enhance flexibility and user experience for system font configuration.
2026-01-16 16:25:49 +02:00
w1naenator
419909e786 Merge branch 'fontlib' of https://github.com/w1naenator/shadPS4 into fontlib 2026-01-16 13:35:21 +02:00
Valdis Bogdāns
b7df3275ab
Merge branch 'shadps4-emu:main' into fontlib 2026-01-16 13:28:58 +02:00
w1naenator
b637cbbd70 Refactor font library functions and improve thread safety
- Updated function signatures in font.h to include the OrbisFontLib parameter for cache clearing and outline buffer management.
- Introduced a mutex in font_internal.cpp to ensure thread safety by protecting access to global font state and library state.
- Added a RemoveState function to safely remove font states.
- Enhanced memory allocation functions in fontft_internal.cpp to use Core::ExecuteGuest for better integration with the guest environment.
- Simplified font loading logic in LibraryOpenFontMemoryStub to improve readability and maintainability.
- Removed redundant code related to file opening and memory allocation, streamlining the font loading process.
This potentially fixes emulator crashes in games that use parallel font initialization, such as Dragon’s Crown.
2026-01-16 13:23:54 +02:00
baggins183
11ee79a333
shader_recompiler: some fixes for tess shaders (#3926)
When walking the users of special constants which form LDS
addresses:
-ignore when a user contributes to the wrong operand of an LDS inst, for
example the data operand of WriteShared* instead of the address operand.
This can mistakenly happen due to phi nodes.
-don't use flags to stash temp info about phis, since flags may already
be in use. Use a separate map.
2026-01-15 09:25:09 +02:00
georgemoralis
cdf3c468b6
Added libSceAudiodec to lle modules list (#3916)
* added libSceAudiodec to lle modules list

* crappy float resample , use it at your own risk

* clang

* adjustments to aac

---------

Co-authored-by: Vladislav Mikhalin <mikhalinvlad@gmail.com>
2026-01-14 18:07:44 +02:00
w1naenator
0864bafe47 Enhance error logging in font metrics functions and update comments for clarity 2026-01-13 17:27:49 +02:00
Vladislav Mikhalin
1a99ab7b09
ajm: fix init params initialization (#3924) 2026-01-13 11:08:46 +02:00
Stephen Miller
acb8d06636
Lib.Audio3d: sceAudio3dGetDefaultOpenParameters fix (#3923)
* OrbisAudio3dOpenParameters struct fix

Not sure why we have the extra filler, but decomp suggests it shouldn't exist.
This fixes stack_chk_fail issues in audio3d using titles.

* Bring back filler, only copy 0x20 bytes.

The library accepts variations on struct size, with the maximum size being the 0x28 size our current struct has.
This fixes the issue without potentially breaking the struct.

* Fix memcpy

Prevent OOB read
2026-01-13 08:32:17 +02:00
Stephen Miller
108cefaf53
Better message for missing game trophies directory (#3922)
Also decreased the log level from critical to warning, as all this affects is the ability to earn trophies.
2026-01-13 08:30:56 +02:00
georgemoralis
a30014fbfc removed lle versions 2026-01-12 19:38:51 +02:00
georgemoralis
11bdfd3a98 using new saving system but i can't understand the fallback mechanism 2026-01-12 19:18:54 +02:00
georgemoralis
877a60fe3b cmakelist 2026-01-12 18:54:53 +02:00
georgemoralis
b97cd2753c load settings 2026-01-12 18:53:22 +02:00
georgemoralis
aba1d8242f cut version of emulator settings to support custom sysfonts folder 2026-01-12 18:48:12 +02:00
georgemoralis
a0014a8853 create sys_fonts in users folder and instructions.txt of what to put inside 2026-01-12 18:24:19 +02:00
georgemoralis
2113de96f0
Merge branch 'main' into fontlib 2026-01-12 17:43:52 +02:00
b7k
540fdcc812
changing the mouse speed does not affect the mouse speed offset (#3917) 2026-01-12 11:21:52 +02:00
georgemoralis
1adbdb53fd
Merge branch 'main' into fontlib 2026-01-12 10:04:58 +02:00
Stephen Miller
910f737079
Core: Add libSceRtc, libSceJpegDec, libSceJpegEnc, and libScePngEnc LLEs (#3918)
* Run libSceRtc LLE

The more we've used our HLE, the more issues we've had with it.
While we debug these bugs, re-enabling LLE will address any regressions the swap caused.

* libSceJpegDec LLE

Needed for Trackmania until we implement HLE for this library

* libScePngEnc LLE

Needed for Minecraft until we implement HLE for this library

* Update documentation appropriately

* libSceJpegEnc LLE

By @georgemoralis's request
2026-01-11 20:48:41 +02:00
Stephen Miller
3844a2fb54
Lib.Videodec2: Stub sceVideodec2AllocateComputeQueue to return a valid computeQueue pointer. (#3915)
* Stub compute queue output to cpuGpuMemory

* Rename namespace

This has bugged me for far too long

* Oops
2026-01-11 10:47:34 +02:00
Stephen Miller
ae47dd5d54
Handle exceptions from OutputDebugString API. (#3914)
Needed after #3900
2026-01-11 03:36:36 +02:00
Stephen Miller
12cd27d0b7
Fix socket_is_ready (#3912) 2026-01-10 21:15:06 +02:00
Stephen Miller
ed73d2b02c
Libraries: libSceNpWebApi2 stubs (#3908)
* libSceNpWebApi2 stubs

Based on some brief decompilation, brings some extra Unreal Engine titles futher.

* Clang

* Suggestions and fixes
2026-01-10 17:33:28 +02:00
Stephen Miller
b84c5ed110
Corrected physical base handling for memory pools (#3909)
On real hardware, each pool commit can have multiple physical memory allocations, always allocating the lowest free physical addresses first.

Currently, since we currently only support one physical mapping per VMA, I create a separate VMA representing each physical allocation we perform.
2026-01-10 17:23:42 +02:00
marecl
f42a566cef
Dirents backport (#3876)
* lseek for directories behaves correctly when final index is smaller than 0 (EINVAL)
Backported and improved dirents from QFS
Normal directory dirents update on change

* PFS moves pointer to end when last dirent is returned

* Correct entry type in PFS directory
2026-01-10 00:35:43 +02:00
Valdis Bogdāns
8376f17c2c
Merge branch 'main' into fontlib 2026-01-09 23:48:07 +02:00
georgemoralis
be99cb4d5b
Emulator state (#3906)
* moved getShowFpsCounter to emu state

* more state variables

* fps counter is back

* removed fpscolor
2026-01-09 19:42:05 +02:00
Vladislav Mikhalin
f7a473b391
read compiled SDK version from eboot (#3905) 2026-01-09 18:29:09 +03:00
w1naenator
4ae39ff2df Fix: fypo 2026-01-09 14:39:18 +02:00
Valdis Bogdāns
6174ce1c74
Update fontft_internal.cpp
typo fix
2026-01-09 14:23:00 +02:00
w1naenator
78faac52e5 clang 2026-01-09 13:04:48 +02:00
w1naenator
d845b9503d Refactor font rendering and path resolution logic to fix Metaphor: ReFantazio glyphs cropping and anywhereVR "thin" glyphs.
- Updated RenderCodepointToSurface and RenderCodepointToSurfaceWithScale functions to set result->transImage to nullptr instead of result->stage.
- Modified font definitions to use updated font file names for various language sets.
- Introduced ResolveSystemFontPathCandidate function to streamline font path resolution, allowing for better handling of font directories.
- Enhanced LoadFontFile function to check for font files in "font" and "font2" directories based on the parent directory name.
- Improved error logging for font path overrides in ResolveSystemFontPath function.
2026-01-09 13:00:17 +02:00
Valdis Bogdāns
cfe3259999
Merge branch 'main' into fontlib 2026-01-09 11:44:49 +02:00
TheThunderTurner
233192fa95
LIbrary: libSceRudp (#3903)
* libSceRudp

* use newer glslang

* remove module start/stop

* register lib, revert glslang upgrade

* 2026

* remove default funcions
2026-01-08 21:22:21 +02:00
w1naenator
240499b2c9 Add FreeType submodule for GitHub CI workflows 2026-01-08 04:19:04 +02:00
w1naenator
e9ca20b65d Add internal font handling structures and layout computation functions
This commit introduces a new header file `fontft_internal.h` containing
various structures and functions for managing font handles, layout metrics,
and rendering operations. Key additions include:

- Definitions for `FontHandleOpenInfo`, `FontHandleStyleStateTail`,
  and `FontHandleOpaqueNative` to encapsulate font state and properties.
- Layout-related structures such as `HorizontalLayoutBlocks`,
  `VerticalLayoutBlocks`, and their respective I/O structures for
  managing layout metrics and effects.
- Functions for computing horizontal and vertical layout blocks,
  along with utility functions for handling layout words in byte format.
- Stubs for library functions related to font management and rendering.

These changes aim to enhance the font rendering capabilities of the
shadPS4 Emulator Project, providing a robust foundation for future
font-related features.
2026-01-08 03:08:29 +02:00
Valdis Bogdāns
9387adc79e
Merge branch 'main' into fontlib 2026-01-08 00:13:15 +02:00
Ploo
240c1d6441
Update backend.cpp (#3900) 2026-01-07 18:36:07 +02:00
kalaposfos13
299159b1e0
logging: fix thread name logging for async logs (#3898)
* logging: fix thread name logging for async logs

* copyright 2026
2026-01-06 20:49:52 +02:00
Valdis Bogdāns
cfcd365158
Merge branch 'shadps4-emu:main' into fontlib 2026-01-06 14:25:59 +02:00
Quang Ngô
42220dfbba
Add vcs-browser to net.shadps4.shadPS4.metainfo.xml (#3897) 2026-01-06 11:48:56 +02:00
kalaposfos13
55e2b0f520
fix float parsing (#3896) 2026-01-05 19:56:43 +01:00
georgemoralis
256397aa3b
Net fixes (#3895)
* support for flag in recv/send

* make kalapsofos happy

* on more SendMessage try

* ReceiveMessage too
2026-01-05 01:57:31 +02:00
Stephen Miller
35da0506b6
set name (#3894) 2026-01-04 22:24:37 +02:00
mercury501
975b1d312a
Fixed dialog text input off by one error (#3892)
* Fixed dialog off by one error

* Fixed exclusion error

---------

Co-authored-by: georgemoralis <giorgosmrls@gmail.com>
2026-01-04 21:30:50 +02:00
kalaposfos13
df844f8c02
Add thread names to log lines (#3893)
* the bare minimum (this won't even compile on windows yet)

* well I guess this is redundant now

* Windows GetThreadName

* Move function to common/thread and add full guest name where applicable

* the loathsome clang-formatter

* do stuff first ask for opinions later

* copyright 2026

* remove unused header

* copyright 2024-2026

---------

Co-authored-by: Stephen Miller <56742918+StevenMiller123@users.noreply.github.com>
2026-01-04 21:10:42 +02:00
Connor Garey
954cc77110
Added a link to CLI messagebox (#3885)
* Added a link to the CLI tool message box

* Clang fix

* Another Clang fix

* Clang x3
2025-12-30 20:23:21 +01:00