aboutsummaryrefslogtreecommitdiff
path: root/vl.c
diff options
context:
space:
mode:
authormalc <malc@c046a42c-6fe2-441c-8c8c-71466251a162>2008-09-28 00:42:12 +0000
committermalc <malc@c046a42c-6fe2-441c-8c8c-71466251a162>2008-09-28 00:42:12 +0000
commitcb5a7aa8c32141bb19a8f6571f630c779faebc25 (patch)
tree4a2e7eca158dedc324d1a85e079396d608dbe0d6 /vl.c
parent3893c124e7b768d7e7e6cd9933df77e6dbf0816f (diff)
Optional "precise" VGA retrace support
Selected via: -vga <name>,retrace=precise git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5336 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'vl.c')
-rw-r--r--vl.c15
1 files changed, 14 insertions, 1 deletions
diff --git a/vl.c b/vl.c
index 07b5a4aee6..eeefe592e5 100644
--- a/vl.c
+++ b/vl.c
@@ -174,6 +174,7 @@ int nb_drives;
/* point to the block driver where the snapshots are managed */
BlockDriverState *bs_snapshots;
int vga_ram_size;
+enum vga_retrace_method vga_retrace_method = VGA_RETRACE_DUMB;
static DisplayState display_state;
int nographic;
int curses;
@@ -8203,7 +8204,19 @@ static void select_vgahw (const char *p)
fprintf(stderr, "Unknown vga type: %s\n", p);
exit(1);
}
- if (*opts) goto invalid_vga;
+ while (*opts) {
+ const char *nextopt;
+
+ if (strstart(opts, ",retrace=", &nextopt)) {
+ opts = nextopt;
+ if (strstart(opts, "dumb", &nextopt))
+ vga_retrace_method = VGA_RETRACE_DUMB;
+ else if (strstart(opts, "precise", &nextopt))
+ vga_retrace_method = VGA_RETRACE_PRECISE;
+ else goto invalid_vga;
+ } else goto invalid_vga;
+ opts = nextopt;
+ }
}
#ifdef _WIN32