pixelmischief Posted December 24, 2018 Share Posted December 24, 2018 Here's the idea: I start with a 3-button Genesis controller. I build an dongle that intercepts the controller signal and converts buttons B and C to the "impossible" directional pad combinations UP&DOWN and LEFT&RIGHT. I write some little code that PEEKS the port and see what value is presented when those buttons are hit. Then I patch games that have both jump and fire, and use up for jump (we hates iiiit!), to use the "impossible" value instead. What say you? 1 Quote Link to comment Share on other sites More sharing options...
Justin Payne Posted December 24, 2018 Share Posted December 24, 2018 Hey, I'm all for any creative and innovative ideas. Quote Link to comment Share on other sites More sharing options...
Christos Posted December 24, 2018 Share Posted December 24, 2018 That is quite possible. I ve done it with an Arduino and a Dual shock controller. It is much easier than what you are thinking though for MD pads. You just need to map the C button pin to the pin 1 of the joystick port and unmap the pin that blocks the st keyboard. It is a simple electrical connection thing. I could look for more information if you'd like. I still prefer joysticks though. 1 Quote Link to comment Share on other sites More sharing options...
pixelmischief Posted December 24, 2018 Author Share Posted December 24, 2018 That is quite possible. I've done it with an Arduino and a Dual shock controller. I was going to go with a Pi Zero. Connect everything to GPIO, write a tiny FIFO buffer, and wallah. You just need to map the C button pin to the pin 1 of the joystick port... I think this will work fine to map UP to a button. I've done this in emulation and it works "ok", but the solution I am hoping to implement would take it to the next level. It would actually make a button transmit simultaneous LEFT/RIGHT. Then, game patches would remap JUMP to that value. This would leave ladder climbs in place on UP, but put JUMP on its own button. ...and unmap the pin that blocks the st keyboard. Not sure what this means. Could you elaborate? I could look for more information if you'd like. Uhhh, hell yes! I still prefer joysticks though. Really? What about them do you still prefer? Quote Link to comment Share on other sites More sharing options...
ParanoidLittleMan Posted December 24, 2018 Share Posted December 24, 2018 This is indeed good idea. Lot of games which can be played better with more control ways. But I must say that patching of games will be very hard - in most cases - and believe me, I know what I talking about. This reminds me about my changes in game OIDS - where I wanted analog controls for it. Then it appeared that there are no Atari analog joysticks available for STE advanced joy. ports. Most likely Atari never made such. I even needed to mod Steem emulator to work with USB analog joypads. There is thread about it at AF . Searching ... Cool, g. shown my AF thread at top of hits (no, I did not pay them ) - that made my day Yes, I bought specially for it: 2 old fashion analog joysticks for Atari STE, USB joypad for PC . Eventually all it worked - and I did not put it on my site, only to AF ??? But here is something more topic here: http://atari.8bitchip.info/TestMe/OIDSJP.ZIP Yeah, Atari Jagpad support in OIDS . Will now start new thread with analog control versions ... 2 Quote Link to comment Share on other sites More sharing options...
Christos Posted December 24, 2018 Share Posted December 24, 2018 I was going to go with a Pi Zero. Connect everything to GPIO, write a tiny FIFO buffer, and wallah. There is no need, an Arduino is cheaper and far more suitable for the job (you won't have a problem with boot times). Also the ST keyboard might not provide enough current for it to work. It's been done with a Pi zero but it's an overkill. An arduino nano is smaller as well. I still think you don't need it though. I think this will work fine to map UP to a button. I've done this in emulation and it works "ok", but the solution I am hoping to implement would take it to the next level. It would actually make a button transmit simultaneous LEFT/RIGHT. Then, game patches would remap JUMP to that value. This would leave ladder climbs in place on UP, but put JUMP on its own button. Same principle. You just need to connect it to pin 3 and 4 of the ST joystick port. Not sure what this means. Could you elaborate? The megadrive pad will hog the ST keyboard when connected directly. There are also reports of frying stuff (same with 7800 controllers). That is because the select pin no 7 (I think) is +5V on the MD and that can cause problems. Uhhh, hell yes! Take a look at this page: https://picaxeforum.co.uk/threads/reading-the-sega-mega-drive-genesis-control-pads.27553/ Apparently a simple adapter for what you are trying to do would be: MD ---------------------- Atari 1 ----------------------- 1 2 ----------------------- 2 3 ----------------------- 3 4 ----------------------- 4 5 ----------------------- 5 6 ----------------------- 6 8 ----------------------- 8 9 ----------------------- 3,4 This would allow for A,B as fire button and C as left+right. With an Arduino you could make it so that you could read the state of the Select key, so you could switch between the two possible options of setting C as either Up or Left+Right. Really? What about them do you still prefer? We mostly use arcade style sticks in Greece and not Atari style. So they sit on the desk and you get far more control than you would with a joypad. Moving the stick is much more satisfying and it gives me far better control especially with diagonals. Quote Link to comment Share on other sites More sharing options...
pixelmischief Posted December 24, 2018 Author Share Posted December 24, 2018 There is no need, an Arduino is cheaper and far more suitable for the job. Sold. Same principle. You just need to connect it to pin 3 and 4 of the ST joystick port. Cool. The megadrive pad will hog the ST keyboard...because the select pin no 7 (I think) is +5V on the MD and that can cause problems. So, unmap pin 7. Got it. With an Arduino you could...read the state of the Select key, so you could switch between the two possible options Ok. But if I do the LEFT+RIGHT thing on B and UP on C, the whole thing becomes a simple wiring solution, right? No Arduino needed. We mostly use arcade style sticks in Greece and not Atari style. So they sit on the desk and you get far more control than you would with a joypad. Moving the stick is much more satisfying and it gives me far better control especially with diagonals. Yeah. I can see how that would be satisfying. Quote Link to comment Share on other sites More sharing options...
Christos Posted December 24, 2018 Share Posted December 24, 2018 Ok. But if I do the LEFT+RIGHT thing on B and UP on C, the whole thing becomes a simple wiring solution, right? No Arduino needed. No, apparently A and B are both mapped on pin 6 so if you are trying to map the A button you will need a microcontroller to do some translation. The way the MD pad works is a bit more complicated than the Atari joystick. Anyway as Pera said, it's highly unlikely that someone will patch games to use your control scheme. Also, I think B is the most natural mapping for main fire button. Anyway, here's some links to get you started. My Playstation 2 to Atari joystick converter on github: https://github.com/ctzio/PSX2toAtariJoy A Megadrive Controller library for Arduino https://github.com/jonthysell/SegaController An Atari joystick is the simplest control device you could possibly make. Quote Link to comment Share on other sites More sharing options...
pixelmischief Posted December 24, 2018 Author Share Posted December 24, 2018 No, apparently A and B are both mapped on pin 6 so if you are trying to map the A button you will need a microcontroller to do some translation. Got it. Anyway as Pera said, it's highly unlikely that someone will patch games to use your control scheme. I'll patch them myself, and learn a boatload in the process. I have a good rapport with PPera. If I ask intelligent questions, I'm sure I can wade through the abuse to get useful answers (just kidding buddy =)). Anyway, here's some links to get you started. Thanks! Quote Link to comment Share on other sites More sharing options...
Christos Posted December 26, 2018 Share Posted December 26, 2018 I'll patch them myself, and learn a boatload in the process. I have a good rapport with PPera. If I ask intelligent questions, I'm sure I can wade through the abuse to get useful answers (just kidding buddy =)). Yeah, best of luck with that. If it doesn't work though start with the Atari compendium. Quote Link to comment Share on other sites More sharing options...
pixelmischief Posted December 26, 2018 Author Share Posted December 26, 2018 Yeah, best of luck with that. You sound doubtful. Do you believe it to be especially difficult? What do you think the primary challenge will be? If it doesn't work though start with the Atari compendium. How can the Atari compendium help me? Is it the best documentation source or have some code in this direction? Quote Link to comment Share on other sites More sharing options...
ParanoidLittleMan Posted December 26, 2018 Share Posted December 26, 2018 Atari Compendium is one of the best. But as everything - not perfect, and I found myself some minor errors. But real answer is: you will need more than it. Quote Link to comment Share on other sites More sharing options...
Atariforce Posted December 26, 2018 Share Posted December 26, 2018 (edited) But real answer is: you will need more than it. Newsflash: I agree with you. @pixelmischief: you'll need Eazyrider to disassemble, knowledge and code examples from AC and other sources and Devpac to reassemble the whole thing. Edited December 26, 2018 by Atariforce Quote Link to comment Share on other sites More sharing options...
pixelmischief Posted December 27, 2018 Author Share Posted December 27, 2018 you'll need Eazyrider to disassemble, knowledge and code examples from AC and other sources and Devpac to reassemble the whole thing. Thanks. I'll put those tools together and see what I can figure out. Quote Link to comment Share on other sites More sharing options...
Atariforce Posted December 27, 2018 Share Posted December 27, 2018 NP, and when it comes to Eazyrider, you can easily find a v3 in german language, and there is a v4 that is in english, but from my own experience when recompiling with Devpac I got some compilation errors from programs disassembled with Eazyrider v4, while it went just fine with source code from v3. Maybe it was just some incorrect options set up. Also, once you disassemble an executable with Eazyrider don't forget to exit it, then launch the CONVERT.PRG to get something Devpac will recognize. Quote Link to comment Share on other sites More sharing options...
pixelmischief Posted December 27, 2018 Author Share Posted December 27, 2018 Cool. Thanks for the love. I'm stoked to get my hands dirty with this. Quote Link to comment Share on other sites More sharing options...
Atari_Falcon Posted February 7, 2019 Share Posted February 7, 2019 (edited) I just modded some Genesis Pads to work like that: "B" is firebutton and "C" is "Up". Works like a charm. Love to play pperas version of Giana Sisters on my Falcon with that. Thanks for the adaption! My experience is that the Genesis Pads work fine on Port 1 but Not on 0 (Mouse/Joystick). You have to disconnect a Pin to solve this. If anyone is interested in modded controllers. I can sell them for 9,99 $ + shipping. Have some here (China Genesis controllers) to mod. Take care! Chris Edited February 7, 2019 by Atari_Falcon 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.