Henrik Rydgård
a0ecf545a6
Implement or stub assorted functions the VSH is calling
2026-08-21 10:56:06 +02:00
Henrik Rydgård
8d0d601b5b
Clean up how the instruction cache is invalidated from the breakpoint manager
2026-08-16 18:10:02 +02:00
Henrik Rydgård
67ddf899ba
Plumb through the PC value for syscalls, so we can get better diagnostics for unresolved ones.
2026-08-15 19:14:13 +02:00
Henrik Rydgård
2096179dce
Drive-by code cleanup
2026-08-15 18:31:20 +02:00
Henrik Rydgård
5ce4cbc18a
Fix some function name shenanigans
2026-08-14 14:55:06 +02:00
Henrik Rydgård
eb0813c0e3
Add a utility function for all the ABIs to call functions with a pointer arg. Use to call Advance from the JIT with the MIPSContext. Indent some code better.
2026-08-13 08:09:30 +02:00
Henrik Rydgård
e9a3449ede
More MIPSState * plumbing (manual)
2026-08-12 14:02:19 +02:00
Henrik Rydgård
0596ee97f6
More memory access cleanup
2026-08-11 20:14:01 +02:00
Henrik Rydgård
3c81d6b121
More manual Read_U32 cleanup
...
Buildfix
2026-08-11 10:28:36 +02:00
Henrik Rydgård
9396030f02
More Read_U32 cleanup
2026-08-11 09:08:52 +02:00
Henrik Rydgård
b42157aa49
Core: Add utility function to properly report memory exceptions from HLE functions (when they would actually crash the PSP)
2026-08-10 10:41:32 +02:00
Henrik Rydgård
a957086eeb
Try to fix test failure (vary strange)
2026-08-08 00:45:11 +02:00
Henrik Rydgård
c99a303646
Fix behavior so we can turn off "IgnoreBadMemAccess" in headless
2026-07-29 18:38:25 +02:00
Henrik Rydgård and Claude Sonnet 5
ca34a14fd8
Resolve unresolved-import calls to a module/NID in the "Unknown syscall" log
...
A call through a still-pending import gets written as a generic "invalid
syscall" opcode (WriteFuncMissingStub) that no longer carries the
original module name or NID by the time it's actually invoked - but the
address of the syscall instruction itself is exactly the stubAddr every
pending FuncSymbolImport already records. Added
KernelFindImportByStubAddr() to search loaded modules' importedFuncs for
a match, and use it in GetSyscallFuncPointer's unknown-syscall path.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com >
2026-07-25 14:52:19 +02:00
Henrik Rydgård
5f7a937466
Rename ValidSize to ClampValidSizeAt
2025-12-30 20:31:07 +01:00
Nemoumbra
c9c74f751c
Fixed an out-of-range access crash
2025-08-11 01:15:44 +03:00
Henrik Rydgård
266a6a33be
Add workaround for scePsmf LLE not working with Dragon's Lair
2025-06-07 15:05:33 +02:00
Henrik Rydgård
3d8233b7f8
Some sceAudiocodec MP3 work. Not yet working in Beats (trying to DisableHLE of sceMp3).
2025-04-07 10:27:53 +02:00
Henrik Rydgård
a870c2155d
Always load sceCcc if possible (disable HLE). PRX dumping fix.
2025-04-06 23:34:16 +02:00
Henrik Rydgård
b52e7913eb
Add disable HLE flag for sceCcc (character conversion library).
2025-04-06 23:34:16 +02:00
Henrik Rydgård
740f885277
Add an escape route from DisableHLE for headless (testing).
...
May later be turned into developer settings, too.
2025-04-03 21:13:39 +02:00
Henrik Rydgård
96275ec844
Disable HLE of scePsmf and scePsmfPlayer
...
Testing has shown that this seems to work great and fixes issues. These
two modules are just a parser and a shim over sceMpeg, and we're better
off running the original code, instead of re-implementing it.
sceMpeg still needs accuracy improvements though, and it's built on some
pretty low level components so it will be harder to peel off the next
level of the HLE onion.
Se #20200 .
2025-04-03 20:24:03 +02:00
Henrik Rydgård
a31d7dc0b3
Add mechanism to "graduate" DisableHLE flags to be permanently on. Will be used soon.
2025-04-03 20:04:42 +02:00
Henrik Rydgård
e961c1ed96
Add support for compat flags that control DisableHLE
2025-04-03 20:04:04 +02:00
Henrik Rydgård
62cd4bbefc
Minor cleanups and fixes. sceJpeg will not work without HLE, so removed from disable-list.
2025-04-03 18:16:10 +02:00
Henrik Rydgård
343ca2600a
Add a developer setting to disable individual HLE modules, allowing them to be loaded properly.
...
Some games survive with a loaded sceAtrac, and start talking to
sceAudioCodec instead, the underlying library, though unsuccessfully
since it's not properly implemented yet.
2025-04-02 10:19:24 +02:00
Henrik Rydgård
4e25f44eef
Rename some module-related functions to include HLE where appropriate
2025-03-31 11:17:50 +02:00
Henrik Rydgård
0ecd72416b
Reduce overhead of logging further.
2025-03-25 23:09:11 +01:00
Henrik Rydgård
0f840e6240
Move JPEG error codes to the big enum, some include cleanup
2025-03-21 20:44:46 +01:00
Henrik Rydgård
82728652d8
Move Font and Psmf error codes to the big enum
2025-03-21 20:44:46 +01:00
Henrik Rydgård
31cf5771f4
Turn the break reason into an enum, fix some minor issues
2025-02-19 16:01:11 -06:00
Henrik Rydgård
d39655ff17
Second attempt at fixing #19935
...
Fixes #19935 . Forgot to update the formatting for the reporting case.
I'll clean this up in a more general way later, I don't like how this code currently looks.
2025-02-02 20:21:17 -06:00
Henrik Rydgård
e53fd10edd
Format string fix in hleDoLogInternal
...
Hopefully fixes #19935 , but can't confirm myself right now.
2025-02-02 11:46:08 -06:00
Henrik Rydgård
b763cb3f03
Make the auto error logging 32-bit compatible, oops.
2025-01-29 11:08:55 +01:00
Henrik Rydgård
b4f0e3dd5c
HLE logging: Automatically log SCE_KERNEL_ERRORs as strings for functions returning 'i' and 'x' types.
2025-01-29 10:47:18 +01:00
Henrik Rydgård
2af7a047d2
HLE logging; Use function metadata to decide the type for logging the return type.
2025-01-29 10:14:54 +01:00
Henrik Rydgård
7db68d50bb
More hleLog*
2025-01-28 09:31:38 +01:00
Henrik Rydgård
eb0102d781
Use more hleLog* functionality to simplify code.
2025-01-28 09:31:34 +01:00
Henrik Rydgård
0f5d9fe753
Paper over the problems of the hlecall stack
2025-01-27 14:13:31 +01:00
Henrik Rydgård
5abb1be440
Some more logging cleanup
2025-01-21 17:33:59 +01:00
Henrik Rydgård
33fbc17e2c
Disable the function stacksize sanity checks.
2025-01-20 12:20:21 +01:00
Henrik Rydgård
16dcb9ee8a
And more
2025-01-20 12:20:21 +01:00
Henrik Rydgård
2b5b2a8fa5
Add a "pedantic" self-check mode, improve logging some more.
2025-01-20 12:20:21 +01:00
Henrik Rydgård
e24317b20b
A lot more logging fixes
2025-01-20 12:20:21 +01:00
Henrik Rydgård
7d2ad6980e
Another batch of changes
2025-01-20 12:20:21 +01:00
Henrik Rydgård
2523690584
Flip around so sceDelayResult is always outermost. Start using HLECall.
2025-01-20 12:20:18 +01:00
Henrik Rydgård
86fcdeeb25
string-view-ify stuff
2025-01-20 12:19:14 +01:00
Henrik Rydgård
6732d54742
Set up the basics.
2025-01-20 12:19:14 +01:00
Henrik Rydgård
31c1506a57
Some logging improvements
2025-01-20 11:56:13 +01:00
Henrik Rydgård
3e198c53b2
More include cleanup
2024-12-18 13:57:26 +01:00