Main Restorations Software Audio/Jukebox/MP3 Everything Else Buy/Sell/Trade
Project Announcements Monitor/Video GroovyMAME Merit/JVL Touchscreen Meet Up Retail Vendors
Driving & Racing Woodworking Software Support Forums Consoles Project Arcade Reviews
Automated Projects Artwork Frontend Support Forums Pinball Forum Discussion Old Boards
Raspberry Pi & Dev Board controls.dat Linux Miscellaneous Arcade Wiki Discussion Old Archives
Lightguns Arcade1Up Try the site in https mode Site News

Unread posts | New Replies | Recent posts | Rules | Chatroom | Wiki | File Repository | RSS | Submit news

  

Author Topic: Modification of Raphnet's INTV USB interface for Coleco Controllers Completed  (Read 1677 times)

0 Members and 1 Guest are viewing this topic.

nick3092

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 211
  • Last login:March 22, 2022, 03:57:28 pm
A while back on a thread about INTV USB adapters, someone mentioned they were looking for a Coleco adapter.  In that thread, I mentioned I was undertaking the task of modifying Raphnet's DB9 code to work with Coleco controllers.  I am happy to report that as of about an hour ago, I have successfully done it.  I have yet to try it with an emulator, just used the windows gamepad test to make sure it works.  There are some caveats.

My original goal was to modify his code for his other DB9/Atari/SMS/Genesis adapter to make the ultimate DB9 adapter.  But that was a far bigger task than I was ready for.  So I took an easier path of modifying the firmware he wrote for the INTV.  I did submit my code to him, so maybe he could merge the code.  The code as is only supports the original controller.

I'm working on trying to figure out the extra two buttons on the super controller, as I can't find any documentation on how they work with the controller matrix.  I also need to figure out the spinner on it.  The super controller is my next step.  Long term I would also like to get the steering wheel and roller controller working too.

I'm hoping Raphael will start offering the new code as an option when you buy one of his PCB's.  If you have an AVR programmer, I'd be happy to provide you with the hex file to flash one of his PCB's.  If you don't have one, you can get one relatively cheap.

Any questions, let me know.
« Last Edit: February 26, 2012, 11:40:50 am by nick3092 »

nick3092

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 211
  • Last login:March 22, 2022, 03:57:28 pm
Re: Modification of Raphnet's INTV USB interface for Coleco Controllers
« Reply #1 on: February 26, 2012, 11:40:24 am »
This morning I mapped out the remaining 2 buttons on the super action controller.  Which leaves just the spinner.

I disassembled it to see how the spinner works.  The spinner disc has 2 magnets in it, 180 degrees apart.  Then on the circuit board below it are two "switches" (for lack of a better word) that are essentially an open contact encased in the plastic tube.  When the magnets rotate over the contacts, it closes them.  So it knows which direction the spinner is going, depending on which contact closes first, and opens up last.

Since I'm not just retrofitting existing code, this might take me a little while to figure out.

nick3092

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 211
  • Last login:March 22, 2022, 03:57:28 pm
Doesn't seem to be much interest in this, but here is an update for anyone who is interested.

I now have some code in place to read the spinner on the super action controller and convert it to a button press - one button for CW and another for CCW.  This should work with the MESS input system that converts 2 digital inputs into analog increase/decrease.  Except it currently only works when I spin it slowly.  When I spin it fast, sometimes the wrong button activates.  So I think I need to increase the polling rate on the spinner.

I have similar behavior with the steering wheel as well.  Hopefully increasing the polling will help that issue as well.  Obviously the resolution on the steering wheel is a lot higher than the spinner on the super action controller.

I have submitted at least one revision of my code to Raphael, but I haven't heard back from him.  I'll try submitting it to him again once I get the spinner polling worked out.

SavannahLion

  • Wiki Contributor
  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 5986
  • Last login:December 19, 2015, 02:28:15 am
I'm reading this....

mytymaus007

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1025
  • Last login:September 18, 2023, 09:58:40 am
  • http://gameroom.atozmicro.com
    • http://gameroom.atozmicro.com
me too are you able to work on some retro contollers, i need Atari paddles usb for a few games breakout Kaboom or if the driving controller work ill get that too

nick3092

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 211
  • Last login:March 22, 2022, 03:57:28 pm
If your looking for true support for 2600 paddles, you will probably want to check out Stelladaptor.  The Atari paddles use pots, and the Coleco controllers use an encoder wheel (well, the steering module does - the super action uses a pseudo encoder wheel as noted in my post above).  I also don't think my modifications to Raph's adapter will work with the atari paddles.  The Coleco strobes like 7 inputs using 2 alternating commons to matrix the input it's seeing.  AFAIK, the pots for the paddles are on pins 5 and 9.  The problem with the Colleco is one of the strobes is pin 5.  So the interface would need to be smart enough to know what's connected so it could reassign the pins to different functions.

I'm not sure how the Coleco roller controller works, so I don't know how fast I'll get that added.  I have 2, one used from my childhood and one I bought on ebay brand new in a box about 10 years ago.  I can't find my childhood one, and I refuse to disassemble my pristine one.  Also, that thing plugged into two ports at the same time.  But there was a player 1-2 switch on the front.  So it's possible it only sent signals to one port or the other.  But I doubt that since the Coleco interface can only support one spinner per joystick, and this would essentially have 2 spinners.

Edit: I just pulled my new one out. The switch I was thinking of changes it from roller to joystick mode, not players. I also forgot this thing used additional power by tapping into the coleco's power brick.
« Last Edit: March 03, 2012, 01:02:38 pm by nick3092 »