PSX analog game adapter

home icon
psx analog front

This project was another spinoff of my original psx-to-genesis adapter. The analog signal from the stick is used to activate the dpad signals, just as if you pushed them. This is nice because the earliest psx games like Tomb Raider I or the Arcade Greatest Hits series don't support the analog stick (it wasn't around yet), but using the dpad can hurt the gameplay (dpad Sinistar --yech). There are some companies that make a controller with a dpad almost like an analog stick, but I wanted the real McCoy.

Assembly Notes:

  1. Pots, switch, and LM339 IC found at Radio Shack.
  2. I was worried that an LM339 wouldn't work down at a 3.5v supply, but seems OK so far.
  3. Pot values don't matter: 5k, 10k, 20k all good. You could even use resistors, but that's not as fun.
  4. Dial pot A for 1.1v, pot B for 2.8v. Make small adjustments according to taste (more or less thumb movement triggering controller).
  5. The two analog pad access points are marked at A and B on ascii graphic below. They are on the back side of the controller board.
  6. The dpad solder points are on the front side of the controller board. I soldered on 30-guage wires so it wouldn't lift up the rubber base thingee, but it wasn't quite perfect. Need to push the dpad button harder than usual (but don't really need them now, do I?)
  7. I added a DPDT switch to disconnect the analog stick signals so the controller went back to original operation, but the problem was the switch needed a mounting. It may be easier to just dedicate a psx dual shock, they're $15 or less. When the switch is thrown to disabled, 1.7v (midpoint voltage) is applied to the comparators, so they'll just sit there.

Final Thoughts:

  1. Those d-pad lines would be a good place to try that pen that lays down conductive ink. Maybe I'll buy one someday.
  2. Was also going to solder in a dsub9 jack to play dpad games with a 2600 stick, but got lazy. Probably would have done it if I had any of the Namco Pacman games.


                            ,_  Red wire is 3.5v  
                            |   Black wire is gnd
       /               xxxxxxxx               \
      /                                        \
     /                                          \                                           
     |                                          |
     |                                          |
     |      Right stick       Left stick        |
     |           x                x             |
    /          x   x            x   B            \
    |            x                A              |
   /        _____________________________         \
  (        /                             \         )
  \       /                               \       /
   \_____/                                 \_____/
          NOTE: back-side of controller board

      3.5v               3.5v            
       |                  |               
       |                  |               
       /                  /              
       \___pot_a          \___pot_b       
       /    1.1v          /    2.8v       
       \                  \           
       |                  |
       |                  |
      gnd                gnd

        dpad_east__1OUT |1  +--+ 14| 3OUT______dpad_north
        dpad_west__2OUT |2       13| 4OUT______dpad_south
        3.5v________VCC |3       12| GND_______gnd
 1.7v__     1.1v___-2In |4 LM339 11| +4In______2.8v    ___1.7v
psx_A__ \__________+2In |5       10| -4In____________/ ___psx_B
              |____-1In |6        9| +3In____|         
          2.8v_____+1In |7        8| -3In______1.1v

   Note: the 1.7v is produced by connecting two 10k resistors between 
         3.5v and ground

   How it Works:
     The player pushes the playstation analog stick all the way right (east)
     The psx_A voltages rises from 1.6v to 3.5v.
     Once the psx_A voltage is greater than 2.8v, comparator #1 turns on 
     The 1OUT pins changes from high impedance to grounded
     The dpad_east voltage changes from 3.5v to 0v
     The console reads the dpad_east low voltage as someone pushing the button.

psx analog back
back icon