[ Download .zip-ed executable and sources | Browse the source ]

VNCDOS


Purposes: VNC client for DOS.

Release: Current release is 0.4 (2005-04-14) And some older releases, convolution of VT52VNC (0.1, 0.2, 0.3).

Features: Connection or disconnection to VNC servers over any supported packet driver. When connected it is possible to type and see the results on monochrome graphics screen. The main advantage of the program is able to run on oldest machines with CPU like 8086 and 80286. Also it uses few memory resourses. It really workin on PC/AT-286 with 1M of RAM. The emulation of mouse is implimented. VNC-authetication is fully implemented.

Instrumental: The program was entirely written in C (Turbo C++ v1.0). The WATTCP stack library was used.

Inspirations: This client was inspired by VT52DOS project. Most of the code was rewriten.

Licence: Public-domain.

INSTALLATION


To install just unpack vncdos.exe. After that it can be used as a usual WATTCP program. To work properly with packet driver the WATTCP.CFG file or correctly set of environment variables are needed. WATTCP.CFG usually contains some data, check the file and enter correct values for you.

Example:

my_ip=192.168.76.78 
netmask=255.255.255.0 
gateway=192.168.76.77 
nameserver=192.168.76.77

Example of PPPD for DOS. Automatic generated WATTCP.CFG can be used with PPPD. I use DOSPPP06 and so it works. Scripts examples (main PPP script is GO.BAT):

GO.BAT:
  pppd.exe file connect.opt
  call ip-up.bat
  echo # make auto >wattcp.cfg
  echo my_ip=%myip% >>wattcp.cfg
  echo netmask=%netmask% >>wattcp.cfg
  echo gateway=%remip% >>wattcp.cfg
  echo nameserver=YOUR_NAMESERVER_UP >>wattcp.cfg

CONNECT.OPT:
  COM1
  57600
  modem
  crtscts
  asyncmap 0
  connect "chat -f ppp.scr"
  user "USERNAME"
  passwd "PASSWORD"

PPP.SCR:
  ECHO ON
  ABORT BUSY
  ABORT 'NO CARRIER'
  '' ATZ
  OK ATD######PHONE NUMBER######
  TIMEOUT 120
  CONNECT

Well, you can connect direct by serial cable with apropriate installed PPPD on another host. This way you can provide another CONNECT.OPT file:

CONNECT.OPT:
  COM1
  57600
  local
  crtscts

That's all.

USAGE


To start the program you should firstly run the packet driver as described above. Check it in the memory. Then run the program with parameter of another host name with the VNC server started:

 	C:\> VNCDOS.EXE SERVER.AT.REAL.COM

By default the program connects to VNC-display 1. To connect to other display specify the port number (the port number for display 0 is 5900, for display 1 is 5901, etc..). For example, this command will connect to display number 9:

 	C:\> VNCDOS.EXE SERVER.AT.REAL.COM 5909

If you not able to connect then check packet driver existense, host names, utilized ports. Also you should set 8 bits-per-pixel or true color depth in your VNC server. This program refreshes only 640x480 screen area and if the server provide better resolution you will see only left top 640x480 area of your desktop.

Exit key. The main exit key is ALT-ESC. Therefore this key can not be uses in remotely started program :(

Mouse emulation. To activate mouse emulation press ALT-~. Then you can move the pointer with keyboard arrows. Pressing of '1' or '2' or '3' mean clicking the virtual mouse buttons 1, 2 or 3. To hold buttons you should press SHIFT-1, SHIFT-2 or SHIFT-3. To leave the emulation mode just press any non-mouse-emulated key, for example ENTER, ALT-~ or ESC.

COMPILING


To compile the souces you need 'make' tool of Borland toolset. C-compiler and linker are necessary as well. Check 'makefile' and set correct paths to the programs before start compilation. You should be familiar with compilers to do this and I can not explain more. Some optimization options like '-a' leads to non-working executable. You can play with #pragma's and other magic to create the working one. Also you can try to compile with another memory model than SMALL.

CONTACTS


With any suggestions you can contact with me, Arcady Antipin.

Last updated: 2005-07-25