84355 packages online


No screenshot available
Short:Experimental VNC server w/ src (RTG/PAL)
Author:Stephane Guillard & Daniel Westerberg
Uploader:Daniel Westerberg (daniel onyxsoft se)
Architecture:ppc-amigaos >= 4.0.0
Download: - View contents

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
- Enabling the use of the mouse of the client in place of the mouse of the
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:

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 and a workbench screen set as
1024x768x16 bit.

To build AmiVNC you need :
- The AmigaOS4 SDK

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

History / News
2.2.1 - Changes by Daniel Westerberg 2009-11-19 - 2010-04-23: (released in
- Fixed Zlib usage after reconnect to the server. (Thought it did that in
- Fixed an update bug causing it to miss about 8 pixels at the top of everything
that was redrawn.
- Fixed incremental logfiles. Logfiles will be appended even after restart
  of the server. Multiple instances will get their own logfiles.
- Incremental passw fail timer.

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
- 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
- Right Ctrl key is translated as RCommand to allow some hotkeys, like
- 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.
- 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
  newlib isn't completely thread-safe. (It crashed)
- Extracted everything related to the input thread and put it in thread.c.

- removed the "fastmode hack" used for 16 bit screenmodes, which was not
  with changed RTG endianness in OS4
- removed unneeded library open code for libauto opened libs. Might help fixing
  'crash on exit' which I unfortunately cant get here...

- Port to AmigaOS4
- Bugfix : mouse events were inserted into input.device with wrong length

- ievents.c code cleanup

- Solved this looongstanding mouse scale bug which showed on wome configs.
  Thanks Denis Spach !
- Mouse support is now more system friendly thus compatible w/ MagicMenu etc.
- Code is 1/2 its previous size, faster and more stable (thanks StormC4)
- Added 68020 versions to the distribution

- Ported to and compiled w/ StormC4/GCC (smaller, faster).
- Added IntuitionBase locking (more stable).
- Reworked mouse event insertion (should remove mouse coord. errors).
- First PPC version (not distributed yet) : faster.
- Added DELAY parameter, to lower CPU needs.

- Added VVA support : BGR233 pixel encoding (enable this with VVA tooltype
  or -a on the command line). Reduces all screen modes to 256 colors, speeding
things a bit.
- Palette refreshing bug fixes for palette screenmodes (planar and chunky).

- Bug fix : password setting with S: in an AFS or PFS filesystem did not work.
  Reason : AmiTCP net.lib (with which I link) strangely alters creat() behavior.
Now using Open().
- Bug fix : when stopping AmiVNC with CTRL-C signal, memory was freed twice.
  Reason : I had not understood what CXBRK() is.

- Added support for 256 color RTG screen modes (at last !). Indeed, when
  I saw working 256 color planar modes I thought it would not be that hard
  to have 256 color chunky modes too ! Now, there should not be that many
  screen modes not supported.

- Added a planar only version for users who don't have Picasso96 nor
  at all. See in the "planar only" directory, and read the html doc !

- Added support for Amiga planar modes (YES, AT LAST !).
- Removed the StopAmiVNC tool. To properly stop AmiVNC,
  feed it with a BREAK C (only when it is waiting for incoming sessions).
  If you use Executive, you can use the nice MUI Commander for this purpose.
- Added icon Tooltypes to set parameters.
- Added user commands to be executed when client logs in or logs out.
- Added log to file, thus silent mode.
- A few bug fixes.
- Documentation update.

- Added the StopAmiVNC tool, to properly stop AmiVNC (only when it is waiting
  incoming sessions).
- Enhanced keyboard support (supporting arrow keys, CONTROL, SHIFT, Lamiga =
Lalt, Ramiga
  = Ralt etc.). Better, but still not perfect.
- Enhanced mouse support (handles ieQualifier). Better, but still not perfect :
in YAM,
  you can drag your messages but when they come onto a drop area, they are
- Allows screen change IF new screen is the same RGB mode. I did not think it
would be
  very useful, but indeed I use it ! Aborts connection when screen changes if
new screen
  mode is different (as said somewhere above, the VNC clients abort when they
receive a
  mServerInitMsg message in the middle of a session, and this message is
necessary to
  change the resolution).
- More command line options :
    -e to force Big Endian flag
    -(r|g|b)<value> to force red | green | blue bit shift on color encoding,
useful if you
     have color trouble. Legal values are 0, 8, 16, 24. Default is -r8 -g16
    -l<size> to limit network packet size when sending initial screen update.
Useful if you
     have too many network collisions. Default is no limit.
- Speed restored under Picasso96 with screen depth = 16 bit pixels. Still slower
  CGFX or with screen depth > 2, because still using ReadPixelArray for
  and sending 4 byte pixels. Will try to fix that.
- A few bug fixes.

- Deals with active screen, not necessarily Workbench (this does not mean you
can open
  a screen in a session !).
- No longer a one shot daemon. You can re-connect. Stop with CTRL-C when the
server is
  waiting for connections (if you break it at another state, you may loose
- Corrected acquisition of raster pointer, which worked under Pic96 but not
under CGFx.
  Thanks to Steffen Haeuser.
- Changed all color encoders to ARGB (32 bit on the wire), and ReadPixelArray().
  is slower, but works with all CGFx and Picasso96 screen modes with depth > 8.
  a side effect, AmiVNC is even smaller than before !
- This version is successfully running on my setup, with both AmiTCP, Genesis or
  Miami as a TCP stack, and Picasso96 or CFGx 4 as RTG system.

0.0.9 :
-  Fixed ObtainSocket() call, works now with Miami
-  Added 24 bit pixel support
-  Added Cybergraphics support
-  Added setting of listening port (5900 may also be used by other softwre)
-  Fixed documentation
-  Still much to be done

0.0.8mt :
-  Initial release on Aminet

Contents of comm/tcp/AmiVNC4.lha
---------- ----------- ------- ------- ------ ---------- ------------ ----------
[unknown]                 6624    9518  69.6% -lh5- c7c6 Mar 13  2008
[unknown]                64080  173523  36.9% -lh5- 7f6f Jan  3  2010 AmiVNC4/AmiVNC4
[unknown]                 1724    2508  68.7% -lh5- a0bf Nov 19  2009 AmiVNC4/
[unknown]                 6221   13905  44.7% -lh5- d584 Apr 23  2010 AmiVNC4/AmiVNC4_cmd_relnotes.txt
[unknown]                34025   80813  42.1% -lh5- 7224 Mar 12  2008 AmiVNC4/AmiVNC4_debug
[unknown]                21635   82624  26.2% -lh5- a19d Nov 19  2009 AmiVNC4/src/amivnc.c
[unknown]                  542    1315  41.2% -lh5- 7409 Nov 18  2009 AmiVNC4/src/amivnc.h
[unknown]                  338     903  37.4% -lh5- c736 Dec 15  2004 AmiVNC4/src/AmiVNC4.sln
[unknown]                  721    1954  36.9% -lh5- d026 Dec 28  2004 AmiVNC4/src/AmiVNC4.vcproj
[unknown]                  499    1583  31.5% -lh5- dca1 Sep  4  2007 AmiVNC4/src/cb.h
[unknown]                 1609    5395  29.8% -lh5- f2e6 Sep  4  2007 AmiVNC4/src/cbio.c
[unknown]                 3748   15097  24.8% -lh5- 0e28 Dec 25  2004 AmiVNC4/src/d3des.c
[unknown]                  787    1737  45.3% -lh5- af6f Aug 31  2001 AmiVNC4/src/d3des.h
[unknown]                 2737   11186  24.5% -lh5- fe07 Nov 18  2009 AmiVNC4/src/ievents.c
[unknown]                  988    3337  29.6% -lh5- a2f6 Aug 28  2006 AmiVNC4/src/keys.h
[unknown]                  292     627  46.6% -lh5- 1336 Nov 19  2009 AmiVNC4/src/Makefile
[unknown]                 8039   27964  28.7% -lh5- 37f0 Nov 19  2009 AmiVNC4/src/rfbproto.h
[unknown]                  849    2146  39.6% -lh5- 6e52 Sep  7  2007 AmiVNC4/src/rules.make
[unknown]                  780    2821  27.6% -lh5- 84b1 Oct 16  2007 AmiVNC4/src/softtimer.c
[unknown]                  568    1256  45.2% -lh5- 5401 Nov 19  2009 AmiVNC4/src/softtimer.h
[unknown]                 3424   11747  29.1% -lh5- a6db Nov 18  2009 AmiVNC4/src/thread.c
[unknown]                 1357    2998  45.3% -lh5- 56e6 Nov 19  2009 AmiVNC4/src/vncauth.c
[unknown]                  762    1427  53.4% -lh5- 5036 Aug 31  2001 AmiVNC4/src/vncauth.h
---------- ----------- ------- ------- ------ ---------- ------------ ----------
 Total        23 files  162349  456384  35.6%            Feb  8 14:44

Aminet © 1992-2023 Urban Müller and the Aminet team. Aminet contact address: <aminetaminet net>