Henrik Rydgård
c5e0dafa44
Fix "double delay" error in sceNpDrmEdataSetupKey
2023-05-25 10:02:52 +02:00
Unknown W. Brackets
c735d10021
Reporting: Always report hleReportDebug.
...
Even if debug logging is not enabled.
2022-10-04 23:48:57 -07:00
Unknown W. Brackets
6f9f9f5f2a
HLE: Ignore flip time in syscall stats.
...
Don't want to count flip timing as the slowest thing, when it happens
inside sceDisplaySetFramebuf (immediate.)
2021-08-14 20:18:06 -07:00
Henrik Rydgård
95dc7bb185
Minor cleanup
2021-07-10 20:00:50 +02:00
Henrik Rydgård
1ee70c1bcf
Buildfix
2020-08-16 15:05:44 +02:00
Unknown W. Brackets
54e1afda1e
HLE: Make calling mips funcs simpler.
...
This makes their return value handling, scheduling, etc. more
straight-forward.
2020-03-22 06:59:43 -07:00
Henrik Rydgård
22e65ba80d
Get rid of ugly alignment macros and some other cruft, we now have alignas(16) from C++11
2017-08-31 01:14:51 +02:00
Henrik Rydgård
e74749f2b2
A function renamed, some logging improvements
2017-03-10 00:11:00 +01:00
Unknown W. Brackets
2d4e75369a
Oops, fix typo.
...
Pointed out by Florin9doi - wasn't currently causing problems because the
value 1 isn't yet being used.
2016-08-05 11:34:22 -07:00
Unknown W. Brackets
4b4770bbc5
Log kernel syscalls with a K.
...
This way they can be properly differentiated.
2016-08-04 09:46:26 -07:00
Unknown W. Brackets
e75af43f0a
Handle floats and sign extension in HLE logs.
...
In some cases, we were previously logging sign-extended error codes. This
handles that better using type_traits.
2016-02-06 19:53:56 -08:00
Unknown W. Brackets
3a64388eee
Support 64-bit args/return in new HLE logging.
...
Pulls in a new header, unfortunately, but this is a mostly clean way to do
it.
2016-01-24 22:22:23 -08:00
Unknown W. Brackets
043891014d
Add a simpler way to force on HLE logging.
2015-10-25 09:05:16 -07:00
Unknown W. Brackets
c2153ff976
Add new logging in sceKernelCreateThread().
2015-03-22 21:22:40 -07:00
Unknown W. Brackets
52a37c1330
Actually use the table's arg and ret masks.
2015-03-22 20:51:56 -07:00
Unknown W. Brackets
fcf0518223
Update all the HLE tables with arg and ret info.
2015-03-22 20:51:55 -07:00
Unknown W. Brackets
1b2b5f41a9
Fix a typo.
2015-03-22 20:49:43 -07:00
Unknown W. Brackets
2c8199ec73
Make gcc happy when there are no var args.
2015-03-22 20:49:42 -07:00
Unknown W. Brackets
41631eb2b1
Try a different format of HLE logging.
2015-03-22 20:49:42 -07:00
Henrik Rydgard
fd1dcb881f
Add ability to flag function to clear a bit of stack. See #6374 , idea by JPCSP, pointed out by sum2012.
2015-03-02 01:03:12 +01:00
Unknown W. Brackets
745c453b33
Remove hleAfterCheckAllCallbacks().
...
Not being used, doesn't make sense - rescheduling is what does that, only.
2014-06-28 03:10:30 -07:00
Unknown W. Brackets
03f86f364f
Skip debug stepping time in list/func time.
...
Just makes the debug stats actually useful while stepping. A bit of
overengineering, but it makes it easy to go frame-by-frame looking for
perf issues.
2014-06-14 08:42:18 -07:00
Unknown W. Brackets
05ab192c9c
Reduce includes in Core/HLE/.
...
Especially templates.
2014-03-15 11:22:19 -07:00
Henrik Rydgard
c80510fb3b
MemMap should not be included in MIPS.h.
2014-03-15 10:45:39 +01:00
Unknown W. Brackets
641064f0bc
Consistently use MIPS_REG_V0 for return values.
...
This way all instances are a lot easier to search for (was trying to find
where we were writing an incorrect value to v0, turns out to be callback
related of course.)
2014-03-04 08:21:55 -08:00
Henrik Rydgård
00c32ddadb
Mostly get rid of including "Globals.h"
2013-12-30 10:17:11 +01:00
Unknown W. Brackets
732ae13ebb
Fast path CallSyscall where possible.
...
It seems we're spending a decent amount of time there, which isn't
entirely unexpected. We can eliminate some things easily.
2013-11-04 07:59:37 -08:00
Unknown W. Brackets
9ebaf7b68b
Fill registers with 0xDEADBEEF after most syscalls.
...
Some, like sceMpegRingbufferPut(), we don't, since... it's complicated.
But most we do, like a real PSP does.
2013-10-30 00:47:04 -07:00
Unknown W. Brackets
da0c9a86e5
Invalidate stubs/var imports when writing them.
2013-09-01 00:32:43 -07:00
Unknown W. Brackets
842e972a36
Unresolve function imports, track in loader.
2013-08-31 18:45:05 -07:00
Unknown W. Brackets
109ad17ac6
Use a typesafe struct for opcodes.
...
Also, correctly read delayslots using Read_Instruction on ARM.
2013-08-24 15:36:24 -07:00
Unknown W. Brackets
b9c2e21105
Improve performance of syscall resolving.
...
This was actually kinda slow (noticeably) in God Eater Burst.
2013-07-06 15:14:50 -07:00
Unknown W. Brackets
276037675f
Prevent waiting on semas while dispatch disabled.
...
Does relatively well on tests this way.
2013-03-24 23:30:32 -07:00
Unknown W. Brackets
75c5afa147
Add delays in some timing funcs that games tightloop.
...
Greatly improves performance in Legend of Heroes 1.
2013-03-19 07:48:41 -07:00
Unknown W. Brackets
0b9c248856
Reschedule in sceIoLseek() etc.
...
Also make it so we can return u64s easily in places...
2013-03-11 02:50:32 -07:00
Unknown W. Brackets
dba04a7e22
Add a function for HLE to consume cycles.
...
Needed sometimes to make timing match better for tight loops.
Also removes the Puyo Puyo Fever hack.
2013-03-09 13:53:19 -08:00
Unknown W. Brackets
d2be407223
Make HLE func delayed results more generic.
2013-03-09 11:42:15 -08:00
Henrik Rydgard
ba0362d817
PGF font support. Mostly an adaptation and cleanup of JPCSP's font system.
2013-02-27 17:41:39 +01:00
Unknown W. Brackets
de7ada1982
Fix some x64 type warnings.
2013-02-24 10:39:06 -08:00
Unknown W. Brackets
4b39e39455
Start save stating the filesystem state.
...
Plus minor fixes and at least an attempt to make states the same
on both 32 and 64 bit.
2012-12-28 13:55:27 -08:00
Unknown W. Brackets
2197d96989
Run save state operations at next Advance().
...
Should take some question marks out of things.
2012-12-28 13:55:23 -08:00
Unknown W. Brackets
dc21d5c462
Add a mechanism for HLE to trigger a debug break.
2012-12-24 21:47:54 -08:00
Unknown W. Brackets
9034cfbfd3
Defer HLE interrupts, vblank only when enabled.
...
Based on tests, vblank doesn't queue up (makes sense) while
interrupts are disabled.
I'm not 100% sure about the GPU stuff but it seems to only come
from HLE via sceGe, so this should fix those return values.
2012-12-20 21:54:40 -08:00
Unknown W. Brackets
5e8aa4c071
Implement deferred rescheduling/callbacks.
...
This way most HLE functions can be wrapped normally. Hurray, sanity.
2012-12-09 01:04:53 -08:00
Henrik Rydgard
d769297d06
Add a flags field to HLEFunction. Fix a small path issue.
2012-11-06 19:34:17 +01:00
Henrik Rydgard
3e207a1490
Fake netconf dialog, etc
2012-11-06 19:22:14 +01:00
Henrik Rydgard
b214a1a1da
Revert "Better wrapper system, and fixed warnings"
...
This reverts commit a00b1855cb
.
Conflicts:
Core/HLE/FunctionWrappers.h
Core/HLE/sceCtrl.cpp
Core/HLE/sceKernelModule.cpp
2012-11-05 10:05:09 +01:00
Henrik Rydgard
6bed1afb72
Merge branch 'master' of https://github.com/artart78/ppsspp into artart78-master
2012-11-04 23:59:26 +01:00
Henrik Rydgard
64cc573703
Switch to "GPL 2.0 or later" for various reasons. I wrote most of the code I imported from Dolphin (which is GPL2-but-not-later), so it should be OK.
2012-11-04 23:24:00 +01:00
Arthur Blot
9be8be6b7f
Implemented sceKernelLoadModule()
...
Note that it wasn't tested because all the games I tested had other problems (already implemented modules, encrypted modules, using different functions etc).
But code looks good so it'd probably need few (no?) fixes.
2012-11-04 19:01:20 +01:00