SynergyClient - Client for the remote mouse/keyboard Synergy protocol
Introduction:
Synergy is used to control several computers using one keyboard and mouse,
making all computers appear as one with multiple monitors where you
seamlessly can move the mouse between the screens, enter text and copy/paste
between them.
The Synergy server is the computer which has the keyboard and mouse
attached, the other computers just needs a Synergy client - which this is an
implementation of, for the majority of the Amiga platforms.
It is also compatible with forks of Synergy like Barrier and 'Input Leap'.
Usage:
SynergyClient ?
SERVERHOSTNAME/A,CLIENTNAME/A,SERVERTYPE,TIMEOUTSECONDS/K/N,ONE2ONEMOUSE/S,LOGLEVEL/K/N,QUIET/S:
SERVERHOSTNAME: Synergy server to connect to
CLIENTNAME: Client/screen name as configured on the server.
SERVERTYPE: Either windows, linux or mac - used for mapping the keys.
TIMEOUTSECONDS: How many seconds to wait until retrying a connect. Defaults to
5 to make it retry quickly to avoid waiting a unecessary long
time on connection issue. Set to 0 for the default TCP/IP
stack timeout, which usually is in the order of minutes.
ONE2ONEMOUSE: Use the screen resolution as mouse resolution. On MorphOS
this is required as it reports an incorrect combination of
resolution, spriteResolution and viewResolution, making it
impossible to calculate the mouse resolution.
LOGLEVEL: Default level is 1 - "Normal", with increasing levels of
log output up to the highest level of 7 - "Insanity", with
large amount of output when on client screen combined with
continious output all the time from for example keepalives.
QUIET: Supresses all output except for errors.
Example:
1> SynergyClient 192.168.0.3 UHCAmiga linux
Installation:
Normally, for permanent use, you would add it to your S:Network-Startup
script (or equivalent) like this:
Run >NIL: SynergyClient 192.168.0.3 UHCAmiga linux QUIET
Relevant info:
This client is designed with the intent to keep working even if there are
intermittent issues. So if something goes wrong and it is disconnected from
the server, or if it fails to connect to the server, it will attempt to
reconnect again and again. To make it quit, you have to explicitly send it a
SIGBREAKF_CTRL_C signal either by using the Break command or by pressing
Ctrl-C in the console where it was launched.
Performance tips:
higher than 0, else the TCP/IP stack will be starved by any normal task
taxing the CPU and the delivery of events from the Synergy server will be
delayed.
and running it at a polling rate of 1000Hz, you will effectively DDoS the
Amiga with 1000 Synergy mouse move messages per second when you move the
mouse. This high message rate for mouse moves makes the Amiga side mouse
movement very inefficient - very much CPU required to process such high
message rate.
If a backlog of mouse messages is detected in SynergyClient, it will start
combining them before sending them as mouse move events to input.device to
lessen the load, but it cannot do anything to lessen the load created
simply by the Synergy server sending the Amiga 1000+ Synergy messages per
second.
If you are experiencing issues with this, the only way to improve it
currently (as the Synergy server has no rate limiting), is to lower the
mouse polling rate in the OS of the Synergy server. This setting is usually
found in the mouse-supplied configuration software.
Known issues caused by various software and hardware limitations:
AmigaOS unless you have AmigaOS 3.2 or newer, where input.device received
support for the IND_ADDEVENT command.
The most common symptom from this is that you cannot click on links in
IBrowse.
mouse events will be generated as if you were using a regular mouse on the
Amiga (IECLASS_RAWMOUSE events with IEQUALIFIER_RELATIVEMOUSE set).
However, if you use the Synergy mode where you can seamlessly move the
mouse pointer between screens, absolute position mouse events will be
generated (IECLASS_POINTERPOS events).
In general, this is not a common issue, but some software can have problems
with it. If you are experiencing issues where software is not reacting as
intended to mouse movement, try locking Synergy to that screen and see if
it helps. If it helps, please report to the author of that software that
it has issues with absolute position mouse events.
backslash key ("|") with a specific key code assigned, like the Amiga
keyboards have, disregarding layout. The PC-style keyboards instead only
have the right international key, similar to the Amiga keyboard right
international key, but on the PC-style keyboard this key travels around -
in some cases it is left of backspace or between backspace and enter,
acting as backslash key ("|"), in other cases it is left of enter acting
as right international key, as on the Amiga.
The problem with this is that there is one key missing on the PC-style
keyboard.
SynergyClient tries to solve this by querying the system default keymap on
the Amiga to see if either the backslash or right international key
can be replaced by other keys on the keyboard and then map the server side
travelling right international key to the one that can't be replaced.
This works fine in the majority of cases, the exception being the Swiss
keymaps, where there is no mapping for "$" anywhere else on the keyboard
apart from the right international key and at the same time, the backslash
key cannot be replaced either. In this case, the backslash key is mapped
as there are more non-replaceable strings generated by that key.
The solution in such cases is to modify the keymap on the Amiga so one of
the backslash (0x0D) or right international (0x2B) keys can be replaced by
other keys or key combinations.
keys are the left variant. For cmd which maps to the Amiga key this is a
problem as left and right makes a big difference, so a mapping from F12 to
the right Amiga key has been added as a workaround.
text/plain
This content has been proxied by September (ba2dc).