Hi, i wanted to ask what happens in a real NES joypad when both up/down or left/right are pressed.
Does it return the two bits or is it exclusive (i don't think so)?.
I know test roms test the bits (like nestress), but to be honest i never liked nestress.
My real NES JoyPads don't let me press both up/down or left/down.
I don't know and i don't have the hardware to test it.
I ask it to be accurate as possible in my directInput routine since the keyboard let you press 2 keys at a time.
Thanks.
From what I understand -- and this is based on what I've seen in emulators and what I remember reading on this forum somewhere -- pressing both up+down simultaneously or left+right simultaneously does in fact set both the bits (u=1 and d=1, l=1 and r=1, etc.).
So from a hardware perspective it works exactly like you think it would -- but obviously, the physical (not electrical) design of the controller doesn't let this happen.
While from a software (NES/game) perspective, having both of these bits set simultaneously often causes very bizarre and screwed up behaviour in some titles. If I remember right, some games begin acting bizarrely, others lock up/crash, things like that. Meaning, the games are programmed/designed with the limitations of the physical controller in mind.
Overall I would not recommend enabling such capability in your emulator. Yes, there are some existing emus like I mentioned which let you do this (Nestopia is one -- see Options -> Input -> Allow up/down & left/right simultaneously), but it's really not something you should allow. The feature in Nestopia defaults to OFF, for obvious reasons.
Since you're wondering about keyboard input and how to solve the situation where someone presses, say, Up and Down arrows at the same time and how that should translate in your emulator: its a matter of opinion. You can either only honour the most-recent-pressed key -- e.g. player pushes Up and Down simultaneously (one or the other gets seen by the underlying HID or input layer first however) -- let's say Down gets seen first, in which case Up comes 2nd, thus ignore the fact that Down was pressed first. Alternately you can reverse the logic so that the first keypress has precedence. Your decision.
It just returns the bits as they are, the up and down pressed.
koitsu wrote:
So from a hardware perspective it works exactly like you think it would -- but obviously, the physical (not electrical) design of the controller doesn't let this happen.
Some joypads from clones (Dendy for example) allow to press UDLR at same time.
koitsu wrote:
While from a software (NES/game) perspective, having both of these bits set simultaneously often causes very bizarre and screwed up behaviour in some titles. If I remember right, some games begin acting bizarrely, others lock up/crash, things like that. Meaning, the games are programmed/designed with the limitations of the physical controller in mind.
Battle Toads for example.
Commando is fun to press left/right and up/down.
Terribly programmed game, TERRIBLE.
thnxs!!
I remember when i was child i had a Dendy as you call it (here we called it "Family Game " in Argentina, Latin America) and it was possible to press up/down, left/right. Even it was possible to press all directions at once if my memory doesn't fail.
I remember to have a Pirated copy of TMNTurtles 2, and was funny becouse when you made the trick, the turtle walked "inside" the fire, you could hit your enemies and they couldn't hit you!! haha!! The old times...
Now i got an very and old, but a real NES.
I wanted to know if it was a Dendy thing or a "NES" thing. All clear now.
I seem to remember being able to press more than two directions at once on an SN ProPad, at least according to the input test in Kirby's Avalanche. That controller was even licensed by Nintendo.
Quote:
I seem to remember being able to press more than two directions at once on an SN ProPad, at least according to the input test in Kirby's Avalanche. That controller was even licensed by Nintendo.
And this controller was licensed by nintendo?? no.. you don't say
I've done it on an extremely worn down NES pad, worn to the point where the pivot for the D-pad has been reduced to nothing but a slight lump.
zelda 2 wigs out as well. as a matter of fact i do believe you could not do the glitch on the GC version and console versions of the game. i might be wrong though but still a useless opinion.
although there are various differences with how the game is handled when playing on the cube and VC.
The Gamecube version is an emulator, and can filter joypad input. The underlying game will probably still screw up with bad joystick input.