diff --git a/src/machine/m_ps1.c b/src/machine/m_ps1.c index afa9a9588..35233a4ed 100644 --- a/src/machine/m_ps1.c +++ b/src/machine/m_ps1.c @@ -504,7 +504,7 @@ ps1_setup(int model) if (model == 2011) device_add(&ps1vga_device); else - device_add(&ti_cf62011_device); + device_add(&ibm_ps1_2121_device); } if (model == 2121) { diff --git a/src/video/vid_ati_mach64.c b/src/video/vid_ati_mach64.c index 864332f4c..4e94a295c 100644 --- a/src/video/vid_ati_mach64.c +++ b/src/video/vid_ati_mach64.c @@ -8,7 +8,7 @@ * * ATi Mach64 graphics card emulation. * - * Version: @(#)vid_ati_mach64.c 1.0.9 2018/01/21 + * Version: @(#)vid_ati_mach64.c 1.0.10 2018/01/21 * * Authors: Sarah Walker, * Miran Grca, @@ -42,7 +42,7 @@ #define BIOS_ROM_PATH L"roms/video/mach64/bios.bin" #define BIOS_ISA_ROM_PATH L"roms/video/mach64/mach64.bin" -#define BIOS_VLB_ROM_PATH L"roms/video/mach64/mach64_vlb_dram.bin" +#define BIOS_VLB_ROM_PATH L"roms/video/mach64/mach64_vlb_vram.bin" #define BIOS_ROMVT2_PATH L"roms/video/mach64/atimach64vt2pci.bin" @@ -3389,7 +3389,7 @@ static void *mach64gx_init(device_t *info) mach64->config_stat0 = (5 << 9) | (3 << 3); /*ATI-68860, 256Kx16 DRAM*/ if (info->flags & DEVICE_PCI) mach64->config_stat0 |= 0; /*PCI, 256Kx16 DRAM*/ - else + else if (info->flags & DEVICE_VLB) mach64->config_stat0 |= 1; /*VLB, 256Kx16 DRAM*/ ati_eeprom_load(&mach64->eeprom, L"mach64.nvr", 1); @@ -3398,8 +3398,6 @@ static void *mach64gx_init(device_t *info) rom_init(&mach64->bios_rom, BIOS_ROM_PATH, 0xc0000, 0x8000, 0x7fff, 0, MEM_MAPPING_EXTERNAL); else if (info->flags & DEVICE_VLB) rom_init(&mach64->bios_rom, BIOS_VLB_ROM_PATH, 0xc0000, 0x8000, 0x7fff, 0, MEM_MAPPING_EXTERNAL); - else - rom_init(&mach64->bios_rom, BIOS_ISA_ROM_PATH, 0xc0000, 0x8000, 0x7fff, 0, MEM_MAPPING_EXTERNAL); return mach64; } @@ -3561,19 +3559,6 @@ static device_config_t mach64vt2_config[] = } }; -device_t mach64gx_isa_device = -{ - "ATI Mach64GX ISA", - DEVICE_ISA, - 0, - mach64gx_init, mach64_close, NULL, - mach64gx_isa_available, - mach64_speed_changed, - mach64_force_redraw, - mach64_add_status_info, - mach64gx_config -}; - device_t mach64gx_vlb_device = { "ATI Mach64GX VLB", diff --git a/src/video/vid_svga.c b/src/video/vid_svga.c index bbfb64d6e..0930426ab 100644 --- a/src/video/vid_svga.c +++ b/src/video/vid_svga.c @@ -11,13 +11,13 @@ * This is intended to be used by another SVGA driver, * and not as a card in it's own right. * - * Version: @(#)vid_svga.c 1.0.13 2017/12/28 + * Version: @(#)vid_svga.c 1.0.14 2018/01/21 * * Authors: Sarah Walker, * Miran Grca, * - * Copyright 2008-2017 Sarah Walker. - * Copyright 2016,2017 Miran Grca. + * Copyright 2008-2018 Sarah Walker. + * Copyright 2016-2018 Miran Grca. */ #include #include @@ -365,7 +365,13 @@ uint8_t svga_in(uint16_t addr, void *p) case 0x3C1: return svga->attrregs[svga->attraddr]; case 0x3c2: - temp = svga->sense; + if (gfxcard == GFX_TVGA) { + if ((svga->vgapal[0].r + svga->vgapal[0].g + svga->vgapal[0].b) >= 0x50) + temp = 0; + else + temp = 0x10; + } else + temp = svga->sense; return temp; case 0x3C3: return svga->enabled & 0x01; diff --git a/src/video/vid_table.c b/src/video/vid_table.c index 5a4e9d6f7..8543bb9cf 100644 --- a/src/video/vid_table.c +++ b/src/video/vid_table.c @@ -8,7 +8,7 @@ * * Define all known video cards. * - * Version: @(#)vid_table.c 1.0.9 2018/01/21 + * Version: @(#)vid_table.c 1.0.10 2018/01/21 * * Authors: Miran Grca, * Fred N. van Kempen, @@ -82,10 +82,6 @@ video_cards[] = { NULL, GFX_NONE }, { "Internal", "internal", NULL, GFX_INTERNAL }, - { "[ISA] ATI Graphics Pro Turbo (Mach64 GX)", "mach64x_vlb", - &mach64gx_isa_device, GFX_MACH64GX_ISA }, - { "[ISA] ATI VGA Charger (ATI-28800-5)", "ati28800", - &ati28800_device, GFX_VGACHARGER }, { "[ISA] ATI VGA Charger (ATI-28800-5)", "ati28800", &ati28800_device, GFX_VGACHARGER }, { "[ISA] ATI VGA Wonder XL24 (ATI-28800-6)", "ati28800w", @@ -121,8 +117,10 @@ video_cards[] = { { "[ISA] Paradise WD90C11-LR", "wd90c11", ¶dise_wd90c11_device, GFX_WD90C11 }, { "[ISA] Paradise WD90C30-LR", "wd90c30", ¶dise_wd90c30_device, GFX_WD90C30 }, { "[ISA] Plantronics ColorPlus", "plantronics", &colorplus_device, GFX_COLORPLUS }, +#if defined(DEV_BRANCH) && defined(USE_TI) {"[ISA] TI CF62011 SVGA", "ti_cf62011", &ti_cf62011_device, GFX_TICF62011 }, +#endif { "[ISA] Trident TVGA8900D", "tvga8900d", &tvga8900d_device, GFX_TVGA }, { "[ISA] Tseng ET4000AX", "et4000ax", &et4000_device, GFX_ET4000 }, {"[ISA] VGA", "vga", &vga_device, GFX_VGA }, diff --git a/src/video/vid_ti_cf62011.c b/src/video/vid_ti_cf62011.c index cf65ce532..2dc036ce3 100644 --- a/src/video/vid_ti_cf62011.c +++ b/src/video/vid_ti_cf62011.c @@ -42,15 +42,15 @@ * which are the same as the XGA. It supports up to 1MB of VRAM, * but we lock it down to 512K. The PS/1 2122 had 256K. * - * Version: @(#)vid_ti_cf62011.c 1.0.2 2017/11/05 + * Version: @(#)vid_ti_cf62011.c 1.0.3 2018/01/21 * * Authors: Sarah Walker, * Miran Grca, * Fred N. van Kempen, * - * Copyright 2008-2017 Sarah Walker. - * Copyright 2016,2017 Miran Grca. - * Copyright 2017 Fred N. van Kempen. + * Copyright 2008-2018 Sarah Walker. + * Copyright 2016-2018 Miran Grca. + * Copyright 2017,2018 Fred N. van Kempen. */ #include #include @@ -270,6 +270,7 @@ vid_init(device_t *info) } +#if defined(DEV_BRANCH) && defined(USE_TI) static device_config_t vid_config[] = { { @@ -306,6 +307,7 @@ device_t ti_cf62011_device = { vid_add_status_info, vid_config }; +#endif device_t ibm_ps1_2121_device = { diff --git a/src/video/vid_ti_cf62011.h b/src/video/vid_ti_cf62011.h index 97a4de996..aa82bca5e 100644 --- a/src/video/vid_ti_cf62011.h +++ b/src/video/vid_ti_cf62011.h @@ -1,2 +1,4 @@ +#if defined(DEV_BRANCH) && defined(USE_TI) extern device_t ti_cf62011_device; +#endif extern device_t ibm_ps1_2121_device; diff --git a/src/video/video.h b/src/video/video.h index 6d1ccbfa5..7ad358bd8 100644 --- a/src/video/video.h +++ b/src/video/video.h @@ -30,9 +30,19 @@ enum { GFX_NONE = 0, GFX_INTERNAL, GFX_CGA, + GFX_COMPAQ_CGA, /* Compaq CGA */ + GFX_COMPAQ_CGA_2, /* Compaq CGA 2 */ + GFX_COLORPLUS, /* Plantronics ColorPlus */ + GFX_WY700, /* Wyse 700 */ GFX_MDA, + GFX_GENIUS, /* MDSI Genius */ GFX_HERCULES, + GFX_HERCULESPLUS, + GFX_INCOLOR, /* Hercules InColor */ GFX_EGA, /* Using IBM EGA BIOS */ + GFX_COMPAQ_EGA, /* Compaq EGA */ + GFX_SUPER_EGA, /* Using Chips & Technologies SuperEGA BIOS */ + GFX_VGA, /* IBM VGA */ GFX_TVGA, /* Using Trident TVGA8900D BIOS */ GFX_ET4000, /* Tseng ET4000 */ GFX_ET4000W32_VLB, /* Tseng ET4000/W32p (Diamond Stealth 32) VLB */ @@ -41,75 +51,62 @@ enum { GFX_BAHAMAS64_PCI, /* S3 Vision864 (Paradise Bahamas 64) PCI */ GFX_N9_9FX_VLB, /* S3 764/Trio64 (Number Nine 9FX) VLB */ GFX_N9_9FX_PCI, /* S3 764/Trio64 (Number Nine 9FX) PCI */ - GFX_VIRGE_VLB, /* S3 Virge VLB */ - GFX_VIRGE_PCI, /* S3 Virge PCI */ GFX_TGUI9440_VLB, /* Trident TGUI9440 VLB */ GFX_TGUI9440_PCI, /* Trident TGUI9440 PCI */ - GFX_VGA, /* IBM VGA */ GFX_VGAEDGE16, /* ATI VGA Edge-16 (18800-1) */ GFX_VGACHARGER, /* ATI VGA Charger (28800-5) */ - GFX_OTI067, /* Oak OTI-067 */ - GFX_MACH64GX_ISA, /* ATI Graphics Pro Turbo (Mach64) VLB */ + GFX_VGAWONDERXL, /* Compaq ATI VGA Wonder XL (28800-5) */ + GFX_VGAWONDERXL24, /* Compaq ATI VGA Wonder XL24 (28800-6) */ GFX_MACH64GX_VLB, /* ATI Graphics Pro Turbo (Mach64) VLB */ GFX_MACH64GX_PCI, /* ATI Graphics Pro Turbo (Mach64) PCI */ - GFX_CL_GD5429, /* Cirrus Logic CL-GD5429 */ - GFX_VIRGEDX_VLB, /* S3 Virge/DX VLB */ - GFX_VIRGEDX_PCI, /* S3 Virge/DX PCI */ - GFX_PHOENIX_TRIO32_VLB, /* S3 732/Trio32 (Phoenix) VLB */ - GFX_PHOENIX_TRIO32_PCI, /* S3 732/Trio32 (Phoenix) PCI */ - GFX_PHOENIX_TRIO64_VLB, /* S3 764/Trio64 (Phoenix) VLB */ - GFX_PHOENIX_TRIO64_PCI, /* S3 764/Trio64 (Phoenix) PCI */ - GFX_INCOLOR, /* Hercules InColor */ - GFX_COLORPLUS, /* Plantronics ColorPlus */ - GFX_WY700, /* Wyse 700 */ - GFX_GENIUS, /* MDSI Genius */ GFX_MACH64VT2, /* ATI Mach64 VT2 */ - GFX_COMPAQ_EGA, /* Compaq EGA */ - GFX_SUPER_EGA, /* Using Chips & Technologies SuperEGA BIOS */ - GFX_COMPAQ_VGA, /* Compaq/Paradise VGA */ - GFX_CL_GD5446, /* Cirrus Logic CL-GD5446 */ - GFX_VGAWONDERXL, /* Compaq ATI VGA Wonder XL (28800-5) */ - GFX_WD90C11, /* Paradise WD90C11-LR Standalone */ - GFX_OTI077, /* Oak OTI-077 */ - GFX_VGAWONDERXL24, /* Compaq ATI VGA Wonder XL24 (28800-6) */ - GFX_STEALTH64_VLB, /* S3 Vision864 (Diamond Stealth 64) VLB */ - GFX_STEALTH64_PCI, /* S3 Vision864 (Diamond Stealth 64) PCI */ - GFX_PHOENIX_VISION864_VLB, /* S3 Vision864 (Phoenix) VLB */ - GFX_PHOENIX_VISION864_PCI, /* S3 Vision864 (Phoenix) PCI */ - GFX_RIVATNT, /* nVidia Riva TNT */ - GFX_RIVATNT2, /* nVidia Riva TNT2 */ - GFX_RIVA128, /* nVidia Riva 128 */ - GFX_HERCULESPLUS, - GFX_VIRGEVX_VLB, /* S3 Virge/VX VLB */ - GFX_VIRGEVX_PCI, /* S3 Virge/VX PCI */ - GFX_VIRGEDX4_VLB, /* S3 Virge/DX (VBE 2.0) VLB */ - GFX_VIRGEDX4_PCI, /* S3 Virge/DX (VBE 2.0) PCI */ - GFX_OTI037, /* Oak OTI-037 */ - GFX_TRIGEM_UNK, /* Unknown TriGem graphics card w/Hangeul ROM */ - GFX_MIRO_VISION964, /* S3 Vision964 (Miro Crystal) */ +#if defined(DEV_BRANCH) && defined(USE_CIRRUS) GFX_CL_GD5422, /* Cirrus Logic CL-GD5422 */ + GFX_CL_GD5429, /* Cirrus Logic CL-GD5429 */ GFX_CL_GD5430, /* Cirrus Logic CL-GD5430 */ GFX_CL_GD5434, /* Cirrus Logic CL-GD5434 */ GFX_CL_GD5436, /* Cirrus Logic CL-GD5436 */ GFX_CL_GD5440, /* Cirrus Logic CL-GD5440 */ - GFX_TICF62011, /* TI CF62011 */ - GFX_COMPAQ_CGA, /* Compaq CGA */ - GFX_COMPAQ_CGA_2, /* Compaq CGA 2 */ + GFX_CL_GD5446, /* Cirrus Logic CL-GD5446 */ +#endif +#if defined(DEV_BRANCH) && defined(USE_RIVA) + GFX_RIVATNT, /* nVidia Riva TNT */ + GFX_RIVATNT2, /* nVidia Riva TNT2 */ + GFX_RIVA128, /* nVidia Riva 128 */ +#endif + GFX_OTI067, /* Oak OTI-067 */ + GFX_OTI077, /* Oak OTI-077 */ GFX_PVGA1A, /* Paradise PVGA1A Standalone */ + GFX_WD90C11, /* Paradise WD90C11-LR Standalone */ GFX_WD90C30, /* Paradise WD90C30-LR Standalone */ + GFX_PHOENIX_TRIO32_VLB, /* S3 732/Trio32 (Phoenix) VLB */ + GFX_PHOENIX_TRIO32_PCI, /* S3 732/Trio32 (Phoenix) PCI */ + GFX_PHOENIX_TRIO64_VLB, /* S3 764/Trio64 (Phoenix) VLB */ + GFX_PHOENIX_TRIO64_PCI, /* S3 764/Trio64 (Phoenix) PCI */ + GFX_VIRGE_VLB, /* S3 Virge VLB */ + GFX_VIRGE_PCI, /* S3 Virge PCI */ + GFX_VIRGEDX_VLB, /* S3 Virge/DX VLB */ + GFX_VIRGEDX_PCI, /* S3 Virge/DX PCI */ + GFX_VIRGEDX4_VLB, /* S3 Virge/DX (VBE 2.0) VLB */ + GFX_VIRGEDX4_PCI, /* S3 Virge/DX (VBE 2.0) PCI */ + GFX_VIRGEVX_VLB, /* S3 Virge/VX VLB */ + GFX_VIRGEVX_PCI, /* S3 Virge/VX PCI */ + GFX_STEALTH64_VLB, /* S3 Vision864 (Diamond Stealth 64) VLB */ + GFX_STEALTH64_PCI, /* S3 Vision864 (Diamond Stealth 64) PCI */ + GFX_PHOENIX_VISION864_VLB, /* S3 Vision864 (Phoenix) VLB */ + GFX_PHOENIX_VISION864_PCI, /* S3 Vision864 (Phoenix) PCI */ +#if defined(DEV_BRANCH) && defined(USE_TI) + GFX_TICF62011, /* TI CF62011 */ +#endif GFX_MAX }; -#define MDA ((gfxcard==GFX_MDA || gfxcard==GFX_HERCULES || \ - gfxcard==GFX_HERCULESPLUS || gfxcard==GFX_INCOLOR || \ - gfxcard==GFX_GENIUS) && \ +#define MDA ((gfxcard>=GFX_MDA) && \ + (gfxcard<=GFX_INCOLOR) && \ (romset=ROM_IBMAT)) -#define VGA (((gfxcard>=GFX_TVGA) && gfxcard!=GFX_COLORPLUS && \ - gfxcard!=GFX_INCOLOR && gfxcard!=GFX_WY700 && \ - gfxcard!=GFX_GENIUS && gfxcard!=GFX_COMPAQ_EGA && \ - gfxcard!=GFX_SUPER_EGA && gfxcard!=GFX_HERCULESPLUS) && \ +#define VGA ((gfxcard>=GFX_VGA) && \ (romset!=ROM_PC1640 && romset!=ROM_PC1512 && \ romset!=ROM_TANDY && romset!=ROM_PC200 && romset!=ROM_T3100E)) diff --git a/src/win/win_dialog.c b/src/win/win_dialog.c index 6c4377f2c..009f4b503 100644 --- a/src/win/win_dialog.c +++ b/src/win/win_dialog.c @@ -198,8 +198,6 @@ file_dlg_w(HWND hwnd, WCHAR *f, WCHAR *fn, int save) wcstombs(openfilestring, wopenfilestring, sizeof(openfilestring)); // pclog("File dialog return true\n"); - pclog("Filter Index: %i\n", ofn.nFilterIndex); - return(0); }