mirror of
https://github.com/holub/mame
synced 2025-04-22 08:22:15 +03:00
x2212: Eliminate MCFG_ macros; add pin diagram (nw)
This commit is contained in:
parent
25ee3f9c3f
commit
bda05083c2
@ -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
|
||||
|
@ -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")
|
||||
|
||||
|
@ -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)
|
||||
|
@ -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)
|
||||
|
@ -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 */
|
||||
|
||||
|
@ -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))
|
||||
|
@ -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)
|
||||
|
@ -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)
|
||||
|
@ -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"))
|
||||
|
@ -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")
|
||||
|
||||
|
@ -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
|
||||
|
@ -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?
|
||||
|
@ -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)
|
||||
|
@ -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)
|
||||
|
Loading…
Reference in New Issue
Block a user