X and Fluxbox :: increasing the friggin' refresh rate!



the 60Hz increase question..
being a noob i have lots a questions. being a good noob, i first search the forum for answers. being a smart noob, i study all searched results to see if it answers my question. being a no-lucky noob i conclude that the question has yet to be answered (properly). being a no-quiter noob, i will try asking the question in such manner that i should get a direct and conclusive answer.

first i would like i illustate how hard life is for a noob, scanning through a forum only to find the question 1) unanswered 2) vague answered 3) contradictivly answered. the follow quote contains the most important and relevent quotes on the subjest posted by various users on the forum:
Quote

CTRL ALT BKSPACE
that will kill the xserver
at the console prompt
sudo xsetup.sh
change the settings as you want
startx
that will restart the xserver with the new settings.
good luck

pdfdocs section of the downloads/current folder of the DSL site for howto's on how to create an extension and how to use mymydsl.

nstead, use the mkmydsl script to build a custom livecd that contains the base DSL along with XF86 or any other additional extensions.

Search the forum with the keyword, mkmydsl

I installed, XFree86.dsl, &, xf86config.dsl, followed the instructions, http://distro.ibiblio.org/pub....sl.info , and voila. I vaguely remember that you may or may not have to change the name of the xf86config file generated, from, xf86conf, to xf86config-4. Note: before I installed, xf86config.dsl, I successfully used a 'generic' xf86config-4 file, that came with XFree86.dsl.

You should be able to change the refresh rate with the '-screen' parameter in .xserverrc:
-screen widthxheight[xdepth[xfreq]][@rotation]
use a  screen  of  the  specified  width,  height,
screen  depth, frequency, and rotation (0, 90, 180
and 270 are legal values).
for example:
exec /usr/bin/X11/Xvesa -screen 1024x768x32x75
should give a refresh rate of 75hz

Try using the xf86config.dsl tool in the testing area
to create one for your individual setup,  then copy the
/etc/X11/XF86Config-4 file and the /home/dsl/.xserverrc file
into your own custom-built extension to use at boottime.

location of ".xserverrc"
Open emelfm
Press the "H" button at the top of the window pane (to allow the viewing of Hidden files.  All files that start with a "." are hidden)

Don't bother hacking up the existing xfree86.dsl extension package.
Instead, create a small new custom package zzz_myxfree86.dsl
and put your two files inside.
Because the "z" extensions get loaded after the "x" extensions, your custom files will be loaded last.
Go to /home/dsl
and it should be there.

It's not difficult (there is also a readme file in the repository).
If I remember it correctly, you will only have to mount the .dsl and copy, edit and rename the XF86Config-4 included in the Xfree86.ds

The command "ls -l .xserverrc" should produce a line that starts like this:
-rwxrwxr-x   1   dsl    staff
If it does not contain at least the first x, it is not executable.
Use the command "chmod  +x  .xserverrc" to fix it.

- Not with the base iso.  The xserver in DSL is very cut down, and will only run 60Hz.  To get better frequencies you need to install the xfree86 dsl extension and set it up for your machine.

The problem is that the VESA 2.0 specification (as close to a "universal" video driver support) does not allow for anything other than a 60Hz refresh rate. So in order to have support for 75Hz, you need an individual video card driver for each kind of video card like the XFree86 system. Eventually, the VESA folks came out with a VESA 3.0 specification that included the ability to set refresh rates but this standard never caught on with the hardware manufacturers.

1. install XFree86 (via myDSL browser)
2. copy one of default config files to /etc/X11/XF86Config-4
3. modify the file (i have deleted resolutions which i will never use, and changed max. refresh rate to 75
4. shutdown X
5. startx
oh, and there was one other file...  /home/dls/.xserverrc
mine looks like this: exec /usr/X11R6/bin/XFree86 -nolisten tcp

I believe you can use the xfree86.dsl from the mydsl browser under 'System'.

Make it easy on yourself
Double click the MyDSL icon on the desktop and navigate to:
System-->XFree86.dsl.info
Download and it automatically installs.

There are several premade config files in /home/dsl/XFree86_Config_files

1)  Get XFree86.dsl
2)  Read all instructions and info thoroughly and install.
3)  Set resolution in XF86Config-4 file to 800x600 @ 85hz

The built-in XVesa server will only run at Vesa 2.0 refresh rates (60Hz).  If you have a video card with a DOS based adjustment utility or a VBE 3.0 compiant card and use a DOS program like VBEHZ you can adjust the default refresh rate to 85HZ and then boot DSL using loadlin.exe  But this is not an automatic solution, either.

try typing "XF86cfg" which is a graphical config tool.

While the XF86Config is text based (and is not very user friendly because it does not save the XF86Config-4 automatically) the XF86cfg works fine for that machine and enables me to set the main values for the graphics card, the screen , the keyboard and the mouse.


There was a post that described how you could use third party DOS tools like VBEHZ or ATI / NVIDIA specific tools to set your VESA refresh rate to something besides 60HZ.
The general idea is:
1) Boot into MSDOS/Win9x True DOS prompt/FreeDOS
2) Use the appropriate Video card DOS utility program
3) Use "loadlin" program to boot into DSL using a VESA framebuffer mode.
4) Choose "xfbdev" server for your xsetup.

I was able to add it to a liveCD.  What I did was:
create a source directory
cp -Rp /KNOPPIX source
chroot  source/KNOPPIX
mount -t proc /proc proc
dpkg-restore
<edit /etc/apt/sources.list to unstable>
apt-get update
apt-get install x-windows-system
umount proc
<CTRL-D>
Then make you liveCD remaster in the normal way.  That method never worked for me before, but it seems to work now.

I tried the XF86_SVGA X-server binary from the latest Knoppix and it works great on my Thinkpad 560z, no need to hack Gtk config or change fonts in emelfm as I suggested in the XBF/XFCom thread - it just works.
1) You need to install...
/usr/bin/X11/XF86_SVGA
/etc/X11/XF86Config
remember to...
sudo chown root XF86_SVGA
sudo chgrp root XF86_SVGA
sudo chmod +s XF86_SVGA
Im still using the XF86Config.neomagic I got with the XBF tar file. XBF/XFcom expected the XF86Config file in /etc but XF86_SVGA expects it in /etc/X11
2) Edit your ~/.xserverrc
comment out everything thats there and add...
exec /usr/bin/X11/XF86_SVGA -bpp 16 -nolisten tcp &> /dev/null
3) Edit your ~/.xinitrc
add the following before starting fluxbox or your window manager... (you dont have to do this if your DEL & BackSpace keys work properly without it)
xmodmap -e "keycode 22 = BackSpace"
xmodmap -e "keycode 107 = Delete"
4) restart your X-server (startx)
And your read to go! :-)

There are two solutions though:
1. If you are running from a HD, install the full Xfree86 X-server.
2. If you can find a ms-dos utility to set resolutions and refresh rates; boot into dos, use this utility and finally boot into DSL with loadlin.

If you have a HD install you have two options:
1. Download, install and configure a full X server (Xfree86, Xorg, ..).
2. First boot into dos, set refresh rates with the dos tools for the graphics card, then use loadlin to boot linux. I have tried this with Tseng ET4000 and S3 Trio64 cards and it works. The problem will be to find the correct dos tools (for newer cards this probably doesn't exist).

There is a Vesa Bios Extension 3.0 that allows the user to specify different refresh rates for newer video cards  (generally 1998 or newer) but the Xvesa server does not support them. Your only options are to:
(1) Get the source code to the Xvesa server and rewrite the program yourself.
(2) Use  an MSDOS VBE setting program to set the default Vesa refresh rate to higher than 60Hz and then boot DSL using a utilitiy like linld.  Then choose the framebuffer server (non-accelerated and sluggish compared to Xvesa).

There is no way to change the vesafb video mode and/or timings after
booting linux.  If you are not happy with the 60 Hz refresh rate, you
have these options:
* configure and load the DOS-Tools for your the graphics board (if
 available) and boot linux with loadlin.
* use a native driver (matroxfb/atyfb) instead if vesafb.  If none
 is available, write a new one!
* VBE 3.0 might work too.  I have neither a gfx board with VBE 3.0
 support nor the specs, so I have not checked this yet.

Unfortunately, the xvesa server does not currently support the VBE 3.0 refresh setting commands.
So the only way to get a refresh rate higher than 60Hz is:
(1) Install the full-blown XFree86 windows server instead of the xvesa KDrive server.
(2) If you are a programmer, hack up the xvesa source code and create a version of the program that works with VBE 3.0 refresh rate commands.
(3) Use the frame buffer server (xfbdev) for XWindows, but you need to somehow start up a frame buffer than is running at a higher refresh rate on bootup so that xfbdev will also run at the higher rate.

I got a similar problem (well we all do i suppose) with refresh rate, impossible to set it, i think it is set by the hardware. You may have to try another distrib then ... not flonnix since it uses the same x server, like a lot of small distrib because it is lightweight.

----------
Making A Custom MyDSL cdrom
http://www.damnsmalllinux.org/talk/node/113

MyDSL: Installing Extensions
Use the MyDSL gui.
Just click on the MyDSL icon on the desktop and it will fire right up.
Select the app you want and click the "Get it!" button beside it.
The app will automatically download and install itself!

MyDSL: Loading Extensions at Boot
For the CD version, put your MyDSL Extensions in the root:
mydslwhere2.jpg

-------------

various links.
http://www.damnsmalllinux.org/talk/node/113
http://distro.ibiblio.org/pub....sl.info
http://distro.ibiblio.org/pub....m
http://distro.ibiblio.org/pub....pdfdocs
http://www.xfree86.org/current/Xkdrive.1.html
http://www.xfree86.org/current/Xvesa.1.html

it seems this is a hot topic! and ofcourse! 60Hz is torture!! so.. ones and for all.. let's sum this topic up and make it conclusive.

QUESTION 1:
For a HD-install, how to change the refresh rate? can this be done by downloading and installing XFree86? if so, how? what are the steps? i mean, is it a normal install, meaning, once you installed XFree86, it will be installed permanently, like a program you install in windows? if yes, do you need to configure something after installing XFree86 to get the desired refresh rate? if so, how? what are the EXACT steps for doing so?

QUESTION 2:
For a BootCD, how to change the refresh rate? is this even possible? some posts suggested it is not. if it is possible, can it be done without downloading anything eg. XFree86? if so, how? what are the steps? if you do need to download XFree86, can this be done from a bootcd without any linux partitions on the HD? if so, how? where to save it to? it can be done using mydsl clicking mydsl on the desktop, am i correct? is the download and intall straight forward? is there anything we noobs need to know? ones downloaded, how do i get it to auto start each time the cd is booted? can this be done? how? using mydsl? by saving settings? burning it on the same CD the DSL boot is on? making my own mkmydsl iso? how? please, i need exact steps, not vague guide lines.  

why am i stessing?
this is a very, very major drawback to DSL. 60Hz will scare people away. not giving a detailed guide with spefic steps on how to solve this problem, will make people never to come back. if linux is some secret l33t thing then i get why little help is available. if linux is a revolution agains M$ win$ then lots of help in the form of documentation and tutorials is needed.

Quote
If you are a programmer, hack up the xvesa source code and create a version of the program that works with VBE 3.0 refresh rate commands.
if a noob asking the question to whom this response was giving has such programming skills, would he really be asking the question in the first place? lol. and if this is possible, why dont YOU guys, the DSL programmers do it? :D well anyways, my point is this: i understand that is must be hard to have noobs asking the same questions over and over again. most of these question Have already been answered before yes. but sometimes this is not the case. giving a noob vague answeres & links, requireing him to solve it himself, using his own brain to combine infos, hoping he will learn something is what usually happens in linux help forums. but this i not the way to go.

i can't find ONE document titled: "how to increase your refresh rate". why not make one, with very clear steps, including everything from downloading xfree to using mysdl to save the setting for every boot. or using mkmydsl to make a new iso bootcd. for HD-install, BOOTCD, and USB-BOOT. can someone be kind enough to write up a tutorial for this? this will make not only OUR lifes easier, but also YOURS. i hope this post will round up this BIG & important question and that it can be used for futher reference when a "to-lazy-to-search-the-forum" noob comes asking the same question again. thank you, take care and peace - Cognitive Tweak.

since no one answered the question on how to increase the refresh rate, i take it it is not possible..

..how can a simple program like anaconda which is used to boot install redhat detect my proper monitor and video card and give the proper refresh rate and an operating system can't?

too bad. damn, damn small linux. too lazy to program a proper refresh rate? then screw it..

It's due to limitations of the X server, not due to laziness.  The X server in a default DSL is super tiny compared to xfree86 or xorg, and so it does what is necessary to display graphics. If you want to increase the refresh rate you will need to install a fatter x server.

It's funny that 60hz has worked fine for years, and very few people complain about it.  Personally i see it as the same as the 60fps argument in 3D gaming...a handful of people are outraged if they can't get 100 or more.  In that situation, you change your hardware.  In this situation, you change your software.  In any case, I'm sorry if you feel 60hz is torture...i have the opinion that getting splinters driven under you fingernails is torture, but to each his own.  If 60hz was so terrible, i'm sure that more than the occasional (one or two per year) user would bring it up.

DSL is TINY.  It's a speck compared to Redhat or whatever other distro gives you a nice pretty desktop and every feature you could possibly imagine.  Of course it is going to have limitations out of the box.  The thing is, you can change it...you can make it what you want with a little work and a little research.  

The conflicting responses are due to the fact that everyone on these forums is learning....none of us knows everything DSL can and cannot do.  There are applications in DSL that are stripped down themselves....perhaps the Xvesa server on another distro can change the refresh rate, but DSL's can't. I know i made one of the quoted comments...my post was based on man pages for the xserver in DSL, but i was unaware that DSL used a different, or perhaps stripped, version.  We live and learn.

Use DSL if you like it, make suggestions if you have any, ask questions if you have trouble.  However, when you come here bitching about not having something that another distro has, and saying it's torture or "a very major drawback" or whatever, and particularly if you fling insults, you can expect to be ignored.

Umm Xvesa does have an option for frequency

refer to Xvesa --help
you just need to edit the line in ~/.xserverrc so that -screen WIDTHxHEIGHTxBPP is -screen WIDTHxHEIGHTxBPPxFREQ

Then just restart Fluxbox. I think. I can't test it or I'll blow up my laptop if it works.

I understand your fustration, I had it for several months. There is a lot of useless crap posted and such a small thing like this is unlikely to have a howto as it takes 2 seconds to find if you know where.

good luck learning linux. :)

The entier DSL operating system is probably about the same size as the RedHat install utilities + XFree86 or XOrg.

The "S" in DSL stands for SMALL.  Not "So SIMPLE that a 3 year old can do it!"

If you want a simple answer:

Can a newbie who cannot do anything beyond robotically following some instructions step-by-step get a stock DSL system to run XWindows at something other than 60HZ?

NO!

If this is the answer that you were waiting for, then you got it so I hope you enjoy that self-satisfied feeling as you move on to a different operating system.  CYA!


Now for the rest of us, the answer is clear:

The best way to get higher refresh rates in DSL is to install the XFree86.dsl extension and muddle through the configuration process until the configuration for your specific video card and monitor is complete.

For the more adventurous, you can try some alternative approaches:

If your video card has a special MSDOS configuration program that can change VESA refresh rates inside the card's BIOS, you can create an MSDOS boot disk to run this program and bump your refresh rate up and then start DSL via the loadlin MSDOS-to-Linux bootloader and the appropriate framebuffer code.  Then choose the xfbdev server.

If your video card supports the VESA 3.0 BIOS EXTENSIONS, you can get a special MSDOS configuration program like VBEHZ that can change VESA refresh rates, you can create an MSDOS boot disk to run this program and bump your refresh rate up and then start DSL via the loadlin MSDOS-to-Linux bootloader and the appropriate framebuffer code.  Then choose the xfbdev server.

If your video card has a special non-VESA linux framebuffer driver, you can boot up with this framebuffer and specify a higher refresh rate and then use xfbdev server, IF YOUR DRIVER SUPPORTS A LINEAR FRAMEBUFFER AND IS COMPATIBLE WITH THE XFBDEV SERVER.

There may be other ways to do it but they are presently unknown here at the forums.

HINT:  If you don't understand anything in the second part of this post and are just looking for someone to spell it out for you or write some magical configuration program to do the work, GIVE UP NOW.  I sincerely doubt that anything is going to change because the status quo has not changed since day 1 with this project, now in it's third year.

Next Page...
original here.