sphinx.addnodesdocument)}( rawsourcechildren]( translations LanguagesNode)}(hhh](h pending_xref)}(hhh]docutils.nodesTextChinese (Simplified)}parenthsba attributes}(ids]classes]names]dupnames]backrefs] refdomainstdreftypedoc reftarget2/translations/zh_CN/input/devices/joystick-parportmodnameN classnameN refexplicitutagnamehhh ubh)}(hhh]hChinese (Traditional)}hh2sbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget2/translations/zh_TW/input/devices/joystick-parportmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hItalian}hhFsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget2/translations/it_IT/input/devices/joystick-parportmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hJapanese}hhZsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget2/translations/ja_JP/input/devices/joystick-parportmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hKorean}hhnsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget2/translations/ko_KR/input/devices/joystick-parportmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hSpanish}hhsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget2/translations/sp_SP/input/devices/joystick-parportmodnameN classnameN refexplicituh1hhh ubeh}(h]h ]h"]h$]h&]current_languageEnglishuh1h hh _documenthsourceNlineNubhcomment)}(h4This data file has been placed in the public domain.h]h4This data file has been placed in the public domain.}hhsbah}(h]h ]h"]h$]h&] xml:spacepreserveuh1hhhhhho/srv/docbuild/lib/venvs/build-kernel-docs/lib64/python3.9/site-packages/docutils/parsers/rst/include/isonum.txthKubh)}(hDerived from the Unicode character mappings available from . Processed by unicode2rstsubs.py, part of Docutils: .h]hDerived from the Unicode character mappings available from . Processed by unicode2rstsubs.py, part of Docutils: .}hhsbah}(h]h ]h"]h$]h&]hhuh1hhhhhhhhKubhsubstitution_definition)}(h*.. |amp| unicode:: U+00026 .. AMPERSANDh]h&}hhsbah}(h]h ]h"]ampah$]h&]uh1hhhhKhhhhubh)}(h+.. |apos| unicode:: U+00027 .. APOSTROPHEh]h'}hhsbah}(h]h ]h"]aposah$]h&]uh1hhhhKhhhhubh)}(h).. |ast| unicode:: U+0002A .. ASTERISKh]h*}hhsbah}(h]h ]h"]astah$]h&]uh1hhhhK hhhhubh)}(h+.. |brvbar| unicode:: U+000A6 .. BROKEN BARh]h¦}hhsbah}(h]h ]h"]brvbarah$]h&]uh1hhhhK hhhhubh)}(h0.. |bsol| unicode:: U+0005C .. REVERSE SOLIDUSh]h\}hjsbah}(h]h ]h"]bsolah$]h&]uh1hhhhK hhhhubh)}(h*.. |cent| unicode:: U+000A2 .. CENT SIGNh]h¢}hjsbah}(h]h ]h"]centah$]h&]uh1hhhhK hhhhubh)}(h&.. |colon| unicode:: U+0003A .. COLONh]h:}hjsbah}(h]h ]h"]colonah$]h&]uh1hhhhK hhhhubh)}(h&.. |comma| unicode:: U+0002C .. COMMAh]h,}hj-sbah}(h]h ]h"]commaah$]h&]uh1hhhhKhhhhubh)}(h... |commat| unicode:: U+00040 .. COMMERCIAL ATh]h@}hj<sbah}(h]h ]h"]commatah$]h&]uh1hhhhKhhhhubh)}(h/.. |copy| unicode:: U+000A9 .. COPYRIGHT SIGNh]h©}hjKsbah}(h]h ]h"]copyah$]h&]uh1hhhhKhhhhubh)}(h... |curren| unicode:: U+000A4 .. CURRENCY SIGNh]h¤}hjZsbah}(h]h ]h"]currenah$]h&]uh1hhhhKhhhhubh)}(h0.. |darr| unicode:: U+02193 .. DOWNWARDS ARROWh]h↓}hjisbah}(h]h ]h"]darrah$]h&]uh1hhhhKhhhhubh)}(h,.. |deg| unicode:: U+000B0 .. DEGREE SIGNh]h°}hjxsbah}(h]h ]h"]degah$]h&]uh1hhhhKhhhhubh)}(h... |divide| unicode:: U+000F7 .. DIVISION SIGNh]h÷}hjsbah}(h]h ]h"]divideah$]h&]uh1hhhhKhhhhubh)}(h,.. |dollar| unicode:: U+00024 .. DOLLAR SIGNh]h$}hjsbah}(h]h ]h"]dollarah$]h&]uh1hhhhKhhhhubh)}(h,.. |equals| unicode:: U+0003D .. EQUALS SIGNh]h=}hjsbah}(h]h ]h"]equalsah$]h&]uh1hhhhKhhhhubh)}(h1.. |excl| unicode:: U+00021 .. EXCLAMATION MARKh]h!}hjsbah}(h]h ]h"]exclah$]h&]uh1hhhhKhhhhubh)}(h9.. |frac12| unicode:: U+000BD .. VULGAR FRACTION ONE HALFh]h½}hjsbah}(h]h ]h"]frac12ah$]h&]uh1hhhhKhhhhubh)}(h<.. |frac14| unicode:: U+000BC .. VULGAR FRACTION ONE QUARTERh]h¼}hjsbah}(h]h ]h"]frac14ah$]h&]uh1hhhhKhhhhubh)}(h;.. |frac18| unicode:: U+0215B .. VULGAR FRACTION ONE EIGHTHh]h⅛}hjsbah}(h]h ]h"]frac18ah$]h&]uh1hhhhKhhhhubh)}(h?.. |frac34| unicode:: U+000BE .. VULGAR FRACTION THREE QUARTERSh]h¾}hjsbah}(h]h ]h"]frac34ah$]h&]uh1hhhhKhhhhubh)}(h>.. |frac38| unicode:: U+0215C .. VULGAR FRACTION THREE EIGHTHSh]h⅜}hjsbah}(h]h ]h"]frac38ah$]h&]uh1hhhhKhhhhubh)}(h=.. |frac58| unicode:: U+0215D .. VULGAR FRACTION FIVE EIGHTHSh]h⅝}hjsbah}(h]h ]h"]frac58ah$]h&]uh1hhhhKhhhhubh)}(h>.. |frac78| unicode:: U+0215E .. VULGAR FRACTION SEVEN EIGHTHSh]h⅞}hjsbah}(h]h ]h"]frac78ah$]h&]uh1hhhhKhhhhubh)}(h2.. |gt| unicode:: U+0003E .. GREATER-THAN SIGNh]h>}hj,sbah}(h]h ]h"]gtah$]h&]uh1hhhhKhhhhubh)}(h9.. |half| unicode:: U+000BD .. VULGAR FRACTION ONE HALFh]h½}hj;sbah}(h]h ]h"]halfah$]h&]uh1hhhhK hhhhubh)}(h/.. |horbar| unicode:: U+02015 .. HORIZONTAL BARh]h―}hjJsbah}(h]h ]h"]horbarah$]h&]uh1hhhhK!hhhhubh)}(h'.. |hyphen| unicode:: U+02010 .. HYPHENh]h‐}hjYsbah}(h]h ]h"]hyphenah$]h&]uh1hhhhK"hhhhubh)}(h:.. |iexcl| unicode:: U+000A1 .. INVERTED EXCLAMATION MARKh]h¡}hjhsbah}(h]h ]h"]iexclah$]h&]uh1hhhhK#hhhhubh)}(h7.. |iquest| unicode:: U+000BF .. INVERTED QUESTION MARKh]h¿}hjwsbah}(h]h ]h"]iquestah$]h&]uh1hhhhK$hhhhubh)}(hJ.. |laquo| unicode:: U+000AB .. LEFT-POINTING DOUBLE ANGLE QUOTATION MARKh]h«}hjsbah}(h]h ]h"]laquoah$]h&]uh1hhhhK%hhhhubh)}(h0.. |larr| unicode:: U+02190 .. LEFTWARDS ARROWh]h←}hjsbah}(h]h ]h"]larrah$]h&]uh1hhhhK&hhhhubh)}(h3.. |lcub| unicode:: U+0007B .. LEFT CURLY BRACKETh]h{}hjsbah}(h]h ]h"]lcubah$]h&]uh1hhhhK'hhhhubh)}(h;.. |ldquo| unicode:: U+0201C .. LEFT DOUBLE QUOTATION MARKh]h“}hjsbah}(h]h ]h"]ldquoah$]h&]uh1hhhhK(hhhhubh)}(h).. |lowbar| unicode:: U+0005F .. LOW LINEh]h_}hjsbah}(h]h ]h"]lowbarah$]h&]uh1hhhhK)hhhhubh)}(h1.. |lpar| unicode:: U+00028 .. LEFT PARENTHESISh]h(}hjsbah}(h]h ]h"]lparah$]h&]uh1hhhhK*hhhhubh)}(h4.. |lsqb| unicode:: U+0005B .. LEFT SQUARE BRACKETh]h[}hjsbah}(h]h ]h"]lsqbah$]h&]uh1hhhhK+hhhhubh)}(h;.. |lsquo| unicode:: U+02018 .. LEFT SINGLE QUOTATION MARKh]h‘}hjsbah}(h]h ]h"]lsquoah$]h&]uh1hhhhK,hhhhubh)}(h/.. |lt| unicode:: U+0003C .. LESS-THAN SIGNh]h<}hjsbah}(h]h ]h"]ltah$]h&]uh1hhhhK-hhhhubh)}(h+.. |micro| unicode:: U+000B5 .. MICRO SIGNh]hµ}hj sbah}(h]h ]h"]microah$]h&]uh1hhhhK.hhhhubh)}(h+.. |middot| unicode:: U+000B7 .. MIDDLE DOTh]h·}hjsbah}(h]h ]h"]middotah$]h&]uh1hhhhK/hhhhubh)}(h/.. |nbsp| unicode:: U+000A0 .. NO-BREAK SPACEh]h }hj+sbah}(h]h ]h"]nbspah$]h&]uh1hhhhK0hhhhubh)}(h).. |not| unicode:: U+000AC .. NOT SIGNh]h¬}hj:sbah}(h]h ]h"]notah$]h&]uh1hhhhK1hhhhubh)}(h,.. |num| unicode:: U+00023 .. NUMBER SIGNh]h#}hjIsbah}(h]h ]h"]numah$]h&]uh1hhhhK2hhhhubh)}(h).. |ohm| unicode:: U+02126 .. OHM SIGNh]hΩ}hjXsbah}(h]h ]h"]ohmah$]h&]uh1hhhhK3hhhhubh)}(h;.. |ordf| unicode:: U+000AA .. FEMININE ORDINAL INDICATORh]hª}hjgsbah}(h]h ]h"]ordfah$]h&]uh1hhhhK4hhhhubh)}(h<.. |ordm| unicode:: U+000BA .. MASCULINE ORDINAL INDICATORh]hº}hjvsbah}(h]h ]h"]ordmah$]h&]uh1hhhhK5hhhhubh)}(h-.. |para| unicode:: U+000B6 .. PILCROW SIGNh]h¶}hjsbah}(h]h ]h"]paraah$]h&]uh1hhhhK6hhhhubh)}(h-.. |percnt| unicode:: U+00025 .. PERCENT SIGNh]h%}hjsbah}(h]h ]h"]percntah$]h&]uh1hhhhK7hhhhubh)}(h*.. |period| unicode:: U+0002E .. FULL STOPh]h.}hjsbah}(h]h ]h"]periodah$]h&]uh1hhhhK8hhhhubh)}(h*.. |plus| unicode:: U+0002B .. PLUS SIGNh]h+}hjsbah}(h]h ]h"]plusah$]h&]uh1hhhhK9hhhhubh)}(h0.. |plusmn| unicode:: U+000B1 .. PLUS-MINUS SIGNh]h±}hjsbah}(h]h ]h"]plusmnah$]h&]uh1hhhhK:hhhhubh)}(h+.. |pound| unicode:: U+000A3 .. POUND SIGNh]h£}hjsbah}(h]h ]h"]poundah$]h&]uh1hhhhK;hhhhubh)}(h... |quest| unicode:: U+0003F .. QUESTION MARKh]h?}hjsbah}(h]h ]h"]questah$]h&]uh1hhhhKhhhhubh)}(h1.. |rarr| unicode:: U+02192 .. RIGHTWARDS ARROWh]h→}hj sbah}(h]h ]h"]rarrah$]h&]uh1hhhhK?hhhhubh)}(h4.. |rcub| unicode:: U+0007D .. RIGHT CURLY BRACKETh]h}}hjsbah}(h]h ]h"]rcubah$]h&]uh1hhhhK@hhhhubh)}(h<.. |rdquo| unicode:: U+0201D .. RIGHT DOUBLE QUOTATION MARKh]h”}hj*sbah}(h]h ]h"]rdquoah$]h&]uh1hhhhKAhhhhubh)}(h0.. |reg| unicode:: U+000AE .. REGISTERED SIGNh]h®}hj9sbah}(h]h ]h"]regah$]h&]uh1hhhhKBhhhhubh)}(h2.. |rpar| unicode:: U+00029 .. RIGHT PARENTHESISh]h)}hjHsbah}(h]h ]h"]rparah$]h&]uh1hhhhKChhhhubh)}(h5.. |rsqb| unicode:: U+0005D .. RIGHT SQUARE BRACKETh]h]}hjWsbah}(h]h ]h"]rsqbah$]h&]uh1hhhhKDhhhhubh)}(h<.. |rsquo| unicode:: U+02019 .. RIGHT SINGLE QUOTATION MARKh]h’}hjfsbah}(h]h ]h"]rsquoah$]h&]uh1hhhhKEhhhhubh)}(h-.. |sect| unicode:: U+000A7 .. SECTION SIGNh]h§}hjusbah}(h]h ]h"]sectah$]h&]uh1hhhhKFhhhhubh)}(h*.. |semi| unicode:: U+0003B .. SEMICOLONh]h;}hjsbah}(h]h ]h"]semiah$]h&]uh1hhhhKGhhhhubh)}(h,.. |shy| unicode:: U+000AD .. SOFT HYPHENh]h­}hjsbah}(h]h ]h"]shyah$]h&]uh1hhhhKHhhhhubh)}(h(.. |sol| unicode:: U+0002F .. SOLIDUSh]h/}hjsbah}(h]h ]h"]solah$]h&]uh1hhhhKIhhhhubh)}(h,.. |sung| unicode:: U+0266A .. EIGHTH NOTEh]h♪}hjsbah}(h]h ]h"]sungah$]h&]uh1hhhhKJhhhhubh)}(h0.. |sup1| unicode:: U+000B9 .. SUPERSCRIPT ONEh]h¹}hjsbah}(h]h ]h"]sup1ah$]h&]uh1hhhhKKhhhhubh)}(h0.. |sup2| unicode:: U+000B2 .. SUPERSCRIPT TWOh]h²}hjsbah}(h]h ]h"]sup2ah$]h&]uh1hhhhKLhhhhubh)}(h2.. |sup3| unicode:: U+000B3 .. SUPERSCRIPT THREEh]h³}hjsbah}(h]h ]h"]sup3ah$]h&]uh1hhhhKMhhhhubh)}(h4.. |times| unicode:: U+000D7 .. MULTIPLICATION SIGNh]h×}hjsbah}(h]h ]h"]timesah$]h&]uh1hhhhKNhhhhubh)}(h0.. |trade| unicode:: U+02122 .. TRADE MARK SIGNh]h™}hjsbah}(h]h ]h"]tradeah$]h&]uh1hhhhKOhhhhubh)}(h... |uarr| unicode:: U+02191 .. UPWARDS ARROWh]h↑}hj sbah}(h]h ]h"]uarrah$]h&]uh1hhhhKPhhhhubh)}(h... |verbar| unicode:: U+0007C .. VERTICAL LINEh]h|}hjsbah}(h]h ]h"]verbarah$]h&]uh1hhhhKQhhhhubh)}(h*.. |yen| unicode:: U+000A5 .. YEN SIGN h]h¥}hj)sbah}(h]h ]h"]yenah$]h&]uh1hhhhKRhhhhubhtarget)}(h.. _joystick-parport:h]h}(h]h ]h"]h$]h&]refidjoystick-parportuh1j8hKYhhhhhL/var/lib/git/docbuild/linux/Documentation/input/devices/joystick-parport.rstubhsection)}(hhh](htitle)}(hParallel Port Joystick Driversh]hParallel Port Joystick Drivers}(hjNhhhNhNubah}(h]h ]h"]h$]h&]uh1jLhjIhhhjFhKubh field_list)}(hhh](hfield)}(hhh](h field_name)}(h Copyrighth]h Copyright}(hjhhhhNhNubah}(h]h ]h"]h$]h&]uh1jfhjchjFhKubh field_body)}(h0|copy| 1998-2000 Vojtech Pavlik h]h paragraph)}(hjzh](h©}(hj~hhhNhNubh 1998-2000 Vojtech Pavlik <}(hj~hhhNhNubh reference)}(hvojtech@ucw.czh]hvojtech@ucw.cz}(hjhhhNhNubah}(h]h ]h"]h$]h&]refurimailto:vojtech@ucw.czuh1jhj~ubh>}(hj~hhhNhNubeh}(h]h ]h"]h$]h&]uh1j|hjFhK hjxubah}(h]h ]h"]h$]h&]uh1jvhjcubeh}(h]h ]h"]h$]h&]uh1jahjFhK hj^hhubjb)}(hhh](jg)}(h Copyrighth]h Copyright}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jfhjhjFhKubjw)}(h3|copy| 1998 Andree Borrmann h]j})}(h1|copy| 1998 Andree Borrmann h](h©}(hjhhhNhNubh 1998 Andree Borrmann <}(hjhhhNhNubj)}(ha.borrmann@tu-bs.deh]ha.borrmann@tu-bs.de}(hjhhhNhNubah}(h]h ]h"]h$]h&]refurimailto:a.borrmann@tu-bs.deuh1jhjubh>}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1j|hjFhK hjubah}(h]h ]h"]h$]h&]uh1jvhjubeh}(h]h ]h"]h$]h&]uh1jahjFhK hj^hhubeh}(h]h ]h"]h$]h&]uh1j\hjIhhhjFhK ubj})}(hSponsored by SuSEh]hSponsored by SuSE}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhK hjIhhubjH)}(hhh](jM)}(h Disclaimerh]h Disclaimer}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jLhj hhhjFhKubj})}(hX,Any information in this file is provided as-is, without any guarantee that it will be true. So, use it at your own risk. The possible damages that can happen include burning your parallel port, and/or the sticks and joystick and maybe even more. Like when a lightning kills you it is not our problem.h]hX,Any information in this file is provided as-is, without any guarantee that it will be true. So, use it at your own risk. The possible damages that can happen include burning your parallel port, and/or the sticks and joystick and maybe even more. Like when a lightning kills you it is not our problem.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhKhj hhubeh}(h] disclaimerah ]h"] disclaimerah$]h&]uh1jGhjIhhhjFhKubjH)}(hhh](jM)}(h Introductionh]h Introduction}(hj6hhhNhNubah}(h]h ]h"]h$]h&]uh1jLhj3hhhjFhKubj})}(hXThe joystick parport drivers are used for joysticks and gamepads not originally designed for PCs and other computers Linux runs on. Because of that, PCs usually lack the right ports to connect these devices to. Parallel port, because of its ability to change single bits at will, and providing both output and input bits is the most suitable port on the PC for connecting such devices.h]hXThe joystick parport drivers are used for joysticks and gamepads not originally designed for PCs and other computers Linux runs on. Because of that, PCs usually lack the right ports to connect these devices to. Parallel port, because of its ability to change single bits at will, and providing both output and input bits is the most suitable port on the PC for connecting such devices.}(hjDhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhKhj3hhubeh}(h] introductionah ]h"] introductionah$]h&]uh1jGhjIhhhjFhKubjH)}(hhh](jM)}(hDevices supportedh]hDevices supported}(hj]hhhNhNubah}(h]h ]h"]h$]h&]uh1jLhjZhhhjFhK"ubj})}(hvMany console and 8-bit computer gamepads and joysticks are supported. The following subsections discuss usage of each.h]hvMany console and 8-bit computer gamepads and joysticks are supported. The following subsections discuss usage of each.}(hjkhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhK$hjZhhubjH)}(hhh](jM)}(h NES and SNESh]h NES and SNES}(hj|hhhNhNubah}(h]h ]h"]h$]h&]uh1jLhjyhhhjFhK(ubj})}(hX6The Nintendo Entertainment System and Super Nintendo Entertainment System gamepads are widely available, and easy to get. Also, they are quite easy to connect to a PC, and don't need much processing speed (108 us for NES and 165 us for SNES, compared to about 1000 us for PC gamepads) to communicate with them.h]hX8The Nintendo Entertainment System and Super Nintendo Entertainment System gamepads are widely available, and easy to get. Also, they are quite easy to connect to a PC, and don’t need much processing speed (108 us for NES and 165 us for SNES, compared to about 1000 us for PC gamepads) to communicate with them.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhK*hjyhhubj})}(hXQAll NES and SNES use the same synchronous serial protocol, clocked from the computer's side (and thus timing insensitive). To allow up to 5 NES and/or SNES gamepads and/or SNES mice connected to the parallel port at once, the output lines of the parallel port are shared, while one of 5 available input lines is assigned to each gamepad.h]hXSAll NES and SNES use the same synchronous serial protocol, clocked from the computer’s side (and thus timing insensitive). To allow up to 5 NES and/or SNES gamepads and/or SNES mice connected to the parallel port at once, the output lines of the parallel port are shared, while one of 5 available input lines is assigned to each gamepad.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhK0hjyhhubj})}(htThis protocol is handled by the gamecon.c driver, so that's the one you'll use for NES, SNES gamepads and SNES mice.h]hxThis protocol is handled by the gamecon.c driver, so that’s the one you’ll use for NES, SNES gamepads and SNES mice.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhK6hjyhhubj})}(hX7The main problem with PC parallel ports is that they don't have +5V power source on any of their pins. So, if you want a reliable source of power for your pads, use either keyboard or joystick port, and make a pass-through cable. You can also pull the power directly from the power supply (the red wire is +5V).h]hX9The main problem with PC parallel ports is that they don’t have +5V power source on any of their pins. So, if you want a reliable source of power for your pads, use either keyboard or joystick port, and make a pass-through cable. You can also pull the power directly from the power supply (the red wire is +5V).}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhK9hjyhhubj})}(hXmIf you want to use the parallel port only, you can take the power is from some data pin. For most gamepad and parport implementations only one pin is needed, and I'd recommend pin 9 for that, the highest data bit. On the other hand, if you are not planning to use anything else than NES / SNES on the port, anything between and including pin 4 and pin 9 will work::h]hXnIf you want to use the parallel port only, you can take the power is from some data pin. For most gamepad and parport implementations only one pin is needed, and I’d recommend pin 9 for that, the highest data bit. On the other hand, if you are not planning to use anything else than NES / SNES on the port, anything between and including pin 4 and pin 9 will work:}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhK?hjyhhubh literal_block)}(h(pin 9) -----> Powerh]h(pin 9) -----> Power}hjsbah}(h]h ]h"]h$]h&]hhuh1jhjFhKEhjyhhubj})}(hX$Unfortunately, there are pads that need a lot more of power, and parallel ports that can't give much current through the data pins. If this is your case, you'll need to use diodes (as a prevention of destroying your parallel port), and combine the currents of two or more data bits together::h]hX'Unfortunately, there are pads that need a lot more of power, and parallel ports that can’t give much current through the data pins. If this is your case, you’ll need to use diodes (as a prevention of destroying your parallel port), and combine the currents of two or more data bits together:}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhKGhjyhhubj)}(h Diodes (pin 9) ----|>|-------+------> Power | (pin 8) ----|>|-------+ | (pin 7) ----|>|-------+ | : | (pin 4) ----|>|-------+h]h Diodes (pin 9) ----|>|-------+------> Power | (pin 8) ----|>|-------+ | (pin 7) ----|>|-------+ | : | (pin 4) ----|>|-------+}hjsbah}(h]h ]h"]h$]h&]hhuh1jhjFhKLhjyhhubj})}(hGround is quite easy. On PC's parallel port the ground is on any of the pins from pin 18 to pin 25. So use any pin of these you like for the ground::h]hGround is quite easy. On PC’s parallel port the ground is on any of the pins from pin 18 to pin 25. So use any pin of these you like for the ground:}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhKWhjyhhubj)}(h(pin 18) -----> Groundh]h(pin 18) -----> Ground}hj sbah}(h]h ]h"]h$]h&]hhuh1jhjFhKZhjyhhubj})}(hNES and SNES pads have two input bits, Clock and Latch, which drive the serial transfer. These are connected to pins 2 and 3 of the parallel port, respectively::h]hNES and SNES pads have two input bits, Clock and Latch, which drive the serial transfer. These are connected to pins 2 and 3 of the parallel port, respectively:}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhK\hjyhhubj)}(h)(pin 2) -----> Clock (pin 3) -----> Latchh]h)(pin 2) -----> Clock (pin 3) -----> Latch}hj&sbah}(h]h ]h"]h$]h&]hhuh1jhjFhK`hjyhhubj})}(hAnd the last thing is the NES / SNES data wire. Only that isn't shared and each pad needs its own data pin. The parallel port pins are::h]hAnd the last thing is the NES / SNES data wire. Only that isn’t shared and each pad needs its own data pin. The parallel port pins are:}(hj4hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhKchjyhhubj)}(h(pin 10) -----> Pad 1 data (pin 11) -----> Pad 2 data (pin 12) -----> Pad 3 data (pin 13) -----> Pad 4 data (pin 15) -----> Pad 5 datah]h(pin 10) -----> Pad 1 data (pin 11) -----> Pad 2 data (pin 12) -----> Pad 3 data (pin 13) -----> Pad 4 data (pin 15) -----> Pad 5 data}hjBsbah}(h]h ]h"]h$]h&]hhuh1jhjFhKfhjyhhubj})}(hPNote that pin 14 is not used, since it is not an input pin on the parallel port.h]hPNote that pin 14 is not used, since it is not an input pin on the parallel port.}(hjPhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhKlhjyhhubj})}(hXXThis is everything you need on the PC's side of the connection, now on to the gamepads side. The NES and SNES have different connectors. Also, there are quite a lot of NES clones, and because Nintendo used proprietary connectors for their machines, the cloners couldn't and used standard D-Cannon connectors. Anyway, if you've got a gamepad, and it has buttons A, B, Turbo A, Turbo B, Select and Start, and is connected through 5 wires, then it is either a NES or NES clone and will work with this connection. SNES gamepads also use 5 wires, but have more buttons. They will work as well, of course::h]hX]This is everything you need on the PC’s side of the connection, now on to the gamepads side. The NES and SNES have different connectors. Also, there are quite a lot of NES clones, and because Nintendo used proprietary connectors for their machines, the cloners couldn’t and used standard D-Cannon connectors. Anyway, if you’ve got a gamepad, and it has buttons A, B, Turbo A, Turbo B, Select and Start, and is connected through 5 wires, then it is either a NES or NES clone and will work with this connection. SNES gamepads also use 5 wires, but have more buttons. They will work as well, of course:}(hj^hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhKohjyhhubj)}(hXPinout for NES gamepads Pinout for SNES gamepads and mice +----> Power +-----------------------\ | 7 | o o o o | x x o | 1 5 +---------+ 7 +-----------------------/ | x x o \ | | | | | | o o o o | | | | | +-> Ground 4 +------------+ 1 | | | +------------> Data | | | | | | +---------------> Latch | | | +-> Ground | +------------------> Clock | | +----> Clock +---------------------> Power | +-------> Latch +----------> Data Pinout for NES clone (db9) gamepads Pinout for NES clone (db15) gamepads +---------> Clock +-----------------> Data | +-------> Latch | +---> Ground | | +-----> Data | | | | | ___________________ _____________ 8 \ o x x x x x x o / 1 5 \ x o o o x / 1 \ o x x o x x o / \ x o x o / 15 `~~~~~~~~~~~~~' 9 9 `~~~~~~~' 6 | | | | | | | +----> Clock | +----> Power | +----------> Latch +--------> Ground +----------------> Powerh]hXPinout for NES gamepads Pinout for SNES gamepads and mice +----> Power +-----------------------\ | 7 | o o o o | x x o | 1 5 +---------+ 7 +-----------------------/ | x x o \ | | | | | | o o o o | | | | | +-> Ground 4 +------------+ 1 | | | +------------> Data | | | | | | +---------------> Latch | | | +-> Ground | +------------------> Clock | | +----> Clock +---------------------> Power | +-------> Latch +----------> Data Pinout for NES clone (db9) gamepads Pinout for NES clone (db15) gamepads +---------> Clock +-----------------> Data | +-------> Latch | +---> Ground | | +-----> Data | | | | | ___________________ _____________ 8 \ o x x x x x x o / 1 5 \ x o o o x / 1 \ o x x o x x o / \ x o x o / 15 `~~~~~~~~~~~~~' 9 9 `~~~~~~~' 6 | | | | | | | +----> Clock | +----> Power | +----------> Latch +--------> Ground +----------------> Power}hjlsbah}(h]h ]h"]h$]h&]hhuh1jhjFhKxhjyhhubeh}(h] nes-and-snesah ]h"] nes and snesah$]h&]uh1jGhjZhhhjFhK(ubjH)}(hhh](jM)}(hMultisystem joysticksh]hMultisystem joysticks}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jLhjhhhjFhKubj})}(hXIn the era of 8-bit machines, there was something like de-facto standard for joystick ports. They were all digital, and all used D-Cannon 9 pin connectors (db9). Because of that, a single joystick could be used without hassle on Atari (130, 800XE, 800XL, 2600, 7200), Amiga, Commodore C64, Amstrad CPC, Sinclair ZX Spectrum and many other machines. That's why these joysticks are called "Multisystem".h]hXIn the era of 8-bit machines, there was something like de-facto standard for joystick ports. They were all digital, and all used D-Cannon 9 pin connectors (db9). Because of that, a single joystick could be used without hassle on Atari (130, 800XE, 800XL, 2600, 7200), Amiga, Commodore C64, Amstrad CPC, Sinclair ZX Spectrum and many other machines. That’s why these joysticks are called “Multisystem”.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhKhjhhubj})}(hNow their pinout::h]hNow their pinout:}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhKhjhhubj)}(h +---------> Right | +-------> Left | | +-----> Down | | | +---> Up | | | | _____________ 5 \ x o o o o / 1 \ x o x o / 9 `~~~~~~~' 6 | | | +----> Button +--------> Groundh]h +---------> Right | +-------> Left | | +-----> Down | | | +---> Up | | | | _____________ 5 \ x o o o o / 1 \ x o x o / 9 `~~~~~~~' 6 | | | +----> Button +--------> Ground}hjsbah}(h]h ]h"]h$]h&]hhuh1jhjFhKhjhhubj})}(hoHowever, as time passed, extensions to this standard developed, and these were not compatible with each other::h]hnHowever, as time passed, extensions to this standard developed, and these were not compatible with each other:}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhKhjhhubj)}(hX Atari 130, 800/XL/XE MSX +-----------> Power +---------> Right | +---------> Right | +-------> Left | | +-------> Left | | +-----> Down | | | +-----> Down | | | +---> Up | | | | +---> Up | | | | | | | | | _____________ _____________ 5 \ x o o o o / 1 5 \ o o o o o / 1 \ x o o o / \ o o o o / 9 `~~~~~~~' 6 9 `~~~~~~~' 6 | | | | | | | | | +----> Button | | | +----> Button 1 | +------> Power | | +------> Button 2 +--------> Ground | +--------> Output 3 +----------> Ground Amstrad CPC Commodore C64 +-----------> Analog Y +---------> Right | +---------> Right | +-------> Left | | +-------> Left | | +-----> Down | | | +-----> Down | | | +---> Up | | | | +---> Up | | | | | | | | | _____________ _____________ 5 \ x o o o o / 1 5 \ o o o o o / 1 \ x o o o / \ o o o o / 9 `~~~~~~~' 6 9 `~~~~~~~' 6 | | | | | | | | | +----> Button 1 | | | +----> Button | +------> Button 2 | | +------> Power +--------> Ground | +--------> Ground +----------> Analog X Sinclair Spectrum +2A/+3 Amiga 1200 +-----------> Up +-----------> Button 3 | +---------> Fire | +---------> Right | | | | +-------> Left | | +-----> Ground | | | +-----> Down | | | | | | | +---> Up | | | | | | | | _____________ _____________ 5 \ o o x o x / 1 5 \ o o o o o / 1 \ o o o o / \ o o o o / 9 `~~~~~~~' 6 9 `~~~~~~~' 6 | | | | | | | | | | | +----> Right | | | +----> Button 1 | | +------> Left | | +------> Power | +--------> Ground | +--------> Ground +----------> Down +----------> Button 2 And there were many others.h]hX Atari 130, 800/XL/XE MSX +-----------> Power +---------> Right | +---------> Right | +-------> Left | | +-------> Left | | +-----> Down | | | +-----> Down | | | +---> Up | | | | +---> Up | | | | | | | | | _____________ _____________ 5 \ x o o o o / 1 5 \ o o o o o / 1 \ x o o o / \ o o o o / 9 `~~~~~~~' 6 9 `~~~~~~~' 6 | | | | | | | | | +----> Button | | | +----> Button 1 | +------> Power | | +------> Button 2 +--------> Ground | +--------> Output 3 +----------> Ground Amstrad CPC Commodore C64 +-----------> Analog Y +---------> Right | +---------> Right | +-------> Left | | +-------> Left | | +-----> Down | | | +-----> Down | | | +---> Up | | | | +---> Up | | | | | | | | | _____________ _____________ 5 \ x o o o o / 1 5 \ o o o o o / 1 \ x o o o / \ o o o o / 9 `~~~~~~~' 6 9 `~~~~~~~' 6 | | | | | | | | | +----> Button 1 | | | +----> Button | +------> Button 2 | | +------> Power +--------> Ground | +--------> Ground +----------> Analog X Sinclair Spectrum +2A/+3 Amiga 1200 +-----------> Up +-----------> Button 3 | +---------> Fire | +---------> Right | | | | +-------> Left | | +-----> Ground | | | +-----> Down | | | | | | | +---> Up | | | | | | | | _____________ _____________ 5 \ o o x o x / 1 5 \ o o o o o / 1 \ o o o o / \ o o o o / 9 `~~~~~~~' 6 9 `~~~~~~~' 6 | | | | | | | | | | | +----> Right | | | +----> Button 1 | | +------> Left | | +------> Power | +--------> Ground | +--------> Ground +----------> Down +----------> Button 2 And there were many others.}hjsbah}(h]h ]h"]h$]h&]hhuh1jhjFhKhjhhubjH)}(hhh](jM)}(h!Multisystem joysticks using db9.ch]h!Multisystem joysticks using db9.c}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jLhjhhhjFhKubj})}(hFor the Multisystem joysticks, and their derivatives, the db9.c driver was written. It allows only one joystick / gamepad per parallel port, but the interface is easy to build and works with almost anything.h]hFor the Multisystem joysticks, and their derivatives, the db9.c driver was written. It allows only one joystick / gamepad per parallel port, but the interface is easy to build and works with almost anything.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhKhjhhubj})}(hbFor the basic 1-button Multisystem joystick you connect its wires to the parallel port like this::h]haFor the basic 1-button Multisystem joystick you connect its wires to the parallel port like this:}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhKhjhhubj)}(h(pin 1) -----> Power (pin 18) -----> Ground (pin 2) -----> Up (pin 3) -----> Down (pin 4) -----> Left (pin 5) -----> Right (pin 6) -----> Button 1h]h(pin 1) -----> Power (pin 18) -----> Ground (pin 2) -----> Up (pin 3) -----> Down (pin 4) -----> Left (pin 5) -----> Right (pin 6) -----> Button 1}hjsbah}(h]h ]h"]h$]h&]hhuh1jhjFhKhjhhubj})}(hHowever, if the joystick is switch based (eg. clicks when you move it), you might or might not, depending on your parallel port, need 10 kOhm pullup resistors on each of the direction and button signals, like this::h]hHowever, if the joystick is switch based (eg. clicks when you move it), you might or might not, depending on your parallel port, need 10 kOhm pullup resistors on each of the direction and button signals, like this:}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhKhjhhubj)}(hK(pin 2) ------------+------> Up Resistor | (pin 1) --[10kOhm]--+h]hK(pin 2) ------------+------> Up Resistor | (pin 1) --[10kOhm]--+}hj"sbah}(h]h ]h"]h$]h&]hhuh1jhjFhMhjhhubj})}(hmTry without, and if it doesn't work, add them. For TTL based joysticks / gamepads the pullups are not needed.h]hoTry without, and if it doesn’t work, add them. For TTL based joysticks / gamepads the pullups are not needed.}(hj0hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjhhubj})}(h\For joysticks with two buttons you connect the second button to pin 7 on the parallel port::h]h[For joysticks with two buttons you connect the second button to pin 7 on the parallel port:}(hj>hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjhhubj)}(h(pin 7) -----> Button 2h]h(pin 7) -----> Button 2}hjLsbah}(h]h ]h"]h$]h&]hhuh1jhjFhM hjhhubj})}(hAnd that's it.h]hAnd that’s it.}(hjZhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM hjhhubj})}(hOn a side note, if you have already built a different adapter for use with the digital joystick driver 0.8.0.2, this is also supported by the db9.c driver, as device type 8. (See section 3.2)h]hOn a side note, if you have already built a different adapter for use with the digital joystick driver 0.8.0.2, this is also supported by the db9.c driver, as device type 8. (See section 3.2)}(hjhhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjhhubeh}(h]!multisystem-joysticks-using-db9-cah ]h"]!multisystem joysticks using db9.cah$]h&]uh1jGhjhhhjFhKubjH)}(hhh](jM)}(h%Multisystem joysticks using gamecon.ch]h%Multisystem joysticks using gamecon.c}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jLhj~hhhjFhMubj})}(hXFor some people just one joystick per parallel port is not enough, and/or want to use them on one parallel port together with NES/SNES/PSX pads. This is possible using the gamecon.c. It supports up to 5 devices of the above types, including 1 and 2 buttons Multisystem joysticks.h]hXFor some people just one joystick per parallel port is not enough, and/or want to use them on one parallel port together with NES/SNES/PSX pads. This is possible using the gamecon.c. It supports up to 5 devices of the above types, including 1 and 2 buttons Multisystem joysticks.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhj~hhubj})}(hX@However, there is nothing for free. To allow more sticks to be used at once, you need the sticks to be purely switch based (that is non-TTL), and not to need power. Just a plain simple six switches inside. If your joystick can do more (eg. turbofire) you'll need to disable it totally first if you want to use gamecon.c.h]hXBHowever, there is nothing for free. To allow more sticks to be used at once, you need the sticks to be purely switch based (that is non-TTL), and not to need power. Just a plain simple six switches inside. If your joystick can do more (eg. turbofire) you’ll need to disable it totally first if you want to use gamecon.c.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhj~hhubj})}(hAlso, the connection is a bit more complex. You'll need a bunch of diodes, and one pullup resistor. First, you connect the Directions and the button the same as for db9, however with the diodes between::h]hAlso, the connection is a bit more complex. You’ll need a bunch of diodes, and one pullup resistor. First, you connect the Directions and the button the same as for db9, however with the diodes between:}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM hj~hhubj)}(h Diodes (pin 2) -----|<|----> Up (pin 3) -----|<|----> Down (pin 4) -----|<|----> Left (pin 5) -----|<|----> Right (pin 6) -----|<|----> Button 1h]h Diodes (pin 2) -----|<|----> Up (pin 3) -----|<|----> Down (pin 4) -----|<|----> Left (pin 5) -----|<|----> Right (pin 6) -----|<|----> Button 1}hjsbah}(h]h ]h"]h$]h&]hhuh1jhjFhM$hj~hhubj})}(h9For two button sticks you also connect the other button::h]h8For two button sticks you also connect the other button:}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM+hj~hhubj)}(h(pin 7) -----|<|----> Button 2h]h(pin 7) -----|<|----> Button 2}hjsbah}(h]h ]h"]h$]h&]hhuh1jhjFhM-hj~hhubj})}(hX And finally, you connect the Ground wire of the joystick, like done in this little schematic to Power and Data on the parallel port, as described for the NES / SNES pads in section 2.1 of this file - that is, one data pin for each joystick. The power source is shared::h]hX And finally, you connect the Ground wire of the joystick, like done in this little schematic to Power and Data on the parallel port, as described for the NES / SNES pads in section 2.1 of this file - that is, one data pin for each joystick. The power source is shared:}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM/hj~hhubj)}(hNData ------------+-----> Ground Resistor | Power --[10kOhm]--+h]hNData ------------+-----> Ground Resistor | Power --[10kOhm]--+}hjsbah}(h]h ]h"]h$]h&]hhuh1jhjFhM4hj~hhubj})}(hAnd that's all, here we go!h]hAnd that’s all, here we go!}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM8hj~hhubeh}(h]%multisystem-joysticks-using-gamecon-cah ]h"]%multisystem joysticks using gamecon.cah$]h&]uh1jGhjhhhjFhMubjH)}(hhh](jM)}(h(Multisystem joysticks using turbografx.ch]h(Multisystem joysticks using turbografx.c}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jLhj hhhjFhM;ubj})}(h%The TurboGraFX interface, designed byh]h%The TurboGraFX interface, designed by}(hj& hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM=hj hhubh block_quote)}(h*Steffen Schwenke h]j})}(h)Steffen Schwenke h](hSteffen Schwenke <}(hj: hhhNhNubj)}(hschwenke@burg-halle.deh]hschwenke@burg-halle.de}(hjB hhhNhNubah}(h]h ]h"]h$]h&]refurimailto:schwenke@burg-halle.deuh1jhj: ubh>}(hj: hhhNhNubeh}(h]h ]h"]h$]h&]uh1j|hjFhM?hj6 ubah}(h]h ]h"]h$]h&]uh1j4 hjFhM?hj hhubj})}(hXGallows up to 7 Multisystem joysticks connected to the parallel port. In Steffen's version, there is support for up to 5 buttons per joystick. However, since this doesn't work reliably on all parallel ports, the turbografx.c driver supports only one button per joystick. For more information on how to build the interface, see:h]hXKallows up to 7 Multisystem joysticks connected to the parallel port. In Steffen’s version, there is support for up to 5 buttons per joystick. However, since this doesn’t work reliably on all parallel ports, the turbografx.c driver supports only one button per joystick. For more information on how to build the interface, see:}(hjb hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMAhj hhubj5 )}(h1http://www2.burg-halle.de/~schwenke/parport.html h]j})}(h0http://www2.burg-halle.de/~schwenke/parport.htmlh]j)}(hjv h]h0http://www2.burg-halle.de/~schwenke/parport.html}(hjx hhhNhNubah}(h]h ]h"]h$]h&]refurijv uh1jhjt ubah}(h]h ]h"]h$]h&]uh1j|hjFhMGhjp ubah}(h]h ]h"]h$]h&]uh1j4 hjFhMGhj hhubeh}(h](multisystem-joysticks-using-turbografx-cah ]h"](multisystem joysticks using turbografx.cah$]h&]uh1jGhjhhhjFhM;ubeh}(h]multisystem-joysticksah ]h"]multisystem joysticksah$]h&]uh1jGhjZhhhjFhKubjH)}(hhh](jM)}(hSony Playstationh]hSony Playstation}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jLhj hhhjFhMJubj})}(hoThe PSX controller is supported by the gamecon.c. Pinout of the PSX controller (compatible with DirectPadPro)::h]hnThe PSX controller is supported by the gamecon.c. Pinout of the PSX controller (compatible with DirectPadPro):}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMLhj hhubj)}(hX +---------+---------+---------+ 9 | o o o | o o o | o o o | 1 parallel \________|_________|________/ port pins | | | | | | | | | | | +--------> Clock --- (4) | | | | +------------> Select --- (3) | | | +---------------> Power --- (5-9) | | +------------------> Ground --- (18-25) | +-------------------------> Command --- (2) +----------------------------> Data --- (one of 10,11,12,13,15)h]hX +---------+---------+---------+ 9 | o o o | o o o | o o o | 1 parallel \________|_________|________/ port pins | | | | | | | | | | | +--------> Clock --- (4) | | | | +------------> Select --- (3) | | | +---------------> Power --- (5-9) | | +------------------> Ground --- (18-25) | +-------------------------> Command --- (2) +----------------------------> Data --- (one of 10,11,12,13,15)}hj sbah}(h]h ]h"]h$]h&]hhuh1jhjFhMOhj hhubj})}(h&The driver supports these controllers:h]h&The driver supports these controllers:}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMZhj hhubj5 )}(h}* Standard PSX Pad * NegCon PSX Pad * Analog PSX Pad (red mode) * Analog PSX Pad (green mode) * PSX Rumble Pad * PSX DDR Pad h]h bullet_list)}(hhh](h list_item)}(hStandard PSX Padh]j})}(hj h]hStandard PSX Pad}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM\hj ubah}(h]h ]h"]h$]h&]uh1j hj ubj )}(hNegCon PSX Padh]j})}(hj h]hNegCon PSX Pad}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM]hj ubah}(h]h ]h"]h$]h&]uh1j hj ubj )}(hAnalog PSX Pad (red mode)h]j})}(hj h]hAnalog PSX Pad (red mode)}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM^hj ubah}(h]h ]h"]h$]h&]uh1j hj ubj )}(hAnalog PSX Pad (green mode)h]j})}(hj/ h]hAnalog PSX Pad (green mode)}(hj1 hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM_hj- ubah}(h]h ]h"]h$]h&]uh1j hj ubj )}(hPSX Rumble Padh]j})}(hjF h]hPSX Rumble Pad}(hjH hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM`hjD ubah}(h]h ]h"]h$]h&]uh1j hj ubj )}(h PSX DDR Pad h]j})}(h PSX DDR Padh]h PSX DDR Pad}(hj_ hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMahj[ ubah}(h]h ]h"]h$]h&]uh1j hj ubeh}(h]h ]h"]h$]h&]bullet*uh1j hjFhM\hj ubah}(h]h ]h"]h$]h&]uh1j4 hjFhM\hj hhubeh}(h]sony-playstationah ]h"]sony playstationah$]h&]uh1jGhjZhhhjFhMJubjH)}(hhh](jM)}(hSegah]hSega}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jLhj hhhjFhMdubj})}(hAll the Sega controllers are more or less based on the standard 2-button Multisystem joystick. However, since they don't use switches and use TTL logic, the only driver usable with them is the db9.c driver.h]hAll the Sega controllers are more or less based on the standard 2-button Multisystem joystick. However, since they don’t use switches and use TTL logic, the only driver usable with them is the db9.c driver.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMfhj hhubjH)}(hhh](jM)}(hSega Master Systemh]hSega Master System}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jLhj hhhjFhMkubj})}(hThe SMS gamepads are almost exactly the same as normal 2-button Multisystem joysticks. Set the driver to Multi2 mode, use the corresponding parallel port pins, and the following schematic::h]hThe SMS gamepads are almost exactly the same as normal 2-button Multisystem joysticks. Set the driver to Multi2 mode, use the corresponding parallel port pins, and the following schematic:}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMmhj hhubj)}(hX +-----------> Power | +---------> Right | | +-------> Left | | | +-----> Down | | | | +---> Up | | | | | _____________ 5 \ o o o o o / 1 \ o o x o / 9 `~~~~~~~' 6 | | | | | +----> Button 1 | +--------> Ground +----------> Button 2h]hX +-----------> Power | +---------> Right | | +-------> Left | | | +-----> Down | | | | +---> Up | | | | | _____________ 5 \ o o o o o / 1 \ o o x o / 9 `~~~~~~~' 6 | | | | | +----> Button 1 | +--------> Ground +----------> Button 2}hj sbah}(h]h ]h"]h$]h&]hhuh1jhjFhMqhj hhubeh}(h]sega-master-systemah ]h"]sega master systemah$]h&]uh1jGhj hhhjFhMkubjH)}(hhh](jM)}(hSega Genesis aka MegaDriveh]hSega Genesis aka MegaDrive}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jLhj hhhjFhMubj})}(hThe Sega Genesis (in Europe sold as Sega MegaDrive) pads are an extension to the Sega Master System pads. They use more buttons (3+1, 5+1, 6+1). Use the following schematic::h]hThe Sega Genesis (in Europe sold as Sega MegaDrive) pads are an extension to the Sega Master System pads. They use more buttons (3+1, 5+1, 6+1). Use the following schematic:}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhj hhubj)}(hX1 +-----------> Power | +---------> Right | | +-------> Left | | | +-----> Down | | | | +---> Up | | | | | _____________ 5 \ o o o o o / 1 \ o o o o / 9 `~~~~~~~' 6 | | | | | | | +----> Button 1 | | +------> Select | +--------> Ground +----------> Button 2h]hX1 +-----------> Power | +---------> Right | | +-------> Left | | | +-----> Down | | | | +---> Up | | | | | _____________ 5 \ o o o o o / 1 \ o o o o / 9 `~~~~~~~' 6 | | | | | | | +----> Button 1 | | +------> Select | +--------> Ground +----------> Button 2}hj sbah}(h]h ]h"]h$]h&]hhuh1jhjFhMhj hhubj})}(h4The Select pin goes to pin 14 on the parallel port::h]h3The Select pin goes to pin 14 on the parallel port:}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhj hhubj)}(h(pin 14) -----> Selecth]h(pin 14) -----> Select}hj sbah}(h]h ]h"]h$]h&]hhuh1jhjFhMhj hhubj})}(h8The rest is the same as for Multi2 joysticks using db9.ch]h8The rest is the same as for Multi2 joysticks using db9.c}(hj& hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhj hhubeh}(h]sega-genesis-aka-megadriveah ]h"]sega genesis aka megadriveah$]h&]uh1jGhj hhhjFhMubjH)}(hhh](jM)}(h Sega Saturnh]h Sega Saturn}(hj? hhhNhNubah}(h]h ]h"]h$]h&]uh1jLhj< hhhjFhMubj})}(hSega Saturn has eight buttons, and to transfer that, without hacks like Genesis 6 pads use, it needs one more select pin. Anyway, it is still handled by the db9.c driver. Its pinout is very different from anything else. Use this schematic::h]hSega Saturn has eight buttons, and to transfer that, without hacks like Genesis 6 pads use, it needs one more select pin. Anyway, it is still handled by the db9.c driver. Its pinout is very different from anything else. Use this schematic:}(hjM hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhj< hhubj)}(hX5 +-----------> Select 1 | +---------> Power | | +-------> Up | | | +-----> Down | | | | +---> Ground | | | | | _____________ 5 \ o o o o o / 1 \ o o o o / 9 `~~~~~~~' 6 | | | | | | | +----> Select 2 | | +------> Right | +--------> Left +----------> Powerh]hX5 +-----------> Select 1 | +---------> Power | | +-------> Up | | | +-----> Down | | | | +---> Ground | | | | | _____________ 5 \ o o o o o / 1 \ o o o o / 9 `~~~~~~~' 6 | | | | | | | +----> Select 2 | | +------> Right | +--------> Left +----------> Power}hj[ sbah}(h]h ]h"]h$]h&]hhuh1jhjFhMhj< hhubj})}(hRSelect 1 is pin 14 on the parallel port, Select 2 is pin 16 on the parallel port::h]hQSelect 1 is pin 14 on the parallel port, Select 2 is pin 16 on the parallel port:}(hji hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhj< hhubj)}(h1(pin 14) -----> Select 1 (pin 16) -----> Select 2h]h1(pin 14) -----> Select 1 (pin 16) -----> Select 2}hjw sbah}(h]h ]h"]h$]h&]hhuh1jhjFhMhj< hhubj})}(heThe other pins (Up, Down, Right, Left, Power, Ground) are the same as for Multi joysticks using db9.ch]heThe other pins (Up, Down, Right, Left, Power, Ground) are the same as for Multi joysticks using db9.c}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhj< hhubeh}(h] sega-saturnah ]h"] sega saturnah$]h&]uh1jGhj hhhjFhMubeh}(h]segaah ]h"]segaah$]h&]uh1jGhjZhhhjFhMdubjH)}(hhh](jM)}(h Amiga CD32h]h Amiga CD32}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jLhj hhhjFhMubj})}(h-Amiga CD32 joypad uses the following pinout::h]h,Amiga CD32 joypad uses the following pinout:}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhj hhubj)}(hX3 +-----------> Button 3 | +---------> Right | | +-------> Left | | | +-----> Down | | | | +---> Up | | | | | _____________ 5 \ o o o o o / 1 \ o o o o / 9 `~~~~~~~' 6 | | | | | | | +----> Button 1 | | +------> Power | +--------> Ground +----------> Button 2h]hX3 +-----------> Button 3 | +---------> Right | | +-------> Left | | | +-----> Down | | | | +---> Up | | | | | _____________ 5 \ o o o o o / 1 \ o o o o / 9 `~~~~~~~' 6 | | | | | | | +----> Button 1 | | +------> Power | +--------> Ground +----------> Button 2}hj sbah}(h]h ]h"]h$]h&]hhuh1jhjFhMhj hhubj})}(hcIt can be connected to the parallel port and driven by db9.c driver. It needs the following wiring:h]hcIt can be connected to the parallel port and driven by db9.c driver. It needs the following wiring:}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhj hhubj5 )}(hX\============ ============= CD32 pad Parallel port ============ ============= 1 (Up) 2 (D0) 2 (Down) 3 (D1) 3 (Left) 4 (D2) 4 (Right) 5 (D3) 5 (Button 3) 14 (AUTOFD) 6 (Button 1) 17 (SELIN) 7 (+5V) 1 (STROBE) 8 (Gnd) 18 (Gnd) 9 (Button 2) 7 (D5) ============ ============= h]htable)}(hhh]htgroup)}(hhh](hcolspec)}(hhh]h}(h]h ]h"]h$]h&]colwidthK uh1j hj ubj )}(hhh]h}(h]h ]h"]h$]h&]colwidthK uh1j hj ubhthead)}(hhh]hrow)}(hhh](hentry)}(hhh]j})}(hCD32 padh]hCD32 pad}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhj ubah}(h]h ]h"]h$]h&]uh1j hj ubj )}(hhh]j})}(h Parallel porth]h Parallel port}(hj( hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhj% ubah}(h]h ]h"]h$]h&]uh1j hj ubeh}(h]h ]h"]h$]h&]uh1j hj ubah}(h]h ]h"]h$]h&]uh1j hj ubhtbody)}(hhh](j )}(hhh](j )}(hhh]j})}(h1 (Up)h]h1 (Up)}(hjS hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjP ubah}(h]h ]h"]h$]h&]uh1j hjM ubj )}(hhh]j})}(h2 (D0)h]h2 (D0)}(hjj hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjg ubah}(h]h ]h"]h$]h&]uh1j hjM ubeh}(h]h ]h"]h$]h&]uh1j hjJ ubj )}(hhh](j )}(hhh]j})}(h2 (Down)h]h2 (Down)}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhj ubah}(h]h ]h"]h$]h&]uh1j hj ubj )}(hhh]j})}(h3 (D1)h]h3 (D1)}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhj ubah}(h]h ]h"]h$]h&]uh1j hj ubeh}(h]h ]h"]h$]h&]uh1j hjJ ubj )}(hhh](j )}(hhh]j})}(h3 (Left)h]h3 (Left)}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhj ubah}(h]h ]h"]h$]h&]uh1j hj ubj )}(hhh]j})}(h4 (D2)h]h4 (D2)}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhj ubah}(h]h ]h"]h$]h&]uh1j hj ubeh}(h]h ]h"]h$]h&]uh1j hjJ ubj )}(hhh](j )}(hhh]j})}(h 4 (Right)h]h 4 (Right)}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhj ubah}(h]h ]h"]h$]h&]uh1j hj ubj )}(hhh]j})}(h5 (D3)h]h5 (D3)}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhj ubah}(h]h ]h"]h$]h&]uh1j hj ubeh}(h]h ]h"]h$]h&]uh1j hjJ ubj )}(hhh](j )}(hhh]j})}(h 5 (Button 3)h]h 5 (Button 3)}(hj/ hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhj, ubah}(h]h ]h"]h$]h&]uh1j hj) ubj )}(hhh]j})}(h 14 (AUTOFD)h]h 14 (AUTOFD)}(hjF hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjC ubah}(h]h ]h"]h$]h&]uh1j hj) ubeh}(h]h ]h"]h$]h&]uh1j hjJ ubj )}(hhh](j )}(hhh]j})}(h 6 (Button 1)h]h 6 (Button 1)}(hjf hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjc ubah}(h]h ]h"]h$]h&]uh1j hj` ubj )}(hhh]j})}(h 17 (SELIN)h]h 17 (SELIN)}(hj} hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjz ubah}(h]h ]h"]h$]h&]uh1j hj` ubeh}(h]h ]h"]h$]h&]uh1j hjJ ubj )}(hhh](j )}(hhh]j})}(h7 (+5V)h]h7 (+5V)}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhj ubah}(h]h ]h"]h$]h&]uh1j hj ubj )}(hhh]j})}(h 1 (STROBE)h]h 1 (STROBE)}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhj ubah}(h]h ]h"]h$]h&]uh1j hj ubeh}(h]h ]h"]h$]h&]uh1j hjJ ubj )}(hhh](j )}(hhh]j})}(h8 (Gnd)h]h8 (Gnd)}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhj ubah}(h]h ]h"]h$]h&]uh1j hj ubj )}(hhh]j})}(h18 (Gnd)h]h18 (Gnd)}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhj ubah}(h]h ]h"]h$]h&]uh1j hj ubeh}(h]h ]h"]h$]h&]uh1j hjJ ubj )}(hhh](j )}(hhh]j})}(h 9 (Button 2)h]h 9 (Button 2)}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjubah}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh]j})}(h7 (D5)h]h7 (D5)}(hj"hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjubah}(h]h ]h"]h$]h&]uh1j hjubeh}(h]h ]h"]h$]h&]uh1j hjJ ubeh}(h]h ]h"]h$]h&]uh1jH hj ubeh}(h]h ]h"]h$]h&]colsKuh1j hj ubah}(h]h ]h"]h$]h&]uh1j hj ubah}(h]h ]h"]h$]h&]uh1j4 hjFhMhj hhubeh}(h] amiga-cd32ah ]h"] amiga cd32ah$]h&]uh1jGhjZhhhjFhMubeh}(h]devices-supportedah ]h"]devices supportedah$]h&]uh1jGhjIhhhjFhK"ubjH)}(hhh](jM)}(h The driversh]h The drivers}(hjhhhhNhNubah}(h]h ]h"]h$]h&]uh1jLhjehhhjFhMubj})}(hThere are three drivers for the parallel port interfaces. Each, as described above, allows to connect a different group of joysticks and pads. Here are described their command lines:h]hThere are three drivers for the parallel port interfaces. Each, as described above, allows to connect a different group of joysticks and pads. Here are described their command lines:}(hjvhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjehhubjH)}(hhh](jM)}(h gamecon.ch]h gamecon.c}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jLhjhhhjFhMubj})}(h{Using gamecon.c you can connect up to five devices to one parallel port. It uses the following kernel/module command line::h]hzUsing gamecon.c you can connect up to five devices to one parallel port. It uses the following kernel/module command line:}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjhhubj)}(h)gamecon.map=port,pad1,pad2,pad3,pad4,pad5h]h)gamecon.map=port,pad1,pad2,pad3,pad4,pad5}hjsbah}(h]h ]h"]h$]h&]hhuh1jhjFhMhjhhubj})}(hHWhere ``port`` the number of the parport interface (eg. 0 for parport0).h](hWhere }(hjhhhNhNubhliteral)}(h``port``h]hport}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh: the number of the parport interface (eg. 0 for parport0).}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1j|hjFhMhjhhubj})}(hAnd ``pad1`` to ``pad5`` are pad types connected to different data input pins (10,11,12,13,15), as described in section 2.1 of this file.h](hAnd }(hjhhhNhNubj)}(h``pad1``h]hpad1}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh to }(hjhhhNhNubj)}(h``pad5``h]hpad5}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubhq are pad types connected to different data input pins (10,11,12,13,15), as described in section 2.1 of this file.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1j|hjFhMhjhhubj})}(hThe types are:h]hThe types are:}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjhhubj5 )}(hXF===== ============================= Type Joystick/Pad ===== ============================= 0 None 1 SNES pad 2 NES pad 4 Multisystem 1-button joystick 5 Multisystem 2-button joystick 6 N64 pad 7 Sony PSX controller 8 Sony PSX DDR controller 9 SNES mouse ===== ============================= h]j )}(hhh]j )}(hhh](j )}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1j hjubj )}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1j hjubj )}(hhh]j )}(hhh](j )}(hhh]j})}(hTypeh]hType}(hj:hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhj7ubah}(h]h ]h"]h$]h&]uh1j hj4ubj )}(hhh]j})}(h Joystick/Padh]h Joystick/Pad}(hjQhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjNubah}(h]h ]h"]h$]h&]uh1j hj4ubeh}(h]h ]h"]h$]h&]uh1j hj1ubah}(h]h ]h"]h$]h&]uh1j hjubjI )}(hhh](j )}(hhh](j )}(hhh]j})}(h0h]h0}(hjzhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjwubah}(h]h ]h"]h$]h&]uh1j hjtubj )}(hhh]j})}(hNoneh]hNone}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjubah}(h]h ]h"]h$]h&]uh1j hjtubeh}(h]h ]h"]h$]h&]uh1j hjqubj )}(hhh](j )}(hhh]j})}(h1h]h1}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjubah}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh]j})}(hSNES padh]hSNES pad}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjubah}(h]h ]h"]h$]h&]uh1j hjubeh}(h]h ]h"]h$]h&]uh1j hjqubj )}(hhh](j )}(hhh]j})}(h2h]h2}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjubah}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh]j})}(hNES padh]hNES pad}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjubah}(h]h ]h"]h$]h&]uh1j hjubeh}(h]h ]h"]h$]h&]uh1j hjqubj )}(hhh](j )}(hhh]j})}(h4h]h4}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjubah}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh]j})}(hMultisystem 1-button joystickh]hMultisystem 1-button joystick}(hj6hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhj3ubah}(h]h ]h"]h$]h&]uh1j hjubeh}(h]h ]h"]h$]h&]uh1j hjqubj )}(hhh](j )}(hhh]j})}(h5h]h5}(hjVhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjSubah}(h]h ]h"]h$]h&]uh1j hjPubj )}(hhh]j})}(hMultisystem 2-button joystickh]hMultisystem 2-button joystick}(hjmhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjjubah}(h]h ]h"]h$]h&]uh1j hjPubeh}(h]h ]h"]h$]h&]uh1j hjqubj )}(hhh](j )}(hhh]j})}(h6h]h6}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjubah}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh]j})}(hN64 padh]hN64 pad}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjubah}(h]h ]h"]h$]h&]uh1j hjubeh}(h]h ]h"]h$]h&]uh1j hjqubj )}(hhh](j )}(hhh]j})}(h7h]h7}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjubah}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh]j})}(hSony PSX controllerh]hSony PSX controller}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjubah}(h]h ]h"]h$]h&]uh1j hjubeh}(h]h ]h"]h$]h&]uh1j hjqubj )}(hhh](j )}(hhh]j})}(h8h]h8}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjubah}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh]j})}(hSony PSX DDR controllerh]hSony PSX DDR controller}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjubah}(h]h ]h"]h$]h&]uh1j hjubeh}(h]h ]h"]h$]h&]uh1j hjqubj )}(hhh](j )}(hhh]j})}(h9h]h9}(hj2hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhj/ubah}(h]h ]h"]h$]h&]uh1j hj,ubj )}(hhh]j})}(h SNES mouseh]h SNES mouse}(hjIhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjFubah}(h]h ]h"]h$]h&]uh1j hj,ubeh}(h]h ]h"]h$]h&]uh1j hjqubeh}(h]h ]h"]h$]h&]uh1jH hjubeh}(h]h ]h"]h$]h&]colsKuh1j hjubah}(h]h ]h"]h$]h&]uh1j hjubah}(h]h ]h"]h$]h&]uh1j4 hjFhMhjhhubj})}(hxThe exact type of the PSX controller type is autoprobed when used, so hot swapping should work (but is not recommended).h]hxThe exact type of the PSX controller type is autoprobed when used, so hot swapping should work (but is not recommended).}(hj|hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjhhubj})}(hShould you want to use more than one of parallel ports at once, you can use gamecon.map2 and gamecon.map3 as additional command line parameters for two more parallel ports.h]hShould you want to use more than one of parallel ports at once, you can use gamecon.map2 and gamecon.map3 as additional command line parameters for two more parallel ports.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM hjhhubj})}(hXThere are two options specific to PSX driver portion. gamecon.psx_delay sets the command delay when talking to the controllers. The default of 25 should work but you can try lowering it for better performance. If your pads don't respond try raising it until they work. Setting the type to 8 allows the driver to be used with Dance Dance Revolution or similar games. Arrow keys are registered as key presses instead of X and Y axes.h]hXThere are two options specific to PSX driver portion. gamecon.psx_delay sets the command delay when talking to the controllers. The default of 25 should work but you can try lowering it for better performance. If your pads don’t respond try raising it until they work. Setting the type to 8 allows the driver to be used with Dance Dance Revolution or similar games. Arrow keys are registered as key presses instead of X and Y axes.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjhhubeh}(h] gamecon-cah ]h"] gamecon.cah$]h&]uh1jGhjehhhjFhMubjH)}(hhh](jM)}(hdb9.ch]hdb9.c}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jLhjhhhjFhMubj})}(hApart from making an interface, there is nothing difficult on using the db9.c driver. It uses the following kernel/module command line::h]hApart from making an interface, there is nothing difficult on using the db9.c driver. It uses the following kernel/module command line:}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjhhubj)}(hdb9.dev=port,typeh]hdb9.dev=port,type}hjsbah}(h]h ]h"]h$]h&]hhuh1jhjFhMhjhhubj})}(hKWhere ``port`` is the number of the parport interface (eg. 0 for parport0).h](hWhere }(hjhhhNhNubj)}(h``port``h]hport}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh= is the number of the parport interface (eg. 0 for parport0).}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1j|hjFhMhjhhubj})}(hCaveat here: This driver only works on bidirectional parallel ports. If your parallel port is recent enough, you should have no trouble with this. Old parallel ports may not have this feature.h]hCaveat here: This driver only works on bidirectional parallel ports. If your parallel port is recent enough, you should have no trouble with this. Old parallel ports may not have this feature.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMhjhhubj})}(h1``Type`` is the type of joystick or pad attached:h](j)}(h``Type``h]hType}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubh) is the type of joystick or pad attached:}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1j|hjFhM#hjhhubj5 )}(hX"===== ====================================================== Type Joystick/Pad ===== ====================================================== 0 None 1 Multisystem 1-button joystick 2 Multisystem 2-button joystick 3 Genesis pad (3+1 buttons) 5 Genesis pad (5+1 buttons) 6 Genesis pad (6+2 buttons) 7 Saturn pad (8 buttons) 8 Multisystem 1-button joystick (v0.8.0.2 pin-out) 9 Two Multisystem 1-button joysticks (v0.8.0.2 pin-out) 10 Amiga CD32 pad ===== ====================================================== h]j )}(hhh]j )}(hhh](j )}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1j hj,ubj )}(hhh]h}(h]h ]h"]h$]h&]colwidthK6uh1j hj,ubj )}(hhh]j )}(hhh](j )}(hhh]j})}(hTypeh]hType}(hjLhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM&hjIubah}(h]h ]h"]h$]h&]uh1j hjFubj )}(hhh]j})}(h Joystick/Padh]h Joystick/Pad}(hjchhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM&hj`ubah}(h]h ]h"]h$]h&]uh1j hjFubeh}(h]h ]h"]h$]h&]uh1j hjCubah}(h]h ]h"]h$]h&]uh1j hj,ubjI )}(hhh](j )}(hhh](j )}(hhh]j})}(hj|h]h0}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM(hjubah}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh]j})}(hNoneh]hNone}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM(hjubah}(h]h ]h"]h$]h&]uh1j hjubeh}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh](j )}(hhh]j})}(hjh]h1}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM)hjubah}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh]j})}(hMultisystem 1-button joystickh]hMultisystem 1-button joystick}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM)hjubah}(h]h ]h"]h$]h&]uh1j hjubeh}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh](j )}(hhh]j})}(hjh]h2}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM*hjubah}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh]j})}(hMultisystem 2-button joystickh]hMultisystem 2-button joystick}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM*hj ubah}(h]h ]h"]h$]h&]uh1j hjubeh}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh](j )}(hhh]j})}(h3h]h3}(hj.hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM+hj+ubah}(h]h ]h"]h$]h&]uh1j hj(ubj )}(hhh]j})}(hGenesis pad (3+1 buttons)h]hGenesis pad (3+1 buttons)}(hjEhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM+hjBubah}(h]h ]h"]h$]h&]uh1j hj(ubeh}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh](j )}(hhh]j})}(hjXh]h5}(hjehhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM,hjbubah}(h]h ]h"]h$]h&]uh1j hj_ubj )}(hhh]j})}(hGenesis pad (5+1 buttons)h]hGenesis pad (5+1 buttons)}(hj{hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM,hjxubah}(h]h ]h"]h$]h&]uh1j hj_ubeh}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh](j )}(hhh]j})}(hjh]h6}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM-hjubah}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh]j})}(hGenesis pad (6+2 buttons)h]hGenesis pad (6+2 buttons)}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM-hjubah}(h]h ]h"]h$]h&]uh1j hjubeh}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh](j )}(hhh]j})}(hjh]h7}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM.hjubah}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh]j})}(hSaturn pad (8 buttons)h]hSaturn pad (8 buttons)}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM.hjubah}(h]h ]h"]h$]h&]uh1j hjubeh}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh](j )}(hhh]j})}(hjh]h8}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM/hjubah}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh]j})}(h0Multisystem 1-button joystick (v0.8.0.2 pin-out)h]h0Multisystem 1-button joystick (v0.8.0.2 pin-out)}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM/hjubah}(h]h ]h"]h$]h&]uh1j hjubeh}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh](j )}(hhh]j})}(hj4h]h9}(hj=hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM0hj:ubah}(h]h ]h"]h$]h&]uh1j hj7ubj )}(hhh]j})}(h5Two Multisystem 1-button joysticks (v0.8.0.2 pin-out)h]h5Two Multisystem 1-button joysticks (v0.8.0.2 pin-out)}(hjShhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM0hjPubah}(h]h ]h"]h$]h&]uh1j hj7ubeh}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh](j )}(hhh]j})}(h10h]h10}(hjshhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM1hjpubah}(h]h ]h"]h$]h&]uh1j hjmubj )}(hhh]j})}(hAmiga CD32 padh]hAmiga CD32 pad}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM1hjubah}(h]h ]h"]h$]h&]uh1j hjmubeh}(h]h ]h"]h$]h&]uh1j hjubeh}(h]h ]h"]h$]h&]uh1jH hj,ubeh}(h]h ]h"]h$]h&]colsKuh1j hj)ubah}(h]h ]h"]h$]h&]uh1j hj%ubah}(h]h ]h"]h$]h&]uh1j4 hjFhM%hjhhubj})}(hShould you want to use more than one of these joysticks/pads at once, you can use db9.dev2 and db9.dev3 as additional command line parameters for two more joysticks/pads.h]hShould you want to use more than one of these joysticks/pads at once, you can use db9.dev2 and db9.dev3 as additional command line parameters for two more joysticks/pads.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM4hjhhubeh}(h]db9-cah ]h"]db9.cah$]h&]uh1jGhjehhhjFhMubjH)}(hhh](jM)}(h turbografx.ch]h turbografx.c}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jLhjhhhjFhM9ubj})}(hGThe turbografx.c driver uses a very simple kernel/module command line::h]hFThe turbografx.c driver uses a very simple kernel/module command line:}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM;hjhhubj)}(h/turbografx.map=port,js1,js2,js3,js4,js5,js6,js7h]h/turbografx.map=port,js1,js2,js3,js4,js5,js6,js7}hjsbah}(h]h ]h"]h$]h&]hhuh1jhjFhM=hjhhubj})}(hKWhere ``port`` is the number of the parport interface (eg. 0 for parport0).h](hWhere }(hjhhhNhNubj)}(h``port``h]hport}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh= is the number of the parport interface (eg. 0 for parport0).}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1j|hjFhM?hjhhubj})}(h``jsX`` is the number of buttons the Multisystem joysticks connected to the interface ports 1-7 have. For a standard multisystem joystick, this is 1.h](j)}(h``jsX``h]hjsX}(hj$hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubh is the number of buttons the Multisystem joysticks connected to the interface ports 1-7 have. For a standard multisystem joystick, this is 1.}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1j|hjFhMAhjhhubj})}(hShould you want to use more than one of these interfaces at once, you can use turbografx.map2 and turbografx.map3 as additional command line parameters for two more interfaces.h]hShould you want to use more than one of these interfaces at once, you can use turbografx.map2 and turbografx.map3 as additional command line parameters for two more interfaces.}(hj<hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMDhjhhubeh}(h] turbografx-cah ]h"] turbografx.cah$]h&]uh1jGhjehhhjFhM9ubeh}(h] the-driversah ]h"] the driversah$]h&]uh1jGhjIhhhjFhMubjH)}(hhh](jM)}(hPC parallel port pinouth]hPC parallel port pinout}(hj]hhhNhNubah}(h]h ]h"]h$]h&]uh1jLhjZhhhjFhMIubj)}(h .----------------------------------------. At the PC: \ 13 12 11 10 9 8 7 6 5 4 3 2 1 / \ 25 24 23 22 21 20 19 18 17 16 15 14 / ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~h]h .----------------------------------------. At the PC: \ 13 12 11 10 9 8 7 6 5 4 3 2 1 / \ 25 24 23 22 21 20 19 18 17 16 15 14 / ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}hjksbah}(h]h ]h"]h$]h&]hhuh1jhjFhMMhjZhhubj )}(hhh]j )}(hhh](j )}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1j hj|ubj )}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1j hj|ubj )}(hhh]h}(h]h ]h"]h$]h&]colwidthK uh1j hj|ubj )}(hhh]j )}(hhh](j )}(hhh]j})}(hPinh]hPin}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMShjubah}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh]j})}(hNameh]hName}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMShjubah}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh]j})}(h Descriptionh]h Description}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMShjubah}(h]h ]h"]h$]h&]uh1j hjubeh}(h]h ]h"]h$]h&]uh1j hjubah}(h]h ]h"]h$]h&]uh1j hj|ubjI )}(hhh](j )}(hhh](j )}(hhh]j})}(hjh]h1}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMUhjubah}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh]j})}(h/STROBEh]h/STROBE}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMUhjubah}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh]j})}(hStrobeh]hStrobe}(hj*hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMUhj'ubah}(h]h ]h"]h$]h&]uh1j hjubeh}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh](j )}(hhh]j})}(h2-9h]h2-9}(hjJhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMVhjGubah}(h]h ]h"]h$]h&]uh1j hjDubj )}(hhh]j})}(hD0-D7h]hD0-D7}(hjahhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMVhj^ubah}(h]h ]h"]h$]h&]uh1j hjDubj )}(hhh]j})}(h Data Bit 0-7h]h Data Bit 0-7}(hjxhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMVhjuubah}(h]h ]h"]h$]h&]uh1j hjDubeh}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh](j )}(hhh]j})}(h10h]h10}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMWhjubah}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh]j})}(h/ACKh]h/ACK}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMWhjubah}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh]j})}(h Acknowledgeh]h Acknowledge}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMWhjubah}(h]h ]h"]h$]h&]uh1j hjubeh}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh](j )}(hhh]j})}(h11h]h11}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMXhjubah}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh]j})}(hBUSYh]hBUSY}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMXhjubah}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh]j})}(hBusyh]hBusy}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMXhjubah}(h]h ]h"]h$]h&]uh1j hjubeh}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh](j )}(hhh]j})}(h12h]h12}(hj4hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMYhj1ubah}(h]h ]h"]h$]h&]uh1j hj.ubj )}(hhh]j})}(hPEh]hPE}(hjKhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMYhjHubah}(h]h ]h"]h$]h&]uh1j hj.ubj )}(hhh]j})}(h Paper Endh]h Paper End}(hjbhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMYhj_ubah}(h]h ]h"]h$]h&]uh1j hj.ubeh}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh](j )}(hhh]j})}(h13h]h13}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMZhjubah}(h]h ]h"]h$]h&]uh1j hj|ubj )}(hhh]j})}(hSELINh]hSELIN}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMZhjubah}(h]h ]h"]h$]h&]uh1j hj|ubj )}(hhh]j})}(h Select Inh]h Select In}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMZhjubah}(h]h ]h"]h$]h&]uh1j hj|ubeh}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh](j )}(hhh]j})}(h14h]h14}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM[hjubah}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh]j})}(h/AUTOFDh]h/AUTOFD}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM[hjubah}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh]j})}(hAutofeedh]hAutofeed}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM[hjubah}(h]h ]h"]h$]h&]uh1j hjubeh}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh](j )}(hhh]j})}(h15h]h15}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM\hjubah}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh]j})}(h/ERRORh]h/ERROR}(hj5hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM\hj2ubah}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh]j})}(hErrorh]hError}(hjLhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM\hjIubah}(h]h ]h"]h$]h&]uh1j hjubeh}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh](j )}(hhh]j})}(h16h]h16}(hjlhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM]hjiubah}(h]h ]h"]h$]h&]uh1j hjfubj )}(hhh]j})}(h/INITh]h/INIT}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM]hjubah}(h]h ]h"]h$]h&]uh1j hjfubj )}(hhh]j})}(h Initializeh]h Initialize}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM]hjubah}(h]h ]h"]h$]h&]uh1j hjfubeh}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh](j )}(hhh]j})}(h17h]h17}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM^hjubah}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh]j})}(h/SELh]h/SEL}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM^hjubah}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh]j})}(hSelecth]hSelect}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM^hjubah}(h]h ]h"]h$]h&]uh1j hjubeh}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh](j )}(hhh]j})}(h18-25h]h18-25}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM_hjubah}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh]j})}(hGNDh]hGND}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM_hjubah}(h]h ]h"]h$]h&]uh1j hjubj )}(hhh]j})}(h Signal Groundh]h Signal Ground}(hj6hhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhM_hj3ubah}(h]h ]h"]h$]h&]uh1j hjubeh}(h]h ]h"]h$]h&]uh1j hjubeh}(h]h ]h"]h$]h&]uh1jH hj|ubeh}(h]h ]h"]h$]h&]colsKuh1j hjyubah}(h]h ]h"]h$]h&]uh1j hjZhhhjFhNubj})}(hThat's all, folks! Have fun!h]hThat’s all, folks! Have fun!}(hjchhhNhNubah}(h]h ]h"]h$]h&]uh1j|hjFhMchjZhhubeh}(h]pc-parallel-port-pinoutah ]h"]pc parallel port pinoutah$]h&]uh1jGhjIhhhjFhMIubeh}(h](parallel-port-joystick-driversjEeh ]h"](parallel port joystick driversjoystick-parporteh$]h&]uh1jGhhhhhjFhKexpect_referenced_by_name}jj:sexpect_referenced_by_id}jEj:subeh}(h]h ]h"]h$]h&]sourcejFuh1hcurrent_sourceN current_lineNsettingsdocutils.frontendValues)}(jLN generatorN datestampN source_linkN source_urlN toc_backlinksj footnote_backlinksK sectnum_xformKstrip_commentsNstrip_elements_with_classesN strip_classesN report_levelK halt_levelKexit_status_levelKdebugNwarning_streamN tracebackinput_encoding utf-8-siginput_encoding_error_handlerstrictoutput_encodingutf-8output_encoding_error_handlerjerror_encodingutf-8error_encoding_error_handlerbackslashreplace language_codeenrecord_dependenciesNconfigN id_prefixhauto_id_prefixid dump_settingsNdump_internalsNdump_transformsNdump_pseudo_xmlNexpose_internalsNstrict_visitorN_disable_configN_sourcejF _destinationN _config_files]7/var/lib/git/docbuild/linux/Documentation/docutils.confafile_insertion_enabled raw_enabledKline_length_limitM'pep_referencesN pep_base_urlhttps://peps.python.org/pep_file_url_templatepep-%04drfc_referencesN rfc_base_url&https://datatracker.ietf.org/doc/html/ tab_widthKtrim_footnote_reference_spacesyntax_highlightlong smart_quotessmartquotes_locales]character_level_inline_markupdoctitle_xform docinfo_xformKsectsubtitle_xform image_loadinglinkembed_stylesheetcloak_email_addressessection_self_linkenvNubreporterNindirect_targets]substitution_defs}(hhhhhhhhj jjjj*jj9j-jHj<jWjKjfjZjujijjxjjjjjjjjjjjjjjjjj jjjj)jj8j,jGj;jVjJjejYjtjhjjwjjjjjjjjjjjjjjjjj jjj j(jj7j+jFj:jUjIjdjXjsjgjjvjjjjjjjjjjjjjjjjj jjj j'jj6j*jEj9jTjHjcjWjrjfjjujjjjjjjjjjjjjjjjjjjj j&jj5j)usubstitution_names}(amphЌaposhߌasthbrvbarhbsolj centjcolonj*commaj9commatjHcopyjWcurrenjfdarrjudegjdividejdollarjequalsjexcljfrac12jfrac14jfrac18jfrac34jfrac38j frac58jfrac78j)gtj8halfjGhorbarjVhyphenjeiexcljtiquestjlaquojlarrjlcubjldquojlowbarjlparjlsqbjlsquojltj microjmiddotj(nbspj7notjFnumjUohmjdordfjsordmjparajpercntjperiodjplusjplusmnjpoundjquestjquotjraquoj rarrjrcubj'rdquoj6regjErparjTrsqbjcrsquojrsectjsemijshyjsoljsungjsup1jsup2jsup3jtimesjtradejuarrjverbarj&yenj5urefnames}refids}jE]j:asnameids}(jjEj~j{j0j-jWjTjbj_jj|j j j{jxj j j j j j j j j j j9 j6 j j jZjWjWjTjjjjjOjLjvjsu nametypes}(jj~j0jWjbjj j{j j j j j j9 j jZjWjjjOjvuh}(jEjIj{jIj-j jTj3j_jZj|jyj jjxjj j~j j j j j j j j j6 j j j< jWj jTjejjjjjLjjsjZu footnote_refs} citation_refs} autofootnotes]autofootnote_refs]symbol_footnotes]symbol_footnote_refs] footnotes] citations]autofootnote_startKsymbol_footnote_startK id_counter collectionsCounter}Rparse_messages]transform_messages]hsystem_message)}(hhh]j})}(hhh]h6Hyperlink target "joystick-parport" is not referenced.}hj^sbah}(h]h ]h"]h$]h&]uh1j|hj[ubah}(h]h ]h"]h$]h&]levelKtypeINFOsourcejFlineKYuh1jYuba transformerN include_log]0Documentation/input/devices/joystick-parport.rst(NNNNta decorationNhhub.