Unknown W. Brackets
7807598690
Mutex around PBP file access.
...
There's some thread safety issue in there, this makes it so we can read
thumbnails without crashing sometimes - fixes #7330 .
2015-12-20 09:35:50 -08:00
Unknown W. Brackets
edf3bf4a8e
Silence some unused result warnings.
2015-12-19 19:58:32 -08:00
Unknown W. Brackets
95abf332d1
Disable ISO RAM cache if out of memory.
...
Better to fail to preload than to crash.
2015-12-19 15:29:34 -08:00
Unknown W. Brackets
dd5c91108c
Use a background thread to load ISO into RAM.
...
This way we don't get slow startup. This will also cache the CSO data,
for example, rather than the raw data, using up less RAM. It might even
be reasonable to enable on 32-bit.
2015-12-19 15:23:25 -08:00
Henrik Rydgård
a2e09eada7
Merge pull request #8216 from unknownbrackets/sas-thread
...
Move SAS mixing to a thread
2015-12-06 18:59:09 +01:00
Unknown W. Brackets
f759a2a3fd
Sas: Sync result when mix calling thread returns.
2015-11-25 18:44:43 -08:00
Unknown W. Brackets
546590106f
Sas: Fail to mix when dispatch disabled.
2015-11-25 18:44:42 -08:00
Unknown W. Brackets
23441d12fb
Sas: Estimate time taken for mixing.
...
Tests seem to show it's not affected by mhz.
2015-11-25 18:44:34 -08:00
Unknown W. Brackets
75290cfd56
Sas: Enable SAS thread on multicore only.
2015-11-25 18:44:33 -08:00
Unknown W. Brackets
5a6c8b513c
Sas: Drain thread before reading/writing SAS state.
...
This should be the safest option, but I'm pretty sure some operations give
a BUSY operation or have different behavior, actually.
2015-11-25 18:44:32 -08:00
Unknown W. Brackets
fc8acc781e
Sas: Add config for SAS thread.
2015-11-25 18:44:31 -08:00
Unknown W. Brackets
0394319e89
Sas: Drain thread on savestate.
2015-11-25 18:44:30 -08:00
Unknown W. Brackets
6290ac6cbd
Sas: Process SAS on a separate thread.
...
Remaining issues:
* Need a config setting.
* Locking for voices / config?
* Locking for atrac interop?
2015-11-25 18:44:30 -08:00
Unknown W. Brackets
7bfe100b0f
Fix some unused variable warnings.
...
The CheckAlpha one looks like it will matter.
2015-11-25 16:11:53 -08:00
Henrik Rydgard
9825dad340
Zero deleted objects in the kernel object pool
...
Just doing this to narrow down the possible causes of our crashes in WaitSema/SignalSema that I can't reproduce and only have Android auto-reports of... The crash comments do mention the GTA games though.
2015-11-25 14:24:32 +01:00
Henrik Rydgard
06eee7bc1b
Oops, fix #8234
2015-11-25 14:23:39 +01:00
Henrik Rydgard
7dd631b7f2
Some code reformatting of the kernel object pool
...
Also deletes an unused [] operator
2015-11-25 13:00:29 +01:00
Henrik Rydgard
ee4261cf5c
Attempt to address some auto-reported crashes on Android
...
Still confused about the SignalSema/WaitSema ones.. they are still getting reported at high frequency
2015-11-25 12:05:32 +01:00
Unknown W. Brackets
723a2c98af
Minor warning fix.
2015-11-18 22:03:35 -08:00
Unknown W. Brackets
0264422b8d
Add a bit more error detection to the disk cache.
2015-11-18 21:56:07 -08:00
Unknown W. Brackets
475964133c
Make disk cache size a bit more flexible.
...
This way it will shrink to allow a few games to be cached simultaneously.
2015-11-18 21:56:06 -08:00
Unknown W. Brackets
9bec81b9c5
Enable the disk cache for URLs by default.
2015-11-18 21:56:05 -08:00
Unknown W. Brackets
f2cefebcb6
Garbage collect files when low on free cache space.
2015-11-18 21:56:04 -08:00
Unknown W. Brackets
df6cbafe0f
Measure free disk space to size block count.
2015-11-18 21:56:03 -08:00
Unknown W. Brackets
f0ec6fab4d
Reorganize disk cache to allow for dynamic size.
2015-11-18 21:56:02 -08:00
Henrik Rydgård
5b21c1aa39
Merge pull request #8174 from hrydgard/remove-option-depthrangehack
...
Remove the depth range hack option, turning it into an ugly game specific compatibility hack.
2015-11-15 23:05:20 +01:00
Henrik Rydgard
4b360a571c
Remove the depth range hack option, turning it into an ugly game specific compatibility hack.
...
I hate doing this, but it's not really better off as an option.
See #8171
2015-11-15 23:00:25 +01:00
Henrik Rydgård
54535ec72a
Merge pull request #8215 from unknownbrackets/savedata
...
Correct utilityData size calculation for "sizes" savedata call
2015-11-15 22:02:05 +01:00
Unknown W. Brackets
8c337850fc
Disallow thread termination in interrupts.
...
But only for certain SDK versions, as per testing.
2015-11-15 11:38:59 -08:00
Unknown W. Brackets
b71b1bbff9
Initially count the dir for save info size.
...
Should help #6068 , verified by the sizes test and JpcspTrace results.
2015-11-15 10:29:13 -08:00
Henrik Rydgård
99b7741b96
Merge pull request #8194 from unknownbrackets/atrac-remaining
...
Atrac: Correct outputs of sceAtracGetSoundSample()
2015-11-09 18:46:46 +01:00
Unknown W. Brackets
c22c181148
Sas: Automatically unpause voice on unset ATRAC3.
...
Thie fixes voices in Sol Trigger after skipping a cutscene, and matches
tests.
2015-11-09 08:25:35 -08:00
Unknown W. Brackets
5374e6a8fc
Sas: Add validation for ATRAC3 voices.
2015-11-09 08:25:28 -08:00
Unknown W. Brackets
c1d59f263a
Atrac: Ignore the loopNum value for SAS streams.
...
It seems like this is ignored, and games overwrite it with the voice
number and expect it not to change.
2015-11-09 08:23:45 -08:00
Unknown W. Brackets
21fd209f0e
Atrac: Correct outputs of sceAtracGetSoundSample().
...
Without these being correct (especially without loopEnd vs. endSample
being correct), Toukiden Kiwami doesn't play background music.
2015-11-08 19:55:28 -08:00
Unknown W. Brackets
09f77509d9
Sas: Reduce ECHO effect repeat level.
...
Previously, it sounded horrible in Sol Trigger - can be observed in
tutorial boxes when going into battle, for example, and also several other
effects. Halving this value sounds a lot more correct.
It's not clear what value exactly is correct.
2015-11-08 12:25:30 -08:00
Unknown W. Brackets
a3f7598020
Atrac: Use fileoffset for curOff context value.
...
This doesn't match my tests so far, but Sol Trigger works correctly this
way. Since this value is primarily only used for SAS, changing it back
for now until more thoroughly testing SAS makes sense.
2015-11-08 12:24:30 -08:00
Unknown W. Brackets
6b413a808f
Atrac: Handle SAS end the same way as other types.
...
It makes sense to match, and this sounds right in Sol Trigger. Haven't
tested in detail yet, but it should prevent cutting off sounds.
2015-11-08 12:23:32 -08:00
Unknown W. Brackets
ac524eee1b
Atrac: Also read loop count from context RAM.
...
Observed the Sol Trigger demo's library writing values here, although in
the cases I saw it wasn't changing it from 0.
2015-11-08 12:22:12 -08:00
Unknown W. Brackets
a0604c6de3
Atrac: DRY a tiny bit of the code down.
2015-11-08 09:04:11 -08:00
Unknown W. Brackets
28a957694a
Atrac: Apply second FACT as loop offset.
...
It seems like, when these values are different, the difference indicates
some kind of delta in other sample values?
Mostly trying to match values coming out of firmware structs here.
Fixes music looping in Kurohyo 2.
2015-11-08 08:26:41 -08:00
Unknown W. Brackets
27043b5fa5
Atrac: Do not output remain on ending decode.
...
It's not supposed to output 0, or -1, or anything. It leaves the original
value in place. This is probably why some games "liked" different values.
2015-11-08 08:20:09 -08:00
Unknown W. Brackets
9da62c1efc
Atrac: Use end codes for remaining when streaming.
2015-11-07 23:30:09 -08:00
Unknown W. Brackets
959887d407
Atrac: Correct remaining frames return value.
...
Streaming buffers still not correct in some cases, primarily looping.
2015-11-07 23:30:09 -08:00
Unknown W. Brackets
e28fa3c426
Atrac: Correct transition to fully loaded.
...
Normally it won't go over of course, oops.
2015-11-07 23:30:05 -08:00
Unknown W. Brackets
61e530df91
Atrac: Check more buffer states in GetRemainFrame.
2015-11-07 23:30:04 -08:00
Unknown W. Brackets
a932b0858c
Atrac: Make sure NO_DATA is always set.
...
This way we can move away from data_buf, which eventually we'll stop using
entirely, in preference for PSP RAM.
2015-11-07 23:29:59 -08:00
Unknown W. Brackets
3f3700cb45
Atrac: Allow games to update buffer state.
...
Because they can and do. This primarily only happens with low level and
SAS streams, I think.
2015-11-07 23:29:59 -08:00
Unknown W. Brackets
91de8e46c1
Atrac: Fix an internal typo.
2015-11-07 23:29:58 -08:00
Unknown W. Brackets
26a81f5179
Atrac: Simplify USE_FFMPEG checks.
...
Maybe we should just remove the option, but this way the behavior is a lot
more similar.
2015-11-07 23:29:58 -08:00