diff options
author | Olivier Galibert <galibert@pobox.com> | 2015-06-04 21:42:58 +0200 |
---|---|---|
committer | Olivier Galibert <galibert@pobox.com> | 2015-06-24 08:43:34 +0200 |
commit | 88949a5b47798b3c82851c31b6f801e4fb8ca06f (patch) | |
tree | 7929d5f4beb47f8f6b61fe2a2b89f2302f3df19c /src/emu/cpu/m6502 | |
parent | d1583b9850d9fb45470648a515eb734e05fd926f (diff) |
memory: Remove support for decrypted bases, use an address space instead [O. Galibert]
Diffstat (limited to 'src/emu/cpu/m6502')
-rw-r--r-- | src/emu/cpu/m6502/deco16.c | 8 | ||||
-rw-r--r-- | src/emu/cpu/m6502/m4510.c | 19 | ||||
-rw-r--r-- | src/emu/cpu/m6502/m4510.h | 8 | ||||
-rw-r--r-- | src/emu/cpu/m6502/m6502.c | 42 | ||||
-rw-r--r-- | src/emu/cpu/m6502/m6502.h | 24 | ||||
-rwxr-xr-x | src/emu/cpu/m6502/m6502make.py | 4 | ||||
-rw-r--r-- | src/emu/cpu/m6502/m6504.c | 17 | ||||
-rw-r--r-- | src/emu/cpu/m6502/m6504.h | 8 | ||||
-rw-r--r-- | src/emu/cpu/m6502/m6509.c | 16 | ||||
-rw-r--r-- | src/emu/cpu/m6502/m6509.h | 8 | ||||
-rw-r--r-- | src/emu/cpu/m6502/m6510.c | 26 | ||||
-rw-r--r-- | src/emu/cpu/m6502/m6510.h | 8 | ||||
-rw-r--r-- | src/emu/cpu/m6502/n2a03.c | 14 | ||||
-rw-r--r-- | src/emu/cpu/m6502/n2a03.h | 8 | ||||
-rw-r--r-- | src/emu/cpu/m6502/odeco16.lst | 12 | ||||
-rw-r--r-- | src/emu/cpu/m6502/om6502.lst | 28 | ||||
-rw-r--r-- | src/emu/cpu/m6502/om65c02.lst | 10 | ||||
-rw-r--r-- | src/emu/cpu/m6502/om65ce02.lst | 8 | ||||
-rw-r--r-- | src/emu/cpu/m6502/om740.lst | 14 |
19 files changed, 158 insertions, 124 deletions
diff --git a/src/emu/cpu/m6502/deco16.c b/src/emu/cpu/m6502/deco16.c index 681ae5dcc42..a500b287d7a 100644 --- a/src/emu/cpu/m6502/deco16.c +++ b/src/emu/cpu/m6502/deco16.c @@ -41,7 +41,13 @@ void deco16_device::device_start() const address_space_config *deco16_device::memory_space_config(address_spacenum spacenum) const { - return spacenum == AS_PROGRAM ? &program_config : spacenum == AS_IO ? &io_config : NULL; + switch(spacenum) + { + case AS_PROGRAM: return &program_config; + case AS_IO: return &io_config; + case AS_DECRYPTED_OPCODES: return has_configured_map(AS_DECRYPTED_OPCODES) ? &sprogram_config : NULL; + default: return NULL; + } } #include "cpu/m6502/deco16.inc" diff --git a/src/emu/cpu/m6502/m4510.c b/src/emu/cpu/m6502/m4510.c index 329734f692e..65c59280b29 100644 --- a/src/emu/cpu/m6502/m4510.c +++ b/src/emu/cpu/m6502/m4510.c @@ -19,6 +19,9 @@ m4510_device::m4510_device(const machine_config &mconfig, const char *tag, devic program_config.m_addrbus_width = 20; program_config.m_logaddr_width = 16; program_config.m_page_shift = 13; + sprogram_config.m_addrbus_width = 20; + sprogram_config.m_logaddr_width = 16; + sprogram_config.m_page_shift = 13; } offs_t m4510_device::disasm_disassemble(char *buffer, offs_t pc, const UINT8 *oprom, const UINT8 *opram, UINT32 options) @@ -71,14 +74,14 @@ UINT8 m4510_device::mi_4510_normal::read(UINT16 adr) return program->read_byte(base->map(adr)); } -UINT8 m4510_device::mi_4510_normal::read_direct(UINT16 adr) +UINT8 m4510_device::mi_4510_normal::read_sync(UINT16 adr) { - return direct->read_raw_byte(base->map(adr)); + return sdirect->read_byte(base->map(adr)); } -UINT8 m4510_device::mi_4510_normal::read_decrypted(UINT16 adr) +UINT8 m4510_device::mi_4510_normal::read_arg(UINT16 adr) { - return direct->read_decrypted_byte(base->map(adr)); + return direct->read_byte(base->map(adr)); } void m4510_device::mi_4510_normal::write(UINT16 adr, UINT8 val) @@ -90,14 +93,14 @@ m4510_device::mi_4510_nd::mi_4510_nd(m4510_device *_base) : mi_4510_normal(_base { } -UINT8 m4510_device::mi_4510_nd::read_direct(UINT16 adr) +UINT8 m4510_device::mi_4510_nd::read_sync(UINT16 adr) { - return read(adr); + return program->read_byte(base->map(adr)); } -UINT8 m4510_device::mi_4510_nd::read_decrypted(UINT16 adr) +UINT8 m4510_device::mi_4510_nd::read_arg(UINT16 adr) { - return read(adr); + return sprogram->read_byte(base->map(adr)); } #include "cpu/m6502/m4510.inc" diff --git a/src/emu/cpu/m6502/m4510.h b/src/emu/cpu/m6502/m4510.h index 46a95a1eb72..90bba4d0262 100644 --- a/src/emu/cpu/m6502/m4510.h +++ b/src/emu/cpu/m6502/m4510.h @@ -37,8 +37,8 @@ protected: mi_4510_normal(m4510_device *base); virtual ~mi_4510_normal() {} virtual UINT8 read(UINT16 adr); - virtual UINT8 read_direct(UINT16 adr); - virtual UINT8 read_decrypted(UINT16 adr); + virtual UINT8 read_sync(UINT16 adr); + virtual UINT8 read_arg(UINT16 adr); virtual void write(UINT16 adr, UINT8 val); }; @@ -46,8 +46,8 @@ protected: public: mi_4510_nd(m4510_device *base); virtual ~mi_4510_nd() {} - virtual UINT8 read_direct(UINT16 adr); - virtual UINT8 read_decrypted(UINT16 adr); + virtual UINT8 read_sync(UINT16 adr); + virtual UINT8 read_arg(UINT16 adr); }; virtual void device_start(); diff --git a/src/emu/cpu/m6502/m6502.c b/src/emu/cpu/m6502/m6502.c index c1a84b2fd9c..01b2b8f0f98 100644 --- a/src/emu/cpu/m6502/m6502.c +++ b/src/emu/cpu/m6502/m6502.c @@ -17,7 +17,8 @@ const device_type M6502 = &device_creator<m6502_device>; m6502_device::m6502_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : cpu_device(mconfig, M6502, "M6502", tag, owner, clock, "m6502", __FILE__), sync_w(*this), - program_config("program", ENDIANNESS_LITTLE, 8, 16) + program_config("program", ENDIANNESS_LITTLE, 8, 16), + sprogram_config("decrypted_opcodes", ENDIANNESS_LITTLE, 8, 16) { direct_disabled = false; } @@ -25,7 +26,8 @@ m6502_device::m6502_device(const machine_config &mconfig, const char *tag, devic m6502_device::m6502_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : cpu_device(mconfig, type, name, tag, owner, clock, shortname, source), sync_w(*this), - program_config("program", ENDIANNESS_LITTLE, 8, 16) + program_config("program", ENDIANNESS_LITTLE, 8, 16), + sprogram_config("decrypted_opcodes", ENDIANNESS_LITTLE, 8, 16) { direct_disabled = false; } @@ -42,8 +44,11 @@ void m6502_device::device_start() void m6502_device::init() { - mintf->program = &space(AS_PROGRAM); - mintf->direct = &mintf->program->direct(); + mintf->program = &space(AS_PROGRAM); + mintf->sprogram = has_space(AS_DECRYPTED_OPCODES) ? &space(AS_DECRYPTED_OPCODES) : mintf->program; + + mintf->direct = &mintf->program->direct(); + mintf->sdirect = &mintf->sprogram->direct(); sync_w.resolve_safe(); @@ -402,7 +407,12 @@ void m6502_device::execute_set_input(int inputnum, int state) const address_space_config *m6502_device::memory_space_config(address_spacenum spacenum) const { - return (spacenum == AS_PROGRAM) ? &program_config : NULL; + switch(spacenum) + { + case AS_PROGRAM: return &program_config; + case AS_DECRYPTED_OPCODES: return has_configured_map(AS_DECRYPTED_OPCODES) ? &sprogram_config : NULL; + default: return NULL; + } } @@ -621,7 +631,7 @@ void m6502_device::prefetch() sync = true; sync_w(ASSERT_LINE); NPC = PC; - IR = mintf->read_decrypted(PC); + IR = mintf->read_sync(PC); sync = false; sync_w(CLEAR_LINE); @@ -637,7 +647,7 @@ void m6502_device::prefetch_noirq() sync = true; sync_w(ASSERT_LINE); NPC = PC; - IR = mintf->read_decrypted(PC); + IR = mintf->read_sync(PC); sync = false; sync_w(CLEAR_LINE); PC++; @@ -674,31 +684,33 @@ UINT8 m6502_device::mi_default_normal::read(UINT16 adr) return program->read_byte(adr); } -UINT8 m6502_device::mi_default_normal::read_direct(UINT16 adr) +UINT8 m6502_device::mi_default_normal::read_sync(UINT16 adr) { - return direct->read_raw_byte(adr); + return sdirect->read_byte(adr); } -UINT8 m6502_device::mi_default_normal::read_decrypted(UINT16 adr) +UINT8 m6502_device::mi_default_normal::read_arg(UINT16 adr) { - return direct->read_decrypted_byte(adr); + return direct->read_byte(adr); } + void m6502_device::mi_default_normal::write(UINT16 adr, UINT8 val) { program->write_byte(adr, val); } -UINT8 m6502_device::mi_default_nd::read_direct(UINT16 adr) +UINT8 m6502_device::mi_default_nd::read_sync(UINT16 adr) { - return read(adr); + return sprogram->read_byte(adr); } -UINT8 m6502_device::mi_default_nd::read_decrypted(UINT16 adr) +UINT8 m6502_device::mi_default_nd::read_arg(UINT16 adr) { - return read(adr); + return program->read_byte(adr); } + WRITE_LINE_MEMBER( m6502_device::irq_line ) { set_input_line( M6502_IRQ_LINE, state ); diff --git a/src/emu/cpu/m6502/m6502.h b/src/emu/cpu/m6502/m6502.h index 240509f21ea..1dbed7710de 100644 --- a/src/emu/cpu/m6502/m6502.h +++ b/src/emu/cpu/m6502/m6502.h @@ -42,14 +42,14 @@ public: protected: class memory_interface { public: - address_space *program; - direct_read_data *direct; + address_space *program, *sprogram; + direct_read_data *direct, *sdirect; virtual ~memory_interface() {} virtual UINT8 read(UINT16 adr) = 0; virtual UINT8 read_9(UINT16 adr); - virtual UINT8 read_direct(UINT16 adr) = 0; - virtual UINT8 read_decrypted(UINT16 adr) = 0; + virtual UINT8 read_sync(UINT16 adr) = 0; + virtual UINT8 read_arg(UINT16 adr) = 0; virtual void write(UINT16 adr, UINT8 val) = 0; virtual void write_9(UINT16 adr, UINT8 val); }; @@ -58,16 +58,16 @@ protected: public: virtual ~mi_default_normal() {} virtual UINT8 read(UINT16 adr); - virtual UINT8 read_direct(UINT16 adr); - virtual UINT8 read_decrypted(UINT16 adr); + virtual UINT8 read_sync(UINT16 adr); + virtual UINT8 read_arg(UINT16 adr); virtual void write(UINT16 adr, UINT8 val); }; class mi_default_nd : public mi_default_normal { public: virtual ~mi_default_nd() {} - virtual UINT8 read_direct(UINT16 adr); - virtual UINT8 read_decrypted(UINT16 adr); + virtual UINT8 read_sync(UINT16 adr); + virtual UINT8 read_arg(UINT16 adr); }; struct disasm_entry { @@ -151,7 +151,7 @@ protected: virtual UINT32 disasm_max_opcode_bytes() const; virtual offs_t disasm_disassemble(char *buffer, offs_t pc, const UINT8 *oprom, const UINT8 *opram, UINT32 options); - address_space_config program_config; + address_space_config program_config, sprogram_config; UINT16 PPC; /* previous program counter */ UINT16 NPC; /* next start-of-instruction program counter */ @@ -179,9 +179,9 @@ protected: UINT8 read_9(UINT16 adr) { return mintf->read_9(adr); } void write(UINT16 adr, UINT8 val) { mintf->write(adr, val); } void write_9(UINT16 adr, UINT8 val) { mintf->write_9(adr, val); } - UINT8 read_direct(UINT16 adr) { return mintf->read_direct(adr); } - UINT8 read_pc() { return mintf->read_direct(PC++); } - UINT8 read_pc_noinc() { return mintf->read_direct(PC); } + UINT8 read_arg(UINT16 adr) { return mintf->read_arg(adr); } + UINT8 read_pc() { return mintf->read_arg(PC++); } + UINT8 read_pc_noinc() { return mintf->read_arg(PC); } void prefetch(); void prefetch_noirq(); void set_nz(UINT8 v); diff --git a/src/emu/cpu/m6502/m6502make.py b/src/emu/cpu/m6502/m6502make.py index 514af0e8fb8..591d01268ca 100755 --- a/src/emu/cpu/m6502/m6502make.py +++ b/src/emu/cpu/m6502/m6502make.py @@ -68,7 +68,7 @@ FULL_EAT_ALL="""\ """ FULL_MEMORY="""\ -\tif(icount <= 0) { inst_substate = %(substate)s; return; } +\tif(icount == 0) { inst_substate = %(substate)s; return; } %(ins)s \ticount--; """ @@ -97,7 +97,7 @@ case %(substate)s:; """ PARTIAL_MEMORY="""\ -\tif(icount <= 0) { inst_substate = %(substate)s; return; } +\tif(icount == 0) { inst_substate = %(substate)s; return; } case %(substate)s: %(ins)s \ticount--; diff --git a/src/emu/cpu/m6502/m6504.c b/src/emu/cpu/m6502/m6504.c index 383d0f1fecd..f2ae2c4b6d9 100644 --- a/src/emu/cpu/m6502/m6504.c +++ b/src/emu/cpu/m6502/m6504.c @@ -17,6 +17,7 @@ m6504_device::m6504_device(const machine_config &mconfig, const char *tag, devic m6502_device(mconfig, M6504, "M6504", tag, owner, clock, "m6504", __FILE__) { program_config.m_addrbus_width = 13; + sprogram_config.m_addrbus_width = 13; } void m6504_device::device_start() @@ -34,14 +35,14 @@ UINT8 m6504_device::mi_6504_normal::read(UINT16 adr) return program->read_byte(adr & 0x1fff); } -UINT8 m6504_device::mi_6504_normal::read_direct(UINT16 adr) +UINT8 m6504_device::mi_6504_normal::read_sync(UINT16 adr) { - return direct->read_raw_byte(adr & 0x1fff); + return sdirect->read_byte(adr & 0x1fff); } -UINT8 m6504_device::mi_6504_normal::read_decrypted(UINT16 adr) +UINT8 m6504_device::mi_6504_normal::read_arg(UINT16 adr) { - return direct->read_decrypted_byte(adr & 0x1fff); + return direct->read_byte(adr & 0x1fff); } void m6504_device::mi_6504_normal::write(UINT16 adr, UINT8 val) @@ -49,12 +50,12 @@ void m6504_device::mi_6504_normal::write(UINT16 adr, UINT8 val) program->write_byte(adr & 0x1fff, val); } -UINT8 m6504_device::mi_6504_nd::read_direct(UINT16 adr) +UINT8 m6504_device::mi_6504_nd::read_sync(UINT16 adr) { - return read(adr); + return sprogram->read_byte(adr & 0x1fff); } -UINT8 m6504_device::mi_6504_nd::read_decrypted(UINT16 adr) +UINT8 m6504_device::mi_6504_nd::read_arg(UINT16 adr) { - return read(adr); + return program->read_byte(adr & 0x1fff); } diff --git a/src/emu/cpu/m6502/m6504.h b/src/emu/cpu/m6502/m6504.h index e325240d8e9..de6ca847b25 100644 --- a/src/emu/cpu/m6502/m6504.h +++ b/src/emu/cpu/m6502/m6504.h @@ -22,16 +22,16 @@ protected: public: virtual ~mi_6504_normal() {} virtual UINT8 read(UINT16 adr); - virtual UINT8 read_direct(UINT16 adr); - virtual UINT8 read_decrypted(UINT16 adr); + virtual UINT8 read_sync(UINT16 adr); + virtual UINT8 read_arg(UINT16 adr); virtual void write(UINT16 adr, UINT8 val); }; class mi_6504_nd : public mi_6504_normal { public: virtual ~mi_6504_nd() {} - virtual UINT8 read_direct(UINT16 adr); - virtual UINT8 read_decrypted(UINT16 adr); + virtual UINT8 read_sync(UINT16 adr); + virtual UINT8 read_arg(UINT16 adr); }; virtual void device_start(); diff --git a/src/emu/cpu/m6502/m6509.c b/src/emu/cpu/m6502/m6509.c index 3c8c3436e25..77af9e8f1f7 100644 --- a/src/emu/cpu/m6502/m6509.c +++ b/src/emu/cpu/m6502/m6509.c @@ -18,6 +18,8 @@ m6509_device::m6509_device(const machine_config &mconfig, const char *tag, devic { program_config.m_addrbus_width = 20; program_config.m_logaddr_width = 20; + sprogram_config.m_addrbus_width = 20; + sprogram_config.m_logaddr_width = 20; } void m6509_device::device_start() @@ -71,9 +73,9 @@ UINT8 m6509_device::mi_6509_normal::read(UINT16 adr) return res; } -UINT8 m6509_device::mi_6509_normal::read_direct(UINT16 adr) +UINT8 m6509_device::mi_6509_normal::read_sync(UINT16 adr) { - UINT8 res = direct->read_raw_byte(base->adr_in_bank_i(adr)); + UINT8 res = sdirect->read_byte(base->adr_in_bank_i(adr)); if(adr == 0x0000) res = base->bank_i_r(); else if(adr == 0x0001) @@ -81,9 +83,9 @@ UINT8 m6509_device::mi_6509_normal::read_direct(UINT16 adr) return res; } -UINT8 m6509_device::mi_6509_normal::read_decrypted(UINT16 adr) +UINT8 m6509_device::mi_6509_normal::read_arg(UINT16 adr) { - UINT8 res = direct->read_decrypted_byte(base->adr_in_bank_i(adr)); + UINT8 res = direct->read_byte(base->adr_in_bank_i(adr)); if(adr == 0x0000) res = base->bank_i_r(); else if(adr == 0x0001) @@ -123,9 +125,9 @@ m6509_device::mi_6509_nd::mi_6509_nd(m6509_device *_base) : mi_6509_normal(_base { } -UINT8 m6509_device::mi_6509_nd::read_direct(UINT16 adr) +UINT8 m6509_device::mi_6509_nd::read_sync(UINT16 adr) { - UINT8 res = program->read_byte(base->adr_in_bank_i(adr)); + UINT8 res = sprogram->read_byte(base->adr_in_bank_i(adr)); if(adr == 0x0000) res = base->bank_i_r(); else if(adr == 0x0001) @@ -133,7 +135,7 @@ UINT8 m6509_device::mi_6509_nd::read_direct(UINT16 adr) return res; } -UINT8 m6509_device::mi_6509_nd::read_decrypted(UINT16 adr) +UINT8 m6509_device::mi_6509_nd::read_arg(UINT16 adr) { UINT8 res = program->read_byte(base->adr_in_bank_i(adr)); if(adr == 0x0000) diff --git a/src/emu/cpu/m6502/m6509.h b/src/emu/cpu/m6502/m6509.h index 561a31449a4..27f7411b80f 100644 --- a/src/emu/cpu/m6502/m6509.h +++ b/src/emu/cpu/m6502/m6509.h @@ -32,8 +32,8 @@ protected: virtual ~mi_6509_normal() {} virtual UINT8 read(UINT16 adr); virtual UINT8 read_9(UINT16 adr); - virtual UINT8 read_direct(UINT16 adr); - virtual UINT8 read_decrypted(UINT16 adr); + virtual UINT8 read_sync(UINT16 adr); + virtual UINT8 read_arg(UINT16 adr); virtual void write(UINT16 adr, UINT8 val); virtual void write_9(UINT16 adr, UINT8 val); }; @@ -42,8 +42,8 @@ protected: public: mi_6509_nd(m6509_device *base); virtual ~mi_6509_nd() {} - virtual UINT8 read_direct(UINT16 adr); - virtual UINT8 read_decrypted(UINT16 adr); + virtual UINT8 read_sync(UINT16 adr); + virtual UINT8 read_arg(UINT16 adr); }; virtual void device_start(); diff --git a/src/emu/cpu/m6502/m6510.c b/src/emu/cpu/m6502/m6510.c index dfab818bd60..10e57fb27b8 100644 --- a/src/emu/cpu/m6502/m6510.c +++ b/src/emu/cpu/m6502/m6510.c @@ -119,9 +119,9 @@ UINT8 m6510_device::mi_6510_normal::read(UINT16 adr) return res; } -UINT8 m6510_device::mi_6510_normal::read_direct(UINT16 adr) +UINT8 m6510_device::mi_6510_normal::read_sync(UINT16 adr) { - UINT8 res = direct->read_raw_byte(adr); + UINT8 res = sdirect->read_byte(adr); if(adr == 0x0000) res = base->dir_r(); else if(adr == 0x0001) @@ -129,9 +129,9 @@ UINT8 m6510_device::mi_6510_normal::read_direct(UINT16 adr) return res; } -UINT8 m6510_device::mi_6510_normal::read_decrypted(UINT16 adr) +UINT8 m6510_device::mi_6510_normal::read_arg(UINT16 adr) { - UINT8 res = direct->read_decrypted_byte(adr); + UINT8 res = direct->read_byte(adr); if(adr == 0x0000) res = base->dir_r(); else if(adr == 0x0001) @@ -152,14 +152,24 @@ m6510_device::mi_6510_nd::mi_6510_nd(m6510_device *_base) : mi_6510_normal(_base { } -UINT8 m6510_device::mi_6510_nd::read_direct(UINT16 adr) +UINT8 m6510_device::mi_6510_nd::read_sync(UINT16 adr) { - return read(adr); + UINT8 res = sprogram->read_byte(adr); + if(adr == 0x0000) + res = base->dir_r(); + else if(adr == 0x0001) + res = base->port_r(); + return res; } -UINT8 m6510_device::mi_6510_nd::read_decrypted(UINT16 adr) +UINT8 m6510_device::mi_6510_nd::read_arg(UINT16 adr) { - return read(adr); + UINT8 res = program->read_byte(adr); + if(adr == 0x0000) + res = base->dir_r(); + else if(adr == 0x0001) + res = base->port_r(); + return res; } #include "cpu/m6502/m6510.inc" diff --git a/src/emu/cpu/m6502/m6510.h b/src/emu/cpu/m6502/m6510.h index 76b8a405f30..2dbd7e4138e 100644 --- a/src/emu/cpu/m6502/m6510.h +++ b/src/emu/cpu/m6502/m6510.h @@ -47,8 +47,8 @@ protected: mi_6510_normal(m6510_device *base); virtual ~mi_6510_normal() {} virtual UINT8 read(UINT16 adr); - virtual UINT8 read_direct(UINT16 adr); - virtual UINT8 read_decrypted(UINT16 adr); + virtual UINT8 read_sync(UINT16 adr); + virtual UINT8 read_arg(UINT16 adr); virtual void write(UINT16 adr, UINT8 val); }; @@ -56,8 +56,8 @@ protected: public: mi_6510_nd(m6510_device *base); virtual ~mi_6510_nd() {} - virtual UINT8 read_direct(UINT16 adr); - virtual UINT8 read_decrypted(UINT16 adr); + virtual UINT8 read_sync(UINT16 adr); + virtual UINT8 read_arg(UINT16 adr); }; devcb_read8 read_port; diff --git a/src/emu/cpu/m6502/n2a03.c b/src/emu/cpu/m6502/n2a03.c index dd29182f53c..b3b2cb31808 100644 --- a/src/emu/cpu/m6502/n2a03.c +++ b/src/emu/cpu/m6502/n2a03.c @@ -38,14 +38,14 @@ UINT8 n2a03_device::mi_2a03_normal::read(UINT16 adr) return program->read_byte(adr); } -UINT8 n2a03_device::mi_2a03_normal::read_direct(UINT16 adr) +UINT8 n2a03_device::mi_2a03_normal::read_sync(UINT16 adr) { - return direct->read_raw_byte(adr); + return sdirect->read_byte(adr); } -UINT8 n2a03_device::mi_2a03_normal::read_decrypted(UINT16 adr) +UINT8 n2a03_device::mi_2a03_normal::read_arg(UINT16 adr) { - return direct->read_decrypted_byte(adr); + return direct->read_byte(adr); } void n2a03_device::mi_2a03_normal::write(UINT16 adr, UINT8 val) @@ -58,12 +58,12 @@ UINT8 n2a03_device::mi_2a03_nd::read(UINT16 adr) return program->read_byte(adr); } -UINT8 n2a03_device::mi_2a03_nd::read_direct(UINT16 adr) +UINT8 n2a03_device::mi_2a03_nd::read_sync(UINT16 adr) { - return program->read_byte(adr); + return sprogram->read_byte(adr); } -UINT8 n2a03_device::mi_2a03_nd::read_decrypted(UINT16 adr) +UINT8 n2a03_device::mi_2a03_nd::read_arg(UINT16 adr) { return program->read_byte(adr); } diff --git a/src/emu/cpu/m6502/n2a03.h b/src/emu/cpu/m6502/n2a03.h index c2f8a7f511b..a046ef71ad3 100644 --- a/src/emu/cpu/m6502/n2a03.h +++ b/src/emu/cpu/m6502/n2a03.h @@ -28,8 +28,8 @@ protected: public: virtual ~mi_2a03_normal() {} virtual UINT8 read(UINT16 adr); - virtual UINT8 read_direct(UINT16 adr); - virtual UINT8 read_decrypted(UINT16 adr); + virtual UINT8 read_sync(UINT16 adr); + virtual UINT8 read_arg(UINT16 adr); virtual void write(UINT16 adr, UINT8 val); }; @@ -37,8 +37,8 @@ protected: public: virtual ~mi_2a03_nd() {} virtual UINT8 read(UINT16 adr); - virtual UINT8 read_direct(UINT16 adr); - virtual UINT8 read_decrypted(UINT16 adr); + virtual UINT8 read_sync(UINT16 adr); + virtual UINT8 read_arg(UINT16 adr); virtual void write(UINT16 adr, UINT8 val); }; diff --git a/src/emu/cpu/m6502/odeco16.lst b/src/emu/cpu/m6502/odeco16.lst index cf8b75455d6..6cea2fa7282 100644 --- a/src/emu/cpu/m6502/odeco16.lst +++ b/src/emu/cpu/m6502/odeco16.lst @@ -13,13 +13,13 @@ brk_16_imp write(SP, irq_taken ? P & ~F_B : P); dec_SP(); if(nmi_state) { - PC = read_direct(0xfff7); - PC = set_h(PC, read_direct(0xfff6)); + PC = read_arg(0xfff7); + PC = set_h(PC, read_arg(0xfff6)); nmi_state = false; standard_irq_callback(NMI_LINE); } else { - PC = read_direct(0xfff3); - PC = set_h(PC, read_direct(0xfff2)); + PC = read_arg(0xfff3); + PC = set_h(PC, read_arg(0xfff2)); if(irq_taken) standard_irq_callback(IRQ_LINE); } @@ -95,7 +95,7 @@ vbl_zpg # exceptions reset_16 - PC = read_direct(0xfff1); - PC = set_h(PC, read_direct(0xfff0)); + PC = read_arg(0xfff1); + PC = set_h(PC, read_arg(0xfff0)); prefetch(); inst_state = -1; diff --git a/src/emu/cpu/m6502/om6502.lst b/src/emu/cpu/m6502/om6502.lst index f76884b554f..24c560c02fa 100644 --- a/src/emu/cpu/m6502/om6502.lst +++ b/src/emu/cpu/m6502/om6502.lst @@ -184,7 +184,7 @@ bcc_rel if(!(P & F_C)) { read_pc_noinc(); if(page_changing(PC, INT8(TMP))) { - read_direct(set_l(PC, PC+INT8(TMP))); + read_arg(set_l(PC, PC+INT8(TMP))); } PC += INT8(TMP); } @@ -195,7 +195,7 @@ bcs_rel if(P & F_C) { read_pc_noinc(); if(page_changing(PC, INT8(TMP))) { - read_direct(set_l(PC, PC+INT8(TMP))); + read_arg(set_l(PC, PC+INT8(TMP))); } PC += INT8(TMP); } @@ -206,7 +206,7 @@ beq_rel if(P & F_Z) { read_pc_noinc(); if(page_changing(PC, INT8(TMP))) { - read_direct(set_l(PC, PC+INT8(TMP))); + read_arg(set_l(PC, PC+INT8(TMP))); } PC += INT8(TMP); } @@ -228,7 +228,7 @@ bmi_rel if(P & F_N) { read_pc_noinc(); if(page_changing(PC, INT8(TMP))) { - read_direct(set_l(PC, PC+INT8(TMP))); + read_arg(set_l(PC, PC+INT8(TMP))); } PC += INT8(TMP); } @@ -239,7 +239,7 @@ bne_rel if(!(P & F_Z)) { read_pc_noinc(); if(page_changing(PC, INT8(TMP))) { - read_direct(set_l(PC, PC+INT8(TMP))); + read_arg(set_l(PC, PC+INT8(TMP))); } PC += INT8(TMP); } @@ -250,7 +250,7 @@ bpl_rel if(!(P & F_N)) { read_pc_noinc(); if(page_changing(PC, INT8(TMP))) { - read_direct(set_l(PC, PC+INT8(TMP))); + read_arg(set_l(PC, PC+INT8(TMP))); } PC += INT8(TMP); } @@ -270,13 +270,13 @@ brk_imp write(SP, irq_taken ? P & ~F_B : P); dec_SP(); if(nmi_state) { - PC = read_direct(0xfffa); - PC = set_h(PC, read_direct(0xfffb)); + PC = read_arg(0xfffa); + PC = set_h(PC, read_arg(0xfffb)); nmi_state = false; standard_irq_callback(NMI_LINE); } else { - PC = read_direct(0xfffe); - PC = set_h(PC, read_direct(0xffff)); + PC = read_arg(0xfffe); + PC = set_h(PC, read_arg(0xffff)); if(irq_taken) standard_irq_callback(IRQ_LINE); } @@ -290,7 +290,7 @@ bvc_rel if(!(P & F_V)) { read_pc_noinc(); if(page_changing(PC, INT8(TMP))) { - read_direct(set_l(PC, PC+INT8(TMP))); + read_arg(set_l(PC, PC+INT8(TMP))); } PC += INT8(TMP); } @@ -301,7 +301,7 @@ bvs_rel if(P & F_V) { read_pc_noinc(); if(page_changing(PC, INT8(TMP))) { - read_direct(set_l(PC, PC+INT8(TMP))); + read_arg(set_l(PC, PC+INT8(TMP))); } PC += INT8(TMP); } @@ -1216,8 +1216,8 @@ tya_imp # exceptions reset - PC = read_direct(0xfffc); - PC = set_h(PC, read_direct(0xfffd)); + PC = read_arg(0xfffc); + PC = set_h(PC, read_arg(0xfffd)); prefetch(); inst_state = -1; diff --git a/src/emu/cpu/m6502/om65c02.lst b/src/emu/cpu/m6502/om65c02.lst index 21bc1d4e726..d64ddcdc409 100644 --- a/src/emu/cpu/m6502/om65c02.lst +++ b/src/emu/cpu/m6502/om65c02.lst @@ -181,7 +181,7 @@ bra_rel TMP = read_pc(); read_pc_noinc(); if(page_changing(PC, INT8(TMP))) { - read_direct(set_l(PC, PC+INT8(TMP))); + read_arg(set_l(PC, PC+INT8(TMP))); } PC += INT8(TMP); prefetch(); @@ -199,13 +199,13 @@ brk_c_imp write(SP, irq_taken || nmi_state ? P & ~F_B : P); dec_SP(); if(irq_taken && nmi_state) { - PC = read_direct(0xfffa); - PC = set_h(PC, read_direct(0xfffb)); + PC = read_arg(0xfffa); + PC = set_h(PC, read_arg(0xfffb)); nmi_state = false; standard_irq_callback(NMI_LINE); } else { - PC = read_direct(0xfffe); - PC = set_h(PC, read_direct(0xffff)); + PC = read_arg(0xfffe); + PC = set_h(PC, read_arg(0xffff)); if(irq_taken) standard_irq_callback(IRQ_LINE); } diff --git a/src/emu/cpu/m6502/om65ce02.lst b/src/emu/cpu/m6502/om65ce02.lst index 6fdf244a8b1..049097fded8 100644 --- a/src/emu/cpu/m6502/om65ce02.lst +++ b/src/emu/cpu/m6502/om65ce02.lst @@ -360,12 +360,12 @@ brk_ce_imp write(SP, irq_taken || nmi_state ? P & ~F_B : P); dec_SP_ce(); if(nmi_state) { - PC = read_direct(0xfffa); - PC = set_h(PC, read_direct(0xfffb)); + PC = read_arg(0xfffa); + PC = set_h(PC, read_arg(0xfffb)); nmi_state = false; } else { - PC = read_direct(0xfffe); - PC = set_h(PC, read_direct(0xffff)); + PC = read_arg(0xfffe); + PC = set_h(PC, read_arg(0xffff)); } irq_taken = false; P = (P | F_I) & ~F_D; // Do *not* move after the prefetch diff --git a/src/emu/cpu/m6502/om740.lst b/src/emu/cpu/m6502/om740.lst index d944a0cbcb5..9f17dc639bf 100644 --- a/src/emu/cpu/m6502/om740.lst +++ b/src/emu/cpu/m6502/om740.lst @@ -99,7 +99,7 @@ bra_rel TMP = read_pc(); read_pc_noinc(); if(page_changing(PC, INT8(TMP))) { - read_direct(set_l(PC, PC+INT8(TMP))); + read_arg(set_l(PC, PC+INT8(TMP))); } PC += INT8(TMP); prefetch(); @@ -112,8 +112,8 @@ jmp_zpi prefetch(); reset740 - PC = read_direct(0xfffe); - PC = set_h(PC, read_direct(0xffff)); + PC = read_arg(0xfffe); + PC = set_h(PC, read_arg(0xffff)); prefetch(); inst_state = -1; @@ -131,13 +131,13 @@ brk740_imp write(SP, irq_taken ? P & ~F_B : P); dec_SP(); if(nmi_state) { - PC = read_direct(0xfffa); - PC = set_h(PC, read_direct(0xfffb)); + PC = read_arg(0xfffa); + PC = set_h(PC, read_arg(0xfffb)); nmi_state = false; standard_irq_callback(NMI_LINE); } else { - PC = read_direct(m_irq_vector); - PC = set_h(PC, read_direct(m_irq_vector+1)); + PC = read_arg(m_irq_vector); + PC = set_h(PC, read_arg(m_irq_vector+1)); if(irq_taken) standard_irq_callback(IRQ_LINE); } |