Dolphin, the GameCube and Wii emulator - Forums
[Patch] PadSimple Per-Key Half-Press Keybindings - Printable Version

+- Dolphin, the GameCube and Wii emulator - Forums (https://forums.dolphin-emu.org)
+-- Forum: Dolphin Emulator Discussion and Support (https://forums.dolphin-emu.org/Forum-dolphin-emulator-discussion-and-support)
+--- Forum: Development Discussion (https://forums.dolphin-emu.org/Forum-development-discussion)
+--- Thread: [Patch] PadSimple Per-Key Half-Press Keybindings (/Thread-patch-padsimple-per-key-half-press-keybindings)

Pages: 1 2


[Patch] PadSimple Per-Key Half-Press Keybindings - kainino - 08-29-2009

This is a patch for the PadSimple plugin that adds dedicated half-press key bindings for all half-press-able keys (A, B, L, R, Main Stick, and C-Stick), as well as uses the Escape key to erase keybindings (currently you have to use a glitch [right-ctrl in Windows] or manual ini-file editing). I figured this would be the best choice since it already isn't very functional as a pad key during game play in the main window. It is still possible to bind to the escape key by editing pad.ini.

As you can see in the screenshot, I edited the waiting-for-key message to indicate the usage of the escape key ("Press Key/Esc"), but the buttons are barely large enough--I can't figure out how to change their size. There might be a better way to do this, but this seemed the clearest and least disruptive

Also, while I was bug-testing my edits, I noticed that the pad configuration dialog gets buggy if it is closed and reopened without restarting Dolphin; I went back to the unmodified version and realized that the problem was still there. I also checked r3404, which worked properly, but I couldn't figure out what edit caused the problem (I'm guessing the issue is on this Google code diff page).

I haven't been able to test it on anything except 32-bit Windows XP (I have Mac OS and Linux, but I have trouble compiling on them). I edited the code for those systems, but I'm not sure if it works. I also don't have a game controller, so I'm unable to test to make sure that that still works. I would appreciate it if someone could test these things.

Honestly, I don't know of any uses for this other than half-press-R in Super Mario Sunshine, but it works well for that. However, please let me know any issues or comments you have.

DolphinPerKeyHalfPress4089.patch

[Image: dolphinperkeyhalfpress4.th.png]


RE: [Patch] PadSimple Per-Key Half-Press Keybindings - CacoFFF - 08-29-2009

Works fine in 64 bit Windows XP (R4086).
About reopening the config dialog, define buggy. I didn't notice anything funky there.

Clearing a key with ESC button is a must, other emulators were extremely painful to deal with due to the lack of this feature.
Good job.


RE: [Patch] PadSimple Per-Key Half-Press Keybindings - kainino - 08-30-2009

(08-29-2009, 03:49 PM)CacoFFF Wrote: About reopening the config dialog, define buggy. I didn't notice anything funky there.

After opening Dolphin, opening, closing, and reopening Pad config, key capturing doesn't work. If I click a button and press a key, the keybinding is not saved and the label remains "Press Key" (or "Press Key/Esc"). If I click a button and then click another button, the labels still change properly. Everything works again after Dolphin is fully restarted.


RE: [Patch] PadSimple Per-Key Half-Press Keybindings - CacoFFF - 08-30-2009

Bah, I even tried some unpatched DebugFast PasSimple and that bug still happens, not your fault.
Happens in many builds.
Time to report the issue.


RE: [Patch] PadSimple Per-Key Half-Press Keybindings - shuffle2 - 08-30-2009

a and b are not really half-pressable
no game uses that functionality, and the real retail hardware doesn't support it


RE: [Patch] PadSimple Per-Key Half-Press Keybindings - MarioMadness - 08-30-2009

(08-30-2009, 07:09 AM)shuffle2 Wrote: a and b are not really half-pressable
no game uses that functionality, and the real retail hardware doesn't support it

You Only Need the Half Press for the triggers, For games like mario sunshine


RE: [Patch] PadSimple Per-Key Half-Press Keybindings - death-droid - 08-30-2009

Can anyone veryify what buttons/triggers actually use the half-press.


RE: [Patch] PadSimple Per-Key Half-Press Keybindings - kainino - 08-31-2009

I've been putting off a reply until I get Mac testing to work, but it's going to take longer because it turns out Xcode is too old, and I can't update it (or Mac OS) because the partition is full. Anyways, I'll reply to people and talk about the Linux testing I did.

shuffle2: I thought I had read that somewhere. It's probably possible to use it in a homebrew game, so I put it in, but it might end up being completely unnecessary.

MarioMadness: I also added dedicated half-press for the analog sticks. It's pretty easy to use the half-press key (shift) for that, but it might be useful.

death-droid: Do you mean which can effectively use it on the native hardware? Or in games? I'm sure my patch overdoes it by a bit with the A/B keys.

I went to Ubuntu (64-bit) and tested it. There were some major bugs that were really easy to fix, so here's an updated version. I didn't make sure it worked because this computer has Intel graphics, but I could hear the game and it seemed to be working. I split it into two files since the code fixes I made to allow it to compile weren't actually related. Also, the label "Press Key/Esc" is WAY too big for the button in GNOME, so I'm still looking for a way to make the buttons wider.

Once I manage to get my Mac partition to resize (it's giving me errors), I'll compile and test it there, if possible.

EDIT: I forgot the links.
DolphinPerKeyHalfPress4101.patch
DolphinFixLinuxBuild4101.patch

EDIT 2: Here's a screenshot of the config dialog in GNOME, with default keys and a "Press Key/Esc" button.
[Image: dolphinperkeyhalfpress4.th.png]


RE: [Patch] PadSimple Per-Key Half-Press Keybindings - MarioMadness - 08-31-2009

(08-31-2009, 12:28 AM)kainino Wrote: I've been putting off a reply until I get Mac testing to work, but it's going to take longer because it turns out Xcode is too old, and I can't update it (or Mac OS) because the partition is full. Anyways, I'll reply to people and talk about the Linux testing I did.

shuffle2: I thought I had read that somewhere. It's probably possible to use it in a homebrew game, so I put it in, but it might end up being completely unnecessary.

MarioMadness: I also added dedicated half-press for the analog sticks. It's pretty easy to use the half-press key (shift) for that, but it might be useful.

death-droid: Do you mean which can effectively use it on the native hardware? Or in games? I'm sure my patch overdoes it by a bit with the A/B keys.

I went to Ubuntu (64-bit) and tested it. There were some major bugs that were really easy to fix, so here's an updated version. I didn't make sure it worked because this computer has Intel graphics, but I could hear the game and it seemed to be working. I split it into two files since the code fixes I made to allow it to compile weren't actually related. Also, the label "Press Key/Esc" is WAY too big for the button in GNOME, so I'm still looking for a way to make the buttons wider.

Once I manage to get my Mac partition to resize (it's giving me errors), I'll compile and test it there, if possible.

EDIT: I forgot the links.
DolphinPerKeyHalfPress4101.patch
DolphinFixLinuxBuild4101.patch

EDIT 2: Here's a screenshot of the config dialog in GNOME, with default keys and a "Press Key/Esc" button.
[Image: dolphinperkeyhalfpress4.th.png]

Starting to look good, but on a gamecube Controller its Impossible To do half Press for A and B lol. The Analog sticks Where a good idea the have tho, makes it walk slow or Sneaking In Some games Big Grin Keep up the Good Work Tho Cool


RE: [Patch] PadSimple Per-Key Half-Press Keybindings - DacoTaco - 08-31-2009

wouldn't it be better to have a key that indicated half press
like in njoy?