Commit graph

200 commits

Author SHA1 Message Date
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
Diogo Franco (Kovensky)
2210b19244 Xinput input support
Picks the first Xinput device available, waits 100 frames between
retries when no devices are available.

Controls are hardcoded so every x360 controller button corresponds
to the PSP button in the same physical position. Input from right
stick and from analog triggers is ignored.

The Xinput code though is overriden by SampleControls' hardcoded
keyboard input. XinputDevice was tested to work with
samples/controller/basic when SampleControls is disabled.
2012-11-12 17:40:01 +00:00
Henrik Rydgård
5944981d9b Merge pull request #40 from unknownbrackets/master
Fix some things with the sceKernel semaphore funcs
2012-11-12 07:46:58 -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
Henrik Rydgård
c2cc41967d Merge pull request #39 from Orphis/tctest
TeamCity test report integration
2012-11-12 00:18:33 -08:00
Henrik Rydgård
00c9aa1278 Merge pull request #38 from Kovensky/wraps
Wrap some kernel functions
2012-11-12 00:17:57 -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
Florent Castelli
96c38926bc TeamCity test report integration
Using the flag --teamcity adds some control messages for TeamCity
which then report the test result properly (passed, failed, ignored).
2012-11-12 03:42:19 +01: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
Henrik Rydgård
59d623a0f2 Merge pull request #37 from unknownbrackets/master
Add a few minor wraps and asserts
2012-11-11 15:58:19 -08:00
Unknown W. Brackets
5e17fda840 Merge remote-tracking branch 'upstream/master' 2012-11-11 15:41:03 -08: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
Henrik Rydgard
fa57af9177 Update pspautotests 2012-11-12 00:11:07 +01: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
72ad8f5ca8 Actually, double-oops. 2012-11-11 21:32:54 +00:00
Henrik Rydgard
524208af44 Umm, oops. 2012-11-11 21:32:54 +00:00
Henrik Rydgard
e1cec5d3f4 Fix skinning bugs, optimize, re-enable a lighting optimization 2012-11-11 21:32:54 +00:00
Henrik Rydgard
09e7888cf9 Fix VFPU bugs thanks to new tests. 2012-11-11 21:32:53 +00:00
Florent Castelli
971c6a4bd6 Apply the world transform to the skinned vertices
Improves rendering of skinning demo.
The end of the tube is wrong and collapses on the origin.
2012-11-11 21:32:53 +00:00
Florent Castelli
460147cf02 Fix color components ordering of the lights 2012-11-11 21:32:53 +00:00
Henrik Rydgard
1eb11e974e More work on gentest, fix a VFPU bug it found comparing to real PSP! 2012-11-11 21:32:52 +00:00
Henrik Rydgard
7457a18669 Add script to generate .expected files using a real PSP and psplink 2012-11-11 21:32:52 +00:00
Sacha
dceca81a8e Blackberry: Update version to 0.2, update icon, simply build and package script 2012-11-11 21:32:52 +00:00
Henrik Rydgard
9bc7385502 Power test working 2012-11-11 19:32:27 +01:00
Henrik Rydgard
2603c44e46 Actually, double-oops. 2012-11-11 19:07:07 +01:00
Henrik Rydgard
6a350a4704 Umm, oops. 2012-11-11 19:03:48 +01:00
Henrik Rydgard
07e753da9f Fix skinning bugs, optimize, re-enable a lighting optimization 2012-11-11 19:00:44 +01:00
Henrik Rydgard
dfabd74020 Merge branch 'master' of github.com:hrydgard/ppsspp 2012-11-11 18:44:46 +01:00
Henrik Rydgard
8aa072161c Fix VFPU bugs thanks to new tests. 2012-11-11 18:44:20 +01:00
Henrik Rydgård
5f02c9ad36 Merge pull request #35 from Orphis/skinfix
Apply the world transform to the skinned vertices
2012-11-11 09:12:03 -08:00
Henrik Rydgård
878b746a21 Merge pull request #34 from Orphis/lightcolorfix
Fix color components ordering of the lights
2012-11-11 09:09:58 -08:00
Florent Castelli
d06b1ae347 Apply the world transform to the skinned vertices
Improves rendering of skinning demo.
The end of the tube is wrong and collapses on the origin.
2012-11-11 17:55:16 +01:00
Florent Castelli
e77cb6b319 Fix color components ordering of the lights 2012-11-11 17:27:39 +01:00