Use mouse to move cursor. <1>-<9>, <0> to set the cursor size. <Space> to change the cursor color. Left button to draw. Right button or <Q> to bailout.
The cursor goes on/off every half second by usage of a timeout passed to vga_waitevent(3). Every 5 seconds a string from a child process (the time) arrives asynchronously and is displayed by the frontend. This comes in through a pipe(2) which is monitored by vga_waitevent(2).
You can set a videomode to use by setting the environment variable SVGALIB_DEFAULT_MODE to a number (see vgatest for a list) or a string like G0x1x2 where you replace 0 with desired x resolution, 1 with the desired y rez, and 2 with the desired number of colors (2, 16, 256, 32K, 64K, 16M, 16M4). Again, only certain choices are available, see vgatest for a list.
In case nothing is selected, G320x200x256 is choosen.
This demo is part of svgalib and can be found in the demos/ subdirectory of the original svgalib distribution. However, it is not installed in the system by default, s.t. it is unclear where you can find it if your svgalib was installed by some linux distribution. Even then, when you have the demo on your system, you probably won't have the sources s.t. it is only of limited use for you.
In case of any such problem, simply get an svgalib distribution from the net. You even don't need to install it. Just make in the demos/ subdirecty. As of this writing, svgalib-1.2.12.tar.gz is the latest version and can be retrieved by ftp from sunsite.unc.edu at /pub/Linux/libs/graphics and tsx-11.mit.edu at /pub/linux/sources/libs which will most probably be mirrored by a site close to you.
svgalib(7), vgagl(7), libvga.config(5), vga_waitevent(3), threed(6), accel(6), bg_test(6), forktest(6), fun(6), keytest(6), mousetest(6), scrolltest(6), speedtest(6), spin(6), testaccel(6), testgl(6), testlinear(6), vgatest(6), plane(6), wrapdemo(6)