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:
10
src/device.c
10
src/device.c
@@ -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;
|
||||
|
@@ -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);
|
||||
}
|
||||
|
@@ -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 },
|
||||
|
20
src/rom.c
20
src/rom.c
@@ -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);
|
||||
|
@@ -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,
|
||||
|
@@ -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,
|
||||
|
@@ -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"
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user