Originally posted by: Kosmic StarDust
Asuming the game sends the full 16 bits to the controller, the four "key" bits at the end would automatically identify them as SNES controller, would it not? And NES controller with no inputs activated and an SNES controller with no inputs activated would appear different to the software? I believe the SNES controller pulls low after the 16th bit, and I forget if official NES controllers remain high or pull low after the 8th bit, but there's no change after bit 16 either way. What I'm saying is you can detect the controller type without confusing the user with a ton of menus.
Unsure about how the Virtual Boy controller bits are keyed, but there can't be that many floating about...
Thank you for starting my morning off with a technical problem for a change. It has been weeks it feels like!
I had to go back and look things over ago as it has been a while (fired up the old controller reading program), and you are correct, that would work.
Except, with the dual NES option you have to turn the P-1 d-pad on its side. That throws everything off.
SNES and VB can be condensed for main play, but they have different functions in the editor since the SNES controller has two less buttons. The VB controller allows for single pixel movement with the right d-pad for precision placement, whereas the SNES controller loses this option. Not that many people ended up using it when testing, but hey, it was there so I built it in.
The only buttons that stay uniform across all three options are the Select and Start buttons, so I made use of those for the initial menus. Now, I could force the player the use certain buttons to auto-select their controller such as:
Dual NES: P2 Select (P2 read 3)
SNES: A (P1 read 9)
VB: A (P1 read 13)
But then things just start getting downright confusing
. Not to mention that title screen would look horrid! I think that I might build it in as a quick select option, but you the user is going to have to know that it is there, particularly since SNES A matches up with VB right-d-pad Right (overlap) whereas VB A cannot be pressed on a SNES controller. I'm going to get enough questions as it is about things with three options, let alone overlapping auto-select configurations.
Thanks for the suggestion!
Edit: The current menu is pretty straightforward too. You just press select once to get to the controller option and then change it on the fly with the d-pad. Then move on to either Editor or back up to Play. No separate screens, and it just takes a quick second.
Double edit: Those reads above may be off, but you get the idea.