trunk/src/mame/drivers/segac2.c
| r18232 | r18233 | |
| 1366 | 1366 | DEVCB_NULL, |
| 1367 | 1367 | }; |
| 1368 | 1368 | |
| 1369 | static const sn76496_config psg_intf = |
| 1370 | { |
| 1371 | DEVCB_NULL |
| 1372 | }; |
| 1373 | |
| 1369 | 1374 | static MACHINE_CONFIG_START( segac, segac2_state ) |
| 1370 | 1375 | |
| 1371 | 1376 | /* basic machine hardware */ |
| r18232 | r18233 | |
| 1408 | 1413 | MCFG_SOUND_ROUTE(0, "mono", 0.50) |
| 1409 | 1414 | /* right channel not connected */ |
| 1410 | 1415 | |
| 1411 | | MCFG_SOUND_ADD("snsnd", SN76496, XL2_CLOCK/15) |
| 1416 | MCFG_SOUND_ADD("snsnd", SN76496_NEW, XL2_CLOCK/15) |
| 1417 | MCFG_SOUND_CONFIG(psg_intf) |
| 1412 | 1418 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50) |
| 1413 | 1419 | MACHINE_CONFIG_END |
| 1414 | 1420 | |
trunk/src/mame/drivers/megatech.c
| r18232 | r18233 | |
| 498 | 498 | }; |
| 499 | 499 | |
| 500 | 500 | |
| 501 | static const sn76496_config psg_intf = |
| 502 | { |
| 503 | DEVCB_NULL |
| 504 | }; |
| 505 | |
| 506 | |
| 501 | 507 | static MACHINE_CONFIG_START( megatech, mtech_state ) |
| 502 | 508 | /* basic machine hardware */ |
| 503 | 509 | MCFG_FRAGMENT_ADD(md_ntsc) |
| r18232 | r18233 | |
| 533 | 539 | MCFG_SCREEN_VBLANK_DRIVER(mtech_state, screen_eof_mtnew) |
| 534 | 540 | |
| 535 | 541 | /* sound hardware */ |
| 536 | | MCFG_SOUND_ADD("sn2", SN76496, MASTER_CLOCK/15) |
| 542 | MCFG_SOUND_ADD("sn2", SN76496_NEW, MASTER_CLOCK/15) |
| 543 | MCFG_SOUND_CONFIG(psg_intf) |
| 537 | 544 | MCFG_SOUND_ROUTE(0, "lspeaker", 0.50) |
| 538 | 545 | MCFG_SOUND_ROUTE(1, "rspeaker", 0.50) |
| 539 | 546 | MACHINE_CONFIG_END |
trunk/src/mame/drivers/megaplay.c
| r18232 | r18233 | |
| 602 | 602 | /* basically from src/drivers/segasyse.c */ |
| 603 | 603 | static ADDRESS_MAP_START( megaplay_bios_io_map, AS_IO, 8, mplay_state ) |
| 604 | 604 | ADDRESS_MAP_GLOBAL_MASK(0xff) |
| 605 | | AM_RANGE(0x7f, 0x7f) AM_DEVWRITE_LEGACY("sn2", sn76496_w) /* SN76489 */ |
| 605 | AM_RANGE(0x7f, 0x7f) AM_DEVWRITE("sn2", sn76496_new_device, write) /* SN76489 */ |
| 606 | 606 | AM_RANGE(0xbe, 0xbe) AM_READWRITE_LEGACY(sms_vdp_data_r, sms_vdp_data_w) /* VDP */ |
| 607 | 607 | AM_RANGE(0xbf, 0xbf) AM_READWRITE_LEGACY(sms_vdp_ctrl_r, sms_vdp_ctrl_w) /* VDP */ |
| 608 | 608 | ADDRESS_MAP_END |
| r18232 | r18233 | |
| 644 | 644 | SCREEN_VBLANK_CALL(megatech_bios); |
| 645 | 645 | } |
| 646 | 646 | |
| 647 | static const sn76496_config psg_intf = |
| 648 | { |
| 649 | DEVCB_NULL |
| 650 | }; |
| 651 | |
| 647 | 652 | static MACHINE_CONFIG_START( megaplay, mplay_state ) |
| 648 | 653 | /* basic machine hardware */ |
| 649 | 654 | MCFG_FRAGMENT_ADD(md_ntsc) |
| r18232 | r18233 | |
| 658 | 663 | |
| 659 | 664 | MCFG_QUANTUM_TIME(attotime::from_hz(6000)) |
| 660 | 665 | |
| 661 | | MCFG_SOUND_ADD("sn2", SN76496, MASTER_CLOCK/15) |
| 666 | MCFG_SOUND_ADD("sn2", SN76496_NEW, MASTER_CLOCK/15) |
| 667 | MCFG_SOUND_CONFIG(psg_intf) |
| 662 | 668 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.25) /* 3.58 MHz */ |
| 663 | 669 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker",0.25) /* 3.58 MHz */ |
| 664 | 670 | |
trunk/src/mame/machine/megavdp.c
| r18232 | r18233 | |
| 854 | 854 | case 0x12: |
| 855 | 855 | case 0x14: |
| 856 | 856 | case 0x16: |
| 857 | | if (ACCESSING_BITS_0_7) sn76496_w(space.machine().device(":snsnd"), space, 0, data & 0xff); |
| 858 | | //if (ACCESSING_BITS_8_15) sn76496_w(space.machine().device("snsnd"), 0, (data >>8) & 0xff); |
| 857 | { |
| 858 | // accessed by either segapsg_new_device or sn76496_new_device |
| 859 | sn76496_base_device *sn = space.machine().device<sn76496_base_device>(":snsnd"); |
| 860 | if (ACCESSING_BITS_0_7) sn->write(space, 0, data & 0xff); |
| 861 | //if (ACCESSING_BITS_8_15) sn->write(space, 0, (data>>8) & 0xff); |
| 859 | 862 | break; |
| 863 | } |
| 860 | 864 | |
| 861 | 865 | default: |
| 862 | 866 | mame_printf_debug("write to unmapped vdp port\n"); |
trunk/src/mame/machine/megadriv.c
| r18232 | r18233 | |
| 822 | 822 | case 0x13: |
| 823 | 823 | case 0x15: |
| 824 | 824 | case 0x17: |
| 825 | | sn76496_w(space.machine().device("snsnd"), space, 0, data); |
| 825 | // accessed by either segapsg_new_device or sn76496_new_device |
| 826 | space.machine().device<sn76496_base_device>("snsnd")->write(space, 0, data); |
| 826 | 827 | break; |
| 827 | 828 | |
| 828 | 829 | default: |
| r18232 | r18233 | |
| 1146 | 1147 | }; |
| 1147 | 1148 | |
| 1148 | 1149 | |
| 1150 | static const sn76496_config psg_intf = |
| 1151 | { |
| 1152 | DEVCB_NULL |
| 1153 | }; |
| 1149 | 1154 | |
| 1155 | |
| 1156 | |
| 1150 | 1157 | MACHINE_CONFIG_FRAGMENT( md_ntsc ) |
| 1151 | 1158 | MCFG_CPU_ADD("maincpu", M68000, MASTER_CLOCK_NTSC / 7) /* 7.67 MHz */ |
| 1152 | 1159 | MCFG_CPU_PROGRAM_MAP(megadriv_map) |
| r18232 | r18233 | |
| 1194 | 1201 | MCFG_SOUND_ROUTE(1, "rspeaker", 0.50) |
| 1195 | 1202 | |
| 1196 | 1203 | /* sound hardware */ |
| 1197 | | MCFG_SOUND_ADD("snsnd", SEGAPSG, MASTER_CLOCK_NTSC/15) |
| 1204 | MCFG_SOUND_ADD("snsnd", SEGAPSG_NEW, MASTER_CLOCK_NTSC/15) |
| 1205 | MCFG_SOUND_CONFIG(psg_intf) |
| 1198 | 1206 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.25) /* 3.58 MHz */ |
| 1199 | 1207 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker",0.25) /* 3.58 MHz */ |
| 1200 | 1208 | MACHINE_CONFIG_END |
| r18232 | r18233 | |
| 1248 | 1256 | MCFG_SOUND_ROUTE(1, "rspeaker", 0.50) |
| 1249 | 1257 | |
| 1250 | 1258 | /* sound hardware */ |
| 1251 | | MCFG_SOUND_ADD("snsnd", SEGAPSG, MASTER_CLOCK_PAL/15) |
| 1259 | MCFG_SOUND_ADD("snsnd", SEGAPSG_NEW, MASTER_CLOCK_PAL/15) |
| 1260 | MCFG_SOUND_CONFIG(psg_intf) |
| 1252 | 1261 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.25) /* 3.58 MHz */ |
| 1253 | 1262 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker",0.25) /* 3.58 MHz */ |
| 1254 | 1263 | MACHINE_CONFIG_END |
| r18232 | r18233 | |
| 1274 | 1283 | MCFG_SOUND_ROUTE(1, "rspeaker", (0.50)/2) |
| 1275 | 1284 | |
| 1276 | 1285 | /* sound hardware */ |
| 1277 | | MCFG_SOUND_ADD("snsnd", SEGAPSG, MASTER_CLOCK_NTSC/15) |
| 1286 | MCFG_SOUND_ADD("snsnd", SEGAPSG_NEW, MASTER_CLOCK_NTSC/15) |
| 1287 | MCFG_SOUND_CONFIG(psg_intf) |
| 1278 | 1288 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", (0.25)/2) |
| 1279 | 1289 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", (0.25)/2) |
| 1280 | 1290 | |
| r18232 | r18233 | |
| 1295 | 1305 | MCFG_SOUND_ROUTE(1, "rspeaker", (0.50)/2) |
| 1296 | 1306 | |
| 1297 | 1307 | /* sound hardware */ |
| 1298 | | MCFG_SOUND_ADD("snsnd", SEGAPSG, MASTER_CLOCK_NTSC/15) |
| 1308 | MCFG_SOUND_ADD("snsnd", SEGAPSG_NEW, MASTER_CLOCK_NTSC/15) |
| 1309 | MCFG_SOUND_CONFIG(psg_intf) |
| 1299 | 1310 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", (0.25)/2) |
| 1300 | 1311 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", (0.25)/2) |
| 1301 | 1312 | |
trunk/src/mame/machine/segamsys.c
| r18232 | r18233 | |
| 1649 | 1649 | /* INIT THE PORTS *********************************************************************************************/ |
| 1650 | 1650 | |
| 1651 | 1651 | address_space &io = machine.device(tag)->memory().space(AS_IO); |
| 1652 | | device_t *sn = machine.device("snsnd"); |
| 1652 | sn76496_new_device *sn = machine.device<sn76496_new_device>("snsnd"); |
| 1653 | 1653 | |
| 1654 | 1654 | io.install_legacy_readwrite_handler(0x0000, 0xffff, FUNC(z80_unmapped_port_r), FUNC(z80_unmapped_port_w)); |
| 1655 | 1655 | |
| 1656 | 1656 | io.install_legacy_read_handler (0x7e, 0x7e, FUNC(md_sms_vdp_vcounter_r)); |
| 1657 | | io.install_legacy_write_handler(*sn, 0x7e, 0x7f, FUNC(sn76496_w)); |
| 1657 | io.install_write_handler (0x7e, 0x7f, write8_delegate(FUNC(sn76496_new_device::write),sn)); |
| 1658 | 1658 | io.install_legacy_readwrite_handler (0xbe, 0xbe, FUNC(md_sms_vdp_data_r), FUNC(md_sms_vdp_data_w)); |
| 1659 | 1659 | io.install_legacy_readwrite_handler (0xbf, 0xbf, FUNC(md_sms_vdp_ctrl_r), FUNC(md_sms_vdp_ctrl_w)); |
| 1660 | 1660 | |
| r18232 | r18233 | |
| 1716 | 1716 | } |
| 1717 | 1717 | } |
| 1718 | 1718 | |
| 1719 | static const sn76496_config psg_intf = |
| 1720 | { |
| 1721 | DEVCB_NULL |
| 1722 | }; |
| 1723 | |
| 1719 | 1724 | MACHINE_CONFIG_START( sms, driver_device ) |
| 1720 | 1725 | MCFG_CPU_ADD("maincpu", Z80, 3579540) |
| 1721 | 1726 | //MCFG_CPU_PROGRAM_MAP(sms_map) |
| r18232 | r18233 | |
| 1742 | 1747 | /* sound hardware */ |
| 1743 | 1748 | MCFG_SPEAKER_STANDARD_MONO("mono") |
| 1744 | 1749 | |
| 1745 | | MCFG_SOUND_ADD("snsnd", SN76496, 3579540) |
| 1750 | MCFG_SOUND_ADD("snsnd", SN76496_NEW, 3579540) |
| 1751 | MCFG_SOUND_CONFIG(psg_intf) |
| 1746 | 1752 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50) |
| 1747 | 1753 | MACHINE_CONFIG_END |
| 1748 | 1754 | |