diff options
author | Couriersud <couriersud@users.noreply.github.com> | 2012-05-28 00:43:41 +0000 |
---|---|---|
committer | Couriersud <couriersud@users.noreply.github.com> | 2012-05-28 00:43:41 +0000 |
commit | 23c098ec08adf6132ea1bf377bdc49c3dbacad61 (patch) | |
tree | 924219f29ef0decfa799b5ebefd8d097d59ed3cf /src/mame/drivers/firefox.c | |
parent | 72f5a61378f82163fd0719b307ca13a39aa85990 (diff) |
"Analog" Pokey Update [Couriersud]
- Derived internal resistance calculation from Pokey documentation. This is a 4-bit parallel resistor (High-Z mos "devices") network to ground. The result is a non-linear resistance function.
- Added low-pass filter support and opamp/resistor stages to the pokey driver. This is not as good as complete discrete emulation, but a lot better than the linear approximation we had before.
- Changed a couple of drivers to use the new output volume calculation.
- Added device configuration macros. Made all drivers use them.
Diffstat (limited to 'src/mame/drivers/firefox.c')
-rw-r--r-- | src/mame/drivers/firefox.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/src/mame/drivers/firefox.c b/src/mame/drivers/firefox.c index 7772b8f5376..be47dd7beb8 100644 --- a/src/mame/drivers/firefox.c +++ b/src/mame/drivers/firefox.c @@ -553,10 +553,10 @@ static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, firefox_state ) AM_RANGE(0x0880, 0x089f) AM_MIRROR(0x07e0) AM_DEVREADWRITE_LEGACY("riot",riot6532_r, riot6532_w) AM_RANGE(0x1000, 0x1000) AM_READ(main_to_sound_r) AM_RANGE(0x1800, 0x1800) AM_WRITE(sound_to_main_w) - AM_RANGE(0x2000, 0x200f) AM_DEVREADWRITE("pokey1", pokeyn_device, read, write) - AM_RANGE(0x2800, 0x280f) AM_DEVREADWRITE("pokey2", pokeyn_device, read, write) - AM_RANGE(0x3000, 0x300f) AM_DEVREADWRITE("pokey3", pokeyn_device, read, write) - AM_RANGE(0x3800, 0x380f) AM_DEVREADWRITE("pokey4", pokeyn_device, read, write) + AM_RANGE(0x2000, 0x200f) AM_DEVREADWRITE("pokey1", pokey_device, read, write) + AM_RANGE(0x2800, 0x280f) AM_DEVREADWRITE("pokey2", pokey_device, read, write) + AM_RANGE(0x3000, 0x300f) AM_DEVREADWRITE("pokey3", pokey_device, read, write) + AM_RANGE(0x3800, 0x380f) AM_DEVREADWRITE("pokey4", pokey_device, read, write) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END @@ -730,19 +730,19 @@ static MACHINE_CONFIG_START( firefox, firefox_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker") - MCFG_SOUND_ADD("pokey1", POKEYN, MASTER_XTAL/8) + MCFG_POKEY_ADD("pokey1", MASTER_XTAL/8) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.30) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.30) - MCFG_SOUND_ADD("pokey2", POKEYN, MASTER_XTAL/8) + MCFG_POKEY_ADD("pokey2", MASTER_XTAL/8) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.30) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.30) - MCFG_SOUND_ADD("pokey3", POKEYN, MASTER_XTAL/8) + MCFG_POKEY_ADD("pokey3", MASTER_XTAL/8) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.30) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.30) - MCFG_SOUND_ADD("pokey4", POKEYN, MASTER_XTAL/8) + MCFG_POKEY_ADD("pokey4", MASTER_XTAL/8) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.30) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.30) |