Fixed the 8514/A to VGA soft reset and made the vga_on variable a global one to make sure it's used by the soft reset.

Updated copyright holder that was accidentally reverted while committing the IBM 8514/A source files.
This commit is contained in:
TC1995
2022-05-19 20:07:06 +02:00
parent 721ce001e7
commit 1ac46d792f
4 changed files with 12 additions and 8 deletions

View File

@@ -958,8 +958,8 @@ ibm8514_accel_out(uint16_t port, uint32_t val, svga_t *svga, int len)
case 0x4ae8:
dev->accel.advfunc_cntl = val & 7;
svga->vga_on = ((dev->accel.advfunc_cntl & 1) == 0) ? 1 : 0;
//pclog("IBM 8514/A: VGA ON = %i, val = %02x\n", svga->vga_on, val);
vga_on = ((dev->accel.advfunc_cntl & 1) == 0) ? 1 : 0;
//pclog("IBM 8514/A: VGA ON = %i, val = %02x\n", vga_on, val);
svga_recalctimings(svga);
break;
}

View File

@@ -53,7 +53,7 @@ uint8_t svga_rotate[8][256];
/*Primary SVGA device. As multiple video cards are not yet supported this is the
only SVGA device.*/
static svga_t *svga_pri;
int vga_on;
svga_t
*svga_get_pri()
@@ -554,7 +554,7 @@ svga_recalctimings(svga_t *svga)
} else
overscan_x = 16;
if (svga->vga_on) {
if (vga_on) {
if (svga->recalctimings_ex) {
svga->recalctimings_ex(svga);
}
@@ -657,7 +657,7 @@ svga_poll(void *p)
int wx, wy;
int ret, old_ma;
if (!svga->vga_on) {
if (!vga_on) {
ibm8514_poll(&svga->dev8514, svga);
return;
}
@@ -968,7 +968,7 @@ svga_init(const device_t *info, svga_t *svga, void *p, int memsize,
svga->translate_address = NULL;
svga->ksc5601_english_font_type = 0;
svga->vga_on = 1;
vga_on = 1;
if ((info->flags & DEVICE_PCI) || (info->flags & DEVICE_VLB) || (info->flags & DEVICE_MCA)) {
mem_mapping_add(&svga->mapping, 0xa0000, 0x20000,