Previous 199869 Revisions Next

r29529 Friday 11th April, 2014 at 07:17:47 UTC by Fabio Priuli
k053260: converted to use inline config. nw.
[src/emu/sound]k053260.c k053260.h
[src/mame/drivers]overdriv.c

trunk/src/emu/sound/k053260.c
r29528r29529
3434      m_rom(NULL),
3535      m_rom_size(0),
3636      m_delta_table(NULL),
37      m_intf(NULL)
37      m_rgnoverride(NULL)
3838{
3939   memset(m_regs, 0, sizeof(int)*0x30);
4040}
r29528r29529
4646
4747void k053260_device::device_start()
4848{
49   static const k053260_interface defintrf = { 0 };
5049   int rate = clock() / 32;
51   int i;
5250
53   /* Initialize our chip structure */
54   m_intf = (static_config() != NULL) ? (const k053260_interface *)static_config() : &defintrf;
55
5651   m_mode = 0;
5752
58   memory_region *region = (m_intf->rgnoverride != NULL) ? memregion(m_intf->rgnoverride) : this->region();
59
53   memory_region *region = (m_rgnoverride) ? memregion(m_rgnoverride) : this->region();
6054   m_rom = *region;
6155   m_rom_size = region->bytes();
6256
6357   device_reset();
6458
65   for ( i = 0; i < 0x30; i++ )
59   for (int i = 0; i < 0x30; i++)
6660      m_regs[i] = 0;
6761
6862   m_delta_table = auto_alloc_array( machine(), UINT32, 0x1000 );
r29528r29529
7569   save_item(NAME(m_mode));
7670   save_item(NAME(m_regs));
7771
78   for ( i = 0; i < 4; i++ )
72   for (int i = 0; i < 4; i++)
7973   {
8074      save_item(NAME(m_channels[i].rate), i);
8175      save_item(NAME(m_channels[i].size), i);
r29528r29529
9892
9993void k053260_device::device_reset()
10094{
101   int i;
10295
103   for( i = 0; i < 4; i++ ) {
96   for (int i = 0; i < 4; i++)
97   {
10498      m_channels[i].rate = 0;
10599      m_channels[i].size = 0;
106100      m_channels[i].start = 0;
trunk/src/emu/sound/k053260.h
r29528r29529
1919#define MCFG_K053260_REPLACE(_tag, _clock) \
2020   MCFG_DEVICE_REPLACE(_tag, K053260, _clock)
2121
22#define MCFG_K053260_REGION(_tag) \
23   k053260_device::set_region_tag(*device, _tag);
2224
25
2326//**************************************************************************
2427//  TYPE DEFINITIONS
2528//**************************************************************************
2629
27struct k053260_interface
28{
29   const char *rgnoverride;
30};
31
32
3330struct k053260_channel
3431{
3532   k053260_channel() :
r29528r29529
6865   k053260_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
6966   ~k053260_device() { }
7067
68   static void set_region_tag(device_t &device, const char *tag) { downcast<k053260_device &>(device).m_rgnoverride = tag; }
69
7170protected:
7271   // device-level overrides
7372   virtual void device_start();
r29528r29529
8483   void InitDeltaTable( int rate, int clock );
8584   void check_bounds( int channel );
8685
87private:
8886   sound_stream *              m_channel;
8987   int                         m_mode;
9088   int                         m_regs[0x30];
r29528r29529
9290   int                         m_rom_size;
9391   UINT32                      *m_delta_table;
9492   k053260_channel             m_channels[4];
95   const k053260_interface     *m_intf;
93   const char                  *m_rgnoverride;
9694};
9795
9896extern const device_type K053260;
9997
100
10198#endif /* __K053260_H__ */
trunk/src/mame/drivers/overdriv.c
r29528r29529
260260INPUT_PORTS_END
261261
262262
263static const k053260_interface k053260_config =
264{
265   "shared"
266};
267
268263static const k053247_interface overdriv_k053246_intf =
269264{
270265   "gfx1", 0,
r29528r29529
375370   MCFG_SOUND_ROUTE(1, "rspeaker", 0.5)
376371
377372   MCFG_K053260_ADD("k053260_1", 3579545)
378   MCFG_SOUND_CONFIG(k053260_config)
373   MCFG_K053260_REGION("shared")
379374   MCFG_SOUND_ROUTE(0, "lspeaker", 0.35)
380375   MCFG_SOUND_ROUTE(1, "rspeaker", 0.35)
381376
382377   MCFG_K053260_ADD("k053260_2", 3579545)
383   MCFG_SOUND_CONFIG(k053260_config)
378   MCFG_K053260_REGION("shared")
384379   MCFG_SOUND_ROUTE(0, "lspeaker", 0.35)
385380   MCFG_SOUND_ROUTE(1, "rspeaker", 0.35)
386381MACHINE_CONFIG_END

Previous 199869 Revisions Next


© 1997-2024 The MAME Team