Jump to content
IGNORED

Homebrew Controllers: Modernish 5200 and Vectrex Digital


BigO

Recommended Posts

My gut reaction is about 20 bucks. But I'm poor. So that's probably no good.

 

 

More like $50 bucks a pop and that is a totally reasonable price IMO. You can barely rebuild a stock controller (sans labour) for $20 bucks let alone get something nice like this. I would pay $50 bucks a pop on a pair of them for sure.

Link to comment
Share on other sites

The Vectrex digital controller is done...maybe I can focus on my full custom controller again.

 

The spray on plastic didn't want to stay to the smoother area of the controller and I didn't like the way it looked all black, so I stripped it off of the outer part.

post-12370-1214702856_thumb.jpg

post-12370-1214702850_thumb.jpg

 

I gave access to the trim pots so I could adjust it without tearing it apart. I think that was a lot of extra work for nothing though as setting them approximately centered seems to have worked fine.

post-12370-1214702847_thumb.jpg

 

It only has a 3 foot cable on it, but the Vectrex screen is small and I never sit a long way from it anyway.

 

Seems to work great on every game I've tried it with. The electronics consist of the 8 push switches, 4 3.3K ohm resistors and 2 10k pots. Not much to it. I'll try to post a schematic if anyone happens to want to see it.

 

I'll probably almost never use it, but it works great and it's done. :)

Edited by BigO
Link to comment
Share on other sites

If the stick covers the whole range, I would pay $50 without hesitation.

I've had to do some studyin' on that because it appears to reach the extreme edges of the playfield on some games, but not on all.

 

In the extreme case, I found that thumbsticks with 10Kohm pots (and higher valued auxiliary capacitors) didn't seem to work at all. When testing in more detail with a couple of diagnostic programs, I found that they did appear to work with one of the programs but not the other. From what I could see the program where it appeared to work was holding the cap. discharge circuit low for a longer time. I believe the adaptation with bigger caps would require higher current flow to discharge the caps in the same amount of time as the native caps would.

 

It appears to me that the discharge circuit isn't able to sink enough current to discharge the caps quickly enough. That would represent a problem for a program that doesn't hold the discharge condition long enough, probably the case with many programs that want to sample at a high frequency.

 

Translating that to the 100Kohm pot thumbstick that used to build the one working model, it may work with a lot of games, but not every game. The reports I have received say that the controller works well enough for a lot of games, but I can't guarantee they'll work with every game.

 

-------------------------------------------------------------------------------

 

Beyond that, there's the centering issue. Based on trials in development of this controller, I've come to the conclusion that Atari intentionally didn't automatically, mechanically center the joystick on the 5200 controller. "Center" isn't the same for every console (maybe not every game?), therefore physical centering of the controller doesn't equal centering on the screen (or null motion). With the non-centering controllers, the eye-hand feedback loop compensates for that automatically.

 

There are 2 possibilities for dealing with the centering:

1) Change the internal adjustments on the 5200 to make the console compatible with the physical center value of the particular thumbstick. But, with multiple controllers attached to one 5200, centering may still be an issue.

 

2) I may be able to put another potentiometer in series with the thumbstick pots, set the additional pot to mid-range and find capacitor values that are compatible with the new higher minimum resistance that would result. I don't know if this is a viable solution as I haven't explicitly tested it. I'll try that when I get my next breadboarded controller going.

 

-------------------------------------------------------------------------------

 

I do have a more complex design that, even using the most commonly available 10K thumbsticks, would just about guarantee compatibility with any game that the OEM controller works with, but it's obviously going to be more expensive and I have a lot of design hurdles to overcome with that one. On the upside, I'd be able to do the centering through electronic adjustments.

 

In addition to centering adjustments, that design would also allow for the possibility of variable sensitivity which would let the user set how much motion in the stick represented the full range of resistance presented to the console. That raises other issues, but is probably a feature worth pursuing.

 

The mechanical design of the basic version and the more "advanced" are much the same, so if I can satify my concerns about centering, it's conceivable that I'd make some basic controllers along the way if they could be profitable. I don't know the cost numbers yet.

 

Additional issues I have to deal with are the supply of 15 pin cables that are compatible with the 5200 ports. The joystick extension cable I used on mine is nearly impossible to find. I'm sure there are some out there in warehouses and surplus yards somewhere, but I can't find them. And the 100K ohm thumbsticks are only available as used parts in certain 3rd party controllers. I know where I can pick up half a dozen of them today, but am not quite ready to commit the resources.

 

I appreciate the continued interest and kind words about what I've done so far.

 

I'll post anything noteworthy that I come up with. Right now I have to find reliable sources for a few critical parts, not the least of which is the buttons. I can't find any off-the-shelf molded parts to do that job. I found switches that have the right feel to them, but they don't have "caps". I'm working with someone who can machine them on a turret lathe, but haven't yet acquired the material to let him work up a cost estimate for the machine work. It's a relationship that, if need be, I can run the machine and just pay him for programming and for the time I tie up the machine.

 

If anyone can point me to potential suppliers for the things I need, I'd be happy to check out such leads.

 

As with probably most of you, work is taking up a lot of time for me right now and we're in the midst of some major issues that I have to contribute heavily to resolving. But, I'm working on this controller project as time permits. Hopefully I won't just end up with a $1k-$2k controller for myself to use when I retire ;-)

Edited by BigO
Link to comment
Share on other sites

I'm kinda surprised at how well the digital Vectrex controller works. It's not nearly as uncomfortable to use as I originally expected and works with most games.

 

Play-wise, the way it fits in my hand, I can rapid fire pretty well without losing grip on it. Performance-wise, it's great. I've run across one game where the "digital" response is too quick: a shooter with a targeting cursor that was easier to control with the OEM analog controller. I was able to play Vaboom with it, though it's a tad quick so it's not ideal.

 

Heck, I guess I'm going to have to do the audio mod on my Vec so I can stand to play it more.

 

If you've considered building/acquiring a digital controller for your Vectrex, I'd say go for it. The NES controller, other than the square corners, is a nice form factor. I've never really used one on an NES. :)

Link to comment
Share on other sites

If you've considered building/acquiring a digital controller for your Vectrex, I'd say go for it. The NES controller, other than the square corners, is a nice form factor. I've never really used one on an NES. :)

 

I may have to hack one up. I love the Vectrex, but the stock controller is shit.

Link to comment
Share on other sites

Something to note if you like the analog controller: the thumbsticks in many modern controllers use 10k ohm pots and if I recall correctly the OEM Vectrex joystick also uses 10k pots. I was originally going to build mine as an analog controller with an itty bitty thumbstick from a mini PS/2 controller, but wanted to see what all the "digital" fuss was about.

 

An SNES controller already has 4 buttons so might be a better way to go. I picked up a generic 4 button digital PC controller some time ago that would have been ideal if I hadn't stolen the button "caps" out of it to build my 5200 controller prototype. :)

 

The way I wired mine, the L & R share a common connection and the U & D share a common connection. I imagine you'd have to cut some circuit traces on the D-Pad to do that. The 4 fire buttons share a common ground connection.

 

If I were to do it again with an NES controller, I'd try to keep the D-pad intact and would drill holes through the PC board to provide access to switches of the type I used.

Edited by BigO
Link to comment
Share on other sites

  • 4 weeks later...

Here's the schematic for the Vectrex digital controller. Not much to it, really.

 

post-12370-1217292032_thumb.jpg

 

(I probably should consolidate the Vectrex stuff into its own entry. Blog entry would probably be the least intrusive.)

Edited by BigO
Link to comment
Share on other sites

Found this little doodad on BGMicro. I imagine that it would be really helpful for 5200 controller projects due to its diminutive size. You could even put one of these on a standard gamepad!

 

http://www.bgmicro.com/index.asp?PageActio...mp;ProdID=10024

From what I can see that one won't work for a 5200 controller. It has a common connection to each of the 12 buttons for a total of 13 connection points. However, I believe this is the one that doubledown used in his custom Colecovision controller. It looks like it to me, anyway.

 

The 5200 controller wants a 3x4 matrix with 7 connections.

Link to comment
Share on other sites

That's weird... the tech sheet for this keypad shows both configurations!

 

http://docs.bgmicro.com/pdf/swt1109.pdf

 

Evidently BGMicro is just selling the single pole common bus model.

That is interesting. I didn't look at the tech sheet. I really like the look of that keypad so I might try to find the 3x4 matrix encoded style.

 

For my (ongoing...and going and going...) project, I could technically use either type, but 7 I/O bits is better for me than 12 when it comes to the utilization of microcontroller resources. The tradeoff is that it increases the complexity of coding just slightly and uses extra clock cycles to pulse the three columns in turn and read the 4 rows (3 outputs + 3 reads instead of just 1 read).

 

A downside to that keypad is that it's a little harder to accomodate with some manufacturing techniques. The squared off corners look nice, but to make a square hole using tools appropriate for low volume production is a little bit challenging. A round bit in a milling machine or router can happily make 4 sided holes with radiused corners. If I were injection molding the part or even punching it, that would not be an issue. Still, I like the keypad. It somehow looks "retro" to me.

Edited by BigO
Link to comment
Share on other sites

If you want to build a digital controller for the 5200, maybe this can help...

 

 

Here are the text instructions:

 

PART ONE: WHAT IS IT?

 

When the Atari 5200 was released in late 1982, it was an attempt by Atari to match the ColecoVision.

 

As a result, it had a good number of arcade-to-home translations, including Atari arcade games (before mid-1984, "Atari" was a single huge company).

 

Unfortunately, Atari was to make a technical decision that really ended up hurting 5200 sales: the console was released with strange controllers which did not self-center, and were "analog," not "digital."

 

"Digital" simply means on or off. When you move a regular joystick controller in a particular direction, you activate a switch that allows current to go through. This tells the game that you are doing something. When you move diagonally, you are simply activating 2 such switches at the same time. The fire buttons work the same way.

 

"Analog," however, means not only on or off, but how much. A light switch with a dimmer is a perfect example of this. With the 5200 joystick, when you moved the stick in a particular direction, the game not only knew which direction the stick was moved, but by how much. This is very clear in Missile Command- move the stick a bit to the left, and the cursor moves a bit to the left, and then stays there. Move it more, and the cursor moves more. How far the cursor moves depends on how far you move the stick over.

 

Unfortunately, there wasn't a single arcade game from that era, to my knowledge, that had such a control scheme. Most had regular joystick controls; a few had trak-balls (Centipede, Missile Command) or paddles (such as Super Breakout). As a result, it was next to impossible to react very quickly, with short, precise moves. And while it did work moderately well for Missile Command, it just wasn't as good as paddle controls for Super Breakout.

 

It was just a rotten idea.

 

 

 

 

PART TWO: HOW DOES IT WORK?

 

Using a 15-pin cable, the 5200 controller had a joystick with 4 fire buttons (2 on each side: upper and lower) and 15 buttons. These were the standard 1-9, 0, and * and #- just like on a touch-tone phone- below the joystick. The extra 3 were above the joystick and were START, PAUSE, and RESET. All but the latter 3 had different functions for different games.

 

The buttons actually were pretty standard as far as circuitry went. When you pushed the button, a small piece of conductive material would touch 2 halves of a sort of disc-shape. Each half simply connected to two particular wires, so, when you pressed a button, it was like touching the ends of 2 different wires to each other.

 

The joystick, however, was anything but standard. What the set-up actually did was to turn two different "potentiometers"- variable resistors- which are simply like two tiny paddle controllers. It was literally like having two paddle controllers: one for up and down, and one for left and right.

 

"Resistors" are things which limit the flow of electricity, just like a faucet limits the flow of water. The higher the resistance, the less flow of electricity you have. The lower the resistance, the more electricity flows. Resistance is measured in "Ohms." A 100 Ohm resistor will limit the flow of electricity twice as much as a 50 Ohm resistor.

 

A "potentiometer" is simply a resistor which can be adjusted- just like a faucet. Turn it one way, and the resistance increases; turn it the other way, and it decreases.

 

The 5200 joystick can turn both potentiometers. One controls the vertical; the other, the horizontal. The 5200 games act based on the two values.

 

In just about every 5200 game, it works like this:

 

VERTICAL= Increasing resistance moves DOWN. Decreasing resistance moves UP.

 

HORIZONTAL= Increasing resistance moves RIGHT. Decreasing resistance moves down.

 

Therefore, when you move the joystick left decreases the resistance in that potentiometer. Pull it down, and you are increasing the resistance in the other one.

 

 

The easiest way to see this is to plug in most games, and, after starting it, unplug the controller. You are completely breaking the circuit for both vertical and horizontal; this is "near infinite" resistance. Which way do you think the (whatever) on the screen will move?

 

 

If you answered "down and right," then you've got it.

 

 

 

 

PART 3: BASIC WIRING.

 

Hmmmm...now we get down to it!

 

The 5200 controller wiring is complicated only if you try to take it all in at once, looking in an actual 5200 controller. In reality, the scheme is pretty basic: with the exception of the joystick controls, everything else is simply a matter of 2 different wires touching to achieve something. That's it.

 

 

So, without further ado...here it is!

 

 

VERTICAL= RED and BLACK (with potentiometer).

HORIZONTAL= BROWN and BLACK (with potentiometer).

 

UPPER FIRE BUTTON= GREEN/WHITE and ORANGE.

LOWER FIRE BUTTON= YELLOW and ORANGE.

 

START= RED/WHITE and ORANGE/WHITE.

PAUSE= PURPLE and ORANGE/WHITE.

RESET= BLUE and ORANGE/WHITE.

 

 

Keypad Buttons:

 

1= ORANGE

2= WHITE (1, 2, and 3 touch RED/WHITE)

3= GREY

 

4= ORANGE

5= WHITE (4, 5, and 6 touch PURPLE)

6= GREY

 

7= ORANGE

8= WHITE (7, 8, and 9 touch BLUE)

9= GREY

 

*= ORANGE

0= WHITE (*, 0, and # touch GREEN)

#= GREY

 

 

In other words, touch ORANGE and GREEN and you "press" *. Touch GREY and GREEN and you "press" #. Touch WHITE and PURPLE and you "press"...if you said 5, then you have it.

 

 

Now, these colors assume you are actually using the cable from a 5200 controller. What if you don't have such? No problem, because here's where those wires lead to in a 5200 cable:

 

The 5200 controller plug has 15 holes: there are 2 rows; 8 in the top row, and 7 in the bottom row.

 

OOOOOOOO

OOOOOOO

 

I will number them. This assumes you are looking at the holes in the plug, with the 8-hole row on top:

 

01 02 03 04 05 06 07 08

09 10 11 12 13 14 15

 

01= GREEN

02= RED/WHITE

03= PURPLE

04= BLUE

05= ORANGE/WHITE

06= NOTHING

07= WHITE

08= GREY

09= ORANGE

10= GREEN/WHITE

11= YELLOW

12= NOTHING

13= RED

14= BROWN

15= BLACK

 

I also found a BLACK/WHITE wire, but it does not appear to do anything. It does not lead to any of the holes.

 

So- what if you have a 15-pin controller cable from something else? All you have to do is use a multi-tester to figure out which wire leads to which hole (if the multi-tester prong is too big to fit in the holes, just twist a bit of stiff wire to the prong).

 

If, for example, in your cable the GOLD wire leads to Hole 7, then treat it as the WHITE wire listed above. If the SILVER wire leads to Hole 12, then it is of no use; seal it off.

 

 

 

 

PART 4: THE JOYSTICK ITSELF.

 

 

This part is in conjunction with the diagrams...

 

As mentioned earlier, the 5200 joystick control is analog, not digital. In this case, the joystick actually turns two little variable resistors ("potentiometers"); one controls the vertical, the other, the horizontal. It is exactly like two tiny paddle controllers (a paddle controller IS a potentiometer).

 

As you already know, when you play Pong, Breakout, Super Breakout, Arkanoid, Canyon Bomber, or any game with a paddle controller, there is a point when the paddle (or whatever) is centered. This is because the resistance is at the point when the video game puts the object in the middle. This is important: when you release a normal joystick, it is "centered" because the game is not receiving any input from it. In the case of a 5200 joystick, the stick is "centered" only because the values of the two potentiometers are such that the game knows not to do anything (e.g. "don't move the Humanoid in Berzerk").

 

Vertical: Low Resistance=UP; High Resistance=DOWN.

 

Horizontal: Low Resistance=LEFT; High Resistance=Right.

 

When you unplug the controller, you are completely breaking the circuit. Electricity cannot flow. This is the same thing as VERY VERY VERY high resistance; that's why the game acts as if you have jammed the joystick down and to the right.

 

If there wasn't ANY resistance to these 2 currents, it would be as if you jammed the joystick up and left.

 

Therefore, the "neutral" position is between the two extremes.

 

Unfortunately, I cannot give you these values. My testing equipment is not precise enough to do it; this is why I hooked up the 2 potentiometers to my joystick set-up; I simply adjust them until they are both at the neutral value. These two potentiometers take the place of two "fixed" resistors. Just keep in mind that, once adjusted, THESE TWO POTENTIOMETERS ACT AS TWO FIXED RESISTORS THAT WOULD HAVE THE "NEUTRAL" VALUES!

 

Therefore, as long as you do nothing, the 5200 is receiving the same two values you would get if you properly centered a 5200 controller. Nothing happens.

 

What my controller does here is to alter that "neutral" value. Lessen if you want to up/left. Increase if you want to go down/right.

 

At this point, I should explain two things about connecting resistors: "Series" and "Parallel."

 

"Series" connection is when you connect two (or more) resistors end-to-end, much as you would do two batteries in a flashlight (resistors, luckily, do not have a polarity). When you do it this way, you simply add the resistances to get the total. So, connecting two 10 Ohm resistors end-to-end gives you a total resistance of 20 Ohms. Pretty much what you'd expect.

 

"Parallel" connection is when you put two resistors right next to each other and, say, twist them together, as if you were twisting two garbage ties together to get one double-strength garbage tie. If you do this with two resistors, to find the resistance you end up with use this formula:

 

(Resistor 1)X(Resistor 2)

_____________________

 

(Resistor 1)+(Resistor 2)

 

Helpful Hint: if they are of the same value, you simply cut the value in half. Two 10-Ohm resistors would become a 5 Ohm resistor.

 

So- let's take those two 10-Ohm resistors and twist them together. What do you get?

 

(10X10)/(10+10)= (100)/(20)=5!

 

 

This is the heart of my 5200 Digital Joystick. When you pull down and/or to the right, you are ADDING (in my case) 235,000 Ohms to the Neutral value(s). It is a series connection. When you push up or to the left, you are creating a parallel connection (you obviously can do this without twisting the two resistors together!), which greatly LOWERS the resistance(s). Since I use 10-Ohm resistors for this, and the neutral value is very high (thousands), you end up with a value a bit less than 10 (try the formula and see what you get).

 

There are 2 diagrams here. One shows the 2 separate circuits; the other, combined.

 

 

 

 

Hmmm...guess you'll have to go to the original post, and scroll down.

 

http://www.atariage.com/forums/index.php?s...=119395&hl=

Edited by CV Gus
Link to comment
Share on other sites

If you want to build a digital controller for the 5200, maybe this can help...
Naw, digital is too easy. ;)

 

Being the nut job that I am, I have to build an analog controller. Not only does it have to be analog, it has to 100% duplicate the functional range of the original controller. And it has to look good. And I'm probably never going to get it done...:ponder:

Link to comment
Share on other sites

Now that would be a tough enough project.

Not because of the electronics- that's easy enough- but trying to put together the joystick for it all, that's the tough part. You'd best stick with Atari's design, at least the basics.

I don't exactly know what you mean by stick to Atari's design, but I generally try not to stick to anybody else's design. That's the challenging part that keeps me interested.

 

I've already produced a reasonably comfortable and functional form factor that departs significantly from Atari's design. The prototype is out there being used by somebody who plays 5200 games a lot more than I do. Variable centering is needed because of the self-centering thumbstick and it doesn't quite get the job done with some games, but otherwise I've received favorable reviews.

 

I may be able to do something largely compatible with the original controller using simple passive electronics, but I found that using the 100K pots in standard old analog PC requires some painstaking trial and error selection of capacitors to make it hit the full range on both ends electrically and mechanically at the same time. I'm shooting for some other lofty features that will make me look even more like an even bigger nut if I reveal them before I have a working prototype. :)

 

I also tend to pick projects that stretch just beyond my current skillset and require me to learn new things. So, I get a lot of benefit and enjoyment from my goofy projects even if I never finish them.

Edited by BigO
Link to comment
Share on other sites

Big O, nice job on those controllers. I thought I would throw in something. The game I use to test the controllers I've built is Miner 2049er. I wanted to throw that in because if somebody just got started making these beauties (If they are ugly it don't matter It's how they work) that this game really helps when you press the buttons and it shows you if you got the order correct on the buttons. You can press * then button one and the screen wil say zone one. Press reset and repeat the * and press the 2 button and the screen will say zone 2, and so on. This game really helped me to make sure I got the wiring correct. Yes I have made a few controllers too. They are not beautiful but they work awesome. I'll post one soon and let ya'll look. I used the mini push buttons. Easy to find and replace if they go bad. Great work Big O!!!!!!!!! 1237.gif

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...