Amiga.org
Amiga computer related discussion => Amiga Hardware Issues and discussion => Topic started by: kvasir on December 17, 2008, 06:44:32 AM
-
Hello all, was thinking about my Sega controllers having 6 buttons, and only being able to use 2 of them. There was a hack in the adoom readme on how to use all 6 buttons, but that only worked in adoom. I found the pinouts of both the Amiga (http://pinouts.ru/Inputs/AmigaMouseJoy_pinout.shtml) and Sega (http://pinouts.ru/Game/genesiscontroller_pinout.shtml) controller ports, and it looks like Amiga does some wierd light pen thing on the same pin that sega uses for voltage, and Sega uses some strange "toggle switch" processor to add an extra 3 buttons. I was wondering if it would be possible to of course rewire the voltage/grounds to proper lines, then set up some sort of transistor to remap the 4 "missing" buttons to CD-32 standards when the "Select" setting is on?
-
Hired Guns used the 3rd button on a rewired Sega controller as well. It's really easy to add support for the 3rd button in software. Much easier than CD32 pad support. Any kind of an adapter I would think would be pretty involved. Their is supposedly a PS2 pad "adapter" that emulates a CD32 pad though.
-
Only A, B, and C are available at any time. To read the other buttons, you have to toggle a select line multiple times. Each time gives you another part of the packet. A six button controller uses the initial controller word plus three extra words to send the controller ID and extra button info. This is all controlled by the uprocessor in the controller - you don't have direct access to the button lines... not unless you wish to cut the lines from the control board and add your own processor (like a PIC).
The method shown in the ADoomPPC readme (done by yours truly) is the most straightforward way to read a SEGA six button controller. It only requires one simple hardware mod, and then a routine to read the controller packet. Anything more and it would just be easier to replace the SEGA control board with a PIC chip. Then you could do whatever you wanted with the buttons and how they were sent to the Amiga.