mirror of
https://github.com/holub/mame
synced 2025-05-18 03:35:03 +03:00
more eeprom devices (nw)
This commit is contained in:
parent
fb70fab537
commit
1b8f5e73ef
@ -819,7 +819,7 @@ READ8_HANDLER( stv_SMPC_r )
|
||||
return_data = state->ioport("DSW1")->read();
|
||||
|
||||
if (offset == 0x77)//PDR2 read
|
||||
return_data = (0xfe | space.machine().device<eeprom_device>("eeprom")->read_bit());
|
||||
return_data = (0xfe | state->m_eeprom->read_bit());
|
||||
|
||||
return return_data;
|
||||
}
|
||||
@ -881,10 +881,9 @@ WRITE8_HANDLER( stv_SMPC_w )
|
||||
---- -x-- EEPROM CS line
|
||||
---- --xx A-Bus bank bits
|
||||
*/
|
||||
eeprom_device *eeprom = space.machine().device<eeprom_device>("eeprom");
|
||||
eeprom->set_clock_line((data & 0x08) ? ASSERT_LINE : CLEAR_LINE);
|
||||
eeprom->write_bit(data & 0x10);
|
||||
eeprom->set_cs_line((data & 0x04) ? CLEAR_LINE : ASSERT_LINE);
|
||||
state->m_eeprom->set_clock_line((data & 0x08) ? ASSERT_LINE : CLEAR_LINE);
|
||||
state->m_eeprom->write_bit(data & 0x10);
|
||||
state->m_eeprom->set_cs_line((data & 0x04) ? CLEAR_LINE : ASSERT_LINE);
|
||||
state->m_stv_multi_bank = data & 3;
|
||||
|
||||
stv_select_game(space.machine(), state->m_stv_multi_bank);
|
||||
|
@ -33,6 +33,7 @@ public:
|
||||
_39in1_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag),
|
||||
m_ram(*this, "ram"),
|
||||
m_eeprom(*this, "eeprom"),
|
||||
m_maincpu(*this, "maincpu") { }
|
||||
|
||||
UINT32 m_seed;
|
||||
@ -49,7 +50,7 @@ public:
|
||||
PXA255_LCD_Regs m_lcd_regs;
|
||||
|
||||
dmadac_sound_device *m_dmadac[2];
|
||||
eeprom_device *m_eeprom;
|
||||
required_device<eeprom_device> m_eeprom;
|
||||
UINT32 m_pxa255_lcd_palette[0x100];
|
||||
UINT8 m_pxa255_lcd_framebuffer[0x100000];
|
||||
|
||||
@ -1439,7 +1440,6 @@ DRIVER_INIT_MEMBER(_39in1_state,39in1)
|
||||
{
|
||||
m_dmadac[0] = machine().device<dmadac_sound_device>("dac1");
|
||||
m_dmadac[1] = machine().device<dmadac_sound_device>("dac2");
|
||||
m_eeprom = machine().device<eeprom_device>("eeprom");
|
||||
|
||||
address_space &space = m_maincpu->space(AS_PROGRAM);
|
||||
space.install_read_handler (0xa0151648, 0xa015164b, read32_delegate(FUNC(_39in1_state::prot_cheater_r), this));
|
||||
|
@ -3025,22 +3025,19 @@ ADDRESS_MAP_END
|
||||
|
||||
READ8_MEMBER(_8080bw_state::invmulti_eeprom_r)
|
||||
{
|
||||
eeprom_device *eeprom = machine().device<eeprom_device>("eeprom");
|
||||
return eeprom->read_bit();
|
||||
return m_eeprom->read_bit();
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(_8080bw_state::invmulti_eeprom_w)
|
||||
{
|
||||
eeprom_device *eeprom = machine().device<eeprom_device>("eeprom");
|
||||
|
||||
// d0: latch bit
|
||||
eeprom->write_bit(data & 1);
|
||||
m_eeprom->write_bit(data & 1);
|
||||
|
||||
// d6: reset
|
||||
eeprom->set_cs_line((data & 0x40) ? CLEAR_LINE : ASSERT_LINE);
|
||||
m_eeprom->set_cs_line((data & 0x40) ? CLEAR_LINE : ASSERT_LINE);
|
||||
|
||||
// d4: write latch or select next bit to read
|
||||
eeprom->set_clock_line((data & 0x10) ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_eeprom->set_clock_line((data & 0x10) ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(_8080bw_state::invmulti_bank_w)
|
||||
|
@ -831,14 +831,11 @@ ADDRESS_MAP_END
|
||||
|
||||
READ8_MEMBER(centiped_state::multiped_eeprom_r)
|
||||
{
|
||||
eeprom_device *eeprom = machine().device<eeprom_device>("eeprom");
|
||||
return eeprom->read_bit() ? 0x80 : 0;
|
||||
return m_eeprom->read_bit() ? 0x80 : 0;
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(centiped_state::multiped_eeprom_w)
|
||||
{
|
||||
eeprom_device *eeprom = machine().device<eeprom_device>("eeprom");
|
||||
|
||||
// a0: always high
|
||||
// a3-a7: always low
|
||||
// a8-a10: same as a0-a2
|
||||
@ -846,15 +843,15 @@ WRITE8_MEMBER(centiped_state::multiped_eeprom_w)
|
||||
|
||||
// a1 low: latch bit
|
||||
if (~offset & 2)
|
||||
eeprom->write_bit((data & 0x80) ? 1 : 0);
|
||||
m_eeprom->write_bit((data & 0x80) ? 1 : 0);
|
||||
|
||||
// a2 low: write latch or select next bit to read
|
||||
if (~offset & 4)
|
||||
eeprom->set_clock_line((~data & 0x80) ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_eeprom->set_clock_line((~data & 0x80) ? ASSERT_LINE : CLEAR_LINE);
|
||||
|
||||
// both high: reset
|
||||
else if (offset & 2)
|
||||
eeprom->set_cs_line((data & 0x80) ? CLEAR_LINE : ASSERT_LINE);
|
||||
m_eeprom->set_cs_line((data & 0x80) ? CLEAR_LINE : ASSERT_LINE);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(centiped_state::multiped_prgbank_w)
|
||||
|
@ -378,7 +378,7 @@ READ32_MEMBER(deco32_state::fghthist_control_r)
|
||||
switch (offset) {
|
||||
case 0: return 0xffff0000 | ioport("IN0")->read();
|
||||
case 1: return 0xffff0000 | ioport("IN1")->read(); //check top bits??
|
||||
case 2: return 0xfffffffe | machine().device<eeprom_device>("eeprom")->read_bit();
|
||||
case 2: return 0xfffffffe | m_eeprom->read_bit();
|
||||
}
|
||||
|
||||
return 0xffffffff;
|
||||
@ -387,10 +387,9 @@ READ32_MEMBER(deco32_state::fghthist_control_r)
|
||||
WRITE32_MEMBER(deco32_state::fghthist_eeprom_w)
|
||||
{
|
||||
if (ACCESSING_BITS_0_7) {
|
||||
eeprom_device *eeprom = machine().device<eeprom_device>("eeprom");
|
||||
eeprom->set_clock_line((data & 0x20) ? ASSERT_LINE : CLEAR_LINE);
|
||||
eeprom->write_bit(data & 0x10);
|
||||
eeprom->set_cs_line((data & 0x40) ? CLEAR_LINE : ASSERT_LINE);
|
||||
m_eeprom->set_clock_line((data & 0x20) ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_eeprom->write_bit(data & 0x10);
|
||||
m_eeprom->set_cs_line((data & 0x40) ? CLEAR_LINE : ASSERT_LINE);
|
||||
|
||||
deco32_pri_w(space,0,data&0x1,0xffffffff); /* Bit 0 - layer priority toggle */
|
||||
}
|
||||
@ -500,8 +499,7 @@ WRITE32_MEMBER(deco32_state::tattass_prot_w)
|
||||
|
||||
WRITE32_MEMBER(deco32_state::tattass_control_w)
|
||||
{
|
||||
eeprom_device *eeprom = machine().device<eeprom_device>("eeprom");
|
||||
address_space &eeprom_space = eeprom->space();
|
||||
address_space &eeprom_space = m_eeprom->space();
|
||||
|
||||
/* Eprom in low byte */
|
||||
if (mem_mask==0x000000ff) { /* Byte write to low byte only (different from word writing including low byte) */
|
||||
@ -636,7 +634,7 @@ READ32_MEMBER(deco32_state::nslasher_prot_r)
|
||||
switch (offset<<1) {
|
||||
case 0x280: return ioport("IN0")->read() << 16| 0xffff; /* IN0 */
|
||||
case 0x4c4: return ioport("IN1")->read() << 16| 0xffff; /* IN1 */
|
||||
case 0x35a: return (machine().device<eeprom_device>("eeprom")->read_bit()<< 16) | 0xffff; // Debug switch in low word??
|
||||
case 0x35a: return (m_eeprom->read_bit()<< 16) | 0xffff; // Debug switch in low word??
|
||||
}
|
||||
|
||||
//logerror("%08x: Read unmapped prot %08x (%08x)\n",space.device().safe_pc(),offset<<1,mem_mask);
|
||||
@ -648,10 +646,9 @@ WRITE32_MEMBER(deco32_state::nslasher_eeprom_w)
|
||||
{
|
||||
if (ACCESSING_BITS_0_7)
|
||||
{
|
||||
eeprom_device *eeprom = machine().device<eeprom_device>("eeprom");
|
||||
eeprom->set_clock_line((data & 0x20) ? ASSERT_LINE : CLEAR_LINE);
|
||||
eeprom->write_bit(data & 0x10);
|
||||
eeprom->set_cs_line((data & 0x40) ? CLEAR_LINE : ASSERT_LINE);
|
||||
m_eeprom->set_clock_line((data & 0x20) ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_eeprom->write_bit(data & 0x10);
|
||||
m_eeprom->set_cs_line((data & 0x40) ? CLEAR_LINE : ASSERT_LINE);
|
||||
|
||||
deco32_pri_w(space,0,data&0x3,0xffffffff); /* Bit 0 - layer priority toggle, Bit 1 - BG2/3 Joint mode (8bpp) */
|
||||
}
|
||||
|
@ -1586,8 +1586,7 @@ GFXDECODE_END
|
||||
|
||||
READ8_MEMBER(dkong_state::braze_eeprom_r)
|
||||
{
|
||||
eeprom_device *eeprom = machine().device<eeprom_device>("eeprom");
|
||||
return eeprom->read_bit();
|
||||
return m_eeprom->read_bit();
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(dkong_state::braze_a15_w)
|
||||
@ -1598,10 +1597,9 @@ WRITE8_MEMBER(dkong_state::braze_a15_w)
|
||||
|
||||
WRITE8_MEMBER(dkong_state::braze_eeprom_w)
|
||||
{
|
||||
eeprom_device *eeprom = machine().device<eeprom_device>("eeprom");
|
||||
eeprom->write_bit(data & 0x01);
|
||||
eeprom->set_cs_line(data & 0x04 ? CLEAR_LINE : ASSERT_LINE);
|
||||
eeprom->set_clock_line(data & 0x02 ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_eeprom->write_bit(data & 0x01);
|
||||
m_eeprom->set_cs_line(data & 0x04 ? CLEAR_LINE : ASSERT_LINE);
|
||||
m_eeprom->set_clock_line(data & 0x02 ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
void dkong_state::braze_decrypt_rom(UINT8 *dest)
|
||||
|
@ -119,10 +119,9 @@ popmessage(t);
|
||||
|
||||
if (ACCESSING_BITS_0_7)
|
||||
{
|
||||
eeprom_device *eeprom = machine().device<eeprom_device>("eeprom");
|
||||
eeprom->set_clock_line((data & 0x20) ? ASSERT_LINE : CLEAR_LINE);
|
||||
eeprom->write_bit(data & 0x40);
|
||||
eeprom->set_cs_line((data & 0x10) ? CLEAR_LINE : ASSERT_LINE);
|
||||
m_eeprom->set_clock_line((data & 0x20) ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_eeprom->write_bit(data & 0x40);
|
||||
m_eeprom->set_cs_line((data & 0x10) ? CLEAR_LINE : ASSERT_LINE);
|
||||
return;
|
||||
}
|
||||
return;
|
||||
|
@ -242,7 +242,8 @@ public:
|
||||
: driver_device(mconfig, type, tag),
|
||||
m_work_ram(*this, "work_ram"),
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_audiocpu(*this, "audiocpu") { }
|
||||
m_audiocpu(*this, "audiocpu"),
|
||||
m_eeprom(*this, "eeprom") { }
|
||||
|
||||
required_shared_ptr<UINT32> m_work_ram;
|
||||
UINT32 *m_sharc_dataram_0;
|
||||
@ -271,6 +272,7 @@ public:
|
||||
TIMER_CALLBACK_MEMBER(irq_off);
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<cpu_device> m_audiocpu;
|
||||
required_device<eeprom_device> m_eeprom;
|
||||
};
|
||||
|
||||
|
||||
@ -349,8 +351,6 @@ READ8_MEMBER(gticlub_state::sysreg_r)
|
||||
{
|
||||
static const char *const portnames[] = { "IN0", "IN1", "IN2", "IN3" };
|
||||
device_t *adc1038 = machine().device("adc1038");
|
||||
eeprom_device *eeprom = machine().device<eeprom_device>("eeprom");
|
||||
|
||||
switch (offset)
|
||||
{
|
||||
case 0:
|
||||
@ -369,7 +369,7 @@ READ8_MEMBER(gticlub_state::sysreg_r)
|
||||
// a = ADC readout
|
||||
// e = EEPROM data out
|
||||
|
||||
UINT32 eeprom_bit = (eeprom->read_bit() << 1);
|
||||
UINT32 eeprom_bit = (m_eeprom->read_bit() << 1);
|
||||
UINT32 adc_bit = (adc1038_do_read(adc1038) << 2);
|
||||
return (eeprom_bit | adc_bit);
|
||||
}
|
||||
@ -384,8 +384,6 @@ READ8_MEMBER(gticlub_state::sysreg_r)
|
||||
WRITE8_MEMBER(gticlub_state::sysreg_w)
|
||||
{
|
||||
device_t *adc1038 = machine().device("adc1038");
|
||||
eeprom_device *eeprom = machine().device<eeprom_device>("eeprom");
|
||||
|
||||
switch (offset)
|
||||
{
|
||||
case 0:
|
||||
@ -394,9 +392,9 @@ WRITE8_MEMBER(gticlub_state::sysreg_w)
|
||||
break;
|
||||
|
||||
case 3:
|
||||
eeprom->write_bit((data & 0x01) ? 1 : 0);
|
||||
eeprom->set_clock_line((data & 0x02) ? ASSERT_LINE : CLEAR_LINE);
|
||||
eeprom->set_cs_line((data & 0x04) ? CLEAR_LINE : ASSERT_LINE);
|
||||
m_eeprom->write_bit((data & 0x01) ? 1 : 0);
|
||||
m_eeprom->set_clock_line((data & 0x02) ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_eeprom->set_cs_line((data & 0x04) ? CLEAR_LINE : ASSERT_LINE);
|
||||
break;
|
||||
|
||||
case 4:
|
||||
|
@ -94,10 +94,9 @@ WRITE32_MEMBER(gunbustr_state::gunbustr_input_w)
|
||||
|
||||
if (ACCESSING_BITS_0_7)
|
||||
{
|
||||
eeprom_device *eeprom = machine().device<eeprom_device>("eeprom");
|
||||
eeprom->set_clock_line((data & 0x20) ? ASSERT_LINE : CLEAR_LINE);
|
||||
eeprom->write_bit(data & 0x40);
|
||||
eeprom->set_cs_line((data & 0x10) ? CLEAR_LINE : ASSERT_LINE);
|
||||
m_eeprom->set_clock_line((data & 0x20) ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_eeprom->write_bit(data & 0x40);
|
||||
m_eeprom->set_cs_line((data & 0x10) ? CLEAR_LINE : ASSERT_LINE);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
@ -333,7 +333,8 @@ public:
|
||||
m_sharc_dataram0(*this, "sharc_dataram0"),
|
||||
m_sharc_dataram1(*this, "sharc_dataram1") ,
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_audiocpu(*this, "audiocpu") { }
|
||||
m_audiocpu(*this, "audiocpu"),
|
||||
m_eeprom(*this, "eeprom") { }
|
||||
|
||||
UINT8 m_led_reg0;
|
||||
UINT8 m_led_reg1;
|
||||
@ -379,6 +380,7 @@ public:
|
||||
void jamma_jvs_cmd_exec();
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<cpu_device> m_audiocpu;
|
||||
required_device<eeprom_device> m_eeprom;
|
||||
};
|
||||
|
||||
|
||||
@ -477,8 +479,6 @@ READ8_MEMBER(hornet_state::sysreg_r)
|
||||
UINT8 r = 0;
|
||||
static const char *const portnames[] = { "IN0", "IN1", "IN2" };
|
||||
device_t *adc12138 = machine().device("adc12138");
|
||||
eeprom_device *eeprom = machine().device<eeprom_device>("eeprom");
|
||||
|
||||
switch (offset)
|
||||
{
|
||||
case 0: /* I/O port 0 */
|
||||
@ -497,7 +497,7 @@ READ8_MEMBER(hornet_state::sysreg_r)
|
||||
0x02 = ADDOR (ADC DOR)
|
||||
0x01 = ADDO (ADC DO)
|
||||
*/
|
||||
r = 0xf0 | (eeprom->read_bit() << 3);
|
||||
r = 0xf0 | (m_eeprom->read_bit() << 3);
|
||||
r |= adc1213x_do_r(adc12138, space, 0) | (adc1213x_eoc_r(adc12138, space, 0) << 2);
|
||||
break;
|
||||
|
||||
|
@ -28,7 +28,8 @@ public:
|
||||
: driver_device(mconfig, type, tag),
|
||||
m_vram(*this, "vram"),
|
||||
m_io(*this, "io"),
|
||||
m_maincpu(*this, "maincpu") { }
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_eeprom(*this, "eeprom") { }
|
||||
|
||||
required_shared_ptr<UINT16> m_vram;
|
||||
UINT8 m_map_vreg;
|
||||
@ -41,6 +42,7 @@ public:
|
||||
UINT32 screen_update_jackpool(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
|
||||
INTERRUPT_GEN_MEMBER(jackpool_interrupt);
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<eeprom_device> m_eeprom;
|
||||
};
|
||||
|
||||
|
||||
@ -118,8 +120,8 @@ READ16_MEMBER(jackpool_state::jackpool_io_r)
|
||||
case 0x1c: return ioport("BET")->read();
|
||||
case 0x1e: return 0xff; //ticket motor
|
||||
case 0x20: return 0xff; //hopper motor
|
||||
case 0x2c: return machine().device<eeprom_device>("eeprom")->read_bit();
|
||||
case 0x2e: return machine().device<eeprom_device>("eeprom")->read_bit();
|
||||
case 0x2c: return m_eeprom->read_bit();
|
||||
case 0x2e: return m_eeprom->read_bit();
|
||||
// default: printf("R %02x\n",offset*2); break;
|
||||
}
|
||||
|
||||
@ -146,11 +148,11 @@ WRITE16_MEMBER(jackpool_state::jackpool_io_w)
|
||||
case 0x4a: /* ---- ---x Ticket motor */break;
|
||||
case 0x4c: /* ---- ---x Hopper motor */break;
|
||||
case 0x4e: m_map_vreg = data & 1; break;
|
||||
case 0x50: machine().device<eeprom_device>("eeprom")->set_cs_line((data & 1) ? CLEAR_LINE : ASSERT_LINE ); break;
|
||||
case 0x52: machine().device<eeprom_device>("eeprom")->set_clock_line((data & 1) ? ASSERT_LINE : CLEAR_LINE ); break;
|
||||
case 0x54: machine().device<eeprom_device>("eeprom")->write_bit(data & 1); break;
|
||||
// case 0x5a: machine().device<eeprom_device>("eeprom")->set_cs_line((data & 1) ? CLEAR_LINE : ASSERT_LINE ); break;
|
||||
// case 0x5c: machine().device<eeprom_device>("eeprom")->set_cs_line((data & 1) ? CLEAR_LINE : ASSERT_LINE ); break;
|
||||
case 0x50: m_eeprom->set_cs_line((data & 1) ? CLEAR_LINE : ASSERT_LINE ); break;
|
||||
case 0x52: m_eeprom->set_clock_line((data & 1) ? ASSERT_LINE : CLEAR_LINE ); break;
|
||||
case 0x54: m_eeprom->write_bit(data & 1); break;
|
||||
// case 0x5a: m_eeprom->set_cs_line((data & 1) ? CLEAR_LINE : ASSERT_LINE ); break;
|
||||
// case 0x5c: m_eeprom->set_cs_line((data & 1) ? CLEAR_LINE : ASSERT_LINE ); break;
|
||||
case 0x60: break;
|
||||
// default: printf("[%02x] <- %02x W\n",offset*2,data); break;
|
||||
}
|
||||
@ -159,17 +161,17 @@ WRITE16_MEMBER(jackpool_state::jackpool_io_w)
|
||||
if(offset*2 == 0x54)
|
||||
{
|
||||
printf("Write bit %02x\n",data);
|
||||
machine().device<eeprom_device>("eeprom")->write_bit(data & 1);
|
||||
m_eeprom->write_bit(data & 1);
|
||||
}
|
||||
if(offset*2 == 0x52)
|
||||
{
|
||||
printf("Clock bit %02x\n",data);
|
||||
machine().device<eeprom_device>("eeprom")->set_clock_line((data & 1) ? ASSERT_LINE : CLEAR_LINE );
|
||||
m_eeprom->set_clock_line((data & 1) ? ASSERT_LINE : CLEAR_LINE );
|
||||
}
|
||||
if(offset*2 == 0x50)
|
||||
{
|
||||
printf("chip select bit %02x\n",data);
|
||||
machine().device<eeprom_device>("eeprom")->set_cs_line((data & 1) ? CLEAR_LINE : ASSERT_LINE );
|
||||
m_eeprom->set_cs_line((data & 1) ? CLEAR_LINE : ASSERT_LINE );
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
@ -505,29 +505,26 @@ static NVRAM_HANDLER( jaguar )
|
||||
*/
|
||||
WRITE32_MEMBER(jaguar_state::eeprom_w)
|
||||
{
|
||||
eeprom_device *eeprom = machine().device<eeprom_device>("eeprom");
|
||||
m_eeprom_bit_count++;
|
||||
if (m_eeprom_bit_count != 9) /* kill extra bit at end of address */
|
||||
{
|
||||
eeprom->write_bit(data >> 31);
|
||||
eeprom->set_clock_line(PULSE_LINE);
|
||||
m_eeprom->write_bit(data >> 31);
|
||||
m_eeprom->set_clock_line(PULSE_LINE);
|
||||
}
|
||||
}
|
||||
|
||||
READ32_MEMBER(jaguar_state::eeprom_clk)
|
||||
{
|
||||
eeprom_device *eeprom = machine().device<eeprom_device>("eeprom");
|
||||
eeprom->set_clock_line(PULSE_LINE); /* get next bit when reading */
|
||||
m_eeprom->set_clock_line(PULSE_LINE); /* get next bit when reading */
|
||||
return 0;
|
||||
}
|
||||
|
||||
READ32_MEMBER(jaguar_state::eeprom_cs)
|
||||
{
|
||||
eeprom_device *eeprom = machine().device<eeprom_device>("eeprom");
|
||||
eeprom->set_cs_line(ASSERT_LINE); /* must do at end of an operation */
|
||||
eeprom->set_cs_line(CLEAR_LINE); /* enable chip for next operation */
|
||||
eeprom->write_bit(1); /* write a start bit */
|
||||
eeprom->set_clock_line(PULSE_LINE);
|
||||
m_eeprom->set_cs_line(ASSERT_LINE); /* must do at end of an operation */
|
||||
m_eeprom->set_cs_line(CLEAR_LINE); /* enable chip for next operation */
|
||||
m_eeprom->write_bit(1); /* write a start bit */
|
||||
m_eeprom->set_clock_line(PULSE_LINE);
|
||||
m_eeprom_bit_count = 0;
|
||||
return 0;
|
||||
}
|
||||
@ -667,7 +664,7 @@ READ32_MEMBER(jaguar_state::joystick_r)
|
||||
}
|
||||
}
|
||||
|
||||
joystick_result |= machine().device<eeprom_device>("eeprom")->read_bit();
|
||||
joystick_result |= m_eeprom->read_bit();
|
||||
joybuts_result |= (ioport("CONFIG")->read() & 0x10);
|
||||
|
||||
return (joystick_result << 16) | joybuts_result;
|
||||
|
@ -1595,9 +1595,8 @@ WRITE8_MEMBER(kaneko16_state::kaneko16_eeprom_reset_w)
|
||||
{
|
||||
// FIXME: the device line cannot be directly put in the interface due to inverse value!
|
||||
// we might want to define a "reversed" set_cs_line handler
|
||||
eeprom_device *eeprom = machine().device<eeprom_device>("eeprom");
|
||||
// reset line asserted: reset.
|
||||
eeprom->set_cs_line((data & 0x01) ? CLEAR_LINE : ASSERT_LINE );
|
||||
m_eeprom->set_cs_line((data & 0x01) ? CLEAR_LINE : ASSERT_LINE );
|
||||
}
|
||||
|
||||
static const ay8910_interface ay8910_intf_eeprom =
|
||||
|
@ -167,7 +167,6 @@ WRITE8_MEMBER(lordgun_state::fake2_w)
|
||||
|
||||
WRITE8_MEMBER(lordgun_state::lordgun_eeprom_w)
|
||||
{
|
||||
eeprom_device *eeprom = machine().device<eeprom_device>("eeprom");
|
||||
int i;
|
||||
|
||||
if (data & ~0xfd)
|
||||
@ -184,13 +183,13 @@ WRITE8_MEMBER(lordgun_state::lordgun_eeprom_w)
|
||||
lordgun_update_gun(i);
|
||||
|
||||
// latch the bit
|
||||
eeprom->write_bit(data & 0x40);
|
||||
m_eeprom->write_bit(data & 0x40);
|
||||
|
||||
// reset line asserted: reset.
|
||||
eeprom->set_cs_line((data & 0x10) ? CLEAR_LINE : ASSERT_LINE );
|
||||
m_eeprom->set_cs_line((data & 0x10) ? CLEAR_LINE : ASSERT_LINE );
|
||||
|
||||
// clock line asserted: write latch or select next bit to read
|
||||
eeprom->set_clock_line((data & 0x20) ? ASSERT_LINE : CLEAR_LINE );
|
||||
m_eeprom->set_clock_line((data & 0x20) ? ASSERT_LINE : CLEAR_LINE );
|
||||
|
||||
m_whitescreen = data & 0x80;
|
||||
|
||||
@ -199,8 +198,6 @@ WRITE8_MEMBER(lordgun_state::lordgun_eeprom_w)
|
||||
|
||||
WRITE8_MEMBER(lordgun_state::aliencha_eeprom_w)
|
||||
{
|
||||
eeprom_device *eeprom = machine().device<eeprom_device>("eeprom");
|
||||
|
||||
if (~data & ~0xf8)
|
||||
{
|
||||
// popmessage("EE: %02x", data);
|
||||
@ -214,13 +211,13 @@ WRITE8_MEMBER(lordgun_state::aliencha_eeprom_w)
|
||||
coin_counter_w(machine(), 1, data & 0x10);
|
||||
|
||||
// latch the bit
|
||||
eeprom->write_bit(data & 0x80);
|
||||
m_eeprom->write_bit(data & 0x80);
|
||||
|
||||
// reset line asserted: reset.
|
||||
eeprom->set_cs_line((data & 0x20) ? CLEAR_LINE : ASSERT_LINE );
|
||||
m_eeprom->set_cs_line((data & 0x20) ? CLEAR_LINE : ASSERT_LINE );
|
||||
|
||||
// clock line asserted: write latch or select next bit to read
|
||||
eeprom->set_clock_line((data & 0x40) ? ASSERT_LINE : CLEAR_LINE );
|
||||
m_eeprom->set_clock_line((data & 0x40) ? ASSERT_LINE : CLEAR_LINE );
|
||||
}
|
||||
|
||||
|
||||
|
@ -412,11 +412,10 @@ WRITE32_MEMBER(model2_state::ctrl0_w)
|
||||
{
|
||||
if(ACCESSING_BITS_0_7)
|
||||
{
|
||||
eeprom_device *eeprom = machine().device<eeprom_device>("eeprom");
|
||||
m_ctrlmode = data & 0x01;
|
||||
eeprom->write_bit(data & 0x20);
|
||||
eeprom->set_clock_line((data & 0x80) ? ASSERT_LINE : CLEAR_LINE);
|
||||
eeprom->set_cs_line((data & 0x40) ? CLEAR_LINE : ASSERT_LINE);
|
||||
m_eeprom->write_bit(data & 0x20);
|
||||
m_eeprom->set_clock_line((data & 0x80) ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_eeprom->set_cs_line((data & 0x40) ? CLEAR_LINE : ASSERT_LINE);
|
||||
}
|
||||
}
|
||||
|
||||
@ -455,7 +454,7 @@ CUSTOM_INPUT_MEMBER(model2_state::_1c00000_r)
|
||||
else
|
||||
{
|
||||
ret &= ~0x0030;
|
||||
return ret | 0x00d0 | (machine().device<eeprom_device>("eeprom")->read_bit() << 5);
|
||||
return ret | 0x00d0 | (m_eeprom->read_bit() << 5);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1392,11 +1392,10 @@ WRITE64_MEMBER(model3_state::model3_ctrl_w)
|
||||
case 0:
|
||||
if (ACCESSING_BITS_56_63)
|
||||
{
|
||||
eeprom_device *eeprom = machine().device<eeprom_device>("eeprom");
|
||||
int reg = (data >> 56) & 0xff;
|
||||
eeprom->write_bit((reg & 0x20) ? 1 : 0);
|
||||
eeprom->set_clock_line((reg & 0x80) ? ASSERT_LINE : CLEAR_LINE);
|
||||
eeprom->set_cs_line((reg & 0x40) ? CLEAR_LINE : ASSERT_LINE);
|
||||
m_eeprom->write_bit((reg & 0x20) ? 1 : 0);
|
||||
m_eeprom->set_clock_line((reg & 0x80) ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_eeprom->set_cs_line((reg & 0x40) ? CLEAR_LINE : ASSERT_LINE);
|
||||
m_controls_bank = reg & 0xff;
|
||||
}
|
||||
return;
|
||||
|
@ -109,12 +109,10 @@ WRITE16_MEMBER(pirates_state::pirates_out_w)
|
||||
{
|
||||
if (ACCESSING_BITS_0_7)
|
||||
{
|
||||
eeprom_device *eeprom = machine().device<eeprom_device>("eeprom");
|
||||
|
||||
/* bits 0-2 control EEPROM */
|
||||
eeprom->write_bit(data & 0x04);
|
||||
eeprom->set_cs_line((data & 0x01) ? CLEAR_LINE : ASSERT_LINE);
|
||||
eeprom->set_clock_line((data & 0x02) ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_eeprom->write_bit(data & 0x04);
|
||||
m_eeprom->set_cs_line((data & 0x01) ? CLEAR_LINE : ASSERT_LINE);
|
||||
m_eeprom->set_clock_line((data & 0x02) ? ASSERT_LINE : CLEAR_LINE);
|
||||
|
||||
/* bit 6 selects oki bank */
|
||||
okim6295_device *oki = machine().device<okim6295_device>("oki");
|
||||
|
@ -137,10 +137,9 @@ WRITE32_MEMBER(policetr_state::control_w)
|
||||
/* handle EEPROM I/O */
|
||||
if (ACCESSING_BITS_16_23)
|
||||
{
|
||||
eeprom_device *eeprom = machine().device<eeprom_device>("eeprom");
|
||||
eeprom->write_bit(data & 0x00800000);
|
||||
eeprom->set_cs_line((data & 0x00200000) ? CLEAR_LINE : ASSERT_LINE);
|
||||
eeprom->set_clock_line((data & 0x00400000) ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_eeprom->write_bit(data & 0x00800000);
|
||||
m_eeprom->set_cs_line((data & 0x00200000) ? CLEAR_LINE : ASSERT_LINE);
|
||||
m_eeprom->set_clock_line((data & 0x00400000) ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
/* toggling BSMT off then on causes a reset */
|
||||
|
@ -666,15 +666,14 @@ void segas32_state::common_io_chip_w(address_space &space, int which, offs_t off
|
||||
|
||||
if (which == 0)
|
||||
{
|
||||
eeprom_device *eeprom = space.machine().device<eeprom_device>("eeprom");
|
||||
eeprom->write_bit(data & 0x80);
|
||||
eeprom->set_cs_line((data & 0x20) ? CLEAR_LINE : ASSERT_LINE);
|
||||
eeprom->set_clock_line((data & 0x40) ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_eeprom->write_bit(data & 0x80);
|
||||
m_eeprom->set_cs_line((data & 0x20) ? CLEAR_LINE : ASSERT_LINE);
|
||||
m_eeprom->set_clock_line((data & 0x40) ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
/* coin_lockout_w(space.machine(), 1 + 2*which, data & 0x08);
|
||||
coin_lockout_w(space.machine(), 0 + 2*which, data & 0x04);*/
|
||||
coin_counter_w(space.machine(), 1 + 2*which, data & 0x02);
|
||||
coin_counter_w(space.machine(), 0 + 2*which, data & 0x01);
|
||||
/* coin_lockout_w(machine(), 1 + 2*which, data & 0x08);
|
||||
coin_lockout_w(machine(), 0 + 2*which, data & 0x04);*/
|
||||
coin_counter_w(machine(), 1 + 2*which, data & 0x02);
|
||||
coin_counter_w(machine(), 0 + 2*which, data & 0x01);
|
||||
break;
|
||||
|
||||
/* tile banking */
|
||||
@ -684,10 +683,9 @@ void segas32_state::common_io_chip_w(address_space &space, int which, offs_t off
|
||||
else
|
||||
{
|
||||
/* multi-32 EEPROM access */
|
||||
eeprom_device *eeprom = space.machine().device<eeprom_device>("eeprom");
|
||||
eeprom->write_bit(data & 0x80);
|
||||
eeprom->set_cs_line((data & 0x20) ? CLEAR_LINE : ASSERT_LINE);
|
||||
eeprom->set_clock_line((data & 0x40) ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_eeprom->write_bit(data & 0x80);
|
||||
m_eeprom->set_cs_line((data & 0x20) ? CLEAR_LINE : ASSERT_LINE);
|
||||
m_eeprom->set_clock_line((data & 0x40) ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
break;
|
||||
|
||||
|
@ -184,7 +184,7 @@ READ8_MEMBER(spool99_state::spool99_io_r)
|
||||
case 0xafe4: return ioport("SERVICE2")->read();//attract mode
|
||||
// case 0xafe5: return 1;
|
||||
// case 0xafe6: return 1;
|
||||
case 0xafe7: return machine().device<eeprom_device>("eeprom")->read_bit();
|
||||
case 0xafe7: return m_eeprom->read_bit();
|
||||
case 0xaff8: return machine().device<okim6295_device>("oki")->read(space,0);
|
||||
}
|
||||
}
|
||||
@ -249,7 +249,7 @@ READ8_MEMBER(spool99_state::vcarn_io_r)
|
||||
case 0xa7a2: return ioport("START")->read();
|
||||
case 0xa7a3: return ioport("BET")->read();//system 2
|
||||
|
||||
case 0xa7a7: return machine().device<eeprom_device>("eeprom")->read_bit();
|
||||
case 0xa7a7: return m_eeprom->read_bit();
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -139,10 +139,9 @@ WRITE32_MEMBER(superchs_state::superchs_input_w)
|
||||
|
||||
if (ACCESSING_BITS_0_7)
|
||||
{
|
||||
eeprom_device *eeprom = machine().device<eeprom_device>("eeprom");
|
||||
eeprom->set_clock_line((data & 0x20) ? ASSERT_LINE : CLEAR_LINE);
|
||||
eeprom->write_bit(data & 0x40);
|
||||
eeprom->set_cs_line((data & 0x10) ? CLEAR_LINE : ASSERT_LINE);
|
||||
m_eeprom->set_clock_line((data & 0x20) ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_eeprom->write_bit(data & 0x40);
|
||||
m_eeprom->set_cs_line((data & 0x10) ? CLEAR_LINE : ASSERT_LINE);
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -965,15 +965,13 @@ static const eeprom_interface bbakraid_93C66_intf =
|
||||
|
||||
READ16_MEMBER(toaplan2_state::bbakraid_eeprom_r)
|
||||
{
|
||||
eeprom_device *eeprom = machine().device<eeprom_device>("eeprom");
|
||||
|
||||
// Bit 0x01 returns the status of BUSAK from the Z80.
|
||||
// BUSRQ is activated via bit 0x10 on the EEPROM write port.
|
||||
// These accesses are made when the 68K wants to read the Z80
|
||||
// ROM code. Failure to return the correct status incurrs a Sound Error.
|
||||
|
||||
int data;
|
||||
data = ((eeprom->read_bit() & 0x01) << 4);
|
||||
data = ((m_eeprom->read_bit() & 0x01) << 4);
|
||||
data |= ((m_z80_busreq >> 4) & 0x01); // Loop BUSRQ to BUSAK
|
||||
|
||||
return data;
|
||||
|
@ -287,10 +287,9 @@ WRITE32_MEMBER(undrfire_state::undrfire_input_w)
|
||||
|
||||
if (ACCESSING_BITS_0_7)
|
||||
{
|
||||
eeprom_device *eeprom = machine().device<eeprom_device>("eeprom");
|
||||
eeprom->set_clock_line((data & 0x20) ? ASSERT_LINE : CLEAR_LINE);
|
||||
eeprom->write_bit(data & 0x40);
|
||||
eeprom->set_cs_line((data & 0x10) ? CLEAR_LINE : ASSERT_LINE);
|
||||
m_eeprom->set_clock_line((data & 0x20) ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_eeprom->write_bit(data & 0x40);
|
||||
m_eeprom->set_cs_line((data & 0x10) ? CLEAR_LINE : ASSERT_LINE);
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -236,7 +236,6 @@ public:
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<cpu_device> m_subcpu;
|
||||
device_t *m_screen;
|
||||
device_t *m_eeprom;
|
||||
|
||||
INT32 *m_zoom_table;
|
||||
UINT16 *m_blitter_data;
|
||||
|
@ -6,6 +6,7 @@
|
||||
|
||||
#include "includes/mw8080bw.h"
|
||||
#include "sound/speaker.h"
|
||||
#include "machine/eeprom.h"
|
||||
/* for games in 8080bw.c */
|
||||
#define CABINET_PORT_TAG "CAB"
|
||||
|
||||
@ -18,7 +19,8 @@ public:
|
||||
m_schaser_effect_555_timer(*this, "schaser_sh_555"),
|
||||
m_claybust_gun_on(*this, "claybust_gun"),
|
||||
m_discrete(*this, "discrete"),
|
||||
m_speaker(*this, "speaker")
|
||||
m_speaker(*this, "speaker"),
|
||||
m_eeprom(*this, "eeprom")
|
||||
{ }
|
||||
|
||||
/* devices/memory pointers */
|
||||
@ -26,6 +28,7 @@ public:
|
||||
optional_device<timer_device> m_claybust_gun_on;
|
||||
optional_device<discrete_device> m_discrete;
|
||||
optional_device<speaker_sound_device> m_speaker;
|
||||
optional_device<eeprom_device> m_eeprom;
|
||||
|
||||
|
||||
/* misc game specific */
|
||||
|
@ -3,6 +3,7 @@
|
||||
Atari Centipede hardware
|
||||
|
||||
*************************************************************************/
|
||||
#include "machine/eeprom.h"
|
||||
|
||||
class centiped_state : public driver_device
|
||||
{
|
||||
@ -13,7 +14,8 @@ public:
|
||||
m_videoram(*this, "videoram"),
|
||||
m_spriteram(*this, "spriteram"),
|
||||
m_bullsdrt_tiles_bankram(*this, "bullsdrt_bank"),
|
||||
m_maincpu(*this, "maincpu") { }
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_eeprom(*this, "eeprom") { }
|
||||
|
||||
optional_shared_ptr<UINT8> m_rambase;
|
||||
required_shared_ptr<UINT8> m_videoram;
|
||||
@ -85,4 +87,5 @@ public:
|
||||
void milliped_set_color(offs_t offset, UINT8 data);
|
||||
inline int read_trackball(int idx, int switch_port);
|
||||
required_device<cpu_device> m_maincpu;
|
||||
optional_device<eeprom_device> m_eeprom;
|
||||
};
|
||||
|
@ -1,4 +1,5 @@
|
||||
#include "sound/discrete.h"
|
||||
#include "machine/eeprom.h"
|
||||
|
||||
/*
|
||||
* From the schematics:
|
||||
@ -85,7 +86,8 @@ public:
|
||||
m_vidhw(DKONG_BOARD),
|
||||
m_discrete(*this, "discrete"),
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_soundcpu(*this, "soundcpu") { }
|
||||
m_soundcpu(*this, "soundcpu"),
|
||||
m_eeprom(*this, "eeprom") { }
|
||||
|
||||
/* memory pointers */
|
||||
required_shared_ptr<UINT8> m_video_ram;
|
||||
@ -237,6 +239,7 @@ public:
|
||||
void drakton_decrypt_rom(UINT8 mod, int offs, int *bs);
|
||||
required_device<cpu_device> m_maincpu;
|
||||
optional_device<cpu_device> m_soundcpu;
|
||||
optional_device<eeprom_device> m_eeprom;
|
||||
};
|
||||
|
||||
/*----------- defined in audio/dkong.c -----------*/
|
||||
|
@ -1,4 +1,5 @@
|
||||
#include "video/poly.h"
|
||||
#include "machine/eeprom.h"
|
||||
|
||||
struct tempsprite
|
||||
{
|
||||
@ -17,7 +18,8 @@ public:
|
||||
: driver_device(mconfig, type, tag),
|
||||
m_ram(*this,"ram"),
|
||||
m_spriteram(*this,"spriteram") ,
|
||||
m_maincpu(*this, "maincpu") { }
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_eeprom(*this, "eeprom") { }
|
||||
|
||||
required_shared_ptr<UINT32> m_ram;
|
||||
required_shared_ptr<UINT32> m_spriteram;
|
||||
@ -56,4 +58,5 @@ public:
|
||||
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect, const int *primasks, int priority);
|
||||
void tc0610_rotate_draw(bitmap_ind16 &bitmap, bitmap_ind16 &srcbitmap, const rectangle &clip);
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<eeprom_device> m_eeprom;
|
||||
};
|
||||
|
@ -1,3 +1,5 @@
|
||||
#include "machine/eeprom.h"
|
||||
|
||||
struct tempsprite
|
||||
{
|
||||
int gfx;
|
||||
@ -15,7 +17,8 @@ public:
|
||||
: driver_device(mconfig, type, tag),
|
||||
m_maincpu(*this,"maincpu"),
|
||||
m_ram(*this,"ram"),
|
||||
m_spriteram(*this,"spriteram")
|
||||
m_spriteram(*this,"spriteram"),
|
||||
m_eeprom(*this, "eeprom")
|
||||
{
|
||||
m_coin_lockout = true;
|
||||
}
|
||||
@ -23,6 +26,7 @@ public:
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_shared_ptr<UINT32> m_ram;
|
||||
required_shared_ptr<UINT32> m_spriteram;
|
||||
required_device<eeprom_device> m_eeprom;
|
||||
|
||||
bool m_coin_lockout;
|
||||
UINT16 m_coin_word;
|
||||
|
@ -7,6 +7,7 @@
|
||||
#include "cpu/jaguar/jaguar.h"
|
||||
#include "machine/nvram.h"
|
||||
#include "sound/dac.h"
|
||||
#include "machine/eeprom.h"
|
||||
|
||||
#ifndef ENABLE_SPEEDUP_HACKS
|
||||
#define ENABLE_SPEEDUP_HACKS 1
|
||||
@ -52,7 +53,8 @@ public:
|
||||
m_joystick_data(0),
|
||||
m_eeprom_bit_count(0),
|
||||
m_protection_check(0) ,
|
||||
m_maincpu(*this, "maincpu") { }
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_eeprom(*this, "eeprom") { }
|
||||
|
||||
// devices
|
||||
required_device<cpu_device> m_main_cpu;
|
||||
@ -316,4 +318,5 @@ protected:
|
||||
void jaguar_nvram_load();
|
||||
void jaguar_nvram_save();
|
||||
required_device<cpu_device> m_maincpu;
|
||||
optional_device<eeprom_device> m_eeprom;
|
||||
};
|
||||
|
@ -13,7 +13,7 @@
|
||||
#include "machine/kaneko_calc3.h"
|
||||
#include "machine/kaneko_toybox.h"
|
||||
#include "sound/okim6295.h"
|
||||
|
||||
#include "machine/eeprom.h"
|
||||
|
||||
|
||||
class kaneko16_state : public driver_device
|
||||
@ -30,7 +30,8 @@ public:
|
||||
m_audiocpu(*this, "audiocpu"),
|
||||
m_oki(*this, "oki"),
|
||||
m_oki1(*this, "oki1"),
|
||||
m_oki2(*this, "oki2") { }
|
||||
m_oki2(*this, "oki2"),
|
||||
m_eeprom(*this, "eeprom") { }
|
||||
|
||||
required_device<cpu_device> m_maincpu;
|
||||
optional_shared_ptr<UINT16> m_spriteram;
|
||||
@ -78,6 +79,7 @@ public:
|
||||
optional_device<okim6295_device> m_oki;
|
||||
optional_device<okim6295_device> m_oki1;
|
||||
optional_device<okim6295_device> m_oki2;
|
||||
optional_device<eeprom_device> m_eeprom;
|
||||
};
|
||||
|
||||
class kaneko16_gtmr_state : public kaneko16_state
|
||||
|
@ -4,6 +4,7 @@
|
||||
|
||||
*************************************************************************/
|
||||
#include "sound/okim6295.h"
|
||||
#include "machine/eeprom.h"
|
||||
|
||||
struct lordgun_gun_data
|
||||
{
|
||||
@ -24,7 +25,8 @@ public:
|
||||
m_scroll_y(*this, "scroll_y") ,
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_soundcpu(*this, "soundcpu"),
|
||||
m_oki(*this, "oki") { }
|
||||
m_oki(*this, "oki"),
|
||||
m_eeprom(*this, "eeprom") { }
|
||||
|
||||
required_shared_ptr<UINT16> m_priority_ram;
|
||||
required_shared_ptr<UINT16> m_scrollram;
|
||||
@ -81,6 +83,7 @@ public:
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<cpu_device> m_soundcpu;
|
||||
required_device<okim6295_device> m_oki;
|
||||
required_device<eeprom_device> m_eeprom;
|
||||
};
|
||||
|
||||
/*----------- defined in video/lordgun.c -----------*/
|
||||
|
@ -1,5 +1,6 @@
|
||||
#include "video/poly.h"
|
||||
#include "audio/dsbz80.h"
|
||||
#include "machine/eeprom.h"
|
||||
|
||||
struct raster_state;
|
||||
struct geo_state;
|
||||
@ -21,7 +22,8 @@ public:
|
||||
m_soundram(*this, "soundram"),
|
||||
m_dsbz80(*this, DSBZ80_TAG),
|
||||
m_tgp_program(*this, "tgp_program"),
|
||||
m_audiocpu(*this, "audiocpu") { }
|
||||
m_audiocpu(*this, "audiocpu"),
|
||||
m_eeprom(*this, "eeprom") { }
|
||||
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_shared_ptr<UINT32> m_workram;
|
||||
@ -172,6 +174,7 @@ public:
|
||||
void model2_exit();
|
||||
DECLARE_WRITE_LINE_MEMBER(scsp_irq);
|
||||
required_device<cpu_device> m_audiocpu;
|
||||
required_device<eeprom_device> m_eeprom;
|
||||
};
|
||||
|
||||
/*----------- defined in video/model2.c -----------*/
|
||||
|
@ -2,6 +2,7 @@
|
||||
#include "machine/scsibus.h"
|
||||
#include "machine/53c810.h"
|
||||
#include "audio/dsbz80.h"
|
||||
#include "machine/eeprom.h"
|
||||
|
||||
typedef float MATRIX[4][4];
|
||||
typedef float VECTOR[4];
|
||||
@ -24,7 +25,8 @@ public:
|
||||
m_paletteram64(*this, "paletteram64"),
|
||||
m_dsbz80(*this, DSBZ80_TAG),
|
||||
m_soundram(*this, "soundram"),
|
||||
m_audiocpu(*this, "audiocpu"){ }
|
||||
m_audiocpu(*this, "audiocpu"),
|
||||
m_eeprom(*this, "eeprom"){ }
|
||||
|
||||
required_device<cpu_device> m_maincpu;
|
||||
optional_device<lsi53c810_device> m_lsi53c810;
|
||||
@ -207,6 +209,7 @@ public:
|
||||
void model3_exit();
|
||||
DECLARE_WRITE_LINE_MEMBER(scsp_irq);
|
||||
required_device<cpu_device> m_audiocpu;
|
||||
required_device<eeprom_device> m_eeprom;
|
||||
};
|
||||
|
||||
|
||||
|
@ -1,3 +1,5 @@
|
||||
#include "machine/eeprom.h"
|
||||
|
||||
class pirates_state : public driver_device
|
||||
{
|
||||
public:
|
||||
@ -8,7 +10,8 @@ public:
|
||||
m_tx_tileram(*this, "tx_tileram"),
|
||||
m_fg_tileram(*this, "fg_tileram"),
|
||||
m_bg_tileram(*this, "bg_tileram"),
|
||||
m_maincpu(*this, "maincpu") { }
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_eeprom(*this, "eeprom") { }
|
||||
|
||||
required_shared_ptr<UINT16> m_spriteram;
|
||||
required_shared_ptr<UINT16> m_scroll;
|
||||
@ -37,4 +40,5 @@ public:
|
||||
void pirates_decrypt_s();
|
||||
void pirates_decrypt_oki();
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<eeprom_device> m_eeprom;
|
||||
};
|
||||
|
@ -3,14 +3,15 @@
|
||||
P&P Marketing Police Trainer hardware
|
||||
|
||||
**************************************************************************/
|
||||
|
||||
#include "machine/eeprom.h"
|
||||
class policetr_state : public driver_device
|
||||
{
|
||||
public:
|
||||
policetr_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag),
|
||||
m_rambase(*this, "rambase"),
|
||||
m_maincpu(*this, "maincpu") { }
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_eeprom(*this, "eeprom") { }
|
||||
|
||||
UINT32 m_control_data;
|
||||
UINT32 m_bsmt_data_bank;
|
||||
@ -52,4 +53,5 @@ public:
|
||||
TIMER_CALLBACK_MEMBER(irq5_gen);
|
||||
void render_display_list(offs_t offset);
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<eeprom_device> m_eeprom;
|
||||
};
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
|
||||
#include "machine/eeprom.h"
|
||||
|
||||
|
||||
class segas32_state : public driver_device
|
||||
@ -19,7 +19,8 @@ public:
|
||||
m_system32_spriteram(*this,"spriteram", 0),
|
||||
m_system32_paletteram(*this,"paletteram", 0) ,
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_soundcpu(*this, "soundcpu") { }
|
||||
m_soundcpu(*this, "soundcpu"),
|
||||
m_eeprom(*this, "eeprom") { }
|
||||
|
||||
required_shared_ptr<UINT8> m_z80_shared_ram;
|
||||
optional_shared_ptr<UINT8> m_ga2_dpram;
|
||||
@ -253,6 +254,7 @@ public:
|
||||
DECLARE_WRITE_LINE_MEMBER(ym3438_irq_handler);
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<cpu_device> m_soundcpu;
|
||||
required_device<eeprom_device> m_eeprom;
|
||||
};
|
||||
|
||||
/*----------- defined in machine/segas32.c -----------*/
|
||||
|
@ -1,5 +1,6 @@
|
||||
/*----------- defined in drivers/stv.c -----------*/
|
||||
#include "cdrom.h"
|
||||
#include "machine/eeprom.h"
|
||||
|
||||
#define MAX_FILTERS (24)
|
||||
#define MAX_BLOCKS (200)
|
||||
@ -16,7 +17,8 @@ public:
|
||||
m_fake_comms(*this, "fake"),
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_slave(*this, "slave"),
|
||||
m_audiocpu(*this, "audiocpu")
|
||||
m_audiocpu(*this, "audiocpu"),
|
||||
m_eeprom(*this, "eeprom")
|
||||
{
|
||||
}
|
||||
|
||||
@ -140,6 +142,7 @@ public:
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<cpu_device> m_slave;
|
||||
required_device<cpu_device> m_audiocpu;
|
||||
optional_device<eeprom_device> m_eeprom;
|
||||
|
||||
bitmap_rgb32 m_tmpbitmap;
|
||||
DECLARE_VIDEO_START(stv_vdp2);
|
||||
|
@ -1,3 +1,4 @@
|
||||
#include "machine/eeprom.h"
|
||||
struct tempsprite
|
||||
{
|
||||
int gfx;
|
||||
@ -17,7 +18,8 @@ public:
|
||||
m_spriteram(*this,"spriteram"),
|
||||
m_shared_ram(*this,"shared_ram"),
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_subcpu(*this, "sub") { }
|
||||
m_subcpu(*this, "sub"),
|
||||
m_eeprom(*this, "eeprom") { }
|
||||
|
||||
UINT16 m_coin_word;
|
||||
required_shared_ptr<UINT32> m_ram;
|
||||
@ -43,4 +45,5 @@ public:
|
||||
void draw_sprites(bitmap_ind16 &bitmap,const rectangle &cliprect,const int *primasks,int x_offs,int y_offs);
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<cpu_device> m_subcpu;
|
||||
required_device<eeprom_device> m_eeprom;
|
||||
};
|
||||
|
@ -1,3 +1,4 @@
|
||||
#include "machine/eeprom.h"
|
||||
/**************** Machine stuff ******************/
|
||||
//#define USE_HD64x180 /* Define if CPU support is available */
|
||||
//#define TRUXTON2_STEREO /* Uncomment to hear truxton2 music in stereo */
|
||||
@ -24,7 +25,8 @@ public:
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_audiocpu(*this, "audiocpu"),
|
||||
m_oki(*this, "oki"),
|
||||
m_oki1(*this, "oki1") {
|
||||
m_oki1(*this, "oki1"),
|
||||
m_eeprom(*this, "eeprom") {
|
||||
m_vdp0 = NULL;
|
||||
m_vdp1 = NULL;
|
||||
}
|
||||
@ -145,4 +147,5 @@ public:
|
||||
optional_device<cpu_device> m_audiocpu;
|
||||
optional_device<okim6295_device> m_oki;
|
||||
optional_device<okim6295_device> m_oki1;
|
||||
optional_device<eeprom_device> m_eeprom;
|
||||
};
|
||||
|
@ -1,3 +1,4 @@
|
||||
#include "machine/eeprom.h"
|
||||
struct tempsprite
|
||||
{
|
||||
int gfx;
|
||||
@ -17,7 +18,8 @@ public:
|
||||
m_shared_ram(*this, "shared_ram"),
|
||||
m_spriteram(*this, "spriteram") ,
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_subcpu(*this, "sub") { }
|
||||
m_subcpu(*this, "sub"),
|
||||
m_eeprom(*this, "eeprom") { }
|
||||
|
||||
UINT16 m_coin_word;
|
||||
UINT16 m_port_sel;
|
||||
@ -53,4 +55,5 @@ public:
|
||||
void draw_sprites_cbombers(bitmap_ind16 &bitmap,const rectangle &cliprect,const int *primasks,int x_offs,int y_offs);
|
||||
required_device<cpu_device> m_maincpu;
|
||||
optional_device<cpu_device> m_subcpu;
|
||||
required_device<eeprom_device> m_eeprom;
|
||||
};
|
||||
|
@ -1112,8 +1112,6 @@ READ8_MEMBER(leland_state::leland_master_input_r)
|
||||
|
||||
WRITE8_MEMBER(leland_state::leland_master_output_w)
|
||||
{
|
||||
eeprom_device *eeprom;
|
||||
|
||||
switch (offset)
|
||||
{
|
||||
case 0x09: /* /MCONT */
|
||||
@ -1122,12 +1120,11 @@ WRITE8_MEMBER(leland_state::leland_master_output_w)
|
||||
m_slave->set_input_line(INPUT_LINE_NMI, (data & 0x04) ? CLEAR_LINE : ASSERT_LINE);
|
||||
m_slave->set_input_line(0, (data & 0x08) ? CLEAR_LINE : ASSERT_LINE);
|
||||
|
||||
eeprom = machine().device<eeprom_device>("eeprom");
|
||||
if (LOG_EEPROM) logerror("%04X:EE write %d%d%d\n", space.device().safe_pc(),
|
||||
(data >> 6) & 1, (data >> 5) & 1, (data >> 4) & 1);
|
||||
eeprom->write_bit ((data & 0x10) >> 4);
|
||||
eeprom->set_clock_line((data & 0x20) ? ASSERT_LINE : CLEAR_LINE);
|
||||
eeprom->set_cs_line ((~data & 0x40) ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_eeprom->write_bit ((data & 0x10) >> 4);
|
||||
m_eeprom->set_clock_line((data & 0x20) ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_eeprom->set_cs_line ((~data & 0x40) ? ASSERT_LINE : CLEAR_LINE);
|
||||
break;
|
||||
|
||||
case 0x0a: /* /OGIA */
|
||||
|
@ -30,6 +30,7 @@ public:
|
||||
m_main_cpu(*this, "maincpu"),
|
||||
m_control_cpu(*this, "control"),
|
||||
m_vdp(*this, "sms_vdp"),
|
||||
m_eeprom(*this, "eeprom"),
|
||||
m_main_scr(*this, "screen"),
|
||||
m_is_gamegear(0),
|
||||
m_is_region_japan(0),
|
||||
@ -45,7 +46,7 @@ public:
|
||||
required_device<cpu_device> m_main_cpu;
|
||||
optional_device<cpu_device> m_control_cpu;
|
||||
required_device<sega315_5124_device> m_vdp;
|
||||
eeprom_device *m_eeprom;
|
||||
optional_device<eeprom_device> m_eeprom;
|
||||
device_t *m_ym;
|
||||
required_device<screen_device> m_main_scr;
|
||||
device_t *m_left_lcd;
|
||||
|
@ -1910,7 +1910,6 @@ MACHINE_START_MEMBER(sms_state,sms)
|
||||
m_lphaser_1_timer = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(sms_state::lphaser_1_callback),this));
|
||||
m_lphaser_2_timer = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(sms_state::lphaser_2_callback),this));
|
||||
|
||||
m_eeprom = machine().device<eeprom_device>("eeprom");
|
||||
m_ym = machine().device("ym2413");
|
||||
m_left_lcd = machine().device("left_lcd");
|
||||
m_right_lcd = machine().device("right_lcd");
|
||||
|
Loading…
Reference in New Issue
Block a user