Fixed a bug in Combo Matrices initializations, i.e., They were not filled with proper data.
Didn't notice this silly bug. Thanks to Ellestar for this, and bbkdude for mentioning it.
Combo feature, Added the ability to leave empty actions at the end of any Combo, this will
allow you to create Auto-Fire like behavior, e.g., First action is X, Second action is Empty, keep
holding and pressing the key assigned for the combo will press/release X as fast as possible
(or as slow, it depends on the delay value)
Added a more useful use for the Mouse Wheel, Now you can configure the wheel to do whatever
you want, like selecting weapons in FPS games, Zoom In/Out in strategy games, or even page
flipping for the items inventory in RPG games. Note that if you don't configure the wheel
(Scroll UP/DOWN) it'll behave as increasing/decreasing the pressure sensitivity for the buttons.
Note: The old configurations WILL BE LOST, due to the fixes and feature additions. The plugin will notify you about this..
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
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..
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, but you can have the last action empty, if you want to create Auto-Fire
buttons. 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..
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: Tekken3 MoveList
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..
Oh last time I worked on this plugin was the time I uploaded FFX fury video in march, so consider this as beta version.. at least it passed alpha stage for me
* Fixed a Crash happens only when the Combo list is empty..
"can't resize vector matrices with zero dimension! shoot me in the head
for this "
Heh, Visual Studio was driving me nuts, variables change their value by themself when debugging,
cleaning the solution from intermediate and debug files solved the problem!
* Fixed the mouse input. Mouse button presses were erased by keyboard
button releases, but now both should play nicely together..
* Recompiled the project, to link statically with the run-time library instead
of "Multi-threaded DLL '/MTD' " to "Multi-Threaded '/MT' " to remove the dependency of MSVCR90.dll,
padTwinPad.dll went from 42kb to 172kb because of this.. but oh well..
bottom line, users having crashes with v0.8.0 because they don't have MSVCR90.dll installed, now it should work
fine, hopefully.. -anyone has crashes before please confirm if this fixes it!..-
* Fixed a bug (also presented in PadWinKeyb plugin) when loading save states
so early as soon as emulation begins, causing games to show a message like
"No DualShock2 controller detected" in DMC3 or the player moving diagnolly without touching
the controls (FFX for example), the bug was present in PADpoll() not sending the right
length of commands to pcsx2, now it will detect what pad mode, Digital, DualShock 1 or 2
depends on the game when you load save states..
* Added support to PSX Emus. tested on SSSPSX, PCSX, PSXeven.
Note: for ePSXe you need Pete's ePSXecutor utility to choose and enable PADs, by default ePSXe has built-in PAD support.
Maybe it only supports external pads in Linux
* Now you can use the Mouse as PAD 2.
* Add mouse sensitivity. you can choose from 1 to 6, 1 is the old Accurate mode, 2 to 6
trying to shrink the Dead Zone in the center where Analog movements not accepted.
* Fixed the double keystroke issue, i.e. pressing F1-F...F10, Shift keys will send
the right commands to the Emu/Gs.. and Shift Key behavior is fixed too when selecting
save states, very accurate even if you try to hit L-Shift R-Shift at the same time..
* Fixed a bug (it was a typo T_T) when using mouse, if you configured mouse to use
Start, Up, Right, Left or Down, would give you error message.. it's fixed..
* TwinPad.exe is moveable, some users hate that, I dunno why :/
* Now for Walk/Run you only need to press one key instead of two, if a key defined
pressing it once will make the plugin send half presses for analog (emitate walking
in most RPG and other games), press it once more will make it back as full press (Running)
* Disabled the Windows logo key. ensures that the user cannot
inadvertently break out of the application. specially in Full Screen mode
So now you can use this key for PADs like most other keys.
* Added "Extended Options" in the configuration utility.. More details in the documentations..
* Adding a new and unique feature for PSX/PCSX2 emus, I call it "COMBOs", now with a single
keystroke you could perform series of buttons acting in timely manner, usefull in situations
like FFX's Overdrive or Tekken Combos.. *more details about this in the documentation*
I'm vista home premium, it's crashed too. My other keyboard plugins that came with pcsx2 except lilypad crashed too
ps- My specs
Operating System Microsoft Windows Vista Home Edition
OS Service Pack Service Pack 1
DirectX 4.09.00.0904 (DirectX 9.0c)
Computer Name ANORLDGOH-PC
User Name Anorld goh
CPU Type 2x Intel Pentium III Xeon, 2666 MHz (9 x 296)
Motherboard Name Unknown
Motherboard Chipset Unknown
System Memory 2048 MB
BIOS Type AMI (04/09/09)
Video Adapter GeForce GT 120
Video Adapter GeForce GT 120
Monitor HP 2009 Series Wide LCD Monitor [NoDB] (3CQ9133JYX)
Audio Adapter High Definition Audio Controller [NoDB]
IDE Controller Intel® ICH10 Family 4 port Serial ATA Storage Controller 1 - 3A20
SCSI/RAID Controller A89VT6O1 IDE Controller
SCSI/RAID Controller Microsoft iSCSI Initiator
Disk Drive ST3500418AS ATA Device (465 GB, IDE)
Disk Drive Generic- SD/MMC USB Device
Disk Drive Generic- Compact Flash USB Device
Disk Drive Generic- SM/xD-Picture USB Device
Disk Drive Generic- MS/MS-Pro USB Device
Optical Drive TSSTcorp CDDVDW TS-H653Z ATA Device
Optical Drive YHYLIL I7GPMFS5YV4X SCSI CdRom Device
SMART Hard Disks Status OK
Network Adapter Realtek RTL8168D/8111D Family PCI-E GBE NIC (192.168.1.8)
Printer Microsoft XPS Document Writer
Printer Send To OneNote 2007
USB1 Controller Intel® ICH10 Family USB Universal Host Controller - 3A34 [NoDB]
USB1 Controller Intel® ICH10 Family USB Universal Host Controller - 3A35 [NoDB]
USB1 Controller Intel® ICH10 Family USB Universal Host Controller - 3A36 [NoDB]
USB1 Controller Intel® ICH10 Family USB Universal Host Controller - 3A37 [NoDB]
USB1 Controller Intel® ICH10 Family USB Universal Host Controller - 3A38 [NoDB]
USB1 Controller Intel® ICH10 Family USB Universal Host Controller - 3A39 [NoDB]
USB2 Controller Intel® ICH10 Family USB Enhanced Host Controller - 3A3A [NoDB]
USB2 Controller Intel® ICH10 Family USB Enhanced Host Controller - 3A3C [NoDB]
USB Device USB Composite Device
USB Device USB Human Interface Device
USB Device USB Human Interface Device
USB Device USB Mass Storage Device
(This post was last modified: 07-16-2009 07:34 AM by vni.)
Crash pcsx2 on run using the plugin 0.8.0 and 0.8.1
Debugger visual studios Info
The thread 'Win32 Thread' (0x1648) has exited with code -1073740777 (0xc0000417).
The thread 'Win32 Thread' (0x1690) has exited with code -1073740777 (0xc0000417).
The thread 'Win32 Thread' (0x818) has exited with code -1073740777 (0xc0000417).
The thread 'Win32 Thread' (0x152c) has exited with code -1073740777 (0xc0000417).
The program ' pcsx2-dbg.exe: Native' has exited with code -1073740777 (0xc0000417).