ata/px320a: Change MCU type based on further research (nw)

This commit is contained in:
AJR 2020-03-09 20:58:29 -04:00
parent f98a3b831b
commit 63c3ecff15
3 changed files with 19 additions and 10 deletions

View File

@ -75,7 +75,7 @@ void px320a_device::frcpu_map(address_map &map)
void px320a_device::device_add_mconfig(machine_config &config) 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); m_frcpu->set_addrmap(AS_PROGRAM, &px320a_device::frcpu_map);
} }

View File

@ -12,8 +12,8 @@
#include "fr.h" #include "fr.h"
#include "frdasm.h" #include "frdasm.h"
// device type definitions // device type definition
DEFINE_DEVICE_TYPE(MB91101A, mb91101a_device, "mb91101a", "Fujitsu MB91101A") 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) 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) : 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) mb91f155a_device::mb91f155a_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()) : 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() std::unique_ptr<util::disasm_interface> fr_cpu_device::create_disassembler()
{ {
return std::make_unique<fr_disassembler>(); return std::make_unique<fr_disassembler>();

View File

@ -2,11 +2,10 @@
// copyright-holders:AJR // copyright-holders:AJR
#ifndef MAME_CPU_FR_FR_H #ifndef MAME_CPU_FR_FR_H
#define MAME_CPU_FR_FR_H 1 #define MAME_CPU_FR_FR_H
#pragma once #pragma once
class fr_cpu_device : public cpu_device class fr_cpu_device : public cpu_device
{ {
public: public:
@ -57,13 +56,17 @@ private:
s32 m_icount; s32 m_icount;
}; };
class mb91101a_device : public fr_cpu_device class mb91f155a_device : public fr_cpu_device
{ {
public: public:
// device type constructor // 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 #endif // MAME_CPU_FR_FR_H