majtitl2: Use parallel EEPROM device
This commit is contained in:
parent
0c076ffcc7
commit
838c47fbec
@ -64,7 +64,7 @@ Glitch list!
|
|||||||
|
|
||||||
Irem Skins:
|
Irem Skins:
|
||||||
- EEPROM load/save not yet implemented - when done, MT2EEP should
|
- EEPROM load/save not yet implemented - when done, MT2EEP should
|
||||||
be removed from the ROM definition.
|
be removed from the ROM definition. (?)
|
||||||
|
|
||||||
LeagueMan:
|
LeagueMan:
|
||||||
Raster effects don't work properly (not even cpu time per line?).
|
Raster effects don't work properly (not even cpu time per line?).
|
||||||
@ -211,9 +211,9 @@ psoldier dip locations still need verification.
|
|||||||
#include "includes/iremipt.h"
|
#include "includes/iremipt.h"
|
||||||
|
|
||||||
#include "cpu/nec/nec.h"
|
#include "cpu/nec/nec.h"
|
||||||
|
#include "machine/eeprompar.h"
|
||||||
#include "machine/gen_latch.h"
|
#include "machine/gen_latch.h"
|
||||||
#include "machine/irem_cpu.h"
|
#include "machine/irem_cpu.h"
|
||||||
#include "machine/nvram.h"
|
|
||||||
#include "sound/ym2151.h"
|
#include "sound/ym2151.h"
|
||||||
#include "sound/iremga20.h"
|
#include "sound/iremga20.h"
|
||||||
#include "speaker.h"
|
#include "speaker.h"
|
||||||
@ -259,19 +259,6 @@ TIMER_DEVICE_CALLBACK_MEMBER(m92_state::scanline_interrupt)
|
|||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
uint16_t m92_state::eeprom_r(offs_t offset)
|
|
||||||
{
|
|
||||||
// logerror("%05x: EEPROM RE %04x\n",m_maincpu->pc(),offset);
|
|
||||||
return m_eeprom[offset] | 0xff00;
|
|
||||||
}
|
|
||||||
|
|
||||||
void m92_state::eeprom_w(offs_t offset, uint16_t data, uint16_t mem_mask)
|
|
||||||
{
|
|
||||||
// logerror("%05x: EEPROM WR %04x\n",m_maincpu->pc(),offset);
|
|
||||||
if (ACCESSING_BITS_0_7)
|
|
||||||
m_eeprom[offset] = data;
|
|
||||||
}
|
|
||||||
|
|
||||||
void m92_state::coincounter_w(uint8_t data)
|
void m92_state::coincounter_w(uint8_t data)
|
||||||
{
|
{
|
||||||
machine().bookkeeping().coin_counter_w(0, data & 0x01);
|
machine().bookkeeping().coin_counter_w(0, data & 0x01);
|
||||||
@ -350,7 +337,7 @@ void m92_state::m92_banked_map(address_map &map)
|
|||||||
void m92_state::majtitl2_map(address_map &map)
|
void m92_state::majtitl2_map(address_map &map)
|
||||||
{
|
{
|
||||||
m92_banked_map(map);
|
m92_banked_map(map);
|
||||||
map(0xf0000, 0xf3fff).rw(FUNC(m92_state::eeprom_r), FUNC(m92_state::eeprom_w)).share("eeprom");
|
map(0xf0000, 0xf3fff).rw("eeprom", FUNC(eeprom_parallel_28xx_device::read), FUNC(eeprom_parallel_28xx_device::write)).umask16(0x00ff);
|
||||||
}
|
}
|
||||||
|
|
||||||
void m92_state::m92_portmap(address_map &map)
|
void m92_state::m92_portmap(address_map &map)
|
||||||
@ -1012,7 +999,8 @@ void m92_state::majtitl2(machine_config &config)
|
|||||||
{
|
{
|
||||||
m92_banked(config);
|
m92_banked(config);
|
||||||
m_maincpu->set_addrmap(AS_PROGRAM, &m92_state::majtitl2_map);
|
m_maincpu->set_addrmap(AS_PROGRAM, &m92_state::majtitl2_map);
|
||||||
NVRAM(config, "eeprom", nvram_device::DEFAULT_ALL_0);
|
|
||||||
|
EEPROM_2864(config, "eeprom"); // D28C64C-20
|
||||||
|
|
||||||
m_soundcpu->set_decryption_table(majtitl2_decryption_table);
|
m_soundcpu->set_decryption_table(majtitl2_decryption_table);
|
||||||
}
|
}
|
||||||
@ -1183,8 +1171,8 @@ ROM_START( skingame )
|
|||||||
ROM_REGION( 0x80000, "irem", 0 )
|
ROM_REGION( 0x80000, "irem", 0 )
|
||||||
ROM_LOAD( "k0d.ic8", 0x000000, 0x80000, CRC(713b9e9f) SHA1(91384d67d4ba9c7d926fbecb077293c661b8ec83) )
|
ROM_LOAD( "k0d.ic8", 0x000000, 0x80000, CRC(713b9e9f) SHA1(91384d67d4ba9c7d926fbecb077293c661b8ec83) )
|
||||||
|
|
||||||
ROM_REGION( 0x4000, "eeprom", 0 ) /* D28C64C-20 EEPROM */
|
ROM_REGION( 0x2000, "eeprom", 0 ) /* D28C64C-20 EEPROM */
|
||||||
ROM_LOAD( "mt2eep", 0x000000, 0x800, CRC(208af971) SHA1(69384cac24b7af35a031f9b60e035131a8b10cb2) )
|
ROM_LOAD( "mt2eep", 0x000000, 0x800, CRC(208af971) SHA1(69384cac24b7af35a031f9b60e035131a8b10cb2) BAD_DUMP )
|
||||||
|
|
||||||
ROM_REGION( 0x0c00, "plds", 0 )
|
ROM_REGION( 0x0c00, "plds", 0 )
|
||||||
ROM_LOAD( "pal16l8-m92-a-3m.ic11", 0x0000, 0x0104, NO_DUMP ) /* PAL is read protected */
|
ROM_LOAD( "pal16l8-m92-a-3m.ic11", 0x0000, 0x0104, NO_DUMP ) /* PAL is read protected */
|
||||||
@ -1220,8 +1208,8 @@ ROM_START( majtitl2 )
|
|||||||
ROM_REGION( 0x80000, "irem", 0 )
|
ROM_REGION( 0x80000, "irem", 0 )
|
||||||
ROM_LOAD( "k0d.ic8", 0x000000, 0x80000, CRC(713b9e9f) SHA1(91384d67d4ba9c7d926fbecb077293c661b8ec83) )
|
ROM_LOAD( "k0d.ic8", 0x000000, 0x80000, CRC(713b9e9f) SHA1(91384d67d4ba9c7d926fbecb077293c661b8ec83) )
|
||||||
|
|
||||||
ROM_REGION( 0x4000, "eeprom", 0 ) /* D28C64C-20 EEPROM */
|
ROM_REGION( 0x2000, "eeprom", 0 ) /* D28C64C-20 EEPROM */
|
||||||
ROM_LOAD( "mt2eep", 0x000000, 0x800, CRC(208af971) SHA1(69384cac24b7af35a031f9b60e035131a8b10cb2) )
|
ROM_LOAD( "mt2eep", 0x000000, 0x800, CRC(208af971) SHA1(69384cac24b7af35a031f9b60e035131a8b10cb2) BAD_DUMP )
|
||||||
|
|
||||||
ROM_REGION( 0x0c00, "plds", 0 )
|
ROM_REGION( 0x0c00, "plds", 0 )
|
||||||
ROM_LOAD( "pal16l8-m92-a-3m.ic11", 0x0000, 0x0104, NO_DUMP ) /* PAL is read protected */
|
ROM_LOAD( "pal16l8-m92-a-3m.ic11", 0x0000, 0x0104, NO_DUMP ) /* PAL is read protected */
|
||||||
@ -1258,8 +1246,8 @@ ROM_START( majtitl2b )
|
|||||||
ROM_REGION( 0x80000, "irem", 0 )
|
ROM_REGION( 0x80000, "irem", 0 )
|
||||||
ROM_LOAD( "k0d.ic8", 0x000000, 0x80000, CRC(713b9e9f) SHA1(91384d67d4ba9c7d926fbecb077293c661b8ec83) )
|
ROM_LOAD( "k0d.ic8", 0x000000, 0x80000, CRC(713b9e9f) SHA1(91384d67d4ba9c7d926fbecb077293c661b8ec83) )
|
||||||
|
|
||||||
ROM_REGION( 0x4000, "eeprom", 0 ) /* D28C64C-20 EEPROM */
|
ROM_REGION( 0x2000, "eeprom", 0 ) /* D28C64C-20 EEPROM */
|
||||||
ROM_LOAD( "mt2eep", 0x000000, 0x800, CRC(208af971) SHA1(69384cac24b7af35a031f9b60e035131a8b10cb2) )
|
ROM_LOAD( "mt2eep", 0x000000, 0x800, CRC(208af971) SHA1(69384cac24b7af35a031f9b60e035131a8b10cb2) BAD_DUMP )
|
||||||
|
|
||||||
ROM_REGION( 0x0c00, "plds", 0 )
|
ROM_REGION( 0x0c00, "plds", 0 )
|
||||||
ROM_LOAD( "pal16l8-m92-a-3m.ic11", 0x0000, 0x0104, NO_DUMP ) /* PAL is read protected */
|
ROM_LOAD( "pal16l8-m92-a-3m.ic11", 0x0000, 0x0104, NO_DUMP ) /* PAL is read protected */
|
||||||
@ -1297,8 +1285,8 @@ ROM_START( majtitl2a )
|
|||||||
ROM_REGION( 0x80000, "irem", 0 )
|
ROM_REGION( 0x80000, "irem", 0 )
|
||||||
ROM_LOAD( "k0d.ic8", 0x000000, 0x80000, CRC(713b9e9f) SHA1(91384d67d4ba9c7d926fbecb077293c661b8ec83) )
|
ROM_LOAD( "k0d.ic8", 0x000000, 0x80000, CRC(713b9e9f) SHA1(91384d67d4ba9c7d926fbecb077293c661b8ec83) )
|
||||||
|
|
||||||
ROM_REGION( 0x4000, "eeprom", 0 ) /* D28C64C-20 EEPROM */
|
ROM_REGION( 0x2000, "eeprom", 0 ) /* D28C64C-20 EEPROM */
|
||||||
ROM_LOAD( "mt2eep", 0x000000, 0x800, CRC(208af971) SHA1(69384cac24b7af35a031f9b60e035131a8b10cb2) )
|
ROM_LOAD( "mt2eep", 0x000000, 0x800, CRC(208af971) SHA1(69384cac24b7af35a031f9b60e035131a8b10cb2) BAD_DUMP )
|
||||||
|
|
||||||
ROM_REGION( 0x0c00, "plds", 0 )
|
ROM_REGION( 0x0c00, "plds", 0 )
|
||||||
ROM_LOAD( "pal16l8-m92-a-3m.ic11", 0x0000, 0x0104, NO_DUMP ) /* PAL is read protected */
|
ROM_LOAD( "pal16l8-m92-a-3m.ic11", 0x0000, 0x0104, NO_DUMP ) /* PAL is read protected */
|
||||||
@ -1334,8 +1322,8 @@ ROM_START( majtitl2j )
|
|||||||
ROM_REGION( 0x80000, "irem", 0 )
|
ROM_REGION( 0x80000, "irem", 0 )
|
||||||
ROM_LOAD( "k0d.ic8", 0x000000, 0x80000, CRC(713b9e9f) SHA1(91384d67d4ba9c7d926fbecb077293c661b8ec83) )
|
ROM_LOAD( "k0d.ic8", 0x000000, 0x80000, CRC(713b9e9f) SHA1(91384d67d4ba9c7d926fbecb077293c661b8ec83) )
|
||||||
|
|
||||||
ROM_REGION( 0x4000, "eeprom", 0 ) /* D28C64C-20 EEPROM */
|
ROM_REGION( 0x2000, "eeprom", 0 ) /* D28C64C-20 EEPROM */
|
||||||
ROM_LOAD( "mt2eep", 0x000000, 0x800, CRC(208af971) SHA1(69384cac24b7af35a031f9b60e035131a8b10cb2) )
|
ROM_LOAD( "mt2eep", 0x000000, 0x800, CRC(208af971) SHA1(69384cac24b7af35a031f9b60e035131a8b10cb2) BAD_DUMP )
|
||||||
|
|
||||||
ROM_REGION( 0x0c00, "plds", 0 )
|
ROM_REGION( 0x0c00, "plds", 0 )
|
||||||
ROM_LOAD( "pal16l8-m92-a-3m.ic11", 0x0000, 0x0104, NO_DUMP ) /* PAL is read protected */
|
ROM_LOAD( "pal16l8-m92-a-3m.ic11", 0x0000, 0x0104, NO_DUMP ) /* PAL is read protected */
|
||||||
@ -1371,8 +1359,8 @@ ROM_START( skingame2 )
|
|||||||
ROM_REGION( 0x80000, "irem", 0 )
|
ROM_REGION( 0x80000, "irem", 0 )
|
||||||
ROM_LOAD( "k0d.ic8", 0x000000, 0x80000, CRC(713b9e9f) SHA1(91384d67d4ba9c7d926fbecb077293c661b8ec83) )
|
ROM_LOAD( "k0d.ic8", 0x000000, 0x80000, CRC(713b9e9f) SHA1(91384d67d4ba9c7d926fbecb077293c661b8ec83) )
|
||||||
|
|
||||||
ROM_REGION( 0x4000, "eeprom", 0 ) /* D28C64C-20 EEPROM */
|
ROM_REGION( 0x2000, "eeprom", 0 ) /* D28C64C-20 EEPROM */
|
||||||
ROM_LOAD( "mt2eep", 0x000000, 0x800, CRC(208af971) SHA1(69384cac24b7af35a031f9b60e035131a8b10cb2) )
|
ROM_LOAD( "mt2eep", 0x000000, 0x800, CRC(208af971) SHA1(69384cac24b7af35a031f9b60e035131a8b10cb2) BAD_DUMP )
|
||||||
|
|
||||||
ROM_REGION( 0x0c00, "plds", 0 )
|
ROM_REGION( 0x0c00, "plds", 0 )
|
||||||
ROM_LOAD( "pal16l8-m92-a-3m.ic11", 0x0000, 0x0104, NO_DUMP ) /* PAL is read protected */
|
ROM_LOAD( "pal16l8-m92-a-3m.ic11", 0x0000, 0x0104, NO_DUMP ) /* PAL is read protected */
|
||||||
|
@ -47,7 +47,6 @@ public:
|
|||||||
m_screen(*this, "screen"),
|
m_screen(*this, "screen"),
|
||||||
m_palette(*this, "palette"),
|
m_palette(*this, "palette"),
|
||||||
m_upd71059c(*this, "upd71059c"),
|
m_upd71059c(*this, "upd71059c"),
|
||||||
m_eeprom(*this, "eeprom"),
|
|
||||||
m_mainbank(*this, "mainbank")
|
m_mainbank(*this, "mainbank")
|
||||||
{ }
|
{ }
|
||||||
|
|
||||||
@ -86,7 +85,6 @@ private:
|
|||||||
required_device<palette_device> m_palette;
|
required_device<palette_device> m_palette;
|
||||||
required_device<pic8259_device> m_upd71059c;
|
required_device<pic8259_device> m_upd71059c;
|
||||||
|
|
||||||
optional_shared_ptr<uint8_t> m_eeprom;
|
|
||||||
optional_memory_bank m_mainbank;
|
optional_memory_bank m_mainbank;
|
||||||
|
|
||||||
emu_timer *m_spritebuffer_timer;
|
emu_timer *m_spritebuffer_timer;
|
||||||
@ -99,8 +97,6 @@ private:
|
|||||||
uint8_t m_palette_bank;
|
uint8_t m_palette_bank;
|
||||||
std::vector<uint16_t> m_paletteram;
|
std::vector<uint16_t> m_paletteram;
|
||||||
|
|
||||||
uint16_t eeprom_r(offs_t offset);
|
|
||||||
void eeprom_w(offs_t offset, uint16_t data, uint16_t mem_mask = ~0);
|
|
||||||
void coincounter_w(uint8_t data);
|
void coincounter_w(uint8_t data);
|
||||||
void bankswitch_w(uint8_t data);
|
void bankswitch_w(uint8_t data);
|
||||||
void sound_reset_w(uint16_t data);
|
void sound_reset_w(uint16_t data);
|
||||||
|
Loading…
Reference in New Issue
Block a user