summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/midxunit.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/midxunit.cpp')
-rw-r--r--src/mame/drivers/midxunit.cpp31
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