DragonFly BSD
DragonFly submit List (threaded) for 2004-04
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

vidcontrol(1)


From: Sascha Wildner <saw@xxxxxxxxx>
Date: Sat, 24 Apr 2004 17:20:36 +0200

Hi,

for all us users without X I've enhanced vidcontrol(1) a bit. Please review the following files:

http://www.yoyodyne.de/vidcontrol.c
http://www.yoyodyne.de/vidcontrol.1

I haven't done a patch since it would have been longer than the file itself.


Example pictures of some new modes are here:


"Mum, look, I've ported DragonFly to my C64!":
http://www.yoyodyne.de/LPIC0014.JPG

640x200 with 8x8 font:
http://www.yoyodyne.de/LPIC0016.JPG

hangman(6) looks really cool at 320x200 and 16px font:
http://www.yoyodyne.de/LPIC0020.JPG


Here's the list of things I've changed:


Support for more video modes: accept mode names like MODE_<NUMBER> where
<NUMBER> is the video mode number from the vidcontrol -i mode output.
MODE_13 is 320x200, for example...

Change the default geometry of raster modes: calculate rows and columns
using the font width and height. This results in the row * col geometry
being as large as possible if no geometry is specified by the user. If
no font is specified the current font's height is used. The old
vidcontrol used a default geometry of 80x25 for raster modes.

Remove restrictions on the range of background colors for graphics modes.

Implement a cleaner revert mechanism: in case something goes wrong we
restore the previous settings and give a message telling what exactly
went wrong. Unfortunately, there are several parameters that cannot
(yet) be saved and restored due to restrictions in the syscons driver:
screen saver timeout, cursor type, mouse character, mouse show/hide
state, vty switching on/off state, history buffer size and history
buffer contents are not saved because the syscons driver doesn't provide
ioctl()s to read those parameters. Font maps are not restored because
the syscons driver won't let us load a font map without setting it.


Please tell me what you think. This version should be 1:1 compatible with the old vidcontrol (tell if it is not). I know that some of the new video modes are not really useful but they are there, so vidcontrol should support them.



As a next project I would like to have a look at syscons(4) and implement the following things:


Make set_pixel_mode() support higher resolutions like 1024x768 or 1280x1024 (bank switching).

Implement the missing ioctl()s so vidcontrol is able to read all changeable parameters for its revert() function.


Greetings, Sascha

--
http://yoyodyne.ath.cx



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]