On Sat, 29 Jan 2000, you wrote:

> > A normal pc compatible joystick is an analogue joystick , the pc can
> > read out the
> > position. A msx joystick is a digital joystick , it only gives the
> > direction.
> > This means that the are not exchangeable.
> 
> If I didn't already knew that I wouldn't have asked but had simply searched
> for a PC joystickport pin-layout.

Lighten up, please...
It's not possible for everyone on the list to know how much knowledge of
certain subjects everyone else on the list has. So you were already aware that
PC joysticks are analogue, but how was the poster supposed to know?

> No, I want to know if there is something like ReMouse or (what was the name
> of that italian thing?)... But then for joysticks.

As far as I know, the PC joystick buttons are simply switches, so they could be
connected to MSX easily.

What you would need is a converter for the direction of the stick. It would
have a functionality like this:

-MSX_up    == -strobe && Y_resistance < up_threshold
-MSX_down  == -strobe && Y_resistance > down_threshold
-MSX_left  == -strobe && X_resistance < left_threshold
-MSX_right == -strobe && X_resistance > right_threshold

Here -MSX_up, -MSX_down, -MSX_left and -MSX_right are the input direction
signals for the MSX joystickport. They are "low active" (is this the proper
English?), meaning that they are "0" when pressed and "1" when not pressed.

The -strobe is the strobe signal of the MSX joystickport. On an MSX joystick
this is what the direction and button signals are connected to when a button is
pressed or a direction is chosen.

"==" is "equivalence" and "&&" is "logical and" (C/Java notation).

You could probably use comparators to implement this. The MSX joystick port
supplies 5V and ground, so you can connect 5V ICs to it. You can compare a
voltage that is related to the joystick resistance to a reference voltage that
is related to the threshold.

To find out the right thresholds, you can use pot meters. Once you have found
the right value, you can replace the pot meters by fixed resistors, if you want
to make the converter smaller.

When you get rid of all the negations, the functionality is like this:

MSX_up    == strobe || Y_resistance > up_threshold
MSX_down  == strobe || Y_resistance < down_threshold
MSX_left  == strobe || X_resistance > left_threshold
MSX_right == strobe || X_resistance < right_threshold

"||" is "logical or". For this functionality to be logically equivalent
with the previous one, ">" should be ">=" and "<" should be "<=", but this
doesn't make any difference in this application.

Bye,
                Maarten

****
MSX Mailinglist. To unsubscribe, send an email to [EMAIL PROTECTED] and put
in the body (not subject) "unsubscribe msx [EMAIL PROTECTED]" (without the
quotes :-) Problems? contact [EMAIL PROTECTED]
****

Reply via email to