Here's some info about a cool hack I did last night which may interest some of you. Yesterday, at my favourite car boot sale, as well as picking up an NTSC Sears Tele-Games console and a Sinclair QL with 512K RAM expansion and Cumana disk drives, I found a Sega Mega Drive on the cheap with a 6 button controller. Finding a rather good article on the protocol of the 6 button controller, I decided to hack it for use with the CBM computers. The article is at: http://www.tky.3web.ne.jp/~applause/md6bpad-e.html After a small amount of thought and a good deal of luck, I came up with the following pin configuration: Pin Wire colour C64 control port MD controller Rewired controller 1 Brown Up Up Up 2 Red Down Down Down 3 Orange Left Left Left 4 Yellow Right Right Right 5 Green Pot Y +5V Fire 2 6 Blue Fire Fire 1 Select 7 Grey +5V Select +5V 8 Bare GND GND GND 9 White Pot X Fire 2 Fire 1 The rightmost column show the new pinout of the controller, the column to the left of that shows the original Mega Drive pinout (for reference) and the column to the left of that shows the C64 (Atari) pinout we all know and love. Basically, by keeping the direction pad the same but using the normal C64 Fire line to control the Select input of the control pad, the strobe pulses of the protocol can be provided by setting bit 4 of the relevant CIA port as an output and reading bits 3 - 0 as inputs. The remaining lines are the fire buttons, which have to be read using the analogue potentiometer registers of the SID chip. Unfortunately these are only updated every 512 clock cycles, and since the protocol requires two reads per controller, four reads are required to read both control ports. I tried this new controller design last night with a basic program using a short machine code routine to do the high speed select strobing required by the protocol, and I'm pleased to say it worked - the status of the Z, Y, X and Mode buttons could definitely be read by the 64. Unfortunately the presence of the control pad tends to mess up keyboard reading, since the outputs of the multiplexor chip are not open-collector, but this has always been the case with Mega Drive controllers. Does anyone care to write a better driver? This pad would have been really useful in games, and as a hardware hack it's pretty cool, even if I do say so myself. Not sure whether I prefer it to my Super Nintendo - C64 controller hack though ;) Richard - This message was sent through the cbm-hackers mailing list. To unsubscribe: echo unsubscribe | mail firstname.lastname@example.org.
Archive generated by hypermail 2.1.1.