To fix this (in Solaris 2.6 and 7 at least), create the directory /etc/dt/config/ and copy the file /usr/dt/config/Xservers into it. Make sure the file (and the directory it is in) is writable only by root and readable by everybody. Then edit the new /etc/dt/config/Xservers. There's really only one line in it that does anything, at the end starting with :0. Append the following to that line:
-dev /dev/fb0 defclass TrueColor defdepth 24
Mine looks like this:
:0 Local local_uid@console root /usr/openwin/bin/Xsun :0 -nobanner -dev /dev/fb0 defclass TrueColor defdepth 24
On your next login, you will have a 24-bit TrueColor display. To verify this, use /usr/openwin/bin/xwininfo -root, and look at the Depth and Visual Class lines.