Slowing mouse movement

A forum for anything about the STEem Engine STE emulator, comments, problems, bug reports etc. The current version is v4.0.2. All support queries should be posted on the SourceForge site.

Moderators: Mug UK, Steem Authors, Moderator Team

Post Reply
stephen22
Atariator
Atariator
Posts: 22
Joined: Thu Jun 09, 2011 3:25 pm

Slowing mouse movement

Post by stephen22 »

This seems to be done by sending messages to the ikbd. $08 for relative position and $0B followed by 2 signed bytes specifying number of pulses between messages in horizontal and vertical directions. Sending $0B 08 08 instead of $0B 02 02 makes no difference to the mouse speed. Can anybody tell me if this just hasn't been implemented in Steem, or explain how I've misunderstood?
ThorstenOtto
Atari God
Atari God
Posts: 1218
Joined: Sun Aug 03, 2014 5:54 pm

Re: Slowing mouse movement

Post by ThorstenOtto »

I guess that's not implemented in Steem. Does not make much sense IMHO, since the host's mouse will already have done such scaling, and report mouse movements accordingly.
TomH
Atari User
Atari User
Posts: 40
Joined: Fri Mar 08, 2019 3:47 pm

Re: Slowing mouse movement

Post by TomH »

$0b sets a movement threshold. It doesn't set the number of pulses needed for a change in position, it sets the minimum distance the mouse must have moved before a message is delivered. The message will still communicate the full movement.

So e.g. if you set the threshold to '2' then you guarantee that communicated movements will always be at least 2 pixels. But nothing is divided or in any other way reduced. All you've really done is make the movement more jumpy.

What you'd ideally have is an equivalent of $0c that works in relative mouse mode, but I don't think there is one. If you suspect your emulator is inaccurate, you might give it a try anyway and cross your fingers but it's not actually meant to work.

EDIT: actually, I think Steem uses a full hardware emulation of the HD6301V1 microcontroller, using its original ROM. The actual developers could probably speak more to that, I'm just an observer. But if so then there's not really any meaningful sense in which it can implement or not implement specific parts of the IKbd protocol. It could be feeding the HD6301V1 incorrectly, or emulating it incorrectly, but it's unlikely.
stephen22
Atariator
Atariator
Posts: 22
Joined: Thu Jun 09, 2011 3:25 pm

Re: Slowing mouse movement

Post by stephen22 »

Thanks that's very helpful (your clarification, not necessarily the $0B process, which as you suggest seems a bit pointless.) I guess I'll have to rewrite the interrupt server, using a double size "screen" then halving the coordinates to place the mouse.
Post Reply

Return to “Steem”