Added the Trident TVGA 8900 D-R.

This commit is contained in:
OBattler
2024-03-09 13:18:31 +01:00
parent 10c7ee2aef
commit ca2492e893
3 changed files with 27 additions and 1 deletions

View File

@@ -550,6 +550,7 @@ extern const device_t ibm_ps1_2121_device;
/* Trident TVGA 8900 */
extern const device_t tvga8900b_device;
extern const device_t tvga8900d_device;
extern const device_t tvga8900dr_device;
extern const device_t tvga9000b_device;
extern const device_t nec_sv9000_device;

View File

@@ -144,6 +144,7 @@ video_cards[] = {
{ &sigma_device },
{ &tvga8900b_device },
{ &tvga8900d_device },
{ &tvga8900dr_device },
{ &tvga9000b_device },
{ &nec_sv9000_device },
{ &et4000k_isa_device },

View File

@@ -37,6 +37,7 @@
#define ROM_TVGA_8900B "roms/video/tvga/tvga8900b.vbi"
#define ROM_TVGA_8900CLD "roms/video/tvga/trident.bin"
#define ROM_TVGA_8900DR "roms/video/tvga/8900DR.VBI"
#define ROM_TVGA_9000B "roms/video/tvga/tvga9000b.bin"
#define ROM_TVGA_9000B_NEC_SV9000 "roms/video/tvga/SV9000.VBI"
@@ -428,7 +429,10 @@ tvga_init(const device_t *info)
bios_fn = ROM_TVGA_8900B;
break;
case TVGA8900CLD_ID:
bios_fn = ROM_TVGA_8900CLD;
if (info->local & 0x0100)
bios_fn = ROM_TVGA_8900DR;
else
bios_fn = ROM_TVGA_8900CLD;
break;
case TVGA9000B_ID:
bios_fn = (info->local & 0x100) ? ROM_TVGA_9000B_NEC_SV9000 : ROM_TVGA_9000B;
@@ -466,6 +470,12 @@ tvga8900d_available(void)
return rom_present(ROM_TVGA_8900CLD);
}
static int
tvga8900dr_available(void)
{
return rom_present(ROM_TVGA_8900DR);
}
static int
tvga9000b_available(void)
{
@@ -564,6 +574,20 @@ const device_t tvga8900d_device = {
.config = tvga_config
};
const device_t tvga8900dr_device = {
.name = "Trident TVGA 8900D-R",
.internal_name = "tvga8900dr",
.flags = DEVICE_ISA,
.local = TVGA8900CLD_ID | 0x0100,
.init = tvga_init,
.close = tvga_close,
.reset = NULL,
{ .available = tvga8900dr_available },
.speed_changed = tvga_speed_changed,
.force_redraw = tvga_force_redraw,
.config = tvga_config
};
const device_t tvga9000b_device = {
.name = "Trident TVGA 9000B",
.internal_name = "tvga9000b",