| 1. Purpose 2. Usage 2.1. modetest (the newer and easier program) 2.2. fbmodes (older and not so flexible program) 3. Some examples |
4. Copying 5. Drawbacks 6. Feedback 7. Requirements 8. Installation 9. Downloading |
On modern monitors, you probably have to specify the blank part lengths for left, right, top and bottom of screen too.
Missing options.
modetest - video mode composer v1.2.0 (C) 1992,2002 Bisqwit
Developes a screen mode.
Usage: modetest <options> [<...>]
Options:
-V, --version Version information
-X, --hslen <num> Horizontal sync length. Range: 0..1 s, default: 1e-6 (1 microsecond)
-Y, --vslen <num> Vertical sync length. Range: 0..1 s, default: 46e-6 (46 microseconds)
-h, --help Help
-r, --refresh <num> Screen refresh rate.
-x, --xres <visible>[+<invisible>[/<left%>]] Horizontal resolution.
-y, --yres <visible>[+<invisible>[/<top%>]] Vertical resolution.
You must specify at least xres, yres and refresh.
Current assumed monitor and display card limits (used in warnings):
Horizontal sync (hsync) range: 30 .. 70 kHz
Vertical sync (refresh) range: 50 .. 120 Hz
atyfb maxs: h_disp=2048, h_sync_start=4096, hslen=248,
v_disp=2048, v_sync_strt=2048, vslen=31
The program tries to set the screenmode with fbset command.
You might want to redirect the stderr to a file in case the fbset command
fails and renders the screen garbled: modetest [<options>] 2>logfile.txt
Example: modetest 2>tmptmp -x1280+296/78.4 -y1024+39/99 -r60
(gives the screenmode I'm using with my framebuffer console)
(Note that you need write access to /dev/vcsa0
and a working fbset (v2.1) program to fully gain the features
this program has to offer.)
fbmodes version 1.2.0
Copyright (C) 1992,1999 Bisqwit (http://iki.fi/bisqwit/)
Generates various type of video mode entries with given settings
Usage: fbmodes [-?xyfrdXYmV]
-?, --help Help
-x, --xres n Requested horizontal resolution (default: 256)
-y, --yres n Requested vertical resolution (default: 256)
-f, --hfreq n Horizontal pixel clock/Hz (default: 31500)
-r, --refresh n Specify (vertical) display refreshment rate/Hz
(default: hfreq/ylen or 120)
-xl,--xlen n Specify video line width/pixels (default: xres*3/2)
-yl,--ylen n Specify number of scanlines (default: hfreq/refresh)
-d, --depth n Specify bitness (used in fb.modes) (default: 8)
-X, --xofs n Specify hsyncstart-xres (default: (xlen-xres)/2)
-Y, --yofs n Specify vsyncstart-yres (default: (ylen-yres)/3)
-xs,--hslen n Specify hsync length/pixels
(default: min(40,(xlen-xres)/2-1))
-ys,--vslen n Specify vsync length/pixels
(default: min(10,(ylen-yres)/2-1))
-fx,--fontxres n Specify fontxres (used in TextConfig) (default: 8)
-fy,--fontyres n Specify fontyres (used in TextConfig) (default: 8)
-m, --mem n Video memory size/kB (default: 4000)
-V, --version Version information
The order of the parameter elements is not important.
Also any of them can be omitted.
Pparameter translation algorithm:
If hfreq was specified and refresh was not specified,
refresh gets calculated from hfreq/ylen.
Else if refresh was not specified, it is assumed as 120.
Next if ylen was not specified, it is calculated from hfreq/refresh.
If ylen, refresh and hfreq were specified, ignore hfreq.
Next, if hslen and vslen were not specified, calculates them as documented.
mode "2000x1750-40"
# D: 186.602 MHz, H: 70.683 kHz, V: 39.687 Hz
geometry 2000 1750 2000 1750 8
timings 5359 434 70 29 1 136 1
hsync high
vsync high
endmode
#~/src/fbmodes/fbmodes -x360 -y256 -d32 -ys3 -xs48 -f50000 -m1024
mode "360x256-120"
geometry 360 256 360 1000 32
timings 39746 24 72 104 53 48 3
endmode
#~/src/fbmodes/fbmodes -x320 -y256 -d32 -ys3 -xs48 -f50000 -m1024
mode "320x256-120"
geometry 320 256 320 1000 32
timings 43642 22 69 104 53 48 3
endmode
#~/src/fbmodes/fbmodes -x360 -xl460 -y240 -d32 -ys3 -X30 -xs20 -f35000 -m256 -r120
mode "360x240-120"
geometry 360 240 360 728 32
timings 62254 50 30 31 17 20 3
endmode
#~/src/fbmodes/fbmodes -x320 -y240 -d32 -ys2 -xs48 -f45000 -m1024
mode "320x240-120"
geometry 320 240 320 1000 32
timings 48414 22 69 88 45 48 2
endmode
#~/src/fbmodes/fbmodes -x576 -y432 -d32 -ys3 -xs48 -f50000 -m512
mode "576x432-120"
geometry 576 432 576 910 32
timings 23328 32 79 33 18 48 3
endmode
#~/src/fbmodes/modetest -x320+50/20 -y200+100/70 -r120 -X2.5e-6 -Y58e-6
mode "320x200-120"
# D: 14.799 MHz, H: 36.360 kHz, V: 120.000 Hz
geometry 320 200 320 200 8
timings 67574 10 40 70 30 37 3
vsync high
hsync high
endmode
#~/src/fbmodes/modetest -x384+50/35 -y288+40/80 -r120 -X2.5e-6 -Y58e-6
mode "384x288-120"
# D: 19.145 MHz, H: 39.720 kHz, V: 120.000 Hz
geometry 384 288 384 288 8
timings 52232 17 33 32 8 48 3
endmode
# Generated with: modetest -x256+95/40 -y320+30 -r120 -X0 -Y1e-6
mode "256x320-120"
# D: 14.784 MHz, H: 42.120 kHz, V: 120.000 Hz
geometry 256 320 256 320 32
timings 67640 38 57 27 3 0 1
vsync high
hsync high
endmode
# Generated with: modetest -x400+60/48 -y320+50/60 -r120
mode "400x320-120"
# D: 21.472 MHz, H: 44.640 kHz, V: 120.000 Hz
geometry 400 320 400 320 8
timings 46572 28 32 30 20 21 2
vsync high
hsync high
endmode
# Generated with: modetest -x 432+70/50 -y 320+30 -r 120
mode "432x320-120"
# D: 22.071 MHz, H: 42.120 kHz, V: 120.000 Hz
geometry 432 320 432 320 8
timings 45308 35 35 27 3 22 1
vsync high
hsync high
endmode
# Generated with: modetest -x352+116/35 -y288+120/70 -r124
mode "352x288-124"
# D: 25.064 MHz, H: 50.840 kHz, V: 124.000 Hz
geometry 352 288 352 288 8
timings 39897 40 76 84 36 25 2
vsync high
hsync high
endmode
# Generated with: modetest -x640+100/97 -y360+30 -r120
mode "640x360-120"
# D: 36.503 MHz, H: 47.040 kHz, V: 120.000 Hz
geometry 640 360 640 360 8
timings 27394 97 3 27 3 36 2
vsync high
hsync high
endmode
# Generated with: modetest -x640+200 -y480+50 -r120
mode "640x480-120"
# D: 57.264 MHz, H: 63.840 kHz, V: 120.000 Hz
geometry 640 480 640 480 8
timings 17462 160 40 45 5 57 2
vsync high
hsync high
endmode
# Generated with: modetest -x512+110/90 -y384+30 -r120
mode "512x384-120"
# D: 32.648 MHz, H: 49.920 kHz, V: 120.000 Hz
geometry 512 384 512 384 8
timings 30630 99 11 27 3 32 2
vsync high
hsync high
endmode
# Generated with: modetest -x720+180/70 -y480+60/70 -r120
mode "720x480-120"
# D: 62.568 MHz, H: 65.040 kHz, V: 120.000 Hz
geometry 720 480 720 480 8
timings 15982 126 54 42 18 62 2
vsync high
hsync high
endmode
(I have made this much different screen modes to play divx videos full screen
without software rescaling. The MPlayer
script be found here.)
If you happen to see this program useful for you, I'd appreciate if you tell me :) Perhaps it would motivate me to enhance the program.
$ make $ su # make installIf you do not want to install libargh (included in the archive), do not use "make install" and edit Makefile and enable the STATIC linking instead of DYNAMIC.
Generated from
progdesc.php (last updated: Fri, 7 Jun 2002 00:12:10 +0300)
with docmaker.php (last updated: Wed, 15 May 2002 04:26:32 +0300)
at Fri, 7 Jun 2002 00:26:02 +0300