Joystick Port

Page 8/14
1 | 2 | 3 | 4 | 5 | 6 | 7 | | 9 | 10 | 11 | 12 | 13

By sd_snatcher

Prophet (3594)

sd_snatcher's picture

21-08-2022, 02:52

Danjovic wrote:

The GND pin on the Atari joystick port is 8, whilst on the MSX Joystick port the GND pin is at pin 9.
Luckily pin 8 on the MSX port (which was designed to provide pulses to the paddles) is initialized at LOW level by BIOS, which allowed the MSX to use Atari joysticks that were pretty common at the time.

It wasn't luck, it was by design, as it's shown on the official MSX joystick schematics:

Quote:

Nevertheless, as pointed by GDX, use the Pulse pin as GND is neither a bad nor an unreliable method, this is just a method.

The pin-8 is not GND. On an official MSX joystick, this pin acts as a row selector for the switches of that row, exactly like the MSX keyboard design. IOW, the normal joystick buttons/directions must not respond when the pin-8 is set to HIGH.

Quote:

Nevertheless, as pointed by GDX, use the Pulse pin as GND is neither a bad nor an unreliable method, this is just a method.

All official devices for the MSX General Purpose port use the pin-9 for the GND when needed. The pin-8 must not be used for that.

By mohai

Paladin (979)

mohai's picture

21-08-2022, 23:01

I agree.
IIRC, MSX standard states that pin 9 is the common pin to connect when a button is pressed but , when reading joysticks ports, pin 8 should be kept low, to keep compatibility with Atari joysticks.

By gdx

Enlighted (5834)

gdx's picture

22-08-2022, 02:13

sd_snatcher wrote:

The pin-8 is not GND. On an official MSX joystick, this pin acts as a row selector for the switches of that row, exactly like the MSX keyboard design. IOW, the normal joystick buttons/directions must not respond when the pin-8 is set to HIGH.

We've talked about it several times and you keep repeating the same thing. Despite all the arguments we give. And yet ASCII has always said that the MSX joystick ports are Atari compatible.

Pin 8 was added on MSX to be able to make more advanced peripherals. And again, yes, the GND is not the same thing and they should never be tied together. This is the rule of the standard to follow imperatively.

By gflorez

Resident (55)

gflorez's picture

22-08-2022, 07:48

MSX joystick ports are Atari compatible on very limited conditions, not a real compatibility without adapters. The main difference is +5v on pin 5.

I would say the contrary.... Atari joysticks are compatible with MSX joystick ports, because they usually don't use pin 5. There is no multi-fire circuit possibility, and only one fire button can work.

On the other side, all the directions and buttons pins are input signals, while pin 8 is an output signal, necessary to trigger the Neos chip inside every MSX mouse.

By gdx

Enlighted (5834)

gdx's picture

22-08-2022, 09:46

This is only joysticks for Atari VCS/2600 that are compatible (called joystick type I), but I agree this example is not relevant in fact.

By sd_snatcher

Prophet (3594)

sd_snatcher's picture

22-08-2022, 17:34

mohai wrote:

I agree.
IIRC, MSX standard states that pin 9 is the common pin to connect when a button is pressed but , when reading joysticks ports, pin 8 should be kept low, to keep compatibility with Atari joysticks.

If you check the standard schematics above your reply, it clearly shows that the common pin for joysticks must be the pin-8, not the pin-9. Wink

gdx wrote:

We've talked about it several times and you keep repeating the same thing. Despite all the arguments we give. And yet ASCII has always said that the MSX joystick ports are Atari compatible.

Maybe there's a problem with interpretation of what was said? The MSX General Purpose ports are not broadly "Atari compatible". If you compare the pinout chart this is evident.

The Vcc and GND are placed on different pins, the Atari has no 2nd button, and the MSX is a fully digital interface, whereas the Atari port has analog inputs for paddles.

What was said is that the MSX General Purpose ports are backwards compatible with Atari (2600) joysticks. This is very different from stating that the ports are fully Atari compatible (which they aren't).

All of this comes down to: the common pin for both MSX and Atari joysticks must be the pin-8. Joysticks that don't behave like that will not be fully compatible.

By sd_snatcher

Prophet (3594)

sd_snatcher's picture

22-08-2022, 17:50

gflorez wrote:

On the other side, all the directions and buttons pins are input signals, while pin 8 is an output signal, necessary to trigger the Neos chip inside every MSX mouse.

A lot of people tend to forget this, but the pins 6 and 7 are capable of both input and output. Wink

Also, as I explained in the previous post, many other pins are different from the Atari port: Vcc, GND and the analog pins for paddle input.

Except for the joysticks, all other Atari devices for its joystick ports (paddles, driving wheel, keyboard controller, touchpad, light gun, etc) cannot be connected to the MSX, with some of them even having the risk of damaging the machine.

By Danjovic

Champion (320)

Danjovic's picture

23-08-2022, 01:50

sd_snatcher wrote:

Except for the joysticks, all other Atari devices for its joystick ports (paddles, driving wheel, keyboard controller, touchpad, light gun, etc) cannot be connected to the MSX, with some of them even having the risk of damaging the machine.

Sure!! Keypad and paddle controllers when directly connected to the MSX joystick port can cause a short circuit betwenn VCC (5) and GND (9) under certain circumstances, but the racing (steering) controller can be directly connected with no harm (It is just a rotary encoder attached to pins 1, 2 and the fire button at pin 6 ). It would be interesting to patch games like Arkanoid or Galaga to work with it. LOL!

By gdx

Enlighted (5834)

gdx's picture

23-08-2022, 10:07

sd_snatcher wrote:
gdx wrote:

And yet ASCII has always said that the MSX joystick ports are Atari compatible.

Maybe there's a problem with interpretation of what was said? The MSX General Purpose ports are not broadly "Atari compatible". If you compare the pinout chart this is evident.

The Vcc and GND are placed on different pins, the Atari has no 2nd button, and the MSX is a fully digital interface, whereas the Atari port has analog inputs for paddles.

What was said is that the MSX General Purpose ports are backwards compatible with Atari (2600) joysticks. This is very different from stating that the ports are fully Atari compatible (which they aren't).

All of this comes down to: the common pin for both MSX and Atari joysticks must be the pin-8. Joysticks that don't behave like that will not be fully compatible.

You are quoting this for nothing since I said above that this example is not relevant because I meant: "ASCII has always said that the MSX joystick ports are Atari joystick compatible".

But it seems that you are still ignoring the fact that the joystick port inputs are open collector, i.e. the GND can replace pin 8 to make a joystick without any problem.

By sd_snatcher

Prophet (3594)

sd_snatcher's picture

23-08-2022, 20:30

gdx wrote:

You are quoting this for nothing since I said above that this example is not relevant because I meant: "ASCII has always said that the MSX joystick ports are Atari joystick compatible".

I have found nothing like this stated on the official documentation. Would you please share where they stated this?

Otherwise it will be disregarded as just hearsay.

Quote:

But it seems that you are still ignoring the fact that the joystick port inputs are open collector, i.e. the GND can replace pin 8 to make a joystick without any problem.

Nope. It seems that you are ignoring the fact that a dual-state output pin cannot be replaced with a hardwired GND without loss of function.

IOW, replace a bit that can assume 0 or 1 with a hardcoded 0.

Corollary: let's replace /SLTSL on the slot connector with GND too. Probably there will be no loss of function. LOL!

Page 8/14
1 | 2 | 3 | 4 | 5 | 6 | 7 | | 9 | 10 | 11 | 12 | 13