diff options
Diffstat (limited to 'src/mame/drivers/midxunit.cpp')
-rw-r--r-- | src/mame/drivers/midxunit.cpp | 31 |
1 files changed, 18 insertions, 13 deletions
diff --git a/src/mame/drivers/midxunit.cpp b/src/mame/drivers/midxunit.cpp index f63e779554c..550f4d2d154 100644 --- a/src/mame/drivers/midxunit.cpp +++ b/src/mame/drivers/midxunit.cpp @@ -88,6 +88,7 @@ There's a separate sound board also, but it wasn't available so is not documente #include "cpu/adsp2100/adsp2100.h" #include "cpu/tms34010/tms34010.h" +#include "machine/adc0844.h" #include "machine/nvram.h" #include "screen.h" @@ -112,7 +113,8 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, midxunit_state ) AM_RANGE(0x60c00000, 0x60c0007f) AM_READ(midxunit_io_r) AM_RANGE(0x60c00080, 0x60c000df) AM_WRITE(midxunit_io_w) AM_RANGE(0x60c000e0, 0x60c000ff) AM_READWRITE(midxunit_security_r, midxunit_security_w) - AM_RANGE(0x80800000, 0x8080001f) AM_READWRITE(midxunit_analog_r, midxunit_analog_select_w) + AM_RANGE(0x80800000, 0x8080000f) AM_DEVREADWRITE8("adc", adc0848_device, read, write, 0x00ff) + AM_RANGE(0x80800010, 0x8080001f) AM_NOP AM_RANGE(0x80c00000, 0x80c000ff) AM_READWRITE(midxunit_uart_r, midxunit_uart_w) AM_RANGE(0xa0440000, 0xa047ffff) AM_READWRITE(midxunit_cmos_r, midxunit_cmos_w) AM_SHARE("nvram") AM_RANGE(0xa0800000, 0xa08fffff) AM_READWRITE(midxunit_paletteram_r, midxunit_paletteram_w) AM_SHARE("palette") @@ -210,28 +212,22 @@ static INPUT_PORTS_START( revx ) PORT_DIPSETTING( 0x0000, DEF_STR( On )) PORT_START("AN0") - PORT_BIT( 0x00ff, 0x0080, IPT_AD_STICK_X ) PORT_SENSITIVITY(20) PORT_KEYDELTA(10) PORT_REVERSE PORT_PLAYER(1) - PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0xff, 0x80, IPT_AD_STICK_X ) PORT_SENSITIVITY(20) PORT_KEYDELTA(10) PORT_REVERSE PORT_PLAYER(1) PORT_START("AN1") - PORT_BIT( 0x00ff, 0x0080, IPT_AD_STICK_Y ) PORT_SENSITIVITY(20) PORT_KEYDELTA(10) PORT_PLAYER(1) - PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0xff, 0x80, IPT_AD_STICK_Y ) PORT_SENSITIVITY(20) PORT_KEYDELTA(10) PORT_PLAYER(1) PORT_START("AN2") - PORT_BIT( 0x00ff, 0x0080, IPT_AD_STICK_X ) PORT_SENSITIVITY(20) PORT_KEYDELTA(10) PORT_REVERSE PORT_PLAYER(2) - PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0xff, 0x80, IPT_AD_STICK_X ) PORT_SENSITIVITY(20) PORT_KEYDELTA(10) PORT_REVERSE PORT_PLAYER(2) PORT_START("AN3") - PORT_BIT( 0x00ff, 0x0080, IPT_AD_STICK_Y ) PORT_SENSITIVITY(20) PORT_KEYDELTA(10) PORT_PLAYER(2) - PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0xff, 0x80, IPT_AD_STICK_Y ) PORT_SENSITIVITY(20) PORT_KEYDELTA(10) PORT_PLAYER(2) PORT_START("AN4") - PORT_BIT( 0x00ff, 0x0080, IPT_AD_STICK_X ) PORT_SENSITIVITY(20) PORT_KEYDELTA(10) PORT_REVERSE PORT_PLAYER(3) - PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0xff, 0x80, IPT_AD_STICK_X ) PORT_SENSITIVITY(20) PORT_KEYDELTA(10) PORT_REVERSE PORT_PLAYER(3) PORT_START("AN5") - PORT_BIT( 0x00ff, 0x0080, IPT_AD_STICK_Y ) PORT_SENSITIVITY(20) PORT_KEYDELTA(10) PORT_PLAYER(3) - PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0xff, 0x80, IPT_AD_STICK_Y ) PORT_SENSITIVITY(20) PORT_KEYDELTA(10) PORT_PLAYER(3) INPUT_PORTS_END @@ -270,6 +266,15 @@ static MACHINE_CONFIG_START( midxunit ) /* serial prefixes 419, 420 */ MCFG_MIDWAY_SERIAL_PIC_UPPER(419); + MCFG_ADC0848_ADD("adc") + MCFG_ADC0848_INTR_CB(NOOP) // passed through PLSI1032; what does ADC INT actually map to? + MCFG_ADC0848_CH1_CB(IOPORT("AN0")) + MCFG_ADC0848_CH2_CB(IOPORT("AN1")) + MCFG_ADC0848_CH3_CB(IOPORT("AN2")) + MCFG_ADC0848_CH4_CB(IOPORT("AN3")) + MCFG_ADC0848_CH5_CB(IOPORT("AN4")) + MCFG_ADC0848_CH6_CB(IOPORT("AN5")) + /* sound hardware */ MCFG_DEVICE_ADD("dcs", DCS_AUDIO_2K_UART, 0) MACHINE_CONFIG_END |