Forums

Sega Master System / Mark III / Game Gear
SG-1000 / SC-3000 / SF-7000 / OMV
Home - Forums - Games - Scans - Maps - Cheats - Credits
Music - Videos - Development - Hacks - Translations - Homebrew

View topic - SMS Sega Sports Pad Interfacing

Reply to topic
Author Message
  • Joined: 19 Jul 2006
  • Posts: 1
Reply with quote
SMS Sega Sports Pad Interfacing
Post Posted: Wed Jul 19, 2006 4:40 am
Hi. I'm trying to create a USB adapter for the Sports Pad. I've already successfully gotten it to work for the SMS controllers. Now here's the thing, when the Sports Pad is switched to "controller" mode, then it works fine. Basically it works just like a controller. The Sports pad is connected to both +5V and ground, and there are 6 data lines to be read (up,down,left,right, button1, button2). Rolling the ball up is equivalent to D-Pad Up, and so on and so forth.

Now when I switch it into "sports pad" mode, I cannot seem to get it to do much. I read the official Sega Software info. I know that you have to make the select line high. Then bring it low and wait 80us. Then you can read x7,x6,x5,x4 from the d-pad lines. Then you bring the select high and wait 40us. Then you can read x3,x2,x1,x0 from the d-pad lines. Then you switch the select line two times waiting 40us for each and read the Y values.

I have done this in a loop which takes place every 2ms or so. Now here is the problem. I only get 4 analog values. If I roll the ball up or down quickly (doesn't do this slowly), I get a value of either 00000001 or 11111111 for the Y direction. If I roll the ball left or right I get a value of either 00000001 or 11111111 (again, one for left and one for right). What the hell am I doing wrong? to only be getting the max or min values for the directions? I hope I didn't screw anything up when I took the sports pad apart and cleaned it inside out, but I highly highly highly doubt it.

One more thing, the button lines are unresponsive when the Sports Pad is switched to "sports pad" mode. How the hell am I supposed to read button presses? If anyone could answer all or some of my questions, I would greatly greatly appreciate it. Thanks!!!
  View user's profile Send private message
  • Site Admin
  • Joined: 19 Oct 1999
  • Posts: 13502
  • Location: London
Reply with quote
Post Posted: Wed Jul 19, 2006 6:42 am
I find that reading the Sega docs for this kind of thing, as well as reading emulator source code, is rather unhelpful. (I seem to remember the Sega docs for the Sports Pad are quite confusing, how does it know which stage of the cycle it's at if all the signals are identical?) The thing that helps me figure out exacty how the game reads a particular controller (my research was on the Paddle Controller) is to disassemble a game that uses it.

When you figure it out, feel free to document it for us :)
  View user's profile Send private message Visit poster's website
  • Joined: 14 Aug 2000
  • Posts: 585
  • Location: Adelaide, Australia
Reply with quote
SMS Sega Sports Pad Interfacing
Post Posted: Wed Jul 19, 2006 7:30 am
Perhaps try inverting the select line, i.e. assert it high when the documentation says to assert it low.

I vaguely remember looking at either some game code or the docs and thinking the code made sense if it was being executing on a Japanese console which inverts the TH line.
  View user's profile Send private message
Reply to topic



Back to the top of this page

Back to SMS Power!