From 26920665753196097740b2849aeeb1c59b181cbf Mon Sep 17 00:00:00 2001 From: AJR Date: Mon, 8 Jun 2020 14:29:35 -0400 Subject: New machines marked as NOT_WORKING ---------------------------------- GNAT System 10 [Don Maslin Vintage Computer Archive, AJR] --- scripts/target/mame/mess.lua | 1 + src/mame/drivers/gnat10.cpp | 84 ++++++++++++++++++++++++++++++++++++++++++++ src/mame/mame.lst | 3 ++ src/mame/mess.flt | 1 + 4 files changed, 89 insertions(+) create mode 100644 src/mame/drivers/gnat10.cpp diff --git a/scripts/target/mame/mess.lua b/scripts/target/mame/mess.lua index 23ebbb096da..9b04c70c3ca 100644 --- a/scripts/target/mame/mess.lua +++ b/scripts/target/mame/mess.lua @@ -4334,6 +4334,7 @@ files { MAME_DIR .. "src/mame/drivers/gameking.cpp", MAME_DIR .. "src/mame/drivers/gigatron.cpp", MAME_DIR .. "src/mame/drivers/gimix.cpp", + MAME_DIR .. "src/mame/drivers/gnat10.cpp", MAME_DIR .. "src/mame/drivers/goupil.cpp", MAME_DIR .. "src/mame/drivers/grfd2301.cpp", MAME_DIR .. "src/mame/drivers/hazeltin.cpp", diff --git a/src/mame/drivers/gnat10.cpp b/src/mame/drivers/gnat10.cpp new file mode 100644 index 00000000000..1e0f2c36fc5 --- /dev/null +++ b/src/mame/drivers/gnat10.cpp @@ -0,0 +1,84 @@ +// license:BSD-3-Clause +// copyright-holders:AJR +/**************************************************************************** + + Skeleton driver for CP/M system by GNAT Computers. + + For more information, visit the following link: + https://classictech.wordpress.com/computer-companies/gnat-computers-san-diego-calif/ + +****************************************************************************/ + +#include "emu.h" +#include "cpu/z80/z80.h" +#include "machine/wd_fdc.h" +#include "machine/z80sio.h" + +class gnat10_state : public driver_device +{ +public: + gnat10_state(const machine_config &mconfig, device_type type, const char *tag) + : driver_device(mconfig, type, tag) + , m_maincpu(*this, "maincpu") + , m_fdc(*this, "fdc") + { + } + + void gnat10(machine_config &config); + +private: + u8 floppy_status_r(); + + void mem_map(address_map &map); + void io_map(address_map &map); + + required_device m_maincpu; + required_device m_fdc; +}; + + +u8 gnat10_state::floppy_status_r() +{ + return m_fdc->drq_r() << 7 | m_fdc->intrq_r(); +} + +void gnat10_state::mem_map(address_map &map) +{ + map(0x0000, 0x0002).rom().region("boot", 0); + map(0x0003, 0xf7ff).ram(); + map(0xf800, 0xffff).rom().region("boot", 0); +} + +void gnat10_state::io_map(address_map &map) +{ + map.global_mask(0xff); + map(0x60, 0x63).rw("sio1", FUNC(z80sio_device::ba_cd_r), FUNC(z80sio_device::ba_cd_w)); + map(0x70, 0x73).rw("sio2", FUNC(z80sio_device::ba_cd_r), FUNC(z80sio_device::ba_cd_w)); + map(0x80, 0x83).rw(m_fdc, FUNC(fd1797_device::read), FUNC(fd1797_device::write)); + map(0xa0, 0xa0).r(FUNC(gnat10_state::floppy_status_r)); +} + + +static INPUT_PORTS_START(gnat10) +INPUT_PORTS_END + +void gnat10_state::gnat10(machine_config &config) +{ + Z80(config, m_maincpu, 4'000'000); + m_maincpu->set_addrmap(AS_PROGRAM, &gnat10_state::mem_map); + m_maincpu->set_addrmap(AS_IO, &gnat10_state::io_map); + + Z80SIO(config, "sio1", 4'000'000); // type unknown + Z80SIO(config, "sio2", 4'000'000); // type unknown + + FD1797(config, m_fdc, 1'000'000); // type unknown + + // TODO: video screen, peripheral ports +} + +ROM_START(gnat10) + ROM_REGION(0x800, "boot", 0) + ROM_LOAD("gnat-507", 0x000, 0x800, CRC(72baa750) SHA1(7b78324b90b8c6f78c88a7dde8d53ea612ea1f7f)) // LF patched back to CR/LF in four instances +ROM_END + +COMP(1980, gnat10, 0, 0, gnat10, gnat10, gnat10_state, empty_init, "GNAT Computers", "GNAT System 10", MACHINE_IS_SKELETON) diff --git a/src/mame/mame.lst b/src/mame/mame.lst index 5fdb883c7f2..1c02e7c3763 100644 --- a/src/mame/mame.lst +++ b/src/mame/mame.lst @@ -14910,6 +14910,9 @@ gluck2 // 1992 Yung Yu / CYE @source:gmaster.cpp gmaster // Hartung Gamemaster +@source:gnat.cpp +gnat10 // GNAT System 10 + @source:gng.cpp diamond // (c) 1989 KH Video (NOT A CAPCOM GAME but runs on GnG hardware) gng // 9/1985 (c) 1985 diff --git a/src/mame/mess.flt b/src/mame/mess.flt index aa6c9bbc40b..ca42ada32c7 100644 --- a/src/mame/mess.flt +++ b/src/mame/mess.flt @@ -343,6 +343,7 @@ gizmondo.cpp gkidabc.cpp glcx.cpp gmaster.cpp +gnat10.cpp goupil.cpp gp2x.cpp gp32.cpp -- cgit v1.2.3