x2212: Eliminate MCFG_ macros; add pin diagram (nw)

This commit is contained in:
AJR 2018-07-09 11:41:06 -04:00
parent 25ee3f9c3f
commit bda05083c2
14 changed files with 31 additions and 38 deletions

View File

@ -6,6 +6,18 @@
Xicor X2212 256 x 4 bit Nonvolatile Static RAM.
****************************************************************************
____ ____
A7 1 |* \_/ | 18 Vcc
A4 2 | | 17 A6
A3 3 | | 16 A5
A2 4 | | 15 I/O4
A1 5 | X2212 | 14 I/O3
A0 6 | | 13 I/O2
/CS 7 | | 12 I/O1
Vss 8 | | 11 /WE
/STORE 9 |___________| 10 /ARRAY RECALL
***************************************************************************/
#ifndef MAME_MACHINE_X2212_H
@ -15,26 +27,6 @@
//**************************************************************************
// INTERFACE CONFIGURATION MACROS
//**************************************************************************
#define MCFG_X2212_ADD(_tag) \
MCFG_DEVICE_ADD(_tag, X2212)
// some systems (like many early Atari games) wire up the /STORE signal
// to fire on power-down, effectively creating an "auto-save" functionality
#define MCFG_X2212_ADD_AUTOSAVE(_tag) \
MCFG_DEVICE_ADD(_tag, X2212) \
downcast<x2212_device &>(*device).set_auto_save(true);
#define MCFG_X2210_ADD(_tag) \
MCFG_DEVICE_ADD(_tag, X2210)
#define MCFG_X2210_ADD_AUTOSAVE(_tag) \
MCFG_DEVICE_ADD(_tag, X2210) \
downcast<x2212_device &>(*device).set_auto_save(true);
//**************************************************************************
// TYPE DEFINITIONS
//**************************************************************************
@ -48,7 +40,8 @@ public:
// construction/destruction
x2212_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock = 0);
// inline configuration helpers
// some systems (like many early Atari games) wire up the /STORE signal
// to fire on power-down, effectively creating an "auto-save" functionality
void set_auto_save(bool auto_save) { m_auto_save = auto_save; }
// I/O operations

View File

@ -1330,8 +1330,8 @@ MACHINE_CONFIG_START(balsente_state::balsente)
uartclock.signal_handler().append(m_acia, FUNC(acia6850_device::write_txc)).invert();
uartclock.signal_handler().append(m_acia, FUNC(acia6850_device::write_rxc)).invert();
MCFG_X2212_ADD_AUTOSAVE("nov0") // system NOVRAM
MCFG_X2212_ADD_AUTOSAVE("nov1") // cart NOVRAM
X2212(config, "nov0").set_auto_save(true); // system NOVRAM
X2212(config, "nov1").set_auto_save(true); // cart NOVRAM
MCFG_WATCHDOG_ADD("watchdog")

View File

@ -451,8 +451,8 @@ MACHINE_CONFIG_START(ccastles_state::ccastles)
MCFG_WATCHDOG_ADD("watchdog")
MCFG_WATCHDOG_VBLANK_INIT("screen", 8)
MCFG_X2212_ADD_AUTOSAVE("nvram_4b")
MCFG_X2212_ADD_AUTOSAVE("nvram_4a")
X2212(config, "nvram_4b").set_auto_save(true);
X2212(config, "nvram_4a").set_auto_save(true);
/* video hardware */
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_ccastles)

View File

@ -407,7 +407,7 @@ MACHINE_CONFIG_START(cloud9_state::cloud9)
MCFG_WATCHDOG_ADD("watchdog")
MCFG_WATCHDOG_VBLANK_INIT("screen", 8)
MCFG_X2212_ADD_AUTOSAVE("nvram")
X2212(config, "nvram").set_auto_save(true);
/* video hardware */
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_cloud9)

View File

@ -897,7 +897,7 @@ MACHINE_CONFIG_START(dectalk_state::dectalk)
MCFG_QUANTUM_PERFECT_CPU("dsp")
#endif
MCFG_X2212_ADD("x2212")
X2212(config, "x2212");
/* video hardware */

View File

@ -698,8 +698,8 @@ MACHINE_CONFIG_START(firefox_state::firefox)
MCFG_LASERDISC_SCREEN_ADD_NTSC("screen", "laserdisc")
MCFG_X2212_ADD_AUTOSAVE("nvram_1c")
MCFG_X2212_ADD_AUTOSAVE("nvram_1d")
X2212(config, "nvram_1c").set_auto_save(true);
X2212(config, "nvram_1d").set_auto_save(true);
MCFG_DEVICE_ADD("riot", RIOT6532, MASTER_XTAL/8)
MCFG_RIOT6532_IN_PA_CB(READ8(*this, firefox_state, riot_porta_r))

View File

@ -328,7 +328,7 @@ MACHINE_CONFIG_START(foodf_state::foodf)
MCFG_ADC0808_IN2_CB(IOPORT("STICK1_X"))
MCFG_ADC0808_IN3_CB(IOPORT("STICK0_X"))
MCFG_X2212_ADD_AUTOSAVE("nvram")
X2212(config, "nvram").set_auto_save(true);
MCFG_WATCHDOG_ADD("watchdog")
MCFG_WATCHDOG_VBLANK_INIT("screen", 8)

View File

@ -292,7 +292,7 @@ MACHINE_CONFIG_START(irobot_state::irobot)
MCFG_ADC0808_IN0_CB(IOPORT("AN0"))
MCFG_ADC0808_IN1_CB(IOPORT("AN1"))
MCFG_X2212_ADD_AUTOSAVE("nvram")
X2212(config, "nvram").set_auto_save(true);
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)

View File

@ -336,8 +336,8 @@ MACHINE_CONFIG_START(jedi_state::jedi)
MCFG_QUANTUM_TIME(attotime::from_hz(240))
MCFG_X2212_ADD("novram12b")
MCFG_X2212_ADD("novram12c")
X2212(config, "novram12b");
X2212(config, "novram12c");
MCFG_DEVICE_ADD("adc", ADC0809, JEDI_AUDIO_CPU_OSC / 2 / 9) // nominally 666 kHz
MCFG_ADC0808_IN0_CB(IOPORT("STICKY"))

View File

@ -292,7 +292,7 @@ MACHINE_CONFIG_START(quantum_state::quantum)
MCFG_DEVICE_PROGRAM_MAP(main_map)
MCFG_DEVICE_PERIODIC_INT_DRIVER(quantum_state, irq1_line_hold, CLOCK_3KHZ / 12)
MCFG_X2212_ADD("nvram") // "137288-001" in parts list and schematic diagram
X2212(config, "nvram"); // "137288-001" in parts list and schematic diagram
MCFG_WATCHDOG_ADD("watchdog")

View File

@ -323,7 +323,7 @@ MACHINE_CONFIG_START(starwars_state::starwars)
MCFG_RIOT6532_OUT_PB_CB(WRITE8("tms", tms5220_device, data_w))
MCFG_RIOT6532_IRQ_CB(INPUTLINE("audiocpu", M6809_IRQ_LINE))
MCFG_X2212_ADD_AUTOSAVE("x2212") /* nvram */
X2212(config, "x2212").set_auto_save(true); /* nvram */
ls259_device &outlatch(LS259(config, "outlatch")); // 9L/M
outlatch.q_out_cb<0>().set(FUNC(starwars_state::coin1_counter_w)); // Coin counter 1

View File

@ -337,7 +337,7 @@ MACHINE_CONFIG_START(trs80dt1_state::trs80dt1)
m_crtc->set_screen("screen");
MCFG_PALETTE_ADD("palette", 3)
MCFG_X2210_ADD("nvram")
X2210(config, "nvram");
TTL7474(config, m_7474, 0);
m_7474->comp_output_cb().set_inputline(m_maincpu, MCS51_INT1_LINE).invert(); // /Q connects directly to /INT1, so we need to invert?

View File

@ -713,7 +713,7 @@ MACHINE_CONFIG_START(vt240_state::vt240)
MCFG_RS232_RXD_HANDLER(WRITELINE("duart", scn2681_device, rx_b_w))
MCFG_RS232_DSR_HANDLER(WRITELINE("duart", scn2681_device, ip1_w))
MCFG_X2212_ADD("x2212")
X2212(config, "x2212");
MACHINE_CONFIG_END
MACHINE_CONFIG_START(vt240_state::mc7105)

View File

@ -880,7 +880,7 @@ MACHINE_CONFIG_START(wicat_state::wicat)
MCFG_MC2661_TXC(19200)
MCFG_MC2661_RXRDY_HANDLER(WRITELINE("videoirq", input_merger_device, in_w<4>))
MCFG_X2210_ADD("vsram") // XD2210
X2210(config, "vsram"); // XD2210
MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green())
MCFG_SCREEN_RAW_PARAMS(19.6608_MHz_XTAL, 1020, 0, 800, 324, 0, 300)