Joystick Port

Page 1/14
| 2 | 3 | 4 | 5 | 6

Par Wlcracks

Hero (572)

Portrait de Wlcracks

05-03-2019, 07:47

I always assumed the joystick pins should be connected to ground.
This wiki shows to the output??? Why is this done?
https://www.msx.org/wiki/General_Purpose_port

In the programming part its correct to my knowledge.
https://www.msx.org/wiki/Joystick_control

!login ou Inscrivez-vous pour poster

Par Wlcracks

Hero (572)

Portrait de Wlcracks

05-03-2019, 14:48

meh its wrong to, common should be to 9 gnd.
If the out pin 8 is high, joystick would fail reading. Only when out pin 8 is low it works, but still wierd way togo.

Par zPasi

Champion (499)

Portrait de zPasi

05-03-2019, 17:53

Wlcracks wrote:

meh its wrong to, common should be to 9 gnd.
If the out pin 8 is high, joystick would fail reading. Only when out pin 8 is low it works, but still wierd way togo.

On MSX, you don't connect joystick switches to ground, but to the OUT pin (8). OUT is normally low, so this works.

I don't know exactly why it is so, maybe that has something to do with other devices that may require two-way communication.

Par NYYRIKKI

Enlighted (6088)

Portrait de NYYRIKKI

05-03-2019, 18:12

If you read ie. MSX2 Techical Handbook chapter 5.2 (=Official documentation) you will see that the joystick is supposed to be connected to OUTPUT (Pin 8, like "Atari compatibles" do) instead of using directly GND. (pin 9)

Par gdx

Enlighted (6421)

Portrait de gdx

06-03-2019, 00:15

Yes the joystick is supposed to be connected to pin 8 to be Atari compatible but we can also connect it to GND. Anyway, only joysticks with one button can be Atari compatible.

Par Wlcracks

Hero (572)

Portrait de Wlcracks

06-03-2019, 15:50

Thanks all.
Not sure if the reason PIN8 = common why they didnt put the GND on pin 8. And OUT on pin 9. I guess we never know.

Par gdx

Enlighted (6421)

Portrait de gdx

07-03-2019, 01:13

GND is quite different from PIN8. We can use either one or the other for joystick but Pin 8 must not be connected to ground.

Par sd_snatcher

Prophet (3675)

Portrait de sd_snatcher

07-03-2019, 13:56

The joystick common pin must be connected to the pin-8. It was designed this way to allow for detection and interoperability with other devices. If wired incorrectly, detection will fail. For example, GTPAD will incorrectly detect such a badly wired joystick as a mouse or trackball depending on the combination of buttons being pressed.

Remember: those are not only joystick ports. The standard calls then “General Purpose I/O ports” for a reason.

Read this article for more information.

You can confirm the problem with an incorrectly wired joystick by using JoyTest.

Par Wlcracks

Hero (572)

Portrait de Wlcracks

07-03-2019, 16:35

Cool thanks! Still strange, an simple serial resistor had made it somewhat more robust against shorts.

Par Wlcracks

Hero (572)

Portrait de Wlcracks

07-03-2019, 17:08

Anyone have a link for JoyTest ? The links i found are dead.

Par Pentarou

Hero (551)

Portrait de Pentarou

07-03-2019, 18:33

sd_snatcher's page: http://frs.badcoffee.info/tools.html
You can also find it in latest sofarun release.

Page 1/14
| 2 | 3 | 4 | 5 | 6