Previous 199869 Revisions Next

r44446 Monday 25th January, 2016 at 01:28:16 UTC by Ville Linde
rf5c400: added external memory r/w function [Ville Linde]
[src/devices/sound]k056800.cpp rf5c400.cpp rf5c400.h

trunk/src/devices/sound/k056800.cpp
r252957r252958
108108
109109      case 7:
110110         // Sound interrupt
111         m_int_pending = true;
112
113111         if (m_int_enabled)
112         {
113            m_int_pending = true;
114114            m_int_handler(ASSERT_LINE);
115
115         }
116116         break;
117117   }
118118}
trunk/src/devices/sound/rf5c400.cpp
r252957r252958
354354      {
355355         return 0;
356356      }
357
358      case 0x13:      // memory read
359      {
360         return m_rom[m_ext_mem_address];
361      }
357362   }
358363
359364   return 0;
r252957r252958
413418         case 0x08:      // relative to env attack (channel no)
414419         case 0x09:      // relative to env attack (0x0c00/ 0x1c00)
415420
416         case 0x11:      // ? counter for 0x13?
421         case 0x11:      // memory r/w address, bits 15 - 0
417422         {
423            m_ext_mem_address &= ~0xffff;
424            m_ext_mem_address |= data;
418425            break;
419426         }
420         case 0x13:      // ? bujutsu writes sample data here
427         case 0x12:      // memory r/w address, bits 23 - 16
421428         {
429            m_ext_mem_address &= 0xffff;
430            m_ext_mem_address |= (UINT32)(data) << 16;
422431            break;
423432         }
433         case 0x13:      // memory write data
434         {
435            m_ext_mem_data = data;
436            break;
437         }
424438
425         case 0x14:      // ? related to 0x11/0x13 ?
439         case 0x14:      // memory write
440         {
441            if ((data & 0x3) == 3)
442            {
443               m_rom[m_ext_mem_address] = m_ext_mem_data;
444            }
426445            break;
446         }
427447
428448         case 0x21:      // reverb(character).w
429449         case 0x32:      // reverb(pre-lpf).w
trunk/src/devices/sound/rf5c400.h
r252957r252958
109109   double m_env_rr_table[0x9f];
110110
111111   rf5c400_channel m_channels[32];
112
113   UINT32 m_ext_mem_address;
114   UINT16 m_ext_mem_data;
112115};
113116
114117extern const device_type RF5C400;


Previous 199869 Revisions Next


© 1997-2024 The MAME Team