TwinPad Keyboard plugin?

Discussion in 'PS2 Plugin Questions & Plugin Troubleshooting' started by Rebel_X, Nov 16, 2006.

  1. Rebel_X

    Rebel_X Ƹ̵̡Ӝ̵̨̄Ʒ 龍我雷 Ƹ̵̡Ӝ̵̨̄Ʒ

    Likes Received:
    TwinPad Latest release v0.8.3

    TwinPad v0.8.3
    TwinPad v0.8.3 Source Code

    Older version at the bottom of this post if you're interested..

    How to use:
    Extract the DLL & EXE files inside the plugins folder, and you are ready to go..
    to configure the plugin, run PCSX2 normally select TwinPad from the plugins' list and click on configure.
    the TwinPad configuration utility will appear..

    VISTA USERS: "ActiveX Can't create object error '429'" workaround..

    Due to M$ stupidity, they dropped the support for DirectX 8 for VB in Vista it was supported in XP,
    they will eventually drop DirectInput too once XNA is more mature, they say DirectInput is deprecated now.. heh..
    And I am not willing to reWrite the whole Configuration utility, for 3 reasons:

    1) It needs tremendous time and effort at this point (a lot of code and resources)
    2) It's working.. (not for everybody, but it's working)
    3) There is a simple solution to make it work for VISTA and Windows 7 too.. as some users tested it in Windows 7

    Solution: download DX8VB.dll from -=>here<=-

    1) If you have X86 version of windows, extract the DLL into: "C:\Windows\System32\"
    If you have X64 version of windows, extract the DLL into: "C:\Windows\SysWow64\"
    Assuming C:\Windows\ is the default windows path.. if it's not then find the System32 or SysWow64 inside your
    Windows directory and extract it there..

    2) Click Start->Programs->Accessories-> Command Prompt (right click, and select run as administrator <=-Important)

    3) type.. "regsvr32.exe dx8vb.dll" without the quotes then press ENTER..

    4) If everything is fine. it should give you Sucess message "dllregserver succeeded" , click Ok
    and configure TwinPad, it should work.. Hopefully this will help..


    The form will show you PSX/PS2 PAD buttons, click on the button you want to configure to assign a key to that
    button, or you can hit "Auto Navigate" where the plugin will guide you to configure all buttons..

    Click on "Nullifies All" to clear all configurations, for the selected pad..

    to configure PAD 2, you can toggle between PAD 1 and PAD 2. by simply clicking on the pad you want (The box with
    the red circle)..

    The blue Box tells you what button you are trying to configure..


    Now, to configure the mouse, click on the Arrow with the title MOUSE.. another form will appear
    You can configure the mouse, for example, left mouse button as left analog stick, right mouse button as rightanalog stick, middle as Cross, depends on how many buttons you got on your mouse..

    Also you can change the mouse sensitivity, you can choose from 1 to 6, where 1 is the old and most accurate..
    2 to 6 tries to shrink the DEAD ZONE "the inner rectangle" more and more, the dead zone is in the center of
    GS/GPU window, where analog movements not noticeable by some games.. some games they accept the analog moves
    if they are greater than a certain value, others they don't..

    I aimed for accuracy, even for higher sensitivity modes too..

    Now I will explain what a COMBO is, A Combo is an attempt to simplify the way some games require from the player to press the pad buttons in specific order and timing.. to do special moves and techniques depends on the game..
    like the ones in Tekken, Street Fighter, Devil May Cry series, Final Fantasy X overdrives..etc!

    Each Combo contains at least one Action, or several actions up to 334, sequenced in execution top-down wise..

    An Action is a group of pad buttons pressed at the same time for
    specific period of time.. an Action can contain up to 24 different buttons (the maximum) to be pressed at the same
    time.. you can't select for example, a CROSS "X" twice in the same action.. -nonsense-, but you can select
    UP and DOWN in same action, although it's going to be useless, but they are not the same.. use common sense here..

    you can add new action if you want, to group more buttons to be pressed at the same time.. Again you can add up to 334 actions per COMBO.. (that's a lot), if you need more you can create a new COMBO, there is no limit for how many COMBOS you create..

    Now each Action has it's own Speed or Delay.. you can select a value from 1 to 1000, (1 is fast, 1000 is slow) I took 2 hours to think of a proper name for this, is it speed or delay, probably neither?? anyways.. let's call it a Delay.. :p

    The delay value represents how many frames that an action is being executed.. depends on the game if it's NTSC or PAL (50 or 60) Frames Per Second.. if you specify "1" as delay value for Action #3, the third action will be executed only for one frame.. if you specify 1000 for the same action, the third action will be executed for 16.666 seconds (if the game is NTSC, 60fps) or 20 seconds if it's PAL (50fps).. I know it's impractical, But I gave you the chance to do that, chances that you wont need anything higher than 60.. oh well..

    To configure the COMBOS, click on COMBOs arrow in the main form.. another form will appear.. the COMBO Editor.

    First try to create a new COMBO.. by clicking on NEW.. write the name of the combo.. like "FINAL FANTASY X: Lulu's Overdrive" or "Tekken3 Jin Kazama's Combo Type 1" and hit OK.. you can start building your moves now..

    Click on the buttons you need to put within the current action, and you will see it being added..

    Once you finish with the current action, if you want to add new action, click on "Add new Action"

    Any action can be empty, except the first one.. it would be totally useless if they were..
    Empty Actions means all buttons are released (not pressed). usually this is useful to create a pause between actions..

    you can put also the delay value for empty actions the same way you do with non-empty actions..

    if you are not satisfied with the current action, you can always click on "Delete Last Action", it's the only way to delete actions, you can't delete an action positioned between two actions, only the last one, sorry if this is inconvenient.

    After you delete the Action you must add new action manually, or else, when you add buttons, it's going to be added to the current Action "Which is the last one now"..

    There is two ways to change the Delay value for Actions..

    The first, using the text box that says Delay, write the delay value you need, or click up or down arrows to increase/decrease the value..

    The second method is, you can click on the gray box next to each action that says "Delay: #" then you can modify the value directly for that Action..

    When using the first method, all subsequent added actions will inherit the delay value from that box..

    After you finish creating the actions for your COMBO, you need to assign a key to execute this combo, when the key is pressed while playing, the combo will start working.. (unless it was disabled in the Extended menu)..

    Each combo, has it's own key.. if two or more combos share the same Key, the first one the plugin sees will be executed, as a rule of the thumb, make each combo has it's own key..

    To assign a key to the current combo, just click on the box next to "KEY" then the program will be waiting for you to press a key.. You will see the Box flashing.. that means you must hit the key you want on the keyboard..

    Note: "The same rule applies when selecting Combo Keys, you can't select a key used by the emu, like F1 to F10 for example"

    You can select which PAD the COMBO system is using, PAD 1 or 2.. this will be applied to all combos..

    You can view different saved COMBO from the drop-down box, you can edit it, add actions, remove actions, rename the combo or even delete
    the COMBO itself..

    To delete the current COMBO click on Delete inside the COMBO section.. "WOW! brain surgery!!"
    To Rename the current COMBO click on Rename inside the COMBO section.. ":/"

    Hovering the mouse over Analog stick icons will show a tool-tip telling you which one it belongs to.. Left & Right Analog sticks look identical, this way you can tell if the selected button is for the left or right analog.. i.e. "Right Analog (UP)" or "Left Analog (UP)

    To save and exit click on Save button, it's the only way to save your configuration, the program wont notify you about changes..

    Now after you are done, you want to test your COMBO if it's working or not i.e. you may need to modify delay values for some actions..
    the best way to do this. is by editing the COMBO while playing, you can do this.. :)

    Note: It is better if you execute the emulation in Window mode while doing this..
    Make sure COMBOs, COMBOs HotKey and the PAD you use for COMBOs are "NOT" Disabled from the EXTENDED menu.. <=- Important..

    * Copy "TwinPad.exe" to PCSX2 root folder where PCSX2.exe/PSXeven.exe/SSSPSX.exe or PCSX.exe exists..
    * Run TwinPad.exe.
    * select COMBO from the first FORM, select your combo you want to test from the drop-down box..
    * Run PCSX2 (DON'T QUIT TwinPad, Keep it running), Start the emulation and run the game you want..
    * Test your COMBO by hitting the assigned COMBO key.. if it doesn't work correctly, switch to TwinPad, Keep PCSX2 running..
    * Modify your COMBO, delete actions, add actions, modify the delay, modify the Key.. whatever you want then click on ->SAVE<-..
    * Switch to PCSX2 "The game is still running, and TwinPad is running too" hit "SPACE"<=- a HotKey to Load Combos configurations on-the-fly!
    * Test your combo again.. hit the assigned key, if it works ->Good Job<- if it doesn't repeat steps 3 to 8.. have fun..

    Note: you might need to load the savestate, you can do for example Lulu's fury only while in battle, save using F1 before trying
    Fury, execute the Combo, load the state F3, when you want to try the modified COMBO, hit SPACE, and repeat.. it's faster this way..

    For two players games, like TEKKEN for example, you should leave the last Check-Box in the Extended menu un-ticked.. For one player games like FFX, Keep it ticked..

    From my experiments, FFX for example requires information only from PAD1, but for unknown reason PCSX2 also asks for PAD2.. but Tekken asks for PAD1 and PAD2 even if only one player is playing.. Not selecting this Option will make Fury Spells count drop almost to half.. instead of getting 16 spells in 1.75 seconds you will get them barely in 4 seconds.. but at the same time, TEKKEN3 Combo's timing would be correct.. (I could be wrong, but during my tests, this is the only explanation :/)

    Anyways here is two videos I made about this newest feature..

    Lulu's Overdrive Configuration, shows you how buttons added to actions
    to perform fury spells..
    View attachment 204116

    Jin Kazama's Combo type #1, Note, the pic doesn't show the whole buttons, if you are interested about Tekken 3 combo and timing information
    visit this site: Tekken 3 Moves List
    View attachment 204117

    Extended Options:
    Now done with COMBOs, have a look to the Extended Options menu..
    It's recommended to leave PAD1, PAD2, and MOUSE enabled, if you don't use COMBOs feature disable it, and disable COMBO's HotKey..

    You can disable the Plugin from sending KeyEvents to PCSX2 or other plugins too, if you use two different PAD plugins, and you want the other plugin to send the information to PCSX2, "i.e. F2 to switch between states" as a solution for the double keystrokes phenomenon that happens when the two plugins send the same information to PCSX2.. DON"T SELECT THIS OPTION if you use TwinPad for both PAD1 and PAD2.. you will not be able to press ESCAPE to exit PCSX2..

    Note: Disabling PAD1 for example will also DISABLE the Mouse or COMBOs if it was configured as PAD1, the same thing for PAD2..

    TwinPad Plugin, latest version is 0.8.2 here..
    source code, here
    -Original Post, kept it for thread integrity-------------------------
    Before I start, I want to know is it alright to modify source Code found in

    'cause I tried to play some games, which are exclusivly for DulaShock2.
    Like Devil May Cry 3, and the fact that I had PSX "like" pad (DirectPadPro)
    but it has only LPT aka DB-25 (Like all PSX pads) no USB, and I am not gonna buy PSX-to-USB Adapter, for such a

    small problem..
    I remember some of posts around the ability to play with analog, assign key
    values to Keyboard...etc! I posted One my self

    if so, before everything I admire PCSX2(tm), Linuzappz asadr (for PadWinKeyb Plugin) and others as well.. the full

    credit goes to them..

    I modified the PadWinKeyboard Plugin so it can Assign KeyButtons to Analog
    Left or Right stick ( in 4 Directions )

    before I attach anything.. I would like to know if this thing will be
    welcome'ed, No Offense to anyone

    I understand the point if the Plugin Creator, Admins of this site, object to publish this modified plugin! ***if

    so, No need 2 shout or Yell, just let me know in polite response! ***

    I am waiting for the response? (The Modification and Source will be attached
    if its Approved!)

    thanx in advance..
    Last edited: Oct 20, 2009
  2. Advertisement

  3. wwe_72

    wwe_72 Registered S.O.B.

    Likes Received:
    can't u write with normal letters? the bold letters are using to mark something important but never used for whole messages lol
  4. Doomangel

    Doomangel New Member

    Likes Received:
    Could you send it to me through e-mail, i'll pm you!
  5. Qwin

    Qwin New Member

    Likes Received:
    OMGZ I BEEN WAITING FOR SOMEWONE TO DO THAT yes you can modifie the source code but... dont make it your own give credits to the ones who made the full code 2 and you must give your source too because its open source i hope you wil :D
  6. cyclonmaster

    cyclonmaster EmuAddict-_-;;

    Likes Received:
    Anyone are welcome to give some support and advice to the team. Attaching your code here is not a problem. :)
  7. RPGW1ZaRD

    RPGW1ZaRD PCSX2 & O/C Addict

    Likes Received:
    Yes this is the meaning of providing the SVN for some curious people to try and modify it to something better. As long as you provide source for it, it shouldn't be a problem.

    Personally I've also wanted such support. :)
  8. refraction

    refraction PCSX2 Coder Contributors Award Winner!

    Likes Received:
    modified plugins are welcomed, as long as source is provided, we have no problem with that.

    we just dont like modified versions of the emulator itself, so as long as you stay clear of that, we're good :)
  9. wwe_72

    wwe_72 Registered S.O.B.

    Likes Received:
    i'm sorry this thing looks important that's why u write with Bold letters
  10. Rebel_X

    Rebel_X Ƹ̵̡Ӝ̵̨̄Ʒ 龍我雷 Ƹ̵̡Ӝ̵̨̄Ʒ

    Likes Received:
    Sorry for the long reply

    Here it is the Plugin and Source

    First of All, this is just Simple modification to the Plugin not Plugin release
    itself (and I think It wont be an Official Plugin anytime)

    To make Couple of things clear here is the Explanation:
    - Just use it with the First PAD, (I cant figure out curPAD, pads from source)
    I will try to make it using the second PAD, but no promises...
    - Different name than PadWinKeyboard Plugin to prevent any interference
    between the 2 plugins
    - It supports L3 R3 to assign it to keyboards not Mouse Dbl-Click
    - 2 Analog Sticks, 4 Directions, (At max Value, As if you pushed the analog
    to the Limit, can't sense a half press, got the point)

    - Different Configuration file "TwinPad.ini" for the Second reason.
    - External GUI designed at VB, cause I can design better and faster in VB
    (It took for me 15 minutes to build the GUI and CODE in VB, believe that)
    But Cant program Windows using VC++, only C++ :p

    Unzip the Plugin to Plugins directory, also the "TwinPad.exe" -=> GUI External
    from DLL, Normally cant run by itself, USE the normal pad Configuartion from
    PCSX2 Plugin Configurations..

    And it would be better, if an Official Pad Plugin dev' like Asadr, implement this
    so there will be no need for such this plugin..

    Of course, all the Credit goes to LinuzAppz & Asadr for the great plugin (Last version was rich in comments :) )
    Finally, I hope, I could bring something usefull, for any1 to use.

    Edit: Incase if the GUI can't load (***UNLIKELY***) you will need Microsoft Common Controls installed "MSCOMCTL.OCX" v6.0 SP4 (I think these come shiped with windows), and Microsoft Scripting run time "scrrun.dll" in your system32 directory.. you can find them in microsoft or search the google for these files, (Not implemented for lack of size)

    GUYS: See the whole thread as other releases in next pages. ;)
    Last edited: Dec 19, 2006
  11. cyclonmaster

    cyclonmaster EmuAddict-_-;;

    Likes Received:
    Good job Rebel_X, Going to try it now :)
  12. Rebel_X

    Rebel_X Ƹ̵̡Ӝ̵̨̄Ʒ 龍我雷 Ƹ̵̡Ӝ̵̨̄Ʒ

    Likes Received:
    good, let me know how it works with you :)
  13. Mad

    Mad AKA snkmad

    Likes Received:
    OMG ill finally be able to play castlevania!
    Gonna try it now.
    THX a million!
  14. zeldafan

    zeldafan New Member

    Likes Received:
    when i want to play kingdom hearts with this plugin, the game is VEEEEEEERY slow !
  15. bes

    bes The Curious One

    Likes Received:
    ...And it works!! I'm playing FFXII without a pad! Both left and right analog works as it's supposed to and the game goes great!
    Thanks a bunch Rebel_X. This'd be a salvation for those of us without a controller for PC.
  16. CTSmith

    CTSmith New Member

    Likes Received:
    can someone post a link to the download??....i keep getting blank pages....all white....i tried installing the 2 things suggested but it still doesnt fix the problem.....please and thank you
  17. bes

    bes The Curious One

    Likes Received:
  18. RPGW1ZaRD

    RPGW1ZaRD PCSX2 & O/C Addict

    Likes Received:
    Thanks for the link, I think quite a lot people may be missing the MSCOMCTL.OCX file, I had to download it myself too, it can be downloaded here for example:

    Just extract to windows\system32 folder and it should work. If not then also try download this.

    Analog movement works perfect in FF12 with the keyboard buttons. Pressing both up and right for example moves the character in the diagonal direction so you don't only get the left, right, down and up movement directions but the 8-direction movement control. :)

    Too bad you can't use all keyboard buttons tho, like would be nice to be able to use numpads for the right analog stick to control the viewing angle, also only letters and 0-9 can be used as assignment keys, not the other keys at least in my case.

    Thanks for the plugin. :p
    Last edited: Nov 22, 2006
  19. thc

    thc Member ©

    Likes Received:
    Hehe, didn't notice this one is out and corrected analog mouse this morning.
    Anyway does this plugin support mouse ( I don't have any games here so I can't try I'm just curious ) or just keyboard ?

    Anyway admins should probably make this sticky ( or include it in pcsx2 release ??? )
    Last edited: Nov 22, 2006
  20. Rebel_X

    Rebel_X Ƹ̵̡Ӝ̵̨̄Ʒ 龍我雷 Ƹ̵̡Ӝ̵̨̄Ʒ

    Likes Received:
    Hint: If the NUMLOCK is ON (pressing a key on the numeric keypad returns a number), If the NUMLOCK is OFF (pressing a key on the numeric keypad moves the cursor) seriously though, you can Open the TwinPad.ini and CHANGE the last 4 lines (corresponds to right analog) to any key you want!
    NUMPADs from (0x60 = NUM 0) --- to --- (0x69 = NUM 9)

    Thanx for correcting me its 8 Directions in total by mixing keys together!

    And yes! it currently supports mouse, infact it has all the goodies and badies found in the original PadWinKeyb plugin..

    Thanx all..
  21. Kevor

    Kevor New Member

    Likes Received:
    i cant get twinpad to work installed all waht i need the .exe file does open too and i can configure all the buttons but when i start FFXII and press enter (for X) nothing happens. the same to alle th other buttons ... how can that be ?

Share This Page