Previous 199869 Revisions Next

r18708 Thursday 25th October, 2012 at 16:59:20 UTC by smf
tidy up PSX IRQ (nw)
[src/emu/cpu/psx]psx.c psx.h
[src/mame/drivers]zn.c
[src/mame/includes]psx.h

trunk/src/mame/includes/psx.h
r18707r18708
2727extern void psx_driver_init( running_machine &machine );
2828DECLARE_WRITE32_HANDLER( psx_com_delay_w );
2929DECLARE_READ32_HANDLER( psx_com_delay_r );
30extern void psx_irq_set( running_machine &, UINT32 );
3130extern void psx_sio_install_handler( running_machine &, int, psx_sio_handler );
3231extern void psx_sio_input( running_machine &, int, int, int );
3332
trunk/src/mame/drivers/zn.c
r18707r18708
14711471      *2                  - Unpopulated DIP28 socket
14721472*/
14731473
1474/* IRQ */
1475
1476void psx_irq_set( running_machine &machine, UINT32 data )
1477{
1478   psxcpu_device::irq_set( *machine.device("maincpu^"), "maincpu", data );
1479}
1480
14811474static void atpsx_interrupt(device_t *device, int state)
14821475{
14831476   if (state)
14841477   {
1485      psx_irq_set(device->machine(), 0x400);
1478      psxirq_device *psxirq = (psxirq_device *) machine.device("maincpu:irq");
1479      psxirq->intin10();
14861480   }
14871481}
14881482
r18707r18708
20532047{
20542048   if (state)
20552049   {
2056      psx_irq_set(device->machine(), 0x400);
2050      psxirq_device *psxirq = (psxirq_device *) machine.device("maincpu:irq");
2051      psxirq->intin10();
20572052   }
20582053}
20592054
r18707r18708
21552150WRITE32_MEMBER(zn_state::nbajamex_80_w)
21562151{
21572152   verboselog( machine(), 0, "nbajamex_80_w( %08x, %08x, %08x )\n", offset, data, mem_mask );
2158   psx_irq_set(machine(), 0x400);
2153   psxirq_device *psxirq = (psxirq_device *) machine.device("maincpu:irq");
2154   psxirq->intin10();
21592155}
21602156
21612157READ32_MEMBER(zn_state::nbajamex_08_r)
trunk/src/emu/cpu/psx/psx.h
r18707r18708
145145   static psxcpu_device *getcpu( device_t &device, const char *cputag );
146146   static void install_sio_handler( device_t &device, const char *cputag, int n_port, psx_sio_handler p_f_sio_handler );
147147   static void sio_input( device_t &device, const char *cputag, int n_port, int n_mask, int n_data );
148   static void irq_set( device_t &device, const char *cputag, UINT32 bitmask );
149148
150149protected:
151150   psxcpu_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, address_map_constructor internal_map);
trunk/src/emu/cpu/psx/psx.c
r18707r18708
31653165   return downcast<psxcpu_device *>( device.subdevice( cputag ) );
31663166}
31673167
3168void psxcpu_device::irq_set( device_t &device, const char *cputag, UINT32 bitmask )
3169{
3170   psxirq_device *irq = getcpu( device, cputag )->subdevice<psxirq_device>("irq");
3171   irq->set( bitmask );
3172}
3173
31743168void psxcpu_device::install_sio_handler( device_t &device, const char *cputag, int n_port, psx_sio_handler p_f_sio_handler )
31753169{
31763170   psxsio_device *sio = getcpu( device, cputag )->subdevice<psxsio_device>("sio");

Previous 199869 Revisions Next


© 1997-2024 The MAME Team