svgalib.chips man page on Peanut

Man page or keyword search:  
man Server   7435 pages
apropos Keyword Search (all sections)
Output format
Peanut logo
[printable version]

svgalib.chips(7)	      Svgalib User Manual	      svgalib.chips(7)

NAME
       svgalib.chips - Information for Chips and Technologies Users

TABLE OF CONTENTS
       Information for Chips and Technologies Users
       David Bateman <dbateman@eng.uts.edu.au>
       23nd May 1997

       0. Introduction
       1. "libvga.config" options
       2. Unsupported Chips and Technologies chipsets
       3. Known bugs

0. INTRODUCTION
       This  is	 the  really only my first attempt to get a working fully fea‐
       tured driver for the  Chips  and	 Technologies  chipset	to  work  with
       svgalib(7).  As such the only machine that I know it will work on is my
       own. If you use this software then at this point I'm still very	inter‐
       ested  in  hearing  from	 you  by  e-mail. Include full details of your
       chipset, amount of videoram and whether you have a VL-Bus  or  PCI  bus
       machine.

       This  server  was  written  using  the svgalib(7) patch from Sergio and
       Angelo Masci as a starting point. This version of  the  code  resembled
       the  XFree  server code that was used up to XFree 3.1.2. As such it was
       incapable of programming the clocks, using linear addressing, Hi-Color,
       True-Color  modes  or  the hardware acceleration. All of these features
       have since been added to the code. In addition support for  the	65525,
       65535,  65546, 65548, 65550 and 65554 have been included. The 64200 and
       64300 chips are unsupported, however these chips are  very  similar  to
       the 6554x chips which are supported.

       At  this point this code is only confirmed to work correctly on a 65545
       VL-Bus machine. However as much of the code was stolen from my  experi‐
       ences  with writing code for XFree I hope not to have too many problems
       with other machines. However if you run this code  on  a	 65545/48  PCI
       machine	or  a  65550/54	 machine  then I am particularly interested in
       hearing of any success or failure stories.

1. "libvga.config" OPTIONS
       The first thing to note is that the option parser for svgalib(7) is not
       very  robust. Hence if you make some typing mistakes, you can have some
       very strange effects. I've set out below the  libvga.config(5)  options
       that  are  of particular interest to Chips and Technologies users. Nor‐
       mally this configuration file can be found at /etc/vga/libvga.config.

       HorizSync MIN MAX
	      Often LCD panels has very different specifications for the hori‐
	      zontal  sync than CRT's do. Hence often you'll need this option,
	      particularly if you are using the XFree like modelines described
	      below.  The  two	floating  point numbers specified will set the
	      minimum and maximum allowed horizontal sync in kHz.

       VertRefresh MIN MAX
	      Similar to the above, but this sets the LCD  or  CRT's  vertical
	      refresh rate in Hz.

       modeline 640x480 20.00 640 688 704 776 480 480 481 486
	      This option allows you to specify XFree like modelines to use in
	      preference to the in built modelines. Often LCD panels will need
	      very  different  pixel clocks and timings than CRT's. Hence this
	      option allows you to specify these. Note that the LCD panel tim‐
	      ings  are	 related  to  the  panel  size	and not the mode size.
	      Therefore by default the BIOS setting already uploaded into  the
	      registers	 are  used  by	default.  See the "UseModeline" option
	      below if you wish to override these.

       chipset C&T 5 1024
	      These option allows the user to specify the chipset to  use  and
	      the  amount  of  installed memory in kBytes. Currently supported
	      chipsets are

			   0	65520
			   1	65525
			   2	65530
			   3	65535
			   4	65540
			   5	65545
			   6	65546
			   7	65548
			   8	65550
			   9	65554

       TextClockFreq 25.175
	      One major difference between this code and the previously avail‐
	      able  support for the Chips and Technologies chipsets is that it
	      supports the use of programmable clocks. Because of the way that
	      the Chips and Technologies chips program the VCO from the regis‐
	      ters, there is no way to be sure to recover the previously  pro‐
	      grammed  clock value.  Hence the driver assumes that the console
	      clock is 25.175MHz. This will be wrong for many  machines.  How‐
	      ever  I  have supplied this option to use a different value that
	      might be more suitable for your machine.

       nolinear
	      This option disables the use of  the  linear  framebuffer.  This
	      might  be	 useful	 for  machines	that have broken linear frame‐
	      buffers. In lar the linear framebuffer doesn't seem to work with
	      the achines.

       linear Allow,  but  don't enforce the use of the linear framebuffer. As
	      this is the default anyway, I don't see that this option is much
	      use.

       setuplinear 0xC0000000
	      For  VL-Bus machines I expect that the linear framebuffer start‐
	      ing address will be setup correctly. However to get the starting
	      address for PCI machines requires access to the MEMBASE register
	      in the PCI address space. Code  to  do  this  doesn't  currently
	      exist with svgalib(7), and so I've taken the easy option of just
	      testing a few known PCI starting addresses. For  now  these  are
	      just  0xFE000000,	 0xFD000000, 0x41000000 and 0xC0000000. If you
	      have a different starting address then  the  linear  framebuffer
	      will be unusable. You might like to report your starting address
	      to me so that I can include it in the  probing  code,  but  till
	      then this option can be used to set up the correct address. This
	      option just forces the given address to be the only one  probed.
	      It doesn't force the linear framebuffer to be used.

       LCDPanelSize 800 600
	      For  some machines the LCD panel size is incorrectly probed from
	      the registers. This option forces the LCD panel size  to	be  as
	      specified.  If  you  have a black band down one side of your LCD
	      display you might very well need this option. Also  if  you  are
	      using  the option "fix_panel_size" in XFree then this option has
	      a similar effect. This option can be used	 in  conjunction  with
	      the  option "UseModeline" to program all the panel timings using
	      the modeline values. Two machines that are known	to  need  this
	      option  are  the	HP  Omnibook  5000CTS  and  the NEC Versa 4080
	      800x600 TFT machines.

       UseModeline
	      The flat panel timings are related to the panel size and not the
	      size  of	the mode specified. For this reason the default behav‐
	      iour of the svgalib(7) is	 to  use  the  panel  timings  already
	      installed	 in  the chip. The user can force the panel timings to
	      be recalculated from the modeline with this option. However  the
	      panel  size will still be probed. Two machines that are known to
	      need this option are the HP Omnibook  5000CTS  and  the  Prostar
	      8200.  You  are advised to check the README.chips that come with
	      XFree for more details.

       NoBitBlt
	      This option disables the use of H/W acceleration. As  far	 as  I
	      know  the only thing that currently uses the H/W acceleration is
	      libvgagl, so this might not be a problem anyway. However if  you
	      see corruption of the graphics on the screen try this option and
	      see if it goes away.

       Use18BitBus
	      For 24bpp on TFT screens, the server assumes that a 24bit bus is
	      being  used. This can result in a reddish tint to 24bpp mode for
	      machines that actually have a 18 bit bus. This  option,  selects
	      an 18 bit TFT bus. Note that using this option with a 24 bit bus
	      machine will similarly discolour the screen.  For	 other	depths
	      this option has no effect.

       Center ENABLE/DISABLE or Stretch ENABLE/DISABLE
	      The  default  behaviour of svgalib(7) is to leave the stretching
	      and  centring  registers	completely  alone.  However  for  some
	      machines this might result in poorly placed modes, or modes that
	      don't fill the whole screen. These two options can  be  used  to
	      centre  and  stretch  the	 mode  on  the	screen.	 Note that for
	      instance a Center DISABLE might follow a Center  ENABLE  in  the
	      config file. Only the last option takes effect.

2. UNSUPPORTED CHIPS AND TECHNOLOGIES CHIPSETS
       The  64200  and	64300 chips are unsupported. However by specifying the
       chipset in your libvga.config as either a

       chipset C&T 3 2048
	      Use 65535 for a 64200 assuming 2M of video ram, or

       chipset C&T 7 2048
	      Use 65548 for a 64300 assuming 2Mb of video ram

       then svgalib can be made to give limited	 support  to  these  chipsets.
       Note  that  the paged addressing mode of the 65548 chip and earlier can
       only address upto 1Mb of video ram. If the additional memory is	needed
       then  linear  addressing	 must be used!! Note that support of the 64xxx
       chips has not been tested at all, and the above is  just	 a  suggestion
       that I believe will work.

3. KNOWN BUGS
       One persistent and annoying bug is that the text mode stretching on LCD
       displays is not always restored correctly for 65550 and 65554 machines.
       This  is	 to  do	 with  the  manner in which the extended registers are
       restored and what is being done with the synchronous  reset  while  the
       registers  are restored. As I don't have a 65550 or 65554 machine of my
       own on which to test this code, I have been unable to fix this problem.
       In most circumstances an LCD-CRT switch will restore the LCD stretching
       to the desired state.

       David.

FILES
       /etc/vga/libvga.config

SEE ALSO
       svgalib(7), libvga.config(5).

AUTHOR
       of  the	driver	and  this  documentation  is  David  Bateman   <dbate‐
       man@eng.uts.edu.au>.   However,	it was slightly reformatted by Michael
       Weller <eowmob@exp-math.uni-essen.de>.

Svgalib (>= 1.2.11)		 31 July 1997		      svgalib.chips(7)
[top]

List of man pages available for Peanut

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net