[comp.unix.sysv386] How to config your vedio subsystem for X386

fangchin@leland.Stanford.EDU (Chin Fang) (03/07/91)

In article <1991Mar6.213907.28719@maverick.ksu.ksu.edu> rrsum@matt.ksu.ksu.edu (Rick Summerhill) writes:
>I am currently using Tom Roell's X386 1.1 with ISC 2.2.1 and have some
>questions:
>
>1.  I get errors from Xlib about too many clients.  I have 32 pty's and
>    32 streams ports, so that is not the problem.  Anyone know why?

I don't have ISC, can't help you on that. But...

>2.  Does anyone have a good 1024x768 configuration for a Sigma Legend card.
>    My monitor will go to 66 Mhz.  Can 1152x900 be used in non-interlaced
>    mode with this monitor configuration?
 
OK.  I think it's time to sweep away some confusing terminologies introduced
by marketing people at monitor manufacturers.  Monitors NEVER support Mhz
which is by definition, million cycles by second. Your monitor, if multi-scan-
ing, will support khz in it's horizontal sync frequnencies, which by definition
is kilo (or thousand) cycle per second.  In the vertical direction, the sync
frequency is always in the order of 10 hz (eg, 15 hz ~ 75 hz, like NEC 4D).

However, if analog type like NEC 2A, only descrete frequencies are supported.
Not a continuous range.  So be careful!

NOTHING in the world of monitors will support MILLION hertz range support sync
frequency!  It's your vedio adapter which MAY support such a driving frequency!
(see below)  Furthermore, it's up to your software driver to see if such a
driving frequency can be utilized or not! 

When we talk about display, it's always NECESSARY to consider three things
together:
(1) your monitor's sync frequency ranges for both horizontal and vertical
(2) your vedio adapter's driving frequency bandwidth (from crystals for ex.)
(3) your software's vedio hardware device driver.

Anyway, I regard this frequently advertised usuage as bad as, or even worse
than using Mhz to denote data transfer rate in hard disk ads.

Hz, named after the German who did quite a lot ground work in EE theory,
SHOULD be used to describe oscillatory phenomenon with fixed frequencies.  
Any other usuage is INCORRECT!

How to determine a good resolution for your monitor?  Please read the following

Definitions  1. screen refresh rate => it's the DRIVING clock frequency divided
                by the product of horizontal frame length and vertical frame
                length.

Elaborations:  Q. what is driving clock frequency?
               A. it's the oscillatory frequency of the crystal(on your 
                  vedio board) employed by your graphics software's vedio 
                  driver.  For instance, if your driver uses 36 Mhz out of
                  25 28 0 40 36 40 45 58 
                  32 36 31 35 50 48 33 65 (all in Mhz, for Sigma Legend)
                  
                  the the driving frequency is 36Mhz. Nothing else.
                  This is the frequency used by the driver to determine
                  how frequent to update (thus refresh) screen image.
                  
               Q. What's frame length for horizontal and vertical directions?
               A. It's the number of clock tics (measured in terms of the
                  driving timing) for your monitor's electron gun to shoot
                  a beam of electrons from left side of the tube to the right
                  side and back.  Similarly, for vertical direction, from   
                  bottom to top and back to bottom.

               Q. Why this has anything to do with resolution?
               A. because it's basics in highschool physics.  So you MUST 
                  understand it! (to answer your son's questions).  Your
                  desired resolution in fact should be called the portion 
                  of frame length that electron beam creates visible image
                  to your eyes!  Any image is created with your eyes's
                  retention and the fast moving electron beam sweeping thru
                  your monitor.  At any instance, there is in fact ONE dot
                  hitting the screen, but due to your eyes retention, you 
                  see a block of image.

               Q. So what does this have anything to do with screen refresh
                  rate?
               A. By definition, one hertz (hz) is one cycle per second.
                  So, if your horizontal frame length takes x tics, ver. frame
                  length takes y tics, then to sweep thru the entire screen,
                  a rectangular area, takes x times y tics.  Since your
                  driving frequency provides say N tics per second by 
                  definition, then obviously your monitor's electron gun(s)
                  can shoot a dot accross the screen and sweep it from left
                  to right and back and from bottom to top and back, which
                  takes total xy tics, N/xy times.  This IS your screen's
                  refresh rate!  Because that's how many times your screen
                  can be updated thus REFRESHED per second!

               Q. Why I have to know this B.S.?
               A. Because anytime you use a refresh rate lower than 60 Hz
                  (in layman's words, sixty times every second), you are
                   trying to demage your eyes! So that you won't be enjoy
                   gif pictures as you may like in the future!!
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
               Q. So how do I get a desired resolution?
               A. Simple! Jut look at your monitor's data sheet, normally
                  part of your users' manual.  Make sure it's type, ie.
                  analoy or multiscaning.  The later is much flexible if
                  not better. THE FOLLOWING DISCUSSION DOES NOT APPLY TO
                  ANALOG TYPE MONITOR!!     

                  Then, use your horizontal max sync frequency, say 55khz
                  try out the clock frequencies listed or detected by 
                  clock.exe. As an example, say for Sigma Legend, there is
                  a 65 Mhz clock oscillatory driving frequency available.
                  And from above assumption, your monitor can sync up to
                  55 Khz in horizontal. To increase max REFRESH rate and
                  at the same time get non-interlaceness, do the following
 
                  Obviously, if your clock cycles only N times per second,
                  and if your monitor electron beam syncs at x times per
                  second, the using the definition of frame length above,
                  you can only have so many horizontal frames per second:
 
                  N/x, in our sample, it would be 65Mhz/55khz=1181 times.

                  But due to VGA's hardware restrictions, you can only have
                  multiple of eight number of frames per second in the
                  horizontal direction. So round it off -> 1176.

                  Take 80 percent of this clock tics, or 944 tics for your
                  viewing image.  This is a rule of thumb! Don't ask why! 

                  Take 75% of 944 as your vertical tics for viewable image,
                  you have 708 tics.  A rule of thumb is 1.05 times of tics
                  should be the vertical frame length ->743 tics.  Here I
                  implicitly assumed that you like the Golden ratio.

                  So your screen refresh rate is 65Mhz/1176*743=74.4 hz!

                  THIS IS EXCELLENT! Don't settle on anthing less!
                  The image at this update rate (or screen refresh rate)
                  WILL LOOK STEADY EVEN TO VEDIO CAMERAS!
     
                  And you got 944x708 to boot.  Not bad at all!  You 
                  can even improve it further to put it into almost 80 Hz
                  by using the fact that your monitor in horz. direction
                  can sync at lower frequency then 55 khz.  Please take
                  advantage of it.  All this is simple arithematics and
                  Simple facts about oscilloscopes.  No black magic at all!

                  Memory requirment: 944x708/1024~653 K vedio RAM. So if
                  you have one meg, you have extra for virtual terminal
                  switching.  See, this is good compromise!

                  But MAKE SURE that your monitor electron guns can sync
                  up to 80 Hz vertical. (NEC 4d CANN'T for instance. It
                  goes only up to 75 Hz in vertical)

                  There is NO reason whatsover why you have to use 640x480
                  800x600, or even 1024x768.  X386 driver lets you config
                  your hardware with quite a lot freedom.  It usually takes
                  two to three minutes to come up the right one.
 
                  The KEY is high refresh rate with reasonable viewing area.
                  NOT Hig Res at the price of flickerness!


               Q. But how about interlace/non-interlace?
               A. The key word in vedio watching is NON-FLICKER!  The point
                  is that non-interlace is just part of the game!  With non
                  interlace alone BUT low screen refresh rate, your eyes will
                  suffer badly!!!!  Interlace-ness just worsen the flickering
                  at the same refresh rate.  If you can manage to get high
                  enough refresh rate, say 90 Hz for interlace display, you
                  WILL NOT feel any flicker!!  (But I doubt this is feasible)
             
                  As a side, that's why I HATE the display of IBM/RS6000 even
                  with it's blazingly fast TI340X0 assisted graphics!

                  So, CONCLUSION => NON-INTERLACENESS != NON-FLICKER!

[question deleted, I don't have ISC]

Please direct your comments to the above article to the addressee below:


Chin Fang
Mechanical Engineering Department
Stanford University
fangchin@leland.stanford.edu

dawes@suphys.physics.su.OZ.AU (David Dawes) (03/08/91)

In article <1991Mar7.014948.18583@leland.Stanford.EDU> fangchin@leland.Stanford.EDU (Chin Fang) writes:
>In article <1991Mar6.213907.28719@maverick.ksu.ksu.edu> rrsum@matt.ksu.ksu.edu (Rick Summerhill) writes:
>>I am currently using Tom Roell's X386 1.1 with ISC 2.2.1 and have some
>>questions:
>>
>>1.  I get errors from Xlib about too many clients.  I have 32 pty's and
>>    32 streams ports, so that is not the problem.  Anyone know why?
>
>I don't have ISC, can't help you on that. But...
>
>>2.  Does anyone have a good 1024x768 configuration for a Sigma Legend card.
>>    My monitor will go to 66 Mhz.  Can 1152x900 be used in non-interlaced
>>    mode with this monitor configuration?
> 
>OK.  I think it's time to sweep away some confusing terminologies introduced
>by marketing people at monitor manufacturers.  Monitors NEVER support Mhz
>which is by definition, million cycles by second.

The "MHz" quoted with respect to a monitor is its bandwidth, and IS important.
If the dot-clock on your video card is pumping out stuff at 65MHz, and your
monitor's bandwith is only 40MHz, the resulting image won't be very sharp.
The monitor's bandwith is a measure of the max frequency you can modulate
its e-beam(s).

David
--
------------------------------------------------------------------------------
 David Dawes (dawes@suphys.physics.su.oz.au) DoD#210   | Phone: +612 692 2639
 School of Physics, University of Sydney, Australia    | Fax:   +612 660 2903
------------------------------------------------------------------------------

fangchin@elaine46.Stanford.EDU (Chin Fang) (03/08/91)

In article <1991Mar7.014948.18583@leland.Stanford.EDU> fangchin@leland.Stanford.EDU (Chin Fang) writes:
>     
>                  And you got 944x708 to boot.  Not bad at all!  You 
>                  can even improve it further to put it into almost 80 Hz
>                  by using the fact that your monitor in horz. direction
>                  can sync at lower frequency then 55 khz.  Please take
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

OOPS! This should be written "often can sync at higher frequency than 55khz"
Got it reversed.  Sorry! In addition, 80 Hz is probably very hard to reach.
76Hz is a more likely value.


In fact, if say the highest timing available for a board is 65Mhz, then to
raise refresh rate, one has to pay the price of lower resolution.  Unless 
a higher clock rate is available.  DRAMs usually impose wait states if their
recharge rate is not high enough.  The only card that I have data sheet so
far that can do higher than 70Mhz is Everex VRAM ViewPoint ET4000, it's     
equipped with one meg VRAM instead of DRAM, but quite pricy.  List price is
like $600+.  However, with VRAM's more streamlined data io, it should be a
very high performance SVGA card.  (My Sun Sparc's vedio adapter employes 
one meg VRAM and AMD's vedio chipset)


Vedio 7 is having a similar product now, but I haven't got any data sheet yet.


Finally, multiscanning monitor vedio bandwidth is in Mhz range.  But it has
nothing to do with config X386.  High vedio bandwidth allows higher fidelity
if images.  The reason, simply stated, is that monitor employes electronic
signals to represent images. Such signals contain many different components
which are of different frequencies, many of these are easily in high Mhz
range and usually are important to the fine details of your display. So a 
board vedio bandwidth allows most such signals coming thru without being 
distorted thus fidelity (a general term here) can be preserved very well.

The details of such are in the domain of Signal Processing.


However, this is again, just part of the display game.  One has to consider
dot pix size, misconvergence of electron beams, corner compansations, and
the type of screen coating materials used etc.  They have to be considered
all together.  Hmm...I am digressing ...Stop!

Thanks to the input from gwes@wjh12.harvard.edu and the very careful review
of witr@rwwa.com.


Regards,

Chin Fang
Mechanical Engineering Department
Stanford University
fangchin@leland.stanford.edu