src/mess/drivers/dectalk.c
| r6499 | r6500 | |
| 146 | 146 | #include "dectalk.lh" // hack to avoid screenless system crash |
| 147 | 147 | #include "machine/68681.h" |
| 148 | 148 | #include "sound/dac.h" |
| 149 | #include "machine/terminal.h" |
| 149 | 150 | |
| 150 | 151 | |
| 151 | 152 | /* Components */ |
| r6499 | r6500 | |
| 205 | 206 | |
| 206 | 207 | static void duart_tx(const device_config *device, int channel, UINT8 data) |
| 207 | 208 | { |
| 209 | const device_config *devconf = devtag_get_device(device->machine, "terminal"); |
| 210 | terminal_write(devconf,0,data); |
| 208 | 211 | #ifdef SERIAL_TO_STDERR |
| 209 | 212 | fprintf(stderr, "%02X ",data); |
| 210 | 213 | #endif |
| r6499 | r6500 | |
| 660 | 663 | PORT_CONFNAME( 0x01, 0x01, "Hack to prevent hang when skip self test is shorted" ) |
| 661 | 664 | PORT_CONFSETTING( 0x00, DEF_STR( Off ) ) |
| 662 | 665 | PORT_CONFSETTING( 0x01, DEF_STR( On ) ) |
| 666 | |
| 667 | PORT_INCLUDE(generic_terminal) |
| 663 | 668 | INPUT_PORTS_END |
| 664 | 669 | |
| 665 | 670 | /****************************************************************************** |
| r6499 | r6500 | |
| 695 | 700 | timer_set(machine, ATTOTIME_IN_HZ(120), NULL, 0, simulate_input_cb); |
| 696 | 701 | } |
| 697 | 702 | |
| 703 | static WRITE8_DEVICE_HANDLER( dectalk_kbd_put ) |
| 704 | { |
| 705 | duart68681_rx_data(devtag_get_device(device->machine, "duart68681"), 1, data); |
| 706 | } |
| 698 | 707 | |
| 708 | static GENERIC_TERMINAL_INTERFACE( dectalk_terminal_intf ) |
| 709 | { |
| 710 | DEVCB_HANDLER(dectalk_kbd_put) |
| 711 | }; |
| 712 | |
| 699 | 713 | static MACHINE_DRIVER_START(dectalk) |
| 700 | 714 | /* basic machine hardware */ |
| 701 | 715 | MDRV_CPU_ADD("maincpu", M68000, XTAL_20MHz/2) /* E74 20MHz OSC (/2) */ |
| r6499 | r6500 | |
| 717 | 731 | //MDRV_NVRAM_HANDLER(generic_0fill) |
| 718 | 732 | |
| 719 | 733 | /* video hardware */ |
| 720 | | MDRV_DEFAULT_LAYOUT(layout_dectalk) // hack to avoid screenless system crash |
| 734 | //MDRV_DEFAULT_LAYOUT(layout_dectalk) // hack to avoid screenless system crash |
| 721 | 735 | |
| 722 | 736 | /* sound hardware */ |
| 723 | 737 | MDRV_SPEAKER_STANDARD_MONO("mono") |
| r6499 | r6500 | |
| 726 | 740 | |
| 727 | 741 | /* Y2 is a 3.579545 MHz xtal for the dtmf decoder chip */ |
| 728 | 742 | |
| 729 | | |
| 743 | MDRV_IMPORT_FROM( generic_terminal ) |
| 744 | MDRV_GENERIC_TERMINAL_ADD(TERMINAL_TAG,dectalk_terminal_intf) |
| 730 | 745 | MACHINE_DRIVER_END |
| 731 | 746 | |
| 732 | 747 | |