mirror of
https://github.com/holub/mame
synced 2025-05-23 14:19:01 +03:00
Death to more NVRAM_HANDLERS.
This commit is contained in:
parent
499a0d4161
commit
79c16f4260
@ -294,6 +294,7 @@ Notes & Todo:
|
||||
#include "video/ppu2c0x.h"
|
||||
#include "cpu/z80/z80.h"
|
||||
#include "machine/rp5h01.h"
|
||||
#include "machine/nvram.h"
|
||||
#include "sound/dac.h"
|
||||
#include "sound/nes_apu.h"
|
||||
|
||||
@ -336,18 +337,6 @@ static WRITE8_HANDLER( sprite_dma_w )
|
||||
ppu2c0x_spriteram_dma( space, space->machine->device("ppu"), source );
|
||||
}
|
||||
|
||||
static NVRAM_HANDLER( playch10 )
|
||||
{
|
||||
UINT8 *mem = memory_region( machine, "cart" ) + 0x6000;
|
||||
|
||||
if ( read_or_write )
|
||||
mame_fwrite( file, mem, 0x1000 );
|
||||
else if (file)
|
||||
mame_fread( file, mem, 0x1000 );
|
||||
else
|
||||
memset(mem, 0, 0x1000);
|
||||
}
|
||||
|
||||
/* Only used in single monitor bios */
|
||||
static UINT8 *timedata;
|
||||
|
||||
@ -733,7 +722,7 @@ static MACHINE_CONFIG_START( playch10, playch10_state )
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
static MACHINE_CONFIG_DERIVED( playchnv, playch10 )
|
||||
MDRV_NVRAM_HANDLER(playch10)
|
||||
MDRV_NVRAM_ADD_0FILL("nvram")
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
static MACHINE_CONFIG_DERIVED( playch10_hboard, playch10 )
|
||||
|
@ -274,6 +274,7 @@ Notes:
|
||||
#include "machine/fd1089.h"
|
||||
#include "machine/segaic16.h"
|
||||
#include "machine/8255ppi.h"
|
||||
#include "machine/nvram.h"
|
||||
#include "cpu/m68000/m68000.h"
|
||||
#include "sound/2151intf.h"
|
||||
#include "sound/segapcm.h"
|
||||
@ -415,6 +416,8 @@ static void outrun_generic_init(running_machine *machine)
|
||||
state->subcpu = machine->device("sub");
|
||||
state->ppi8255 = machine->device("ppi8255");
|
||||
|
||||
machine->device<nvram_device>("nvram")->set_base(workram, 0x8000);
|
||||
|
||||
state_save_register_global(machine, state->adc_select);
|
||||
state_save_register_global(machine, state->vblank_irq_state);
|
||||
state_save_register_global(machine, state->irq2_state);
|
||||
@ -777,22 +780,6 @@ static WRITE16_HANDLER( shangon_custom_io_w )
|
||||
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Capacitor-backed RAM
|
||||
*
|
||||
*************************************/
|
||||
|
||||
static NVRAM_HANDLER( outrun )
|
||||
{
|
||||
if (read_or_write)
|
||||
mame_fwrite(file, workram, 0x8000);
|
||||
else if (file)
|
||||
mame_fread(file, workram, 0x8000);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Main CPU memory handlers
|
||||
@ -1161,14 +1148,14 @@ static MACHINE_CONFIG_DERIVED( outrundx, outrun_base )
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
static MACHINE_CONFIG_DERIVED( outrun, outrun_base )
|
||||
MDRV_NVRAM_HANDLER(outrun)
|
||||
MDRV_NVRAM_ADD_0FILL("nvram")
|
||||
|
||||
MDRV_SEGA16SP_ADD_OUTRUN("segaspr1")
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
||||
static MACHINE_CONFIG_DERIVED( shangon, outrun_base )
|
||||
MDRV_NVRAM_HANDLER(outrun)
|
||||
MDRV_NVRAM_ADD_0FILL("nvram")
|
||||
|
||||
MDRV_SCREEN_MODIFY("screen")
|
||||
MDRV_SCREEN_RAW_PARAMS(MASTER_CLOCK_25MHz/4, 400, 0, 321, 262, 0, 224)
|
||||
|
@ -152,6 +152,7 @@ Tetris - - - - EPR12169 EPR12170 -
|
||||
#include "machine/segacrp2.h"
|
||||
#include "machine/fd1089.h"
|
||||
#include "machine/i8243.h"
|
||||
#include "machine/nvram.h"
|
||||
#include "cpu/mcs48/mcs48.h"
|
||||
#include "sound/dac.h"
|
||||
#include "sound/2151intf.h"
|
||||
@ -995,22 +996,6 @@ static INTERRUPT_GEN( mcu_irq_assert )
|
||||
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Capacitor-backed RAM
|
||||
*
|
||||
*************************************/
|
||||
|
||||
static NVRAM_HANDLER( system16a )
|
||||
{
|
||||
if (read_or_write)
|
||||
mame_fwrite(file, workram, 0x4000);
|
||||
else if (file)
|
||||
mame_fread(file, workram, 0x4000);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Main CPU memory handlers
|
||||
@ -1026,7 +1011,7 @@ static ADDRESS_MAP_START( system16a_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x840000, 0x840fff) AM_MIRROR(0x3bf000) AM_RAM_WRITE(segaic16_paletteram_w) AM_BASE(&segaic16_paletteram)
|
||||
AM_RANGE(0xc40000, 0xc43fff) AM_MIRROR(0x39c000) AM_READWRITE(misc_io_r, misc_io_w)
|
||||
AM_RANGE(0xc60000, 0xc6ffff) AM_READ(watchdog_reset16_r)
|
||||
AM_RANGE(0xc70000, 0xc73fff) AM_MIRROR(0x38c000) AM_RAM AM_BASE(&workram)
|
||||
AM_RANGE(0xc70000, 0xc73fff) AM_MIRROR(0x38c000) AM_RAM AM_BASE(&workram) AM_SHARE("nvram")
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
@ -1974,7 +1959,7 @@ static MACHINE_CONFIG_START( system16a, segas1x_state )
|
||||
|
||||
MDRV_MACHINE_START(system16a)
|
||||
MDRV_MACHINE_RESET(system16a)
|
||||
MDRV_NVRAM_HANDLER(system16a)
|
||||
MDRV_NVRAM_ADD_0FILL("nvram")
|
||||
|
||||
MDRV_PPI8255_ADD( "ppi8255", single_ppi_intf )
|
||||
|
||||
|
@ -877,6 +877,7 @@ CPU - 317-0092 |--------------------------------------------------------------
|
||||
#include "machine/fd1089.h"
|
||||
#include "machine/fd1094.h"
|
||||
#include "machine/mc8123.h"
|
||||
#include "machine/nvram.h"
|
||||
#include "sound/2151intf.h"
|
||||
#include "sound/2413intf.h"
|
||||
#include "sound/upd7759.h"
|
||||
@ -910,6 +911,7 @@ CPU - 317-0092 |--------------------------------------------------------------
|
||||
static UINT16 *workram;
|
||||
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Prototypes
|
||||
@ -1082,6 +1084,8 @@ static void system16b_generic_init(running_machine *machine, int _rom_board)
|
||||
/* init the FD1094 */
|
||||
fd1094_driver_init(machine, "maincpu", segaic16_memory_mapper_set_decrypted);
|
||||
|
||||
machine->device<nvram_device>("nvram")->set_base(workram, 0x4000);
|
||||
|
||||
state_save_register_global_pointer(machine, segaic16_spriteram_0, 0x00800/2);
|
||||
state_save_register_global_pointer(machine, segaic16_paletteram, 0x01000/2);
|
||||
state_save_register_global_pointer(machine, segaic16_tileram_0, 0x10000/2);
|
||||
@ -1783,22 +1787,6 @@ static WRITE16_HANDLER( sjryuko_custom_io_w )
|
||||
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Capacitor-backed RAM
|
||||
*
|
||||
*************************************/
|
||||
|
||||
static NVRAM_HANDLER( system16b )
|
||||
{
|
||||
if (read_or_write)
|
||||
mame_fwrite(file, workram, 0x4000);
|
||||
else if (file)
|
||||
mame_fread(file, workram, 0x4000);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Main CPU memory handlers
|
||||
@ -3293,7 +3281,7 @@ static MACHINE_CONFIG_START( system16b, segas1x_state )
|
||||
MDRV_CPU_IO_MAP(sound_portmap)
|
||||
|
||||
MDRV_MACHINE_RESET(system16b)
|
||||
MDRV_NVRAM_HANDLER(system16b)
|
||||
MDRV_NVRAM_ADD_0FILL("nvram")
|
||||
|
||||
/* video hardware */
|
||||
MDRV_GFXDECODE(segas16b)
|
||||
|
@ -33,6 +33,7 @@
|
||||
#include "cpu/mcs51/mcs51.h"
|
||||
#include "deprecat.h"
|
||||
#include "machine/segaic16.h"
|
||||
#include "machine/nvram.h"
|
||||
#include "includes/segas16.h"
|
||||
#include "includes/genesis.h"
|
||||
#include "sound/2612intf.h"
|
||||
@ -179,6 +180,8 @@ static void system18_generic_init(running_machine *machine, int _rom_board)
|
||||
state->soundcpu = machine->device("soundcpu");
|
||||
state->mcu = machine->device("mcu");
|
||||
|
||||
machine->device<nvram_device>("nvram")->set_base(workram, 0x4000);
|
||||
|
||||
state_save_register_global(machine, state->mcu_data);
|
||||
state_save_register_global(machine, state->lghost_value);
|
||||
state_save_register_global(machine, state->lghost_select);
|
||||
@ -597,22 +600,6 @@ static WRITE8_HANDLER( mcu_data_w )
|
||||
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Capacitor-backed RAM
|
||||
*
|
||||
*************************************/
|
||||
|
||||
static NVRAM_HANDLER( system18 )
|
||||
{
|
||||
if (read_or_write)
|
||||
mame_fwrite(file, workram, 0x4000);
|
||||
else if (file)
|
||||
mame_fread(file, workram, 0x4000);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Main CPU memory handlers
|
||||
@ -1300,7 +1287,7 @@ static MACHINE_CONFIG_START( system18, segas1x_state )
|
||||
MDRV_CPU_IO_MAP(sound_portmap)
|
||||
|
||||
MDRV_MACHINE_RESET(system18)
|
||||
MDRV_NVRAM_HANDLER(system18)
|
||||
MDRV_NVRAM_ADD_0FILL("nvram")
|
||||
|
||||
/* video hardware */
|
||||
MDRV_SCREEN_ADD("screen", RASTER)
|
||||
|
@ -236,6 +236,7 @@ Notes:
|
||||
#include "includes/segas16.h"
|
||||
#include "cpu/m68000/m68000.h"
|
||||
#include "machine/segaic16.h"
|
||||
#include "machine/nvram.h"
|
||||
#include "sound/2151intf.h"
|
||||
#include "sound/segapcm.h"
|
||||
#include "video/segaic16.h"
|
||||
@ -246,14 +247,6 @@ Notes:
|
||||
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Statics
|
||||
*
|
||||
*************************************/
|
||||
|
||||
static UINT16 *backupram1, *backupram2;
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Configuration
|
||||
@ -712,28 +705,6 @@ static WRITE16_HANDLER( smgp_excs_w )
|
||||
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Capacitor-backed RAM
|
||||
*
|
||||
*************************************/
|
||||
|
||||
static NVRAM_HANDLER( xboard )
|
||||
{
|
||||
if (read_or_write)
|
||||
{
|
||||
mame_fwrite(file, backupram1, 0x4000);
|
||||
mame_fwrite(file, backupram2, 0x4000);
|
||||
}
|
||||
else if (file)
|
||||
{
|
||||
mame_fread(file, backupram1, 0x4000);
|
||||
mame_fread(file, backupram2, 0x4000);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Main CPU memory handlers
|
||||
@ -744,8 +715,8 @@ static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
ADDRESS_MAP_UNMAP_HIGH
|
||||
ADDRESS_MAP_GLOBAL_MASK(0x3fffff)
|
||||
AM_RANGE(0x000000, 0x07ffff) AM_ROM
|
||||
AM_RANGE(0x080000, 0x083fff) AM_MIRROR(0x01c000) AM_RAM AM_SHARE("share1") AM_BASE(&backupram1)
|
||||
AM_RANGE(0x0a0000, 0x0a3fff) AM_MIRROR(0x01c000) AM_RAM AM_SHARE("share2") AM_BASE(&backupram2)
|
||||
AM_RANGE(0x080000, 0x083fff) AM_MIRROR(0x01c000) AM_RAM AM_SHARE("backup1")
|
||||
AM_RANGE(0x0a0000, 0x0a3fff) AM_MIRROR(0x01c000) AM_RAM AM_SHARE("backup2")
|
||||
AM_RANGE(0x0c0000, 0x0cffff) AM_RAM_WRITE(segaic16_tileram_0_w) AM_BASE(&segaic16_tileram_0)
|
||||
AM_RANGE(0x0d0000, 0x0d0fff) AM_MIRROR(0x00f000) AM_RAM_WRITE(segaic16_textram_0_w) AM_BASE(&segaic16_textram_0)
|
||||
AM_RANGE(0x0e0000, 0x0e0007) AM_MIRROR(0x003ff8) AM_DEVREADWRITE("5248_main", segaic16_multiply_r, segaic16_multiply_w)
|
||||
@ -767,8 +738,8 @@ static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x2ec000, 0x2ecfff) AM_MIRROR(0x001000) AM_RAM AM_SHARE("share5") AM_BASE(&segaic16_roadram_0)
|
||||
AM_RANGE(0x2ee000, 0x2effff) AM_READWRITE(segaic16_road_control_0_r, segaic16_road_control_0_w)
|
||||
// AM_RANGE(0x2f0000, 0x2f3fff) AM_READWRITE(excs_r, excs_w)
|
||||
AM_RANGE(0x3f8000, 0x3fbfff) AM_RAM AM_SHARE("share1")
|
||||
AM_RANGE(0x3fc000, 0x3fffff) AM_RAM AM_SHARE("share2")
|
||||
AM_RANGE(0x3f8000, 0x3fbfff) AM_RAM AM_SHARE("backup1")
|
||||
AM_RANGE(0x3fc000, 0x3fffff) AM_RAM AM_SHARE("backup2")
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
@ -1377,7 +1348,8 @@ static MACHINE_CONFIG_START( xboard, segas1x_state )
|
||||
MDRV_CPU_IO_MAP(sound_portmap)
|
||||
|
||||
MDRV_MACHINE_RESET(xboard)
|
||||
MDRV_NVRAM_HANDLER(xboard)
|
||||
MDRV_NVRAM_ADD_0FILL("backup1")
|
||||
MDRV_NVRAM_ADD_0FILL("backup2")
|
||||
MDRV_QUANTUM_TIME(HZ(6000))
|
||||
|
||||
MDRV_315_5248_ADD("5248_main")
|
||||
|
@ -27,6 +27,7 @@ Known games currently not dumped:
|
||||
#include "includes/segas16.h"
|
||||
#include "cpu/m68000/m68000.h"
|
||||
#include "machine/segaic16.h"
|
||||
#include "machine/nvram.h"
|
||||
#include "sound/2151intf.h"
|
||||
#include "sound/segapcm.h"
|
||||
#include "video/segaic16.h"
|
||||
@ -48,8 +49,6 @@ Known games currently not dumped:
|
||||
*
|
||||
*************************************/
|
||||
|
||||
static UINT16 *backupram;
|
||||
|
||||
/* callbacks to handle output */
|
||||
typedef void (*yboard_output_callback)(UINT16 data);
|
||||
static yboard_output_callback ybd_output_cb1, ybd_output_cb2;
|
||||
@ -410,22 +409,6 @@ static WRITE16_HANDLER( analog_w )
|
||||
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Capacitor-backed RAM
|
||||
*
|
||||
*************************************/
|
||||
|
||||
static NVRAM_HANDLER( yboard )
|
||||
{
|
||||
if (read_or_write)
|
||||
mame_fwrite(file, backupram, 0x4000);
|
||||
else if (file)
|
||||
mame_fread(file, backupram, 0x4000);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Main CPU memory handlers
|
||||
@ -463,7 +446,7 @@ static ADDRESS_MAP_START( subx_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x0c0000, 0x0cffff) AM_RAM AM_SHARE("share1")
|
||||
AM_RANGE(0x180000, 0x18ffff) AM_RAM AM_BASE(&segaic16_spriteram_1)
|
||||
AM_RANGE(0x1f8000, 0x1fbfff) AM_RAM
|
||||
AM_RANGE(0x1fc000, 0x1fffff) AM_RAM AM_BASE(&backupram)
|
||||
AM_RANGE(0x1fc000, 0x1fffff) AM_RAM AM_SHARE("backupram")
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
@ -1021,7 +1004,7 @@ static MACHINE_CONFIG_START( yboard, segas1x_state )
|
||||
|
||||
MDRV_MACHINE_START(yboard)
|
||||
MDRV_MACHINE_RESET(yboard)
|
||||
MDRV_NVRAM_HANDLER(yboard)
|
||||
MDRV_NVRAM_ADD_0FILL("backupram")
|
||||
MDRV_QUANTUM_TIME(HZ(6000))
|
||||
|
||||
MDRV_TIMER_ADD("int_timer", scanline_callback)
|
||||
|
@ -184,6 +184,7 @@ Notes:
|
||||
#include "cpu/v60/v60.h"
|
||||
#include "deprecat.h"
|
||||
#include "machine/eeprom.h"
|
||||
#include "machine/nvram.h"
|
||||
#include "sound/es5506.h"
|
||||
#include "includes/ssv.h"
|
||||
|
||||
@ -350,25 +351,6 @@ static MACHINE_RESET( ssv )
|
||||
}
|
||||
|
||||
|
||||
/***************************************************************************
|
||||
|
||||
|
||||
Non-Volatile RAM
|
||||
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
static NVRAM_HANDLER( ssv )
|
||||
{
|
||||
ssv_state *state = machine->driver_data<ssv_state>();
|
||||
|
||||
if (read_or_write)
|
||||
mame_fwrite(file, state->nvram, state->nvram_size);
|
||||
else
|
||||
if (file)
|
||||
mame_fread(file, state->nvram, state->nvram_size);
|
||||
}
|
||||
|
||||
/***************************************************************************
|
||||
|
||||
|
||||
@ -454,7 +436,7 @@ static ADDRESS_MAP_START( drifto94_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x500000, 0x500001) AM_WRITENOP // ??
|
||||
AM_RANGE(0x510000, 0x510001) AM_READ(drifto94_rand_r ) // ??
|
||||
AM_RANGE(0x520000, 0x520001) AM_READ(drifto94_rand_r ) // ??
|
||||
AM_RANGE(0x580000, 0x5807ff) AM_RAM AM_BASE_MEMBER(ssv_state, nvram) AM_SIZE_MEMBER(ssv_state, nvram_size) // NVRAM
|
||||
AM_RANGE(0x580000, 0x5807ff) AM_RAM AM_SHARE("nvram") // NVRAM
|
||||
SSV_MAP( 0xc00000 )
|
||||
ADDRESS_MAP_END
|
||||
|
||||
@ -695,7 +677,7 @@ static ADDRESS_MAP_START( meosism_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
// AM_RANGE(0x210002, 0x210003) AM_WRITENOP // ? 5 at the start
|
||||
// AM_RANGE(0x280000, 0x280001) AM_READNOP // ? read once, value not used
|
||||
// AM_RANGE(0x500004, 0x500005) AM_WRITENOP // ? 0,58,18
|
||||
AM_RANGE(0x580000, 0x58ffff) AM_RAM AM_BASE_MEMBER(ssv_state, nvram) AM_SIZE_MEMBER(ssv_state, nvram_size) // NVRAM
|
||||
AM_RANGE(0x580000, 0x58ffff) AM_RAM AM_SHARE("nvram") // NVRAM
|
||||
SSV_MAP( 0xf00000 )
|
||||
ADDRESS_MAP_END
|
||||
|
||||
@ -883,7 +865,7 @@ static ADDRESS_MAP_START( sxyreact_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x500002, 0x500003) AM_READ(sxyreact_ballswitch_r) // ?
|
||||
AM_RANGE(0x500004, 0x500005) AM_READWRITE(sxyreact_dial_r, sxyreact_motor_w) // Dial Value (serial)
|
||||
AM_RANGE(0x520000, 0x520001) AM_WRITE(sxyreact_dial_w) // Dial Value (advance 1 bit)
|
||||
AM_RANGE(0x580000, 0x58ffff) AM_RAM AM_BASE_MEMBER(ssv_state, nvram) AM_SIZE_MEMBER(ssv_state, nvram_size) // NVRAM
|
||||
AM_RANGE(0x580000, 0x58ffff) AM_RAM AM_SHARE("nvram") // NVRAM
|
||||
SSV_MAP( 0xe00000 )
|
||||
ADDRESS_MAP_END
|
||||
|
||||
@ -1055,7 +1037,7 @@ static ADDRESS_MAP_START( eaglshot_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x800000, 0x800001) AM_WRITE(eaglshot_gfxrom_w)
|
||||
AM_RANGE(0x900000, 0x900001) AM_WRITE(eaglshot_trackball_w)
|
||||
AM_RANGE(0xa00000, 0xbfffff) AM_READ(eaglshot_gfxrom_r)
|
||||
AM_RANGE(0xc00000, 0xc007ff) AM_RAM AM_BASE_MEMBER(ssv_state, nvram) AM_SIZE_MEMBER(ssv_state, nvram_size) // NVRAM
|
||||
AM_RANGE(0xc00000, 0xc007ff) AM_RAM AM_SHARE("nvram") // NVRAM
|
||||
AM_RANGE(0xd00000, 0xd00001) AM_READ(eaglshot_trackball_r)
|
||||
SSV_MAP( 0xf00000 )
|
||||
ADDRESS_MAP_END
|
||||
@ -2723,7 +2705,7 @@ static MACHINE_CONFIG_DERIVED( drifto94, ssv )
|
||||
MDRV_CPU_MODIFY("maincpu")
|
||||
MDRV_CPU_PROGRAM_MAP(drifto94_map)
|
||||
|
||||
MDRV_NVRAM_HANDLER(ssv)
|
||||
MDRV_NVRAM_ADD_0FILL("nvram")
|
||||
|
||||
/* video hardware */
|
||||
MDRV_SCREEN_MODIFY("screen")
|
||||
@ -2804,7 +2786,7 @@ static MACHINE_CONFIG_DERIVED( meosism, ssv )
|
||||
MDRV_CPU_MODIFY("maincpu")
|
||||
MDRV_CPU_PROGRAM_MAP(meosism_map)
|
||||
|
||||
MDRV_NVRAM_HANDLER(ssv)
|
||||
MDRV_NVRAM_ADD_0FILL("nvram")
|
||||
|
||||
/* video hardware */
|
||||
MDRV_SCREEN_MODIFY("screen")
|
||||
@ -2876,7 +2858,7 @@ static MACHINE_CONFIG_DERIVED( stmblade, ssv )
|
||||
MDRV_CPU_MODIFY("maincpu")
|
||||
MDRV_CPU_PROGRAM_MAP(drifto94_map)
|
||||
|
||||
MDRV_NVRAM_HANDLER(ssv)
|
||||
MDRV_NVRAM_ADD_0FILL("nvram")
|
||||
/* video hardware */
|
||||
MDRV_SCREEN_MODIFY("screen")
|
||||
MDRV_SCREEN_VISIBLE_AREA(0, (0xd6-0x26)*2-1, 0, (0xfe - 0x0e)-1)
|
||||
@ -2910,7 +2892,7 @@ static MACHINE_CONFIG_DERIVED( eaglshot, ssv )
|
||||
MDRV_CPU_MODIFY("maincpu")
|
||||
MDRV_CPU_PROGRAM_MAP(eaglshot_map)
|
||||
|
||||
MDRV_NVRAM_HANDLER(ssv)
|
||||
MDRV_NVRAM_ADD_0FILL("nvram")
|
||||
|
||||
/* video hardware */
|
||||
MDRV_SCREEN_MODIFY("screen")
|
||||
@ -2928,7 +2910,7 @@ static MACHINE_CONFIG_DERIVED( sxyreact, ssv )
|
||||
MDRV_CPU_MODIFY("maincpu")
|
||||
MDRV_CPU_PROGRAM_MAP(sxyreact_map)
|
||||
|
||||
MDRV_NVRAM_HANDLER(ssv)
|
||||
MDRV_NVRAM_ADD_0FILL("nvram")
|
||||
|
||||
/* video hardware */
|
||||
MDRV_SCREEN_MODIFY("screen")
|
||||
@ -2941,7 +2923,7 @@ static MACHINE_CONFIG_DERIVED( sxyreac2, ssv )
|
||||
MDRV_CPU_MODIFY("maincpu")
|
||||
MDRV_CPU_PROGRAM_MAP(sxyreact_map)
|
||||
|
||||
MDRV_NVRAM_HANDLER(ssv)
|
||||
MDRV_NVRAM_ADD_0FILL("nvram")
|
||||
|
||||
/* video hardware */
|
||||
MDRV_SCREEN_MODIFY("screen")
|
||||
@ -2954,7 +2936,7 @@ static MACHINE_CONFIG_DERIVED( cairblad, ssv )
|
||||
MDRV_CPU_MODIFY("maincpu")
|
||||
MDRV_CPU_PROGRAM_MAP(sxyreact_map)
|
||||
|
||||
MDRV_NVRAM_HANDLER(ssv)
|
||||
MDRV_NVRAM_ADD_0FILL("nvram")
|
||||
|
||||
/* video hardware */
|
||||
MDRV_SCREEN_MODIFY("screen")
|
||||
|
@ -39,6 +39,7 @@ Notes:
|
||||
#include "sound/ymz280b.h"
|
||||
#include "rocknms.lh"
|
||||
#include "includes/tetrisp2.h"
|
||||
#include "machine/nvram.h"
|
||||
|
||||
UINT16 tetrisp2_systemregs[0x10];
|
||||
static UINT16 rocknms_sub_systemregs[0x10];
|
||||
@ -222,23 +223,6 @@ static READ16_HANDLER( tetrisp2_ip_1_word_r )
|
||||
***************************************************************************/
|
||||
|
||||
static UINT16 *tetrisp2_nvram;
|
||||
static size_t tetrisp2_nvram_size;
|
||||
|
||||
static NVRAM_HANDLER( tetrisp2 )
|
||||
{
|
||||
if (read_or_write)
|
||||
mame_fwrite(file,tetrisp2_nvram,tetrisp2_nvram_size);
|
||||
else
|
||||
{
|
||||
if (file)
|
||||
mame_fread(file,tetrisp2_nvram,tetrisp2_nvram_size);
|
||||
else
|
||||
{
|
||||
/* fill in the default values */
|
||||
memset(tetrisp2_nvram,0,tetrisp2_nvram_size);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* The game only ever writes even bytes and reads odd bytes */
|
||||
@ -322,7 +306,7 @@ static ADDRESS_MAP_START( tetrisp2_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x600000, 0x60ffff) AM_RAM_WRITE(tetrisp2_vram_rot_w) AM_BASE(&tetrisp2_vram_rot) // Rotation
|
||||
AM_RANGE(0x650000, 0x651fff) AM_RAM_WRITE(tetrisp2_vram_rot_w) // Rotation (mirror)
|
||||
AM_RANGE(0x800000, 0x800003) AM_DEVREADWRITE8("ymz", ymz280b_r, ymz280b_w, 0x00ff) // Sound
|
||||
AM_RANGE(0x900000, 0x903fff) AM_READWRITE(tetrisp2_nvram_r, tetrisp2_nvram_w) AM_BASE(&tetrisp2_nvram) AM_SIZE(&tetrisp2_nvram_size) // NVRAM
|
||||
AM_RANGE(0x900000, 0x903fff) AM_READWRITE(tetrisp2_nvram_r, tetrisp2_nvram_w) AM_BASE(&tetrisp2_nvram) AM_SHARE("nvram") // NVRAM
|
||||
AM_RANGE(0x904000, 0x907fff) AM_READWRITE(tetrisp2_nvram_r, tetrisp2_nvram_w) // NVRAM (mirror)
|
||||
AM_RANGE(0xb00000, 0xb00001) AM_WRITE(tetrisp2_coincounter_w) // Coin Counter
|
||||
AM_RANGE(0xb20000, 0xb20001) AM_WRITENOP // ???
|
||||
@ -384,7 +368,7 @@ static ADDRESS_MAP_START( nndmseal_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
|
||||
AM_RANGE(0x800000, 0x800003) AM_DEVREADWRITE8_MODERN("oki", okim6295_device, read, write, 0x00ff ) // Sound
|
||||
|
||||
AM_RANGE(0x900000, 0x903fff) AM_READWRITE(tetrisp2_nvram_r, tetrisp2_nvram_w) AM_BASE(&tetrisp2_nvram) AM_SIZE(&tetrisp2_nvram_size ) // NVRAM
|
||||
AM_RANGE(0x900000, 0x903fff) AM_READWRITE(tetrisp2_nvram_r, tetrisp2_nvram_w) AM_BASE(&tetrisp2_nvram) AM_SHARE("nvram") // NVRAM
|
||||
|
||||
AM_RANGE(0xb00000, 0xb00001) AM_WRITE(nndmseal_coincounter_w) // Coin Counter
|
||||
AM_RANGE(0xb20000, 0xb20001) AM_WRITE(nndmseal_b20000_w) // ???
|
||||
@ -423,7 +407,7 @@ static ADDRESS_MAP_START( rockn1_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x408000, 0x409fff) AM_RAM // ???
|
||||
AM_RANGE(0x500000, 0x50ffff) AM_RAM // Line
|
||||
AM_RANGE(0x600000, 0x60ffff) AM_RAM_WRITE(tetrisp2_vram_rot_w) AM_BASE(&tetrisp2_vram_rot) // Rotation
|
||||
AM_RANGE(0x900000, 0x903fff) AM_READWRITE(rockn_nvram_r, tetrisp2_nvram_w) AM_BASE(&tetrisp2_nvram) AM_SIZE(&tetrisp2_nvram_size) // NVRAM
|
||||
AM_RANGE(0x900000, 0x903fff) AM_READWRITE(rockn_nvram_r, tetrisp2_nvram_w) AM_BASE(&tetrisp2_nvram) AM_SHARE("nvram") // NVRAM
|
||||
AM_RANGE(0xa30000, 0xa30001) AM_READWRITE(rockn_soundvolume_r, rockn_soundvolume_w) // Sound Volume
|
||||
AM_RANGE(0xa40000, 0xa40003) AM_DEVREADWRITE8("ymz", ymz280b_r, ymz280b_w, 0x00ff) // Sound
|
||||
AM_RANGE(0xa44000, 0xa44001) AM_READWRITE(rockn_adpcmbank_r, rockn_adpcmbank_w) // Sound Bank
|
||||
@ -457,7 +441,7 @@ static ADDRESS_MAP_START( rockn2_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x800000, 0x803fff) AM_RAM_WRITE(tetrisp2_vram_fg_w) AM_BASE(&tetrisp2_vram_fg) // Foreground
|
||||
AM_RANGE(0x804000, 0x807fff) AM_RAM_WRITE(tetrisp2_vram_bg_w) AM_BASE(&tetrisp2_vram_bg) // Background
|
||||
AM_RANGE(0x808000, 0x809fff) AM_RAM // ???
|
||||
AM_RANGE(0x900000, 0x903fff) AM_READWRITE(rockn_nvram_r, tetrisp2_nvram_w) AM_BASE(&tetrisp2_nvram) AM_SIZE(&tetrisp2_nvram_size) // NVRAM
|
||||
AM_RANGE(0x900000, 0x903fff) AM_READWRITE(rockn_nvram_r, tetrisp2_nvram_w) AM_BASE(&tetrisp2_nvram) AM_SHARE("nvram") // NVRAM
|
||||
AM_RANGE(0xa30000, 0xa30001) AM_READWRITE(rockn_soundvolume_r, rockn_soundvolume_w) // Sound Volume
|
||||
AM_RANGE(0xa40000, 0xa40003) AM_DEVREADWRITE8("ymz", ymz280b_r, ymz280b_w, 0x00ff) // Sound
|
||||
AM_RANGE(0xa44000, 0xa44001) AM_READWRITE(rockn_adpcmbank_r, rockn2_adpcmbank_w) // Sound Bank
|
||||
@ -491,7 +475,7 @@ static ADDRESS_MAP_START( rocknms_main_map, ADDRESS_SPACE_PROGRAM, 16 )
|
||||
AM_RANGE(0x800000, 0x803fff) AM_RAM_WRITE(tetrisp2_vram_fg_w) AM_BASE(&tetrisp2_vram_fg) // Foreground
|
||||
AM_RANGE(0x804000, 0x807fff) AM_RAM_WRITE(tetrisp2_vram_bg_w) AM_BASE(&tetrisp2_vram_bg) // Background
|
||||
// AM_RANGE(0x808000, 0x809fff) AM_RAM // ???
|
||||
AM_RANGE(0x900000, 0x903fff) AM_READWRITE(rockn_nvram_r, tetrisp2_nvram_w) AM_BASE(&tetrisp2_nvram) AM_SIZE(&tetrisp2_nvram_size) // NVRAM
|
||||
AM_RANGE(0x900000, 0x903fff) AM_READWRITE(rockn_nvram_r, tetrisp2_nvram_w) AM_BASE(&tetrisp2_nvram) AM_SHARE("nvram") // NVRAM
|
||||
AM_RANGE(0xa30000, 0xa30001) AM_READWRITE(rockn_soundvolume_r, rockn_soundvolume_w) // Sound Volume
|
||||
AM_RANGE(0xa40000, 0xa40003) AM_DEVREADWRITE8("ymz", ymz280b_r, ymz280b_w, 0x00ff) // Sound
|
||||
AM_RANGE(0xa44000, 0xa44001) AM_READWRITE(rockn_adpcmbank_r, rockn_adpcmbank_w) // Sound Bank
|
||||
@ -1113,7 +1097,7 @@ static MACHINE_CONFIG_START( tetrisp2, driver_device )
|
||||
MDRV_CPU_PROGRAM_MAP(tetrisp2_map)
|
||||
MDRV_CPU_VBLANK_INT("screen", irq2_line_hold)
|
||||
|
||||
MDRV_NVRAM_HANDLER(tetrisp2)
|
||||
MDRV_NVRAM_ADD_0FILL("nvram")
|
||||
MDRV_WATCHDOG_VBLANK_INIT(8) /* guess */
|
||||
|
||||
/* video hardware */
|
||||
@ -1146,7 +1130,7 @@ static MACHINE_CONFIG_START( nndmseal, driver_device )
|
||||
MDRV_CPU_PROGRAM_MAP(nndmseal_map)
|
||||
MDRV_CPU_VBLANK_INT("screen", irq2_line_hold)
|
||||
|
||||
MDRV_NVRAM_HANDLER(tetrisp2)
|
||||
MDRV_NVRAM_ADD_0FILL("nvram")
|
||||
|
||||
/* video hardware */
|
||||
MDRV_SCREEN_ADD("screen", RASTER)
|
||||
@ -1177,7 +1161,7 @@ static MACHINE_CONFIG_START( rockn, driver_device )
|
||||
MDRV_CPU_PROGRAM_MAP(rockn1_map)
|
||||
MDRV_CPU_VBLANK_INT("screen", irq2_line_hold)
|
||||
|
||||
MDRV_NVRAM_HANDLER(tetrisp2)
|
||||
MDRV_NVRAM_ADD_0FILL("nvram")
|
||||
|
||||
/* video hardware */
|
||||
MDRV_SCREEN_ADD("screen", RASTER)
|
||||
@ -1209,7 +1193,7 @@ static MACHINE_CONFIG_START( rockn2, driver_device )
|
||||
MDRV_CPU_PROGRAM_MAP(rockn2_map)
|
||||
MDRV_CPU_VBLANK_INT("screen", irq2_line_hold)
|
||||
|
||||
MDRV_NVRAM_HANDLER(tetrisp2)
|
||||
MDRV_NVRAM_ADD_0FILL("nvram")
|
||||
|
||||
/* video hardware */
|
||||
MDRV_SCREEN_ADD("screen", RASTER)
|
||||
@ -1245,7 +1229,7 @@ static MACHINE_CONFIG_START( rocknms, driver_device )
|
||||
MDRV_CPU_PROGRAM_MAP(rocknms_sub_map)
|
||||
MDRV_CPU_VBLANK_INT("lscreen", irq2_line_hold)
|
||||
|
||||
MDRV_NVRAM_HANDLER(tetrisp2)
|
||||
MDRV_NVRAM_ADD_0FILL("nvram")
|
||||
|
||||
/* video hardware */
|
||||
|
||||
|
@ -30,6 +30,7 @@
|
||||
#include "video/vector.h"
|
||||
#include "video/avgdvg.h"
|
||||
#include "machine/timekpr.h"
|
||||
#include "machine/nvram.h"
|
||||
#include "machine/6532riot.h"
|
||||
#include "sound/pokey.h"
|
||||
#include "sound/tms5220.h"
|
||||
@ -333,6 +334,7 @@ static MACHINE_START(tomcat)
|
||||
((UINT16*)tomcat_shared_ram)[0x0003] = 0x0000;
|
||||
|
||||
tomcat_nvram = auto_alloc_array(machine, UINT8, 0x800);
|
||||
machine->device<nvram_device>("nvram")->set_base(tomcat_nvram, 0x800);
|
||||
|
||||
state_save_register_global_pointer(machine, tomcat_nvram, 0x800);
|
||||
state_save_register_global(machine, tomcat_control_num);
|
||||
@ -342,17 +344,6 @@ static MACHINE_START(tomcat)
|
||||
dsp_BIO = 0;
|
||||
}
|
||||
|
||||
static NVRAM_HANDLER(tomcat)
|
||||
{
|
||||
if (read_or_write)
|
||||
mame_fwrite(file, tomcat_nvram, 0x800);
|
||||
else
|
||||
if (file)
|
||||
mame_fread(file, tomcat_nvram, 0x800);
|
||||
else
|
||||
memset(tomcat_nvram, 0x00, 0x800);
|
||||
}
|
||||
|
||||
static const riot6532_interface tomcat_riot6532_intf =
|
||||
{
|
||||
DEVCB_NULL,
|
||||
@ -394,7 +385,7 @@ static MACHINE_CONFIG_START( tomcat, driver_device )
|
||||
|
||||
MDRV_MACHINE_START(tomcat)
|
||||
|
||||
MDRV_NVRAM_HANDLER(tomcat)
|
||||
MDRV_NVRAM_ADD_0FILL("nvram")
|
||||
|
||||
MDRV_M48T02_ADD( "m48t02" )
|
||||
|
||||
|
@ -52,6 +52,7 @@
|
||||
#include "cpu/mcs51/mcs51.h"
|
||||
#include "cpu/e132xs/e132xs.h"
|
||||
#include "machine/eeprom.h"
|
||||
#include "machine/nvram.h"
|
||||
#include "sound/2151intf.h"
|
||||
#include "sound/okim6295.h"
|
||||
|
||||
@ -636,21 +637,6 @@ static GFXDECODE_START( vamphalf )
|
||||
GFXDECODE_END
|
||||
|
||||
|
||||
static NVRAM_HANDLER( finalgdr )
|
||||
{
|
||||
if (read_or_write)
|
||||
{
|
||||
mame_fwrite(file, finalgdr_backupram, 0x80*0x100);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (file)
|
||||
{
|
||||
mame_fread(file, finalgdr_backupram, 0x80*0x100);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static ADDRESS_MAP_START( qs1000_prg_map, ADDRESS_SPACE_PROGRAM, 8 )
|
||||
AM_RANGE( 0x0000, 0xffff) AM_ROM
|
||||
ADDRESS_MAP_END
|
||||
@ -774,7 +760,7 @@ static MACHINE_CONFIG_DERIVED( finalgdr, common )
|
||||
MDRV_CPU_IO_MAP(finalgdr_io)
|
||||
MDRV_CPU_VBLANK_INT("screen", irq1_line_hold)
|
||||
|
||||
MDRV_NVRAM_HANDLER(finalgdr)
|
||||
MDRV_NVRAM_ADD_0FILL("nvram")
|
||||
|
||||
MDRV_FRAGMENT_ADD(sound_ym_oki)
|
||||
MACHINE_CONFIG_END
|
||||
@ -784,7 +770,7 @@ static MACHINE_CONFIG_DERIVED( mrkicker, common )
|
||||
MDRV_CPU_PROGRAM_MAP(common_32bit_map)
|
||||
MDRV_CPU_IO_MAP(mrkicker_io)
|
||||
|
||||
MDRV_NVRAM_HANDLER(finalgdr)
|
||||
MDRV_NVRAM_ADD_0FILL("nvram")
|
||||
|
||||
MDRV_FRAGMENT_ADD(sound_ym_oki)
|
||||
MACHINE_CONFIG_END
|
||||
@ -1872,6 +1858,7 @@ static DRIVER_INIT( finalgdr )
|
||||
finalgdr_backupram_bank = 1;
|
||||
finalgdr_backupram = auto_alloc_array(machine, UINT8, 0x80*0x100);
|
||||
memory_install_read32_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x005e874, 0x005e877, 0, 0, finalgdr_speedup_r );
|
||||
machine->device<nvram_device>("nvram")->set_base(finalgdr_backupram, 0x80*0x100);
|
||||
|
||||
palshift = 0;
|
||||
flip_bit = 1; //?
|
||||
|
@ -283,6 +283,7 @@
|
||||
#include "emu.h"
|
||||
#include "cpu/mcs48/mcs48.h"
|
||||
#include "cpu/mcs51/mcs51.h"
|
||||
#include "machine/nvram.h"
|
||||
#include "sound/ay8910.h"
|
||||
#include "sound/dac.h"
|
||||
#include "videopkr.lh"
|
||||
@ -475,42 +476,6 @@ static VIDEO_UPDATE( videopkr )
|
||||
return 0;
|
||||
}
|
||||
|
||||
/********************
|
||||
* NVRAM Handler *
|
||||
********************/
|
||||
|
||||
static NVRAM_HANDLER( videopkr )
|
||||
{
|
||||
if (read_or_write)
|
||||
{
|
||||
mame_fwrite(file, data_ram, DATA_NVRAM_SIZE);
|
||||
mame_fwrite(file, &count1, 8);
|
||||
mame_fwrite(file, &count2, 8);
|
||||
mame_fwrite(file, &count3, 8);
|
||||
mame_fwrite(file, &count4, 8);
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
if (file)
|
||||
{
|
||||
mame_fread(file, data_ram, DATA_NVRAM_SIZE);
|
||||
mame_fread(file, &count1, 8);
|
||||
mame_fread(file, &count2, 8);
|
||||
mame_fread(file, &count3, 8);
|
||||
mame_fread(file, &count4, 8);
|
||||
}
|
||||
else
|
||||
{
|
||||
memset(data_ram, 0, DATA_NVRAM_SIZE);
|
||||
memset(data_ram, count0, 8);
|
||||
memset(data_ram, count0, 8);
|
||||
memset(data_ram, count0, 8);
|
||||
memset(data_ram, count0, 8);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/*************************
|
||||
* R/W Handlers *
|
||||
@ -1191,6 +1156,8 @@ static MACHINE_START(videopkr)
|
||||
p1 = 0xff;
|
||||
ant_cio = 0;
|
||||
count0 = 0;
|
||||
|
||||
machine->device<nvram_device>("nvram")->set_base(data_ram, sizeof(data_ram));
|
||||
}
|
||||
|
||||
static const ay8910_interface ay8910_config =
|
||||
@ -1221,7 +1188,7 @@ static MACHINE_CONFIG_START( videopkr, driver_device )
|
||||
MDRV_CPU_PROGRAM_MAP(i8039_sound_mem)
|
||||
MDRV_CPU_IO_MAP(i8039_sound_port)
|
||||
MDRV_MACHINE_START(videopkr)
|
||||
MDRV_NVRAM_HANDLER(videopkr)
|
||||
MDRV_NVRAM_ADD_0FILL("nvram")
|
||||
|
||||
MDRV_TIMER_ADD_PERIODIC("t1_timer", sound_t1_callback, HZ(50))
|
||||
|
||||
|
@ -15,6 +15,7 @@
|
||||
#include "cpu/z80/z80.h"
|
||||
#include "includes/psx.h"
|
||||
#include "machine/at28c16.h"
|
||||
#include "machine/nvram.h"
|
||||
#include "machine/mb3773.h"
|
||||
#include "machine/znsec.h"
|
||||
#include "machine/idectrl.h"
|
||||
@ -1186,6 +1187,7 @@ static WRITE32_HANDLER( taitofx1a_ymsound_w )
|
||||
static DRIVER_INIT( coh1000ta )
|
||||
{
|
||||
taitofx1_eeprom_size1 = 0x200; taitofx1_eeprom1 = auto_alloc_array(machine, UINT8, taitofx1_eeprom_size1 );
|
||||
machine->device<nvram_device>("eeprom1")->set_base(taitofx1_eeprom1, taitofx1_eeprom_size1);
|
||||
|
||||
memory_install_read_bank ( cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x1f000000, 0x1f7fffff, 0, 0, "bank1" ); /* banked game rom */
|
||||
memory_install_write32_handler ( cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x1fb40000, 0x1fb40003, 0, 0, bank_coh1000t_w ); /* bankswitch */
|
||||
@ -1202,22 +1204,6 @@ static MACHINE_RESET( coh1000ta )
|
||||
zn_machine_init(machine);
|
||||
}
|
||||
|
||||
static NVRAM_HANDLER( coh1000ta )
|
||||
{
|
||||
if (read_or_write)
|
||||
{
|
||||
mame_fwrite(file, taitofx1_eeprom1, taitofx1_eeprom_size1);
|
||||
}
|
||||
else if (file)
|
||||
{
|
||||
mame_fread(file, taitofx1_eeprom1, taitofx1_eeprom_size1);
|
||||
}
|
||||
else
|
||||
{
|
||||
memset(taitofx1_eeprom1, 0, taitofx1_eeprom_size1);
|
||||
}
|
||||
}
|
||||
|
||||
static ADDRESS_MAP_START( fx1a_sound_map, ADDRESS_SPACE_PROGRAM, 8 )
|
||||
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank10") /* Fallthrough */
|
||||
AM_RANGE(0x0000, 0x7fff) AM_ROM
|
||||
@ -1252,7 +1238,7 @@ static MACHINE_CONFIG_DERIVED( coh1000ta, zn1_1mb_vram )
|
||||
MDRV_CPU_ADD("audiocpu", Z80, 16000000 / 4 ) /* 4 MHz */
|
||||
MDRV_CPU_PROGRAM_MAP( fx1a_sound_map)
|
||||
MDRV_MACHINE_RESET( coh1000ta )
|
||||
MDRV_NVRAM_HANDLER( coh1000ta )
|
||||
MDRV_NVRAM_ADD_0FILL("eeprom1")
|
||||
|
||||
MDRV_SOUND_ADD("ymsnd", YM2610B, 16000000/2)
|
||||
MDRV_SOUND_CONFIG(ym2610_config)
|
||||
@ -1288,6 +1274,9 @@ static DRIVER_INIT( coh1000tb )
|
||||
taitofx1_eeprom_size1 = 0x400; taitofx1_eeprom1 = auto_alloc_array(machine, UINT8, taitofx1_eeprom_size1 );
|
||||
taitofx1_eeprom_size2 = 0x200; taitofx1_eeprom2 = auto_alloc_array(machine, UINT8, taitofx1_eeprom_size2 );
|
||||
|
||||
machine->device<nvram_device>("eeprom1")->set_base(taitofx1_eeprom1, taitofx1_eeprom_size1);
|
||||
machine->device<nvram_device>("eeprom2")->set_base(taitofx1_eeprom2, taitofx1_eeprom_size2);
|
||||
|
||||
memory_install_read_bank ( cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x1f000000, 0x1f7fffff, 0, 0, "bank1" ); /* banked game rom */
|
||||
memory_install_readwrite_bank( cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x1fb00000, 0x1fb00000 + ( taitofx1_eeprom_size1 - 1 ), 0, 0, "bank2" );
|
||||
memory_install_write32_handler ( cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x1fb40000, 0x1fb40003, 0, 0, bank_coh1000t_w ); /* bankswitch */
|
||||
@ -1307,30 +1296,11 @@ static MACHINE_RESET( coh1000tb )
|
||||
zn_machine_init(machine);
|
||||
}
|
||||
|
||||
static NVRAM_HANDLER( coh1000tb )
|
||||
{
|
||||
if (read_or_write)
|
||||
{
|
||||
mame_fwrite(file, taitofx1_eeprom1, taitofx1_eeprom_size1);
|
||||
mame_fwrite(file, taitofx1_eeprom2, taitofx1_eeprom_size2);
|
||||
}
|
||||
else if (file)
|
||||
{
|
||||
mame_fread(file, taitofx1_eeprom1, taitofx1_eeprom_size1);
|
||||
mame_fread(file, taitofx1_eeprom2, taitofx1_eeprom_size2);
|
||||
}
|
||||
else
|
||||
{
|
||||
memset(taitofx1_eeprom1, 0, taitofx1_eeprom_size1);
|
||||
memset(taitofx1_eeprom2, 0, taitofx1_eeprom_size2);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
static MACHINE_CONFIG_DERIVED( coh1000tb, zn1_2mb_vram )
|
||||
|
||||
MDRV_MACHINE_RESET( coh1000tb )
|
||||
MDRV_NVRAM_HANDLER( coh1000tb )
|
||||
MDRV_NVRAM_ADD_0FILL("eeprom1")
|
||||
MDRV_NVRAM_ADD_0FILL("eeprom2")
|
||||
|
||||
MDRV_MB3773_ADD("mb3773")
|
||||
|
||||
|
@ -71,7 +71,6 @@ WRITE8_DEVICE_HANDLER( ataxx_eeprom_w );
|
||||
|
||||
WRITE8_HANDLER( leland_battery_ram_w );
|
||||
WRITE8_HANDLER( ataxx_battery_ram_w );
|
||||
NVRAM_HANDLER( leland );
|
||||
|
||||
READ8_HANDLER( leland_master_analog_key_r );
|
||||
WRITE8_HANDLER( leland_master_analog_key_w );
|
||||
|
@ -148,7 +148,6 @@ READ16_HANDLER( namcos2_flap_prot_r );
|
||||
/**************************************************************/
|
||||
#define NAMCOS2_68K_eeprom_W namcos2_68k_eeprom_w
|
||||
#define NAMCOS2_68K_eeprom_R namcos2_68k_eeprom_r
|
||||
NVRAM_HANDLER( namcos2 );
|
||||
WRITE16_HANDLER( namcos2_68k_eeprom_w );
|
||||
READ16_HANDLER( namcos2_68k_eeprom_r );
|
||||
|
||||
|
@ -20,8 +20,6 @@ public:
|
||||
UINT16 irq_enable;
|
||||
UINT16 *mainram;
|
||||
|
||||
UINT16 *nvram;
|
||||
size_t nvram_size;
|
||||
UINT16 *dsp_ram;
|
||||
|
||||
UINT16 *eaglshot_gfxram;
|
||||
|
@ -183,8 +183,6 @@ WRITE32_HANDLER( atarigen_eeprom_enable32_w );
|
||||
WRITE32_HANDLER( atarigen_eeprom32_w );
|
||||
READ32_HANDLER( atarigen_eeprom_upper32_r );
|
||||
|
||||
NVRAM_HANDLER( atarigen );
|
||||
|
||||
|
||||
/*---------------------------------------------------------------
|
||||
SLAPSTIC HANDLING
|
||||
|
@ -1,6 +1,7 @@
|
||||
#include "emu.h"
|
||||
#include "video/ppu2c0x.h"
|
||||
#include "machine/rp5h01.h"
|
||||
#include "machine/nvram.h"
|
||||
#include "includes/playch10.h"
|
||||
|
||||
/* prototypes */
|
||||
@ -91,6 +92,9 @@ MACHINE_START( pc10 )
|
||||
set_videoram_bank(machine, 0, 8, 0, 8);
|
||||
else pc10_set_videorom_bank(machine, 0, 8, 0, 8);
|
||||
|
||||
nvram_device *nvram = machine->device<nvram_device>("nvram");
|
||||
if (nvram != NULL)
|
||||
nvram->set_base(memory_region( machine, "cart" ) + 0x6000, 0x1000);
|
||||
}
|
||||
|
||||
MACHINE_START( playch10_hboard )
|
||||
|
Loading…
Reference in New Issue
Block a user