Commit Graph

3724 Commits

Author SHA1 Message Date
Henrik Rydgard
5a48578a12 Rewrite audio line output. Now deterministic (from the game's POV) and smoother. 2012-11-17 14:20:59 +01:00
Unknown W. Brackets
157858819b Additional semaphore fixes with updated tests. 2012-11-17 01:43:01 -08:00
Henrik Rydgård
509ae819ab Merge pull request #54 from unknownbrackets/sema-cleanup
Semaphore func cleanup
2012-11-16 02:33:09 -08:00
Unknown W. Brackets
2e9e61dfc6 CancelSema: adjust scheduling to match PSP. 2012-11-16 01:50:26 -08:00
Unknown W. Brackets
8517fbe761 PollSema: don't allow values <= 0. 2012-11-16 01:41:54 -08:00
Unknown W. Brackets
71e57043e8 SignalSema: throw an error on overflow.
This is what the PSP does.
2012-11-16 01:32:00 -08:00
Unknown W. Brackets
dd14450424 CreateSema: Truncate and validate like the PSP. 2012-11-16 01:26:04 -08:00
Unknown W. Brackets
0ab19c18e5 Wrap sceKernelCreateSema(). 2012-11-16 00:06:44 -08:00
Unknown W. Brackets
4191d40187 Add notes about PRIORITY attribute.
Not supported yet.
2012-11-15 23:55:23 -08:00
Henrik Rydgard
90654bcd0e VFPU fixes, misc 2012-11-15 10:15:40 +01:00
kev :)
d0fdd4c172 Make sceUtility test pass (assuming the last line is wrong)
It has to be more correct than before even if its still not 100%
2012-11-14 23:05:58 +00:00
kev :)
3764f48bee Make the directory test pass
The test for this might need to be extended to see what happens with
multiple sub folders and large files, and i do question the expected
size of '..'
2012-11-14 21:24:57 +00:00
kev :)
0753643dc4 More stubs
And one possible hack..
2012-11-14 18:52:06 +00:00
kev :)
0b1f2f59c4 A few more stubs
Stubbed out some missing inet functions used by a couple of games
2012-11-14 18:33:18 +00:00
kev :)
435c69196a This is used by a couple of games.
stubbed out to make them shutup.
2012-11-14 18:16:13 +00:00
Unknown W. Brackets
306274ffdf Fix iterator in sceKernelSignalSema().
I'm sure we dont' want to change s.
2012-11-14 07:42:21 -08:00
Unknown W. Brackets
5c69d6169f Use WriteStruct() in sceKernelReferSemaStatus(). 2012-11-14 00:13:17 -08:00
Henrik Rydgard
0019d88a44 Merge branch 'master' into mediaengine 2012-11-13 20:41:55 +01:00
Henrik Rydgard
059bb3c40c Buildfix, bugfix. Fixes issue 46. 2012-11-13 20:10:48 +01:00
Henrik Rydgard
8053c244b8 Implement large chunks of sceMpeg and scePsmf with JPSCP as a guide.
Not yet hooked up to FFMPEG and doesn't quite work yet.
2012-11-13 18:07:20 +01:00
Henrik Rydgard
aa5940c5d3 Merge branch 'master' into mediaengine 2012-11-12 23:33:37 +01:00
Henrik Rydgard
681ac65d5d More mpeg 2012-11-12 23:32:46 +01:00
Henrik Rydgard
1127c72124 some initial mediaengine work 2012-11-12 20:53:16 +01:00
Henrik Rydgård
e86f19452e Merge pull request #44 from tmaul/master
Default to english psp emulation
2012-11-12 11:00:16 -08:00
Henrik Rydgård
d7230a1482 Merge pull request #43 from unknownbrackets/master
Make threads/semaphores pass, fixing sceKernelStartThread
2012-11-12 10:59:25 -08:00
Diogo Franco (Kovensky)
7e7e9a0452 Add a class for keyboard input
Removes the windows-specific hack from sceCtrl
to read keyboard input and instead add a hack to
PPSSPPWindows.

The input mapping is still hardcoded and is the same
as it was in sceCtrl.

Add an std::list to WindowsHost that, curretly, contains
a hardcoded list of preferred `InputDevice`s. Devices
are tried in-order until one of them reports success.
Xinput is preferred over Keyboard. Keyboard always
returns success. Pointers are stored in the std::list
for polymorphism.

Change XinputDevice to report failure as soon as a
device can't be queried, instead of only a frame later.
2012-11-12 17:49:40 +00:00
kev :)
43b90527d4 Default to english
Default to english. Needs to be menu/config driven really...
2012-11-12 17:18:20 +00:00
Unknown W. Brackets
d1fd16ecba sceKernelStartThread(): skip argPtr for 0 args.
This makes threads/semaphores pass, so adding to passing list.
Depends on an update to pspautotests.
2012-11-12 08:16:16 -08:00
Unknown W. Brackets
f37dd7fefe Fix $v0 on wrong thread in semaphore funcs.
Need to RETURN() prior to switching threads or it will write to the
wrong thread, oops.
2012-11-12 07:24:40 -08:00
Unknown W. Brackets
a0cacc7eb9 Merge remote-tracking branch 'upstream/master' 2012-11-12 01:35:38 -08:00
Henrik Rydgård
93b13a2ac8 Merge pull request #41 from unknownbrackets/thread-fix1
Fix crash in sceKernelExitDeleteThread()
2012-11-12 00:21:33 -08:00
Unknown W. Brackets
808c7e9807 Fix crash in sceKernelExitDeleteThread().
0 means current thread, seen in Wild Arms XF.
Doesn't make the game run but at least it doesn't segfault.
2012-11-11 20:09:03 -08:00
Unknown W. Brackets
33559d23db sceKernelDeleteSema() not returning 0?
Seems to be a bug outside this func, adding a comment at least.
2012-11-11 19:03:37 -08:00
Unknown W. Brackets
b58032039b Cleanup sceKernel semaphore funcs.
Remove some duplication of code so it's cleaner.
2012-11-11 18:54:06 -08:00
Unknown W. Brackets
a69fd56573 Implement sceKernelCancelSema() based on jpcsp.
Don't have any tests/users, but this jpcsp's behavior seems sane.
2012-11-11 18:33:13 -08:00
Unknown W. Brackets
e7b6487c4e Wrap sceKernel DeleteSema and CancelSema.
Also fix copy/paste mistake from SignalSema func.
2012-11-11 18:30:13 -08:00
Unknown W. Brackets
70809bf1f5 Make sceKernelDeleteSema() resume waiting threads.
This makes threads/semaphores *almost* pass.
It's now failing from sceKernelStartThread() or something, though.
2012-11-11 18:10:33 -08:00
Unknown W. Brackets
deab1c21b7 Fix sceKernelSignalSema().
Handle numWaitThreads and currentCount more correctly.
Well, I'm not 100% sure it's totally right now but it matches the test.
2012-11-11 17:59:15 -08:00
Unknown W. Brackets
8e2fff97bf Wrap a few semaphore sceKernel* funcs. 2012-11-11 17:57:35 -08:00
Unknown W. Brackets
3acca0f941 Fix crash in sceKernelReferSemaStatus.
This was crashing threads/semaphores, and also PQ2 (and maybe other games.)
Note: threads/semaphores still not passing.
2012-11-11 17:05:44 -08:00
Diogo Franco (Kovensky)
d2a0fcc38e Wrappers for LoadExecForUser 2012-11-12 00:43:48 +00:00
Diogo Franco (Kovensky)
af74d30790 Wrappers for sceKernelEventFlag 2012-11-12 00:43:48 +00:00
Unknown W. Brackets
31fc4bf02a Wrap a few sceCtrl* funcs.
Also add an assert, seems like if nBufs = 0, could cause a bug.
2012-11-11 15:35:50 -08:00
Unknown W. Brackets
c455365bbe Merge remote-tracking branch 'origin/master' 2012-11-11 15:12:36 -08:00
Unknown W. Brackets
21bc86f669 Cleanup sceCtrlSetSamplingMode.
Use constants, assert expected param range, wrap.
2012-11-11 15:09:27 -08:00
Henrik Rydgard
4c1883e73f Some stubs, "NOP" out registerexitcallback, implement cancelwakeup 2012-11-12 00:04:57 +01:00
Unknown W. Brackets
cc58a9bd35 Wrap some of the sceUmd* HLE functions.
Intentionally skipped unimpl funcs.  Also skipped sceUmdCheckMedium
because docs online said it takes no param, but code says it does.
2012-11-11 14:47:28 -08:00
Henrik Rydgard
ce5afbc166 Merge branch 'master' of https://github.com/tmaul/ppsspp into tmaul-master
Conflicts:
	Core/HLE/scePower.cpp
	Core/MIPS/MIPSIntVFPU.cpp
	Core/MIPS/MIPSIntVFPU.h
	gentest.py
	test.py
2012-11-11 22:50:48 +01:00
Henrik Rydgard
0fb8c08af3 Test fixes and cleanups 2012-11-11 22:38:19 +01:00
kev :)
a2c024e454 Fix up secPower a bit
Removed PARAM stuff, made tests pass with some caveats in that I don't
understand what the return values are supposed to be based on the docs
and fix a small issue with sceImpose that I created with the last merge
2012-11-11 21:32:54 +00:00
Henrik Rydgard
9bc7385502 Power test working 2012-11-11 19:32:27 +01:00
kev :)
b9ff4295e7 Make RTC tests pass 2012-11-11 00:33:16 +00:00
kev :)
d67e473e81 Small clean up on sceGeDrawSync
Doesnt fix anything, obviously :)
2012-11-10 23:08:46 +00:00
kev :)
1591e72919 Merge remote-tracking branch 'upstream/master'
Conflicts:
	Core/FileSystems/ISOFileSystem.cpp
2012-11-10 23:04:51 +00:00
kev :)
ad80a78904 Add some impose commands 2012-11-10 23:04:10 +00:00
Henrik Rydgard
343b9435b9 A few minor fixes + buildfix 2012-11-10 23:44:14 +01:00
Henrik Rydgård
bbf84229bc Merge pull request #30 from artart78/master
Message Pipes (+ test.py fixes for Linux)
2012-11-10 14:24:48 -08:00
Arthur Blot
e45ce3af96 Implemented message pipes (may have issues) 2012-11-10 23:17:15 +01:00
gigaherz
d66f315902 Add a null check to the filename in sceKernelLoadModule. 2012-11-10 12:16:23 +01:00
Henrik Rydgard
387552f564 Misc fixes (accept .prx, work on power callbacks, bugs) 2012-11-10 10:15:11 +01:00
Henrik Rydgard
06d7b5d00c Implement sceCtrlReadLatch, fixes controls in a couple of games. 2012-11-09 19:04:57 +01:00
Henrik Rydgard
a49e1ba5b5 sceDisplayWaitForVblank shouldn't call sceDisplayWaitForVblankStart... 2012-11-09 18:03:52 +01:00
Henrik Rydgard
b43dfebb10 Fixes to lighting, display list base pointer, misc 2012-11-09 17:51:45 +01:00
Henrik Rydgard
0ff792fce5 Refix ge interrupts, make headless printf log messages 2012-11-09 13:40:09 +01:00
Henrik Rydgard
d671afdef4 sceImpose 2012-11-09 12:31:58 +01:00
Henrik Rydgard
94f5de1ac0 Test suite actually runs properly now 2012-11-09 11:03:01 +01:00
Henrik Rydgard
1b90a8b327 Another memstick ioctl, minor fixes 2012-11-09 10:01:54 +01:00
Henrik Rydgard
91cb6197e8 Merge branch 'master' of github.com:hrydgard/ppsspp 2012-11-09 00:04:19 +01:00
Henrik Rydgard
b24511ac41 Hackery to free up RAM (sceKernelMaxFreeMemSize lies a bit more, kill root stack) 2012-11-09 00:03:46 +01:00
Henrik Rydgård
85dda99e56 Merge pull request #25 from artart78/master
Texture loading (+ small issue fix for Mbxes)
2012-11-08 14:29:49 -08:00
Arthur Blot
c6ec09cf86 Resume waiting threads when Mbx is destroyed 2012-11-08 21:49:56 +01:00
Henrik Rydgard
040b6199b7 missing include 2012-11-08 18:02:33 +01:00
Henrik Rydgard
79a433e05d Merge branch 'master' of github.com:hrydgard/ppsspp 2012-11-08 16:28:59 +01:00
Henrik Rydgard
259b169bbc Implement a few more little things 2012-11-08 16:28:45 +01:00
Arthur Blot
35c7b411aa Fixed value returning for MBXes 2012-11-08 16:24:06 +01:00
Arthur Blot
b96d86ab7f Implemented MBXes 2012-11-08 14:24:51 +01:00
Henrik Rydgard
caacaf6744 Just a few small things 2012-11-07 20:59:56 +01:00
Henrik Rydgard
117256e07b Implement various hle stuff.. 2012-11-07 19:10:52 +01:00
Henrik Rydgard
a6a6453c60 Add custom "grain" for block allocator. Set the big block allocs to grain 256. 2012-11-07 17:35:22 +01:00
Henrik Rydgard
3ed790e6a3 Interrupts should not be triggered if disabled 2012-11-07 17:01:57 +01:00
Henrik Rydgard
f463a5a679 Fix dir listings for relative paths 2012-11-07 16:54:14 +01:00
Henrik Rydgard
baa11aede8 Zero terminate the filename passed to the root thread 2012-11-07 16:45:21 +01:00
Henrik Rydgard
1391d83afd Never do RETURN() after blocking (Wait etc), as it will zero out a register in the wrong thread. 2012-11-07 16:05:39 +01:00
Henrik Rydgard
aea0580297 More reworking of Callbacks, plus some other little fixes. 2012-11-07 15:44:48 +01:00
Henrik Rydgard
cf098dfd67 UMD callbacks, a couple of NIDs 2012-11-07 15:44:13 +01:00
Henrik Rydgard
00fc7754c6 CMakeLists fix, rebooting fix 2012-11-06 22:04:00 +01:00
Henrik Rydgard
83fb5e96de Logging, stubs and fixes 2012-11-06 20:56:19 +01: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
aca35fc96c More fixes and logging improvements 2012-11-06 18:56:56 +01:00
Henrik Rydgard
8a082f91cc Ge Callbacks seem to be working now. 2012-11-06 18:14:09 +01:00
Henrik Rydgard
714beabe2e Add some new imports 2012-11-06 17:05:51 +01:00
Henrik Rydgard
85d5cfd8c4 Add more proper "Null" GPU 2012-11-06 17:05:27 +01:00
Henrik Rydgard
9747b0bfd7 Cleaner emulator: logging 2012-11-06 16:37:31 +01:00
Henrik Rydgard
28879934d6 Add some missing HLE functions, fix loading unencrypted EBOOT.BIN 2012-11-06 16:20:13 +01:00
Henrik Rydgard
48bc1afe26 Add vcmp ES condition code, uncached mirror of scratchpad 2012-11-06 16:01:41 +01:00
Henrik Rydgard
c61d10363a Rewrite callback handling, part 1. All sorts of other fixes too. 2012-11-06 15:46:46 +01:00
Arthur Blot
6a1af73b37 Better module blacklisting, export fix 2012-11-05 18:03:02 +01:00
Arthur Blot
d0542e3531 Fixed a few issues related to encrypted PRXes 2012-11-05 16:56:40 +01:00
Henrik Rydgard
ac910d7e75 Fix Windows and Android builds. 2012-11-05 15:42:21 +01:00
Arthur Blot
5b5618d32d Added ~PSP decryption system using kirk-engine 2012-11-05 14:59:38 +01:00
Henrik Rydgard
ddfbd18370 Warning fixes 2012-11-05 14:38:55 +01:00
Henrik Rydgard
b96859828f Merge branch 'master' of github.com:hrydgard/ppsspp 2012-11-05 14:36:39 +01:00
Henrik Rydgard
e775bc385f Add some logging to sceIoDevCtl 2012-11-05 14:36:27 +01:00
Henrik Rydgård
c39d9a8397 Merge pull request #10 from xsacha/master
Blackberry 10 port (WIP)
2012-11-05 05:35:02 -08:00
Henrik Rydgard
4cd99b527a Some work on FPL pools 2012-11-05 14:16:41 +01:00
Sacha
41f5abab31 PPSSPP ported to Blackberry10
Now builds on Playbook and Dev Alpha
Make emulator more compatible with other OS (case sensitivity, defines, includes)
Uses Android's code paths and backend
2012-11-05 23:09:49 +10:00
Henrik Rydgard
0f04d108de Sanity checks and cleanup 2012-11-05 13:36:12 +01:00
Henrik Rydgard
6f85f02e25 Module loading fixes - proper module blacklisting, correct some error codes 2012-11-05 12:02:09 +01:00
Henrik Rydgard
8f751efe4d Don't load modules that we have HLE implementations of. 2012-11-05 10:25:28 +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
Arthur Blot
6f391515a6 Redid some things about callbacks, and made easy bugfixes 2012-11-04 17:32:55 +01:00
Henrik Rydgård
1ea930e8c8 code style fixing, remove unused field 2012-11-04 15:44:53 +01:00
Arthur Blot
133e1394f8 Merge remote-tracking branch 'upstream/master' 2012-11-04 15:09:03 +01:00
Arthur Blot
a00b1855cb Better wrapper system, and fixed warnings 2012-11-04 15:08:23 +01:00
Henrik Rydgård
b6b7ac51b3 Allow specifying a range when allocating UIDs, default to [16, inf] 2012-11-04 13:28:52 +01:00
Henrik Rydgård
794dd9567b Warning fixes 2012-11-04 13:27:11 +01:00
Henrik Rydgård
4ac0f63c42 Reindent sceKernel 2012-11-04 12:24:10 +01:00
Henrik Rydgård
baebaaddf9 Respect the IgnoreBadMemAccess ini option (exit on bad access if set).
Fix ini save/load on SDL build.
2012-11-04 11:54:45 +01:00
MrOrdinaire
1ab9943643 fix missing #include's and missing CMake linking directives 2012-11-03 10:33:24 +08:00
Henrik Rydgard
4f7ad15758 Add snapshot of the whole source code. 2012-11-01 16:19:01 +01:00