1152x864 v XFree?
Jaroslav Mechacek
jara na ics.muni.cz
Úterý Únor 18 10:45:29 CET 1997
Leos Bitto wrote:
>
> Mam videokartu S3 Trio 64 a vim ze zvlada rozliseni 1152x864. Bohuzel
> XFree ho standardne nepodporuji. Ale jak jsem se koukal do souboru
> XF86Config, tak se mi zdalo ze by nemelo byt tezke tam tento videomod
> dopsat. Vi nekdo jak na to? Byl bych vdecny za tu jednu konkretni radku
> co se tam ma dopsat.
>
> Leos Bitto
> <bitto na kolej.mff.cuni.cz>
Ja jsem s uspechem pouzil nasledujici programek pro
1280x1024 85Hz, ale chce to nasledne doladit rucne.
Radeji si ale pred tim prectete VideoModes.doc
Save this as xconfig.awk:
----------------------x snip x--------------------------------------
#
# xconfig.awk - awk script for calculating Xconfig parameters for
# XFree86, given the monitor specs and dot clock frequencies.
# The default values are for the Viewsonic 15.
#
# Example Usage:
# awk -f xconfig.awk HR=1024 VR=768 DCF=110 < /dev/null (or ^D input)
#
# The variable names and meanings are given below.
#
# Author: Richard Brown rab na tauon.ph.unimelb.edu.au
#
BEGIN{
# Sensible defaults if not specified:
HR = 1024 # Horizontal Resolution
VR = 768 # Vertical Resolution
DCF = 110.0 # Dot Clock Frequency (MHz)
HFrontMIN = 0.50 # Horizontal Front Porch Minimum (us)
HsyncMIN = 1.20 # Horizontal Sync Pulse Width Minimum (us)
HBackMIN = 1.25 # Horizontal Back Porch Minimum (us)
HBlankMIN = 4.00 # Horizontal Blank Period Minimum (us)
HSFMAX = 64.0 # Max Horizontal Scan Frequency (kHz)
VFrontMIN = 0.0 # Vertical Front Porch Minimum
VsyncMIN = 45.0 # Vertical Sync Pulse Width Minimum
VBackMIN = 500.0 # Vertical Back Porch Minimum
VBlankMIN = 600.0 # Vertical Blank Period Minimum
VSFMAX = 90.0 # Max Vertical Scan Frequency (Hz)
verbose = 0
}
END{
# Horizontal Scan Lines:
Hfront = HFrontMIN * DCF + HR
if( Hfront%8 ) Hfront = 8 * (1 + int(Hfront/8) )
# if( (Hfront - HR) < HFrontMIN * DCF ) Hfront += 8
Hsync = HsyncMIN * DCF + Hfront
if( Hsync%8 ) Hsync = 8 * (1 + int(Hsync/8) )
Hblank = HBlankMIN * DCF
HFL = HR + Hblank
if( HFL%8 ) HFL = 8 * (1 + int(HFL/8) )
# Vertical:
Vtick = HFL / DCF # us
Vfront = VR + VfrontMIN / Vtick
Vsync = Vfront + VsyncMIN / Vtick
Vback = VBackMIN / Vtick
Vblank = VBlankMIN / Vtick
VFL = Vsync + Vback
if( VFL < VR + Vblank ) VFL = VR + Vblank
RR = 1000000 * DCF / (HFL * VFL)
HSF = 1000 * DCF / HFL
# Done: generate some output:
if( verbose ) {
printf "\n# Horizontal:\n"
printf "# Front Porch = %.2f us, Sync = %.2f, Back Porch = %.2f,
",
(Hfront - HR) / DCF, (Hsync - Hfront) / DCF, (HFL - Hsync)
/ DCF
printf "Blank = %.2f\n\n", (HFL - HR) / DCF
}
printf "# Refresh Rate: %.2f Hz, Horizontal Sync Frequency: %.2f
kHz\n",
RR, HSF
printf " \"%dx%d\"\t%.2f\t%d %d %d %d %d %d %d %d\n", HR, VR, DCF,
HR,
Hfront, Hsync, HFL, VR, Vfront, Vsync, VFL
if( HSF > HSFMAX )
printf("\nWarning: the Horizontal sync frequency may be too high
for the monitor!\n")
if( RR > VSFMAX )
printf("\nWarning: this refresh rate may be too high for the
monitor!\n")
}
----------------------x snip x--------------------------------------
Jara
Další informace o konferenci Linux