summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices
diff options
context:
space:
mode:
author AJR <ajrhacker@users.noreply.github.com>2020-03-09 20:58:29 -0400
committer AJR <ajrhacker@users.noreply.github.com>2020-03-09 20:58:35 -0400
commit63c3ecff15d4357e43b36c1000e8b051e0d6f3a8 (patch)
tree05c5b54553a8deed9f6b4e211e5ecdacf86f4c6b /src/devices
parentf98a3b831be21fb4b789140b6f7e6e24dfe2eb71 (diff)
ata/px320a: Change MCU type based on further research (nw)
Diffstat (limited to 'src/devices')
-rw-r--r--src/devices/bus/ata/px320a.cpp2
-rw-r--r--src/devices/cpu/fr/fr.cpp14
-rw-r--r--src/devices/cpu/fr/fr.h13
3 files changed, 19 insertions, 10 deletions
diff --git a/src/devices/bus/ata/px320a.cpp b/src/devices/bus/ata/px320a.cpp
index befaad3befd..fabad11e967 100644
--- a/src/devices/bus/ata/px320a.cpp
+++ b/src/devices/bus/ata/px320a.cpp
@@ -75,7 +75,7 @@ void px320a_device::frcpu_map(address_map &map)
void px320a_device::device_add_mconfig(machine_config &config)
{
- MB91101A(config, m_frcpu, 8000000); // FR type guessed; clock unknown
+ MB91F155A(config, m_frcpu, 16'000'000); // FR type guessed; clock unknown
m_frcpu->set_addrmap(AS_PROGRAM, &px320a_device::frcpu_map);
}
diff --git a/src/devices/cpu/fr/fr.cpp b/src/devices/cpu/fr/fr.cpp
index 07ecaad136f..187b2782a4f 100644
--- a/src/devices/cpu/fr/fr.cpp
+++ b/src/devices/cpu/fr/fr.cpp
@@ -12,8 +12,8 @@
#include "fr.h"
#include "frdasm.h"
-// device type definitions
-DEFINE_DEVICE_TYPE(MB91101A, mb91101a_device, "mb91101a", "Fujitsu MB91101A")
+// device type definition
+DEFINE_DEVICE_TYPE(MB91F155A, mb91f155a_device, "mb91f155a", "Fujitsu MB91F155A")
fr_cpu_device::fr_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int addrbits, address_map_constructor map)
: cpu_device(mconfig, type, tag, owner, clock)
@@ -30,11 +30,17 @@ fr_cpu_device::fr_cpu_device(const machine_config &mconfig, device_type type, co
{
}
-mb91101a_device::mb91101a_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : fr_cpu_device(mconfig, MB91101A, tag, owner, clock, 32, address_map_constructor())
+mb91f155a_device::mb91f155a_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
+ : fr_cpu_device(mconfig, MB91F155A, tag, owner, clock, 24, address_map_constructor(FUNC(mb91f155a_device::internal_map), this))
{
}
+void mb91f155a_device::internal_map(address_map &map)
+{
+ // TODO: I/O registers
+ map(0x001000, 0x008fff).ram();
+}
+
std::unique_ptr<util::disasm_interface> fr_cpu_device::create_disassembler()
{
return std::make_unique<fr_disassembler>();
diff --git a/src/devices/cpu/fr/fr.h b/src/devices/cpu/fr/fr.h
index c5b4899cace..3e931cbff87 100644
--- a/src/devices/cpu/fr/fr.h
+++ b/src/devices/cpu/fr/fr.h
@@ -2,11 +2,10 @@
// copyright-holders:AJR
#ifndef MAME_CPU_FR_FR_H
-#define MAME_CPU_FR_FR_H 1
+#define MAME_CPU_FR_FR_H
#pragma once
-
class fr_cpu_device : public cpu_device
{
public:
@@ -57,13 +56,17 @@ private:
s32 m_icount;
};
-class mb91101a_device : public fr_cpu_device
+class mb91f155a_device : public fr_cpu_device
{
public:
// device type constructor
- mb91101a_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock);
+ mb91f155a_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock);
+
+private:
+ void internal_map(address_map &map);
};
-DECLARE_DEVICE_TYPE(MB91101A, mb91101a_device)
+// device type declaration
+DECLARE_DEVICE_TYPE(MB91F155A, mb91f155a_device)
#endif // MAME_CPU_FR_FR_H