MegaPC uses a jumper to disable onboard video instead of doing it automatically.

This commit is contained in:
SarahW 2018-02-26 20:38:51 +00:00
commit c14c22169d
5 changed files with 5 additions and 20 deletions

View file

@ -159,7 +159,7 @@ MODEL models[] =
{"[386SX] Acer 386SX25/N", ROM_ACER386, "acer386", { {"Intel", cpus_acer}, {"", NULL}, {"", NULL}}, MODEL_GFX_DISABLE_SW|MODEL_AT|MODEL_PS2|MODEL_HAS_IDE, 1, 16, 1, at_acer386sx_init, NULL},
{"[386SX] AMI 386SX clone", ROM_AMI386SX, "ami386", { {"Intel", cpus_i386SX}, {"AMD", cpus_Am386SX}, {"Cyrix", cpus_486SLC}}, MODEL_GFX_NONE|MODEL_AT|MODEL_HAS_IDE, 512,16384, 128, at_headland_init, NULL},
{"[386SX] Amstrad MegaPC", ROM_MEGAPC, "megapc", { {"Intel", cpus_i386SX}, {"AMD", cpus_Am386SX}, {"Cyrix", cpus_486SLC}}, MODEL_GFX_DISABLE_SW|MODEL_AT|MODEL_PS2|MODEL_HAS_IDE, 1, 16, 1, at_wd76c10_init, NULL},
{"[386SX] Amstrad MegaPC", ROM_MEGAPC, "megapc", { {"Intel", cpus_i386SX}, {"AMD", cpus_Am386SX}, {"Cyrix", cpus_486SLC}}, MODEL_GFX_DISABLE_HW|MODEL_AT|MODEL_PS2|MODEL_HAS_IDE, 1, 16, 1, at_wd76c10_init, NULL},
{"[386SX] DTK 386SX clone", ROM_DTK386, "dtk386", { {"Intel", cpus_i386SX}, {"AMD", cpus_Am386SX}, {"Cyrix", cpus_486SLC}}, MODEL_GFX_NONE|MODEL_AT|MODEL_HAS_IDE, 512,16384, 128, at_neat_init, NULL},
{"[386SX] Epson PC AX3", ROM_EPSON_PCAX3, "epson_pcax3", { {"Intel", cpus_i386SX}, {"AMD", cpus_Am386SX}, {"Cyrix", cpus_486SLC}}, MODEL_GFX_NONE|MODEL_AT, 256,15872, 128, at_init, NULL},
{"[386SX] IBM PS/1 model 2121", ROM_IBMPS1_2121, "ibmps1_2121", { {"Intel", cpus_i386SX}, {"AMD", cpus_Am386SX}, {"Cyrix", cpus_486SLC}}, MODEL_GFX_FIXED|MODEL_AT|MODEL_PS2|MODEL_HAS_IDE, 1, 16, 1, ps1_m2121_init, NULL},

View file

@ -370,8 +370,6 @@ static void *paradise_wd90c11_megapc_init()
"megapc/211253-bios hi.u19",
0xc0000, 0x8000, 0x7fff, 0, MEM_MAPPING_EXTERNAL);
wd76c10_set_bios_rom(&paradise->bios_rom);
return paradise;
}

View file

@ -663,13 +663,12 @@ void video_init()
break;
case ROM_MEGAPC:
device_add(&paradise_wd90c11_megapc_device);
if (gfxcard != GFX_BUILTIN)
if (gfxcard == GFX_BUILTIN)
{
svga_set_override(svga_get_pri(), 1);
break;
device_add(&paradise_wd90c11_megapc_device);
return;
}
return;
break;
case ROM_ACER386:
device_add(&oti067_acer386_device);

View file

@ -11,12 +11,6 @@ static uint16_t wd76c10_2072;
static uint16_t wd76c10_2872;
static uint16_t wd76c10_5872;
static uint16_t wd76c10_6072;
static rom_t *video_bios_rom = NULL;
void wd76c10_set_bios_rom(rom_t *rom)
{
video_bios_rom = rom;
}
uint16_t wd76c10_read(uint16_t port, void *priv)
{
@ -95,9 +89,6 @@ void wd76c10_write(uint16_t port, uint16_t val, void *priv)
case 0x6072:
wd76c10_6072 = val;
mem_mapping_disable(&video_bios_rom->mapping);
if ((val & 0xc) == 8)
mem_mapping_enable(&video_bios_rom->mapping);
break;
}
}

View file

@ -1,4 +1 @@
#include "rom.h"
void wd76c10_init();
void wd76c10_set_bios_rom(rom_t *rom);