Commit Graph

3436 Commits

Author SHA1 Message Date
Henrik Rydgard
dfbb0bdea2 Hack: Return -1 specifically for trying to load SFO's as modules. Works around #6748
Will test properly later and return the correct value but this should be zero-impact.
2014-08-21 10:34:56 +02:00
Henrik Rydgård
d52c87d82c Merge pull request #6722 from sum2012/wwe
check for duplicated stack addresses by JimLee168
2014-08-20 16:34:02 +02:00
Henrik Rydgård
2de6b471ce Merge pull request #6616 from unknownbrackets/modules
Improve module loading and allocation
2014-08-19 08:00:47 +02:00
Henrik Rydgård
72d5a55791 Merge pull request #6675 from unknownbrackets/threadman
Correct sceKernelThreadmanIdList behavior
2014-08-19 07:56:54 +02:00
Henrik Rydgård
e7a1761147 Merge pull request #6597 from unknownbrackets/ge-minor
Unpause lists after wait signals with no handler
2014-08-19 07:56:37 +02:00
Henrik Rydgård
5f8f3633a8 Merge pull request #6685 from unknownbrackets/kill-volume
Remove bgm and sfx volume settings
2014-08-19 07:56:01 +02:00
Unknown W. Brackets
3fbab33c91 Only loop at video end.
In case of a short video that runs out of data but isn't ready to loop
yet.
2014-08-17 15:46:04 -07:00
Unknown W. Brackets
909ac62669 Return a proper error for fake TMIDs. 2014-08-17 14:38:56 -07:00
Unknown W. Brackets
6852e32d6b Support other thread TMIDs in uid listing. 2014-08-17 14:38:55 -07:00
Unknown W. Brackets
b8f8707ea1 Allow a bad pts on zero size when listing uids. 2014-08-17 14:38:55 -07:00
Unknown W. Brackets
feeb03b5ff Fix return values in sceKernelGetThreadmanIdList().
Support other object types as well, but not threads/etc. properly yet.
2014-08-17 14:38:54 -07:00
Unknown W. Brackets
774589aa4f Correct the Tlspl TMID value. 2014-08-17 14:38:54 -07:00
Unknown W. Brackets
dc16ad3744 Report forwarding module load to loadexec.
Shouldn't do this probably.
2014-08-17 14:26:01 -07:00
Unknown W. Brackets
abacba4e31 Clarify some module loading code. 2014-08-17 14:26:00 -07:00
Unknown W. Brackets
a16ccf52e7 Allocate kernel modules that fail to decrypt.
This corrects some memory semantics to match real firmware.
2014-08-17 14:25:59 -07:00
Unknown W. Brackets
f864b6be63 Allocate 0x4000 at the bottom like real firmware.
Should fix #4056.
2014-08-17 14:25:59 -07:00
Unknown W. Brackets
71e8c0f6e0 Sum all .bss* sections when counting bss size. 2014-08-17 14:25:58 -07:00
Unknown W. Brackets
0a14fd5ee9 Skip zero size segments in module segment info. 2014-08-17 14:25:58 -07:00
Unknown W. Brackets
bf03e32027 Add a safety check for freeing kernel modules. 2014-08-17 14:25:57 -07:00
Unknown W. Brackets
7c37d64717 Load kernel modules into kernel memory.
This way they don't eat up user memory space.
2014-08-17 14:25:55 -07:00
Unknown W. Brackets
99d96218e1 Correct some loadmodule error codes. 2014-08-17 14:25:55 -07:00
Unknown W. Brackets
cf4b607113 Validate the elf position argument more. 2014-08-17 14:25:54 -07:00
Unknown W. Brackets
1d310ad8bb Allocate module memory from top/bottom per request. 2014-08-17 14:25:54 -07:00
Unknown W. Brackets
1d195a37e4 Cleanup modules on unloadself. 2014-08-17 14:25:53 -07:00
Unknown W. Brackets
5c470a1923 Remove bgm and sfx volume settings.
They don't actually work in all games, and this only confuses users.

Also, the default 7 lowers the volume of audio detected as bgm or sfx, but
not other volume.  This means that some audio may have played too loud in
some games by default, which will be fixed by this change.
2014-08-17 14:16:59 -07:00
Unknown W. Brackets
413523c8ac Unpause lists after wait signals with no handler.
This stops the gpu/displaylist/state test from hanging, and appears to be
the correct behavior.  It makes sense.
2014-08-17 14:14:25 -07:00
Henrik Rydgard
8560e317d0 Reload the stream on loop. Fixes #6703. Thanks to @unknownbrackets 2014-08-17 22:29:01 +02:00
sum2012
6024fe7e13 Don't need duplicate the whole table 2014-08-15 23:30:51 +08:00
sum2012
9f4efaf142 Add sceLibFttt
Same as sceFont
2014-08-15 22:42:08 +08:00
JimLee168
8099281928 check for duplicated stack addresses
Based on https://code.google.com/p/jpcsp/source/detail?r=3569

Fix WWE SmackDown! vs. RAW 2006
2014-08-13 21:28:22 +08:00
daniel229
a1f922baff fix typo,add sceUsbGpsGetState() function 2014-08-13 01:47:24 +08:00
daniel229
88124952a2 add sceUsbGpsOpen() function 2014-08-13 01:18:03 +08:00
daniel229
1ff9507f7c Add sceUsbGps module 2014-08-13 00:11:26 +08:00
Unknown W. Brackets
3bd945c2a8 Ignore displaybuf in psmfplayer when warming up.
Should fix #6704.
2014-08-10 21:56:05 -07:00
Unknown W. Brackets
5525c0a485 Use a lookup for function replacements.
Ought to be a tiny bit quicker.
2014-08-03 13:17:55 -07:00
Unknown W. Brackets
d060a06fa6 Disable a bunch of function replacements.
These are just for speed, let's turn them off.  Using a flag because:
 * I think there's still some issue with savestates, not sure.
 * We might swap this flag to a separate option.
2014-08-03 13:15:41 -07:00
Unknown W. Brackets
f198a7f587 Use checked pointers in all function replacements.
Some games are still hitting bugs and there's no way to disable this "fast
memory" without losing graphical effects.  Better to do it evenly than
weird hacks and extra logging/checks.
2014-08-03 13:04:00 -07:00
Henrik Rydgard
bc3b4c5512 Disk swap: Remount the ISOBlockSystem too. Should fix #6662 2014-08-02 12:35:27 +02:00
Henrik Rydgard
b7ac539420 Fix crash after loading state from within Psmf movie
(a variable was not initialized)
2014-07-28 00:01:28 +02:00
Henrik Rydgård
936dd58367 Merge pull request #6640 from JimLee168/master
Atrac buffer validate RIFF header
2014-07-27 21:08:32 +02:00
sum2012
21e024eeda sceMpegRingbufferAvailableSize might use a different
Based on http://code.google.com/p/jpcsp/source/detail?r=1813
Fix #5112
2014-07-27 23:40:46 +08:00
JimLee168
9722e1eb03 Atrac buffer validate RIFF header 2014-07-27 19:02:01 +08:00
Unknown W. Brackets
c7a2753a00 Fix savestates when there are psmfplayers.
Oops.  Fixes #6613.
2014-07-25 09:19:07 -07:00
Henrik Rydgard
85cb55cb84 Check some addresses in sceAtracDecodeData 2014-07-21 10:30:52 +02:00
Henrik Rydgård
0e5679c833 Revert "Detect Peace Walker's anti-cheat hash func" 2014-07-20 23:39:11 +02:00
The Dax
c1fc04ee64 Remove the "Change MAC Address" screen, and simply generate a new (random) one upon pressing the button. 2014-07-18 16:58:26 -04:00
Henrik Rydgård
06f058de54 Merge pull request #6506 from unknownbrackets/replace-funcs
Detect Peace Walker's anti-cheat hash func
2014-07-18 09:34:46 +02:00
Unknown W. Brackets
a59d8b5c1f Override the codehashing func used in Peace Walker.
This makes the demo work fine even with jit enabled.  May help the full
game when fighting a certain boss.
2014-07-18 00:23:26 -07:00
Sacha
cd20288d99 Fix some compiler warnings. 2014-07-17 00:49:58 +10:00
Unknown W. Brackets
9581de449a Fix some logging in sceNetAdhoc. 2014-07-15 23:35:19 -07:00
Unknown W. Brackets
2f90c8d35a Fix a bad == comparison typo. 2014-07-15 23:33:01 -07:00
Sacha
1ce39d7e95 Improve frame timing on non-Windows. Disable IdleTiming when audio is disabled. 2014-07-16 01:04:43 +10:00
Unknown W. Brackets
ff7c3ab10d Oops, would still infinite loop on a bad module.
Should really fix #6552 this time.
2014-07-15 07:14:13 -07:00
Unknown W. Brackets
2da02f97c8 Null check modules on loadexec.
Should fix #6552.
2014-07-14 22:14:23 -07:00
Henrik Rydgård
c4bebda182 Merge pull request #6549 from unknownbrackets/modules
Correct some module func return values, info values, and clear on unload
2014-07-14 14:11:29 +02:00
Unknown W. Brackets
bddeba5901 Add a safety check for lots of segments. 2014-07-13 23:51:36 -07:00
Unknown W. Brackets
4ced0e86b1 Return an error code when module load fails.
If we're out of memory, we need to tell the game, of course.
2014-07-13 22:00:33 -07:00
Unknown W. Brackets
7c4aab3cc2 Warn on exports from syslib.
They don't seem to hook up properly on hardware by the module name.
2014-07-13 22:00:33 -07:00
Unknown W. Brackets
50402a3d49 Return NOT_YET_LINKED for unlinked module funcs. 2014-07-13 22:00:32 -07:00
Unknown W. Brackets
292a9ea567 Clear module text and bss on unload.
Text is set to break instructions, data/bss to -1.  Matches results on a
PSP.
2014-07-13 22:00:32 -07:00
Unknown W. Brackets
ede29179c6 Cleanup remaining modules on loadexec. 2014-07-13 22:00:31 -07:00
Unknown W. Brackets
729377881c Protect against modules with no start address.
Generally, fake ones.
2014-07-13 19:58:30 -07:00
Unknown W. Brackets
4a94a30ba6 Calculate the module info data/text/bss size. 2014-07-13 19:53:00 -07:00
Unknown W. Brackets
1c7873e2f5 Fill the module info segment addresses and sizes. 2014-07-13 19:16:25 -07:00
Unknown W. Brackets
399d4d1ba9 Correct sceKernelModuleStart() return value. 2014-07-13 15:16:03 -07:00
Unknown W. Brackets
3fa1481fe9 Cut down on "remaining data in packet" reports.
Looks potentially like a bug in FFmpeg.
2014-07-13 11:26:00 -07:00
Unknown W. Brackets
8dd783f719 Correct HLE function name per sha. 2014-07-13 11:03:23 -07:00
Unknown W. Brackets
81096f6bd0 Hook Dissidia's avi record func.
This makes it so replays can be recorded.  Though you could probably just
record separately anyway.
2014-07-13 08:36:34 -07:00
Unknown W. Brackets
98d3dc4be8 Typos. 2014-07-12 13:48:30 -07:00
Unknown W. Brackets
ef4847b6f5 Don't double decrease g_inCbCount.
Happened when a thread was deleted, it seems like.  Fixes #6542.
2014-07-12 09:57:13 -07:00
Unknown W. Brackets
b370621a3a Fix sceCtrl buffer update timing drift.
Spotted by xsacha.  Only when not using vblank timing (most commonly used
by games.)
2014-07-06 01:08:44 -07:00
Unknown W. Brackets
2910f7e7a2 Flush icache before memcpys.
Maybe there's a way to optimize this better...
2014-07-05 13:23:47 -07:00
Unknown W. Brackets
cd78e1676d Fix savestates broken by #6493. 2014-07-05 07:30:03 -07:00
Sacha
2bb87bbe23 HLE: sceUsb stubs. 2014-07-04 06:27:01 +10:00
Sacha
135c79ee78 Implement sceGzipDecompress and sceDeflateDecompress. Some games (eg. Suto Mani / Strobe Mania) required this. They are now playable. Fixes #146 2014-07-03 13:58:47 +10:00
Karen Tsai
1d1096633f Removed some extraneous tabs in sceKernelModule.cpp 2014-07-02 13:21:27 -04:00
Henrik Rydgård
da32e5d4e3 Merge pull request #6481 from sum2012/sceKernelModule
Correct sceKernelSelfStopUnloadModule
2014-07-02 18:30:38 +02:00
Unknown W. Brackets
2d54c1cf4e Reset the audio rate on save/load state.
Should fix #6484.
2014-07-02 08:11:26 -07:00
sum2012
96c6a53e58 Fix space bug 2014-07-02 20:27:17 +08:00
sum2012
0256c7e056 Use with same code with sceKernelStopUnloadSelfModuleWithStatus 2014-07-02 20:08:27 +08:00
Unknown W. Brackets
b73c1ba29b Reduce audio drift from 44.1kHz.
Although, not sure what the PSP's actual exact timing is...
2014-07-01 23:08:38 -07:00
sum2012
eecd9038cd Init exitCode variable 2014-07-02 08:00:41 +08:00
sum2012
bc4a9149d3 Correct sceKernelSelfStopUnloadModule
Fix #4237
2014-07-02 07:25:49 +08:00
Unknown W. Brackets
e505655c2b Fix a potential crash/race condition.
If anything is behind, it might run __AudioWakeThreads() within
reschedule, and get confused.
2014-07-01 08:02:34 -07:00
Unknown W. Brackets
5cd4a17e88 Fix periodic events drifting when eating cycles.
Need to set the next timer before rescheduling threads or etc.
2014-07-01 00:26:15 -07:00
Henrik Rydgård
bfffe33438 Merge pull request #6469 from unknownbrackets/logging
Enforce semicolons at the end of log lines
2014-06-30 11:44:02 +02:00
Unknown W. Brackets
c6f5ddd7a4 Reset replacements on loadexec.
Just to make sure we don't get confused.
2014-06-30 00:27:05 -07:00
Unknown W. Brackets
0a33eb4c42 Fix missing log semicolons only affecting logging. 2014-06-29 19:09:39 -07:00
Unknown W. Brackets
0078faef8b Fix some log semicolons that might affect logic.
But, these should all be right.
2014-06-29 19:09:38 -07:00
Unknown W. Brackets
5db79dcf11 Fix some missing semicolons on log statements. 2014-06-29 19:09:37 -07:00
Henrik Rydgard
38609f3e6b Cleam up thread names a bit, name the Main thread.
Also makes some logging VERBOSE.
2014-06-29 12:53:03 +02:00
Unknown W. Brackets
1c3b60a8ee Allow changing software skinning at runtime. 2014-06-28 21:46:43 -07:00
Henrik Rydgård
b379109380 Merge pull request #6450 from unknownbrackets/gpu-blocktransfer
Clear framebuffers/textures upon sceKernelLoadExec()
2014-06-29 01:48:34 +02:00
Unknown W. Brackets
b4594c7bc5 Avoid Advance() twice, cleanup some comments. 2014-06-28 16:20:35 -07:00
Unknown W. Brackets
b68ad3844e Simplify __KernelReSchedule().
It no longer needs all these checks, and we can Advance within callbacks,
interrupts, etc. safely.
2014-06-28 16:17:52 -07:00
Unknown W. Brackets
0edeb085ab Allow rescheduling within callbacks. 2014-06-28 14:58:56 -07:00
Unknown W. Brackets
ac2c44ddd9 Revert the early wake of threads for io waits.
This reverts commit 610ada8721.

It makes sense to let these run longer.  Apparently this caused problems
in Castlevania, see #6432.
2014-06-28 12:29:55 -07: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
10096b94f2 Correctly remember callback status when sleeping.
If a callback triggered right away after a sceKernelSleepThreadCB(), it
would trigger the "current callback" and remember callback status as
false, instead of true (since it was set later.)

This corrects that by ignoring it if both are set.
2014-06-28 03:06:30 -07:00
Unknown W. Brackets
5ab3750186 Reduce the thread switching cost.
Maybe it was actually too high.  Some tests fail with it that high.
2014-06-27 01:00:11 -07:00
Unknown W. Brackets
4471b968e8 Increase timeout delay time for waits.
Had previously had these lower, but my testing was biased by how quick
other things in ppsspp were.
2014-06-27 00:58:59 -07:00
Henrik Rydgård
e73fcf4ec2 Merge pull request #6436 from ANR2ME/adhoc_
Fixed FF-Type0 from seeing duplicated Host, hopefully this will also fix...
2014-06-26 15:20:05 +02:00
AdamN
a98b44d7ab Fixed FF-Type0 from seeing duplicated Host, hopefully this will also fix all Adhoc games that became broken in my 1st patch 2014-06-26 17:50:37 +07:00
Henrik Rydgård
8042b6f6f1 Merge pull request #6435 from unknownbrackets/replace-funcs
Hook the FF1 battle effect func
2014-06-26 11:44:14 +02:00
Unknown W. Brackets
0da972c548 Hook the FF1 battle effect func.
So that we can download the framebuffer.  At least, it seems like that's
what this function is doing.
2014-06-26 01:38:22 -07:00
Henrik Rydgård
f0cb70d9fb Merge pull request #6433 from unknownbrackets/frame-timing
Maintain timing of at least 30 vblanks per second if possible
2014-06-26 10:33:51 +02:00
Unknown W. Brackets
8172e838a5 Avoid a fast-forward effect when not drawing.
This fixes loading screens and such, which drop the fps down to 0 or 6
according to our measure, which can distort audio if we've got free time.

If the system is not keeping up, should have the same behavior as before.
2014-06-26 00:37:03 -07:00
Unknown W. Brackets
23dc69fc9b Time frames based on current, not last timestep.
We need to decide the nextFrameTime when we know how many vblanks it took,
not before.  Otherwise, we will miss-time when the fps changes.
2014-06-26 00:36:17 -07:00
AdamN
12ee3d1d39 Fixed Wipeout Pulse unable to see any Host, and should affect many other Adhoc games (was broken in my previous commit) 2014-06-25 20:29:42 +07:00
Unknown W. Brackets
19f4ad8c5c Dumb mistake in "real time sync" fix. 2014-06-25 00:44:18 -07:00
Henrik Rydgård
fea0a26113 Merge pull request #6414 from unknownbrackets/resched
Reschedule immediately in many cases
2014-06-24 22:41:58 +02:00
Henrik Rydgård
a1d359f22c Merge pull request #6421 from ANR2ME/master
Fixed some bugs (ie. possible of memory leaks) on Adhoc, and implement a...
2014-06-24 20:07:07 +02:00
AdamN
7f7b2a3800 Fixed some bugs (ie. possible of memory leaks) on Adhoc, and implement a few more Adhoc functions. 2014-06-24 23:43:03 +07:00
Unknown W. Brackets
87b3a7e566 Avoid overly long lags, recover if system too slow.
This will recover better if the system took too long.  Also, fixes #6415
by never waiting too long.
2014-06-24 08:27:21 -07:00
Unknown W. Brackets
3ba78c865e Fix low-level atrac3/atrac3+ decoding.
Fixes #6400.
2014-06-24 01:18:00 -07:00
Unknown W. Brackets
412eee0bd9 Wake good pri threads immediately from timeouts. 2014-06-24 00:49:36 -07:00
Unknown W. Brackets
4626e63294 Wake good pri threads immediately from delays. 2014-06-24 00:45:38 -07:00
Unknown W. Brackets
610ada8721 Wake good pri threads immediately from io waits. 2014-06-24 00:45:26 -07:00
Unknown W. Brackets
8e80bd3928 Wake good pri threads immediately from vblank wait. 2014-06-24 00:45:08 -07:00
Unknown W. Brackets
bacae6106b Wake good pri threads immediately from ctrl waits. 2014-06-24 00:44:40 -07:00
Unknown W. Brackets
d8cff4509e Wake good pri threads immediately from audio. 2014-06-24 00:44:35 -07:00
Unknown W. Brackets
6c4a614205 Wake good pri threads immediately from HLE delays. 2014-06-24 00:44:02 -07:00
Unknown W. Brackets
118736ff75 Don't eat extra cycles when idling.
Rescheduling between threads takes about 3000 cycles, but that's not true
for both sides of e.g. a delay.

Fixes #6409 (assuming 60fps is what a PSP gets.)
2014-06-23 23:02:46 -07:00
Henrik Rydgard
ae09b521c3 Logging reductions 2014-06-23 20:05:12 +02:00
Unknown W. Brackets
ec94498342 When scanning or relocating, check replacements.
Just to make sure we don't wrongly detect the length or unresolve a var
wrong etc.
2014-06-23 08:18:56 -07:00
Henrik Rydgård
5436d2f935 Merge pull request #6403 from unknownbrackets/sched-cycles
Eat cycles when context switching and delaying
2014-06-23 08:34:28 +02:00
Unknown W. Brackets
17496330ce Don't wake a killed list in ge callback end.
Fixes #3198, some homebrew demos locking up.
2014-06-22 23:21:10 -07:00
Unknown W. Brackets
633120b895 Fix a crash on read from stdin.
Found in a homebrew demo.
2014-06-22 23:18:39 -07:00
Unknown W. Brackets
5e8716f9cc Adjust strlen() cycle approximation.
The hashed implementations take several cycles per character.
2014-06-22 23:18:06 -07:00
Unknown W. Brackets
c1e293fe7c Fix a warning on 32-bit that might be bad... 2014-06-22 22:17:48 -07:00
Unknown W. Brackets
392edb4f84 Eat some cycles when switching threads.
There's a cost and it seems to be at least this much.  Matters for
Wipeout Pure when callbacks are allowed to wait.
2014-06-22 22:17:47 -07:00
Unknown W. Brackets
e8803c4e9b Improve sceKernelDelayThread() timing.
A delay of 0 never reschedules, actually, unless there's a better priority
thread.  A greater delay depends on if a >= or similar check matches, but
generally is at least 200us.

It seems like this actually completes in at least another 10-20us.
2014-06-22 19:47:54 -07:00
Unknown W. Brackets
8851fc1685 Remove savedIdRegister/MIPS_CALL_ID.
We've never trusted it anyway, simpler without dealing with this stuff.
2014-06-22 11:29:47 -07:00
Henrik Rydgard
cefc0bc96f Play the game's SND0.AT3 when a game is selected in the menu and on the "game screen". 2014-06-22 17:02:04 +02:00
Henrik Rydgard
1d0cc3417c Audio stuff: Cleanup, delete dead code 2014-06-22 14:01:23 +02:00
Henrik Rydgard
2236b3a52b sceAtrac3 minor cleanup: Get rid of mutable globals, add another sanity check with reporting 2014-06-22 10:42:27 +02:00
Henrik Rydgård
b5435260b0 Merge pull request #6389 from unknownbrackets/intrman
Correct error codes and dup checks in inter registration
2014-06-22 08:54:40 +02:00
Unknown W. Brackets
3498b33033 Allow sub interrupts to be enabled before register.
Could've caused interrupts, primarily vblanks, not to run because we
implicitly disabled them on register.
2014-06-21 21:43:44 -07:00
Unknown W. Brackets
87ee0bc650 Return error codes in register/release subintr.
This checks for duplicate registrations and other thigns that could've
been causing wrong behavior.
2014-06-21 21:27:58 -07:00
sum2012
f3826bc608 Further add a codecType check 2014-06-22 06:49:02 +08:00
Henrik Rydgård
0fee05d945 Merge pull request #6369 from thedax/reschedule
sceDisplayGetVcount should apparently reschedule. Fixes #3234.
2014-06-21 21:15:53 +02:00
Unknown W. Brackets
de2a3834e0 Abuse esBuffer to track the vid/aud stream id. 2014-06-21 09:27:39 -07:00
Henrik Rydgård
42e28b0c75 Merge pull request #6381 from sum2012/sceAtrac
Add a codecType check in sceAtracSetHalfwayBufferAndGetID
2014-06-21 13:33:04 +02:00
sum2012
6fe74d938e Change to report 2014-06-21 08:00:16 +08:00
sum2012
846eda836f Add a codecType check in sceAtracSetHalfwayBufferAndGetID
Fix crash in #6363
2014-06-21 05:44:29 +08:00
Unknown W. Brackets
ae13d51cef Don't skip the first psmf frame when syncing audio.
Fixes #6374.
2014-06-20 09:07:18 -07:00
Unknown W. Brackets
9efbc2694b Add an invalidate all method to the jit. 2014-06-19 01:13:06 -07:00
Unknown W. Brackets
5f4a0d8174 Fix a few minor warnings. 2014-06-19 00:47:58 -07:00
The Dax
eb94587391 sceDisplayGetVcount should apparently reschedule. Fixes #3234. 2014-06-18 19:35:16 -04:00
Unknown W. Brackets
913914a4c1 Fix some type conversion warnings. 2014-06-15 10:01:54 -07:00
Henrik Rydgard
4e6baaf360 wasPaused int->bool 2014-06-15 00:03:55 +02:00
Henrik Rydgard
3b2fed472e Correct timing on resume, avoids small speed burst when resuming gameplay from pause 2014-06-14 23:56:16 +02: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
Henrik Rydgård
cb6aa5a708 Merge pull request #6305 from unknownbrackets/resched
Reschedule after many cases of eating cycles
2014-06-13 20:46:51 +02:00
Unknown W. Brackets
aa6355a9e5 Reschedule after many cases of eating cycles.
All of these eat enough cycles they could cause issues in a loop, and I'm
pretty sure they would reschedule.
2014-06-13 00:30:21 -07:00
Unknown W. Brackets
c29062de9f Add memory breakpoints on sceIo read/write. 2014-06-12 00:42:25 -07:00
Unknown W. Brackets
dd4b191003 Correct Gods Eater Burst tex download size.
Probably takes care of #6289, although it doesn't crash for me.
2014-06-10 22:59:08 -07:00
Sacha
c745072b55 Update Symbian to GCC 4.8.3 2014-06-11 03:10:50 +10:00
Sacha
37b7667038 Remove some unnecessary #ifdef's relating to Symbian. 2014-06-10 23:06:00 +10:00
Henrik Rydgard
d6b51d4dfa Reduce some excessive logging 2014-06-09 19:40:05 +02:00
Unknown W. Brackets
a926b19c03 Hook Tales of Phantasia X save pictures.
Maybe other games will use the same func even.  This makes save pictures
work correctly the first time.
2014-06-08 16:38:43 -07:00
Henrik Rydgard
a31194a877 Add some sanity checks when looking up syscalls.
This may avoid crashing the emu when it starts executing junk (still not good of course, heh).
2014-06-08 13:03:03 +02:00
sum2012
cfa0e752e1 Fix Replace_memcpy crash
Fix Replace_memcpy crash in #5496
2014-06-08 01:01:47 +08:00
Sacha
8ac1c17f74 Fix a warning. Update native (fix SDL joystick). Fixes #6241. 2014-06-08 00:56:57 +10:00
Unknown W. Brackets
90b30f8bfe Use module start func, not entry, if specified.
Fixes #5539, Ranshima Monogatari Rare Land Story.  Still logging in case
it causes a problem.
2014-06-07 06:28:23 -07:00
Unknown W. Brackets
a7b9ce205b Enable function replacements by default.
So things like Star Ocean work, and game memcpy()'s to GPU work.

This will make game start on mobile a bit slower, though.  And there could
still be bugs so leaving as an option, but seems pretty stable.  Didn't
realize it wasn't enabled by default.
2014-06-07 00:13:45 -07:00
Unknown W. Brackets
aa3a429a0b Avoid unaligned 32 bit reads.
They make Symbian do odd things.
2014-06-05 01:12:27 -07:00
Unknown W. Brackets
66d0cef0de Avoid calling select() with an error pointlessly.
It's just a spin loop unfortunately anyway.
2014-06-03 01:48:10 -07:00
Unknown W. Brackets
0bba5310b6 Fix lagsync with alternate speed set. 2014-06-03 01:36:20 -07:00
Unknown W. Brackets
39b1d97beb Make the lag sync adapt to minor variance. 2014-06-02 23:34:48 -07:00
Unknown W. Brackets
29f2519861 Add an experimental sync to keep real time sync.
May help input, audio, and network related lag problems.
2014-06-02 23:34:48 -07:00
Henrik Rydgård
71a6a4ba04 Merge pull request #6183 from sum2012/scemp4
Small improve in scemp4 part 2
2014-06-01 15:44:48 +02:00
Unknown W. Brackets
f6d4be1d49 Hook Star Ocean's function to upload stencil data.
Hurray, it seems to work properly.
2014-05-31 21:48:11 -07:00
Unknown W. Brackets
b603a71281 Fix Star Ocean movement problems due to memcpy.
It needs to handle overlap correctly, ugh.
2014-05-31 21:48:10 -07:00
Unknown W. Brackets
a09b738879 Fix exit replacement hooks. 2014-05-31 21:48:10 -07:00
Unknown W. Brackets
c142207a93 Fix a few warnings, mostly type comparisons. 2014-05-31 21:42:57 -07:00
sum2012
a711e3eadd Remove the hack 2014-06-01 05:09:14 +08:00
Unknown W. Brackets
1433b98c46 Clean up the framebuffer force downloads. 2014-05-31 10:03:03 -07:00
Unknown W. Brackets
b2dc92b942 Add a hook for Hexyz Force's "monoclome" thread.
This fixes missing graphics in some areas in GLES, due to direct framebuf
access.
2014-05-31 10:03:02 -07:00
Unknown W. Brackets
5dd8ebe2b4 Add a hook for Gods Eater Burst's swizzled copy. 2014-05-31 10:03:01 -07:00
Unknown W. Brackets
f489694515 Add the option to hook, rather than replace, funcs.
This can be useful for debugging or developing translations/game hacks,
and also gives us options when dealing with GLES incompatibilities.
2014-05-31 10:03:00 -07:00
sum2012
9f269c39d4 Fix space bug
VS2013 bad thing
2014-05-30 06:15:05 +08:00
sum2012
b308052077 Small improve in scemp4 part 2 2014-05-30 06:07:58 +08:00
Henrik Rydgård
770d0d7adb Merge pull request #6178 from unknownbrackets/audiocodec-fix
Cleanup sceAudiocodec some
2014-05-29 20:04:25 +02:00
Henrik Rydgård
018468d9e0 Merge pull request #6180 from sum2012/log
Remove sceUtilityLoadAvModule report
2014-05-29 20:03:26 +02:00
sum2012
38844ac0e7 Remove sceUtilityLoadAvModule report
Now no need
2014-05-29 23:36:36 +08:00
sum2012
bf0f0b87d6 Small improve scemp4 part 1 2014-05-29 23:33:17 +08:00
Unknown W. Brackets
4bb6709eb2 More cleanup in sceAudiocodec. 2014-05-29 08:19:26 -07:00
Unknown W. Brackets
0b59cc4c35 Use a std::map in sceAudiocodec. 2014-05-29 08:16:47 -07:00
Unknown W. Brackets
a09f1fd80f Clean up a leak in sceAudiocodec load state. 2014-05-29 08:11:00 -07:00
Unknown W. Brackets
77b5cb7629 Reset decodePos in lowlevel decode.
FFmpeg was smart enough to do this for us, but not when we loaded a
savestate.  This is because without a savestate, we returned an initial
small header packet of this size, which gave FFmpeg the idea that seeking
there might help.

But, since we're forcing the decode at a certain position the better thing
is to seek ourselves.
2014-05-29 00:38:20 -07:00
Unknown W. Brackets
f29233386c Initialize some variables. 2014-05-29 00:16:16 -07:00
Unknown W. Brackets
a229593105 Erp, forgot to amend, sorry. 2014-05-28 22:49:49 -07:00
Unknown W. Brackets
63bb52bc42 Use the correct size in sceAudioCodec savestates.
ARRAY_SIZE(ptr) ain't gonna work.  Fixes #6173, thanks Lioncash.
2014-05-28 22:45:51 -07:00
Henrik Rydgård
94810e2451 Merge pull request #6159 from sum2012/sceio
sceio:Remove fix Buzz Ultimate Music Quiz Crash Sporadically code
2014-05-27 17:44:00 +02:00
Unknown W. Brackets
0de41cd028 Don't savestate replacement funcs.
This makes it so we can reorder them as we like, which is nicer, and also
makes sure there won't be weird compatibility problems or etc.
2014-05-27 08:02:41 -07:00
Unknown W. Brackets
8dcc09c9e1 Use a separate func for gpu memset(). 2014-05-27 07:50:01 -07:00
sum2012
a24b1cf024 sceio:Remove fix Buzz Ultimate Music Quiz Crash Sporadically code
Now no need the code.
link #4497
2014-05-27 22:47:28 +08:00
Unknown W. Brackets
b73c575418 Support swizzled framebuffer downloads.
Used in God Eater 2 when showing the load save screen.
2014-05-27 01:17:09 -07:00
Unknown W. Brackets
64f6012dba Support memsets of framebuffers as uploads.
Technically should clear stencil too... maybe it'd be better to handle
separately.
2014-05-27 01:17:09 -07:00