vga_flip(3) toggle between text and graphics mode


#include <vga.h>

int vga_flip(void);


switches between graphics and text mode without destroying the screen contents. This makes it possible for your application to use both text and graphics output.

However, This is an old vgalib function. You should really only use it for debugging as it runs extremely unstable because svgalib now does its own virtual console management. If you want to perform a similar action, save the current screen contents with ordinary memory copy operation to the frame buffer or gl_getbox(3), set vga_setmode(TEXT), then call vga_setmode(3) to return to graphics operation and restore the screen contents with memory or gl_putbox(3).

One could also use vga_drawscansegment(3) and vga_getscansegment(3) calls.

However, avoid any calls to vga_flip() in your applications.

The function always returns 0, a fact on which you shouldn't rely.

It might be useful if you are debugging one of your svgalib applications though. If your program reaches a breakpoint while in graphics mode, you can switch to text mode with the gdb command

print vga_flip()

and later restore the graphics screen contents with the same command. It is useful to define the following alias in gdb:

define flip <Return> print vga_flip() <Return> end <Return>


This manual page was edited by Michael Weller <[email protected]>. The exact source of the referenced function as well as of the original documentation is unknown.

It is very likely that both are at least to some extent are due to Harm Hanemaayer <[email protected]>.

Occasionally this might be wrong. I hereby asked to be excused by the original author and will happily accept any additions or corrections to this first version of the svgalib manual.