|
@@ -957,7 +957,18 @@ static const char *
|
|
get_default_vga_model(const MachineClass *machine_class)
|
|
get_default_vga_model(const MachineClass *machine_class)
|
|
{
|
|
{
|
|
if (machine_class->default_display) {
|
|
if (machine_class->default_display) {
|
|
- return machine_class->default_display;
|
|
|
|
|
|
+ for (int t = 0; t < VGA_TYPE_MAX; t++) {
|
|
|
|
+ const VGAInterfaceInfo *ti = &vga_interfaces[t];
|
|
|
|
+
|
|
|
|
+ if (ti->opt_name && vga_interface_available(t) &&
|
|
|
|
+ g_str_equal(ti->opt_name, machine_class->default_display)) {
|
|
|
|
+ return machine_class->default_display;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ warn_report_once("Default display '%s' is not available in this binary",
|
|
|
|
+ machine_class->default_display);
|
|
|
|
+ return NULL;
|
|
} else if (vga_interface_available(VGA_CIRRUS)) {
|
|
} else if (vga_interface_available(VGA_CIRRUS)) {
|
|
return "cirrus";
|
|
return "cirrus";
|
|
} else if (vga_interface_available(VGA_STD)) {
|
|
} else if (vga_interface_available(VGA_STD)) {
|