Previous | 199869 Revisions | Next |
r17617 Monday 3rd September, 2012 at 15:00:20 UTC by Miodrag Milanović |
---|
Cleanup and some inheritance fixes (no whatsnew) |
[src/emu] | |
[src/emu/machine] | 6525tpi.c 68681.c 74148.c 74153.c adc083x.c adc1038.c adc1213x.c idectrl.c k053252.c latch8.c mb14241.c mb87078.c pd4990a.c pic8259.c pit8253.c rp5h01.c smc91c9x.c tms6100.c upd4701.c wd17xx.c |
[src/emu/sound] | 2151intf.c 2203intf.c 2413intf.c 2608intf.c 2610intf.c 2612intf.c 262intf.c 3526intf.c 3812intf.c 8950intf.c aica.c astrocde.c ay8910.c beep.c c140.c c6280.c cdda.c cem3394.c digitalk.c dmadac.c es5506.c es5506.h es8712.c flt_rc.c flt_vol.c gaelco.c hc55516.c iremga20.c k005289.c k007232.c k051649.c k053260.c k056800.c mos6560.c msm5205.c msm5232.c multipcm.c n63701x.c namco.c nes_apu.c nile.c okim6258.c okim6376.c qsound.c rf5c400.c rf5c68.c s14001a.c s2636.c saa1099.c scsp.c segapcm.c sid6581.c sn76477.c sn76496.c snkwave.c sp0250.c sp0256.c speaker.c st0016.c t6w28.c tiaintf.c tms3615.c tms36xx.c tms5110.c tms5220.c upd7759.c vlm5030.c vrender0.c wave.c x1_010.c ymf271.c ymf278b.c ymz280b.c zsg2.c |
[src/emu/video] | hd63484.c i8275.c s2636.c saa5050.c tlc34076.c tms9927.c voodoo.c |
[src/mame/audio] | amiga.c beezer.c cps3.c exidy.c exidy440.c flower.c geebee.c gomoku.c gridlee.c hyprolyb.c irem.c leland.c m72.c micro3d.c namco52.c namco54.c phoenix.c pleiads.c polepos.c redbaron.c segag80r.c segasnd.c seibu.c snes_snd.c snk6502.c taitosnd.c tiamc1.c timeplt.c trackfld.c tx1.c warpwarp.c wiping.c |
[src/mame/drivers] | mjkjidai.c ninjaw.c renegade.c warriorb.c |
[src/mame/includes] | tx1.h |
[src/mame/machine] | buggychl.c cd32.c decocass.c gaelco3d.c gaelco3d.h mathbox.c namco06.c namco50.c namco51.c namco53.c namco62.c namcoio.c nmk112.c taitoio.c |
[src/mame/video] | atarirle.c deco16ic.c decocomn.c kan_pand.c konicdev.c taitoic.c vrender0.c |
[src/mess/audio] | channelf.c dave.c gb.c gmaster.c lynx.c mac.c mea8000.c socrates.c special.c svision.c t6721.c upd1771.c vc4000.c wswan.c |
[src/mess/drivers] | pv1000.c |
[src/mess/includes] | apollo.h |
[src/mess/machine] | 990_tap.c apollo.c applefdc.c at45dbxx.c atarifdc.c ay31015.c beta.c ds1315.c e05a03.c er59256.c hd63450.c i8271.c kr2376.c mc68328.c mc6843.c mc6846.c mc6854.c micropolis.c mm58274c.c mos6530.c omti8621.c pc_lpt.c pcf8593.c pf10.c s3c44b0.c s3c44b0.h sst39vfx.c strata.c tf20.c upd7002.c upd71071.c upd765.c |
[src/mess/video] | 733_asr.c 911_vdt.c apollo.c crt.c dl1416.c k1ge.c odyssey2.c saa505x.c vdc8563.c vic4567.c vic6567.c vtvideo.c |
r17616 | r17617 | |
---|---|---|
334 | 334 | state->dac[3] = 255; |
335 | 335 | } |
336 | 336 | |
337 | DEVICE_GET_INFO( micro3d_sound ) | |
338 | { | |
339 | switch (state) | |
340 | { | |
341 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
342 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(noise_state); break; | |
343 | 337 | |
344 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
345 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(micro3d_sound); break; | |
346 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(micro3d_sound); break; | |
347 | ||
348 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
349 | case DEVINFO_STR_NAME: strcpy(info->s, "Microprose Custom"); break; | |
350 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
351 | } | |
352 | } | |
353 | ||
354 | ||
355 | 338 | /*************************************************************************** |
356 | 339 | |
357 | 340 | 8031 port mappings: |
r17616 | r17617 | |
---|---|---|
241 | 241 | } |
242 | 242 | |
243 | 243 | |
244 | DEVICE_GET_INFO( warpwarp_sound ) | |
245 | { | |
246 | switch (state) | |
247 | { | |
248 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
249 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(warpwarp_sound_state); break; | |
250 | 244 | |
251 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
252 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(warpwarp_sound); break; | |
253 | ||
254 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
255 | case DEVINFO_STR_NAME: strcpy(info->s, "Warp Warp Custom"); break; | |
256 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
257 | } | |
258 | } | |
259 | ||
260 | ||
261 | 245 | const device_type WARPWARP = &device_creator<warpwarp_sound_device>; |
262 | 246 | |
263 | 247 | warpwarp_sound_device::warpwarp_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
571 | 571 | register_state(device); |
572 | 572 | } |
573 | 573 | |
574 | DEVICE_GET_INFO( phoenix_sound ) | |
575 | { | |
576 | switch (state) | |
577 | { | |
578 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
579 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(phoenix_sound_state); break; | |
580 | ||
581 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
582 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(phoenix_sound); break; | |
583 | ||
584 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
585 | case DEVINFO_STR_NAME: strcpy(info->s, "Phoenix Custom"); break; | |
586 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
587 | } | |
588 | } | |
589 | ||
590 | ||
591 | 574 | const device_type PHOENIX = &device_creator<phoenix_sound_device>; |
592 | 575 | |
593 | 576 | phoenix_sound_device::phoenix_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
224 | 224 | } |
225 | 225 | |
226 | 226 | |
227 | /*------------------------------------------------- | |
228 | device definition | |
229 | -------------------------------------------------*/ | |
230 | ||
231 | DEVICE_GET_INFO(namco_52xx) | |
232 | { | |
233 | switch (state) | |
234 | { | |
235 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(namco_52xx_state); break; | |
236 | ||
237 | case DEVINFO_PTR_ROM_REGION: info->romregion = ROM_NAME(namco_52xx); break; | |
238 | ||
239 | case DEVINFO_PTR_MACHINE_CONFIG: info->machine_config = MACHINE_CONFIG_NAME(namco_52xx); break; | |
240 | ||
241 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(namco_52xx); break; | |
242 | ||
243 | case DEVINFO_STR_NAME: strcpy(info->s, "Namco 52xx"); break; | |
244 | ||
245 | case DEVINFO_STR_SHORTNAME: strcpy(info->s, "namco52"); break; | |
246 | } | |
247 | } | |
248 | ||
249 | 227 | const device_type NAMCO_52XX = &device_creator<namco_52xx_device>; |
250 | 228 | |
251 | 229 | namco_52xx_device::namco_52xx_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
181 | 181 | } |
182 | 182 | |
183 | 183 | |
184 | DEVICE_GET_INFO( speech_sound ) | |
185 | { | |
186 | switch (state) | |
187 | { | |
188 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
189 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(speech_state); break; | |
190 | ||
191 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
192 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(speech_sound); break; | |
193 | ||
194 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
195 | case DEVINFO_STR_NAME: strcpy(info->s, "Sega Speech Sound Board"); break; | |
196 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
197 | } | |
198 | } | |
199 | ||
200 | 184 | const device_type SEGASPEECH = &device_creator<speech_sound_device>; |
201 | 185 | |
202 | 186 | speech_sound_device::speech_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
900 | 884 | } |
901 | 885 | |
902 | 886 | |
903 | DEVICE_GET_INFO( usb_sound ) | |
904 | { | |
905 | switch (state) | |
906 | { | |
907 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
908 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(usb_state); break; | |
909 | ||
910 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
911 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(usb_sound); break; | |
912 | case DEVINFO_FCT_RESET: info->start = DEVICE_RESET_NAME(usb_sound); break; | |
913 | ||
914 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
915 | case DEVINFO_STR_NAME: strcpy(info->s, "Sega Universal Sound Board"); break; | |
916 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
917 | } | |
918 | } | |
919 | ||
920 | 887 | const device_type SEGAUSB = &device_creator<usb_sound_device>; |
921 | 888 | |
922 | 889 | usb_sound_device::usb_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
313 | 313 | } |
314 | 314 | } |
315 | 315 | |
316 | DEVICE_GET_INFO(tc0140syt) | |
317 | { | |
318 | switch (state) | |
319 | { | |
320 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(tc0140syt_state); break; | |
321 | ||
322 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(tc0140syt); break; | |
323 | ||
324 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(tc0140syt); break; | |
325 | ||
326 | case DEVINFO_STR_NAME: strcpy(info->s, "Taito TC0140SYT"); break; | |
327 | } | |
328 | } | |
329 | ||
330 | 316 | const device_type TC0140SYT = &device_creator<tc0140syt_device>; |
331 | 317 | |
332 | 318 | tc0140syt_device::tc0140syt_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
210 | 210 | } |
211 | 211 | |
212 | 212 | |
213 | DEVICE_GET_INFO( wiping_sound ) | |
214 | { | |
215 | switch (state) | |
216 | { | |
217 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
218 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(wiping_sound_state); break; | |
219 | ||
220 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
221 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(wiping_sound); break; | |
222 | ||
223 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
224 | case DEVINFO_STR_NAME: strcpy(info->s, "Wiping Custom"); break; | |
225 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
226 | } | |
227 | } | |
228 | ||
229 | ||
230 | ||
231 | 213 | /********************************************************************************/ |
232 | 214 | |
233 | 215 | WRITE8_DEVICE_HANDLER( wiping_sound_w ) |
r17616 | r17617 | |
---|---|---|
280 | 280 | } |
281 | 281 | |
282 | 282 | |
283 | DEVICE_GET_INFO( leland_sound ) | |
284 | { | |
285 | switch (state) | |
286 | { | |
287 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
288 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(leland_sound_state); break; | |
289 | ||
290 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
291 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(leland_sound); break; | |
292 | ||
293 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
294 | case DEVINFO_STR_NAME: strcpy(info->s, "Leland DAC"); break; | |
295 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
296 | } | |
297 | } | |
298 | ||
299 | ||
300 | 283 | void leland_dac_update(device_t *device, int dacnum, UINT8 sample) |
301 | 284 | { |
302 | 285 | leland_sound_state *state = get_safe_token(device); |
r17616 | r17617 | |
588 | 571 | } |
589 | 572 | |
590 | 573 | |
591 | DEVICE_GET_INFO( leland_80186_sound ) | |
592 | { | |
593 | switch (state) | |
594 | { | |
595 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
596 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(leland_sound_state); break; | |
597 | ||
598 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
599 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(leland_80186_sound); break; | |
600 | case DEVINFO_FCT_RESET: info->start = DEVICE_RESET_NAME(leland_80186_sound); break; | |
601 | ||
602 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
603 | case DEVINFO_STR_NAME: strcpy(info->s, "Leland 80186 DAC"); break; | |
604 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
605 | } | |
606 | } | |
607 | ||
608 | ||
609 | DEVICE_GET_INFO( redline_80186_sound ) | |
610 | { | |
611 | switch (state) | |
612 | { | |
613 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(leland_sound_state); break; | |
614 | ||
615 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
616 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(redline_80186_sound); break; | |
617 | case DEVINFO_FCT_RESET: info->start = DEVICE_RESET_NAME(leland_80186_sound); break; | |
618 | ||
619 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
620 | case DEVINFO_STR_NAME: strcpy(info->s, "Redline Racer 80186 DAC"); break; | |
621 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
622 | } | |
623 | } | |
624 | ||
625 | ||
626 | 574 | const device_type LELAND = &device_creator<leland_sound_device>; |
627 | 575 | |
628 | 576 | leland_sound_device::leland_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
209 | 209 | } |
210 | 210 | |
211 | 211 | |
212 | DEVICE_GET_INFO( gomoku_sound ) | |
213 | { | |
214 | switch (state) | |
215 | { | |
216 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
217 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(gomoku_sound_state); break; | |
218 | ||
219 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
220 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(gomoku_sound); break; | |
221 | ||
222 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
223 | case DEVINFO_STR_NAME: strcpy(info->s, "Gomoku Custom"); break; | |
224 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
225 | } | |
226 | } | |
227 | ||
228 | ||
229 | 212 | /********************************************************************************/ |
230 | 213 | |
231 | 214 | WRITE8_DEVICE_HANDLER( gomoku_sound1_w ) |
r17616 | r17617 | |
---|---|---|
194 | 194 | state->m_adpcm.reset(); |
195 | 195 | } |
196 | 196 | |
197 | DEVICE_GET_INFO( seibu_adpcm ) | |
198 | { | |
199 | switch (state) | |
200 | { | |
201 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
202 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(seibu_adpcm_state); break; | |
203 | ||
204 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
205 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(seibu_adpcm); break; | |
206 | ||
207 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
208 | case DEVINFO_STR_NAME: strcpy(info->s, "Seibu ADPCM"); break; | |
209 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
210 | } | |
211 | } | |
212 | ||
213 | ||
214 | 197 | // "decrypt" is a bit flowery here, as it's probably just line-swapping to |
215 | 198 | // simplify PCB layout/routing rather than intentional protection, but it |
216 | 199 | // still fits, especially since the Z80s for all these games are truly encrypted. |
r17616 | r17617 | |
---|---|---|
80 | 80 | } |
81 | 81 | |
82 | 82 | |
83 | DEVICE_GET_INFO( gridlee_sound ) | |
84 | { | |
85 | switch (state) | |
86 | { | |
87 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
88 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(gridlee_sound_state); break; | |
89 | ||
90 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
91 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(gridlee_sound); break; | |
92 | ||
93 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
94 | case DEVINFO_STR_NAME: strcpy(info->s, "Gridlee Custom"); break; | |
95 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
96 | } | |
97 | } | |
98 | ||
99 | ||
100 | ||
101 | 83 | WRITE8_DEVICE_HANDLER( gridlee_sound_w ) |
102 | 84 | { |
103 | 85 | gridlee_sound_state *state = get_safe_token(device); |
r17616 | r17617 | |
---|---|---|
330 | 330 | } |
331 | 331 | |
332 | 332 | |
333 | DEVICE_GET_INFO( tiamc1_sound ) | |
334 | { | |
335 | switch (state) | |
336 | { | |
337 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
338 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(tiamc1_sound_state); break; | |
339 | ||
340 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
341 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(tiamc1_sound); break; | |
342 | ||
343 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
344 | case DEVINFO_STR_NAME: strcpy(info->s, "TIA-MC1 Custom"); break; | |
345 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
346 | } | |
347 | } | |
348 | ||
349 | ||
350 | ||
351 | 333 | const device_type TIAMC1 = &device_creator<tiamc1_sound_device>; |
352 | 334 | |
353 | 335 | tiamc1_sound_device::tiamc1_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
27 | 27 | #define SEGA005_555_TIMER_FREQ (1.44 / ((15000 + 2 * 4700) * 1.5e-6)) |
28 | 28 | #define SEGA005_COUNTER_FREQ (100000) /* unknown, just a guess */ |
29 | 29 | |
30 | DEVICE_GET_INFO( sega005_sound ); | |
31 | ||
32 | 30 | class sega005_sound_device : public device_t, |
33 | 31 | public device_sound_interface |
34 | 32 | { |
r17616 | r17617 | |
627 | 625 | } |
628 | 626 | |
629 | 627 | |
630 | DEVICE_GET_INFO( sega005_sound ) | |
631 | { | |
632 | switch (state) | |
633 | { | |
634 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
635 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(sega005_sound); break; | |
636 | ||
637 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
638 | case DEVINFO_STR_NAME: strcpy(info->s, "005 Custom"); break; | |
639 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
640 | } | |
641 | } | |
642 | ||
643 | ||
644 | 628 | static STREAM_UPDATE( sega005_stream_update ) |
645 | 629 | { |
646 | 630 | segag80r_state *state = device->machine().driver_data<segag80r_state>(); |
r17616 | r17617 | |
---|---|---|
238 | 238 | } |
239 | 239 | } |
240 | 240 | |
241 | DEVICE_GET_INFO( flower_sound ) | |
242 | { | |
243 | switch (state) | |
244 | { | |
245 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
246 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(flower_sound_state); break; | |
247 | ||
248 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
249 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(flower_sound); break; | |
250 | case DEVINFO_FCT_RESET: info->start = DEVICE_RESET_NAME(flower_sound); break; | |
251 | ||
252 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
253 | case DEVINFO_STR_NAME: strcpy(info->s, "Flower Custom"); break; | |
254 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
255 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
256 | } | |
257 | } | |
258 | ||
259 | ||
260 | 241 | /********************************************************************************/ |
261 | 242 | |
262 | 243 | #if FLOWER_VERBOSE |
r17616 | r17617 | |
---|---|---|
511 | 511 | } |
512 | 512 | |
513 | 513 | |
514 | DEVICE_GET_INFO( exidy_sound ) | |
515 | { | |
516 | switch (state) | |
517 | { | |
518 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
519 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(exidy_sound_state); break; | |
520 | ||
521 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
522 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(exidy_sound); break; | |
523 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(exidy_sound); break; | |
524 | ||
525 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
526 | case DEVINFO_STR_NAME: strcpy(info->s, "Exidy SFX"); break; | |
527 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
528 | } | |
529 | } | |
530 | ||
531 | ||
532 | 514 | /************************************* |
533 | 515 | * |
534 | 516 | * 6532 interface |
r17616 | r17617 | |
903 | 885 | } |
904 | 886 | |
905 | 887 | |
906 | DEVICE_GET_INFO( venture_sound ) | |
907 | { | |
908 | switch (state) | |
909 | { | |
910 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(exidy_sound_state); break; | |
911 | ||
912 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
913 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(venture_sound); break; | |
914 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(venture_sound); break; | |
915 | ||
916 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
917 | case DEVINFO_STR_NAME: strcpy(info->s, "Exidy SFX+PSG"); break; | |
918 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
919 | } | |
920 | } | |
921 | ||
922 | 888 | const device_type EXIDY_VENTURE = &device_creator<venture_sound_device>; |
923 | 889 | |
924 | 890 | venture_sound_device::venture_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
1186 | 1152 | } |
1187 | 1153 | |
1188 | 1154 | |
1189 | DEVICE_GET_INFO( victory_sound ) | |
1190 | { | |
1191 | switch (state) | |
1192 | { | |
1193 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(exidy_sound_state); break; | |
1194 | ||
1195 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
1196 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(victory_sound); break; | |
1197 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(victory_sound); break; | |
1198 | ||
1199 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
1200 | case DEVINFO_STR_NAME: strcpy(info->s, "Exidy SFX+PSG+Speech"); break; | |
1201 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
1202 | } | |
1203 | } | |
1204 | ||
1205 | ||
1206 | 1155 | const device_type EXIDY_VICTORY = &device_creator<victory_sound_device>; |
1207 | 1156 | |
1208 | 1157 | victory_sound_device::victory_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
117 | 117 | state->m_stream = device->machine().sound().stream_alloc(*device, 0, 2, device->clock() / 384, NULL, cps3_stream_update); |
118 | 118 | } |
119 | 119 | |
120 | DEVICE_GET_INFO( cps3_sound ) | |
121 | { | |
122 | switch (state) | |
123 | { | |
124 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
125 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(cps3_sound_state); break; | |
126 | ||
127 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
128 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(cps3_sound); break; | |
129 | ||
130 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
131 | case DEVINFO_STR_NAME: strcpy(info->s, "CPS3 Custom"); break; | |
132 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
133 | } | |
134 | } | |
135 | ||
136 | ||
137 | 120 | WRITE32_DEVICE_HANDLER( cps3_sound_w ) |
138 | 121 | { |
139 | 122 | cps3_sound_state *state = get_safe_token(device); |
r17616 | r17617 | |
---|---|---|
136 | 136 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50) |
137 | 137 | MACHINE_CONFIG_END |
138 | 138 | |
139 | /***************************************************************************** | |
140 | DEVICE DEFINITION | |
141 | *****************************************************************************/ | |
142 | DEVICE_GET_INFO(hyprolyb_adpcm) | |
143 | { | |
144 | switch (state) | |
145 | { | |
146 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(hyprolyb_adpcm_state); break; | |
147 | ||
148 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(hyprolyb_adpcm); break; | |
149 | ||
150 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(hyprolyb_adpcm); break; | |
151 | ||
152 | case DEVINFO_STR_NAME: strcpy(info->s, "Hyper Olympics Audio"); break; | |
153 | } | |
154 | } | |
155 | ||
156 | 139 | const device_type HYPROLYB_ADPCM = &device_creator<hyprolyb_adpcm_device>; |
157 | 140 | |
158 | 141 | hyprolyb_adpcm_device::hyprolyb_adpcm_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
261 | 261 | DEVICE DEFINITION |
262 | 262 | *****************************************************************************/ |
263 | 263 | |
264 | DEVICE_GET_INFO(timeplt_audio) | |
265 | { | |
266 | switch (state) | |
267 | { | |
268 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(timeplt_audio_state); break; | |
269 | ||
270 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(timeplt_audio); break; | |
271 | ||
272 | case DEVINFO_STR_NAME: strcpy(info->s, "Time Pilot Audio"); break; | |
273 | } | |
274 | } | |
275 | ||
276 | 264 | const device_type TIMEPLT_AUDIO = &device_creator<timeplt_audio_device>; |
277 | 265 | |
278 | 266 | timeplt_audio_device::timeplt_audio_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
278 | 278 | } |
279 | 279 | |
280 | 280 | |
281 | DEVICE_GET_INFO( amiga_sound ) | |
282 | { | |
283 | switch (state) | |
284 | { | |
285 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
286 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(amiga_audio); break; | |
287 | ||
288 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
289 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(amiga_sound); break; | |
290 | ||
291 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
292 | case DEVINFO_STR_NAME: strcpy(info->s, "Amiga Paula"); break; | |
293 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
294 | } | |
295 | } | |
296 | ||
297 | ||
298 | 281 | const device_type AMIGA = &device_creator<amiga_sound_device>; |
299 | 282 | |
300 | 283 | amiga_sound_device::amiga_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
161 | 161 | DEVICE DEFINITION |
162 | 162 | *****************************************************************************/ |
163 | 163 | |
164 | DEVICE_GET_INFO(trackfld_audio) | |
165 | { | |
166 | switch (state) | |
167 | { | |
168 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(trackfld_audio_state); break; | |
169 | ||
170 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(trackfld_audio); break; | |
171 | ||
172 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(trackfld_audio); break; | |
173 | ||
174 | case DEVINFO_STR_NAME: strcpy(info->s, "Track And Field Audio"); break; | |
175 | } | |
176 | } | |
177 | ||
178 | 164 | const device_type TRACKFLD_AUDIO = &device_creator<trackfld_audio_device>; |
179 | 165 | |
180 | 166 | trackfld_audio_device::trackfld_audio_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
226 | 226 | state->m_channel = device->machine().sound().stream_alloc(*device, 0, 1, OUTPUT_RATE, 0, redbaron_sound_update); |
227 | 227 | } |
228 | 228 | |
229 | ||
230 | DEVICE_GET_INFO( redbaron_sound ) | |
231 | { | |
232 | switch (state) | |
233 | { | |
234 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
235 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(redbaron_sound_state); break; | |
236 | ||
237 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
238 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(redbaron_sound);break; | |
239 | ||
240 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
241 | case DEVINFO_STR_NAME: strcpy(info->s, "Red Baron Custom"); break; | |
242 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
243 | } | |
244 | } | |
245 | ||
246 | ||
247 | 229 | const device_type REDBARON = &device_creator<redbaron_sound_device>; |
248 | 230 | |
249 | 231 | redbaron_sound_device::redbaron_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
180 | 180 | } |
181 | 181 | |
182 | 182 | |
183 | /*------------------------------------------------- | |
184 | device definition | |
185 | -------------------------------------------------*/ | |
186 | ||
187 | DEVICE_GET_INFO(namco_54xx) | |
188 | { | |
189 | switch (state) | |
190 | { | |
191 | ||
192 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(namco_54xx_state); break; | |
193 | ||
194 | case DEVINFO_PTR_ROM_REGION: info->romregion = ROM_NAME(namco_54xx); break; | |
195 | ||
196 | case DEVINFO_PTR_MACHINE_CONFIG: info->machine_config = MACHINE_CONFIG_NAME(namco_54xx); break; | |
197 | ||
198 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(namco_54xx); break; | |
199 | ||
200 | case DEVINFO_STR_NAME: strcpy(info->s, "Namco 54xx"); break; | |
201 | ||
202 | case DEVINFO_STR_SHORTNAME: strcpy(info->s, "namco54"); break; | |
203 | } | |
204 | } | |
205 | ||
206 | 183 | const device_type NAMCO_54XX = &device_creator<namco_54xx_device>; |
207 | 184 | |
208 | 185 | namco_54xx_device::namco_54xx_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
665 | 665 | state->m_tone_stream = device->machine().sound().stream_alloc(*device, 0, 1, SAMPLE_RATE, NULL, snk6502_tone_update); |
666 | 666 | } |
667 | 667 | |
668 | DEVICE_GET_INFO( snk6502_sound ) | |
669 | { | |
670 | switch (state) | |
671 | { | |
672 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
673 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(snk6502_sound_state); break; | |
674 | ||
675 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
676 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(snk6502_sound); break; | |
677 | ||
678 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
679 | case DEVINFO_STR_NAME: strcpy(info->s, "snk6502 Custom"); break; | |
680 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
681 | } | |
682 | } | |
683 | ||
684 | 668 | int snk6502_music0_playing(running_machine &machine) |
685 | 669 | { |
686 | 670 | device_t *device = machine.device("snk6502"); |
r17616 | r17617 | |
---|---|---|
989 | 989 | * |
990 | 990 | *************************************/ |
991 | 991 | |
992 | DEVICE_GET_INFO( exidy440_sound ) | |
993 | { | |
994 | switch (state) | |
995 | { | |
996 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
997 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(exidy440_audio_state); break; | |
998 | ||
999 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
1000 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(exidy440_sound); break; | |
1001 | case DEVINFO_FCT_STOP: info->stop = DEVICE_STOP_NAME(exidy440_sound); break; | |
1002 | ||
1003 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
1004 | case DEVINFO_STR_NAME: strcpy(info->s, "Exidy 440 CVSD"); break; | |
1005 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
1006 | } | |
1007 | } | |
1008 | ||
1009 | ||
1010 | 992 | const device_type EXIDY440 = &device_creator<exidy440_sound_device>; |
1011 | 993 | |
1012 | 994 | exidy440_sound_device::exidy440_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
320 | 320 | state->m_step0 = state->m_step1 = state->m_step2 = 0; |
321 | 321 | } |
322 | 322 | |
323 | DEVICE_GET_INFO( tx1_sound ) | |
324 | { | |
325 | switch (state) | |
326 | { | |
327 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
328 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(tx1_sound_state); break; | |
329 | ||
330 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
331 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(tx1_sound); break; | |
332 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(tx1_sound); break; | |
333 | ||
334 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
335 | case DEVINFO_STR_NAME: strcpy(info->s, "TX-1 Custom"); break; | |
336 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
337 | } | |
338 | } | |
339 | ||
340 | ||
341 | 323 | /************************************* |
342 | 324 | * |
343 | 325 | * Buggy Boy |
r17616 | r17617 | |
591 | 573 | state->m_noise_lfsrd = 0; |
592 | 574 | } |
593 | 575 | |
594 | DEVICE_GET_INFO( buggyboy_sound ) | |
595 | { | |
596 | switch (state) | |
597 | { | |
598 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(tx1_sound_state); break; | |
599 | ||
600 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
601 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(buggyboy_sound); break; | |
602 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(buggyboy_sound); break; | |
603 | ||
604 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
605 | case DEVINFO_STR_NAME: strcpy(info->s, "Buggy Boy Custom"); break; | |
606 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
607 | } | |
608 | } | |
609 | ||
610 | ||
611 | 576 | const device_type BUGGYBOY = &device_creator<buggyboy_sound_device>; |
612 | 577 | |
613 | 578 | buggyboy_sound_device::buggyboy_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
614 | : device_t(mconfig, BUGGYBOY, "Buggy Boy Custom", tag, owner, clock), | |
615 | device_sound_interface(mconfig, *this) | |
579 | : tx1_sound_device(mconfig, BUGGYBOY, "Buggy Boy Custom", tag, owner, clock) | |
616 | 580 | { |
617 | m_token = global_alloc_array_clear(UINT8, sizeof(tx1_sound_state)); | |
618 | 581 | } |
619 | 582 | |
620 | 583 | //------------------------------------------------- |
r17616 | r17617 | |
665 | 628 | m_token = global_alloc_array_clear(UINT8, sizeof(tx1_sound_state)); |
666 | 629 | } |
667 | 630 | |
631 | tx1_sound_device::tx1_sound_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock) | |
632 | : device_t(mconfig, type, name, tag, owner, clock), | |
633 | device_sound_interface(mconfig, *this) | |
634 | { | |
635 | m_token = global_alloc_array_clear(UINT8, sizeof(tx1_sound_state)); | |
636 | } | |
668 | 637 | //------------------------------------------------- |
669 | 638 | // device_config_complete - perform any |
670 | 639 | // operations now that the configuration is |
r17616 | r17617 | |
---|---|---|
486 | 486 | MCFG_CPU_PROGRAM_MAP(m62_sound_map) |
487 | 487 | MACHINE_CONFIG_END |
488 | 488 | |
489 | /***************************************************************************** | |
490 | DEVICE DEFINITION | |
491 | *****************************************************************************/ | |
492 | DEVICE_GET_INFO(irem_audio) | |
493 | { | |
494 | switch (state) | |
495 | { | |
496 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(irem_audio_state); break; | |
497 | ||
498 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(irem_audio); break; | |
499 | ||
500 | case DEVINFO_STR_NAME: strcpy(info->s, "Irem Audio"); break; | |
501 | } | |
502 | } | |
503 | ||
504 | 489 | const device_type IREM_AUDIO = &device_creator<irem_audio_device>; |
505 | 490 | |
506 | 491 | irem_audio_device::irem_audio_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
254 | 254 | state->sample_addr = (state->sample_addr + 1) & (state->samples_size - 1); |
255 | 255 | } |
256 | 256 | |
257 | DEVICE_GET_INFO( m72_audio ) | |
258 | { | |
259 | switch (state) | |
260 | { | |
261 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
262 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(m72_audio_state); break; | |
263 | ||
264 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
265 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(m72_audio); break; | |
266 | case DEVINFO_FCT_RESET: info->start = DEVICE_RESET_NAME(m72_audio); break; | |
267 | ||
268 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
269 | case DEVINFO_STR_NAME: strcpy(info->s, "M72 Custom"); break; | |
270 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
271 | } | |
272 | } | |
273 | ||
274 | 257 | const device_type M72 = &device_creator<m72_audio_device>; |
275 | 258 | |
276 | 259 | m72_audio_device::m72_audio_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
479 | 479 | } |
480 | 480 | |
481 | 481 | |
482 | DEVICE_GET_INFO( beezer_sound ) | |
483 | { | |
484 | switch (state) | |
485 | { | |
486 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
487 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(beezer_sound_state); break; | |
488 | ||
489 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
490 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(beezer_sound); break; | |
491 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(beezer_sound); break; | |
492 | ||
493 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
494 | case DEVINFO_STR_NAME: strcpy(info->s, "beezer SFX"); break; | |
495 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
496 | } | |
497 | } | |
498 | ||
499 | 482 | /************************************* |
500 | 483 | * |
501 | 484 | * 6840 timer handlers |
r17616 | r17617 | |
---|---|---|
144 | 144 | state->m_volume_timer = machine.scheduler().timer_alloc(FUNC(volume_decay), state); |
145 | 145 | } |
146 | 146 | |
147 | DEVICE_GET_INFO( geebee_sound ) | |
148 | { | |
149 | switch (state) | |
150 | { | |
151 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(geebee_sound_state); break; | |
152 | ||
153 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
154 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(geebee_sound); break; | |
155 | ||
156 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
157 | case DEVINFO_STR_NAME: strcpy(info->s, "Gee Bee Custom"); break; | |
158 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
159 | } | |
160 | } | |
161 | ||
162 | ||
163 | 147 | const device_type GEEBEE = &device_creator<geebee_sound_device>; |
164 | 148 | |
165 | 149 | geebee_sound_device::geebee_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
1359 | 1359 | spc700_reset(device); |
1360 | 1360 | } |
1361 | 1361 | |
1362 | /*------------------------------------------------- | |
1363 | Device definition | |
1364 | -------------------------------------------------*/ | |
1365 | ||
1366 | DEVICE_GET_INFO(snes_sound) | |
1367 | { | |
1368 | switch (state) | |
1369 | { | |
1370 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(snes_sound_state); break; | |
1371 | ||
1372 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(snes_sound); break; | |
1373 | ||
1374 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(snes_sound); break; | |
1375 | ||
1376 | case DEVINFO_STR_NAME: strcpy(info->s, "SNES Custom DSP (SPC700)"); break; | |
1377 | } | |
1378 | } | |
1379 | ||
1380 | 1362 | const device_type SNES = &device_creator<snes_sound_device>; |
1381 | 1363 | |
1382 | 1364 | snes_sound_device::snes_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
562 | 562 | DEVICE_START_CALL(common_sh_start); |
563 | 563 | } |
564 | 564 | |
565 | DEVICE_GET_INFO( pleiads_sound ) | |
566 | { | |
567 | switch (state) | |
568 | { | |
569 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
570 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(pleiads_sound_state); break; | |
571 | ||
572 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
573 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(pleiads_sound); break; | |
574 | ||
575 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
576 | case DEVINFO_STR_NAME: strcpy(info->s, "Pleiads Custom"); break; | |
577 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
578 | } | |
579 | } | |
580 | ||
581 | ||
582 | 565 | static DEVICE_START( naughtyb_sound ) |
583 | 566 | { |
584 | 567 | pleiads_sound_state *state = get_safe_token(device); |
r17616 | r17617 | |
638 | 621 | DEVICE_START_CALL(common_sh_start); |
639 | 622 | } |
640 | 623 | |
641 | DEVICE_GET_INFO( naughtyb_sound ) | |
642 | { | |
643 | switch (state) | |
644 | { | |
645 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
646 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(pleiads_sound_state); break; | |
647 | ||
648 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
649 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(naughtyb_sound);break; | |
650 | ||
651 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
652 | case DEVINFO_STR_NAME: strcpy(info->s, "Naughty Boy Custom"); break; | |
653 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
654 | } | |
655 | } | |
656 | ||
657 | ||
658 | 624 | static DEVICE_START( popflame_sound ) |
659 | 625 | { |
660 | 626 | pleiads_sound_state *state = get_safe_token(device); |
r17616 | r17617 | |
714 | 680 | DEVICE_START_CALL(common_sh_start); |
715 | 681 | } |
716 | 682 | |
717 | DEVICE_GET_INFO( popflame_sound ) | |
718 | { | |
719 | switch (state) | |
720 | { | |
721 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
722 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(pleiads_sound_state); break; | |
723 | ||
724 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
725 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(popflame_sound); break; | |
726 | ||
727 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
728 | case DEVINFO_STR_NAME: strcpy(info->s, "Pop Flamer Custom"); break; | |
729 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
730 | } | |
731 | } | |
732 | ||
733 | ||
734 | 683 | const device_type PLEIADS = &device_creator<pleiads_sound_device>; |
735 | 684 | |
736 | 685 | pleiads_sound_device::pleiads_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
139 | 139 | filter2_reset(&state->m_filter_engine[loop]); |
140 | 140 | } |
141 | 141 | |
142 | DEVICE_GET_INFO( polepos_sound ) | |
143 | { | |
144 | switch (state) | |
145 | { | |
146 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
147 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(polepos_sound_state); break; | |
148 | ||
149 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
150 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(polepos_sound); break; | |
151 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(polepos_sound); break; | |
152 | ||
153 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
154 | case DEVINFO_STR_NAME: strcpy(info->s, "Pole Position Custom"); break; | |
155 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
156 | } | |
157 | } | |
158 | ||
159 | ||
160 | 142 | /************************************/ |
161 | 143 | /* Write LSB of engine sound */ |
162 | 144 | /************************************/ |
r17616 | r17617 | |
---|---|---|
510 | 510 | tc0640fio->regs[i] = 0; |
511 | 511 | } |
512 | 512 | |
513 | DEVICE_GET_INFO( tc0220ioc ) | |
514 | { | |
515 | switch (state) | |
516 | { | |
517 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
518 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(tc0220ioc_state); break; | |
519 | ||
520 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
521 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(tc0220ioc); break; | |
522 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
523 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(tc0220ioc); break; | |
524 | ||
525 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
526 | case DEVINFO_STR_NAME: strcpy(info->s, "Taito TC0220IOC"); break; | |
527 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Taito I/O"); break; | |
528 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
529 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
530 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
531 | } | |
532 | } | |
533 | ||
534 | DEVICE_GET_INFO( tc0510nio ) | |
535 | { | |
536 | switch (state) | |
537 | { | |
538 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
539 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(tc0510nio_state); break; | |
540 | ||
541 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
542 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(tc0510nio); break; | |
543 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
544 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(tc0510nio); break; | |
545 | ||
546 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
547 | case DEVINFO_STR_NAME: strcpy(info->s, "Taito TC0510NIO"); break; | |
548 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Taito I/O"); break; | |
549 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
550 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
551 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
552 | } | |
553 | } | |
554 | ||
555 | DEVICE_GET_INFO( tc0640fio ) | |
556 | { | |
557 | switch (state) | |
558 | { | |
559 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
560 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(tc0640fio_state); break; | |
561 | ||
562 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
563 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(tc0640fio); break; | |
564 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
565 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(tc0640fio); break; | |
566 | ||
567 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
568 | case DEVINFO_STR_NAME: strcpy(info->s, "Taito TC0640FIO"); break; | |
569 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Taito I/O"); break; | |
570 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
571 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
572 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
573 | } | |
574 | } | |
575 | ||
576 | ||
577 | 513 | const device_type TC0220IOC = &device_creator<tc0220ioc_device>; |
578 | 514 | |
579 | 515 | tc0220ioc_device::tc0220ioc_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
288 | 288 | } |
289 | 289 | |
290 | 290 | |
291 | /*------------------------------------------------- | |
292 | device definition | |
293 | -------------------------------------------------*/ | |
294 | ||
295 | DEVICE_GET_INFO(namco_06xx) | |
296 | { | |
297 | switch (state) | |
298 | { | |
299 | ||
300 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(namco_06xx_state); break; | |
301 | ||
302 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(namco_06xx); break; | |
303 | ||
304 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(namco_06xx); break; | |
305 | ||
306 | case DEVINFO_STR_NAME: strcpy(info->s, "Namco 06xx"); break; | |
307 | ||
308 | case DEVINFO_STR_SHORTNAME: strcpy(info->s, "namco06xx"); break; | |
309 | } | |
310 | } | |
311 | ||
312 | 291 | const device_type NAMCO_06XX = &device_creator<namco_06xx_device>; |
313 | 292 | |
314 | 293 | namco_06xx_device::namco_06xx_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
544 | 544 | namcoio_set_reset_line(device, PULSE_LINE); |
545 | 545 | } |
546 | 546 | |
547 | DEVICE_GET_INFO(namcoio) | |
548 | { | |
549 | switch (state) | |
550 | { | |
551 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(namcoio_state); break; | |
552 | ||
553 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(namcoio); break; | |
554 | ||
555 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(namcoio); break; | |
556 | ||
557 | case DEVINFO_STR_NAME: strcpy(info->s, "Namco 56xx, 58xx & 59xx"); break; | |
558 | } | |
559 | } | |
560 | ||
561 | 547 | const device_type NAMCO56XX = &device_creator<namcoio_device>; |
562 | 548 | |
563 | 549 | namcoio_device::namcoio_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
152 | 152 | } |
153 | 153 | } |
154 | 154 | |
155 | ||
156 | /***************************************************************************** | |
157 | DEVICE DEFINITION | |
158 | *****************************************************************************/ | |
159 | ||
160 | DEVICE_GET_INFO(nmk112) | |
161 | { | |
162 | switch (state) | |
163 | { | |
164 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(nmk112_state); break; | |
165 | ||
166 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(nmk112); break; | |
167 | ||
168 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(nmk112); break; | |
169 | ||
170 | case DEVINFO_STR_NAME: strcpy(info->s, "NMK 112"); break; | |
171 | } | |
172 | } | |
173 | ||
174 | 155 | const device_type NMK112 = &device_creator<nmk112_device>; |
175 | 156 | |
176 | 157 | nmk112_device::nmk112_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
292 | 292 | } |
293 | 293 | |
294 | 294 | |
295 | /*------------------------------------------------- | |
296 | device definition | |
297 | -------------------------------------------------*/ | |
298 | ||
299 | DEVICE_GET_INFO(namco_50xx) | |
300 | { | |
301 | switch (state) | |
302 | { | |
303 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(namco_50xx_state); break; | |
304 | ||
305 | case DEVINFO_PTR_ROM_REGION: info->romregion = ROM_NAME(namco_50xx); break; | |
306 | ||
307 | case DEVINFO_PTR_MACHINE_CONFIG: info->machine_config = MACHINE_CONFIG_NAME(namco_50xx); break; | |
308 | ||
309 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(namco_50xx); break; | |
310 | ||
311 | case DEVINFO_STR_NAME: strcpy(info->s, "Namco 50xx"); break; | |
312 | ||
313 | case DEVINFO_STR_SHORTNAME: strcpy(info->s, "namco50"); break; | |
314 | } | |
315 | } | |
316 | ||
317 | 295 | const device_type NAMCO_50XX = &device_creator<namco_50xx_device>; |
318 | 296 | |
319 | 297 | namco_50xx_device::namco_50xx_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
440 | 440 | } |
441 | 441 | |
442 | 442 | |
443 | /*------------------------------------------------- | |
444 | device definition | |
445 | -------------------------------------------------*/ | |
446 | ||
447 | DEVICE_GET_INFO(namco_51xx) | |
448 | { | |
449 | switch (state) | |
450 | { | |
451 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(namco_51xx_state); break; | |
452 | ||
453 | case DEVINFO_PTR_ROM_REGION: info->romregion = ROM_NAME(namco_51xx); break; | |
454 | ||
455 | case DEVINFO_PTR_MACHINE_CONFIG: info->machine_config = MACHINE_CONFIG_NAME(namco_51xx); break; | |
456 | ||
457 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(namco_51xx); break; | |
458 | ||
459 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(namco_51xx); break; | |
460 | ||
461 | case DEVINFO_STR_NAME: strcpy(info->s, "Namco 51xx"); break; | |
462 | ||
463 | case DEVINFO_STR_SHORTNAME: strcpy(info->s, "namco51"); break; | |
464 | ||
465 | } | |
466 | } | |
467 | ||
468 | 443 | const device_type NAMCO_51XX = &device_creator<namco_51xx_device>; |
469 | 444 | |
470 | 445 | namco_51xx_device::namco_51xx_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
913 | 913 | } |
914 | 914 | } |
915 | 915 | |
916 | /*------------------------------------------------- | |
917 | device definition | |
918 | -------------------------------------------------*/ | |
919 | ||
920 | DEVICE_GET_INFO(akiko) | |
921 | { | |
922 | switch (state) | |
923 | { | |
924 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(akiko_state); break; | |
925 | ||
926 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(akiko); break; | |
927 | ||
928 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(akiko); break; | |
929 | ||
930 | case DEVINFO_FCT_STOP: info->stop = DEVICE_STOP_NAME(akiko); break; | |
931 | ||
932 | case DEVINFO_STR_NAME: strcpy(info->s, "Akiko"); break; | |
933 | } | |
934 | } | |
935 | ||
936 | 916 | const device_type AKIKO = &device_creator<akiko_device>; |
937 | 917 | |
938 | 918 | akiko_device::akiko_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
498 | 498 | osd_sharedmem_free(state->m_os_shmem); |
499 | 499 | } |
500 | 500 | |
501 | DEVICE_GET_INFO( gaelco_serial ) | |
502 | { | |
503 | switch (state) | |
504 | { | |
505 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
506 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(gaelco_serial_state); break; | |
507 | ||
508 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
509 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(gaelco_serial);break; | |
510 | case DEVINFO_FCT_STOP: info->stop = DEVICE_STOP_NAME(gaelco_serial);break; | |
511 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(gaelco_serial);break; | |
512 | ||
513 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
514 | case DEVINFO_STR_NAME: strcpy(info->s, "gaelco_serial"); break; | |
515 | case DEVINFO_STR_FAMILY: strcpy(info->s, "SERIAL"); break; | |
516 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
517 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
518 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
519 | } | |
520 | } | |
521 | ||
522 | ||
523 | 501 | const device_type GAELCO_SERIAL = &device_creator<gaelco_serial_device>; |
524 | 502 | |
525 | 503 | gaelco_serial_device::gaelco_serial_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
88 | 88 | }; |
89 | 89 | |
90 | 90 | extern const device_type GAELCO_SERIAL; |
91 | ||
92 | ||
93 | //DEVICE_GET_INFO( gaelco_serial ); |
r17616 | r17617 | |
---|---|---|
2280 | 2280 | } |
2281 | 2281 | |
2282 | 2282 | |
2283 | /*------------------------------------------------- | |
2284 | device get info callback | |
2285 | -------------------------------------------------*/ | |
2286 | ||
2287 | DEVICE_GET_INFO( decocass_tape ) | |
2288 | { | |
2289 | switch (state) | |
2290 | { | |
2291 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
2292 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(tape_state); break; | |
2293 | ||
2294 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
2295 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(decocass_tape); break; | |
2296 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(decocass_tape);break; | |
2297 | ||
2298 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
2299 | case DEVINFO_STR_NAME: strcpy(info->s, "DECO Cassette Tape"); break; | |
2300 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Tape Controller"); break; | |
2301 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
2302 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
2303 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
2304 | } | |
2305 | } | |
2306 | ||
2307 | ||
2308 | 2283 | const device_type DECOCASS_TAPE = &device_creator<decocass_tape_device>; |
2309 | 2284 | |
2310 | 2285 | decocass_tape_device::decocass_tape_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
235 | 235 | state->m_ddr_c = 0; |
236 | 236 | } |
237 | 237 | |
238 | /***************************************************************************** | |
239 | DEVICE DEFINITION | |
240 | *****************************************************************************/ | |
241 | ||
242 | DEVICE_GET_INFO(buggychl_mcu) | |
243 | { | |
244 | switch (state) | |
245 | { | |
246 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(buggychl_mcu_state); break; | |
247 | ||
248 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(buggychl_mcu); break; | |
249 | ||
250 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(buggychl_mcu); break; | |
251 | ||
252 | case DEVINFO_STR_NAME: strcpy(info->s, "BuggyChl MCU"); break; | |
253 | ||
254 | } | |
255 | } | |
256 | ||
257 | 238 | const device_type BUGGYCHL_MCU = &device_creator<buggychl_mcu_device>; |
258 | 239 | |
259 | 240 | buggychl_mcu_device::buggychl_mcu_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
192 | 192 | } |
193 | 193 | |
194 | 194 | |
195 | /*------------------------------------------------- | |
196 | device definition | |
197 | -------------------------------------------------*/ | |
198 | ||
199 | DEVICE_GET_INFO(namco_53xx) | |
200 | { | |
201 | switch (state) | |
202 | { | |
203 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(namco_53xx_state); break; | |
204 | ||
205 | case DEVINFO_PTR_ROM_REGION: info->romregion = ROM_NAME(namco_53xx); break; | |
206 | ||
207 | case DEVINFO_PTR_MACHINE_CONFIG: info->machine_config = MACHINE_CONFIG_NAME(namco_53xx); break; | |
208 | ||
209 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(namco_53xx); break; | |
210 | ||
211 | case DEVINFO_STR_NAME: strcpy(info->s, "Namco 53xx"); break; | |
212 | ||
213 | case DEVINFO_STR_SHORTNAME: strcpy(info->s, "namco53"); break; | |
214 | } | |
215 | } | |
216 | ||
217 | 195 | const device_type NAMCO_53XX = &device_creator<namco_53xx_device>; |
218 | 196 | |
219 | 197 | namco_53xx_device::namco_53xx_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
85 | 85 | } |
86 | 86 | |
87 | 87 | |
88 | /*------------------------------------------------- | |
89 | device definition | |
90 | -------------------------------------------------*/ | |
91 | ||
92 | DEVICE_GET_INFO(namco_62xx) | |
93 | { | |
94 | switch (state) | |
95 | { | |
96 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(namco_62xx_state); break; | |
97 | ||
98 | case DEVINFO_PTR_ROM_REGION: info->romregion = ROM_NAME(namco_62xx); break; | |
99 | ||
100 | case DEVINFO_PTR_MACHINE_CONFIG: info->machine_config = MACHINE_CONFIG_NAME(namco_62xx); break; | |
101 | ||
102 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(namco_62xx); break; | |
103 | ||
104 | case DEVINFO_STR_NAME: strcpy(info->s, "Namco 62xx"); break; | |
105 | ||
106 | case DEVINFO_STR_SHORTNAME: strcpy(info->s, "namco62"); break; | |
107 | } | |
108 | } | |
109 | ||
110 | 88 | const device_type NAMCO_62XX = &device_creator<namco_62xx_device>; |
111 | 89 | |
112 | 90 | namco_62xx_device::namco_62xx_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
338 | 338 | } |
339 | 339 | |
340 | 340 | |
341 | DEVICE_GET_INFO( mathbox ) | |
342 | { | |
343 | switch (state) | |
344 | { | |
345 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
346 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(mathbox_state); break; | |
347 | ||
348 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
349 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(mathbox);break; | |
350 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
351 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(mathbox);break; | |
352 | ||
353 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
354 | case DEVINFO_STR_NAME: strcpy(info->s, "MATHBOX"); break; | |
355 | case DEVINFO_STR_FAMILY: strcpy(info->s, "I/O devices"); break; | |
356 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
357 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
358 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
359 | } | |
360 | } | |
361 | ||
362 | ||
363 | 341 | const device_type MATHBOX = &device_creator<mathbox_device>; |
364 | 342 | |
365 | 343 | mathbox_device::mathbox_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
178 | 178 | WRITE8_DEVICE_HANDLER( bb_ym2_a_w ); |
179 | 179 | WRITE8_DEVICE_HANDLER( bb_ym2_b_w ); |
180 | 180 | |
181 | class buggyboy_sound_device : public device_t, | |
182 | public device_sound_interface | |
181 | ||
182 | WRITE8_DEVICE_HANDLER( tx1_ay8910_a_w ); | |
183 | WRITE8_DEVICE_HANDLER( tx1_ay8910_b_w ); | |
184 | ||
185 | class tx1_sound_device : public device_t, | |
186 | public device_sound_interface | |
183 | 187 | { |
184 | 188 | public: |
185 | buggyboy_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); | |
186 | ~buggyboy_sound_device() { global_free(m_token); } | |
189 | tx1_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); | |
190 | tx1_sound_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock); | |
191 | ~tx1_sound_device() { global_free(m_token); } | |
187 | 192 | |
188 | 193 | // access to legacy token |
189 | 194 | void *token() const { assert(m_token != NULL); return m_token; } |
r17616 | r17617 | |
200 | 205 | void *m_token; |
201 | 206 | }; |
202 | 207 | |
203 | extern const device_type | |
208 | extern const device_type TX1 | |
204 | 209 | |
205 | ||
206 | WRITE8_DEVICE_HANDLER( tx1_ay8910_a_w ); | |
207 | WRITE8_DEVICE_HANDLER( tx1_ay8910_b_w ); | |
208 | ||
209 | class tx1_sound_device : public device_t, | |
210 | public device_sound_interface | |
210 | class buggyboy_sound_device : public tx1_sound_device | |
211 | 211 | { |
212 | 212 | public: |
213 | tx1_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); | |
214 | ~tx1_sound_device() { global_free(m_token); } | |
215 | ||
216 | // access to legacy token | |
217 | void *token() const { assert(m_token != NULL); return m_token; } | |
213 | buggyboy_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); | |
218 | 214 | protected: |
219 | 215 | // device-level overrides |
220 | 216 | virtual void device_config_complete(); |
r17616 | r17617 | |
225 | 221 | virtual void sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples); |
226 | 222 | private: |
227 | 223 | // internal state |
228 | void *m_token; | |
229 | 224 | }; |
230 | 225 | |
231 | extern const device_type | |
226 | extern const device_type BUGGYBOY; | |
232 | 227 | |
233 | 228 | |
234 | ||
235 | 229 | /*----------- defined in video/tx1.c -----------*/ |
236 | 230 | |
237 | 231 | PALETTE_INIT( tx1 ); |
r17616 | r17617 | |
---|---|---|
5122 | 5122 | tc0180vcu->video_control = 0; |
5123 | 5123 | } |
5124 | 5124 | |
5125 | ||
5126 | /***************************************************************************/ | |
5127 | /* */ | |
5128 | /* DEVICE_GET_INFOs */ | |
5129 | /* */ | |
5130 | /***************************************************************************/ | |
5131 | ||
5132 | DEVICE_GET_INFO( pc080sn ) | |
5133 | { | |
5134 | switch (state) | |
5135 | { | |
5136 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
5137 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(pc080sn_state); break; | |
5138 | ||
5139 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
5140 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(pc080sn); break; | |
5141 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
5142 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
5143 | ||
5144 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
5145 | case DEVINFO_STR_NAME: strcpy(info->s, "Taito PC080SN"); break; | |
5146 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Taito Video IC"); break; | |
5147 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
5148 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
5149 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
5150 | } | |
5151 | } | |
5152 | ||
5153 | DEVICE_GET_INFO( pc090oj ) | |
5154 | { | |
5155 | switch (state) | |
5156 | { | |
5157 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
5158 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(pc090oj_state); break; | |
5159 | ||
5160 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
5161 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(pc090oj); break; | |
5162 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
5163 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(pc090oj); break; | |
5164 | ||
5165 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
5166 | case DEVINFO_STR_NAME: strcpy(info->s, "Taito PC090OJ"); break; | |
5167 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Taito Video IC"); break; | |
5168 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
5169 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
5170 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
5171 | } | |
5172 | } | |
5173 | ||
5174 | DEVICE_GET_INFO( tc0080vco ) | |
5175 | { | |
5176 | switch (state) | |
5177 | { | |
5178 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
5179 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(tc0080vco_state); break; | |
5180 | ||
5181 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
5182 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(tc0080vco); break; | |
5183 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
5184 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
5185 | ||
5186 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
5187 | case DEVINFO_STR_NAME: strcpy(info->s, "Taito TC0080VCO"); break; | |
5188 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Taito Video IC"); break; | |
5189 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
5190 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
5191 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
5192 | } | |
5193 | } | |
5194 | ||
5195 | DEVICE_GET_INFO( tc0110pcr ) | |
5196 | { | |
5197 | switch (state) | |
5198 | { | |
5199 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
5200 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(tc0110pcr_state); break; | |
5201 | ||
5202 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
5203 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(tc0110pcr); break; | |
5204 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
5205 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(tc0110pcr); break; | |
5206 | ||
5207 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
5208 | case DEVINFO_STR_NAME: strcpy(info->s, "Taito TC0110PCR"); break; | |
5209 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Taito Video IC"); break; | |
5210 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
5211 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
5212 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
5213 | } | |
5214 | } | |
5215 | ||
5216 | DEVICE_GET_INFO( tc0100scn ) | |
5217 | { | |
5218 | switch (state) | |
5219 | { | |
5220 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
5221 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(tc0100scn_state); break; | |
5222 | ||
5223 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
5224 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(tc0100scn); break; | |
5225 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
5226 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(tc0100scn); break; | |
5227 | ||
5228 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
5229 | case DEVINFO_STR_NAME: strcpy(info->s, "Taito TC0100SCN"); break; | |
5230 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Taito Video IC"); break; | |
5231 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
5232 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
5233 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
5234 | } | |
5235 | } | |
5236 | ||
5237 | DEVICE_GET_INFO( tc0280grd ) | |
5238 | { | |
5239 | switch (state) | |
5240 | { | |
5241 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
5242 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(tc0280grd_state); break; | |
5243 | ||
5244 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
5245 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(tc0280grd); break; | |
5246 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
5247 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(tc0280grd); break; | |
5248 | ||
5249 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
5250 | case DEVINFO_STR_NAME: strcpy(info->s, "Taito TC0280GRD & TC0430GRW"); break; | |
5251 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Taito Video IC"); break; | |
5252 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
5253 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
5254 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
5255 | } | |
5256 | } | |
5257 | ||
5258 | DEVICE_GET_INFO( tc0360pri ) | |
5259 | { | |
5260 | switch (state) | |
5261 | { | |
5262 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
5263 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(tc0360pri_state); break; | |
5264 | ||
5265 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
5266 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(tc0360pri); break; | |
5267 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
5268 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(tc0360pri); break; | |
5269 | ||
5270 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
5271 | case DEVINFO_STR_NAME: strcpy(info->s, "Taito TC0360PRI"); break; | |
5272 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Taito Video IC"); break; | |
5273 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
5274 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
5275 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
5276 | } | |
5277 | } | |
5278 | ||
5279 | DEVICE_GET_INFO( tc0480scp ) | |
5280 | { | |
5281 | switch (state) | |
5282 | { | |
5283 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
5284 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(tc0480scp_state); break; | |
5285 | ||
5286 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
5287 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(tc0480scp); break; | |
5288 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
5289 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(tc0480scp); break; | |
5290 | ||
5291 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
5292 | case DEVINFO_STR_NAME: strcpy(info->s, "Taito TC0480SCP"); break; | |
5293 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Taito Video IC"); break; | |
5294 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
5295 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
5296 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
5297 | } | |
5298 | } | |
5299 | ||
5300 | DEVICE_GET_INFO( tc0150rod ) | |
5301 | { | |
5302 | switch (state) | |
5303 | { | |
5304 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
5305 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(tc0150rod_state); break; | |
5306 | ||
5307 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
5308 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(tc0150rod); break; | |
5309 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
5310 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
5311 | ||
5312 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
5313 | case DEVINFO_STR_NAME: strcpy(info->s, "Taito TC0150ROD"); break; | |
5314 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Taito Video IC"); break; | |
5315 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
5316 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
5317 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
5318 | } | |
5319 | } | |
5320 | ||
5321 | DEVICE_GET_INFO( tc0180vcu ) | |
5322 | { | |
5323 | switch (state) | |
5324 | { | |
5325 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
5326 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(tc0180vcu_state); break; | |
5327 | ||
5328 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
5329 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(tc0180vcu); break; | |
5330 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
5331 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(tc0180vcu); break; | |
5332 | ||
5333 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
5334 | case DEVINFO_STR_NAME: strcpy(info->s, "Taito TC0180VCU"); break; | |
5335 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Taito Video IC"); break; | |
5336 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
5337 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
5338 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
5339 | } | |
5340 | } | |
5341 | ||
5342 | ||
5343 | 5125 | const device_type PC080SN = &device_creator<pc080sn_device>; |
5344 | 5126 | |
5345 | 5127 | pc080sn_device::pc080sn_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
371 | 371 | } |
372 | 372 | |
373 | 373 | |
374 | DEVICE_GET_INFO( atarirle ) | |
375 | { | |
376 | switch (state) | |
377 | { | |
378 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
379 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(atarirle_data); break; | |
380 | ||
381 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
382 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(atarirle); break; | |
383 | ||
384 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
385 | case DEVINFO_STR_NAME: strcpy(info->s, "Atari RLE"); break; | |
386 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Atari RLE Video IC"); break; | |
387 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
388 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
389 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
390 | } | |
391 | } | |
392 | ||
393 | 374 | const device_type ATARIRLE = &device_creator<atarirle_device>; |
394 | 375 | |
395 | 376 | atarirle_device::atarirle_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
988 | 988 | } |
989 | 989 | |
990 | 990 | |
991 | DEVICE_GET_INFO( deco16ic ) | |
992 | { | |
993 | switch (state) | |
994 | { | |
995 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
996 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(deco16ic_state); break; | |
997 | ||
998 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
999 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(deco16ic); break; | |
1000 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
1001 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(deco16ic); break; | |
1002 | ||
1003 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
1004 | case DEVINFO_STR_NAME: strcpy(info->s, "Data East IC 55 / 56 / 74 / 141"); break; | |
1005 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Data East Video IC"); break; | |
1006 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
1007 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
1008 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
1009 | } | |
1010 | } | |
1011 | ||
1012 | ||
1013 | 991 | const device_type DECO16IC = &device_creator<deco16ic_device>; |
1014 | 992 | |
1015 | 993 | deco16ic_device::deco16ic_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
140 | 140 | } |
141 | 141 | |
142 | 142 | |
143 | DEVICE_GET_INFO( decocomn ) | |
144 | { | |
145 | switch (state) | |
146 | { | |
147 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
148 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(decocomn_state); break; | |
149 | ||
150 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
151 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(decocomn); break; | |
152 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
153 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(decocomn); break; | |
154 | ||
155 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
156 | case DEVINFO_STR_NAME: strcpy(info->s, "Data East Common Video Functions"); break; | |
157 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Data East Video IC"); break; | |
158 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
159 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
160 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
161 | } | |
162 | } | |
163 | ||
164 | ||
165 | 143 | const device_type DECOCOMN = &device_creator<decocomn_device>; |
166 | 144 | |
167 | 145 | decocomn_device::decocomn_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
601 | 601 | vr0->LastPalUpdate = 0xffffffff; |
602 | 602 | } |
603 | 603 | |
604 | DEVICE_GET_INFO(vr0video) | |
605 | { | |
606 | switch (state) | |
607 | { | |
608 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(vr0video_state); break; | |
609 | ||
610 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(vr0video); break; | |
611 | ||
612 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(vr0video); break; | |
613 | ||
614 | case DEVINFO_STR_NAME: strcpy(info->s, "VRender0"); break; | |
615 | } | |
616 | } | |
617 | 604 | const device_type VIDEO_VRENDER0 = &device_creator<vr0video_device>; |
618 | 605 | |
619 | 606 | vr0video_device::vr0video_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
325 | 325 | pandora->clear_bitmap = 1; |
326 | 326 | } |
327 | 327 | |
328 | DEVICE_GET_INFO(kaneko_pandora) | |
329 | { | |
330 | switch (state) | |
331 | { | |
332 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(kaneko_pandora_state); break; | |
333 | ||
334 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(kaneko_pandora); break; | |
335 | ||
336 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(kaneko_pandora); break; | |
337 | ||
338 | case DEVINFO_STR_NAME: strcpy(info->s, "Kaneko Pandora - PX79C480FP-3"); break; | |
339 | } | |
340 | } | |
341 | ||
342 | 328 | const device_type KANEKO_PANDORA = &device_creator<kaneko_pandora_device>; |
343 | 329 | |
344 | 330 | kaneko_pandora_device::kaneko_pandora_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
10274 | 10274 | return(k053244->regs[offset * 2] << 8 | k053244->regs[offset * 2 + 1]); |
10275 | 10275 | } |
10276 | 10276 | |
10277 | ||
10278 | ||
10279 | /***************************************************************************/ | |
10280 | /* */ | |
10281 | /* DEVICE_GET_INFOs */ | |
10282 | /* */ | |
10283 | /***************************************************************************/ | |
10284 | ||
10285 | ||
10286 | DEVICE_GET_INFO( k007121 ) | |
10287 | { | |
10288 | switch (state) | |
10289 | { | |
10290 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
10291 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(k007121_state); break; | |
10292 | ||
10293 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
10294 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(k007121); break; | |
10295 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
10296 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(k007121); break; | |
10297 | ||
10298 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
10299 | case DEVINFO_STR_NAME: strcpy(info->s, "Konami 007121"); break; | |
10300 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Konami Video IC"); break; | |
10301 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
10302 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
10303 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
10304 | } | |
10305 | } | |
10306 | ||
10307 | ||
10308 | DEVICE_GET_INFO( k007342 ) | |
10309 | { | |
10310 | switch (state) | |
10311 | { | |
10312 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
10313 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(k007342_state); break; | |
10314 | ||
10315 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
10316 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(k007342); break; | |
10317 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
10318 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(k007342); break; | |
10319 | ||
10320 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
10321 | case DEVINFO_STR_NAME: strcpy(info->s, "Konami 007342"); break; | |
10322 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Konami Video IC"); break; | |
10323 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
10324 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
10325 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
10326 | } | |
10327 | } | |
10328 | ||
10329 | ||
10330 | DEVICE_GET_INFO( k007420 ) | |
10331 | { | |
10332 | switch (state) | |
10333 | { | |
10334 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
10335 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(k007420_state); break; | |
10336 | ||
10337 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
10338 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(k007420); break; | |
10339 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
10340 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(k007420); break; | |
10341 | ||
10342 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
10343 | case DEVINFO_STR_NAME: strcpy(info->s, "Konami 007420"); break; | |
10344 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Konami Video IC"); break; | |
10345 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
10346 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
10347 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
10348 | } | |
10349 | } | |
10350 | ||
10351 | ||
10352 | DEVICE_GET_INFO( k052109 ) | |
10353 | { | |
10354 | switch (state) | |
10355 | { | |
10356 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
10357 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(k052109_state); break; | |
10358 | ||
10359 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
10360 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(k052109); break; | |
10361 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
10362 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(k052109); break; | |
10363 | ||
10364 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
10365 | case DEVINFO_STR_NAME: strcpy(info->s, "Konami 052109"); break; | |
10366 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Konami Video IC"); break; | |
10367 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
10368 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
10369 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
10370 | } | |
10371 | } | |
10372 | ||
10373 | DEVICE_GET_INFO( k051960 ) | |
10374 | { | |
10375 | switch (state) | |
10376 | { | |
10377 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
10378 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(k051960_state); break; | |
10379 | ||
10380 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
10381 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(k051960); break; | |
10382 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
10383 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(k051960); break; | |
10384 | ||
10385 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
10386 | case DEVINFO_STR_NAME: strcpy(info->s, "Konami 051960"); break; | |
10387 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Konami Video IC"); break; | |
10388 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
10389 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
10390 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
10391 | } | |
10392 | } | |
10393 | ||
10394 | DEVICE_GET_INFO( k05324x ) | |
10395 | { | |
10396 | switch (state) | |
10397 | { | |
10398 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
10399 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(k05324x_state); break; | |
10400 | ||
10401 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
10402 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(k05324x); break; | |
10403 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
10404 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(k05324x); break; | |
10405 | ||
10406 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
10407 | case DEVINFO_STR_NAME: strcpy(info->s, "Konami 053244 & 053245"); break; | |
10408 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Konami Video IC"); break; | |
10409 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
10410 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
10411 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
10412 | } | |
10413 | } | |
10414 | ||
10415 | DEVICE_GET_INFO( k053247 ) | |
10416 | { | |
10417 | switch (state) | |
10418 | { | |
10419 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
10420 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(k053247_state); break; | |
10421 | ||
10422 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
10423 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(k053247); break; | |
10424 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
10425 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(k053247); break; | |
10426 | ||
10427 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
10428 | case DEVINFO_STR_NAME: strcpy(info->s, "Konami 053246 & 053247"); break; | |
10429 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Konami Video IC"); break; | |
10430 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
10431 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
10432 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
10433 | } | |
10434 | } | |
10435 | ||
10436 | DEVICE_GET_INFO( k055673 ) | |
10437 | { | |
10438 | switch (state) | |
10439 | { | |
10440 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
10441 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(k053247_state); break; | |
10442 | ||
10443 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
10444 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(k055673); break; | |
10445 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
10446 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(k053247); break; | |
10447 | ||
10448 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
10449 | case DEVINFO_STR_NAME: strcpy(info->s, "Konami 055673"); break; | |
10450 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Konami Video IC"); break; | |
10451 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
10452 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
10453 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
10454 | } | |
10455 | } | |
10456 | ||
10457 | DEVICE_GET_INFO( k051316 ) | |
10458 | { | |
10459 | switch (state) | |
10460 | { | |
10461 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
10462 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(k051316_state); break; | |
10463 | ||
10464 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
10465 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(k051316); break; | |
10466 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
10467 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(k051316); break; | |
10468 | ||
10469 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
10470 | case DEVINFO_STR_NAME: strcpy(info->s, "Konami 051316"); break; | |
10471 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Konami Video IC"); break; | |
10472 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
10473 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
10474 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
10475 | } | |
10476 | } | |
10477 | ||
10478 | DEVICE_GET_INFO( k053936 ) | |
10479 | { | |
10480 | switch (state) | |
10481 | { | |
10482 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
10483 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(k053936_state); break; | |
10484 | ||
10485 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
10486 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(k053936); break; | |
10487 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
10488 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(k053936); break; | |
10489 | ||
10490 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
10491 | case DEVINFO_STR_NAME: strcpy(info->s, "Konami 053936"); break; | |
10492 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Konami Video IC"); break; | |
10493 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
10494 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
10495 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
10496 | } | |
10497 | } | |
10498 | ||
10499 | DEVICE_GET_INFO( k053251 ) | |
10500 | { | |
10501 | switch (state) | |
10502 | { | |
10503 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
10504 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(k053251_state); break; | |
10505 | ||
10506 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
10507 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(k053251); break; | |
10508 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
10509 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(k053251); break; | |
10510 | ||
10511 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
10512 | case DEVINFO_STR_NAME: strcpy(info->s, "Konami 053251"); break; | |
10513 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Konami Video IC"); break; | |
10514 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
10515 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
10516 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
10517 | } | |
10518 | } | |
10519 | ||
10520 | DEVICE_GET_INFO( k054000 ) | |
10521 | { | |
10522 | switch (state) | |
10523 | { | |
10524 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
10525 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(k054000_state); break; | |
10526 | ||
10527 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
10528 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(k054000); break; | |
10529 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
10530 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(k054000); break; | |
10531 | ||
10532 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
10533 | case DEVINFO_STR_NAME: strcpy(info->s, "Konami 054000"); break; | |
10534 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Konami Video IC"); break; | |
10535 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
10536 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
10537 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
10538 | } | |
10539 | } | |
10540 | ||
10541 | DEVICE_GET_INFO( k051733 ) | |
10542 | { | |
10543 | switch (state) | |
10544 | { | |
10545 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
10546 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(k051733_state); break; | |
10547 | ||
10548 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
10549 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(k051733); break; | |
10550 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
10551 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(k051733); break; | |
10552 | ||
10553 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
10554 | case DEVINFO_STR_NAME: strcpy(info->s, "Konami 051733"); break; | |
10555 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Konami Video IC"); break; | |
10556 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
10557 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
10558 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
10559 | } | |
10560 | } | |
10561 | ||
10562 | DEVICE_GET_INFO( k056832 ) | |
10563 | { | |
10564 | switch (state) | |
10565 | { | |
10566 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
10567 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(k056832_state); break; | |
10568 | ||
10569 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
10570 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(k056832); break; | |
10571 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
10572 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
10573 | ||
10574 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
10575 | case DEVINFO_STR_NAME: strcpy(info->s, "Konami 056832"); break; | |
10576 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Konami Video IC"); break; | |
10577 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
10578 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
10579 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
10580 | } | |
10581 | } | |
10582 | ||
10583 | DEVICE_GET_INFO( k055555 ) | |
10584 | { | |
10585 | switch (state) | |
10586 | { | |
10587 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
10588 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(k055555_state); break; | |
10589 | ||
10590 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
10591 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(k055555); break; | |
10592 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
10593 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(k055555); break; | |
10594 | ||
10595 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
10596 | case DEVINFO_STR_NAME: strcpy(info->s, "Konami 055555"); break; | |
10597 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Konami Video IC"); break; | |
10598 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
10599 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
10600 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
10601 | } | |
10602 | } | |
10603 | ||
10604 | DEVICE_GET_INFO( k054338 ) | |
10605 | { | |
10606 | switch (state) | |
10607 | { | |
10608 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
10609 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(k054338_state); break; | |
10610 | ||
10611 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
10612 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(k054338); break; | |
10613 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
10614 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(k054338); break; | |
10615 | ||
10616 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
10617 | case DEVINFO_STR_NAME: strcpy(info->s, "Konami 054338"); break; | |
10618 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Konami Video IC"); break; | |
10619 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
10620 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
10621 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
10622 | } | |
10623 | } | |
10624 | ||
10625 | DEVICE_GET_INFO( k001006 ) | |
10626 | { | |
10627 | switch (state) | |
10628 | { | |
10629 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
10630 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(k001006_state); break; | |
10631 | ||
10632 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
10633 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(k001006); break; | |
10634 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
10635 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(k001006); break; | |
10636 | ||
10637 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
10638 | case DEVINFO_STR_NAME: strcpy(info->s, "Konami 001006"); break; | |
10639 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Konami Video IC"); break; | |
10640 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
10641 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
10642 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
10643 | } | |
10644 | } | |
10645 | ||
10646 | ||
10647 | DEVICE_GET_INFO( k001005 ) | |
10648 | { | |
10649 | switch (state) | |
10650 | { | |
10651 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
10652 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(k001005_state); break; | |
10653 | ||
10654 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
10655 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(k001005); break; | |
10656 | case DEVINFO_FCT_STOP: info->stop = DEVICE_STOP_NAME(k001005); break; | |
10657 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(k001005); break; | |
10658 | ||
10659 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
10660 | case DEVINFO_STR_NAME: strcpy(info->s, "Konami 001005"); break; | |
10661 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Konami Video IC"); break; | |
10662 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
10663 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
10664 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
10665 | } | |
10666 | } | |
10667 | ||
10668 | ||
10669 | DEVICE_GET_INFO( k001604 ) | |
10670 | { | |
10671 | switch (state) | |
10672 | { | |
10673 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
10674 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(k001604_state); break; | |
10675 | ||
10676 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
10677 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(k001604); break; | |
10678 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
10679 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(k001604); break; | |
10680 | ||
10681 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
10682 | case DEVINFO_STR_NAME: strcpy(info->s, "Konami 001604"); break; | |
10683 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Konami Video IC"); break; | |
10684 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
10685 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
10686 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
10687 | } | |
10688 | } | |
10689 | ||
10690 | ||
10691 | DEVICE_GET_INFO( k037122 ) | |
10692 | { | |
10693 | switch (state) | |
10694 | { | |
10695 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
10696 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(k037122_state); break; | |
10697 | ||
10698 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
10699 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(k037122); break; | |
10700 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
10701 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(k037122); break; | |
10702 | ||
10703 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
10704 | case DEVINFO_STR_NAME: strcpy(info->s, "Konami 0371222"); break; | |
10705 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Konami Video IC"); break; | |
10706 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
10707 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
10708 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
10709 | } | |
10710 | } | |
10711 | ||
10712 | ||
10713 | 10277 | const device_type K007121 = &device_creator<k007121_device>; |
10714 | 10278 | |
10715 | 10279 | k007121_device::k007121_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
101 | 101 | state->m_adpcm.reset(); |
102 | 102 | } |
103 | 103 | |
104 | DEVICE_GET_INFO( mjkjidai_adpcm ) | |
105 | { | |
106 | switch (state) | |
107 | { | |
108 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(mjkjidai_adpcm_state); break; | |
109 | ||
110 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
111 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(mjkjidai_adpcm);break; | |
112 | ||
113 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
114 | case DEVINFO_STR_NAME: strcpy(info->s, "Custom ADPCM"); break; | |
115 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
116 | } | |
117 | } | |
118 | ||
119 | 104 | const device_type MJKJIDAI = &device_creator<mjkjidai_adpcm_device>; |
120 | 105 | |
121 | 106 | mjkjidai_adpcm_device::mjkjidai_adpcm_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
191 | 191 | state->m_adpcm.reset(); |
192 | 192 | } |
193 | 193 | |
194 | DEVICE_GET_INFO( renegade_adpcm ) | |
195 | { | |
196 | switch (state) | |
197 | { | |
198 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
199 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(renegade_adpcm_state); break; | |
200 | ||
201 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
202 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(renegade_adpcm);break; | |
203 | ||
204 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
205 | case DEVINFO_STR_NAME: strcpy(info->s, "Renegade Custom ADPCM"); break; | |
206 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
207 | } | |
208 | } | |
209 | ||
210 | 194 | const device_type RENEGADE_ADPCM = &device_creator<renegade_adpcm_device>; |
211 | 195 | |
212 | 196 | renegade_adpcm_device::renegade_adpcm_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
435 | 435 | irqhandler |
436 | 436 | }; |
437 | 437 | |
438 | ||
439 | /************************************************************** | |
440 | SUBWOOFEr(SOUND) | |
441 | **************************************************************/ | |
442 | ||
443 | #if 0 | |
444 | static DEVICE_START( subwoofer ) | |
445 | { | |
446 | /* Adjust the lowpass filter of the first three YM2610 channels */ | |
447 | ||
448 | mixer_set_lowpass_frequency(0, 20); | |
449 | mixer_set_lowpass_frequency(1, 20); | |
450 | mixer_set_lowpass_frequency(2, 20); | |
451 | } | |
452 | ||
453 | static DEVICE_GET_INFO( subwoofer ) | |
454 | { | |
455 | switch (state) | |
456 | { | |
457 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
458 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(subwoofer); break; | |
459 | ||
460 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
461 | case DEVINFO_STR_NAME: strcpy(info->s, "Subwoofer"); break; | |
462 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
463 | } | |
464 | } | |
465 | #endif | |
466 | ||
467 | ||
468 | 438 | /*********************************************************** |
469 | 439 | MACHINE DRIVERS |
470 | 440 | ***********************************************************/ |
r17616 | r17617 | |
---|---|---|
673 | 673 | return 0; |
674 | 674 | } |
675 | 675 | |
676 | static DEVICE_GET_INFO( subwoofer ) | |
677 | { | |
678 | switch (state) | |
679 | { | |
680 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
681 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(subwoofer); break; | |
682 | ||
683 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
684 | case DEVINFO_STR_NAME: strcpy(info->s, "Subwoofer"); break; | |
685 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
686 | } | |
687 | } | |
688 | ||
689 | 676 | class subwoofer_device : public device_t, |
690 | 677 | public device_sound_interface |
691 | 678 | { |
r17616 | r17617 | |
---|---|---|
1 | /*************************************************************************** | |
2 | ||
3 | devlegcy.c | |
4 | ||
5 | Legacy device helpers. | |
6 | ||
7 | **************************************************************************** | |
8 | ||
9 | Copyright Aaron Giles | |
10 | All rights reserved. | |
11 | ||
12 | Redistribution and use in source and binary forms, with or without | |
13 | modification, are permitted provided that the following conditions are | |
14 | met: | |
15 | ||
16 | * Redistributions of source code must retain the above copyright | |
17 | notice, this list of conditions and the following disclaimer. | |
18 | * Redistributions in binary form must reproduce the above copyright | |
19 | notice, this list of conditions and the following disclaimer in | |
20 | the documentation and/or other materials provided with the | |
21 | distribution. | |
22 | * Neither the name 'MAME' nor the names of its contributors may be | |
23 | used to endorse or promote products derived from this software | |
24 | without specific prior written permission. | |
25 | ||
26 | THIS SOFTWARE IS PROVIDED BY AARON GILES ''AS IS'' AND ANY EXPRESS OR | |
27 | IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED | |
28 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE | |
29 | DISCLAIMED. IN NO EVENT SHALL AARON GILES BE LIABLE FOR ANY DIRECT, | |
30 | INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES | |
31 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR | |
32 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | |
33 | HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, | |
34 | STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING | |
35 | IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | |
36 | POSSIBILITY OF SUCH DAMAGE. | |
37 | ||
38 | ***************************************************************************/ | |
39 | ||
40 | #include "emu.h" | |
41 | #include "devlegcy.h" | |
42 | ||
43 | ||
44 | //************************************************************************** | |
45 | // LEGACY DEVICE CONFIGURATION | |
46 | //************************************************************************** | |
47 | ||
48 | //------------------------------------------------- | |
49 | // legacy_device_base - constructor | |
50 | //------------------------------------------------- | |
51 | ||
52 | legacy_device_base::legacy_device_base(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, UINT32 clock, device_get_config_func get_config) | |
53 | : device_t(mconfig, type, "Legacy Device", tag, owner, clock), | |
54 | m_get_config_func(get_config), | |
55 | m_token(NULL) | |
56 | { | |
57 | // set the proper name | |
58 | m_name = get_legacy_string(DEVINFO_STR_NAME); | |
59 | m_shortname = get_legacy_string(DEVINFO_STR_SHORTNAME); | |
60 | m_searchpath = m_shortname; | |
61 | ||
62 | // create the token | |
63 | int tokenbytes = get_legacy_int(DEVINFO_INT_TOKEN_BYTES); | |
64 | if (tokenbytes != 0) | |
65 | m_token = global_alloc_array_clear(UINT8, tokenbytes); | |
66 | } | |
67 | ||
68 | ||
69 | //------------------------------------------------- | |
70 | // ~legacy_device_base - destructor | |
71 | //------------------------------------------------- | |
72 | ||
73 | legacy_device_base::~legacy_device_base() | |
74 | { | |
75 | global_free(m_token); | |
76 | } | |
77 | ||
78 | ||
79 | //------------------------------------------------- | |
80 | // get_legacy_int - return a legacy | |
81 | // configuration parameter as an integer | |
82 | //------------------------------------------------- | |
83 | ||
84 | INT64 legacy_device_base::get_legacy_int(UINT32 state) const | |
85 | { | |
86 | deviceinfo info = { 0 }; | |
87 | (*m_get_config_func)(this, state, &info); | |
88 | return info.i; | |
89 | } | |
90 | ||
91 | ||
92 | //------------------------------------------------- | |
93 | // get_legacy_ptr - return a legacy | |
94 | // configuration parameter as a pointer | |
95 | //------------------------------------------------- | |
96 | ||
97 | void *legacy_device_base::get_legacy_ptr(UINT32 state) const | |
98 | { | |
99 | deviceinfo info = { 0 }; | |
100 | (*m_get_config_func)(this, state, &info); | |
101 | return info.p; | |
102 | } | |
103 | ||
104 | ||
105 | //------------------------------------------------- | |
106 | // get_legacy_fct - return a legacy | |
107 | // configuration parameter as a function pointer | |
108 | //------------------------------------------------- | |
109 | ||
110 | genf *legacy_device_base::get_legacy_fct(UINT32 state) const | |
111 | { | |
112 | deviceinfo info = { 0 }; | |
113 | (*m_get_config_func)(this, state, &info); | |
114 | return info.f; | |
115 | } | |
116 | ||
117 | ||
118 | //------------------------------------------------- | |
119 | // get_legacy_string - return a legacy | |
120 | // configuration parameter as a string pointer | |
121 | //------------------------------------------------- | |
122 | ||
123 | const char *legacy_device_base::get_legacy_string(UINT32 state) const | |
124 | { | |
125 | deviceinfo info; | |
126 | info.s = get_temp_string_buffer(); | |
127 | (*m_get_config_func)(this, state, &info); | |
128 | return info.s; | |
129 | } | |
130 | ||
131 | ||
132 | //------------------------------------------------- | |
133 | // device_start - called to start up a device | |
134 | //------------------------------------------------- | |
135 | ||
136 | void legacy_device_base::device_start() | |
137 | { | |
138 | device_start_func start_func = reinterpret_cast<device_start_func>(get_legacy_fct(DEVINFO_FCT_START)); | |
139 | assert(start_func != NULL); | |
140 | (*start_func)(this); | |
141 | } | |
142 | ||
143 | ||
144 | //------------------------------------------------- | |
145 | // device_reset - called to reset a device | |
146 | //------------------------------------------------- | |
147 | ||
148 | void legacy_device_base::device_reset() | |
149 | { | |
150 | device_reset_func reset_func = reinterpret_cast<device_reset_func>(get_legacy_fct(DEVINFO_FCT_RESET)); | |
151 | if (reset_func != NULL) | |
152 | (*reset_func)(this); | |
153 | } | |
154 | ||
155 | ||
156 | //------------------------------------------------- | |
157 | // device_stop - called to stop a device | |
158 | //------------------------------------------------- | |
159 | ||
160 | void legacy_device_base::device_stop() | |
161 | { | |
162 | if (started()) | |
163 | { | |
164 | device_stop_func stop_func = reinterpret_cast<device_stop_func>(get_legacy_fct(DEVINFO_FCT_STOP)); | |
165 | if (stop_func != NULL) | |
166 | (*stop_func)(this); | |
167 | } | |
168 | } | |
169 | ||
170 | ||
171 | //************************************************************************** | |
172 | // LEGACY SOUND DEVICE | |
173 | //************************************************************************** | |
174 | ||
175 | //------------------------------------------------- | |
176 | // legacy_sound_device_base - constructor | |
177 | //------------------------------------------------- | |
178 | ||
179 | legacy_sound_device_base::legacy_sound_device_base(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, UINT32 clock, device_get_config_func get_config) | |
180 | : legacy_device_base(mconfig, type, tag, owner, clock, get_config), | |
181 | device_sound_interface(mconfig, *this) | |
182 | { | |
183 | } | |
184 | ||
185 | ||
186 | //------------------------------------------------- | |
187 | // sound_stream_update - handle a stream update | |
188 | //------------------------------------------------- | |
189 | ||
190 | void legacy_sound_device_base::sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples) | |
191 | { | |
192 | // should never get here | |
193 | fatalerror("legacy_sound_device_base::sound_stream_update called; not applicable to legacy sound devices\n"); | |
194 | } |
r17616 | r17617 | |
---|---|---|
1577 | 1577 | hd63484->fifo_counter = 0; |
1578 | 1578 | } |
1579 | 1579 | |
1580 | DEVICE_GET_INFO(hd63484) | |
1581 | { | |
1582 | switch (state) | |
1583 | { | |
1584 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(hd63484_state); break; | |
1585 | ||
1586 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(hd63484); break; | |
1587 | ||
1588 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(hd63484); break; | |
1589 | ||
1590 | case DEVINFO_STR_NAME: strcpy(info->s, "HD63484"); break; | |
1591 | } | |
1592 | } | |
1593 | ||
1594 | 1580 | const device_type HD63484 = &device_creator<hd63484_device>; |
1595 | 1581 | |
1596 | 1582 | hd63484_device::hd63484_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
281 | 281 | state_save_register_global(device->machine(), state->dacbits); |
282 | 282 | } |
283 | 283 | |
284 | DEVICE_GET_INFO(tlc34076) | |
285 | { | |
286 | switch (state) | |
287 | { | |
288 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(tlc34076_state); break; | |
289 | ||
290 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(tlc34076); break; | |
291 | ||
292 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(tlc34076); break; | |
293 | ||
294 | case DEVINFO_STR_NAME: strcpy(info->s, "TLC34076"); break; | |
295 | } | |
296 | } | |
297 | ||
298 | 284 | const device_type TLC34076 = &device_creator<tlc34076_device>; |
299 | 285 | |
300 | 286 | tlc34076_device::tlc34076_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
5028 | 5028 | soft_reset(v); |
5029 | 5029 | } |
5030 | 5030 | |
5031 | ||
5032 | /*------------------------------------------------- | |
5033 | device definition | |
5034 | -------------------------------------------------*/ | |
5035 | ||
5036 | DEVICE_GET_INFO(voodoo) | |
5037 | { | |
5038 | switch (state) | |
5039 | { | |
5040 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(voodoo_state); break; | |
5041 | ||
5042 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(voodoo); break; | |
5043 | ||
5044 | case DEVINFO_FCT_STOP: info->stop = DEVICE_STOP_NAME(voodoo); break; | |
5045 | } | |
5046 | } | |
5047 | ||
5048 | ||
5049 | DEVICE_GET_INFO(voodoo_1) | |
5050 | { | |
5051 | switch (state) | |
5052 | { | |
5053 | case DEVINFO_STR_NAME: strcpy(info->s, "3dfx Voodoo Graphics"); break; | |
5054 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(voodoo_1); break; | |
5055 | default: DEVICE_GET_INFO_CALL(voodoo); break; | |
5056 | } | |
5057 | } | |
5058 | ||
5059 | DEVICE_GET_INFO(voodoo_2) | |
5060 | { | |
5061 | switch (state) | |
5062 | { | |
5063 | case DEVINFO_STR_NAME: strcpy(info->s, "3dfx Voodoo 2"); break; | |
5064 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(voodoo_2); break; | |
5065 | default: DEVICE_GET_INFO_CALL(voodoo); break; | |
5066 | } | |
5067 | } | |
5068 | DEVICE_GET_INFO(voodoo_banshee) | |
5069 | { | |
5070 | switch (state) | |
5071 | { | |
5072 | case DEVINFO_STR_NAME: strcpy(info->s, "3dfx Voodoo Banshee"); break; | |
5073 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(voodoo_banshee); break; | |
5074 | default: DEVICE_GET_INFO_CALL(voodoo); break; | |
5075 | } | |
5076 | } | |
5077 | ||
5078 | DEVICE_GET_INFO(voodoo_3) | |
5079 | { | |
5080 | switch (state) | |
5081 | { | |
5082 | case DEVINFO_STR_NAME: strcpy(info->s, "3dfx Voodoo 3"); break; | |
5083 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(voodoo_3); break; | |
5084 | default: DEVICE_GET_INFO_CALL(voodoo); break; | |
5085 | } | |
5086 | } | |
5087 | ||
5088 | ||
5089 | 5031 | /*************************************************************************** |
5090 | 5032 | COMMAND HANDLERS |
5091 | 5033 | ***************************************************************************/ |
r17616 | r17617 | |
---|---|---|
588 | 588 | i8275->blink = 0; |
589 | 589 | } |
590 | 590 | |
591 | DEVICE_GET_INFO( i8275 ) | |
592 | { | |
593 | switch (state) | |
594 | { | |
595 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
596 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(i8275_t); break; | |
597 | ||
598 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
599 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(i8275); break; | |
600 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
601 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(i8275); break; | |
602 | ||
603 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
604 | case DEVINFO_STR_NAME: strcpy(info->s, "Intel 8275"); break; | |
605 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Intel 8275"); break; | |
606 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
607 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
608 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MESS Team"); break; | |
609 | } | |
610 | } | |
611 | ||
612 | 591 | const device_type I8275 = &device_creator<i8275_device>; |
613 | 592 | |
614 | 593 | i8275_device::i8275_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
365 | 365 | device->save_item(NAME(*s2636->collision_bitmap)); |
366 | 366 | } |
367 | 367 | |
368 | DEVICE_GET_INFO(s2636) | |
369 | { | |
370 | switch (state) | |
371 | { | |
372 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(s2636_state); break; | |
373 | ||
374 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(s2636); break; | |
375 | ||
376 | case DEVINFO_STR_NAME: strcpy(info->s, "Signetics 2636"); break; | |
377 | } | |
378 | } | |
379 | ||
380 | 368 | const device_type S2636 = &device_creator<s2636_device>; |
381 | 369 | |
382 | 370 | s2636_device::s2636_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
307 | 307 | { |
308 | 308 | } |
309 | 309 | |
310 | ||
311 | DEVICE_GET_INFO( tms9927 ) | |
312 | { | |
313 | switch (state) | |
314 | { | |
315 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
316 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(tms9927_state); break; | |
317 | ||
318 | /* --- the following bits of info are returned as pointers to functions --- */ | |
319 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(tms9927); break; | |
320 | case DEVINFO_FCT_STOP: info->stop = DEVICE_STOP_NAME(tms9927); break; | |
321 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(tms9927); break; | |
322 | ||
323 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
324 | case DEVINFO_STR_NAME: strcpy(info->s, "TMS9927"); break; | |
325 | case DEVINFO_STR_FAMILY: strcpy(info->s, "TMS9927 CRTC"); break; | |
326 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
327 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
328 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
329 | } | |
330 | } | |
331 | ||
332 | DEVICE_GET_INFO( crt5027 ) | |
333 | { | |
334 | switch (state) | |
335 | { | |
336 | case DEVINFO_STR_NAME: strcpy(info->s, "CRT5027"); break; | |
337 | default: DEVICE_GET_INFO_CALL(tms9927); break; | |
338 | } | |
339 | } | |
340 | ||
341 | DEVICE_GET_INFO( crt5037 ) | |
342 | { | |
343 | switch (state) | |
344 | { | |
345 | case DEVINFO_STR_NAME: strcpy(info->s, "CRT5037"); break; | |
346 | default: DEVICE_GET_INFO_CALL(tms9927); break; | |
347 | } | |
348 | } | |
349 | ||
350 | DEVICE_GET_INFO( crt5057 ) | |
351 | { | |
352 | switch (state) | |
353 | { | |
354 | case DEVINFO_STR_NAME: strcpy(info->s, "CRT5057"); break; | |
355 | default: DEVICE_GET_INFO_CALL(tms9927); break; | |
356 | } | |
357 | } | |
358 | ||
359 | ||
360 | 310 | const device_type TMS9927 = &device_creator<tms9927_device>; |
361 | 311 | |
362 | 312 | tms9927_device::tms9927_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
381 | 381 | } |
382 | 382 | |
383 | 383 | |
384 | DEVICE_GET_INFO(saa5050) | |
385 | { | |
386 | switch (state) | |
387 | { | |
388 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(saa5050_state); break; | |
389 | ||
390 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(saa5050); break; | |
391 | ||
392 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(saa5050); break; | |
393 | ||
394 | case DEVINFO_STR_NAME: strcpy(info->s, "SAA5050"); break; | |
395 | } | |
396 | } | |
397 | ||
398 | 384 | const device_type SAA5050 = &device_creator<saa5050_device>; |
399 | 385 | |
400 | 386 | saa5050_device::saa5050_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
1365 | 1365 | sp->stream->set_sample_rate(clock / CLOCK_DIVIDER); |
1366 | 1366 | } |
1367 | 1367 | |
1368 | /************************************************************************** | |
1369 | * Generic get_info | |
1370 | **************************************************************************/ | |
1371 | ||
1372 | DEVICE_GET_INFO( sp0256 ) | |
1373 | { | |
1374 | switch (state) | |
1375 | { | |
1376 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
1377 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(sp0256_state); break; | |
1378 | ||
1379 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
1380 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( sp0256 ); break; | |
1381 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME( sp0256 ); break; | |
1382 | ||
1383 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
1384 | case DEVINFO_STR_NAME: strcpy(info->s, "SP0256"); break; | |
1385 | case DEVINFO_STR_FAMILY: strcpy(info->s, "GI"); break; | |
1386 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
1387 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
1388 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Joseph Zbiciak, tim lindner"); break; | |
1389 | } | |
1390 | } | |
1391 | ||
1392 | ||
1393 | 1368 | const device_type SP0256 = &device_creator<sp0256_device>; |
1394 | 1369 | |
1395 | 1370 | sp0256_device::sp0256_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
294 | 294 | } |
295 | 295 | |
296 | 296 | |
297 | ||
298 | /************************************************************************** | |
299 | * Generic get_info | |
300 | **************************************************************************/ | |
301 | ||
302 | DEVICE_GET_INFO( hc55516 ) | |
303 | { | |
304 | switch (state) | |
305 | { | |
306 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
307 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(hc55516_state); break; | |
308 | ||
309 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
310 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( hc55516 ); break; | |
311 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME( hc55516 ); break; | |
312 | ||
313 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
314 | case DEVINFO_STR_NAME: strcpy(info->s, "HC-55516"); break; | |
315 | case DEVINFO_STR_FAMILY: strcpy(info->s, "CVSD"); break; | |
316 | case DEVINFO_STR_VERSION: strcpy(info->s, "2.1"); break; | |
317 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
318 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
319 | } | |
320 | } | |
321 | ||
322 | ||
323 | DEVICE_GET_INFO( mc3417 ) | |
324 | { | |
325 | switch (state) | |
326 | { | |
327 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( mc3417 ); break; | |
328 | case DEVINFO_FCT_RESET: /* chip has no reset pin */ break; | |
329 | case DEVINFO_STR_NAME: strcpy(info->s, "MC3417"); break; | |
330 | default: DEVICE_GET_INFO_CALL(hc55516); break; | |
331 | } | |
332 | } | |
333 | ||
334 | ||
335 | DEVICE_GET_INFO( mc3418 ) | |
336 | { | |
337 | switch (state) | |
338 | { | |
339 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( mc3418 ); break; | |
340 | case DEVINFO_FCT_RESET: /* chip has no reset pin */ break; | |
341 | case DEVINFO_STR_NAME: strcpy(info->s, "MC3418"); break; | |
342 | default: DEVICE_GET_INFO_CALL(hc55516); break; | |
343 | } | |
344 | } | |
345 | ||
346 | ||
347 | 297 | const device_type HC55516 = &device_creator<hc55516_device>; |
348 | 298 | |
349 | 299 | hc55516_device::hc55516_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
264 | 264 | } |
265 | 265 | } |
266 | 266 | |
267 | ||
268 | ||
269 | ||
270 | /************************************************************************** | |
271 | * Generic get_info | |
272 | **************************************************************************/ | |
273 | ||
274 | DEVICE_GET_INFO( iremga20 ) | |
275 | { | |
276 | switch (state) | |
277 | { | |
278 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
279 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(ga20_state); break; | |
280 | ||
281 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
282 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( iremga20 ); break; | |
283 | case DEVINFO_FCT_STOP: /* nothing */ break; | |
284 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME( iremga20 ); break; | |
285 | ||
286 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
287 | case DEVINFO_STR_NAME: strcpy(info->s, "Irem GA20"); break; | |
288 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Irem custom"); break; | |
289 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
290 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
291 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
292 | } | |
293 | } | |
294 | ||
295 | ||
296 | 267 | const device_type IREMGA20 = &device_creator<iremga20_device>; |
297 | 268 | |
298 | 269 | iremga20_device::iremga20_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
1497 | 1497 | TMS 5110 device definition |
1498 | 1498 | -------------------------------------------------*/ |
1499 | 1499 | |
1500 | ||
1501 | DEVICE_GET_INFO(tms5110) | |
1502 | { | |
1503 | switch (state) | |
1504 | { | |
1505 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(tms5110_state); break; | |
1506 | ||
1507 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(tms5110); break; | |
1508 | ||
1509 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(tms5110); break; | |
1510 | ||
1511 | case DEVINFO_STR_NAME: strcpy(info->s, "TMS5110"); break; | |
1512 | } | |
1513 | } | |
1514 | ||
1515 | DEVICE_GET_INFO(tms5100) | |
1516 | { | |
1517 | switch (state) | |
1518 | { | |
1519 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(tms5100); break; | |
1520 | ||
1521 | case DEVINFO_STR_NAME: strcpy(info->s, "TMS5100"); break; | |
1522 | default: DEVICE_GET_INFO_CALL(tms5110); break; | |
1523 | } | |
1524 | } | |
1525 | ||
1526 | DEVICE_GET_INFO(tms5110a) | |
1527 | { | |
1528 | switch (state) | |
1529 | { | |
1530 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(tms5110a); break; | |
1531 | ||
1532 | case DEVINFO_STR_NAME: strcpy(info->s, "TMS5110A"); break; | |
1533 | default: DEVICE_GET_INFO_CALL(tms5110); break; | |
1534 | } | |
1535 | } | |
1536 | ||
1537 | DEVICE_GET_INFO(cd2801) | |
1538 | { | |
1539 | switch (state) | |
1540 | { | |
1541 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(cd2801); break; | |
1542 | ||
1543 | case DEVINFO_STR_NAME: strcpy(info->s, "CD2801"); break; | |
1544 | default: DEVICE_GET_INFO_CALL(tms5110); break; | |
1545 | } | |
1546 | } | |
1547 | ||
1548 | DEVICE_GET_INFO(tmc0281) | |
1549 | { | |
1550 | switch (state) | |
1551 | { | |
1552 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(tmc0281); break; | |
1553 | ||
1554 | case DEVINFO_STR_NAME: strcpy(info->s, "TMC0281"); break; | |
1555 | default: DEVICE_GET_INFO_CALL(tms5110); break; | |
1556 | } | |
1557 | } | |
1558 | ||
1559 | DEVICE_GET_INFO(cd2802) | |
1560 | { | |
1561 | switch (state) | |
1562 | { | |
1563 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(cd2802); break; | |
1564 | case DEVINFO_STR_NAME: strcpy(info->s, "CD2802"); break; | |
1565 | default: DEVICE_GET_INFO_CALL(tms5110); break; | |
1566 | } | |
1567 | } | |
1568 | ||
1569 | DEVICE_GET_INFO(m58817) | |
1570 | { | |
1571 | switch (state) | |
1572 | { | |
1573 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(m58817); break; | |
1574 | case DEVINFO_STR_NAME: strcpy(info->s, "M58817"); break; | |
1575 | default: DEVICE_GET_INFO_CALL(tms5110); break; | |
1576 | } | |
1577 | } | |
1578 | ||
1579 | DEVICE_GET_INFO(tmsprom) | |
1580 | { | |
1581 | switch (state) | |
1582 | { | |
1583 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(tmsprom_state); break; | |
1584 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(tmsprom); break; | |
1585 | case DEVINFO_STR_NAME: strcpy(info->s, "TMSPROM"); break; | |
1586 | } | |
1587 | } | |
1588 | ||
1589 | 1500 | const device_type TMS5110 = &device_creator<tms5110_device>; |
1590 | 1501 | |
1591 | 1502 | tms5110_device::tms5110_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
157 | 157 | WRITE8_DEVICE_HANDLER( ym2612_data_port_a_w ) { ym2612_w(device, 1, data); } |
158 | 158 | WRITE8_DEVICE_HANDLER( ym2612_data_port_b_w ) { ym2612_w(device, 3, data); } |
159 | 159 | |
160 | ||
161 | ||
162 | ||
163 | /************************************************************************** | |
164 | * Generic get_info | |
165 | **************************************************************************/ | |
166 | ||
167 | DEVICE_GET_INFO( ym2612 ) | |
168 | { | |
169 | switch (state) | |
170 | { | |
171 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
172 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(ym2612_state); break; | |
173 | ||
174 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
175 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( ym2612 ); break; | |
176 | case DEVINFO_FCT_STOP: info->stop = DEVICE_STOP_NAME( ym2612 ); break; | |
177 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME( ym2612 ); break; | |
178 | ||
179 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
180 | case DEVINFO_STR_NAME: strcpy(info->s, "YM2612"); break; | |
181 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Yamaha FM"); break; | |
182 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
183 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
184 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
185 | } | |
186 | } | |
187 | ||
188 | ||
189 | DEVICE_GET_INFO( ym3438 ) | |
190 | { | |
191 | switch (state) | |
192 | { | |
193 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
194 | case DEVINFO_STR_NAME: strcpy(info->s, "YM3438"); break; | |
195 | ||
196 | default: DEVICE_GET_INFO_CALL(ym2612); break; | |
197 | } | |
198 | } | |
199 | ||
200 | ||
201 | 160 | const device_type YM2612 = &device_creator<ym2612_device>; |
202 | 161 | |
203 | 162 | ym2612_device::ym2612_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
145 | 145 | WRITE8_DEVICE_HANDLER( ym3526_write_port_w ) { ym3526_w(device, 1, data); } |
146 | 146 | |
147 | 147 | |
148 | /************************************************************************** | |
149 | * Generic get_info | |
150 | **************************************************************************/ | |
151 | ||
152 | DEVICE_GET_INFO( ym3526 ) | |
153 | { | |
154 | switch (state) | |
155 | { | |
156 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
157 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(ym3526_state); break; | |
158 | ||
159 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
160 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( ym3526 ); break; | |
161 | case DEVINFO_FCT_STOP: info->stop = DEVICE_STOP_NAME( ym3526 ); break; | |
162 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME( ym3526 ); break; | |
163 | ||
164 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
165 | case DEVINFO_STR_NAME: strcpy(info->s, "YM3526"); break; | |
166 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Yamaha FM"); break; | |
167 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
168 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
169 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
170 | } | |
171 | } | |
172 | ||
173 | ||
174 | 148 | const device_type YM3526 = &device_creator<ym3526_device>; |
175 | 149 | |
176 | 150 | ym3526_device::ym3526_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
281 | 281 | return 0xff; |
282 | 282 | } |
283 | 283 | |
284 | ||
285 | ||
286 | ||
287 | /************************************************************************** | |
288 | * Generic get_info | |
289 | **************************************************************************/ | |
290 | ||
291 | DEVICE_GET_INFO( k051649 ) | |
292 | { | |
293 | switch (state) | |
294 | { | |
295 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
296 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(k051649_state); break; | |
297 | ||
298 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
299 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( k051649 ); break; | |
300 | case DEVINFO_FCT_STOP: /* nothing */ break; | |
301 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME( k051649 ); break; | |
302 | ||
303 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
304 | case DEVINFO_STR_NAME: strcpy(info->s, "K051649"); break; | |
305 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Konami custom"); break; | |
306 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
307 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
308 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
309 | } | |
310 | } | |
311 | ||
312 | ||
313 | 284 | const device_type K051649 = &device_creator<k051649_device>; |
314 | 285 | |
315 | 286 | k051649_device::k051649_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
475 | 475 | info->mixer_buffer_right = info->mixer_buffer_left + info->sample_rate; |
476 | 476 | } |
477 | 477 | |
478 | ||
479 | ||
480 | ||
481 | /************************************************************************** | |
482 | * Generic get_info | |
483 | **************************************************************************/ | |
484 | ||
485 | DEVICE_GET_INFO( c140 ) | |
486 | { | |
487 | switch (state) | |
488 | { | |
489 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
490 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(c140_state); break; | |
491 | ||
492 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
493 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( c140 ); break; | |
494 | case DEVINFO_FCT_STOP: /* nothing */ break; | |
495 | case DEVINFO_FCT_RESET: /* nothing */ break; | |
496 | ||
497 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
498 | case DEVINFO_STR_NAME: strcpy(info->s, "C140"); break; | |
499 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Namco PCM"); break; | |
500 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
501 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
502 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
503 | } | |
504 | } | |
505 | ||
506 | ||
507 | 478 | const device_type C140 = &device_creator<c140_device>; |
508 | 479 | |
509 | 480 | c140_device::c140_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
341 | 341 | voice->timer->adjust(period, 0, period); |
342 | 342 | } |
343 | 343 | |
344 | ||
345 | /************************************************************************** | |
346 | * Generic get_info | |
347 | **************************************************************************/ | |
348 | ||
349 | DEVICE_GET_INFO( msm5205 ) | |
350 | { | |
351 | switch (state) | |
352 | { | |
353 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
354 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(msm5205_state); break; | |
355 | ||
356 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
357 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( msm5205 ); break; | |
358 | case DEVINFO_FCT_STOP: /* nothing */ break; | |
359 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME( msm5205 ); break; | |
360 | ||
361 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
362 | case DEVINFO_STR_NAME: strcpy(info->s, "MSM5205"); break; | |
363 | case DEVINFO_STR_FAMILY: strcpy(info->s, "ADPCM"); break; | |
364 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
365 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
366 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
367 | } | |
368 | } | |
369 | ||
370 | DEVICE_GET_INFO( msm6585 ) | |
371 | { | |
372 | switch (state) | |
373 | { | |
374 | case DEVINFO_STR_NAME: strcpy(info->s, "MSM6585"); break; | |
375 | default: DEVICE_GET_INFO_CALL(msm5205); break; | |
376 | } | |
377 | } | |
378 | ||
379 | ||
380 | 344 | const device_type MSM5205 = &device_creator<msm5205_device>; |
381 | 345 | |
382 | 346 | msm5205_device::msm5205_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
370 | 370 | fwrite(datap[1], samples*sizeof(QSOUND_SAMPLE), 1, chip->fpRawDataR); |
371 | 371 | } |
372 | 372 | |
373 | ||
374 | ||
375 | /************************************************************************** | |
376 | * Generic get_info | |
377 | **************************************************************************/ | |
378 | ||
379 | DEVICE_GET_INFO( qsound ) | |
380 | { | |
381 | switch (state) | |
382 | { | |
383 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
384 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(qsound_state); break; | |
385 | ||
386 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
387 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( qsound ); break; | |
388 | case DEVINFO_FCT_STOP: info->stop = DEVICE_STOP_NAME( qsound ); break; | |
389 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
390 | ||
391 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
392 | case DEVINFO_STR_NAME: strcpy(info->s, "Q-Sound"); break; | |
393 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Capcom custom"); break; | |
394 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
395 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
396 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
397 | } | |
398 | } | |
399 | ||
400 | /**************** end of file ****************/ | |
401 | ||
402 | 373 | const device_type QSOUND = &device_creator<qsound_device>; |
403 | 374 | |
404 | 375 | qsound_device::qsound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
159 | 159 | update_waveform(chip, offset - 2, data); |
160 | 160 | } |
161 | 161 | |
162 | ||
163 | ||
164 | /************************************************************************** | |
165 | * Generic get_info | |
166 | **************************************************************************/ | |
167 | ||
168 | DEVICE_GET_INFO( snkwave ) | |
169 | { | |
170 | switch (state) | |
171 | { | |
172 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
173 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(snkwave_state); break; | |
174 | ||
175 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
176 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( snkwave ); break; | |
177 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
178 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
179 | ||
180 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
181 | case DEVINFO_STR_NAME: strcpy(info->s, "SNK Wave"); break; | |
182 | case DEVINFO_STR_FAMILY: strcpy(info->s, "SNK Wave"); break; | |
183 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
184 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
185 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
186 | } | |
187 | } | |
188 | ||
189 | 162 | const device_type SNKWAVE = &device_creator<snkwave_device>; |
190 | 163 | |
191 | 164 | snkwave_device::snkwave_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
141 | 141 | WRITE8_DEVICE_HANDLER( ym3812_write_port_w ) { ym3812_w(device, 1, data); } |
142 | 142 | |
143 | 143 | |
144 | /************************************************************************** | |
145 | * Generic get_info | |
146 | **************************************************************************/ | |
147 | ||
148 | DEVICE_GET_INFO( ym3812 ) | |
149 | { | |
150 | switch (state) | |
151 | { | |
152 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
153 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(ym3812_state); break; | |
154 | ||
155 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
156 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( ym3812 ); break; | |
157 | case DEVINFO_FCT_STOP: info->stop = DEVICE_STOP_NAME( ym3812 ); break; | |
158 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME( ym3812 ); break; | |
159 | ||
160 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
161 | case DEVINFO_STR_NAME: strcpy(info->s, "YM3812"); break; | |
162 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Yamaha FM"); break; | |
163 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
164 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
165 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
166 | } | |
167 | } | |
168 | ||
169 | ||
170 | 144 | const device_type YM3812 = &device_creator<ym3812_device>; |
171 | 145 | |
172 | 146 | ym3812_device::ym3812_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
558 | 558 | } |
559 | 559 | } |
560 | 560 | |
561 | /************************************************************************** | |
562 | * Generic get_info | |
563 | **************************************************************************/ | |
564 | ||
565 | DEVICE_GET_INFO( rf5c400 ) | |
566 | { | |
567 | switch (state) | |
568 | { | |
569 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
570 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(rf5c400_state); break; | |
571 | ||
572 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
573 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( rf5c400 ); break; | |
574 | case DEVINFO_FCT_STOP: /* nothing */ break; | |
575 | case DEVINFO_FCT_RESET: /* nothing */ break; | |
576 | ||
577 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
578 | case DEVINFO_STR_NAME: strcpy(info->s, "RF5C400"); break; | |
579 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Ricoh PCM"); break; | |
580 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.1"); break; | |
581 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
582 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team & hoot development team"); break; | |
583 | } | |
584 | } | |
585 | ||
586 | 561 | const device_type RF5C400 = &device_creator<rf5c400_device>; |
587 | 562 | |
588 | 563 | rf5c400_device::rf5c400_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
557 | 557 | return 0.0; |
558 | 558 | } |
559 | 559 | |
560 | ||
561 | ||
562 | ||
563 | /************************************************************************** | |
564 | * Generic get_info | |
565 | **************************************************************************/ | |
566 | ||
567 | DEVICE_GET_INFO( cem3394 ) | |
568 | { | |
569 | switch (state) | |
570 | { | |
571 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
572 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(cem3394_state); break; | |
573 | ||
574 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
575 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( cem3394 ); break; | |
576 | case DEVINFO_FCT_STOP: /* nothing */ break; | |
577 | case DEVINFO_FCT_RESET: /* nothing */ break; | |
578 | ||
579 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
580 | case DEVINFO_STR_NAME: strcpy(info->s, "CEM3394"); break; | |
581 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Analog Synth"); break; | |
582 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
583 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
584 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
585 | } | |
586 | } | |
587 | ||
588 | ||
589 | 560 | const device_type CEM3394 = &device_creator<cem3394_device>; |
590 | 561 | |
591 | 562 | cem3394_device::cem3394_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
436 | 436 | } |
437 | 437 | } |
438 | 438 | |
439 | ||
440 | /************************************************************************** | |
441 | * Generic get_info | |
442 | **************************************************************************/ | |
443 | ||
444 | DEVICE_GET_INFO( saa1099 ) | |
445 | { | |
446 | switch (state) | |
447 | { | |
448 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
449 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(saa1099_state); break; | |
450 | ||
451 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
452 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( saa1099 ); break; | |
453 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
454 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
455 | ||
456 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
457 | case DEVINFO_STR_NAME: strcpy(info->s, "SAA1099"); break; | |
458 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Philips"); break; | |
459 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
460 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
461 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
462 | } | |
463 | } | |
464 | ||
465 | ||
466 | 439 | const device_type SAA1099 = &device_creator<saa1099_device>; |
467 | 440 | |
468 | 441 | saa1099_device::saa1099_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
659 | 659 | digitalker_register_for_save(dg); |
660 | 660 | } |
661 | 661 | |
662 | DEVICE_GET_INFO(digitalker) | |
663 | { | |
664 | switch(state) { | |
665 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(digitalker); break; | |
666 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(digitalker); break; | |
667 | case DEVINFO_FCT_STOP: break; | |
668 | case DEVINFO_FCT_RESET: break; | |
669 | case DEVINFO_STR_NAME: strcpy(info->s, "Digitalker"); break; | |
670 | case DEVINFO_STR_FAMILY: strcpy(info->s, "National Semiconductor"); break; | |
671 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
672 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
673 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Olivier Galibert"); break; | |
674 | } | |
675 | } | |
676 | ||
677 | 662 | void digitalker_0_cs_w(device_t *device, int line) |
678 | 663 | { |
679 | 664 | digitalker *dg = get_safe_token(device); |
r17616 | r17617 | |
---|---|---|
1046 | 1046 | } |
1047 | 1047 | |
1048 | 1048 | |
1049 | ||
1050 | /************************************************************************** | |
1051 | * Generic get_info | |
1052 | **************************************************************************/ | |
1053 | ||
1054 | DEVICE_GET_INFO( ymz280b ) | |
1055 | { | |
1056 | switch (state) | |
1057 | { | |
1058 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
1059 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(ymz280b_state); break; | |
1060 | ||
1061 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
1062 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( ymz280b ); break; | |
1063 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
1064 | case DEVINFO_FCT_RESET: info->start = DEVICE_RESET_NAME( ymz280b ); break; | |
1065 | ||
1066 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
1067 | case DEVINFO_STR_NAME: strcpy(info->s, "YMZ280B"); break; | |
1068 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Yamaha Wavetable"); break; | |
1069 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
1070 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
1071 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
1072 | } | |
1073 | } | |
1074 | ||
1075 | ||
1076 | 1049 | const device_type YMZ280B = &device_creator<ymz280b_device>; |
1077 | 1050 | |
1078 | 1051 | ymz280b_device::ymz280b_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
258 | 258 | chip->data[chip->wbank * 0x1000 + offset] = data; |
259 | 259 | } |
260 | 260 | |
261 | ||
262 | ||
263 | /************************************************************************** | |
264 | * Generic get_info | |
265 | **************************************************************************/ | |
266 | ||
267 | DEVICE_GET_INFO( rf5c68 ) | |
268 | { | |
269 | switch (state) | |
270 | { | |
271 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
272 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(rf5c68_state); break; | |
273 | ||
274 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
275 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( rf5c68 ); break; | |
276 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
277 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
278 | ||
279 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
280 | case DEVINFO_STR_NAME: strcpy(info->s, "RF5C68"); break; | |
281 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Ricoh PCM"); break; | |
282 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
283 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
284 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
285 | } | |
286 | } | |
287 | ||
288 | /**************** end of file ****************/ | |
289 | ||
290 | 261 | const device_type RF5C68 = &device_creator<rf5c68_device>; |
291 | 262 | |
292 | 263 | rf5c68_device::rf5c68_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
951 | 951 | mos6560->noisesamples = 1; |
952 | 952 | } |
953 | 953 | |
954 | ||
955 | /*------------------------------------------------- | |
956 | Device definition | |
957 | -------------------------------------------------*/ | |
958 | ||
959 | DEVICE_GET_INFO(mos6560) | |
960 | { | |
961 | switch (state) | |
962 | { | |
963 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(mos6560_state); break; | |
964 | ||
965 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(mos6560); break; | |
966 | ||
967 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(mos6560); break; | |
968 | ||
969 | case DEVINFO_STR_NAME: strcpy(info->s, "MOS 6560 / 6561 VIC"); break; | |
970 | } | |
971 | } | |
972 | ||
973 | 954 | const device_type MOS656X = &device_creator<mos6560_device>; |
974 | 955 | |
975 | 956 | mos6560_device::mos6560_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
245 | 245 | k005289_recompute(info); |
246 | 246 | } |
247 | 247 | |
248 | ||
249 | ||
250 | ||
251 | /************************************************************************** | |
252 | * Generic get_info | |
253 | **************************************************************************/ | |
254 | ||
255 | DEVICE_GET_INFO( k005289 ) | |
256 | { | |
257 | switch (state) | |
258 | { | |
259 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
260 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(k005289_state); break; | |
261 | ||
262 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
263 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( k005289 ); break; | |
264 | case DEVINFO_FCT_STOP: /* nothing */ break; | |
265 | case DEVINFO_FCT_RESET: /* nothing */ break; | |
266 | ||
267 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
268 | case DEVINFO_STR_NAME: strcpy(info->s, "K005289"); break; | |
269 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Konami custom"); break; | |
270 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
271 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
272 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
273 | } | |
274 | } | |
275 | ||
276 | ||
277 | 248 | const device_type K005289 = &device_creator<k005289_device>; |
278 | 249 | |
279 | 250 | k005289_device::k005289_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
1354 | 1354 | return val; |
1355 | 1355 | } |
1356 | 1356 | |
1357 | /************************************************************************** | |
1358 | * Generic get_info | |
1359 | **************************************************************************/ | |
1360 | ||
1361 | DEVICE_GET_INFO( aica ) | |
1362 | { | |
1363 | switch (state) | |
1364 | { | |
1365 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
1366 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(aica_state); break; | |
1367 | ||
1368 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
1369 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( aica ); break; | |
1370 | case DEVINFO_FCT_STOP: info->start = DEVICE_STOP_NAME( aica ); break; | |
1371 | ||
1372 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
1373 | case DEVINFO_STR_NAME: strcpy(info->s, "AICA"); break; | |
1374 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Sega/Yamaha custom"); break; | |
1375 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0.1"); break; | |
1376 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
1377 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
1378 | } | |
1379 | } | |
1380 | ||
1381 | ||
1382 | ||
1383 | 1357 | const device_type AICA = &device_creator<aica_device>; |
1384 | 1358 | |
1385 | 1359 | aica_device::aica_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
486 | 486 | generic_start(device, 0x8000, 0x01, 0x08, TRUE, FALSE, 8, FALSE); // todo: verify; from smspower wiki, assumed to have same invert as gamegear |
487 | 487 | } |
488 | 488 | |
489 | ||
490 | /************************************************************************** | |
491 | * Generic get_info | |
492 | **************************************************************************/ | |
493 | ||
494 | DEVICE_GET_INFO( sn76496 ) | |
495 | { | |
496 | switch (state) | |
497 | { | |
498 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
499 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(sn76496_state); break; | |
500 | ||
501 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
502 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( sn76496 ); break; | |
503 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
504 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
505 | ||
506 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
507 | case DEVINFO_STR_NAME: strcpy(info->s, "SN76496"); break; | |
508 | case DEVINFO_STR_FAMILY: strcpy(info->s, "TI PSG"); break; | |
509 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.1"); break; | |
510 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
511 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
512 | } | |
513 | } | |
514 | ||
515 | DEVICE_GET_INFO( sn76489 ) | |
516 | { | |
517 | switch (state) | |
518 | { | |
519 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( sn76489 ); break; | |
520 | case DEVINFO_STR_NAME: strcpy(info->s, "SN76489"); break; | |
521 | default: DEVICE_GET_INFO_CALL(sn76496); break; | |
522 | } | |
523 | } | |
524 | ||
525 | DEVICE_GET_INFO( sn76489a ) | |
526 | { | |
527 | switch (state) | |
528 | { | |
529 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( sn76489a ); break; | |
530 | case DEVINFO_STR_NAME: strcpy(info->s, "SN76489A"); break; | |
531 | default: DEVICE_GET_INFO_CALL(sn76496); break; | |
532 | } | |
533 | } | |
534 | ||
535 | DEVICE_GET_INFO( u8106 ) | |
536 | { | |
537 | switch (state) | |
538 | { | |
539 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( u8106 ); break; | |
540 | case DEVINFO_STR_NAME: strcpy(info->s, "U8106"); break; | |
541 | default: DEVICE_GET_INFO_CALL(sn76496); break; | |
542 | } | |
543 | } | |
544 | ||
545 | DEVICE_GET_INFO( y2404 ) | |
546 | { | |
547 | switch (state) | |
548 | { | |
549 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( y2404 ); break; | |
550 | case DEVINFO_STR_NAME: strcpy(info->s, "Y2404"); break; | |
551 | default: DEVICE_GET_INFO_CALL(sn76496); break; | |
552 | } | |
553 | } | |
554 | ||
555 | DEVICE_GET_INFO( sn76494 ) | |
556 | { | |
557 | switch (state) | |
558 | { | |
559 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( sn76494 ); break; | |
560 | case DEVINFO_STR_NAME: strcpy(info->s, "SN76494"); break; | |
561 | default: DEVICE_GET_INFO_CALL(sn76496); break; | |
562 | } | |
563 | } | |
564 | ||
565 | DEVICE_GET_INFO( sn94624 ) | |
566 | { | |
567 | switch (state) | |
568 | { | |
569 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( sn94624 ); break; | |
570 | case DEVINFO_STR_NAME: strcpy(info->s, "SN94624"); break; | |
571 | default: DEVICE_GET_INFO_CALL(sn76496); break; | |
572 | } | |
573 | } | |
574 | ||
575 | DEVICE_GET_INFO( ncr7496 ) | |
576 | { | |
577 | switch (state) | |
578 | { | |
579 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( ncr7496 ); break; | |
580 | case DEVINFO_STR_NAME: strcpy(info->s, "NCR7496"); break; | |
581 | default: DEVICE_GET_INFO_CALL(sn76496); break; | |
582 | } | |
583 | } | |
584 | ||
585 | DEVICE_GET_INFO( gamegear ) | |
586 | { | |
587 | switch (state) | |
588 | { | |
589 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( gamegear ); break; | |
590 | case DEVINFO_STR_NAME: strcpy(info->s, "Game Gear PSG"); break; | |
591 | default: DEVICE_GET_INFO_CALL(sn76496); break; | |
592 | } | |
593 | } | |
594 | ||
595 | DEVICE_GET_INFO( segapsg ) | |
596 | { | |
597 | switch (state) | |
598 | { | |
599 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( segapsg ); break; | |
600 | case DEVINFO_STR_NAME: strcpy(info->s, "SEGA VDP PSG"); break; | |
601 | default: DEVICE_GET_INFO_CALL(sn76496); break; | |
602 | } | |
603 | } | |
604 | ||
605 | ||
606 | 489 | const device_type SN76496 = &device_creator<sn76496_device>; |
607 | 490 | |
608 | 491 | sn76496_device::sn76496_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
82 | 82 | } |
83 | 83 | |
84 | 84 | |
85 | ||
86 | /************************************************************************** | |
87 | * Generic get_info | |
88 | **************************************************************************/ | |
89 | ||
90 | DEVICE_GET_INFO( wave ) | |
91 | { | |
92 | switch (state) | |
93 | { | |
94 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
95 | case DEVINFO_INT_TOKEN_BYTES: info->i = 0; break; | |
96 | ||
97 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
98 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( wave ); break; | |
99 | case DEVINFO_FCT_STOP: /* nothing */ break; | |
100 | case DEVINFO_FCT_RESET: /* nothing */ break; | |
101 | ||
102 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
103 | case DEVINFO_STR_NAME: strcpy(info->s, "Cassette"); break; | |
104 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Cassette"); break; | |
105 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
106 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
107 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright The MESS Team"); break; | |
108 | } | |
109 | } | |
110 | ||
111 | ||
112 | 85 | const device_type WAVE = &device_creator<wave_device>; |
113 | 86 | |
114 | 87 | wave_device::wave_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
302 | 302 | chip->reg[offset & 7] = data; |
303 | 303 | } |
304 | 304 | |
305 | ||
306 | ||
307 | /************************************* | |
308 | * | |
309 | * Get/set info callbacks | |
310 | * | |
311 | *************************************/ | |
312 | ||
313 | DEVICE_GET_INFO( astrocade ) | |
314 | { | |
315 | switch (state) | |
316 | { | |
317 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
318 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(astrocade_state); break; | |
319 | ||
320 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
321 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( astrocade ); break; | |
322 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME( astrocade ); break; | |
323 | ||
324 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
325 | case DEVINFO_STR_NAME: strcpy(info->s, "Astrocade"); break; | |
326 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Bally"); break; | |
327 | case DEVINFO_STR_VERSION: strcpy(info->s, "2.0"); break; | |
328 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
329 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
330 | } | |
331 | } | |
332 | ||
333 | ||
334 | 305 | const device_type ASTROCADE = &device_creator<astrocade_device>; |
335 | 306 | |
336 | 307 | astrocade_device::astrocade_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
284 | 284 | } |
285 | 285 | |
286 | 286 | |
287 | ||
288 | /************************************************************************** | |
289 | * Generic get_info | |
290 | **************************************************************************/ | |
291 | ||
292 | DEVICE_GET_INFO( x1_010 ) | |
293 | { | |
294 | switch (state) | |
295 | { | |
296 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
297 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(x1_010_state); break; | |
298 | ||
299 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
300 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( x1_010 ); break; | |
301 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
302 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
303 | ||
304 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
305 | case DEVINFO_STR_NAME: strcpy(info->s, "X1-010"); break; | |
306 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Seta custom"); break; | |
307 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
308 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
309 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
310 | } | |
311 | } | |
312 | ||
313 | ||
314 | 287 | const device_type X1_010 = &device_creator<x1_010_device>; |
315 | 288 | |
316 | 289 | x1_010_device::x1_010_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
164 | 164 | k056800->sound_cpu_irq1_enable = 0; |
165 | 165 | } |
166 | 166 | |
167 | ||
168 | DEVICE_GET_INFO(k056800) | |
169 | { | |
170 | switch (state) | |
171 | { | |
172 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(k056800_state); break; | |
173 | ||
174 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(k056800); break; | |
175 | ||
176 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(k056800); break; | |
177 | ||
178 | case DEVINFO_STR_NAME: strcpy(info->s, "Konami 056800 MIRAC"); break; | |
179 | } | |
180 | } | |
181 | ||
182 | 167 | const device_type K056800 = &device_creator<k056800_device>; |
183 | 168 | |
184 | 169 | k056800_device::k056800_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
739 | 739 | chip->romoffset = base; |
740 | 740 | } |
741 | 741 | |
742 | ||
743 | ||
744 | /************************************************************************** | |
745 | * Generic get_info | |
746 | **************************************************************************/ | |
747 | ||
748 | DEVICE_GET_INFO( upd7759 ) | |
749 | { | |
750 | switch (state) | |
751 | { | |
752 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
753 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(upd7759_state); break; | |
754 | ||
755 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
756 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( upd7759 ); break; | |
757 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
758 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME( upd7759 ); break; | |
759 | ||
760 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
761 | case DEVINFO_STR_NAME: strcpy(info->s, "UPD7759"); break; | |
762 | case DEVINFO_STR_FAMILY: strcpy(info->s, "NEC ADPCM"); break; | |
763 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
764 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
765 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
766 | } | |
767 | } | |
768 | ||
769 | ||
770 | 742 | const device_type UPD7759 = &device_creator<upd7759_device>; |
771 | 743 | |
772 | 744 | upd7759_device::upd7759_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
1810 | 1810 | } |
1811 | 1811 | } |
1812 | 1812 | |
1813 | /************************************************************************** | |
1814 | * Generic get_info | |
1815 | **************************************************************************/ | |
1816 | ||
1817 | DEVICE_GET_INFO( ymf271 ) | |
1818 | { | |
1819 | switch (state) | |
1820 | { | |
1821 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
1822 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(YMF271Chip); break; | |
1823 | ||
1824 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
1825 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( ymf271 ); break; | |
1826 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
1827 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME( ymf271 ); break; | |
1828 | ||
1829 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
1830 | case DEVINFO_STR_NAME: strcpy(info->s, "YMF271"); break; | |
1831 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Yamaha FM"); break; | |
1832 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
1833 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
1834 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
1835 | } | |
1836 | } | |
1837 | ||
1838 | ||
1839 | 1813 | const device_type YMF271 = &device_creator<ymf271_device>; |
1840 | 1814 | |
1841 | 1815 | ymf271_device::ymf271_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
154 | 154 | } |
155 | 155 | } |
156 | 156 | |
157 | ||
158 | ||
159 | ||
160 | ||
161 | ||
162 | /************************************************************************** | |
163 | * Generic get_info | |
164 | **************************************************************************/ | |
165 | ||
166 | DEVICE_GET_INFO( namco_63701x ) | |
167 | { | |
168 | switch (state) | |
169 | { | |
170 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
171 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(namco_63701x); break; | |
172 | ||
173 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
174 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( namco_63701x ); break; | |
175 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
176 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
177 | ||
178 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
179 | case DEVINFO_STR_NAME: strcpy(info->s, "Namco 63701X"); break; | |
180 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Namco custom"); break; | |
181 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
182 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
183 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
184 | } | |
185 | } | |
186 | ||
187 | ||
188 | 157 | const device_type NAMCO_63701X = &device_creator<namco_63701x_device>; |
189 | 158 | |
190 | 159 | namco_63701x_device::namco_63701x_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
238 | 238 | } |
239 | 239 | |
240 | 240 | |
241 | ||
242 | /************************************************************************** | |
243 | * Generic get_info | |
244 | **************************************************************************/ | |
245 | ||
246 | DEVICE_GET_INFO( sp0250 ) | |
247 | { | |
248 | switch (state) | |
249 | { | |
250 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
251 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(sp0250_state); break; | |
252 | ||
253 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
254 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( sp0250 ); break; | |
255 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
256 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
257 | ||
258 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
259 | case DEVINFO_STR_NAME: strcpy(info->s, "SP0250"); break; | |
260 | case DEVINFO_STR_FAMILY: strcpy(info->s, "GI speech"); break; | |
261 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.1"); break; | |
262 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
263 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
264 | } | |
265 | } | |
266 | ||
267 | ||
268 | ||
269 | 241 | const device_type SP0250 = &device_creator<sp0250_device>; |
270 | 242 | |
271 | 243 | sp0250_device::sp0250_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
418 | 418 | } |
419 | 419 | |
420 | 420 | |
421 | /************************************************************************** | |
422 | * Generic get_info | |
423 | **************************************************************************/ | |
424 | ||
425 | DEVICE_GET_INFO( speaker_sound ) | |
426 | { | |
427 | switch (state) | |
428 | { | |
429 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
430 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(speaker_state); break; | |
431 | ||
432 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
433 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( speaker ); break; | |
434 | case DEVINFO_FCT_STOP: /* nothing */ break; | |
435 | case DEVINFO_FCT_RESET: /* nothing */ break; | |
436 | ||
437 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
438 | case DEVINFO_STR_NAME: strcpy(info->s, "Speaker"); break; | |
439 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Speaker"); break; | |
440 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
441 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
442 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright The MESS Team"); break; | |
443 | } | |
444 | } | |
445 | ||
446 | ||
447 | 421 | const device_type SPEAKER_SOUND = &device_creator<speaker_sound_device>; |
448 | 422 | |
449 | 423 | speaker_sound_device::speaker_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
975 | 975 | ay8910_reset_ym(get_safe_token(device)); |
976 | 976 | } |
977 | 977 | |
978 | DEVICE_GET_INFO( ay8910 ) | |
979 | { | |
980 | switch (state) | |
981 | { | |
982 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
983 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(ay8910_context); break; | |
984 | ||
985 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
986 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( ay8910 ); break; | |
987 | case DEVINFO_FCT_STOP: info->stop = DEVICE_STOP_NAME( ay8910 ); break; | |
988 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME( ay8910 ); break; | |
989 | ||
990 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
991 | case DEVINFO_STR_NAME: strcpy(info->s, "AY-3-8910A"); break; | |
992 | case DEVINFO_STR_FAMILY: strcpy(info->s, "PSG"); break; | |
993 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
994 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
995 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
996 | } | |
997 | } | |
998 | ||
999 | DEVICE_GET_INFO( ay8912 ) | |
1000 | { | |
1001 | switch (state) | |
1002 | { | |
1003 | case DEVINFO_STR_NAME: strcpy(info->s, "AY-3-8912A"); break; | |
1004 | default: DEVICE_GET_INFO_CALL(ay8910); break; | |
1005 | } | |
1006 | } | |
1007 | ||
1008 | DEVICE_GET_INFO( ay8913 ) | |
1009 | { | |
1010 | switch (state) | |
1011 | { | |
1012 | case DEVINFO_STR_NAME: strcpy(info->s, "AY-3-8913A"); break; | |
1013 | default: DEVICE_GET_INFO_CALL(ay8910); break; | |
1014 | } | |
1015 | } | |
1016 | ||
1017 | DEVICE_GET_INFO( ay8914 ) | |
1018 | { | |
1019 | switch (state) | |
1020 | { | |
1021 | case DEVINFO_STR_NAME: strcpy(info->s, "AY-3-8914"); break; | |
1022 | default: DEVICE_GET_INFO_CALL(ay8910); break; | |
1023 | } | |
1024 | } | |
1025 | ||
1026 | DEVICE_GET_INFO( ay8930 ) | |
1027 | { | |
1028 | switch (state) | |
1029 | { | |
1030 | case DEVINFO_STR_NAME: strcpy(info->s, "AY8930"); break; | |
1031 | default: DEVICE_GET_INFO_CALL(ay8910); break; | |
1032 | } | |
1033 | } | |
1034 | ||
1035 | DEVICE_GET_INFO( ym2149 ) | |
1036 | { | |
1037 | switch (state) | |
1038 | { | |
1039 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( ym2149 ); break; | |
1040 | case DEVINFO_STR_NAME: strcpy(info->s, "YM2149"); break; | |
1041 | default: DEVICE_GET_INFO_CALL(ay8910); break; | |
1042 | } | |
1043 | } | |
1044 | ||
1045 | DEVICE_GET_INFO( ym3439 ) | |
1046 | { | |
1047 | switch (state) | |
1048 | { | |
1049 | case DEVINFO_STR_NAME: strcpy(info->s, "YM3439"); break; | |
1050 | default: DEVICE_GET_INFO_CALL(ym2149); break; | |
1051 | } | |
1052 | } | |
1053 | ||
1054 | DEVICE_GET_INFO( ymz284 ) | |
1055 | { | |
1056 | switch (state) | |
1057 | { | |
1058 | case DEVINFO_STR_NAME: strcpy(info->s, "YMZ284"); break; | |
1059 | default: DEVICE_GET_INFO_CALL(ym2149); break; | |
1060 | } | |
1061 | } | |
1062 | ||
1063 | DEVICE_GET_INFO( ymz294 ) | |
1064 | { | |
1065 | switch (state) | |
1066 | { | |
1067 | case DEVINFO_STR_NAME: strcpy(info->s, "YMZ294"); break; | |
1068 | default: DEVICE_GET_INFO_CALL(ym2149); break; | |
1069 | } | |
1070 | } | |
1071 | ||
1072 | 978 | /************************************* |
1073 | 979 | * |
1074 | 980 | * Read/Write Handlers |
r17616 | r17617 | |
---|---|---|
313 | 313 | cdda->stream->set_output_gain(channel,volume / 100.0); |
314 | 314 | } |
315 | 315 | |
316 | /************************************************************************** | |
317 | * Generic get_info | |
318 | **************************************************************************/ | |
319 | ||
320 | DEVICE_GET_INFO( cdda ) | |
321 | { | |
322 | switch (state) | |
323 | { | |
324 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
325 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(cdda_info); break; | |
326 | ||
327 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
328 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( cdda ); break; | |
329 | case DEVINFO_FCT_STOP: /* nothing */ break; | |
330 | case DEVINFO_FCT_RESET: /* nothing */ break; | |
331 | ||
332 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
333 | case DEVINFO_STR_NAME: strcpy(info->s, "CD/DA"); break; | |
334 | case DEVINFO_STR_FAMILY: strcpy(info->s, "CD Audio"); break; | |
335 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
336 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
337 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
338 | } | |
339 | } | |
340 | ||
341 | ||
342 | 316 | const device_type CDDA = &device_creator<cdda_device>; |
343 | 317 | |
344 | 318 | cdda_device::cdda_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
524 | 524 | } |
525 | 525 | |
526 | 526 | |
527 | ||
528 | ||
529 | /************************************************************************** | |
530 | * Generic get_info | |
531 | **************************************************************************/ | |
532 | ||
533 | DEVICE_GET_INFO( tms36xx ) | |
534 | { | |
535 | switch (state) | |
536 | { | |
537 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
538 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(tms_state); break; | |
539 | ||
540 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
541 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( tms36xx ); break; | |
542 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
543 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
544 | ||
545 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
546 | case DEVINFO_STR_NAME: strcpy(info->s, "TMS36XX"); break; | |
547 | case DEVINFO_STR_FAMILY: strcpy(info->s, "TI PSG"); break; | |
548 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
549 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
550 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
551 | } | |
552 | } | |
553 | ||
554 | ||
555 | 527 | const device_type TMS36XX = &device_creator<tms36xx_device>; |
556 | 528 | |
557 | 529 | tms36xx_device::tms36xx_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
145 | 145 | info->stream = device->machine().sound().stream_alloc(*device, 0, 2, 44100, info, st0016_update); |
146 | 146 | } |
147 | 147 | |
148 | ||
149 | ||
150 | /************************************************************************** | |
151 | * Generic get_info | |
152 | **************************************************************************/ | |
153 | ||
154 | DEVICE_GET_INFO( st0016 ) | |
155 | { | |
156 | switch (state) | |
157 | { | |
158 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
159 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(st0016_state); break; | |
160 | ||
161 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
162 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( st0016 ); break; | |
163 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
164 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
165 | ||
166 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
167 | case DEVINFO_STR_NAME: strcpy(info->s, "ST0016"); break; | |
168 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Seta custom"); break; | |
169 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
170 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
171 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
172 | } | |
173 | } | |
174 | ||
175 | ||
176 | 148 | const device_type ST0016 = &device_creator<st0016_device>; |
177 | 149 | |
178 | 150 | st0016_device::st0016_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
47 | 47 | tia_write(info->chip, offset, data); |
48 | 48 | } |
49 | 49 | |
50 | ||
51 | ||
52 | ||
53 | /************************************************************************** | |
54 | * Generic get_info | |
55 | **************************************************************************/ | |
56 | ||
57 | DEVICE_GET_INFO( tia ) | |
58 | { | |
59 | switch (state) | |
60 | { | |
61 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
62 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(tia_state); break; | |
63 | ||
64 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
65 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( tia ); break; | |
66 | case DEVINFO_FCT_STOP: info->stop = DEVICE_STOP_NAME( tia ); break; | |
67 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
68 | ||
69 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
70 | case DEVINFO_STR_NAME: strcpy(info->s, "TIA"); break; | |
71 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Atari custom"); break; | |
72 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
73 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
74 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
75 | } | |
76 | } | |
77 | ||
78 | ||
79 | 50 | const device_type TIA = &device_creator<tia_device>; |
80 | 51 | |
81 | 52 | tia_device::tia_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
344 | 344 | c6280_write(info, offset, data); |
345 | 345 | } |
346 | 346 | |
347 | ||
348 | ||
349 | /************************************************************************** | |
350 | * Generic get_info | |
351 | **************************************************************************/ | |
352 | ||
353 | DEVICE_GET_INFO( c6280 ) | |
354 | { | |
355 | switch (state) | |
356 | { | |
357 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
358 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(c6280_t); break; | |
359 | ||
360 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
361 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( c6280 ); break; | |
362 | case DEVINFO_FCT_STOP: /* nothing */ break; | |
363 | case DEVINFO_FCT_RESET: /* nothing */ break; | |
364 | ||
365 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
366 | case DEVINFO_STR_NAME: strcpy(info->s, "HuC6280"); break; | |
367 | case DEVINFO_STR_FAMILY: strcpy(info->s, "????"); break; | |
368 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
369 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
370 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
371 | } | |
372 | } | |
373 | ||
374 | ||
375 | 347 | const device_type C6280 = &device_creator<c6280_device>; |
376 | 348 | |
377 | 349 | c6280_device::c6280_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
1359 | 1359 | return val; |
1360 | 1360 | } |
1361 | 1361 | |
1362 | ||
1363 | ||
1364 | /************************************************************************** | |
1365 | * Generic get_info | |
1366 | **************************************************************************/ | |
1367 | ||
1368 | DEVICE_GET_INFO( scsp ) | |
1369 | { | |
1370 | switch (state) | |
1371 | { | |
1372 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
1373 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(scsp_state); break; | |
1374 | ||
1375 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
1376 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( scsp ); break; | |
1377 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
1378 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
1379 | ||
1380 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
1381 | case DEVINFO_STR_NAME: strcpy(info->s, "SCSP"); break; | |
1382 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Sega/Yamaha custom"); break; | |
1383 | case DEVINFO_STR_VERSION: strcpy(info->s, "2.1.1"); break; | |
1384 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
1385 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
1386 | } | |
1387 | } | |
1388 | ||
1389 | ||
1390 | 1362 | const device_type SCSP = &device_creator<scsp_device>; |
1391 | 1363 | |
1392 | 1364 | scsp_device::scsp_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
850 | 850 | } |
851 | 851 | } |
852 | 852 | |
853 | ||
854 | ||
855 | /************************************************************************** | |
856 | * Generic get_info | |
857 | **************************************************************************/ | |
858 | ||
859 | DEVICE_GET_INFO( msm5232 ) | |
860 | { | |
861 | switch (state) | |
862 | { | |
863 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
864 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(msm5232_state); break; | |
865 | ||
866 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
867 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( msm5232 ); break; | |
868 | case DEVINFO_FCT_STOP: info->stop = DEVICE_STOP_NAME( msm5232 ); break; | |
869 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME( msm5232 ); break; | |
870 | ||
871 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
872 | case DEVINFO_STR_NAME: strcpy(info->s, "MSM5232"); break; | |
873 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Oki Tone"); break; | |
874 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.1"); break; | |
875 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
876 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
877 | } | |
878 | } | |
879 | ||
880 | ||
881 | 853 | const device_type MSM5232 = &device_creator<msm5232_device>; |
882 | 854 | |
883 | 855 | msm5232_device::msm5232_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
217 | 217 | WRITE8_DEVICE_HANDLER( ym2610_data_port_a_w ) { ym2610_w(device, 1, data); } |
218 | 218 | WRITE8_DEVICE_HANDLER( ym2610_data_port_b_w ) { ym2610_w(device, 3, data); } |
219 | 219 | |
220 | ||
221 | ||
222 | /************************************************************************** | |
223 | * Generic get_info | |
224 | **************************************************************************/ | |
225 | ||
226 | DEVICE_GET_INFO( ym2610 ) | |
227 | { | |
228 | switch (state) | |
229 | { | |
230 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
231 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(ym2610_state); break; | |
232 | ||
233 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
234 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( ym2610 ); break; | |
235 | case DEVINFO_FCT_STOP: info->stop = DEVICE_STOP_NAME( ym2610 ); break; | |
236 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME( ym2610 ); break; | |
237 | ||
238 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
239 | case DEVINFO_STR_NAME: strcpy(info->s, "YM2610"); break; | |
240 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Yamaha FM"); break; | |
241 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
242 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
243 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
244 | } | |
245 | } | |
246 | ||
247 | DEVICE_GET_INFO( ym2610b ) | |
248 | { | |
249 | switch (state) | |
250 | { | |
251 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
252 | case DEVINFO_STR_NAME: strcpy(info->s, "YM2610B"); break; | |
253 | ||
254 | default: DEVICE_GET_INFO_CALL(ym2610); break; | |
255 | } | |
256 | } | |
257 | ||
258 | ||
259 | 220 | const device_type YM2610 = &device_creator<ym2610_device>; |
260 | 221 | |
261 | 222 | ym2610_device::ym2610_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
111 | 111 | |
112 | 112 | } |
113 | 113 | |
114 | /************************************************************************** | |
115 | * Generic get_info | |
116 | **************************************************************************/ | |
117 | ||
118 | DEVICE_GET_INFO( filter_rc ) | |
119 | { | |
120 | switch (state) | |
121 | { | |
122 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
123 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(filter_rc_state); break; | |
124 | ||
125 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
126 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( filter_rc ); break; | |
127 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
128 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
129 | ||
130 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
131 | case DEVINFO_STR_NAME: strcpy(info->s, "RC Filter"); break; | |
132 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Filters"); break; | |
133 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
134 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
135 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
136 | } | |
137 | } | |
138 | ||
139 | ||
140 | 114 | const device_type FILTER_RC = &device_creator<filter_rc_device>; |
141 | 115 | |
142 | 116 | filter_rc_device::filter_rc_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
163 | 163 | downcast<beep_device *>(device)->set_output_gain(0, volume); |
164 | 164 | } |
165 | 165 | |
166 | ||
167 | ||
168 | /************************************************************************** | |
169 | * Generic get_info | |
170 | **************************************************************************/ | |
171 | ||
172 | DEVICE_GET_INFO( beep ) | |
173 | { | |
174 | switch (state) | |
175 | { | |
176 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
177 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(beep_state); break; | |
178 | ||
179 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
180 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( beep ); break; | |
181 | ||
182 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
183 | case DEVINFO_STR_NAME: strcpy(info->s, "Beep"); break; | |
184 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Beep"); break; | |
185 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
186 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
187 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright The MESS Team"); break; | |
188 | } | |
189 | } | |
190 | ||
191 | ||
192 | 166 | const device_type BEEP = &device_creator<beep_device>; |
193 | 167 | |
194 | 168 | beep_device::beep_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
94 | 94 | tms->basefreq = device->clock(); |
95 | 95 | } |
96 | 96 | |
97 | /************************************************************************** | |
98 | * Generic get_info | |
99 | **************************************************************************/ | |
100 | ||
101 | DEVICE_GET_INFO( tms3615 ) | |
102 | { | |
103 | switch (state) | |
104 | { | |
105 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
106 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(tms_state); break; | |
107 | ||
108 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
109 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( tms3615 ); break; | |
110 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
111 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
112 | ||
113 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
114 | case DEVINFO_STR_NAME: strcpy(info->s, "TMS3615"); break; | |
115 | case DEVINFO_STR_FAMILY: strcpy(info->s, "TI PSG"); break; | |
116 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
117 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
118 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
119 | } | |
120 | } | |
121 | ||
122 | ||
123 | 97 | const device_type TMS3615 = &device_creator<tms3615_device>; |
124 | 98 | |
125 | 99 | tms3615_device::tms3615_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
629 | 629 | chip->VSU1000_amp = volume; |
630 | 630 | } |
631 | 631 | |
632 | DEVICE_GET_INFO( s14001a ) | |
633 | { | |
634 | switch (state) | |
635 | { | |
636 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
637 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(S14001AChip); break; | |
638 | ||
639 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
640 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( s14001a ); break; | |
641 | ||
642 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
643 | case DEVINFO_STR_NAME: strcpy(info->s, "S14001A"); break; | |
644 | case DEVINFO_STR_FAMILY: strcpy(info->s, "TSI S14001A"); break; | |
645 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.32"); break; | |
646 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
647 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Jonathan Gevaryahu"); break; | |
648 | } | |
649 | } | |
650 | ||
651 | 632 | const device_type S14001A = &device_creator<s14001a_device>; |
652 | 633 | |
653 | 634 | s14001a_device::s14001a_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
284 | 284 | } |
285 | 285 | |
286 | 286 | |
287 | ||
288 | ||
289 | /************************************************************************** | |
290 | * Generic get_info | |
291 | **************************************************************************/ | |
292 | ||
293 | DEVICE_GET_INFO( gaelco_gae1 ) | |
294 | { | |
295 | switch (state) | |
296 | { | |
297 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
298 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(gaelco_sound_state); break; | |
299 | ||
300 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
301 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( gaelco ); break; | |
302 | case DEVINFO_FCT_STOP: info->stop = DEVICE_STOP_NAME( gaelco ); break; | |
303 | case DEVINFO_FCT_RESET: /* nothing */ break; | |
304 | ||
305 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
306 | case DEVINFO_STR_NAME: strcpy(info->s, "Gaelco GAE1"); break; | |
307 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Gaelco custom"); break; | |
308 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
309 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
310 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
311 | } | |
312 | } | |
313 | ||
314 | ||
315 | ||
316 | /************************************************************************** | |
317 | * Generic get_info | |
318 | **************************************************************************/ | |
319 | ||
320 | DEVICE_GET_INFO( gaelco_cg1v ) | |
321 | { | |
322 | switch (state) | |
323 | { | |
324 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
325 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(gaelco_sound_state); break; | |
326 | ||
327 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
328 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( gaelco ); break; | |
329 | case DEVINFO_FCT_STOP: info->stop = DEVICE_STOP_NAME( gaelco ); break; | |
330 | case DEVINFO_FCT_RESET: /* nothing */ break; | |
331 | ||
332 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
333 | case DEVINFO_STR_NAME: strcpy(info->s, "Gaelco CG1V"); break; | |
334 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Gaelco custom"); break; | |
335 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
336 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
337 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
338 | } | |
339 | } | |
340 | ||
341 | ||
342 | 287 | const device_type GAELCO_GAE1 = &device_creator<gaelco_gae1_device>; |
343 | 288 | |
344 | 289 | gaelco_gae1_device::gaelco_gae1_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
234 | 234 | } |
235 | 235 | } |
236 | 236 | |
237 | ||
238 | ||
239 | /************************************************************************** | |
240 | * Generic get_info | |
241 | **************************************************************************/ | |
242 | ||
243 | DEVICE_GET_INFO( dmadac_sound ) | |
244 | { | |
245 | switch (state) | |
246 | { | |
247 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
248 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(dmadac_state); break; | |
249 | ||
250 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
251 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( dmadac ); break; | |
252 | case DEVINFO_FCT_STOP: /* nothing */ break; | |
253 | case DEVINFO_FCT_RESET: /* nothing */ break; | |
254 | ||
255 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
256 | case DEVINFO_STR_NAME: strcpy(info->s, "DMA-driven DAC"); break; | |
257 | case DEVINFO_STR_FAMILY: strcpy(info->s, "DAC"); break; | |
258 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
259 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
260 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
261 | } | |
262 | } | |
263 | ||
264 | ||
265 | 237 | const device_type DMADAC = &device_creator<dmadac_sound_device>; |
266 | 238 | |
267 | 239 | dmadac_sound_device::dmadac_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
204 | 204 | WRITE8_DEVICE_HANDLER( ym2608_data_port_a_w ) { ym2608_w(device, 1, data); } |
205 | 205 | WRITE8_DEVICE_HANDLER( ym2608_data_port_b_w ) { ym2608_w(device, 3, data); } |
206 | 206 | |
207 | ||
208 | ||
209 | /************************************************************************** | |
210 | * Generic get_info | |
211 | **************************************************************************/ | |
212 | ||
213 | DEVICE_GET_INFO( ym2608 ) | |
214 | { | |
215 | switch (state) | |
216 | { | |
217 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
218 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(ym2608_state); break; | |
219 | ||
220 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
221 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( ym2608 ); break; | |
222 | case DEVINFO_FCT_STOP: info->stop = DEVICE_STOP_NAME( ym2608 ); break; | |
223 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME( ym2608 ); break; | |
224 | ||
225 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
226 | case DEVINFO_STR_NAME: strcpy(info->s, "YM2608"); break; | |
227 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Yamaha FM"); break; | |
228 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
229 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
230 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
231 | } | |
232 | } | |
233 | ||
234 | ||
235 | 207 | const device_type YM2608 = &device_creator<ym2608_device>; |
236 | 208 | |
237 | 209 | ym2608_device::ym2608_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
82 | 82 | token->channel = device->machine().sound().stream_alloc(*device, 0, 1, device->machine().sample_rate(), 0, s2636_update); |
83 | 83 | } |
84 | 84 | |
85 | ||
86 | DEVICE_GET_INFO( s2636_sound ) | |
87 | { | |
88 | switch (state) | |
89 | { | |
90 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
91 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(s2636_sound); break; | |
92 | ||
93 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
94 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(s2636_sound); break; | |
95 | ||
96 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
97 | case DEVINFO_STR_NAME: strcpy(info->s, "S2636"); break; | |
98 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
99 | } | |
100 | } | |
101 | ||
102 | 85 | const device_type S2636_SOUND = &device_creator<s2636_sound_device>; |
103 | 86 | |
104 | 87 | s2636_sound_device::s2636_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
619 | 619 | } |
620 | 620 | |
621 | 621 | |
622 | ||
623 | /************************************************************************** | |
624 | * Generic get_info | |
625 | **************************************************************************/ | |
626 | ||
627 | DEVICE_GET_INFO( okim6376 ) | |
628 | { | |
629 | switch (state) | |
630 | { | |
631 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
632 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(okim6376_state); break; | |
633 | ||
634 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
635 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( okim6376 ); break; | |
636 | case DEVINFO_FCT_STOP: /* nothing */ break; | |
637 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME( okim6376 ); break; | |
638 | ||
639 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
640 | case DEVINFO_STR_NAME: strcpy(info->s, "OKI6376"); break; | |
641 | case DEVINFO_STR_FAMILY: strcpy(info->s, "OKI ADPCM"); break; | |
642 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
643 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
644 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
645 | } | |
646 | } | |
647 | ||
648 | ||
649 | 622 | const device_type OKIM6376 = &device_creator<okim6376_device>; |
650 | 623 | |
651 | 624 | okim6376_device::okim6376_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
231 | 231 | info->bank_samples = device->machine().root_device().memregion(intf->samplergn)->base(); |
232 | 232 | } |
233 | 233 | |
234 | /************************************************************************** | |
235 | * Generic get_info | |
236 | **************************************************************************/ | |
237 | ||
238 | DEVICE_GET_INFO( zsg2 ) | |
239 | { | |
240 | switch (state) | |
241 | { | |
242 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
243 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(zsg2_state); break; | |
244 | ||
245 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
246 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( zsg2 ); break; | |
247 | case DEVINFO_FCT_STOP: /* nothing */ break; | |
248 | case DEVINFO_FCT_RESET: /* nothing */ break; | |
249 | ||
250 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
251 | case DEVINFO_STR_NAME: strcpy(info->s, "ZSG-2"); break; | |
252 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Zoom custom"); break; | |
253 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
254 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
255 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
256 | } | |
257 | } | |
258 | ||
259 | ||
260 | 234 | const device_type ZSG2 = &device_creator<zsg2_device>; |
261 | 235 | |
262 | 236 | zsg2_device::zsg2_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
2153 | 2153 | chip->voice[voice].exbank=bank; |
2154 | 2154 | } |
2155 | 2155 | |
2156 | ||
2157 | ||
2158 | /************************************************************************** | |
2159 | * Generic get_info | |
2160 | **************************************************************************/ | |
2161 | ||
2162 | DEVICE_GET_INFO( es5505 ) | |
2163 | { | |
2164 | switch (state) | |
2165 | { | |
2166 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
2167 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(es5506_state); break; | |
2168 | ||
2169 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
2170 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( es5505 ); break; | |
2171 | case DEVINFO_FCT_STOP: info->stop = DEVICE_STOP_NAME( es5505 ); break; | |
2172 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME( es5505 ); break; | |
2173 | ||
2174 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
2175 | case DEVINFO_STR_NAME: strcpy(info->s, "ES5505"); break; | |
2176 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Ensoniq Wavetable"); break; | |
2177 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
2178 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
2179 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
2180 | } | |
2181 | } | |
2182 | ||
2183 | ||
2184 | /************************************************************************** | |
2185 | * Generic get_info | |
2186 | **************************************************************************/ | |
2187 | ||
2188 | DEVICE_GET_INFO( es5506 ) | |
2189 | { | |
2190 | switch (state) | |
2191 | { | |
2192 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
2193 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(es5506_state); break; | |
2194 | ||
2195 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
2196 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( es5506 ); break; | |
2197 | case DEVINFO_FCT_STOP: info->stop = DEVICE_STOP_NAME( es5506 ); break; | |
2198 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME( es5506 ); break; | |
2199 | ||
2200 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
2201 | case DEVINFO_STR_NAME: strcpy(info->s, "ES5506"); break; | |
2202 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Ensoniq Wavetable"); break; | |
2203 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
2204 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
2205 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
2206 | } | |
2207 | } | |
2208 | ||
2209 | ||
2210 | 2156 | const device_type ES5505 = &device_creator<es5505_device>; |
2211 | 2157 | |
2212 | 2158 | es5505_device::es5505_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
2216 | 2162 | m_token = global_alloc_array_clear(UINT8, sizeof(es5506_state)); |
2217 | 2163 | } |
2218 | 2164 | |
2165 | es5505_device::es5505_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock) | |
2166 | : device_t(mconfig, type, name, tag, owner, clock), | |
2167 | device_sound_interface(mconfig, *this) | |
2168 | { | |
2169 | m_token = global_alloc_array_clear(UINT8, sizeof(es5506_state)); | |
2170 | } | |
2171 | ||
2219 | 2172 | //------------------------------------------------- |
2220 | 2173 | // device_config_complete - perform any |
2221 | 2174 | // operations now that the configuration is |
r17616 | r17617 | |
2267 | 2220 | const device_type ES5506 = &device_creator<es5506_device>; |
2268 | 2221 | |
2269 | 2222 | es5506_device::es5506_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
2270 | : device_t(mconfig, ES5506, "ES5506", tag, owner, clock), | |
2271 | device_sound_interface(mconfig, *this) | |
2223 | : es5505_device(mconfig, ES5506, "ES5506", tag, owner, clock) | |
2272 | 2224 | { |
2273 | m_token = global_alloc_array_clear(UINT8, sizeof(es5506_state)); | |
2274 | 2225 | } |
2275 | 2226 | |
2276 | 2227 | //------------------------------------------------- |
r17616 | r17617 | |
---|---|---|
30 | 30 | { |
31 | 31 | public: |
32 | 32 | es5505_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); |
33 | es5505_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock); | |
33 | 34 | ~es5505_device() { global_free(m_token); } |
34 | 35 | |
35 | 36 | // access to legacy token |
r17616 | r17617 | |
67 | 68 | WRITE8_DEVICE_HANDLER( es5506_w ); |
68 | 69 | void es5506_voice_bank_w(device_t *device, int voice, int bank); |
69 | 70 | |
70 | class es5506_device : public device_t, | |
71 | public device_sound_interface | |
71 | class es5506_device : public es5505_device | |
72 | 72 | { |
73 | 73 | public: |
74 | 74 | es5506_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); |
75 | ~es5506_device() { global_free(m_token); } | |
76 | ||
77 | // access to legacy token | |
78 | void *token() const { assert(m_token != NULL); return m_token; } | |
79 | 75 | protected: |
80 | 76 | // device-level overrides |
81 | 77 | virtual void device_config_complete(); |
r17616 | r17617 | |
87 | 83 | virtual void sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples); |
88 | 84 | private: |
89 | 85 | // internal state |
90 | void *m_token; | |
91 | 86 | }; |
92 | 87 | |
93 | 88 | extern const device_type ES5506; |
r17616 | r17617 | |
---|---|---|
1085 | 1085 | } |
1086 | 1086 | |
1087 | 1087 | |
1088 | /************************************************************************** | |
1089 | * Generic get_info | |
1090 | **************************************************************************/ | |
1091 | ||
1092 | DEVICE_GET_INFO( ymf278b ) | |
1093 | { | |
1094 | switch (state) | |
1095 | { | |
1096 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
1097 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(YMF278BChip); break; | |
1098 | ||
1099 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
1100 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( ymf278b ); break; | |
1101 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
1102 | case DEVINFO_FCT_RESET: info->start = DEVICE_RESET_NAME( ymf278b ); break; | |
1103 | ||
1104 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
1105 | case DEVINFO_STR_NAME: strcpy(info->s, "YMF278B"); break; | |
1106 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Yamaha FM"); break; | |
1107 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
1108 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
1109 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
1110 | } | |
1111 | } | |
1112 | ||
1113 | ||
1114 | 1088 | const device_type YMF278B = &device_creator<ymf278b_device>; |
1115 | 1089 | |
1116 | 1090 | ymf278b_device::ymf278b_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
83 | 83 | sid6581_port_w(get_sid(device), offset, data); |
84 | 84 | } |
85 | 85 | |
86 | ||
87 | ||
88 | /************************************************************************** | |
89 | * Generic get_info | |
90 | **************************************************************************/ | |
91 | ||
92 | DEVICE_GET_INFO( sid6581 ) | |
93 | { | |
94 | switch (state) | |
95 | { | |
96 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
97 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(_SID6581); break; | |
98 | ||
99 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
100 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( sid6581 ); break; | |
101 | case DEVINFO_FCT_STOP: info->stop = NULL; break; | |
102 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME( sid ); break; | |
103 | ||
104 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
105 | case DEVINFO_STR_NAME: strcpy(info->s, "SID6581"); break; | |
106 | case DEVINFO_STR_FAMILY: strcpy(info->s, "SID"); break; | |
107 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
108 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
109 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright The MESS Team"); break; | |
110 | } | |
111 | } | |
112 | ||
113 | ||
114 | DEVICE_GET_INFO( sid8580 ) | |
115 | { | |
116 | switch (state) | |
117 | { | |
118 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
119 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( sid8580 ); break; | |
120 | ||
121 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
122 | case DEVINFO_STR_NAME: strcpy(info->s, "SID8580"); break; | |
123 | default: DEVICE_GET_INFO_CALL(sid6581); break; | |
124 | } | |
125 | } | |
126 | ||
127 | ||
128 | 86 | const device_type SID6581 = &device_creator<sid6581_device>; |
129 | 87 | |
130 | 88 | sid6581_device::sid6581_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
44 | 44 | info->gain = (int)(volume * 256); |
45 | 45 | } |
46 | 46 | |
47 | ||
48 | ||
49 | /************************************************************************** | |
50 | * Generic get_info | |
51 | **************************************************************************/ | |
52 | ||
53 | DEVICE_GET_INFO( filter_volume ) | |
54 | { | |
55 | switch (state) | |
56 | { | |
57 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
58 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(filter_volume_state); break; | |
59 | ||
60 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
61 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( filter_volume ); break; | |
62 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
63 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
64 | ||
65 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
66 | case DEVINFO_STR_NAME: strcpy(info->s, "Volume Filter"); break; | |
67 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Filters"); break; | |
68 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
69 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
70 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
71 | } | |
72 | } | |
73 | ||
74 | ||
75 | 47 | const device_type FILTER_VOLUME = &device_creator<filter_volume_device>; |
76 | 48 | |
77 | 49 | filter_volume_device::filter_volume_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
119 | 119 | WRITE8_DEVICE_HANDLER( ym2151_data_port_w ) { ym2151_w(device, 1, data); } |
120 | 120 | |
121 | 121 | |
122 | ||
123 | /************************************************************************** | |
124 | * Generic get_info | |
125 | **************************************************************************/ | |
126 | ||
127 | DEVICE_GET_INFO( ym2151 ) | |
128 | { | |
129 | switch (state) | |
130 | { | |
131 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
132 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(ym2151_state); break; | |
133 | ||
134 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
135 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( ym2151 ); break; | |
136 | case DEVINFO_FCT_STOP: info->stop = DEVICE_STOP_NAME( ym2151 ); break; | |
137 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME( ym2151 ); break; | |
138 | ||
139 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
140 | case DEVINFO_STR_NAME: strcpy(info->s, "YM2151"); break; | |
141 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Yamaha FM"); break; | |
142 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
143 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
144 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
145 | } | |
146 | } | |
147 | ||
148 | ||
149 | 122 | const device_type YM2151 = &device_creator<ym2151_device>; |
150 | 123 | |
151 | 124 | ym2151_device::ym2151_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
437 | 437 | return ic->regs[offset]; |
438 | 438 | } |
439 | 439 | |
440 | /************************************************************************** | |
441 | * Generic get_info | |
442 | **************************************************************************/ | |
443 | ||
444 | DEVICE_GET_INFO( k053260 ) | |
445 | { | |
446 | switch (state) | |
447 | { | |
448 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
449 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(k053260_state); break; | |
450 | ||
451 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
452 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( k053260 ); break; | |
453 | case DEVINFO_FCT_STOP: /* nothing */ break; | |
454 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME( k053260 ); break; | |
455 | ||
456 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
457 | case DEVINFO_STR_NAME: strcpy(info->s, "K053260"); break; | |
458 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Konami custom"); break; | |
459 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
460 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
461 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
462 | } | |
463 | } | |
464 | ||
465 | ||
466 | 440 | const device_type K053260 = &device_creator<k053260_device>; |
467 | 441 | |
468 | 442 | k053260_device::k053260_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
115 | 115 | WRITE8_DEVICE_HANDLER( ym2413_register_port_w ) { ym2413_w(device, 0, data); } |
116 | 116 | WRITE8_DEVICE_HANDLER( ym2413_data_port_w ) { ym2413_w(device, 1, data); } |
117 | 117 | |
118 | ||
119 | /************************************************************************** | |
120 | * Generic get_info | |
121 | **************************************************************************/ | |
122 | ||
123 | DEVICE_GET_INFO( ym2413 ) | |
124 | { | |
125 | switch (state) | |
126 | { | |
127 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
128 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(ym2413_state); break; | |
129 | ||
130 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
131 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( ym2413 ); break; | |
132 | case DEVINFO_FCT_STOP: info->stop = DEVICE_STOP_NAME( ym2413 ); break; | |
133 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME( ym2413 ); break; | |
134 | ||
135 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
136 | case DEVINFO_STR_NAME: strcpy(info->s, "YM2413"); break; | |
137 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Yamaha FM"); break; | |
138 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
139 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
140 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
141 | } | |
142 | } | |
143 | ||
144 | ||
145 | 118 | const device_type YM2413 = &device_creator<ym2413_device>; |
146 | 119 | |
147 | 120 | ym2413_device::ym2413_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
148 | 148 | return spcm->ram[offset & 0x07ff]; |
149 | 149 | } |
150 | 150 | |
151 | ||
152 | ||
153 | /************************************************************************** | |
154 | * Generic get_info | |
155 | **************************************************************************/ | |
156 | ||
157 | DEVICE_GET_INFO( segapcm ) | |
158 | { | |
159 | switch (state) | |
160 | { | |
161 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
162 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(segapcm_state); break; | |
163 | ||
164 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
165 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( segapcm ); break; | |
166 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
167 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
168 | ||
169 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
170 | case DEVINFO_STR_NAME: strcpy(info->s, "Sega PCM"); break; | |
171 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Sega custom"); break; | |
172 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
173 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
174 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
175 | } | |
176 | } | |
177 | ||
178 | ||
179 | 151 | const device_type SEGAPCM = &device_creator<segapcm_device>; |
180 | 152 | |
181 | 153 | segapcm_device::segapcm_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
239 | 239 | } |
240 | 240 | |
241 | 241 | |
242 | ||
243 | ||
244 | /************************************************************************** | |
245 | * Generic get_info | |
246 | **************************************************************************/ | |
247 | ||
248 | DEVICE_GET_INFO( vrender0 ) | |
249 | { | |
250 | switch (state) | |
251 | { | |
252 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
253 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(vr0_state); break; | |
254 | ||
255 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
256 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( vrender0 ); break; | |
257 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
258 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
259 | ||
260 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
261 | case DEVINFO_STR_NAME: strcpy(info->s, "VRender0"); break; | |
262 | case DEVINFO_STR_FAMILY: strcpy(info->s, "???"); break; | |
263 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
264 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
265 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
266 | } | |
267 | } | |
268 | ||
269 | ||
270 | 242 | const device_type VRENDER0 = &device_creator<vrender0_device>; |
271 | 243 | |
272 | 244 | vrender0_device::vrender0_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
174 | 174 | WRITE8_DEVICE_HANDLER( y8950_write_port_w ) { y8950_w(device, 1, data); } |
175 | 175 | |
176 | 176 | |
177 | /************************************************************************** | |
178 | * Generic get_info | |
179 | **************************************************************************/ | |
180 | ||
181 | DEVICE_GET_INFO( y8950 ) | |
182 | { | |
183 | switch (state) | |
184 | { | |
185 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
186 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(y8950_state); break; | |
187 | ||
188 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
189 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( y8950 ); break; | |
190 | case DEVINFO_FCT_STOP: info->stop = DEVICE_STOP_NAME( y8950 ); break; | |
191 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME( y8950 ); break; | |
192 | ||
193 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
194 | case DEVINFO_STR_NAME: strcpy(info->s, "Y8950"); break; | |
195 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Yamaha FM"); break; | |
196 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
197 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
198 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
199 | } | |
200 | } | |
201 | ||
202 | ||
203 | 177 | const device_type Y8950 = &device_creator<y8950_device>; |
204 | 178 | |
205 | 179 | y8950_device::y8950_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
365 | 365 | device->save_item(NAME(chip->Output)); |
366 | 366 | } |
367 | 367 | |
368 | ||
369 | /************************************************************************** | |
370 | * Generic get_info | |
371 | **************************************************************************/ | |
372 | ||
373 | DEVICE_GET_INFO( t6w28 ) | |
374 | { | |
375 | switch (state) | |
376 | { | |
377 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
378 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(t6w28_state); break; | |
379 | ||
380 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
381 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( t6w28 ); break; | |
382 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
383 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
384 | ||
385 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
386 | case DEVINFO_STR_NAME: strcpy(info->s, "T6W28"); break; | |
387 | case DEVINFO_STR_FAMILY: strcpy(info->s, "PSG"); break; | |
388 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
389 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
390 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
391 | } | |
392 | } | |
393 | ||
394 | ||
395 | 368 | const device_type T6W28 = &device_creator<t6w28_device>; |
396 | 369 | |
397 | 370 | t6w28_device::t6w28_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
673 | 673 | } |
674 | 674 | |
675 | 675 | |
676 | ||
677 | /************************************************************************** | |
678 | * Generic get_info | |
679 | **************************************************************************/ | |
680 | ||
681 | DEVICE_GET_INFO( multipcm ) | |
682 | { | |
683 | switch (state) | |
684 | { | |
685 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
686 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(MultiPCM); break; | |
687 | ||
688 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
689 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( multipcm ); break; | |
690 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
691 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
692 | ||
693 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
694 | case DEVINFO_STR_NAME: strcpy(info->s, "Sega/Yamaha 315-5560"); break; | |
695 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Sega custom"); break; | |
696 | case DEVINFO_STR_VERSION: strcpy(info->s, "2.0"); break; | |
697 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
698 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
699 | } | |
700 | } | |
701 | ||
702 | ||
703 | 676 | const device_type MULTIPCM = &device_creator<multipcm_device>; |
704 | 677 | |
705 | 678 | multipcm_device::multipcm_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
812 | 812 | } |
813 | 813 | } |
814 | 814 | |
815 | ||
816 | ||
817 | ||
818 | /************************************************************************** | |
819 | * Generic get_info | |
820 | **************************************************************************/ | |
821 | ||
822 | DEVICE_GET_INFO( namco ) | |
823 | { | |
824 | switch (state) | |
825 | { | |
826 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
827 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(namco_sound); break; | |
828 | ||
829 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
830 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( namco ); break; | |
831 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
832 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
833 | ||
834 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
835 | case DEVINFO_STR_NAME: strcpy(info->s, "Namco"); break; | |
836 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Namco custom"); break; | |
837 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
838 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
839 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
840 | } | |
841 | } | |
842 | ||
843 | /************************************************************************** | |
844 | * Generic get_info | |
845 | **************************************************************************/ | |
846 | ||
847 | DEVICE_GET_INFO( namco_15xx ) | |
848 | { | |
849 | switch (state) | |
850 | { | |
851 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
852 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(namco_sound); break; | |
853 | ||
854 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
855 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( namco ); break; | |
856 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
857 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
858 | ||
859 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
860 | case DEVINFO_STR_NAME: strcpy(info->s, "Namco 15XX"); break; | |
861 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Namco custom"); break; | |
862 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
863 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
864 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
865 | } | |
866 | } | |
867 | ||
868 | /************************************************************************** | |
869 | * Generic get_info | |
870 | **************************************************************************/ | |
871 | ||
872 | DEVICE_GET_INFO( namco_cus30 ) | |
873 | { | |
874 | switch (state) | |
875 | { | |
876 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
877 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(namco_sound); break; | |
878 | ||
879 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
880 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( namco ); break; | |
881 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
882 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
883 | ||
884 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
885 | case DEVINFO_STR_NAME: strcpy(info->s, "Namco CUS30"); break; | |
886 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Namco custom"); break; | |
887 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
888 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
889 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
890 | } | |
891 | } | |
892 | ||
893 | ||
894 | 815 | const device_type NAMCO = &device_creator<namco_device>; |
895 | 816 | |
896 | 817 | namco_device::namco_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
2467 | 2467 | close_wav_file(sn); |
2468 | 2468 | } |
2469 | 2469 | |
2470 | ||
2471 | DEVICE_GET_INFO( sn76477 ) | |
2472 | { | |
2473 | switch (state) | |
2474 | { | |
2475 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(sn76477_state); break; | |
2476 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( sn76477 ); break; | |
2477 | case DEVINFO_FCT_STOP: info->stop = DEVICE_STOP_NAME( sn76477 ); break; | |
2478 | case DEVINFO_STR_NAME: strcpy(info->s, "SN76477"); break; | |
2479 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Analog"); break; | |
2480 | case DEVINFO_STR_VERSION: strcpy(info->s, "2.1"); break; | |
2481 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
2482 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
2483 | } | |
2484 | } | |
2485 | ||
2486 | ||
2487 | 2470 | const device_type SN76477 = &device_creator<sn76477_device>; |
2488 | 2471 | |
2489 | 2472 | sn76477_device::sn76477_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
688 | 688 | device->machine().save().register_postload(save_prepost_delegate(FUNC(vlm5030_restore_state), chip)); |
689 | 689 | } |
690 | 690 | |
691 | ||
692 | /************************************************************************** | |
693 | * Generic get_info | |
694 | **************************************************************************/ | |
695 | ||
696 | DEVICE_GET_INFO( vlm5030 ) | |
697 | { | |
698 | switch (state) | |
699 | { | |
700 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
701 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(vlm5030_state); break; | |
702 | ||
703 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
704 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( vlm5030 ); break; | |
705 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
706 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME( vlm5030 ); break; | |
707 | ||
708 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
709 | case DEVINFO_STR_NAME: strcpy(info->s, "VLM5030"); break; | |
710 | case DEVINFO_STR_FAMILY: strcpy(info->s, "VLM speech"); break; | |
711 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
712 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
713 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
714 | } | |
715 | } | |
716 | ||
717 | ||
718 | 691 | const device_type VLM5030 = &device_creator<vlm5030_device>; |
719 | 692 | |
720 | 693 | vlm5030_device::vlm5030_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
181 | 181 | WRITE8_DEVICE_HANDLER( ym2203_control_port_w ) { ym2203_w(device, 0, data); } |
182 | 182 | WRITE8_DEVICE_HANDLER( ym2203_write_port_w ) { ym2203_w(device, 1, data); } |
183 | 183 | |
184 | ||
185 | /************************************************************************** | |
186 | * Generic get_info | |
187 | **************************************************************************/ | |
188 | ||
189 | DEVICE_GET_INFO( ym2203 ) | |
190 | { | |
191 | switch (state) | |
192 | { | |
193 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
194 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(ym2203_state); break; | |
195 | ||
196 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
197 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( ym2203 ); break; | |
198 | case DEVINFO_FCT_STOP: info->stop = DEVICE_STOP_NAME( ym2203 ); break; | |
199 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME( ym2203 ); break; | |
200 | ||
201 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
202 | case DEVINFO_STR_NAME: strcpy(info->s, "YM2203"); break; | |
203 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Yamaha FM"); break; | |
204 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
205 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
206 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
207 | } | |
208 | } | |
209 | ||
210 | ||
211 | 184 | const device_type YM2203 = &device_creator<ym2203_device>; |
212 | 185 | |
213 | 186 | ym2203_device::ym2203_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
443 | 443 | |
444 | 444 | /*****************************************************************************/ |
445 | 445 | |
446 | ||
447 | ||
448 | ||
449 | ||
450 | /************************************************************************** | |
451 | * Generic get_info | |
452 | **************************************************************************/ | |
453 | ||
454 | DEVICE_GET_INFO( k007232 ) | |
455 | { | |
456 | switch (state) | |
457 | { | |
458 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
459 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(KDAC_A_PCM); break; | |
460 | ||
461 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
462 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( k007232 ); break; | |
463 | case DEVINFO_FCT_STOP: /* nothing */ break; | |
464 | case DEVINFO_FCT_RESET: /* nothing */ break; | |
465 | ||
466 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
467 | case DEVINFO_STR_NAME: strcpy(info->s, "K007232"); break; | |
468 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Konami custom"); break; | |
469 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
470 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
471 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
472 | } | |
473 | } | |
474 | ||
475 | ||
476 | 446 | const device_type K007232 = &device_creator<k007232_device>; |
477 | 447 | |
478 | 448 | k007232_device::k007232_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
2004 | 2004 | tms->clock = frequency; |
2005 | 2005 | } |
2006 | 2006 | |
2007 | ||
2008 | ||
2009 | /*------------------------------------------------- | |
2010 | device definition | |
2011 | -------------------------------------------------*/ | |
2012 | ||
2013 | DEVICE_GET_INFO(tms5220) | |
2014 | { | |
2015 | switch (state) | |
2016 | { | |
2017 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(tms5220_state); break; | |
2018 | ||
2019 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(tms5220); break; | |
2020 | ||
2021 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(tms5220); break; | |
2022 | ||
2023 | case DEVINFO_STR_NAME: strcpy(info->s, "TMS5220"); break; | |
2024 | } | |
2025 | } | |
2026 | ||
2027 | DEVICE_GET_INFO(tms5220c) | |
2028 | { | |
2029 | switch (state) | |
2030 | { | |
2031 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(tms5220c); break; | |
2032 | ||
2033 | case DEVINFO_STR_NAME: strcpy(info->s, "TMS5220C"); break; | |
2034 | default: DEVICE_GET_INFO_CALL(tms5220); break; | |
2035 | } | |
2036 | } | |
2037 | ||
2038 | DEVICE_GET_INFO(tmc0285) | |
2039 | { | |
2040 | switch (state) | |
2041 | { | |
2042 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(tmc0285); break; | |
2043 | ||
2044 | case DEVINFO_STR_NAME: strcpy(info->s, "TMC0285"); break; | |
2045 | default: DEVICE_GET_INFO_CALL(tms5220); break; | |
2046 | } | |
2047 | } | |
2048 | ||
2049 | DEVICE_GET_INFO(tms5200) | |
2050 | { | |
2051 | switch (state) | |
2052 | { | |
2053 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(tms5200); break; | |
2054 | ||
2055 | case DEVINFO_STR_NAME: strcpy(info->s, "TMS5200"); break; | |
2056 | default: DEVICE_GET_INFO_CALL(tms5220); break; | |
2057 | } | |
2058 | } | |
2059 | ||
2060 | 2007 | const device_type TMS5220C = &device_creator<tms5220c_device>; |
2061 | 2008 | |
2062 | 2009 | tms5220c_device::tms5220c_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
353 | 353 | } |
354 | 354 | |
355 | 355 | |
356 | ||
357 | ||
358 | /************************************************************************** | |
359 | * Generic get_info | |
360 | **************************************************************************/ | |
361 | ||
362 | DEVICE_GET_INFO( okim6258 ) | |
363 | { | |
364 | switch (state) | |
365 | { | |
366 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
367 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(okim6258_state); break; | |
368 | ||
369 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
370 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(okim6258); break; | |
371 | case DEVINFO_FCT_STOP: /* nothing */ break; | |
372 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(okim6258); break; | |
373 | ||
374 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
375 | case DEVINFO_STR_NAME: strcpy(info->s, "OKI6258"); break; | |
376 | case DEVINFO_STR_FAMILY: strcpy(info->s, "OKI ADPCM"); break; | |
377 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
378 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
379 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
380 | } | |
381 | } | |
382 | ||
383 | ||
384 | 356 | const device_type OKIM6258 = &device_creator<okim6258_device>; |
385 | 357 | |
386 | 358 | okim6258_device::okim6258_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
230 | 230 | info->stream = device->machine().sound().stream_alloc(*device, 0, 2, 44100, info, nile_update); |
231 | 231 | } |
232 | 232 | |
233 | ||
234 | ||
235 | /************************************************************************** | |
236 | * Generic get_info | |
237 | **************************************************************************/ | |
238 | ||
239 | DEVICE_GET_INFO( nile ) | |
240 | { | |
241 | switch (state) | |
242 | { | |
243 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
244 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(nile_state); break; | |
245 | ||
246 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
247 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( nile ); break; | |
248 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
249 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
250 | ||
251 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
252 | case DEVINFO_STR_NAME: strcpy(info->s, "NiLe"); break; | |
253 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Seta custom"); break; | |
254 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
255 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
256 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
257 | } | |
258 | } | |
259 | ||
260 | ||
261 | 233 | const device_type NILE = &device_creator<nile_device>; |
262 | 234 | |
263 | 235 | nile_device::nile_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
379 | 379 | chip->start &= 0xfffff; chip->end &= 0xfffff; |
380 | 380 | } |
381 | 381 | |
382 | ||
383 | ||
384 | /************************************************************************** | |
385 | * Generic get_info | |
386 | **************************************************************************/ | |
387 | ||
388 | DEVICE_GET_INFO( es8712 ) | |
389 | { | |
390 | switch (state) | |
391 | { | |
392 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
393 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(es8712_state); break; | |
394 | ||
395 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
396 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( es8712 ); break; | |
397 | case DEVINFO_FCT_STOP: /* nothing */ break; | |
398 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME( es8712 ); break; | |
399 | ||
400 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
401 | case DEVINFO_STR_NAME: strcpy(info->s, "ES8712"); break; | |
402 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Excellent Systems ADPCM"); break; | |
403 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
404 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
405 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
406 | } | |
407 | } | |
408 | ||
409 | ||
410 | 382 | const device_type ES8712 = &device_creator<es8712_device>; |
411 | 383 | |
412 | 384 | es8712_device::es8712_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
765 | 765 | #endif |
766 | 766 | } |
767 | 767 | |
768 | ||
769 | /************************************************************************** | |
770 | * Generic get_info | |
771 | **************************************************************************/ | |
772 | ||
773 | DEVICE_GET_INFO( nesapu ) | |
774 | { | |
775 | switch (state) | |
776 | { | |
777 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
778 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(nesapu_state); break; | |
779 | ||
780 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
781 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( nesapu ); break; | |
782 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
783 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
784 | ||
785 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
786 | case DEVINFO_STR_NAME: strcpy(info->s, "N2A03"); break; | |
787 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Nintendo custom"); break; | |
788 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
789 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
790 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
791 | } | |
792 | } | |
793 | ||
794 | ||
795 | 768 | const device_type NES = &device_creator<nesapu_device>; |
796 | 769 | |
797 | 770 | nesapu_device::nesapu_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
131 | 131 | WRITE8_DEVICE_HANDLER( ymf262_data_a_w ) { ymf262_w(device, 1, data); } |
132 | 132 | WRITE8_DEVICE_HANDLER( ymf262_data_b_w ) { ymf262_w(device, 3, data); } |
133 | 133 | |
134 | ||
135 | /************************************************************************** | |
136 | * Generic get_info | |
137 | **************************************************************************/ | |
138 | ||
139 | DEVICE_GET_INFO( ymf262 ) | |
140 | { | |
141 | switch (state) | |
142 | { | |
143 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
144 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(ymf262_state); break; | |
145 | ||
146 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
147 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( ymf262 ); break; | |
148 | case DEVINFO_FCT_STOP: info->stop = DEVICE_STOP_NAME( ymf262 ); break; | |
149 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME( ymf262 ); break; | |
150 | ||
151 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
152 | case DEVINFO_STR_NAME: strcpy(info->s, "YMF262"); break; | |
153 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Yamaha FM"); break; | |
154 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
155 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
156 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
157 | } | |
158 | } | |
159 | ||
160 | ||
161 | 134 | const device_type YMF262 = &device_creator<ymf262_device>; |
162 | 135 | |
163 | 136 | ymf262_device::ymf262_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
135 | 135 | // MACROS |
136 | 136 | //************************************************************************** |
137 | 137 | |
138 | // macro for declaring the configuration and device classes of a legacy device | |
139 | #define _DECLARE_LEGACY_DEVICE(name, basename, deviceclass, basedeviceclass) \ | |
140 | \ | |
141 | DEVICE_GET_INFO( basename ); \ | |
142 | \ | |
143 | class deviceclass : public basedeviceclass \ | |
144 | { \ | |
145 | public: \ | |
146 | deviceclass(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, UINT32 clock); \ | |
147 | }; \ | |
148 | \ | |
149 | extern const device_type name | |
150 | ||
151 | // macro for defining the implementation needed for configuration and device classes | |
152 | #define _DEFINE_LEGACY_DEVICE(name, basename, deviceclass, basedeviceclass) \ | |
153 | \ | |
154 | deviceclass::deviceclass(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, UINT32 clock) \ | |
155 | : basedeviceclass(mconfig, type, tag, owner, clock, DEVICE_GET_INFO_NAME(basename)) \ | |
156 | { \ | |
157 | } \ | |
158 | \ | |
159 | const device_type name = &legacy_device_creator<deviceclass> | |
160 | ||
161 | 138 | // this template function creates a stub which constructs a device |
162 | 139 | template<class _DeviceClass> |
163 | 140 | device_t *legacy_device_creator(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
165 | 142 | return global_alloc(_DeviceClass(mconfig, &legacy_device_creator<_DeviceClass>, tag, owner, clock)); |
166 | 143 | } |
167 | 144 | |
168 | ||
169 | // reduced macros that are easier to use, and map to the above two macros | |
170 | #define DECLARE_LEGACY_DEVICE(name, basename) _DECLARE_LEGACY_DEVICE(name, basename, basename##_device, legacy_device_base) | |
171 | #define DECLARE_LEGACY_SOUND_DEVICE(name, basename) _DECLARE_LEGACY_DEVICE(name, basename, basename##_device, legacy_sound_device_base) | |
172 | ||
173 | #define DEFINE_LEGACY_DEVICE(name, basename) _DEFINE_LEGACY_DEVICE(name, basename, basename##_device, legacy_device_base) | |
174 | #define DEFINE_LEGACY_SOUND_DEVICE(name, basename) _DEFINE_LEGACY_DEVICE(name, basename, basename##_device, legacy_sound_device_base) | |
175 | ||
176 | ||
177 | // macros to wrap legacy device functions | |
178 | #define DEVICE_GET_INFO_NAME(name) device_get_config_##name | |
179 | #define DEVICE_GET_INFO(name) void DEVICE_GET_INFO_NAME(name)(const device_t *device, UINT32 state, deviceinfo *info) | |
180 | #define DEVICE_GET_INFO_CALL(name) DEVICE_GET_INFO_NAME(name)(device, state, info) | |
181 | ||
182 | 145 | #define DEVICE_START_NAME(name) device_start_##name |
183 | 146 | #define DEVICE_START(name) void DEVICE_START_NAME(name)(device_t *device) |
184 | 147 | #define DEVICE_START_CALL(name) DEVICE_START_NAME(name)(device) |
r17616 | r17617 | |
195 | 158 | // TYPE DEFINITIONS |
196 | 159 | //************************************************************************** |
197 | 160 | |
198 | union deviceinfo; | |
199 | class machine_config; | |
200 | 161 | class device_t; |
201 | 162 | |
202 | 163 | char *get_temp_string_buffer(void); |
203 | resource_pool &machine_get_pool(running_machine &machine); | |
204 | ||
205 | ||
206 | // device interface function types | |
207 | typedef void (*device_get_config_func)(const device_t *device, UINT32 state, deviceinfo *info); | |
208 | ||
209 | 164 | typedef void (*device_start_func)(device_t *device); |
210 | 165 | typedef void (*device_stop_func)(device_t *device); |
211 | 166 | typedef void (*device_reset_func)(device_t *device); |
212 | 167 | |
213 | // the actual deviceinfo union | |
214 | union deviceinfo | |
215 | { | |
216 | INT64 i; // generic integers | |
217 | void * p; // generic pointers | |
218 | genf * f; // generic function pointers | |
219 | char * s; // generic strings | |
220 | ||
221 | device_start_func start; // DEVINFO_FCT_START | |
222 | device_stop_func stop; // DEVINFO_FCT_STOP | |
223 | device_reset_func reset; // DEVINFO_FCT_RESET | |
224 | const rom_entry * romregion; // DEVINFO_PTR_ROM_REGION | |
225 | machine_config_constructor machine_config; // DEVINFO_PTR_MACHINE_CONFIG | |
226 | ioport_constructor ipt; // DEVINFO_PTR_INPUT_PORTS | |
227 | address_map_constructor internal_map8; // DEVINFO_PTR_INTERNAL_MEMORY_MAP | |
228 | address_map_constructor internal_map16; // DEVINFO_PTR_INTERNAL_MEMORY_MAP | |
229 | address_map_constructor internal_map32; // DEVINFO_PTR_INTERNAL_MEMORY_MAP | |
230 | address_map_constructor internal_map64; // DEVINFO_PTR_INTERNAL_MEMORY_MAP | |
231 | address_map_constructor default_map8; // DEVINFO_PTR_DEFAULT_MEMORY_MAP | |
232 | address_map_constructor default_map16; // DEVINFO_PTR_DEFAULT_MEMORY_MAP | |
233 | address_map_constructor default_map32; // DEVINFO_PTR_DEFAULT_MEMORY_MAP | |
234 | address_map_constructor default_map64; // DEVINFO_PTR_DEFAULT_MEMORY_MAP | |
235 | }; | |
236 | ||
237 | ||
238 | // ======================> legacy_device_base | |
239 | ||
240 | // legacy_device_base serves as a common base class for legacy devices | |
241 | class legacy_device_base : public device_t | |
242 | { | |
243 | protected: | |
244 | // construction/destruction | |
245 | legacy_device_base(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, UINT32 clock, device_get_config_func get_config); | |
246 | virtual ~legacy_device_base(); | |
247 | ||
248 | public: | |
249 | // access to legacy token | |
250 | void *token() const { assert(m_token != NULL); return m_token; } | |
251 | ||
252 | protected: | |
253 | // device-level overrides | |
254 | virtual const rom_entry *device_rom_region() const { return reinterpret_cast<const rom_entry *>(get_legacy_ptr(DEVINFO_PTR_ROM_REGION)); } | |
255 | virtual machine_config_constructor device_mconfig_additions() const { return reinterpret_cast<machine_config_constructor>(get_legacy_ptr(DEVINFO_PTR_MACHINE_CONFIG)); } | |
256 | virtual ioport_constructor device_input_ports() const { return reinterpret_cast<ioport_constructor>(get_legacy_ptr(DEVINFO_PTR_INPUT_PORTS)); } | |
257 | virtual void device_start(); | |
258 | virtual void device_reset(); | |
259 | virtual void device_stop(); | |
260 | ||
261 | // access to legacy configuration info | |
262 | INT64 get_legacy_int(UINT32 state) const; | |
263 | void *get_legacy_ptr(UINT32 state) const; | |
264 | genf *get_legacy_fct(UINT32 state) const; | |
265 | const char *get_legacy_string(UINT32 state) const; | |
266 | ||
267 | // configuration state | |
268 | device_get_config_func m_get_config_func; | |
269 | ||
270 | // internal state | |
271 | void * m_token; | |
272 | }; | |
273 | ||
274 | ||
275 | ||
276 | // ======================> legacy_sound_device_base | |
277 | ||
278 | // legacy_sound_device is a legacy_device_base with a sound interface | |
279 | class legacy_sound_device_base : public legacy_device_base, | |
280 | public device_sound_interface | |
281 | { | |
282 | protected: | |
283 | // construction/destruction | |
284 | legacy_sound_device_base(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, UINT32 clock, device_get_config_func get_config); | |
285 | ||
286 | // sound stream update overrides | |
287 | virtual void sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples); | |
288 | }; | |
289 | ||
290 | ||
291 | ||
292 | 168 | #endif /* __DEVLEGCY_H__ */ |
r17616 | r17617 | |
---|---|---|
57 | 57 | $(EMUOBJ)/devcb.o \ |
58 | 58 | $(EMUOBJ)/devcpu.o \ |
59 | 59 | $(EMUOBJ)/device.o \ |
60 | $(EMUOBJ)/devlegcy.o \ | |
61 | 60 | $(EMUOBJ)/didisasm.o \ |
62 | 61 | $(EMUOBJ)/diexec.o \ |
63 | 62 | $(EMUOBJ)/diimage.o \ |
r17616 | r17617 | |
---|---|---|
354 | 354 | adc1213x->acq_time = ADC1213X_ACQUISITION_TIME_10_CCLK; |
355 | 355 | } |
356 | 356 | |
357 | /*------------------------------------------------- | |
358 | device definition | |
359 | -------------------------------------------------*/ | |
360 | ||
361 | DEVICE_GET_INFO(adc12138) | |
362 | { | |
363 | switch (state) | |
364 | { | |
365 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(adc12138_state); break; | |
366 | ||
367 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(adc12138); break; | |
368 | ||
369 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(adc12138); break; | |
370 | ||
371 | case DEVINFO_STR_NAME: strcpy(info->s, "A/D Converter 12138"); break; | |
372 | } | |
373 | } | |
374 | ||
375 | DEVICE_GET_INFO(adc12130) | |
376 | { | |
377 | switch (state) | |
378 | { | |
379 | case DEVINFO_STR_NAME: strcpy(info->s, "A/D Converter 12130"); break; | |
380 | default: DEVICE_GET_INFO_CALL(adc12138); break; | |
381 | } | |
382 | } | |
383 | ||
384 | DEVICE_GET_INFO(adc12132) | |
385 | { | |
386 | switch (state) | |
387 | { | |
388 | case DEVINFO_STR_NAME: strcpy(info->s, "A/D Converter 12132"); break; | |
389 | default: DEVICE_GET_INFO_CALL(adc12138); break; | |
390 | } | |
391 | } | |
392 | ||
393 | 357 | const device_type ADC12130 = &device_creator<adc12130_device>; |
394 | 358 | |
395 | 359 | adc12130_device::adc12130_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
176 | 176 | state->last_output[1] = -1; |
177 | 177 | } |
178 | 178 | |
179 | DEVICE_GET_INFO(ttl74153) | |
180 | { | |
181 | switch (state) | |
182 | { | |
183 | ||
184 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(ttl74153_state); break; | |
185 | ||
186 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(ttl74153); break; | |
187 | ||
188 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(ttl74153); break; | |
189 | ||
190 | case DEVINFO_STR_NAME: strcpy(info->s, "74153"); break; | |
191 | } | |
192 | } | |
193 | ||
194 | 179 | const device_type TTL74153 = &device_creator<ttl74153_device>; |
195 | 180 | |
196 | 181 | ttl74153_device::ttl74153_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
260 | 260 | return tms->data; |
261 | 261 | } |
262 | 262 | |
263 | /*------------------------------------------------- | |
264 | TMS 6100 device definition | |
265 | -------------------------------------------------*/ | |
266 | ||
267 | DEVICE_GET_INFO(tms6100) | |
268 | { | |
269 | switch (state) | |
270 | { | |
271 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(tms6100_state); break; | |
272 | ||
273 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(tms6100); break; | |
274 | ||
275 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(tms6100); break; | |
276 | ||
277 | case DEVINFO_STR_NAME: strcpy(info->s, "TMS6100"); break; | |
278 | } | |
279 | } | |
280 | ||
281 | DEVICE_GET_INFO(m58819) | |
282 | { | |
283 | switch (state) | |
284 | { | |
285 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(m58819); break; | |
286 | case DEVINFO_STR_NAME: strcpy(info->s, "M58819"); break; | |
287 | default: DEVICE_GET_INFO_CALL(tms6100); break; | |
288 | } | |
289 | } | |
290 | ||
291 | 263 | const device_type TMS6100 = &device_creator<tms6100_device>; |
292 | 264 | |
293 | 265 | tms6100_device::tms6100_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
584 | 584 | } |
585 | 585 | |
586 | 586 | |
587 | /*------------------------------------------------- | |
588 | device get info callback | |
589 | -------------------------------------------------*/ | |
590 | ||
591 | static DEVICE_GET_INFO( smc91c9x ) | |
592 | { | |
593 | switch (state) | |
594 | { | |
595 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
596 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(smc91c9x_state); break; | |
597 | ||
598 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
599 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(smc91c9x); break; | |
600 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(smc91c9x);break; | |
601 | ||
602 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
603 | case DEVINFO_STR_NAME: /* provided by subclasses */ break; | |
604 | case DEVINFO_STR_FAMILY: strcpy(info->s, "SMC91C9X Ethernet Controller");break; | |
605 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
606 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
607 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
608 | } | |
609 | } | |
610 | ||
611 | DEVICE_GET_INFO( smc91c94 ) | |
612 | { | |
613 | switch (state) | |
614 | { | |
615 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
616 | case DEVINFO_STR_NAME: strcpy(info->s, "SMC91C94"); break; | |
617 | default: DEVICE_GET_INFO_CALL(smc91c9x); break; | |
618 | } | |
619 | } | |
620 | ||
621 | DEVICE_GET_INFO( smc91c96 ) | |
622 | { | |
623 | switch (state) | |
624 | { | |
625 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
626 | case DEVINFO_STR_NAME: strcpy(info->s, "SMC91C96"); break; | |
627 | default: DEVICE_GET_INFO_CALL(smc91c9x); break; | |
628 | } | |
629 | } | |
630 | ||
631 | 587 | smc91c9x_device::smc91c9x_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock) |
632 | 588 | : device_t(mconfig, type, name, tag, owner, clock) |
633 | 589 | { |
r17616 | r17617 | |
---|---|---|
505 | 505 | adc083x->state = STATE_IDLE; |
506 | 506 | } |
507 | 507 | |
508 | /*------------------------------------------------- | |
509 | device definition | |
510 | -------------------------------------------------*/ | |
511 | ||
512 | DEVICE_GET_INFO(adc0831) | |
513 | { | |
514 | switch (state) | |
515 | { | |
516 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(adc0831_state); break; | |
517 | ||
518 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(adc0831); break; | |
519 | ||
520 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(adc0831); break; | |
521 | ||
522 | case DEVINFO_STR_NAME: strcpy(info->s, "A/D Converters 0831"); break; | |
523 | } | |
524 | } | |
525 | ||
526 | DEVICE_GET_INFO(adc0832) | |
527 | { | |
528 | switch (state) | |
529 | { | |
530 | case DEVINFO_STR_NAME: strcpy(info->s, "A/D Converters 0832"); break; | |
531 | default: DEVICE_GET_INFO_CALL(adc0831); break; | |
532 | } | |
533 | } | |
534 | ||
535 | DEVICE_GET_INFO(adc0834) | |
536 | { | |
537 | switch (state) | |
538 | { | |
539 | case DEVINFO_STR_NAME: strcpy(info->s, "A/D Converters 0834"); break; | |
540 | default: DEVICE_GET_INFO_CALL(adc0831); break; | |
541 | } | |
542 | } | |
543 | ||
544 | DEVICE_GET_INFO(adc0838) | |
545 | { | |
546 | switch (state) | |
547 | { | |
548 | case DEVINFO_STR_NAME: strcpy(info->s, "A/D Converters 0838"); break; | |
549 | default: DEVICE_GET_INFO_CALL(adc0831); break; | |
550 | } | |
551 | } | |
552 | ||
553 | 508 | const device_type ADC0831 = &device_creator<adc0831_device>; |
554 | 509 | |
555 | 510 | adc0831_device::adc0831_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
448 | 448 | pic8259->master = pic8259->sp_en_func(); |
449 | 449 | } |
450 | 450 | |
451 | ||
452 | DEVICE_GET_INFO( pic8259 ) { | |
453 | switch ( state ) { | |
454 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
455 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(pic8259_t); break; | |
456 | ||
457 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
458 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(pic8259); break; | |
459 | case DEVINFO_FCT_STOP: /* nothing */ break; | |
460 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(pic8259); break; | |
461 | ||
462 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
463 | case DEVINFO_STR_NAME: strcpy(info->s, "Intel PIC8259"); break; | |
464 | case DEVINFO_STR_FAMILY: strcpy(info->s, "PIC8259"); break; | |
465 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.00"); break; | |
466 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
467 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright the MAME and MESS Teams"); break; | |
468 | } | |
469 | } | |
470 | ||
471 | ||
472 | 451 | const device_type PIC8259 = &device_creator<pic8259_device>; |
473 | 452 | |
474 | 453 | pic8259_device::pic8259_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
301 | 301 | upd4701->cf = 1; |
302 | 302 | } |
303 | 303 | |
304 | /*------------------------------------------------- | |
305 | device definition | |
306 | -------------------------------------------------*/ | |
307 | ||
308 | DEVICE_GET_INFO(upd4701) | |
309 | { | |
310 | switch (state) | |
311 | { | |
312 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(upd4701_state); break; | |
313 | ||
314 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(upd4701); break; | |
315 | ||
316 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(upd4701); break; | |
317 | ||
318 | case DEVINFO_STR_NAME: strcpy(info->s, "NEC uPD4701 Encoder"); break; | |
319 | } | |
320 | } | |
321 | ||
322 | 304 | const device_type UPD4701 = &device_creator<upd4701_device>; |
323 | 305 | |
324 | 306 | upd4701_device::upd4701_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
2099 | 2099 | DEVICE_RESET_CALL( wd1770 ); |
2100 | 2100 | } |
2101 | 2101 | |
2102 | ||
2103 | /*************************************************************************** | |
2104 | DEVICE GETINFO | |
2105 | ***************************************************************************/ | |
2106 | ||
2107 | DEVICE_GET_INFO(wd1770) | |
2108 | { | |
2109 | switch (state) | |
2110 | { | |
2111 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(wd1770_state); break; | |
2112 | ||
2113 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(wd1770); break; | |
2114 | ||
2115 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(wd1770); break; | |
2116 | ||
2117 | case DEVINFO_STR_NAME: strcpy(info->s, "WD1770"); break; | |
2118 | } | |
2119 | } | |
2120 | ||
2121 | DEVICE_GET_INFO(fd1771) | |
2122 | { | |
2123 | switch (state) | |
2124 | { | |
2125 | case DEVINFO_STR_NAME: strcpy(info->s, "FD1771"); break; | |
2126 | default: DEVICE_GET_INFO_CALL(wd1770); break; | |
2127 | } | |
2128 | } | |
2129 | ||
2130 | DEVICE_GET_INFO(fd1781) | |
2131 | { | |
2132 | switch (state) | |
2133 | { | |
2134 | case DEVINFO_STR_NAME: strcpy(info->s, "FD1781"); break; | |
2135 | default: DEVICE_GET_INFO_CALL(wd1770); break; | |
2136 | } | |
2137 | } | |
2138 | ||
2139 | DEVICE_GET_INFO(fd1791) | |
2140 | { | |
2141 | switch (state) | |
2142 | { | |
2143 | case DEVINFO_STR_NAME: strcpy(info->s, "FD1791"); break; | |
2144 | default: DEVICE_GET_INFO_CALL(wd1770); break; | |
2145 | } | |
2146 | } | |
2147 | ||
2148 | DEVICE_GET_INFO(fd1792) | |
2149 | { | |
2150 | switch (state) | |
2151 | { | |
2152 | case DEVINFO_STR_NAME: strcpy(info->s, "FD1792"); break; | |
2153 | default: DEVICE_GET_INFO_CALL(wd1770); break; | |
2154 | } | |
2155 | } | |
2156 | ||
2157 | DEVICE_GET_INFO(fd1793) | |
2158 | { | |
2159 | switch (state) | |
2160 | { | |
2161 | case DEVINFO_STR_NAME: strcpy(info->s, "FD1793"); break; | |
2162 | default: DEVICE_GET_INFO_CALL(wd1770); break; | |
2163 | } | |
2164 | } | |
2165 | ||
2166 | DEVICE_GET_INFO(fd1794) | |
2167 | { | |
2168 | switch (state) | |
2169 | { | |
2170 | case DEVINFO_STR_NAME: strcpy(info->s, "FD1794"); break; | |
2171 | default: DEVICE_GET_INFO_CALL(wd1770); break; | |
2172 | } | |
2173 | } | |
2174 | ||
2175 | DEVICE_GET_INFO(fd1795) | |
2176 | { | |
2177 | switch (state) | |
2178 | { | |
2179 | case DEVINFO_STR_NAME: strcpy(info->s, "FD1795"); break; | |
2180 | default: DEVICE_GET_INFO_CALL(wd1770); break; | |
2181 | } | |
2182 | } | |
2183 | ||
2184 | DEVICE_GET_INFO(fd1797) | |
2185 | { | |
2186 | switch (state) | |
2187 | { | |
2188 | case DEVINFO_STR_NAME: strcpy(info->s, "FD1797"); break; | |
2189 | default: DEVICE_GET_INFO_CALL(wd1770); break; | |
2190 | } | |
2191 | } | |
2192 | ||
2193 | DEVICE_GET_INFO(fd1761) | |
2194 | { | |
2195 | switch (state) | |
2196 | { | |
2197 | case DEVINFO_STR_NAME: strcpy(info->s, "FD1761"); break; | |
2198 | default: DEVICE_GET_INFO_CALL(wd1770); break; | |
2199 | } | |
2200 | } | |
2201 | ||
2202 | DEVICE_GET_INFO(fd1762) | |
2203 | { | |
2204 | switch (state) | |
2205 | { | |
2206 | case DEVINFO_STR_NAME: strcpy(info->s, "FD1762"); break; | |
2207 | default: DEVICE_GET_INFO_CALL(wd1770); break; | |
2208 | } | |
2209 | } | |
2210 | ||
2211 | DEVICE_GET_INFO(fd1763) | |
2212 | { | |
2213 | switch (state) | |
2214 | { | |
2215 | case DEVINFO_STR_NAME: strcpy(info->s, "FD1763"); break; | |
2216 | default: DEVICE_GET_INFO_CALL(wd1770); break; | |
2217 | } | |
2218 | } | |
2219 | ||
2220 | DEVICE_GET_INFO(fd1764) | |
2221 | { | |
2222 | switch (state) | |
2223 | { | |
2224 | case DEVINFO_STR_NAME: strcpy(info->s, "FD1764"); break; | |
2225 | default: DEVICE_GET_INFO_CALL(wd1770); break; | |
2226 | } | |
2227 | } | |
2228 | ||
2229 | DEVICE_GET_INFO(fd1765) | |
2230 | { | |
2231 | switch (state) | |
2232 | { | |
2233 | case DEVINFO_STR_NAME: strcpy(info->s, "FD1765"); break; | |
2234 | default: DEVICE_GET_INFO_CALL(wd1770); break; | |
2235 | } | |
2236 | } | |
2237 | ||
2238 | DEVICE_GET_INFO(fd1767) | |
2239 | { | |
2240 | switch (state) | |
2241 | { | |
2242 | case DEVINFO_STR_NAME: strcpy(info->s, "FD1767"); break; | |
2243 | default: DEVICE_GET_INFO_CALL(wd1770); break; | |
2244 | } | |
2245 | } | |
2246 | ||
2247 | DEVICE_GET_INFO(wd2791) | |
2248 | { | |
2249 | switch (state) | |
2250 | { | |
2251 | case DEVINFO_STR_NAME: strcpy(info->s, "WD2791"); break; | |
2252 | default: DEVICE_GET_INFO_CALL(wd1770); break; | |
2253 | } | |
2254 | } | |
2255 | ||
2256 | DEVICE_GET_INFO(wd2793) | |
2257 | { | |
2258 | switch (state) | |
2259 | { | |
2260 | case DEVINFO_STR_NAME: strcpy(info->s, "WD2793"); break; | |
2261 | default: DEVICE_GET_INFO_CALL(wd1770); break; | |
2262 | } | |
2263 | } | |
2264 | ||
2265 | DEVICE_GET_INFO(wd2795) | |
2266 | { | |
2267 | switch (state) | |
2268 | { | |
2269 | case DEVINFO_STR_NAME: strcpy(info->s, "WD2795"); break; | |
2270 | default: DEVICE_GET_INFO_CALL(wd1770); break; | |
2271 | } | |
2272 | } | |
2273 | ||
2274 | DEVICE_GET_INFO(wd2797) | |
2275 | { | |
2276 | switch (state) | |
2277 | { | |
2278 | case DEVINFO_STR_NAME: strcpy(info->s, "WD2797"); break; | |
2279 | default: DEVICE_GET_INFO_CALL(wd1770); break; | |
2280 | } | |
2281 | } | |
2282 | ||
2283 | DEVICE_GET_INFO(wd1772) | |
2284 | { | |
2285 | switch (state) | |
2286 | { | |
2287 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(wd1772); break; | |
2288 | ||
2289 | case DEVINFO_STR_NAME: strcpy(info->s, "WD1772"); break; | |
2290 | ||
2291 | default: DEVICE_GET_INFO_CALL(wd1770); break; | |
2292 | } | |
2293 | } | |
2294 | ||
2295 | DEVICE_GET_INFO(wd1773) | |
2296 | { | |
2297 | switch (state) | |
2298 | { | |
2299 | case DEVINFO_STR_NAME: strcpy(info->s, "WD1773"); break; | |
2300 | default: DEVICE_GET_INFO_CALL(wd1770); break; | |
2301 | } | |
2302 | } | |
2303 | ||
2304 | DEVICE_GET_INFO(mb8866) | |
2305 | { | |
2306 | switch (state) | |
2307 | { | |
2308 | case DEVINFO_STR_NAME: strcpy(info->s, "MB8866"); break; | |
2309 | default: DEVICE_GET_INFO_CALL(wd1770); break; | |
2310 | } | |
2311 | } | |
2312 | ||
2313 | DEVICE_GET_INFO(mb8876) | |
2314 | { | |
2315 | switch (state) | |
2316 | { | |
2317 | case DEVINFO_STR_NAME: strcpy(info->s, "MB8876"); break; | |
2318 | default: DEVICE_GET_INFO_CALL(wd1770); break; | |
2319 | } | |
2320 | } | |
2321 | ||
2322 | DEVICE_GET_INFO(mb8877) | |
2323 | { | |
2324 | switch (state) | |
2325 | { | |
2326 | case DEVINFO_STR_NAME: strcpy(info->s, "MB8877"); break; | |
2327 | default: DEVICE_GET_INFO_CALL(wd1770); break; | |
2328 | } | |
2329 | } | |
2330 | ||
2331 | 2102 | const device_type FD1771 = &device_creator<fd1771_device>; |
2332 | 2103 | |
2333 | 2104 | fd1771_device::fd1771_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
161 | 161 | adc1038->sars = 1; |
162 | 162 | } |
163 | 163 | |
164 | /*------------------------------------------------- | |
165 | device definition | |
166 | -------------------------------------------------*/ | |
167 | ||
168 | DEVICE_GET_INFO(adc1038) | |
169 | { | |
170 | switch (state) | |
171 | { | |
172 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(adc1038_state); break; | |
173 | ||
174 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(adc1038); break; | |
175 | ||
176 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(adc1038); break; | |
177 | ||
178 | case DEVINFO_STR_NAME: strcpy(info->s, "A/D Converters 1038"); break; | |
179 | } | |
180 | } | |
181 | ||
182 | 164 | const device_type ADC1038 = &device_creator<adc1038_device>; |
183 | 165 | |
184 | 166 | adc1038_device::adc1038_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
232 | 232 | } |
233 | 233 | |
234 | 234 | |
235 | DEVICE_GET_INFO( latch8 ) | |
236 | { | |
237 | switch (state) | |
238 | { | |
239 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
240 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(latch8_t); break; | |
241 | ||
242 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
243 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(latch8);break; | |
244 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
245 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(latch8);break; | |
246 | ||
247 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
248 | case DEVINFO_STR_NAME: strcpy(info->s, "8 bit latch"); break; | |
249 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Latches"); break; | |
250 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
251 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
252 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
253 | } | |
254 | } | |
255 | ||
256 | 235 | const device_type LATCH8 = &device_creator<latch8_device>; |
257 | 236 | |
258 | 237 | latch8_device::latch8_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
68 | 68 | mb14241->shift_count = 0; |
69 | 69 | } |
70 | 70 | |
71 | DEVICE_GET_INFO(mb14241) | |
72 | { | |
73 | switch (state) | |
74 | { | |
75 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(mb14241_state); break; | |
76 | ||
77 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(mb14241); break; | |
78 | ||
79 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(mb14241); break; | |
80 | ||
81 | case DEVINFO_STR_NAME: strcpy(info->s, "MB14241"); break; | |
82 | } | |
83 | } | |
84 | ||
85 | 71 | const device_type MB14241 = &device_creator<mb14241_device>; |
86 | 72 | |
87 | 73 | mb14241_device::mb14241_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
1943 | 1943 | SLOT_INTERFACE("hdd", IDE_HARDDISK) |
1944 | 1944 | SLOT_INTERFACE_END |
1945 | 1945 | |
1946 | /*------------------------------------------------- | |
1947 | device get info callback | |
1948 | -------------------------------------------------*/ | |
1949 | ||
1950 | DEVICE_GET_INFO( ide_controller ) | |
1951 | { | |
1952 | switch (state) | |
1953 | { | |
1954 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
1955 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(ide_state); break; | |
1956 | ||
1957 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
1958 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(ide_controller); break; | |
1959 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(ide_controller);break; | |
1960 | ||
1961 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
1962 | case DEVINFO_STR_NAME: strcpy(info->s, "IDE Controller"); break; | |
1963 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Disk Controller"); break; | |
1964 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
1965 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
1966 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
1967 | } | |
1968 | } | |
1969 | ||
1970 | ||
1971 | 1946 | const device_type IDE_CONTROLLER = &device_creator<ide_controller_device>; |
1972 | 1947 | |
1973 | 1948 | ide_controller_device::ide_controller_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
214 | 214 | state->last_enable_output = -1; |
215 | 215 | } |
216 | 216 | |
217 | ||
218 | DEVICE_GET_INFO(ttl74148) | |
219 | { | |
220 | switch (state) | |
221 | { | |
222 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(ttl74148_state); break; | |
223 | ||
224 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(ttl74148); break; | |
225 | ||
226 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(ttl74148); break; | |
227 | ||
228 | case DEVINFO_STR_NAME: strcpy(info->s, "74148"); break; | |
229 | } | |
230 | } | |
231 | ||
232 | 217 | const device_type TTL74148 = &device_creator<ttl74148_device>; |
233 | 218 | |
234 | 219 | ttl74148_device::ttl74148_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
903 | 903 | duart68681->channel[1].tx_timer->adjust(attotime::never, 1); |
904 | 904 | } |
905 | 905 | |
906 | /*------------------------------------------------- | |
907 | device get info callback | |
908 | -------------------------------------------------*/ | |
909 | ||
910 | DEVICE_GET_INFO(duart68681) | |
911 | { | |
912 | switch (state) | |
913 | { | |
914 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
915 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(duart68681_state); break; | |
916 | ||
917 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
918 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(duart68681); break; | |
919 | case DEVINFO_FCT_STOP: /* nothing */ break; | |
920 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(duart68681);break; | |
921 | ||
922 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
923 | case DEVINFO_STR_NAME: strcpy(info->s, "DUART 68681"); break; | |
924 | case DEVINFO_STR_FAMILY: strcpy(info->s, "DUART"); break; | |
925 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
926 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
927 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
928 | } | |
929 | } | |
930 | ||
931 | 906 | const device_type DUART68681 = &device_creator<duart68681_device>; |
932 | 907 | |
933 | 908 | duart68681_device::duart68681_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
521 | 521 | upd4990a->command_line = 0; |
522 | 522 | } |
523 | 523 | |
524 | /*------------------------------------------------- | |
525 | device definition | |
526 | -------------------------------------------------*/ | |
527 | ||
528 | DEVICE_GET_INFO(upd4990a) | |
529 | { | |
530 | switch (state) | |
531 | { | |
532 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(upd4990a_state); break; | |
533 | ||
534 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(upd4990a); break; | |
535 | ||
536 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(upd4990a); break; | |
537 | ||
538 | case DEVINFO_STR_NAME: strcpy(info->s, "NEC uPD4990A"); break; | |
539 | } | |
540 | } | |
541 | ||
542 | 524 | const device_type UPD4990A = &device_creator<upd4990a_device>; |
543 | 525 | |
544 | 526 | upd4990a_device::upd4990a_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
222 | 222 | rp5h01->old_clock = -1; |
223 | 223 | } |
224 | 224 | |
225 | /*------------------------------------------------- | |
226 | device definition | |
227 | -------------------------------------------------*/ | |
228 | ||
229 | DEVICE_GET_INFO(rp5h01) | |
230 | { | |
231 | switch (state) | |
232 | { | |
233 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(rp5h01_state); break; | |
234 | ||
235 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(rp5h01); break; | |
236 | ||
237 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(rp5h01); break; | |
238 | ||
239 | case DEVINFO_STR_NAME: strcpy(info->s, "RP5H01"); break; | |
240 | } | |
241 | } | |
242 | ||
243 | 225 | const device_type RP5H01 = &device_creator<rp5h01_device>; |
244 | 226 | |
245 | 227 | rp5h01_device::rp5h01_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
197 | 197 | tpi6525->in_c = 0xff; |
198 | 198 | } |
199 | 199 | |
200 | ||
201 | DEVICE_GET_INFO( tpi6525 ) | |
202 | { | |
203 | switch (state) | |
204 | { | |
205 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
206 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(tpi6525_state); break; | |
207 | ||
208 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
209 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( tpi6525 ); break; | |
210 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
211 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME( tpi6525 ); break; | |
212 | ||
213 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
214 | case DEVINFO_STR_NAME: strcpy(info->s, "6525 TPI"); break; | |
215 | case DEVINFO_STR_FAMILY: strcpy(info->s, "6525 TPI"); break; | |
216 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
217 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
218 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MESS Team"); break; | |
219 | } | |
220 | } | |
221 | ||
222 | ||
223 | 200 | /*************************************************************************** |
224 | 201 | IMPLEMENTATION |
225 | 202 | ***************************************************************************/ |
r17616 | r17617 | |
---|---|---|
231 | 231 | } |
232 | 232 | |
233 | 233 | |
234 | DEVICE_GET_INFO( k053252 ) | |
235 | { | |
236 | switch (state) | |
237 | { | |
238 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
239 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(k053252_state); break; | |
240 | ||
241 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
242 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(k053252); break; | |
243 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
244 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(k053252); break; | |
245 | ||
246 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
247 | case DEVINFO_STR_NAME: strcpy(info->s, "Konami 053252"); break; | |
248 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Konami Video IC"); break; | |
249 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
250 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
251 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MAME Team"); break; | |
252 | } | |
253 | } | |
254 | ||
255 | 234 | const device_type K053252 = &device_creator<k053252_device>; |
256 | 235 | |
257 | 236 | k053252_device::k053252_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
266 | 266 | mb87078_reset_comp_w(device, 1); |
267 | 267 | } |
268 | 268 | |
269 | DEVICE_GET_INFO(mb87078) | |
270 | { | |
271 | switch (state) | |
272 | { | |
273 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(mb87078_state); break; | |
274 | ||
275 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(mb87078); break; | |
276 | ||
277 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(mb87078); break; | |
278 | ||
279 | case DEVINFO_STR_NAME: strcpy(info->s, "Fujitsu MB87078"); break; | |
280 | } | |
281 | } | |
282 | ||
283 | 269 | const device_type MB87078 = &device_creator<mb87078_device>; |
284 | 270 | |
285 | 271 | mb87078_device::mb87078_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
1154 | 1154 | } |
1155 | 1155 | } |
1156 | 1156 | |
1157 | ||
1158 | DEVICE_GET_INFO( pit8253 ) { | |
1159 | switch ( state ) { | |
1160 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
1161 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(pit8253_t); break; | |
1162 | ||
1163 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
1164 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(pit8253); break; | |
1165 | case DEVINFO_FCT_STOP: /* nothing */ break; | |
1166 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(pit8253); break; | |
1167 | ||
1168 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
1169 | case DEVINFO_STR_NAME: strcpy(info->s, "Intel PIT8253"); break; | |
1170 | case DEVINFO_STR_FAMILY: strcpy(info->s, "PIT8253"); break; | |
1171 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.00"); break; | |
1172 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
1173 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright the MAME and MESS Teams"); break; | |
1174 | } | |
1175 | } | |
1176 | ||
1177 | ||
1178 | DEVICE_GET_INFO( pit8254 ) { | |
1179 | switch ( state ) { | |
1180 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
1181 | case DEVINFO_STR_NAME: strcpy(info->s, "Intel PIT8254"); break; | |
1182 | ||
1183 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
1184 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(pit8254); break; | |
1185 | ||
1186 | default: DEVICE_GET_INFO_CALL(pit8253); break; | |
1187 | } | |
1188 | } | |
1189 | ||
1190 | ||
1191 | 1157 | const device_type PIT8253 = &device_creator<pit8253_device>; |
1192 | 1158 | |
1193 | 1159 | pit8253_device::pit8253_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
249 | 249 | } |
250 | 250 | |
251 | 251 | |
252 | DEVICE_GET_INFO( wswan_sound ) | |
253 | { | |
254 | switch (state) | |
255 | { | |
256 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
257 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(wswan_sound_state); break; | |
258 | ||
259 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
260 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(wswan_sound); break; | |
261 | ||
262 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
263 | case DEVINFO_STR_NAME: strcpy(info->s, "WonderSwan Custom"); break; | |
264 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
265 | } | |
266 | } | |
267 | ||
268 | 252 | const device_type WSWAN = &device_creator<wswan_sound_device>; |
269 | 253 | |
270 | 254 | wswan_sound_device::wswan_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
188 | 188 | } |
189 | 189 | |
190 | 190 | |
191 | DEVICE_GET_INFO( mac_sound ) | |
192 | { | |
193 | switch (state) | |
194 | { | |
195 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
196 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(mac_sound); break; | |
197 | ||
198 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
199 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(mac_sound); break; | |
200 | ||
201 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
202 | case DEVINFO_STR_NAME: strcpy(info->s, "Mac Custom"); break; | |
203 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
204 | } | |
205 | } | |
206 | ||
207 | 191 | const device_type MAC_SOUND = &device_creator<mac_sound_device>; |
208 | 192 | |
209 | 193 | mac_sound_device::mac_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
66 | 66 | token->mixer_channel = device->machine().sound().stream_alloc(*device, 0, 1, device->machine().sample_rate(), 0, gmaster_update); |
67 | 67 | } |
68 | 68 | |
69 | ||
70 | DEVICE_GET_INFO( gmaster_sound ) | |
71 | { | |
72 | switch (state) | |
73 | { | |
74 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
75 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(gmaster_sound); break; | |
76 | ||
77 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
78 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(gmaster_sound); break; | |
79 | ||
80 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
81 | case DEVINFO_STR_NAME: strcpy(info->s, "Game Master Custom"); break; | |
82 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
83 | } | |
84 | } | |
85 | ||
86 | 69 | const device_type GMASTER = &device_creator<gmaster_sound_device>; |
87 | 70 | |
88 | 71 | gmaster_sound_device::gmaster_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
459 | 459 | } |
460 | 460 | |
461 | 461 | |
462 | DEVICE_GET_INFO( upd1771c ) | |
463 | { | |
464 | switch (state) | |
465 | { | |
466 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
467 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(upd1771_state); break; | |
468 | ||
469 | /* --- the following bits of info are returned as pointers to functions --- */ | |
470 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( upd1771c ); break; | |
471 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME( upd1771c ); break; | |
472 | case DEVINFO_FCT_STOP: info->stop = DEVICE_STOP_NAME( upd1771c ); break; | |
473 | ||
474 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
475 | case DEVINFO_STR_NAME: strcpy(info->s, "NEC uPD1771C 017"); break; | |
476 | case DEVINFO_STR_FAMILY: strcpy(info->s, "NEC uPD1771"); break; | |
477 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
478 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
479 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright the MAME & MESS Teams"); break; | |
480 | } | |
481 | } | |
482 | ||
483 | 462 | const device_type UPD1771C = &device_creator<upd1771c_device>; |
484 | 463 | |
485 | 464 | upd1771c_device::upd1771c_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
701 | 701 | } |
702 | 702 | |
703 | 703 | |
704 | /************************** configuration ****************************/ | |
705 | ||
706 | DEVICE_GET_INFO( mea8000 ) { | |
707 | switch ( state ) { | |
708 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
709 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(mea8000_t); break; | |
710 | ||
711 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
712 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(mea8000); break; | |
713 | case DEVINFO_FCT_STOP: /* nothing */ break; | |
714 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(mea8000); break; | |
715 | ||
716 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
717 | case DEVINFO_STR_NAME: strcpy(info->s, "Philips / Signetics MEA 8000 speech synthesizer"); break; | |
718 | case DEVINFO_STR_FAMILY: strcpy(info->s, "MEA8000"); break; | |
719 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.00"); break; | |
720 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
721 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright the MAME and MESS Teams"); break; | |
722 | } | |
723 | } | |
724 | ||
725 | 704 | const device_type MEA8000 = &device_creator<mea8000_device>; |
726 | 705 | |
727 | 706 | mea8000_device::mea8000_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
82 | 82 | token->channel = device->machine().sound().stream_alloc(*device, 0, 1, device->machine().sample_rate(), 0, vc4000_update); |
83 | 83 | } |
84 | 84 | |
85 | ||
86 | DEVICE_GET_INFO( vc4000_sound ) | |
87 | { | |
88 | switch (state) | |
89 | { | |
90 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
91 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(vc4000_sound); break; | |
92 | ||
93 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
94 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(vc4000_sound); break; | |
95 | ||
96 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
97 | case DEVINFO_STR_NAME: strcpy(info->s, "VC 4000 Custom"); break; | |
98 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
99 | } | |
100 | } | |
101 | ||
102 | 85 | const device_type VC4000 = &device_creator<vc4000_sound_device>; |
103 | 86 | |
104 | 87 | vc4000_sound_device::vc4000_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
132 | 132 | state->envelope = 0; |
133 | 133 | } |
134 | 134 | |
135 | ||
136 | DEVICE_GET_INFO( channelf_sound ) | |
137 | { | |
138 | switch (state) | |
139 | { | |
140 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
141 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(channelf_sound_state); break; | |
142 | ||
143 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
144 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(channelf_sound); break; | |
145 | ||
146 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
147 | case DEVINFO_STR_NAME: strcpy(info->s, "Channel F"); break; | |
148 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
149 | } | |
150 | } | |
151 | ||
152 | 135 | const device_type CHANNELF = &device_creator<channelf_sound_device>; |
153 | 136 | |
154 | 137 | channelf_sound_device::channelf_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
817 | 817 | |
818 | 818 | |
819 | 819 | |
820 | DEVICE_GET_INFO( dave_sound ) | |
821 | { | |
822 | switch (state) | |
823 | { | |
824 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
825 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(dave_t); break; | |
826 | ||
827 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
828 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(dave_sound); break; | |
829 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(dave_sound); break; | |
830 | ||
831 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
832 | case DEVINFO_STR_NAME: strcpy(info->s, "Dave"); break; | |
833 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
834 | } | |
835 | } | |
836 | ||
837 | 820 | const device_type DAVE = &device_creator<dave_sound_device>; |
838 | 821 | |
839 | 822 | dave_sound_device::dave_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
72 | 72 | } |
73 | 73 | |
74 | 74 | |
75 | DEVICE_GET_INFO( specimx_sound ) | |
76 | { | |
77 | switch (state) | |
78 | { | |
79 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
80 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(specimx_sound_state); break; | |
81 | ||
82 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
83 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(specimx_sound); break; | |
84 | ||
85 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
86 | case DEVINFO_STR_NAME: strcpy(info->s, "Specialist MX Custom"); break; | |
87 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
88 | } | |
89 | } | |
90 | ||
91 | 75 | const device_type SPECIMX = &device_creator<specimx_sound_device>; |
92 | 76 | |
93 | 77 | specimx_sound_device::specimx_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
143 | 143 | * Generic get_info |
144 | 144 | **************************************************************************/ |
145 | 145 | |
146 | DEVICE_GET_INFO( socrates_snd ) | |
147 | { | |
148 | switch (state) | |
149 | { | |
150 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
151 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(SocratesASIC); break; | |
152 | ||
153 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
154 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( socrates_snd ); break; | |
155 | ||
156 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
157 | case DEVINFO_STR_NAME: strcpy(info->s, "Socrates Sound"); break; | |
158 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Socrates Sound"); break; | |
159 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
160 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
161 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Jonathan Gevaryahu and The MESS Team"); break; | |
162 | } | |
163 | } | |
164 | ||
165 | 146 | const device_type SOCRATES = &device_creator<socrates_snd_device>; |
166 | 147 | |
167 | 148 | socrates_snd_device::socrates_snd_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
284 | 284 | t6721->writeindex = 0; |
285 | 285 | } |
286 | 286 | |
287 | ||
288 | /*------------------------------------------------- | |
289 | device definition | |
290 | -------------------------------------------------*/ | |
291 | ||
292 | DEVICE_GET_INFO(t6721) | |
293 | { | |
294 | switch (state) | |
295 | { | |
296 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(t6721_state); break; | |
297 | ||
298 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(t6721); break; | |
299 | ||
300 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(t6721); break; | |
301 | ||
302 | case DEVINFO_STR_NAME: strcpy(info->s, "Toshiba 6721A"); break; | |
303 | } | |
304 | } | |
305 | ||
306 | 287 | const device_type T6721 = &device_creator<t6721_device>; |
307 | 288 | |
308 | 289 | t6721_device::t6721_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
756 | 756 | } |
757 | 757 | |
758 | 758 | |
759 | DEVICE_GET_INFO( gameboy_sound ) | |
760 | { | |
761 | switch (state) | |
762 | { | |
763 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
764 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(gb_sound_t); break; | |
765 | ||
766 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
767 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(gameboy_sound); break; | |
768 | ||
769 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
770 | case DEVINFO_STR_NAME: strcpy(info->s, "LR35902"); break; | |
771 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
772 | } | |
773 | } | |
774 | ||
775 | 759 | const device_type GAMEBOY = &device_creator<gameboy_sound_device>; |
776 | 760 | |
777 | 761 | gameboy_sound_device::gameboy_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
501 | 501 | } |
502 | 502 | |
503 | 503 | |
504 | DEVICE_GET_INFO( lynx_sound ) | |
505 | { | |
506 | switch (state) | |
507 | { | |
508 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
509 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(lynx_sound_state); break; | |
510 | ||
511 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
512 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(lynx_sound); break; | |
513 | case DEVINFO_FCT_RESET: info->start = DEVICE_RESET_NAME(lynx_sound); break; | |
514 | ||
515 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
516 | case DEVINFO_STR_NAME: strcpy(info->s, "Mikey"); break; | |
517 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
518 | } | |
519 | } | |
520 | ||
521 | ||
522 | DEVICE_GET_INFO( lynx2_sound ) | |
523 | { | |
524 | switch (state) | |
525 | { | |
526 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
527 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(lynx_sound_state); break; | |
528 | ||
529 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
530 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(lynx2_sound); break; | |
531 | case DEVINFO_FCT_RESET: info->start = DEVICE_RESET_NAME(lynx_sound); break; | |
532 | ||
533 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
534 | case DEVINFO_STR_NAME: strcpy(info->s, "Mikey (Lynx II)"); break; | |
535 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
536 | } | |
537 | } | |
538 | ||
539 | 504 | const device_type LYNX = &device_creator<lynx_sound_device>; |
540 | 505 | |
541 | 506 | lynx_sound_device::lynx_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
298 | 298 | state->mixer_channel = device->machine().sound().stream_alloc(*device, 0, 2, device->machine().sample_rate(), 0, svision_update); |
299 | 299 | } |
300 | 300 | |
301 | ||
302 | DEVICE_GET_INFO( svision_sound ) | |
303 | { | |
304 | switch (state) | |
305 | { | |
306 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
307 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(svision_sound_state); break; | |
308 | ||
309 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
310 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(svision_sound); break; | |
311 | ||
312 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
313 | case DEVINFO_STR_NAME: strcpy(info->s, "Super Vision Custom"); break; | |
314 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
315 | } | |
316 | } | |
317 | ||
318 | 301 | const device_type SVISION = &device_creator<svision_sound_device>; |
319 | 302 | |
320 | 303 | svision_sound_device::svision_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
99 | 99 | strata->prot_regs[i] = device->machine().rand(); |
100 | 100 | } |
101 | 101 | |
102 | DEVICE_GET_INFO( strataflash ) | |
103 | { | |
104 | switch (state) | |
105 | { | |
106 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
107 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(strata_t); break; | |
108 | ||
109 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
110 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(strataflash); break; | |
111 | ||
112 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
113 | case DEVINFO_STR_NAME: strcpy(info->s, "Intel 28F640J5"); break; | |
114 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Intel 28F640J5"); break; | |
115 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
116 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
117 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MESS Team"); break; | |
118 | } | |
119 | } | |
120 | ||
121 | 102 | const device_type STRATAFLASH = &device_creator<strataflash_device>; |
122 | 103 | |
123 | 104 | strataflash_device::strataflash_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
434 | 434 | } |
435 | 435 | |
436 | 436 | |
437 | DEVICE_GET_INFO( mos6530 ) | |
438 | { | |
439 | switch (state) | |
440 | { | |
441 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
442 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(mos6530_state); break; | |
443 | ||
444 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
445 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(mos6530); break; | |
446 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
447 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(mos6530); break; | |
448 | ||
449 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
450 | case DEVINFO_STR_NAME: strcpy(info->s, "MOS6530"); break; | |
451 | case DEVINFO_STR_FAMILY: strcpy(info->s, "MOS6500"); break; | |
452 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
453 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
454 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MESS Team"); break; | |
455 | } | |
456 | } | |
457 | ||
458 | 437 | const device_type MOS6530 = &device_creator<mos6530_device>; |
459 | 438 | |
460 | 439 | mos6530_device::mos6530_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
1039 | 1039 | |
1040 | 1040 | |
1041 | 1041 | |
1042 | /************************** configuration ****************************/ | |
1043 | ||
1044 | ||
1045 | DEVICE_GET_INFO( mc6854 ) { | |
1046 | switch ( state ) { | |
1047 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
1048 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(mc6854_t); break; | |
1049 | ||
1050 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
1051 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(mc6854); break; | |
1052 | case DEVINFO_FCT_STOP: /* nothing */ break; | |
1053 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(mc6854); break; | |
1054 | ||
1055 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
1056 | case DEVINFO_STR_NAME: strcpy(info->s, "Motorola MC6854 ADLC"); break; | |
1057 | case DEVINFO_STR_FAMILY: strcpy(info->s, "MC6854"); break; | |
1058 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.00"); break; | |
1059 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
1060 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright the MAME and MESS Teams"); break; | |
1061 | } | |
1062 | } | |
1063 | ||
1064 | 1042 | const device_type MC6854 = &device_creator<mc6854_device>; |
1065 | 1043 | |
1066 | 1044 | mc6854_device::mc6854_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
609 | 609 | } |
610 | 610 | |
611 | 611 | |
612 | /************************** configuration ****************************/ | |
613 | ||
614 | ||
615 | DEVICE_GET_INFO( mc6846 ) { | |
616 | switch ( state ) { | |
617 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
618 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(mc6846_t); break; | |
619 | ||
620 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
621 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(mc6846); break; | |
622 | case DEVINFO_FCT_STOP: /* nothing */ break; | |
623 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(mc6846); break; | |
624 | ||
625 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
626 | case DEVINFO_STR_NAME: strcpy(info->s, "Motorola MC6846 programmable timer"); break; | |
627 | case DEVINFO_STR_FAMILY: strcpy(info->s, "MC6846"); break; | |
628 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.00"); break; | |
629 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
630 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright the MAME and MESS Teams"); break; | |
631 | } | |
632 | } | |
633 | ||
634 | 612 | const device_type MC6846 = &device_creator<mc6846_device>; |
635 | 613 | |
636 | 614 | mc6846_device::mc6846_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
178 | 178 | } |
179 | 179 | #endif |
180 | 180 | |
181 | ||
182 | /*------------------------------------------------- | |
183 | DEVICE_GET_INFO( sst39vf020 ) | |
184 | -------------------------------------------------*/ | |
185 | ||
186 | DEVICE_GET_INFO( sst39vf020 ) | |
187 | { | |
188 | switch (state) | |
189 | { | |
190 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
191 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(sst39vfx_t); break; | |
192 | ||
193 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
194 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(sst39vf020); break; | |
195 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
196 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
197 | ||
198 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
199 | case DEVINFO_STR_NAME: strcpy(info->s, "SST39VF020"); break; | |
200 | case DEVINFO_STR_FAMILY: strcpy(info->s, "SST39VFxx"); break; | |
201 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
202 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
203 | case DEVINFO_STR_CREDITS: /* Nothing */ break; | |
204 | } | |
205 | } | |
206 | ||
207 | DEVICE_GET_INFO( sst39vf400a ) | |
208 | { | |
209 | switch (state) | |
210 | { | |
211 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
212 | case DEVINFO_STR_NAME: strcpy(info->s, "SST39VF400A"); break; | |
213 | ||
214 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
215 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(sst39vf400a); break; | |
216 | ||
217 | default: DEVICE_GET_INFO_CALL(sst39vf020); break; | |
218 | } | |
219 | } | |
220 | ||
221 | 181 | const device_type SST39VF020 = &device_creator<sst39vf020_device>; |
222 | 182 | |
223 | 183 | sst39vf020_device::sst39vf020_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
417 | 417 | } |
418 | 418 | } |
419 | 419 | |
420 | DEVICE_GET_INFO(upd71071) | |
421 | { | |
422 | switch (state) | |
423 | { | |
424 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
425 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(upd71071_t); break; | |
426 | ||
427 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
428 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(upd71071); break; | |
429 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
430 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
431 | ||
432 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
433 | case DEVINFO_STR_NAME: strcpy(info->s, "NEC uPD71071"); break; | |
434 | case DEVINFO_STR_FAMILY: strcpy(info->s, "DMA Controller"); break; | |
435 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
436 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
437 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright the MESS Team"); break; | |
438 | } | |
439 | } | |
440 | ||
441 | 420 | READ8_DEVICE_HANDLER(upd71071_r) { return upd71071_read(device,offset); } |
442 | 421 | WRITE8_DEVICE_HANDLER(upd71071_w) { upd71071_write(device,offset,data); } |
443 | 422 |
r17616 | r17617 | |
---|---|---|
110 | 110 | e05a03->cndlp = 1; |
111 | 111 | } |
112 | 112 | |
113 | DEVICE_GET_INFO( e05a03 ) | |
114 | { | |
115 | switch (state) | |
116 | { | |
117 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
118 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(e05a03_state); break; | |
119 | ||
120 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
121 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(e05a03); break; | |
122 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
123 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(e05a03); break; | |
124 | ||
125 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
126 | case DEVINFO_STR_NAME: strcpy(info->s, "E05A03"); break; | |
127 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Epson printer gate array"); break; | |
128 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
129 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
130 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MESS Team"); break; | |
131 | } | |
132 | } | |
133 | ||
134 | ||
135 | 113 | /*************************************************************************** |
136 | 114 | IMPLEMENTATION |
137 | 115 | ***************************************************************************/ |
r17616 | r17617 | |
---|---|---|
1066 | 1066 | } |
1067 | 1067 | |
1068 | 1068 | |
1069 | DEVICE_GET_INFO( tap_990 ) | |
1070 | { | |
1071 | switch (state) | |
1072 | { | |
1073 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
1074 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(tap_990_t); break; | |
1075 | ||
1076 | /* --- the following bits of info are returned as pointers --- */ | |
1077 | case DEVINFO_PTR_MACHINE_CONFIG: info->machine_config = MACHINE_CONFIG_NAME(tap_990); break; | |
1078 | ||
1079 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
1080 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(tap_990); break; | |
1081 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
1082 | ||
1083 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
1084 | case DEVINFO_STR_NAME: strcpy(info->s, "Generic TI990 Tape Controller"); break; | |
1085 | case DEVINFO_STR_FAMILY: strcpy(info->s, "TI990 Tape Controller"); break; | |
1086 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
1087 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
1088 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright the MESS Team"); break; | |
1089 | } | |
1090 | } | |
1091 | ||
1092 | 1069 | const device_type TI990_TAPE_CTRL = &device_creator<tap_990_device>; |
1093 | 1070 | |
1094 | 1071 | tap_990_device::tap_990_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
146 | 146 | config = device->machine().root_device().ioport("apollo_config")->read(); |
147 | 147 | } |
148 | 148 | |
149 | /*------------------------------------------------- | |
150 | device get info callback | |
151 | -------------------------------------------------*/ | |
152 | ||
153 | DEVICE_GET_INFO(apollo_config) | |
154 | { | |
155 | switch (state) | |
156 | { | |
157 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
158 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(apollo_config); break; | |
159 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(apollo_config);break; | |
160 | ||
161 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
162 | case DEVINFO_STR_NAME: strcpy(info->s, "Apollo Configuration");break; | |
163 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Configuration"); break; | |
164 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
165 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
166 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
167 | } | |
168 | } | |
169 | ||
170 | 149 | class apollo_config_device : public device_t |
171 | 150 | { |
172 | 151 | public: |
r17616 | r17617 | |
---|---|---|
239 | 239 | } |
240 | 240 | |
241 | 241 | |
242 | /*------------------------------------------------- | |
243 | DEVICE_GET_INFO( ds1315 ) | |
244 | -------------------------------------------------*/ | |
245 | ||
246 | DEVICE_GET_INFO( ds1315 ) | |
247 | { | |
248 | switch (state) | |
249 | { | |
250 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
251 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(ds1315_t); break; | |
252 | ||
253 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
254 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(ds1315); break; | |
255 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
256 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
257 | ||
258 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
259 | case DEVINFO_STR_NAME: strcpy(info->s, "Dallas Semiconductor DS1315"); break; | |
260 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Dallas Semiconductor DS1315"); break; | |
261 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
262 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
263 | case DEVINFO_STR_CREDITS: /* Nothing */ break; | |
264 | } | |
265 | } | |
266 | ||
267 | 242 | const device_type DS1315 = &device_creator<ds1315_device>; |
268 | 243 | |
269 | 244 | ds1315_device::ds1315_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
115 | 115 | lpt->data = 0xff; |
116 | 116 | } |
117 | 117 | |
118 | DEVICE_GET_INFO( pc_lpt ) | |
119 | { | |
120 | switch (state) | |
121 | { | |
122 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
123 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(pc_lpt_state); break; | |
124 | ||
125 | /* --- the following bits of info are returned as pointers --- */ | |
126 | case DEVINFO_PTR_MACHINE_CONFIG: info->machine_config = MACHINE_CONFIG_NAME(pc_lpt); break; | |
127 | ||
128 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
129 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(pc_lpt); break; | |
130 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
131 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(pc_lpt); break; | |
132 | ||
133 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
134 | case DEVINFO_STR_NAME: strcpy(info->s, "PC-LPT"); break; | |
135 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Parallel port"); break; | |
136 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
137 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
138 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MESS Team"); break; | |
139 | } | |
140 | } | |
141 | ||
142 | ||
143 | 118 | /*************************************************************************** |
144 | 119 | IMPLEMENTATION |
145 | 120 | ***************************************************************************/ |
r17616 | r17617 | |
---|---|---|
2035 | 2035 | space->install_legacy_readwrite_handler( *device, 0x01f80020, 0x01f8003b, 0, 0, FUNC(s3c44b0_bdma_1_r), FUNC(s3c44b0_bdma_1_w)); |
2036 | 2036 | } |
2037 | 2037 | |
2038 | DEVICE_GET_INFO( s3c44b0 ) | |
2039 | { | |
2040 | switch ( state ) | |
2041 | { | |
2042 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
2043 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(s3c44b0_t); break; | |
2044 | // case DEVINFO_INT_CLASS: info->i = DEVICE_CLASS_PERIPHERAL; break; | |
2045 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
2046 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(s3c44b0); break; | |
2047 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(s3c44b0); break; | |
2048 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
2049 | case DEVINFO_STR_FAMILY: strcpy(info->s, "S3C44B0"); break; | |
2050 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.00"); break; | |
2051 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
2052 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright the MESS Team"); break; | |
2053 | case DEVINFO_STR_NAME: strcpy(info->s, "Samsung S3C44B0"); break; | |
2054 | } | |
2055 | } | |
2056 | ||
2057 | 2038 | const device_type S3C44B0 = &device_creator<s3c44b0_device>; |
2058 | 2039 | |
2059 | 2040 | s3c44b0_device::s3c44b0_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
103 | 103 | PROTOTYPES |
104 | 104 | *******************************************************************************/ |
105 | 105 | |
106 | DEVICE_GET_INFO( s3c44b0 ); | |
107 | ||
108 | 106 | VIDEO_START( s3c44b0 ); |
109 | 107 | SCREEN_UPDATE_RGB32( s3c44b0 ); |
110 | 108 |
r17616 | r17617 | |
---|---|---|
2808 | 2808 | mc68328_register_state_save(device); |
2809 | 2809 | } |
2810 | 2810 | |
2811 | DEVICE_GET_INFO( mc68328 ) | |
2812 | { | |
2813 | switch ( state ) | |
2814 | { | |
2815 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
2816 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(mc68328_t); break; | |
2817 | ||
2818 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
2819 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(mc68328); break; | |
2820 | case DEVINFO_FCT_STOP: /* nothing */ break; | |
2821 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(mc68328); break; | |
2822 | ||
2823 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
2824 | case DEVINFO_STR_NAME: strcpy(info->s, "Motorola MC68328 (DragonBall) Integrated Processor"); break; | |
2825 | case DEVINFO_STR_FAMILY: strcpy(info->s, "MC68328"); break; | |
2826 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.00"); break; | |
2827 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
2828 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright the MESS Teams and Ryan Holtz"); break; | |
2829 | } | |
2830 | } | |
2831 | ||
2832 | 2811 | const device_type MC68328 = &device_creator<mc68328_device>; |
2833 | 2812 | |
2834 | 2813 | mc68328_device::mc68328_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
377 | 377 | DEVICE_RESET_CALL( micropolis ); |
378 | 378 | } |
379 | 379 | |
380 | ||
381 | /*************************************************************************** | |
382 | DEVICE GETINFO | |
383 | ***************************************************************************/ | |
384 | ||
385 | DEVICE_GET_INFO(micropolis) | |
386 | { | |
387 | switch (state) | |
388 | { | |
389 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(micropolis_state); break; | |
390 | ||
391 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(micropolis); break; | |
392 | ||
393 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(micropolis); break; | |
394 | ||
395 | case DEVINFO_STR_NAME: strcpy(info->s, "MICROPOLIS"); break; | |
396 | } | |
397 | } | |
398 | ||
399 | 380 | const device_type MICROPOLIS = &device_creator<micropolis_device>; |
400 | 381 | |
401 | 382 | micropolis_device::micropolis_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
358 | 358 | prg->install_rom(0x0000, 0x07ff, 0, 0x7800, cpu->region()->base()); |
359 | 359 | } |
360 | 360 | |
361 | DEVICE_GET_INFO( tf20 ) | |
362 | { | |
363 | switch (state) | |
364 | { | |
365 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
366 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(tf20_state); break; | |
367 | ||
368 | /* --- the following bits of info are returned as pointers --- */ | |
369 | case DEVINFO_PTR_MACHINE_CONFIG: info->machine_config = MACHINE_CONFIG_NAME(tf20); break; | |
370 | case DEVINFO_PTR_ROM_REGION: info->romregion = ROM_NAME(tf20); break; | |
371 | ||
372 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
373 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(tf20); break; | |
374 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
375 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(tf20); break; | |
376 | ||
377 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
378 | case DEVINFO_STR_NAME: strcpy(info->s, "TF-20"); break; | |
379 | case DEVINFO_STR_SHORTNAME: strcpy(info->s, "tf20"); break; | |
380 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Floppy drive"); break; | |
381 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
382 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
383 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MESS Team"); break; | |
384 | } | |
385 | } | |
386 | ||
387 | 361 | const device_type TF20 = &device_creator<tf20_device>; |
388 | 362 | |
389 | 363 | tf20_device::tf20_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
461 | 461 | return dmac->reg[channel].eiv; |
462 | 462 | } |
463 | 463 | |
464 | DEVICE_GET_INFO(hd63450) | |
465 | { | |
466 | switch (state) | |
467 | { | |
468 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
469 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(hd63450_t); break; | |
470 | ||
471 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
472 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(hd63450); break; | |
473 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
474 | case DEVINFO_FCT_RESET: /*info->reset = DEVICE_RESET_NAME(hd63450);*/ break; | |
475 | ||
476 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
477 | case DEVINFO_STR_NAME: strcpy(info->s, "Hitachi HD63450"); break; | |
478 | case DEVINFO_STR_FAMILY: strcpy(info->s, "DMA Controller"); break; | |
479 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
480 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
481 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright the MESS Team"); break; | |
482 | } | |
483 | } | |
484 | ||
485 | 464 | READ16_DEVICE_HANDLER(hd63450_r) { return hd63450_read(device,offset,mem_mask); } |
486 | 465 | WRITE16_DEVICE_HANDLER(hd63450_w) { hd63450_write(device,offset,data,mem_mask); } |
487 | 466 |
r17616 | r17617 | |
---|---|---|
372 | 372 | device->save_item(NAME(kr2376->data)); |
373 | 373 | } |
374 | 374 | |
375 | DEVICE_GET_INFO( kr2376 ) | |
376 | { | |
377 | switch (state) | |
378 | { | |
379 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
380 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(kr2376_t); break; | |
381 | ||
382 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
383 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(kr2376); break; | |
384 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
385 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
386 | ||
387 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
388 | case DEVINFO_STR_NAME: strcpy(info->s, "SMC KR2376"); break; | |
389 | case DEVINFO_STR_FAMILY: strcpy(info->s, "SMC"); break; | |
390 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
391 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
392 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MESS Team"); break; | |
393 | } | |
394 | } | |
395 | ||
396 | 375 | const device_type KR2376 = &device_creator<kr2376_device>; |
397 | 376 | |
398 | 377 | kr2376_device::kr2376_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
735 | 735 | ***************************************************************************/ |
736 | 736 | |
737 | 737 | /*------------------------------------------------- |
738 | DEVICE_GET_INFO(applefdc_base) - device get info | |
739 | callback | |
740 | -------------------------------------------------*/ | |
741 | ||
742 | static DEVICE_GET_INFO(applefdc_base) | |
743 | { | |
744 | switch (state) | |
745 | { | |
746 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
747 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(applefdc_token); break; | |
748 | ||
749 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
750 | case DEVINFO_FCT_START: /* Nothing */ break; | |
751 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
752 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(applefdc); break; | |
753 | ||
754 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
755 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Apple FDC"); break; | |
756 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
757 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
758 | } | |
759 | } | |
760 | ||
761 | ||
762 | ||
763 | /*------------------------------------------------- | |
764 | 738 | DEVICE_START(oldfdc) - device start |
765 | 739 | callback |
766 | 740 | -------------------------------------------------*/ |
r17616 | r17617 | |
773 | 747 | |
774 | 748 | |
775 | 749 | /*------------------------------------------------- |
776 | DEVICE_GET_INFO(applefdc) - device get info | |
777 | callback | |
778 | -------------------------------------------------*/ | |
779 | ||
780 | DEVICE_GET_INFO(applefdc) | |
781 | { | |
782 | switch (state) | |
783 | { | |
784 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
785 | case DEVINFO_STR_NAME: strcpy(info->s, "Apple FDC"); break; | |
786 | ||
787 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
788 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(oldfdc); break; | |
789 | ||
790 | default: DEVICE_GET_INFO_CALL(applefdc_base); break; | |
791 | } | |
792 | } | |
793 | ||
794 | ||
795 | ||
796 | /*------------------------------------------------- | |
797 | 750 | DEVICE_START(iwm) - device start |
798 | 751 | callback |
799 | 752 | -------------------------------------------------*/ |
r17616 | r17617 | |
804 | 757 | } |
805 | 758 | |
806 | 759 | |
807 | ||
808 | 760 | /*------------------------------------------------- |
809 | DEVICE_GET_INFO(iwm) - device get info | |
810 | callback | |
811 | -------------------------------------------------*/ | |
812 | ||
813 | DEVICE_GET_INFO(iwm) | |
814 | { | |
815 | switch (state) | |
816 | { | |
817 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
818 | case DEVINFO_STR_NAME: strcpy(info->s, "Apple IWM (Integrated Woz Machine)"); break; | |
819 | ||
820 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
821 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(iwm); break; | |
822 | ||
823 | default: DEVICE_GET_INFO_CALL(applefdc_base); break; | |
824 | } | |
825 | } | |
826 | ||
827 | ||
828 | ||
829 | /*------------------------------------------------- | |
830 | 761 | DEVICE_START(iwm) - device start |
831 | 762 | callback |
832 | 763 | -------------------------------------------------*/ |
r17616 | r17617 | |
837 | 768 | } |
838 | 769 | |
839 | 770 | |
840 | ||
841 | /*------------------------------------------------- | |
842 | DEVICE_GET_INFO(swim) - device get info | |
843 | callback | |
844 | -------------------------------------------------*/ | |
845 | ||
846 | DEVICE_GET_INFO(swim) | |
847 | { | |
848 | switch (state) | |
849 | { | |
850 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
851 | case DEVINFO_STR_NAME: strcpy(info->s, "Apple SWIM (Steve Woz Integrated Machine)"); break; | |
852 | ||
853 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
854 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(swim); break; | |
855 | ||
856 | default: DEVICE_GET_INFO_CALL(applefdc_base); break; | |
857 | } | |
858 | } | |
859 | ||
860 | 771 | applefdc_base_device::applefdc_base_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock) |
861 | 772 | : device_t(mconfig, type, name, tag, owner, clock) |
862 | 773 | { |
r17616 | r17617 | |
---|---|---|
2476 | 2476 | upd765_reset(device,0); |
2477 | 2477 | } |
2478 | 2478 | |
2479 | DEVICE_GET_INFO( upd765a ) | |
2480 | { | |
2481 | switch (state) | |
2482 | { | |
2483 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
2484 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(upd765_t); break; | |
2485 | ||
2486 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
2487 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(upd765a); break; | |
2488 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
2489 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(upd765); break; | |
2490 | ||
2491 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
2492 | case DEVINFO_STR_NAME: strcpy(info->s, "UPD765A"); break; | |
2493 | case DEVINFO_STR_FAMILY: strcpy(info->s, "UPD765A"); break; | |
2494 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
2495 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
2496 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MESS Team"); break; | |
2497 | } | |
2498 | } | |
2499 | ||
2500 | ||
2501 | DEVICE_GET_INFO( upd765b ) | |
2502 | { | |
2503 | switch (state) | |
2504 | { | |
2505 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
2506 | case DEVINFO_STR_NAME: strcpy(info->s, "UPD765B"); break; | |
2507 | ||
2508 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
2509 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(upd765b); break; | |
2510 | ||
2511 | default: DEVICE_GET_INFO_CALL(upd765a); break; | |
2512 | } | |
2513 | } | |
2514 | ||
2515 | DEVICE_GET_INFO( smc37c78 ) | |
2516 | { | |
2517 | switch (state) | |
2518 | { | |
2519 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
2520 | case DEVINFO_STR_NAME: strcpy(info->s, "SMC37C78"); break; | |
2521 | ||
2522 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
2523 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(smc37c78); break; | |
2524 | ||
2525 | default: DEVICE_GET_INFO_CALL(upd765a); break; | |
2526 | } | |
2527 | } | |
2528 | ||
2529 | DEVICE_GET_INFO( upd72065 ) | |
2530 | { | |
2531 | switch (state) | |
2532 | { | |
2533 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
2534 | case DEVINFO_STR_NAME: strcpy(info->s, "UPD72065"); break; | |
2535 | ||
2536 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
2537 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(upd72065); break; | |
2538 | ||
2539 | default: DEVICE_GET_INFO_CALL(upd765a); break; | |
2540 | } | |
2541 | } | |
2542 | ||
2543 | 2479 | const device_type UPD765A = &device_creator<upd765a_device>; |
2544 | 2480 | |
2545 | 2481 | upd765a_device::upd765a_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
414 | 414 | #endif |
415 | 415 | |
416 | 416 | |
417 | /*------------------------------------------------- | |
418 | DEVICE_GET_INFO( at45db041 ) | |
419 | -------------------------------------------------*/ | |
420 | ||
421 | DEVICE_GET_INFO( at45db041 ) | |
422 | { | |
423 | switch (state) | |
424 | { | |
425 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
426 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(at45dbxx_t); break; | |
427 | ||
428 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
429 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(at45db041); break; | |
430 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
431 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(at45dbxx); break; | |
432 | ||
433 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
434 | case DEVINFO_STR_NAME: strcpy(info->s, "AT45DB041"); break; | |
435 | case DEVINFO_STR_FAMILY: strcpy(info->s, "AT45DBxx"); break; | |
436 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
437 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
438 | case DEVINFO_STR_CREDITS: /* Nothing */ break; | |
439 | } | |
440 | } | |
441 | ||
442 | DEVICE_GET_INFO( at45db081 ) | |
443 | { | |
444 | switch (state) | |
445 | { | |
446 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
447 | case DEVINFO_STR_NAME: strcpy(info->s, "AT45DB081"); break; | |
448 | ||
449 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
450 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(at45db081); break; | |
451 | ||
452 | default: DEVICE_GET_INFO_CALL(at45db041); break; | |
453 | } | |
454 | } | |
455 | ||
456 | DEVICE_GET_INFO( at45db161 ) | |
457 | { | |
458 | switch (state) | |
459 | { | |
460 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
461 | case DEVINFO_STR_NAME: strcpy(info->s, "AT45DB161"); break; | |
462 | ||
463 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
464 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(at45db161); break; | |
465 | ||
466 | default: DEVICE_GET_INFO_CALL(at45db041); break; | |
467 | } | |
468 | } | |
469 | ||
470 | 417 | const device_type AT45DB041 = &device_creator<at45db041_device>; |
471 | 418 | |
472 | 419 | at45db041_device::at45db041_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
223 | 223 | er59256->command=CMD_INVALID; |
224 | 224 | } |
225 | 225 | |
226 | /*------------------------------------------------- | |
227 | DEVICE_GET_INFO( er59256 ) | |
228 | -------------------------------------------------*/ | |
229 | ||
230 | DEVICE_GET_INFO( er59256 ) | |
231 | { | |
232 | switch (state) | |
233 | { | |
234 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
235 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(er59256_t); break; | |
236 | ||
237 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
238 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(er59256); break; | |
239 | case DEVINFO_FCT_STOP: info->stop = DEVICE_STOP_NAME(er59256); break; | |
240 | case DEVINFO_FCT_RESET: /* Nothing */ break; | |
241 | ||
242 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
243 | case DEVINFO_STR_NAME: strcpy(info->s, "Microchip ER59256 serial eeprom."); break; | |
244 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Microchip ER59256 serial eeprom."); break; | |
245 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
246 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
247 | case DEVINFO_STR_CREDITS: /* Nothing */ break; | |
248 | } | |
249 | } | |
250 | ||
251 | 226 | const device_type ER59256 = &device_creator<er59256_device>; |
252 | 227 | |
253 | 228 | er59256_device::er59256_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
101 | 101 | { |
102 | 102 | } |
103 | 103 | |
104 | DEVICE_GET_INFO( pf10 ) | |
105 | { | |
106 | switch (state) | |
107 | { | |
108 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
109 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(pf10_state); break; | |
110 | ||
111 | /* --- the following bits of info are returned as pointers --- */ | |
112 | case DEVINFO_PTR_MACHINE_CONFIG: info->machine_config = MACHINE_CONFIG_NAME(pf10); break; | |
113 | case DEVINFO_PTR_ROM_REGION: info->romregion = ROM_NAME(pf10); break; | |
114 | ||
115 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
116 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(pf10); break; | |
117 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
118 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(pf10); break; | |
119 | ||
120 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
121 | case DEVINFO_STR_NAME: strcpy(info->s, "PF-10"); break; | |
122 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Floppy drive"); break; | |
123 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
124 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
125 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MESS Team"); break; | |
126 | } | |
127 | } | |
128 | ||
129 | ||
130 | 104 | /*************************************************************************** |
131 | 105 | IMPLEMENTATION |
132 | 106 | ***************************************************************************/ |
r17616 | r17617 | |
---|---|---|
445 | 445 | #endif |
446 | 446 | |
447 | 447 | |
448 | /*------------------------------------------------- | |
449 | DEVICE_GET_INFO( pcf8593 ) | |
450 | -------------------------------------------------*/ | |
451 | ||
452 | DEVICE_GET_INFO( pcf8593 ) | |
453 | { | |
454 | switch (state) | |
455 | { | |
456 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
457 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(pcf8593_t); break; | |
458 | ||
459 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
460 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(pcf8593); break; | |
461 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
462 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(pcf8593); break; | |
463 | ||
464 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
465 | case DEVINFO_STR_NAME: strcpy(info->s, "PCF8593 RTC"); break; | |
466 | case DEVINFO_STR_FAMILY: strcpy(info->s, "PCF8593 RTC"); break; | |
467 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
468 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
469 | case DEVINFO_STR_CREDITS: /* Nothing */ break; | |
470 | } | |
471 | } | |
472 | ||
473 | 448 | const device_type PCF8593 = &device_creator<pcf8593_device>; |
474 | 449 | |
475 | 450 | pcf8593_device::pcf8593_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
1575 | 1575 | |
1576 | 1576 | } |
1577 | 1577 | |
1578 | DEVICE_GET_INFO( i8271 ) | |
1579 | { | |
1580 | switch (state) | |
1581 | { | |
1582 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
1583 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(i8271_t); break; | |
1584 | ||
1585 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
1586 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(i8271); break; | |
1587 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
1588 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(i8271); break; | |
1589 | ||
1590 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
1591 | case DEVINFO_STR_NAME: strcpy(info->s, "Intel 8271"); break; | |
1592 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Intel 8271"); break; | |
1593 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
1594 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
1595 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MESS Team"); break; | |
1596 | } | |
1597 | } | |
1598 | ||
1599 | 1578 | const device_type I8271 = &device_creator<i8271_device>; |
1600 | 1579 | |
1601 | 1580 | i8271_device::i8271_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
209 | 209 | uPD7002->conversion_counter = 0; |
210 | 210 | } |
211 | 211 | |
212 | DEVICE_GET_INFO( uPD7002 ) | |
213 | { | |
214 | switch (state) | |
215 | { | |
216 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
217 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(uPD7002_t); break; | |
218 | ||
219 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
220 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(uPD7002); break; | |
221 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
222 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(uPD7002); break; | |
223 | ||
224 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
225 | case DEVINFO_STR_NAME: strcpy(info->s, "uPD7002"); break; | |
226 | case DEVINFO_STR_FAMILY: strcpy(info->s, "uPD7002"); break; | |
227 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
228 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
229 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MESS Team"); break; | |
230 | } | |
231 | } | |
232 | ||
233 | 212 | const device_type UPD7002 = &device_creator<uPD7002_device>; |
234 | 213 | |
235 | 214 | uPD7002_device::uPD7002_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
328 | 328 | { |
329 | 329 | } |
330 | 330 | |
331 | /*------------------------------------------------- | |
332 | DEVICE_GET_INFO( beta_disk ) | |
333 | -------------------------------------------------*/ | |
334 | ||
335 | DEVICE_GET_INFO( beta_disk ) | |
336 | { | |
337 | switch (state) | |
338 | { | |
339 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
340 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(beta_disk_state); break; | |
341 | ||
342 | /* --- the following bits of info are returned as pointers --- */ | |
343 | case DEVINFO_PTR_ROM_REGION: info->romregion = ROM_NAME(beta_disk); break; | |
344 | case DEVINFO_PTR_MACHINE_CONFIG: info->machine_config = MACHINE_CONFIG_NAME(beta_disk); break; | |
345 | ||
346 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
347 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(beta_disk); break; | |
348 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
349 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(beta_disk); break; | |
350 | ||
351 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
352 | case DEVINFO_STR_NAME: strcpy(info->s, "Beta Disk Interface"); break; | |
353 | case DEVINFO_STR_SHORTNAME: strcpy(info->s, "betadisk"); break; | |
354 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Beta Disk Interface"); break; | |
355 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
356 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
357 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright the MESS Team"); break; | |
358 | } | |
359 | } | |
360 | ||
361 | 331 | const device_type BETA_DISK = &device_creator<beta_disk_device>; |
362 | 332 | |
363 | 333 | beta_disk_device::beta_disk_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
716 | 716 | } |
717 | 717 | |
718 | 718 | |
719 | /*------------------------------------------------- | |
720 | DEVICE_GET_INFO(ay31015) - device getinfo | |
721 | function | |
722 | -------------------------------------------------*/ | |
723 | ||
724 | DEVICE_GET_INFO( ay31015 ) | |
725 | { | |
726 | switch(state) | |
727 | { | |
728 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
729 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(ay31015_t); break; | |
730 | ||
731 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
732 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(ay31015); break; | |
733 | case DEVINFO_FCT_STOP: /* nothing */ break; | |
734 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME( ay31015 ); break; | |
735 | ||
736 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
737 | case DEVINFO_STR_NAME: strcpy(info->s, "AY-3-1015"); break; | |
738 | case DEVINFO_STR_FAMILY: strcpy(info->s, "AY-3-1015/AY-5-1013 UARTs"); break; | |
739 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.00"); break; | |
740 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
741 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright the MAME and MESS Teams"); break; | |
742 | } | |
743 | } | |
744 | ||
745 | 719 | const device_type AY31015 = &device_creator<ay31015_device>; |
746 | 720 | |
747 | 721 | ay31015_device::ay31015_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
830 | 830 | } |
831 | 831 | |
832 | 832 | |
833 | /************************** configuration ****************************/ | |
834 | ||
835 | DEVICE_GET_INFO( mc6843 ) { | |
836 | switch ( state ) { | |
837 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
838 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(mc6843_t); break; | |
839 | ||
840 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
841 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(mc6843); break; | |
842 | case DEVINFO_FCT_STOP: /* nothing */ break; | |
843 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(mc6843); break; | |
844 | ||
845 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
846 | case DEVINFO_STR_NAME: strcpy(info->s, "Motorola MC6843 floppy controller"); break; | |
847 | case DEVINFO_STR_FAMILY: strcpy(info->s, "MC6843"); break; | |
848 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.00"); break; | |
849 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
850 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright the MAME and MESS Teams"); break; | |
851 | } | |
852 | } | |
853 | ||
854 | 833 | const device_type MC6843 = &device_creator<mc6843_device>; |
855 | 834 | |
856 | 835 | mc6843_device::mc6843_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
517 | 517 | mm58274c->tenths = 0; |
518 | 518 | } |
519 | 519 | |
520 | DEVICE_GET_INFO( mm58274c ) | |
521 | { | |
522 | switch (state) | |
523 | { | |
524 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
525 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(mm58274c_t); break; | |
526 | ||
527 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
528 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(mm58274c); break; | |
529 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
530 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(mm58274c); break; | |
531 | ||
532 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
533 | case DEVINFO_STR_NAME: strcpy(info->s, "National Semiconductor MM58274C");break; | |
534 | case DEVINFO_STR_FAMILY: strcpy(info->s, "National Semiconductor MM58274C");break; | |
535 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
536 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
537 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MESS Team"); break; | |
538 | } | |
539 | } | |
540 | ||
541 | 520 | const device_type MM58274C = &device_creator<mm58274c_device>; |
542 | 521 | |
543 | 522 | mm58274c_device::mm58274c_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
816 | 816 | { |
817 | 817 | } |
818 | 818 | |
819 | DEVICE_GET_INFO( atari_fdc ) | |
820 | { | |
821 | switch (state) | |
822 | { | |
823 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
824 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(atari_fdc_t); break; | |
825 | ||
826 | /* --- the following bits of info are returned as pointers --- */ | |
827 | case DEVINFO_PTR_MACHINE_CONFIG: info->machine_config = MACHINE_CONFIG_NAME(atari_fdc); break; | |
828 | ||
829 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
830 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(atari_fdc); break; | |
831 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
832 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(atari_fdc); break; | |
833 | ||
834 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
835 | case DEVINFO_STR_NAME: strcpy(info->s, "Atari FDC"); break; | |
836 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Atari FDC"); break; | |
837 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
838 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
839 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright the MESS Team"); break; | |
840 | } | |
841 | } | |
842 | ||
843 | 819 | const device_type ATARI_FDC = &device_creator<atari_fdc_device>; |
844 | 820 | |
845 | 821 | atari_fdc_device::atari_fdc_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
1334 | 1334 | omti_reset(state); |
1335 | 1335 | } |
1336 | 1336 | |
1337 | /*------------------------------------------------- | |
1338 | device get info callback | |
1339 | -------------------------------------------------*/ | |
1340 | ||
1341 | DEVICE_GET_INFO( omti8621 ) | |
1342 | { | |
1343 | switch (state) | |
1344 | { | |
1345 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
1346 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(omti8621_state); break; | |
1347 | ||
1348 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
1349 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(omti8621); break; | |
1350 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
1351 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(omti8621); break; | |
1352 | ||
1353 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
1354 | case DEVINFO_STR_NAME: strcpy(info->s, "OMTI 8621"); break; | |
1355 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Winchester Disk Controller");break; | |
1356 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
1357 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
1358 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright Nicola Salmoria and the MAME Team"); break; | |
1359 | } | |
1360 | } | |
1361 | ||
1362 | 1337 | const device_type OMTI8621 = &device_creator<omti8621_device>; |
1363 | 1338 | |
1364 | 1339 | omti8621_device::omti8621_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
329 | 329 | MCFG_FRAGMENT_ADD(apollo_mono19i) \ |
330 | 330 | MCFG_DEVICE_ADD(_tag, APOLLO_MONO19I, 0) |
331 | 331 | |
332 | DEVICE_GET_INFO( apollo_mono19i ); | |
333 | ||
334 | 332 | MACHINE_CONFIG_EXTERN( apollo_mono19i ); |
335 | 333 | |
336 | 334 | class apollo_mono15i_device : public apollo_mono_device |
r17616 | r17617 | |
353 | 351 | MCFG_FRAGMENT_ADD(apollo_mono15i) \ |
354 | 352 | MCFG_DEVICE_ADD(_tag, APOLLO_MONO15I, 0) |
355 | 353 | |
356 | DEVICE_GET_INFO( apollo_mono15i ); | |
357 | ||
358 | 354 | MACHINE_CONFIG_EXTERN( apollo_mono15i ); |
359 | 355 | |
360 | 356 | READ16_DEVICE_HANDLER( apollo_mcr_r ) ; |
r17616 | r17617 | |
---|---|---|
268 | 268 | vdt->beep_timer = device->machine().scheduler().timer_alloc(FUNC(beep_callback)); |
269 | 269 | } |
270 | 270 | |
271 | DEVICE_GET_INFO( vdt911 ) | |
272 | { | |
273 | switch (state) | |
274 | { | |
275 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
276 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(vdt_t); break; | |
277 | ||
278 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
279 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(vdt911); break; | |
280 | ||
281 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
282 | case DEVINFO_STR_NAME: strcpy(info->s, "911 VDT"); break; | |
283 | case DEVINFO_STR_FAMILY: strcpy(info->s, "911 VDT Video"); break; | |
284 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
285 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
286 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MESS Team"); break; | |
287 | } | |
288 | } | |
289 | ||
290 | 271 | const device_type VDT911 = &device_creator<vdt911_device>; |
291 | 272 | |
292 | 273 | vdt911_device::vdt911_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
3406 | 3406 | tt->intf = (const saa505x_interface *)device->static_config(); |
3407 | 3407 | } |
3408 | 3408 | |
3409 | DEVICE_GET_INFO( saa505x ) | |
3410 | { | |
3411 | switch (state) | |
3412 | { | |
3413 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
3414 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(teletext_t); break; | |
3415 | ||
3416 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
3417 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(saa505x); break; | |
3418 | ||
3419 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
3420 | case DEVINFO_STR_NAME: strcpy(info->s, "SAA505x Video"); break; | |
3421 | case DEVINFO_STR_FAMILY: strcpy(info->s, "SAA505x Video"); break; | |
3422 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
3423 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
3424 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MESS Team"); break; | |
3425 | } | |
3426 | } | |
3427 | ||
3428 | 3409 | const device_type SAA505X = &device_creator<saa505x_device>; |
3429 | 3410 | |
3430 | 3411 | saa505x_device::saa505x_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
834 | 834 | DEVICE_RESET_CALL(apollo_mono19i); |
835 | 835 | } |
836 | 836 | |
837 | /*------------------------------------------------- | |
838 | DEVICE_GET_INFO( apollo_mono19i/15i ) | |
839 | -------------------------------------------------*/ | |
840 | ||
841 | DEVICE_GET_INFO( apollo_mono19i ) { | |
842 | switch (state) { | |
843 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
844 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(screen_data_t); break; | |
845 | ||
846 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
847 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(apollo_mono19i); break; | |
848 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
849 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(apollo_mono19i); break; | |
850 | ||
851 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
852 | case DEVINFO_STR_NAME: strcpy(info->s, "Apollo 19\" Monochrome Screen"); break; | |
853 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Terminal"); break; | |
854 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
855 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
856 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright the MESS Team"); break; | |
857 | } | |
858 | } | |
859 | ||
860 | DEVICE_GET_INFO( apollo_mono15i ) { | |
861 | switch (state) { | |
862 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
863 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(screen_data_t); break; | |
864 | ||
865 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
866 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(apollo_mono15i); break; | |
867 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
868 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(apollo_mono15i); break; | |
869 | ||
870 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
871 | case DEVINFO_STR_NAME: strcpy(info->s, "Apollo 15\" Monochrome Screen"); break; | |
872 | case DEVINFO_STR_FAMILY: strcpy(info->s, "Terminal"); break; | |
873 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
874 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
875 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright the MESS Team"); break; | |
876 | } | |
877 | } | |
878 | ||
879 | 837 | apollo_mono_device::apollo_mono_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock) |
880 | 838 | : device_t(mconfig, type, name, tag, owner, clock) |
881 | 839 | { |
r17616 | r17617 | |
---|---|---|
2150 | 2150 | } |
2151 | 2151 | |
2152 | 2152 | |
2153 | /*------------------------------------------------- | |
2154 | device definition | |
2155 | -------------------------------------------------*/ | |
2156 | ||
2157 | DEVICE_GET_INFO(vic3) | |
2158 | { | |
2159 | switch (state) | |
2160 | { | |
2161 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(vic3_state); break; | |
2162 | ||
2163 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(vic3); break; | |
2164 | ||
2165 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(vic3); break; | |
2166 | ||
2167 | case DEVINFO_STR_NAME: strcpy(info->s, "4567 VIC III"); break; | |
2168 | } | |
2169 | } | |
2170 | ||
2171 | 2153 | const device_type VIC3 = &device_creator<vic3_device>; |
2172 | 2154 | |
2173 | 2155 | vic3_device::vic3_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
448 | 448 | vt->skip_lines = 2; // for 60Hz |
449 | 449 | } |
450 | 450 | |
451 | /*------------------------------------------------- | |
452 | DEVICE_GET_INFO( vt100_video ) | |
453 | -------------------------------------------------*/ | |
454 | ||
455 | DEVICE_GET_INFO( vt100_video ) | |
456 | { | |
457 | switch (state) | |
458 | { | |
459 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
460 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(vt_video_t); break; | |
461 | ||
462 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
463 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(vt_video); break; | |
464 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
465 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(vt_video); break; | |
466 | ||
467 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
468 | case DEVINFO_STR_NAME: strcpy(info->s, "VT100 Video"); break; | |
469 | case DEVINFO_STR_FAMILY: strcpy(info->s, "VTxxx Video"); break; | |
470 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
471 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
472 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MESS Team"); break; | |
473 | } | |
474 | } | |
475 | ||
476 | 451 | const device_type VT100_VIDEO = &device_creator<vt100_video_device>; |
477 | 452 | |
478 | 453 | vt100_video_device::vt100_video_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
658 | 658 | vdc8563->changed = 0; |
659 | 659 | } |
660 | 660 | |
661 | /*------------------------------------------------- | |
662 | device definition | |
663 | -------------------------------------------------*/ | |
664 | ||
665 | DEVICE_GET_INFO(vdc8563) | |
666 | { | |
667 | switch (state) | |
668 | { | |
669 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(vdc8563_state); break; | |
670 | ||
671 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(vdc8563); break; | |
672 | ||
673 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(vdc8563); break; | |
674 | ||
675 | case DEVINFO_STR_NAME: strcpy(info->s, "8563 / 8568 VDC"); break; | |
676 | } | |
677 | } | |
678 | ||
679 | 661 | const device_type VDC8563 = &device_creator<vdc8563_device>; |
680 | 662 | |
681 | 663 | vdc8563_device::vdc8563_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
2800 | 2800 | } |
2801 | 2801 | |
2802 | 2802 | |
2803 | /*------------------------------------------------- | |
2804 | device definition | |
2805 | -------------------------------------------------*/ | |
2806 | ||
2807 | DEVICE_GET_INFO(vic2) | |
2808 | { | |
2809 | switch (state) | |
2810 | { | |
2811 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(vic2_state); break; | |
2812 | ||
2813 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(vic2); break; | |
2814 | ||
2815 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(vic2); break; | |
2816 | ||
2817 | case DEVINFO_STR_NAME: strcpy(info->s, "6567 / 6569 VIC II"); break; | |
2818 | } | |
2819 | } | |
2820 | ||
2821 | 2803 | const device_type VIC2 = &device_creator<vic2_device>; |
2822 | 2804 | |
2823 | 2805 | vic2_device::vic2_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
619 | 619 | } |
620 | 620 | |
621 | 621 | |
622 | DEVICE_GET_INFO( odyssey2_sound ) | |
623 | { | |
624 | switch (state) | |
625 | { | |
626 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
627 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(odyssey2_sound); break; | |
628 | ||
629 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
630 | case DEVINFO_STR_NAME: strcpy(info->s, "P8244/P8245"); break; | |
631 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
632 | } | |
633 | } | |
634 | ||
635 | 622 | STREAM_UPDATE( odyssey2_sh_update ) |
636 | 623 | { |
637 | 624 | odyssey2_state *state = device->machine().driver_data<odyssey2_state>(); |
r17616 | r17617 | |
---|---|---|
99 | 99 | } |
100 | 100 | |
101 | 101 | |
102 | DEVICE_GET_INFO( crt ) | |
103 | { | |
104 | switch (state) | |
105 | { | |
106 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
107 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(crt_t); break; | |
108 | ||
109 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
110 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(crt); break; | |
111 | ||
112 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
113 | case DEVINFO_STR_NAME: strcpy(info->s, "CRT Video"); break; | |
114 | case DEVINFO_STR_FAMILY: strcpy(info->s, "CRT Video"); break; | |
115 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
116 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
117 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MESS Team"); break; | |
118 | } | |
119 | } | |
120 | ||
121 | 102 | const device_type CRT = &device_creator<crt_device>; |
122 | 103 | |
123 | 104 | crt_device::crt_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
171 | 171 | } |
172 | 172 | |
173 | 173 | |
174 | DEVICE_GET_INFO( dl1416 ) | |
175 | { | |
176 | switch (state) | |
177 | { | |
178 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
179 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(dl1416_state); break; | |
180 | ||
181 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
182 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( dl1416 ); break; | |
183 | case DEVINFO_FCT_STOP: /* Nothing */ break; | |
184 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME( dl1416 ); break; | |
185 | ||
186 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
187 | case DEVINFO_STR_NAME: strcpy(info->s, "DL1416"); break; | |
188 | case DEVINFO_STR_FAMILY: strcpy(info->s, "DL1416"); break; | |
189 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.1"); break; | |
190 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
191 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MESS Team"); break; | |
192 | } | |
193 | } | |
194 | ||
195 | DEVICE_GET_INFO( dl1416b ) | |
196 | { | |
197 | switch (state) | |
198 | { | |
199 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
200 | case DEVINFO_STR_NAME: strcpy(info->s, "DL1416B"); break; | |
201 | default: DEVICE_GET_INFO_CALL(dl1416); break; | |
202 | } | |
203 | } | |
204 | ||
205 | DEVICE_GET_INFO( dl1416t ) | |
206 | { | |
207 | switch (state) | |
208 | { | |
209 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
210 | case DEVINFO_STR_NAME: strcpy(info->s, "DL1416T"); break; | |
211 | default: DEVICE_GET_INFO_CALL(dl1416); break; | |
212 | } | |
213 | } | |
214 | ||
215 | 174 | /***************************************************************************** |
216 | 175 | IMPLEMENTATION |
217 | 176 | *****************************************************************************/ |
r17616 | r17617 | |
---|---|---|
216 | 216 | asr_field_interrupt(device); |
217 | 217 | } |
218 | 218 | |
219 | DEVICE_GET_INFO( asr733 ) | |
220 | { | |
221 | switch (state) | |
222 | { | |
223 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
224 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof(asr_t); break; | |
225 | ||
226 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
227 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(asr733); break; | |
228 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME(asr733); break; | |
229 | ||
230 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
231 | case DEVINFO_STR_NAME: strcpy(info->s, "733 ASR"); break; | |
232 | case DEVINFO_STR_FAMILY: strcpy(info->s, "733 ASR Video"); break; | |
233 | case DEVINFO_STR_VERSION: strcpy(info->s, "1.0"); break; | |
234 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
235 | case DEVINFO_STR_CREDITS: strcpy(info->s, "Copyright MESS Team"); break; | |
236 | } | |
237 | } | |
238 | ||
239 | 219 | const device_type ASR733 = &device_creator<asr733_device>; |
240 | 220 | |
241 | 221 | asr733_device::asr733_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
892 | 892 | } |
893 | 893 | |
894 | 894 | |
895 | DEVICE_GET_INFO( k1ge ) | |
896 | { | |
897 | switch ( state ) | |
898 | { | |
899 | /* --- the following bits of info are returned as 64-bit signed integers --- */ | |
900 | case DEVINFO_INT_TOKEN_BYTES: info->i = sizeof( k1ge_t ); break; | |
901 | ||
902 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
903 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( k1ge ); break; | |
904 | case DEVINFO_FCT_STOP: break; | |
905 | case DEVINFO_FCT_RESET: info->reset = DEVICE_RESET_NAME( k1ge ); break; | |
906 | ||
907 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
908 | case DEVINFO_STR_NAME: strcpy( info->s, "SNK K1GE" ); break; | |
909 | case DEVINFO_STR_FAMILY: strcpy( info->s, "KxGE" ); break; | |
910 | case DEVINFO_STR_VERSION: strcpy( info->s, "1.0" ); break; | |
911 | case DEVINFO_STR_SOURCE_FILE: strcpy( info->s, __FILE__ ); | |
912 | case DEVINFO_STR_CREDITS: strcpy( info->s, "Copyright the MESS team" ); break; | |
913 | } | |
914 | } | |
915 | ||
916 | ||
917 | DEVICE_GET_INFO( k2ge ) | |
918 | { | |
919 | switch ( state ) | |
920 | { | |
921 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME( k2ge ); break; | |
922 | default: DEVICE_GET_INFO_CALL( k1ge ); break; | |
923 | } | |
924 | } | |
925 | ||
926 | 895 | const device_type K1GE = &device_creator<k1ge_device>; |
927 | 896 | |
928 | 897 | k1ge_device::k1ge_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
r17616 | r17617 | |
---|---|---|
340 | 340 | } |
341 | 341 | |
342 | 342 | |
343 | DEVICE_GET_INFO( pv1000_sound ) | |
344 | { | |
345 | switch (state) | |
346 | { | |
347 | /* --- the following bits of info are returned as pointers to data or functions --- */ | |
348 | case DEVINFO_FCT_START: info->start = DEVICE_START_NAME(pv1000_sound); break; | |
349 | ||
350 | /* --- the following bits of info are returned as NULL-terminated strings --- */ | |
351 | case DEVINFO_STR_NAME: strcpy(info->s, "NEC D65010G031"); break; | |
352 | case DEVINFO_STR_SOURCE_FILE: strcpy(info->s, __FILE__); break; | |
353 | } | |
354 | } | |
355 | ||
356 | ||
357 | 343 | /* Interrupt is triggering 16 times during vblank. */ |
358 | 344 | /* we have chosen to trigger on scanlines 195, 199, 203, 207, 211, 215, 219, 223, 227, 231, 235, 239, 243, 247, 251, 255 */ |
359 | 345 | static TIMER_CALLBACK( d65010_irq_on_cb ) |
Previous | 199869 Revisions | Next |