Convert scramble/galaxold to driver_device [Atari Ace]

This commit is contained in:
Scott Stone 2011-04-09 18:31:55 +00:00
parent a268a6e9c8
commit e488397757
15 changed files with 732 additions and 718 deletions

1
.gitattributes vendored
View File

@ -3141,6 +3141,7 @@ src/mame/includes/sauro.h svneol=native#text/plain
src/mame/includes/sbasketb.h svneol=native#text/plain src/mame/includes/sbasketb.h svneol=native#text/plain
src/mame/includes/sbugger.h svneol=native#text/plain src/mame/includes/sbugger.h svneol=native#text/plain
src/mame/includes/scotrsht.h svneol=native#text/plain src/mame/includes/scotrsht.h svneol=native#text/plain
src/mame/includes/scramble.h svneol=native#text/plain
src/mame/includes/sderby.h svneol=native#text/plain src/mame/includes/sderby.h svneol=native#text/plain
src/mame/includes/segag80r.h svneol=native#text/plain src/mame/includes/segag80r.h svneol=native#text/plain
src/mame/includes/segag80v.h svneol=native#text/plain src/mame/includes/segag80v.h svneol=native#text/plain

View File

@ -199,9 +199,6 @@ enum {cjoy, cdoublejoy, cAD_stick, cdial, ctrackball, cpaddle, clightgun, cpedal
for (field = port->fieldlist; field != NULL; field = field->next) for (field = port->fieldlist; field != NULL; field = field->next)
{ {
// if(input_field_name(field) != NULL)
// fprintf(out, "=%s\n", xml_normalize_string(input_field_name(field)));
if (nplayer < field->player + 1) if (nplayer < field->player + 1)
nplayer = field->player + 1; nplayer = field->player + 1;

View File

@ -555,7 +555,7 @@ void video_manager::exit()
global_free(m_snap_bitmap); global_free(m_snap_bitmap);
// print a final result if we have at least 5 seconds' worth of data // print a final result if we have at least 5 seconds' worth of data
if (m_overall_emutime.seconds >= 1) if (m_overall_emutime.seconds >= 5)
{ {
osd_ticks_t tps = osd_ticks_per_second(); osd_ticks_t tps = osd_ticks_per_second();
double final_real_time = (double)m_overall_real_seconds + (double)m_overall_real_ticks / (double)tps; double final_real_time = (double)m_overall_real_seconds + (double)m_overall_real_ticks / (double)tps;
@ -1044,8 +1044,7 @@ void video_manager::recompute_speed(attotime emutime)
{ {
// create a final screenshot // create a final screenshot
emu_file file(m_machine.options().snapshot_directory(), OPEN_FLAG_WRITE | OPEN_FLAG_CREATE | OPEN_FLAG_CREATE_PATHS); emu_file file(m_machine.options().snapshot_directory(), OPEN_FLAG_WRITE | OPEN_FLAG_CREATE | OPEN_FLAG_CREATE_PATHS);
file_error filerr = open_next(file, "png"); file_error filerr = file.open(m_machine.basename(), PATH_SEPARATOR "final.png");
// file_error filerr = file.open(m_machine.basename(), PATH_SEPARATOR "final.png");
if (filerr == FILERR_NONE) if (filerr == FILERR_NONE)
save_snapshot(m_machine.primary_screen, file); save_snapshot(m_machine.primary_screen, file);
} }

View File

@ -17,7 +17,7 @@
#include "sound/flt_rc.h" #include "sound/flt_rc.h"
#include "sound/tms5110.h" #include "sound/tms5110.h"
#include "sound/ay8910.h" #include "sound/ay8910.h"
#include "includes/galaxold.h" #include "includes/scramble.h"
#define AD2083_TMS5110_CLOCK XTAL_640kHz #define AD2083_TMS5110_CLOCK XTAL_640kHz

View File

@ -54,11 +54,11 @@ Stephh's notes (based on the games Z80 code and some tests) :
#include "machine/7474.h" #include "machine/7474.h"
class dambustr_state : public driver_device class dambustr_state : public galaxold_state
{ {
public: public:
dambustr_state(running_machine &machine, const driver_device_config_base &config) dambustr_state(running_machine &machine, const driver_device_config_base &config)
: driver_device(machine, config) { } : galaxold_state(machine, config) { }
int m_noise_data; int m_noise_data;
}; };
@ -84,11 +84,11 @@ static ADDRESS_MAP_START( dambustr_map, AS_PROGRAM, 8 )
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xd000, 0xd3ff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0xd000, 0xd3ff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0xd400, 0xd7ff) AM_READ(galaxold_videoram_r) AM_RANGE(0xd400, 0xd7ff) AM_READ(galaxold_videoram_r)
AM_RANGE(0xd800, 0xd83f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE(&galaxold_attributesram) AM_RANGE(0xd800, 0xd83f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0xd840, 0xd85f) AM_RAM AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0xd840, 0xd85f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
AM_RANGE(0xd860, 0xd87f) AM_RAM AM_BASE(&galaxold_bulletsram) AM_SIZE(&galaxold_bulletsram_size) AM_RANGE(0xd860, 0xd87f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_bulletsram) AM_SIZE_MEMBER(galaxold_state, m_bulletsram_size)
AM_RANGE(0xd880, 0xd8ff) AM_RAM AM_RANGE(0xd880, 0xd8ff) AM_RAM

View File

@ -410,11 +410,11 @@ static READ8_HANDLER( drivfrcg_port0_r )
static ADDRESS_MAP_START( galaxold_map, AS_PROGRAM, 8 ) static ADDRESS_MAP_START( galaxold_map, AS_PROGRAM, 8 )
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x5000, 0x53ff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0x5000, 0x53ff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0x5400, 0x57ff) AM_READ(galaxold_videoram_r) AM_RANGE(0x5400, 0x57ff) AM_READ(galaxold_videoram_r)
AM_RANGE(0x5800, 0x583f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE(&galaxold_attributesram) AM_RANGE(0x5800, 0x583f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0x5840, 0x585f) AM_RAM AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0x5840, 0x585f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
AM_RANGE(0x5860, 0x587f) AM_RAM AM_BASE(&galaxold_bulletsram) AM_SIZE(&galaxold_bulletsram_size) AM_RANGE(0x5860, 0x587f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_bulletsram) AM_SIZE_MEMBER(galaxold_state, m_bulletsram_size)
AM_RANGE(0x5880, 0x58ff) AM_RAM AM_RANGE(0x5880, 0x58ff) AM_RAM
AM_RANGE(0x6000, 0x6000) AM_READ_PORT("IN0") AM_RANGE(0x6000, 0x6000) AM_READ_PORT("IN0")
AM_RANGE(0x6000, 0x6001) AM_WRITE(galaxold_leds_w) AM_RANGE(0x6000, 0x6001) AM_WRITE(galaxold_leds_w)
@ -440,11 +440,11 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( mooncrst_map, AS_PROGRAM, 8 ) static ADDRESS_MAP_START( mooncrst_map, AS_PROGRAM, 8 )
AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0x9400, 0x97ff) AM_READ(galaxold_videoram_r) AM_RANGE(0x9400, 0x97ff) AM_READ(galaxold_videoram_r)
AM_RANGE(0x9800, 0x983f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE(&galaxold_attributesram) AM_RANGE(0x9800, 0x983f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0x9840, 0x985f) AM_RAM AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0x9840, 0x985f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
AM_RANGE(0x9860, 0x987f) AM_RAM AM_BASE(&galaxold_bulletsram) AM_SIZE(&galaxold_bulletsram_size) AM_RANGE(0x9860, 0x987f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_bulletsram) AM_SIZE_MEMBER(galaxold_state, m_bulletsram_size)
AM_RANGE(0x9880, 0x98ff) AM_RAM AM_RANGE(0x9880, 0x98ff) AM_RAM
AM_RANGE(0xa000, 0xa000) AM_READ_PORT("IN0") AM_RANGE(0xa000, 0xa000) AM_READ_PORT("IN0")
AM_RANGE(0xa003, 0xa003) AM_WRITE(galaxold_coin_counter_w) AM_RANGE(0xa003, 0xa003) AM_WRITE(galaxold_coin_counter_w)
@ -465,18 +465,18 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( rockclim_map, AS_PROGRAM, 8 ) static ADDRESS_MAP_START( rockclim_map, AS_PROGRAM, 8 )
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_READWRITE(rockclim_videoram_r, rockclim_videoram_w) AM_BASE(&rockclim_videoram)//4800 - 4803 = bg scroll ? AM_RANGE(0x4000, 0x47ff) AM_READWRITE(rockclim_videoram_r, rockclim_videoram_w) AM_BASE_MEMBER(galaxold_state, m_rockclim_videoram)//4800 - 4803 = bg scroll ?
AM_RANGE(0x4800, 0x4803) AM_WRITE(rockclim_scroll_w) AM_RANGE(0x4800, 0x4803) AM_WRITE(rockclim_scroll_w)
AM_RANGE(0x5000, 0x53ff) AM_RAM //? AM_RANGE(0x5000, 0x53ff) AM_RAM //?
AM_RANGE(0x5800, 0x5800) AM_READ_PORT("IN2") AM_RANGE(0x5800, 0x5800) AM_READ_PORT("IN2")
AM_RANGE(0x6000, 0x7fff) AM_ROM AM_RANGE(0x6000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8800) AM_READ_PORT("DSW1") AM_RANGE(0x8800, 0x8800) AM_READ_PORT("DSW1")
AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0x9400, 0x97ff) AM_READ(galaxold_videoram_r) AM_RANGE(0x9400, 0x97ff) AM_READ(galaxold_videoram_r)
AM_RANGE(0x9800, 0x983f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE(&galaxold_attributesram) AM_RANGE(0x9800, 0x983f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0x9840, 0x985f) AM_RAM AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0x9840, 0x985f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
AM_RANGE(0x9860, 0x987f) AM_RAM AM_BASE(&galaxold_bulletsram) AM_SIZE(&galaxold_bulletsram_size) AM_RANGE(0x9860, 0x987f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_bulletsram) AM_SIZE_MEMBER(galaxold_state, m_bulletsram_size)
AM_RANGE(0x9880, 0x98ff) AM_RAM AM_RANGE(0x9880, 0x98ff) AM_RAM
AM_RANGE(0xa000, 0xa000) AM_READ_PORT("IN0") AM_RANGE(0xa000, 0xa000) AM_READ_PORT("IN0")
AM_RANGE(0xa000, 0xa002) AM_WRITE(galaxold_gfxbank_w)// a002 - sprite bank AM_RANGE(0xa000, 0xa002) AM_WRITE(galaxold_gfxbank_w)// a002 - sprite bank
@ -498,10 +498,10 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( ckongg_map, AS_PROGRAM, 8 ) static ADDRESS_MAP_START( ckongg_map, AS_PROGRAM, 8 )
AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x6fff) AM_RAM AM_RANGE(0x6000, 0x6fff) AM_RAM
AM_RANGE(0x9000, 0x93ff) AM_READWRITE(galaxold_videoram_r, galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0x9000, 0x93ff) AM_READWRITE(galaxold_videoram_r, galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0x9800, 0x983f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE(&galaxold_attributesram) AM_RANGE(0x9800, 0x983f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0x9840, 0x985f) AM_RAM AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0x9840, 0x985f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
AM_RANGE(0x9860, 0x987f) AM_RAM AM_BASE(&galaxold_bulletsram) AM_SIZE(&galaxold_bulletsram_size) AM_RANGE(0x9860, 0x987f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_bulletsram) AM_SIZE_MEMBER(galaxold_state, m_bulletsram_size)
AM_RANGE(0x9880, 0x98ff) AM_RAM AM_RANGE(0x9880, 0x98ff) AM_RAM
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("IN0") AM_RANGE(0xc000, 0xc000) AM_READ_PORT("IN0")
AM_RANGE(0xc000, 0xc001) AM_WRITE(galaxold_leds_w) AM_RANGE(0xc000, 0xc001) AM_WRITE(galaxold_leds_w)
@ -525,10 +525,10 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( ckongmc_map, AS_PROGRAM, 8 ) static ADDRESS_MAP_START( ckongmc_map, AS_PROGRAM, 8 )
AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x6fff) AM_RAM AM_RANGE(0x6000, 0x6fff) AM_RAM
AM_RANGE(0x9000, 0x93ff) AM_READWRITE(galaxold_videoram_r, galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0x9000, 0x93ff) AM_READWRITE(galaxold_videoram_r, galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0x9800, 0x983f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE(&galaxold_attributesram) AM_RANGE(0x9800, 0x983f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0x9840, 0x985f) AM_RAM AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0x9840, 0x985f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
AM_RANGE(0x9860, 0x987f) AM_RAM AM_BASE(&galaxold_bulletsram) AM_SIZE(&galaxold_bulletsram_size) AM_RANGE(0x9860, 0x987f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_bulletsram) AM_SIZE_MEMBER(galaxold_state, m_bulletsram_size)
AM_RANGE(0x9880, 0x98ff) AM_RAM AM_RANGE(0x9880, 0x98ff) AM_RAM
AM_RANGE(0xa000, 0xa000) AM_READ_PORT("IN0") AM_RANGE(0xa000, 0xa000) AM_READ_PORT("IN0")
AM_RANGE(0xa001, 0xa002) AM_WRITE(galaxold_leds_w) /* GUESS */ AM_RANGE(0xa001, 0xa002) AM_WRITE(galaxold_leds_w) /* GUESS */
@ -552,10 +552,10 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( scramblb_map, AS_PROGRAM, 8 ) static ADDRESS_MAP_START( scramblb_map, AS_PROGRAM, 8 )
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x4800, 0x4bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0x4800, 0x4bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0x5000, 0x503f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE(&galaxold_attributesram) AM_RANGE(0x5000, 0x503f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0x5040, 0x505f) AM_RAM AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0x5040, 0x505f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
AM_RANGE(0x5060, 0x507f) AM_RAM AM_BASE(&galaxold_bulletsram) AM_SIZE(&galaxold_bulletsram_size) AM_RANGE(0x5060, 0x507f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_bulletsram) AM_SIZE_MEMBER(galaxold_state, m_bulletsram_size)
AM_RANGE(0x5080, 0x50ff) AM_RAM AM_RANGE(0x5080, 0x50ff) AM_RAM
AM_RANGE(0x6000, 0x6000) AM_READ_PORT("IN0") AM_RANGE(0x6000, 0x6000) AM_READ_PORT("IN0")
AM_RANGE(0x6000, 0x6001) AM_WRITENOP /* sound triggers */ AM_RANGE(0x6000, 0x6001) AM_WRITENOP /* sound triggers */
@ -587,11 +587,11 @@ static READ8_HANDLER( scramb2_port2_r ) { return (input_port_read(space->machine
static ADDRESS_MAP_START( scramb2_map, AS_PROGRAM, 8 ) static ADDRESS_MAP_START( scramb2_map, AS_PROGRAM, 8 )
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x4800, 0x4bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0x4800, 0x4bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0x4c00, 0x4fff) AM_WRITE(galaxold_videoram_w) // mirror AM_RANGE(0x4c00, 0x4fff) AM_WRITE(galaxold_videoram_w) // mirror
AM_RANGE(0x5000, 0x503f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE(&galaxold_attributesram) AM_RANGE(0x5000, 0x503f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0x5040, 0x505f) AM_RAM AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0x5040, 0x505f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
AM_RANGE(0x5060, 0x507f) AM_RAM AM_BASE(&galaxold_bulletsram) AM_SIZE(&galaxold_bulletsram_size) AM_RANGE(0x5060, 0x507f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_bulletsram) AM_SIZE_MEMBER(galaxold_state, m_bulletsram_size)
AM_RANGE(0x5080, 0x50ff) AM_RAM AM_RANGE(0x5080, 0x50ff) AM_RAM
AM_RANGE(0x5800, 0x5fff) AM_READ(scramb2_protection_r) // must return 0x25 AM_RANGE(0x5800, 0x5fff) AM_READ(scramb2_protection_r) // must return 0x25
AM_RANGE(0x6000, 0x6007) AM_READ(scramb2_port0_r) // reads from 8 addresses, 1 bit per address AM_RANGE(0x6000, 0x6007) AM_READ(scramb2_port0_r) // reads from 8 addresses, 1 bit per address
@ -612,11 +612,11 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( _4in1_map, AS_PROGRAM, 8 ) static ADDRESS_MAP_START( _4in1_map, AS_PROGRAM, 8 )
AM_RANGE(0x0000, 0x3fff) AM_ROMBANK("bank1") /* banked game code */ AM_RANGE(0x0000, 0x3fff) AM_ROMBANK("bank1") /* banked game code */
AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x5000, 0x53ff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0x5000, 0x53ff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0x5400, 0x57ff) AM_READ(galaxold_videoram_r) AM_RANGE(0x5400, 0x57ff) AM_READ(galaxold_videoram_r)
AM_RANGE(0x5800, 0x583f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE(&galaxold_attributesram) AM_RANGE(0x5800, 0x583f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0x5840, 0x585f) AM_RAM AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0x5840, 0x585f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
AM_RANGE(0x5860, 0x587f) AM_RAM AM_BASE(&galaxold_bulletsram) AM_SIZE(&galaxold_bulletsram_size) AM_RANGE(0x5860, 0x587f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_bulletsram) AM_SIZE_MEMBER(galaxold_state, m_bulletsram_size)
AM_RANGE(0x5880, 0x58ff) AM_RAM AM_RANGE(0x5880, 0x58ff) AM_RAM
AM_RANGE(0x6000, 0x6000) AM_READ_PORT("IN0") AM_RANGE(0x6000, 0x6000) AM_READ_PORT("IN0")
AM_RANGE(0x6000, 0x6001) AM_WRITE(galaxold_leds_w) AM_RANGE(0x6000, 0x6001) AM_WRITE(galaxold_leds_w)
@ -643,11 +643,11 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( bagmanmc_map, AS_PROGRAM, 8 ) static ADDRESS_MAP_START( bagmanmc_map, AS_PROGRAM, 8 )
AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x67ff) AM_RAM AM_RANGE(0x6000, 0x67ff) AM_RAM
AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0x9400, 0x97ff) AM_READ(galaxold_videoram_r) AM_RANGE(0x9400, 0x97ff) AM_READ(galaxold_videoram_r)
AM_RANGE(0x9800, 0x983f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE(&galaxold_attributesram) AM_RANGE(0x9800, 0x983f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0x9840, 0x985f) AM_RAM AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0x9840, 0x985f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
AM_RANGE(0x9860, 0x987f) AM_RAM AM_BASE(&galaxold_bulletsram) AM_SIZE(&galaxold_bulletsram_size) AM_RANGE(0x9860, 0x987f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_bulletsram) AM_SIZE_MEMBER(galaxold_state, m_bulletsram_size)
AM_RANGE(0x9880, 0x98ff) AM_RAM AM_RANGE(0x9880, 0x98ff) AM_RAM
AM_RANGE(0xa000, 0xa000) AM_READ_PORT("IN0") AM_RANGE(0xa000, 0xa000) AM_READ_PORT("IN0")
AM_RANGE(0xa003, 0xa003) AM_WRITE(galaxold_coin_counter_w) AM_RANGE(0xa003, 0xa003) AM_WRITE(galaxold_coin_counter_w)
@ -665,10 +665,10 @@ static ADDRESS_MAP_START( dkongjrm_map, AS_PROGRAM, 8 )
AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x6fff) AM_RAM AM_RANGE(0x6000, 0x6fff) AM_RAM
AM_RANGE(0x7000, 0x7fff) AM_ROM AM_RANGE(0x7000, 0x7fff) AM_ROM
AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0x9800, 0x983f) AM_WRITE(galaxold_attributesram_w) AM_BASE(&galaxold_attributesram) AM_RANGE(0x9800, 0x983f) AM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0x9840, 0x987f) AM_WRITEONLY AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0x9840, 0x987f) AM_WRITEONLY AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
AM_RANGE(0x98c0, 0x98ff) AM_WRITEONLY AM_BASE(&galaxold_spriteram2) AM_SIZE(&galaxold_spriteram2_size) AM_RANGE(0x98c0, 0x98ff) AM_WRITEONLY AM_BASE_MEMBER(galaxold_state, m_spriteram2) AM_SIZE_MEMBER(galaxold_state, m_spriteram2_size)
AM_RANGE(0xa000, 0xa0ff) AM_READ_PORT("IN0") AM_RANGE(0xa000, 0xa0ff) AM_READ_PORT("IN0")
AM_RANGE(0xa003, 0xa003) AM_WRITE(galaxold_coin_counter_w) AM_RANGE(0xa003, 0xa003) AM_WRITE(galaxold_coin_counter_w)
//AM_RANGE(0xa004, 0xa007) AM_WRITE(galaxian_lfo_freq_w) //AM_RANGE(0xa004, 0xa007) AM_WRITE(galaxian_lfo_freq_w)
@ -691,11 +691,11 @@ static ADDRESS_MAP_START( tazzmang, AS_PROGRAM, 8 )
AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x7000, 0x7000) AM_READ_PORT("DSW0") /* mirror */ AM_RANGE(0x7000, 0x7000) AM_READ_PORT("DSW0") /* mirror */
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x883f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE(&galaxold_attributesram) AM_RANGE(0x8800, 0x883f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0x8840, 0x885f) AM_RAM AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0x8840, 0x885f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
AM_RANGE(0x8860, 0x887f) AM_RAM AM_BASE(&galaxold_bulletsram) AM_SIZE(&galaxold_bulletsram_size) AM_RANGE(0x8860, 0x887f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_bulletsram) AM_SIZE_MEMBER(galaxold_state, m_bulletsram_size)
AM_RANGE(0x8880, 0x8bff) AM_WRITENOP AM_RANGE(0x8880, 0x8bff) AM_WRITENOP
AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0x9800, 0x9800) AM_READ(watchdog_reset_r) AM_RANGE(0x9800, 0x9800) AM_READ(watchdog_reset_r)
AM_RANGE(0xa000, 0xa000) AM_READ_PORT("IN0") AM_RANGE(0xa000, 0xa000) AM_READ_PORT("IN0")
AM_RANGE(0xa7ff, 0xa7ff) AM_READ_PORT("IN0") /* mirror */ AM_RANGE(0xa7ff, 0xa7ff) AM_READ_PORT("IN0") /* mirror */
@ -716,11 +716,11 @@ static ADDRESS_MAP_START( bongo, AS_PROGRAM, 8 )
AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM AM_RANGE(0x8000, 0x83ff) AM_RAM
AM_RANGE(0x8400, 0x87ff) AM_WRITENOP // not used AM_RANGE(0x8400, 0x87ff) AM_WRITENOP // not used
AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0x9400, 0x97ff) AM_WRITENOP // not used AM_RANGE(0x9400, 0x97ff) AM_WRITENOP // not used
AM_RANGE(0x9800, 0x983f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE(&galaxold_attributesram) AM_RANGE(0x9800, 0x983f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0x9840, 0x985f) AM_RAM AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0x9840, 0x985f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
AM_RANGE(0x9860, 0x987f) AM_RAM AM_BASE(&galaxold_bulletsram) AM_SIZE(&galaxold_bulletsram_size) AM_RANGE(0x9860, 0x987f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_bulletsram) AM_SIZE_MEMBER(galaxold_state, m_bulletsram_size)
AM_RANGE(0xa000, 0xa000) AM_READ_PORT("IN0") AM_RANGE(0xa000, 0xa000) AM_READ_PORT("IN0")
AM_RANGE(0xa800, 0xa800) AM_READ_PORT("IN1") AM_RANGE(0xa800, 0xa800) AM_READ_PORT("IN1")
AM_RANGE(0xb000, 0xb000) AM_READ_PORT("DSW0") AM_RANGE(0xb000, 0xb000) AM_READ_PORT("DSW0")
@ -742,10 +742,10 @@ static ADDRESS_MAP_START( ozon1_map, AS_PROGRAM, 8 )
AM_RANGE(0x0000, 0x2fff) AM_ROM AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x4000, 0x4200) AM_RAM AM_RANGE(0x4000, 0x4200) AM_RAM
AM_RANGE(0x4300, 0x43ff) AM_RAM AM_RANGE(0x4300, 0x43ff) AM_RAM
AM_RANGE(0x4800, 0x4bff) AM_READWRITE(galaxold_videoram_r, galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0x4800, 0x4bff) AM_READWRITE(galaxold_videoram_r, galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0x4c00, 0x4fff) AM_WRITE(galaxold_videoram_w) AM_RANGE(0x4c00, 0x4fff) AM_WRITE(galaxold_videoram_w)
AM_RANGE(0x5000, 0x503f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE(&galaxold_attributesram) AM_RANGE(0x5000, 0x503f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0x5040, 0x505f) AM_RAM AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0x5040, 0x505f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
AM_RANGE(0x6801, 0x6801) AM_WRITENOP //continuosly 0 and 1 AM_RANGE(0x6801, 0x6801) AM_WRITENOP //continuosly 0 and 1
AM_RANGE(0x6802, 0x6802) AM_WRITE(galaxold_coin_counter_w) AM_RANGE(0x6802, 0x6802) AM_WRITE(galaxold_coin_counter_w)
AM_RANGE(0x6806, 0x6806) AM_WRITE(galaxold_flip_screen_x_w) AM_RANGE(0x6806, 0x6806) AM_WRITE(galaxold_flip_screen_x_w)
@ -766,16 +766,16 @@ static ADDRESS_MAP_START( harem_cpu1, AS_PROGRAM, 8 )
AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x27ff) AM_RAM AM_RANGE(0x2000, 0x27ff) AM_RAM
AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x4800, 0x4fff) AM_READWRITE(galaxold_videoram_r, galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0x4800, 0x4fff) AM_READWRITE(galaxold_videoram_r, galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0x5000, 0x5000) AM_WRITENOP AM_RANGE(0x5000, 0x5000) AM_WRITENOP
AM_RANGE(0x5800, 0x5800) AM_READNOP AM_WRITE(interrupt_enable_w) AM_RANGE(0x5800, 0x5800) AM_READNOP AM_WRITE(interrupt_enable_w)
AM_RANGE(0x5801, 0x5807) AM_WRITENOP AM_RANGE(0x5801, 0x5807) AM_WRITENOP
AM_RANGE(0x6101, 0x6101) AM_READ_PORT("IN0") AM_RANGE(0x6101, 0x6101) AM_READ_PORT("IN0")
AM_RANGE(0x6102, 0x6102) AM_READ_PORT("IN1") AM_RANGE(0x6102, 0x6102) AM_READ_PORT("IN1")
AM_RANGE(0x6103, 0x6103) AM_WRITENOP AM_RANGE(0x6103, 0x6103) AM_WRITENOP
AM_RANGE(0x6200, 0x6203) AM_WRITENOP AM_BASE(&galaxold_attributesram) AM_RANGE(0x6200, 0x6203) AM_WRITENOP AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0x8000, 0x9fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_ROM
AM_RANGE(0xffe6, 0xffff) AM_RAM AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0xffe6, 0xffff) AM_RAM AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( harem_cpu2, AS_PROGRAM, 8 ) static ADDRESS_MAP_START( harem_cpu2, AS_PROGRAM, 8 )
@ -797,8 +797,8 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( hunchbkg, AS_PROGRAM, 8 ) static ADDRESS_MAP_START( hunchbkg, AS_PROGRAM, 8 )
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1480, 0x14bf) AM_MIRROR(0x6000) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE(&galaxold_attributesram) AM_RANGE(0x1480, 0x14bf) AM_MIRROR(0x6000) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0x14c0, 0x14ff) AM_MIRROR(0x6000) AM_WRITEONLY AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0x14c0, 0x14ff) AM_MIRROR(0x6000) AM_WRITEONLY AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
AM_RANGE(0x1500, 0x1500) AM_MIRROR(0x6000) AM_READ_PORT("IN0") AM_RANGE(0x1500, 0x1500) AM_MIRROR(0x6000) AM_READ_PORT("IN0")
AM_RANGE(0x1500, 0x1501) AM_MIRROR(0x6000) AM_WRITE(galaxold_leds_w) /* not connected ... */ AM_RANGE(0x1500, 0x1501) AM_MIRROR(0x6000) AM_WRITE(galaxold_leds_w) /* not connected ... */
AM_RANGE(0x1502, 0x1502) AM_MIRROR(0x6000) AM_WRITE(galaxold_coin_lockout_w) /* not connected ... */ AM_RANGE(0x1502, 0x1502) AM_MIRROR(0x6000) AM_WRITE(galaxold_coin_lockout_w) /* not connected ... */
@ -815,7 +815,7 @@ static ADDRESS_MAP_START( hunchbkg, AS_PROGRAM, 8 )
AM_RANGE(0x1606, 0x1606) AM_MIRROR(0x6000) AM_WRITE(galaxold_flip_screen_x_w) AM_RANGE(0x1606, 0x1606) AM_MIRROR(0x6000) AM_WRITE(galaxold_flip_screen_x_w)
AM_RANGE(0x1607, 0x1607) AM_MIRROR(0x6000) AM_WRITE(galaxold_flip_screen_y_w) AM_RANGE(0x1607, 0x1607) AM_MIRROR(0x6000) AM_WRITE(galaxold_flip_screen_y_w)
AM_RANGE(0x1680, 0x1680) AM_MIRROR(0x6000) AM_READ(watchdog_reset_r) AM_DEVWRITE(GAL_AUDIO, galaxian_pitch_w) AM_RANGE(0x1680, 0x1680) AM_MIRROR(0x6000) AM_READ(watchdog_reset_r) AM_DEVWRITE(GAL_AUDIO, galaxian_pitch_w)
AM_RANGE(0x1800, 0x1bff) AM_MIRROR(0x6000) AM_WRITE(galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0x1800, 0x1bff) AM_MIRROR(0x6000) AM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0x1c00, 0x1fff) AM_MIRROR(0x6000) AM_RAM AM_RANGE(0x1c00, 0x1fff) AM_MIRROR(0x6000) AM_RAM
AM_RANGE(0x2000, 0x2fff) AM_ROM AM_RANGE(0x2000, 0x2fff) AM_ROM
AM_RANGE(0x4000, 0x4fff) AM_ROM AM_RANGE(0x4000, 0x4fff) AM_ROM
@ -832,8 +832,8 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( drivfrcg, AS_PROGRAM, 8 ) static ADDRESS_MAP_START( drivfrcg, AS_PROGRAM, 8 )
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1480, 0x14bf) AM_MIRROR(0x6000) AM_WRITE(galaxold_attributesram_w) AM_BASE(&galaxold_attributesram) AM_RANGE(0x1480, 0x14bf) AM_MIRROR(0x6000) AM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0x14c0, 0x14ff) AM_MIRROR(0x6000) AM_WRITEONLY AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0x14c0, 0x14ff) AM_MIRROR(0x6000) AM_WRITEONLY AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
AM_RANGE(0x1500, 0x1500) AM_MIRROR(0x6000) AM_READ_PORT("IN0") AM_RANGE(0x1500, 0x1500) AM_MIRROR(0x6000) AM_READ_PORT("IN0")
AM_RANGE(0x1503, 0x1503) AM_MIRROR(0x6000) AM_WRITE(galaxold_coin_counter_w) AM_RANGE(0x1503, 0x1503) AM_MIRROR(0x6000) AM_WRITE(galaxold_coin_counter_w)
AM_RANGE(0x1580, 0x1580) AM_MIRROR(0x6000) AM_READ_PORT("IN1") AM_RANGE(0x1580, 0x1580) AM_MIRROR(0x6000) AM_READ_PORT("IN1")
@ -845,7 +845,7 @@ static ADDRESS_MAP_START( drivfrcg, AS_PROGRAM, 8 )
AM_RANGE(0x1700, 0x1700) AM_MIRROR(0x6000) AM_READ_PORT("DSW1") AM_WRITENOP AM_RANGE(0x1700, 0x1700) AM_MIRROR(0x6000) AM_READ_PORT("DSW1") AM_WRITENOP
AM_RANGE(0x1701, 0x1701) AM_MIRROR(0x6000) AM_WRITENOP AM_RANGE(0x1701, 0x1701) AM_MIRROR(0x6000) AM_WRITENOP
AM_RANGE(0x1704, 0x1707) AM_MIRROR(0x6000) AM_DEVWRITE(GAL_AUDIO, galaxian_vol_w) AM_RANGE(0x1704, 0x1707) AM_MIRROR(0x6000) AM_DEVWRITE(GAL_AUDIO, galaxian_vol_w)
AM_RANGE(0x1800, 0x1bff) AM_MIRROR(0x6000) AM_WRITE(galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0x1800, 0x1bff) AM_MIRROR(0x6000) AM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0x1c00, 0x1fff) AM_MIRROR(0x6000) AM_RAM AM_RANGE(0x1c00, 0x1fff) AM_MIRROR(0x6000) AM_RAM
AM_RANGE(0x2000, 0x2fff) AM_ROM AM_RANGE(0x2000, 0x2fff) AM_ROM
AM_RANGE(0x4000, 0x4fff) AM_ROM AM_RANGE(0x4000, 0x4fff) AM_ROM
@ -860,8 +860,8 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( racknrol, AS_PROGRAM, 8 ) static ADDRESS_MAP_START( racknrol, AS_PROGRAM, 8 )
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1400, 0x143f) AM_MIRROR(0x6000) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE(&galaxold_attributesram) AM_RANGE(0x1400, 0x143f) AM_MIRROR(0x6000) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0x1440, 0x14bf) AM_MIRROR(0x6000) AM_RAM AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0x1440, 0x14bf) AM_MIRROR(0x6000) AM_RAM AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
AM_RANGE(0x14c0, 0x14ff) AM_MIRROR(0x6000) AM_RAM AM_RANGE(0x14c0, 0x14ff) AM_MIRROR(0x6000) AM_RAM
AM_RANGE(0x1500, 0x1500) AM_MIRROR(0x6000) AM_READ_PORT("IN0") AM_RANGE(0x1500, 0x1500) AM_MIRROR(0x6000) AM_READ_PORT("IN0")
AM_RANGE(0x1580, 0x1580) AM_MIRROR(0x6000) AM_READ_PORT("IN1") AM_RANGE(0x1580, 0x1580) AM_MIRROR(0x6000) AM_READ_PORT("IN1")
@ -872,7 +872,7 @@ static ADDRESS_MAP_START( racknrol, AS_PROGRAM, 8 )
AM_RANGE(0x1680, 0x1680) AM_MIRROR(0x6000) AM_READNOP AM_RANGE(0x1680, 0x1680) AM_MIRROR(0x6000) AM_READNOP
// AM_RANGE(0x1700, 0x1700) AM_MIRROR(0x6000) AM_READ(trvchlng_question_r) // AM_RANGE(0x1700, 0x1700) AM_MIRROR(0x6000) AM_READ(trvchlng_question_r)
// AM_RANGE(0x1701, 0x1703) AM_MIRROR(0x6000) AM_READ(trvchlng_question_w) // AM_RANGE(0x1701, 0x1703) AM_MIRROR(0x6000) AM_READ(trvchlng_question_w)
AM_RANGE(0x1800, 0x1bff) AM_MIRROR(0x6000) AM_WRITE(galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0x1800, 0x1bff) AM_MIRROR(0x6000) AM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0x1c00, 0x1fff) AM_MIRROR(0x6000) AM_RAM AM_RANGE(0x1c00, 0x1fff) AM_MIRROR(0x6000) AM_RAM
AM_RANGE(0x2000, 0x2fff) AM_ROM AM_RANGE(0x2000, 0x2fff) AM_ROM
AM_RANGE(0x4000, 0x4fff) AM_ROM AM_RANGE(0x4000, 0x4fff) AM_ROM
@ -883,7 +883,7 @@ static ADDRESS_MAP_START( racknrol_io, AS_IO, 8 )
AM_RANGE(0x1d, 0x1d) AM_DEVWRITE("sn1", sn76496_w) AM_RANGE(0x1d, 0x1d) AM_DEVWRITE("sn1", sn76496_w)
AM_RANGE(0x1e, 0x1e) AM_DEVWRITE("sn2", sn76496_w) AM_RANGE(0x1e, 0x1e) AM_DEVWRITE("sn2", sn76496_w)
AM_RANGE(0x1f, 0x1f) AM_DEVWRITE("sn3", sn76496_w) AM_RANGE(0x1f, 0x1f) AM_DEVWRITE("sn3", sn76496_w)
AM_RANGE(0x20, 0x3f) AM_WRITE(racknrol_tiles_bank_w) AM_BASE(&racknrol_tiles_bank) AM_RANGE(0x20, 0x3f) AM_WRITE(racknrol_tiles_bank_w) AM_BASE_MEMBER(galaxold_state, m_racknrol_tiles_bank)
AM_RANGE(S2650_SENSE_PORT, S2650_SENSE_PORT) AM_READ_PORT("SENSE") AM_RANGE(S2650_SENSE_PORT, S2650_SENSE_PORT) AM_READ_PORT("SENSE")
ADDRESS_MAP_END ADDRESS_MAP_END
@ -903,7 +903,7 @@ static READ8_HANDLER( hexpoola_data_port_r )
static ADDRESS_MAP_START( hexpoola_io, AS_IO, 8 ) static ADDRESS_MAP_START( hexpoola_io, AS_IO, 8 )
AM_RANGE(0x00, 0x00) AM_READNOP AM_RANGE(0x00, 0x00) AM_READNOP
AM_RANGE(0x20, 0x3f) AM_WRITE(racknrol_tiles_bank_w) AM_BASE(&racknrol_tiles_bank) AM_RANGE(0x20, 0x3f) AM_WRITE(racknrol_tiles_bank_w) AM_BASE_MEMBER(galaxold_state, m_racknrol_tiles_bank)
AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READ(hexpoola_data_port_r) AM_DEVWRITE("snsnd", sn76496_w) AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READ(hexpoola_data_port_r) AM_DEVWRITE("snsnd", sn76496_w)
AM_RANGE(S2650_SENSE_PORT, S2650_SENSE_PORT) AM_READ_PORT("SENSE") AM_RANGE(S2650_SENSE_PORT, S2650_SENSE_PORT) AM_READ_PORT("SENSE")
ADDRESS_MAP_END ADDRESS_MAP_END
@ -2117,7 +2117,7 @@ static const ay8910_interface bongo_ay8910_interface =
}; };
static MACHINE_CONFIG_START( galaxold_base, driver_device ) static MACHINE_CONFIG_START( galaxold_base, galaxold_state )
/* basic machine hardware */ /* basic machine hardware */
MCFG_CPU_ADD("maincpu", Z80, PIXEL_CLOCK/2) /* 3.072 MHz */ MCFG_CPU_ADD("maincpu", Z80, PIXEL_CLOCK/2) /* 3.072 MHz */
@ -2276,7 +2276,7 @@ static MACHINE_CONFIG_DERIVED( ozon1, galaxold_base )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END MACHINE_CONFIG_END
static MACHINE_CONFIG_START( drivfrcg, driver_device ) static MACHINE_CONFIG_START( drivfrcg, galaxold_state )
/* basic machine hardware */ /* basic machine hardware */
MCFG_CPU_ADD("maincpu", S2650, MASTER_CLOCK/6) MCFG_CPU_ADD("maincpu", S2650, MASTER_CLOCK/6)
@ -2370,7 +2370,7 @@ static MACHINE_CONFIG_DERIVED( tazzmang, galaxian )
MCFG_CPU_PROGRAM_MAP(tazzmang) MCFG_CPU_PROGRAM_MAP(tazzmang)
MACHINE_CONFIG_END MACHINE_CONFIG_END
static MACHINE_CONFIG_START( racknrol, driver_device ) static MACHINE_CONFIG_START( racknrol, galaxold_state )
/* basic machine hardware */ /* basic machine hardware */
MCFG_CPU_ADD("maincpu", S2650, PIXEL_CLOCK/2) MCFG_CPU_ADD("maincpu", S2650, PIXEL_CLOCK/2)
@ -2426,7 +2426,7 @@ static MACHINE_CONFIG_DERIVED( ckongmc, galaxian )
MACHINE_CONFIG_END MACHINE_CONFIG_END
static MACHINE_CONFIG_START( hexpoola, driver_device ) static MACHINE_CONFIG_START( hexpoola, galaxold_state )
/* basic machine hardware */ /* basic machine hardware */
MCFG_CPU_ADD("maincpu", S2650, PIXEL_CLOCK/2) MCFG_CPU_ADD("maincpu", S2650, PIXEL_CLOCK/2)

View File

@ -36,15 +36,15 @@ Notes/Tidbits:
#include "cpu/z80/z80.h" #include "cpu/z80/z80.h"
#include "machine/8255ppi.h" #include "machine/8255ppi.h"
#include "machine/7474.h" #include "machine/7474.h"
#include "includes/galaxold.h"
#include "sound/ay8910.h" #include "sound/ay8910.h"
#include "includes/scramble.h"
class scobra_state : public driver_device class scobra_state : public scramble_state
{ {
public: public:
scobra_state(running_machine &machine, const driver_device_config_base &config) scobra_state(running_machine &machine, const driver_device_config_base &config)
: driver_device(machine, config) { } : scramble_state(machine, config) { }
UINT8 *m_soundram; UINT8 *m_soundram;
}; };
@ -115,12 +115,12 @@ static WRITE8_DEVICE_HANDLER(hustler_ppi8255_w)
static ADDRESS_MAP_START( type1_map, AS_PROGRAM, 8 ) static ADDRESS_MAP_START( type1_map, AS_PROGRAM, 8 )
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0x8800, 0x8bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0x8c00, 0x8fff) AM_RAM_WRITE(galaxold_videoram_w) /* mirror */ AM_RANGE(0x8c00, 0x8fff) AM_RAM_WRITE(galaxold_videoram_w) /* mirror */
AM_RANGE(0x8c00, 0x8fff) AM_READ(galaxold_videoram_r) /* mirror */ AM_RANGE(0x8c00, 0x8fff) AM_READ(galaxold_videoram_r) /* mirror */
AM_RANGE(0x9000, 0x903f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE(&galaxold_attributesram) AM_RANGE(0x9000, 0x903f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0x9040, 0x905f) AM_RAM AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0x9040, 0x905f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
AM_RANGE(0x9060, 0x907f) AM_RAM AM_BASE(&galaxold_bulletsram) AM_SIZE(&galaxold_bulletsram_size) AM_RANGE(0x9060, 0x907f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_bulletsram) AM_SIZE_MEMBER(galaxold_state, m_bulletsram_size)
AM_RANGE(0x9080, 0x90ff) AM_RAM AM_RANGE(0x9080, 0x90ff) AM_RAM
AM_RANGE(0x9800, 0x9803) AM_DEVREADWRITE("ppi8255_0", ppi8255_r, ppi8255_w) AM_RANGE(0x9800, 0x9803) AM_DEVREADWRITE("ppi8255_0", ppi8255_r, ppi8255_w)
AM_RANGE(0xa000, 0xa003) AM_DEVREADWRITE("ppi8255_1", ppi8255_r, ppi8255_w) AM_RANGE(0xa000, 0xa003) AM_DEVREADWRITE("ppi8255_1", ppi8255_r, ppi8255_w)
@ -135,11 +135,11 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( type2_map, AS_PROGRAM, 8 ) static ADDRESS_MAP_START( type2_map, AS_PROGRAM, 8 )
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x883f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE(&galaxold_attributesram) AM_RANGE(0x8800, 0x883f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0x8840, 0x885f) AM_RAM AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0x8840, 0x885f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
AM_RANGE(0x8860, 0x887f) AM_RAM AM_BASE(&galaxold_bulletsram) AM_SIZE(&galaxold_bulletsram_size) AM_RANGE(0x8860, 0x887f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_bulletsram) AM_SIZE_MEMBER(galaxold_state, m_bulletsram_size)
AM_RANGE(0x8880, 0x88ff) AM_RAM AM_RANGE(0x8880, 0x88ff) AM_RAM
AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0x9400, 0x97ff) AM_READWRITE(galaxold_videoram_r, galaxold_videoram_w) /* mirror */ AM_RANGE(0x9400, 0x97ff) AM_READWRITE(galaxold_videoram_r, galaxold_videoram_w) /* mirror */
AM_RANGE(0x9800, 0x9800) AM_READ(watchdog_reset_r) AM_RANGE(0x9800, 0x9800) AM_READ(watchdog_reset_r)
AM_RANGE(0xa000, 0xa00f) AM_DEVREADWRITE("ppi8255_0", scobra_type2_ppi8255_r, scobra_type2_ppi8255_w) AM_RANGE(0xa000, 0xa00f) AM_DEVREADWRITE("ppi8255_0", scobra_type2_ppi8255_r, scobra_type2_ppi8255_w)
@ -155,10 +155,10 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( hustler_map, AS_PROGRAM, 8 ) static ADDRESS_MAP_START( hustler_map, AS_PROGRAM, 8 )
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0x8800, 0x8bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0x9000, 0x903f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE(&galaxold_attributesram) AM_RANGE(0x9000, 0x903f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0x9040, 0x905f) AM_RAM AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0x9040, 0x905f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
AM_RANGE(0x9060, 0x907f) AM_RAM AM_BASE(&galaxold_bulletsram) AM_SIZE(&galaxold_bulletsram_size) AM_RANGE(0x9060, 0x907f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_bulletsram) AM_SIZE_MEMBER(galaxold_state, m_bulletsram_size)
AM_RANGE(0x9080, 0x90ff) AM_RAM AM_RANGE(0x9080, 0x90ff) AM_RAM
AM_RANGE(0xa802, 0xa802) AM_WRITE(galaxold_flip_screen_x_w) AM_RANGE(0xa802, 0xa802) AM_WRITE(galaxold_flip_screen_x_w)
AM_RANGE(0xa804, 0xa804) AM_WRITE(galaxold_nmi_enable_w) AM_RANGE(0xa804, 0xa804) AM_WRITE(galaxold_nmi_enable_w)
@ -172,10 +172,10 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( hustlerb_map, AS_PROGRAM, 8 ) static ADDRESS_MAP_START( hustlerb_map, AS_PROGRAM, 8 )
AM_RANGE(0x0000, 0x7fff) AM_RAM AM_RANGE(0x0000, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0x8800, 0x8bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0x9000, 0x903f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE(&galaxold_attributesram) AM_RANGE(0x9000, 0x903f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0x9040, 0x905f) AM_RAM AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0x9040, 0x905f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
AM_RANGE(0x9060, 0x907f) AM_RAM AM_BASE(&galaxold_bulletsram) AM_SIZE(&galaxold_bulletsram_size) AM_RANGE(0x9060, 0x907f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_bulletsram) AM_SIZE_MEMBER(galaxold_state, m_bulletsram_size)
AM_RANGE(0x9080, 0x90ff) AM_RAM AM_RANGE(0x9080, 0x90ff) AM_RAM
AM_RANGE(0xa801, 0xa801) AM_WRITE(galaxold_nmi_enable_w) AM_RANGE(0xa801, 0xa801) AM_WRITE(galaxold_nmi_enable_w)
AM_RANGE(0xa802, 0xa802) AM_WRITENOP /* coin counters */ AM_RANGE(0xa802, 0xa802) AM_WRITENOP /* coin counters */
@ -189,11 +189,11 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( mimonkey_map, AS_PROGRAM, 8 ) static ADDRESS_MAP_START( mimonkey_map, AS_PROGRAM, 8 )
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0x8800, 0x8bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0x8c00, 0x8fff) AM_READWRITE(galaxold_videoram_r, galaxold_videoram_w) /* mirror */ AM_RANGE(0x8c00, 0x8fff) AM_READWRITE(galaxold_videoram_r, galaxold_videoram_w) /* mirror */
AM_RANGE(0x9000, 0x903f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE(&galaxold_attributesram) AM_RANGE(0x9000, 0x903f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0x9040, 0x905f) AM_RAM AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0x9040, 0x905f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
AM_RANGE(0x9060, 0x907f) AM_RAM AM_BASE(&galaxold_bulletsram) AM_SIZE(&galaxold_bulletsram_size) AM_RANGE(0x9060, 0x907f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_bulletsram) AM_SIZE_MEMBER(galaxold_state, m_bulletsram_size)
AM_RANGE(0x9080, 0x90ff) AM_RAM AM_RANGE(0x9080, 0x90ff) AM_RAM
AM_RANGE(0x9800, 0x9803) AM_DEVREADWRITE("ppi8255_0", ppi8255_r, ppi8255_w) AM_RANGE(0x9800, 0x9803) AM_DEVREADWRITE("ppi8255_0", ppi8255_r, ppi8255_w)
AM_RANGE(0xa000, 0xa003) AM_DEVREADWRITE("ppi8255_1", ppi8255_r, ppi8255_w) AM_RANGE(0xa000, 0xa003) AM_DEVREADWRITE("ppi8255_1", ppi8255_r, ppi8255_w)

View File

@ -33,18 +33,18 @@ Notes:
#include "sound/flt_rc.h" #include "sound/flt_rc.h"
#include "machine/7474.h" #include "machine/7474.h"
#include "machine/8255ppi.h" #include "machine/8255ppi.h"
#include "includes/galaxold.h" #include "includes/scramble.h"
static ADDRESS_MAP_START( scramble_map, AS_PROGRAM, 8 ) static ADDRESS_MAP_START( scramble_map, AS_PROGRAM, 8 )
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x4800, 0x4bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0x4800, 0x4bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0x4c00, 0x4fff) AM_READWRITE(galaxold_videoram_r, galaxold_videoram_w) /* mirror address */ AM_RANGE(0x4c00, 0x4fff) AM_READWRITE(galaxold_videoram_r, galaxold_videoram_w) /* mirror address */
AM_RANGE(0x5000, 0x503f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE(&galaxold_attributesram) AM_RANGE(0x5000, 0x503f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0x5040, 0x505f) AM_RAM AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0x5040, 0x505f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
AM_RANGE(0x5060, 0x507f) AM_RAM AM_BASE(&galaxold_bulletsram) AM_SIZE(&galaxold_bulletsram_size) AM_RANGE(0x5060, 0x507f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_bulletsram) AM_SIZE_MEMBER(galaxold_state, m_bulletsram_size)
AM_RANGE(0x5080, 0x50ff) AM_RAM AM_RANGE(0x5080, 0x50ff) AM_RAM
AM_RANGE(0x6801, 0x6801) AM_WRITE(galaxold_nmi_enable_w) AM_RANGE(0x6801, 0x6801) AM_WRITE(galaxold_nmi_enable_w)
AM_RANGE(0x6802, 0x6802) AM_WRITE(galaxold_coin_counter_w) AM_RANGE(0x6802, 0x6802) AM_WRITE(galaxold_coin_counter_w)
@ -62,11 +62,11 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( turpins_map, AS_PROGRAM, 8 ) static ADDRESS_MAP_START( turpins_map, AS_PROGRAM, 8 )
AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0x9400, 0x97ff) AM_READWRITE(galaxold_videoram_r, galaxold_videoram_w) AM_RANGE(0x9400, 0x97ff) AM_READWRITE(galaxold_videoram_r, galaxold_videoram_w)
AM_RANGE(0x9800, 0x983f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE(&galaxold_attributesram) AM_RANGE(0x9800, 0x983f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0x9840, 0x985f) AM_RAM AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0x9840, 0x985f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
AM_RANGE(0x9860, 0x987f) AM_RAM AM_BASE(&galaxold_bulletsram) AM_SIZE(&galaxold_bulletsram_size) AM_RANGE(0x9860, 0x987f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_bulletsram) AM_SIZE_MEMBER(galaxold_state, m_bulletsram_size)
AM_RANGE(0x9880, 0x98ff) AM_RAM AM_RANGE(0x9880, 0x98ff) AM_RAM
AM_RANGE(0xa000, 0xa000) AM_READ_PORT("IN0") AM_RANGE(0xa000, 0xa000) AM_READ_PORT("IN0")
@ -94,10 +94,10 @@ static ADDRESS_MAP_START( ckongs_map, AS_PROGRAM, 8 )
AM_RANGE(0x6000, 0x6bff) AM_RAM AM_RANGE(0x6000, 0x6bff) AM_RAM
AM_RANGE(0x7000, 0x7003) AM_DEVREADWRITE("ppi8255_0", ppi8255_r, ppi8255_w) AM_RANGE(0x7000, 0x7003) AM_DEVREADWRITE("ppi8255_0", ppi8255_r, ppi8255_w)
AM_RANGE(0x7800, 0x7803) AM_DEVREADWRITE("ppi8255_1", ppi8255_r, ppi8255_w) AM_RANGE(0x7800, 0x7803) AM_DEVREADWRITE("ppi8255_1", ppi8255_r, ppi8255_w)
AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0x9800, 0x983f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE(&galaxold_attributesram) AM_RANGE(0x9800, 0x983f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0x9840, 0x985f) AM_RAM AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0x9840, 0x985f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
AM_RANGE(0x9860, 0x987f) AM_RAM AM_BASE(&galaxold_bulletsram) AM_SIZE(&galaxold_bulletsram_size) AM_RANGE(0x9860, 0x987f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_bulletsram) AM_SIZE_MEMBER(galaxold_state, m_bulletsram_size)
AM_RANGE(0x9880, 0x98ff) AM_RAM AM_RANGE(0x9880, 0x98ff) AM_RAM
AM_RANGE(0xa801, 0xa801) AM_WRITE(galaxold_nmi_enable_w) AM_RANGE(0xa801, 0xa801) AM_WRITE(galaxold_nmi_enable_w)
AM_RANGE(0xa802, 0xa802) AM_WRITE(galaxold_coin_counter_w) AM_RANGE(0xa802, 0xa802) AM_WRITE(galaxold_coin_counter_w)
@ -121,11 +121,11 @@ static WRITE8_DEVICE_HANDLER(mars_ppi8255_w)
static ADDRESS_MAP_START( mars_map, AS_PROGRAM, 8 ) static ADDRESS_MAP_START( mars_map, AS_PROGRAM, 8 )
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x4800, 0x4bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0x4800, 0x4bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0x4c00, 0x4fff) AM_READ(galaxold_videoram_r) AM_RANGE(0x4c00, 0x4fff) AM_READ(galaxold_videoram_r)
AM_RANGE(0x5000, 0x503f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE(&galaxold_attributesram) AM_RANGE(0x5000, 0x503f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0x5040, 0x505f) AM_RAM AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0x5040, 0x505f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
AM_RANGE(0x5060, 0x507f) AM_RAM AM_BASE(&galaxold_bulletsram) AM_SIZE(&galaxold_bulletsram_size) AM_RANGE(0x5060, 0x507f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_bulletsram) AM_SIZE_MEMBER(galaxold_state, m_bulletsram_size)
AM_RANGE(0x5080, 0x50ff) AM_RAM AM_RANGE(0x5080, 0x50ff) AM_RAM
AM_RANGE(0x6800, 0x6800) AM_WRITE(galaxold_coin_counter_1_w) AM_RANGE(0x6800, 0x6800) AM_WRITE(galaxold_coin_counter_1_w)
AM_RANGE(0x6801, 0x6801) AM_WRITE(galaxold_stars_enable_w) AM_RANGE(0x6801, 0x6801) AM_WRITE(galaxold_stars_enable_w)
@ -143,11 +143,11 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( newsin7_map, AS_PROGRAM, 8 ) static ADDRESS_MAP_START( newsin7_map, AS_PROGRAM, 8 )
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x4800, 0x4bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0x4800, 0x4bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0x4c00, 0x4fff) AM_READ(galaxold_videoram_r) AM_RANGE(0x4c00, 0x4fff) AM_READ(galaxold_videoram_r)
AM_RANGE(0x5000, 0x503f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE(&galaxold_attributesram) AM_RANGE(0x5000, 0x503f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0x5040, 0x505f) AM_RAM AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0x5040, 0x505f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
AM_RANGE(0x5060, 0x507f) AM_RAM AM_BASE(&galaxold_bulletsram) AM_SIZE(&galaxold_bulletsram_size) AM_RANGE(0x5060, 0x507f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_bulletsram) AM_SIZE_MEMBER(galaxold_state, m_bulletsram_size)
AM_RANGE(0x5080, 0x50ff) AM_RAM AM_RANGE(0x5080, 0x50ff) AM_RAM
AM_RANGE(0x6800, 0x6800) AM_WRITE(galaxold_coin_counter_1_w) AM_RANGE(0x6800, 0x6800) AM_WRITE(galaxold_coin_counter_1_w)
AM_RANGE(0x6801, 0x6801) AM_WRITE(galaxold_stars_enable_w) AM_RANGE(0x6801, 0x6801) AM_WRITE(galaxold_stars_enable_w)
@ -165,11 +165,11 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( mrkougar_map, AS_PROGRAM, 8 ) static ADDRESS_MAP_START( mrkougar_map, AS_PROGRAM, 8 )
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x4800, 0x4bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0x4800, 0x4bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0x4c00, 0x4fff) AM_READWRITE(galaxold_videoram_r, galaxold_videoram_w) AM_RANGE(0x4c00, 0x4fff) AM_READWRITE(galaxold_videoram_r, galaxold_videoram_w)
AM_RANGE(0x5000, 0x503f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE(&galaxold_attributesram) AM_RANGE(0x5000, 0x503f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0x5040, 0x505f) AM_RAM AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0x5040, 0x505f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
AM_RANGE(0x5060, 0x507f) AM_RAM AM_BASE(&galaxold_bulletsram) AM_SIZE(&galaxold_bulletsram_size) AM_RANGE(0x5060, 0x507f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_bulletsram) AM_SIZE_MEMBER(galaxold_state, m_bulletsram_size)
AM_RANGE(0x5080, 0x50ff) AM_RAM AM_RANGE(0x5080, 0x50ff) AM_RAM
AM_RANGE(0x6800, 0x6800) AM_WRITE(galaxold_coin_counter_1_w) AM_RANGE(0x6800, 0x6800) AM_WRITE(galaxold_coin_counter_1_w)
AM_RANGE(0x6801, 0x6801) AM_WRITE(galaxold_nmi_enable_w) AM_RANGE(0x6801, 0x6801) AM_WRITE(galaxold_nmi_enable_w)
@ -185,11 +185,11 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( hotshock_map, AS_PROGRAM, 8 ) static ADDRESS_MAP_START( hotshock_map, AS_PROGRAM, 8 )
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x4800, 0x4bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0x4800, 0x4bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0x4c00, 0x4fff) AM_READ(galaxold_videoram_r) AM_RANGE(0x4c00, 0x4fff) AM_READ(galaxold_videoram_r)
AM_RANGE(0x5000, 0x503f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE(&galaxold_attributesram) AM_RANGE(0x5000, 0x503f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0x5040, 0x505f) AM_RAM AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0x5040, 0x505f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
AM_RANGE(0x5060, 0x507f) AM_RAM AM_BASE(&galaxold_bulletsram) AM_SIZE(&galaxold_bulletsram_size) AM_RANGE(0x5060, 0x507f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_bulletsram) AM_SIZE_MEMBER(galaxold_state, m_bulletsram_size)
AM_RANGE(0x5080, 0x50ff) AM_RAM AM_RANGE(0x5080, 0x50ff) AM_RAM
AM_RANGE(0x6000, 0x6000) AM_WRITE(galaxold_coin_counter_2_w) AM_RANGE(0x6000, 0x6000) AM_WRITE(galaxold_coin_counter_2_w)
AM_RANGE(0x6002, 0x6002) AM_WRITE(galaxold_coin_counter_1_w) AM_RANGE(0x6002, 0x6002) AM_WRITE(galaxold_coin_counter_1_w)
@ -209,16 +209,16 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( hunchbks_map, AS_PROGRAM, 8 ) static ADDRESS_MAP_START( hunchbks_map, AS_PROGRAM, 8 )
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1210, 0x1213) AM_DEVREADWRITE("ppi8255_1", ppi8255_r, ppi8255_w) AM_RANGE(0x1210, 0x1213) AM_DEVREADWRITE("ppi8255_1", ppi8255_r, ppi8255_w)
AM_RANGE(0x1400, 0x143f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE(&galaxold_attributesram) AM_RANGE(0x1400, 0x143f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0x1440, 0x145f) AM_RAM AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0x1440, 0x145f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
AM_RANGE(0x1460, 0x147f) AM_RAM AM_BASE(&galaxold_bulletsram) AM_SIZE(&galaxold_bulletsram_size) AM_RANGE(0x1460, 0x147f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_bulletsram) AM_SIZE_MEMBER(galaxold_state, m_bulletsram_size)
AM_RANGE(0x1480, 0x14ff) AM_RAM AM_RANGE(0x1480, 0x14ff) AM_RAM
AM_RANGE(0x1500, 0x1503) AM_DEVREADWRITE("ppi8255_0", ppi8255_r, ppi8255_w) AM_RANGE(0x1500, 0x1503) AM_DEVREADWRITE("ppi8255_0", ppi8255_r, ppi8255_w)
AM_RANGE(0x1606, 0x1606) AM_WRITE(galaxold_flip_screen_x_w) AM_RANGE(0x1606, 0x1606) AM_WRITE(galaxold_flip_screen_x_w)
AM_RANGE(0x1607, 0x1607) AM_WRITE(galaxold_flip_screen_y_w) AM_RANGE(0x1607, 0x1607) AM_WRITE(galaxold_flip_screen_y_w)
AM_RANGE(0x1680, 0x1680) AM_READ(watchdog_reset_r) AM_RANGE(0x1680, 0x1680) AM_READ(watchdog_reset_r)
AM_RANGE(0x1780, 0x1780) AM_READ(watchdog_reset_r) AM_RANGE(0x1780, 0x1780) AM_READ(watchdog_reset_r)
AM_RANGE(0x1800, 0x1bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0x1800, 0x1bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0x1c00, 0x1fff) AM_RAM AM_RANGE(0x1c00, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x2fff) AM_ROM AM_RANGE(0x2000, 0x2fff) AM_ROM
AM_RANGE(0x3000, 0x3fff) AM_READWRITE(hunchbks_mirror_r, hunchbks_mirror_w) AM_RANGE(0x3000, 0x3fff) AM_READWRITE(hunchbks_mirror_r, hunchbks_mirror_w)
@ -233,10 +233,10 @@ static ADDRESS_MAP_START( mimonscr_map, AS_PROGRAM, 8 )
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_READWRITE(galaxold_videoram_r, galaxold_videoram_w) /* mirror address?, probably not */ AM_RANGE(0x4000, 0x43ff) AM_READWRITE(galaxold_videoram_r, galaxold_videoram_w) /* mirror address?, probably not */
AM_RANGE(0x4400, 0x47ff) AM_RAM AM_RANGE(0x4400, 0x47ff) AM_RAM
AM_RANGE(0x4800, 0x4bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0x4800, 0x4bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0x5000, 0x503f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE(&galaxold_attributesram) AM_RANGE(0x5000, 0x503f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0x5040, 0x505f) AM_RAM AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0x5040, 0x505f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
AM_RANGE(0x5060, 0x507f) AM_RAM AM_BASE(&galaxold_bulletsram) AM_SIZE(&galaxold_bulletsram_size) AM_RANGE(0x5060, 0x507f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_bulletsram) AM_SIZE_MEMBER(galaxold_state, m_bulletsram_size)
AM_RANGE(0x5080, 0x50ff) AM_RAM AM_RANGE(0x5080, 0x50ff) AM_RAM
AM_RANGE(0x6801, 0x6801) AM_WRITE(galaxold_nmi_enable_w) AM_RANGE(0x6801, 0x6801) AM_WRITE(galaxold_nmi_enable_w)
AM_RANGE(0x6800, 0x6802) AM_WRITE(galaxold_gfxbank_w) AM_RANGE(0x6800, 0x6802) AM_WRITE(galaxold_gfxbank_w)
@ -252,10 +252,10 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( ad2083_map, AS_PROGRAM, 8 ) static ADDRESS_MAP_START( ad2083_map, AS_PROGRAM, 8 )
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x4800, 0x4bff) AM_READWRITE(galaxold_videoram_r, galaxold_videoram_w) AM_BASE(&galaxold_videoram) AM_RANGE(0x4800, 0x4bff) AM_READWRITE(galaxold_videoram_r, galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram)
AM_RANGE(0x5000, 0x503f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE(&galaxold_attributesram) AM_RANGE(0x5000, 0x503f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram)
AM_RANGE(0x5040, 0x505f) AM_RAM AM_BASE(&galaxold_spriteram) AM_SIZE(&galaxold_spriteram_size) AM_RANGE(0x5040, 0x505f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size)
AM_RANGE(0x5060, 0x507f) AM_RAM AM_BASE(&galaxold_bulletsram) AM_SIZE(&galaxold_bulletsram_size) AM_RANGE(0x5060, 0x507f) AM_RAM AM_BASE_MEMBER(galaxold_state, m_bulletsram) AM_SIZE_MEMBER(galaxold_state, m_bulletsram_size)
AM_RANGE(0x6004, 0x6004) AM_WRITE(hotshock_flip_screen_w) AM_RANGE(0x6004, 0x6004) AM_WRITE(hotshock_flip_screen_w)
AM_RANGE(0x6800, 0x6800) AM_WRITE(galaxold_coin_counter_2_w) AM_RANGE(0x6800, 0x6800) AM_WRITE(galaxold_coin_counter_2_w)
AM_RANGE(0x6801, 0x6801) AM_WRITE(galaxold_nmi_enable_w) AM_RANGE(0x6801, 0x6801) AM_WRITE(galaxold_nmi_enable_w)
@ -1206,22 +1206,23 @@ static GFXDECODE_START( scramble )
GFXDECODE_END GFXDECODE_END
static UINT8 *scramble_soundram;
static READ8_HANDLER(scramble_soundram_r) static READ8_HANDLER(scramble_soundram_r)
{ {
return scramble_soundram[offset & 0x03ff]; scramble_state *state = space->machine().driver_data<scramble_state>();
return state->m_soundram[offset & 0x03ff];
} }
static WRITE8_HANDLER(scramble_soundram_w) static WRITE8_HANDLER(scramble_soundram_w)
{ {
scramble_soundram[offset & 0x03ff] = data; scramble_state *state = space->machine().driver_data<scramble_state>();
state->m_soundram[offset & 0x03ff] = data;
} }
static ADDRESS_MAP_START( scramble_sound_map, AS_PROGRAM, 8 ) static ADDRESS_MAP_START( scramble_sound_map, AS_PROGRAM, 8 )
AM_RANGE(0x0000, 0x2fff) AM_ROM AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_READWRITE(scramble_soundram_r, scramble_soundram_w) AM_RANGE(0x8000, 0x8fff) AM_READWRITE(scramble_soundram_r, scramble_soundram_w)
AM_RANGE(0x8000, 0x83ff) AM_WRITENOP AM_BASE(&scramble_soundram) /* only here to initialize pointer */ AM_RANGE(0x8000, 0x83ff) AM_WRITENOP AM_BASE_MEMBER(scramble_state, m_soundram) /* only here to initialize pointer */
AM_RANGE(0x9000, 0x9fff) AM_WRITE(scramble_filter_w) AM_RANGE(0x9000, 0x9fff) AM_WRITE(scramble_filter_w)
ADDRESS_MAP_END ADDRESS_MAP_END
@ -1233,7 +1234,7 @@ static ADDRESS_MAP_START( scramble_sound_io_map, AS_IO, 8 )
AM_RANGE(0x80, 0x80) AM_DEVREADWRITE("8910.2", ay8910_r, ay8910_data_w) AM_RANGE(0x80, 0x80) AM_DEVREADWRITE("8910.2", ay8910_r, ay8910_data_w)
ADDRESS_MAP_END ADDRESS_MAP_END
static MACHINE_CONFIG_START( scramble, driver_device ) static MACHINE_CONFIG_START( scramble, scramble_state )
/* basic machine hardware */ /* basic machine hardware */
MCFG_CPU_ADD("maincpu", Z80, 18432000/6) /* 3.072 MHz */ MCFG_CPU_ADD("maincpu", Z80, 18432000/6) /* 3.072 MHz */
@ -1313,7 +1314,7 @@ static MACHINE_CONFIG_DERIVED( newsin7, scramble )
MCFG_GFXDECODE(newsin7) MCFG_GFXDECODE(newsin7)
MCFG_PALETTE_LENGTH(32+64+2+0) /* 32 for characters, 64 for stars, 2 for bullets, 0/1 for background */ MCFG_PALETTE_LENGTH(32+64+2+0) /* 32 for characters, 64 for stars, 2 for bullets, 0/1 for background */
MCFG_PALETTE_INIT(galaxold) MCFG_PALETTE_INIT(galaxold)
MCFG_VIDEO_START(newsin7) MCFG_VIDEO_START(scrambold)
MACHINE_CONFIG_END MACHINE_CONFIG_END
static MACHINE_CONFIG_DERIVED( mrkougar, scramble ) static MACHINE_CONFIG_DERIVED( mrkougar, scramble )
@ -1463,7 +1464,7 @@ static MACHINE_CONFIG_DERIVED( hncholms, hunchbks )
MCFG_VIDEO_START(scorpion) MCFG_VIDEO_START(scorpion)
MACHINE_CONFIG_END MACHINE_CONFIG_END
static MACHINE_CONFIG_START( ad2083, driver_device ) static MACHINE_CONFIG_START( ad2083, scramble_state )
/* basic machine hardware */ /* basic machine hardware */
MCFG_CPU_ADD("maincpu", Z80, 18432000/6) /* 3.072 MHz */ MCFG_CPU_ADD("maincpu", Z80, 18432000/6) /* 3.072 MHz */
MCFG_CPU_PROGRAM_MAP(ad2083_map) MCFG_CPU_PROGRAM_MAP(ad2083_map)

View File

@ -5,11 +5,13 @@
***************************************************************************/ ***************************************************************************/
class fastfred_state : public driver_device #include "includes/galaxold.h"
class fastfred_state : public galaxold_state
{ {
public: public:
fastfred_state(running_machine &machine, const driver_device_config_base &config) fastfred_state(running_machine &machine, const driver_device_config_base &config)
: driver_device(machine, config) { } : galaxold_state(machine, config) { }
UINT8 m_imago_sprites[0x800*3]; UINT8 m_imago_sprites[0x800*3];
UINT16 m_imago_sprites_address; UINT16 m_imago_sprites_address;

View File

@ -1,35 +1,90 @@
/*************************************************************************** /***************************************************************************
Galaxian hardware family Galaxian hardware family (old)
This include file is used by the following drivers: This include file is used by the following drivers:
- galaxian.c - dambustr.c
- galaxold.c
- scramble.c - scramble.c
- scobra.c - scobra.c
- frogger.c
- amidar.c
- dambustr.c
***************************************************************************/ ***************************************************************************/
#include "machine/8255ppi.h" #ifndef __GALAXOLD_H__
#define __GALAXOLD_H__
/* star circuit */
#define STAR_COUNT 252
struct star
{
int x, y, color;
};
class galaxold_state : public driver_device
{
public:
galaxold_state(running_machine &machine, const driver_device_config_base &config)
: driver_device(machine, config) { }
UINT8 *m_videoram;
UINT8 *m_spriteram;
UINT8 *m_spriteram2;
UINT8 *m_attributesram;
UINT8 *m_bulletsram;
UINT8 *m_rockclim_videoram;
UINT8 *m_racknrol_tiles_bank;
size_t m_spriteram_size;
size_t m_spriteram2_size;
size_t m_bulletsram_size;
int m_irq_line;
UINT8 m__4in1_bank;
tilemap_t *m_bg_tilemap;
tilemap_t *m_rockclim_tilemap;
int m_mooncrst_gfxextend;
int m_spriteram2_present;
UINT8 m_gfxbank[5];
UINT8 m_flipscreen_x;
UINT8 m_flipscreen_y;
UINT8 m_color_mask;
tilemap_t *m_dambustr_tilemap2;
UINT8 *m_dambustr_videoram2;
void (*m_modify_charcode)(running_machine &machine, UINT16 *code, UINT8 x); /* function to call to do character banking */
void (*m_modify_spritecode)(running_machine &machine, UINT8 *spriteram, int*, int*, int*, int); /* function to call to do sprite banking */
void (*m_modify_color)(UINT8 *color); /* function to call to do modify how the color codes map to the PROM */
void (*m_modify_ypos)(UINT8*); /* function to call to do modify how vertical positioning bits are connected */
void (*m_tilemap_set_scroll)( tilemap_t *, int col, int value );
UINT8 m_timer_adjusted;
UINT8 m_darkplnt_bullet_color;
void (*m_draw_bullets)(running_machine &,bitmap_t *,const rectangle *, int, int, int); /* function to call to draw a bullet */
UINT8 m_background_enable;
UINT8 m_background_red;
UINT8 m_background_green;
UINT8 m_background_blue;
void (*m_draw_background)(running_machine &machine, bitmap_t *bitmap, const rectangle *cliprect); /* function to call to draw the background */
UINT16 m_rockclim_v;
UINT16 m_rockclim_h;
int m_dambustr_bg_split_line;
int m_dambustr_bg_color_1;
int m_dambustr_bg_color_2;
int m_dambustr_bg_priority;
int m_dambustr_char_bank;
bitmap_t *m_dambustr_tmpbitmap;
void (*m_draw_stars)(running_machine &machine, bitmap_t *, const rectangle *); /* function to call to draw the star layer */
int m_stars_colors_start;
INT32 m_stars_scrollpos;
UINT8 m_stars_on;
UINT8 m_stars_blink_state;
emu_timer *m_stars_blink_timer;
emu_timer *m_stars_scroll_timer;
struct star m_stars[STAR_COUNT];
};
/*----------- defined in video/galaxold.c -----------*/ /*----------- defined in video/galaxold.c -----------*/
extern UINT8 *galaxold_videoram;
extern UINT8 *galaxold_spriteram;
extern UINT8 *galaxold_spriteram2;
extern UINT8 *galaxold_attributesram;
extern UINT8 *galaxold_bulletsram;
extern UINT8 *rockclim_videoram;
extern UINT8 *racknrol_tiles_bank;
extern size_t galaxold_spriteram_size;
extern size_t galaxold_spriteram2_size;
extern size_t galaxold_bulletsram_size;
extern UINT8 galaxold_stars_on;
PALETTE_INIT( galaxold ); PALETTE_INIT( galaxold );
PALETTE_INIT( scrambold ); PALETTE_INIT( scrambold );
PALETTE_INIT( darkplnt ); PALETTE_INIT( darkplnt );
@ -77,7 +132,6 @@ VIDEO_START( stratgyx );
VIDEO_START( mimonkey ); VIDEO_START( mimonkey );
VIDEO_START( mariner ); VIDEO_START( mariner );
VIDEO_START( ckongs ); VIDEO_START( ckongs );
VIDEO_START( newsin7 );
VIDEO_START( rockclim ); VIDEO_START( rockclim );
VIDEO_START( drivfrcg ); VIDEO_START( drivfrcg );
VIDEO_START( bongo ); VIDEO_START( bongo );
@ -127,66 +181,4 @@ CUSTOM_INPUT( _4in1_fake_port_r );
INTERRUPT_GEN( hunchbks_vh_interrupt ); INTERRUPT_GEN( hunchbks_vh_interrupt );
#endif
/*----------- defined in machine/scramble.c -----------*/
extern const ppi8255_interface scramble_ppi_0_intf;
extern const ppi8255_interface scramble_ppi_1_intf;
extern const ppi8255_interface stratgyx_ppi_1_intf;
extern const ppi8255_interface scramble_protection_ppi_1_intf;
extern const ppi8255_interface mrkougar_ppi_1_intf;
DRIVER_INIT( scramble_ppi );
DRIVER_INIT( stratgyx );
DRIVER_INIT( tazmani2 );
DRIVER_INIT( ckongs );
DRIVER_INIT( mariner );
DRIVER_INIT( devilfsh );
DRIVER_INIT( mars );
DRIVER_INIT( hotshock );
DRIVER_INIT( cavelon );
DRIVER_INIT( darkplnt );
DRIVER_INIT( mimonkey );
DRIVER_INIT( mimonsco );
DRIVER_INIT( mimonscr );
DRIVER_INIT( rescue );
DRIVER_INIT( minefld );
DRIVER_INIT( hustler );
DRIVER_INIT( hustlerd );
DRIVER_INIT( billiard );
DRIVER_INIT( mrkougar );
DRIVER_INIT( mrkougb );
DRIVER_INIT( ad2083 );
MACHINE_RESET( scramble );
MACHINE_RESET( explorer );
READ8_HANDLER( triplep_pip_r );
READ8_HANDLER( triplep_pap_r );
READ8_HANDLER( hunchbks_mirror_r );
WRITE8_HANDLER( hunchbks_mirror_w );
CUSTOM_INPUT( darkplnt_custom_r );
/*----------- defined in audio/scramble.c -----------*/
void scramble_sh_init(running_machine &machine);
WRITE_LINE_DEVICE_HANDLER( scramble_sh_7474_q_callback );
WRITE8_HANDLER( scramble_filter_w );
WRITE8_HANDLER( frogger_filter_w );
READ8_DEVICE_HANDLER( scramble_portB_r );
READ8_DEVICE_HANDLER( frogger_portB_r );
READ8_DEVICE_HANDLER( hotshock_soundlatch_r );
WRITE8_DEVICE_HANDLER( scramble_sh_irqtrigger_w );
WRITE8_DEVICE_HANDLER( mrkougar_sh_irqtrigger_w );
WRITE8_HANDLER( hotshock_sh_irqtrigger_w );
MACHINE_CONFIG_EXTERN( ad2083_audio );

View File

@ -0,0 +1,78 @@
#include "machine/8255ppi.h"
#include "includes/galaxold.h"
class scramble_state : public galaxold_state
{
public:
scramble_state(running_machine &machine, const driver_device_config_base &config)
: galaxold_state(machine, config) { }
UINT8 *m_soundram;
UINT8 m_cavelon_bank;
UINT8 m_security_2B_counter;
UINT8 m_xb;
};
/*----------- defined in machine/scramble.c -----------*/
extern const ppi8255_interface scramble_ppi_0_intf;
extern const ppi8255_interface scramble_ppi_1_intf;
extern const ppi8255_interface stratgyx_ppi_1_intf;
extern const ppi8255_interface scramble_protection_ppi_1_intf;
extern const ppi8255_interface mrkougar_ppi_1_intf;
DRIVER_INIT( scramble_ppi );
DRIVER_INIT( stratgyx );
DRIVER_INIT( tazmani2 );
DRIVER_INIT( ckongs );
DRIVER_INIT( mariner );
DRIVER_INIT( devilfsh );
DRIVER_INIT( mars );
DRIVER_INIT( hotshock );
DRIVER_INIT( cavelon );
DRIVER_INIT( darkplnt );
DRIVER_INIT( mimonkey );
DRIVER_INIT( mimonsco );
DRIVER_INIT( mimonscr );
DRIVER_INIT( rescue );
DRIVER_INIT( minefld );
DRIVER_INIT( hustler );
DRIVER_INIT( hustlerd );
DRIVER_INIT( billiard );
DRIVER_INIT( mrkougar );
DRIVER_INIT( mrkougb );
DRIVER_INIT( ad2083 );
MACHINE_RESET( scramble );
MACHINE_RESET( explorer );
READ8_HANDLER( triplep_pip_r );
READ8_HANDLER( triplep_pap_r );
READ8_HANDLER( hunchbks_mirror_r );
WRITE8_HANDLER( hunchbks_mirror_w );
CUSTOM_INPUT( darkplnt_custom_r );
/*----------- defined in audio/scramble.c -----------*/
void scramble_sh_init(running_machine &machine);
WRITE_LINE_DEVICE_HANDLER( scramble_sh_7474_q_callback );
WRITE8_HANDLER( scramble_filter_w );
WRITE8_HANDLER( frogger_filter_w );
READ8_DEVICE_HANDLER( scramble_portB_r );
READ8_DEVICE_HANDLER( frogger_portB_r );
READ8_DEVICE_HANDLER( hotshock_soundlatch_r );
WRITE8_DEVICE_HANDLER( scramble_sh_irqtrigger_w );
WRITE8_DEVICE_HANDLER( mrkougar_sh_irqtrigger_w );
WRITE8_HANDLER( hotshock_sh_irqtrigger_w );
MACHINE_CONFIG_EXTERN( ad2083_audio );

View File

@ -11,12 +11,10 @@
#include "machine/7474.h" #include "machine/7474.h"
#include "includes/galaxold.h" #include "includes/galaxold.h"
static int irq_line;
static UINT8 _4in1_bank;
static IRQ_CALLBACK(hunchbkg_irq_callback) static IRQ_CALLBACK(hunchbkg_irq_callback)
{ {
//galaxold_state *state = device->machine().driver_data<galaxold_state>();
/* for some reason a call to cputag_set_input_line /* for some reason a call to cputag_set_input_line
* is significantly delayed .... * is significantly delayed ....
* *
@ -25,7 +23,7 @@ static IRQ_CALLBACK(hunchbkg_irq_callback)
* Therefore we reset the line without any detour .... * Therefore we reset the line without any detour ....
*/ */
device_set_input_line(device->machine().firstcpu, 0, CLEAR_LINE); device_set_input_line(device->machine().firstcpu, 0, CLEAR_LINE);
//cpu_set_info(device->machine().firstcpu, CPUINFO_INT_INPUT_STATE + irq_line, CLEAR_LINE); //cpu_set_info(device->machine().firstcpu, CPUINFO_INT_INPUT_STATE + state->m_irq_line, CLEAR_LINE);
return 0x03; return 0x03;
} }
@ -39,8 +37,9 @@ WRITE_LINE_DEVICE_HANDLER( galaxold_7474_9m_2_q_callback )
WRITE_LINE_DEVICE_HANDLER( galaxold_7474_9m_1_callback ) WRITE_LINE_DEVICE_HANDLER( galaxold_7474_9m_1_callback )
{ {
galaxold_state *drvstate = device->machine().driver_data<galaxold_state>();
/* Q goes to the NMI line */ /* Q goes to the NMI line */
cputag_set_input_line(device->machine(), "maincpu", irq_line, state ? CLEAR_LINE : ASSERT_LINE); cputag_set_input_line(device->machine(), "maincpu", drvstate->m_irq_line, state ? CLEAR_LINE : ASSERT_LINE);
} }
WRITE8_HANDLER( galaxold_nmi_enable_w ) WRITE8_HANDLER( galaxold_nmi_enable_w )
@ -68,9 +67,10 @@ TIMER_DEVICE_CALLBACK( galaxold_interrupt_timer )
static void machine_reset_common(running_machine &machine, int line) static void machine_reset_common(running_machine &machine, int line)
{ {
galaxold_state *state = machine.driver_data<galaxold_state>();
device_t *ttl7474_9m_1 = machine.device("7474_9m_1"); device_t *ttl7474_9m_1 = machine.device("7474_9m_1");
device_t *ttl7474_9m_2 = machine.device("7474_9m_2"); device_t *ttl7474_9m_2 = machine.device("7474_9m_2");
irq_line = line; state->m_irq_line = line;
/* initalize main CPU interrupt generator flip-flops */ /* initalize main CPU interrupt generator flip-flops */
ttl7474_preset_w(ttl7474_9m_2, 1); ttl7474_preset_w(ttl7474_9m_2, 1);
@ -249,17 +249,19 @@ READ8_HANDLER( scramblb_protection_2_r )
WRITE8_HANDLER( _4in1_bank_w ) WRITE8_HANDLER( _4in1_bank_w )
{ {
_4in1_bank = data & 0x03; galaxold_state *state = space->machine().driver_data<galaxold_state>();
galaxold_gfxbank_w(space, 0, _4in1_bank); state->m__4in1_bank = data & 0x03;
memory_set_bank(space->machine(), "bank1", _4in1_bank); galaxold_gfxbank_w(space, 0, state->m__4in1_bank);
memory_set_bank(space->machine(), "bank1", state->m__4in1_bank);
} }
CUSTOM_INPUT( _4in1_fake_port_r ) CUSTOM_INPUT( _4in1_fake_port_r )
{ {
galaxold_state *state = field->port->machine().driver_data<galaxold_state>();
static const char *const portnames[] = { "FAKE1", "FAKE2", "FAKE3", "FAKE4" }; static const char *const portnames[] = { "FAKE1", "FAKE2", "FAKE3", "FAKE4" };
int bit_mask = (FPTR)param; int bit_mask = (FPTR)param;
return (input_port_read(field->port->machine(), portnames[_4in1_bank]) & bit_mask) ? 0x01 : 0x00; return (input_port_read(field->port->machine(), portnames[state->m__4in1_bank]) & bit_mask) ? 0x01 : 0x00;
} }
#ifdef UNUSED_FUNCTION #ifdef UNUSED_FUNCTION
@ -397,6 +399,7 @@ Pin layout is such that links can replace the PAL if encryption is not used.
DRIVER_INIT( 4in1 ) DRIVER_INIT( 4in1 )
{ {
galaxold_state *state = machine.driver_data<galaxold_state>();
address_space *space = machine.device("maincpu")->memory().space(AS_PROGRAM); address_space *space = machine.device("maincpu")->memory().space(AS_PROGRAM);
offs_t i, len = machine.region("maincpu")->bytes(); offs_t i, len = machine.region("maincpu")->bytes();
UINT8 *RAM = machine.region("maincpu")->base(); UINT8 *RAM = machine.region("maincpu")->base();
@ -410,7 +413,7 @@ DRIVER_INIT( 4in1 )
_4in1_bank_w(space, 0, 0); /* set the initial CPU bank */ _4in1_bank_w(space, 0, 0); /* set the initial CPU bank */
state_save_register_global(machine, _4in1_bank); state_save_register_global(machine, state->m__4in1_bank);
} }
INTERRUPT_GEN( hunchbks_vh_interrupt ) INTERRUPT_GEN( hunchbks_vh_interrupt )

View File

@ -10,20 +10,18 @@
#include "emu.h" #include "emu.h"
#include "cpu/z80/z80.h" #include "cpu/z80/z80.h"
#include "machine/8255ppi.h" #include "machine/8255ppi.h"
#include "includes/galaxold.h" #include "includes/scramble.h"
static UINT8 cavelon_bank;
static UINT8 security_2B_counter;
MACHINE_RESET( scramble ) MACHINE_RESET( scramble )
{ {
scramble_state *state = machine.driver_data<scramble_state>();
MACHINE_RESET_CALL(galaxold); MACHINE_RESET_CALL(galaxold);
if (machine.device("audiocpu") != NULL) if (machine.device("audiocpu") != NULL)
scramble_sh_init(machine); scramble_sh_init(machine);
security_2B_counter = 0; state->m_security_2B_counter = 0;
} }
MACHINE_RESET( explorer ) MACHINE_RESET( explorer )
@ -51,11 +49,11 @@ CUSTOM_INPUT( darkplnt_custom_r )
} }
/* state of the security PAL (6J) */ /* state of the security PAL (6J) */
static UINT8 xb;
static WRITE8_DEVICE_HANDLER( scramble_protection_w ) static WRITE8_DEVICE_HANDLER( scramble_protection_w )
{ {
xb = data; scramble_state *state = device->machine().driver_data<scramble_state>();
state->m_xb = data;
} }
static READ8_DEVICE_HANDLER( scramble_protection_r ) static READ8_DEVICE_HANDLER( scramble_protection_r )
@ -107,12 +105,13 @@ READ8_HANDLER( triplep_pap_r )
static void cavelon_banksw(running_machine &machine) static void cavelon_banksw(running_machine &machine)
{ {
scramble_state *state = machine.driver_data<scramble_state>();
/* any read/write access in the 0x8000-0xffff region causes a bank switch. /* any read/write access in the 0x8000-0xffff region causes a bank switch.
Only the lower 0x2000 is switched but we switch the whole region Only the lower 0x2000 is switched but we switch the whole region
to keep the CPU core happy at the boundaries */ to keep the CPU core happy at the boundaries */
cavelon_bank = !cavelon_bank; state->m_cavelon_bank = !state->m_cavelon_bank;
memory_set_bank(machine, "bank1", cavelon_bank); memory_set_bank(machine, "bank1", state->m_cavelon_bank);
} }
static READ8_HANDLER( cavelon_banksw_r ) static READ8_HANDLER( cavelon_banksw_r )
@ -325,6 +324,7 @@ DRIVER_INIT( hotshock )
DRIVER_INIT( cavelon ) DRIVER_INIT( cavelon )
{ {
scramble_state *state = machine.driver_data<scramble_state>();
UINT8 *ROM = machine.region("maincpu")->base(); UINT8 *ROM = machine.region("maincpu")->base();
/* banked ROM */ /* banked ROM */
@ -338,7 +338,7 @@ DRIVER_INIT( cavelon )
machine.device("maincpu")->memory().space(AS_PROGRAM)->nop_write(0x2000, 0x2000); /* ??? */ machine.device("maincpu")->memory().space(AS_PROGRAM)->nop_write(0x2000, 0x2000); /* ??? */
machine.device("maincpu")->memory().space(AS_PROGRAM)->nop_write(0x3800, 0x3801); /* looks suspicously like machine.device("maincpu")->memory().space(AS_PROGRAM)->nop_write(0x3800, 0x3801); /* looks suspicously like
an AY8910, but not sure */ an AY8910, but not sure */
state_save_register_global(machine, cavelon_bank); state_save_register_global(machine, state->m_cavelon_bank);
} }
@ -395,7 +395,7 @@ DRIVER_INIT( mimonscr )
} }
static int bit(int i,int n) INLINE int bit(int i,int n)
{ {
return ((i >> n) & 1); return ((i >> n) & 1);
} }

View File

@ -9,14 +9,13 @@
#include "emu.h" #include "emu.h"
#include "video/resnet.h" #include "video/resnet.h"
#include "includes/fastfred.h" #include "includes/fastfred.h"
#include "includes/galaxold.h"
static const rectangle spritevisiblearea = static const rectangle spritevisiblearea =
{ {
2*8, 32*8-1, 2*8, 32*8-1,
2*8, 30*8-1 2*8, 30*8-1
}; };
static const rectangle spritevisibleareaflipx = static const rectangle spritevisibleareaflipx =
@ -371,7 +370,7 @@ VIDEO_START( imago )
/* the game has a galaxian starfield */ /* the game has a galaxian starfield */
galaxold_init_stars(machine, 256); galaxold_init_stars(machine, 256);
galaxold_stars_on = 1; state->m_stars_on = 1;
/* web colors */ /* web colors */
palette_set_color(machine,256+64+0,MAKE_RGB(0x50,0x00,0x00)); palette_set_color(machine,256+64+0,MAKE_RGB(0x50,0x00,0x00));

File diff suppressed because it is too large Load Diff