Unknown W. Brackets
fa42426d21
Clamp the final sample count during decode.
...
Some games depend on / expect this, or else they'll let important data get
overwritten.
2014-09-23 11:33:20 -07:00
Unknown W. Brackets
68f4a1e7f7
Return the correct next sample at the beginning.
2014-09-23 11:33:20 -07:00
Unknown W. Brackets
0aa7247fea
Fix seeking in atrac after the start.
...
Not sure the very start is right though, arg.
2014-09-23 11:33:19 -07:00
Unknown W. Brackets
4702ae0e41
Add breakpoints to most sceAtrac mem access.
2014-09-23 11:33:18 -07:00
Unknown W. Brackets
6b6bf3f8e6
Correct the dataOff member of atrac context.
2014-09-23 11:33:18 -07:00
Unknown W. Brackets
ac1fcdb269
Skip samples in the first chunk of atrac output.
...
This seems to be what the PSP actually does, although not sure. The first
result is always smaller by this amount (numerous atrac files tested.)
2014-09-23 11:32:11 -07:00
Unknown W. Brackets
70705d4a9d
Remove incorrect atrac decode ptr nullcheck.
...
Already shown in decode test to be valid.
2014-09-23 08:32:09 -07:00
daniel229
d452d02aba
Update replace function for Toaru Majutsu to Kagaku no Ensemble.
2014-09-21 10:58:56 +08:00
daniel229
a657da91c3
Replace download frame in Toaru Majutsu to Kagaku no Ensemble
2014-09-18 15:37:12 +08:00
daniel229
48b774d143
Replace download frame in Rezel Cross
2014-09-18 15:29:59 +08:00
daniel229
2dd3ab6c20
Replace frame download in suikoden1&2
2014-09-15 00:19:22 +08:00
Henrik Rydgard
f84ebf6bff
sprintf->snprintf, fix some too short buffers
2014-09-14 00:14:11 +02:00
Henrik Rydgard
02a89306d1
Warning fixes, sprintf->snprintf
2014-09-13 23:51:07 +02:00
Unknown W. Brackets
a892779f89
Merge pull request #6880 from daniel229/func_replace_sakurasou
...
Replace frame download in Sakurasou No Pet Na Kanojo
Conflicts:
Core/HLE/ReplaceTables.cpp
2014-09-12 22:28:27 -07:00
daniel229
5f4a95cdd5
Update as unknown's suggestion
2014-09-13 10:21:00 +08:00
Unknown W. Brackets
4bad83b12b
Move a couple funcs outside of loops.
...
Will cut down on the performance hit.
2014-09-11 22:56:53 -07:00
daniel229
7c1d4234ab
Replace frame download in Sakurasou No Pet Na Kanojo
2014-09-11 15:32:07 +08:00
daniel229
22fa431f89
Replace frame download in Ore no Imouto ga Konnani Kawaii Wake ga Nai
2014-09-11 14:34:17 +08:00
daniel229
81ec625d0a
Update the hook for Kirameki School Life SP
2014-09-11 12:01:58 +08:00
daniel229
e8efab6d21
Change function name
2014-09-11 00:47:06 +08:00
daniel229
7f6f52a904
Fixes saveicons in Kirameki School Life SP.
2014-09-11 00:18:59 +08:00
daniel229
b1d9461779
Replace frame download in Narisokonai Eiyuutan
2014-09-09 14:33:15 +08:00
Unknown W. Brackets
420eb1bed3
Replace frame download in SD Gundam G Generation.
2014-09-08 22:44:27 -07:00
Unknown W. Brackets
ee6960ff7a
Hook the saveicon creation func in Growlanser IV.
2014-09-08 19:10:46 -07:00
Unknown W. Brackets
cddc289675
Use fixed dates for rtc adjusted and reincarnated.
...
This may be safer in case a game thinks funny business is going on if the
user changed the clock very recently, which wouldn't be the case on a
real PSP.
2014-09-05 09:34:09 -07:00
Unknown W. Brackets
1e31fd54eb
Implement rtc date formatting funcs.
2014-09-05 09:13:33 -07:00
Unknown W. Brackets
0180d18449
Correct sceRtcGetDayOfWeek() for odd years.
2014-09-05 09:13:08 -07:00
Andrew Church
6afa948d06
s32 -> int because it doesn't need to explicitly be 32 bits.
2014-09-05 00:31:25 +09:00
Andrew Church
0512a17654
Read lw offset as a signed value.
2014-09-05 00:25:48 +09:00
Andrew Church
230bbad1c6
Read the offset for the framebuffer index from the instruction stream
...
instead of using a literal constant, so the hook works for other games
using the same function but a different offset (e.g. Zero no Kiseki).
Also remove the memcpy() since the original function will do it anyway
(and may do it differently if other games call the function with
different arguments).
2014-09-04 23:44:32 +09:00
Andrew Church
33264a6b8f
Hook Brandish frame capture for menu fadeout and save screenshots.
2014-09-04 17:36:56 +09:00
Henrik Rydgård
8b67f427b0
Merge pull request #6826 from thedax/hle-stub
...
Add a non-functional stub for sceNetResolverInit.
2014-09-02 22:42:15 +02:00
The Dax
c2afa8f221
Add a non-functional stub for sceNetResolverInit.
...
Lets a Quake II homebrew port by CROW_BAR boot again.
2014-09-02 15:40:42 -04:00
Henrik Rydgård
b2f5efaa50
Merge pull request #6822 from unknownbrackets/thread-funcs
...
Improve some timing / thread funcs
2014-09-02 09:49:46 +02:00
Unknown W. Brackets
c9df66a450
Initialize the VFPU revision from a PSP-3000 value.
2014-09-01 23:16:50 -07:00
Unknown W. Brackets
d637de8b4c
Eat some cycles when signaling semaphores.
...
Seems to match tests.
2014-09-01 21:12:56 -07:00
Unknown W. Brackets
2923800217
Eat some cycles when starting a thread.
...
Seems to improve a test a bit, based on tests.
2014-09-01 21:12:13 -07:00
Unknown W. Brackets
84231c0188
Eat some cycles when canceling/deleting fpls.
...
Improves tests measuing timeouts remaining after delete.
2014-09-01 21:11:41 -07:00
Unknown W. Brackets
c5b15cc9fc
Adjust semaphore timing slightly.
...
This matches tests a bit better.
2014-09-01 20:03:58 -07:00
Unknown W. Brackets
6599430c04
Improve some timing in msgpipes.
...
Probably not super important, but makes tests happier.
Also, when unscheduling an event, return the current time left, including
already spent time since last Advance.
2014-09-01 20:03:58 -07:00
Unknown W. Brackets
a42a2864a6
Protect against vtimers scheduled in past.
2014-09-01 20:03:57 -07:00
Unknown W. Brackets
f78712ec3a
Simplify alarm timing.
...
This is from when it seemed like sceKernelSetAlarm() was by cycles.
Corrects handling of large timer / sysclock params.
2014-09-01 20:03:57 -07:00
Unknown W. Brackets
2cad35ad59
Put a 250us minimum on all vtimer scheduling.
2014-09-01 20:03:56 -07:00
Unknown W. Brackets
4e9f54a400
Require 250us lead time to start a vtimer.
...
Matches tests, improves the threads/vtimers/delete test.
2014-09-01 20:03:56 -07:00
Unknown W. Brackets
baf465500a
Fix a bad iterator dereference in sceMpeg.
...
Though not sure it should actually reach here, let's at least not crash.
2014-08-31 21:15:04 -07:00
sum2012
06fae5bcbc
Add a "no loop information" log
2014-09-01 04:47:12 +08:00
sum2012
55cb292bad
Correct sceKernelSelfStopUnloadModule 's name and logging
2014-08-29 20:36:21 +08:00
sum2012
26b25052c2
Fix sceKernelSelfStopUnloadModule parameters
...
According to http://code.google.com/p/jpcsp/source/detail?r=3597
2014-08-29 20:31:25 +08:00
Henrik Rydgard
1d7642fa48
Remove most mentions of the "_XBOX" define
2014-08-24 14:21:35 +02:00
Henrik Rydgard
0f973a3276
Get it running on Android again
2014-08-23 09:48:08 +02:00
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