Original SAM MOUSE interface can't support wheel mouse (no free pins on mouse 
connector). But my SAM MOUSE TURBO support mouse with PS/2 protocol, 5 buttons 
and wheel. All this signals is connect and can be used. But firmware for my 
CPLD use only standard SAM MOUSE communication.

Is possible modify firmware and add wheel status:

Original SAM MOUSE communication protocol
-----------------------------------------------------------------
if you read 9x port #FFFE then CPU read :
1) keyboard state
2) keyboard state
3) mouse buttons (three buttons + 1 bit is unused/reserved)
4) X-AXIS counter (high 4 bits)
5) X-AXIS counter (middle 4 bits)
6) X-AXIS counter (low 4 bits)
7) Y-AXIS counter (high 4 bits)
8) Y-AXIS counter (middle 4 bits)
9) Y-AXIS counter (low 4 bits)

All this 9 ports must be read during time 100ys. Theoretically I can add status 
with wheel counter or 4th and 5th mouse buttons. This is new protocol idea:
if you read 10x port #FFFE then CPU read :
1) keyboard state
2) keyboard state
3) mouse buttons (three buttons + 1 bit is unused/reserved)
4) X-AXIS counter (high 4 bits)
5) X-AXIS counter (middle 4 bits)
6) X-AXIS counter (low 4 bits)
7) Y-AXIS counter (high 4 bits)
8) Y-AXIS counter (middle 4 bits)
9) Y-AXIS counter (low 4 bits)
10) mouse wheel counter (high 4 bits)
11) mouse wheel counter (low 4 bits)
This protocol return 8bit counter for wheel ( -128 to 127 )

I don't know if is free space in CPLD chip for this counter. Practically use 
SAM MOUSE too big mouse counters for X and Y axis. Each counter is 12bit value 
(2048 steps). I can reduce counters to 8bit as in KEMPSTON MOUSE for ZX 
Spectrum (256 steps). High 4 bits of X and Y axis can be unused (only hardware 
emulated for backward compatibility). After this optimalisation will protocol 
same (11 times read FFFE) and free space in CPLD can be used for wheel counter. 
And up to 5 mouse buttons can be readable on 12th reading of FFFE. :)

Or exist next way :
connect K-MOUSE TURBO interface to SAM COUPE. This is mouse interface for ZX 
Spectrum, but is compatible with SAM COUPE ports. Can be used original ZX 
software with mouse support or rewrited mouse drivers in SAM COUPE software for 
K-MOUSE support. :)

Small info about mouse support on SAM COUPE:
Mouse connector on SAM COUPE back side contain 9 signals DOWN, UP, CTRL, LEFT, 
RIGHT, MOUSE, INTERRUPT, RDMSEL, +5V and GND. Hardware in SAM COUPE (ASIC chip) 
is designed for different mouse communication than are used in original SAM 
MOUSE and emulators. Original idea about mouse communication use special 
interrupt and return on cursor port direction state (active true directions 
LEFT/RIGHT/UP/DOWN after each change of mouse position). This communicaion can 
generate multiple interrupt in very small time range and very slowdown CPU. 
Then hardware designers make new mouse interface (original SAM MOUSE) using 
only 4 bit communications and usable also in software with perfect timing (no 
need more CPU time, mouse driver can be call in long intervals)

Here is photo of Czech old mouse prototype - low price mouse interface based on 
original communication idea (multiple interrupt):
http://velesoft.speccy.cz/samcoupe/sammouse/sammouse-original/sammouse_new_prototype_top.jpg
http://velesoft.speccy.cz/samcoupe/sammouse/sammouse-original/sammouse_new_prototype_bottom.jpg

My SAM MOUSE TURBO can work as this mouse idea if I rewrite firmware. But not 
exist software for it :(

VELESOFT


  ----- Original Message ----- 
  From: Leszek Chmielewski 
  To: [email protected] 
  Sent: Friday, June 10, 2011 9:35 AM
  Subject: Re: ST Mice


  Where did Velesoft say it will not work? Velesoft only said, the mouse wheel 
will not work, which is correct. I said USB (PS/2 Protocol) mouse will work 
with this converter. This is correct too.
  USB mouse with PS/2 support will work, The wheel status reading will not 
work. Check the pinouts of Mouse connector on SAM. It has up, down, left, right 
annd status of two buttons. No additional data lines for readind wheel status. 
You are mixing up two problems, so both answers are correct.
  There is only one solution: construction of a Mouse interface with direction 
and button reading to the mouse input port, and SAM expansion bus interface for 
non-standard reading of additional buttons and wheels.




  2011/6/10 Roger Jowett <[email protected]>

    you say it will velesoft says it wont?
    im getting a bit spammed misself here?!


    On 06/06/2011, Leszek Chmielewski <[email protected]> wrote:
    > 2011/6/6 <[email protected]>
    >
    >> Here's something interesting...
    >>
    >> An Atari ST mouse to usb mouse connector. In theory, this should also 
work
    >> with the SAM mouse interface, should it not? So we could use a modern usb
    >> mouse with the old MGT mouse interface?
    >>
    >>
    >> 
http://cgi.ebay.co.uk/Atari-ST-USB-Mouse-Adapter-Brand-New-/120732726502?pt=UK_VideoGames_VideoGameAccessories_VideoGameAccessories_JN&hash=item1c1c3b34e6#ht_2467wt_1139
    >>
    >> I suppose the other questions, which others will know better, are whether
    >> or not it would support a)optical mice and b)perhaps even wireless? 
Though
    >> I
    >> would presume there are other issues regarding power from the USB port,
    >> etc,
    >> for wireless and optical that might make it incompatible with the SAM. 
The
    >> item listing seems to imply that it would work with optical and wireless
    >> mice on the ST, so who knows?
    >>
    >> An interesting possibility! :-)
    >>
    >> It will work with SAM mouse interface and optical / RF mices without
    > problems, but only if the mice supports PS/2 protocol (sold with a PS/2
    > adapter). Pure USB mices are not supported.
    >


Reply via email to