From ebd8f8c505b3d270359756badbf2a3c82cc1ec97 Mon Sep 17 00:00:00 2001 From: AJR Date: Sat, 7 Oct 2017 20:47:42 -0400 Subject: tek4404: Some preliminary device hookups; bring CPU down from ludicrous speed (nw) --- src/mame/drivers/tek440x.cpp | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/src/mame/drivers/tek440x.cpp b/src/mame/drivers/tek440x.cpp index 7cbf75a87c0..4096b6ca375 100644 --- a/src/mame/drivers/tek440x.cpp +++ b/src/mame/drivers/tek440x.cpp @@ -45,11 +45,16 @@ #include "bus/rs232/rs232.h" #include "cpu/m68000/m68000.h" #include "cpu/m6502/m6502.h" +#include "machine/am9513.h" #include "machine/mos6551.h" // debug tty #include "machine/mc146818.h" +#include "sound/sn76496.h" #include "screen.h" +#include "speaker.h" +#define VIDEO_CLOCK 25200000 + class tek440x_state : public driver_device { public: @@ -147,14 +152,14 @@ static ADDRESS_MAP_START( maincpu_map, AS_PROGRAM, 16, tek440x_state ) AM_RANGE(0x780000, 0x781fff) AM_RAM // map registers // 782000-783fff: video address registers // 784000-785fff: video control registers - // 788000-789fff: SN76496 audio + AM_RANGE(0x788000, 0x788001) AM_DEVWRITE8("snsnd", sn76496_device, write, 0xff00) // 78a000-78bfff: NS32081 FPU AM_RANGE(0x78c000, 0x78c007) AM_DEVREADWRITE8("aica", mos6551_device, read, write, 0xff00) // 7b1000-7b2fff: diagnostic registers // 7b2000-7b3fff: Centronics printer data // 7b4000-7b5fff: 68681 DUART // 7b6000-7b7fff: Mouse - // 7b8000-7b9fff: AM9513 timer + AM_RANGE(0x7b8000, 0x7b8003) AM_MIRROR(0x100) AM_DEVREADWRITE("timer", am9513_device, read16, write16) // 7ba000-7bbfff: MC146818 RTC // 7bc000-7bdfff: SCSI bus address registers // 7be000-7bffff: SCSI (NCR 5385) @@ -183,7 +188,7 @@ INPUT_PORTS_END static MACHINE_CONFIG_START( tek4404 ) /* basic machine hardware */ - MCFG_CPU_ADD("maincpu", M68010, 166666666) + MCFG_CPU_ADD("maincpu", M68010, 16666666) MCFG_CPU_PROGRAM_MAP(maincpu_map) MCFG_CPU_ADD("fdccpu", M6502, 1000000) @@ -204,11 +209,18 @@ static MACHINE_CONFIG_START( tek4404 ) MCFG_MOS6551_XTAL(XTAL_1_8432MHz) MCFG_MOS6551_TXD_HANDLER(DEVWRITELINE("rs232", rs232_port_device, write_txd)) + MCFG_DEVICE_ADD("timer", AM9513, 16666666 / 10) // from CPU E output + MCFG_RS232_PORT_ADD("rs232", default_rs232_devices, nullptr) MCFG_RS232_RXD_HANDLER(DEVWRITELINE("aica", mos6551_device, write_rxd)) MCFG_RS232_DCD_HANDLER(DEVWRITELINE("aica", mos6551_device, write_dcd)) MCFG_RS232_DSR_HANDLER(DEVWRITELINE("aica", mos6551_device, write_dsr)) MCFG_RS232_CTS_HANDLER(DEVWRITELINE("aica", mos6551_device, write_cts)) + + MCFG_SPEAKER_STANDARD_MONO("mono") + + MCFG_SOUND_ADD("snsnd", SN76496, VIDEO_CLOCK / 8) + MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80) MACHINE_CONFIG_END @@ -237,4 +249,4 @@ ROM_END * *************************************/ // YEAR NAME PARENT COMPAT MACHINE INPUT DEVICE INIT COMPANY FULLNAME FLAGS -COMP( 1984, tek4404, 0, 0, tek4404, tek4404, tek440x_state, 0, "Tektronix", "4404", MACHINE_NOT_WORKING | MACHINE_NO_SOUND ) +COMP( 1984, tek4404, 0, 0, tek4404, tek4404, tek440x_state, 0, "Tektronix", "4404 Artificial Intelligence System", MACHINE_NOT_WORKING ) -- cgit v1.2.3