CPUWIZ Posted November 16, 2014 Share Posted November 16, 2014 Hello, I optimized this code, removed the crystal from the board and clocked the chip at 8MHz, then I re-wrote all the timing routines for the PS2 protocol decoding etc.! This freed up the last two pins that can be used for outputs on the PIC I use for the MCP IO-Board. This now allows me to do 13 signals for direction/buttons. I also am in the middle of writing some code to put the adapter into config mode, which will allow for selecting different configurations of button layouts. The selection stays alive, when the joystick adapter is unplugged, I will store the current selection in the internal EEPROM of the PIC. I've created a template for layouts, now I would love to see some good examples, like a Spy Hunter or Omega Race config, etc.! Cheers, -R EDIT: Fixed template, so it includes L3 and R3. EDIT2: Figured out a way to control the last of the 14 signals, updated template. 10 Quote Link to comment Share on other sites More sharing options...
toiletunes Posted November 16, 2014 Share Posted November 16, 2014 I can think of two options- XOST = controller2 for games like Robotron etc (could also use L1/R1 as fire and play ROTLA with one controller) or X/O for button1/2 for games like Spy Hunter(2600) or Xevious (7800). 1 Quote Link to comment Share on other sites More sharing options...
toiletunes Posted November 16, 2014 Share Posted November 16, 2014 Also, this (and I mean this in a nice way) 2 Quote Link to comment Share on other sites More sharing options...
CPUWIZ Posted November 16, 2014 Author Share Posted November 16, 2014 I will consider including any design that uses my template, just copy and paste the desired function into the boxes. Also of note, for real 2 button operation, the buttons for those functions need to be specified by "Fire1 & Fire1A" or "Fire1 & Fire1B". Anything can be mapped to anywhere. Also, I forgot, I can also read the L3 and R3 buttons (forgot to include boxes for those). 1 Quote Link to comment Share on other sites More sharing options...
CPUWIZ Posted November 16, 2014 Author Share Posted November 16, 2014 Just got done with the code for the config button and visual feedback. Hold down select for N seconds and the controller will blink X times, then go to the next config (although I may change that and use the controller map instead, so a proper instruction manual could be created, maybe I'll leave it blinking until another button is pressed that specifies the config). Rambling, nevermind... For homebrew usage, you could even do something creative, like assigning UD or LR to a single button, to create a virtual button that is normally impossible to do on a joystick. For instance, X = Fire1, O = Fire1A, Square = Fire1B, Triangle = Left1 + Right1. In code, you can then check if left and right (or up and down for another virtual button) are pressed a the same time, before doing the code for left and right. If you want to go really crazy and create another virtual button, assign UDLR all to one special button. Ahh, the possibilities. 1 Quote Link to comment Share on other sites More sharing options...
Shawn Posted November 16, 2014 Share Posted November 16, 2014 UDLR in one press would be a nice soft reset on a homebrew for sure. 1 Quote Link to comment Share on other sites More sharing options...
CPUWIZ Posted November 16, 2014 Author Share Posted November 16, 2014 I will also consider custom digital only controller configs, like the Namco stick for the PS1. Use the same template and ignore buttons that are not present on digital pads or sticks. As with the analog controller, SELECT can not be used for anything. 1 Quote Link to comment Share on other sites More sharing options...
iesposta Posted November 16, 2014 Share Posted November 16, 2014 Are the analog sticks mappable to paddles? Buy two boards to play 4-player warlords with two people! B oard 1 = two of the warlord shields, against one other person playing the remaining two shields = Board 2. (Hard to remember which two of the four output cords goes into which port 1 or 2 though.) Have I hurt your brain enough? I tried. How many games use both ports? I can only think of Spy Hunter 2600, Stargate 2600, and the Defender Arcade 2600 (Stargate hack), and 7800 Robotron. I forget how Omega Race control works. I'll be playing those a LOT if you sell these! Do Sega Genesis or ColecoVision have any games that use both ports? They are Atari stick compatible. As far as layout mapping, I'll have to think about each special case game. Default: it should allow digital joystick P1 on the digital and analog left stick, P2 digital joystick on the analog right stick. The square, triangle, x, and o buttons should map to 2600 P1 fire, 2600 P2 fire, 7800 P1 fire #2, 7800 P2 fire #2. Second: Joystick 1 as the analog sticks should be swapped depending on the kind of game. It is not always a left handed, right handed thing. Right handed players of Joust have the joystick on the left hand because it's just left/right, the dominant right hand needs the most precision controlling the flap button (that's why right handed guitar players strum/pick with the right dominant hand because that hand has the precision to hold the "beat". Your dominant hand has the rhythm.) In games where joystick needs all the precision, like PAC Man, a right handed person should prefer to use the right hand. 1 Quote Link to comment Share on other sites More sharing options...
CPUWIZ Posted November 16, 2014 Author Share Posted November 16, 2014 Are the analog sticks mappable to paddles? Not without re-design and loss of functionality, you would need to use PWM to simulate a paddle (probably pretty fiddly too). All outputs are digital in this design. Quote Link to comment Share on other sites More sharing options...
iesposta Posted November 16, 2014 Share Posted November 16, 2014 Not without re-design and loss of functionality, you would need to use PWM to simulate a paddle (probably pretty fiddly too). All outputs are digital in this design.I didn't think so. I was just trying to think of other uses, because there are PS2 stick to Atari adapters, just not an adapter for both ports. Plus as you've said the ability to make one button chords of both l/r, u/d, etc. Quote Link to comment Share on other sites More sharing options...
CPUWIZ Posted November 16, 2014 Author Share Posted November 16, 2014 because there are PS2 stick to Atari adapters Where can you buy one? Do they control all 7 signals on the port? Quote Link to comment Share on other sites More sharing options...
CPUWIZ Posted November 16, 2014 Author Share Posted November 16, 2014 I was just pondering on something mildly interesting, with a 9V battery source, I can turn on the rumble motors upon a "signal", it sure wouldn't be as cool as a PlayStation rumble, but the effect can be programmed in the micro (e.g. small motor go or big motor go). I'd have to verify that though, the controller PCB says 7.5V, but I am sure it could take 9V. 2 Quote Link to comment Share on other sites More sharing options...
Shawn Posted November 16, 2014 Share Posted November 16, 2014 I was just pondering on something mildly interesting, with a 9V battery source, I can turn on the rumble motors upon a "signal", it sure wouldn't be as cool as a PlayStation rumble, but the effect can be programmed in the micro (e.g. small motor go or big motor go). I'd have to verify that though, the controller PCB says 7.5V, but I am sure it could take 9V. But 5v wouldn't be enough though correct? Quote Link to comment Share on other sites More sharing options...
CPUWIZ Posted November 16, 2014 Author Share Posted November 16, 2014 But 5v wouldn't be enough though correct? No way, I think even if you come up with some over the top up-converter, you would overload the PSU, especially on a 2600. Quote Link to comment Share on other sites More sharing options...
Andromeda Stardust Posted November 16, 2014 Share Posted November 16, 2014 Awesome you have thought of this. Kudos for building it! I have considered modding an SNES controller into a Robotron controller or for simultaneous control of two player VCS games. A/B/X/Y would be P2 and of course the L and R flippers for fire buttons. That would be a bit simpler. Quote Link to comment Share on other sites More sharing options...
Trebor Posted November 16, 2014 Share Posted November 16, 2014 How many games use both ports? I can only think of Spy Hunter 2600, Stargate 2600, and the Defender Arcade 2600 (Stargate hack), and 7800 Robotron. Raiders of the Lost Ark 1 Quote Link to comment Share on other sites More sharing options...
Jinks Posted November 16, 2014 Share Posted November 16, 2014 Would there be a way to have feedback to the controller from a programmed game to the controller to have rumble(with aux power source etc.) like have the game put two directions at once or something and that trigger the rumble when hitting a wall etc. ? Just trying to think of the usefullness of the rumble on the 7800. Quote Link to comment Share on other sites More sharing options...
iesposta Posted November 16, 2014 Share Posted November 16, 2014 Duplicate 3 Quote Link to comment Share on other sites More sharing options...
iesposta Posted November 16, 2014 Share Posted November 16, 2014 Where can you buy one? Do they control all 7 signals on the port? Don't know about signals. TTK MDClassicConverter tototek.com $26.76 Read about it here: http://atariage.com/forums/topic/220354-tototek-md-sms-converter-works-for-me/?p=2897675 Quote Link to comment Share on other sites More sharing options...
CPUWIZ Posted November 16, 2014 Author Share Posted November 16, 2014 Interesting, but only mildly useful. Thanks. Quote Link to comment Share on other sites More sharing options...
CPUWIZ Posted November 16, 2014 Author Share Posted November 16, 2014 Anybody want to contribute a configuration? I've decided to go with a scheme like this... 1 Quote Link to comment Share on other sites More sharing options...
Trebor Posted November 16, 2014 Share Posted November 16, 2014 YES! This is fantastic! Great to see this being worked on. CPUWIZ, my prime concern lies with button layout. You can see mine and other's configuration thoughts here. In summary (for me): Ergonomically, holding the controller in the natural position of the hand and using your right thumb (Presuming common use of a PS2 pad)... Button 1/Left button should be Square and Triangle (Tip of thumb usage). Button 2/Right button should be X and O (Closer to palm usage). If someone were using their pointer and middle fingers from their right hand instead (Presuming common use of a [PS2] Arcade joystick)... Button 1/Left button should be Square and X. Button 2/Right button should be Triangle and O. More flushed out reasoning in this post respecting my preference, if interested. 1 Quote Link to comment Share on other sites More sharing options...
CPUWIZ Posted November 17, 2014 Author Share Posted November 17, 2014 CPUWIZ, my prime concern lies with button layout. You can see mine and other's configuration thoughts here. Take the template from the first post and make your optimal layout(s), that is what I am hoping for. I should easily be able to fit all 15 configs in memory. Just copy the black text into the red boxes, however you want. I optimized a lot of the code today and made more space. The config selection code is completely done already and works, the current selection stays around until switched, even if the adapter is unplugged. EDIT: Once we have 15 configs, these will be manufactured and shipped from Canada. P.S. Hooking up both joysticks is not needed, the chip draws practically nothing and the Dualshock seems happy running from just one port. Quote Link to comment Share on other sites More sharing options...
Trebor Posted November 17, 2014 Share Posted November 17, 2014 Just need some clarity on how these listings translate exactly: FIRE1 FIRE1A FIRE1B FIRE2 FIRE2A I guess what's throwing me a curve is why three fire listings for Player 1? How exactly does... Player 1 Left Fire Button Player 1 Right Fire Button Player 2 Left Fire Button Player 2 Right Fire Button ...translate? I could possibly see... FIRE1 = Player 1 Left Fire Button FIRE1A = Player 1 Right Fire Button FIRE2 = Player 2 Left Fire Button FIRE2A = Player 2 Right Fire Button ...but then I don't understand what is FIRE1B supposed to denote, and why there is no FIRE2B Pardon my ignorance. Quote Link to comment Share on other sites More sharing options...
0078265317 Posted November 17, 2014 Share Posted November 17, 2014 I will also consider custom digital only controller configs, like the Namco stick for the PS1. Use the same template and ignore buttons that are not present on digital pads or sticks. As with the analog controller, SELECT can not be used for anything. I have 2 of these at home. And I also have a powerpad and one other I forget the name. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.