Bert sent this on the VNC list quite a while ago. It works well for me.
-----Original Message----- From: Bert Freudenberg [mailto:bert@isgnw.CS.Uni-Magdeburg.De] Sent: Friday, March 17, 2000 3:57 AM To: Pennell, David Subject: Re: Display depth on Solaris w/ VNC
(I'm CCing to PWS list because these guys might be interested in VNC, too. Look at the bottom, Swikiers)
On Thu, 16 Mar 2000, David Pennell wrote:
If I start up VNC on Solaris 2.7 with the default vncserver script (depth=8), I get a message from the Squeak VM complaining about not being able to support "class TrueColor" [nb - this is an X class, not a Squeak class] on a display depth of 8. I changed the vncserver to depth 16, one of the two depths that are supported for TrueColor in sqXWindow.c and all works, but still rather slowly (100 Mbps between a 300 MHz NT box and a 4xx MHz Ultra 60).
Squeak's "Display depth" indicates 8 bits. So - if the image is using 8 bits, where did the TrueColor come from in the VM and how can I get everybody back to 8 bits and make things a little snappier?
VNC uses a rather unusual 8-bit TrueColor visual by default, while the Unix VM expects an PseudoColor visual in 8 bit. This is a known issue (http://www.uk.research.att.com/vnc/xvnc.html):
Option -cc n Sets the colour Visual class used by the server. Some X applications don't cope too well with the TrueColor visual normally used by an 8-bit-deep Xvnc. You can make the server use a PseudoColor visual by specifying -cc 3.
I use the following for 8/15 bit Squeak servers:
vncserver -geometry 800x600 -depth 8 -cc 3 -dontdisconnect vncserver -geometry 800x600 -depth 15 -pixelformat RGB555 -dontdisconnect
15 bits is faster than 16 because no bit-shifting is necessary (Squeak actually uses 15 bits even if it claims to use 16). Look for stHasSameRGBMask16 in sqXWindow.c ...
Also, with a VNC server at :1 start Squeak with "-xshm -display unix:1" options to make it faster.
Using all this I even can squeak remotely over an ISDN line with SSH encryption. That way I can fully operate my Swiki servers from home :-)
All in all, the Squeak/VNC combination is so powerful someone should implement the RFB protocol in Squeak directly - that way Mac/Win Squeakers could use it to full advantage, too (Mac/Win VNC servers only provide the local desktop remotely, while XVNC creates a real virtual desk which is independend of the local display).
-Bert-
-----Original Message----- From: Jörn Eyrich [mailto:Joern.Eyrich@brokat.com] Sent: Monday, April 30, 2001 6:38 AM To: squeak@cs.uiuc.edu Subject: Re: runing squeak at sun Solaris 8.0
TECHIN.A.KANG@mail.sprint.com wrote:
- running squeak from webpage connect to server using VNC, got the
following error: Visual class TrueColor is not supported at depth 8
have you tried to start the vnc server with a higher display depth? use "-depth 32" (or 16, or 24) I don't know what this does to performance, however
Joern
squeak-dev@lists.squeakfoundation.org