|
|
Search
|
|||||||
| Home | Register | Downloads | FAQ | Members List | Calendar | Arcade | Mark Forums Read |
![]() |
|
|
LinkBack | Thread Tools | Display Modes |
|
|
#21 (permalink) |
|
Plugin author
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Join Date: Apr 2006
Location: Perdition
Posts: 588
|
Hmm...That's really odd. It could be I'm just being way too sensitive with the sticks. Not sure why you can't set the d-pad. I assume you've tried the d-pad both as a button and as an axis? Here's another dll with the binding sensitivity fiddled with slightly. See if it helps (Probably won't). If not, generate a debug file with the newly added button and post that (The debug file will appear in the PCSX2 directory). Edit: When you have one axis bound and then bind another, does the axis description display the correct axis name? Also, does the d-pad only send 1 bit of information per axis? (That is, ignoring horizontal movement, you're either moving up, down, or not moving vertically. No half speed, etc. ok...that's more than one bit) <Attachment superseded> Last edited by ChickenLiver; April 15th, 2007 at 21:50.. |
|
|
|
| Advertisement | [Remove Advertisement] | ||
|
|
|
|
#22 (permalink) |
|
Windows 7 x64
![]() ![]() ![]() ![]() ![]() Join Date: Jul 2002
Location: Bay Area, California
Posts: 1,095
|
I tried the pad in analog and digital mode. In both modes the sticks and d-pad are not recognized by the plugin. Here's the relative part of the debug file. --- Device 2: DX Saitek P990 Dual Analog Pad Abs Axis 0: Y Axis Abs Axis 4: X Axis Abs Axis 8: Z Axis Abs Axis 12: Z Rotation POV 16: Hat Switch Button 20: Button 0 Button 21: Button 1 Button 22: Button 2 Button 23: Button 3 Button 24: Button 4 Button 25: Button 5 Button 26: Button 6 Button 27: Button 7 Button 28: Button 8 Button 29: Button 9 Button 30: Button 10 Button 31: Button 11 Button 32: Button 12 Button 33: Button 13 --- *HERE* is a screenshot of the setup that resulted in that file. If I set an axis with "Vert Axis" or "Horiz Axis" it has a Button/Axis name of "Object 275" and does show the proper control (ie. L-Stick Vert for Vert Axis left stick). It will overwrite with any new axis I attempt to define.
__________________
-SSZ |
|
|
|
|
|
#23 (permalink) |
|
Plugin author
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Join Date: Apr 2006
Location: Perdition
Posts: 588
|
Hmm...Looks like you're running into two bugs. One with my handling of POV controls (The d-pad) and one with my axis code. Skimming over the code, I can't find an obvious cause of either issue. I'll spend more time on it later. That 275, in particular, is really odd. Do any of your other listed devices have an object numbered 275 (The number before the colon)? I may have to make a special debug version or two to figure this out. Wish I had a similar device to test on. |
|
|
|
|
|
#24 (permalink) |
|
Windows 7 x64
![]() ![]() ![]() ![]() ![]() Join Date: Jul 2002
Location: Bay Area, California
Posts: 1,095
|
No the Object 275 is only for the axis when I try to set it. Every other button except the d-pad seems to properly map. I only intend to use gamepad so I have not set any keys or mouse things. If it helps any, I tried this on my other PC, and that PC is a completely different architecture (laptop vs. desktop), a different OS (Vista x64 vs. XP64) using a different controller (logitech dual action) and I got *identical* results.
__________________
-SSZ Last edited by S.SubZero; April 14th, 2007 at 22:50.. Reason: Automerged Doublepost |
|
|
|
|
|
#25 (permalink) |
|
Plugin author
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Join Date: Apr 2006
Location: Perdition
Posts: 588
|
I tried simulating what was going on, but everything was behaving correctly, so that means the issue is probably with my direct input code, as opposed to my interface code. Here's a version that generates a binary file whenever you bind an axis. The binary file just contains a binary list of objects for the relevant device and a copy of the state of all buttons at the moment of binding. It also outputs some data when updating the list of bound controls. Replace your dll, delete/remove/rename LiliPad.ini so I don't have to navigate through the output from loading your button bindings, and try binding analog axes twice. Use different physical axes on your pad each time. Then try binding the d-pad, and post the resulting debug.bin file. For consistency, use the Saitek controller. Also, when you try and bind the d-pad, does it recognize any axis as being active? That is, if you try and bind the d-pad, then move an analog axis around, does it (try to) bind the analog axis or not? If it doesn't even recognize the d-pad as moving, then when you try and bind the d-pad hold the d-pad down in any direction, and then move an analog axis, so output is added to the debug file. <Attachment superseded> Last edited by ChickenLiver; April 15th, 2007 at 21:51.. |
|
|
|
|
|
#26 (permalink) |
|
Windows 7 x64
![]() ![]() ![]() ![]() ![]() Join Date: Jul 2002
Location: Bay Area, California
Posts: 1,095
|
*HERE* is the bin file. When I try to bind any button on the d-pad, it ignores the input. If I try to bind the d-pad's vert or horiz axes buttons it binds, but again it will only bind one at a time. If I try to bind any other axis on any other part of the controller it overwrites the current one. If I try to bind either the d-pad or either analog sticks' specific directions, the debug.bin file does not change.
__________________
-SSZ |
|
|
|
|
|
#27 (permalink) |
|
Plugin author
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Join Date: Apr 2006
Location: Perdition
Posts: 588
|
Ok...I found at least one problem, thanks to that file. Not only was I being too sensitive, I was being *way* too sensitive. When you were binding a single axis I detected movement on all 4 axes beyond my threshold (One was 1000 times higher, and the others merely 4 times higher), so I was always just taking the first axis. See if this works. It still generates the debug.bin file, as I might need one for your d-pad or if my fix doesn't work. <Attachment outdated> Last edited by ChickenLiver; April 20th, 2007 at 23:50.. |
|
|
|
|
|
#28 (permalink) | |
|
Registered User
Join Date: Apr 2007
Location: UK
Posts: 25
|
Quote:
Hope S.SubZero gets more luck out of it. |
|
|
|
|
|
|
#30 (permalink) |
|
Windows 7 x64
![]() ![]() ![]() ![]() ![]() Join Date: Jul 2002
Location: Bay Area, California
Posts: 1,095
|
I can now get the axis of the analog sticks to map. Sort of. The vertical only seems to accept up, and not down. Left and right work ok. The d-pad is less functional, it will accept one axis only (overwrites), and even tho I set the axis, it ignores it in the actual emulator. I have replaced the debug.bin in the link in my previous post with the newest one I have made.
__________________
-SSZ |
|
|
|
|
|
#31 (permalink) |
|
Plugin author
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Join Date: Apr 2006
Location: Perdition
Posts: 588
|
S.SubZero: That's how the d-pad should work, in terms of configuration actually...I map one input object to one PS2 button/axis. The d-pad is a single "hat" object. It just gives a direction. You should map it to the d-pad horizontal axis, and it will automatically map the vertical axis (Without displaying anything about it). You may have to flip the axis to get up/down working correctly. Ignoring the d-pad in the actual emulator is, of course, a bug. Not sure why left was working. Think I've now fixed both bugs. Edit: You may need to set sensitivity to 2 or 4 for things to work out right. I'll add in the needed factor in my next release, once I figure out which it is. Probably 4. EscCtrl: I assume this still does not work for you? You go to pad 1, click on an axis/button, move an axis/press the button, and nothing at all happens? Not sure what would cause that. I'll look at it some more when I have time. <Broken -> Attachment nuked> Last edited by ChickenLiver; April 16th, 2007 at 12:23.. |
|
|
|
|
|
#32 (permalink) |
|
Windows 7 x64
![]() ![]() ![]() ![]() ![]() Join Date: Jul 2002
Location: Bay Area, California
Posts: 1,095
|
This one is having worse results. In my test game (Capcom Vs. SNK 2), it just scrolls horizontally out of control through the main menu to the right. I even removed the horizontal axis for both analog sticks and it still does it. With the horiz axis for the left analog stick I can interact with it by nudging the stick left but it can't stop. According to Vista's game controller properties the gamepad is centered properly. I updated the debug.bin file again.
__________________
-SSZ Last edited by S.SubZero; April 16th, 2007 at 11:58.. |
|
|
|
|
|
#33 (permalink) |
|
Plugin author
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Join Date: Apr 2006
Location: Perdition
Posts: 588
|
Oops. Left in a debug statement making the d-pad always return 0 (right). At least that means the d-pad should do something now. Removed that. (Also removed the "debug.bin" stuff, as it's no longer relevant...until someone else has a binding problem). <Attachment superseded> Last edited by ChickenLiver; April 17th, 2007 at 12:29.. |
|
|
|
|
|
#35 (permalink) |
|
Windows 7 x64
![]() ![]() ![]() ![]() ![]() Join Date: Jul 2002
Location: Bay Area, California
Posts: 1,095
|
The analog sticks now appear to be working as intended. This is awesome. The d-pad is CLOSE.. I got horizontal working, but vertical is backwards. Up is down and down is up! I did notice in CvsSNK2 that the analogs don't do diagonal.. at all.. but I don't know if that's a game thing. The only other game I have that PCSX2 likes, Pac-Man World 2, seemed to behave better with diagonals, tho the game runs so slow it might just be how I perceive it.
__________________
-SSZ |
|
|
|
|
|
#37 (permalink) | |
|
代言人
![]() ![]() ![]() ![]() ![]() ![]() ![]() Join Date: Dec 2006
Location: 應許之地
Posts: 5,125
|
sounds nice, I 'll try it when I wanna replay a PS2 game (or a new game)
__________________
Quote:
![]() QX9650 @ 4.0GHz | 4x G.Skill 2GB DDR2 1066 | Vista 64 Ultimate | Quadro FX4600 (similar to 8800GTX) | X-Fi Elite Pro | SAMSUNG 2253BW | Cosmos S | ASUS RAMPAGE FORMULA | 2x 150GB Raptor X RAID0 | ThermalTake ToughPower 850W | ZEROtherm Nirvana |
|
|
|
|
|
|
#38 (permalink) |
|
Plugin author
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Join Date: Apr 2006
Location: Perdition
Posts: 588
|
EscCtrl: Hmm...Nothing useful there (Only input from your mouse). Looks like I'm just not capturing the direct input data from your converter at all, which is exactly what your comments would suggest. Just need to figure out why... S.SubZero: You could just check the flip axes button, and it'd fix that. Anyways, it's fixed in the attached file (Which I'll play with a bit more and make an official release of, unless you encounter any other problems with it).I'm not sure why you're having issues with diagonals. I simulated them, and it looks like I'm doing everything correctly. Do the arrow keys handle diagonals properly in CvsSNK2 if you bind them to the d-pad? To check my processing of diagonals, you could enable logging and look at the output, if you so desire. If your game supports dual shock controllers in full analog mode, you'll get lines like: 00 42 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 <-- Input request FF 79 5A FF FF 7F 7F 7F 7F 00 00 00 00 00 00 00 00 00 00 00 00 <-- My response The 4 bold 00s are the d-pad. If 2 of them are non-zero, you're (I'm?) sending diagonals correctly. If you aren't in full dual shock mode, you'll get a lot fewer numbers (None of the extra 0's and possibly not the 7F's. The 79 will be 41 or 73, depending on if it's in digital or analog mode). In that case, the value where the bold F is will indicate if you're moving diagonally. If two bits of it are 0 instead of 1, you are moving diagonally (1 means up, 0 means down). A value of 6 would be up and to the left. If you don't know how binary/hex work, don't bother with it. Probably simplest to just bind arrow keys to the d-pad and see if that works instead of playing with logging. Edit: Oops. Forgot to attach the file. <Attachment superseded> Last edited by ChickenLiver; April 20th, 2007 at 22:27.. |
|
|
|
|
|
#39 (permalink) |
|
Windows 7 x64
![]() ![]() ![]() ![]() ![]() Join Date: Jul 2002
Location: Bay Area, California
Posts: 1,095
|
If I choose "flip axis" the horizontal will work right but the vertical will not. If I try to set the d-pad Vert Axis it will not accept "up" as input, I can only tap down.
__________________
-SSZ |
|
|
|
|
|
#40 (permalink) |
|
Plugin author
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Join Date: Apr 2006
Location: Perdition
Posts: 588
|
Flip was flipping the wrong axis (Horizontal instead of Vertical. Supposed to only flip vertical. I'll probably add another button to flip horizontal only). Anyhow, try this. When you bind a hat switch it will label it "d-pad" or "d-pad (rotated)" based on which direction you bind and which direction you move the d-pad when binding. Also fixed the up binding issue. <Debug version superseded by file in original post> Last edited by ChickenLiver; May 15th, 2007 at 07:03.. |
|
|
|
![]() |
| Thread Tools | |
| Display Modes | |
|
|