Initial. Don't... just don't ask.
This commit is contained in:
commit
00bae13bba
586 changed files with 129057 additions and 0 deletions
249
doc/man7/svgalib.chips.7
Normal file
249
doc/man7/svgalib.chips.7
Normal file
|
|
@ -0,0 +1,249 @@
|
|||
.TH svgalib.chips 7 "31 July 1997" "Svgalib (>= 1.2.11)" "Svgalib User Manual"
|
||||
.SH NAME
|
||||
svgalib.chips \- Information for Chips and Technologies Users
|
||||
|
||||
.SH TABLE OF CONTENTS
|
||||
|
||||
Information for Chips and Technologies Users
|
||||
.br
|
||||
David Bateman <dbateman@eng.uts.edu.au>
|
||||
.br
|
||||
23nd May 1997
|
||||
|
||||
.BR 0. " Introduction"
|
||||
.br
|
||||
.BR 1. " ""libvga.config"" options"
|
||||
.br
|
||||
.BR 2. " Unsupported Chips and Technologies chipsets"
|
||||
.br
|
||||
.BR 3. " Known bugs"
|
||||
.br
|
||||
|
||||
.SH 0. INTRODUCTION
|
||||
|
||||
This is the really only my first attempt to get a working fully
|
||||
featured driver for the Chips and Technologies chipset to work
|
||||
with
|
||||
.BR 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 interested 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
|
||||
.BR 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 experiences 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.
|
||||
|
||||
.SH 1. """libvga.config""" OPTIONS
|
||||
|
||||
The first thing to note is that the option parser for
|
||||
.BR 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
|
||||
.BR libvga.config (5)
|
||||
options
|
||||
that are of particular interest to Chips and Technologies users. Normally
|
||||
this configuration file can be found at
|
||||
.IR /etc/vga/libvga.config.
|
||||
|
||||
.TP
|
||||
.B HorizSync MIN MAX
|
||||
Often LCD panels has very different specifications for the
|
||||
horizontal 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.
|
||||
|
||||
.TP
|
||||
.B VertRefresh MIN MAX
|
||||
Similar to the above, but this sets the LCD or CRT's vertical refresh
|
||||
rate in Hz.
|
||||
|
||||
.TP
|
||||
.B 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
|
||||
timings 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.
|
||||
|
||||
.TP
|
||||
.B 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
|
||||
|
||||
.TP
|
||||
.B TextClockFreq 25.175
|
||||
One major difference between this code and the previously available
|
||||
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 registers, there is
|
||||
no way to be sure to recover the previously programmed clock value.
|
||||
Hence the driver assumes that the console clock is 25.175MHz. This
|
||||
will be wrong for many machines. However I have supplied this option
|
||||
to use a different value that might be more suitable for your machine.
|
||||
|
||||
.TP
|
||||
.B nolinear
|
||||
This option disables the use of the linear framebuffer. This might
|
||||
be useful for machines that have broken linear framebuffers. In
|
||||
lar the linear framebuffer doesn't seem to work with the
|
||||
achines.
|
||||
|
||||
.TP
|
||||
.B 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.
|
||||
|
||||
.TP
|
||||
.B setuplinear 0xC0000000
|
||||
For VL-Bus machines I expect that the linear framebuffer starting
|
||||
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
|
||||
.BR 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.
|
||||
|
||||
.TP
|
||||
.B 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.
|
||||
|
||||
.TP
|
||||
.B UseModeline
|
||||
The flat panel timings are related to the panel size and not the
|
||||
size of the mode specified. For this reason the default behaviour
|
||||
of the
|
||||
.BR 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.
|
||||
|
||||
.TP
|
||||
.B 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.
|
||||
|
||||
.TP
|
||||
.B 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.
|
||||
|
||||
.TP
|
||||
.BR "Center ENABLE/DISABLE" " or " "Stretch ENABLE/DISABLE"
|
||||
The default behaviour of
|
||||
.BR 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
|
||||
.B Center DISABLE
|
||||
might follow a
|
||||
.B Center ENABLE
|
||||
in the config file. Only the last option takes effect.
|
||||
|
||||
.SH 2. UNSUPPORTED CHIPS AND TECHNOLOGIES CHIPSETS
|
||||
|
||||
The 64200 and 64300 chips are unsupported. However by specifying the
|
||||
chipset in your
|
||||
.I libvga.config
|
||||
as either a
|
||||
|
||||
.TP
|
||||
.B chipset C&T 3 2048
|
||||
Use 65535 for a 64200 assuming 2M of video ram, or
|
||||
.TP
|
||||
.B chipset C&T 7 2048
|
||||
Use 65548 for a 64300 assuming 2Mb of video ram
|
||||
.PP
|
||||
|
||||
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.
|
||||
|
||||
.SH 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.
|
||||
|
||||
.SH FILES
|
||||
.I /etc/vga/libvga.config
|
||||
|
||||
.SH SEE ALSO
|
||||
.BR svgalib (7),
|
||||
.BR libvga.config (5).
|
||||
|
||||
.SH AUTHOR
|
||||
of the driver and this documentation is
|
||||
David Bateman <dbateman@eng.uts.edu.au>.
|
||||
However, it was slightly reformatted by Michael Weller
|
||||
<eowmob@exp-math.uni-essen.de>.
|
||||
Loading…
Add table
Add a link
Reference in a new issue