Joystick Port

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

By Wlcracks

Hero (585)

Wlcracks's picture

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 or register to post comments

By Wlcracks

Hero (585)

Wlcracks's picture

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.

By zPasi

Champion (499)

zPasi's picture

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.

By NYYRIKKI

Enlighted (6127)

NYYRIKKI's picture

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)

By gdx

Enlighted (6632)

gdx's picture

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.

By Wlcracks

Hero (585)

Wlcracks's picture

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.

By gdx

Enlighted (6632)

gdx's picture

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.

By sd_snatcher

Prophet (3684)

sd_snatcher's picture

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.

By Wlcracks

Hero (585)

Wlcracks's picture

07-03-2019, 16:35

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

By Wlcracks

Hero (585)

Wlcracks's picture

07-03-2019, 17:08

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

By Pentarou

Hero (580)

Pentarou's picture

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