Previous 199869 Revisions Next

r29526 Friday 11th April, 2014 at 06:30:23 UTC by Fabio Priuli
segapcm: converted to use inline config. nw.
[src/emu/sound]segapcm.c segapcm.h
[src/mame/drivers]segahang.c segaorun.c segaxbd.c segaybd.c

trunk/src/mame/drivers/segaybd.c
r29525r29526
11381138INPUT_PORTS_END
11391139
11401140
1141
11421141//**************************************************************************
1143//  SOUND DEFINITIONS
1144//**************************************************************************
1145
1146static const sega_pcm_interface segapcm_interface =
1147{
1148   BANK_12M | BANK_MASKF8
1149};
1150
1151
1152
1153//**************************************************************************
11541142//  GENERIC MACHINE DRIVERS
11551143//**************************************************************************
11561144
r29525r29526
12061194   MCFG_SOUND_ROUTE(1, "rspeaker", 0.43)
12071195
12081196   MCFG_SEGAPCM_ADD("pcm", SOUND_CLOCK/8)
1209   MCFG_SOUND_CONFIG(segapcm_interface)
1197   MCFG_SEGAPCM_BANK(BANK_12M | BANK_MASKF8)
12101198   MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
12111199   MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
12121200MACHINE_CONFIG_END
trunk/src/mame/drivers/segahang.c
r29525r29526
778778   DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
779779};
780780
781static const sega_pcm_interface segapcm_interface =
782{
783   BANK_512
784};
785
786
787
788781//**************************************************************************
789782//  GRAPHICS DECODING
790783//**************************************************************************
r29525r29526
882875   MCFG_SOUND_ROUTE(3, "rspeaker", 0.37)
883876
884877   MCFG_SEGAPCM_ADD("pcm", MASTER_CLOCK_8MHz)
885   MCFG_SOUND_CONFIG(segapcm_interface)
878   MCFG_SEGAPCM_BANK(BANK_512)
886879   MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
887880   MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
888881MACHINE_CONFIG_END
r29525r29526
921914   MCFG_SOUND_ROUTE(3, "rspeaker", 0.37)
922915
923916   MCFG_SEGAPCM_ADD("pcm", MASTER_CLOCK_8MHz/2)
924   MCFG_SOUND_CONFIG(segapcm_interface)
917   MCFG_SEGAPCM_BANK(BANK_512)
925918   MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
926919   MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
927920MACHINE_CONFIG_END
r29525r29526
943936   MCFG_SOUND_ROUTE(1, "rspeaker", 0.43)
944937
945938   MCFG_SEGAPCM_ADD("pcm", MASTER_CLOCK_8MHz/2)
946   MCFG_SOUND_CONFIG(segapcm_interface)
939   MCFG_SEGAPCM_BANK(BANK_512)
947940   MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
948941   MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
949942MACHINE_CONFIG_END
trunk/src/mame/drivers/segaorun.c
r29525r29526
11601160
11611161
11621162//**************************************************************************
1163//  SOUND DEFINITIONS
1164//**************************************************************************
1165
1166static const sega_pcm_interface segapcm_interface =
1167{
1168   BANK_512
1169};
1170
1171
1172
1173//**************************************************************************
11741163//  GRAPHICS DEFINITIONS
11751164//**************************************************************************
11761165
r29525r29526
12231212   MCFG_SOUND_ROUTE(1, "rspeaker", 0.43)
12241213
12251214   MCFG_SEGAPCM_ADD("pcm", SOUND_CLOCK/4)
1226   MCFG_SOUND_CONFIG(segapcm_interface)
1215   MCFG_SEGAPCM_BANK(BANK_512)
12271216   MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
12281217   MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
12291218MACHINE_CONFIG_END
trunk/src/mame/drivers/segaxbd.c
r29525r29526
15031503
15041504
15051505//**************************************************************************
1506//  SOUND DEFINITIONS
1507//**************************************************************************
1508
1509static const sega_pcm_interface segapcm_interface =
1510{
1511   BANK_512
1512};
1513
1514
1515
1516//**************************************************************************
15171506//  GRAPHICS DEFINITIONS
15181507//**************************************************************************
15191508
r29525r29526
15781567   MCFG_SOUND_ROUTE(1, "rspeaker", 0.43)
15791568
15801569   MCFG_SEGAPCM_ADD("pcm", SOUND_CLOCK/4)
1581   MCFG_SOUND_CONFIG(segapcm_interface)
1570   MCFG_SEGAPCM_BANK(BANK_512)
15821571   MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
15831572   MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
15841573MACHINE_CONFIG_END
r29525r29526
16251614   MCFG_SPEAKER_STANDARD_STEREO("rearleft", "rearright")
16261615
16271616   MCFG_SEGAPCM_ADD("pcm2", SOUND_CLOCK/4)
1628   MCFG_SOUND_CONFIG(segapcm_interface)
1617   MCFG_SEGAPCM_BANK(BANK_512)
16291618   MCFG_SOUND_ROUTE(0, "rearleft", 1.0)
16301619   MCFG_SOUND_ROUTE(1, "rearright", 1.0)
16311620MACHINE_CONFIG_END
trunk/src/emu/sound/segapcm.c
r29525r29526
1919      device_sound_interface(mconfig, *this),
2020      m_ram(NULL),
2121      m_rom(NULL),
22      m_bank(0),
2223      m_bankshift(0),
2324      m_bankmask(0),
2425      m_rgnmask(0),
r29525r29526
3435void segapcm_device::device_start()
3536{
3637   int mask, rom_mask, len;
37   const sega_pcm_interface *intf = (const sega_pcm_interface *)static_config();
3838
3939   m_rom = *region();
4040   m_ram = auto_alloc_array(machine(), UINT8, 0x800);
4141
4242   memset(m_ram, 0xff, 0x800);
4343
44   m_bankshift = (UINT8)(intf->bank);
45   mask = intf->bank >> 16;
46   if(!mask)
47      mask = BANK_MASK7>>16;
44   m_bankshift = (UINT8) m_bank;
45   mask = m_bank >> 16;
46   if (!mask)
47      mask = BANK_MASK7 >> 16;
4848
4949   len = region()->bytes();
5050   m_rgnmask = len - 1;
trunk/src/emu/sound/segapcm.h
r29525r29526
2424#define MCFG_SEGAPCM_REPLACE(_tag, _clock) \
2525   MCFG_DEVICE_REPLACE(_tag, SEGAPCM, _clock)
2626
27#define MCFG_SEGAPCM_BANK(_bank) \
28   segapcm_device::set_bank(*device, _bank);
29
30
2731//**************************************************************************
2832//  TYPE DEFINITIONS
2933//**************************************************************************
3034
31struct sega_pcm_interface
32{
33   int  bank;
34};
35
3635class segapcm_device : public device_t,
3736                  public device_sound_interface
3837{
3938public:
4039   segapcm_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
4140   ~segapcm_device() { }
42
41   
42   // static configuration
43   static void set_bank(device_t &device, int bank) { downcast<segapcm_device &>(device).m_bank = bank; }
44   
45   DECLARE_WRITE8_MEMBER( sega_pcm_w );
46   DECLARE_READ8_MEMBER( sega_pcm_r );
47   
4348protected:
4449   // device-level overrides
4550   virtual void device_start();
r29525r29526
4752   // sound stream update overrides
4853   virtual void sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples);
4954
50public:
51   DECLARE_WRITE8_MEMBER( sega_pcm_w );
52   DECLARE_READ8_MEMBER( sega_pcm_r );
53
5455private:
5556   UINT8* m_ram;
5657   UINT8 m_low[16];
5758   const UINT8* m_rom;
59   int m_bank;
5860   int m_bankshift;
5961   int m_bankmask;
6062   int m_rgnmask;

Previous 199869 Revisions Next


© 1997-2024 The MAME Team