mirror of
https://github.com/holub/mame
synced 2025-10-05 08:41:31 +03:00
iteagle: Move serial irq assignment to top level
This commit is contained in:
parent
262fbb4009
commit
95aa75c8c6
@ -161,7 +161,7 @@ static MACHINE_CONFIG_START( iteagle, iteagle_state )
|
||||
MCFG_VRC4373_ADD( ":pci:00.0", ":maincpu")
|
||||
MCFG_ITEAGLE_IDE_ADD( PCI_ID_IDE)
|
||||
MCFG_ITEAGLE_IDE_IRQ_ADD( ":maincpu", MIPS3_IRQ2)
|
||||
MCFG_ITEAGLE_FPGA_ADD( PCI_ID_FPGA, ":maincpu", MIPS3_IRQ1)
|
||||
MCFG_ITEAGLE_FPGA_ADD( PCI_ID_FPGA, ":maincpu", MIPS3_IRQ1, MIPS3_IRQ4)
|
||||
MCFG_ES1373_ADD( PCI_ID_SOUND)
|
||||
MCFG_SOUND_ROUTE(0, PCI_ID_SOUND":lspeaker", 1.0)
|
||||
MCFG_SOUND_ROUTE(1, PCI_ID_SOUND":rspeaker", 1.0)
|
||||
|
@ -221,7 +221,7 @@ READ32_MEMBER( iteagle_fpga_device::fpga_r )
|
||||
if (m_serial_rx3.empty()) {
|
||||
m_serial_com3[0] &= ~0x1;
|
||||
m_serial_com3[3] &= ~0x20;
|
||||
m_cpu->set_input_line(4, CLEAR_LINE);
|
||||
m_cpu->set_input_line(m_serial_irq_num, CLEAR_LINE);
|
||||
}
|
||||
}
|
||||
if (LOG_FPGA)
|
||||
@ -365,7 +365,7 @@ WRITE32_MEMBER( iteagle_fpga_device::fpga_w )
|
||||
m_serial_rx3 += "OK\r";
|
||||
m_serial_com3[0] |= 0x1;
|
||||
m_serial_com3[3] = 0x20;
|
||||
m_cpu->set_input_line(4, ASSERT_LINE);
|
||||
m_cpu->set_input_line(m_serial_irq_num, ASSERT_LINE);
|
||||
m_serial_str.clear();
|
||||
}
|
||||
}
|
||||
|
@ -12,9 +12,9 @@
|
||||
|
||||
//MCFG_PCI_DEVICE_ADD(_tag, _type, _main_id, _revision, _pclass, _subsystem_id)
|
||||
|
||||
#define MCFG_ITEAGLE_FPGA_ADD(_tag, _cpu_tag, _irq_num) \
|
||||
#define MCFG_ITEAGLE_FPGA_ADD(_tag, _cpu_tag, _irq_num, _serial_irq_num) \
|
||||
MCFG_PCI_DEVICE_ADD(_tag, ITEAGLE_FPGA, 0x55CC33AA, 0xAA, 0xAAAAAA, 0x00) \
|
||||
downcast<iteagle_fpga_device *>(device)->set_irq_info(_cpu_tag, _irq_num);
|
||||
downcast<iteagle_fpga_device *>(device)->set_irq_info(_cpu_tag, _irq_num, _serial_irq_num);
|
||||
|
||||
#define MCFG_ITEAGLE_FPGA_INIT(_version, _seq_init) \
|
||||
downcast<iteagle_fpga_device *>(device)->set_init_info(_version, _seq_init);
|
||||
@ -38,8 +38,8 @@ class iteagle_fpga_device : public pci_device,
|
||||
public:
|
||||
iteagle_fpga_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
|
||||
void set_init_info(int version, int seq_init) {m_version=version; m_seq_init=seq_init;}
|
||||
void set_irq_info(const char *tag, const int irq_num) {m_cpu_tag = tag; m_irq_num = irq_num;}
|
||||
|
||||
void set_irq_info(const char *tag, const int irq_num, const int serial_num) {
|
||||
m_cpu_tag = tag; m_irq_num = irq_num; m_serial_irq_num = serial_num;}
|
||||
|
||||
protected:
|
||||
virtual void device_start() override;
|
||||
@ -56,6 +56,7 @@ private:
|
||||
const char *m_cpu_tag;
|
||||
cpu_device *m_cpu;
|
||||
int m_irq_num;
|
||||
int m_serial_irq_num;
|
||||
|
||||
UINT32 m_fpga_regs[0x20/4];
|
||||
UINT32 m_rtc_regs[0x800/4];
|
||||
|
Loading…
Reference in New Issue
Block a user