mirror of
https://github.com/holub/mame
synced 2025-05-28 16:43:04 +03:00
Converted gaelco3d.c to use eeprom device code. This fixes the regression reported by Tafoid.
This commit is contained in:
parent
367be04864
commit
5719b6c623
@ -147,7 +147,7 @@ REF. 970429
|
||||
#include "includes/gaelco3d.h"
|
||||
#include "cpu/tms32031/tms32031.h"
|
||||
#include "cpu/adsp2100/adsp2100.h"
|
||||
#include "machine/eeprom.h"
|
||||
#include "machine/eepromdev.h"
|
||||
#include "sound/dmadac.h"
|
||||
|
||||
#define LOG 0
|
||||
@ -268,10 +268,10 @@ static WRITE16_HANDLER( irq_ack_w )
|
||||
*
|
||||
*************************************/
|
||||
|
||||
static READ16_HANDLER( eeprom_data_r )
|
||||
static READ16_DEVICE_HANDLER( eeprom_data_r )
|
||||
{
|
||||
UINT16 result = 0xffff;
|
||||
if (eeprom_read_bit())
|
||||
if (eepromdev_read_bit(device))
|
||||
result ^= 0x0004;
|
||||
if (LOG)
|
||||
logerror("eeprom_data_r(%02X)\n", result);
|
||||
@ -279,24 +279,24 @@ static READ16_HANDLER( eeprom_data_r )
|
||||
}
|
||||
|
||||
|
||||
static WRITE16_HANDLER( eeprom_data_w )
|
||||
static WRITE16_DEVICE_HANDLER( eeprom_data_w )
|
||||
{
|
||||
if (ACCESSING_BITS_0_7)
|
||||
eeprom_write_bit(data & 0x01);
|
||||
eepromdev_write_bit(device, data & 0x01);
|
||||
}
|
||||
|
||||
|
||||
static WRITE16_HANDLER( eeprom_clock_w )
|
||||
static WRITE16_DEVICE_HANDLER( eeprom_clock_w )
|
||||
{
|
||||
if (ACCESSING_BITS_0_7)
|
||||
eeprom_set_clock_line((data & 0x01) ? ASSERT_LINE : CLEAR_LINE);
|
||||
eepromdev_set_clock_line(device, (data & 0x01) ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
|
||||
static WRITE16_HANDLER( eeprom_cs_w )
|
||||
static WRITE16_DEVICE_HANDLER( eeprom_cs_w )
|
||||
{
|
||||
if (ACCESSING_BITS_0_7)
|
||||
eeprom_set_cs_line((data & 0x01) ? CLEAR_LINE : ASSERT_LINE);
|
||||
eepromdev_set_cs_line(device, (data & 0x01) ? CLEAR_LINE : ASSERT_LINE);
|
||||
}
|
||||
|
||||
|
||||
@ -742,13 +742,13 @@ static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x51003c, 0x51003d) AM_READ_PORT("IN3")
|
||||
AM_RANGE(0x510040, 0x510041) AM_WRITE(sound_data_w)
|
||||
AM_RANGE(0x510042, 0x510043) AM_READ(sound_status_r)
|
||||
AM_RANGE(0x510100, 0x510101) AM_READ(eeprom_data_r)
|
||||
AM_RANGE(0x510100, 0x510101) AM_DEVREAD("eeprom", eeprom_data_r)
|
||||
AM_RANGE(0x510100, 0x510101) AM_WRITE(irq_ack_w)
|
||||
AM_RANGE(0x51010a, 0x51010b) AM_WRITENOP // very noisy when starting a new game
|
||||
AM_RANGE(0x510110, 0x510113) AM_WRITE(eeprom_data_w)
|
||||
AM_RANGE(0x510110, 0x510113) AM_DEVWRITE("eeprom", eeprom_data_w)
|
||||
AM_RANGE(0x510116, 0x510117) AM_WRITE(tms_control3_w)
|
||||
AM_RANGE(0x510118, 0x51011b) AM_WRITE(eeprom_clock_w)
|
||||
AM_RANGE(0x510120, 0x510123) AM_WRITE(eeprom_cs_w)
|
||||
AM_RANGE(0x510118, 0x51011b) AM_DEVWRITE("eeprom", eeprom_clock_w)
|
||||
AM_RANGE(0x510120, 0x510123) AM_DEVWRITE("eeprom", eeprom_cs_w)
|
||||
AM_RANGE(0x51012a, 0x51012b) AM_WRITE(tms_reset_w)
|
||||
AM_RANGE(0x510132, 0x510133) AM_WRITE(tms_irq_w)
|
||||
AM_RANGE(0x510146, 0x510147) AM_WRITE(led_0_w)
|
||||
@ -769,13 +769,13 @@ static ADDRESS_MAP_START( main020_map, ADDRESS_SPACE_PROGRAM, 32 )
|
||||
AM_RANGE(0x51003c, 0x51003f) AM_READ_PORT("IN3")
|
||||
AM_RANGE(0x510040, 0x510043) AM_READ16(sound_status_r, 0x0000ffff)
|
||||
AM_RANGE(0x510040, 0x510043) AM_WRITE16(sound_data_w, 0xffff0000)
|
||||
AM_RANGE(0x510100, 0x510103) AM_READ16(eeprom_data_r, 0xffff0000)
|
||||
AM_RANGE(0x510100, 0x510103) AM_DEVREAD16("eeprom", eeprom_data_r, 0xffff0000)
|
||||
AM_RANGE(0x510100, 0x510103) AM_WRITE16(irq_ack_w, 0xffff0000)
|
||||
AM_RANGE(0x510104, 0x510107) AM_WRITE(unknown_107_w)
|
||||
AM_RANGE(0x510110, 0x510113) AM_WRITE16(eeprom_data_w, 0x0000ffff)
|
||||
AM_RANGE(0x510110, 0x510113) AM_DEVWRITE16("eeprom", eeprom_data_w, 0x0000ffff)
|
||||
AM_RANGE(0x510114, 0x510117) AM_WRITE16(tms_control3_w, 0x0000ffff)
|
||||
AM_RANGE(0x510118, 0x51011b) AM_WRITE16(eeprom_clock_w, 0x0000ffff)
|
||||
AM_RANGE(0x510120, 0x510123) AM_WRITE16(eeprom_cs_w, 0x0000ffff)
|
||||
AM_RANGE(0x510118, 0x51011b) AM_DEVWRITE16("eeprom", eeprom_clock_w, 0x0000ffff)
|
||||
AM_RANGE(0x510120, 0x510123) AM_DEVWRITE16("eeprom", eeprom_cs_w, 0x0000ffff)
|
||||
AM_RANGE(0x510124, 0x510127) AM_WRITE(unknown_127_w)
|
||||
AM_RANGE(0x510128, 0x51012b) AM_WRITE16(tms_reset_w, 0x0000ffff)
|
||||
AM_RANGE(0x510130, 0x510133) AM_WRITE16(tms_irq_w, 0x0000ffff)
|
||||
@ -805,7 +805,7 @@ static ADDRESS_MAP_START( adsp_data_map, ADDRESS_SPACE_DATA, 16 )
|
||||
AM_RANGE(0x0000, 0x0001) AM_WRITE(adsp_rombank_w)
|
||||
AM_RANGE(0x0000, 0x1fff) AM_ROMBANK("bank1")
|
||||
AM_RANGE(0x2000, 0x2000) AM_READWRITE(sound_data_r, sound_status_w)
|
||||
AM_RANGE(0x3800, 0x39ff) AM_RAM AM_BASE(&adsp_fastram_base) /* 512 words internal RAM */
|
||||
AM_RANGE(0x3800, 0x39ff) AM_RAM AM_BASE(&adsp_fastram_base) /* 512 words internal RAM */
|
||||
AM_RANGE(0x3fe0, 0x3fff) AM_WRITE(adsp_control_w) AM_BASE(&adsp_control_regs)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
@ -969,7 +969,8 @@ static MACHINE_DRIVER_START( gaelco3d )
|
||||
|
||||
MDRV_MACHINE_START(gaelco3d)
|
||||
MDRV_MACHINE_RESET(gaelco3d)
|
||||
MDRV_NVRAM_HANDLER(93C66B)
|
||||
|
||||
MDRV_EEPROM_93C66B_NODEFAULT_ADD("eeprom")
|
||||
|
||||
MDRV_QUANTUM_TIME(HZ(6000))
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user