mirror of
https://github.com/holub/mame
synced 2025-04-23 08:49:55 +03:00
Merge pull request #4929 from cam900/k033906_args
k033906.cpp : Updates
This commit is contained in:
commit
fbf688b976
@ -25,6 +25,8 @@ k033906_device::k033906_device(const machine_config &mconfig, const char *tag, d
|
||||
: device_t(mconfig, K033906, tag, owner, clock)
|
||||
, m_reg_set(0)
|
||||
, m_voodoo(*this, finder_base::DUMMY_TAG)
|
||||
, m_reg(nullptr)
|
||||
, m_ram(nullptr)
|
||||
{
|
||||
}
|
||||
|
||||
@ -35,10 +37,12 @@ k033906_device::k033906_device(const machine_config &mconfig, const char *tag, d
|
||||
void k033906_device::device_start()
|
||||
{
|
||||
m_reg_set = 0;
|
||||
m_reg = make_unique_clear<u32[]>(256);
|
||||
m_ram = make_unique_clear<u32[]>(32768);
|
||||
|
||||
save_item(NAME(m_reg));
|
||||
save_item(NAME(m_ram));
|
||||
save_item(NAME(m_reg_set));
|
||||
save_pointer(NAME(m_reg), 256);
|
||||
save_pointer(NAME(m_ram), 32768);
|
||||
}
|
||||
|
||||
|
||||
@ -110,7 +114,7 @@ void k033906_device::reg_w(int reg, uint32_t data)
|
||||
}
|
||||
}
|
||||
|
||||
READ32_MEMBER(k033906_device::read)
|
||||
u32 k033906_device::read(offs_t offset)
|
||||
{
|
||||
if (m_reg_set)
|
||||
return reg_r(offset);
|
||||
@ -118,7 +122,7 @@ READ32_MEMBER(k033906_device::read)
|
||||
return m_ram[offset];
|
||||
}
|
||||
|
||||
WRITE32_MEMBER(k033906_device::write)
|
||||
void k033906_device::write(offs_t offset, u32 data)
|
||||
{
|
||||
if (m_reg_set)
|
||||
reg_w(offset, data);
|
||||
|
@ -26,9 +26,9 @@ public:
|
||||
|
||||
k033906_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
|
||||
|
||||
DECLARE_READ32_MEMBER( read );
|
||||
DECLARE_WRITE32_MEMBER( write );
|
||||
DECLARE_WRITE_LINE_MEMBER( set_reg );
|
||||
u32 read(offs_t offset);
|
||||
void write(offs_t offset, u32 data);
|
||||
DECLARE_WRITE_LINE_MEMBER(set_reg);
|
||||
|
||||
protected:
|
||||
// device-level overrides
|
||||
@ -47,8 +47,8 @@ private:
|
||||
|
||||
required_device<voodoo_device> m_voodoo;
|
||||
|
||||
uint32_t m_reg[256];
|
||||
uint32_t m_ram[32768];
|
||||
std::unique_ptr<u32[]> m_reg;
|
||||
std::unique_ptr<u32[]> m_ram;
|
||||
};
|
||||
|
||||
DECLARE_DEVICE_TYPE(K033906, k033906_device)
|
||||
|
@ -384,12 +384,12 @@ READ32_MEMBER( konppc_device::K033906_0_r )
|
||||
if (nwk_device_sel[0] & 0x01)
|
||||
return nwk_fifo_r(space, 0);
|
||||
else
|
||||
return m_k033906[0]->read(space, offset, mem_mask);
|
||||
return m_k033906[0]->read(offset);
|
||||
}
|
||||
|
||||
WRITE32_MEMBER( konppc_device::K033906_0_w )
|
||||
{
|
||||
m_k033906[0]->write(space, offset, data, mem_mask);
|
||||
m_k033906[0]->write(offset, data);
|
||||
}
|
||||
|
||||
READ32_MEMBER( konppc_device::K033906_1_r )
|
||||
@ -397,12 +397,12 @@ READ32_MEMBER( konppc_device::K033906_1_r )
|
||||
if (nwk_device_sel[1] & 0x01)
|
||||
return nwk_fifo_r(space, 1);
|
||||
else
|
||||
return m_k033906[1]->read(space, offset, mem_mask);
|
||||
return m_k033906[1]->read(offset);
|
||||
}
|
||||
|
||||
WRITE32_MEMBER( konppc_device::K033906_1_w)
|
||||
{
|
||||
m_k033906[1]->write(space, offset, data, mem_mask);
|
||||
m_k033906[1]->write(offset, data);
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
|
Loading…
Reference in New Issue
Block a user