├── TestSign ├── EnableTestSignedDrivers.bat ├── TestCertificate.cer ├── TestCertificate.pfx ├── TestCertificate.pvk └── MakeTestCertificate.bat ├── Branding ├── logo.bmp ├── Joystick.ico └── PPJGUID.h ├── PPJoyCpl ├── PPJoyCpl.rc ├── PPJoyCpl.aps ├── donate-button.gif ├── TODO.txt ├── PPJoyCpl.sln ├── PPJoyCpl.def ├── ViseFunctions.h ├── DXUtil.h ├── stdafx.cpp ├── ResourceStrings.h ├── DeviceSetup.h ├── Registry.h ├── Debug.h └── DonateDialog.h ├── AddJoyDrivers ├── TODO.txt ├── AddJoyDrivers.rc ├── AddJoyDrivers.sln ├── AddJoyDrivers.def ├── UtilFunc.h ├── Install.h ├── Debug.h └── resource.h ├── Docs ├── Diagrams │ ├── PCAE.gif │ ├── TheMaze.gif │ ├── Tormod.gif │ ├── LPTswitch.gif │ ├── Linux0802.gif │ ├── LinuxDB9c.gif │ ├── STFormat.gif │ ├── Amiga4Player.gif │ ├── CHAMPgames.gif │ ├── DirectPadPro.gif │ ├── IanHarries.gif │ ├── LPTJoyStick.gif │ ├── LinuxGamecon.gif │ ├── SNESkey2600.gif │ ├── TurboGraFX.gif │ ├── SNES │ │ ├── SNESPins.gif │ │ ├── NESPowerPad.gif │ │ └── SNESPortPower.gif │ ├── Sega │ │ ├── SegaLinux.gif │ │ ├── SegaNTPadXP.gif │ │ ├── SegaSNESkey.gif │ │ ├── SegaConsoleCable.gif │ │ ├── SegaDirectPadPro.gif │ │ ├── SegaDirectPadPro6.gif │ │ ├── SegaNTPadXP.htm │ │ ├── SegaConsoleCable.htm │ │ ├── SegaLinux.htm │ │ ├── SegaDirectPadPro6.htm │ │ ├── SegaSNESkey.htm │ │ └── SegaDirectPadPro.htm │ ├── Virtual │ │ ├── PPJoyCOM.gif │ │ ├── PPJoyDLL.gif │ │ ├── PPJoyJoy.gif │ │ ├── PPJoyKey.gif │ │ ├── PPJoyMouse.gif │ │ └── PPJoyKeyScan.gif │ ├── Playstation │ │ ├── PSXPins.gif │ │ ├── PSXPortPower.gif │ │ └── PSXRegPower.gif │ ├── CHAMPgames.htm │ ├── Linux0802.htm │ ├── LPTJoyStick.htm │ ├── Tormod.htm │ ├── SNESkey2600.htm │ ├── TheMaze.htm │ ├── Amiga4Player.htm │ ├── DirectPadPro.htm │ ├── TurboGraFX.htm │ ├── IanHarries.htm │ ├── LinuxDB9c.htm │ ├── PCAE.htm │ ├── STFormat.htm │ ├── LinuxGamecon.htm │ └── GeneralNotes.htm ├── donate-button.gif ├── UserManual │ ├── AddJoy1.gif │ ├── AddJoy2.gif │ ├── AddJoy3.gif │ ├── AddJoy4.gif │ ├── AddJoy5.gif │ ├── AddJoy6.gif │ ├── AddJoy7.gif │ ├── AddJoy8.gif │ ├── AddJoy9.gif │ ├── DelJoy1.gif │ ├── DelJoy2.gif │ ├── Options.gif │ ├── Timing1.gif │ ├── Timing2.gif │ ├── Timing3.gif │ ├── Timing4.gif │ ├── Timing5.gif │ ├── AddJoy10.gif │ ├── AddJoy2a.gif │ ├── Install1.gif │ ├── Install2.gif │ ├── Install3.gif │ ├── Install4.gif │ ├── Install5.gif │ ├── Install6.gif │ ├── Install7.gif │ ├── Install8.gif │ ├── Install9.gif │ ├── Mapping1.gif │ ├── Mapping10.gif │ ├── Mapping11.gif │ ├── Mapping2.gif │ ├── Mapping3.gif │ ├── Mapping4.gif │ ├── Mapping5.gif │ ├── Mapping6.gif │ ├── Mapping7.gif │ ├── Mapping8.gif │ ├── Mapping9.gif │ ├── NoBusEnum.gif │ ├── PPJoyMain.gif │ ├── PPMTiming.gif │ ├── SNESTiming.gif │ ├── StartMenu.gif │ ├── AddJoyError.gif │ ├── ControlPanel.gif │ ├── DriverSign1.gif │ ├── DriverSign2.gif │ ├── DriverSign3.gif │ ├── InstallWarn1.gif │ ├── DriverSign2_2K.gif │ ├── GenesisTiming.gif │ ├── LPTswitchTiming.gif │ ├── PSXByteTiming.gif │ ├── PSXPacketTiming.gif │ ├── PostInstall1_98.gif │ ├── PostInstall2_98.gif │ ├── PostInstall3_98.gif │ ├── PostInstall4_98.gif │ ├── PostInstall5_98.gif │ ├── PostInstall6_98.gif │ ├── PostInstall7_98.gif │ ├── PostInstall8_98.gif │ ├── PostInstall9_98.gif │ ├── PostInstall10_98.gif │ ├── PostInstall11_98.gif │ ├── UnsignedJoyBlock_2K.gif │ ├── UnsignedJoyBlock_XP.gif │ ├── UnsignedJoyWarn_2K.gif │ ├── UnsignedJoyWarn_XP.gif │ └── UnsignedDrivers.htm ├── Contents4.htm ├── Contents6.htm ├── Contents5.htm ├── Contents3.htm ├── PPJoyMain.htm ├── Contents1.htm ├── Contents3e.htm ├── Contents3c.htm ├── Contents3f.htm ├── Contents3d.htm ├── Contents2.htm └── Contents3b.htm ├── Installer ├── pluginapi │ └── api.h └── PPJoyLicence.txt ├── RCCallbackDLLs ├── main.c ├── RCCallbackDLLs.def └── resource.h ├── Visio Diagrams ├── PPM.vsd ├── PCAE.vsd ├── Tormod.vsd ├── STFormat.vsd ├── TheMaze.vsd ├── _Master.gif ├── _Master.vsd ├── CHAMPgames.vsd ├── IanHarries.vsd ├── LPTJoystick.vsd ├── LPTswitch.vsd ├── Linux0802.vsd ├── LinuxDB9c.vsd ├── PPMTiming.vsd ├── SNESTiming.vsd ├── SNESkey2600.vsd ├── TurboGraFX.vsd ├── Amiga4Player.vsd ├── DirectPadPro.vsd ├── GenesisTiming.vsd ├── LinuxGamecon.vsd ├── PSXByteTiming.vsd ├── SNES │ ├── SNESPins.vsd │ ├── NESPowerPad.vsd │ └── SNESPortPower.vsd ├── LPTswitchTiming.vsd ├── PSXPacketTiming.vsd ├── SegaPads │ ├── SegaLinux.vsd │ ├── SegaNTPadXP.vsd │ ├── SegaSNESkey.vsd │ ├── SegaConsoleCable.vsd │ ├── SegaDirectPadPro.vsd │ └── SegaDirectPadPro6.vsd ├── Playstation │ ├── PSXPins.vsd │ ├── PSXRegPower.vsd │ └── PSXPortPower.vsd └── _Master.htm ├── IOCTLSample ├── ppjioctl_devname.h ├── PPJIoctl.h └── IOCTLSample.sln ├── Tools ├── SetVirtualJoyState │ ├── SetVirtualJoyState.ico │ ├── StdAfx.cpp │ ├── SetVirtualJoyState.rc2 │ ├── SetVirtualJoyState.sln │ ├── StdAfx.h │ ├── targetver.h │ ├── SetVirtualJoyState.h │ └── resource.h ├── PPJoyDLL_TestDLL │ ├── PPJoyDLL_TestDLL.def │ └── PPJoyDLL_TestDLL.sln ├── APITest │ └── APITest.sln ├── ColCrop │ └── ColCrop.sln ├── AddDriversTest │ └── AddDriversTest.sln ├── PPJoyCOMLogToBin │ └── PPJoyCOMLogToBin.sln ├── DecodeAeroChopper │ └── DecodeAeroChopper.sln ├── MakeBitSwapLookup │ └── MakeBitSwapLookup.sln └── GenerateSerialStream │ └── GenerateSerialSream.sln ├── PPortJoy ├── TODO.txt ├── makefile ├── PPortJoy.rc ├── sources └── JoyDefs.h ├── PPJoyBus ├── makefile ├── sources └── PPJoyBus.rc ├── Defects.txt ├── PPJoyAPI_turboC++ ├── PPJoyAPI.bdsproj.local ├── DeviceSetup.h ├── PPJGUID.h └── Debug.cpp ├── PPJoy test.txt ├── W98Ports ├── MAKEFILE ├── sources └── W98Ports.rc ├── Helper64 ├── Helper64.sln └── main.c ├── UnInst64 ├── UnInst64.sln └── stdafx.cpp ├── PPJoyAPI ├── PPJoyAPI.sln ├── ReadMe.txt ├── stdafx.cpp └── stdafx.h ├── PPJoyCOM ├── PPJoyCom.sln ├── StdAfx.cpp ├── Debug.h └── Debug.cpp ├── PPJoyDLL ├── PPJoyDLL.sln └── StdAfx.cpp ├── PPJoyJoy ├── PPJoyJoy.sln └── StdAfx.cpp ├── PPJoyKey ├── PPJoyKey.sln └── StdAfx.cpp ├── CreateBAT └── CreateBAT.sln ├── CreateINF └── CreateINF.sln ├── PPJoyMouse ├── PPJoyMouse.sln └── StdAfx.cpp ├── ViseHelper ├── ViseHelper.sln ├── ViseHelper.rc2 ├── ViseHelper.def ├── DriverSigning.h ├── DirectInput.h ├── Testsign.h ├── StdAfx.cpp ├── Debug.h ├── resource.h └── Debug.cpp ├── SetupHelper ├── SetupHelper.sln ├── SetupHelper.def └── Debug.h ├── dirs ├── backup.bat └── LICENSE.md /TestSign/EnableTestSignedDrivers.bat: -------------------------------------------------------------------------------- 1 | Bcdedit.exe -set TESTSIGNING ON 2 | -------------------------------------------------------------------------------- /Branding/logo.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Branding/logo.bmp -------------------------------------------------------------------------------- /PPJoyCpl/PPJoyCpl.rc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/PPJoyCpl/PPJoyCpl.rc -------------------------------------------------------------------------------- /AddJoyDrivers/TODO.txt: -------------------------------------------------------------------------------- 1 | 1. Decide whether to install Bus or Joystick (function) INF first... -------------------------------------------------------------------------------- /Branding/Joystick.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Branding/Joystick.ico -------------------------------------------------------------------------------- /Docs/Diagrams/PCAE.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/PCAE.gif -------------------------------------------------------------------------------- /Docs/donate-button.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/donate-button.gif -------------------------------------------------------------------------------- /Installer/pluginapi/api.h: -------------------------------------------------------------------------------- 1 | /* blank include file to satify reference to api.h in pluginapi.h */ -------------------------------------------------------------------------------- /PPJoyCpl/PPJoyCpl.aps: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/PPJoyCpl/PPJoyCpl.aps -------------------------------------------------------------------------------- /RCCallbackDLLs/main.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/RCCallbackDLLs/main.c -------------------------------------------------------------------------------- /Visio Diagrams/PPM.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/PPM.vsd -------------------------------------------------------------------------------- /Docs/Diagrams/TheMaze.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/TheMaze.gif -------------------------------------------------------------------------------- /Docs/Diagrams/Tormod.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/Tormod.gif -------------------------------------------------------------------------------- /Visio Diagrams/PCAE.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/PCAE.vsd -------------------------------------------------------------------------------- /Visio Diagrams/Tormod.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/Tormod.vsd -------------------------------------------------------------------------------- /Docs/Diagrams/LPTswitch.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/LPTswitch.gif -------------------------------------------------------------------------------- /Docs/Diagrams/Linux0802.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/Linux0802.gif -------------------------------------------------------------------------------- /Docs/Diagrams/LinuxDB9c.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/LinuxDB9c.gif -------------------------------------------------------------------------------- /Docs/Diagrams/STFormat.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/STFormat.gif -------------------------------------------------------------------------------- /Docs/UserManual/AddJoy1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/AddJoy1.gif -------------------------------------------------------------------------------- /Docs/UserManual/AddJoy2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/AddJoy2.gif -------------------------------------------------------------------------------- /Docs/UserManual/AddJoy3.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/AddJoy3.gif -------------------------------------------------------------------------------- /Docs/UserManual/AddJoy4.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/AddJoy4.gif -------------------------------------------------------------------------------- /Docs/UserManual/AddJoy5.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/AddJoy5.gif -------------------------------------------------------------------------------- /Docs/UserManual/AddJoy6.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/AddJoy6.gif -------------------------------------------------------------------------------- /Docs/UserManual/AddJoy7.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/AddJoy7.gif -------------------------------------------------------------------------------- /Docs/UserManual/AddJoy8.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/AddJoy8.gif -------------------------------------------------------------------------------- /Docs/UserManual/AddJoy9.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/AddJoy9.gif -------------------------------------------------------------------------------- /Docs/UserManual/DelJoy1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/DelJoy1.gif -------------------------------------------------------------------------------- /Docs/UserManual/DelJoy2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/DelJoy2.gif -------------------------------------------------------------------------------- /Docs/UserManual/Options.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/Options.gif -------------------------------------------------------------------------------- /Docs/UserManual/Timing1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/Timing1.gif -------------------------------------------------------------------------------- /Docs/UserManual/Timing2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/Timing2.gif -------------------------------------------------------------------------------- /Docs/UserManual/Timing3.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/Timing3.gif -------------------------------------------------------------------------------- /Docs/UserManual/Timing4.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/Timing4.gif -------------------------------------------------------------------------------- /Docs/UserManual/Timing5.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/Timing5.gif -------------------------------------------------------------------------------- /PPJoyCpl/donate-button.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/PPJoyCpl/donate-button.gif -------------------------------------------------------------------------------- /Visio Diagrams/STFormat.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/STFormat.vsd -------------------------------------------------------------------------------- /Visio Diagrams/TheMaze.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/TheMaze.vsd -------------------------------------------------------------------------------- /Visio Diagrams/_Master.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/_Master.gif -------------------------------------------------------------------------------- /Visio Diagrams/_Master.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/_Master.vsd -------------------------------------------------------------------------------- /AddJoyDrivers/AddJoyDrivers.rc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/AddJoyDrivers/AddJoyDrivers.rc -------------------------------------------------------------------------------- /Docs/Diagrams/Amiga4Player.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/Amiga4Player.gif -------------------------------------------------------------------------------- /Docs/Diagrams/CHAMPgames.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/CHAMPgames.gif -------------------------------------------------------------------------------- /Docs/Diagrams/DirectPadPro.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/DirectPadPro.gif -------------------------------------------------------------------------------- /Docs/Diagrams/IanHarries.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/IanHarries.gif -------------------------------------------------------------------------------- /Docs/Diagrams/LPTJoyStick.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/LPTJoyStick.gif -------------------------------------------------------------------------------- /Docs/Diagrams/LinuxGamecon.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/LinuxGamecon.gif -------------------------------------------------------------------------------- /Docs/Diagrams/SNESkey2600.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/SNESkey2600.gif -------------------------------------------------------------------------------- /Docs/Diagrams/TurboGraFX.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/TurboGraFX.gif -------------------------------------------------------------------------------- /Docs/UserManual/AddJoy10.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/AddJoy10.gif -------------------------------------------------------------------------------- /Docs/UserManual/AddJoy2a.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/AddJoy2a.gif -------------------------------------------------------------------------------- /Docs/UserManual/Install1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/Install1.gif -------------------------------------------------------------------------------- /Docs/UserManual/Install2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/Install2.gif -------------------------------------------------------------------------------- /Docs/UserManual/Install3.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/Install3.gif -------------------------------------------------------------------------------- /Docs/UserManual/Install4.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/Install4.gif -------------------------------------------------------------------------------- /Docs/UserManual/Install5.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/Install5.gif -------------------------------------------------------------------------------- /Docs/UserManual/Install6.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/Install6.gif -------------------------------------------------------------------------------- /Docs/UserManual/Install7.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/Install7.gif -------------------------------------------------------------------------------- /Docs/UserManual/Install8.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/Install8.gif -------------------------------------------------------------------------------- /Docs/UserManual/Install9.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/Install9.gif -------------------------------------------------------------------------------- /Docs/UserManual/Mapping1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/Mapping1.gif -------------------------------------------------------------------------------- /Docs/UserManual/Mapping10.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/Mapping10.gif -------------------------------------------------------------------------------- /Docs/UserManual/Mapping11.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/Mapping11.gif -------------------------------------------------------------------------------- /Docs/UserManual/Mapping2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/Mapping2.gif -------------------------------------------------------------------------------- /Docs/UserManual/Mapping3.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/Mapping3.gif -------------------------------------------------------------------------------- /Docs/UserManual/Mapping4.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/Mapping4.gif -------------------------------------------------------------------------------- /Docs/UserManual/Mapping5.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/Mapping5.gif -------------------------------------------------------------------------------- /Docs/UserManual/Mapping6.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/Mapping6.gif -------------------------------------------------------------------------------- /Docs/UserManual/Mapping7.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/Mapping7.gif -------------------------------------------------------------------------------- /Docs/UserManual/Mapping8.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/Mapping8.gif -------------------------------------------------------------------------------- /Docs/UserManual/Mapping9.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/Mapping9.gif -------------------------------------------------------------------------------- /Docs/UserManual/NoBusEnum.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/NoBusEnum.gif -------------------------------------------------------------------------------- /Docs/UserManual/PPJoyMain.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/PPJoyMain.gif -------------------------------------------------------------------------------- /Docs/UserManual/PPMTiming.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/PPMTiming.gif -------------------------------------------------------------------------------- /Docs/UserManual/SNESTiming.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/SNESTiming.gif -------------------------------------------------------------------------------- /Docs/UserManual/StartMenu.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/StartMenu.gif -------------------------------------------------------------------------------- /TestSign/TestCertificate.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/TestSign/TestCertificate.cer -------------------------------------------------------------------------------- /TestSign/TestCertificate.pfx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/TestSign/TestCertificate.pfx -------------------------------------------------------------------------------- /TestSign/TestCertificate.pvk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/TestSign/TestCertificate.pvk -------------------------------------------------------------------------------- /Visio Diagrams/CHAMPgames.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/CHAMPgames.vsd -------------------------------------------------------------------------------- /Visio Diagrams/IanHarries.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/IanHarries.vsd -------------------------------------------------------------------------------- /Visio Diagrams/LPTJoystick.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/LPTJoystick.vsd -------------------------------------------------------------------------------- /Visio Diagrams/LPTswitch.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/LPTswitch.vsd -------------------------------------------------------------------------------- /Visio Diagrams/Linux0802.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/Linux0802.vsd -------------------------------------------------------------------------------- /Visio Diagrams/LinuxDB9c.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/LinuxDB9c.vsd -------------------------------------------------------------------------------- /Visio Diagrams/PPMTiming.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/PPMTiming.vsd -------------------------------------------------------------------------------- /Visio Diagrams/SNESTiming.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/SNESTiming.vsd -------------------------------------------------------------------------------- /Visio Diagrams/SNESkey2600.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/SNESkey2600.vsd -------------------------------------------------------------------------------- /Visio Diagrams/TurboGraFX.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/TurboGraFX.vsd -------------------------------------------------------------------------------- /Docs/Diagrams/SNES/SNESPins.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/SNES/SNESPins.gif -------------------------------------------------------------------------------- /Docs/Diagrams/Sega/SegaLinux.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/Sega/SegaLinux.gif -------------------------------------------------------------------------------- /Docs/UserManual/AddJoyError.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/AddJoyError.gif -------------------------------------------------------------------------------- /Docs/UserManual/ControlPanel.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/ControlPanel.gif -------------------------------------------------------------------------------- /Docs/UserManual/DriverSign1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/DriverSign1.gif -------------------------------------------------------------------------------- /Docs/UserManual/DriverSign2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/DriverSign2.gif -------------------------------------------------------------------------------- /Docs/UserManual/DriverSign3.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/DriverSign3.gif -------------------------------------------------------------------------------- /Docs/UserManual/InstallWarn1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/InstallWarn1.gif -------------------------------------------------------------------------------- /Visio Diagrams/Amiga4Player.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/Amiga4Player.vsd -------------------------------------------------------------------------------- /Visio Diagrams/DirectPadPro.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/DirectPadPro.vsd -------------------------------------------------------------------------------- /Visio Diagrams/GenesisTiming.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/GenesisTiming.vsd -------------------------------------------------------------------------------- /Visio Diagrams/LinuxGamecon.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/LinuxGamecon.vsd -------------------------------------------------------------------------------- /Visio Diagrams/PSXByteTiming.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/PSXByteTiming.vsd -------------------------------------------------------------------------------- /Visio Diagrams/SNES/SNESPins.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/SNES/SNESPins.vsd -------------------------------------------------------------------------------- /Docs/Diagrams/SNES/NESPowerPad.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/SNES/NESPowerPad.gif -------------------------------------------------------------------------------- /Docs/Diagrams/Sega/SegaNTPadXP.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/Sega/SegaNTPadXP.gif -------------------------------------------------------------------------------- /Docs/Diagrams/Sega/SegaSNESkey.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/Sega/SegaSNESkey.gif -------------------------------------------------------------------------------- /Docs/Diagrams/Virtual/PPJoyCOM.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/Virtual/PPJoyCOM.gif -------------------------------------------------------------------------------- /Docs/Diagrams/Virtual/PPJoyDLL.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/Virtual/PPJoyDLL.gif -------------------------------------------------------------------------------- /Docs/Diagrams/Virtual/PPJoyJoy.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/Virtual/PPJoyJoy.gif -------------------------------------------------------------------------------- /Docs/Diagrams/Virtual/PPJoyKey.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/Virtual/PPJoyKey.gif -------------------------------------------------------------------------------- /Docs/UserManual/DriverSign2_2K.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/DriverSign2_2K.gif -------------------------------------------------------------------------------- /Docs/UserManual/GenesisTiming.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/GenesisTiming.gif -------------------------------------------------------------------------------- /Docs/UserManual/LPTswitchTiming.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/LPTswitchTiming.gif -------------------------------------------------------------------------------- /Docs/UserManual/PSXByteTiming.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/PSXByteTiming.gif -------------------------------------------------------------------------------- /Docs/UserManual/PSXPacketTiming.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/PSXPacketTiming.gif -------------------------------------------------------------------------------- /Docs/UserManual/PostInstall1_98.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/PostInstall1_98.gif -------------------------------------------------------------------------------- /Docs/UserManual/PostInstall2_98.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/PostInstall2_98.gif -------------------------------------------------------------------------------- /Docs/UserManual/PostInstall3_98.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/PostInstall3_98.gif -------------------------------------------------------------------------------- /Docs/UserManual/PostInstall4_98.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/PostInstall4_98.gif -------------------------------------------------------------------------------- /Docs/UserManual/PostInstall5_98.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/PostInstall5_98.gif -------------------------------------------------------------------------------- /Docs/UserManual/PostInstall6_98.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/PostInstall6_98.gif -------------------------------------------------------------------------------- /Docs/UserManual/PostInstall7_98.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/PostInstall7_98.gif -------------------------------------------------------------------------------- /Docs/UserManual/PostInstall8_98.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/PostInstall8_98.gif -------------------------------------------------------------------------------- /Docs/UserManual/PostInstall9_98.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/PostInstall9_98.gif -------------------------------------------------------------------------------- /Visio Diagrams/LPTswitchTiming.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/LPTswitchTiming.vsd -------------------------------------------------------------------------------- /Visio Diagrams/PSXPacketTiming.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/PSXPacketTiming.vsd -------------------------------------------------------------------------------- /Visio Diagrams/SNES/NESPowerPad.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/SNES/NESPowerPad.vsd -------------------------------------------------------------------------------- /Docs/Diagrams/Playstation/PSXPins.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/Playstation/PSXPins.gif -------------------------------------------------------------------------------- /Docs/Diagrams/SNES/SNESPortPower.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/SNES/SNESPortPower.gif -------------------------------------------------------------------------------- /Docs/Diagrams/Virtual/PPJoyMouse.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/Virtual/PPJoyMouse.gif -------------------------------------------------------------------------------- /Docs/UserManual/PostInstall10_98.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/PostInstall10_98.gif -------------------------------------------------------------------------------- /Docs/UserManual/PostInstall11_98.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/PostInstall11_98.gif -------------------------------------------------------------------------------- /Visio Diagrams/SNES/SNESPortPower.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/SNES/SNESPortPower.vsd -------------------------------------------------------------------------------- /Visio Diagrams/SegaPads/SegaLinux.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/SegaPads/SegaLinux.vsd -------------------------------------------------------------------------------- /Docs/Diagrams/Sega/SegaConsoleCable.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/Sega/SegaConsoleCable.gif -------------------------------------------------------------------------------- /Docs/Diagrams/Sega/SegaDirectPadPro.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/Sega/SegaDirectPadPro.gif -------------------------------------------------------------------------------- /Docs/Diagrams/Sega/SegaDirectPadPro6.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/Sega/SegaDirectPadPro6.gif -------------------------------------------------------------------------------- /Docs/Diagrams/Virtual/PPJoyKeyScan.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/Virtual/PPJoyKeyScan.gif -------------------------------------------------------------------------------- /Docs/UserManual/UnsignedJoyBlock_2K.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/UnsignedJoyBlock_2K.gif -------------------------------------------------------------------------------- /Docs/UserManual/UnsignedJoyBlock_XP.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/UnsignedJoyBlock_XP.gif -------------------------------------------------------------------------------- /Docs/UserManual/UnsignedJoyWarn_2K.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/UnsignedJoyWarn_2K.gif -------------------------------------------------------------------------------- /Docs/UserManual/UnsignedJoyWarn_XP.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/UserManual/UnsignedJoyWarn_XP.gif -------------------------------------------------------------------------------- /Visio Diagrams/Playstation/PSXPins.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/Playstation/PSXPins.vsd -------------------------------------------------------------------------------- /Visio Diagrams/SegaPads/SegaNTPadXP.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/SegaPads/SegaNTPadXP.vsd -------------------------------------------------------------------------------- /Visio Diagrams/SegaPads/SegaSNESkey.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/SegaPads/SegaSNESkey.vsd -------------------------------------------------------------------------------- /Docs/Diagrams/Playstation/PSXPortPower.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/Playstation/PSXPortPower.gif -------------------------------------------------------------------------------- /Docs/Diagrams/Playstation/PSXRegPower.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Docs/Diagrams/Playstation/PSXRegPower.gif -------------------------------------------------------------------------------- /IOCTLSample/ppjioctl_devname.h: -------------------------------------------------------------------------------- 1 | #ifndef PPJOY_IOCTL_DEVNAME 2 | #define PPJOY_IOCTL_DEVNAME "\\\\.\\PPJoyIOCTL1" 3 | #endif 4 | -------------------------------------------------------------------------------- /Visio Diagrams/Playstation/PSXRegPower.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/Playstation/PSXRegPower.vsd -------------------------------------------------------------------------------- /Visio Diagrams/Playstation/PSXPortPower.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/Playstation/PSXPortPower.vsd -------------------------------------------------------------------------------- /Visio Diagrams/SegaPads/SegaConsoleCable.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/SegaPads/SegaConsoleCable.vsd -------------------------------------------------------------------------------- /Visio Diagrams/SegaPads/SegaDirectPadPro.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/SegaPads/SegaDirectPadPro.vsd -------------------------------------------------------------------------------- /Visio Diagrams/SegaPads/SegaDirectPadPro6.vsd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Visio Diagrams/SegaPads/SegaDirectPadPro6.vsd -------------------------------------------------------------------------------- /Tools/SetVirtualJoyState/SetVirtualJoyState.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elitak/PPJoy/HEAD/Tools/SetVirtualJoyState/SetVirtualJoyState.ico -------------------------------------------------------------------------------- /PPortJoy/TODO.txt: -------------------------------------------------------------------------------- 1 | Bugs: 2 | - Analog POV goes into NUL after about 320 deg. ==> Game controllers bug (it seems) 3 | 4 | Ideas: 5 | - Autofire? 6 | - Support for N64 7 | 8 | -------------------------------------------------------------------------------- /PPJoyCpl/TODO.txt: -------------------------------------------------------------------------------- 1 | 1. On uninstall, remove param reg keys from bus enumerator. [Decide if need to be so] 2 | 3 | 2. Counter (5 times) until no-bug-donate check box is displayed... 4 | -------------------------------------------------------------------------------- /TestSign/MakeTestCertificate.bat: -------------------------------------------------------------------------------- 1 | MakeCert -r -pe -sv TestCertificate.pvk -n "CN=Deon van der Westhuysen Test Certificate" TestCertificate.cer 2 | pvk2pfx -pvk TestCertificate.pvk -spc TestCertificate.cer -pfx TestCertificate.pfx 3 | -------------------------------------------------------------------------------- /Tools/SetVirtualJoyState/StdAfx.cpp: -------------------------------------------------------------------------------- 1 | // stdafx.cpp : source file that includes just the standard includes 2 | // SetVirtualJoyState.pch will be the pre-compiled header 3 | // stdafx.obj will contain the pre-compiled type information 4 | 5 | #include "stdafx.h" 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /PPJoyBus/makefile: -------------------------------------------------------------------------------- 1 | # 2 | # DO NOT EDIT THIS FILE!!! Edit .\sources. if you want to add a new source 3 | # file to this component. This file merely indirects to the real make file 4 | # that is shared by all the driver components of the Windows NT DDK 5 | # 6 | 7 | !INCLUDE $(NTMAKEENV)\makefile.def 8 | 9 | -------------------------------------------------------------------------------- /PPortJoy/makefile: -------------------------------------------------------------------------------- 1 | # 2 | # DO NOT EDIT THIS FILE!!! Edit .\sources. if you want to add a new source 3 | # file to this component. This file merely indirects to the real make file 4 | # that is shared by all the driver components of the Windows NT DDK 5 | # 6 | 7 | !INCLUDE $(NTMAKEENV)\makefile.def 8 | 9 | -------------------------------------------------------------------------------- /Defects.txt: -------------------------------------------------------------------------------- 1 | 1. No error message from installer if driversign= warn and click on stop for joystick device. 2 | - There is an error message if you click on stop for bus enumerator. 3 | 4 | 2. Warnings in eventviewer about options registry entries for PPjoybus 5 | 6 | 3. Genesis 6 button (timing) issues (esp NTPadXP) 7 | 8 | -------------------------------------------------------------------------------- /PPJoyAPI_turboC++/PPJoyAPI.bdsproj.local: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 2008/05/05 08:20:04.499.cpp,C:\Temp\PPJoy\PPJoyAPI\PPJoyAPI.cpp= 5 | 2008/05/05 08:20:54.186.bdsproj,C:\Documents and Settings\Administrator\My Documents\Borland Studio Projects\Project1.bdsproj=C:\Temp\PPJoy\PPJoyAPI\PPJoyAPI.bdsproj 6 | 7 | 8 | -------------------------------------------------------------------------------- /Tools/SetVirtualJoyState/SetVirtualJoyState.rc2: -------------------------------------------------------------------------------- 1 | // 2 | // SETVIRTUALJOYSTATE.RC2 - resources Microsoft Visual C++ does not edit directly 3 | // 4 | 5 | #ifdef APSTUDIO_INVOKED 6 | #error this file is not editable by Microsoft Visual C++ 7 | #endif //APSTUDIO_INVOKED 8 | 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // Add manually edited resources here... 12 | 13 | ///////////////////////////////////////////////////////////////////////////// 14 | -------------------------------------------------------------------------------- /Installer/PPJoyLicence.txt: -------------------------------------------------------------------------------- 1 | PPJoy 0.8.4.6 Open Source 2 | ========================= 3 | 4 | License 5 | ------- 6 | 7 | This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. 8 | 9 | 10 | 64 bit support 11 | -------------- 12 | 13 | PPJoy now provides a driver for 64 bit Windows versions (e.g Vista x64 and Windows 7 x64). These drivers are test-signed and requires Windows to run in TEST MODE to load the drivers. Test signing mode can be enabled by running "BCDEDIT -SET TESTSIGNING ON" in an administrative command prompt. 14 | -------------------------------------------------------------------------------- /PPJoy test.txt: -------------------------------------------------------------------------------- 1 | 2 | 0. Check install fails 3 | - If driver sign on 4 | 5 | 6 | 1. Install on clean machine 7 | - Test links to PPJoy mouse, joy, key, dll 8 | - Test link to doc 9 | - Test control panel 10 | - Add joystick and test with PPJoy mouse 11 | 12 | 2. Uninstall PPJoy 13 | - Check program files cleaned 14 | - Check start menu clean 15 | - Check control panel deleted 16 | 17 | 3. Install PPJoy again 18 | - Make sure joy is listed (from step 1) 19 | - Delete joystick 20 | 21 | 4. Install PPJoy again 22 | 23 | 5. Uninstall PPJoy 24 | - Check program files cleaned 25 | - Check start menu clean 26 | - Check control panel deleted 27 | 28 | 29 | -------------------------------------------------------------------------------- /IOCTLSample/PPJIoctl.h: -------------------------------------------------------------------------------- 1 | #ifndef __PPJIOCTL_H__ 2 | #define __PPJIOCTL_H__ 3 | 4 | /* Define to use byte-size values for joystick axes, else dword size */ 5 | #undef UCHAR_AXES 6 | 7 | #define PPJOY_AXIS_MIN 1 8 | #ifdef UCHAR_AXES 9 | #define PPJOY_AXIS_MAX 127 10 | #else 11 | #define PPJOY_AXIS_MAX 32767 12 | #endif 13 | 14 | #define FILE_DEVICE_PPORTJOY FILE_DEVICE_UNKNOWN 15 | 16 | #define PPORTJOY_IOCTL(_index_) \ 17 | CTL_CODE (FILE_DEVICE_PPORTJOY, _index_, METHOD_BUFFERED, FILE_ANY_ACCESS) 18 | 19 | #define IOCTL_PPORTJOY_SET_STATE PPORTJOY_IOCTL (0x0) 20 | 21 | #define JOYSTICK_STATE_V1 0x53544143 22 | 23 | typedef struct 24 | { 25 | ULONG Version; 26 | UCHAR Data[1]; 27 | } JOYSTICK_SET_STATE, *PJOYSTICK_SET_STATE; 28 | 29 | 30 | #endif 31 | -------------------------------------------------------------------------------- /W98Ports/MAKEFILE: -------------------------------------------------------------------------------- 1 | ############################################################################# 2 | # 3 | # Copyright (C) Microsoft Corporation 1995 4 | # All Rights Reserved. 5 | # 6 | # MAKEFILE for WDM device driver kit 7 | # 8 | ############################################################################# 9 | 10 | # 11 | # DO NOT EDIT THIS FILE!!! Edit .\sources. if you want to add a new source 12 | # file to this component. This file merely indirects to the real make file 13 | # that is shared by all the driver components of the Windows NT DDK 14 | # 15 | 16 | DDK_BLOCK_ON_AMD64=1 #do not build for 64 bit build environments 17 | DDK_BLOCK_ON_IA64=1 18 | !INCLUDE $(NTMAKEENV)\makefile.def 19 | 20 | 21 | -------------------------------------------------------------------------------- /Helper64/Helper64.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 10.00 3 | # Visual Studio 2008 4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Helper64", "Helper64.vcproj", "{0C2ACFD1-795E-491B-A1FD-AD4EE1F85D5B}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|x64 = Debug|x64 9 | Release|x64 = Release|x64 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {0C2ACFD1-795E-491B-A1FD-AD4EE1F85D5B}.Debug|x64.ActiveCfg = Debug|x64 13 | {0C2ACFD1-795E-491B-A1FD-AD4EE1F85D5B}.Debug|x64.Build.0 = Debug|x64 14 | {0C2ACFD1-795E-491B-A1FD-AD4EE1F85D5B}.Release|x64.ActiveCfg = Release|x64 15 | {0C2ACFD1-795E-491B-A1FD-AD4EE1F85D5B}.Release|x64.Build.0 = Release|x64 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | EndGlobal 21 | -------------------------------------------------------------------------------- /UnInst64/UnInst64.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 10.00 3 | # Visual Studio 2008 4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "UnInst64", "UnInst64.vcproj", "{35AFB6EF-84D4-4C61-AED5-C98D369BEE4C}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|x64 = Debug|x64 9 | Release|x64 = Release|x64 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {35AFB6EF-84D4-4C61-AED5-C98D369BEE4C}.Debug|x64.ActiveCfg = Debug|x64 13 | {35AFB6EF-84D4-4C61-AED5-C98D369BEE4C}.Debug|x64.Build.0 = Debug|x64 14 | {35AFB6EF-84D4-4C61-AED5-C98D369BEE4C}.Release|x64.ActiveCfg = Release|x64 15 | {35AFB6EF-84D4-4C61-AED5-C98D369BEE4C}.Release|x64.Build.0 = Release|x64 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | EndGlobal 21 | -------------------------------------------------------------------------------- /Tools/PPJoyDLL_TestDLL/PPJoyDLL_TestDLL.def: -------------------------------------------------------------------------------- 1 | ; 2 | ; PPJoy Virtual Joystick for Microsoft Windows 3 | ; Copyright (C) 2011 Deon van der Westhuysen 4 | ; 5 | ; This program is free software: you can redistribute it and/or modify 6 | ; it under the terms of the GNU General Public License as published by 7 | ; the Free Software Foundation, either version 3 of the License, or 8 | ; (at your option) any later version. 9 | ; 10 | ; This program is distributed in the hope that it will be useful, 11 | ; but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | ; GNU General Public License for more details. 14 | ; 15 | ; You should have received a copy of the GNU General Public License 16 | ; along with this program. If not, see . 17 | ; 18 | 19 | LIBRARY PPJoyDLL_TestDLL 20 | EXPORTS 21 | joyGetPosEx 22 | joyGetDevCapsA -------------------------------------------------------------------------------- /PPJoyAPI/PPJoyAPI.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 10.00 3 | # Visual Studio 2008 4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "PPJoyAPI", "PPJoyAPI.vcproj", "{0245E3E8-3A8D-4172-BC53-7523917795A0}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|Win32 = Debug|Win32 9 | Release|Win32 = Release|Win32 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {0245E3E8-3A8D-4172-BC53-7523917795A0}.Debug|Win32.ActiveCfg = Debug|Win32 13 | {0245E3E8-3A8D-4172-BC53-7523917795A0}.Debug|Win32.Build.0 = Debug|Win32 14 | {0245E3E8-3A8D-4172-BC53-7523917795A0}.Release|Win32.ActiveCfg = Release|Win32 15 | {0245E3E8-3A8D-4172-BC53-7523917795A0}.Release|Win32.Build.0 = Release|Win32 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | EndGlobal 21 | -------------------------------------------------------------------------------- /PPJoyCOM/PPJoyCom.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 10.00 3 | # Visual Studio 2008 4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "PPJoyCom", "PPJoyCom.vcproj", "{4054C4C7-D274-4304-9E85-B4D5F858B1C0}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|Win32 = Debug|Win32 9 | Release|Win32 = Release|Win32 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {4054C4C7-D274-4304-9E85-B4D5F858B1C0}.Debug|Win32.ActiveCfg = Debug|Win32 13 | {4054C4C7-D274-4304-9E85-B4D5F858B1C0}.Debug|Win32.Build.0 = Debug|Win32 14 | {4054C4C7-D274-4304-9E85-B4D5F858B1C0}.Release|Win32.ActiveCfg = Release|Win32 15 | {4054C4C7-D274-4304-9E85-B4D5F858B1C0}.Release|Win32.Build.0 = Release|Win32 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | EndGlobal 21 | -------------------------------------------------------------------------------- /PPJoyCpl/PPJoyCpl.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 10.00 3 | # Visual Studio 2008 4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "PPJoyCpl", "PPJoyCpl.vcproj", "{D2BE1301-0780-4755-BE43-EE0092823B17}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|Win32 = Debug|Win32 9 | Release|Win32 = Release|Win32 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {D2BE1301-0780-4755-BE43-EE0092823B17}.Debug|Win32.ActiveCfg = Debug|Win32 13 | {D2BE1301-0780-4755-BE43-EE0092823B17}.Debug|Win32.Build.0 = Debug|Win32 14 | {D2BE1301-0780-4755-BE43-EE0092823B17}.Release|Win32.ActiveCfg = Release|Win32 15 | {D2BE1301-0780-4755-BE43-EE0092823B17}.Release|Win32.Build.0 = Release|Win32 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | EndGlobal 21 | -------------------------------------------------------------------------------- /PPJoyDLL/PPJoyDLL.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 10.00 3 | # Visual Studio 2008 4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "PPJoyDLL", "PPJoyDLL.vcproj", "{16230444-DAD4-493B-BA76-6D2D4A39AA68}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|Win32 = Debug|Win32 9 | Release|Win32 = Release|Win32 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {16230444-DAD4-493B-BA76-6D2D4A39AA68}.Debug|Win32.ActiveCfg = Debug|Win32 13 | {16230444-DAD4-493B-BA76-6D2D4A39AA68}.Debug|Win32.Build.0 = Debug|Win32 14 | {16230444-DAD4-493B-BA76-6D2D4A39AA68}.Release|Win32.ActiveCfg = Release|Win32 15 | {16230444-DAD4-493B-BA76-6D2D4A39AA68}.Release|Win32.Build.0 = Release|Win32 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | EndGlobal 21 | -------------------------------------------------------------------------------- /PPJoyJoy/PPJoyJoy.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 10.00 3 | # Visual Studio 2008 4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "PPJoyJoy", "PPJoyJoy.vcproj", "{44A90606-04A6-46F1-A398-8C4CACF213D2}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|Win32 = Debug|Win32 9 | Release|Win32 = Release|Win32 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {44A90606-04A6-46F1-A398-8C4CACF213D2}.Debug|Win32.ActiveCfg = Debug|Win32 13 | {44A90606-04A6-46F1-A398-8C4CACF213D2}.Debug|Win32.Build.0 = Debug|Win32 14 | {44A90606-04A6-46F1-A398-8C4CACF213D2}.Release|Win32.ActiveCfg = Release|Win32 15 | {44A90606-04A6-46F1-A398-8C4CACF213D2}.Release|Win32.Build.0 = Release|Win32 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | EndGlobal 21 | -------------------------------------------------------------------------------- /PPJoyKey/PPJoyKey.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 10.00 3 | # Visual Studio 2008 4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "PPJoyKey", "PPJoyKey.vcproj", "{7CCE7427-E4B6-405C-AE2B-A4D382774A74}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|Win32 = Debug|Win32 9 | Release|Win32 = Release|Win32 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {7CCE7427-E4B6-405C-AE2B-A4D382774A74}.Debug|Win32.ActiveCfg = Debug|Win32 13 | {7CCE7427-E4B6-405C-AE2B-A4D382774A74}.Debug|Win32.Build.0 = Debug|Win32 14 | {7CCE7427-E4B6-405C-AE2B-A4D382774A74}.Release|Win32.ActiveCfg = Release|Win32 15 | {7CCE7427-E4B6-405C-AE2B-A4D382774A74}.Release|Win32.Build.0 = Release|Win32 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | EndGlobal 21 | -------------------------------------------------------------------------------- /Tools/APITest/APITest.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 10.00 3 | # Visual Studio 2008 4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "APITest", "APITest.vcproj", "{A38D6F1F-9A3E-4D5E-A4C3-D8B8EB8EB2FA}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|Win32 = Debug|Win32 9 | Release|Win32 = Release|Win32 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {A38D6F1F-9A3E-4D5E-A4C3-D8B8EB8EB2FA}.Debug|Win32.ActiveCfg = Debug|Win32 13 | {A38D6F1F-9A3E-4D5E-A4C3-D8B8EB8EB2FA}.Debug|Win32.Build.0 = Debug|Win32 14 | {A38D6F1F-9A3E-4D5E-A4C3-D8B8EB8EB2FA}.Release|Win32.ActiveCfg = Release|Win32 15 | {A38D6F1F-9A3E-4D5E-A4C3-D8B8EB8EB2FA}.Release|Win32.Build.0 = Release|Win32 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | EndGlobal 21 | -------------------------------------------------------------------------------- /Tools/ColCrop/ColCrop.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 10.00 3 | # Visual Studio 2008 4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ColCrop", "ColCrop.vcproj", "{83B6F7DC-CE84-40E7-991D-AF7CC0B068A9}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|Win32 = Debug|Win32 9 | Release|Win32 = Release|Win32 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {83B6F7DC-CE84-40E7-991D-AF7CC0B068A9}.Debug|Win32.ActiveCfg = Debug|Win32 13 | {83B6F7DC-CE84-40E7-991D-AF7CC0B068A9}.Debug|Win32.Build.0 = Debug|Win32 14 | {83B6F7DC-CE84-40E7-991D-AF7CC0B068A9}.Release|Win32.ActiveCfg = Release|Win32 15 | {83B6F7DC-CE84-40E7-991D-AF7CC0B068A9}.Release|Win32.Build.0 = Release|Win32 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | EndGlobal 21 | -------------------------------------------------------------------------------- /CreateBAT/CreateBAT.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 10.00 3 | # Visual Studio 2008 4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "CreateBAT", "CreateBAT.vcproj", "{93A55841-70D8-4243-806F-912014D4000F}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|Win32 = Debug|Win32 9 | Release|Win32 = Release|Win32 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {93A55841-70D8-4243-806F-912014D4000F}.Debug|Win32.ActiveCfg = Debug|Win32 13 | {93A55841-70D8-4243-806F-912014D4000F}.Debug|Win32.Build.0 = Debug|Win32 14 | {93A55841-70D8-4243-806F-912014D4000F}.Release|Win32.ActiveCfg = Release|Win32 15 | {93A55841-70D8-4243-806F-912014D4000F}.Release|Win32.Build.0 = Release|Win32 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | EndGlobal 21 | -------------------------------------------------------------------------------- /CreateINF/CreateINF.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 10.00 3 | # Visual Studio 2008 4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "CreateINF", "CreateINF.vcproj", "{FDB0AB61-6638-4B98-95DF-F35921112DDA}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|Win32 = Debug|Win32 9 | Release|Win32 = Release|Win32 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {FDB0AB61-6638-4B98-95DF-F35921112DDA}.Debug|Win32.ActiveCfg = Debug|Win32 13 | {FDB0AB61-6638-4B98-95DF-F35921112DDA}.Debug|Win32.Build.0 = Debug|Win32 14 | {FDB0AB61-6638-4B98-95DF-F35921112DDA}.Release|Win32.ActiveCfg = Release|Win32 15 | {FDB0AB61-6638-4B98-95DF-F35921112DDA}.Release|Win32.Build.0 = Release|Win32 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | EndGlobal 21 | -------------------------------------------------------------------------------- /PPJoyMouse/PPJoyMouse.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 10.00 3 | # Visual Studio 2008 4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "PPJoyMouse", "PPJoyMouse.vcproj", "{BB242BD9-A239-41BF-A680-74341078A2D5}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|Win32 = Debug|Win32 9 | Release|Win32 = Release|Win32 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {BB242BD9-A239-41BF-A680-74341078A2D5}.Debug|Win32.ActiveCfg = Debug|Win32 13 | {BB242BD9-A239-41BF-A680-74341078A2D5}.Debug|Win32.Build.0 = Debug|Win32 14 | {BB242BD9-A239-41BF-A680-74341078A2D5}.Release|Win32.ActiveCfg = Release|Win32 15 | {BB242BD9-A239-41BF-A680-74341078A2D5}.Release|Win32.Build.0 = Release|Win32 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | EndGlobal 21 | -------------------------------------------------------------------------------- /ViseHelper/ViseHelper.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 10.00 3 | # Visual Studio 2008 4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ViseHelper", "ViseHelper.vcproj", "{D1C20E8E-FEA1-4E29-ACC5-9F0E0AEB9F03}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|Win32 = Debug|Win32 9 | Release|Win32 = Release|Win32 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {D1C20E8E-FEA1-4E29-ACC5-9F0E0AEB9F03}.Debug|Win32.ActiveCfg = Debug|Win32 13 | {D1C20E8E-FEA1-4E29-ACC5-9F0E0AEB9F03}.Debug|Win32.Build.0 = Debug|Win32 14 | {D1C20E8E-FEA1-4E29-ACC5-9F0E0AEB9F03}.Release|Win32.ActiveCfg = Release|Win32 15 | {D1C20E8E-FEA1-4E29-ACC5-9F0E0AEB9F03}.Release|Win32.Build.0 = Release|Win32 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | EndGlobal 21 | -------------------------------------------------------------------------------- /IOCTLSample/IOCTLSample.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 10.00 3 | # Visual Studio 2008 4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "IOCTLSample", "IOCTLSample.vcproj", "{E6BAD5E5-100C-4B39-B7A7-E9FE62F62BD2}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|Win32 = Debug|Win32 9 | Release|Win32 = Release|Win32 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {E6BAD5E5-100C-4B39-B7A7-E9FE62F62BD2}.Debug|Win32.ActiveCfg = Debug|Win32 13 | {E6BAD5E5-100C-4B39-B7A7-E9FE62F62BD2}.Debug|Win32.Build.0 = Debug|Win32 14 | {E6BAD5E5-100C-4B39-B7A7-E9FE62F62BD2}.Release|Win32.ActiveCfg = Release|Win32 15 | {E6BAD5E5-100C-4B39-B7A7-E9FE62F62BD2}.Release|Win32.Build.0 = Release|Win32 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | EndGlobal 21 | -------------------------------------------------------------------------------- /SetupHelper/SetupHelper.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 9.00 3 | # Visual C++ Express 2005 4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SetupHelper", "SetupHelper.vcproj", "{CAF47B1E-A1C6-4C67-BFFB-6DC46E626588}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|Win32 = Debug|Win32 9 | Release|Win32 = Release|Win32 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {CAF47B1E-A1C6-4C67-BFFB-6DC46E626588}.Debug|Win32.ActiveCfg = Debug|Win32 13 | {CAF47B1E-A1C6-4C67-BFFB-6DC46E626588}.Debug|Win32.Build.0 = Debug|Win32 14 | {CAF47B1E-A1C6-4C67-BFFB-6DC46E626588}.Release|Win32.ActiveCfg = Release|Win32 15 | {CAF47B1E-A1C6-4C67-BFFB-6DC46E626588}.Release|Win32.Build.0 = Release|Win32 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | EndGlobal 21 | -------------------------------------------------------------------------------- /AddJoyDrivers/AddJoyDrivers.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 10.00 3 | # Visual Studio 2008 4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "AddJoyDrivers", "AddJoyDrivers.vcproj", "{F714D70F-67CE-4D0C-B0F2-7AE3CAA0C9F5}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|Win32 = Debug|Win32 9 | Release|Win32 = Release|Win32 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {F714D70F-67CE-4D0C-B0F2-7AE3CAA0C9F5}.Debug|Win32.ActiveCfg = Debug|Win32 13 | {F714D70F-67CE-4D0C-B0F2-7AE3CAA0C9F5}.Debug|Win32.Build.0 = Debug|Win32 14 | {F714D70F-67CE-4D0C-B0F2-7AE3CAA0C9F5}.Release|Win32.ActiveCfg = Release|Win32 15 | {F714D70F-67CE-4D0C-B0F2-7AE3CAA0C9F5}.Release|Win32.Build.0 = Release|Win32 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | EndGlobal 21 | -------------------------------------------------------------------------------- /Tools/AddDriversTest/AddDriversTest.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 10.00 3 | # Visual Studio 2008 4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "AddDriversTest", "AddDriversTest.vcproj", "{01A39A44-0A37-442E-889A-8CC652D29C2F}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|Win32 = Debug|Win32 9 | Release|Win32 = Release|Win32 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {01A39A44-0A37-442E-889A-8CC652D29C2F}.Debug|Win32.ActiveCfg = Debug|Win32 13 | {01A39A44-0A37-442E-889A-8CC652D29C2F}.Debug|Win32.Build.0 = Debug|Win32 14 | {01A39A44-0A37-442E-889A-8CC652D29C2F}.Release|Win32.ActiveCfg = Release|Win32 15 | {01A39A44-0A37-442E-889A-8CC652D29C2F}.Release|Win32.Build.0 = Release|Win32 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | EndGlobal 21 | -------------------------------------------------------------------------------- /Tools/PPJoyCOMLogToBin/PPJoyCOMLogToBin.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 10.00 3 | # Visual Studio 2008 4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "PPJoyCOMLogToBin", "PPJoyCOMLogToBin.vcproj", "{42C7F867-3DAF-4652-BA65-6D41F7A46C28}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|Win32 = Debug|Win32 9 | Release|Win32 = Release|Win32 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {42C7F867-3DAF-4652-BA65-6D41F7A46C28}.Debug|Win32.ActiveCfg = Debug|Win32 13 | {42C7F867-3DAF-4652-BA65-6D41F7A46C28}.Debug|Win32.Build.0 = Debug|Win32 14 | {42C7F867-3DAF-4652-BA65-6D41F7A46C28}.Release|Win32.ActiveCfg = Release|Win32 15 | {42C7F867-3DAF-4652-BA65-6D41F7A46C28}.Release|Win32.Build.0 = Release|Win32 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | EndGlobal 21 | -------------------------------------------------------------------------------- /Tools/PPJoyDLL_TestDLL/PPJoyDLL_TestDLL.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 10.00 3 | # Visual Studio 2008 4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "PPJoyDLL_TestDLL", "PPJoyDLL_TestDLL.vcproj", "{EAABFD15-52B0-47CE-8AD2-413BD067637A}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|Win32 = Debug|Win32 9 | Release|Win32 = Release|Win32 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {EAABFD15-52B0-47CE-8AD2-413BD067637A}.Debug|Win32.ActiveCfg = Debug|Win32 13 | {EAABFD15-52B0-47CE-8AD2-413BD067637A}.Debug|Win32.Build.0 = Debug|Win32 14 | {EAABFD15-52B0-47CE-8AD2-413BD067637A}.Release|Win32.ActiveCfg = Release|Win32 15 | {EAABFD15-52B0-47CE-8AD2-413BD067637A}.Release|Win32.Build.0 = Release|Win32 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | EndGlobal 21 | -------------------------------------------------------------------------------- /Tools/DecodeAeroChopper/DecodeAeroChopper.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 10.00 3 | # Visual Studio 2008 4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "DecodeAeroChopper", "DecodeAeroChopper.vcproj", "{927F490D-13E2-48CD-A841-363BD8815D70}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|Win32 = Debug|Win32 9 | Release|Win32 = Release|Win32 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {927F490D-13E2-48CD-A841-363BD8815D70}.Debug|Win32.ActiveCfg = Debug|Win32 13 | {927F490D-13E2-48CD-A841-363BD8815D70}.Debug|Win32.Build.0 = Debug|Win32 14 | {927F490D-13E2-48CD-A841-363BD8815D70}.Release|Win32.ActiveCfg = Release|Win32 15 | {927F490D-13E2-48CD-A841-363BD8815D70}.Release|Win32.Build.0 = Release|Win32 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | EndGlobal 21 | -------------------------------------------------------------------------------- /Tools/MakeBitSwapLookup/MakeBitSwapLookup.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 10.00 3 | # Visual Studio 2008 4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "MakeBitSwapLookup", "MakeBitSwapLookup.vcproj", "{76B71A19-2323-4BF3-97E9-2EF922BBDE3A}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|Win32 = Debug|Win32 9 | Release|Win32 = Release|Win32 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {76B71A19-2323-4BF3-97E9-2EF922BBDE3A}.Debug|Win32.ActiveCfg = Debug|Win32 13 | {76B71A19-2323-4BF3-97E9-2EF922BBDE3A}.Debug|Win32.Build.0 = Debug|Win32 14 | {76B71A19-2323-4BF3-97E9-2EF922BBDE3A}.Release|Win32.ActiveCfg = Release|Win32 15 | {76B71A19-2323-4BF3-97E9-2EF922BBDE3A}.Release|Win32.Build.0 = Release|Win32 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | EndGlobal 21 | -------------------------------------------------------------------------------- /Tools/SetVirtualJoyState/SetVirtualJoyState.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 10.00 3 | # Visual Studio 2008 4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SetVirtualJoyState", "SetVirtualJoyState.vcproj", "{FB798A9A-DC27-4EE3-B4A7-E8A34734E8ED}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|Win32 = Debug|Win32 9 | Release|Win32 = Release|Win32 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {FB798A9A-DC27-4EE3-B4A7-E8A34734E8ED}.Debug|Win32.ActiveCfg = Debug|Win32 13 | {FB798A9A-DC27-4EE3-B4A7-E8A34734E8ED}.Debug|Win32.Build.0 = Debug|Win32 14 | {FB798A9A-DC27-4EE3-B4A7-E8A34734E8ED}.Release|Win32.ActiveCfg = Release|Win32 15 | {FB798A9A-DC27-4EE3-B4A7-E8A34734E8ED}.Release|Win32.Build.0 = Release|Win32 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | EndGlobal 21 | -------------------------------------------------------------------------------- /Docs/Diagrams/CHAMPgames.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 |

CHAMPgames

19 | 20 | 21 |
22 | 23 |
24 |

25 | 26 |

Notes

27 | 30 |

31 | 32 |

Credits

33 | The original diagram and information for this interface can be found at http://www.champ-em.com/diagram.htm. 34 | 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /Tools/GenerateSerialStream/GenerateSerialSream.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 10.00 3 | # Visual Studio 2008 4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GenerateSerialSream", "GenerateSerialSream.vcproj", "{00FDD34E-5A9D-481E-9824-EAAF4F6381E4}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|Win32 = Debug|Win32 9 | Release|Win32 = Release|Win32 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {00FDD34E-5A9D-481E-9824-EAAF4F6381E4}.Debug|Win32.ActiveCfg = Debug|Win32 13 | {00FDD34E-5A9D-481E-9824-EAAF4F6381E4}.Debug|Win32.Build.0 = Debug|Win32 14 | {00FDD34E-5A9D-481E-9824-EAAF4F6381E4}.Release|Win32.ActiveCfg = Release|Win32 15 | {00FDD34E-5A9D-481E-9824-EAAF4F6381E4}.Release|Win32.Build.0 = Release|Win32 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | EndGlobal 21 | -------------------------------------------------------------------------------- /Docs/Diagrams/Linux0802.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 |

Linux0802

19 | 20 | 21 |
22 | 23 |
24 |

25 | 26 |

Notes

27 | 30 |

31 | 32 |

Credits

33 | The original diagram and information for this interface can be found at http://llg.cubic.org/docs/joystick.html. 34 | 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /Docs/Contents4.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 | 19 |

General: 20 |

User manual: 21 |

Supported interfaces: 22 | 23 |

FAQ:
24 | - Frequently asked questions
25 | 26 |

Credits: 27 |

Contact: 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /Docs/Diagrams/LPTJoyStick.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 |

LPT JoyStick

19 | 20 | 21 |
22 | 23 |
24 |

25 | 26 |

Notes

27 | 30 |

31 | 32 |

Credits

33 | The original diagram and information for this interface can be found at http://www.volny.cz/sumbera/lpt_joy.html. 34 | 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /Docs/Diagrams/Tormod.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 |

Tormod

19 | 20 | 21 |
22 | 23 |
24 |

25 | 26 |

Notes

27 | 31 |

32 | 33 |

Credits

34 | The original diagram and information for this interface can be found at http://home.online.no/~tjaberg. 35 | 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /RCCallbackDLLs/RCCallbackDLLs.def: -------------------------------------------------------------------------------- 1 | ; 2 | ; PPJoy Virtual Joystick for Microsoft Windows 3 | ; Copyright (C) 2011 Deon van der Westhuysen 4 | ; 5 | ; This program is free software: you can redistribute it and/or modify 6 | ; it under the terms of the GNU General Public License as published by 7 | ; the Free Software Foundation, either version 3 of the License, or 8 | ; (at your option) any later version. 9 | ; 10 | ; This program is distributed in the hope that it will be useful, 11 | ; but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | ; GNU General Public License for more details. 14 | ; 15 | ; You should have received a copy of the GNU General Public License 16 | ; along with this program. If not, see . 17 | ; 18 | 19 | ; PPJoyCpl.def : Declares the module parameters for the DLL. 20 | 21 | LIBRARY 22 | ;DESCRIPTION 'PPJoyDLL callback library for RC input' 23 | 24 | EXPORTS 25 | InitDLL 26 | Cleanup 27 | 28 | -------------------------------------------------------------------------------- /PPJoyCpl/PPJoyCpl.def: -------------------------------------------------------------------------------- 1 | ; 2 | ; PPJoy Virtual Joystick for Microsoft Windows 3 | ; Copyright (C) 2011 Deon van der Westhuysen 4 | ; 5 | ; This program is free software: you can redistribute it and/or modify 6 | ; it under the terms of the GNU General Public License as published by 7 | ; the Free Software Foundation, either version 3 of the License, or 8 | ; (at your option) any later version. 9 | ; 10 | ; This program is distributed in the hope that it will be useful, 11 | ; but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | ; GNU General Public License for more details. 14 | ; 15 | ; You should have received a copy of the GNU General Public License 16 | ; along with this program. If not, see . 17 | ; 18 | 19 | ; PPJoyCpl.def : Declares the module parameters for the DLL. 20 | 21 | LIBRARY "PPortJoy.cpl" 22 | ;DESCRIPTION 'PPJoyCpl Windows Dynamic Link Library' 23 | 24 | EXPORTS 25 | CPlApplet 26 | ViseEntry 27 | -------------------------------------------------------------------------------- /Docs/Contents6.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 | 19 |

General: 20 |

User manual: 21 |

Supported interfaces: 22 |

FAQ: 23 |

Credits: 24 | 25 |

Contact:
26 | - Feedback
27 | - Support
28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /Docs/Contents5.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 | 19 |

General: 20 |

User manual: 21 |

Supported interfaces: 22 |

FAQ: 23 | 24 |

Credits:
25 | - Credits
26 | - Volunteers
27 | 28 |

Contact: 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /Docs/Diagrams/SNESkey2600.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 |

SNESkey2600

19 | 20 | 21 |
22 | 23 |
24 |

25 | 26 |

Notes

27 |
    28 |
  • All diodes are 1N4148 29 |
  • General notes about interface construction 30 |
31 |

32 | 33 |

Credits

34 | The original diagram and information for this interface can be found at http://www.arcadecontrols.com/Mirrors/www.csc.tntech.edu/~jbyork/default.htm. 35 | 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /dirs: -------------------------------------------------------------------------------- 1 | !IF 0 2 | 3 | /////////////////////////////////////////////////////////////////////////////// 4 | // 5 | // PPJoy Virtual Joystick for Microsoft Windows 6 | // Copyright (C) 2011 Deon van der Westhuysen 7 | // 8 | // This program is free software: you can redistribute it and/or modify 9 | // it under the terms of the GNU General Public License as published by 10 | // the Free Software Foundation, either version 3 of the License, or 11 | // (at your option) any later version. 12 | // 13 | // This program is distributed in the hope that it will be useful, 14 | // but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | // GNU General Public License for more details. 17 | // 18 | // You should have received a copy of the GNU General Public License 19 | // along with this program. If not, see . 20 | // 21 | /////////////////////////////////////////////////////////////////////////////// 22 | 23 | !ENDIF 24 | 25 | 26 | DIRS= \ 27 | ppjoybus \ 28 | pportjoy \ 29 | w98ports 30 | -------------------------------------------------------------------------------- /AddJoyDrivers/AddJoyDrivers.def: -------------------------------------------------------------------------------- 1 | ; 2 | ; PPJoy Virtual Joystick for Microsoft Windows 3 | ; Copyright (C) 2011 Deon van der Westhuysen 4 | ; 5 | ; This program is free software: you can redistribute it and/or modify 6 | ; it under the terms of the GNU General Public License as published by 7 | ; the Free Software Foundation, either version 3 of the License, or 8 | ; (at your option) any later version. 9 | ; 10 | ; This program is distributed in the hope that it will be useful, 11 | ; but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | ; GNU General Public License for more details. 14 | ; 15 | ; You should have received a copy of the GNU General Public License 16 | ; along with this program. If not, see . 17 | ; 18 | 19 | ; PPJoyCpl.def : Declares the module parameters for the DLL. 20 | 21 | LIBRARY "AddJoyDrivers.DLL" 22 | ;DESCRIPTION 'AddJoyDrivers Windows Dynamic Link Library - Add PPJoy drivers from VISE installer' 23 | 24 | EXPORTS 25 | ViseEntry 26 | nsis_Install 27 | -------------------------------------------------------------------------------- /Tools/SetVirtualJoyState/StdAfx.h: -------------------------------------------------------------------------------- 1 | // stdafx.h : include file for standard system include files, 2 | // or project specific include files that are used frequently, but 3 | // are changed infrequently 4 | // 5 | 6 | #if !defined(AFX_STDAFX_H__9558E982_7710_4CCA_BB1E_026575903B29__INCLUDED_) 7 | #define AFX_STDAFX_H__9558E982_7710_4CCA_BB1E_026575903B29__INCLUDED_ 8 | 9 | #if _MSC_VER > 1000 10 | #pragma once 11 | #endif // _MSC_VER > 1000 12 | 13 | #include "targetver.h" 14 | 15 | #define VC_EXTRALEAN // Exclude rarely-used stuff from Windows headers 16 | 17 | #include // MFC core and standard components 18 | #include // MFC extensions 19 | #include // MFC support for Internet Explorer 4 Common Controls 20 | #ifndef _AFX_NO_AFXCMN_SUPPORT 21 | #include // MFC support for Windows Common Controls 22 | #endif // _AFX_NO_AFXCMN_SUPPORT 23 | 24 | 25 | //{{AFX_INSERT_LOCATION}} 26 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 27 | 28 | #endif // !defined(AFX_STDAFX_H__9558E982_7710_4CCA_BB1E_026575903B29__INCLUDED_) 29 | -------------------------------------------------------------------------------- /Docs/Diagrams/TheMaze.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 |

TheMaze

19 | 20 | 21 |
22 | 23 |
24 |

25 | 26 |

Notes

27 |
    28 |
  • All resistors are 10k Ohm
    29 | All diodes are 1N4148
    30 | The capacitor is 100uF 6.3V 31 |
  • General notes about interface construction 32 |
33 |

34 | 35 |

Credits

36 | The original diagram and information for this interface can be found at http://www.tm.uka.de/~harbaum/the_maze/joy_par/joy_par.html. 37 | 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /Docs/Diagrams/Amiga4Player.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 |

Amiga 4 Player

19 | 20 | 21 |
22 | 23 |
24 |

25 | 26 |

Notes

27 |
    28 |
  • This is the standard interface used to add a 3rd and 4th joystick to the Amiga 29 |
  • Connections in BLUE are PPJoy specific additional fire buttons 30 |
  • General notes about interface construction 31 |
32 |

33 | 34 |

Credits

35 | The original diagram and information for this interface can be found at http://www.hardwarebook.net/adapter/userinput/amiga4joysticks.html 36 | . 37 | 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /SetupHelper/SetupHelper.def: -------------------------------------------------------------------------------- 1 | ; 2 | ; PPJoy Virtual Joystick for Microsoft Windows 3 | ; Copyright (C) 2011 Deon van der Westhuysen 4 | ; 5 | ; This program is free software: you can redistribute it and/or modify 6 | ; it under the terms of the GNU General Public License as published by 7 | ; the Free Software Foundation, either version 3 of the License, or 8 | ; (at your option) any later version. 9 | ; 10 | ; This program is distributed in the hope that it will be useful, 11 | ; but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | ; GNU General Public License for more details. 14 | ; 15 | ; You should have received a copy of the GNU General Public License 16 | ; along with this program. If not, see . 17 | ; 18 | 19 | ; PPJoyCpl.def : Declares the module parameters for the DLL. 20 | 21 | LIBRARY "SetupHelper.DLL" 22 | ;DESCRIPTION 'Library with plugin to provide additional setup functionality for PPJoy setup' 23 | 24 | EXPORTS 25 | nsis_UninstallDrv 26 | nsis_GetOSMajorVersion 27 | nsis_GetOSMinorVersion 28 | nsis_IsSupportedOS 29 | nsis_GetOSName 30 | nsis_Need64bitSignedDrivers 31 | -------------------------------------------------------------------------------- /backup.bat: -------------------------------------------------------------------------------- 1 | SET NEWTIME=%TIME::=% 2 | SET NEWTIME=%NEWTIME:~0,6% 3 | 4 | SET PPJOYDIR=%~dp0 5 | CD /D "%PPJOYDIR%" 6 | 7 | SET BACKUPNAME="__Backups__\ppJoyBackup_%DATE:/=%_%NEWTIME%" 8 | zip -9 -X -r %BACKUPNAME% Docs\* "Visio Diagrams\*" IOCTLSample\* Web\* 9 | zip -9 -X -r %BACKUPNAME% Branding\* CreateBAT\* CreateINF\* 10 | zip -9 -X %BACKUPNAME% AddJoyDrivers\* ViseHelper\* SetupHelper\* Helper64\* UnInst64\* 11 | zip -9 -X %BACKUPNAME% PPJoyBus\* PPJoyInc\* PPortJoy\* PPJoyCpl\* W98Ports\* 12 | zip -9 -X %BACKUPNAME% PPJoyKey\* PPJoyCom\* PPJoyDLL\* PPJoyMouse\* RCCallbackDLLs\* PPJoyJoy\* 13 | zip -9 -X %BACKUPNAME% PPJoyAPI\* PPJoyAPI_turboC++\* PPJoyAPI_turboC++\Release_Build\PPJoyAPI.lib 14 | zip -9 -X %BACKUPNAME% Tools\AddDriversTest\* Tools\APITest\* Tools\ColCrop\* Tools\DecodeAeroChopper\* Tools\GenerateSerialStream\* 15 | zip -9 -X %BACKUPNAME% Tools\MakeBitSwapLookup\* Tools\PPJoyCOMLogToBin\* Tools\PPJoyDLL_TestDLL\* Tools\SetVirtualJoyState\* 16 | zip -9 -X %BACKUPNAME% Installer\* Installer\pluginapi\* TestSign\* 17 | zip -9 -X -r %BACKUPNAME% *.bat *.txt dirs 18 | 19 | rem temp 20 | zip -9 -X %BACKUPNAME% PPJoyCpl_old_ANSI\* 21 | 22 | rem old stuff... 23 | rem zip -9 -X %BACKUPNAME% Installer\*.VCT Web\WebSpecific\* 24 | 25 | 26 | Pause -------------------------------------------------------------------------------- /Docs/Diagrams/DirectPadPro.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 |

DirectPad Pro

19 | 20 | 21 |
22 | 23 |
24 |

25 | 26 |

Notes

27 |
    28 |
  • All resistors are 10k Ohm 29 |
  • It is not recommended to build this interface. Rather build TheMaze or LinuxDB9c. 30 |
  • General notes about interface construction 31 |
32 |

33 | 34 |

Credits

35 | The original diagram and information for this interface can be found at http://www.arcadecontrols.com/Mirrors/www.ziplabel.com/dpadpro/atari.html. 36 | 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /Docs/Diagrams/TurboGraFX.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 |

TurboGraFX

19 | 20 | 21 |
22 | 23 |
24 |

25 | 26 |

Notes

27 |
    28 |
  • All resistors are 10k Ohm
    29 | All diodes are 1N4148 30 |
  • Each of the seven joysticks has its own ground line (Data1-Data7) and set of diodes. The other 9 lines (and the pull-up resistors) form a shared input bus. 31 |
  • General notes about interface construction 32 |
33 |

34 | 35 |

Credits

36 | The original diagram and information for this interface can be found at http://www2.burg-halle.de/~schwenke/parport.html. 37 | 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /Docs/Contents3.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 | 19 |

General: 20 |

User manual: 21 | 22 |

Supported interfaces:
23 | - Digtal joysticks
24 | - Playstation (PSX)
25 | - SNES/NES.
26 | - Sega Genesis.
27 | - R/C Transmitters
28 | - Virtual joysticks
29 | 30 |

FAQ: 31 |

Credits: 32 |

Contact: 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /Docs/Diagrams/IanHarries.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 |

IanHarries

19 | 20 | 21 |
22 | 23 |
24 |

25 | 26 |

Notes

27 |
    28 |
  • All resistors are 10k Ohm 29 |
  • It is not recommended to build this interface. Rather build TheMaze or LinuxDB9c. 30 |
  • A joystick must be modified before it can be used with this interface 31 |
  • General notes about interface construction 32 |
33 |

34 | 35 |

Credits

36 | The original diagram and information for this interface can be found at http://www.doc.ic.ac.uk/~ih/doc/joystick/. 37 | 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /Docs/Diagrams/LinuxDB9c.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 |

LinuxDB9c

19 | 20 | 21 |
22 | 23 |
24 |

25 | 26 |

Notes

27 |
    28 |
  • All resistors are 10k Ohm 29 |
  • First try the interface without the pull-up resistors in RED; if it does not work then add them 30 |
  • Connections in BLUE are PPJoy specific additional fire buttons 31 |
  • General notes about interface construction 32 |
33 |

34 | 35 |

Credits

36 | The original diagram and information for this interface can be found at 37 | 38 | http://www.charmed.com/support/kernel/docs/joystick-parport.txt. 39 | 40 | 41 | 42 | 43 | -------------------------------------------------------------------------------- /Docs/PPJoyMain.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 8 | 41 | 42 | 43 | <BODY> 44 | The PPJoy documentation requires a browser that supports frames. 45 | </BODY> 46 | 47 | 48 | -------------------------------------------------------------------------------- /Docs/Diagrams/PCAE.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 |

PCAE

19 | 20 | 21 |
22 | 23 |
24 |

25 | 26 |

Notes

27 |
    28 |
  • The resistors connected to the parallel port (drawn horizontally) are 1k Ohm
    29 | The resistors connected to pin 1 of the joystick port (drawn vertically) are 4.7k Ohm 30 |
  • It is not recommended to build this interface. Rather build Amiga4Player. 31 |
  • This interface is not currently supported by PPJoy 32 |
  • General notes about interface construction 33 |
34 |

35 | 36 |

Credits

37 | The original diagram and information for this interface can be found at http://www.classicgaming.com/pcae/. 38 | 39 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /Docs/Diagrams/Sega/SegaNTPadXP.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 |

NTPad XP Sega interface

19 | 20 | 21 |
22 | 23 |
24 |

25 | 26 |

Notes

27 | 34 |

35 | 36 |

Credits

37 | The original diagram and information for this interface can be found at 38 | 39 | http://www.ntpad.com.ar/. 40 | 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /Docs/Diagrams/Sega/SegaConsoleCable.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 |

ConsoleCable Sega interface

19 | 20 | 21 |
22 | 23 |
24 |

25 | 26 |

Notes

27 |
    28 |
  • This is a pretty obscure interface! It comes from from a old DOS based driver 29 | called Console Cable. 30 |
  • The +5v can be sourced from the keyboard or joystick port. 31 |
  • This interface supports configurable timing parameters - see 32 | Changing timing parameters on how to 33 | change these values and 34 | Sega Genesis controller timing parameters for their meanings. 35 |
36 |

37 | 38 |

Credits

39 | The original diagram comes from Console Cable by Able Software. 40 | 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /PPJoyAPI/ReadMe.txt: -------------------------------------------------------------------------------- 1 | ======================================================================== 2 | DYNAMIC LINK LIBRARY : PPJoyAPI Project Overview 3 | ======================================================================== 4 | 5 | AppWizard has created this PPJoyAPI DLL for you. 6 | 7 | This file contains a summary of what you will find in each of the files that 8 | make up your PPJoyAPI application. 9 | 10 | 11 | PPJoyAPI.vcproj 12 | This is the main project file for VC++ projects generated using an Application Wizard. 13 | It contains information about the version of Visual C++ that generated the file, and 14 | information about the platforms, configurations, and project features selected with the 15 | Application Wizard. 16 | 17 | PPJoyAPI.cpp 18 | This is the main DLL source file. 19 | 20 | ///////////////////////////////////////////////////////////////////////////// 21 | Other standard files: 22 | 23 | StdAfx.h, StdAfx.cpp 24 | These files are used to build a precompiled header (PCH) file 25 | named PPJoyAPI.pch and a precompiled types file named StdAfx.obj. 26 | 27 | ///////////////////////////////////////////////////////////////////////////// 28 | Other notes: 29 | 30 | AppWizard uses "TODO:" comments to indicate parts of the source code you 31 | should add to or customize. 32 | 33 | ///////////////////////////////////////////////////////////////////////////// 34 | -------------------------------------------------------------------------------- /Docs/Diagrams/Sega/SegaLinux.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 |

Linux Sega interface

19 | 20 | 21 |
22 | 23 |
24 |

25 | 26 |

Notes

27 | 34 |

35 | 36 |

Credits

37 | The original diagram and information for this interface can be found at 38 | 39 | http://www.charmed.com/support/kernel/docs/joystick-parport.txt. 40 | 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /W98Ports/sources: -------------------------------------------------------------------------------- 1 | !IF 0 2 | 3 | /////////////////////////////////////////////////////////////////////////////// 4 | // 5 | // PPJoy Virtual Joystick for Microsoft Windows 6 | // Copyright (C) 2011 Deon van der Westhuysen 7 | // 8 | // This program is free software: you can redistribute it and/or modify 9 | // it under the terms of the GNU General Public License as published by 10 | // the Free Software Foundation, either version 3 of the License, or 11 | // (at your option) any later version. 12 | // 13 | // This program is distributed in the hope that it will be useful, 14 | // but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | // GNU General Public License for more details. 17 | // 18 | // You should have received a copy of the GNU General Public License 19 | // along with this program. If not, see . 20 | // 21 | /////////////////////////////////////////////////////////////////////////////// 22 | 23 | !ENDIF 24 | 25 | TARGETNAME=W98Ports 26 | TARGETPATH=obj 27 | TARGETTYPE=DRIVER 28 | 29 | MSC_WARNING_LEVEL=-W3 -WX 30 | 31 | TARGETLIBS=$(DDK_LIB_PATH)\ntoskrnl.lib 32 | 33 | INCLUDES=..\PPJoyInc;..\inc;..\..\inc;..\Branding 34 | SOURCES= \ 35 | W98Ports.c \ 36 | IRPUtil.c \ 37 | Power.c \ 38 | Pnp.c \ 39 | Ioctl.c \ 40 | W98Ports.rc 41 | 42 | USE_MAPSYM=1 43 | 44 | -------------------------------------------------------------------------------- /Docs/Diagrams/Sega/SegaDirectPadPro6.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 |

DirectPad version 6 Pro Sega interface

19 | 20 | 21 |
22 | 23 |
24 |

25 | 26 |

Notes

27 | 34 |

35 | 36 |

Credits

37 | This interface was created by Sergey Ryumik. The original diagram and information for this interface can be found 38 | in ftp://ftp.radio.ru/pub/2003/12/dpp6/dpadpr60.zip. 39 | 40 | 41 | 42 | 43 | -------------------------------------------------------------------------------- /Docs/Diagrams/Sega/SegaSNESkey.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 |

SNESkey Sega interface

19 | 20 | 21 |
22 | 23 |
24 |

25 | 26 |

Notes

27 | 34 |

35 | 36 |

Credits

37 | The original diagram and information for this interface can be found at 38 | 39 | http://www.arcadecontrols.com/Mirrors/www.csc.tntech.edu/~jbyork/manual/manual.html . 40 | 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /Docs/Contents1.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 | 19 |

General:
20 | - Introduction
21 | - Supported Operating Systems
22 | - What's new
23 | - Upgrading
24 | - Planned features
25 | - Licensing
26 | - PPJoy Homepage
27 | 28 |

User manual: 29 |

Supported interfaces: 30 |

FAQ: 31 |

Credits: 32 |

Contact: 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /Docs/Contents3e.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 | 19 |

General: 20 |

User manual: 21 | 22 |

Supported interfaces:
23 | - Digtal joysticks
24 | - Playstation (PSX)
25 | - SNES/NES.
26 | - Sega Genesis.
27 | 28 |
29 | R/C Transmitters
30 | - PPM radio control
31 |
32 | 33 | - Virtual joysticks
34 | 35 |

FAQ: 36 |

Credits: 37 |

Contact: 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /Docs/Diagrams/STFormat.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 |

STFormat

19 | 20 | 21 |
22 | 23 |
24 |

25 | 26 |

Notes

27 |
    28 |
  • It is not recommended to build this interface. Rather build Amiga4Player. 29 | This interface can be turned into the Amiga4Player interface by moving the Joystick 1 pin 6 (fire) 30 | connection from pin 1 (nStrobe) to pin 13 (Select) on the Parallel Port. 31 |
  • It is doubtful if this interface will properly work on any PC parallel port - the fire button on joystick 1 will not function properly 32 |
  • General notes about interface construction 33 |
34 |

35 | 36 |

Credits

37 | The original diagram and information for this interface can be found at http://www.umich.edu/~archive/atari/Misc/4plradap.txt. 38 | 39 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /ViseHelper/ViseHelper.rc2: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////// 2 | // 3 | // PPJoy Virtual Joystick for Microsoft Windows 4 | // Copyright (C) 2011 Deon van der Westhuysen 5 | // 6 | // This program is free software: you can redistribute it and/or modify 7 | // it under the terms of the GNU General Public License as published by 8 | // the Free Software Foundation, either version 3 of the License, or 9 | // (at your option) any later version. 10 | // 11 | // This program is distributed in the hope that it will be useful, 12 | // but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | // GNU General Public License for more details. 15 | // 16 | // You should have received a copy of the GNU General Public License 17 | // along with this program. If not, see . 18 | // 19 | /////////////////////////////////////////////////////////////////////////////// 20 | 21 | 22 | // 23 | // VISEHELPER.RC2 - resources Microsoft Visual C++ does not edit directly 24 | // 25 | 26 | #ifdef APSTUDIO_INVOKED 27 | #error this file is not editable by Microsoft Visual C++ 28 | #endif //APSTUDIO_INVOKED 29 | 30 | 31 | ///////////////////////////////////////////////////////////////////////////// 32 | // Add manually edited resources here... 33 | 34 | ///////////////////////////////////////////////////////////////////////////// 35 | -------------------------------------------------------------------------------- /Docs/Diagrams/LinuxGamecon.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 |

Linux gamecon.c

19 | 20 | 21 |
22 | 23 |
24 |

25 | 26 |

Notes

27 |
    28 |
  • You can only use true switch-based joysticks with this circuit. 29 |
  • PPJoy, unlike Linux, will not allow you to use this interface on the same parallel port 30 | as another interface type. 31 |
  • The pull-up resistors are 10k Ohm. 32 |
  • The original diagram only specifies "Power"; we source it from Pin 1 (nStrobe). 33 | PPJoy drives pin 1, 14, 16 and 17 high; any one of these can be used as power source. 34 |
  • General notes about interface construction 35 |
36 |

37 | 38 |

Credits

39 | The original diagram and information for this interface can be found at 40 | 41 | http://www.charmed.com/support/kernel/docs/joystick-parport.txt. 42 | 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /ViseHelper/ViseHelper.def: -------------------------------------------------------------------------------- 1 | ; 2 | ; PPJoy Virtual Joystick for Microsoft Windows 3 | ; Copyright (C) 2011 Deon van der Westhuysen 4 | ; 5 | ; This program is free software: you can redistribute it and/or modify 6 | ; it under the terms of the GNU General Public License as published by 7 | ; the Free Software Foundation, either version 3 of the License, or 8 | ; (at your option) any later version. 9 | ; 10 | ; This program is distributed in the hope that it will be useful, 11 | ; but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | ; GNU General Public License for more details. 14 | ; 15 | ; You should have received a copy of the GNU General Public License 16 | ; along with this program. If not, see . 17 | ; 18 | 19 | ; ViseHelper.def : Declares the module parameters for the DLL. 20 | 21 | LIBRARY "ViseHelper" 22 | ;DESCRIPTION 'ViseHelper Windows Dynamic Link Library - VISE installer helper functions' 23 | 24 | EXPORTS 25 | ViseEntry 26 | nsis_CheckSigningStatus 27 | nsis_DeleteJoystickType 28 | nsis_DeletePPJoyDevices50 29 | nsis_CountParallelPorts 30 | nsis_CountInstalledPPJoysticks 31 | nsis_GetInterruptAssignment 32 | nsis_GetConnectInterruptSetting 33 | nsis_SetConnectInterruptSetting 34 | nsis_AddNewJoystick 35 | nsis_GetRegistryTestsigningFlag 36 | nsis_GetBCDTestsigningFlag 37 | nsis_SetBCDTestsigningFlag 38 | nsis_RebootSystem 39 | -------------------------------------------------------------------------------- /Docs/Diagrams/Sega/SegaDirectPadPro.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 |

DirectPad Pro Sega interface

19 | 20 | 21 |
22 | 23 |
24 |

25 | 26 |

Notes

27 | 34 |

35 | 36 |

Credits

37 | This interface is used by DirectPad Pro up to version 5. The original diagram and information for this interface can be found at 38 | http://www.arcadecontrols.com/Mirrors/www.ziplabel.com/dpadpro/genesis.html 39 | . 40 | 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /Tools/SetVirtualJoyState/targetver.h: -------------------------------------------------------------------------------- 1 | 2 | #pragma once 3 | 4 | // The following macros define the minimum required platform. The minimum required platform 5 | // is the earliest version of Windows, Internet Explorer etc. that has the necessary features to run 6 | // your application. The macros work by enabling all features available on platform versions up to and 7 | // including the version specified. 8 | 9 | // Modify the following defines if you have to target a platform prior to the ones specified below. 10 | // Refer to MSDN for the latest info on corresponding values for different platforms. 11 | #ifndef WINVER // Specifies that the minimum required platform is Windows Vista. 12 | #define WINVER 0x0410 // Change this to the appropriate value to target other versions of Windows. 13 | #endif 14 | 15 | #ifndef _WIN32_WINNT // Specifies that the minimum required platform is Windows Vista. 16 | #define _WIN32_WINNT 0x0500 // Change this to the appropriate value to target other versions of Windows. 17 | #endif 18 | 19 | #ifndef _WIN32_WINDOWS // Specifies that the minimum required platform is Windows 98. 20 | #define _WIN32_WINDOWS 0x0410 // Change this to the appropriate value to target Windows Me or later. 21 | #endif 22 | 23 | #ifndef _WIN32_IE // Specifies that the minimum required platform is Internet Explorer 7.0. 24 | #define _WIN32_IE 0x0400 // Change this to the appropriate value to target other versions of IE. 25 | #endif 26 | 27 | -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- 1 | # PPJoy 2 | 3 | PPJoy source originally released at: http://ppjoy.blogspot.com
4 | 5 | /*************************************************************************** 6 | * PPJoy Virtual Joystick for Microsoft Windows * 7 | * Copyright (C) 2011 Deon van der Westhuysen * 8 | * * 9 | * This program is free software: you can redistribute it and/or modify * 10 | * it under the terms of the GNU General Public License as published by * 11 | * the Free Software Foundation, either version 3 of the License, or * 12 | * (at your option) any later version. * 13 | * * 14 | * This program is distributed in the hope that it will be useful, * 15 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 16 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 17 | * GNU General Public License for more details. * 18 | * * 19 | * You should have received a copy of the GNU General Public License * 20 | * along with this program. If not, see . * 21 | * * 22 | ***************************************************************************/ 23 | -------------------------------------------------------------------------------- /PPJoyCpl/ViseFunctions.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | #ifndef __VISEFUNCTIONS_H__ 22 | #define __VISEFUNCTIONS_H__ 23 | 24 | 25 | 26 | 27 | #endif 28 | -------------------------------------------------------------------------------- /ViseHelper/DriverSigning.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | #ifndef __DRIVERSIGNING_H__ 22 | #define __DRIVERSIGNING_H__ 23 | 24 | int CheckSigningStatus (void); 25 | 26 | #endif 27 | -------------------------------------------------------------------------------- /ViseHelper/DirectInput.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | #ifndef __DIRECTINPUT_H__ 22 | #define __DIRECTINPUT_H__ 23 | 24 | int DeleteJoystickType (const char *TypeName); 25 | 26 | #endif 27 | -------------------------------------------------------------------------------- /PPJoyBus/sources: -------------------------------------------------------------------------------- 1 | !IF 0 2 | 3 | /////////////////////////////////////////////////////////////////////////////// 4 | // 5 | // PPJoy Virtual Joystick for Microsoft Windows 6 | // Copyright (C) 2011 Deon van der Westhuysen 7 | // 8 | // This program is free software: you can redistribute it and/or modify 9 | // it under the terms of the GNU General Public License as published by 10 | // the Free Software Foundation, either version 3 of the License, or 11 | // (at your option) any later version. 12 | // 13 | // This program is distributed in the hope that it will be useful, 14 | // but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | // GNU General Public License for more details. 17 | // 18 | // You should have received a copy of the GNU General Public License 19 | // along with this program. If not, see . 20 | // 21 | /////////////////////////////////////////////////////////////////////////////// 22 | 23 | !ENDIF 24 | 25 | !if $(AMD64) || $(IA64) 26 | TARGETNAME=PPJoyBus64 27 | !ELSE 28 | TARGETNAME=PPJoyBus 29 | !ENDIF 30 | TARGETPATH=obj 31 | TARGETTYPE=DRIVER 32 | 33 | MSC_WARNING_LEVEL=-W3 -WX 34 | 35 | TARGETLIBS=$(DDK_LIB_PATH)\ntoskrnl.lib 36 | 37 | INCLUDES=..\PPJoyInc;..\inc;..\..\inc;..\Branding 38 | 39 | SOURCES= \ 40 | ppjoybus.c \ 41 | power.c \ 42 | joypnp.c \ 43 | buspnp.c \ 44 | joyioctl.c \ 45 | busioctl.c \ 46 | irputil.c \ 47 | parports.c \ 48 | eventlog.c \ 49 | busmsg.mc \ 50 | PPJoyBus.rc 51 | 52 | USE_MAPSYM=1 53 | 54 | -------------------------------------------------------------------------------- /Visio Diagrams/_Master.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Diagram for _Master 6 | 7 | 8 | 9 |

_Master

10 | 11 | 12 |
13 | 14 |
15 |

16 | 17 |

Notes

18 | 27 |

28 | 29 |

Credits

30 | The original diagram and information for this interface can be found at here. 31 | 32 |

Back to PPJoy 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /W98Ports/W98Ports.rc: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////// 2 | // 3 | // PPJoy Virtual Joystick for Microsoft Windows 4 | // Copyright (C) 2011 Deon van der Westhuysen 5 | // 6 | // This program is free software: you can redistribute it and/or modify 7 | // it under the terms of the GNU General Public License as published by 8 | // the Free Software Foundation, either version 3 of the License, or 9 | // (at your option) any later version. 10 | // 11 | // This program is distributed in the hope that it will be useful, 12 | // but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | // GNU General Public License for more details. 15 | // 16 | // You should have received a copy of the GNU General Public License 17 | // along with this program. If not, see . 18 | // 19 | /////////////////////////////////////////////////////////////////////////////// 20 | 21 | 22 | #include 23 | 24 | #include 25 | 26 | #undef VER_COMPANYNAME_STR 27 | #undef VER_PRODUCTNAME_STR 28 | 29 | #include 30 | 31 | #define VER_FILETYPE VFT_DLL 32 | #define VER_FILESUBTYPE VFT2_UNKNOWN 33 | #define VER_FILEDESCRIPTION_STR W98_DRIVER_DESCRIPTION 34 | #define VER_INTERNALNAME_STR W98_DRIVER_FILENAME 35 | 36 | #define VER_LEGALCOPYRIGHT_YEARS COPYRIGHT_YEARS 37 | #define VER_LEGALCOPYRIGHT_STR COPYRIGHT_STRING 38 | #define VER_COMPANYNAME_STR COMPANY_NAME 39 | #define VER_PRODUCTNAME_STR PRODUCT_NAME_LONG 40 | 41 | #include "common.ver" 42 | 43 | 44 | -------------------------------------------------------------------------------- /PPJoyCpl/DXUtil.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | #ifndef __DXUTIL_H__ 22 | #define __DXUTIL_H__ 23 | 24 | #include "PPJType.h" 25 | 26 | int DXDeleteJoystick (unsigned int VendorID, unsigned int ProductID); 27 | 28 | #endif 29 | 30 | 31 | -------------------------------------------------------------------------------- /PPJoyBus/PPJoyBus.rc: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////// 2 | // 3 | // PPJoy Virtual Joystick for Microsoft Windows 4 | // Copyright (C) 2011 Deon van der Westhuysen 5 | // 6 | // This program is free software: you can redistribute it and/or modify 7 | // it under the terms of the GNU General Public License as published by 8 | // the Free Software Foundation, either version 3 of the License, or 9 | // (at your option) any later version. 10 | // 11 | // This program is distributed in the hope that it will be useful, 12 | // but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | // GNU General Public License for more details. 15 | // 16 | // You should have received a copy of the GNU General Public License 17 | // along with this program. If not, see . 18 | // 19 | /////////////////////////////////////////////////////////////////////////////// 20 | 21 | 22 | #include 23 | 24 | #include 25 | 26 | #undef VER_COMPANYNAME_STR 27 | #undef VER_PRODUCTNAME_STR 28 | 29 | #include 30 | 31 | #define VER_FILETYPE VFT_DLL 32 | #define VER_FILESUBTYPE VFT2_UNKNOWN 33 | #define VER_FILEDESCRIPTION_STR BUS_DRIVER_DESCRIPTION 34 | #define VER_INTERNALNAME_STR BUS_DRIVER_FILENAME 35 | 36 | #define VER_LEGALCOPYRIGHT_YEARS COPYRIGHT_YEARS 37 | #define VER_LEGALCOPYRIGHT_STR COPYRIGHT_STRING 38 | #define VER_COMPANYNAME_STR COMPANY_NAME 39 | #define VER_PRODUCTNAME_STR PRODUCT_NAME_LONG 40 | 41 | #include "common.ver" 42 | 43 | #include "BusMsg.rc" 44 | 45 | -------------------------------------------------------------------------------- /PPortJoy/PPortJoy.rc: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////////////////////// 2 | // 3 | // PPJoy Virtual Joystick for Microsoft Windows 4 | // Copyright (C) 2011 Deon van der Westhuysen 5 | // 6 | // This program is free software: you can redistribute it and/or modify 7 | // it under the terms of the GNU General Public License as published by 8 | // the Free Software Foundation, either version 3 of the License, or 9 | // (at your option) any later version. 10 | // 11 | // This program is distributed in the hope that it will be useful, 12 | // but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | // GNU General Public License for more details. 15 | // 16 | // You should have received a copy of the GNU General Public License 17 | // along with this program. If not, see . 18 | // 19 | /////////////////////////////////////////////////////////////////////////////// 20 | 21 | 22 | #include 23 | 24 | #include 25 | 26 | #undef VER_COMPANYNAME_STR 27 | #undef VER_PRODUCTNAME_STR 28 | 29 | #include 30 | 31 | #define VER_FILETYPE VFT_DLL 32 | #define VER_FILESUBTYPE VFT2_UNKNOWN 33 | #define VER_FILEDESCRIPTION_STR JOY_DRIVER_DESCRIPTION 34 | #define VER_INTERNALNAME_STR JOY_DRIVER_FILENAME 35 | 36 | #define VER_LEGALCOPYRIGHT_YEARS COPYRIGHT_YEARS 37 | #define VER_LEGALCOPYRIGHT_STR COPYRIGHT_STRING 38 | #define VER_COMPANYNAME_STR COMPANY_NAME 39 | #define VER_PRODUCTNAME_STR PRODUCT_NAME_LONG 40 | 41 | #include "common.ver" 42 | 43 | #include "PPJoyMsg.rc" 44 | 45 | -------------------------------------------------------------------------------- /Tools/SetVirtualJoyState/SetVirtualJoyState.h: -------------------------------------------------------------------------------- 1 | // SetVirtualJoyState.h : main header file for the SETVIRTUALJOYSTATE application 2 | // 3 | 4 | #if !defined(AFX_SETVIRTUALJOYSTATE_H__4264AA82_5EB7_46DC_BE28_E4DC66B197E6__INCLUDED_) 5 | #define AFX_SETVIRTUALJOYSTATE_H__4264AA82_5EB7_46DC_BE28_E4DC66B197E6__INCLUDED_ 6 | 7 | #if _MSC_VER > 1000 8 | #pragma once 9 | #endif // _MSC_VER > 1000 10 | 11 | #ifndef __AFXWIN_H__ 12 | #error include 'stdafx.h' before including this file for PCH 13 | #endif 14 | 15 | #include "resource.h" // main symbols 16 | 17 | ///////////////////////////////////////////////////////////////////////////// 18 | // CSetVirtualJoyStateApp: 19 | // See SetVirtualJoyState.cpp for the implementation of this class 20 | // 21 | 22 | class CSetVirtualJoyStateApp : public CWinApp 23 | { 24 | public: 25 | CSetVirtualJoyStateApp(); 26 | 27 | // Overrides 28 | // ClassWizard generated virtual function overrides 29 | //{{AFX_VIRTUAL(CSetVirtualJoyStateApp) 30 | public: 31 | virtual BOOL InitInstance(); 32 | //}}AFX_VIRTUAL 33 | 34 | // Implementation 35 | 36 | //{{AFX_MSG(CSetVirtualJoyStateApp) 37 | // NOTE - the ClassWizard will add and remove member functions here. 38 | // DO NOT EDIT what you see in these blocks of generated code ! 39 | //}}AFX_MSG 40 | DECLARE_MESSAGE_MAP() 41 | }; 42 | 43 | 44 | ///////////////////////////////////////////////////////////////////////////// 45 | 46 | //{{AFX_INSERT_LOCATION}} 47 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 48 | 49 | #endif // !defined(AFX_SETVIRTUALJOYSTATE_H__4264AA82_5EB7_46DC_BE28_E4DC66B197E6__INCLUDED_) 50 | -------------------------------------------------------------------------------- /Tools/SetVirtualJoyState/resource.h: -------------------------------------------------------------------------------- 1 | //{{NO_DEPENDENCIES}} 2 | // Microsoft Developer Studio generated include file. 3 | // Used by SetVirtualJoyState.rc 4 | // 5 | #define IDM_ABOUTBOX 0x0010 6 | #define IDD_ABOUTBOX 100 7 | #define IDS_ABOUTBOX 101 8 | #define IDD_SETVIRTUALJOYSTATE_DIALOG 102 9 | #define IDR_MAINFRAME 128 10 | #define IDC_ANALOGEDIT1 1000 11 | #define IDC_ANALOGEDIT2 1001 12 | #define IDC_ANALOGEDIT3 1002 13 | #define IDC_ANALOGEDIT4 1003 14 | #define IDC_ANALOGEDIT5 1004 15 | #define IDC_ANALOGEDIT6 1005 16 | #define IDC_ANALOGEDIT7 1006 17 | #define IDC_ANALOGEDIT8 1007 18 | #define IDC_DIGITALEDIT1 1008 19 | #define IDC_DIGITALEDIT2 1009 20 | #define IDC_DIGITALEDIT3 1010 21 | #define IDC_DIGITALEDIT4 1011 22 | #define IDC_DIGITALEDIT5 1012 23 | #define IDC_DIGITALEDIT6 1013 24 | #define IDC_DIGITALEDIT7 1014 25 | #define IDC_DIGITALEDIT8 1015 26 | #define IDC_UPDATE 1016 27 | #define IDC_JOYCOMBO 1018 28 | #define IDC_PPJOYSTATUS 1081 29 | 30 | // Next default values for new objects 31 | // 32 | #ifdef APSTUDIO_INVOKED 33 | #ifndef APSTUDIO_READONLY_SYMBOLS 34 | #define _APS_NEXT_RESOURCE_VALUE 130 35 | #define _APS_NEXT_COMMAND_VALUE 32771 36 | #define _APS_NEXT_CONTROL_VALUE 1017 37 | #define _APS_NEXT_SYMED_VALUE 101 38 | #endif 39 | #endif 40 | -------------------------------------------------------------------------------- /PPJoyCpl/stdafx.cpp: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | // stdafx.cpp : source file that includes just the standard includes 22 | // PPJoyCpl.pch will be the pre-compiled header 23 | // stdafx.obj will contain the pre-compiled type information 24 | 25 | #include "stdafx.h" 26 | 27 | 28 | -------------------------------------------------------------------------------- /ViseHelper/Testsign.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | #ifndef _TESTSIGN_H_ 22 | #define _TESTSIGN_H_ 23 | 24 | int GetRegistryTestsigningFlag (void); 25 | int GetBCDTestsigningFlag (void); 26 | int SetBCDTestsigningFlag (int NewFlag); 27 | int RebootSystem (void); 28 | 29 | #endif 30 | -------------------------------------------------------------------------------- /PPJoyCOM/StdAfx.cpp: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | // stdafx.cpp : source file that includes just the standard includes 22 | // PPJoyCom.pch will be the pre-compiled header 23 | // stdafx.obj will contain the pre-compiled type information 24 | 25 | #include "stdafx.h" 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /PPJoyDLL/StdAfx.cpp: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | // stdafx.cpp : source file that includes just the standard includes 22 | // PPJoyDLL.pch will be the pre-compiled header 23 | // stdafx.obj will contain the pre-compiled type information 24 | 25 | #include "stdafx.h" 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /PPJoyJoy/StdAfx.cpp: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | // stdafx.cpp : source file that includes just the standard includes 22 | // PPJoyJoy.pch will be the pre-compiled header 23 | // stdafx.obj will contain the pre-compiled type information 24 | 25 | #include "stdafx.h" 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /PPJoyKey/StdAfx.cpp: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | // stdafx.cpp : source file that includes just the standard includes 22 | // PPJoyKey.pch will be the pre-compiled header 23 | // stdafx.obj will contain the pre-compiled type information 24 | 25 | #include "stdafx.h" 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /PPJoyMouse/StdAfx.cpp: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | // stdafx.cpp : source file that includes just the standard includes 22 | // PPJoyMouse.pch will be the pre-compiled header 23 | // stdafx.obj will contain the pre-compiled type information 24 | 25 | #include "stdafx.h" 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /ViseHelper/StdAfx.cpp: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | // stdafx.cpp : source file that includes just the standard includes 22 | // ViseHelper.pch will be the pre-compiled header 23 | // stdafx.obj will contain the pre-compiled type information 24 | 25 | #include "stdafx.h" 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /PPortJoy/sources: -------------------------------------------------------------------------------- 1 | !IF 0 2 | 3 | /////////////////////////////////////////////////////////////////////////////// 4 | // 5 | // PPJoy Virtual Joystick for Microsoft Windows 6 | // Copyright (C) 2011 Deon van der Westhuysen 7 | // 8 | // This program is free software: you can redistribute it and/or modify 9 | // it under the terms of the GNU General Public License as published by 10 | // the Free Software Foundation, either version 3 of the License, or 11 | // (at your option) any later version. 12 | // 13 | // This program is distributed in the hope that it will be useful, 14 | // but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | // GNU General Public License for more details. 17 | // 18 | // You should have received a copy of the GNU General Public License 19 | // along with this program. If not, see . 20 | // 21 | /////////////////////////////////////////////////////////////////////////////// 22 | 23 | !ENDIF 24 | 25 | !if $(AMD64) || $(IA64) 26 | TARGETNAME=PPortJoy64 27 | !ELSE 28 | TARGETNAME=PPortJoy 29 | !ENDIF 30 | 31 | TARGETPATH=obj 32 | TARGETTYPE=DRIVER 33 | 34 | MSC_WARNING_LEVEL=-W3 -WX 35 | 36 | TARGETLIBS=$(DDK_LIB_PATH)\hidclass.lib \ 37 | $(DDK_LIB_PATH)\ntoskrnl.lib 38 | 39 | INCLUDES=..\PPJoyInc;..\inc;..\..\inc;..\Branding 40 | 41 | SOURCES= \ 42 | pportjoy.c \ 43 | pnp.c \ 44 | power.c \ 45 | ioctl.c \ 46 | joystick.c \ 47 | irputil.c \ 48 | asyncio.c \ 49 | mapping.c \ 50 | joydefs.c \ 51 | eventlog.c \ 52 | config.c \ 53 | timing.c \ 54 | ppjoymsg.mc \ 55 | PPortJoy.rc 56 | 57 | USE_MAPSYM=1 58 | 59 | -------------------------------------------------------------------------------- /AddJoyDrivers/UtilFunc.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | #ifndef _UTILFUNC_H_ 22 | #define _UTILFUNC_H_ 23 | 24 | char *GetMyDirectory (char *MyModuleName, char *Buffer, int BufSize); 25 | char IsWOW64 (void); 26 | int RunHelper (char *MyModuleName, char *HelperName, char *Param); 27 | 28 | #endif 29 | -------------------------------------------------------------------------------- /PPJoyAPI_turboC++/DeviceSetup.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | #ifndef __DEVICESETUP_H__ 22 | #define __DEVICESETUP_H__ 23 | 24 | #include 25 | 26 | HKEY OpenDeviceRegKey (char *DeviceName); 27 | int GetDeviceInstanceID (char *DeviceName, char *DevInstID, int DevInstIDSize); 28 | 29 | #endif 30 | -------------------------------------------------------------------------------- /PPJoyCpl/ResourceStrings.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | #ifndef __RESOURCESTRINGS_H__ 22 | #define __RESOURCESTRINGS_H__ 23 | 24 | #include 25 | 26 | TCHAR *GetResStr1 (UINT ResourceID); 27 | TCHAR *GetResStr2 (UINT ResourceID); 28 | TCHAR *GetResStr3 (UINT ResourceID); 29 | 30 | #endif 31 | 32 | -------------------------------------------------------------------------------- /PPJoyCpl/DeviceSetup.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | #ifndef __DEVICESETUP_H__ 22 | #define __DEVICESETUP_H__ 23 | 24 | #include 25 | #include 26 | 27 | HKEY OpenDeviceRegKey (TCHAR *DeviceName); 28 | int GetDeviceInstanceID (TCHAR *DeviceName, TCHAR *DevInstID, int DevInstIDSize); 29 | 30 | #endif 31 | -------------------------------------------------------------------------------- /Docs/Contents3c.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 | 19 |

General: 20 |

User manual: 21 | 22 |

Supported interfaces:
23 | - Digtal joysticks
24 | - Playstation (PSX)
25 | 26 |
27 | SNES/NES
28 | - DirectPad Pro NES/SNES
29 | - Linux NES/SNES
30 | - Linux NES PowerPad
31 | - Powering the interface
32 |
33 | 34 | - Sega Genesis.
35 | - R/C Transmitters
36 | - Virtual joysticks
37 | 38 |

FAQ: 39 |

Credits: 40 |

Contact: 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /AddJoyDrivers/Install.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | #ifndef __INSTALL_H__ 22 | #define __INSTALL_H__ 23 | 24 | #include 25 | #include // for SetupDiXxx functions. 26 | 27 | int InstallPPJoyDrivers (const char *SourceDirectory); 28 | char *PrepareSourcePath (const char *SourceDirectory, char *Buffer); 29 | 30 | #endif 31 | -------------------------------------------------------------------------------- /PPJoyCpl/Registry.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | #ifndef __REGISTRY_H__ 22 | #define __REGISTRY_H__ 23 | 24 | #include 25 | #include 26 | #include 27 | 28 | int SetJoystickOEMName (TCHAR *OEMName, USHORT VendorID, USHORT ProductID); 29 | int DeleteJoystickOEMData (USHORT VendorID, USHORT ProductID); 30 | 31 | #endif 32 | 33 | -------------------------------------------------------------------------------- /Branding/PPJGUID.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | // Define an Interface Guid to access the proprietary PPJoyBus interface. 22 | // This guid is used to identify a specific interface in IRP_MN_QUERY_INTERFACE handler. 23 | 24 | DEFINE_GUID(GUID_PPJOY_BUS,0x64c3b4c4,0xcdcc,0x49aa,0x99,0xa0,0x5b,0x4a,0xe4,0xb5,0xb1,0xbb); 25 | /* 64c3b4c4-cdcc-49aa-99a0-5b4ae4b5b1bb */ 26 | -------------------------------------------------------------------------------- /PPJoyAPI/stdafx.cpp: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | // stdafx.cpp : source file that includes just the standard includes 22 | // PPJoyAPI.pch will be the pre-compiled header 23 | // stdafx.obj will contain the pre-compiled type information 24 | 25 | #include "stdafx.h" 26 | 27 | // TODO: reference any additional headers you need in STDAFX.H 28 | // and not in this file 29 | -------------------------------------------------------------------------------- /PPJoyAPI_turboC++/PPJGUID.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | // Define an Interface Guid to access the proprietary PPJoyBus interface. 22 | // This guid is used to identify a specific interface in IRP_MN_QUERY_INTERFACE handler. 23 | 24 | DEFINE_GUID(GUID_PPJOY_BUS,0x64c3b4c4,0xcdcc,0x49aa,0x99,0xa0,0x5b,0x4a,0xe4,0xb5,0xb1,0xbb); 25 | /* 64c3b4c4-cdcc-49aa-99a0-5b4ae4b5b1bb */ 26 | -------------------------------------------------------------------------------- /UnInst64/stdafx.cpp: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | // stdafx.cpp : source file that includes just the standard includes 22 | // UnInst64.pch will be the pre-compiled header 23 | // stdafx.obj will contain the pre-compiled type information 24 | 25 | #include "stdafx.h" 26 | 27 | // TODO: reference any additional headers you need in STDAFX.H 28 | // and not in this file 29 | -------------------------------------------------------------------------------- /PPJoyCOM/Debug.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | #ifndef __DEBUG_H__ 22 | #define __DEBUG_H__ 23 | 24 | #ifdef _DEBUG // Set by Visual Studio when we have a debug target 25 | 26 | void DebugBufferPrint (char *Format,...); 27 | 28 | #define DebugPrintf(__x__) { DebugBufferPrint __x__; } 29 | 30 | #else 31 | 32 | #define DebugPrintf(__x__) {} 33 | 34 | #endif 35 | 36 | #endif -------------------------------------------------------------------------------- /ViseHelper/Debug.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | #ifndef __DEBUG_H__ 22 | #define __DEBUG_H__ 23 | 24 | #ifdef _DEBUG // Set by Visual Studio when we have a debug target 25 | 26 | void DebugBufferPrint (char *Format,...); 27 | 28 | #define DebugPrintf(__x__) { DebugBufferPrint __x__; } 29 | 30 | #else 31 | 32 | #define DebugPrintf(__x__) {} 33 | 34 | #endif 35 | 36 | #endif -------------------------------------------------------------------------------- /AddJoyDrivers/Debug.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | #ifndef __DEBUG_H__ 22 | #define __DEBUG_H__ 23 | 24 | #ifdef _DEBUG // Set by Visual Studio when we have a debug target 25 | 26 | void DebugBufferPrint (char *Format,...); 27 | 28 | #define DebugPrintf(__x__) { DebugBufferPrint __x__; } 29 | 30 | #else 31 | 32 | #define DebugPrintf(__x__) {} 33 | 34 | #endif 35 | 36 | #endif -------------------------------------------------------------------------------- /PPJoyAPI_turboC++/Debug.cpp: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | #include "stdafx.h" 22 | #include "Debug.h" 23 | 24 | #ifdef _DEBUG 25 | 26 | char DebugTextBuffer[DEBUGBUFSIZE]; 27 | 28 | void DebugBufferPrint (char *Format,...) 29 | { 30 | va_list args; 31 | 32 | va_start (args,Format); 33 | vsprintf (DebugTextBuffer,Format,args); 34 | va_end(args); 35 | } 36 | 37 | #endif 38 | -------------------------------------------------------------------------------- /SetupHelper/Debug.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | #ifndef __DEBUG_H__ 22 | #define __DEBUG_H__ 23 | 24 | #ifdef _DEBUG // Set by Visual Studio when we have a debug target 25 | 26 | void DebugBufferPrint (char *Format,...); 27 | 28 | #define DebugPrintf(__x__) { DebugBufferPrint __x__; } 29 | 30 | #else 31 | 32 | #define DebugPrintf(__x__) {} 33 | 34 | #endif 35 | 36 | #endif -------------------------------------------------------------------------------- /PPJoyCpl/Debug.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | #ifndef __DEBUG_H__ 22 | #define __DEBUG_H__ 23 | 24 | #ifdef _DEBUG // Set by Visual Studio when we have a debug target 25 | 26 | #include 27 | 28 | void DebugBufferPrint (TCHAR *Format,...); 29 | 30 | #define DebugPrintf(__x__) { DebugBufferPrint __x__; } 31 | 32 | #else 33 | 34 | #define DebugPrintf(__x__) {} 35 | 36 | #endif 37 | 38 | #endif -------------------------------------------------------------------------------- /PPJoyCpl/DonateDialog.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | #ifndef __DONATE_H__ 22 | #define __DONATE_H__ 23 | 24 | // Name of the registry key where the Donate Dialog accested value is stored 25 | #define DONATE_DIALOG_VALUE "DonateDialog" 26 | // Version number for dialog. Show Dialog if saved value is less than this value. 27 | #define DONATE_DIALOG_VER 2 28 | 29 | int ShowDonateDialog (void); 30 | void DonateDialog (void); 31 | 32 | #endif 33 | -------------------------------------------------------------------------------- /Docs/UserManual/UnsignedDrivers.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 | 19 |

Unsigned Driver warning messages

20 | 21 |

Warning screens for Windows XP

22 | If you see a screen similar to this one during installation, or while adding a new joystick, please click on Continue Anyway. 23 |

24 |

25 |
26 |
27 | 28 |

Warning screens for Windows 2000

29 | If you see a screen similar to this one during installation, please click on Yes. 30 |

31 |

32 |
33 |
34 | 35 |

Error screens for Windows XP

36 | If you see a screen like this one during installation your computer is not allowing unsigned drivers 37 | to be installed. Please cancel the installation and review the information in 38 | Changing the Driver Signing settings. 39 |

40 |

41 |
42 |
43 | 44 |

Error screens for Windows 2000

45 | If you see a screen like this one during installation your computer is not allowing unsigned drivers 46 | to be installed. Please cancel the installation and review the information in 47 | Changing the Driver Signing settings. 48 |

49 |

50 |
51 |
52 | 53 | 54 | 55 | 56 | -------------------------------------------------------------------------------- /Docs/Contents3f.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 | 19 |

General: 20 |

User manual: 21 | 22 |

Supported interfaces:
23 | - Digtal joysticks
24 | - Playstation (PSX)
25 | - SNES/NES.
26 | - Sega Genesis.
27 | - R/C Transmitters
28 | 29 |
30 | Virtual joysticks
31 | - PPJoyCOM
32 | - PPJoyDLL
33 | - PPJoyKey
34 | - PPJoyMouse
35 | 36 | - Sample application
37 |
38 | 39 |

FAQ: 40 |

Credits: 41 |

Contact: 42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /Helper64/main.c: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | #include "Install.h" 22 | #include "Debug.h" 23 | 24 | int main (int argc, char **argv) 25 | { 26 | #ifdef _DEBUG 27 | { 28 | int Count; 29 | 30 | DebugPrintf (("%d command line arguments:\n",argc)) 31 | 32 | for (Count=0;Count 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 | 19 |

General: 20 |

User manual: 21 | 22 |

Supported interfaces:
23 | - Digtal joysticks
24 | - Playstation (PSX)
25 | - SNES/NES.
26 | 27 |
28 | Sega Genesis
29 | - ConsoleCable
30 | - DirectPad Pro
31 | - DirectPad Pro verion 6
32 | - Linux
33 | - NTPad XP
34 | - SNESkey
35 |
36 | 37 | - R/C Transmitters
38 | - Virtual joysticks
39 | 40 |

FAQ: 41 |

Credits: 42 |

Contact: 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /Docs/Contents2.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 | 19 |

General: 20 | 21 |

User manual:
22 | - Installing PPJoy
23 | - Driver Signing settings
24 | - Unsigned driver messages
25 | - Setup for Win98/ME
26 | - PPJoy Control Panel applet
27 | - Adding new joysticks
28 | - Removing joysticks
29 | - Remapping buttons and axes
30 | - Changing timing parameters
31 | - Timing parameter details
32 | - Setting PPJoy options
33 | 34 |

Supported interfaces: 35 |

FAQ: 36 |

Credits: 37 |

Contact: 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /RCCallbackDLLs/resource.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | //{{NO_DEPENDENCIES}} 22 | // Microsoft Visual C++ generated include file. 23 | // Used by RCCallbackDLLs.rc 24 | 25 | // Next default values for new objects 26 | // 27 | #ifdef APSTUDIO_INVOKED 28 | #ifndef APSTUDIO_READONLY_SYMBOLS 29 | #define _APS_NEXT_RESOURCE_VALUE 101 30 | #define _APS_NEXT_COMMAND_VALUE 40001 31 | #define _APS_NEXT_CONTROL_VALUE 1001 32 | #define _APS_NEXT_SYMED_VALUE 101 33 | #endif 34 | #endif 35 | -------------------------------------------------------------------------------- /Docs/Contents3b.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 | 19 |

General: 20 |

User manual: 21 | 22 |

Supported interfaces:
23 | - Digtal joysticks
24 | 25 |
26 | Playstation (PSX)
27 | - DirectPad Pro
28 | - Linux
29 | - Megatap
30 | - NTPad XP
31 | - PSX Peripheral Bus Library
32 | - Powering the interface
33 |
34 | 35 | - SNES/NES.
36 | - Sega Genesis.
37 | - R/C Transmitters
38 | - Virtual joysticks
39 | 40 |

FAQ: 41 |

Credits: 42 |

Contact: 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /AddJoyDrivers/resource.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | //{{NO_DEPENDENCIES}} 22 | // Microsoft Developer Studio generated include file. 23 | // Used by AddJoyDrivers.rc 24 | // 25 | 26 | // Next default values for new objects 27 | // 28 | #ifdef APSTUDIO_INVOKED 29 | #ifndef APSTUDIO_READONLY_SYMBOLS 30 | #define _APS_NEXT_RESOURCE_VALUE 101 31 | #define _APS_NEXT_COMMAND_VALUE 40001 32 | #define _APS_NEXT_CONTROL_VALUE 1000 33 | #define _APS_NEXT_SYMED_VALUE 101 34 | #endif 35 | #endif 36 | -------------------------------------------------------------------------------- /PPJoyAPI/stdafx.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | // stdafx.h : include file for standard system include files, 22 | // or project specific include files that are used frequently, but 23 | // are changed infrequently 24 | // 25 | 26 | #pragma once 27 | 28 | #include "targetver.h" 29 | 30 | //#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers 31 | // Windows Header Files: 32 | #include 33 | 34 | 35 | 36 | // TODO: reference additional headers your program requires here 37 | -------------------------------------------------------------------------------- /ViseHelper/resource.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | //{{NO_DEPENDENCIES}} 22 | // Microsoft Developer Studio generated include file. 23 | // Used by ViseHelper.rc 24 | // 25 | #define IDD_DUMMY 1000 26 | 27 | // Next default values for new objects 28 | // 29 | #ifdef APSTUDIO_INVOKED 30 | #ifndef APSTUDIO_READONLY_SYMBOLS 31 | #define _APS_NEXT_RESOURCE_VALUE 1001 32 | #define _APS_NEXT_COMMAND_VALUE 32771 33 | #define _APS_NEXT_CONTROL_VALUE 1000 34 | #define _APS_NEXT_SYMED_VALUE 1000 35 | #endif 36 | #endif 37 | -------------------------------------------------------------------------------- /PPortJoy/JoyDefs.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | #ifndef __JOYDEFS_H__ 22 | #define __JOYDEFS_H__ 23 | 24 | #include "PPortJoy.h" 25 | #include "PPJIOCTL.h" 26 | 27 | typedef void (*JoyReadFuncPtr) (PDEVICE_EXTENSION DeviceExtension); 28 | typedef void (*JoyInitFuncPtr) (PUCHAR BasePort, UCHAR JoyType); 29 | 30 | typedef struct 31 | { 32 | UCHAR ChipMode; 33 | JoyInitFuncPtr InitFunc; 34 | JoyReadFuncPtr ReadFunc; 35 | PJOYSTICK_MAP DefaultMap; 36 | } JOYSTICKDEF, *PJOYSTICKDEF; 37 | 38 | extern JOYSTICKDEF JoyDefs[PPJOY_MAX_JOYTYPE+1]; 39 | 40 | 41 | #endif -------------------------------------------------------------------------------- /Docs/Diagrams/GeneralNotes.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PPJoy - Parallel Port Joystick driver for Windows 98, Me, 2000 and XP 6 | 7 | 14 | 15 | 16 | 17 | 18 |

General notes regarding interface construction

19 | 20 |

Warning

21 | Any hardware you connect to your Parallel Port is done at your own risk. Neither myself, not the 22 | original author of the interface, accepts any responsibility for any damage that may occur. This 23 | goes doubly if you construct the interface yourself. 24 | 25 | Please visit the original webpage for an interface before constructing it - there may be specific warnings 26 | or instructions there. 27 | 28 |

Pull-up resistors

29 | Not all Parallel Ports are created equal. Some will function fine with any form of pull-up resistors on 30 | the input lines while others will not function without it. In general the newer ECP Parallel Ports function 31 | without the pull-up resistors. 32 | 33 | The diagrams are the work of several different authors - and if they included pull-up resistors then it is 34 | included here as well. 35 | 36 | All interfaces, except PCAE and IanHarries, should function fine without any of the resistors. NEVER leave 37 | out the diodes! 38 | 39 |

Pinout for additional fire buttons

40 | There are no universal standard for any additional fire buttons beyond the first button. The diagrams 41 | here use pin 9 of the joystick connector for the second fire button. 42 | 43 | What pins you use for fire buttons are up to you. One possibility is to use a DB15 connector for joysticks 44 | and wire the additional fire buttons to pins 10-15. 45 | 46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /PPJoyCOM/Debug.cpp: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | #include "stdafx.h" 22 | 23 | #include "Debug.h" 24 | 25 | #include 26 | 27 | #ifdef _DEBUG 28 | 29 | #define DEBUGBUFSIZE 2048 30 | char DebugTextBuffer[DEBUGBUFSIZE]; 31 | 32 | void DebugBufferPrint (char *Format,...) 33 | { 34 | va_list args; 35 | 36 | va_start (args,Format); 37 | vsprintf (DebugTextBuffer,Format,args); 38 | /* puts (DebugTextBuffer); */ 39 | OutputDebugString (DebugTextBuffer); 40 | /*MessageBox (NULL,DebugTextBuffer,"debug",MB_OK);*/ 41 | va_end(args); 42 | } 43 | 44 | #endif 45 | -------------------------------------------------------------------------------- /ViseHelper/Debug.cpp: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * PPJoy Virtual Joystick for Microsoft Windows * 3 | * Copyright (C) 2011 Deon van der Westhuysen * 4 | * * 5 | * This program is free software: you can redistribute it and/or modify * 6 | * it under the terms of the GNU General Public License as published by * 7 | * the Free Software Foundation, either version 3 of the License, or * 8 | * (at your option) any later version. * 9 | * * 10 | * This program is distributed in the hope that it will be useful, * 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 13 | * GNU General Public License for more details. * 14 | * * 15 | * You should have received a copy of the GNU General Public License * 16 | * along with this program. If not, see . * 17 | * * 18 | ***************************************************************************/ 19 | 20 | 21 | #include "stdafx.h" 22 | 23 | #include "Debug.h" 24 | 25 | #include 26 | 27 | #ifdef _DEBUG 28 | 29 | #define DEBUGBUFSIZE 2048 30 | char DebugTextBuffer[DEBUGBUFSIZE]; 31 | 32 | void DebugBufferPrint (char *Format,...) 33 | { 34 | va_list args; 35 | 36 | va_start (args,Format); 37 | vsprintf (DebugTextBuffer,Format,args); 38 | /* puts (DebugTextBuffer); */ 39 | OutputDebugString (DebugTextBuffer); 40 | /*MessageBox (NULL,DebugTextBuffer,"debug",MB_OK);*/ 41 | va_end(args); 42 | } 43 | 44 | #endif 45 | --------------------------------------------------------------------------------