OK so you got a really good deal for your Ultra or SunBlade on ebay.
In fact, you got such a good deal that you don't really feel like
spending any extra money on Sun monitor. Rightfully so! THere is no
reason why your perfectly good svga monitors shouldn't work on Sun
computer. However, you might need to do a little bit of tweaking to
make it work. If you are like me, you are a newbie who's never dealt
with Solaris and SPARC hardware before,and it's a little tricky to do
tweaking on a headless machine that you have no experience with.
Let me start by defining a term 'frame buffer'. It's simply Sun-glish
for a video card. I believe that a term frame buffer is in a PC
world used to refer to the memory on the video card. Sun people use
the same word to refer to a video processor chip + its memory.
Please correct me if this is wrong.
Now, first thing you might have noticed when you got your Sun is that
you can't plug your PC monitor in the video port. The PC video port is
called HD15 and the Sun video port is refered to as 13w3 (There is a
possibility that your machine does have a HD15 port, or even both. I will
discuss this case last.)
You, therefore, need HD15 to 13W3 adaptor.If you check ebay you will
see that these adaptors are sold for 5$ a piece. Now I understand that
you are a cheapskate and that's cool cause I am too. The problem is,
those cheap adaptors don't work. Save yourself a lot of trouble and
buy a decent adaptor.You can get decent stuff on ebay, just make sure
you know who you are buying from. Aside from ebay, companies like
www.memoryX.com and Silcon Salvage (google'm up, I don't know their
URL) might be a bit more expensive but you will get a quality part.
If you don't mind getting ripped off, Sun Microsystems is always an option.
Check here for the pinout of the
adaptor.
Once you got your adaptor, you naturaly went right ahead and plugged
in your PC monitor. Unless you have Plugg'n'Play CRT monitor you
didn't get any output on it. The reason for this (which is also the
reason for this HOWTO) is a simple fact that Sun FRAME BUFFERS COME
WITH A DEFAULT OUTPUT RESOLUTION SETTING OF 1152x900 WITH A
VERTICAL REFRESH RATE OF 66HZ. (Why? Just to mess with ya'.
THere is probably some historical reason for it). PC monitors have
no clue how to interpret this signal.
SERIAL PORT CONNECTION AND FRAME BUFFER RECONFIGURATION
You will have to change the frame buffer's settings to something
appropriate for a PC. Since your machine is headless at this point,
in order to change this settings, you will have to access the machine
from the serial port, using another computer. Since you are reading
this, I will assume that you have another PC available. You will
need a special cable called serial null modem cable. I got mine for
9.99$ in the local computer store. The cable that I got is Serial Null
Modem DB9 Female to DB25 Male. For last decade or so, standard
PC serial port is DB9. Sun has two serial ports, DB9 and DB25. Long
story short, get either DB9 to DB9 or DB9 to DB25.
OK, so now you are gonna hook'em up. Make sure to disconnect
keyboards, mouse and monitor from your Sun.
if the Sun finds the keyboard at the port, it will assume the console
is the keyboard and monitor LOCALY connected. If it doesn't see any
keyboard at the port, it will redirect I/O to the serial port A, which is exactly
where you plugged your serial cable. Get details here:
http://www.obsolyte.com/sunFAQ/serial/.
At this point, story will depend on whether you are connecting from
Linux or Windows PC. If you have Linux you will establish a UUCP
connection to the Sun (Unix to Unix protocol). In case of Windows you
will have to get a terminal emulator application.
The one recommanded by the people at
the Sun Support Forum is called Tera Term. I haven't tried it but it's
supposedly used by several universities, so you could say it's
popular. Needless to mention, it's free. Google it up. I will only describe
how to establish connection from your Linux computer. This is LQ after
all, not PCworld.com.
UUCP connection is not the only option, as you can check
here, but
it's the easiest one. (You also might wanna check the LDP's
Remote-Serial-Console-HOWTO.) The syntax for establishing UUCP is
Code:
$ cu -l [device] -s [speed]
For example:
Code:
$cu -l /dev/sttyS0 -s 9600
is most likely what you'll be typing. You will be connected at
this point, and here again we have two possible situations: you either
have OS installed or not. In case you do, you will get a login screen.
Log in, this is where our story continues.
In case you don't you will get into a boot-PROM mode and you will get
an ok prompt. (A boot-PROM is equivalent to PC's BIOS but it's much
more powerfull. It's fair to say that it's almost like another
operating system in there, used for hardware issues.)
This page will lead you through the installation of Solaris. In
addition,
http://docs.sun.com has enough manuals and howtos to
entertain you for a lifetime.
Once you are logged in you wanna become a superuser. That's the only
way to access configuration utilities for frame buffers.
At this point you will have to find out what kind of frame buffer you
have installed. The problem is that every FB has its own configuration
utility. For example PGX32 uses GFXconfig, other PGX chips would use
m64config, Creator would use ffbconfig, etc. THere is a generic
utility, fbconfig, but you might not be able to fine tune every chip
with it. So to find out which one(s) you have, you can do couple of
things. You can see what's in your /etc/fbs/ directory. More elegant way to
get this information in a human readable form is to run the following
script which I dug out on google.
Check man pages of the cu command to find how to get the script into your
Sun.
OK, the rest is pretty easy. Read the man pages of the
appropriate FB configuration utility. Usualy, to check the current
configuration you will type
and to immediatelly change the resolution and refresh rate
to 1024x768 at 70Hz refresh rate (which is
pretty common mode for PC monitors, but check your manual
nevertheless) the syntax goes something like
Code:
fbconfig -res 1024x768x70 now
CASE OF TWO OR MORE FRAME BUFFERS
OK, last thing left for me to discuss is a very common case in which
there are two FB's installed. Ultra 5s and 10s, for example, usually
have onboard buffer at their HD15 port in the PCI slot and in
the other slot (which is refered to as UPA slot) they have something
fancier, like Creator3D or Ellite or something.If you have this
additional FB installed, than this FB is the default output and the
onboard FB (the one at HD15) is essentially disabled. If you don't
have a 13w3 to HD15 adaptor, or if you are not sure the one you have
is working properly, you will need to change the video output to the
onboard buffer, so you can directly connect your monitor. This is done
in the boot-PROM mode. THe boot-PROM mode is accessed from a running
Solaris by typing Control-Break on the PC keyboard (Solaris is not
shutdown but frozen in this case - you can reanimate it by typing
go at the ok prompt). If this doesn't work (it didn't for me) you
can also do a halt command, which shuts down solaris, and puts you
in a boot-Prom mode (ok prompt). First thing to do is to type:
Code:
ok setenv auto-boot? false
this is done so that if we make any changes, the system will not boot
- it will stop at the ok prompt so we can verify that the changes
were made indeed. Now type:
This will give you couple of options under a) or b), each representing
a frame buffer. Choose the one you want and than type:
Code:
ok nvalias FluffyTheBuffer [Control-Y]
This will set alias FluffyTheBuffer for the FB of your choice. Now type
Code:
ok setenv output-device=FluffyTheBuffer
This line will set your primary FB to be FluffyTheBuffer. At this
point, you can plug your monitor in. Finaly, type:
Code:
ok reset-all
ok setenv auto-boot? true
Your FB should now be set, and your monitor should have an output.
That's it from me folks. I hope that's been helpfull. It was for me, cause I got to practice my vim.