View Single Post
Old September 25th, 2007   #1 (permalink)
NHervé
Plugin author
 
NHervé's Avatar
 
Join Date: Jul 2007
Location: Nulle part
Posts: 322
Talking MegaPad Plugin !!!

Open the champagne !!!

I've here a new pad plugin I wrote. It's MegaPad and it uses SDL. No worry, the latest actual version of the SDL (1.2.12) is provided.
This plugin offers, as LilyPad, a complete pad support, many possibilities, but is much simpler than LilyPad.

First place SDL.dll in the root PCSX2 folder (not the plugins folder), else the plugin won't start.

1. Mapping and config

After having selected MegaPad in the Pad plugins list and launched its GUI by clicking the
Config button, you must configure it. You can select the Pad 1 or the Pad 2 with the
buttons in the top-left corner of the window. For mapping press any of the 20 buttons.
The pressed button will become grayed. Then you can do various things :

a. Keyboard

For the buttons press a key and the selected button will be bound to the pressed key. Pressing
Escape or Backspace allows you to delete a value. For the axes press any key with old versions, or click right button whth new versions, and the selected
axis will be bound to the mouse. Note that if the axes of the 2 players are bound to the mouse,
they will move simultaneously.

b. Joystick

For the buttons press a button, a POV hat in the wanted direction or move an axis in the wanted
direction and it will be bound to the selected button. Note that if you bind an axis to a
pressure-sensitive button*, the pressure will match the value of the axis. Try this feature in
games which need pressure sensitive buttons. For the axes move an axis and it will be bound to
the selected axis. Warning : the GUI has a little difficulty to detect the moves of the vertical
(y) axes, but there is no problem in the games.

c. Misc

There are 4 general options under the mapping buttons.
1. Axis sensitivity : can be 3 values (affect the GUI as the games). This is the sensitivity of the
plugin to axis moves.
-Very sensible : for precision games or low-sensibility axes.
-Normal : default, I recommend you to use it.
-Low sensibility : use it if your axes are very sensible.
2. Enable logging : This enables a pad log stored in logs\megapad_log.txt, which can be used only for
debugging purposes. As mentionned, this logging makes the emu slower.
3. Always show cursor : Use it with ZeroGS if you use the mouse, to see where is the cursor.
4. Low-visibility cross cursor : The arrow cursor is replaced by a low-visibility cross cursor.
Use it if you don't want to see the arrow cursor.

Then click OK.

2. Emu

I think I don't need to detail how to use the keyboard or the joysticks, but I will tell you how does
the mouse support work.
Press the left button for left axis, the right button for right axis. When you release a button, the
corresponding axis will be "centered". When you press a button the cursor is automatically centered.
Move it as an analog axis. When a button is pressed the cursor cannot get out the GS window. The
mouse support has been seriously improved in the new version, axis positions are calculated from
the size of the GS window, so it works better than PadWinKeyb mouse support.

If you encounter any bug using this plugin tell it to me.

The plugin is in the attachments, with screenshots of the GUI.
Sorry I changed the attachments because I provided a wrong dll.

Version 1.1.0

I released a new version with 2 little fixes. It is in the attachment.
The 2 problems were on the first launch of the plugin.
-Axis sensitivity list was blank, now it is set on the default value "normal".
-On the first launch config was not saved, now it is, you don't need anymore to re-launch the gui to get config saved. If you are interested by technical details, see bugreport.txt in the zip.

Version 1.2.0

See readme.txt to know exactly what has been implemented.
You will need to re-map your buttons because of a changed config system.
You can bind keys to analogs, and when, for example, you press Up, the character goes up, you press Down while pressing Up, the character goes down, you release Down, the character goes up. In TwinPad topic, some guys asked for it.

Version 1.3.0

F keys work now, thanks RpgWizard for signaling me this bug, the GUI does not allow you to bind them to any control, and if the input detection loop detects that a F key has been pressed it directly returns.

Version 1.3.1

Fixed a bug with the axes.

Version 1.3.2

For those who get a bug while mapping the buttons, download this version.

Version 1.3.3

The bug on first launch was because PCSX2 does not call PADinit on first launch ("pcsx2 needs to be configured" message), and SDL init is in PADinit. So if PADinit hasn't been called by PCSX2 it is called by the GUI. So the bug that version 1.3.2 was supposed to fix is really fixed here.

NHervé.
Attached Images
File Type: jpg megapad1.JPG (66.7 KB, 597 views)
File Type: jpg megapad2.JPG (121.4 KB, 815 views)
File Type: jpg megapad1.2.0.JPG (71.0 KB, 496 views)
Attached Files
File Type: zip MegaPad_ver1.0.0.zip (992.5 KB, 780 views)
File Type: zip MegaPad_ver1.1.0.zip (991.4 KB, 376 views)
File Type: zip MegaPad_ver1.2.0.zip (759.1 KB, 230 views)
File Type: zip MegaPad_ver1.3.0.zip (758.3 KB, 444 views)
File Type: zip MegaPad_ver1.3.1.zip (609.6 KB, 386 views)
File Type: zip MegaPad_ver1.3.2.zip (611.4 KB, 646 views)
File Type: zip MegaPad_ver1.3.3.zip (609.8 KB, 3692 views)

Last edited by NHervé; November 15th, 2007 at 18:05. Reason: New version 1.3.3
NHervé is offline   Reply With Quote