Memory shares are now specified by tag instead of index.

The AM_SHARE() macro now takes a tag parameter. All existing
shares have been bulk renamed to "share##". However, the name
does not matter, so please use descriptive tags going forward.

Also added tag validation for bank and share tags.

Added flag to tagmap_add functions that optionally will
replace existing objects if a duplicate is found.
This commit is contained in:
Aaron Giles 2009-12-05 20:19:04 +00:00
parent 9fdc5ec196
commit 0fd8c755ff
128 changed files with 859 additions and 786 deletions

View File

@ -535,13 +535,13 @@ static WRITE16_HANDLER( cpuregs_w )
static ADDRESS_MAP_START( internal_pgm, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x2000, 0x23ff) AM_RAM // SARAM
AM_RANGE(0xfe00, 0xffff) AM_RAM AM_SHARE(11) // DARAM B0
AM_RANGE(0xfe00, 0xffff) AM_RAM AM_SHARE("share11") // DARAM B0
ADDRESS_MAP_END
static ADDRESS_MAP_START( internal_data, ADDRESS_SPACE_DATA, 16 )
AM_RANGE(0x0000, 0x005f) AM_READWRITE(cpuregs_r, cpuregs_w)
AM_RANGE(0x0060, 0x007f) AM_RAM // DARAM B2
AM_RANGE(0x0100, 0x02ff) AM_RAM AM_SHARE(11) // DARAM B0
AM_RANGE(0x0100, 0x02ff) AM_RAM AM_SHARE("share11") // DARAM B0
AM_RANGE(0x0300, 0x04ff) AM_RAM // DARAM B1
ADDRESS_MAP_END

View File

@ -150,7 +150,7 @@ device_config *device_list_add(device_list *devlist, const device_config *owner,
device = (device_config *)alloc_array_or_die(UINT8, sizeof(*device) + strlen(tag) + configlen);
/* add to the map */
tmerr = tagmap_add_unique_hash(devlist->map, tag, device);
tmerr = tagmap_add_unique_hash(devlist->map, tag, device, FALSE);
if (tmerr == TMERR_DUPLICATE)
{
device_config *match = tagmap_find_hash_only(devlist->map, tag);

View File

@ -2492,7 +2492,7 @@ static void port_config_detokenize(input_port_list *portlist, const input_port_t
curport->tag = TOKEN_GET_STRING(ipt);
if (portlist->map != NULL)
{
tagmap_error err = tagmap_add_unique_hash(portlist->map, curport->tag, curport);
tagmap_error err = tagmap_add_unique_hash(portlist->map, curport->tag, curport, FALSE);
if (err == TMERR_DUPLICATE)
{
const input_port_config *match = tagmap_find_hash_only(portlist->map, curport->tag);

View File

@ -793,7 +793,7 @@ UINT8 *memory_region_alloc(running_machine *machine, const char *name, UINT32 le
info->flags = flags;
/* attempt to put is in the hash table */
tagerr = tagmap_add_unique_hash(mame->regionmap, name, info);
tagerr = tagmap_add_unique_hash(mame->regionmap, name, info, FALSE);
if (tagerr == TMERR_DUPLICATE)
{
region_info *match = tagmap_find_hash_only(mame->regionmap, name);

View File

@ -79,28 +79,76 @@
value of 0x14000 would map the bucket at 0x00000, 0x04000, 0x10000,
and 0x14000.
AM_ROM
Specifies that this bucket contains ROM data by attaching an
internal read handler. If this address space describes the first
address space for a device, and if there is a region whose name
matches the device's name, and if the bucket start/end range is
within the bounds of that region, then this bucket will automatically
map to the memory contained in that region.
AM_RAM
AM_READONLY
AM_WRITEONLY
Specifies that this bucket contains RAM data by attaching internal
read and/or write handlers. Memory is automatically allocated to back
this area. AM_RAM maps both reads and writes, while AM_READONLY only
maps reads and AM_WRITEONLY only maps writes.
AM_NOP
AM_READNOP
AM_WRITENOP
Specifies that reads and/or writes in this bucket are unmapped, but
that accesses to them should not be logged. AM_NOP unmaps both reads
and writes, while AM_READNOP only unmaps reads, and AM_WRITENOP only
unmaps writes.
AM_UNMAP
Specifies that both reads and writes in thus bucket are unmapeed,
and that accesses to them should be logged. There is rarely a need
for this, as the entire address space is initialized to behave this
way by default.
AM_READ_BANK(tag)
AM_WRITE_BANK(tag)
AM_READWRITE_BANK(tag)
Specifies that reads and/or writes in this bucket map to a memory
bank with the provided 'tag'. The actual memory this bank points to
can be later controlled via the same tag.
AM_READ(read)
Specifies the read handler for this bucket. All reads will pass
through the given callback handler. Special static values representing
RAM, ROM, or BANKs are also allowed here.
AM_WRITE(write)
Specifies the write handler for this bucket. All writes will pass
through the given callback handler. Special static values representing
RAM, ROM, or BANKs are also allowed here.
AM_READWRITE(read, write)
Specifies read and/or write handler callbacks for this bucket. All
reads and writes in this bucket will trigger a call to the provided
functions.
AM_DEVREAD(tag, read)
AM_DEVWRITE(tag, read)
AM_DEVREADWRITE(tag, read)
Specifies a device-specific read and/or write handler for this
bucket, automatically bound to the device specified by the provided
'tag'.
AM_READ_PORT(tag)
AM_WRITE_PORT(tag)
AM_READWRITE_PORT(tag)
Specifies that read and/or write accesses in this bucket will map
to the I/O port with the provided 'tag'. An internal read/write
handler is set up to handle this mapping.
AM_REGION(class, tag, offs)
Only useful if AM_READ/WRITE point to RAM, ROM, or BANK memory. By
default, memory is allocated to back each bucket. By specifying
AM_REGION, you can tell the memory system to point the base of the
memory backing this bucket to a given memory 'region' at the
specified 'offs'.
Only useful if used in conjunction with AM_ROM, AM_RAM, or
AM_READ/WRITE_BANK. By default, memory is allocated to back each
bucket. By specifying AM_REGION, you can tell the memory system to
point the base of the memory backing this bucket to a given memory
'region' at the specified 'offs' instead of allocating it.
AM_SHARE(index)
AM_SHARE(tag)
Similar to AM_REGION, this specifies that the memory backing the
current bucket is shared with other buckets. The first bucket to
specify the share 'index' will use its memory as backing for all
future buckets that specify AM_SHARE with the same 'index'.
specify the share 'tag' will use its memory as backing for all
future buckets that specify AM_SHARE with the same 'tag'.
AM_BASE(base)
Specifies a pointer to a pointer to the base of the memory backing
@ -110,6 +158,18 @@
Specifies a pointer to a size_t variable which will be filled in
with the size, in bytes, of the current bucket.
AM_BASE_MEMBER(struct, basefield)
AM_SIZE_MEMBER(struct, sizefield)
Specifies a field within a given struct as where to store the base
or size of the current bucket. The struct is assumed to be hanging
off of the machine->driver_data pointer.
AM_BASE_GENERIC(basefield)
AM_SIZE_GENERIC(sizefield)
Specifies a field within the global generic_pointers struct as
where to store the base or size of the current bucket. The global
generic_pointer struct lives in machine->generic.
***************************************************************************/
#include "driver.h"
@ -144,8 +204,10 @@
#define ENTRY_COUNT (SUBTABLE_BASE) /* number of legitimate (non-subtable) entries */
#define SUBTABLE_ALLOC 8 /* number of subtables to allocate at a time */
/* shares are initially mapped to this invalid pointer */
#define UNMAPPED_SHARE_PTR ((void *)-1)
/* other address map constants */
#define MAX_SHARED_POINTERS 256 /* maximum number of shared pointers in memory maps */
#define MEMORY_BLOCK_CHUNK 65536 /* minimum chunk size of allocated memory blocks */
/* read or write constants */
@ -272,7 +334,6 @@ struct _memory_private
UINT8 * bank_ptr[STATIC_COUNT]; /* array of bank pointers */
UINT8 * bankd_ptr[STATIC_COUNT]; /* array of decrypted bank pointers */
void * shared_ptr[MAX_SHARED_POINTERS];/* array of shared pointers */
memory_block * memory_block_list; /* head of the list of memory blocks */
@ -335,7 +396,7 @@ static void memory_init_locate(running_machine *machine);
static void memory_exit(running_machine *machine);
/* address map helpers */
static void map_detokenize(address_map *map, const game_driver *driver, const char *devtag, const addrmap_token *tokens);
static void map_detokenize(memory_private *memdata, address_map *map, const game_driver *driver, const char *devtag, const addrmap_token *tokens);
/* memory mapping helpers */
static void space_map_range_private(address_space *space, read_or_write readorwrite, int handlerbits, int handlerunitmask, offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, genf *handler, void *object, const char *handler_name);
@ -790,7 +851,7 @@ const address_space *memory_find_address_space(const device_config *device, int
address map for a device's address space
-------------------------------------------------*/
address_map *address_map_alloc(const device_config *device, const game_driver *driver, int spacenum)
address_map *address_map_alloc(const device_config *device, const game_driver *driver, int spacenum, void *memdata)
{
const addrmap_token *internal_map;
const addrmap_token *default_map;
@ -801,16 +862,16 @@ address_map *address_map_alloc(const device_config *device, const game_driver *d
/* append the internal device map (first so it takes priority) */
internal_map = (const addrmap_token *)device_get_info_ptr(device, DEVINFO_PTR_INTERNAL_MEMORY_MAP + spacenum);
if (internal_map != NULL)
map_detokenize(map, driver, device->tag, internal_map);
map_detokenize(memdata, map, driver, device->tag, internal_map);
/* construct the standard map */
if (device->address_map[spacenum] != NULL)
map_detokenize(map, driver, device->tag, device->address_map[spacenum]);
map_detokenize(memdata, map, driver, device->tag, device->address_map[spacenum]);
/* append the default device map (last so it can be overridden) */
default_map = (const addrmap_token *)device_get_info_ptr(device, DEVINFO_PTR_DEFAULT_MEMORY_MAP + spacenum);
if (default_map != NULL)
map_detokenize(map, driver, device->tag, default_map);
map_detokenize(memdata, map, driver, device->tag, default_map);
return map;
}
@ -1685,7 +1746,7 @@ static void memory_init_preflight(running_machine *machine)
int entrynum;
/* allocate the address map */
space->map = address_map_alloc(space->cpu, machine->gamedrv, space->spacenum);
space->map = address_map_alloc(space->cpu, machine->gamedrv, space->spacenum, memdata);
/* extract global parameters specified by the map */
space->unmap = (space->map->unmapval == 0) ? 0 : ~0;
@ -1717,7 +1778,7 @@ static void memory_init_preflight(running_machine *machine)
}
/* validate adjusted addresses against implicit regions */
if (entry->region != NULL && entry->share == 0 && entry->baseptr == NULL)
if (entry->region != NULL && entry->share == NULL && entry->baseptr == NULL)
{
UINT8 *base = memory_region(machine, entry->region);
offs_t length = memory_region_length(machine, entry->region);
@ -1954,10 +2015,9 @@ static void memory_init_locate(running_machine *machine)
{
const address_map_entry *entry;
/* fill in base/size entries, and handle shared memory */
/* fill in base/size entries */
for (entry = space->map->entrylist; entry != NULL; entry = entry->next)
{
/* assign base/size values */
if (entry->baseptr != NULL)
*entry->baseptr = entry->memory;
if (entry->baseptroffs_plus1 != 0)
@ -2103,7 +2163,7 @@ static void memory_exit(running_machine *machine)
fatalerror("%s: %s AM_RANGE(0x%x, 0x%x) setting %s already set!\n", driver->source_file, driver->name, entry->addrstart, entry->addrend, #field); \
} while (0)
static void map_detokenize(address_map *map, const game_driver *driver, const char *devtag, const addrmap_token *tokens)
static void map_detokenize(memory_private *memdata, address_map *map, const game_driver *driver, const char *devtag, const addrmap_token *tokens)
{
address_map_entry **entryptr;
address_map_entry *entry;
@ -2142,7 +2202,7 @@ static void map_detokenize(address_map *map, const game_driver *driver, const ch
/* including */
case ADDRMAP_TOKEN_INCLUDE:
map_detokenize(map, driver, devtag, TOKEN_GET_PTR(tokens, tokenptr));
map_detokenize(memdata, map, driver, devtag, TOKEN_GET_PTR(tokens, tokenptr));
for (entryptr = &map->entrylist; *entryptr != NULL; entryptr = &(*entryptr)->next) ;
entry = NULL;
break;
@ -2253,8 +2313,9 @@ static void map_detokenize(address_map *map, const game_driver *driver, const ch
case ADDRMAP_TOKEN_SHARE:
check_entry_field(share);
TOKEN_UNGET_UINT32(tokens);
TOKEN_GET_UINT32_UNPACK2(tokens, entrytype, 8, entry->share, 24);
entry->share = TOKEN_GET_STRING(tokens);
if (memdata != NULL)
tagmap_add(memdata->sharemap, entry->share, UNMAPPED_SHARE_PTR, FALSE);
break;
case ADDRMAP_TOKEN_BASEPTR:
@ -2541,7 +2602,7 @@ void *bank_find_or_allocate(const address_space *space, const char *tag, offs_t
/* for named banks, add to the map and register for save states */
if (tag[0] != '~')
{
tagmap_add_unique_hash(memdata->bankmap, tag, bank);
tagmap_add_unique_hash(memdata->bankmap, tag, bank, FALSE);
if (state_save_registration_allowed(space->machine))
state_save_register_item(space->machine, "memory", bank->tag, 0, bank->curentry);
}
@ -3296,27 +3357,31 @@ static address_map_entry *block_assign_intersecting(address_space *space, offs_t
/* loop over the adjusted map and assign memory to any blocks we can */
for (entry = space->map->entrylist; entry != NULL; entry = entry->next)
{
/* if we haven't assigned this block yet, do it against the last block */
if (entry->memory == NULL)
/* if we haven't assigned this block yet, see if we have a mapped shared pointer for it */
if (entry->memory == NULL && entry->share != NULL)
{
/* inherit shared pointers first */
if (entry->share != 0 && memdata->shared_ptr[entry->share] != NULL)
void *shareptr = tagmap_find(memdata->sharemap, entry->share);
if (shareptr != UNMAPPED_SHARE_PTR)
{
entry->memory = memdata->shared_ptr[entry->share];
VPRINTF(("memory range %08X-%08X -> shared_ptr[%d] [%p]\n", entry->addrstart, entry->addrend, entry->share, entry->memory));
entry->memory = shareptr;
VPRINTF(("memory range %08X-%08X -> shared_ptr '%s' [%p]\n", entry->addrstart, entry->addrend, entry->share, entry->memory));
}
}
/* otherwise, look for a match in this block */
else if (entry->bytestart >= bytestart && entry->byteend <= byteend)
{
entry->memory = base + (entry->bytestart - bytestart);
VPRINTF(("memory range %08X-%08X -> found in block from %08X-%08X [%p]\n", entry->addrstart, entry->addrend, bytestart, byteend, entry->memory));
}
/* otherwise, look for a match in this block */
if (entry->memory == NULL && entry->bytestart >= bytestart && entry->byteend <= byteend)
{
entry->memory = base + (entry->bytestart - bytestart);
VPRINTF(("memory range %08X-%08X -> found in block from %08X-%08X [%p]\n", entry->addrstart, entry->addrend, bytestart, byteend, entry->memory));
}
/* if we're the first match on a shared pointer, assign it now */
if (entry->memory != NULL && entry->share && memdata->shared_ptr[entry->share] == NULL)
memdata->shared_ptr[entry->share] = entry->memory;
if (entry->memory != NULL && entry->share != NULL)
{
void *shareptr = tagmap_find(memdata->sharemap, entry->share);
if (shareptr == UNMAPPED_SHARE_PTR)
tagmap_add(memdata->sharemap, entry->share, entry->memory, TRUE);
}
/* keep track of the first unassigned entry */
if (entry->memory == NULL && unassigned == NULL && space_needs_backing_store(space, entry))

View File

@ -232,7 +232,7 @@ struct _address_map_entry
offs_t addrmask; /* mask bits */
map_handler_data read; /* data for read handler */
map_handler_data write; /* data for write handler */
UINT32 share; /* index of a shared memory block */
const char * share; /* tag of a shared memory block */
void ** baseptr; /* receives pointer to memory (optional) */
size_t * sizeptr; /* receives size of area in bytes (optional) */
UINT32 baseptroffs_plus1; /* offset of base pointer within driver_data, plus 1 */
@ -832,15 +832,15 @@ union _addrmap64_token
#define AM_ROM \
TOKEN_UINT32_PACK4(ADDRMAP_TOKEN_READ, 8, AMH_ROM, 8, 0, 8, 0, 8),
#define AM_RAM \
TOKEN_UINT32_PACK4(ADDRMAP_TOKEN_READWRITE, 8, AMH_RAM, 8, 0, 8, 0, 8),
#define AM_READONLY \
TOKEN_UINT32_PACK4(ADDRMAP_TOKEN_READ, 8, AMH_RAM, 8, 0, 8, 0, 8),
#define AM_WRITEONLY \
TOKEN_UINT32_PACK4(ADDRMAP_TOKEN_WRITE, 8, AMH_RAM, 8, 0, 8, 0, 8),
#define AM_RAM \
TOKEN_UINT32_PACK4(ADDRMAP_TOKEN_READWRITE, 8, AMH_RAM, 8, 0, 8, 0, 8),
#define AM_UNMAP \
TOKEN_UINT32_PACK4(ADDRMAP_TOKEN_READWRITE, 8, AMH_UNMAP, 8, 0, 8, 0, 8),
@ -863,6 +863,10 @@ union _addrmap64_token
TOKEN_UINT32_PACK4(ADDRMAP_TOKEN_WRITE, 8, AMH_PORT, 8, 0, 8, 0, 8), \
TOKEN_STRING(_tag),
#define AM_READWRITE_PORT(_tag) \
TOKEN_UINT32_PACK4(ADDRMAP_TOKEN_READWRITE, 8, AMH_PORT, 8, 0, 8, 0, 8), \
TOKEN_STRING(_tag),
/* bank accesses */
#define AM_READ_BANK(_tag) \
@ -873,14 +877,19 @@ union _addrmap64_token
TOKEN_UINT32_PACK4(ADDRMAP_TOKEN_WRITE, 8, AMH_BANK, 8, 0, 8, 0, 8), \
TOKEN_STRING(_tag),
#define AM_READWRITE_BANK(_tag) \
TOKEN_UINT32_PACK4(ADDRMAP_TOKEN_READWRITE, 8, AMH_BANK, 8, 0, 8, 0, 8), \
TOKEN_STRING(_tag),
/* attributes for accesses */
#define AM_REGION(_tag, _offs) \
TOKEN_UINT64_PACK2(ADDRMAP_TOKEN_REGION, 8, _offs, 32), \
TOKEN_STRING(_tag),
#define AM_SHARE(_index) \
TOKEN_UINT32_PACK2(ADDRMAP_TOKEN_SHARE, 8, _index, 24),
#define AM_SHARE(_tag) \
TOKEN_UINT32_PACK1(ADDRMAP_TOKEN_SHARE, 8), \
TOKEN_STRING(_tag),
#define AM_BASE(_base) \
TOKEN_UINT32_PACK1(ADDRMAP_TOKEN_BASEPTR, 8), \
@ -905,7 +914,7 @@ union _addrmap64_token
/* common shortcuts */
#define AM_ROMBANK(_bank) AM_READ_BANK(_bank)
#define AM_RAMBANK(_bank) AM_READ_BANK(_bank) AM_WRITE_BANK(_bank)
#define AM_RAMBANK(_bank) AM_READWRITE_BANK(_bank)
#define AM_RAM_READ(_read) AM_READ(_read) AM_WRITEONLY
#define AM_RAM_WRITE(_write) AM_READONLY AM_WRITE(_write)
#define AM_RAM_DEVREAD(_tag, _read) AM_DEVREAD(_tag, _read) AM_WRITEONLY
@ -942,7 +951,7 @@ const address_space *memory_find_address_space(const device_config *device, int
/* ----- address maps ----- */
/* build and allocate an address map for a device's address space */
address_map *address_map_alloc(const device_config *device, const game_driver *driver, int spacenum);
address_map *address_map_alloc(const device_config *device, const game_driver *driver, int spacenum, void *memdata);
/* release allocated memory for an address map */
void address_map_free(address_map *map);

View File

@ -320,7 +320,7 @@ static int validate_driver(int drivnum, const machine_config *config, tagmap *na
enum { NAME_LEN_PARENT = 8, NAME_LEN_CLONE = 16 };
/* check for duplicate names */
if (tagmap_add(names, driver->name, (void *)driver) == TMERR_DUPLICATE)
if (tagmap_add(names, driver->name, (void *)driver, FALSE) == TMERR_DUPLICATE)
{
const game_driver *match = tagmap_find(names, driver->name);
mame_printf_error("%s: %s is a duplicate name (%s, %s)\n", driver->source_file, driver->name, match->source_file, match->name);
@ -328,7 +328,7 @@ static int validate_driver(int drivnum, const machine_config *config, tagmap *na
}
/* check for duplicate descriptions */
if (tagmap_add(descriptions, driver->description, (void *)driver) == TMERR_DUPLICATE)
if (tagmap_add(descriptions, driver->description, (void *)driver, FALSE) == TMERR_DUPLICATE)
{
const game_driver *match = tagmap_find(descriptions, driver->description);
mame_printf_error("%s: %s is a duplicate description (%s, %s)\n", driver->source_file, driver->description, match->source_file, match->description);
@ -414,7 +414,7 @@ static int validate_roms(int drivnum, const machine_config *config, region_info
{
char romaddr[20];
sprintf(romaddr, "%p", driver->rom);
if (tagmap_add(roms, romaddr, (void *)driver) == TMERR_DUPLICATE)
if (tagmap_add(roms, romaddr, (void *)driver, FALSE) == TMERR_DUPLICATE)
{
const game_driver *match = tagmap_find(roms, romaddr);
mame_printf_error("%s: %s uses the same ROM set as (%s, %s)\n", driver->source_file, driver->description, match->source_file, match->name);
@ -1283,7 +1283,7 @@ static int validate_devices(int drivnum, const machine_config *config, const inp
address_map *map;
/* construct the maps */
map = address_map_alloc(device, driver, spacenum);
map = address_map_alloc(device, driver, spacenum, NULL);
/* if this is an empty map, just skip it */
if (map->entrylist == NULL)
@ -1377,11 +1377,13 @@ static int validate_devices(int drivnum, const machine_config *config, const inp
error = TRUE;
}
/* validate bank tags */
/* validate bank and share tags */
if (entry->read.type == AMH_BANK)
error |= validate_tag(driver, "bank", entry->read.tag);
if (entry->write.type == AMH_BANK)
error |= validate_tag(driver, "bank", entry->write.tag);
if (entry->share != NULL)
error |= validate_tag(driver, "share", entry->share);
}
/* release the address map */
@ -1465,7 +1467,7 @@ int mame_validitychecks(const game_driver *curdriver)
{
const char *string = input_port_string_from_index(strnum);
if (string != NULL)
tagmap_add(defstr, string, (void *)(FPTR)strnum);
tagmap_add(defstr, string, (void *)(FPTR)strnum, FALSE);
}
prep += get_profile_ticks();

View File

@ -44,7 +44,7 @@
FUNCTION PROTOTYPES
***************************************************************************/
static tagmap_error tagmap_add_common(tagmap *map, const char *tag, void *object, int unique_hash);
static tagmap_error tagmap_add_common(tagmap *map, const char *tag, void *object, UINT8 replace_if_duplicate, UINT8 unique_hash);
@ -109,9 +109,9 @@ void tagmap_reset(tagmap *map)
tagmap
-------------------------------------------------*/
tagmap_error tagmap_add(tagmap *map, const char *tag, void *object)
tagmap_error tagmap_add(tagmap *map, const char *tag, void *object, UINT8 replace_if_duplicate)
{
return tagmap_add_common(map, tag, object, FALSE);
return tagmap_add_common(map, tag, object, replace_if_duplicate, FALSE);
}
@ -120,9 +120,9 @@ tagmap_error tagmap_add(tagmap *map, const char *tag, void *object)
tagmap, ensuring it has a unique hash value
-------------------------------------------------*/
tagmap_error tagmap_add_unique_hash(tagmap *map, const char *tag, void *object)
tagmap_error tagmap_add_unique_hash(tagmap *map, const char *tag, void *object, UINT8 replace_if_duplicate)
{
return tagmap_add_common(map, tag, object, TRUE);
return tagmap_add_common(map, tag, object, replace_if_duplicate, TRUE);
}
@ -157,7 +157,7 @@ void tagmap_remove(tagmap *map, const char *tag)
a tagmap addition
-------------------------------------------------*/
static tagmap_error tagmap_add_common(tagmap *map, const char *tag, void *object, int unique_hash)
static tagmap_error tagmap_add_common(tagmap *map, const char *tag, void *object, UINT8 replace_if_duplicate, UINT8 unique_hash)
{
UINT32 fullhash = tagmap_hash(tag);
UINT32 hashindex = fullhash % ARRAY_LENGTH(map->table);
@ -166,15 +166,12 @@ static tagmap_error tagmap_add_common(tagmap *map, const char *tag, void *object
/* first make sure we don't have a duplicate */
for (entry = map->table[hashindex]; entry != NULL; entry = entry->next)
if (entry->fullhash == fullhash)
{
/* if we require a unique hash, fail here */
if (unique_hash)
if (unique_hash || strcmp(tag, entry->tag) == 0)
{
if (replace_if_duplicate)
entry->object = object;
return TMERR_DUPLICATE;
/* validate the string */
if (strcmp(tag, entry->tag) == 0)
return TMERR_DUPLICATE;
}
}
/* now allocate a new entry */
entry = malloc(sizeof(*entry) + strlen(tag));

View File

@ -105,10 +105,10 @@ void tagmap_reset(tagmap *map);
/* ----- object management ----- */
/* add a new entry to a tagmap */
tagmap_error tagmap_add(tagmap *map, const char *tag, void *object);
tagmap_error tagmap_add(tagmap *map, const char *tag, void *object, UINT8 replace_if_duplicate);
/* add a new entry to a tagmap, ensuring it has a unique hash value */
tagmap_error tagmap_add_unique_hash(tagmap *map, const char *tag, void *object);
tagmap_error tagmap_add_unique_hash(tagmap *map, const char *tag, void *object, UINT8 replace_if_duplicate);
/* remove an entry from a tagmap */
void tagmap_remove(tagmap *map, const char *tag);

View File

@ -433,9 +433,9 @@ static int preprocess_write(running_machine *machine, UINT16 data);
/* DCS 2k memory map */
static ADDRESS_MAP_START( dcs_2k_program_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x0000, 0x03ff) AM_RAM AM_BASE(&dcs_internal_program_ram)
AM_RANGE(0x0800, 0x0fff) AM_RAM AM_SHARE(1) AM_BASE(&dcs_external_program_ram)
AM_RANGE(0x1000, 0x17ff) AM_RAM AM_SHARE(1)
AM_RANGE(0x1800, 0x1fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x0800, 0x0fff) AM_RAM AM_SHARE("share1") AM_BASE(&dcs_external_program_ram)
AM_RANGE(0x1000, 0x17ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x1800, 0x1fff) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
static ADDRESS_MAP_START( dcs_2k_data_map, ADDRESS_SPACE_DATA, 16 )

View File

@ -234,7 +234,7 @@ static WRITE16_HANDLER(es5510_dsp_w)
static UINT16 *sound_ram;
ADDRESS_MAP_START( f3_sound_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x000000, 0x00ffff) AM_RAM AM_MIRROR(0x30000) AM_SHARE(1) AM_BASE(&sound_ram)
AM_RANGE(0x000000, 0x00ffff) AM_RAM AM_MIRROR(0x30000) AM_SHARE("share1") AM_BASE(&sound_ram)
AM_RANGE(0x140000, 0x140fff) AM_READWRITE(f3_68000_share_r, f3_68000_share_w)
AM_RANGE(0x200000, 0x20001f) AM_DEVREADWRITE("ensoniq", es5505_r, es5505_w)
AM_RANGE(0x260000, 0x2601ff) AM_READWRITE(es5510_dsp_r, es5510_dsp_w)
@ -244,7 +244,7 @@ ADDRESS_MAP_START( f3_sound_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0xc00000, 0xc1ffff) AM_ROMBANK("bank1")
AM_RANGE(0xc20000, 0xc3ffff) AM_ROMBANK("bank2")
AM_RANGE(0xc40000, 0xc7ffff) AM_ROMBANK("bank3")
AM_RANGE(0xff0000, 0xffffff) AM_RAM AM_SHARE(1) // mirror
AM_RANGE(0xff0000, 0xffffff) AM_RAM AM_SHARE("share1") // mirror
ADDRESS_MAP_END
void taito_f3_soundsystem_reset(running_machine *machine)

View File

@ -1777,8 +1777,8 @@ INPUT_PORTS_END
static ADDRESS_MAP_START( shuttlei_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x3fff) AM_RAM AM_BASE(&mw8080bw_ram) AM_SIZE(&mw8080bw_ram_size)
AM_RANGE(0x4000, 0x43ff) AM_RAM AM_SHARE(1) // shuttlei
AM_RANGE(0x6000, 0x63ff) AM_RAM AM_SHARE(1) // skylove (is it mirrored, or different PCB hookup?)
AM_RANGE(0x4000, 0x43ff) AM_RAM AM_SHARE("share1") // shuttlei
AM_RANGE(0x6000, 0x63ff) AM_RAM AM_SHARE("share1") // skylove (is it mirrored, or different PCB hookup?)
ADDRESS_MAP_END
static ADDRESS_MAP_START( shuttlei_io_map, ADDRESS_SPACE_IO, 8 )

View File

@ -373,7 +373,7 @@ static ADDRESS_MAP_START( master_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xc000, 0xcfff) AM_READWRITE(pandora_spriteram_r, pandora_spriteram_w)
AM_RANGE(0xd000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xefff) AM_RAM AM_BASE(&devram) // shared with protection device
AM_RANGE(0xf000, 0xffff) AM_RAM AM_SHARE(1)
AM_RANGE(0xf000, 0xffff) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
static ADDRESS_MAP_START( master_io_map, ADDRESS_SPACE_IO, 8 )
@ -393,7 +393,7 @@ static ADDRESS_MAP_START( slave_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xd000, 0xd5ff) AM_RAM_WRITE(airbustr_paletteram_w) AM_BASE_GENERIC(paletteram)
AM_RANGE(0xd600, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xefff) AM_RAM
AM_RANGE(0xf000, 0xffff) AM_RAM AM_SHARE(1)
AM_RANGE(0xf000, 0xffff) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
static ADDRESS_MAP_START( slave_io_map, ADDRESS_SPACE_IO, 8 )

View File

@ -30,7 +30,7 @@ static ADDRESS_MAP_START( ajax_main_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0800, 0x0807) AM_READWRITE(K051937_r, K051937_w) /* sprite control registers */
AM_RANGE(0x0c00, 0x0fff) AM_READWRITE(K051960_r, K051960_w) /* sprite RAM 2128SL at J7 */
AM_RANGE(0x1000, 0x1fff) AM_RAM_WRITE(paletteram_xBBBBBGGGGGRRRRR_be_w) AM_BASE_GENERIC(paletteram)/* palette */
AM_RANGE(0x2000, 0x3fff) AM_RAM AM_SHARE(1) /* shared RAM with the 6809 */
AM_RANGE(0x2000, 0x3fff) AM_RAM AM_SHARE("share1") /* shared RAM with the 6809 */
AM_RANGE(0x4000, 0x5fff) AM_RAM /* RAM 6264L at K10 */
AM_RANGE(0x6000, 0x7fff) AM_ROMBANK("bank2") /* banked ROM */
AM_RANGE(0x8000, 0xffff) AM_ROM /* ROM N11 */
@ -41,7 +41,7 @@ static ADDRESS_MAP_START( ajax_sub_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0800, 0x080f) AM_WRITE(K051316_ctrl_0_w) /* 051316 control registers */
AM_RANGE(0x1000, 0x17ff) AM_READ(K051316_rom_0_r) /* 051316 (ROM test) */
AM_RANGE(0x1800, 0x1800) AM_WRITE(ajax_bankswitch_2_w) /* bankswitch control */
AM_RANGE(0x2000, 0x3fff) AM_RAM AM_SHARE(1) /* shared RAM with the 052001 */
AM_RANGE(0x2000, 0x3fff) AM_RAM AM_SHARE("share1") /* shared RAM with the 052001 */
AM_RANGE(0x4000, 0x7fff) AM_READWRITE(K052109_r, K052109_w) /* video RAM + color RAM + video registers */
AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1") /* banked ROM */
AM_RANGE(0xa000, 0xffff) AM_ROM /* ROM I16 */

View File

@ -188,8 +188,8 @@ static READ32_HANDLER( aleck_dips_r )
static ADDRESS_MAP_START( n64_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x00000000, 0x007fffff) AM_RAM AM_BASE(&rdram) // RDRAM
AM_RANGE(0x04000000, 0x04000fff) AM_RAM AM_SHARE(1) // RSP DMEM
AM_RANGE(0x04001000, 0x04001fff) AM_RAM AM_SHARE(2) // RSP IMEM
AM_RANGE(0x04000000, 0x04000fff) AM_RAM AM_SHARE("share1") // RSP DMEM
AM_RANGE(0x04001000, 0x04001fff) AM_RAM AM_SHARE("share2") // RSP IMEM
AM_RANGE(0x04040000, 0x040fffff) AM_READWRITE(n64_sp_reg_r, n64_sp_reg_w) // RSP
AM_RANGE(0x04100000, 0x041fffff) AM_READWRITE(n64_dp_reg_r, n64_dp_reg_w) // RDP
AM_RANGE(0x04300000, 0x043fffff) AM_READWRITE(n64_mi_reg_r, n64_mi_reg_w) // MIPS Interface
@ -208,8 +208,8 @@ static ADDRESS_MAP_START( n64_map, ADDRESS_SPACE_PROGRAM, 32 )
ADDRESS_MAP_END
static ADDRESS_MAP_START( rsp_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x04000000, 0x04000fff) AM_RAM AM_BASE(&rsp_dmem) AM_SHARE(1)
AM_RANGE(0x04001000, 0x04001fff) AM_RAM AM_BASE(&rsp_imem) AM_SHARE(2)
AM_RANGE(0x04000000, 0x04000fff) AM_RAM AM_BASE(&rsp_dmem) AM_SHARE("share1")
AM_RANGE(0x04001000, 0x04001fff) AM_RAM AM_BASE(&rsp_imem) AM_SHARE("share2")
ADDRESS_MAP_END
static INPUT_PORTS_START( aleck64 )

View File

@ -99,16 +99,16 @@ static INTERRUPT_GEN( battlane_cpu1_interrupt )
*************************************/
static ADDRESS_MAP_START( battlane_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x1000, 0x17ff) AM_RAM_WRITE(battlane_tileram_w) AM_SHARE(2) AM_BASE_MEMBER(battlane_state, tileram)
AM_RANGE(0x1800, 0x18ff) AM_RAM_WRITE(battlane_spriteram_w) AM_SHARE(3) AM_BASE_MEMBER(battlane_state, spriteram)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x1000, 0x17ff) AM_RAM_WRITE(battlane_tileram_w) AM_SHARE("share2") AM_BASE_MEMBER(battlane_state, tileram)
AM_RANGE(0x1800, 0x18ff) AM_RAM_WRITE(battlane_spriteram_w) AM_SHARE("share3") AM_BASE_MEMBER(battlane_state, spriteram)
AM_RANGE(0x1c00, 0x1c00) AM_READ_PORT("P1") AM_WRITE(battlane_video_ctrl_w)
AM_RANGE(0x1c01, 0x1c01) AM_READ_PORT("P2") AM_WRITE(battlane_scrollx_w)
AM_RANGE(0x1c02, 0x1c02) AM_READ_PORT("DSW1") AM_WRITE(battlane_scrolly_w)
AM_RANGE(0x1c03, 0x1c03) AM_READ_PORT("DSW2") AM_WRITE(battlane_cpu_command_w)
AM_RANGE(0x1c04, 0x1c05) AM_DEVREADWRITE("ymsnd", ym3526_r, ym3526_w)
AM_RANGE(0x1e00, 0x1e3f) AM_WRITE(battlane_palette_w)
AM_RANGE(0x2000, 0x3fff) AM_RAM_WRITE(battlane_bitmap_w) AM_SHARE(4)
AM_RANGE(0x2000, 0x3fff) AM_RAM_WRITE(battlane_bitmap_w) AM_SHARE("share4")
AM_RANGE(0x4000, 0xffff) AM_ROM
ADDRESS_MAP_END

View File

@ -550,8 +550,8 @@ static ADDRESS_MAP_START( berzerk_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x07ff) AM_ROM
AM_RANGE(0x0800, 0x0bff) AM_MIRROR(0x0400) AM_RAM AM_BASE_SIZE_GENERIC(nvram)
AM_RANGE(0x1000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x5fff) AM_RAM AM_BASE(&berzerk_videoram) AM_SIZE(&berzerk_videoram_size) AM_SHARE(1)
AM_RANGE(0x6000, 0x7fff) AM_RAM_WRITE(magicram_w) AM_SHARE(1)
AM_RANGE(0x4000, 0x5fff) AM_RAM AM_BASE(&berzerk_videoram) AM_SIZE(&berzerk_videoram_size) AM_SHARE("share1")
AM_RANGE(0x6000, 0x7fff) AM_RAM_WRITE(magicram_w) AM_SHARE("share1")
AM_RANGE(0x8000, 0x87ff) AM_MIRROR(0x3800) AM_RAM AM_BASE(&berzerk_colorram)
AM_RANGE(0xc000, 0xffff) AM_NOP
ADDRESS_MAP_END
@ -559,8 +559,8 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( frenzy_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x5fff) AM_RAM AM_BASE(&berzerk_videoram) AM_SIZE(&berzerk_videoram_size) AM_SHARE(1)
AM_RANGE(0x6000, 0x7fff) AM_RAM_WRITE(magicram_w) AM_SHARE(1)
AM_RANGE(0x4000, 0x5fff) AM_RAM AM_BASE(&berzerk_videoram) AM_SIZE(&berzerk_videoram_size) AM_SHARE("share1")
AM_RANGE(0x6000, 0x7fff) AM_RAM_WRITE(magicram_w) AM_SHARE("share1")
AM_RANGE(0x8000, 0x87ff) AM_MIRROR(0x3800) AM_RAM AM_BASE(&berzerk_colorram)
AM_RANGE(0xc000, 0xcfff) AM_ROM
AM_RANGE(0xf800, 0xfbff) AM_MIRROR(0x0400) AM_RAM AM_BASE_SIZE_GENERIC(nvram)

View File

@ -311,7 +311,7 @@ static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM
AM_RANGE(0xd000, 0xd7ff) AM_ROMBANK("bank1")
AM_RANGE(0xd800, 0xdbff) AM_RAM AM_SHARE(1) /* only half of the RAM is accessible, line a10 of IC73 (6116) is GNDed */
AM_RANGE(0xd800, 0xdbff) AM_RAM AM_SHARE("share1") /* only half of the RAM is accessible, line a10 of IC73 (6116) is GNDed */
AM_RANGE(0xe000, 0xe7ff) AM_WRITE(bigevglf_palette_w) AM_BASE_MEMBER(bigevglf_state, paletteram)
AM_RANGE(0xe800, 0xefff) AM_WRITEONLY AM_BASE_MEMBER(bigevglf_state, spriteram1) /* sprite 'templates' */
AM_RANGE(0xf000, 0xf0ff) AM_READWRITE(bigevglf_vidram_r, bigevglf_vidram_w) /* 41464 (64kB * 8 chips), addressed using ports 1 and 5 */
@ -336,7 +336,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( sub_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x8000, 0x83ff) AM_RAM AM_SHARE(1) /* shared with main CPU */
AM_RANGE(0x8000, 0x83ff) AM_RAM AM_SHARE("share1") /* shared with main CPU */
ADDRESS_MAP_END

View File

@ -290,7 +290,7 @@ static ADDRESS_MAP_START( master_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xdcff) AM_RAM AM_BASE_SIZE_MEMBER(bublbobl_state, videoram, videoram_size)
AM_RANGE(0xdd00, 0xdfff) AM_RAM AM_BASE_SIZE_MEMBER(bublbobl_state, objectram, objectram_size)
AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE(1)
AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xf800, 0xf9ff) AM_RAM_WRITE(paletteram_RRRRGGGGBBBBxxxx_be_w) AM_BASE_GENERIC(paletteram)
AM_RANGE(0xfa00, 0xfa00) AM_READWRITE(bublbobl_sound_status_r, bublbobl_sound_command_w)
AM_RANGE(0xfa03, 0xfa03) AM_WRITE(bublbobl_soundcpu_reset_w)
@ -301,7 +301,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( slave_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE(1)
AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
static ADDRESS_MAP_START( sound_map, ADDRESS_SPACE_PROGRAM, 8 )
@ -346,7 +346,7 @@ static ADDRESS_MAP_START( bootleg_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xdcff) AM_RAM AM_BASE_SIZE_MEMBER(bublbobl_state, videoram, videoram_size)
AM_RANGE(0xdd00, 0xdfff) AM_RAM AM_BASE_SIZE_MEMBER(bublbobl_state, objectram, objectram_size)
AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE(1)
AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xf800, 0xf9ff) AM_RAM_WRITE(paletteram_RRRRGGGGBBBBxxxx_be_w) AM_BASE_GENERIC(paletteram)
AM_RANGE(0xfa00, 0xfa00) AM_READWRITE(bublbobl_sound_status_r, bublbobl_sound_command_w)
AM_RANGE(0xfa03, 0xfa03) AM_WRITE(bublbobl_soundcpu_reset_w)
@ -370,7 +370,7 @@ static ADDRESS_MAP_START( tokio_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xdcff) AM_RAM AM_BASE_SIZE_MEMBER(bublbobl_state, videoram, videoram_size)
AM_RANGE(0xdd00, 0xdfff) AM_RAM AM_BASE_SIZE_MEMBER(bublbobl_state, objectram, objectram_size)
AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE(1)
AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xf800, 0xf9ff) AM_RAM_WRITE(paletteram_RRRRGGGGBBBBxxxx_be_w) AM_BASE_GENERIC(paletteram)
AM_RANGE(0xfa00, 0xfa00) AM_WRITE(watchdog_reset_w)
AM_RANGE(0xfa03, 0xfa03) AM_READ_PORT("DSW0")
@ -387,7 +387,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( tokio_slave_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x97ff) AM_RAM AM_SHARE(1)
AM_RANGE(0x8000, 0x97ff) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
static ADDRESS_MAP_START( tokio_sound_map, ADDRESS_SPACE_PROGRAM, 8 )

View File

@ -490,8 +490,8 @@ static ADDRESS_MAP_START( calchase_io, ADDRESS_SPACE_IO, 32)
AM_RANGE(0x03f0, 0x03ff) AM_DEVREADWRITE("ide", fdc_r, fdc_w)
AM_RANGE(0x0a78, 0x0a7b) AM_WRITENOP//AM_WRITE(pnp_data_w)
AM_RANGE(0x0cf8, 0x0cff) AM_DEVREADWRITE("pcibus", pci_32le_r, pci_32le_w)
AM_RANGE(0x43c0, 0x43cf) AM_RAM AM_SHARE(1)
AM_RANGE(0x83c0, 0x83cf) AM_RAM AM_SHARE(1)
AM_RANGE(0x43c0, 0x43cf) AM_RAM AM_SHARE("share1")
AM_RANGE(0x83c0, 0x83cf) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END

View File

@ -214,7 +214,7 @@ static READ8_HANDLER( champbja_alt_protection_r )
static ADDRESS_MAP_START( talbot_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x63ff) AM_RAM AM_SHARE(1) /* MCU shared RAM */
AM_RANGE(0x6000, 0x63ff) AM_RAM AM_SHARE("share1") /* MCU shared RAM */
AM_RANGE(0x7000, 0x7001) AM_DEVWRITE("aysnd", ay8910_data_address_w)
AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(champbas_bg_videoram_w) AM_BASE_MEMBER(champbas_state, bg_videoram)
AM_RANGE(0x8800, 0x8fef) AM_RAM
@ -241,7 +241,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( champbas_main_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x63ff) AM_RAM AM_SHARE(1)
AM_RANGE(0x6000, 0x63ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x7000, 0x7001) AM_DEVWRITE("aysnd", ay8910_data_address_w)
AM_RANGE(0x7800, 0x7fff) AM_ROM // champbb2 only
AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(champbas_bg_videoram_w) AM_BASE_MEMBER(champbas_state, bg_videoram)
@ -273,7 +273,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( exctsccb_main_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x5fff) AM_ROM
// AM_RANGE(0x6000, 0x63ff) AM_RAM AM_SHARE(1) // MCU not used (though it's present on the board)
// AM_RANGE(0x6000, 0x63ff) AM_RAM AM_SHARE("share1") // MCU not used (though it's present on the board)
AM_RANGE(0x7000, 0x7001) AM_DEVWRITE("aysnd", ay8910_data_address_w)
// AM_RANGE(0x7800, 0x7fff) AM_ROM // champbb2 only
AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(champbas_bg_videoram_w) AM_BASE_MEMBER(champbas_state, bg_videoram)
@ -299,7 +299,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( exctsccr_main_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x63ff) AM_RAM AM_SHARE(1)
AM_RANGE(0x6000, 0x63ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x7c00, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(champbas_bg_videoram_w) AM_BASE_MEMBER(champbas_state, bg_videoram)
AM_RANGE(0x8800, 0x8bff) AM_RAM AM_BASE_MEMBER(champbas_state, spriteram_2) /* ??? */
@ -353,7 +353,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( mcu_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE(1) /* main CPU shared RAM */
AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("share1") /* main CPU shared RAM */
ADDRESS_MAP_END

View File

@ -306,7 +306,7 @@ static void saiyugb1_m5205_irq_w( const device_config *device )
}
static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x2000, 0x27ff) AM_RAM_WRITE(ddragon_fgvideoram_w) AM_BASE_MEMBER(ddragon_state, fgvideoram)
AM_RANGE(0x2800, 0x2fff) AM_RAM_WRITE(ddragon_bgvideoram_w) AM_BASE_MEMBER(ddragon_state, bgvideoram)
AM_RANGE(0x3000, 0x317f) AM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split1_w) AM_BASE_GENERIC(paletteram)
@ -327,7 +327,7 @@ static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 8 )
ADDRESS_MAP_END
static ADDRESS_MAP_START( sub_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x2000, 0x2000) AM_WRITE(chinagat_sub_bankswitch_w)
AM_RANGE(0x2800, 0x2800) AM_WRITEONLY /* Called on CPU start and after return from jump table */
// AM_RANGE(0x2a2b, 0x2a2b) AM_READNOP /* What lives here? */

View File

@ -168,7 +168,7 @@ static WRITE8_HANDLER( cloak_nvram_enable_w )
static ADDRESS_MAP_START( master_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x0400, 0x07ff) AM_RAM_WRITE(cloak_videoram_w) AM_BASE_GENERIC(videoram)
AM_RANGE(0x0800, 0x0fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x0800, 0x0fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x1000, 0x100f) AM_DEVREADWRITE("pokey1", pokey_r, pokey_w) /* DSW0 also */
AM_RANGE(0x1800, 0x180f) AM_DEVREADWRITE("pokey2", pokey_r, pokey_w) /* DSW1 also */
AM_RANGE(0x2000, 0x2000) AM_READ_PORT("P1")
@ -200,7 +200,7 @@ static ADDRESS_MAP_START( slave_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x0007) AM_RAM
AM_RANGE(0x0008, 0x000f) AM_READWRITE(graph_processor_r, graph_processor_w)
AM_RANGE(0x0010, 0x07ff) AM_RAM
AM_RANGE(0x0800, 0x0fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x0800, 0x0fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x1000, 0x1000) AM_WRITE(cloak_irq_reset_1_w)
AM_RANGE(0x1200, 0x1200) AM_WRITE(cloak_clearbmp_w)
AM_RANGE(0x1400, 0x1400) AM_WRITE(cloak_custom_w)

View File

@ -62,7 +62,7 @@ static READ8_HANDLER( clshroad_input_r )
static ADDRESS_MAP_START( clshroad_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x95ff) AM_RAM
AM_RANGE(0x9600, 0x97ff) AM_RAM AM_SHARE(1)
AM_RANGE(0x9600, 0x97ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x9800, 0x9dff) AM_RAM
AM_RANGE(0x9e00, 0x9fff) AM_RAM AM_BASE_SIZE_GENERIC(spriteram)
AM_RANGE(0xa001, 0xa001) AM_WRITENOP // ? Interrupt related
@ -76,7 +76,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( clshroad_sound_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_WRITE(wiping_sound_w) AM_BASE(&wiping_soundregs)
AM_RANGE(0x9600, 0x97ff) AM_RAM AM_SHARE(1)
AM_RANGE(0x9600, 0x97ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xa003, 0xa003) AM_WRITENOP // ? Interrupt related
ADDRESS_MAP_END

View File

@ -519,7 +519,7 @@ static READ8_HANDLER( cntsteer_adx_r )
/***************************************************************************/
static ADDRESS_MAP_START( gekitsui_cpu1_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x1000, 0x11ff) AM_RAM AM_BASE_MEMBER(cntsteer_state, spriteram)
AM_RANGE(0x1200, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x23ff) AM_RAM_WRITE(cntsteer_foreground_vram_w) AM_BASE_MEMBER(cntsteer_state, videoram)
@ -529,7 +529,7 @@ static ADDRESS_MAP_START( gekitsui_cpu1_map, ADDRESS_SPACE_PROGRAM, 8 )
ADDRESS_MAP_END
static ADDRESS_MAP_START( gekitsui_cpu2_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x1000, 0x1fff) AM_RAM_WRITE(cntsteer_background_w) AM_BASE_MEMBER(cntsteer_state, videoram2)
AM_RANGE(0x3000, 0x3000) AM_READ_PORT("DSW0")
AM_RANGE(0x3001, 0x3001) AM_READ_PORT("P2")
@ -542,7 +542,7 @@ static ADDRESS_MAP_START( gekitsui_cpu2_map, ADDRESS_SPACE_PROGRAM, 8 )
ADDRESS_MAP_END
static ADDRESS_MAP_START( cntsteer_cpu1_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x1000, 0x11ff) AM_RAM AM_BASE_MEMBER(cntsteer_state, spriteram)
AM_RANGE(0x2000, 0x23ff) AM_RAM_WRITE(cntsteer_foreground_vram_w) AM_BASE_MEMBER(cntsteer_state, videoram)
AM_RANGE(0x2400, 0x27ff) AM_RAM_WRITE(cntsteer_foreground_attr_w) AM_BASE_MEMBER(cntsteer_state, colorram)
@ -552,9 +552,9 @@ static ADDRESS_MAP_START( cntsteer_cpu1_map, ADDRESS_SPACE_PROGRAM, 8 )
ADDRESS_MAP_END
static ADDRESS_MAP_START( cntsteer_cpu2_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x1000, 0x1fff) AM_RAM_WRITE(cntsteer_background_w) AM_BASE_MEMBER(cntsteer_state, videoram2) AM_SHARE(3)
AM_RANGE(0x2000, 0x2fff) AM_RAM_WRITE(cntsteer_background_w) AM_SHARE(3)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x1000, 0x1fff) AM_RAM_WRITE(cntsteer_background_w) AM_BASE_MEMBER(cntsteer_state, videoram2) AM_SHARE("share3")
AM_RANGE(0x2000, 0x2fff) AM_RAM_WRITE(cntsteer_background_w) AM_SHARE("share3")
AM_RANGE(0x3000, 0x3000) AM_READ_PORT("DSW0")
AM_RANGE(0x3001, 0x3001) AM_READ(cntsteer_adx_r)
AM_RANGE(0x3002, 0x3002) AM_READ_PORT("P1")

View File

@ -782,15 +782,15 @@ static WRITE32_HANDLER( area51mx_main_speedup_w )
*************************************/
static ADDRESS_MAP_START( r3000_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x04000000, 0x047fffff) AM_RAM AM_BASE(&jaguar_shared_ram) AM_SHARE(1)
AM_RANGE(0x04000000, 0x047fffff) AM_RAM AM_BASE(&jaguar_shared_ram) AM_SHARE("share1")
AM_RANGE(0x04800000, 0x04bfffff) AM_ROMBANK("bank1")
AM_RANGE(0x04c00000, 0x04dfffff) AM_ROMBANK("bank2")
AM_RANGE(0x04e00000, 0x04e003ff) AM_DEVREADWRITE("ide", ide_controller32_r, ide_controller32_w)
AM_RANGE(0x04f00000, 0x04f003ff) AM_READWRITE(jaguar_tom_regs32_r, jaguar_tom_regs32_w)
AM_RANGE(0x04f00400, 0x04f007ff) AM_RAM AM_BASE(&jaguar_gpu_clut) AM_SHARE(2)
AM_RANGE(0x04f00400, 0x04f007ff) AM_RAM AM_BASE(&jaguar_gpu_clut) AM_SHARE("share2")
AM_RANGE(0x04f02100, 0x04f021ff) AM_READWRITE(gpuctrl_r, gpuctrl_w)
AM_RANGE(0x04f02200, 0x04f022ff) AM_READWRITE(jaguar_blitter_r, jaguar_blitter_w)
AM_RANGE(0x04f03000, 0x04f03fff) AM_MIRROR(0x00008000) AM_RAM AM_BASE(&jaguar_gpu_ram) AM_SHARE(3)
AM_RANGE(0x04f03000, 0x04f03fff) AM_MIRROR(0x00008000) AM_RAM AM_BASE(&jaguar_gpu_ram) AM_SHARE("share3")
AM_RANGE(0x04f10000, 0x04f103ff) AM_READWRITE(jaguar_jerry_regs32_r, jaguar_jerry_regs32_w)
AM_RANGE(0x04f16000, 0x04f1600b) AM_READ(cojag_gun_input_r) // GPI02
AM_RANGE(0x04f17000, 0x04f17003) AM_READ_PORT("SYSTEM") // GPI03
@ -798,7 +798,7 @@ static ADDRESS_MAP_START( r3000_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x04f17c00, 0x04f17c03) AM_READ_PORT("P1_P2") // GPI05
AM_RANGE(0x04f1a100, 0x04f1a13f) AM_READWRITE(dspctrl_r, dspctrl_w)
AM_RANGE(0x04f1a140, 0x04f1a17f) AM_READWRITE(jaguar_serial_r, jaguar_serial_w)
AM_RANGE(0x04f1b000, 0x04f1cfff) AM_RAM AM_BASE(&jaguar_dsp_ram) AM_SHARE(4)
AM_RANGE(0x04f1b000, 0x04f1cfff) AM_RAM AM_BASE(&jaguar_dsp_ram) AM_SHARE("share4")
AM_RANGE(0x06000000, 0x06000003) AM_READWRITE(misc_control_r, misc_control_w)
AM_RANGE(0x10000000, 0x1007ffff) AM_RAM
@ -811,7 +811,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( m68020_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x000000, 0x7fffff) AM_RAM AM_BASE(&jaguar_shared_ram) AM_SHARE(1)
AM_RANGE(0x000000, 0x7fffff) AM_RAM AM_BASE(&jaguar_shared_ram) AM_SHARE("share1")
AM_RANGE(0x800000, 0x9fffff) AM_ROM AM_REGION("user1", 0) AM_BASE(&rom_base)
AM_RANGE(0xa00000, 0xa1ffff) AM_RAM
AM_RANGE(0xa20000, 0xa21fff) AM_READWRITE(eeprom_data_r, eeprom_data_w) AM_BASE_SIZE_GENERIC(nvram)
@ -821,10 +821,10 @@ static ADDRESS_MAP_START( m68020_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0xc00000, 0xdfffff) AM_ROMBANK("bank2")
AM_RANGE(0xe00000, 0xe003ff) AM_DEVREADWRITE("ide", ide_controller32_r, ide_controller32_w)
AM_RANGE(0xf00000, 0xf003ff) AM_READWRITE(jaguar_tom_regs32_r, jaguar_tom_regs32_w)
AM_RANGE(0xf00400, 0xf007ff) AM_RAM AM_BASE(&jaguar_gpu_clut) AM_SHARE(2)
AM_RANGE(0xf00400, 0xf007ff) AM_RAM AM_BASE(&jaguar_gpu_clut) AM_SHARE("share2")
AM_RANGE(0xf02100, 0xf021ff) AM_READWRITE(gpuctrl_r, gpuctrl_w)
AM_RANGE(0xf02200, 0xf022ff) AM_READWRITE(jaguar_blitter_r, jaguar_blitter_w)
AM_RANGE(0xf03000, 0xf03fff) AM_MIRROR(0x008000) AM_RAM AM_BASE(&jaguar_gpu_ram) AM_SHARE(3)
AM_RANGE(0xf03000, 0xf03fff) AM_MIRROR(0x008000) AM_RAM AM_BASE(&jaguar_gpu_ram) AM_SHARE("share3")
AM_RANGE(0xf10000, 0xf103ff) AM_READWRITE(jaguar_jerry_regs32_r, jaguar_jerry_regs32_w)
AM_RANGE(0xf16000, 0xf1600b) AM_READ(cojag_gun_input_r) // GPI02
AM_RANGE(0xf17000, 0xf17003) AM_READ_PORT("SYSTEM") // GPI03
@ -832,7 +832,7 @@ static ADDRESS_MAP_START( m68020_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0xf17c00, 0xf17c03) AM_READ_PORT("P1_P2") // GPI05
AM_RANGE(0xf1a100, 0xf1a13f) AM_READWRITE(dspctrl_r, dspctrl_w)
AM_RANGE(0xf1a140, 0xf1a17f) AM_READWRITE(jaguar_serial_r, jaguar_serial_w)
AM_RANGE(0xf1b000, 0xf1cfff) AM_RAM AM_BASE(&jaguar_dsp_ram) AM_SHARE(4)
AM_RANGE(0xf1b000, 0xf1cfff) AM_RAM AM_BASE(&jaguar_dsp_ram) AM_SHARE("share4")
ADDRESS_MAP_END
@ -844,15 +844,15 @@ ADDRESS_MAP_END
*************************************/
static ADDRESS_MAP_START( gpu_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x000000, 0x7fffff) AM_RAM AM_SHARE(1)
AM_RANGE(0x000000, 0x7fffff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x800000, 0xbfffff) AM_ROMBANK("bank8")
AM_RANGE(0xc00000, 0xdfffff) AM_ROMBANK("bank9")
AM_RANGE(0xe00000, 0xe003ff) AM_DEVREADWRITE("ide", ide_controller32_r, ide_controller32_w)
AM_RANGE(0xf00000, 0xf003ff) AM_READWRITE(jaguar_tom_regs32_r, jaguar_tom_regs32_w)
AM_RANGE(0xf00400, 0xf007ff) AM_RAM AM_SHARE(2)
AM_RANGE(0xf00400, 0xf007ff) AM_RAM AM_SHARE("share2")
AM_RANGE(0xf02100, 0xf021ff) AM_READWRITE(gpuctrl_r, gpuctrl_w)
AM_RANGE(0xf02200, 0xf022ff) AM_READWRITE(jaguar_blitter_r, jaguar_blitter_w)
AM_RANGE(0xf03000, 0xf03fff) AM_RAM AM_SHARE(3)
AM_RANGE(0xf03000, 0xf03fff) AM_RAM AM_SHARE("share3")
AM_RANGE(0xf10000, 0xf103ff) AM_READWRITE(jaguar_jerry_regs32_r, jaguar_jerry_regs32_w)
ADDRESS_MAP_END
@ -865,13 +865,13 @@ ADDRESS_MAP_END
*************************************/
static ADDRESS_MAP_START( dsp_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x000000, 0x7fffff) AM_RAM AM_SHARE(1)
AM_RANGE(0x000000, 0x7fffff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x800000, 0xbfffff) AM_ROMBANK("bank8")
AM_RANGE(0xc00000, 0xdfffff) AM_ROMBANK("bank9")
AM_RANGE(0xf10000, 0xf103ff) AM_READWRITE(jaguar_jerry_regs32_r, jaguar_jerry_regs32_w)
AM_RANGE(0xf1a100, 0xf1a13f) AM_READWRITE(dspctrl_r, dspctrl_w)
AM_RANGE(0xf1a140, 0xf1a17f) AM_READWRITE(jaguar_serial_r, jaguar_serial_w)
AM_RANGE(0xf1b000, 0xf1cfff) AM_RAM AM_SHARE(4)
AM_RANGE(0xf1b000, 0xf1cfff) AM_RAM AM_SHARE("share4")
AM_RANGE(0xf1d000, 0xf1dfff) AM_READ(jaguar_wave_rom_r) AM_BASE(&jaguar_wave_rom)
ADDRESS_MAP_END

View File

@ -237,24 +237,24 @@ static WRITE32_HANDLER( sysh1_dma_w )
}
static ADDRESS_MAP_START( system_h1_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x00000000, 0x000fffff) AM_ROM AM_SHARE(1) AM_WRITENOP
AM_RANGE(0x00000000, 0x000fffff) AM_ROM AM_SHARE("share1") AM_WRITENOP
AM_RANGE(0x01000000, 0x010fffff) AM_ROM AM_REGION("maincpu_data",0x0000000) //correct?
AM_RANGE(0x01200000, 0x021fffff) AM_ROM AM_REGION("gfx_data",0x0000000) //correct?
/*WARNING: boundaries of these two are WRONG!*/
AM_RANGE(0x03e00000, 0x03efffff) AM_RAM_WRITE(sysh1_dma_w) AM_BASE(&framebuffer_vram)
AM_RANGE(0x03f00000, 0x03f0ffff) AM_RAM AM_SHARE(3) /*Communication area RAM*/
AM_RANGE(0x03f00000, 0x03f0ffff) AM_RAM AM_SHARE("share3") /*Communication area RAM*/
AM_RANGE(0x03f40000, 0x03f4ffff) AM_RAM_WRITE(coolridr_pal_w) AM_BASE_GENERIC(paletteram)
AM_RANGE(0x04000000, 0x0400003f) AM_RAM_WRITE(sysh1_txt_blit_w) AM_BASE(&sysh1_txt_blit)
AM_RANGE(0x06000000, 0x060fffff) AM_RAM AM_BASE(&sysh1_workram_h)
AM_RANGE(0x20000000, 0x200fffff) AM_ROM AM_SHARE(1)
AM_RANGE(0x20000000, 0x200fffff) AM_ROM AM_SHARE("share1")
AM_RANGE(0x60000000, 0x600003ff) AM_WRITENOP
ADDRESS_MAP_END
static ADDRESS_MAP_START( coolridr_submap, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x00000000, 0x0001ffff) AM_ROM AM_SHARE(2)
AM_RANGE(0x00000000, 0x0001ffff) AM_ROM AM_SHARE("share2")
AM_RANGE(0x01000000, 0x0100ffff) AM_RAM
@ -270,13 +270,13 @@ static ADDRESS_MAP_START( coolridr_submap, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x05000000, 0x05000fff) AM_RAM
AM_RANGE(0x05200000, 0x052001ff) AM_RAM
AM_RANGE(0x05300000, 0x0530ffff) AM_RAM AM_SHARE(3) /*Communication area RAM*/
AM_RANGE(0x05300000, 0x0530ffff) AM_RAM AM_SHARE("share3") /*Communication area RAM*/
AM_RANGE(0x05ff0000, 0x05ffffff) AM_RAM /*???*/
AM_RANGE(0x06000000, 0x06000fff) AM_RAM
AM_RANGE(0x06100000, 0x06100fff) AM_RAM
AM_RANGE(0x06200000, 0x06200fff) AM_RAM
AM_RANGE(0x07fff000, 0x07ffffff) AM_RAM
AM_RANGE(0x20000000, 0x2001ffff) AM_ROM AM_SHARE(2)
AM_RANGE(0x20000000, 0x2001ffff) AM_ROM AM_SHARE("share2")
AM_RANGE(0x60000000, 0x600003ff) AM_WRITENOP
ADDRESS_MAP_END

View File

@ -136,18 +136,18 @@ static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0xfd8000, 0xfd9fff) AM_WRITE(atarigen_sound_upper_w)
AM_RANGE(0xfe0000, 0xfe0fff) AM_READ(special_port0_r)
AM_RANGE(0xfe1000, 0xfe1fff) AM_READ_PORT("IN1")
AM_RANGE(0xfe8000, 0xfe8fff) AM_RAM_WRITE(cyberbal_paletteram_1_w) AM_SHARE(1) AM_BASE(&cyberbal_paletteram_1)
AM_RANGE(0xfec000, 0xfecfff) AM_RAM_WRITE(cyberbal_paletteram_0_w) AM_SHARE(2) AM_BASE(&cyberbal_paletteram_0)
AM_RANGE(0xff0000, 0xff1fff) AM_RAM_WRITE(atarigen_playfield2_w) AM_SHARE(3) AM_BASE(&atarigen_playfield2)
AM_RANGE(0xff2000, 0xff2fff) AM_RAM_WRITE(atarigen_alpha2_w) AM_SHARE(4) AM_BASE(&atarigen_alpha2)
AM_RANGE(0xff3000, 0xff37ff) AM_RAM_WRITE(atarimo_1_spriteram_w) AM_SHARE(5) AM_BASE(&atarimo_1_spriteram)
AM_RANGE(0xff3800, 0xff3fff) AM_RAM AM_SHARE(6)
AM_RANGE(0xff4000, 0xff5fff) AM_RAM_WRITE(atarigen_playfield_w) AM_SHARE(7) AM_BASE(&atarigen_playfield)
AM_RANGE(0xff6000, 0xff6fff) AM_RAM_WRITE(atarigen_alpha_w) AM_SHARE(8) AM_BASE(&atarigen_alpha)
AM_RANGE(0xff7000, 0xff77ff) AM_RAM_WRITE(atarimo_0_spriteram_w) AM_SHARE(9) AM_BASE(&atarimo_0_spriteram)
AM_RANGE(0xff7800, 0xff9fff) AM_RAM AM_SHARE(10)
AM_RANGE(0xffa000, 0xffbfff) AM_READONLY AM_WRITENOP AM_SHARE(11)
AM_RANGE(0xffc000, 0xffffff) AM_RAM AM_SHARE(12)
AM_RANGE(0xfe8000, 0xfe8fff) AM_RAM_WRITE(cyberbal_paletteram_1_w) AM_SHARE("share1") AM_BASE(&cyberbal_paletteram_1)
AM_RANGE(0xfec000, 0xfecfff) AM_RAM_WRITE(cyberbal_paletteram_0_w) AM_SHARE("share2") AM_BASE(&cyberbal_paletteram_0)
AM_RANGE(0xff0000, 0xff1fff) AM_RAM_WRITE(atarigen_playfield2_w) AM_SHARE("share3") AM_BASE(&atarigen_playfield2)
AM_RANGE(0xff2000, 0xff2fff) AM_RAM_WRITE(atarigen_alpha2_w) AM_SHARE("share4") AM_BASE(&atarigen_alpha2)
AM_RANGE(0xff3000, 0xff37ff) AM_RAM_WRITE(atarimo_1_spriteram_w) AM_SHARE("share5") AM_BASE(&atarimo_1_spriteram)
AM_RANGE(0xff3800, 0xff3fff) AM_RAM AM_SHARE("share6")
AM_RANGE(0xff4000, 0xff5fff) AM_RAM_WRITE(atarigen_playfield_w) AM_SHARE("share7") AM_BASE(&atarigen_playfield)
AM_RANGE(0xff6000, 0xff6fff) AM_RAM_WRITE(atarigen_alpha_w) AM_SHARE("share8") AM_BASE(&atarigen_alpha)
AM_RANGE(0xff7000, 0xff77ff) AM_RAM_WRITE(atarimo_0_spriteram_w) AM_SHARE("share9") AM_BASE(&atarimo_0_spriteram)
AM_RANGE(0xff7800, 0xff9fff) AM_RAM AM_SHARE("share10")
AM_RANGE(0xffa000, 0xffbfff) AM_READONLY AM_WRITENOP AM_SHARE("share11")
AM_RANGE(0xffc000, 0xffffff) AM_RAM AM_SHARE("share12")
ADDRESS_MAP_END
@ -163,18 +163,18 @@ static ADDRESS_MAP_START( extra_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0xfc0000, 0xfdffff) AM_WRITE(atarigen_video_int_ack_w)
AM_RANGE(0xfe0000, 0xfe0fff) AM_READ(special_port0_r)
AM_RANGE(0xfe1000, 0xfe1fff) AM_READ_PORT("IN1")
AM_RANGE(0xfe8000, 0xfe8fff) AM_RAM_WRITE(cyberbal_paletteram_1_w) AM_SHARE(1)
AM_RANGE(0xfec000, 0xfecfff) AM_RAM_WRITE(cyberbal_paletteram_0_w) AM_SHARE(2)
AM_RANGE(0xff0000, 0xff1fff) AM_RAM_WRITE(atarigen_playfield2_w) AM_SHARE(3)
AM_RANGE(0xff2000, 0xff2fff) AM_RAM_WRITE(atarigen_alpha2_w) AM_SHARE(4)
AM_RANGE(0xff3000, 0xff37ff) AM_RAM_WRITE(atarimo_1_spriteram_w) AM_SHARE(5)
AM_RANGE(0xff3800, 0xff3fff) AM_RAM AM_SHARE(6)
AM_RANGE(0xff4000, 0xff5fff) AM_RAM_WRITE(atarigen_playfield_w) AM_SHARE(7)
AM_RANGE(0xff6000, 0xff6fff) AM_RAM_WRITE(atarigen_alpha_w) AM_SHARE(8)
AM_RANGE(0xff7000, 0xff77ff) AM_RAM_WRITE(atarimo_0_spriteram_w) AM_SHARE(9)
AM_RANGE(0xff7800, 0xff9fff) AM_RAM AM_SHARE(10)
AM_RANGE(0xffa000, 0xffbfff) AM_RAM AM_SHARE(11)
AM_RANGE(0xffc000, 0xffffff) AM_READONLY AM_WRITENOP AM_SHARE(12)
AM_RANGE(0xfe8000, 0xfe8fff) AM_RAM_WRITE(cyberbal_paletteram_1_w) AM_SHARE("share1")
AM_RANGE(0xfec000, 0xfecfff) AM_RAM_WRITE(cyberbal_paletteram_0_w) AM_SHARE("share2")
AM_RANGE(0xff0000, 0xff1fff) AM_RAM_WRITE(atarigen_playfield2_w) AM_SHARE("share3")
AM_RANGE(0xff2000, 0xff2fff) AM_RAM_WRITE(atarigen_alpha2_w) AM_SHARE("share4")
AM_RANGE(0xff3000, 0xff37ff) AM_RAM_WRITE(atarimo_1_spriteram_w) AM_SHARE("share5")
AM_RANGE(0xff3800, 0xff3fff) AM_RAM AM_SHARE("share6")
AM_RANGE(0xff4000, 0xff5fff) AM_RAM_WRITE(atarigen_playfield_w) AM_SHARE("share7")
AM_RANGE(0xff6000, 0xff6fff) AM_RAM_WRITE(atarigen_alpha_w) AM_SHARE("share8")
AM_RANGE(0xff7000, 0xff77ff) AM_RAM_WRITE(atarimo_0_spriteram_w) AM_SHARE("share9")
AM_RANGE(0xff7800, 0xff9fff) AM_RAM AM_SHARE("share10")
AM_RANGE(0xffa000, 0xffbfff) AM_RAM AM_SHARE("share11")
AM_RANGE(0xffc000, 0xffffff) AM_READONLY AM_WRITENOP AM_SHARE("share12")
ADDRESS_MAP_END

View File

@ -258,9 +258,9 @@ static ADDRESS_MAP_START( darius_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0xd40000, 0xd40003) AM_WRITE(PC080SN_xscroll_word_0_w)
AM_RANGE(0xd50000, 0xd50003) AM_WRITE(PC080SN_ctrl_word_0_w)
AM_RANGE(0xd80000, 0xd80fff) AM_RAM_WRITE(paletteram16_xBBBBBGGGGGRRRRR_word_w) AM_BASE_GENERIC(paletteram)/* palette */
AM_RANGE(0xe00100, 0xe00fff) AM_RAM AM_SHARE(1) AM_BASE_SIZE_GENERIC(spriteram)
AM_RANGE(0xe01000, 0xe02fff) AM_RAM AM_SHARE(2)
AM_RANGE(0xe08000, 0xe0ffff) AM_RAM_WRITE(darius_fg_layer_w) AM_SHARE(3) AM_BASE(&darius_fg_ram)
AM_RANGE(0xe00100, 0xe00fff) AM_RAM AM_SHARE("share1") AM_BASE_SIZE_GENERIC(spriteram)
AM_RANGE(0xe01000, 0xe02fff) AM_RAM AM_SHARE("share2")
AM_RANGE(0xe08000, 0xe0ffff) AM_RAM_WRITE(darius_fg_layer_w) AM_SHARE("share3") AM_BASE(&darius_fg_ram)
AM_RANGE(0xe10000, 0xe10fff) AM_RAM /* ??? */
ADDRESS_MAP_END
@ -269,9 +269,9 @@ static ADDRESS_MAP_START( darius_cpub_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x040000, 0x04ffff) AM_RAM /* local RAM */
AM_RANGE(0xc00000, 0xc0007f) AM_WRITE(darius_ioc_w) /* only writes $c00050 (?) */
AM_RANGE(0xd80000, 0xd80fff) AM_WRITE(paletteram16_xBBBBBGGGGGRRRRR_word_w)
AM_RANGE(0xe00100, 0xe00fff) AM_RAM AM_SHARE(1)
AM_RANGE(0xe01000, 0xe02fff) AM_RAM AM_SHARE(2)
AM_RANGE(0xe08000, 0xe0ffff) AM_RAM_WRITE(darius_fg_layer_w) AM_SHARE(3)
AM_RANGE(0xe00100, 0xe00fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xe01000, 0xe02fff) AM_RAM AM_SHARE("share2")
AM_RANGE(0xe08000, 0xe0ffff) AM_RAM_WRITE(darius_fg_layer_w) AM_SHARE("share3")
ADDRESS_MAP_END

View File

@ -68,7 +68,7 @@ static READ16_HANDLER( ghunter_trackball_high_r )
static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x00000, 0x037ff) AM_RAM
AM_RANGE(0x03800, 0x03fff) AM_RAM AM_BASE_GENERIC(spriteram)
AM_RANGE(0x04000, 0x04fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x04000, 0x04fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x05000, 0x05fff) AM_WRITEONLY
AM_RANGE(0x06000, 0x0600f) AM_READWRITE(seibu_main_word_r, seibu_main_word_w)
AM_RANGE(0x06010, 0x07fff) AM_WRITEONLY
@ -86,7 +86,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( sub_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x00000, 0x037ff) AM_RAM
AM_RANGE(0x03800, 0x03fff) AM_RAM_WRITE(deadang_foreground_w) AM_BASE(&deadang_video_data)
AM_RANGE(0x04000, 0x04fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x04000, 0x04fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x08000, 0x08001) AM_WRITE(deadang_bank_w)
AM_RANGE(0x0c000, 0x0c001) AM_WRITE(watchdog_reset16_w)
AM_RANGE(0xe0000, 0xfffff) AM_ROM

View File

@ -651,9 +651,9 @@ static ADDRESS_MAP_START( gondo_map, ADDRESS_SPACE_PROGRAM, 8 )
ADDRESS_MAP_END
static ADDRESS_MAP_START( oscar_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x0eff) AM_RAM AM_SHARE(1)
AM_RANGE(0x0000, 0x0eff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x0f00, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x1fff) AM_RAM AM_SHARE(2)
AM_RANGE(0x1000, 0x1fff) AM_RAM AM_SHARE("share2")
AM_RANGE(0x2000, 0x27ff) AM_RAM_WRITE(dec8_videoram_w) AM_BASE_SIZE_MEMBER(dec8_state, videoram, videoram_size)
AM_RANGE(0x2800, 0x2fff) AM_READWRITE(dec8_pf0_data_r, dec8_pf0_data_w) AM_BASE_MEMBER(dec8_state, pf0_data)
AM_RANGE(0x3000, 0x37ff) AM_RAM AM_BASE_SIZE_GENERIC(spriteram) /* Sprites */
@ -674,17 +674,17 @@ static ADDRESS_MAP_START( oscar_map, ADDRESS_SPACE_PROGRAM, 8 )
ADDRESS_MAP_END
static ADDRESS_MAP_START( oscar_sub_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x0eff) AM_RAM AM_SHARE(1)
AM_RANGE(0x0000, 0x0eff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x0f00, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x1fff) AM_RAM AM_SHARE(2)
AM_RANGE(0x1000, 0x1fff) AM_RAM AM_SHARE("share2")
AM_RANGE(0x3e80, 0x3e83) AM_WRITE(oscar_int_w)
AM_RANGE(0x4000, 0xffff) AM_ROM
ADDRESS_MAP_END
static ADDRESS_MAP_START( lastmiss_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split1_w) AM_SHARE(3) AM_BASE_GENERIC(paletteram)
AM_RANGE(0x1400, 0x17ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split2_w) AM_SHARE(4) AM_BASE_GENERIC(paletteram2)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split1_w) AM_SHARE("share3") AM_BASE_GENERIC(paletteram)
AM_RANGE(0x1400, 0x17ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split2_w) AM_SHARE("share4") AM_BASE_GENERIC(paletteram2)
AM_RANGE(0x1800, 0x1800) AM_READ_PORT("IN0")
AM_RANGE(0x1801, 0x1801) AM_READ_PORT("IN1")
AM_RANGE(0x1802, 0x1802) AM_READ_PORT("IN2")
@ -701,16 +701,16 @@ static ADDRESS_MAP_START( lastmiss_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x180e, 0x180f) AM_WRITE(lastmiss_i8751_w)
AM_RANGE(0x2000, 0x27ff) AM_RAM_WRITE(dec8_videoram_w) AM_BASE_SIZE_MEMBER(dec8_state, videoram, videoram_size)
AM_RANGE(0x2800, 0x2fff) AM_RAM AM_BASE_SIZE_GENERIC(spriteram)
AM_RANGE(0x3000, 0x37ff) AM_RAM AM_SHARE(2)
AM_RANGE(0x3000, 0x37ff) AM_RAM AM_SHARE("share2")
AM_RANGE(0x3800, 0x3fff) AM_READWRITE(dec8_pf0_data_r, dec8_pf0_data_w) AM_BASE_MEMBER(dec8_state, pf0_data)
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1")
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
static ADDRESS_MAP_START( lastmiss_sub_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split1_w) AM_SHARE(3)
AM_RANGE(0x1400, 0x17ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split2_w) AM_SHARE(4)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split1_w) AM_SHARE("share3")
AM_RANGE(0x1400, 0x17ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split2_w) AM_SHARE("share4")
AM_RANGE(0x1800, 0x1800) AM_READ_PORT("IN0")
AM_RANGE(0x1801, 0x1801) AM_READ_PORT("IN1")
AM_RANGE(0x1802, 0x1802) AM_READ_PORT("IN2")
@ -722,15 +722,15 @@ static ADDRESS_MAP_START( lastmiss_sub_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x180c, 0x180c) AM_WRITE(dec8_sound_w)
AM_RANGE(0x2000, 0x27ff) AM_RAM_WRITE(dec8_videoram_w)
AM_RANGE(0x2800, 0x2fff) AM_WRITE(shackled_sprite_w)
AM_RANGE(0x3000, 0x37ff) AM_RAM AM_SHARE(2)
AM_RANGE(0x3000, 0x37ff) AM_RAM AM_SHARE("share2")
AM_RANGE(0x3800, 0x3fff) AM_READWRITE(dec8_pf0_data_r, dec8_pf0_data_w)
AM_RANGE(0x4000, 0xffff) AM_ROM
ADDRESS_MAP_END
static ADDRESS_MAP_START( shackled_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split1_w) AM_SHARE(3) AM_BASE_GENERIC(paletteram)
AM_RANGE(0x1400, 0x17ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split2_w) AM_SHARE(4) AM_BASE_GENERIC(paletteram2)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split1_w) AM_SHARE("share3") AM_BASE_GENERIC(paletteram)
AM_RANGE(0x1400, 0x17ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split2_w) AM_SHARE("share4") AM_BASE_GENERIC(paletteram2)
AM_RANGE(0x1800, 0x1800) AM_READ_PORT("IN0")
AM_RANGE(0x1801, 0x1801) AM_READ_PORT("IN1")
AM_RANGE(0x1802, 0x1802) AM_READ_PORT("IN2")
@ -745,16 +745,16 @@ static ADDRESS_MAP_START( shackled_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x180d, 0x180d) AM_WRITE(shackled_control_w) /* Bank switch + Scroll MSB */
AM_RANGE(0x2000, 0x27ff) AM_RAM_WRITE(dec8_videoram_w)
AM_RANGE(0x2800, 0x2fff) AM_READWRITE(shackled_sprite_r, shackled_sprite_w)
AM_RANGE(0x3000, 0x37ff) AM_RAM AM_SHARE(2)
AM_RANGE(0x3000, 0x37ff) AM_RAM AM_SHARE("share2")
AM_RANGE(0x3800, 0x3fff) AM_READWRITE(dec8_pf0_data_r, dec8_pf0_data_w) AM_BASE_MEMBER(dec8_state, pf0_data)
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1")
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
static ADDRESS_MAP_START( shackled_sub_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split1_w) AM_SHARE(3)
AM_RANGE(0x1400, 0x17ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split2_w) AM_SHARE(4)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split1_w) AM_SHARE("share3")
AM_RANGE(0x1400, 0x17ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split2_w) AM_SHARE("share4")
AM_RANGE(0x1800, 0x1800) AM_READ_PORT("IN0")
AM_RANGE(0x1801, 0x1801) AM_READ_PORT("IN1")
AM_RANGE(0x1802, 0x1802) AM_READ_PORT("IN2")
@ -771,15 +771,15 @@ static ADDRESS_MAP_START( shackled_sub_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x180e, 0x180f) AM_WRITE(shackled_i8751_w)
AM_RANGE(0x2000, 0x27ff) AM_RAM_WRITE(dec8_videoram_w) AM_BASE_SIZE_MEMBER(dec8_state, videoram, videoram_size)
AM_RANGE(0x2800, 0x2fff) AM_RAM AM_BASE_SIZE_GENERIC(spriteram)
AM_RANGE(0x3000, 0x37ff) AM_RAM AM_SHARE(2)
AM_RANGE(0x3000, 0x37ff) AM_RAM AM_SHARE("share2")
AM_RANGE(0x3800, 0x3fff) AM_READWRITE(dec8_pf0_data_r, dec8_pf0_data_w)
AM_RANGE(0x4000, 0xffff) AM_ROM
ADDRESS_MAP_END
static ADDRESS_MAP_START( csilver_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split1_w) AM_SHARE(3) AM_BASE_GENERIC(paletteram)
AM_RANGE(0x1400, 0x17ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split2_w) AM_SHARE(4) AM_BASE_GENERIC(paletteram2)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split1_w) AM_SHARE("share3") AM_BASE_GENERIC(paletteram)
AM_RANGE(0x1400, 0x17ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split2_w) AM_SHARE("share4") AM_BASE_GENERIC(paletteram2)
AM_RANGE(0x1800, 0x1800) AM_READ_PORT("IN1")
AM_RANGE(0x1801, 0x1801) AM_READ_PORT("IN0")
AM_RANGE(0x1803, 0x1803) AM_READ_PORT("IN2")
@ -795,16 +795,16 @@ static ADDRESS_MAP_START( csilver_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x1e00, 0x1e00) AM_READ(i8751_l_r)
AM_RANGE(0x2000, 0x27ff) AM_RAM_WRITE(dec8_videoram_w)
AM_RANGE(0x2800, 0x2fff) AM_READWRITE(shackled_sprite_r, shackled_sprite_w)
AM_RANGE(0x3000, 0x37ff) AM_RAM AM_SHARE(2)
AM_RANGE(0x3000, 0x37ff) AM_RAM AM_SHARE("share2")
AM_RANGE(0x3800, 0x3fff) AM_READWRITE(dec8_pf0_data_r, dec8_pf0_data_w) AM_BASE_MEMBER(dec8_state, pf0_data)
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1")
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
static ADDRESS_MAP_START( csilver_sub_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split1_w) AM_SHARE(3)
AM_RANGE(0x1400, 0x17ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split2_w) AM_SHARE(4)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split1_w) AM_SHARE("share3")
AM_RANGE(0x1400, 0x17ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split2_w) AM_SHARE("share4")
AM_RANGE(0x1803, 0x1803) AM_READ_PORT("IN2")
AM_RANGE(0x1804, 0x1804) AM_READ_PORT("DSW1")
AM_RANGE(0x1800, 0x1804) AM_WRITE(shackled_int_w)
@ -812,7 +812,7 @@ static ADDRESS_MAP_START( csilver_sub_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x180c, 0x180c) AM_WRITE(dec8_sound_w)
AM_RANGE(0x2000, 0x27ff) AM_RAM_WRITE(dec8_videoram_w) AM_BASE_SIZE_MEMBER(dec8_state, videoram, videoram_size)
AM_RANGE(0x2800, 0x2fff) AM_RAM AM_BASE_SIZE_GENERIC(spriteram)
AM_RANGE(0x3000, 0x37ff) AM_RAM AM_SHARE(2)
AM_RANGE(0x3000, 0x37ff) AM_RAM AM_SHARE("share2")
AM_RANGE(0x3800, 0x3fff) AM_READWRITE(dec8_pf0_data_r, dec8_pf0_data_w)
AM_RANGE(0x4000, 0xffff) AM_ROM
ADDRESS_MAP_END

View File

@ -745,7 +745,7 @@ static ADDRESS_MAP_START( cpu0_am, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x8000, 0xafff) AM_ROMBANK("bank4")
AM_RANGE(0xb000, 0xbfff) AM_READWRITE( pandora_spriteram_r, pandora_spriteram_w )
AM_RANGE(0xc000, 0xdfff) AM_ROMBANK("bank1")
AM_RANGE(0xe000, 0xefff) AM_RAM AM_SHARE(1)
AM_RANGE(0xe000, 0xefff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xf000, 0xf7ff) AM_RAM
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
@ -763,7 +763,7 @@ static ADDRESS_MAP_START( cpu1_am, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xc000, 0xcfff) AM_RAM_WRITE(djboy_videoram_w) AM_BASE_GENERIC(videoram)
AM_RANGE(0xd000, 0xd3ff) AM_RAM_WRITE(djboy_paletteram_w) AM_BASE_GENERIC(paletteram)
AM_RANGE(0xd400, 0xd8ff) AM_RAM
AM_RANGE(0xe000, 0xffff) AM_RAM AM_SHARE(1)
AM_RANGE(0xe000, 0xffff) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
static ADDRESS_MAP_START( cpu1_port_am, ADDRESS_SPACE_IO, 8 )

View File

@ -87,7 +87,7 @@ static ADDRESS_MAP_START( master_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x00000, 0x06fff) AM_RAM
AM_RANGE(0x07000, 0x07fff) AM_RAM AM_BASE_SIZE_GENERIC(spriteram)
AM_RANGE(0x08000, 0x080ff) AM_RAM AM_BASE(&dynduke_scroll_ram)
AM_RANGE(0x0a000, 0x0afff) AM_RAM AM_SHARE(1)
AM_RANGE(0x0a000, 0x0afff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x0b000, 0x0b001) AM_READ_PORT("P1_P2")
AM_RANGE(0x0b002, 0x0b003) AM_READ_PORT("DSW")
AM_RANGE(0x0b004, 0x0b005) AM_WRITENOP
@ -102,7 +102,7 @@ static ADDRESS_MAP_START( slave_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x06000, 0x067ff) AM_RAM_WRITE(dynduke_background_w) AM_BASE(&dynduke_back_data)
AM_RANGE(0x06800, 0x06fff) AM_RAM_WRITE(dynduke_foreground_w) AM_BASE(&dynduke_fore_data)
AM_RANGE(0x07000, 0x07fff) AM_RAM_WRITE(dynduke_paletteram_w) AM_BASE_GENERIC(paletteram)
AM_RANGE(0x08000, 0x08fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x08000, 0x08fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x0a000, 0x0a001) AM_WRITE(dynduke_gfxbank_w)
AM_RANGE(0x0c000, 0x0c001) AM_WRITENOP
AM_RANGE(0xc0000, 0xfffff) AM_ROM
@ -115,7 +115,7 @@ static ADDRESS_MAP_START( masterj_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x08000, 0x087ff) AM_RAM_WRITE(dynduke_text_w) AM_BASE_GENERIC(videoram)
AM_RANGE(0x09000, 0x0900d) AM_READWRITE(seibu_main_word_r, seibu_main_word_w)
AM_RANGE(0x0c000, 0x0c0ff) AM_RAM AM_BASE(&dynduke_scroll_ram)
AM_RANGE(0x0e000, 0x0efff) AM_RAM AM_SHARE(1)
AM_RANGE(0x0e000, 0x0efff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x0f000, 0x0f001) AM_READ_PORT("P1_P2")
AM_RANGE(0x0f002, 0x0f003) AM_READ_PORT("DSW")
AM_RANGE(0x0f004, 0x0f005) AM_WRITENOP

View File

@ -166,8 +166,8 @@ static WRITE16_HANDLER( sync_w )
static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x000000, 0x09ffff) AM_ROM
AM_RANGE(0x0e0000, 0x0e0fff) AM_READWRITE(atarigen_eeprom_r, atarigen_eeprom_w) AM_BASE(&atarigen_eeprom) AM_SIZE(&atarigen_eeprom_size)
AM_RANGE(0x16cc00, 0x16cc01) AM_RAM AM_SHARE(2)
AM_RANGE(0x160000, 0x16ffff) AM_RAM AM_SHARE(1)
AM_RANGE(0x16cc00, 0x16cc01) AM_RAM AM_SHARE("share2")
AM_RANGE(0x160000, 0x16ffff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x1f0000, 0x1fffff) AM_WRITE(atarigen_eeprom_enable_w)
AM_RANGE(0x260000, 0x26000f) AM_READ_PORT("260000")
AM_RANGE(0x260010, 0x26001f) AM_READ(special_port1_r)
@ -191,8 +191,8 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( guts_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x000000, 0x09ffff) AM_ROM
AM_RANGE(0x0e0000, 0x0e0fff) AM_READWRITE(atarigen_eeprom_r, atarigen_eeprom_w) AM_BASE(&atarigen_eeprom) AM_SIZE(&atarigen_eeprom_size)
AM_RANGE(0x16cc00, 0x16cc01) AM_RAM AM_SHARE(2)
AM_RANGE(0x160000, 0x16ffff) AM_RAM AM_SHARE(1)
AM_RANGE(0x16cc00, 0x16cc01) AM_RAM AM_SHARE("share2")
AM_RANGE(0x160000, 0x16ffff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x1f0000, 0x1fffff) AM_WRITE(atarigen_eeprom_enable_w)
AM_RANGE(0x260000, 0x26000f) AM_READ_PORT("260000")
AM_RANGE(0x260010, 0x26001f) AM_READ(special_port1_r)
@ -223,8 +223,8 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( extra_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x16cc00, 0x16cc01) AM_READWRITE(sync_r, sync_w) AM_SHARE(2) AM_BASE(&sync_data)
AM_RANGE(0x160000, 0x16ffff) AM_RAM AM_SHARE(1)
AM_RANGE(0x16cc00, 0x16cc01) AM_READWRITE(sync_r, sync_w) AM_SHARE("share2") AM_BASE(&sync_data)
AM_RANGE(0x160000, 0x16ffff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x260000, 0x26000f) AM_READ_PORT("260000")
AM_RANGE(0x260010, 0x26001f) AM_READ(special_port1_r)
AM_RANGE(0x260020, 0x26002f) AM_READ(adc_r)

View File

@ -621,7 +621,7 @@ static WRITE8_HANDLER( volume_dac_w )
*************************************/
static ADDRESS_MAP_START( game_cpu_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x3fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x0000, 0x3fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x4000, 0x42ff) AM_RAM AM_BASE(&esripsys_pal_ram)
AM_RANGE(0x4300, 0x4300) AM_WRITE(esripsys_bg_intensity_w)
AM_RANGE(0x4400, 0x47ff) AM_NOP /* Collision detection RAM */
@ -636,7 +636,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( frame_cpu_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x3fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x0000, 0x3fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x4000, 0x4fff) AM_READWRITE(fdt_r, fdt_w)
AM_RANGE(0x6000, 0x6000) AM_READWRITE(f_status_r, f_status_w)
AM_RANGE(0x8000, 0x8000) AM_WRITE(frame_w)

View File

@ -115,14 +115,14 @@ static ADDRESS_MAP_START( flower_cpu1_2, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xa102, 0xa102) AM_READ_PORT("IN0CPU0")
AM_RANGE(0xa103, 0xa103) AM_READ_PORT("IN1CPU0")
AM_RANGE(0xa400, 0xa400) AM_WRITE(sound_command_w)
AM_RANGE(0xc000, 0xddff) AM_SHARE(1) AM_RAM
AM_RANGE(0xde00, 0xdfff) AM_SHARE(2) AM_RAM AM_BASE_GENERIC(spriteram)
AM_RANGE(0xe000, 0xe7ff) AM_SHARE(3) AM_RAM_WRITE(flower_textram_w) AM_BASE(&flower_textram)
AM_RANGE(0xe000, 0xefff) AM_SHARE(4) AM_RAM //only cleared?
AM_RANGE(0xf000, 0xf1ff) AM_SHARE(5) AM_RAM_WRITE(flower_bg0ram_w) AM_BASE(&flower_bg0ram)
AM_RANGE(0xf200, 0xf200) AM_SHARE(6) AM_RAM AM_BASE(&flower_bg0_scroll)
AM_RANGE(0xf800, 0xf9ff) AM_SHARE(7) AM_RAM_WRITE(flower_bg1ram_w) AM_BASE(&flower_bg1ram)
AM_RANGE(0xfa00, 0xfa00) AM_SHARE(8) AM_RAM AM_BASE(&flower_bg1_scroll)
AM_RANGE(0xc000, 0xddff) AM_SHARE("share1") AM_RAM
AM_RANGE(0xde00, 0xdfff) AM_SHARE("share2") AM_RAM AM_BASE_GENERIC(spriteram)
AM_RANGE(0xe000, 0xe7ff) AM_SHARE("share3") AM_RAM_WRITE(flower_textram_w) AM_BASE(&flower_textram)
AM_RANGE(0xe000, 0xefff) AM_SHARE("share4") AM_RAM //only cleared?
AM_RANGE(0xf000, 0xf1ff) AM_SHARE("share5") AM_RAM_WRITE(flower_bg0ram_w) AM_BASE(&flower_bg0ram)
AM_RANGE(0xf200, 0xf200) AM_SHARE("share6") AM_RAM AM_BASE(&flower_bg0_scroll)
AM_RANGE(0xf800, 0xf9ff) AM_SHARE("share7") AM_RAM_WRITE(flower_bg1ram_w) AM_BASE(&flower_bg1ram)
AM_RANGE(0xfa00, 0xfa00) AM_SHARE("share8") AM_RAM AM_BASE(&flower_bg1_scroll)
ADDRESS_MAP_END

View File

@ -946,11 +946,11 @@ static ADDRESS_MAP_START( bosco_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x6830, 0x6830) AM_WRITE(watchdog_reset_w)
AM_RANGE(0x7000, 0x70ff) AM_DEVREADWRITE("06xx_0", namco_06xx_data_r, namco_06xx_data_w)
AM_RANGE(0x7100, 0x7100) AM_DEVREADWRITE("06xx_0", namco_06xx_ctrl_r, namco_06xx_ctrl_w)
AM_RANGE(0x7800, 0x7fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x7800, 0x7fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x8000, 0x8fff) AM_READWRITE(bosco_videoram_r, bosco_videoram_w) AM_BASE(&bosco_videoram) /* + sprite registers */
AM_RANGE(0x9000, 0x90ff) AM_DEVREADWRITE("06xx_1", namco_06xx_data_r, namco_06xx_data_w)
AM_RANGE(0x9100, 0x9100) AM_DEVREADWRITE("06xx_1", namco_06xx_ctrl_r, namco_06xx_ctrl_w)
AM_RANGE(0x9800, 0x980f) AM_WRITEONLY AM_SHARE(2) AM_BASE(&bosco_radarattr)
AM_RANGE(0x9800, 0x980f) AM_WRITEONLY AM_SHARE("share2") AM_BASE(&bosco_radarattr)
AM_RANGE(0x9810, 0x9810) AM_WRITE(bosco_scrollx_w)
AM_RANGE(0x9820, 0x9820) AM_WRITE(bosco_scrolly_w)
AM_RANGE(0x9830, 0x9830) AM_WRITE(bosco_starcontrol_w)
@ -969,9 +969,9 @@ static ADDRESS_MAP_START( galaga_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x7000, 0x70ff) AM_DEVREADWRITE("06xx", namco_06xx_data_r, namco_06xx_data_w)
AM_RANGE(0x7100, 0x7100) AM_DEVREADWRITE("06xx", namco_06xx_ctrl_r, namco_06xx_ctrl_w)
AM_RANGE(0x8000, 0x87ff) AM_READWRITE(galaga_videoram_r, galaga_videoram_w) AM_BASE(&galaga_videoram)
AM_RANGE(0x8800, 0x8bff) AM_RAM AM_SHARE(1) AM_BASE(&galaga_ram1)
AM_RANGE(0x9000, 0x93ff) AM_RAM AM_SHARE(2) AM_BASE(&galaga_ram2)
AM_RANGE(0x9800, 0x9bff) AM_RAM AM_SHARE(3) AM_BASE(&galaga_ram3)
AM_RANGE(0x8800, 0x8bff) AM_RAM AM_SHARE("share1") AM_BASE(&galaga_ram1)
AM_RANGE(0x9000, 0x93ff) AM_RAM AM_SHARE("share2") AM_BASE(&galaga_ram2)
AM_RANGE(0x9800, 0x9bff) AM_RAM AM_SHARE("share3") AM_BASE(&galaga_ram3)
AM_RANGE(0xa000, 0xa005) AM_WRITE(galaga_starcontrol_w)
AM_RANGE(0xa007, 0xa007) AM_WRITE(galaga_flip_screen_w)
ADDRESS_MAP_END
@ -985,10 +985,10 @@ static ADDRESS_MAP_START( xevious_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x6830, 0x6830) AM_WRITE(watchdog_reset_w)
AM_RANGE(0x7000, 0x70ff) AM_DEVREADWRITE("06xx", namco_06xx_data_r, namco_06xx_data_w)
AM_RANGE(0x7100, 0x7100) AM_DEVREADWRITE("06xx", namco_06xx_ctrl_r, namco_06xx_ctrl_w)
AM_RANGE(0x7800, 0x7fff) AM_RAM AM_SHARE(1) /* work RAM */
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE(2) AM_BASE(&xevious_sr1) /* work RAM + sprite registers */
AM_RANGE(0x9000, 0x97ff) AM_RAM AM_SHARE(3) AM_BASE(&xevious_sr2) /* work RAM + sprite registers */
AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_SHARE(4) AM_BASE(&xevious_sr3) /* work RAM + sprite registers */
AM_RANGE(0x7800, 0x7fff) AM_RAM AM_SHARE("share1") /* work RAM */
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("share2") AM_BASE(&xevious_sr1) /* work RAM + sprite registers */
AM_RANGE(0x9000, 0x97ff) AM_RAM AM_SHARE("share3") AM_BASE(&xevious_sr2) /* work RAM + sprite registers */
AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_SHARE("share4") AM_BASE(&xevious_sr3) /* work RAM + sprite registers */
AM_RANGE(0xb000, 0xb7ff) AM_READWRITE(xevious_fg_colorram_r, xevious_fg_colorram_w) AM_BASE(&xevious_fg_colorram)
AM_RANGE(0xb800, 0xbfff) AM_READWRITE(xevious_bg_colorram_r, xevious_bg_colorram_w) AM_BASE(&xevious_bg_colorram)
AM_RANGE(0xc000, 0xc7ff) AM_READWRITE(xevious_fg_videoram_r, xevious_fg_videoram_w) AM_BASE(&xevious_fg_videoram)
@ -1006,10 +1006,10 @@ static ADDRESS_MAP_START( digdug_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x7000, 0x70ff) AM_DEVREADWRITE("06xx", namco_06xx_data_r, namco_06xx_data_w)
AM_RANGE(0x7100, 0x7100) AM_DEVREADWRITE("06xx", namco_06xx_ctrl_r, namco_06xx_ctrl_w)
AM_RANGE(0x8000, 0x83ff) AM_READWRITE(digdug_videoram_r, digdug_videoram_w) AM_BASE(&digdug_videoram) /* tilemap RAM (bottom half of RAM 0 */
AM_RANGE(0x8400, 0x87ff) AM_RAM AM_SHARE(1) /* work RAM (top half for RAM 0 */
AM_RANGE(0x8800, 0x8bff) AM_RAM AM_SHARE(2) AM_BASE(&digdug_objram) /* work RAM + sprite registers */
AM_RANGE(0x9000, 0x93ff) AM_RAM AM_SHARE(3) AM_BASE(&digdug_posram) /* work RAM + sprite registers */
AM_RANGE(0x9800, 0x9bff) AM_RAM AM_SHARE(4) AM_BASE(&digdug_flpram) /* work RAM + sprite registers */
AM_RANGE(0x8400, 0x87ff) AM_RAM AM_SHARE("share1") /* work RAM (top half for RAM 0 */
AM_RANGE(0x8800, 0x8bff) AM_RAM AM_SHARE("share2") AM_BASE(&digdug_objram) /* work RAM + sprite registers */
AM_RANGE(0x9000, 0x93ff) AM_RAM AM_SHARE("share3") AM_BASE(&digdug_posram) /* work RAM + sprite registers */
AM_RANGE(0x9800, 0x9bff) AM_RAM AM_SHARE("share4") AM_BASE(&digdug_flpram) /* work RAM + sprite registers */
AM_RANGE(0xa000, 0xa007) AM_READNOP AM_WRITE(digdug_PORT_w) /* video latches (spurious reads when setting latch bits) */
AM_RANGE(0xb800, 0xb83f) AM_DEVREADWRITE("earom", atari_vg_earom_r, atari_vg_earom_w) /* non volatile memory data */
AM_RANGE(0xb840, 0xb840) AM_DEVWRITE("earom", atari_vg_earom_ctrl_w) /* non volatile memory control */

View File

@ -186,9 +186,9 @@ static ADDRESS_MAP_START( gradius3_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x0e0000, 0x0e0001) AM_WRITE(watchdog_reset16_w)
AM_RANGE(0x0e8000, 0x0e8001) AM_WRITE(sound_command_w)
AM_RANGE(0x0f0000, 0x0f0001) AM_WRITE(sound_irq_w)
AM_RANGE(0x100000, 0x103fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x100000, 0x103fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x14c000, 0x153fff) AM_READWRITE(K052109_halfword_r, K052109_halfword_w)
AM_RANGE(0x180000, 0x19ffff) AM_RAM_WRITE(gradius3_gfxram_w) AM_BASE(&gradius3_gfxram) AM_SHARE(2)
AM_RANGE(0x180000, 0x19ffff) AM_RAM_WRITE(gradius3_gfxram_w) AM_BASE(&gradius3_gfxram) AM_SHARE("share2")
ADDRESS_MAP_END
@ -196,9 +196,9 @@ static ADDRESS_MAP_START( gradius3_map2, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM
AM_RANGE(0x140000, 0x140001) AM_WRITE(cpuB_irqenable_w)
AM_RANGE(0x200000, 0x203fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x200000, 0x203fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x24c000, 0x253fff) AM_READWRITE(K052109_halfword_r, K052109_halfword_w)
AM_RANGE(0x280000, 0x29ffff) AM_RAM_WRITE(gradius3_gfxram_w) AM_SHARE(2)
AM_RANGE(0x280000, 0x29ffff) AM_RAM_WRITE(gradius3_gfxram_w) AM_SHARE("share2")
AM_RANGE(0x2c0000, 0x2c000f) AM_READWRITE(K051937_halfword_r, K051937_halfword_w)
AM_RANGE(0x2c0800, 0x2c0fff) AM_READWRITE(K051960_halfword_r, K051960_halfword_w)
AM_RANGE(0x400000, 0x5fffff) AM_READ(gradius3_gfxrom_r) /* gfx ROMs are mapped here, and copied to RAM */

View File

@ -618,8 +618,8 @@ static ADDRESS_MAP_START( gticlub_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x7e00c000, 0x7e00c007) AM_READ(K056800_host_r) // Hang Pilot
AM_RANGE(0x7e00c008, 0x7e00c00f) AM_READ(K056800_host_r)
AM_RANGE(0x7f000000, 0x7f3fffff) AM_ROM AM_REGION("user2", 0) /* Data ROM */
AM_RANGE(0x7f800000, 0x7f9fffff) AM_ROM AM_SHARE(2)
AM_RANGE(0x7fe00000, 0x7fffffff) AM_ROM AM_REGION("user1", 0) AM_SHARE(2) /* Program ROM */
AM_RANGE(0x7f800000, 0x7f9fffff) AM_ROM AM_SHARE("share2")
AM_RANGE(0x7fe00000, 0x7fffffff) AM_ROM AM_REGION("user1", 0) AM_SHARE("share2") /* Program ROM */
ADDRESS_MAP_END
/**********************************************************************/

View File

@ -149,7 +149,7 @@ static ADDRESS_MAP_START( main_cpu1_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x8000, 0x83ff) AM_RAM AM_BASE_MEMBER(gyruss_state, colorram)
AM_RANGE(0x8400, 0x87ff) AM_RAM AM_BASE_MEMBER(gyruss_state, videoram)
AM_RANGE(0x9000, 0x9fff) AM_RAM
AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_SHARE(1)
AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("DSW2") AM_WRITENOP /* watchdog reset */
AM_RANGE(0xc080, 0xc080) AM_READ_PORT("SYSTEM") AM_WRITE(gyruss_sh_irqtrigger_w)
AM_RANGE(0xc0a0, 0xc0a0) AM_READ_PORT("P1")
@ -166,7 +166,7 @@ static ADDRESS_MAP_START( main_cpu2_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x4000, 0x403f) AM_RAM
AM_RANGE(0x4040, 0x40ff) AM_RAM_WRITE(gyruss_spriteram_w) AM_BASE_MEMBER(gyruss_state, spriteram)
AM_RANGE(0x4100, 0x47ff) AM_RAM
AM_RANGE(0x6000, 0x67ff) AM_RAM AM_SHARE(1)
AM_RANGE(0x6000, 0x67ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xe000, 0xffff) AM_ROM
ADDRESS_MAP_END

View File

@ -326,10 +326,10 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( driver_msp_map, ADDRESS_SPACE_PROGRAM, 16 )
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000000, 0x000fffff) AM_RAM AM_SHARE(1) AM_BASE(&hdmsp_ram)
AM_RANGE(0x00700000, 0x007fffff) AM_RAM AM_SHARE(1)
AM_RANGE(0x00000000, 0x000fffff) AM_RAM AM_SHARE("share1") AM_BASE(&hdmsp_ram)
AM_RANGE(0x00700000, 0x007fffff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xc0000000, 0xc00001ff) AM_READWRITE(tms34010_io_register_r, tms34010_io_register_w)
AM_RANGE(0xfff00000, 0xffffffff) AM_RAM AM_SHARE(1)
AM_RANGE(0xfff00000, 0xffffffff) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END

View File

@ -342,7 +342,7 @@ static INPUT_PORTS_START( hikaru )
INPUT_PORTS_END
static ADDRESS_MAP_START( hikaru_map, ADDRESS_SPACE_PROGRAM, 64 )
AM_RANGE(0x00000000, 0x001FFFFF) AM_ROM AM_SHARE(1)
AM_RANGE(0x00000000, 0x001FFFFF) AM_ROM AM_SHARE("share1")
AM_RANGE(0x00400000, 0x004000FF) AM_NOP // unknown
AM_RANGE(0x00800000, 0x008000FF) AM_NOP // unknown
AM_RANGE(0x00830000, 0x00831FFF) AM_NOP // unknown
@ -364,7 +364,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( hikaru_map_slave, ADDRESS_SPACE_PROGRAM, 64 )
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000000, 0x001FFFFF) AM_ROM AM_SHARE(1)
AM_RANGE(0x00000000, 0x001FFFFF) AM_ROM AM_SHARE("share1")
AM_RANGE(0x0C000000, 0x0DFFFFFF) AM_RAM
AM_RANGE(0x10000000, 0x100000FF) AM_RAM
AM_RANGE(0x1A800000, 0x1A8000FF) AM_RAM

View File

@ -814,8 +814,8 @@ static ADDRESS_MAP_START( hornet_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x7d04a000, 0x7d04a003) AM_WRITE(comm_rombank_w)
AM_RANGE(0x7d050000, 0x7d05ffff) AM_ROMBANK("bank1") /* COMM BOARD 1 */
AM_RANGE(0x7e000000, 0x7e7fffff) AM_ROM AM_REGION("user2", 0) /* Data ROM */
AM_RANGE(0x7f000000, 0x7f3fffff) AM_ROM AM_SHARE(2)
AM_RANGE(0x7fc00000, 0x7fffffff) AM_ROM AM_REGION("user1", 0) AM_SHARE(2) /* Program ROM */
AM_RANGE(0x7f000000, 0x7f3fffff) AM_ROM AM_SHARE("share2")
AM_RANGE(0x7fc00000, 0x7fffffff) AM_ROM AM_REGION("user1", 0) AM_SHARE("share2") /* Program ROM */
ADDRESS_MAP_END
/*****************************************************************************/

View File

@ -351,7 +351,7 @@ static ADDRESS_MAP_START( master_memory, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xcfff) AM_READWRITE( pandora_spriteram_r, pandora_spriteram_w )
AM_RANGE(0xd000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xefff) AM_RAM AM_SHARE(1)
AM_RANGE(0xe000, 0xefff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xf000, 0xffff) AM_RAM
ADDRESS_MAP_END
@ -390,7 +390,7 @@ static ADDRESS_MAP_START( slave_memory, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xd000, 0xd1ff) AM_RAM_WRITE(paletteram_xxxxRRRRGGGGBBBB_split2_w) AM_BASE_GENERIC(paletteram2)
AM_RANGE(0xd800, 0xd9ff) AM_RAM_WRITE(paletteram_xxxxRRRRGGGGBBBB_split1_w) AM_BASE_GENERIC(paletteram)
AM_RANGE(0xd000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xefff) AM_RAM AM_SHARE(1)
AM_RANGE(0xe000, 0xefff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xf000, 0xffff) AM_RAM
ADDRESS_MAP_END

View File

@ -449,24 +449,24 @@ static ADDRESS_MAP_START( hyprduel_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x4788ac, 0x4788ad) AM_RAM AM_BASE(&hyprduel_screenctrl) /* Screen Control */
AM_RANGE(0x479700, 0x479713) AM_RAM AM_BASE(&hyprduel_videoregs) /* Video Registers */
AM_RANGE(0x800000, 0x800001) AM_WRITE(hyprduel_subcpu_control_w)
AM_RANGE(0xc00000, 0xc07fff) AM_RAM AM_SHARE(1) AM_BASE(&sharedram1)
AM_RANGE(0xc00000, 0xc07fff) AM_RAM AM_SHARE("share1") AM_BASE(&sharedram1)
AM_RANGE(0xe00000, 0xe00001) AM_READ_PORT("SERVICE") AM_WRITENOP
AM_RANGE(0xe00002, 0xe00003) AM_READ_PORT("DSW")
AM_RANGE(0xe00004, 0xe00005) AM_READ_PORT("P1_P2")
AM_RANGE(0xe00006, 0xe00007) AM_READ_PORT("SYSTEM")
AM_RANGE(0xfe0000, 0xfe3fff) AM_RAM AM_SHARE(2)
AM_RANGE(0xfe4000, 0xffffff) AM_RAM AM_SHARE(3) AM_BASE(&sharedram3)
AM_RANGE(0xfe0000, 0xfe3fff) AM_RAM AM_SHARE("share2")
AM_RANGE(0xfe4000, 0xffffff) AM_RAM AM_SHARE("share3") AM_BASE(&sharedram3)
ADDRESS_MAP_END
static ADDRESS_MAP_START( hyprduel_map2, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x000000, 0x003fff) AM_RAM AM_SHARE(1) /* shadow ($c00000 - $c03fff : vector) */
AM_RANGE(0x004000, 0x007fff) AM_READONLY AM_WRITENOP AM_SHARE(3) /* shadow ($fe4000 - $fe7fff : read only) */
AM_RANGE(0x000000, 0x003fff) AM_RAM AM_SHARE("share1") /* shadow ($c00000 - $c03fff : vector) */
AM_RANGE(0x004000, 0x007fff) AM_READONLY AM_WRITENOP AM_SHARE("share3") /* shadow ($fe4000 - $fe7fff : read only) */
AM_RANGE(0x400000, 0x400003) AM_DEVREADWRITE8("ymsnd", ym2151_r, ym2151_w, 0x00ff )
AM_RANGE(0x400004, 0x400005) AM_DEVREADWRITE8("oki", okim6295_r, okim6295_w, 0x00ff)
AM_RANGE(0x800000, 0x800001) AM_NOP
AM_RANGE(0xc00000, 0xc07fff) AM_RAM AM_SHARE(1)
AM_RANGE(0xfe0000, 0xfe3fff) AM_RAM AM_SHARE(2)
AM_RANGE(0xfe4000, 0xffffff) AM_RAM AM_SHARE(3)
AM_RANGE(0xc00000, 0xc07fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xfe0000, 0xfe3fff) AM_RAM AM_SHARE("share2")
AM_RANGE(0xfe4000, 0xffffff) AM_RAM AM_SHARE("share3")
ADDRESS_MAP_END
@ -495,24 +495,24 @@ static ADDRESS_MAP_START( magerror_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x8788aa, 0x8788ab) AM_RAM AM_BASE(&hyprduel_rombank) /* Rom Bank */
AM_RANGE(0x8788ac, 0x8788ad) AM_RAM AM_BASE(&hyprduel_screenctrl) /* Screen Control */
AM_RANGE(0x879700, 0x879713) AM_RAM AM_BASE(&hyprduel_videoregs) /* Video Registers */
AM_RANGE(0xc00000, 0xc1ffff) AM_RAM AM_SHARE(1) AM_BASE(&sharedram1)
AM_RANGE(0xc00000, 0xc1ffff) AM_RAM AM_SHARE("share1") AM_BASE(&sharedram1)
AM_RANGE(0xe00000, 0xe00001) AM_READ_PORT("SERVICE") AM_WRITENOP
AM_RANGE(0xe00002, 0xe00003) AM_READ_PORT("DSW")
AM_RANGE(0xe00004, 0xe00005) AM_READ_PORT("P1_P2")
AM_RANGE(0xe00006, 0xe00007) AM_READ_PORT("SYSTEM")
AM_RANGE(0xfe0000, 0xfe3fff) AM_RAM AM_SHARE(2)
AM_RANGE(0xfe4000, 0xffffff) AM_RAM AM_SHARE(3) AM_BASE(&sharedram3)
AM_RANGE(0xfe0000, 0xfe3fff) AM_RAM AM_SHARE("share2")
AM_RANGE(0xfe4000, 0xffffff) AM_RAM AM_SHARE("share3") AM_BASE(&sharedram3)
ADDRESS_MAP_END
static ADDRESS_MAP_START( magerror_map2, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x000000, 0x003fff) AM_RAM AM_SHARE(1) /* shadow ($c00000 - $c03fff : vector) */
AM_RANGE(0x004000, 0x007fff) AM_READONLY AM_WRITENOP AM_SHARE(3) /* shadow ($fe4000 - $fe7fff : read only) */
AM_RANGE(0x000000, 0x003fff) AM_RAM AM_SHARE("share1") /* shadow ($c00000 - $c03fff : vector) */
AM_RANGE(0x004000, 0x007fff) AM_READONLY AM_WRITENOP AM_SHARE("share3") /* shadow ($fe4000 - $fe7fff : read only) */
AM_RANGE(0x400000, 0x400003) AM_NOP
AM_RANGE(0x800000, 0x800003) AM_READNOP AM_DEVWRITE8("ymsnd", ym2413_w, 0x00ff)
AM_RANGE(0x800004, 0x800005) AM_DEVREADWRITE8("oki", okim6295_r, okim6295_w, 0x00ff)
AM_RANGE(0xc00000, 0xc1ffff) AM_RAM AM_SHARE(1)
AM_RANGE(0xfe0000, 0xfe3fff) AM_RAM AM_SHARE(2)
AM_RANGE(0xfe4000, 0xffffff) AM_RAM AM_SHARE(3)
AM_RANGE(0xc00000, 0xc1ffff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xfe0000, 0xfe3fff) AM_RAM AM_SHARE("share2")
AM_RANGE(0xfe4000, 0xffffff) AM_RAM AM_SHARE("share3")
ADDRESS_MAP_END
/***************************************************************************

View File

@ -45,7 +45,7 @@ static WRITE8_HANDLER( ikki_coin_counters )
static ADDRESS_MAP_START( ikki_cpu1, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x9fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE(1)
AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_BASE_GENERIC(videoram) AM_SIZE_GENERIC(videoram)
AM_RANGE(0xe000, 0xe000) AM_READ(ikki_e000_r)
AM_RANGE(0xe001, 0xe001) AM_READ_PORT("DSW1")
@ -61,7 +61,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( ikki_cpu2, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_BASE_SIZE_GENERIC(spriteram)
AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE(1)
AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xd801, 0xd801) AM_DEVWRITE("sn1", sn76496_w)
AM_RANGE(0xd802, 0xd802) AM_DEVWRITE("sn2", sn76496_w)
ADDRESS_MAP_END

View File

@ -1050,20 +1050,20 @@ AM_RANGE(0x000c00, 0x007fff) AM_MIRROR(0x40000) AM_READWRITE(test2_r, test2_w)
AM_RANGE(0x1e4000, 0x1e4003) AM_WRITE(tms_reset_assert_w)
AM_RANGE(0x1ec000, 0x1ec003) AM_WRITE(tms_reset_clear_w)
AM_RANGE(0x200000, 0x200003) AM_READ_PORT("200000")
AM_RANGE(0x280000, 0x280fff) AM_RAM_WRITE(tms1_68k_ram_w) AM_SHARE(1)
AM_RANGE(0x300000, 0x300fff) AM_RAM_WRITE(tms2_68k_ram_w) AM_SHARE(2)
AM_RANGE(0x280000, 0x280fff) AM_RAM_WRITE(tms1_68k_ram_w) AM_SHARE("share1")
AM_RANGE(0x300000, 0x300fff) AM_RAM_WRITE(tms2_68k_ram_w) AM_SHARE("share2")
AM_RANGE(0x380000, 0x380003) AM_WRITENOP // AM_WRITE(watchdog_reset16_w)
AM_RANGE(0x600000, 0x607fff) AM_ROM AM_REGION("user1", 0) AM_BASE((UINT32 **)&main_rom)
ADDRESS_MAP_END
static ADDRESS_MAP_START( drivedge_tms1_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x000000, 0x001fff) AM_RAM AM_BASE(&tms1_boot)
AM_RANGE(0x008000, 0x0083ff) AM_MIRROR(0x400) AM_RAM_WRITE(tms1_trigger_w) AM_SHARE(1) AM_BASE(&tms1_ram)
AM_RANGE(0x008000, 0x0083ff) AM_MIRROR(0x400) AM_RAM_WRITE(tms1_trigger_w) AM_SHARE("share1") AM_BASE(&tms1_ram)
AM_RANGE(0x080000, 0x0bffff) AM_RAM
ADDRESS_MAP_END
static ADDRESS_MAP_START( drivedge_tms2_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x008000, 0x0083ff) AM_MIRROR(0x8400) AM_RAM_WRITE(tms2_trigger_w) AM_SHARE(2) AM_BASE(&tms2_ram)
AM_RANGE(0x008000, 0x0083ff) AM_MIRROR(0x8400) AM_RAM_WRITE(tms2_trigger_w) AM_SHARE("share2") AM_BASE(&tms2_ram)
AM_RANGE(0x080000, 0x08ffff) AM_RAM
ADDRESS_MAP_END

View File

@ -109,7 +109,7 @@ static ADDRESS_MAP_START( master_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0019, 0x0019) AM_WRITE(watchdog_reset_w)
AM_RANGE(0x001c, 0x001c) AM_WRITE(jackal_rambank_w)
AM_RANGE(0x0020, 0x005f) AM_READWRITE(jackal_zram_r, jackal_zram_w) // MAIN Z RAM,SUB Z RAM
AM_RANGE(0x0060, 0x1fff) AM_RAM AM_SHARE(1) // M COMMON RAM,S COMMON RAM
AM_RANGE(0x0060, 0x1fff) AM_RAM AM_SHARE("share1") // M COMMON RAM,S COMMON RAM
AM_RANGE(0x2000, 0x2fff) AM_READWRITE(jackal_voram_r, jackal_voram_w) // MAIN V O RAM,SUB V O RAM
AM_RANGE(0x3000, 0x3fff) AM_READWRITE(jackal_spriteram_r, jackal_spriteram_w) // MAIN V O RAM,SUB V O RAM
AM_RANGE(0x4000, 0xbfff) AM_ROMBANK("bank1")
@ -120,7 +120,7 @@ static ADDRESS_MAP_START( slave_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x2000, 0x2001) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w)
AM_RANGE(0x4000, 0x43ff) AM_RAM AM_BASE_GENERIC(paletteram) // self test only checks 0x4000-0x423f, 007327 should actually go up to 4fff
AM_RANGE(0x6000, 0x605f) AM_RAM // SOUND RAM (Self test check 0x6000-605f, 0x7c00-0x7fff)
AM_RANGE(0x6060, 0x7fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x6060, 0x7fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END

View File

@ -392,7 +392,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( jngolady_cpu0_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x9fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE(1)
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xe000, 0xe000) AM_READWRITE(master_com_r,master_com_w)
ADDRESS_MAP_END
@ -413,7 +413,7 @@ static ADDRESS_MAP_START( nsc_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x007f) AM_RAM //internal ram for irq etc.
AM_RANGE(0x8000, 0x8000) AM_WRITENOP //write-only,irq related?
AM_RANGE(0x9000, 0x9000) AM_READWRITE(slave_com_r,slave_com_w)
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE(1)
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xf000, 0xffff) AM_ROM
ADDRESS_MAP_END

View File

@ -505,7 +505,7 @@ static ADDRESS_MAP_START( jchan_main, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x360000, 0x360001) AM_WRITE(jchan_mcu_com3_w) // [ for mcu to return its status ?
AM_RANGE(0x370000, 0x370001) AM_READ(jchan_mcu_status_r)
AM_RANGE(0x400000, 0x403fff) AM_RAM AM_BASE(&mainsub_shared_ram) AM_SHARE(1)
AM_RANGE(0x400000, 0x403fff) AM_RAM AM_BASE(&mainsub_shared_ram) AM_SHARE("share1")
/* 1st sprite layer */
AM_RANGE(0x500000, 0x503fff) AM_RAM_WRITE(jchan_suprnova_sprite32_1_w) AM_BASE(&jchan_spriteram_1)
@ -523,7 +523,7 @@ static ADDRESS_MAP_START( jchan_sub, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM // Work RAM - grid tested, cleared ($612-$6dc)
AM_RANGE(0x400000, 0x403fff) AM_RAM AM_BASE(&mainsub_shared_ram) AM_SHARE(1)
AM_RANGE(0x400000, 0x403fff) AM_RAM AM_BASE(&mainsub_shared_ram) AM_SHARE("share1")
/* VIEW2 Tilemap - [D] grid tested, cleared ($1d84), also cleared at startup ($810-$826) */
AM_RANGE(0x500000, 0x500fff) AM_RAM_WRITE(kaneko16_vram_1_w) AM_BASE(&kaneko16_vram_1) // Layers 0

View File

@ -339,7 +339,7 @@ static WRITE8_HANDLER( led_array_w )
static ADDRESS_MAP_START( master_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x3000, 0x33ff) AM_RAM AM_MIRROR(0xc00) AM_SHARE(1)
AM_RANGE(0x3000, 0x33ff) AM_RAM AM_MIRROR(0xc00) AM_SHARE("share1")
AM_RANGE(0x4000, 0x43ff) AM_RAM_WRITE(sc0_vram_w) AM_BASE(&kingdrby_vram)
AM_RANGE(0x5000, 0x53ff) AM_RAM_WRITE(sc0_attr_w) AM_BASE(&kingdrby_attr)
ADDRESS_MAP_END
@ -355,7 +355,7 @@ static ADDRESS_MAP_START( slave_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x4000, 0x43ff) AM_RAM AM_BASE_SIZE_GENERIC(nvram) //backup ram
AM_RANGE(0x5000, 0x5003) AM_DEVREADWRITE("ppi8255_0", ppi8255_r, ppi8255_w) /* I/O Ports */
AM_RANGE(0x6000, 0x6003) AM_DEVREADWRITE("ppi8255_1", ppi8255_r, ppi8255_w) /* I/O Ports */
AM_RANGE(0x7000, 0x73ff) AM_RAM AM_SHARE(1)
AM_RANGE(0x7000, 0x73ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x7400, 0x74ff) AM_RAM AM_BASE_GENERIC(spriteram)
AM_RANGE(0x7600, 0x7600) AM_DEVWRITE("crtc", mc6845_address_w)
AM_RANGE(0x7601, 0x7601) AM_DEVREADWRITE("crtc", mc6845_register_r, mc6845_register_w)

View File

@ -68,8 +68,8 @@ static WRITE8_HANDLER( sound_command_w )
static ADDRESS_MAP_START( kingobox_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc3ff) AM_RAM /* work ram */
AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE(2) /* shared with sprite cpu */
AM_RANGE(0xe800, 0xefff) AM_RAM AM_SHARE(1) /* shared with video cpu */
AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("share2") /* shared with sprite cpu */
AM_RANGE(0xe800, 0xefff) AM_RAM AM_SHARE("share1") /* shared with video cpu */
AM_RANGE(0xf000, 0xf7ff) AM_RAM /* ???? */
AM_RANGE(0xf800, 0xf800) AM_WRITE(kingofb_f800_w) /* NMI enable, palette bank */
AM_RANGE(0xf801, 0xf801) AM_WRITENOP /* ???? */
@ -88,7 +88,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( kingobox_video_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM /* work ram */
AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_SHARE(1) /* shared with main */
AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_SHARE("share1") /* shared with main */
AM_RANGE(0xc000, 0xc0ff) AM_RAM_WRITE(kingofb_videoram_w) AM_BASE_GENERIC(videoram) /* background vram */
AM_RANGE(0xc400, 0xc4ff) AM_RAM_WRITE(kingofb_colorram_w) AM_BASE_GENERIC(colorram) /* background colorram */
AM_RANGE(0xc800, 0xcbff) AM_RAM_WRITE(kingofb_videoram2_w) AM_BASE(&kingofb_videoram2) /* foreground vram */
@ -98,7 +98,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( kingobox_sprite_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM /* work ram */
AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_SHARE(2) /* shared with main */
AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_SHARE("share2") /* shared with main */
AM_RANGE(0xc000, 0xc3ff) AM_RAM AM_BASE_SIZE_GENERIC(spriteram) /* sprite ram */
AM_RANGE(0xc400, 0xc43f) AM_RAM /* something related to scroll? */
ADDRESS_MAP_END
@ -120,8 +120,8 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( ringking_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc3ff) AM_RAM /* work ram */
AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE(2) /* shared with sprite cpu */
AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_SHARE(1) /* shared with video cpu */
AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE("share2") /* shared with sprite cpu */
AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_SHARE("share1") /* shared with video cpu */
AM_RANGE(0xd800, 0xd800) AM_WRITE(kingofb_f800_w)
AM_RANGE(0xd801, 0xd801) AM_WRITE(sprite_interrupt_w)
AM_RANGE(0xd802, 0xd802) AM_WRITE(video_interrupt_w)
@ -139,7 +139,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( ringking_video_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM /* work ram */
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE(1) /* shared with main */
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("share1") /* shared with main */
AM_RANGE(0xa800, 0xa8ff) AM_RAM_WRITE(kingofb_videoram_w) AM_BASE_GENERIC(videoram) /* background vram */
AM_RANGE(0xac00, 0xacff) AM_RAM_WRITE(kingofb_colorram_w) AM_BASE_GENERIC(colorram) /* background colorram */
AM_RANGE(0xa000, 0xa3ff) AM_RAM_WRITE(kingofb_videoram2_w) AM_BASE(&kingofb_videoram2) /* foreground vram */
@ -149,7 +149,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( ringking_sprite_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM /* work ram */
AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE(2) /* shared with main */
AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE("share2") /* shared with main */
AM_RANGE(0xa000, 0xa3ff) AM_RAM AM_BASE_SIZE_GENERIC(spriteram) /* sprite ram */
AM_RANGE(0xa400, 0xa43f) AM_RAM /* something related to scroll? */
ADDRESS_MAP_END

View File

@ -147,7 +147,7 @@ static READ32_HANDLER( pcmram_r )
/* Video */
static ADDRESS_MAP_START( konamigq_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE(1) AM_BASE(&g_p_n_psxram) AM_SIZE(&g_n_psxramsize) /* ram */
AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("share1") AM_BASE(&g_p_n_psxram) AM_SIZE(&g_n_psxramsize) /* ram */
AM_RANGE(0x1f000000, 0x1f00001f) AM_READWRITE(am53cf96_r, am53cf96_w)
AM_RANGE(0x1f100000, 0x1f10000f) AM_WRITE(soundr3k_w)
AM_RANGE(0x1f100010, 0x1f10001f) AM_READ(soundr3k_r)
@ -182,11 +182,11 @@ static ADDRESS_MAP_START( konamigq_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x1f801c00, 0x1f801dff) AM_NOP
AM_RANGE(0x1f802020, 0x1f802033) AM_RAM /* ?? */
AM_RANGE(0x1f802040, 0x1f802043) AM_WRITENOP
AM_RANGE(0x1fc00000, 0x1fc7ffff) AM_ROM AM_SHARE(2) AM_REGION("user1", 0) /* bios */
AM_RANGE(0x80000000, 0x803fffff) AM_RAM AM_SHARE(1) /* ram mirror */
AM_RANGE(0x9fc00000, 0x9fc7ffff) AM_ROM AM_SHARE(2) /* bios mirror */
AM_RANGE(0xa0000000, 0xa03fffff) AM_RAM AM_SHARE(1) /* ram mirror */
AM_RANGE(0xbfc00000, 0xbfc7ffff) AM_ROM AM_SHARE(2) /* bios mirror */
AM_RANGE(0x1fc00000, 0x1fc7ffff) AM_ROM AM_SHARE("share2") AM_REGION("user1", 0) /* bios */
AM_RANGE(0x80000000, 0x803fffff) AM_RAM AM_SHARE("share1") /* ram mirror */
AM_RANGE(0x9fc00000, 0x9fc7ffff) AM_ROM AM_SHARE("share2") /* bios mirror */
AM_RANGE(0xa0000000, 0xa03fffff) AM_RAM AM_SHARE("share1") /* ram mirror */
AM_RANGE(0xbfc00000, 0xbfc7ffff) AM_ROM AM_SHARE("share2") /* bios mirror */
AM_RANGE(0xfffe0130, 0xfffe0133) AM_WRITENOP
ADDRESS_MAP_END

View File

@ -172,7 +172,7 @@ static READ32_HANDLER( mb89371_r )
}
static ADDRESS_MAP_START( konamigv_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_SHARE(1) AM_BASE(&g_p_n_psxram) AM_SIZE(&g_n_psxramsize) /* ram */
AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_SHARE("share1") AM_BASE(&g_p_n_psxram) AM_SIZE(&g_n_psxramsize) /* ram */
AM_RANGE(0x1f000000, 0x1f00001f) AM_READWRITE(am53cf96_r, am53cf96_w)
AM_RANGE(0x1f100000, 0x1f100003) AM_READ_PORT("P1")
AM_RANGE(0x1f100004, 0x1f100007) AM_READ_PORT("P2")
@ -196,11 +196,11 @@ static ADDRESS_MAP_START( konamigv_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x1f801c00, 0x1f801dff) AM_DEVREADWRITE("spu", psx_spu_r, psx_spu_w)
AM_RANGE(0x1f802020, 0x1f802033) AM_RAM /* ?? */
AM_RANGE(0x1f802040, 0x1f802043) AM_WRITENOP
AM_RANGE(0x1fc00000, 0x1fc7ffff) AM_ROM AM_SHARE(2) AM_REGION("user1", 0) /* bios */
AM_RANGE(0x80000000, 0x801fffff) AM_RAM AM_SHARE(1) /* ram mirror */
AM_RANGE(0x9fc00000, 0x9fc7ffff) AM_ROM AM_SHARE(2) /* bios mirror */
AM_RANGE(0xa0000000, 0xa01fffff) AM_RAM AM_SHARE(1) /* ram mirror */
AM_RANGE(0xbfc00000, 0xbfc7ffff) AM_ROM AM_SHARE(2) /* bios mirror */
AM_RANGE(0x1fc00000, 0x1fc7ffff) AM_ROM AM_SHARE("share2") AM_REGION("user1", 0) /* bios */
AM_RANGE(0x80000000, 0x801fffff) AM_RAM AM_SHARE("share1") /* ram mirror */
AM_RANGE(0x9fc00000, 0x9fc7ffff) AM_ROM AM_SHARE("share2") /* bios mirror */
AM_RANGE(0xa0000000, 0xa01fffff) AM_RAM AM_SHARE("share1") /* ram mirror */
AM_RANGE(0xbfc00000, 0xbfc7ffff) AM_ROM AM_SHARE("share2") /* bios mirror */
AM_RANGE(0xfffe0130, 0xfffe0133) AM_WRITENOP
ADDRESS_MAP_END

View File

@ -1101,9 +1101,9 @@ static ADDRESS_MAP_START( m2_main, ADDRESS_SPACE_PROGRAM, 64 )
AM_RANGE(0x04000280, 0x04000287) AM_READ(unk4000280_r)
AM_RANGE(0x10000000, 0x10000007) AM_READ(cpu_r)
AM_RANGE(0x10000008, 0x10001007) AM_NOP // ???
AM_RANGE(0x20000000, 0x201fffff) AM_ROM AM_SHARE(2)
AM_RANGE(0x40000000, 0x407fffff) AM_RAM AM_SHARE(3) AM_BASE(&main_ram)
AM_RANGE(0xfff00000, 0xffffffff) AM_ROM AM_REGION("boot", 0) AM_SHARE(2)
AM_RANGE(0x20000000, 0x201fffff) AM_ROM AM_SHARE("share2")
AM_RANGE(0x40000000, 0x407fffff) AM_RAM AM_SHARE("share3") AM_BASE(&main_ram)
AM_RANGE(0xfff00000, 0xffffffff) AM_ROM AM_REGION("boot", 0) AM_SHARE("share2")
ADDRESS_MAP_END
static INPUT_PORTS_START( m2 )

View File

@ -1365,7 +1365,7 @@ static READ32_HANDLER( k573_counter_r )
}
static ADDRESS_MAP_START( konami573_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE(1) AM_BASE(&g_p_n_psxram) AM_SIZE(&g_n_psxramsize) /* ram */
AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("share1") AM_BASE(&g_p_n_psxram) AM_SIZE(&g_n_psxramsize) /* ram */
AM_RANGE(0x1f000000, 0x1f3fffff) AM_READWRITE( flash_r, flash_w )
AM_RANGE(0x1f400000, 0x1f400003) AM_READ_PORT( "IN0" ) AM_WRITE_PORT( "OUT0" )
AM_RANGE(0x1f400004, 0x1f400007) AM_READ( jamma_r )
@ -1394,11 +1394,11 @@ static ADDRESS_MAP_START( konami573_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x1f801c00, 0x1f801dff) AM_DEVREADWRITE("spu", psx_spu_r, psx_spu_w)
AM_RANGE(0x1f802020, 0x1f802033) AM_RAM /* ?? */
AM_RANGE(0x1f802040, 0x1f802043) AM_WRITENOP
AM_RANGE(0x1fc00000, 0x1fc7ffff) AM_ROM AM_SHARE(2) AM_REGION("user1", 0) /* bios */
AM_RANGE(0x80000000, 0x803fffff) AM_RAM AM_SHARE(1) /* ram mirror */
AM_RANGE(0x9fc00000, 0x9fc7ffff) AM_ROM AM_SHARE(2) /* bios mirror */
AM_RANGE(0xa0000000, 0xa03fffff) AM_RAM AM_SHARE(1) /* ram mirror */
AM_RANGE(0xbfc00000, 0xbfc7ffff) AM_ROM AM_SHARE(2) /* bios mirror */
AM_RANGE(0x1fc00000, 0x1fc7ffff) AM_ROM AM_SHARE("share2") AM_REGION("user1", 0) /* bios */
AM_RANGE(0x80000000, 0x803fffff) AM_RAM AM_SHARE("share1") /* ram mirror */
AM_RANGE(0x9fc00000, 0x9fc7ffff) AM_ROM AM_SHARE("share2") /* bios mirror */
AM_RANGE(0xa0000000, 0xa03fffff) AM_RAM AM_SHARE("share1") /* ram mirror */
AM_RANGE(0xbfc00000, 0xbfc7ffff) AM_ROM AM_SHARE("share2") /* bios mirror */
AM_RANGE(0xfffe0130, 0xfffe0133) AM_WRITENOP
ADDRESS_MAP_END

View File

@ -69,7 +69,7 @@ static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xa800, 0xa800) AM_WRITE(kyugo_scroll_x_lo_w)
AM_RANGE(0xb000, 0xb000) AM_WRITE(kyugo_gfxctrl_w)
AM_RANGE(0xb800, 0xb800) AM_WRITE(kyugo_scroll_y_w)
AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_SHARE(1) AM_BASE(&shared_ram)
AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_SHARE("share1") AM_BASE(&shared_ram)
ADDRESS_MAP_END
@ -104,7 +104,7 @@ Main_PortMap( srdmissn, 0x08 )
#define Sub_MemMap( name, rom_end, shared, in0, in1, in2 ) \
static ADDRESS_MAP_START( name##_sub_map, ADDRESS_SPACE_PROGRAM, 8 ) \
AM_RANGE(0x0000, rom_end) AM_ROM \
AM_RANGE(shared, shared+0x7ff) AM_RAM AM_SHARE(1) \
AM_RANGE(shared, shared+0x7ff) AM_RAM AM_SHARE("share1") \
AM_RANGE(in0, in0) AM_READ_PORT("SYSTEM") \
AM_RANGE(in1, in1) AM_READ_PORT("P1") \
AM_RANGE(in2, in2) AM_READ_PORT("P2") \

View File

@ -83,7 +83,7 @@ static ADDRESS_MAP_START( lasso_main_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0400, 0x07ff) AM_RAM_WRITE(lasso_videoram_w) AM_BASE(&lasso_videoram)
AM_RANGE(0x0800, 0x0bff) AM_RAM_WRITE(lasso_colorram_w) AM_BASE(&lasso_colorram)
AM_RANGE(0x0c00, 0x0c7f) AM_RAM AM_BASE(&lasso_spriteram) AM_SIZE(&lasso_spriteram_size)
AM_RANGE(0x1000, 0x17ff) AM_RAM AM_SHARE(1)
AM_RANGE(0x1000, 0x17ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x1800, 0x1800) AM_WRITE(sound_command_w)
AM_RANGE(0x1801, 0x1801) AM_WRITEONLY AM_BASE(&lasso_back_color)
AM_RANGE(0x1802, 0x1802) AM_WRITE(lasso_video_control_w)
@ -107,7 +107,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( lasso_coprocessor_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE(1)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x2000, 0x3fff) AM_RAM AM_BASE(&lasso_bitmap_ram)
AM_RANGE(0x8000, 0x8fff) AM_MIRROR(0x7000) AM_ROM
ADDRESS_MAP_END

View File

@ -78,7 +78,7 @@ static ADDRESS_MAP_START( alpha1v_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x6fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM_WRITE(m52_videoram_w) AM_BASE_MEMBER(irem_z80_state, videoram)
AM_RANGE(0x8400, 0x87ff) AM_RAM_WRITE(m52_colorram_w) AM_BASE_MEMBER(irem_z80_state, colorram)
AM_RANGE(0xc800, 0xc9ff) AM_WRITEONLY AM_BASE_SIZE_MEMBER(irem_z80_state, spriteram, spriteram_size) AM_SHARE(1) // bigger or mirrored?
AM_RANGE(0xc800, 0xc9ff) AM_WRITEONLY AM_BASE_SIZE_MEMBER(irem_z80_state, spriteram, spriteram_size) AM_SHARE("share1") // bigger or mirrored?
AM_RANGE(0xd000, 0xd000) AM_READ_PORT("IN0") AM_WRITE(irem_sound_cmd_w)
AM_RANGE(0xd001, 0xd001) AM_READ_PORT("IN1") AM_WRITE(alpha1v_flipscreen_w)
AM_RANGE(0xd002, 0xd002) AM_READ_PORT("IN2")

View File

@ -868,7 +868,7 @@ static ADDRESS_MAP_START( superpac_cpu1_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x07ff) AM_RAM_WRITE(superpac_videoram_w) AM_BASE_MEMBER(mappy_state,videoram) /* video RAM */
AM_RANGE(0x0800, 0x1fff) AM_RAM AM_BASE_MEMBER(mappy_state,spriteram) /* work RAM with embedded sprite RAM */
AM_RANGE(0x2000, 0x2000) AM_READWRITE(superpac_flipscreen_r, superpac_flipscreen_w)
AM_RANGE(0x4000, 0x43ff) AM_RAM_DEVWRITE("namco", mappy_snd_sharedram_w) AM_SHARE(1) /* shared RAM with the sound CPU */
AM_RANGE(0x4000, 0x43ff) AM_RAM_DEVWRITE("namco", mappy_snd_sharedram_w) AM_SHARE("share1") /* shared RAM with the sound CPU */
AM_RANGE(0x4800, 0x4bff) AM_READWRITE(namcoio_r, namcoio_w) /* custom I/O chips interface */
AM_RANGE(0x5000, 0x500f) AM_WRITE(superpac_latch_w) /* various control bits */
AM_RANGE(0x8000, 0x8000) AM_WRITE(watchdog_reset_w)
@ -876,9 +876,9 @@ static ADDRESS_MAP_START( superpac_cpu1_map, ADDRESS_SPACE_PROGRAM, 8 )
ADDRESS_MAP_END
static ADDRESS_MAP_START( phozon_cpu1_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x07ff) AM_RAM_WRITE(superpac_videoram_w) AM_SHARE(2) AM_BASE_MEMBER(mappy_state,videoram) /* video RAM */
AM_RANGE(0x0800, 0x1fff) AM_RAM AM_BASE_MEMBER(mappy_state,spriteram) AM_SHARE(3) /* shared RAM with CPU #2/sprite RAM*/
AM_RANGE(0x4000, 0x43ff) AM_RAM_DEVWRITE("namco", mappy_snd_sharedram_w) AM_SHARE(1) /* shared RAM with the sound CPU */
AM_RANGE(0x0000, 0x07ff) AM_RAM_WRITE(superpac_videoram_w) AM_SHARE("share2") AM_BASE_MEMBER(mappy_state,videoram) /* video RAM */
AM_RANGE(0x0800, 0x1fff) AM_RAM AM_BASE_MEMBER(mappy_state,spriteram) AM_SHARE("share3") /* shared RAM with CPU #2/sprite RAM*/
AM_RANGE(0x4000, 0x43ff) AM_RAM_DEVWRITE("namco", mappy_snd_sharedram_w) AM_SHARE("share1") /* shared RAM with the sound CPU */
AM_RANGE(0x4800, 0x4bff) AM_READWRITE(namcoio_r, namcoio_w) /* custom I/O chips interface */
AM_RANGE(0x5000, 0x500f) AM_WRITE(phozon_latch_w) /* various control bits */
AM_RANGE(0x7000, 0x7000) AM_WRITE(watchdog_reset_w) /* watchdog reset */
@ -889,7 +889,7 @@ static ADDRESS_MAP_START( mappy_cpu1_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x0fff) AM_RAM_WRITE(mappy_videoram_w) AM_BASE_MEMBER(mappy_state,videoram) /* video RAM */
AM_RANGE(0x1000, 0x27ff) AM_RAM AM_BASE_MEMBER(mappy_state,spriteram) /* work RAM with embedded sprite RAM */
AM_RANGE(0x3800, 0x3fff) AM_WRITE(mappy_scroll_w) /* scroll */
AM_RANGE(0x4000, 0x43ff) AM_RAM_DEVWRITE("namco", mappy_snd_sharedram_w) AM_SHARE(1) /* shared RAM with the sound CPU */
AM_RANGE(0x4000, 0x43ff) AM_RAM_DEVWRITE("namco", mappy_snd_sharedram_w) AM_SHARE("share1") /* shared RAM with the sound CPU */
AM_RANGE(0x4800, 0x4bff) AM_READWRITE(namcoio_r, namcoio_w) /* custom I/O chips interface */
AM_RANGE(0x5000, 0x500f) AM_WRITE(mappy_latch_w) /* various control bits */
AM_RANGE(0x8000, 0x8000) AM_WRITE(watchdog_reset_w) /* watchdog reset */
@ -898,18 +898,18 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( superpac_cpu2_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x03ff) AM_RAM_DEVWRITE("namco", mappy_snd_sharedram_w) AM_SHARE(1) AM_BASE(&namco_soundregs) /* shared RAM with the main CPU (also sound registers) */
AM_RANGE(0x0000, 0x03ff) AM_RAM_DEVWRITE("namco", mappy_snd_sharedram_w) AM_SHARE("share1") AM_BASE(&namco_soundregs) /* shared RAM with the main CPU (also sound registers) */
AM_RANGE(0x2000, 0x200f) AM_WRITE(superpac_latch_w) /* various control bits */
AM_RANGE(0xe000, 0xffff) AM_ROM
ADDRESS_MAP_END
static ADDRESS_MAP_START( phozon_cpu2_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x03ff) AM_RAM_DEVWRITE("namco", mappy_snd_sharedram_w) AM_SHARE(1) AM_BASE(&namco_soundregs) /* shared RAM with the main CPU + sound registers */
AM_RANGE(0x0000, 0x03ff) AM_RAM_DEVWRITE("namco", mappy_snd_sharedram_w) AM_SHARE("share1") AM_BASE(&namco_soundregs) /* shared RAM with the main CPU + sound registers */
AM_RANGE(0xe000, 0xffff) AM_ROM /* ROM */
ADDRESS_MAP_END
static ADDRESS_MAP_START( mappy_cpu2_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x03ff) AM_RAM_DEVWRITE("namco", mappy_snd_sharedram_w) AM_SHARE(1) AM_BASE(&namco_soundregs) /* shared RAM with the main CPU (also sound registers) */
AM_RANGE(0x0000, 0x03ff) AM_RAM_DEVWRITE("namco", mappy_snd_sharedram_w) AM_SHARE("share1") AM_BASE(&namco_soundregs) /* shared RAM with the main CPU (also sound registers) */
AM_RANGE(0x2000, 0x200f) AM_WRITE(mappy_latch_w) /* various control bits */
AM_RANGE(0xe000, 0xffff) AM_ROM /* ROM code */
ADDRESS_MAP_END
@ -917,9 +917,9 @@ ADDRESS_MAP_END
/* extra CPU only present in Phozon */
static ADDRESS_MAP_START( phozon_cpu3_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x07ff) AM_RAM_WRITE(superpac_videoram_w) AM_SHARE(2) /* video RAM */
AM_RANGE(0x0800, 0x1fff) AM_RAM AM_SHARE(3) /* shared RAM with CPU #2/sprite RAM*/
AM_RANGE(0x4000, 0x43ff) AM_RAM_DEVWRITE("namco", mappy_snd_sharedram_w) AM_SHARE(1) /* shared RAM with CPU #2 */
AM_RANGE(0x0000, 0x07ff) AM_RAM_WRITE(superpac_videoram_w) AM_SHARE("share2") /* video RAM */
AM_RANGE(0x0800, 0x1fff) AM_RAM AM_SHARE("share3") /* shared RAM with CPU #2/sprite RAM*/
AM_RANGE(0x4000, 0x43ff) AM_RAM_DEVWRITE("namco", mappy_snd_sharedram_w) AM_SHARE("share1") /* shared RAM with CPU #2 */
AM_RANGE(0xa000, 0xa7ff) AM_RAM /* RAM */
AM_RANGE(0xe000, 0xffff) AM_ROM /* ROM */
ADDRESS_MAP_END

View File

@ -35,7 +35,7 @@ static ADDRESS_MAP_START( markham_master_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xc800, 0xcfff) AM_RAM AM_BASE_SIZE_GENERIC(spriteram)
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(markham_videoram_w) AM_BASE_GENERIC(videoram)
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE(1)
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xe000, 0xe000) AM_READ_PORT("DSW2")
AM_RANGE(0xe001, 0xe001) AM_READ_PORT("DSW1")
@ -55,7 +55,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( markham_slave_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE(1)
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xc000, 0xc000) AM_DEVWRITE("sn1", sn76496_w)
AM_RANGE(0xc001, 0xc001) AM_DEVWRITE("sn2", sn76496_w)

View File

@ -938,7 +938,7 @@ static WRITE8_HANDLER( sound_nmi_clear_w )
static ADDRESS_MAP_START( mazerbla_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE(1)
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xd800, 0xd800) AM_READ(cfb_zpu_int_req_clr)
AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_BASE_GENERIC(videoram) AM_SIZE_GENERIC(videoram)
AM_RANGE(0xe800, 0xefff) AM_RAM
@ -968,7 +968,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( mazerbla_cpu3_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x37ff) AM_ROM
AM_RANGE(0x3800, 0x3fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x3800, 0x3fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x4000, 0x5fff) AM_ROMBANK("bank1") /* GFX roms */
AM_RANGE(0x4000, 0x4003) AM_WRITE(VCU_video_reg_w)
AM_RANGE(0x6000, 0x67ff) AM_RAM AM_BASE(&cfb_ram) /* Color Frame Buffer PCB, a.k.a. RAM for VCU commands and parameters */

View File

@ -3326,7 +3326,7 @@ static ADDRESS_MAP_START( sh2_main_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x04000000, 0x0401ffff) AM_READWRITE(_32x_sh2_framebuffer_dram_r, _32x_sh2_framebuffer_dram_w)
AM_RANGE(0x04020000, 0x0403ffff) AM_READWRITE(_32x_sh2_framebuffer_overwrite_dram_r, _32x_sh2_framebuffer_overwrite_dram_w)
AM_RANGE(0x06000000, 0x0603ffff) AM_RAM AM_SHARE(10)
AM_RANGE(0x06000000, 0x0603ffff) AM_RAM AM_SHARE("share10")
AM_RANGE(0x02000000, 0x023fffff) AM_ROM AM_REGION("gamecart_sh2", 0)
AM_RANGE(0xc0000000, 0xc0000fff) AM_RAM
@ -3350,7 +3350,7 @@ static ADDRESS_MAP_START( sh2_slave_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x04000000, 0x0401ffff) AM_READWRITE(_32x_sh2_framebuffer_dram_r, _32x_sh2_framebuffer_dram_w)
AM_RANGE(0x04020000, 0x0403ffff) AM_READWRITE(_32x_sh2_framebuffer_overwrite_dram_r, _32x_sh2_framebuffer_overwrite_dram_w)
AM_RANGE(0x06000000, 0x0603ffff) AM_RAM AM_SHARE(10)
AM_RANGE(0x06000000, 0x0603ffff) AM_RAM AM_SHARE("share10")
AM_RANGE(0x02000000, 0x023fffff) AM_ROM AM_REGION("gamecart_sh2", 0)
AM_RANGE(0xc0000000, 0xc0000fff) AM_RAM

View File

@ -103,7 +103,7 @@ static ADDRESS_MAP_START( megazone_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x2800, 0x2bff) AM_RAM AM_BASE_GENERIC(colorram)
AM_RANGE(0x2c00, 0x2fff) AM_RAM AM_BASE(&megazone_colorram2)
AM_RANGE(0x3000, 0x33ff) AM_RAM AM_BASE_SIZE_GENERIC(spriteram)
AM_RANGE(0x3800, 0x3fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x3800, 0x3fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x4000, 0xffff) AM_ROM /* 4000->5FFF is a debug rom */
ADDRESS_MAP_END
@ -119,7 +119,7 @@ static ADDRESS_MAP_START( megazone_sound_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xa000, 0xa000) AM_WRITENOP /* INTMAIN - Interrupts main CPU (unused) */
AM_RANGE(0xc000, 0xc000) AM_WRITENOP /* INT (Actually is NMI) enable/disable (unused)*/
AM_RANGE(0xc001, 0xc001) AM_WRITE(watchdog_reset_w)
AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE(1)
AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
static ADDRESS_MAP_START( megazone_sound_io_map, ADDRESS_SPACE_IO, 8 )

View File

@ -69,7 +69,7 @@ static WRITE8_HANDLER( metlclsh_ack_nmi )
static ADDRESS_MAP_START( metlclsh_master_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x8000, 0x9fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xa000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("IN0")
AM_RANGE(0xc001, 0xc001) AM_READ_PORT("IN1")
@ -116,7 +116,7 @@ static WRITE8_HANDLER( metlclsh_flipscreen_w )
static ADDRESS_MAP_START( metlclsh_slave_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x8000, 0x9fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("IN0") AM_WRITE(metlclsh_gfxbank_w) // bg tiles bank
AM_RANGE(0xc001, 0xc001) AM_READ_PORT("IN1")
AM_RANGE(0xc002, 0xc002) AM_READ_PORT("IN2")

View File

@ -70,7 +70,7 @@ static READ8_DEVICE_HANDLER( kiki_ym2203_r )
static ADDRESS_MAP_START( mexico86_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") /* banked roms */
AM_RANGE(0xc000, 0xe7ff) AM_RAM AM_SHARE(1) /* shared with sound cpu */
AM_RANGE(0xc000, 0xe7ff) AM_RAM AM_SHARE("share1") /* shared with sound cpu */
AM_RANGE(0xd500, 0xd7ff) AM_RAM AM_BASE(&mexico86_objectram) AM_SIZE(&mexico86_objectram_size)
AM_RANGE(0xe800, 0xe8ff) AM_RAM AM_BASE(&mexico86_protection_ram) /* shared with mcu */
AM_RANGE(0xe900, 0xefff) AM_RAM
@ -79,12 +79,12 @@ static ADDRESS_MAP_START( mexico86_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xf008, 0xf008) AM_WRITE(mexico86_f008_w) /* cpu reset lines + other unknown stuff */
AM_RANGE(0xf010, 0xf010) AM_READ_PORT("IN3")
AM_RANGE(0xf018, 0xf018) AM_WRITENOP /* watchdog? */
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE(2) /* communication ram - to connect 4 players's subboard */
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("share2") /* communication ram - to connect 4 players's subboard */
ADDRESS_MAP_END
static ADDRESS_MAP_START( mexico86_sound_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xa7ff) AM_RAM AM_SHARE(1)
AM_RANGE(0x8000, 0xa7ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xa800, 0xbfff) AM_RAM
AM_RANGE(0xc000, 0xc001) AM_DEVREADWRITE("ymsnd", kiki_ym2203_r,ym2203_w)
ADDRESS_MAP_END
@ -113,7 +113,7 @@ static WRITE8_HANDLER( mexico86_sub_output_w )
static ADDRESS_MAP_START( mexico86_sub_cpu_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM /* sub cpu ram */
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE(2) /* shared with main */
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("share2") /* shared with main */
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("IN4")
AM_RANGE(0xc001, 0xc001) AM_READ_PORT("IN5")
AM_RANGE(0xc002, 0xc002) AM_READ_PORT("IN6")

View File

@ -148,7 +148,7 @@ static ADDRESS_MAP_START( master_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xdcff) AM_RAM AM_BASE_SIZE_MEMBER(bublbobl_state, videoram, videoram_size)
AM_RANGE(0xdd00, 0xdfff) AM_RAM AM_BASE_SIZE_MEMBER(bublbobl_state, objectram, objectram_size)
AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE(1)
AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xf800, 0xf9ff) AM_RAM_WRITE(paletteram_RRRRGGGGBBBBxxxx_be_w) AM_BASE_GENERIC(paletteram)
AM_RANGE(0xfa00, 0xfa00) AM_WRITE(bublbobl_sound_command_w)
AM_RANGE(0xfa03, 0xfa03) AM_WRITENOP // sound cpu reset
@ -176,7 +176,7 @@ static ADDRESS_MAP_START( slave_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xd000, 0xd000) AM_WRITE(missb2_bg_bank_w)
AM_RANGE(0xd002, 0xd002) AM_WRITENOP
AM_RANGE(0xd003, 0xd003) AM_RAM AM_BASE_MEMBER(bublbobl_state, bgvram)
AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE(1)
AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
// Looks like the original bublbobl code modified to support the OKI M6295.

View File

@ -434,8 +434,8 @@ static ADDRESS_MAP_START( mlanding_mem, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x100000, 0x17ffff) AM_RAM AM_BASE(&g_ram)// 512kB G RAM - enough here for double buffered 512x400x8 frame
AM_RANGE(0x180000, 0x1bffff) AM_READWRITE(ml_tileram_r, ml_tileram_w) AM_BASE(&ml_tileram)
AM_RANGE(0x1c0000, 0x1c3fff) AM_RAM AM_SHARE(2) AM_BASE(&dma_ram)
AM_RANGE(0x1c4000, 0x1cffff) AM_RAM AM_SHARE(1)
AM_RANGE(0x1c0000, 0x1c3fff) AM_RAM AM_SHARE("share2") AM_BASE(&dma_ram)
AM_RANGE(0x1c4000, 0x1cffff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x1d0000, 0x1d0001) AM_WRITE(ml_sub_reset_w)
AM_RANGE(0x1d0002, 0x1d0003) AM_WRITE(ml_nmi_to_sound_w) //sound reset ??
@ -469,9 +469,9 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( mlanding_sub_mem, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x040000, 0x043fff) AM_RAM
AM_RANGE(0x050000, 0x0503ff) AM_RAM AM_SHARE(3)
AM_RANGE(0x1c0000, 0x1c3fff) AM_RAM AM_SHARE(2)
AM_RANGE(0x1c4000, 0x1cffff) AM_RAM AM_SHARE(1)
AM_RANGE(0x050000, 0x0503ff) AM_RAM AM_SHARE("share3")
AM_RANGE(0x1c0000, 0x1c3fff) AM_RAM AM_SHARE("share2")
AM_RANGE(0x1c4000, 0x1cffff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x200000, 0x203fff) AM_RAM AM_BASE(&ml_dotram)
ADDRESS_MAP_END
@ -536,7 +536,7 @@ static ADDRESS_MAP_START( mlanding_z80_sub_mem, ADDRESS_SPACE_PROGRAM, 8 )
ADDRESS_MAP_END
static ADDRESS_MAP_START( DSP_map_program, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE(3)
AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("share3")
ADDRESS_MAP_END
static ADDRESS_MAP_START( DSP_map_data, ADDRESS_SPACE_DATA, 16 )

View File

@ -1254,8 +1254,8 @@ static ADDRESS_MAP_START( model2_base_mem, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x10000000, 0x101fffff) AM_WRITE(mode_w)
AM_RANGE(0x11600000, 0x1167ffff) AM_RAM AM_SHARE(1) // framebuffer (last bronx)
AM_RANGE(0x11680000, 0x116fffff) AM_RAM AM_SHARE(1) // FB mirror
AM_RANGE(0x11600000, 0x1167ffff) AM_RAM AM_SHARE("share1") // framebuffer (last bronx)
AM_RANGE(0x11680000, 0x116fffff) AM_RAM AM_SHARE("share1") // FB mirror
ADDRESS_MAP_END
/* original Model 2 overrides */

View File

@ -268,7 +268,7 @@ Utyuu Daisakusen Chocovader Contactee CVC1 Ver.A KC022A
#include "includes/psx.h"
static ADDRESS_MAP_START( namcos10_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE(1) AM_BASE(&g_p_n_psxram) AM_SIZE(&g_n_psxramsize) /* ram */
AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("share1") AM_BASE(&g_p_n_psxram) AM_SIZE(&g_n_psxramsize) /* ram */
AM_RANGE(0x1f800000, 0x1f8003ff) AM_RAM /* scratchpad */
AM_RANGE(0x1f801000, 0x1f801007) AM_WRITENOP
AM_RANGE(0x1f801008, 0x1f80100b) AM_RAM /* ?? */
@ -285,11 +285,11 @@ static ADDRESS_MAP_START( namcos10_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x1f801c00, 0x1f801dff) AM_NOP
AM_RANGE(0x1f802020, 0x1f802033) AM_RAM /* ?? */
AM_RANGE(0x1f802040, 0x1f802043) AM_WRITENOP
AM_RANGE(0x1fc00000, 0x1fffffff) AM_ROM AM_SHARE(2) AM_REGION("user1", 0) /* bios */
AM_RANGE(0x80000000, 0x803fffff) AM_RAM AM_SHARE(1) /* ram mirror */
AM_RANGE(0x9fc00000, 0x9fffffff) AM_ROM AM_SHARE(2) /* bios mirror */
AM_RANGE(0xa0000000, 0xa03fffff) AM_RAM AM_SHARE(1) /* ram mirror */
AM_RANGE(0xbfc00000, 0xbfffffff) AM_ROM AM_SHARE(2) /* bios mirror */
AM_RANGE(0x1fc00000, 0x1fffffff) AM_ROM AM_SHARE("share2") AM_REGION("user1", 0) /* bios */
AM_RANGE(0x80000000, 0x803fffff) AM_RAM AM_SHARE("share1") /* ram mirror */
AM_RANGE(0x9fc00000, 0x9fffffff) AM_ROM AM_SHARE("share2") /* bios mirror */
AM_RANGE(0xa0000000, 0xa03fffff) AM_RAM AM_SHARE("share1") /* ram mirror */
AM_RANGE(0xbfc00000, 0xbfffffff) AM_ROM AM_SHARE("share2") /* bios mirror */
AM_RANGE(0xfffe0130, 0xfffe0133) AM_WRITENOP
ADDRESS_MAP_END

View File

@ -733,7 +733,7 @@ static READ32_HANDLER( lightgun_r )
}
static ADDRESS_MAP_START( namcos11_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE(1) AM_BASE(&g_p_n_psxram) AM_SIZE(&g_n_psxramsize) /* ram */
AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("share1") AM_BASE(&g_p_n_psxram) AM_SIZE(&g_n_psxramsize) /* ram */
AM_RANGE(0x1f800000, 0x1f8003ff) AM_RAM /* scratchpad */
AM_RANGE(0x1f801000, 0x1f801007) AM_WRITENOP
AM_RANGE(0x1f801008, 0x1f80100b) AM_RAM /* ?? */
@ -755,11 +755,11 @@ static ADDRESS_MAP_START( namcos11_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x1fa30000, 0x1fa30fff) AM_DEVREADWRITE8("at28c16", at28c16_r, at28c16_w, 0x00ff00ff) /* eeprom */
AM_RANGE(0x1fb00000, 0x1fb00003) AM_WRITENOP /* ?? */
AM_RANGE(0x1fbf6000, 0x1fbf6003) AM_WRITENOP /* ?? */
AM_RANGE(0x1fc00000, 0x1fffffff) AM_ROM AM_SHARE(2) AM_REGION("user1", 0) /* bios */
AM_RANGE(0x80000000, 0x803fffff) AM_RAM AM_SHARE(1) /* ram mirror */
AM_RANGE(0x9fc00000, 0x9fffffff) AM_ROM AM_SHARE(2) /* bios mirror */
AM_RANGE(0xa0000000, 0xa03fffff) AM_RAM AM_SHARE(1) /* ram mirror */
AM_RANGE(0xbfc00000, 0xbfffffff) AM_ROM AM_SHARE(2) /* bios mirror */
AM_RANGE(0x1fc00000, 0x1fffffff) AM_ROM AM_SHARE("share2") AM_REGION("user1", 0) /* bios */
AM_RANGE(0x80000000, 0x803fffff) AM_RAM AM_SHARE("share1") /* ram mirror */
AM_RANGE(0x9fc00000, 0x9fffffff) AM_ROM AM_SHARE("share2") /* bios mirror */
AM_RANGE(0xa0000000, 0xa03fffff) AM_RAM AM_SHARE("share1") /* ram mirror */
AM_RANGE(0xbfc00000, 0xbfffffff) AM_ROM AM_SHARE("share2") /* bios mirror */
AM_RANGE(0xfffe0130, 0xfffe0133) AM_WRITENOP
ADDRESS_MAP_END

View File

@ -1080,7 +1080,7 @@ static WRITE32_HANDLER( s12_dma_bias_w )
}
static ADDRESS_MAP_START( namcos12_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE(1) AM_BASE(&g_p_n_psxram) AM_SIZE(&g_n_psxramsize) /* ram */
AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("share1") AM_BASE(&g_p_n_psxram) AM_SIZE(&g_n_psxramsize) /* ram */
AM_RANGE(0x1f000000, 0x1f000003) AM_READNOP AM_WRITE(bankoffset_w) /* banking */
AM_RANGE(0x1f080000, 0x1f083fff) AM_READWRITE(sharedram_r, sharedram_w) AM_BASE(&namcos12_sharedram) /* shared ram?? */
AM_RANGE(0x1f140000, 0x1f140fff) AM_DEVREADWRITE8("at28c16", at28c16_r, at28c16_w, 0x00ff00ff) /* eeprom */
@ -1104,11 +1104,11 @@ static ADDRESS_MAP_START( namcos12_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x1f802020, 0x1f802033) AM_RAM /* ?? */
AM_RANGE(0x1f802040, 0x1f802043) AM_WRITENOP
AM_RANGE(0x1fa00000, 0x1fbfffff) AM_ROMBANK("bank1") /* banked roms */
AM_RANGE(0x1fc00000, 0x1fffffff) AM_ROM AM_SHARE(2) AM_REGION("user1", 0) /* bios */
AM_RANGE(0x80000000, 0x803fffff) AM_RAM AM_SHARE(1) /* ram mirror */
AM_RANGE(0x9fc00000, 0x9fffffff) AM_ROM AM_SHARE(2) /* bios mirror */
AM_RANGE(0xa0000000, 0xa03fffff) AM_RAM AM_SHARE(1) /* ram mirror */
AM_RANGE(0xbfc00000, 0xbfffffff) AM_ROM AM_SHARE(2) /* bios mirror */
AM_RANGE(0x1fc00000, 0x1fffffff) AM_ROM AM_SHARE("share2") AM_REGION("user1", 0) /* bios */
AM_RANGE(0x80000000, 0x803fffff) AM_RAM AM_SHARE("share1") /* ram mirror */
AM_RANGE(0x9fc00000, 0x9fffffff) AM_ROM AM_SHARE("share2") /* bios mirror */
AM_RANGE(0xa0000000, 0xa03fffff) AM_RAM AM_SHARE("share1") /* ram mirror */
AM_RANGE(0xbfc00000, 0xbfffffff) AM_ROM AM_SHARE("share2") /* bios mirror */
AM_RANGE(0xfffe0130, 0xfffe0133) AM_WRITENOP
ADDRESS_MAP_END

View File

@ -1301,8 +1301,8 @@ static WRITE64_HANDLER( eeprom_93c46a_w )
static ADDRESS_MAP_START( naomi_map, ADDRESS_SPACE_PROGRAM, 64 )
/* Area 0 */
AM_RANGE(0x00000000, 0x001fffff) AM_ROM AM_SHARE(3) AM_REGION("maincpu", 0) // BIOS
AM_RANGE(0xa0000000, 0xa01fffff) AM_ROM AM_SHARE(3) // non cachable access to 0x00000000 - 0x001fffff
AM_RANGE(0x00000000, 0x001fffff) AM_ROM AM_SHARE("share3") AM_REGION("maincpu", 0) // BIOS
AM_RANGE(0xa0000000, 0xa01fffff) AM_ROM AM_SHARE("share3") // non cachable access to 0x00000000 - 0x001fffff
AM_RANGE(0x00200000, 0x00207fff) AM_RAM // bios uses it (battery backed ram ?)
AM_RANGE(0x005f6800, 0x005f69ff) AM_READWRITE( dc_sysctrl_r, dc_sysctrl_w )
@ -1330,10 +1330,10 @@ static ADDRESS_MAP_START( naomi_map, ADDRESS_SPACE_PROGRAM, 64 )
AM_RANGE(0x08000000, 0x0bffffff) AM_NOP // 'Unassigned'
/* Area 3 */
AM_RANGE(0x0c000000, 0x0dffffff) AM_RAM AM_BASE(&naomi_ram64) AM_SHARE(4)
AM_RANGE(0x0e000000, 0x0fffffff) AM_RAM AM_SHARE(4)// mirror
AM_RANGE(0x0c000000, 0x0dffffff) AM_RAM AM_BASE(&naomi_ram64) AM_SHARE("share4")
AM_RANGE(0x0e000000, 0x0fffffff) AM_RAM AM_SHARE("share4")// mirror
AM_RANGE(0x8c000000, 0x8dffffff) AM_RAM AM_SHARE(4) // RAM access through cache
AM_RANGE(0x8c000000, 0x8dffffff) AM_RAM AM_SHARE("share4") // RAM access through cache
/* Area 4 */
AM_RANGE(0x10000000, 0x107fffff) AM_WRITE( ta_fifo_poly_w )
@ -1477,13 +1477,13 @@ static ADDRESS_MAP_START( aw_map, ADDRESS_SPACE_PROGRAM, 64 )
AM_RANGE(0x08000000, 0x0bffffff) AM_NOP // 'Unassigned'
/* Area 3 */
AM_RANGE(0x0c000000, 0x0cffffff) AM_RAM AM_BASE(&naomi_ram64) AM_SHARE(4)
AM_RANGE(0x0d000000, 0x0dffffff) AM_RAM AM_SHARE(4)// extra ram on Naomi (mirror on DC)
AM_RANGE(0x0e000000, 0x0effffff) AM_RAM AM_SHARE(4)// mirror
AM_RANGE(0x0f000000, 0x0fffffff) AM_RAM AM_SHARE(4)// mirror
AM_RANGE(0x0c000000, 0x0cffffff) AM_RAM AM_BASE(&naomi_ram64) AM_SHARE("share4")
AM_RANGE(0x0d000000, 0x0dffffff) AM_RAM AM_SHARE("share4")// extra ram on Naomi (mirror on DC)
AM_RANGE(0x0e000000, 0x0effffff) AM_RAM AM_SHARE("share4")// mirror
AM_RANGE(0x0f000000, 0x0fffffff) AM_RAM AM_SHARE("share4")// mirror
AM_RANGE(0x8c000000, 0x8cffffff) AM_RAM AM_SHARE(4) // RAM access through cache
AM_RANGE(0x8d000000, 0x8dffffff) AM_RAM AM_SHARE(4) // RAM access through cache
AM_RANGE(0x8c000000, 0x8cffffff) AM_RAM AM_SHARE("share4") // RAM access through cache
AM_RANGE(0x8d000000, 0x8dffffff) AM_RAM AM_SHARE("share4") // RAM access through cache
/* Area 4 - half the texture memory, like dreamcast, not naomi */
AM_RANGE(0x10000000, 0x107fffff) AM_WRITE( ta_fifo_poly_w )

View File

@ -425,9 +425,9 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( sexygal_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x807f) AM_RAM AM_SHARE(2)
AM_RANGE(0x8000, 0x807f) AM_RAM AM_SHARE("share2")
// AM_RANGE(0xa000, 0xa000) AM_WRITE(nsc_latch_w) //???
AM_RANGE(0xe000, 0xe03f) AM_RAM AM_SHARE(1)
AM_RANGE(0xe000, 0xe03f) AM_RAM AM_SHARE("share1")
AM_RANGE(0xf000, 0xffff) AM_RAM
ADDRESS_MAP_END
@ -444,14 +444,14 @@ static ADDRESS_MAP_START( sexygal_io, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_END
static ADDRESS_MAP_START( sexygal_nsc_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x007f) AM_RAM AM_SHARE(2)
AM_RANGE(0x0000, 0x007f) AM_RAM AM_SHARE("share2")
AM_RANGE(0x0080, 0x0080) AM_READ(blitter_status_r)
AM_RANGE(0x0081, 0x0083) AM_READ(nsc_blit_r)
AM_RANGE(0x0080, 0x0086) AM_WRITE(sexygal_nsc_true_blitter_w)
AM_RANGE(0x00a0, 0x00af) AM_WRITE(blit_true_vregs_w)
AM_RANGE(0x1000, 0x103f) AM_RAM AM_SHARE(1)
AM_RANGE(0x1000, 0x103f) AM_RAM AM_SHARE("share1")
AM_RANGE(0xc000, 0xffff) AM_ROM AM_WRITENOP
ADDRESS_MAP_END

View File

@ -411,8 +411,8 @@ static ADDRESS_MAP_START( ninjaw_master_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x200002, 0x200003) AM_READWRITE8(TC0220IOC_port_r,TC0220IOC_port_w, 0x00ff)
AM_RANGE(0x210000, 0x210001) AM_WRITE(cpua_ctrl_w)
AM_RANGE(0x220000, 0x220003) AM_READWRITE(ninjaw_sound_r,ninjaw_sound_w)
AM_RANGE(0x240000, 0x24ffff) AM_RAM AM_SHARE(1)
AM_RANGE(0x260000, 0x263fff) AM_RAM AM_SHARE(2) AM_BASE_SIZE_GENERIC(spriteram)
AM_RANGE(0x240000, 0x24ffff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x260000, 0x263fff) AM_RAM AM_SHARE("share2") AM_BASE_SIZE_GENERIC(spriteram)
AM_RANGE(0x280000, 0x293fff) AM_READWRITE(TC0100SCN_word_0_r,TC0100SCN_triple_screen_w) /* tilemaps (1st screen/all screens) */
AM_RANGE(0x2a0000, 0x2a000f) AM_READWRITE(TC0100SCN_ctrl_word_0_r,TC0100SCN_ctrl_word_0_w)
AM_RANGE(0x2c0000, 0x2d3fff) AM_READWRITE(TC0100SCN_word_1_r,TC0100SCN_word_1_w) /* tilemaps (2nd screen) */
@ -432,8 +432,8 @@ static ADDRESS_MAP_START( ninjaw_slave_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x080000, 0x08ffff) AM_RAM /* main ram */
AM_RANGE(0x200000, 0x200001) AM_READWRITE8(TC0220IOC_portreg_r,TC0220IOC_portreg_w, 0x00ff)
AM_RANGE(0x200002, 0x200003) AM_READWRITE8(TC0220IOC_port_r,TC0220IOC_port_w, 0x00ff)
AM_RANGE(0x240000, 0x24ffff) AM_RAM AM_SHARE(1)
AM_RANGE(0x260000, 0x263fff) AM_RAM AM_SHARE(2)
AM_RANGE(0x240000, 0x24ffff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x260000, 0x263fff) AM_RAM AM_SHARE("share2")
AM_RANGE(0x280000, 0x293fff) AM_READWRITE(TC0100SCN_word_0_r,TC0100SCN_triple_screen_w) /* tilemaps (1st screen/all screens) */
AM_RANGE(0x340000, 0x340007) AM_READWRITE(TC0110PCR_word_r,TC0110PCR_step1_word_w) /* palette (1st screen) */
AM_RANGE(0x350000, 0x350007) AM_READWRITE(TC0110PCR_word_1_r,TC0110PCR_step1_word_1_w) /* palette (2nd screen) */
@ -447,8 +447,8 @@ static ADDRESS_MAP_START( darius2_master_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x200002, 0x200003) AM_READWRITE8(TC0220IOC_port_r,TC0220IOC_port_w, 0x00ff)
AM_RANGE(0x210000, 0x210001) AM_WRITE(cpua_ctrl_w)
AM_RANGE(0x220000, 0x220003) AM_READWRITE(ninjaw_sound_r,ninjaw_sound_w)
AM_RANGE(0x240000, 0x24ffff) AM_RAM AM_SHARE(1)
AM_RANGE(0x260000, 0x263fff) AM_RAM AM_SHARE(2) AM_BASE_SIZE_GENERIC(spriteram)
AM_RANGE(0x240000, 0x24ffff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x260000, 0x263fff) AM_RAM AM_SHARE("share2") AM_BASE_SIZE_GENERIC(spriteram)
AM_RANGE(0x280000, 0x293fff) AM_READWRITE(TC0100SCN_word_0_r,TC0100SCN_triple_screen_w) /* tilemaps (1st screen/all screens) */
AM_RANGE(0x2a0000, 0x2a000f) AM_READWRITE(TC0100SCN_ctrl_word_0_r,TC0100SCN_ctrl_word_0_w)
AM_RANGE(0x2c0000, 0x2d3fff) AM_READWRITE(TC0100SCN_word_1_r,TC0100SCN_word_1_w) /* tilemaps (2nd screen) */
@ -465,8 +465,8 @@ static ADDRESS_MAP_START( darius2_slave_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x080000, 0x08ffff) AM_RAM /* main ram */
AM_RANGE(0x200000, 0x200001) AM_READWRITE8(TC0220IOC_portreg_r,TC0220IOC_portreg_w, 0x00ff)
AM_RANGE(0x200002, 0x200003) AM_READWRITE8(TC0220IOC_port_r,TC0220IOC_port_w, 0x00ff)
AM_RANGE(0x240000, 0x24ffff) AM_RAM AM_SHARE(1)
AM_RANGE(0x260000, 0x263fff) AM_RAM AM_SHARE(2)
AM_RANGE(0x240000, 0x24ffff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x260000, 0x263fff) AM_RAM AM_SHARE("share2")
AM_RANGE(0x280000, 0x293fff) AM_READWRITE(TC0100SCN_word_0_r,TC0100SCN_triple_screen_w) /* tilemaps (1st screen/all screens) */
ADDRESS_MAP_END

View File

@ -4674,8 +4674,8 @@ static ADDRESS_MAP_START( afega, ADDRESS_SPACE_PROGRAM, 16 )
/**/AM_RANGE(0x090000, 0x093fff) AM_RAM_WRITE(nmk_bgvideoram0_w) AM_BASE(&nmk_bgvideoram0) // Layer 0 // ?
/**/AM_RANGE(0x09c000, 0x09c7ff) AM_RAM_WRITE(nmk_txvideoram_w) AM_BASE(&nmk_txvideoram) // Layer 1
AM_RANGE(0x0c0000, 0x0cffff) AM_RAM_WRITE(nmk16_mainram_strange_w) AM_SHARE(1) AM_BASE(&nmk16_mainram)
AM_RANGE(0x0f0000, 0x0fffff) AM_RAM_WRITE(nmk16_mainram_strange_w) AM_SHARE(1)
AM_RANGE(0x0c0000, 0x0cffff) AM_RAM_WRITE(nmk16_mainram_strange_w) AM_SHARE("share1") AM_BASE(&nmk16_mainram)
AM_RANGE(0x0f0000, 0x0fffff) AM_RAM_WRITE(nmk16_mainram_strange_w) AM_SHARE("share1")
ADDRESS_MAP_END

View File

@ -202,12 +202,12 @@ static ADDRESS_MAP_START( ninjakun_cpu1_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xa001, 0xa001) AM_READ_PORT("IN1")
AM_RANGE(0xa002, 0xa002) AM_READ_PORT("IN2") AM_WRITE(ninjakun_cpu1_io_A002_w)
AM_RANGE(0xa003, 0xa003) AM_WRITE(pkunwar_flipscreen_w)
AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(nova2001_fg_videoram_w) AM_BASE(&nova2001_fg_videoram) AM_SHARE(1)
AM_RANGE(0xc800, 0xcfff) AM_READWRITE(ninjakun_bg_videoram_r, ninjakun_bg_videoram_w) AM_BASE(&nova2001_bg_videoram) AM_SHARE(2)
AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_BASE_GENERIC(spriteram) AM_SHARE(3)
AM_RANGE(0xd800, 0xd9ff) AM_RAM_WRITE(ninjakun_paletteram_w) AM_BASE_GENERIC(paletteram) AM_SHARE(4)
AM_RANGE(0xe000, 0xe3ff) AM_RAM AM_SHARE(5)
AM_RANGE(0xe400, 0xe7ff) AM_RAM AM_SHARE(6)
AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(nova2001_fg_videoram_w) AM_BASE(&nova2001_fg_videoram) AM_SHARE("share1")
AM_RANGE(0xc800, 0xcfff) AM_READWRITE(ninjakun_bg_videoram_r, ninjakun_bg_videoram_w) AM_BASE(&nova2001_bg_videoram) AM_SHARE("share2")
AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_BASE_GENERIC(spriteram) AM_SHARE("share3")
AM_RANGE(0xd800, 0xd9ff) AM_RAM_WRITE(ninjakun_paletteram_w) AM_BASE_GENERIC(paletteram) AM_SHARE("share4")
AM_RANGE(0xe000, 0xe3ff) AM_RAM AM_SHARE("share5")
AM_RANGE(0xe400, 0xe7ff) AM_RAM AM_SHARE("share6")
ADDRESS_MAP_END
static ADDRESS_MAP_START( ninjakun_cpu2_map, ADDRESS_SPACE_PROGRAM, 8 )
@ -221,12 +221,12 @@ static ADDRESS_MAP_START( ninjakun_cpu2_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xa001, 0xa001) AM_READ_PORT("IN1")
AM_RANGE(0xa002, 0xa002) AM_READ_PORT("IN2") AM_WRITE(ninjakun_cpu2_io_A002_w)
AM_RANGE(0xa003, 0xa003) AM_WRITE(nova2001_flipscreen_w)
AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(nova2001_fg_videoram_w) AM_SHARE(1)
AM_RANGE(0xc800, 0xcfff) AM_READWRITE(ninjakun_bg_videoram_r, ninjakun_bg_videoram_w) AM_SHARE(2)
AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_SHARE(3)
AM_RANGE(0xd800, 0xd9ff) AM_RAM_WRITE(ninjakun_paletteram_w) AM_SHARE(4)
AM_RANGE(0xe000, 0xe3ff) AM_RAM AM_SHARE(6) /* swapped wrt CPU1 */
AM_RANGE(0xe400, 0xe7ff) AM_RAM AM_SHARE(5) /* swapped wrt CPU1 */
AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(nova2001_fg_videoram_w) AM_SHARE("share1")
AM_RANGE(0xc800, 0xcfff) AM_READWRITE(ninjakun_bg_videoram_r, ninjakun_bg_videoram_w) AM_SHARE("share2")
AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_SHARE("share3")
AM_RANGE(0xd800, 0xd9ff) AM_RAM_WRITE(ninjakun_paletteram_w) AM_SHARE("share4")
AM_RANGE(0xe000, 0xe3ff) AM_RAM AM_SHARE("share6") /* swapped wrt CPU1 */
AM_RANGE(0xe400, 0xe7ff) AM_RAM AM_SHARE("share5") /* swapped wrt CPU1 */
ADDRESS_MAP_END
@ -261,7 +261,7 @@ static ADDRESS_MAP_START( raiders5_cpu1_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xc002, 0xc003) AM_DEVWRITE("ay2", ay8910_address_data_w)
AM_RANGE(0xc003, 0xc003) AM_DEVREAD("ay2", ay8910_r)
AM_RANGE(0xd000, 0xd1ff) AM_RAM_WRITE(ninjakun_paletteram_w) AM_BASE_GENERIC(paletteram)
AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE(1)
AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
static ADDRESS_MAP_START( raiders5_cpu2_map, ADDRESS_SPACE_PROGRAM, 8 )
@ -271,7 +271,7 @@ static ADDRESS_MAP_START( raiders5_cpu2_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x8002, 0x8003) AM_DEVWRITE("ay2", ay8910_address_data_w)
AM_RANGE(0x8003, 0x8003) AM_DEVREAD("ay2", ay8910_r)
AM_RANGE(0x9000, 0x9000) AM_READNOP /* unknown */
AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_SHARE(1)
AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xc000, 0xc000) AM_READNOP /* unknown */
AM_RANGE(0xc800, 0xc800) AM_READNOP /* unknown */
AM_RANGE(0xd000, 0xd000) AM_READNOP /* unknown */

View File

@ -900,8 +900,8 @@ static ADDRESS_MAP_START( nwktr_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x7d040000, 0x7d04ffff) AM_READWRITE(lanc1_r, lanc1_w)
AM_RANGE(0x7d050000, 0x7d05ffff) AM_READWRITE(lanc2_r, lanc2_w)
AM_RANGE(0x7e000000, 0x7e7fffff) AM_ROM AM_REGION("user2", 0) /* Data ROM */
AM_RANGE(0x7f000000, 0x7f1fffff) AM_ROM AM_SHARE(2)
AM_RANGE(0x7fe00000, 0x7fffffff) AM_ROM AM_REGION("user1", 0) AM_SHARE(2) /* Program ROM */
AM_RANGE(0x7f000000, 0x7f1fffff) AM_ROM AM_SHARE("share2")
AM_RANGE(0x7fe00000, 0x7fffffff) AM_ROM AM_REGION("user1", 0) AM_SHARE("share2") /* Program ROM */
ADDRESS_MAP_END
/*****************************************************************************/

View File

@ -240,7 +240,7 @@ static ADDRESS_MAP_START( overdriv_master_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x1e8000, 0x1e8001) AM_WRITE(overdriv_soundirq_w)
AM_RANGE(0x1f0000, 0x1f0001) AM_WRITE(cpuA_ctrl_w) /* halt cpu B, coin counter, start lamp, other? */
AM_RANGE(0x1f8000, 0x1f8001) AM_WRITE(eeprom_w)
AM_RANGE(0x200000, 0x203fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x200000, 0x203fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x210000, 0x210fff) AM_READWRITE(K051316_0_msb_r,K051316_0_msb_w)
AM_RANGE(0x218000, 0x218fff) AM_READWRITE(K051316_1_msb_r,K051316_1_msb_w)
AM_RANGE(0x220000, 0x220fff) AM_READ(K051316_rom_0_msb_r)
@ -259,7 +259,7 @@ static ADDRESS_MAP_START( overdriv_slave_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x120000, 0x120001) AM_READ(K053246_word_r)
AM_RANGE(0x128000, 0x128001) AM_READWRITE(cpuB_ctrl_r,cpuB_ctrl_w) /* enable K053247 ROM reading, plus something else */
AM_RANGE(0x130000, 0x130007) AM_WRITE(K053246_word_w)
AM_RANGE(0x200000, 0x203fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x200000, 0x203fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x208000, 0x20bfff) AM_RAM
AM_RANGE(0x218000, 0x219fff) AM_READNOP // K053250 #0 gfx ROM read (LSB)
AM_RANGE(0x220000, 0x221fff) AM_READNOP // K053250 #1 gfx ROM read (LSB)

View File

@ -134,9 +134,9 @@ static WRITE8_HANDLER( pandoras_z80_irqtrigger_w )
static ADDRESS_MAP_START( pandoras_master_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE(1) AM_BASE_MEMBER(pandoras_state, spriteram) /* Work RAM (Shared with CPU B) */
AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(pandoras_cram_w) AM_SHARE(2) AM_BASE_MEMBER(pandoras_state, colorram) /* Color RAM (shared with CPU B) */
AM_RANGE(0x1400, 0x17ff) AM_RAM_WRITE(pandoras_vram_w) AM_SHARE(3) AM_BASE_MEMBER(pandoras_state, videoram) /* Video RAM (shared with CPU B) */
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1") AM_BASE_MEMBER(pandoras_state, spriteram) /* Work RAM (Shared with CPU B) */
AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(pandoras_cram_w) AM_SHARE("share2") AM_BASE_MEMBER(pandoras_state, colorram) /* Color RAM (shared with CPU B) */
AM_RANGE(0x1400, 0x17ff) AM_RAM_WRITE(pandoras_vram_w) AM_SHARE("share3") AM_BASE_MEMBER(pandoras_state, videoram) /* Video RAM (shared with CPU B) */
AM_RANGE(0x1800, 0x1807) AM_WRITE(pandoras_int_control_w) /* INT control */
AM_RANGE(0x1a00, 0x1a00) AM_WRITE(pandoras_scrolly_w) /* bg scroll */
AM_RANGE(0x1c00, 0x1c00) AM_WRITE(pandoras_z80_irqtrigger_w) /* cause INT on the Z80 */
@ -144,14 +144,14 @@ static ADDRESS_MAP_START( pandoras_master_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x2000, 0x2000) AM_WRITE(pandoras_cpub_irqtrigger_w) /* cause FIRQ on CPU B */
AM_RANGE(0x2001, 0x2001) AM_WRITE(watchdog_reset_w) /* watchdog reset */
AM_RANGE(0x4000, 0x5fff) AM_ROM /* space for diagnostic ROM */
AM_RANGE(0x6000, 0x67ff) AM_RAM AM_SHARE(4) /* Shared RAM with CPU B */
AM_RANGE(0x6000, 0x67ff) AM_RAM AM_SHARE("share4") /* Shared RAM with CPU B */
AM_RANGE(0x8000, 0xffff) AM_ROM /* ROM */
ADDRESS_MAP_END
static ADDRESS_MAP_START( pandoras_slave_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE(1) /* Work RAM (Shared with CPU A) */
AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(pandoras_cram_w) AM_SHARE(2) /* Color RAM (shared with CPU A) */
AM_RANGE(0x1400, 0x17ff) AM_RAM_WRITE(pandoras_vram_w) AM_SHARE(3) /* Video RAM (shared with CPU A) */
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1") /* Work RAM (Shared with CPU A) */
AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(pandoras_cram_w) AM_SHARE("share2") /* Color RAM (shared with CPU A) */
AM_RANGE(0x1400, 0x17ff) AM_RAM_WRITE(pandoras_vram_w) AM_SHARE("share3") /* Video RAM (shared with CPU A) */
AM_RANGE(0x1800, 0x1800) AM_READ_PORT("DSW1")
AM_RANGE(0x1800, 0x1807) AM_WRITE(pandoras_int_control_w) /* INT control */
AM_RANGE(0x1a00, 0x1a00) AM_READ_PORT("SYSTEM")
@ -162,7 +162,7 @@ static ADDRESS_MAP_START( pandoras_slave_map, ADDRESS_SPACE_PROGRAM, 8 )
// AM_RANGE(0x1e00, 0x1e00) AM_READNOP /* ??? seems to be important */
AM_RANGE(0x8000, 0x8000) AM_WRITE(watchdog_reset_w) /* watchdog reset */
AM_RANGE(0xa000, 0xa000) AM_WRITE(pandoras_cpua_irqtrigger_w) /* cause FIRQ on CPU A */
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE(4) /* Shared RAM with the CPU A */
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("share4") /* Shared RAM with the CPU A */
AM_RANGE(0xe000, 0xffff) AM_ROM /* ROM */
ADDRESS_MAP_END

View File

@ -162,7 +162,7 @@ static ADDRESS_MAP_START( popper_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xca00, 0xce1f) AM_RAM_WRITE(popper_attribram_w) AM_BASE_MEMBER(popper_state, attribram)
AM_RANGE(0xce20, 0xcfff) AM_RAM
AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_BASE_SIZE_MEMBER(popper_state, spriteram, spriteram_size)
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE(1)
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xe000, 0xe007) AM_READ(popper_input_ports_r)
AM_RANGE(0xe000, 0xe000) AM_WRITE(interrupt_enable_w)
AM_RANGE(0xe001, 0xe001) AM_WRITE(popper_flipscreen_w)
@ -184,7 +184,7 @@ static ADDRESS_MAP_START( popper_sound_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xa000, 0xa001) AM_DEVWRITE("ay2", ay8910_address_data_w)
AM_RANGE(0xa002, 0xa002) AM_READNOP //?? of AY8910 initialisation
AM_RANGE(0xa002, 0xa002) AM_WRITENOP //?? same writes as 0xa000
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE(1)
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
/*************************************

View File

@ -166,9 +166,9 @@ static WRITE8_HANDLER( ppmast93_port4_w )
static ADDRESS_MAP_START( ppmast93_cpu1_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_WRITENOP AM_REGION("maincpu", 0x10000)
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(ppmast93_bgram_w) AM_BASE(&ppmast93_bgram) AM_SHARE(1)
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(ppmast93_bgram_w) AM_BASE(&ppmast93_bgram) AM_SHARE("share1")
AM_RANGE(0xd800, 0xdfff) AM_WRITENOP
AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(ppmast93_fgram_w) AM_BASE(&ppmast93_fgram) AM_SHARE(2)
AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(ppmast93_fgram_w) AM_BASE(&ppmast93_fgram) AM_SHARE("share2")
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END

View File

@ -238,7 +238,7 @@ Interrupts:
*************************************/
static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x8000, 0x83ff) AM_RAM AM_SHARE(1)
AM_RANGE(0x8000, 0x83ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x8400, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8bff) AM_READNOP /* 6850 ACIA */
AM_RANGE(0x8c00, 0x8c00) AM_MIRROR(0x3fe) AM_READWRITE(qix_video_firq_r, qix_video_firq_w)
@ -252,7 +252,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( zoo_main_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE(1)
AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x0400, 0x07ff) AM_RAM
AM_RANGE(0x0800, 0x0bff) AM_READNOP /* ACIA */
AM_RANGE(0x0c00, 0x0c00) AM_MIRROR(0x3fe) AM_READWRITE(qix_video_firq_r, qix_video_firq_w)

View File

@ -59,7 +59,7 @@ extern UINT16 *raiden_back_data,*raiden_fore_data,*raiden_scroll_ram;
static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x00000, 0x06fff) AM_RAM
AM_RANGE(0x07000, 0x07fff) AM_RAM AM_BASE_SIZE_GENERIC(spriteram)
AM_RANGE(0x0a000, 0x0afff) AM_RAM AM_SHARE(1) AM_BASE(&raiden_shared_ram)
AM_RANGE(0x0a000, 0x0afff) AM_RAM AM_SHARE("share1") AM_BASE(&raiden_shared_ram)
AM_RANGE(0x0b000, 0x0b001) AM_READ_PORT("P1_P2")
AM_RANGE(0x0b002, 0x0b003) AM_READ_PORT("DSW")
AM_RANGE(0x0b000, 0x0b007) AM_WRITE(raiden_control_w)
@ -74,7 +74,7 @@ static ADDRESS_MAP_START( sub_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x02000, 0x027ff) AM_RAM_WRITE(raiden_background_w) AM_BASE(&raiden_back_data)
AM_RANGE(0x02800, 0x02fff) AM_RAM_WRITE(raiden_foreground_w) AM_BASE(&raiden_fore_data)
AM_RANGE(0x03000, 0x03fff) AM_RAM_WRITE(paletteram16_xxxxBBBBGGGGRRRR_word_w) AM_BASE_GENERIC(paletteram)
AM_RANGE(0x04000, 0x04fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x04000, 0x04fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x07ffe, 0x0afff) AM_WRITENOP
AM_RANGE(0xc0000, 0xfffff) AM_ROM
ADDRESS_MAP_END
@ -84,7 +84,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( alt_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x00000, 0x06fff) AM_RAM
AM_RANGE(0x07000, 0x07fff) AM_RAM AM_BASE_SIZE_GENERIC(spriteram)
AM_RANGE(0x08000, 0x08fff) AM_RAM AM_SHARE(1) AM_BASE(&raiden_shared_ram)
AM_RANGE(0x08000, 0x08fff) AM_RAM AM_SHARE("share1") AM_BASE(&raiden_shared_ram)
AM_RANGE(0x0a000, 0x0a00d) AM_READWRITE(seibu_main_word_r, seibu_main_word_w)
AM_RANGE(0x0c000, 0x0c7ff) AM_WRITE(raiden_text_w) AM_BASE_GENERIC(videoram)
AM_RANGE(0x0e000, 0x0e001) AM_READ_PORT("P1_P2")

View File

@ -105,9 +105,9 @@ static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x7fff, 0x7fff) AM_WRITE(coincounter_w)
AM_RANGE(0x7b00, 0x7bff) AM_ROM /* space for diagnostic ROM? The code looks */
/* for a string here, and jumps if it's present */
AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(retofinv_fg_videoram_w) AM_SHARE(2) AM_BASE(&retofinv_fg_videoram)
AM_RANGE(0x8800, 0x9fff) AM_RAM AM_SHARE(1) AM_BASE(&retofinv_sharedram)
AM_RANGE(0xa000, 0xa7ff) AM_RAM_WRITE(retofinv_bg_videoram_w) AM_SHARE(3) AM_BASE(&retofinv_bg_videoram)
AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(retofinv_fg_videoram_w) AM_SHARE("share2") AM_BASE(&retofinv_fg_videoram)
AM_RANGE(0x8800, 0x9fff) AM_RAM AM_SHARE("share1") AM_BASE(&retofinv_sharedram)
AM_RANGE(0xa000, 0xa7ff) AM_RAM_WRITE(retofinv_bg_videoram_w) AM_SHARE("share3") AM_BASE(&retofinv_bg_videoram)
AM_RANGE(0xb800, 0xb802) AM_WRITE(retofinv_gfx_ctrl_w)
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("P1")
AM_RANGE(0xc001, 0xc001) AM_READ_PORT("P2")
@ -132,9 +132,9 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( sub_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(retofinv_fg_videoram_w) AM_SHARE(2)
AM_RANGE(0x8800, 0x9fff) AM_RAM AM_SHARE(1)
AM_RANGE(0xa000, 0xa7ff) AM_RAM_WRITE(retofinv_bg_videoram_w) AM_SHARE(3)
AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(retofinv_fg_videoram_w) AM_SHARE("share2")
AM_RANGE(0x8800, 0x9fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xa000, 0xa7ff) AM_RAM_WRITE(retofinv_bg_videoram_w) AM_SHARE("share3")
AM_RANGE(0xc804, 0xc804) AM_WRITE(irq1_ack_w)
ADDRESS_MAP_END

View File

@ -564,7 +564,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( janho_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE( 0x0000, 0x6fff ) AM_ROM AM_WRITE( royalmah_rom_w )
AM_RANGE( 0x7000, 0x7fff ) AM_RAM AM_SHARE(1) AM_BASE_SIZE_GENERIC(nvram)
AM_RANGE( 0x7000, 0x7fff ) AM_RAM AM_SHARE("share1") AM_BASE_SIZE_GENERIC(nvram)
AM_RANGE( 0x8000, 0xffff ) AM_WRITEONLY AM_BASE_GENERIC(videoram)
ADDRESS_MAP_END
@ -578,7 +578,7 @@ static ADDRESS_MAP_START( janoh_sub_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE( 0x6000, 0x607f ) AM_RAM
AM_RANGE( 0x7000, 0x7000 ) AM_READNOP
AM_RANGE( 0x7200, 0x7200 ) AM_WRITENOP
AM_RANGE( 0xf000, 0xffff ) AM_RAM AM_SHARE(1)
AM_RANGE( 0xf000, 0xffff ) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
static ADDRESS_MAP_START( janoh_sub_iomap, ADDRESS_SPACE_IO, 8 )

View File

@ -405,8 +405,8 @@ static ADDRESS_MAP_START( hangon_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x600000, 0x6007ff) AM_RAM AM_BASE(&segaic16_spriteram_0)
AM_RANGE(0xa00000, 0xa00fff) AM_RAM_WRITE(segaic16_paletteram_w) AM_BASE(&segaic16_paletteram)
AM_RANGE(0xc00000, 0xc3ffff) AM_ROM AM_REGION("sub", 0)
AM_RANGE(0xc68000, 0xc68fff) AM_RAM AM_SHARE(1) AM_BASE(&segaic16_roadram_0)
AM_RANGE(0xc7c000, 0xc7ffff) AM_RAM AM_SHARE(2)
AM_RANGE(0xc68000, 0xc68fff) AM_RAM AM_SHARE("share1") AM_BASE(&segaic16_roadram_0)
AM_RANGE(0xc7c000, 0xc7ffff) AM_RAM AM_SHARE("share2")
AM_RANGE(0xe00000, 0xffffff) AM_READWRITE(hangon_io_r, hangon_io_w)
ADDRESS_MAP_END
@ -417,10 +417,10 @@ static ADDRESS_MAP_START( sharrier_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x100000, 0x107fff) AM_RAM_WRITE(segaic16_tileram_0_w) AM_BASE(&segaic16_tileram_0)
AM_RANGE(0x108000, 0x108fff) AM_RAM_WRITE(segaic16_textram_0_w) AM_BASE(&segaic16_textram_0)
AM_RANGE(0x110000, 0x110fff) AM_RAM_WRITE(segaic16_paletteram_w) AM_BASE(&segaic16_paletteram)
AM_RANGE(0x124000, 0x127fff) AM_RAM AM_SHARE(2)
AM_RANGE(0x124000, 0x127fff) AM_RAM AM_SHARE("share2")
AM_RANGE(0x130000, 0x130fff) AM_RAM AM_BASE(&segaic16_spriteram_0)
AM_RANGE(0x140000, 0x14ffff) AM_READWRITE(sharrier_io_r, sharrier_io_w)
AM_RANGE(0xc68000, 0xc68fff) AM_RAM AM_SHARE(1) AM_BASE(&segaic16_roadram_0)
AM_RANGE(0xc68000, 0xc68fff) AM_RAM AM_SHARE("share1") AM_BASE(&segaic16_roadram_0)
ADDRESS_MAP_END
@ -436,8 +436,8 @@ static ADDRESS_MAP_START( sub_map, ADDRESS_SPACE_PROGRAM, 16 )
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x7ffff)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x068000, 0x068fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x07c000, 0x07ffff) AM_RAM AM_SHARE(2)
AM_RANGE(0x068000, 0x068fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x07c000, 0x07ffff) AM_RAM AM_SHARE("share2")
ADDRESS_MAP_END

View File

@ -995,7 +995,7 @@ fc-ff ramhi
static ADDRESS_MAP_START( system24_cpu1_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x000000, 0x03ffff) AM_MIRROR(0x040000) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x080000, 0x0bffff) AM_MIRROR(0x040000) AM_RAM AM_SHARE(1)
AM_RANGE(0x080000, 0x0bffff) AM_MIRROR(0x040000) AM_RAM AM_SHARE("share1")
AM_RANGE(0x100000, 0x13ffff) AM_MIRROR(0x0c0000) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x200000, 0x20ffff) AM_MIRROR(0x110000) AM_READWRITE(sys24_tile_r, sys24_tile_w)
AM_RANGE(0x220000, 0x220001) AM_MIRROR(0x11fffe) AM_WRITENOP /* Horizontal split position (ABSEL) */
@ -1018,8 +1018,8 @@ static ADDRESS_MAP_START( system24_cpu1_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0xc80000, 0xcbffff) AM_ROMBANK("bank2")
AM_RANGE(0xcc0000, 0xcc0001) AM_MIRROR(0x03fff8) AM_READWRITE(curbank_r, curbank_w)
AM_RANGE(0xcc0006, 0xcc0007) AM_MIRROR(0x03fff8) AM_READWRITE(mlatch_r, mlatch_w)
AM_RANGE(0xf00000, 0xf3ffff) AM_MIRROR(0x040000) AM_RAM AM_SHARE(2)
AM_RANGE(0xf80000, 0xfbffff) AM_MIRROR(0x040000) AM_RAM AM_SHARE(1)
AM_RANGE(0xf00000, 0xf3ffff) AM_MIRROR(0x040000) AM_RAM AM_SHARE("share2")
AM_RANGE(0xf80000, 0xfbffff) AM_MIRROR(0x040000) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
@ -1031,8 +1031,8 @@ ADDRESS_MAP_END
*************************************/
static ADDRESS_MAP_START( system24_cpu2_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x000000, 0x03ffff) AM_MIRROR(0x040000) AM_RAM AM_SHARE(2) AM_BASE(&s24_mainram1)
AM_RANGE(0x080000, 0x0bffff) AM_MIRROR(0x040000) AM_RAM AM_SHARE(1)
AM_RANGE(0x000000, 0x03ffff) AM_MIRROR(0x040000) AM_RAM AM_SHARE("share2") AM_BASE(&s24_mainram1)
AM_RANGE(0x080000, 0x0bffff) AM_MIRROR(0x040000) AM_RAM AM_SHARE("share1")
AM_RANGE(0x100000, 0x13ffff) AM_MIRROR(0x0c0000) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x200000, 0x20ffff) AM_MIRROR(0x110000) AM_READWRITE(sys24_tile_r, sys24_tile_w)
AM_RANGE(0x220000, 0x220001) AM_MIRROR(0x11fffe) AM_WRITENOP /* Horizontal split position (ABSEL) */
@ -1055,8 +1055,8 @@ static ADDRESS_MAP_START( system24_cpu2_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0xc80000, 0xcbffff) AM_ROMBANK("bank2")
AM_RANGE(0xcc0000, 0xcc0001) AM_MIRROR(0x03fff8) AM_READWRITE(curbank_r, curbank_w)
AM_RANGE(0xcc0006, 0xcc0007) AM_MIRROR(0x03fff8) AM_READWRITE(mlatch_r, mlatch_w)
AM_RANGE(0xf00000, 0xf3ffff) AM_MIRROR(0x040000) AM_RAM AM_SHARE(2)
AM_RANGE(0xf80000, 0xfbffff) AM_MIRROR(0x040000) AM_RAM AM_SHARE(1)
AM_RANGE(0xf00000, 0xf3ffff) AM_MIRROR(0x040000) AM_RAM AM_SHARE("share2")
AM_RANGE(0xf80000, 0xfbffff) AM_MIRROR(0x040000) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END

View File

@ -726,8 +726,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(1) AM_BASE(&backupram1)
AM_RANGE(0x0a0000, 0x0a3fff) AM_MIRROR(0x01c000) AM_RAM AM_SHARE(2) AM_BASE(&backupram2)
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(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_READWRITE(segaic16_multiply_0_r, segaic16_multiply_0_w)
@ -741,16 +741,16 @@ static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x150000, 0x15000f) AM_MIRROR(0x00fff0) AM_READWRITE(iochip_1_r, iochip_1_w)
AM_RANGE(0x160000, 0x16ffff) AM_WRITE(iocontrol_w)
AM_RANGE(0x200000, 0x27ffff) AM_ROM AM_REGION("sub", 0x00000)
AM_RANGE(0x280000, 0x283fff) AM_MIRROR(0x01c000) AM_RAM AM_SHARE(3)
AM_RANGE(0x2a0000, 0x2a3fff) AM_MIRROR(0x01c000) AM_RAM AM_SHARE(4)
AM_RANGE(0x280000, 0x283fff) AM_MIRROR(0x01c000) AM_RAM AM_SHARE("share3")
AM_RANGE(0x2a0000, 0x2a3fff) AM_MIRROR(0x01c000) AM_RAM AM_SHARE("share4")
AM_RANGE(0x2e0000, 0x2e0007) AM_MIRROR(0x003ff8) AM_READWRITE(segaic16_multiply_1_r, segaic16_multiply_1_w)
AM_RANGE(0x2e4000, 0x2e401f) AM_MIRROR(0x003fe0) AM_READWRITE(segaic16_divide_1_r, segaic16_divide_1_w)
AM_RANGE(0x2e8000, 0x2e800f) AM_MIRROR(0x003ff0) AM_READWRITE(segaic16_compare_timer_1_r, segaic16_compare_timer_1_w)
AM_RANGE(0x2ec000, 0x2ecfff) AM_MIRROR(0x001000) AM_RAM AM_SHARE(5) AM_BASE(&segaic16_roadram_0)
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(1)
AM_RANGE(0x3fc000, 0x3fffff) AM_RAM AM_SHARE(2)
AM_RANGE(0x3f8000, 0x3fbfff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x3fc000, 0x3fffff) AM_RAM AM_SHARE("share2")
ADDRESS_MAP_END
@ -765,12 +765,12 @@ static ADDRESS_MAP_START( sub_map, ADDRESS_SPACE_PROGRAM, 16 )
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xfffff)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x083fff) AM_MIRROR(0x01c000) AM_RAM AM_SHARE(3)
AM_RANGE(0x0a0000, 0x0a3fff) AM_MIRROR(0x01c000) AM_RAM AM_SHARE(4)
AM_RANGE(0x080000, 0x083fff) AM_MIRROR(0x01c000) AM_RAM AM_SHARE("share3")
AM_RANGE(0x0a0000, 0x0a3fff) AM_MIRROR(0x01c000) AM_RAM AM_SHARE("share4")
AM_RANGE(0x0e0000, 0x0e0007) AM_MIRROR(0x003ff8) AM_READWRITE(segaic16_multiply_1_r, segaic16_multiply_1_w)
AM_RANGE(0x0e4000, 0x0e401f) AM_MIRROR(0x003fe0) AM_READWRITE(segaic16_divide_1_r, segaic16_divide_1_w)
AM_RANGE(0x0e8000, 0x0e800f) AM_MIRROR(0x003ff0) AM_READWRITE(segaic16_compare_timer_1_r, segaic16_compare_timer_1_w)
AM_RANGE(0x0ec000, 0x0ecfff) AM_MIRROR(0x001000) AM_RAM AM_SHARE(5)
AM_RANGE(0x0ec000, 0x0ecfff) AM_MIRROR(0x001000) AM_RAM AM_SHARE("share5")
AM_RANGE(0x0ee000, 0x0effff) AM_READWRITE(segaic16_road_control_0_r, segaic16_road_control_0_w)
// AM_RANGE(0x0f0000, 0x0f3fff) AM_READWRITE(excs_r, excs_w)
ADDRESS_MAP_END

View File

@ -401,7 +401,7 @@ static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x082000, 0x083fff) AM_WRITE(sound_data_w)
AM_RANGE(0x084000, 0x08401f) AM_MIRROR(0x001fe0) AM_READWRITE(segaic16_divide_0_r, segaic16_divide_0_w)
// AM_RANGE(0x086000, 0x087fff) /DEA0
AM_RANGE(0x0c0000, 0x0cffff) AM_RAM AM_SHARE(1)
AM_RANGE(0x0c0000, 0x0cffff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x100000, 0x10001f) AM_READWRITE(io_chip_r, io_chip_w)
AM_RANGE(0x100040, 0x100047) AM_READWRITE(analog_r, analog_w)
AM_RANGE(0x1f0000, 0x1fffff) AM_RAM
@ -421,7 +421,7 @@ static ADDRESS_MAP_START( subx_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x080007) AM_MIRROR(0x001ff8) AM_READWRITE(segaic16_multiply_1_r, segaic16_multiply_1_w)
AM_RANGE(0x084000, 0x08401f) AM_MIRROR(0x001fe0) AM_READWRITE(segaic16_divide_1_r, segaic16_divide_1_w)
AM_RANGE(0x0c0000, 0x0cffff) AM_RAM AM_SHARE(1)
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)
@ -434,7 +434,7 @@ static ADDRESS_MAP_START( suby_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x080007) AM_MIRROR(0x001ff8) AM_READWRITE(segaic16_multiply_2_r, segaic16_multiply_2_w)
AM_RANGE(0x084000, 0x08401f) AM_MIRROR(0x001fe0) AM_READWRITE(segaic16_divide_2_r, segaic16_divide_2_w)
AM_RANGE(0x0c0000, 0x0cffff) AM_RAM AM_SHARE(1)
AM_RANGE(0x0c0000, 0x0cffff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x180000, 0x1807ff) AM_MIRROR(0x007800) AM_RAM AM_BASE(&segaic16_rotateram_0)
AM_RANGE(0x188000, 0x188fff) AM_MIRROR(0x007000) AM_RAM AM_BASE(&segaic16_spriteram_0)
AM_RANGE(0x190000, 0x193fff) AM_MIRROR(0x004000) AM_RAM_WRITE(segaic16_paletteram_w) AM_BASE(&segaic16_paletteram)

View File

@ -1095,9 +1095,9 @@ static ADDRESS_MAP_START( spi_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x000006d8, 0x000006db) AM_WRITE(ds2404_clk_w)
AM_RANGE(0x000006dc, 0x000006df) AM_READ(ds2404_data_r)
AM_RANGE(0x00000800, 0x0003ffff) AM_RAM AM_BASE(&spimainram)
AM_RANGE(0x00200000, 0x003fffff) AM_ROM AM_SHARE(2)
AM_RANGE(0x00200000, 0x003fffff) AM_ROM AM_SHARE("share2")
AM_RANGE(0x00a00000, 0x013fffff) AM_READ(soundrom_r)
AM_RANGE(0xffe00000, 0xffffffff) AM_ROM AM_REGION("user1", 0) AM_SHARE(2) /* ROM location in real-mode */
AM_RANGE(0xffe00000, 0xffffffff) AM_ROM AM_REGION("user1", 0) AM_SHARE("share2") /* ROM location in real-mode */
ADDRESS_MAP_END
static ADDRESS_MAP_START( spisound_map, ADDRESS_SPACE_PROGRAM, 8 )
@ -1183,10 +1183,10 @@ static ADDRESS_MAP_START( seibu386_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x0000060c, 0x0000060f) AM_READ(spi_controls2_r) /* Player controls (start) */
AM_RANGE(0x0000068c, 0x0000068f) AM_WRITE(eeprom_w)
AM_RANGE(0x00000800, 0x0003ffff) AM_RAM AM_BASE(&spimainram)
AM_RANGE(0x00200000, 0x003fffff) AM_ROM AM_SHARE(2)
AM_RANGE(0x00200000, 0x003fffff) AM_ROM AM_SHARE("share2")
AM_RANGE(0x01200000, 0x01200003) AM_DEVREADWRITE8("oki1", okim6295_r, okim6295_w, 0x000000ff)
AM_RANGE(0x01200004, 0x01200007) AM_DEVREADWRITE8("oki2", okim6295_r, okim6295_w, 0x000000ff)
AM_RANGE(0xffe00000, 0xffffffff) AM_ROM AM_REGION("user1", 0) AM_SHARE(2) /* ROM location in real-mode */
AM_RANGE(0xffe00000, 0xffffffff) AM_ROM AM_REGION("user1", 0) AM_SHARE("share2") /* ROM location in real-mode */
ADDRESS_MAP_END
static WRITE32_HANDLER(input_select_w)
@ -1210,8 +1210,8 @@ static ADDRESS_MAP_START( sys386f2_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x00000608, 0x0000060b) AM_READ(spi_unknown_r)
AM_RANGE(0x0000060c, 0x0000060f) AM_READ(spi_controls1_r) /* Player controls */
AM_RANGE(0x00000800, 0x0003ffff) AM_RAM AM_BASE(&spimainram)
AM_RANGE(0x00200000, 0x003fffff) AM_ROM AM_SHARE(2)
AM_RANGE(0xffe00000, 0xffffffff) AM_ROM AM_REGION("user1", 0) AM_SHARE(2) /* ROM location in real-mode */
AM_RANGE(0x00200000, 0x003fffff) AM_ROM AM_SHARE("share2")
AM_RANGE(0xffe00000, 0xffffffff) AM_ROM AM_REGION("user1", 0) AM_SHARE("share2") /* ROM location in real-mode */
ADDRESS_MAP_END

View File

@ -119,7 +119,7 @@ static WRITE8_DEVICE_HANDLER( friskyt_portB_w )
static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x77ff) AM_ROM
AM_RANGE(0x7800, 0x7fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x7800, 0x7fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x8820, 0x887f) AM_RAM AM_BASE_SIZE_GENERIC(spriteram)
AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(seicross_videoram_w) AM_BASE_GENERIC(videoram) /* video RAM */
AM_RANGE(0x9800, 0x981f) AM_RAM AM_BASE(&seicross_row_scroll)
@ -143,7 +143,7 @@ static ADDRESS_MAP_START( mcu_nvram_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x1000, 0x10ff) AM_RAM AM_BASE(&nvram) AM_SIZE(&nvram_size)
AM_RANGE(0x2000, 0x2000) AM_DEVWRITE("dac", dac_w)
AM_RANGE(0x8000, 0xf7ff) AM_ROM
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE(1)
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
static ADDRESS_MAP_START( mcu_no_nvram_map, ADDRESS_SPACE_PROGRAM, 8 )
@ -153,7 +153,7 @@ static ADDRESS_MAP_START( mcu_no_nvram_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x1006, 0x1006) AM_READ_PORT("DSW3") /* DSW3 */
AM_RANGE(0x2000, 0x2000) AM_DEVWRITE("dac", dac_w)
AM_RANGE(0x8000, 0xf7ff) AM_ROM
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE(1)
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END

View File

@ -1590,8 +1590,8 @@ static ADDRESS_MAP_START( tndrcade_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x800000, 0x800007) AM_WRITE(sub_ctrl_w) // Sub CPU Control?
AM_RANGE(0xa00000, 0xa00fff) AM_READWRITE(sharedram_68000_r,sharedram_68000_w) // Shared RAM
AM_RANGE(0xc00000, 0xc03fff) AM_RAM AM_BASE_GENERIC(spriteram2) // Sprites Code + X + Attr
AM_RANGE(0xe00000, 0xe03fff) AM_RAM AM_SHARE(1) // RAM (Mirrored?)
AM_RANGE(0xffc000, 0xffffff) AM_RAM AM_SHARE(1) // RAM (Mirrored?)
AM_RANGE(0xe00000, 0xe03fff) AM_RAM AM_SHARE("share1") // RAM (Mirrored?)
AM_RANGE(0xffc000, 0xffffff) AM_RAM AM_SHARE("share1") // RAM (Mirrored?)
ADDRESS_MAP_END

View File

@ -257,9 +257,9 @@ static ADDRESS_MAP_START( chinhero_main_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xb802, 0xb802) AM_READ_PORT("P2")
AM_RANGE(0xb803, 0xb803) AM_READ_PORT("P1")
AM_RANGE(0xc000, 0xc002) AM_WRITEONLY AM_BASE(&shangkid_videoreg)
AM_RANGE(0xd000, 0xdfff) AM_RAM_WRITE(shangkid_videoram_w) AM_BASE_GENERIC(videoram) AM_SHARE(1)
AM_RANGE(0xe000, 0xfdff) AM_RAM AM_SHARE(2)
AM_RANGE(0xfe00, 0xffff) AM_RAM AM_BASE_GENERIC(spriteram) AM_SHARE(3)
AM_RANGE(0xd000, 0xdfff) AM_RAM_WRITE(shangkid_videoram_w) AM_BASE_GENERIC(videoram) AM_SHARE("share1")
AM_RANGE(0xe000, 0xfdff) AM_RAM AM_SHARE("share2")
AM_RANGE(0xfe00, 0xffff) AM_RAM AM_BASE_GENERIC(spriteram) AM_SHARE("share3")
ADDRESS_MAP_END
static ADDRESS_MAP_START( shangkid_main_map, ADDRESS_SPACE_PROGRAM, 8 )
@ -278,9 +278,9 @@ static ADDRESS_MAP_START( shangkid_main_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xb802, 0xb802) AM_READ_PORT("P2")
AM_RANGE(0xb803, 0xb803) AM_READ_PORT("P1")
AM_RANGE(0xc000, 0xc002) AM_WRITEONLY AM_BASE(&shangkid_videoreg)
AM_RANGE(0xd000, 0xdfff) AM_RAM_WRITE(shangkid_videoram_w) AM_BASE_GENERIC(videoram) AM_SHARE(1)
AM_RANGE(0xe000, 0xfdff) AM_RAM AM_SHARE(2)
AM_RANGE(0xfe00, 0xffff) AM_RAM AM_BASE_GENERIC(spriteram) AM_SHARE(3)
AM_RANGE(0xd000, 0xdfff) AM_RAM_WRITE(shangkid_videoram_w) AM_BASE_GENERIC(videoram) AM_SHARE("share1")
AM_RANGE(0xe000, 0xfdff) AM_RAM AM_SHARE("share2")
AM_RANGE(0xfe00, 0xffff) AM_RAM AM_BASE_GENERIC(spriteram) AM_SHARE("share3")
ADDRESS_MAP_END
/***************************************************************************************/
@ -298,9 +298,9 @@ static ADDRESS_MAP_START( chinhero_bbx_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xb801, 0xb801) AM_READ_PORT("SYSTEM")
AM_RANGE(0xb802, 0xb802) AM_READ_PORT("P2")
AM_RANGE(0xb803, 0xb803) AM_READ_PORT("P1")
AM_RANGE(0xd000, 0xdfff) AM_RAM_WRITE(shangkid_videoram_w) AM_SHARE(1)
AM_RANGE(0xe000, 0xfdff) AM_RAM AM_SHARE(2)
AM_RANGE(0xfe00, 0xffff) AM_RAM AM_SHARE(3)
AM_RANGE(0xd000, 0xdfff) AM_RAM_WRITE(shangkid_videoram_w) AM_SHARE("share1")
AM_RANGE(0xe000, 0xfdff) AM_RAM AM_SHARE("share2")
AM_RANGE(0xfe00, 0xffff) AM_RAM AM_SHARE("share3")
ADDRESS_MAP_END
static ADDRESS_MAP_START( shangkid_bbx_map, ADDRESS_SPACE_PROGRAM, 8 )
@ -317,9 +317,9 @@ static ADDRESS_MAP_START( shangkid_bbx_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xb801, 0xb801) AM_READ_PORT("SYSTEM")
AM_RANGE(0xb802, 0xb802) AM_READ_PORT("P2")
AM_RANGE(0xb803, 0xb803) AM_READ_PORT("P1")
AM_RANGE(0xd000, 0xdfff) AM_RAM_WRITE(shangkid_videoram_w) AM_SHARE(1)
AM_RANGE(0xe000, 0xfdff) AM_RAM AM_SHARE(2)
AM_RANGE(0xfe00, 0xffff) AM_RAM AM_SHARE(3)
AM_RANGE(0xd000, 0xdfff) AM_RAM_WRITE(shangkid_videoram_w) AM_SHARE("share1")
AM_RANGE(0xe000, 0xfdff) AM_RAM AM_SHARE("share2")
AM_RANGE(0xfe00, 0xffff) AM_RAM AM_SHARE("share3")
ADDRESS_MAP_END
static ADDRESS_MAP_START( chinhero_bbx_portmap, ADDRESS_SPACE_IO, 8 )

View File

@ -280,8 +280,8 @@ static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x5800, 0x5800) AM_READ_PORT("P2") AM_WRITE(shougi_watchdog_reset_w) /* game won't boot if watchdog doesn't work */
AM_RANGE(0x6000, 0x6000) AM_DEVWRITE("aysnd", ay8910_address_w)
AM_RANGE(0x6800, 0x6800) AM_DEVWRITE("aysnd", ay8910_data_w)
AM_RANGE(0x7000, 0x73ff) AM_RAM AM_SHARE(1) /* 2114 x 2 (0x400 x 4bit each) */
AM_RANGE(0x7800, 0x7bff) AM_RAM AM_SHARE(2) /* 2114 x 2 (0x400 x 4bit each) */
AM_RANGE(0x7000, 0x73ff) AM_RAM AM_SHARE("share1") /* 2114 x 2 (0x400 x 4bit each) */
AM_RANGE(0x7800, 0x7bff) AM_RAM AM_SHARE("share2") /* 2114 x 2 (0x400 x 4bit each) */
AM_RANGE(0x8000, 0xffff) AM_RAM AM_BASE_GENERIC(videoram) AM_SIZE_GENERIC(videoram) /* 4116 x 16 (32K) */
ADDRESS_MAP_END
@ -304,11 +304,11 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( sub_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x63ff) AM_RAM AM_SHARE(2) /* 2114 x 2 (0x400 x 4bit each) */
AM_RANGE(0x6000, 0x63ff) AM_RAM AM_SHARE("share2") /* 2114 x 2 (0x400 x 4bit each) */
ADDRESS_MAP_END
static ADDRESS_MAP_START( mcu_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE(1)
AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END

View File

@ -305,8 +305,8 @@ static ADDRESS_MAP_START( 68030_1_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x00000000, 0x001fffff) AM_ROM
AM_RANGE(0x10000000, 0x10000003) AM_WRITE( skimaxx_sub_ctrl_w )
AM_RANGE(0x10100000, 0x1010000f) AM_READWRITE(m68k_tms_r, m68k_tms_w)//AM_NOP
// AM_RANGE(0x10180000, 0x10187fff) AM_RAM AM_SHARE(1)
AM_RANGE(0x10180000, 0x1018ffff) AM_RAM AM_SHARE(1) // above 10188000 accessed at level end (game bug?)
// AM_RANGE(0x10180000, 0x10187fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x10180000, 0x1018ffff) AM_RAM AM_SHARE("share1") // above 10188000 accessed at level end (game bug?)
AM_RANGE(0x20000000, 0x20000003) AM_READNOP // watchdog_r?
AM_RANGE(0x20000010, 0x20000013) AM_DEVREADWRITE8("oki1", okim6295_r, okim6295_w, 0x00ff) // left
@ -343,11 +343,11 @@ static ADDRESS_MAP_START( 68030_2_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x40000000, 0x40000003) AM_WRITE( skimaxx_fpga_ctrl_w ) AM_BASE( &skimaxx_fpga_ctrl )
AM_RANGE(0x50000000, 0x5007ffff) AM_RAMBANK("bank1") // background ram allocated here at video_start (skimaxx_bg_buffer_back/front)
// AM_RANGE(0xfffc0000, 0xfffc7fff) AM_RAM AM_SHARE(1)
AM_RANGE(0xfffc0000, 0xfffcffff) AM_RAM AM_SHARE(1)
// AM_RANGE(0xfffc0000, 0xfffc7fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xfffc0000, 0xfffcffff) AM_RAM AM_SHARE("share1")
// AM_RANGE(0xfffe0000, 0xffffffff) AM_RAM // I think this is banked with the shared RAM? (see CPU sync routines)
AM_RANGE(0xfffe0010, 0xfffeffff) AM_RAM // HACK
AM_RANGE(0xfffe0000, 0xfffeffff) AM_RAM AM_SHARE(1) // HACK
AM_RANGE(0xfffe0000, 0xfffeffff) AM_RAM AM_SHARE("share1") // HACK
AM_RANGE(0xffff0000, 0xffffffff) AM_RAM
ADDRESS_MAP_END

View File

@ -411,7 +411,7 @@ int getstar_id;
static ADDRESS_MAP_START( perfrman_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x880f) AM_RAM AM_SHARE(1)
AM_RANGE(0x8800, 0x880f) AM_RAM AM_SHARE("share1")
AM_RANGE(0x8810, 0x8fff) AM_RAMBANK("bank1") /* Shared RAM with sound CPU */
AM_RANGE(0x9000, 0x97ff) AM_RAM_WRITE(slapfight_videoram_w) AM_BASE_GENERIC(videoram) AM_SIZE_GENERIC(videoram)
AM_RANGE(0x9800, 0x9fff) AM_RAM_WRITE(slapfight_colorram_w) AM_BASE_GENERIC(colorram)
@ -421,7 +421,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( tigerh_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xc800, 0xc80f) AM_RAM AM_SHARE(1)
AM_RANGE(0xc800, 0xc80f) AM_RAM AM_SHARE("share1")
AM_RANGE(0xc810, 0xcfff) AM_RAM
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(slapfight_videoram_w) AM_BASE_GENERIC(videoram) AM_SIZE_GENERIC(videoram)
AM_RANGE(0xd800, 0xdfff) AM_RAM_WRITE(slapfight_colorram_w) AM_BASE_GENERIC(colorram)
@ -437,7 +437,7 @@ static ADDRESS_MAP_START( slapfght_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xc800, 0xc80f) AM_RAM AM_SHARE(1)
AM_RANGE(0xc800, 0xc80f) AM_RAM AM_SHARE("share1")
AM_RANGE(0xc810, 0xcfff) AM_RAM
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(slapfight_videoram_w) AM_BASE_GENERIC(videoram) AM_SIZE_GENERIC(videoram)
AM_RANGE(0xd800, 0xdfff) AM_RAM_WRITE(slapfight_colorram_w) AM_BASE_GENERIC(colorram)
@ -454,7 +454,7 @@ static ADDRESS_MAP_START( slapbtuk_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xc800, 0xc80f) AM_RAM AM_SHARE(1)
AM_RANGE(0xc800, 0xc80f) AM_RAM AM_SHARE("share1")
AM_RANGE(0xc810, 0xcfff) AM_RAM
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(slapfight_videoram_w) AM_BASE_GENERIC(videoram) AM_SIZE_GENERIC(videoram)
AM_RANGE(0xd800, 0xdfff) AM_RAM_WRITE(slapfight_colorram_w) AM_BASE_GENERIC(colorram)
@ -518,7 +518,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( perfrman_sound_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x8800, 0x880f) AM_RAM AM_SHARE(1)
AM_RANGE(0x8800, 0x880f) AM_RAM AM_SHARE("share1")
AM_RANGE(0x8810, 0x8fff) AM_RAMBANK("bank1") /* Shared RAM with main CPU */
AM_RANGE(0xa080, 0xa080) AM_DEVWRITE("ay1", ay8910_address_w)
AM_RANGE(0xa081, 0xa081) AM_DEVREAD("ay1", ay8910_r)
@ -540,7 +540,7 @@ static ADDRESS_MAP_START( slapfght_sound_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xa092, 0xa092) AM_DEVWRITE("ay2", ay8910_data_w)
AM_RANGE(0xa0e0, 0xa0e0) AM_WRITE(getstar_sh_intenable_w) /* maybe a0f0 also -LE */
// AM_RANGE(0xa0f0, 0xa0f0) AM_WRITENOP
AM_RANGE(0xc800, 0xc80f) AM_RAM AM_SHARE(1)
AM_RANGE(0xc800, 0xc80f) AM_RAM AM_SHARE("share1")
AM_RANGE(0xc810, 0xcfff) AM_RAM
AM_RANGE(0xd000, 0xffff) AM_RAM
ADDRESS_MAP_END

View File

@ -842,12 +842,12 @@ static ADDRESS_MAP_START( marvins_cpuA_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x8500, 0x8500) AM_READ_PORT("DSW2")
AM_RANGE(0x8600, 0x8600) AM_WRITE(marvins_flipscreen_w)
AM_RANGE(0x8700, 0x8700) AM_READWRITE(snk_cpuB_nmi_trigger_r, snk_cpuA_nmi_ack_w)
AM_RANGE(0xc000, 0xcfff) AM_RAM AM_BASE_GENERIC(spriteram) AM_SHARE(1) // + work ram
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(marvins_fg_videoram_w) AM_SHARE(2) AM_BASE(&snk_fg_videoram)
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE(3)
AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE(4) AM_BASE(&snk_bg_videoram)
AM_RANGE(0xe800, 0xefff) AM_RAM AM_SHARE(5)
AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE(6) AM_BASE(&snk_tx_videoram) // + work RAM
AM_RANGE(0xc000, 0xcfff) AM_RAM AM_BASE_GENERIC(spriteram) AM_SHARE("share1") // + work ram
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(marvins_fg_videoram_w) AM_SHARE("share2") AM_BASE(&snk_fg_videoram)
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("share3")
AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("share4") AM_BASE(&snk_bg_videoram)
AM_RANGE(0xe800, 0xefff) AM_RAM AM_SHARE("share5")
AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share6") AM_BASE(&snk_tx_videoram) // + work RAM
AM_RANGE(0xf800, 0xf800) AM_WRITE(snk_sp16_scrolly_w)
AM_RANGE(0xf900, 0xf900) AM_WRITE(snk_sp16_scrollx_w)
AM_RANGE(0xfa00, 0xfa00) AM_WRITE(snk_fg_scrolly_w)
@ -861,12 +861,12 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( marvins_cpuB_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x8700, 0x8700) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w)
AM_RANGE(0xc000, 0xcfff) AM_RAM AM_SHARE(1)
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(marvins_fg_videoram_w) AM_SHARE(2)
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE(3)
AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE(4)
AM_RANGE(0xe800, 0xefff) AM_RAM AM_SHARE(5)
AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE(6)
AM_RANGE(0xc000, 0xcfff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(marvins_fg_videoram_w) AM_SHARE("share2")
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("share3")
AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("share4")
AM_RANGE(0xe800, 0xefff) AM_RAM AM_SHARE("share5")
AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share6")
AM_RANGE(0xf800, 0xf800) AM_WRITE(snk_sp16_scrolly_w)
AM_RANGE(0xf900, 0xf900) AM_WRITE(snk_sp16_scrollx_w)
AM_RANGE(0xfa00, 0xfa00) AM_WRITE(snk_fg_scrolly_w)
@ -889,13 +889,13 @@ static ADDRESS_MAP_START( madcrash_cpuA_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x8500, 0x8500) AM_READ_PORT("DSW2")
AM_RANGE(0x8600, 0x8600) AM_MIRROR(0xff) AM_WRITE(marvins_flipscreen_w)
AM_RANGE(0x8700, 0x8700) AM_READWRITE(snk_cpuB_nmi_trigger_r, snk_cpuA_nmi_ack_w)
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_BASE_GENERIC(spriteram) AM_SHARE(1) // + work ram
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_BASE_GENERIC(spriteram) AM_SHARE("share1") // + work ram
AM_RANGE(0xc800, 0xc800) AM_MIRROR(0xff) AM_WRITE(marvins_palette_bank_w)
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE(2) AM_BASE(&snk_bg_videoram)
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE(3)
AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(marvins_fg_videoram_w) AM_SHARE(4) AM_BASE(&snk_fg_videoram)
AM_RANGE(0xe800, 0xefff) AM_RAM AM_SHARE(5)
AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE(6) AM_BASE(&snk_tx_videoram) // + work RAM
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("share2") AM_BASE(&snk_bg_videoram)
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("share3")
AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(marvins_fg_videoram_w) AM_SHARE("share4") AM_BASE(&snk_fg_videoram)
AM_RANGE(0xe800, 0xefff) AM_RAM AM_SHARE("share5")
AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share6") AM_BASE(&snk_tx_videoram) // + work RAM
AM_RANGE(0xf800, 0xf800) AM_MIRROR(0xff) AM_WRITE(snk_bg_scrolly_w)
AM_RANGE(0xf900, 0xf900) AM_MIRROR(0xff) AM_WRITE(snk_bg_scrollx_w)
AM_RANGE(0xfa00, 0xfa00) AM_MIRROR(0xff) AM_WRITE(snk_sprite_split_point_w)
@ -910,9 +910,9 @@ static ADDRESS_MAP_START( madcrash_cpuB_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x8700, 0x8700) AM_WRITE(snk_cpuB_nmi_ack_w) // vangrd2
AM_RANGE(0x0000, 0x9fff) AM_ROM
AM_RANGE(0xa000, 0xa000) AM_WRITE(snk_cpuB_nmi_ack_w) // madcrash
AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(marvins_fg_videoram_w) AM_SHARE(4)
AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE(5)
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE(6)
AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(marvins_fg_videoram_w) AM_SHARE("share4")
AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE("share5")
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share6")
AM_RANGE(0xd800, 0xd800) AM_WRITE(snk_bg_scrolly_w)
AM_RANGE(0xd900, 0xd900) AM_WRITE(snk_bg_scrollx_w)
AM_RANGE(0xda00, 0xda00) AM_WRITE(snk_sprite_split_point_w)
@ -921,9 +921,9 @@ static ADDRESS_MAP_START( madcrash_cpuB_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xdd00, 0xdd00) AM_WRITE(snk_sp16_scrollx_w)
AM_RANGE(0xde00, 0xde00) AM_WRITE(snk_fg_scrolly_w)
AM_RANGE(0xdf00, 0xdf00) AM_WRITE(snk_fg_scrollx_w)
AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE(1)
AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE(2)
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE(3)
AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("share2")
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("share3")
ADDRESS_MAP_END
static ADDRESS_MAP_START( madcrush_cpuA_map, ADDRESS_SPACE_PROGRAM, 8 )
@ -936,13 +936,13 @@ static ADDRESS_MAP_START( madcrush_cpuA_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x8500, 0x8500) AM_READ_PORT("DSW2")
AM_RANGE(0x8600, 0x8600) AM_MIRROR(0xff) AM_WRITE(marvins_flipscreen_w)
AM_RANGE(0x8700, 0x8700) AM_READWRITE(snk_cpuB_nmi_trigger_r, snk_cpuA_nmi_ack_w)
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_BASE_GENERIC(spriteram) AM_SHARE(1) // + work ram
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(marvins_fg_videoram_w) AM_SHARE(4) AM_BASE(&snk_fg_videoram)
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_BASE_GENERIC(spriteram) AM_SHARE("share1") // + work ram
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(marvins_fg_videoram_w) AM_SHARE("share4") AM_BASE(&snk_fg_videoram)
AM_RANGE(0xc800, 0xc800) AM_MIRROR(0xff) AM_WRITE(marvins_palette_bank_w)
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE(5)
AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE(2)AM_BASE(&snk_bg_videoram)
AM_RANGE(0xe800, 0xefff) AM_RAM AM_SHARE(3)
AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE(6) AM_BASE(&snk_tx_videoram)
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("share5")
AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("share2")AM_BASE(&snk_bg_videoram)
AM_RANGE(0xe800, 0xefff) AM_RAM AM_SHARE("share3")
AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share6") AM_BASE(&snk_tx_videoram)
AM_RANGE(0xf800, 0xf800) AM_WRITE(snk_sp16_scrolly_w)
AM_RANGE(0xf900, 0xf900) AM_WRITE(snk_sp16_scrollx_w)
AM_RANGE(0xfa00, 0xfa00) AM_WRITE(snk_fg_scrolly_w)
@ -956,13 +956,13 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( madcrush_cpuB_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x9fff) AM_ROM
AM_RANGE(0xa000, 0xa000) AM_WRITE(snk_cpuB_nmi_ack_w)
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE(1) // + work ram
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("share1") // + work ram
AM_RANGE(0xc800, 0xc800) AM_MIRROR(0xff) AM_WRITE(marvins_palette_bank_w)
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(marvins_fg_videoram_w) AM_SHARE(4)
AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE(5)
AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE(2) // ??
AM_RANGE(0xe800, 0xefff) AM_RAM AM_SHARE(3)
AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE(6)
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(marvins_fg_videoram_w) AM_SHARE("share4")
AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE("share5")
AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("share2") // ??
AM_RANGE(0xe800, 0xefff) AM_RAM AM_SHARE("share3")
AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share6")
AM_RANGE(0xf800, 0xf800) AM_WRITE(snk_sp16_scrolly_w)
AM_RANGE(0xf900, 0xf900) AM_WRITE(snk_sp16_scrollx_w)
AM_RANGE(0xfa00, 0xfa00) AM_WRITE(snk_fg_scrolly_w)
@ -989,18 +989,18 @@ static ADDRESS_MAP_START( jcross_cpuA_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xd500, 0xd500) AM_WRITE(snk_sp16_scrollx_w)
AM_RANGE(0xd600, 0xd600) AM_WRITE(snk_bg_scrolly_w)
AM_RANGE(0xd700, 0xd700) AM_WRITE(snk_bg_scrollx_w)
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_BASE_GENERIC(spriteram) AM_SHARE(1) // + work ram
AM_RANGE(0xe000, 0xefff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE(2) AM_BASE(&snk_bg_videoram)
AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE(3) AM_BASE(&snk_tx_videoram) // + work RAM
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_BASE_GENERIC(spriteram) AM_SHARE("share1") // + work ram
AM_RANGE(0xe000, 0xefff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("share2") AM_BASE(&snk_bg_videoram)
AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share3") AM_BASE(&snk_tx_videoram) // + work RAM
AM_RANGE(0xffff, 0xffff) AM_WRITENOP // simply a program patch to not write to two not existing video registers?
ADDRESS_MAP_END
static ADDRESS_MAP_START( jcross_cpuB_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xa700, 0xa700) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w)
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE(1)
AM_RANGE(0xc800, 0xd7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE(2)
AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE(3)
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xc800, 0xd7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("share2")
AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share3")
ADDRESS_MAP_END
@ -1020,25 +1020,25 @@ static ADDRESS_MAP_START( sgladiat_cpuA_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xd500, 0xd500) AM_WRITE(snk_sp16_scrollx_w)
AM_RANGE(0xd600, 0xd600) AM_WRITE(snk_bg_scrolly_w)
AM_RANGE(0xd700, 0xd700) AM_WRITE(snk_bg_scrollx_w)
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_BASE_GENERIC(spriteram) AM_SHARE(1) // + work ram
AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE(2) AM_BASE(&snk_bg_videoram)
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_BASE_GENERIC(spriteram) AM_SHARE("share1") // + work ram
AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("share2") AM_BASE(&snk_bg_videoram)
AM_RANGE(0xe800, 0xefff) AM_RAM
AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE(3) AM_BASE(&snk_tx_videoram) // + work RAM
AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share3") AM_BASE(&snk_tx_videoram) // + work RAM
ADDRESS_MAP_END
static ADDRESS_MAP_START( sgladiat_cpuB_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xa000, 0xa000) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w)
AM_RANGE(0xa600, 0xa600) AM_WRITE(sgladiat_flipscreen_w) // flip screen, bg palette bank
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE(1)
AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE(2)
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("share2")
AM_RANGE(0xda00, 0xda00) AM_WRITENOP // unknown
AM_RANGE(0xdb00, 0xdb00) AM_WRITE(sgladiat_scroll_msb_w)
AM_RANGE(0xdc00, 0xdc00) AM_WRITE(snk_sp16_scrolly_w)
AM_RANGE(0xdd00, 0xdd00) AM_WRITE(snk_sp16_scrollx_w)
AM_RANGE(0xde00, 0xde00) AM_WRITE(snk_bg_scrolly_w)
AM_RANGE(0xdf00, 0xdf00) AM_WRITE(snk_bg_scrollx_w)
AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE(3)
AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share3")
ADDRESS_MAP_END
@ -1057,17 +1057,17 @@ static ADDRESS_MAP_START( hal21_cpuA_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xd500, 0xd500) AM_WRITE(snk_sp16_scrollx_w)
AM_RANGE(0xd600, 0xd600) AM_WRITE(snk_bg_scrolly_w)
AM_RANGE(0xd700, 0xd700) AM_WRITE(snk_bg_scrollx_w)
AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_BASE_GENERIC(spriteram) AM_SHARE(1) // + work ram
AM_RANGE(0xe800, 0xf7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE(2) AM_BASE(&snk_bg_videoram)
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE(3) AM_BASE(&snk_tx_videoram) // + work RAM
AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_BASE_GENERIC(spriteram) AM_SHARE("share1") // + work ram
AM_RANGE(0xe800, 0xf7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("share2") AM_BASE(&snk_bg_videoram)
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share3") AM_BASE(&snk_tx_videoram) // + work RAM
ADDRESS_MAP_END
static ADDRESS_MAP_START( hal21_cpuB_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x9fff) AM_ROM
AM_RANGE(0xa000, 0xa000) AM_WRITE(snk_cpuB_nmi_ack_w)
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE(1)
AM_RANGE(0xd000, 0xdfff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE(2)
AM_RANGE(0xe800, 0xefff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE(3)
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xd000, 0xdfff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("share2")
AM_RANGE(0xe800, 0xefff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share3")
ADDRESS_MAP_END
@ -1087,19 +1087,19 @@ static ADDRESS_MAP_START( aso_cpuA_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xcc00, 0xcc00) AM_WRITE(snk_bg_scrollx_w)
AM_RANGE(0xce00, 0xce00) AM_WRITENOP // always 05?
AM_RANGE(0xcf00, 0xcf00) AM_WRITE(aso_bg_bank_w) // tile and palette bank
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE(1)
AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE(2) AM_BASE_GENERIC(spriteram) // + work ram
AM_RANGE(0xe800, 0xf7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE(3) AM_BASE(&snk_bg_videoram)
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE(4) AM_BASE(&snk_tx_videoram) // + work RAM
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("share2") AM_BASE_GENERIC(spriteram) // + work ram
AM_RANGE(0xe800, 0xf7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("share3") AM_BASE(&snk_bg_videoram)
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share4") AM_BASE(&snk_tx_videoram) // + work RAM
ADDRESS_MAP_END
static ADDRESS_MAP_START( aso_cpuB_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc000) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w)
AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE(1)
AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_SHARE(2)
AM_RANGE(0xd800, 0xe7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE(3)
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE(4)
AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_SHARE("share2")
AM_RANGE(0xd800, 0xe7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("share3")
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share4")
ADDRESS_MAP_END
@ -1121,19 +1121,19 @@ static ADDRESS_MAP_START( tnk3_cpuA_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xcb00, 0xcb00) AM_WRITE(snk_bg_scrolly_w)
AM_RANGE(0xcc00, 0xcc00) AM_WRITE(snk_bg_scrollx_w)
AM_RANGE(0xcf00, 0xcf00) AM_WRITENOP // fitegolf/countryc only. Either 0 or 1. Video related?
AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_SHARE(1) AM_BASE_GENERIC(spriteram) // + work ram
AM_RANGE(0xd800, 0xf7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE(2) AM_BASE(&snk_bg_videoram)
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE(3) AM_BASE(&snk_tx_videoram) // + work RAM
AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_SHARE("share1") AM_BASE_GENERIC(spriteram) // + work ram
AM_RANGE(0xd800, 0xf7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE("share2") AM_BASE(&snk_bg_videoram)
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share3") AM_BASE(&snk_tx_videoram) // + work RAM
ADDRESS_MAP_END
static ADDRESS_MAP_START( tnk3_cpuB_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc000) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w) // tnk3, athena
AM_RANGE(0xc700, 0xc700) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w) // fitegolf
AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE(1)
AM_RANGE(0xd000, 0xefff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE(2)
AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xd000, 0xefff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE("share2")
AM_RANGE(0xf000, 0xf7ff) AM_RAM
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE(3)
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share3")
ADDRESS_MAP_END
@ -1167,9 +1167,9 @@ static ADDRESS_MAP_START( ikari_cpuA_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xcea0, 0xcea0) AM_READ(hardflags6_r)
AM_RANGE(0xcee0, 0xcee0) AM_READ(hardflags7_r)
// note the mirror. ikari and victroad use d800, ikarijp uses d000
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_MIRROR(0x0800) AM_SHARE(2) AM_BASE(&snk_bg_videoram)
AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE(3) AM_BASE_GENERIC(spriteram) // + work ram
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE(4) AM_BASE(&snk_tx_videoram) // + work RAM
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_MIRROR(0x0800) AM_SHARE("share2") AM_BASE(&snk_bg_videoram)
AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE("share3") AM_BASE_GENERIC(spriteram) // + work ram
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share4") AM_BASE(&snk_tx_videoram) // + work RAM
ADDRESS_MAP_END
static ADDRESS_MAP_START( ikari_cpuB_map, ADDRESS_SPACE_PROGRAM, 8 )
@ -1186,9 +1186,9 @@ static ADDRESS_MAP_START( ikari_cpuB_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xce80, 0xce80) AM_READ(hardflags5_r)
AM_RANGE(0xcea0, 0xcea0) AM_READ(hardflags6_r)
AM_RANGE(0xcee0, 0xcee0) AM_READ(hardflags7_r)
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_MIRROR(0x0800) AM_SHARE(2)
AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE(3)
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE(4)
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_MIRROR(0x0800) AM_SHARE("share2")
AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE("share3")
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share4")
ADDRESS_MAP_END
@ -1230,10 +1230,10 @@ static ADDRESS_MAP_START( bermudat_cpuA_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xccd0, 0xccd0) AM_READ(turbocheck32_2_r)
AM_RANGE(0xcce0, 0xcce0) AM_READ(turbocheck32_3_r)
AM_RANGE(0xccf0, 0xccf0) AM_READ(turbocheck32_4_r)
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE(1) AM_BASE(&snk_bg_videoram)
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE(2)
AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE(3) AM_BASE_GENERIC(spriteram) // + work ram
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE(4) AM_BASE(&snk_tx_videoram) // + work RAM
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE("share1") AM_BASE(&snk_bg_videoram)
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("share2")
AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE("share3") AM_BASE_GENERIC(spriteram) // + work ram
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share4") AM_BASE(&snk_tx_videoram) // + work RAM
ADDRESS_MAP_END
static ADDRESS_MAP_START( bermudat_cpuB_map, ADDRESS_SPACE_PROGRAM, 8 )
@ -1248,10 +1248,10 @@ static ADDRESS_MAP_START( bermudat_cpuB_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xc980, 0xc980) AM_WRITE(snk_sp32_scrolly_w)
AM_RANGE(0xc9c0, 0xc9c0) AM_WRITE(snk_sp32_scrollx_w)
AM_RANGE(0xca80, 0xca80) AM_WRITE(gwara_sp_scroll_msb_w)
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE(1)
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE(2)
AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE(3)
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE(4)
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE("share1")
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("share2")
AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE("share3")
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share4")
ADDRESS_MAP_END
@ -1276,20 +1276,20 @@ static ADDRESS_MAP_START( gwar_cpuA_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xca00, 0xca00) AM_WRITENOP // always 0?
AM_RANGE(0xca40, 0xca40) AM_WRITENOP // always 0?
AM_RANGE(0xcac0, 0xcac0) AM_WRITE(snk_sprite_split_point_w)
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE(1) AM_BASE(&snk_bg_videoram)
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE(2)
AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE(3) AM_BASE_GENERIC(spriteram) // + work ram
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE(4) AM_BASE(&snk_tx_videoram) // + work RAM
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE("share1") AM_BASE(&snk_bg_videoram)
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("share2")
AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE("share3") AM_BASE_GENERIC(spriteram) // + work ram
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share4") AM_BASE(&snk_tx_videoram) // + work RAM
ADDRESS_MAP_END
static ADDRESS_MAP_START( gwar_cpuB_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc000) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w)
AM_RANGE(0xc8c0, 0xc8c0) AM_WRITE(gwar_tx_bank_w) // char and palette bank
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE(1)
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE(2)
AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE(3)
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE(4)
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE("share1")
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("share2")
AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE("share3")
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share4")
ADDRESS_MAP_END
@ -1303,10 +1303,10 @@ static ADDRESS_MAP_START( gwara_cpuA_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xc500, 0xc500) AM_READ_PORT("DSW1")
AM_RANGE(0xc600, 0xc600) AM_READ_PORT("DSW2")
AM_RANGE(0xc700, 0xc700) AM_READWRITE(snk_cpuB_nmi_trigger_r, snk_cpuA_nmi_ack_w)
AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE(1) AM_BASE(&snk_tx_videoram) // + work RAM
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE(2) AM_BASE(&snk_bg_videoram)
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE(3)
AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE(4) AM_BASE_GENERIC(spriteram) // + work ram
AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share1") AM_BASE(&snk_tx_videoram) // + work RAM
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE("share2") AM_BASE(&snk_bg_videoram)
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("share3")
AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE("share4") AM_BASE_GENERIC(spriteram) // + work ram
AM_RANGE(0xf800, 0xf800) AM_WRITE(snk_bg_scrolly_w)
AM_RANGE(0xf840, 0xf840) AM_WRITE(snk_bg_scrollx_w)
AM_RANGE(0xf880, 0xf880) AM_WRITE(gwara_videoattrs_w) // flip screen, scroll msb
@ -1322,10 +1322,10 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( gwara_cpuB_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc000) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w)
AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE(1)
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE(2)
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE(3)
AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE(4) AM_BASE_GENERIC(spriteram) // + work ram
AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share1")
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE("share2")
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("share3")
AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE("share4") AM_BASE_GENERIC(spriteram) // + work ram
AM_RANGE(0xf8c0, 0xf8c0) AM_WRITE(gwar_tx_bank_w) // char and palette bank
ADDRESS_MAP_END
@ -1354,10 +1354,10 @@ static ADDRESS_MAP_START( tdfever_cpuA_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xc900, 0xc900) AM_WRITE(tdfever_sp_scroll_msb_w)
AM_RANGE(0xc980, 0xc980) AM_WRITE(snk_sp32_scrolly_w)
AM_RANGE(0xc9c0, 0xc9c0) AM_WRITE(snk_sp32_scrollx_w)
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE(1) AM_BASE(&snk_bg_videoram)
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE(2)
AM_RANGE(0xe000, 0xf7ff) AM_RAM_WRITE(tdfever_spriteram_w) AM_SHARE(3) AM_BASE_GENERIC(spriteram) // + work ram
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE(4) AM_BASE(&snk_tx_videoram) // + work RAM
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE("share1") AM_BASE(&snk_bg_videoram)
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("share2")
AM_RANGE(0xe000, 0xf7ff) AM_RAM_WRITE(tdfever_spriteram_w) AM_SHARE("share3") AM_BASE_GENERIC(spriteram) // + work ram
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share4") AM_BASE(&snk_tx_videoram) // + work RAM
ADDRESS_MAP_END
static ADDRESS_MAP_START( tdfever_cpuB_map, ADDRESS_SPACE_PROGRAM, 8 )
@ -1365,10 +1365,10 @@ static ADDRESS_MAP_START( tdfever_cpuB_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xc000, 0xc000) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w) // tdfever, tdfever2
AM_RANGE(0xc700, 0xc700) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w) // fsoccer
AM_RANGE(0xc8c0, 0xc8c0) AM_WRITE(gwar_tx_bank_w) // char and palette bank
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE(1)
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE(2)
AM_RANGE(0xe000, 0xf7ff) AM_RAM_WRITE(tdfever_spriteram_w) AM_SHARE(3)
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE(4)
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE("share1")
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("share2")
AM_RANGE(0xe000, 0xf7ff) AM_RAM_WRITE(tdfever_spriteram_w) AM_SHARE("share3")
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share4")
ADDRESS_MAP_END
/***********************************************************************/

View File

@ -110,7 +110,7 @@ static READ8_HANDLER( soundcpu_status_r )
static ADDRESS_MAP_START( maincpu_mem_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xdfff) AM_RAM AM_MIRROR(0x1800) AM_SHARE(1)
AM_RANGE(0xc000, 0xdfff) AM_RAM AM_MIRROR(0x1800) AM_SHARE("share1")
AM_RANGE(0xe000, 0xffff) AM_RAM
ADDRESS_MAP_END
@ -211,7 +211,7 @@ static READ8_HANDLER(subcpu_status_r)
static ADDRESS_MAP_START( subcpu_mem_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x1fff) AM_READWRITE(subcpu_status_r,subcpu_status_w)
AM_RANGE(0x2000, 0x77ff) AM_RAM
AM_RANGE(0x7800, 0x7fff) AM_RAM AM_SHARE(1) /* upper 0x800 of 6264 is shared with main cpu */
AM_RANGE(0x7800, 0x7fff) AM_RAM AM_SHARE("share1") /* upper 0x800 of 6264 is shared with main cpu */
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END

View File

@ -74,7 +74,7 @@ static WRITE8_HANDLER( speedbal_coincounter_w )
static ADDRESS_MAP_START( main_cpu_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0xdbff) AM_ROM
AM_RANGE(0xdc00, 0xdfff) AM_RAM AM_SHARE(1) // shared with SOUND
AM_RANGE(0xdc00, 0xdfff) AM_RAM AM_SHARE("share1") // shared with SOUND
AM_RANGE(0xe000, 0xe1ff) AM_RAM_WRITE(speedbal_background_videoram_w) AM_BASE(&speedbal_background_videoram)
AM_RANGE(0xe800, 0xefff) AM_RAM_WRITE(speedbal_foreground_videoram_w) AM_BASE(&speedbal_foreground_videoram)
AM_RANGE(0xf000, 0xf5ff) AM_RAM_WRITE(paletteram_RRRRGGGGBBBBxxxx_be_w) AM_BASE_GENERIC(paletteram)
@ -95,7 +95,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( sound_cpu_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xd000, 0xdbff) AM_RAM
AM_RANGE(0xdc00, 0xdfff) AM_RAM AM_SHARE(1) // shared with MAIN CPU
AM_RANGE(0xdc00, 0xdfff) AM_RAM AM_SHARE("share1") // shared with MAIN CPU
AM_RANGE(0xf000, 0xffff) AM_RAM
ADDRESS_MAP_END

Some files were not shown because too many files have changed in this diff Show More