diff options
author | R. Belmont <rb6502@users.noreply.github.com> | 2015-08-28 12:55:32 -0400 |
---|---|---|
committer | R. Belmont <rb6502@users.noreply.github.com> | 2015-08-28 12:55:32 -0400 |
commit | 704594332184de279135d29028df9dae0894acf6 (patch) | |
tree | 62c42babc0f15db36017a93a5191ee776dd39491 | |
parent | 7cec959bf8a6ecb9ae72ed171257050bcc845e36 (diff) | |
parent | 96393f2fc16a76ac70ad39c6c7e6d52aa49dcf0a (diff) |
Merge pull request #265 from superctr/master
C352: Add divider for System 23, change enum format
-rw-r--r-- | src/emu/sound/c352.c | 26 | ||||
-rw-r--r-- | src/emu/sound/c352.h | 11 | ||||
-rw-r--r-- | src/mame/drivers/namcofl.c | 2 | ||||
-rw-r--r-- | src/mame/drivers/namconb1.c | 4 | ||||
-rw-r--r-- | src/mame/drivers/namcond1.c | 2 | ||||
-rw-r--r-- | src/mame/drivers/namcos11.c | 2 | ||||
-rw-r--r-- | src/mame/drivers/namcos12.c | 2 | ||||
-rw-r--r-- | src/mame/drivers/namcos22.c | 4 | ||||
-rw-r--r-- | src/mame/drivers/namcos23.c | 9 |
9 files changed, 23 insertions, 39 deletions
diff --git a/src/emu/sound/c352.c b/src/emu/sound/c352.c index b4172e43aa0..98f8f3a9fed 100644 --- a/src/emu/sound/c352.c +++ b/src/emu/sound/c352.c @@ -13,6 +13,14 @@ Supports 8-bit linear and 8-bit muLaw samples Output: digital, 16 bit, 4 channels Output sample rate is the input clock / (288 * 2). + + superctr: The clock divider appears to be configurable for each system. + Below is a list of the divider values followed by the systems that use it. + + * 228: System 11. + * 288: System 22, Super 22, NB-1/2, ND-1, FL. + * 296: System 23, Super 23. + * 332: System 12. */ #include "emu.h" @@ -468,7 +476,7 @@ void c352_device::write_reg16(unsigned long address, unsigned short val) void c352_device::device_start() { - int i, divider; + int i; double x_max = 32752.0; double y_max = 127.0; double u = 10.0; @@ -476,21 +484,7 @@ void c352_device::device_start() // find our direct access m_direct = &space().direct(); - switch(m_divider) - { - case C352_DIVIDER_228: - divider=228; - break; - case C352_DIVIDER_288: - default: - divider=288; - break; - case C352_DIVIDER_332: - divider=332; - break; - } - - m_sample_rate_base = clock() / divider; + m_sample_rate_base = clock() / m_divider; m_stream = machine().sound().stream_alloc(*this, 0, 4, m_sample_rate_base); diff --git a/src/emu/sound/c352.h b/src/emu/sound/c352.h index 31eceffb366..24a2a1cbe74 100644 --- a/src/emu/sound/c352.h +++ b/src/emu/sound/c352.h @@ -6,17 +6,6 @@ #define __C352_H__ //************************************************************************** -// CONSTANTS -//************************************************************************** - -enum -{ - C352_DIVIDER_228 = 0, - C352_DIVIDER_288 = 1, - C352_DIVIDER_332 = 2 -}; - -//************************************************************************** // INTERFACE CONFIGURATION MACROS //************************************************************************** diff --git a/src/mame/drivers/namcofl.c b/src/mame/drivers/namcofl.c index 2b50acddabd..8bef9d9c7d8 100644 --- a/src/mame/drivers/namcofl.c +++ b/src/mame/drivers/namcofl.c @@ -610,7 +610,7 @@ static MACHINE_CONFIG_START( namcofl, namcofl_state ) MCFG_VIDEO_START_OVERRIDE(namcofl_state,namcofl) MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker") - MCFG_C352_ADD("c352", 48384000/2, C352_DIVIDER_288) + MCFG_C352_ADD("c352", 48384000/2, 288) MCFG_SOUND_ROUTE(0, "rspeaker", 1.00) MCFG_SOUND_ROUTE(1, "lspeaker", 1.00) MCFG_SOUND_ROUTE(2, "rspeaker", 1.00) diff --git a/src/mame/drivers/namconb1.c b/src/mame/drivers/namconb1.c index 76e997aa6a7..867ae4418a5 100644 --- a/src/mame/drivers/namconb1.c +++ b/src/mame/drivers/namconb1.c @@ -1126,7 +1126,7 @@ static MACHINE_CONFIG_START( namconb1, namconb1_state ) MCFG_VIDEO_START_OVERRIDE(namconb1_state,namconb1) MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker") - MCFG_C352_ADD("c352", MASTER_CLOCK/2, C352_DIVIDER_288) + MCFG_C352_ADD("c352", MASTER_CLOCK/2, 288) MCFG_SOUND_ROUTE(0, "rspeaker", 1.00) MCFG_SOUND_ROUTE(1, "lspeaker", 1.00) MCFG_SOUND_ROUTE(2, "rspeaker", 1.00) @@ -1163,7 +1163,7 @@ static MACHINE_CONFIG_START( namconb2, namconb1_state ) MCFG_VIDEO_START_OVERRIDE(namconb1_state,namconb2) MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker") - MCFG_C352_ADD("c352", MASTER_CLOCK/2, C352_DIVIDER_288) + MCFG_C352_ADD("c352", MASTER_CLOCK/2, 288) MCFG_SOUND_ROUTE(0, "rspeaker", 1.00) MCFG_SOUND_ROUTE(1, "lspeaker", 1.00) MCFG_SOUND_ROUTE(2, "rspeaker", 1.00) diff --git a/src/mame/drivers/namcond1.c b/src/mame/drivers/namcond1.c index 974446fae37..5e740e11d4a 100644 --- a/src/mame/drivers/namcond1.c +++ b/src/mame/drivers/namcond1.c @@ -307,7 +307,7 @@ static MACHINE_CONFIG_START( namcond1, namcond1_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker") - MCFG_C352_ADD("c352", XTAL_49_152MHz/2, C352_DIVIDER_288) + MCFG_C352_ADD("c352", XTAL_49_152MHz/2, 288) MCFG_SOUND_ROUTE(0, "rspeaker", 1.00) MCFG_SOUND_ROUTE(1, "lspeaker", 1.00) MCFG_SOUND_ROUTE(2, "rspeaker", 1.00) diff --git a/src/mame/drivers/namcos11.c b/src/mame/drivers/namcos11.c index 4262d33740a..91acf77e76e 100644 --- a/src/mame/drivers/namcos11.c +++ b/src/mame/drivers/namcos11.c @@ -571,7 +571,7 @@ static MACHINE_CONFIG_START( coh110, namcos11_state ) MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker") - MCFG_C352_ADD("c352", 20013200, C352_DIVIDER_228) + MCFG_C352_ADD("c352", 20013200, 228) MCFG_SOUND_ROUTE(0, "rspeaker", 1.00) MCFG_SOUND_ROUTE(1, "lspeaker", 1.00) MCFG_SOUND_ROUTE(2, "rspeaker", 1.00) diff --git a/src/mame/drivers/namcos12.c b/src/mame/drivers/namcos12.c index 40daecf7dae..6e5bf77ab1f 100644 --- a/src/mame/drivers/namcos12.c +++ b/src/mame/drivers/namcos12.c @@ -1622,7 +1622,7 @@ static MACHINE_CONFIG_START( coh700, namcos12_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker") - MCFG_C352_ADD("c352", 29168000, C352_DIVIDER_332) + MCFG_C352_ADD("c352", 29168000, 332) MCFG_SOUND_ROUTE(0, "rspeaker", 1.00) MCFG_SOUND_ROUTE(1, "lspeaker", 1.00) MCFG_SOUND_ROUTE(2, "rspeaker", 1.00) diff --git a/src/mame/drivers/namcos22.c b/src/mame/drivers/namcos22.c index 6c59837bcf7..e1a28cb6272 100644 --- a/src/mame/drivers/namcos22.c +++ b/src/mame/drivers/namcos22.c @@ -3781,7 +3781,7 @@ static MACHINE_CONFIG_START( namcos22, namcos22_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker") - MCFG_C352_ADD("c352", SS22_MASTER_CLOCK/2, C352_DIVIDER_288) + MCFG_C352_ADD("c352", SS22_MASTER_CLOCK/2, 288) MCFG_SOUND_ROUTE(0, "rspeaker", 1.00) MCFG_SOUND_ROUTE(1, "lspeaker", 1.00) MCFG_SOUND_ROUTE(2, "rspeaker", 1.00) @@ -3830,7 +3830,7 @@ static MACHINE_CONFIG_START( namcos22s, namcos22_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker") - MCFG_C352_ADD("c352", SS22_MASTER_CLOCK/2, C352_DIVIDER_288) + MCFG_C352_ADD("c352", SS22_MASTER_CLOCK/2, 288) MCFG_SOUND_ROUTE(0, "rspeaker", 1.00) MCFG_SOUND_ROUTE(1, "lspeaker", 1.00) MCFG_SOUND_ROUTE(2, "rspeaker", 1.00) diff --git a/src/mame/drivers/namcos23.c b/src/mame/drivers/namcos23.c index b4f6f62e3a7..4d83d42a2b0 100644 --- a/src/mame/drivers/namcos23.c +++ b/src/mame/drivers/namcos23.c @@ -1247,7 +1247,8 @@ Notes: #define JVSCLOCK (XTAL_14_7456MHz) #define H8CLOCK (16737350) /* from 2061 */ #define BUSCLOCK (16737350*2) /* 33MHz CPU bus clock / input */ -#define C352CLOCK (25992000) /* measured at 25.992MHz from 2061 pin 9 (System 12 uses a divider of 332) */ +#define C352CLOCK (25992000) /* measured at 25.992MHz from 2061 pin 9 */ +#define C352DIV (296) #define VSYNC1 (59.8824) #define VSYNC2 (59.915) #define HSYNC (16666150) @@ -3320,7 +3321,7 @@ static MACHINE_CONFIG_START( gorgon, namcos23_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker") - MCFG_C352_ADD("c352", C352CLOCK, C352_DIVIDER_332) + MCFG_C352_ADD("c352", C352CLOCK, C352DIV) MCFG_SOUND_ROUTE(0, "rspeaker", 1.00) MCFG_SOUND_ROUTE(1, "lspeaker", 1.00) MCFG_SOUND_ROUTE(2, "rspeaker", 1.00) @@ -3389,7 +3390,7 @@ static MACHINE_CONFIG_START( s23, namcos23_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker") - MCFG_C352_ADD("c352", C352CLOCK, C352_DIVIDER_332) + MCFG_C352_ADD("c352", C352CLOCK, C352DIV) MCFG_SOUND_ROUTE(0, "rspeaker", 1.00) MCFG_SOUND_ROUTE(1, "lspeaker", 1.00) MCFG_SOUND_ROUTE(2, "rspeaker", 1.00) @@ -3469,7 +3470,7 @@ static MACHINE_CONFIG_START( ss23, namcos23_state ) /* sound hardware */ MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker") - MCFG_C352_ADD("c352", C352CLOCK, C352_DIVIDER_332) + MCFG_C352_ADD("c352", C352CLOCK, C352DIV) MCFG_SOUND_ROUTE(0, "rspeaker", 1.00) MCFG_SOUND_ROUTE(1, "lspeaker", 1.00) MCFG_SOUND_ROUTE(2, "rspeaker", 1.00) |