Previous 199869 Revisions Next

r26452 Saturday 30th November, 2013 at 13:00:12 UTC by hap
flag pins are inverted
[src/emu/machine]7200fifo.c 7200fifo.h
[src/mame/drivers]seibuspi.c zn.c

trunk/src/mame/drivers/seibuspi.c
r26451r26452
876876   // d0: fifo full flag (z80)
877877   // d1: fifo empty flag (main)
878878   // other bits: unused?
879   int d1 = (m_soundfifo2 != NULL) ? ~m_soundfifo2->ef_r() << 1 & 0x02 : 0;
880   return d1 | (~m_soundfifo1->ff_r() & 0x01);
879   int d1 = (m_soundfifo2 != NULL) ? m_soundfifo2->ef_r() << 1 : 0;
880   return d1 | m_soundfifo1->ff_r();
881881}
882882
883883READ8_MEMBER(seibuspi_state::spi_status_r)
r26451r26452
10581058   // d0: fifo full flag (main)
10591059   // d1: fifo empty flag (z80)
10601060   // other bits: unused?
1061   int d0 = (m_soundfifo2 != NULL) ? ~m_soundfifo2->ff_r() & 0x01 : 0;
1062   return d0 | (~m_soundfifo1->ef_r() << 1 & 0x02);
1061   int d0 = (m_soundfifo2 != NULL) ? m_soundfifo2->ff_r() : 0;
1062   return d0 | m_soundfifo1->ef_r() << 1;
10631063}
10641064
10651065WRITE8_MEMBER(seibuspi_state::z80_bank_w)
trunk/src/mame/drivers/zn.c
r26451r26452
24492449READ8_MEMBER(zn_state::cbaj_sound_main_status_r)
24502450{
24512451   // d1: fifo empty flag, other bits: unused(?)
2452   return ~(m_cbaj_fifo2->ef_r() << 1);
2452   return m_cbaj_fifo2->ef_r() << 1;
24532453}
24542454
24552455static ADDRESS_MAP_START(coh1002msnd_map, AS_PROGRAM, 32, zn_state)
r26451r26452
24632463READ8_MEMBER(zn_state::cbaj_sound_z80_status_r)
24642464{
24652465   // d1: fifo empty flag, other bits: unused
2466   return ~(m_cbaj_fifo1->ef_r() << 1);
2466   return m_cbaj_fifo1->ef_r() << 1;
24672467}
24682468
24692469static ADDRESS_MAP_START( cbaj_z80_map, AS_PROGRAM, 8, zn_state )
trunk/src/emu/machine/7200fifo.c
r26451r26452
6767   m_ff = 0;
6868   m_hf = 0;
6969
70   if (!m_ef_handler.isnull()) m_ef_handler(m_ef);
71   if (!m_ff_handler.isnull()) m_ff_handler(m_ff);
72   if (!m_hf_handler.isnull()) m_hf_handler(m_hf);
70   if (!m_ef_handler.isnull()) m_ef_handler(!m_ef);
71   if (!m_ff_handler.isnull()) m_ff_handler(!m_ff);
72   if (!m_hf_handler.isnull()) m_hf_handler(!m_hf);
7373}
7474
7575
r26451r26452
8989   if (m_ef)
9090   {
9191      m_ef = 0;
92      if (!m_ef_handler.isnull()) m_ef_handler(m_ef);
92      if (!m_ef_handler.isnull()) m_ef_handler(!m_ef);
9393   }
9494
9595   else if (m_read_ptr == m_write_ptr)
9696   {
9797      m_ff = 1;
98      if (!m_ff_handler.isnull()) m_ff_handler(m_ff);
98      if (!m_ff_handler.isnull()) m_ff_handler(!m_ff);
9999   }
100100
101101   else if (((m_read_ptr + 1 + m_ram_size / 2) % m_ram_size) == m_write_ptr)
102102   {
103103      m_hf = 1;
104      if (!m_hf_handler.isnull()) m_hf_handler(m_hf);
104      if (!m_hf_handler.isnull()) m_hf_handler(!m_hf);
105105   }
106106}
107107
r26451r26452
120120   if (m_ff)
121121   {
122122      m_ff = 0;
123      if (!m_ff_handler.isnull()) m_ff_handler(m_ff);
123      if (!m_ff_handler.isnull()) m_ff_handler(!m_ff);
124124   }
125125
126126   else if (m_read_ptr == m_write_ptr)
127127   {
128128      m_ef = 1;
129      if (!m_ef_handler.isnull()) m_ef_handler(m_ef);
129      if (!m_ef_handler.isnull()) m_ef_handler(!m_ef);
130130   }
131131
132132   else if (((m_read_ptr + m_ram_size / 2) % m_ram_size) == m_write_ptr)
133133   {
134134      m_hf = 0;
135      if (!m_hf_handler.isnull()) m_hf_handler(m_hf);
135      if (!m_hf_handler.isnull()) m_hf_handler(!m_hf);
136136   }
137137
138138   return ret;
trunk/src/emu/machine/7200fifo.h
r26451r26452
9292   template<class _Object> static devcb2_base &set_hf_handler(device_t &device, _Object object) { return downcast<fifo7200_device &>(device).m_hf_handler.set_callback(object); }
9393   static void set_ram_size(device_t &device, int size) { downcast<fifo7200_device &>(device).m_ram_size = size; }
9494
95   DECLARE_READ_LINE_MEMBER( ef_r ) { return m_ef; }
96   DECLARE_READ_LINE_MEMBER( ff_r ) { return m_ff; }
97   DECLARE_READ_LINE_MEMBER( hf_r ) { return m_hf; }
95   DECLARE_READ_LINE_MEMBER( ef_r ) { return !m_ef; } // _EF
96   DECLARE_READ_LINE_MEMBER( ff_r ) { return !m_ff; } // _FF
97   DECLARE_READ_LINE_MEMBER( hf_r ) { return !m_hf; } // _HF
9898
9999   // normal configuration
100100   DECLARE_WRITE16_MEMBER( data_word_w ) { fifo_write(data); }

Previous 199869 Revisions Next


© 1997-2024 The MAME Team