Amiga.org

Amiga computer related discussion => Amiga Tutorials => Topic started by: som99 on September 06, 2012, 09:06:42 PM

Title: Simple Genesis/Megadrive gamepad button jump mod.
Post by: som99 on September 06, 2012, 09:06:42 PM
Well as some of my Amiga joysticks are getting worn out (Mostly the button(s)) and also some games works good with a gamepad I bought a few brand new Megadrive/Genesis gamepads.

So like many(all) of you know jumping in platformers or accelerating racing games on the Amiga is often done by pressing the stick up, and using a D-Pad that just don't feel right so I wanted to fix that.

This is an EASY mod, nearly anyone will pull it off and if you can't you might know someone who can do it for you.

Im just writing this for the few out there that want to do this but don't know how to do it.

Here is the brand new "SUPER PAD" I got for 3$ of the Swedish ebay.
(http://www.underground-gamer.com/imagebucket/IMG_0562.jpeg)
(http://www.underground-gamer.com/imagebucket/IMG_0560.jpeg)

Open it up, and if you as me has a cat who loves to watch don't let it near any components  and don't touch it since she/he is a static bomb. (She knows she can watch as long as she do not touch anything and she knows I wont pet her).
(http://www.underground-gamer.com/imagebucket/IMG_0559.jpeg)

When you have opened the controller locate the trace from the up button and the A button, there is two traces per button, keep in mind that one is ground and they all go tegether to the bigger trace, so don't touch that.

You simply use a knife and scrape of the protective coating from the UP trace, keep in mind to look at the top part of the case so the wire do not get in the way when closing the case.

Then Solder a wire from the UP trace to the chosen button, in my case A since B and C is used as button 1 and 2 on the Amiga.

I had exposed traces from the buttons so no need to scrape there, but some controllers might not.
(http://www.underground-gamer.com/imagebucket/IMG_0555.jpeg)

Then just use a knife to cut the trace from the chosen button and remove a part to be sure.
(http://www.underground-gamer.com/imagebucket/IMG_0556.jpeg)

Now if you feel you don't need to do more that is enough.

But I wanted to be able to switch the D-Pad up on and off since it's easy to touch jump by mistake when going left and right. But still keep the option to be able to use D-Pad up in games.

So you can do two things, cut the D-Pad up trace or cut and solder a switch, I did the latter.

First you need an on/off switch, any that will fit inside the controller will do.
I went for one of these.
(http://www.underground-gamer.com/imagebucket/IMG_0564.jpeg)

Then I cut some on the PCB to be able to fit it where I wanted it. Be careful not to damage any traces while cutting in the PCB.
(http://www.underground-gamer.com/imagebucket/IMG_0568.jpeg)
And it fits good :)
(http://www.underground-gamer.com/imagebucket/IMG_0569.jpeg)

Then I made a cut in the plastic fitted the switch and glued it on place, then I cut the D-Pad up trace left of the button solder, then I soldered a wire left of the cut to the switch and a wire right(where the button solder is) of the cut to the switch and presto done.
(http://www.underground-gamer.com/imagebucket/IMG_0571.jpeg)

And this is how it looks, 3 buttons usable and switch to turn D-Pad up off/on.
(http://www.underground-gamer.com/imagebucket/IMG_0572.jpeg)

I will get a few other Genesis/Megadrive/master system gamepads of all types and shapes coming next week then I will take photos of when doing the same on them.

Edit: Orders checked, 1x Master system controller, 6x Genesis/megadrive controllers 1x original all others third party ones some cool designs. Also I just put down an order for 2x Arcade sticks I want to build for the Miggy for the games that must be played with joystick :)

Ill see what I can do with the worn out Amiga joysticks, the buttons are near dead but I hope to be able to fix them also :)
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: runequester on September 06, 2012, 09:25:51 PM
Very nice. Thanks for posting!
Nice kitty too
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: amiman99 on September 06, 2012, 10:03:05 PM
Very nice mod!
I actually rewired the PS1 controller and added an UP control as a separate button. So, same idea.
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: som99 on September 06, 2012, 10:40:38 PM
Quote from: runequester;706865
Very nice. Thanks for posting!
Nice kitty too

Thank you, her name is Zelda ;)

Quote from: amiman99;706872
Very nice mod!
I actually rewired the PS1 controller and added an UP control as a separate button. So, same idea.

Thank you, I felt the switch was needed atleast on the megadrive/genesis controller since it was far to easy to press up by accident, Nice with a PSX controller, Might be something ill do in the future also :D

Just ordered two arcade stick ill rebuild for Amiga also :)
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: Mrs Beanbag on September 06, 2012, 10:44:01 PM
Wouldn't it be better just to make a little in-line adapter to do this?  Then you wouldn't have to do the same mod for every new controller you bought.

I use a Sega Megadrive pad on my Amiga, one thing I mean to do one day is to make an adapter that allows me to program for all the buttons.  Some of the buttons are multiplexed.  The Amiga can output a control bit on one of the pins, but the Megadrive pads use a different one.  A little dongle that swaps two pins over should suffice.
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: som99 on September 06, 2012, 11:00:12 PM
Quote from: Mrs Beanbag;706883
Wouldn't it be better just to make a little in-line adapter to do this?  Then you wouldn't have to do the same mod for every new controller you bought.

I use a Sega Megadrive pad on my Amiga, one thing I mean to do one day is to make an adapter that allows me to program for all the buttons.  Some of the buttons are multiplexed.  The Amiga can output a control bit on one of the pins, but the Megadrive pads use a different one.  A little dongle that swaps two pins over should suffice.


I like to have no adapters needed, just plug and play, also it's easier to put the jump button switch inside the controller and easy to flip the switch when playing.
It takes around 10mins each gamepad so an hours work and ive done all gamepads, so no problem.

Nice idea of all buttons, I bet many Amiga users would like that for CD32 games.
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: runequester on September 07, 2012, 12:53:48 AM
For the benefit of using a controller on both a genesis and an amiga, some sort of adapter widget would be cool :)

Question: Would it be possible, in theory, to hack together something that'd let extra buttons (say on a 6 button genesis controller) emulate key presses on the amiga keyboard? Or is that completely impossible?
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: som99 on September 07, 2012, 04:28:24 AM
Well I could not sleep and was bored, so I knew I had a broken PC 15-pin gamepad that had it's ICP fried so I decided to remove the broken ICP and just resolder for amiga pinout.

It looks like crap, but just done to get a bit tired ;) Well also it works so better then throwing it in the dumpster.

The on/off button toggles D-Pad up on/off and up is mapped to a button.
All buttons works, shoulder buttons represent button 2 on 2 button Amiga games.

A "bit" solder and cutting traces later.... Done :)
(http://www.underground-gamer.com/imagebucket/IMG_0575.jpeg)

And here it is assembled, as said, it looks like crap but atleast works :)
(http://www.underground-gamer.com/imagebucket/IMG_0577.jpeg)

@runequester - Mapping keyboard keys to gamepad is doable by software, im sure I had something like that ages ago when I wanted to play pinball on joystick, search the aminet :)
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: Rebel-CD32 on September 07, 2012, 06:12:45 AM
I always wanted to perform mods like these on some pads I have. I bought a soldering iron to start doing it and the bloody thing melted and I gave up on learning to solder. It was probably a faulty soldering iron though so I'm going to give it another shot when I can afford to pick up a new one. I always wanted to map one of the buttons to double as Fire+Up at the same time, as well as the regular Up button, because some games like Golden Axe use Fire+Up for jump and I don't think that's been patched with WHDLoad.

Also remember you can modify a Mega Drive/Genesis pad to have full 8-button functionality, but the only game that makes use of all 8 buttons is ADoom. Flashback and Hired Guns both use a modified 3 or 6 button pad, making use of the Start and A buttons, but not the X, Y, Z and Mode buttons as ADoom does.
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: som99 on September 07, 2012, 12:02:48 PM
Quote from: Rebel-CD32;706929
I always wanted to perform mods like these on some pads I have. I bought a soldering iron to start doing it and the bloody thing melted and I gave up on learning to solder. It was probably a faulty soldering iron though so I'm going to give it another shot when I can afford to pick up a new one. I always wanted to map one of the buttons to double as Fire+Up at the same time, as well as the regular Up button, because some games like Golden Axe use Fire+Up for jump and I don't think that's been patched with WHDLoad.

Also remember you can modify a Mega Drive/Genesis pad to have full 8-button functionality, but the only game that makes use of all 8 buttons is ADoom. Flashback and Hired Guns both use a modified 3 or 6 button pad, making use of the Start and A buttons, but not the X, Y, Z and Mode buttons as ADoom does.

Doing this kind of soldering requires no fancy iron, I think you should start soldering again, it's a good thing to know how to do and you will learn fast :) Use some old x86-PC motherboard to learn to solder small points later on, do mix of things on it, desolder, put wires from point to point etc.

Flux will be one of your best friends, second for me must be the thing with arms that hold cables (dunno what it's called in English), sponge and tinsucktion thingy.
When starting soldering iron/flux and any old wet sponge will do when learning :)

Hmm, not a bad idea, i will try button+up one a controller, since it's a six button controller why not try button+left/right/down also and all buttons are used, just for fun :)
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: Mrs Beanbag on September 07, 2012, 12:43:47 PM
There is an "impossible" combination of joystick outputs that I'm surprised nobody ever made use of, namely up+down+left+right.  In fact any combination that involves two opposite directions together wouldn't usually be possible (7 in total).  Someone clever could have used this to give us a start/select button and maybe some others, without the need for extra pins or multiplexing.

Also one thing I have in mind now is an adapter for a playstation pad that connects to both the controller ports, so the analogue stick can be used as the mouse.
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: som99 on September 07, 2012, 12:57:35 PM
Quote from: Mrs Beanbag;706944
There is an "impossible" combination of joystick outputs that I'm surprised nobody ever made use of, namely up+down+left+right.  In fact any combination that involves two opposite directions together wouldn't usually be possible (7 in total).  Someone clever could have used this to give us a start/select button and maybe some others, without the need for extra pins or multiplexing.

Also one thing I have in mind now is an adapter for a playstation pad that connects to both the controller ports, so the analogue stick can be used as the mouse.


The start button with mapping from a keyboard key using impossible key combinations is a good idea, might be something to play with later on :)

The use of analog stick for mouse is a brilliant idea, that I want to do now, ill see if I can find a PSX controller I want to destroy. Seems simple enough using the analog stick to pin 1-4 then shoulder buttons for pin 6,9 then the rest as a normal gamepad and you have mouse and gamepad all in one :)

Thanks for the great ideas!
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: Mrs Beanbag on September 07, 2012, 01:09:51 PM
You can't just wire the analogue stick into the mouse port, a mouse actually sends digital serial data.  If you have the joystick plugged into Port 0 you can actually move the mouse pointer by wiggling the joystick around in a circular motion.  I found this useful sometimes!

I've no idea how a PSX analogue stick works, but the serial data stream that comes out is published somewhere (at least I found this documented for the PS1 controller).  Such an adapter would require some kind of PIC.
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: som99 on September 07, 2012, 03:07:11 PM
Quote from: Mrs Beanbag;706947
You can't just wire the analogue stick into the mouse port, a mouse actually sends digital serial data.  If you have the joystick plugged into Port 0 you can actually move the mouse pointer by wiggling the joystick around in a circular motion.  I found this useful sometimes!

I've no idea how a PSX analogue stick works, but the serial data stream that comes out is published somewhere (at least I found this documented for the PS1 controller).  Such an adapter would require some kind of PIC.


I noticed my wrong after posting, I must take some time this weekend and check over the PSX controller and as you said PIC would be the most simple way to go, I do not have any spare PSX controller I want to part with yet, but I will take a look inside or use a Dreamcast controller, got loads of them.
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: amiman99 on September 07, 2012, 04:59:30 PM
Quote from: som99;706969
I noticed my wrong after posting, I must take some time this weekend and check over the PSX controller and as you said PIC would be the most simple way to go, I do not have any spare PSX controller I want to part with yet, but I will take a look inside or use a Dreamcast controller, got loads of them.

If you want to use PSX joypad as a mouse just get the PSX-Amiga converter from kipper2k http://kipper2k.com/amigaforsale/
Works great, just press "Select", mouse mode, press "Select" again, Joystick mode.
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: som99 on September 07, 2012, 05:56:07 PM
Quote from: amiman99;706993
If you want to use PSX joypad as a mouse just get the PSX-Amiga converter from kipper2k http://kipper2k.com/amigaforsale/
Works great, just press "Select", mouse mode, press "Select" again, Joystick mode.


Oh thank you, I would love to have one, ill contact him when I have time, would be nice to disect one and see if I could make one for the Dreamcast controller :)

Only three hours of work left so soon home to play again with my hot iron, gotta order more 9-pin connectors from ELFA :)
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: Mrs Beanbag on September 07, 2012, 06:24:32 PM
Quote from: amiman99;706993
If you want to use PSX joypad as a mouse just get the PSX-Amiga converter from kipper2k http://kipper2k.com/amigaforsale/
Works great, just press "Select", mouse mode, press "Select" again, Joystick mode.

Neat enough!  But you can't use both at once... and you would have to swap it from Port 1 to Port 0 as well.
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: amiman99 on September 07, 2012, 08:45:38 PM
You could get 2 of them :)

The analog stick in joystick mode is used as a directional pad, but it would be nice if we could use second analog stick as a mouse. I bet is possible.
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: som99 on September 08, 2012, 02:45:15 AM
Well time ran away today, all I managed to do today was to mod the mega drive controller I got today. Damn that D-Pad is utter crap.

Here is the filthy little thing.
(http://www.underground-gamer.com/imagebucket/IMG_0580.jpeg)

It's inners are super easy to work with at least :)
(http://www.underground-gamer.com/imagebucket/IMG_0581.jpeg)

Remove the white button 2 wire, ill keep if if I feel like restoring the controller.
Then just move the brown wire from UP to button 2.
Then just solder a switch between up and button 2 and your done.
(http://www.underground-gamer.com/imagebucket/IMG_0582.jpeg)
(http://www.underground-gamer.com/imagebucket/IMG_0583.jpeg)

Then I made a hole for the switch in the upper half of the case.
(http://www.underground-gamer.com/imagebucket/IMG_0585.jpeg)

Here is how it looks completed, quite ok :)
(http://www.underground-gamer.com/imagebucket/IMG_0586.jpeg)
(http://www.underground-gamer.com/imagebucket/IMG_0588.jpeg)
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: Rebel-CD32 on September 08, 2012, 04:42:31 AM
You can get Playstation adapters which emulate the CD32 pad and the mouse at the same time, let you program combos, use one analogue stick as a digital joystick and the other as a mouse, there's not much they can't do (except magically emulate a keyboard). AmigaManiac sells the adapters with Paul Willingham's code here - http://www.amigamaniac.com/psx2db9.html

One adapter that would be welcome would be a Sega Phaser adapter to us in the Amiga light gun games. They have all been patched with WHDLoad to use the same gun interface, the adapter was discussed here  http://eab.abime.net/showthread.php?t=21195

Love the look of the Master System pad mod!
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: Mrs Beanbag on September 08, 2012, 03:30:50 PM
Quote from: Rebel-CD32;707115
You can get Playstation adapters which emulate the CD32 pad and the mouse at the same time, let you program combos, use one analogue stick as a digital joystick and the other as a mouse, there's not much they can't do (except magically emulate a keyboard). AmigaManiac sells the adapters with Paul Willingham's code here - http://www.amigamaniac.com/psx2db9.html

So this has two 9-pin outputs, right?  There isn't a picture and the page doesn't seem to indicate that.

I have the Amiga light gun, sadly it isn't any use on my LCD screen :( I have wondered if it would be possible to do something clever with a web cam.  I programmed a little light gun target practice app back in the day, it's very simple, but it's based on timing so any adapter would need access to the video signal too, because it needs to trigger when the beam position passes in front of the gun.
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: Lord Aga on September 08, 2012, 06:33:44 PM
Quote from: Rebel-CD32;706929
Hired Guns uses a modified 3 or 6 button pad


How does HG use the extra buttons ? What are they for ?
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: Rebel-CD32 on September 08, 2012, 09:49:54 PM
Quote from: Mrs Beanbag;707191
So this has two 9-pin outputs, right?  There isn't a picture and the page doesn't seem to indicate that.


These adapters only have one 9-pin plug, so they're not designed to control the mouse and joystick at the same time unfortunately. I don't know if it's a limitation of the PIC chip they use but I did always think it'd be nice if a single chip could control both inputs, I had my own ideas about a kind of hub for the CD32 which lets you plug in Playstation pads, USB mouse, keyboard, and serial devices and would plug into the two 9pin ports and the Aux port. Just dreams though, I can't build hardware.

Quote from: Lord Aga;707222
How does HG use the extra buttons ? What are they for ?


I haven't tried it since I don't have a modified pad myself, but apparently when using the joypad option you don't need to use a mouse, and the buttons perform different actions. You can download the instruction manual here - http://psygnosisamiga.free.fr/games/hiredguns/instructions2.pdf
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: Lord Aga on September 10, 2012, 08:37:46 PM
Yup, it makes the inventory handling easier :)
Thanks for the manual !
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: som99 on September 18, 2012, 12:48:00 AM
Got a shipment of new controllers to play with :D
(http://www.underground-gamer.com/imagebucket/IMG_0606.jpeg)

Now Ill have something to work with :)
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: amiman99 on September 18, 2012, 01:23:16 AM
and...how many joysticks do you need...?:crazy:
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: som99 on September 18, 2012, 02:06:00 AM
Quote from: amiman99;708549
and...how many joysticks do you need...?:crazy:


Hehe I mod them all then keep a few for myself the rest ill give to people in need of new gamepads for their Amigas :)
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: amiman99 on September 18, 2012, 02:58:46 AM
Recently I acquired a Vectrex system, love the vector graphics on it, but I only have one original controller.The original controllers are very expansive, so I need a cheaper route.
I need to get some SNES pads, so I can do a Vectrex mod on them. Requires a new PCB for it to work properly. I have the schematics and the only obstacle is the home made PCB.
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: som99 on September 18, 2012, 04:45:15 AM
Quote from: amiman99;708553
Recently I acquired a Vectrex system, love the vector graphics on it, but I only have one original controller.The original controllers are very expansive, so I need a cheaper route.
I need to get some SNES pads, so I can do a Vectrex mod on them. Requires a new PCB for it to work properly. I have the schematics and the only obstacle is the home made PCB.

I don't think you need to make a new PCB, solder all lines by hand (as i did on the SNES lookalike PC controller but simpler if you are going to use an SNES controller) First just solder the buttons directly to corresponding pins then simply explained just solder the 5v to up/down/left right then just use resistors to get the 3,4v for up and right.
The left an down is a tiny bit more difficult on the Vectrex, you have to use an resistor and an voltage regulator to get the negative volatage, it's easy to get your hands on some IC 7905 regulators and it's output is steady enough for the Vectrex and paired with a resistor I see no reason why it should not work.

I see no reason why you could not fit this into a SNES gamepad so no need to make your own PCB.

I would offer to build you one, but I don't like to build anything for a system I don't own to test on before shipping off :/

EDIT: Be sure to use a multimeter BEFORE testing your creation on your vectrex to avoid destroying it :)

PS: im off to bed :)
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: Digiman on September 18, 2012, 06:46:24 AM
Using up for accelerate/jump on Amiga games is bad game design. Amiga has two fire button capability.
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: Mrs Beanbag on September 18, 2012, 09:15:12 AM
Yeah but sadly almost all joysticks you could buy had only one button... or they were all wired to the same pin, in any case.  Obviously it has the capability because the mouse has two buttons!

I wanted to mod a joystick to have two buttons once, only to realise that it didn't even have the corresponding pin in the plug.  The whole wire was missing from the lead.
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: amiman99 on September 19, 2012, 03:54:58 AM
When you check the schematics, you will notice that there is also a pin 5 on Amiga ports for a third button or middle mouse button.
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: lassie on September 19, 2012, 09:34:44 AM
Quote from: runequester;706865
Very nice. Thanks for posting!
Nice kitty too


Yes nice little tiger he have there :)
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: lauri.lotvonen on September 19, 2012, 10:04:32 AM
Quote from: amiman99;706993
If you want to use PSX joypad as a mouse just get the PSX-Amiga converter from kipper2k http://kipper2k.com/amigaforsale/
Works great, just press "Select", mouse mode, press "Select" again, Joystick mode.

Thanks for this, been looking for ages to get another PSX-DB9 adapter for my A1200 =) .
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: Mrs Beanbag on September 19, 2012, 10:09:54 AM
Quote from: amiman99;708655
When you check the schematics, you will notice that there is also a pin 5 on Amiga ports for a third button or middle mouse button.

Indeed.  The interesting thing about buttons 2 & 3 is that these pins are writable as well as readable, so they can be used for multiplexing to give you even more buttons.  Presumably this is how the CD32 pad works.  The Sega Megadrive pads also work this way, but unfortunately they use pin 7 as the select line, which on the Amiga is +5V.  On the Sega pads, +5V is on pin 5.  So if you swapped pins 5 & 7 in theory you could use all of the buttons.  But it doesn't work the same way as the CD32 pad, which apparently has some sort of state machine inside it.

I have wanted to make myself an adapter for some time to get the use of those extra buttons.  Having only one button to play with is really frustrating from a game design point of view.  (It's one reason Mr Beanbag's only move is jump!)
Title: Re: Simple Genesis/Megadrive gamepad button jump mod.
Post by: som99 on September 19, 2012, 12:31:21 PM
Quote from: lassie;708674
Yes nice little tiger he have there :)


Thank you ;)