Henrik Rydgard
a346697037
Update native + some very minor changes
2013-07-27 00:44:16 +02: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
Henrik Rydgard
3c02678dff
HLE GetFuncName: Correctly compare to numFunctions
2013-06-26 20:30:49 +02:00
Unknown W. Brackets
0c41d4e952
Don't allow release wait for HLE delays.
...
Although, presumably the thread would stop waiting, I guess the HLE func
in most cases probably checks and re-waits?
Fixes breakage in Jeanne d' Arc, which constantly releases from wait the
main thread, but calls things like sceMpegCreate which do block.
2013-06-08 23:39:49 -07:00
Unknown W. Brackets
cb3d021a7f
Link long module names properly (truncating.)
2013-05-21 00:33:12 -07:00
Unknown W. Brackets
0525906c70
Report unimplemented but known HLE functions.
2013-05-18 20:21:28 -07:00
Henrik Rydgard
82aa605b36
Add back shadows to FPS counter and debug text. Warning fixes.
2013-04-08 20:59:45 +02:00
Unknown W. Brackets
ba264b1df3
Don't delay results when dispatch is disabled.
...
Wait won't work so the CoreTiming event will just cause havoc.
2013-04-03 00:04:17 -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
b1e9924075
Shave a tiny bit of time out of CallSyscall().
2013-03-16 11:22:47 -07:00
Unknown W. Brackets
26306342fd
Simplify hleDelayResult()'s handler a bit.
2013-03-11 02:52:15 -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
Unknown W. Brackets
cb4c7f0eb6
Add some basic reporting hooks.
2013-03-04 00:01:40 -08:00
Unknown W. Brackets
64c42ffaf2
Fix some warnings generated by clang.
2013-02-24 10:23:31 -08:00
Unknown W. Brackets
363d1dbe19
Fix some misc. warnings.
2013-02-18 08:44:59 -08:00
Unknown W. Brackets
015529cb49
Don't call time_update() when debug stats are off.
...
This is not fast especially when syscalls are being hammered.
2013-02-02 20:42:01 -08:00
Henrik Rydgård
ae8a799030
Merge pull request #544 from unknownbrackets/perf
...
Don't measure syscall stats when not showing
2013-01-30 23:50:23 -08:00
Unknown W. Brackets
4ccd9ee118
Don't measure syscall stats when not showing.
2013-01-30 21:59:38 -08:00
Unknown W. Brackets
ce2ccd85b2
Fix misreporting of unknown syscalls.
...
Unknown syscalls in known modules just weren't being reported.
Unknown syscalls in unknown modules were reported as Kernel_Library (which
is module 0.)
2013-01-30 21:29:27 -08:00
Unknown W. Brackets
a6094e25ff
Get rid of waitTypeStrings and resched reason copy.
2013-01-26 11:29:20 -08:00
Unknown W. Brackets
6ec8fe6bf3
Track summed totals of syscalls.
...
Just so we can easily see if some func is being called a ton.
2013-01-11 08:59:15 -08:00
Henrik Rydgard
f3749d8abe
Add kernelstats
...
Useful for finding out if some syscall takes unexpectedly much CPU.
2013-01-11 00:13:38 +01:00
Unknown W. Brackets
da865e83dc
Write an unknown syscall for unresolved imports.
2013-01-08 00:48:38 -08:00
Unknown W. Brackets
79f9ebc2e1
Keep track of exported symbols and link them later.
2013-01-08 00:32:24 -08:00
Henrik Rydgård
95c4e0b9c4
Quick build fix for gcc
2012-12-28 23:33:00 +01:00
Unknown W. Brackets
bcecd881b1
Savestate cleanup + be more careful with vectors.
...
For some reason I debugged it going into std::string so I just made
them all more explicit which fixed everything.
2012-12-28 13:55:31 -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
6a6db5f53a
Remember to break on HLE after an ignored syscall.
2012-12-24 22:03:40 -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
b8ae91237e
Oops, missed some state in HLE to reset.
2012-12-24 21:04:28 -08:00
Unknown W. Brackets
15793fe532
More minor static analysis warning fixes.
2012-12-21 17:00:47 -08:00
Henrik Rydgard
4d4370232c
Assorted minor cleanup and fixes.
2012-12-21 10:20:22 +01: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
Henrik Rydgard
9c65a7b7f8
Fix issue with calling module imports
2012-12-17 21:27:50 +01:00
Unknown W. Brackets
e150cc5c03
Correct skipped parameter for deferred resched.
...
Forgot to check callbacks, oops.
2012-12-09 15:08:44 -08:00
Unknown W. Brackets
cf9b5744bb
Copy the resched reason in case on stack.
...
Was getting lost and becoming garbage.
2012-12-09 09:13:32 -08:00
Unknown W. Brackets
b6a7b04981
Cleanup deferred rescheduling in case it's tight.
...
Probably doesn't matter anyway. But this reads cleaner I think.
2012-12-09 01:16:19 -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
117256e07b
Implement various hle stuff..
2012-11-07 19:10:52 +01:00
Henrik Rydgard
c61d10363a
Rewrite callback handling, part 1. All sorts of other fixes too.
2012-11-06 15:46:46 +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
Henrik Rydgard
4f7ad15758
Add snapshot of the whole source code.
2012-11-01 16:19:01 +01:00