Previous 199869 Revisions Next

r18940 Tuesday 13th November, 2012 at 08:48:09 UTC by Robbbert
ballbomb : added music [Robbbert]
[src/mame/audio]8080bw.c
[src/mame/drivers]8080bw.c
[src/mame/includes]8080bw.h

trunk/src/mame/includes/8080bw.h
r18939r18940
5656   DECLARE_WRITE8_MEMBER(lrescue_sh_port_1_w);
5757   DECLARE_WRITE8_MEMBER(lrescue_sh_port_2_w);
5858   DECLARE_WRITE8_MEMBER(cosmo_sh_port_2_w);
59   DECLARE_WRITE8_MEMBER(ballbomb_01_w);
5960   DECLARE_WRITE8_MEMBER(ballbomb_sh_port_1_w);
6061   DECLARE_WRITE8_MEMBER(ballbomb_sh_port_2_w);
6162   DECLARE_WRITE8_MEMBER(indianbt_sh_port_1_w);
r18939r18940
120121/*----------- defined in audio/8080bw.c -----------*/
121122extern const samples_interface lrescue_samples_interface;
122123
124DISCRETE_SOUND_EXTERN( ballbomb );
123125DISCRETE_SOUND_EXTERN( indianbt );
124126DISCRETE_SOUND_EXTERN( polaris );
125127
trunk/src/mame/drivers/8080bw.c
r18939r18940
15931593
15941594static ADDRESS_MAP_START( ballbomb_io_map, AS_IO, 8, _8080bw_state )
15951595   AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0")
1596   AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1")
1596   AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_WRITE(ballbomb_01_w)
15971597   AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2") AM_DEVWRITE_LEGACY("mb14241", mb14241_shift_count_w)
15981598   AM_RANGE(0x03, 0x03) AM_DEVREAD_LEGACY("mb14241", mb14241_shift_result_r) AM_WRITE(ballbomb_sh_port_1_w)
15991599   AM_RANGE(0x04, 0x04) AM_DEVWRITE_LEGACY("mb14241", mb14241_shift_data_w)
r18939r18940
16281628
16291629   /* sound hardware */
16301630   MCFG_FRAGMENT_ADD(invaders_samples_audio)
1631
1632   MCFG_SOUND_ADD("discrete", DISCRETE, 0)
1633   MCFG_SOUND_CONFIG_DISCRETE(ballbomb)
1634   MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
16311635MACHINE_CONFIG_END
16321636
16331637
trunk/src/mame/audio/8080bw.c
r18939r18940
181181/*                                                     */
182182/*******************************************************/
183183
184/*************************************
185 *
186 *  Discrete Sound
187 * (copied from indianbt)
188 *
189 *************************************/
190
191static const discrete_dac_r1_ladder ballbomb_music_dac =
192   {3, {0, RES_K(47), RES_K(12)}, 0, 0, 0, CAP_U(0.1)};
193
194#define BALLBOMB_MUSIC_CLK      (3993.6*2*2*2)
195
196/* Nodes - Inputs */
197#define BALLBOMB_MUSIC_DATA      NODE_01
198/* Nodes - Sounds */
199#define BALLBOMB_MUSIC         NODE_11
200
201DISCRETE_SOUND_START(ballbomb)
202
203   DISCRETE_INPUT_DATA (BALLBOMB_MUSIC_DATA)
204
205/******************************************************************************
206 *
207 * Music Generator
208 *
209 ******************************************************************************/
210   DISCRETE_NOTE(NODE_20, 1, BALLBOMB_MUSIC_CLK, BALLBOMB_MUSIC_DATA, 255, 5, DISC_CLK_IS_FREQ)
211
212   // Convert count to 7492 output
213   DISCRETE_TRANSFORM2(NODE_21, NODE_20, 2, "01>0+")
214
215   DISCRETE_DAC_R1(NODE_22, NODE_21, DEFAULT_TTL_V_LOGIC_1, &ballbomb_music_dac)
216
217/******************************************************************************
218 *
219 * Final Mixing and Output
220 *
221 ******************************************************************************/
222   DISCRETE_CRFILTER(NODE_90, NODE_22, RES_K(10), CAP_U(0.1))
223
224   DISCRETE_OUTPUT(NODE_90, 21000)
225
226DISCRETE_SOUND_END
227
228WRITE8_MEMBER( _8080bw_state::ballbomb_01_w )
229{
230   discrete_sound_w(m_discrete, space, BALLBOMB_MUSIC_DATA, data|0x80);
231}
232
184233WRITE8_MEMBER(_8080bw_state::ballbomb_sh_port_1_w)
185234{
186235   UINT8 rising_bits = data & ~m_port_1_last_extra;

Previous 199869 Revisions Next


© 1997-2024 The MAME Team