About VNC
---------
VNC is a truly thin client protocol which enables the use of one computer
(the server) from another (the client), by :
- Enabling remote view of the server screen in a window on the client screen
- Enabling the use of the keyboard of the client in place of the keyboard of the
server
- Enabling the use of the mouse of the client in place of the mouse of the
server
More can be found in the provided HTML doc file.
About AmiVNC
------------
AmiVNC is an experimental VNC server for the Amiga.
Visit Stephane's homepage for more information: http://s.guillard.free.fr
Requirements
------------
To run AmiVNC you need :
- An AmigaOS4 computer
- any native planar Amiga screenmode (PAL, NTSC, AGA etc.)
or 15, 16, 24 or 32 bit RTG mode (CGFX or Picasso96)
- a TCP-IP stack (AmiTCP or Miami(dx) or RoadShow or any bsdsocket.library
compliant stack),
- enough free ram to hold a copy of the Workbench screen,
- a computer with a VNC Client (Mac, Unix or Linux box, PC, Amiga).
Myself, I use an older VNC client for Windows, which can be found at
http://s.guillard.free.fr/OS4/vncviewer.zip and a workbench screen set
as 1024x768x16 bit.
To build AmiVNC you need :
- The AmigaOS4 SDK
Usage
-----
AmiVNC4 should be used from the shell. It can be started without arguments,
but first you need to set a password, like this:
AmiVNC4 -pMyPassWord
To get some usage information, enter the following in a shell:
AmiVNC4 -h
AmiVNC4 can also be started using the icon from Workbench.
For more information, visit http://s.guillard.free.fr/AmiVNC/AmiVNC.htm
History / News
--------------
2.2.0 - Changes by Daniel Westerberg 2008-03-14 - 2009-11-19:
- Added Zlib support.
- Enable the use of Workbench tooltypes so AmiVNC4 can be started from
Workbench.
- Fixed a bug in the change-scanning code which speed up the scanning and
responsivness a lot.
- Added a delay when password fails to prevent bots from brute-forcing.
- Now defaults to not using CopyRect, only Hextile.
- Added a switch to enable CopyRect.
2.1.1 - Changes by Daniel Westerberg 2007-10-16 - 2008-03-13:
- Fixed the crash of both AmiVNC and clients when a screen height was not
dividable by the tile size. If screens are not a multiple of 32x32 pixels the
last right and/or bottom pixels will not be updated. This problem shows on for
example a 1680x1050 wide-screen.
2.1.0 - Changes by Daniel Westerberg 2006-08-24 - 2007-10-16:
- Clipboard implemented. Only works with RAmiga+c or x, (RCtrl+c or x on the
client).
- Right Ctrl key is translated as RCommand to allow some hotkeys, like
cut'n'paste.
- Both left and right Ctrl together translates as LCommand.
- Home/End/etc. uses proper OS4 codes instead of becoming shift+numpad.
- Numpad events get the NUMERICPAD qualifier instead of LSHIFT.
- Added F11 & F12 and Meta-key as LCommand.
- Scroll wheel supported.
- Mouse buttons side and extra supported.
- Support for CopyRect for horizontal repetitiv patterns and scrolling of
gfx downwards.
- Support for Hextile in the simplest way: one-color tiles or raw tiles.
- Automatically switches to 8-bit BGR233 if the client requests that.
- Added switch to force RAW encoding.
- Added switch to enable RAWMOUSE events alternating with NEWPOINTERPOS
to allow some menues to work better.
- Added help with -h option.
Internal:
- Small optimization: tiles can be flatter than XDC_TILE if not all of
it has changed.
- Error-checking for all recv()s in the child process.
- Error tolerance in send() and recv(): 10 consecutive errors allowed
before disconnect.
- SoftTimer used instead of Delay() in the main loop. Allows for periodic
check instead of delayed check. It includes a throttle control if the
period is too short for the CPU.
- Replaced all malloc/free/fopen/fprintf for AllocVec/FreeVec/FOpen/FPrintf
since
newlib isn't completely thread-safe. (It crashed)
- Extracted everything related to the input thread and put it in thread.c.
2.0.2
- removed the "fastmode hack" used for 16 bit screenmodes, which was not
compatible
with changed RTG endianness in OS4
2.0.1
- removed unneeded library open code for libauto opened libs. Might help fixing
the
'crash on exit' which I unfortunately cant get here...
2.0.0
- Port to AmigaOS4
- Bugfix : mouse events were inserted into input.device with wrong length
| |