Fixed the Toshiba T1000, T1200, and Xi8088;

If device initialization files and the device has a name, the name of the device is logged;
Fixed path of the OTI-037c BIOS;
The ATI Mach64GX ISA is now AT-compatible only;
The CL-GD 5428 and 5429 ISA are now available on XT machines.
This commit is contained in:
OBattler
2018-03-03 00:02:21 +01:00
parent 8e5151d652
commit a7515042c4
7 changed files with 28 additions and 21 deletions

View File

@@ -9,7 +9,7 @@
* Implementation of the generic device interface to handle
* all devices attached to the emulator.
*
* Version: @(#)device.c 1.0.8 2018/02/18
* Version: @(#)device.c 1.0.9 2018/03/02
*
* Authors: Sarah Walker, <http://pcem-emulator.co.uk/>
* Miran Grca, <mgrca8@gmail.com>
@@ -64,8 +64,12 @@ device_add(device_t *d)
if (d->init != NULL) {
priv = d->init(d);
if (priv == NULL)
fatal("device_add: device init failed\n");
if (priv == NULL) {
if (d->name)
fatal("device_add: device init failed (%s)\n", d->name);
else
fatal("device_add: device init failed\n");
}
}
devices[c] = d;

View File

@@ -131,5 +131,6 @@ void machine_xt_xi8088_init(machine_t *model)
nmi_init();
nvr_at_init(8);
pic2_init();
device_add(&gameport_device);
if (joystick_type != 7)
device_add(&gameport_device);
}

View File

@@ -51,7 +51,7 @@ machine_t machines[] = {
#if defined(DEV_BRANCH) && defined(USE_LASERXT)
{ "[8088] VTech Laser Turbo XT", ROM_LTXT, "ltxt", {{"", cpus_8088}, {"", NULL}, {"", NULL}, {"", NULL}, {"", NULL}}, 0, MACHINE_ISA, 512, 512, 256, 0, machine_xt_laserxt_init, NULL, NULL },
#endif
{ "[8088] Xi8088", ROM_XI8088, "xi8088", {{"", cpus_8088}, {"", NULL}, {"", NULL}, {"", NULL}, {"", NULL}}, 1, MACHINE_ISA | MACHINE_PS2, 64, 1024, 128, 127, machine_xt_xi8088_init, xi8088_get_device, nvr_at_close },
{ "[8088] Xi8088", ROM_XI8088, "xi8088", {{"", cpus_8088}, {"", NULL}, {"", NULL}, {"", NULL}, {"", NULL}}, 0, MACHINE_ISA | MACHINE_PS2, 64, 1024, 128, 127, machine_xt_xi8088_init, xi8088_get_device, nvr_at_close },
{ "[8086] Amstrad PC1512", ROM_PC1512, "pc1512", {{"", cpus_pc1512}, {"", NULL}, {"", NULL}, {"", NULL}, {"", NULL}}, 0, MACHINE_ISA | MACHINE_VIDEO | MACHINE_MOUSE, 512, 640, 128, 63, machine_amstrad_init, NULL, nvr_at_close },
{ "[8086] Amstrad PC1640", ROM_PC1640, "pc1640", {{"", cpus_8086}, {"", NULL}, {"", NULL}, {"", NULL}, {"", NULL}}, 0, MACHINE_ISA | MACHINE_VIDEO | MACHINE_MOUSE, 640, 640, 0, 63, machine_amstrad_init, NULL, nvr_at_close },

View File

@@ -13,7 +13,7 @@
* - c386sx16 BIOS fails checksum
* - the loadfont() calls should be done elsewhere
*
* Version: @(#)rom.c 1.0.33 2018/03/02
* Version: @(#)rom.c 1.0.34 2018/03/02
*
* Authors: Sarah Walker, <http://pcem-emulator.co.uk/>
* Miran Grca, <mgrca8@gmail.com>
@@ -354,14 +354,14 @@ rom_load_bios(int rom_id)
case ROM_XI8088:
if (rom_load_linear_inverted(
L"roms/machines/xi8088/bios-xi8088.bin",
0x000000, 131072, 128, rom)) {
0x000000, 131072, 0, rom)) {
biosmask = 0x1ffff;
xi8088_bios_128kb_set(1);
return(1);
} else {
if (rom_load_linear(
L"roms/machines/xi8088/bios-xi8088.bin",
0x000000, 65536, 128, rom)) {
0x000000, 65536, 0, rom)) {
xi8088_bios_128kb_set(0);
return(1);
}
@@ -904,19 +904,21 @@ rom_load_bios(int rom_id)
case ROM_T1000:
loadfont(L"roms/machines/t1000/t1000font.bin", 2);
if (rom_load_linear(
if (!rom_load_linear(
L"roms/machines/t1000/t1000.rom",
0x000000, 32768, 0, rom)) return(1);
0x000000, 32768, 0, rom)) break;
memcpy(rom + 0x8000, rom, 0x8000);
break;
biosmask = 0x7fff;
return(1);
case ROM_T1200:
loadfont(L"roms/machines/t1200/t1000font.bin", 2);
if (rom_load_linear(
if (!rom_load_linear(
L"roms/machines/t1200/t1200_019e.ic15.bin",
0x000000, 32768, 0, rom)) return(1);
0x000000, 32768, 0, rom)) break;
memcpy(rom + 0x8000, rom, 0x8000);
break;
biosmask = 0x7fff;
return(1);
case ROM_T3100E:
loadfont(L"roms/machines/t3100e/t3100e_font.bin", 5);

View File

@@ -8,7 +8,7 @@
*
* ATi Mach64 graphics card emulation.
*
* Version: @(#)vid_ati_mach64.c 1.0.12 2018/01/31
* Version: @(#)vid_ati_mach64.c 1.0.13 2018/03/02
*
* Authors: Sarah Walker, <http://pcem-emulator.co.uk/>
* Miran Grca, <mgrca8@gmail.com>
@@ -3600,7 +3600,7 @@ static device_config_t mach64vt2_config[] =
device_t mach64gx_isa_device =
{
"ATI Mach64GX ISA",
DEVICE_ISA,
DEVICE_AT | DEVICE_ISA,
0,
mach64gx_init, mach64_close, NULL,
mach64gx_isa_available,

View File

@@ -9,7 +9,7 @@
* Emulation of select Cirrus Logic cards (CL-GD 5428,
* CL-GD 5429, 5430, 5434 and 5436 are supported).
*
* Version: @(#)vid_cl_54xx.c 1.0.8 2018/03/01
* Version: @(#)vid_cl_54xx.c 1.0.9 2018/03/02
*
* Authors: Sarah Walker, <http://pcem-emulator.co.uk/>
* Barry Rodewald,
@@ -2488,7 +2488,7 @@ static device_config_t gd5434_config[] =
device_t gd5428_isa_device =
{
"Cirrus Logic CL-GD 5428 (ISA)",
DEVICE_AT | DEVICE_ISA,
DEVICE_ISA,
CIRRUS_ID_CLGD5428,
gd54xx_init,
gd54xx_close,
@@ -2518,7 +2518,7 @@ device_t gd5428_vlb_device =
device_t gd5429_isa_device =
{
"Cirrus Logic CL-GD 5429 (ISA)",
DEVICE_AT | DEVICE_ISA,
DEVICE_ISA,
CIRRUS_ID_CLGD5429,
gd54xx_init,
gd54xx_close,

View File

@@ -8,7 +8,7 @@
*
* Oak OTI037C/67/077 emulation.
*
* Version: @(#)vid_oak_oti.c 1.0.7 2018/03/02
* Version: @(#)vid_oak_oti.c 1.0.8 2018/03/02
*
* Authors: Sarah Walker, <http://pcem-emulator.co.uk/>
* Miran Grca, <mgrca8@gmail.com>
@@ -30,7 +30,7 @@
#include "vid_oak_oti.h"
#include "vid_svga.h"
#define BIOS_37C_PATH L"roms/video/oti/oti037c/bios.bin"
#define BIOS_37C_PATH L"roms/video/oti/bios.bin"
#define BIOS_77_PATH L"roms/video/oti/oti077.vbi"