PPJoyDLL virtual joystick

PPJoyDLL is a container application to load other DLLs that provide joystick data. This data is then fed to Windows as joystick input via the PPJoy Virtual Joystick interface. Below is a screenshot of PPJoyDLL:

Selecting a Virtual Joystick

The drop-down list next to Joystick device selects the virtual joystick to use. The list contains all possible virtual joystick names; it does not detect which virtual joysticks are actually configured in PPJoy. You need to configure at least one virtual joystick in PPJoy. (See Adding a new joystick or gamepad.)

The text to the right of the drop-down list displays the status of the selected virtual joystick.

DLL name

The name of the loaded DLL is shown greyed-out; the status of the DLL is shown to the right of the DLL name. When you select a new DLL type the existing DLL (if any) is unloaded and the DLL name will be blank.

Click on Load .DLL to load a new .DLL file.

Selecting a DLL type

The second drop-down list, DLL type determines which functions in the loaded DLL file to call to obtain joystick data. Currently the following DLL types are supported:

Update frequency

The Update interval value determines how many microseconds (1/1000000s) PPJoyDLL will wait between joystick updates. This field is enabled for .DLL that has no way to indicate new data to PPJoyDLL. In these cases PPJoyDLL must poll the .DLL for new data. Setting this value too low will cause performance issues. Setting it too high my cause sluggish joystick movements. The default value of 25ms should be fine...

Click on Set to active any changes you make to the update interval. The application will automatically change values less than 5ms back to 5ms.

If this field is disabled it means the currently selected .DLL type indicates to PPJoy when there is new data. Polling is not needed in this case.

Loading and saving the configuration

PPJoyDLL allows you to load and save the configuration to .INI files. You can also load an .ini file on startup by specifying it on the command-line when starting PPJoyDLL. For example PPJoyDLL.exe C:\Config\PPJoyDLL.ini will automatically attempt to load C:\Config\PPJoyDLL.ini on startup. If the config file is in the current directory you need to add ".\" in front of it. For example PPJoyDLL.ini becomes .\PPJoyDLL.ini.

Additional notes