mirror of
https://github.com/holub/mame
synced 2025-04-21 07:52:35 +03:00
New machines marked as NOT_WORKING
---------------------------------- Eurit 30 [Cyberia/2 Filebase]
This commit is contained in:
parent
690e0c341b
commit
6457e5ab97
@ -4039,6 +4039,7 @@ files {
|
||||
MAME_DIR .. "src/mame/drivers/esprit.cpp",
|
||||
MAME_DIR .. "src/mame/drivers/eti660.cpp",
|
||||
MAME_DIR .. "src/mame/includes/eti660.h",
|
||||
MAME_DIR .. "src/mame/drivers/eurit.cpp",
|
||||
MAME_DIR .. "src/mame/drivers/eurocom2.cpp",
|
||||
MAME_DIR .. "src/mame/drivers/excali64.cpp",
|
||||
MAME_DIR .. "src/mame/drivers/facit4440.cpp",
|
||||
|
@ -81,6 +81,7 @@ DEFINE_DEVICE_TYPE(M37702M2, m37702m2_device, "m37702m2", "Mitsubishi M37702M2")
|
||||
DEFINE_DEVICE_TYPE(M37702S1, m37702s1_device, "m37702s1", "Mitsubishi M37702S1")
|
||||
DEFINE_DEVICE_TYPE(M37710S4, m37710s4_device, "m37710s4", "Mitsubishi M37710S4")
|
||||
DEFINE_DEVICE_TYPE(M37720S1, m37720s1_device, "m37720s1", "Mitsubishi M37720S1")
|
||||
DEFINE_DEVICE_TYPE(M37730S2, m37730s2_device, "m37730s2", "Mitsubishi M37730S2")
|
||||
|
||||
|
||||
// On-board RAM, ROM, and peripherals
|
||||
@ -221,6 +222,30 @@ void m37720s1_device::map(address_map &map)
|
||||
map(0x000080, 0x00027f).ram();
|
||||
}
|
||||
|
||||
// M37730S2: 1024 bytes internal RAM, no internal ROM
|
||||
void m37730s2_device::map(address_map &map)
|
||||
{
|
||||
map(0x000002, 0x000015).rw(FUNC(m37730s2_device::port_r), FUNC(m37730s2_device::port_w)); // FIXME: P4-P6 and P8 only
|
||||
map(0x000030, 0x000030).rw(FUNC(m37730s2_device::uart0_mode_r), FUNC(m37730s2_device::uart0_mode_w));
|
||||
map(0x000031, 0x000031).w(FUNC(m37730s2_device::uart0_baud_w));
|
||||
map(0x000032, 0x000033).w(FUNC(m37730s2_device::uart0_tbuf_w));
|
||||
map(0x000034, 0x000034).rw(FUNC(m37730s2_device::uart0_ctrl_reg0_r), FUNC(m37730s2_device::uart0_ctrl_reg0_w));
|
||||
map(0x000035, 0x000035).rw(FUNC(m37730s2_device::uart0_ctrl_reg1_r), FUNC(m37730s2_device::uart0_ctrl_reg1_w));
|
||||
map(0x000036, 0x000037).r(FUNC(m37730s2_device::uart0_rbuf_r));
|
||||
map(0x000040, 0x000040).rw(FUNC(m37730s2_device::count_start_r), FUNC(m37730s2_device::count_start_w));
|
||||
map(0x000042, 0x000042).w(FUNC(m37730s2_device::one_shot_start_w));
|
||||
map(0x000044, 0x000044).rw(FUNC(m37730s2_device::up_down_r), FUNC(m37730s2_device::up_down_w));
|
||||
map(0x000046, 0x000051).rw(FUNC(m37730s2_device::timer_reg_r), FUNC(m37730s2_device::timer_reg_w));
|
||||
map(0x000056, 0x00005b).rw(FUNC(m37730s2_device::timer_mode_r), FUNC(m37730s2_device::timer_mode_w));
|
||||
map(0x00005e, 0x00005e).rw(FUNC(m37730s2_device::proc_mode_r), FUNC(m37730s2_device::proc_mode_w));
|
||||
map(0x000060, 0x000060).w(FUNC(m37730s2_device::watchdog_timer_w));
|
||||
map(0x000061, 0x000061).rw(FUNC(m37730s2_device::watchdog_freq_r), FUNC(m37730s2_device::watchdog_freq_w));
|
||||
map(0x000062, 0x000062).rw(FUNC(m37730s2_device::waveform_mode_r), FUNC(m37730s2_device::waveform_mode_w));
|
||||
map(0x000064, 0x000065).w(FUNC(m37730s2_device::pulse_output_w));
|
||||
map(0x00006c, 0x00007f).rw(FUNC(m37730s2_device::int_control_r), FUNC(m37730s2_device::int_control_w));
|
||||
map(0x000080, 0x00047f).ram();
|
||||
}
|
||||
|
||||
// many other combinations of RAM and ROM size exist
|
||||
|
||||
|
||||
@ -262,6 +287,11 @@ m37720s1_device::m37720s1_device(const machine_config &mconfig, const char *tag,
|
||||
{
|
||||
}
|
||||
|
||||
m37730s2_device::m37730s2_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
||||
: m37710_cpu_device(mconfig, M37730S2, tag, owner, clock, address_map_constructor(FUNC(m37730s2_device::map), this))
|
||||
{
|
||||
}
|
||||
|
||||
std::vector<std::pair<int, const address_space_config *>> m37710_cpu_device::memory_space_config() const
|
||||
{
|
||||
return std::vector<std::pair<int, const address_space_config *>> {
|
||||
|
@ -2168,10 +2168,20 @@ protected:
|
||||
void map(address_map &map);
|
||||
};
|
||||
|
||||
class m37730s2_device : public m37710_cpu_device
|
||||
{
|
||||
public:
|
||||
// construction/destruction
|
||||
m37730s2_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
|
||||
protected:
|
||||
void map(address_map &map);
|
||||
};
|
||||
|
||||
DECLARE_DEVICE_TYPE(M37702M2, m37702m2_device)
|
||||
DECLARE_DEVICE_TYPE(M37702S1, m37702s1_device)
|
||||
DECLARE_DEVICE_TYPE(M37710S4, m37710s4_device)
|
||||
DECLARE_DEVICE_TYPE(M37720S1, m37720s1_device)
|
||||
DECLARE_DEVICE_TYPE(M37730S2, m37730s2_device)
|
||||
|
||||
|
||||
/* ======================================================================== */
|
||||
|
55
src/mame/drivers/eurit.cpp
Normal file
55
src/mame/drivers/eurit.cpp
Normal file
@ -0,0 +1,55 @@
|
||||
// license:BSD-3-Clause
|
||||
// copyright-holders:AJR
|
||||
/****************************************************************************
|
||||
|
||||
Skeleton driver for Ascom Eurit Euro-ISDN Telefon.
|
||||
|
||||
****************************************************************************/
|
||||
|
||||
#include "emu.h"
|
||||
#include "cpu/m37710/m37710.h"
|
||||
|
||||
class eurit_state : public driver_device
|
||||
{
|
||||
public:
|
||||
eurit_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag)
|
||||
, m_maincpu(*this, "maincpu")
|
||||
{
|
||||
}
|
||||
|
||||
void eurit30(machine_config &mconfig);
|
||||
|
||||
private:
|
||||
void mem_map(address_map &map);
|
||||
|
||||
required_device<m37730s2_device> m_maincpu;
|
||||
};
|
||||
|
||||
|
||||
void eurit_state::mem_map(address_map &map)
|
||||
{
|
||||
map(0x000480, 0x007fff).ram();
|
||||
map(0x008000, 0x00ffff).rom().region("firmware", 0x8000);
|
||||
map(0x040000, 0x05ffff).rom().region("firmware", 0);
|
||||
map(0x0c0000, 0x0c0007).noprw(); // ?
|
||||
}
|
||||
|
||||
|
||||
static INPUT_PORTS_START(eurit30)
|
||||
INPUT_PORTS_END
|
||||
|
||||
void eurit_state::eurit30(machine_config &config)
|
||||
{
|
||||
M37730S2(config, m_maincpu, 8'000'000); // type and clock unknown
|
||||
m_maincpu->set_addrmap(AS_PROGRAM, &eurit_state::mem_map);
|
||||
}
|
||||
|
||||
|
||||
ROM_START(eurit30)
|
||||
ROM_REGION(0x20000, "firmware", 0)
|
||||
ROM_LOAD("d_2.210", 0x00000, 0x20000, CRC(c77be0ac) SHA1(1eaba66dcb4f64cc33565ca85de25341572ddb2e))
|
||||
ROM_END
|
||||
|
||||
|
||||
SYST(1996, eurit30, 0, 0, eurit30, eurit30, eurit_state, empty_init, "Ascom", "Eurit 30", MACHINE_IS_SKELETON)
|
@ -12945,6 +12945,9 @@ promutrvb // (c) 1985 Enerdyne Technologies Inc
|
||||
promutrvc // (c) 1985 Enerdyne Technologies Inc
|
||||
strvmstr // (c) 1986 Enerdyne Technologies Inc
|
||||
|
||||
@source:eurit.cpp
|
||||
eurit30 //
|
||||
|
||||
@source:eurocom2.cpp
|
||||
eurocom2 //
|
||||
waveterm //
|
||||
|
@ -243,6 +243,7 @@ esqkt.cpp
|
||||
esqmr.cpp
|
||||
et3400.cpp
|
||||
eti660.cpp
|
||||
eurit.cpp
|
||||
eurocom2.cpp
|
||||
europc.cpp
|
||||
eva.cpp
|
||||
|
Loading…
Reference in New Issue
Block a user