summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/cpu/m6502/m6509.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/cpu/m6502/m6509.cpp')
-rw-r--r--src/devices/cpu/m6502/m6509.cpp43
1 files changed, 8 insertions, 35 deletions
diff --git a/src/devices/cpu/m6502/m6509.cpp b/src/devices/cpu/m6502/m6509.cpp
index 95c2d62b79a..ea42fabd304 100644
--- a/src/devices/cpu/m6502/m6509.cpp
+++ b/src/devices/cpu/m6502/m6509.cpp
@@ -25,10 +25,7 @@ m6509_device::m6509_device(const machine_config &mconfig, const char *tag, devic
void m6509_device::device_start()
{
- if(cache_disabled)
- mintf = std::make_unique<mi_6509_nd>(this);
- else
- mintf = std::make_unique<mi_6509_normal>(this);
+ mintf = std::make_unique<mi_6509>(this);
init();
@@ -55,12 +52,12 @@ std::unique_ptr<util::disasm_interface> m6509_device::create_disassembler()
return std::make_unique<m6509_disassembler>();
}
-m6509_device::mi_6509_normal::mi_6509_normal(m6509_device *_base)
+m6509_device::mi_6509::mi_6509(m6509_device *_base)
{
base = _base;
}
-uint8_t m6509_device::mi_6509_normal::read(uint16_t adr)
+uint8_t m6509_device::mi_6509::read(uint16_t adr)
{
uint8_t res = program->read_byte(base->adr_in_bank_i(adr));
if(adr == 0x0000)
@@ -70,7 +67,7 @@ uint8_t m6509_device::mi_6509_normal::read(uint16_t adr)
return res;
}
-uint8_t m6509_device::mi_6509_normal::read_sync(uint16_t adr)
+uint8_t m6509_device::mi_6509::read_sync(uint16_t adr)
{
uint8_t res = scache->read_byte(base->adr_in_bank_i(adr));
if(adr == 0x0000)
@@ -80,7 +77,7 @@ uint8_t m6509_device::mi_6509_normal::read_sync(uint16_t adr)
return res;
}
-uint8_t m6509_device::mi_6509_normal::read_arg(uint16_t adr)
+uint8_t m6509_device::mi_6509::read_arg(uint16_t adr)
{
uint8_t res = cache->read_byte(base->adr_in_bank_i(adr));
if(adr == 0x0000)
@@ -90,7 +87,7 @@ uint8_t m6509_device::mi_6509_normal::read_arg(uint16_t adr)
return res;
}
-uint8_t m6509_device::mi_6509_normal::read_9(uint16_t adr)
+uint8_t m6509_device::mi_6509::read_9(uint16_t adr)
{
uint8_t res = program->read_byte(base->adr_in_bank_y(adr));
if(adr == 0x0000)
@@ -100,7 +97,7 @@ uint8_t m6509_device::mi_6509_normal::read_9(uint16_t adr)
return res;
}
-void m6509_device::mi_6509_normal::write(uint16_t adr, uint8_t val)
+void m6509_device::mi_6509::write(uint16_t adr, uint8_t val)
{
program->write_byte(base->adr_in_bank_i(adr), val);
if(adr == 0x0000)
@@ -109,7 +106,7 @@ void m6509_device::mi_6509_normal::write(uint16_t adr, uint8_t val)
base->bank_y_w(val);
}
-void m6509_device::mi_6509_normal::write_9(uint16_t adr, uint8_t val)
+void m6509_device::mi_6509::write_9(uint16_t adr, uint8_t val)
{
program->write_byte(base->adr_in_bank_y(adr), val);
if(adr == 0x0000)
@@ -118,28 +115,4 @@ void m6509_device::mi_6509_normal::write_9(uint16_t adr, uint8_t val)
base->bank_y_w(val);
}
-m6509_device::mi_6509_nd::mi_6509_nd(m6509_device *_base) : mi_6509_normal(_base)
-{
-}
-
-uint8_t m6509_device::mi_6509_nd::read_sync(uint16_t adr)
-{
- uint8_t res = sprogram->read_byte(base->adr_in_bank_i(adr));
- if(adr == 0x0000)
- res = base->bank_i_r();
- else if(adr == 0x0001)
- res = base->bank_y_r();
- return res;
-}
-
-uint8_t m6509_device::mi_6509_nd::read_arg(uint16_t adr)
-{
- uint8_t res = program->read_byte(base->adr_in_bank_i(adr));
- if(adr == 0x0000)
- res = base->bank_i_r();
- else if(adr == 0x0001)
- res = base->bank_y_r();
- return res;
-}
-
#include "cpu/m6502/m6509.hxx"