Request: Controller monitor/test program.

What would you like to see done?
Post Reply
User avatar
Kyosho
3DO ZERO USER
Posts: 86
Joined: Fri Jul 05, 2013 1:49 am
Contact:

Request: Controller monitor/test program.

Post by Kyosho » Fri Jan 22, 2016 7:56 am

Maybe something like this already exists in a menu in one of the games, or elsewhere. If so, please let me know where.

What I'm hoping for is a very simple program I can run on the 3DO (as a burned iso) to see when buttons are being pressed. Maybe a simple image of a 3DO controller where each button on it lights up (or the color of it inverts) when pressed. Including multiple-key presses (leftshift+b, etc.). That's really all I care about for the moment. For building an arcade stick, or repairing controllers, etc.


Additional/cool features:

*Support for multiple daisy-chained controllers.
*Rapid-fire support. Basically, it'd help with building a "turbo" controller. Where you could see how fast the button is being pressed, visually (the blinking of the button). This might not even be an additional feature. It might just work. Additional feature to that would be a BPM onscreen (beats per minute...but..well, presses per minute would be more accurate). For fine-tuning of a custom controller.
*Maybe a "choose your controller" thing where you pick from a list of 3DO controllers, and it changes the image to said specific controller.
*Perhaps support for the 3DO mouse, flight stick, light gun, etc. Just to test them. Could especially be useful for fixing/building new ones (knowing the exact number values the system is looking for, with the analog joystick, etc. etc.).

User avatar
Aer Fixus
3DO ZERO USER
Posts: 40
Joined: Thu Aug 21, 2014 10:59 pm

Re: Request: Controller monitor/test program.

Post by Aer Fixus » Tue Jan 26, 2016 8:27 pm

I can definitely make the first part. It wouldn't take very long at all for a simple controller tester. I'm not sure how hard it would be to support more than one controller, but one should be easy.

User avatar
Kyosho
3DO ZERO USER
Posts: 86
Joined: Fri Jul 05, 2013 1:49 am
Contact:

Re: Request: Controller monitor/test program.

Post by Kyosho » Wed Jan 27, 2016 12:36 am

That would be incredibly awesome.

I have another request regarding it. If possible, don't include any intros or anything. I mean, that'd be even more work to add them, but I know most people tend to like a fancy presentation with their homebrew. However, as a completely utilitarian piece of software, the speed between putting in the disc and getting to the controller monitor would ideally be as short as possible. Feel free to put whatever other stuff you want on the screen once the controller monitor is loaded. Scrolling text, URLs, shoutouts, music, whatever else. Just so long as I/we can pop it in and be testing things as fast as possible.

Sorry if I sound like a dick for even saying that or asking for that, but as some one who is constantly tinkering with things, seeing intros and waiting for unnecessary things to load is always super annoying. Not unlike when testing mods for Bethesda games. If I couldn't disable the (unskippable) intros, I'd go insane.

User avatar
Aer Fixus
3DO ZERO USER
Posts: 40
Joined: Thu Aug 21, 2014 10:59 pm

Re: Request: Controller monitor/test program.

Post by Aer Fixus » Wed Jan 27, 2016 3:34 am

Haha! No worries. I completely understand what you want and I won't be adding any extra stuff to it. It will require no buttons to be pushed in order to get to the controller tester either (what's the point in a controller tester if you need a fully functional controller to use it!).

Unfortunately, there will be a banner screen as I'm fairly certain it can't be removed (there's something with the homebrew signing that i can't remember the details of). It will be customized, but since it can't be removed (or I don't know how), I might as well use it instead of leaving it black or something. Once the program is loaded, it will instantly go to the controller test screen.

This is what I have so far. All I need to do is code up the functionality. That won't take to long and should be complete as soon as I can get to it.

Banner Screen:
Image

Idle:
Image

All Pressed:
Image

User avatar
Kyosho
3DO ZERO USER
Posts: 86
Joined: Fri Jul 05, 2013 1:49 am
Contact:

Re: Request: Controller monitor/test program.

Post by Kyosho » Wed Jan 27, 2016 3:44 am

Looks absolutely perfect! So psyched you're doing this!

No worries about the splash screen. When writing my previous post, I actually stopped and wondered whether one of the reasons for a splash screen/intro on 3DO might be to cover up load times of software and/or OS. I mean, I'm pretty sure that's how it's still done even to this day by some developers. But there are still those horrible publishers out there who make unskippable ones that serve absolutely no purpose.

User avatar
Aer Fixus
3DO ZERO USER
Posts: 40
Joined: Thu Aug 21, 2014 10:59 pm

Re: Request: Controller monitor/test program.

Post by Aer Fixus » Thu Jan 28, 2016 7:02 am

I have completed the program. It took longer than expected because of a few unforeseen events. The first was that even in the official 3DO documentation, they do not reference what every key is in code. They cover directions, the face buttons and the "start" key, but they leave out the last three keys! I had to dig around in the rest of the documentation and guess at names and hope that the compiler doesn't yell at me. Eventually, I got them right...

The second problem had an easy solution. There was a sprite limit! All I had to do was find the variable and change it, but that took a while to figure out because it compiled fine but the game didn't make it past the banner screen.

If anyone else has this issue with button names, the names are:

Code: Select all

//ControlUp              -Up
//ControlDown            -Down
//ControlLeft            -Left
//ControlRight           -Right
//ControlStart           -Start/Play/Pause
//ControlX               -Stop/X/Select
//ControlLeftShift       -Left Bumper
//ControlRightShift      -Right Bumper
Anyway, I've linked the ISO. It's provided via MEGA. If that doesn't work for you, tell me and I can upload it somewhere else.

If there are any issues with the program, tell me and I'll try to figure it out. I'm fairly certain it won't work on PAL, so I'll see what I need to do to adjust it if I need to do anything. If you are in a PAL region, Kyosho, I'll get on it ASAP. Otherwise, I'll convert it later.

Edit: 2020: Link is dead
Download me!
Last edited by Aer Fixus on Sat Apr 25, 2020 2:51 pm, edited 1 time in total.

Versus

Re: Request: Controller monitor/test program.

Post by Versus » Thu Jan 28, 2016 7:25 am

Great utility! Can we see the source?

User avatar
Aer Fixus
3DO ZERO USER
Posts: 40
Joined: Thu Aug 21, 2014 10:59 pm

Re: Request: Controller monitor/test program.

Post by Aer Fixus » Thu Jan 28, 2016 8:19 am

Yes. I just want to tidy up the code a bit. And maybe add some comments.

It's pretty straight forward, though. Load images, set to sprites, turn on or off sprites based on controller input. I'm building it mostly off of the Rastersoft Invades project so there's not really much new there. Even so, I can have the code up and ready in another day or two. It's not complicated by any means, I just need to find the free time between other work to do it.

Versus

Re: Request: Controller monitor/test program.

Post by Versus » Thu Jan 28, 2016 4:44 pm

Thank you! I'll wait as long as needed.

User avatar
Kyosho
3DO ZERO USER
Posts: 86
Joined: Fri Jul 05, 2013 1:49 am
Contact:

Re: Request: Controller monitor/test program.

Post by Kyosho » Fri Jan 29, 2016 4:39 am

Man, I never expected this thing to be done so quickly. Awesome! I still need to test it out, but I know this is going to come in very, very handy. Thank you very much! At some point in the future I will post a video of it working with my arcade stick.

Also I've personally got an NTSC console, so no worries (for me anyway) about the PAL thing.

User avatar
Aer Fixus
3DO ZERO USER
Posts: 40
Joined: Thu Aug 21, 2014 10:59 pm

Re: Request: Controller monitor/test program.

Post by Aer Fixus » Wed Feb 03, 2016 3:19 am

I've tidied up what I wanted to tidy up and I even added the ability to test controllers beyond player 1. Theoretically it goes to the full 8 player maximum, but I haven't been able to test that. I've only tested up to 5 controllers, which I'm sure is enough for what most people would want. Each controller has a different color associated with it. Lower controller numbers (or controllers closer to the 3DO unit in the chain) have priority over another. So if controller 1 is pressing a button, and controller 2 presses the same button, you won't see it light up.

PAL is still not supported.

Edit: 2020: Links are dead...
Download Version 2 here!
Download Version 2 Source here!
Last edited by Aer Fixus on Sat Apr 25, 2020 2:50 pm, edited 1 time in total.

User avatar
Kyosho
3DO ZERO USER
Posts: 86
Joined: Fri Jul 05, 2013 1:49 am
Contact:

Re: Request: Controller monitor/test program.

Post by Kyosho » Tue Feb 09, 2016 3:07 am

Sorry it took me so long to try this. I just recently moved and had trouble finding my CD-Rs. Had to go through a lot of boxes. I went straight for version 2, and I'm afraid I couldn't get it to work. Only had two CD-Rs left and tried burning it with two different programs (ImgBurn and Alcohol 120%). On my FZ-1, it tries pretty hard to read the disc, then just goes to a black screen and stays there. If I reboot the system with the disc in, it acts as if there is no disc inserted. I thought perhaps my 3DO had stopped being able to read burned discs, but I tried my burned copy of Road Rash and it worked okay. My other burned games are... somewhere in a box. Heh. I didn't organize my things very well when I moved.

Anyways, I am hoping to pickup some more discs tomorrow. I'll try version 2 again first and if that fails I'll try version 1. If neither work, I'll try another burner.

User avatar
Aer Fixus
3DO ZERO USER
Posts: 40
Joined: Thu Aug 21, 2014 10:59 pm

Re: Request: Controller monitor/test program.

Post by Aer Fixus » Tue Feb 09, 2016 4:11 am

Hmm... I'll burn a disc or two and try it in one of my systems.

User avatar
Aer Fixus
3DO ZERO USER
Posts: 40
Joined: Thu Aug 21, 2014 10:59 pm

Re: Request: Controller monitor/test program.

Post by Aer Fixus » Tue Feb 09, 2016 4:28 am

I burned both versions and both read almost immediately on my FZ-1. I was able to test all four of my controllers at once (with V0.2). One of them even has turbo and it shows on screen as the button flickering.

If you have troubles with this burn and not others, try burning it at a very slow speed. If it still doesn't work, maybe your systems' lasers are wearing out and getting quirky... I know systems can behave strangely with burned discs. Some systems can read some brands but not others. PS1, PS2, Sega CD, Dreamcast, etc all can be very picky with discs. Let's hope that you just had a couple bad burns on your CDs.

User avatar
Kyosho
3DO ZERO USER
Posts: 86
Joined: Fri Jul 05, 2013 1:49 am
Contact:

Re: Request: Controller monitor/test program.

Post by Kyosho » Thu Feb 11, 2016 11:29 pm

Mwahahahahahahahaha!

Image

Yeah, baby! So awesome. Ignore my shitty setup. But you can see both controllers are lighting up a shoulder button (or shift, as I suppose these ones are officially called). It all works perfectly. Wasn't able to pickup new discs until today. Used a different burner this time, and it worked perfectly on the first go. I have no idea why the others didn't work. Probably a dying laser on that burner. But still, this is so cool.

Thank you so much for making this thing! Everything works and looks so amazingly good. That pixel art version of the controller looks great on my 40 inch tv. Though not so much in the picture I took. My phone was bound and determined to focus on either the controllers or my FZ-1, and refused to focus on the screen. Still, it shows it works. You have no idea how happy I am to have this. It's time to start hacking the shit out of one of these controllers. Speaking of which, I have a bone to pick with a certain 3DOkid. :D

User avatar
Aer Fixus
3DO ZERO USER
Posts: 40
Joined: Thu Aug 21, 2014 10:59 pm

Re: Request: Controller monitor/test program.

Post by Aer Fixus » Sun Feb 14, 2016 1:29 am

Excellent! I'm glad to see you got it working (and that your 3DO's laser is still perfectly fine). And no worries about the focus. I can see it just as clear as I need to to know it's working.

What sort of hacking/modding will you be doing? Functional, visual, or just repairing a controller or two?

User avatar
Kyosho
3DO ZERO USER
Posts: 86
Joined: Fri Jul 05, 2013 1:49 am
Contact:

Re: Request: Controller monitor/test program.

Post by Kyosho » Sun Feb 14, 2016 11:11 am

I'm going to basically solder to all the buttons and connect them to a cord connector (probably hdmi) and at the other end have another plug that goes into my arcade stick. I've got everything planned out for sort of a "universal" connector that I'll use for controllers. Basically, just a common pinout, so that I can use different controllers on different systems. A big part of this is so I can use my Xbox 360 controller on my PS2. Because I really hate the analog stick placement on the Dual Shock controllers. As far as the 3DO though, I like its controller just fine, but having an arcade stick for the fighting games would be better. I'm aware there exists one or two out there, but I prefer to use mine.

User avatar
Aer Fixus
3DO ZERO USER
Posts: 40
Joined: Thu Aug 21, 2014 10:59 pm

Re: Request: Controller monitor/test program.

Post by Aer Fixus » Sun Feb 14, 2016 10:24 pm

Good luck with the project, it seems quite ambitious. Especially with the joysticks. I'm not sure how that will work out, but I wish you good luck.

I could definitely see an advantage to that though. Getting familiar with one controller and using it on everything would be super convenient.

User avatar
Kyosho
3DO ZERO USER
Posts: 86
Joined: Fri Jul 05, 2013 1:49 am
Contact:

Re: Request: Controller monitor/test program.

Post by Kyosho » Mon Feb 15, 2016 1:16 am

The main issue is being willing to sacrifice the controllers. I considered having switches (or relays, or a software equivalent) to switch controllers from "host" to "slave" modes, but that would require a ton of extra wires inside the controllers. Probably too many to be able to close them back up and still have them be functional/comfortable. I still might try that on a Genesis controller, since the 3-button controllers are huge and have plenty of space inside them for extra stuff. But since that's not going to be the case for most of these controllers, I figure I'll have a "controller box" with the PCBs of each controller in it. And two different "input" connectors. An HDMI connector for Atari 2600, NES, Genesis, SNES, 3DO, PS1*, N64, and Dreamcast. A DVI-I connector for PS2, Xbox, Gamecube, Wii classic controller, Xbox 360**, and PS3.

As far as the joysticks, I'm doing to them basically the same thing I'm doing with the buttons. In this case, desoldering the analog sticks, and soldering wires to the connector. Most gamepad analog sticks use 10k potentiometers, though IIRC some use 5k. Any that are different, I can make up the difference with resistors. The same if extending them that far messes with their resistance. I'll probably have to correct for that, too. With the N64, I will likely use a Superpad (third party) since it uses standard analog sticks and not that crazy one Nintendo put on the stock N64 controller. Granted, there are mods you can do to the original Nintendo controllers to make them accept normal analog sticks, but it'd just be easier to use a third party controller.

Another obstacle is needing controllers which use a "common ground" for all the buttons. In some cases, I will need to use the PCBs from third party controllers here as well.

I know it's a crazy ambitious project, but for the time being, I'm mostly focused on getting my arcade stick to work on the 3DO and Genesis, and getting my 360 controller to work on PS2. But by starting out with having a common pinout (and connectors) for all of these, it will make future mods easier and immediately compatible. I'm not new to these kinds of controller mods, either. I mean, I built this big dumb beast a few years ago, along with a portable PS1, portable PS2, a GBA with bigger backlit screen, and a portable NES.

*I'm only aware of ONE game on the PSX that actually requires analog sticks, that being Ape Escape. Pretty much every other game works perfectly on a D-pad. Even games that could use the analog sticks were required by Sony to be fully playable on the D-pad. Ape Escape itself being published internally by Sony and used as a demonstration for their analog sticks. Hypocrites. :lol:

**The 360 controller will also have a switch to switch the USB between the 360 and my PC.

User avatar
Aer Fixus
3DO ZERO USER
Posts: 40
Joined: Thu Aug 21, 2014 10:59 pm

Re: Request: Controller monitor/test program.

Post by Aer Fixus » Mon Feb 15, 2016 7:12 am

Huh. I did not know that you made that portable PC. I've seen the video before. I was planning on attempting some portable system mods, but my standards are way too high for what I would actually be able to accomplish. Power consumption is the biggest issue, really.

I've done some modding myself. One of the bigger mods I've done was swapping a Super Game Boy CPU into a DMG. I've also done some work on the N64 analog stick mod, but never actually finished it. I know there are always dead zone issues with custom joystick solutions. And coming from the Game Boy realm, I know about the common ground issue as well.

My work study position is also repairing video game systems and other historic video game related items. They usually just end in replacing capacitors or a simple mod (every one of our Atari 2600s have dead RF blocks. Every one. The six switch, the four switch, the vader and the jr.). I've also had the pleasure of completely restoring an original Magnavox Odyssey, which was mostly caps but we also did a mod to make it easier for the teachers to hook up during presentation (and to make it less prone to failure in the future). Personally, I want to tackle PCB creation and try to find a better way to permanently repair Virtual Boy systems whose ribbon cables are damaged beyond repair, but that won't be on paid time.

Given what you've posted, I have much more faith in your ability than I had previously and I definitely think you can do this. For a keyboard project, I discovered Mini HDMI. It's really small and has the same number of plugs as HDMI does. I wanted Mini Displayport, but it's almost exclusively Apple, so I couldn't find any female plugs to work with. Maybe even Micro HDMI, which is a bit larger than Mini IIRC, would work for what you want.

I really hope this turns into something cool (and functional). I'll be looking forward to seeing your progress.

User avatar
Kyosho
3DO ZERO USER
Posts: 86
Joined: Fri Jul 05, 2013 1:49 am
Contact:

Re: Request: Controller monitor/test program.

Post by Kyosho » Mon Feb 15, 2016 8:19 am

Oh yeah, the Super GB CPU thing! Still jealous of that. My DMG (backlit, biverted, etc.) unfortunately is having issues. Lines showing up seemingly randomly on the screen. Bad connection to the LCD of that impossible plastic little ribbon cable, I think. Might have cracked. Makes sense, considering how many times I took it apart to rotate the polarization filter, trying to decide which way looked better. Ah well. I might have to get a new DMG, or at least a new motherboard. Totally forgot we talked about the CPU mod in a thread here. You'd think with such a small community, I'd be able to remember who said what, but I'm terrible.

As far as Mini HDMI, I've been considering it. The problem I'm having with that, is the lack of Mini HDMI extension cables. You see, for projects like this, I tend to go the easier, more modular route of using extension cables. Because then you have the female jack AND all the wires you need for soldering to...to whatever you're soldering to. They can take up more room, but if you remove the rubber shielding they're not too much bigger than what you'd get with just buying a connector. And they sure make things easier. I have to admit I'm not good at soldering teeny tiny things, and all I can find are SMD Mini female connectors. It would be a nightmare for me to solder a wire to every tiny pin and make sure none are shorting. I cringe just thinking about it. I know there are people that can do it, but I'm not one of them. There do exist breakout boards for them, but they're even bigger than the normal-sized HDMI slots. I'm curious to hear what you used. Though judging by the CPU mod, your soldering skills are likely way better than mine.

Micro HDMI, though, for some reason has some of the pins swapped around. I'd rather avoid that sort of hassle of trying to keep track of that. Oh, and it too has the tiny pins/lack of extension cables problem for me. Ah well.

Anyway, I'm super jealous of your work study program. That sounds amazing.

Post Reply