From 4849deb156365521ef9de469764274d05ca22d6f Mon Sep 17 00:00:00 2001 From: Jess Lovelace Date: Wed, 2 Feb 2022 17:48:04 -0500 Subject: [PATCH] added null devices and refactored tables --- src/device/isamem.c | 37 ++-- src/device/isartc.c | 23 ++- src/device/mouse.c | 17 +- src/disk/hdc.c | 56 +++--- src/floppy/fdc.c | 32 +++- src/game/gameport.c | 24 +-- src/include/86box/network.h | 1 - src/lpt.c | 31 ++-- src/network/network.c | 50 +++--- src/scsi/scsi.c | 71 ++++---- src/sound/sound.c | 77 ++++---- src/video/vid_table.c | 342 +++++++++++++++++++----------------- 12 files changed, 429 insertions(+), 332 deletions(-) diff --git a/src/device/isamem.c b/src/device/isamem.c index 331004094..938b0cfb2 100644 --- a/src/device/isamem.c +++ b/src/device/isamem.c @@ -1291,29 +1291,38 @@ static const device_t iab_device = { #endif +static const device_t isa_none_device = { + "None", + "isa_none", + 0, 0, + NULL, NULL, NULL, + { NULL }, NULL, NULL, + NULL +}; + + static const struct { - const char *internal_name; const device_t *dev; } boards[] = { - { "none", NULL }, - { "ibmxt", &ibmxt_device }, - { "genericxt", &genericxt_device }, - { "ibmat", &ibmat_device }, - { "genericat", &genericat_device }, - { "p5pak", &p5pak_device }, - { "a6pak", &a6pak_device }, - { "ems5150", &ems5150_device }, - { "ev159", &ev159_device }, + { &isa_none_device }, + { &ibmxt_device }, + { &genericxt_device }, + { &ibmat_device }, + { &genericat_device }, + { &p5pak_device }, + { &a6pak_device }, + { &ems5150_device }, + { &ev159_device }, #ifdef USE_ISAMEM_BRAT - { "brat", &brat_device }, + { &brat_device }, #endif #ifdef USE_ISAMEM_RAMPAGE - { "rampage", &rampage_device }, + { &rampage_device }, #endif #ifdef USE_ISAMEM_IAB - { "iab", &iab_device }, + { &iab_device }, #endif - { "", NULL } + { NULL } }; diff --git a/src/device/isartc.c b/src/device/isartc.c index e35f1ad9b..598fe6ba0 100644 --- a/src/device/isartc.c +++ b/src/device/isartc.c @@ -746,16 +746,25 @@ static const device_t a6pak_device = { }; +static const device_t isartc_none_device = { + "None", + "isartc_none", + 0, 0, + NULL, NULL, NULL, + { NULL }, NULL, NULL, + NULL +}; + + static const struct { - const char *internal_name; const device_t *dev; } boards[] = { - { "none", NULL }, - { "ev170", &ev170_device }, - { "pii147", &pii147_device }, - { "p5pak", &p5pak_device }, - { "a6pak", &a6pak_device }, - { "", NULL }, + { &isartc_none_device }, + { &ev170_device }, + { &pii147_device }, + { &p5pak_device }, + { &a6pak_device }, + { NULL }, }; diff --git a/src/device/mouse.c b/src/device/mouse.c index c75b82201..3d019f4cb 100644 --- a/src/device/mouse.c +++ b/src/device/mouse.c @@ -31,7 +31,6 @@ typedef struct { - const char *internal_name; const device_t *device; } mouse_t; @@ -62,17 +61,17 @@ static const device_t mouse_internal_device = { static mouse_t mouse_devices[] = { - { "none", &mouse_none_device }, - { "internal", &mouse_internal_device }, - { "logibus", &mouse_logibus_device }, - { "msbus", &mouse_msinport_device }, + { &mouse_none_device }, + { &mouse_internal_device }, + { &mouse_logibus_device }, + { &mouse_msinport_device }, #if 0 { "genibus", &mouse_genibus_device }, #endif - { "mssystems", &mouse_mssystems_device }, - { "msserial", &mouse_msserial_device }, - { "ltserial", &mouse_ltserial_device }, - { "ps2", &mouse_ps2_device }, + { &mouse_mssystems_device }, + { &mouse_msserial_device }, + { &mouse_ltserial_device }, + { &mouse_ps2_device }, { NULL, NULL } }; diff --git a/src/disk/hdc.c b/src/disk/hdc.c index 0b6c0679c..0e9eb8139 100644 --- a/src/disk/hdc.c +++ b/src/disk/hdc.c @@ -66,8 +66,8 @@ null_close(void *priv) } -static const device_t null_device = { - "Null HDC", "null", 0, 0, +static const device_t hdc_none_device = { + "None", "hdc_none", 0, 0, null_init, null_close, NULL, { NULL }, NULL, NULL, NULL }; @@ -86,8 +86,8 @@ inthdc_close(void *priv) } -static const device_t inthdc_device = { - "Internal controller", "inthdc", 0, 0, +static const device_t hdc_internal_device = { + "Internal", "hdc_internal", 0, 0, inthdc_init, inthdc_close, NULL, { NULL }, NULL, NULL, NULL }; @@ -97,30 +97,30 @@ static const struct { const char *internal_name; const device_t *device; } controllers[] = { - { "none", &null_device }, - { "internal", &inthdc_device }, - { "st506_xt", &st506_xt_xebec_device }, - { "st506_xt_dtc5150x", &st506_xt_dtc5150x_device }, - { "st506_xt_st11_m", &st506_xt_st11_m_device }, - { "st506_xt_wd1002a_wx1", &st506_xt_wd1002a_wx1_device }, - { "st506_at", &st506_at_wd1003_device }, - { "st506_xt_st11_r", &st506_xt_st11_r_device }, - { "st506_xt_wd1002a_27x", &st506_xt_wd1002a_27x_device }, - { "esdi_at", &esdi_at_wd1007vse1_device }, - { "ide_isa", &ide_isa_device }, - { "ide_isa_2ch", &ide_isa_2ch_device }, - { "xtide_at", &xtide_at_device }, - { "xtide_at_386", &xtide_at_386_device }, - { "xtide_at_ps2", &xtide_at_ps2_device }, - { "xta_wdxt150", &xta_wdxt150_device }, - { "xtide_acculogic", &xtide_acculogic_device }, - { "xtide", &xtide_device }, - { "esdi_mca", &esdi_ps2_device }, - { "ide_pci", &ide_pci_device }, - { "ide_pci_2ch", &ide_pci_2ch_device }, - { "ide_vlb", &ide_vlb_device }, - { "ide_vlb_2ch", &ide_vlb_2ch_device }, - { "", NULL } + { &hdc_null_device }, + { &hdc_internal_device }, + { &st506_xt_xebec_device }, + { &st506_xt_dtc5150x_device }, + { &st506_xt_st11_m_device }, + { &st506_xt_wd1002a_wx1_device }, + { &st506_at_wd1003_device }, + { &st506_xt_st11_r_device }, + { &st506_xt_wd1002a_27x_device }, + { &esdi_at_wd1007vse1_device }, + { &ide_isa_device }, + { &ide_isa_2ch_device }, + { &xtide_at_device }, + { &xtide_at_386_device }, + { &xtide_at_ps2_device }, + { &xta_wdxt150_device }, + { &xtide_acculogic_device }, + { &xtide_device }, + { &esdi_ps2_device }, + { &ide_pci_device }, + { &ide_pci_2ch_device }, + { &ide_vlb_device }, + { &ide_vlb_2ch_device }, + { NULL } }; diff --git a/src/floppy/fdc.c b/src/floppy/fdc.c index 5d87d833b..a73e039b8 100644 --- a/src/floppy/fdc.c +++ b/src/floppy/fdc.c @@ -102,17 +102,17 @@ fdc_log(const char *fmt, ...) typedef const struct { - const char *internal_name; const device_t *device; } fdc_cards_t; /* All emulated machines have at least one integrated FDC controller */ static fdc_cards_t fdc_cards[] = { - { "internal", NULL }, - { "b215", &fdc_b215_device }, - { "dtk_pii151b", &fdc_pii151b_device }, - { "dtk_pii158b", &fdc_pii158b_device }, - { "", NULL }, + { &fdc_null_device }, + { &fdc_internal_device }, + { &fdc_b215_device }, + { &fdc_pii151b_device }, + { &fdc_pii158b_device }, + { NULL } }; @@ -2373,6 +2373,26 @@ fdc_3f1_enable(fdc_t *fdc, int enable) } +const device_t fdc_none_device = { + "None", + "fdc_none", + 0, 0, + NULL, NULL, NULL, + { NULL }, NULL, NULL, + NULL +}; + +const device_t fdc_internal_device = { + "None", + "fdc_internal", + 0, 0, + NULL, NULL, NULL, + { NULL }, NULL, NULL, + NULL +}; + +const device_t fdc_internal_device = {}; + const device_t fdc_xt_device = { "PC/XT Floppy Drive Controller", "fdc_xt", diff --git a/src/game/gameport.c b/src/game/gameport.c index a4a48cbea..0aac6f94c 100644 --- a/src/game/gameport.c +++ b/src/game/gameport.c @@ -80,18 +80,18 @@ static const struct { const char *internal_name; const joystick_if_t *joystick; } joysticks[] = { - { "none", &joystick_none }, - { "2axis_2button", &joystick_2axis_2button }, - { "2axis_4button", &joystick_2axis_4button }, - { "2axis_6button", &joystick_2axis_6button }, - { "2axis_8button", &joystick_2axis_8button }, - { "3axis_2button", &joystick_3axis_2button }, - { "3axis_4button", &joystick_3axis_4button }, - { "4axis_4button", &joystick_4axis_4button }, - { "ch_flighstick_pro", &joystick_ch_flightstick_pro }, - { "sidewinder_pad", &joystick_sw_pad }, - { "thrustmaster_fcs", &joystick_tm_fcs }, - { "", NULL } + { &joystick_none }, + { &joystick_2axis_2button }, + { &joystick_2axis_4button }, + { &joystick_2axis_6button }, + { &joystick_2axis_8button }, + { &joystick_3axis_2button }, + { &joystick_3axis_4button }, + { &joystick_4axis_4button }, + { &joystick_ch_flightstick_pro }, + { &joystick_sw_pad }, + { &joystick_tm_fcs }, + { NULL } }; static joystick_instance_t *joystick_instance = NULL; diff --git a/src/include/86box/network.h b/src/include/86box/network.h index d256209d0..015eb6a34 100644 --- a/src/include/86box/network.h +++ b/src/include/86box/network.h @@ -78,7 +78,6 @@ typedef struct netpkt { } netpkt_t; typedef struct { - const char *internal_name; const device_t *device; void *priv; int (*poll)(void *); diff --git a/src/lpt.c b/src/lpt.c index e2cb6ad5e..16c115fe2 100644 --- a/src/lpt.c +++ b/src/lpt.c @@ -17,20 +17,29 @@ lpt_port_t lpt_ports[PARALLEL_MAX]; +static const device_t lpt_none_device = { + "None", + "lpt_none", + 0, 0, + NULL, NULL, NULL, + { NULL }, NULL, NULL, + NULL +}; + + static const struct { - const char *internal_name; const lpt_device_t *device; } lpt_devices[] = { - {"none", NULL}, - {"dss", &dss_device}, - {"lpt_dac", &lpt_dac_device}, - {"lpt_dac_stereo", &lpt_dac_stereo_device}, - {"text_prt", &lpt_prt_text_device}, - {"dot_matrix", &lpt_prt_escp_device}, - {"postscript", &lpt_prt_ps_device}, - {"plip", &lpt_plip_device}, - {"dongle_savquest", &lpt_hasp_savquest_device}, - {"", NULL} + {&lpt_none_device}, + {&dss_device}, + {&lpt_dac_device}, + {&lpt_dac_stereo_device}, + {&lpt_prt_text_device}, + {&lpt_prt_escp_device}, + {&lpt_prt_ps_device}, + {&lpt_plip_device}, + {&lpt_hasp_savquest_device}, + {NULL} }; diff --git a/src/network/network.c b/src/network/network.c index fea6b5c93..14023bfb4 100644 --- a/src/network/network.c +++ b/src/network/network.c @@ -70,27 +70,37 @@ #include <86box/net_wd8003.h> +static const device_t net_none_device = { + "None", + "net_none", + 0, NET_TYPE_NONE, + NULL, NULL, NULL, + { NULL }, NULL, NULL, + NULL +}; + + static netcard_t net_cards[] = { - { "none", NULL, NULL }, - { "3c503", &threec503_device, NULL }, - { "pcnetisa", &pcnet_am79c960_device, NULL }, - { "pcnetisaplus", &pcnet_am79c961_device, NULL }, - { "ne1k", &ne1000_device, NULL }, - { "ne2k", &ne2000_device, NULL }, - { "pcnetracal", &pcnet_am79c960_eb_device, NULL }, - { "ne2kpnp", &rtl8019as_device, NULL }, - { "wd8003e", &wd8003e_device, NULL }, - { "wd8003eb", &wd8003eb_device, NULL }, - { "wd8013ebt", &wd8013ebt_device, NULL }, - { "plip", &plip_device, NULL }, - { "ethernextmc", ðernext_mc_device, NULL }, - { "wd8003eta", &wd8003eta_device, NULL }, - { "wd8003ea", &wd8003ea_device, NULL }, - { "pcnetfast", &pcnet_am79c973_device, NULL }, - { "pcnetpci", &pcnet_am79c970a_device, NULL }, - { "ne2kpci", &rtl8029as_device, NULL }, - { "pcnetvlb", &pcnet_am79c960_vlb_device, NULL }, - { "", NULL, NULL } + { &net_none_device, NULL }, + { &threec503_device, NULL }, + { &pcnet_am79c960_device, NULL }, + { &pcnet_am79c961_device, NULL }, + { &ne1000_device, NULL }, + { &ne2000_device, NULL }, + { &pcnet_am79c960_eb_device, NULL }, + { &rtl8019as_device, NULL }, + { &wd8003e_device, NULL }, + { &wd8003eb_device, NULL }, + { &wd8013ebt_device, NULL }, + { &plip_device, NULL }, + { ðernext_mc_device, NULL }, + { &wd8003eta_device, NULL }, + { &wd8003ea_device, NULL }, + { &pcnet_am79c973_device, NULL }, + { &pcnet_am79c970a_device, NULL }, + { &rtl8029as_device, NULL }, + { &pcnet_am79c960_vlb_device, NULL }, + { NULL, NULL } }; diff --git a/src/scsi/scsi.c b/src/scsi/scsi.c index 22a85f1eb..a60314842 100644 --- a/src/scsi/scsi.c +++ b/src/scsi/scsi.c @@ -51,45 +51,54 @@ int scsi_card_current[SCSI_BUS_MAX] = { 0, 0 }; static uint8_t next_scsi_bus = 0; +static const device_t scsi_none_device = { + "None", + "scsi_none", + 0, 0, + NULL, NULL, NULL, + { NULL }, NULL, NULL, + NULL +}; + + typedef const struct { - const char *internal_name; const device_t *device; } SCSI_CARD; static SCSI_CARD scsi_cards[] = { - { "none", NULL, }, - { "aha154xa", &aha154xa_device, }, - { "aha154xb", &aha154xb_device, }, - { "aha154xc", &aha154xc_device, }, - { "aha154xcf", &aha154xcf_device, }, - { "aha154xcp", &aha154xcp_device, }, - { "bt542b", &buslogic_542b_device, }, - { "bt542bh", &buslogic_542bh_device, }, - { "bt545s", &buslogic_545s_device, }, - { "bt545c", &buslogic_545c_device, }, - { "lcs6821n", &scsi_lcs6821n_device, }, - { "rt1000b", &scsi_rt1000b_device, }, - { "t128", &scsi_t128_device, }, - { "t130b", &scsi_t130b_device, }, + { &scsi_none_device, }, + { &aha154xa_device, }, + { &aha154xb_device, }, + { &aha154xc_device, }, + { &aha154xcf_device, }, + { &aha154xcp_device, }, + { &buslogic_542b_device, }, + { &buslogic_542bh_device, }, + { &buslogic_545s_device, }, + { &buslogic_545c_device, }, + { &scsi_lcs6821n_device, }, + { &scsi_rt1000b_device, }, + { &scsi_t128_device, }, + { &scsi_t130b_device, }, #ifdef WALTJE - { "wd33c93", &scsi_wd33c93_device, }, + { &scsi_wd33c93_device, }, #endif - { "aha1640", &aha1640_device, }, - { "bt640a", &buslogic_640a_device, }, - { "ncr53c90", &ncr53c90_mca_device, }, - { "spock", &spock_device, }, - { "bt958d", &buslogic_958d_pci_device, }, - { "ncr53c810", &ncr53c810_pci_device, }, - { "ncr53c815", &ncr53c815_pci_device, }, - { "ncr53c820", &ncr53c820_pci_device, }, - { "ncr53c825a", &ncr53c825a_pci_device, }, - { "ncr53c860", &ncr53c860_pci_device, }, - { "ncr53c875", &ncr53c875_pci_device, }, - { "dc390", &dc390_pci_device, }, - { "bt445s", &buslogic_445s_device, }, - { "bt445c", &buslogic_445c_device, }, - { "", NULL, }, + { &aha1640_device, }, + { &buslogic_640a_device, }, + { &ncr53c90_mca_device, }, + { &spock_device, }, + { &buslogic_958d_pci_device, }, + { &ncr53c810_pci_device, }, + { &ncr53c815_pci_device, }, + { &ncr53c820_pci_device, }, + { &ncr53c825a_pci_device, }, + { &ncr53c860_pci_device, }, + { &ncr53c875_pci_device, }, + { &dc390_pci_device, }, + { &buslogic_445s_device, }, + { &buslogic_445c_device, }, + { NULL, }, }; diff --git a/src/sound/sound.c b/src/sound/sound.c index cf62c587a..51f475f8e 100644 --- a/src/sound/sound.c +++ b/src/sound/sound.c @@ -42,7 +42,6 @@ typedef struct { - const char *internal_name; const device_t *device; } SOUND_CARD; @@ -81,39 +80,57 @@ static void (*filter_cd_audio)(int channel, double *buffer, void *p) = NULL; static void *filter_cd_audio_p = NULL; +static const device_t sound_none_device = { + "None", + "sound_none", + 0, 0, + NULL, NULL, NULL, + { NULL }, NULL, NULL, + NULL +}; +static const device_t sound_internal_device = { + "Internal Sound Card", + "sound_internal", + 0, 0, + NULL, NULL, NULL, + { NULL }, NULL, NULL, + NULL +}; + + static const SOUND_CARD sound_cards[] = { - { "none", NULL }, - { "internal", NULL }, - { "adlib", &adlib_device }, - { "adlibgold", &adgold_device }, - { "azt2316a", &azt2316a_device }, - { "azt1605", &azt1605_device }, - { "cs4236b", &cs4236b_device }, - { "sb", &sb_1_device }, - { "sb1.5", &sb_15_device }, - { "sb2.0", &sb_2_device }, - { "sbprov1", &sb_pro_v1_device }, - { "sbprov2", &sb_pro_v2_device }, - { "sb16", &sb_16_device }, - { "sb16_pnp", &sb_16_pnp_device }, - { "sb32_pnp", &sb_32_pnp_device }, - { "sbawe32", &sb_awe32_device }, - { "sbawe32_pnp", &sb_awe32_pnp_device }, - { "sbawe64_gold", &sb_awe64_gold_device }, + { &sound_none_device }, + { &sound_internal_device }, + { &adlib_device }, + { &adgold_device }, + { &azt2316a_device }, + { &azt1605_device }, + { &cs4236b_device }, + { &sb_1_device }, + { &sb_15_device }, + { &sb_2_device }, + { &sb_pro_v1_device }, + { &sb_pro_v2_device }, + { &sb_16_device }, + { &sb_16_pnp_device }, + { &sb_32_pnp_device }, + { &sb_awe32_device }, + { &sb_awe32_pnp_device }, + { &sb_awe64_gold_device }, #if defined(DEV_BRANCH) && defined(USE_PAS16) - { "pas16", &pas16_device }, + { &pas16_device }, #endif - { "pssj_isa", &pssj_isa_device }, - { "wss", &wss_device }, - { "adlib_mca", &adlib_mca_device }, - { "ncraudio", &ncr_business_audio_device }, - { "sbmcv", &sb_mcv_device }, - { "sbpromcv", &sb_pro_mcv_device }, - { "es1371", &es1371_device }, - { "ad1881", &ad1881_device }, - { "cs4297a", &cs4297a_device }, - { "", NULL } + { &pssj_isa_device }, + { &wss_device }, + { &adlib_mca_device }, + { &ncr_business_audio_device }, + { &sb_mcv_device }, + { &sb_pro_mcv_device }, + { &es1371_device }, + { &ad1881_device }, + { &cs4297a_device }, + { NULL } }; diff --git a/src/video/vid_table.c b/src/video/vid_table.c index 9399f1614..6c9873528 100644 --- a/src/video/vid_table.c +++ b/src/video/vid_table.c @@ -39,7 +39,6 @@ typedef struct { - const char *internal_name; const device_t *device; } VIDEO_CARD; @@ -49,176 +48,193 @@ static video_timings_t timing_default = {VIDEO_ISA, 8, 16, 32, 8, 16, 32}; static int was_reset = 0; +static const device_t vid_none_device = { + "None", + "vid_none", + 0, 0, + NULL, NULL, NULL, + { NULL }, NULL, NULL, + NULL +}; +static const device_t vid_internal_device = { + "Internal Video Card", + "vid_none", + 0, 0, + NULL, NULL, NULL, + { NULL }, NULL, NULL, + NULL +}; + static const VIDEO_CARD video_cards[] = { - { "none", NULL }, - { "internal", NULL }, - { "egawonder800", &atiega_device }, - { "mach64gx_isa", &mach64gx_isa_device }, - { "ati28800k", &ati28800k_device }, - { "ati18800v", &ati18800_vga88_device }, - { "ati28800", &ati28800_device }, - { "compaq_ati28800", &compaq_ati28800_device }, + { &vid_none_device }, + { &vid_internal_device }, + { &atiega_device }, + { &mach64gx_isa_device }, + { &ati28800k_device }, + { &ati18800_vga88_device }, + { &ati28800_device }, + { compaq_ati28800_device }, #if defined(DEV_BRANCH) && defined(USE_XL24) - { "ati28800w", &ati28800_wonderxl24_device }, + { &ati28800_wonderxl24_device }, #endif - { "ati18800", &ati18800_device }, + { &ati18800_device }, #if defined(DEV_BRANCH) && defined(USE_VGAWONDER) - { "ati18800w", &ati18800_wonder_device }, + { &ati18800_wonder_device }, #endif - { "cga", &cga_device }, - { "superega", &sega_device }, - { "cl_gd5401_isa", &gd5401_isa_device }, - { "cl_gd5402_isa", &gd5402_isa_device }, - { "cl_gd5420_isa", &gd5420_isa_device }, - { "cl_gd5422_isa", &gd5422_isa_device }, - { "cl_gd5426_isa", &gd5426_isa_device }, - { "cl_gd5426_diamond_a1_isa", &gd5426_diamond_speedstar_pro_a1_isa_device }, - { "cl_gd5428_isa", &gd5428_isa_device }, - { "cl_gd5429_isa", &gd5429_isa_device }, - { "cl_gd5434_isa", &gd5434_isa_device }, - { "cl_gd5434_diamond_a3_isa", &gd5434_diamond_speedstar_64_a3_isa_device }, - { "compaq_cga", &compaq_cga_device }, - { "compaq_cga_2", &compaq_cga_2_device }, - { "compaq_ega", &cpqega_device }, - { "ega", &ega_device }, - { "g2_gc205", &g2_gc205_device }, - { "hercules", &hercules_device }, - { "hercules_plus", &herculesplus_device }, - { "incolor", &incolor_device }, - { "im1024", &im1024_device }, - { "iskra_ega", &iskra_ega_device }, - { "kasan16vga", &et4000_kasan_isa_device }, - { "mda", &mda_device }, - { "genius", &genius_device }, - { "nga", &nga_device }, - { "ogc", &ogc_device }, - { "oti037c", &oti037c_device }, - { "oti067", &oti067_device }, - { "oti077", &oti077_device }, - { "pvga1a", ¶dise_pvga1a_device }, - { "wd90c11", ¶dise_wd90c11_device }, - { "wd90c30", ¶dise_wd90c30_device }, - { "plantronics", &colorplus_device }, - { "pgc", &pgc_device }, - { "radius_isa", &radius_svga_multiview_isa_device }, - { "rtg3106", &realtek_rtg3106_device }, - { "stealthvram_isa", &s3_diamond_stealth_vram_isa_device }, - { "orchid_s3_911", &s3_orchid_86c911_isa_device }, - { "ami_s3_924", &s3_ami_86c924_isa_device }, - { "metheus928_isa", &s3_metheus_86c928_isa_device }, - { "px_86c801_isa", &s3_phoenix_86c801_isa_device }, - { "px_s3_v7_801_isa", &s3_spea_mirage_86c801_isa_device }, - { "sigma400", &sigma_device }, - { "tvga8900b", &tvga8900b_device }, - { "tvga8900d", &tvga8900d_device }, - { "tvga9000b", &tvga9000b_device }, - { "tgkorvga", &et4000k_isa_device }, - { "et2000", &et2000_device }, - { "et4000ax", &et4000_isa_device }, - { "et4000w32", &et4000w32_device }, - { "et4000w32i", &et4000w32i_isa_device }, - { "vga", &vga_device }, - { "v7_vga_1024i", &v7_vga_1024i_device }, - { "wy700", &wy700_device }, - { "ibm1mbsvga", &gd5428_mca_device }, - { "et4000mca", &et4000_mca_device }, - { "radius_mc", &radius_svga_multiview_mca_device }, - { "mach64gx_pci", &mach64gx_pci_device }, - { "mach64vt2", &mach64vt2_device }, - { "et4000w32p_revc_pci", &et4000w32p_revc_pci_device }, - { "et4000w32p_pci", &et4000w32p_cardex_pci_device }, - { "et4000w32p_nc_pci", &et4000w32p_noncardex_pci_device }, - { "cl_gd5430_pci", &gd5430_pci_device, }, - { "cl_gd5434_pci", &gd5434_pci_device }, - { "cl_gd5436_pci", &gd5436_pci_device }, - { "cl_gd5440_pci", &gd5440_pci_device }, - { "cl_gd5446_pci", &gd5446_pci_device }, - { "cl_gd5446_stb_pci", &gd5446_stb_pci_device }, - { "cl_gd5480_pci", &gd5480_pci_device }, - { "ctl3d_banshee_pci", &creative_voodoo_banshee_device }, - { "stealth32_pci", &et4000w32p_pci_device }, - { "spea_mercurylite_pci", &s3_spea_mercury_lite_86c928_pci_device }, - { "stealth64v_pci", &s3_diamond_stealth64_964_pci_device }, - { "elsawin2kprox_964_pci", &s3_elsa_winner2000_pro_x_964_pci_device }, - { "mirocrystal20sv_pci", &s3_mirocrystal_20sv_964_pci_device }, - { "bahamas64_pci", &s3_bahamas64_pci_device }, - { "px_vision864_pci", &s3_phoenix_vision864_pci_device }, - { "stealthse_pci", &s3_diamond_stealth_se_pci_device }, - { "px_trio32_pci", &s3_phoenix_trio32_pci_device }, - { "stealth64d_pci", &s3_diamond_stealth64_pci_device }, - { "n9_9fx_pci", &s3_9fx_pci_device }, - { "px_trio64_pci", &s3_phoenix_trio64_pci_device }, - { "elsawin2kprox_pci", &s3_elsa_winner2000_pro_x_pci_device }, - { "mirovideo40sv_pci", &s3_mirovideo_40sv_ergo_968_pci_device }, - { "n9_9fx_771_pci", &s3_9fx_771_pci_device }, - { "px_vision968_pci", &s3_phoenix_vision968_pci_device }, - { "spea_mercury64p_pci", &s3_spea_mercury_p64v_pci_device }, - { "n9_9fx_531_pci", &s3_9fx_531_pci_device }, - { "px_vision868_pci", &s3_phoenix_vision868_pci_device }, - { "px_trio64vplus_pci", &s3_phoenix_trio64vplus_pci_device }, - { "trio64v2dx_pci", &s3_trio64v2_dx_pci_device }, - { "virge325_pci", &s3_virge_325_pci_device }, - { "stealth3d_2000_pci", &s3_diamond_stealth_2000_pci_device }, - { "stealth3d_3000_pci", &s3_diamond_stealth_3000_pci_device }, - { "stb_velocity3d_pci", &s3_stb_velocity_3d_pci_device }, - { "virge375_pci", &s3_virge_375_pci_device }, - { "stealth3d_2000pro_pci", &s3_diamond_stealth_2000pro_pci_device }, - { "virge385_pci", &s3_virge_385_pci_device }, - { "virge357_pci", &s3_virge_357_pci_device }, - { "stealth3d_4000_pci", &s3_diamond_stealth_4000_pci_device }, - { "trio3d2x", &s3_trio3d2x_pci_device }, + { &cga_device }, + { &sega_device }, + { &gd5401_isa_device }, + { &gd5402_isa_device }, + { &gd5420_isa_device }, + { &gd5422_isa_device }, + { &gd5426_isa_device }, + { gd5426_diamond_speedstar_pro_a1_isa_device }, + { &gd5428_isa_device }, + { &gd5429_isa_device }, + { &gd5434_isa_device }, + { gd5434_diamond_speedstar_64_a3_isa_device }, + { &compaq_cga_device }, + { &compaq_cga_2_device }, + { &cpqega_device }, + { &ega_device }, + { &g2_gc205_device }, + { &hercules_device }, + { &herculesplus_device }, + { &incolor_device }, + { &im1024_device }, + { &iskra_ega_device }, + { &et4000_kasan_isa_device }, + { &mda_device }, + { &genius_device }, + { &nga_device }, + { &ogc_device }, + { &oti037c_device }, + { &oti067_device }, + { &oti077_device }, + { ¶dise_pvga1a_device }, + { ¶dise_wd90c11_device }, + { ¶dise_wd90c30_device }, + { &colorplus_device }, + { &pgc_device }, + { &radius_svga_multiview_isa_device }, + { &realtek_rtg3106_device }, + { s3_diamond_stealth_vram_isa_device }, + { &s3_orchid_86c911_isa_device }, + { &s3_ami_86c924_isa_device }, + { &s3_metheus_86c928_isa_device }, + { &s3_phoenix_86c801_isa_device }, + { s3_spea_mirage_86c801_isa_device }, + { &sigma_device }, + { &tvga8900b_device }, + { &tvga8900d_device }, + { &tvga9000b_device }, + { &et4000k_isa_device }, + { &et2000_device }, + { &et4000_isa_device }, + { &et4000w32_device }, + { &et4000w32i_isa_device }, + { &vga_device }, + { &v7_vga_1024i_device }, + { &wy700_device }, + { &gd5428_mca_device }, + { &et4000_mca_device }, + { &radius_svga_multiview_mca_device }, + { &mach64gx_pci_device }, + { &mach64vt2_device }, + { et4000w32p_revc_pci_device }, + { &et4000w32p_cardex_pci_device }, + { et4000w32p_noncardex_pci_device }, + { &gd5430_pci_device, }, + { &gd5434_pci_device }, + { &gd5436_pci_device }, + { &gd5440_pci_device }, + { &gd5446_pci_device }, + { gd5446_stb_pci_device }, + { &gd5480_pci_device }, + { creative_voodoo_banshee_device }, + { &et4000w32p_pci_device }, + { s3_spea_mercury_lite_86c928_pci_device }, + { &s3_diamond_stealth64_964_pci_device }, + { s3_elsa_winner2000_pro_x_964_pci_device }, + { s3_mirocrystal_20sv_964_pci_device }, + { &s3_bahamas64_pci_device }, + { s3_phoenix_vision864_pci_device }, + { &s3_diamond_stealth_se_pci_device }, + { &s3_phoenix_trio32_pci_device }, + { &s3_diamond_stealth64_pci_device }, + { &s3_9fx_pci_device }, + { &s3_phoenix_trio64_pci_device }, + { s3_elsa_winner2000_pro_x_pci_device }, + { s3_mirovideo_40sv_ergo_968_pci_device }, + { &s3_9fx_771_pci_device }, + { s3_phoenix_vision968_pci_device }, + { s3_spea_mercury_p64v_pci_device }, + { &s3_9fx_531_pci_device }, + { s3_phoenix_vision868_pci_device }, + { s3_phoenix_trio64vplus_pci_device }, + { &s3_trio64v2_dx_pci_device }, + { &s3_virge_325_pci_device }, + { s3_diamond_stealth_2000_pci_device }, + { s3_diamond_stealth_3000_pci_device }, + { s3_stb_velocity_3d_pci_device }, + { &s3_virge_375_pci_device }, + { s3_diamond_stealth_2000pro_pci_device }, + { &s3_virge_385_pci_device }, + { &s3_virge_357_pci_device }, + { s3_diamond_stealth_4000_pci_device }, + { &s3_trio3d2x_pci_device }, #if defined(DEV_BRANCH) && defined(USE_MGA) - { "mystique", &mystique_device }, - { "mystique_220", &mystique_220_device }, + { &mystique_device }, + { &mystique_220_device }, #endif - { "tgui9440_pci", &tgui9440_pci_device }, - { "tgui9660_pci", &tgui9660_pci_device }, - { "tgui9680_pci", &tgui9680_pci_device }, - { "voodoo_banshee_pci", &voodoo_banshee_device }, - { "voodoo3_2k_pci", &voodoo_3_2000_device }, - { "voodoo3_3k_pci", &voodoo_3_3000_device }, - { "mach64gx_vlb", &mach64gx_vlb_device }, - { "et4000w32i_vlb", &et4000w32i_vlb_device }, - { "et4000w32p_revc_vlb", &et4000w32p_revc_vlb_device }, - { "et4000w32p_vlb", &et4000w32p_cardex_vlb_device }, - { "stealth32_vlb", &et4000w32p_vlb_device }, - { "et4000w32p_nc_vlb", &et4000w32p_noncardex_vlb_device }, - { "cl_gd5424_vlb", &gd5424_vlb_device }, - { "cl_gd5426_vlb", &gd5426_vlb_device }, - { "cl_gd5428_vlb", &gd5428_vlb_device }, - { "cl_gd5428_diamond_b1_vlb", &gd5428_diamond_speedstar_pro_b1_vlb_device }, - { "cl_gd5429_vlb", &gd5429_vlb_device }, - { "cl_gd5430_vlb", &gd5430_diamond_speedstar_pro_se_a8_vlb_device }, - { "cl_gd5434_vlb", &gd5434_vlb_device }, - { "metheus928_vlb", &s3_metheus_86c928_vlb_device }, - { "mirocrystal8s_vlb", &s3_mirocrystal_8s_805_vlb_device }, - { "mirocrystal10sd_vlb", &s3_mirocrystal_10sd_805_vlb_device }, - { "px_86c805_vlb", &s3_phoenix_86c805_vlb_device }, - { "px_s3_v7_805_vlb", &s3_spea_mirage_86c805_vlb_device }, - { "stealth64v_vlb", &s3_diamond_stealth64_964_vlb_device }, - { "mirocrystal20sv_vlb", &s3_mirocrystal_20sv_964_vlb_device }, - { "mirocrystal20sd_vlb", &s3_mirocrystal_20sd_864_vlb_device }, - { "bahamas64_vlb", &s3_bahamas64_vlb_device }, - { "px_vision864_vlb", &s3_phoenix_vision864_vlb_device }, - { "stealthse_vlb", &s3_diamond_stealth_se_vlb_device }, - { "px_trio32_vlb", &s3_phoenix_trio32_vlb_device }, - { "stealth64d_vlb", &s3_diamond_stealth64_vlb_device }, - { "n9_9fx_vlb", &s3_9fx_vlb_device }, - { "px_trio64_vlb", &s3_phoenix_trio64_vlb_device }, - { "spea_miragep64_vlb", &s3_spea_mirage_p64_vlb_device }, - { "px_vision968_vlb", &s3_phoenix_vision968_vlb_device }, - { "px_vision868_vlb", &s3_phoenix_vision868_vlb_device }, - { "ht216_32", &ht216_32_standalone_device }, - { "tgui9400cxi_vlb", &tgui9400cxi_device }, - { "tgui9440_vlb", &tgui9440_vlb_device }, - { "virge357_agp", &s3_virge_357_agp_device }, - { "stealth3d_4000_agp", &s3_diamond_stealth_4000_agp_device }, - { "trio3d2x_agp", &s3_trio3d2x_agp_device }, - { "velocity100_agp", &velocity_100_agp_device }, - { "voodoo3_2k_agp", &voodoo_3_2000_agp_device }, - { "voodoo3_3k_agp", &voodoo_3_3000_agp_device }, - { "", NULL } + { &tgui9440_pci_device }, + { &tgui9660_pci_device }, + { &tgui9680_pci_device }, + { voodoo_banshee_device }, + { &voodoo_3_2000_device }, + { &voodoo_3_3000_device }, + { &mach64gx_vlb_device }, + { &et4000w32i_vlb_device }, + { et4000w32p_revc_vlb_device }, + { &et4000w32p_cardex_vlb_device }, + { &et4000w32p_vlb_device }, + { et4000w32p_noncardex_vlb_device }, + { &gd5424_vlb_device }, + { &gd5426_vlb_device }, + { &gd5428_vlb_device }, + { gd5428_diamond_speedstar_pro_b1_vlb_device }, + { &gd5429_vlb_device }, + { &gd5430_diamond_speedstar_pro_se_a8_vlb_device }, + { &gd5434_vlb_device }, + { &s3_metheus_86c928_vlb_device }, + { s3_mirocrystal_8s_805_vlb_device }, + { s3_mirocrystal_10sd_805_vlb_device }, + { &s3_phoenix_86c805_vlb_device }, + { s3_spea_mirage_86c805_vlb_device }, + { &s3_diamond_stealth64_964_vlb_device }, + { s3_mirocrystal_20sv_964_vlb_device }, + { s3_mirocrystal_20sd_864_vlb_device }, + { &s3_bahamas64_vlb_device }, + { s3_phoenix_vision864_vlb_device }, + { &s3_diamond_stealth_se_vlb_device }, + { &s3_phoenix_trio32_vlb_device }, + { &s3_diamond_stealth64_vlb_device }, + { &s3_9fx_vlb_device }, + { &s3_phoenix_trio64_vlb_device }, + { s3_spea_mirage_p64_vlb_device }, + { s3_phoenix_vision968_vlb_device }, + { s3_phoenix_vision868_vlb_device }, + { &ht216_32_standalone_device }, + { tgui9400cxi_device }, + { &tgui9440_vlb_device }, + { &s3_virge_357_agp_device }, + { s3_diamond_stealth_4000_agp_device }, + { &s3_trio3d2x_agp_device }, + { velocity_100_agp_device }, + { &voodoo_3_2000_agp_device }, + { &voodoo_3_3000_agp_device }, + { NULL } };