Created gfxdecode_device instead of using machine fixed gfxdecode [Miodrag Milanovic]

Updated all devices and drivers for using it.

out of whatsnew:
Note that it is made to work same as before, in some cases it can be more
logic to move gfxdevice into subdevice itself then to keep it in main driver.
This commit is contained in:
Miodrag Milanovic 2014-02-16 17:32:10 +00:00
parent 36d081e756
commit 7cde79cd9c
1646 changed files with 6764 additions and 5192 deletions

View File

@ -149,7 +149,7 @@ static MACHINE_CONFIG_FRAGMENT( c64_xl80 )
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500))
MCFG_SCREEN_REFRESH_RATE(50)
//MCFG_GFXDECODE(c64_xl80)
MCFG_GFXDECODE_ADD("gfxdecode", c64_xl80)
MCFG_MC6845_ADD(HD46505SP_TAG, H46505, MC6845_SCREEN_TAG, XTAL_14_31818MHz, crtc_intf)
MACHINE_CONFIG_END

View File

@ -168,7 +168,7 @@ static MACHINE_CONFIG_FRAGMENT( comx_clm )
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500))
MCFG_SCREEN_REFRESH_RATE(50)
//MCFG_GFXDECODE(comx_clm)
MCFG_GFXDECODE_ADD("gfxdecode", comx_clm)
MCFG_MC6845_ADD(MC6845_TAG, MC6845, MC6845_SCREEN_TAG, XTAL_14_31818MHz/7, crtc_intf)
MACHINE_CONFIG_END

View File

@ -36,6 +36,13 @@ static const gfx_layout iq151_video32_charlayout =
8*8 /* every char takes 8 bytes */
};
static GFXDECODE_START( video32 )
GFXDECODE_END
static MACHINE_CONFIG_FRAGMENT( video32 )
MCFG_GFXDECODE_ADD("gfxdecode", video32)
MACHINE_CONFIG_END
//**************************************************************************
// GLOBAL VARIABLES
//**************************************************************************
@ -52,10 +59,12 @@ const device_type IQ151_VIDEO32 = &device_creator<iq151_video32_device>;
iq151_video32_device::iq151_video32_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
: device_t(mconfig, IQ151_VIDEO32, "IQ151 video32", tag, owner, clock, "iq151_video32", __FILE__),
device_iq151cart_interface( mconfig, *this )
device_iq151cart_interface( mconfig, *this ),
m_gfxdecode(*this, "gfxdecode")
{
}
//-------------------------------------------------
// device_start - device-specific startup
//-------------------------------------------------
@ -65,7 +74,7 @@ void iq151_video32_device::device_start()
m_videoram = (UINT8*)memregion("videoram")->base();
m_chargen = (UINT8*)memregion("chargen")->base();
machine().gfx[0] = auto_alloc(machine(), gfx_element(machine(), iq151_video32_charlayout, m_chargen, 1, 0));
m_gfxdecode->set_gfx(0, auto_alloc(machine(), gfx_element(machine(), iq151_video32_charlayout, m_chargen, 1, 0)));
}
//-------------------------------------------------
@ -81,6 +90,16 @@ void iq151_video32_device::device_reset()
screen->set_visible_area(0, 32*8-1, 0, 32*8-1);
}
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
//-------------------------------------------------
machine_config_constructor iq151_video32_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( video32 );
}
//-------------------------------------------------
// device_rom_region
//-------------------------------------------------

View File

@ -24,6 +24,7 @@ public:
// optional information overrides
virtual const rom_entry *device_rom_region() const;
virtual machine_config_constructor device_mconfig_additions() const;
protected:
// device-level overrides
@ -38,6 +39,7 @@ protected:
private:
UINT8 * m_videoram;
UINT8 * m_chargen;
required_device<gfxdecode_device> m_gfxdecode;
};

View File

@ -36,6 +36,13 @@ static const gfx_layout iq151_video64_charlayout =
8*8 /* every char takes 8 bytes */
};
static GFXDECODE_START( video64 )
GFXDECODE_END
static MACHINE_CONFIG_FRAGMENT( video64 )
MCFG_GFXDECODE_ADD("gfxdecode", video64)
MACHINE_CONFIG_END
//**************************************************************************
// GLOBAL VARIABLES
//**************************************************************************
@ -52,7 +59,8 @@ const device_type IQ151_VIDEO64 = &device_creator<iq151_video64_device>;
iq151_video64_device::iq151_video64_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
: device_t(mconfig, IQ151_VIDEO64, "IQ151 video64", tag, owner, clock, "iq151_video64", __FILE__),
device_iq151cart_interface( mconfig, *this )
device_iq151cart_interface( mconfig, *this ),
m_gfxdecode(*this, "gfxdecode")
{
}
@ -65,7 +73,7 @@ void iq151_video64_device::device_start()
m_videoram = (UINT8*)memregion("videoram")->base();
m_chargen = (UINT8*)memregion("chargen")->base();
machine().gfx[0] = auto_alloc(machine(), gfx_element(machine(), iq151_video64_charlayout, m_chargen, 1, 0));
m_gfxdecode->set_gfx(0,auto_alloc(machine(), gfx_element(machine(), iq151_video64_charlayout, m_chargen, 1, 0)));
}
//-------------------------------------------------
@ -81,6 +89,16 @@ void iq151_video64_device::device_reset()
screen->set_visible_area(0, 64*6-1, 0, 32*8-1);
}
//-------------------------------------------------
// machine_config_additions - device-specific
// machine configurations
//-------------------------------------------------
machine_config_constructor iq151_video64_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( video64 );
}
//-------------------------------------------------
// device_rom_region
//-------------------------------------------------

View File

@ -24,6 +24,7 @@ public:
// optional information overrides
virtual const rom_entry *device_rom_region() const;
virtual machine_config_constructor device_mconfig_additions() const;
protected:
// device-level overrides
@ -39,6 +40,7 @@ protected:
private:
UINT8 * m_videoram;
UINT8 * m_chargen;
required_device<gfxdecode_device> m_gfxdecode;
};

View File

@ -11,6 +11,7 @@
#include "emu.h"
#include "drawgfxm.h"
#include "validity.h"
/***************************************************************************
@ -64,18 +65,45 @@ static inline INT32 normalize_yscroll(bitmap_t &bitmap, INT32 yscroll)
/***************************************************************************
GRAPHICS ELEMENTS
***************************************************************************/
//**************************************************************************
// DEVICE DEFINITIONS
//**************************************************************************
/*-------------------------------------------------
gfx_init - allocate memory for the graphics
elements referenced by a machine
-------------------------------------------------*/
const device_type GFXDECODE = &device_creator<gfxdecode_device>;
void gfx_init(running_machine &machine)
gfxdecode_device::gfxdecode_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
: device_t(mconfig, GFXDECODE, "gfxdecode", tag, owner, clock, "gfxdecode", __FILE__),
m_gfxdecodeinfo(NULL)
{
const gfx_decode_entry *gfxdecodeinfo = machine.config().m_gfxdecodeinfo;
memset(m_gfx, 0, sizeof(m_gfx));
}
//**************************************************************************
// INITIALIZATION AND CONFIGURATION
//**************************************************************************
void gfxdecode_device::static_set_gfxdecodeinfo(device_t &device, const gfx_decode_entry *info)
{
downcast<gfxdecode_device &>(device).m_gfxdecodeinfo = info;
}
//-------------------------------------------------
// device_stop - final cleanup
//-------------------------------------------------
void gfxdecode_device::device_stop()
{
for (int i = 0; i < MAX_GFX_ELEMENTS; i++)
auto_free(machine(), m_gfx[i]);
}
//-------------------------------------------------
// device_start - start up the device
//-------------------------------------------------
void gfxdecode_device::device_start()
{
const gfx_decode_entry *gfxdecodeinfo = m_gfxdecodeinfo;
int curgfx;
// skip if nothing to do
@ -86,7 +114,10 @@ void gfx_init(running_machine &machine)
for (curgfx = 0; curgfx < MAX_GFX_ELEMENTS && gfxdecodeinfo[curgfx].gfxlayout != NULL; curgfx++)
{
const gfx_decode_entry *gfxdecode = &gfxdecodeinfo[curgfx];
memory_region *region = (gfxdecode->memory_region != NULL) ? machine.root_device().memregion(gfxdecode->memory_region) : NULL;
// resolve the region
astring gfxregion;
owner()->subtag(gfxregion, gfxdecode->memory_region);
memory_region *region = (gfxdecode->memory_region != NULL) ? owner()->memregion(gfxregion) : NULL;
UINT32 region_length = (region != NULL) ? (8 * region->bytes()) : 0;
const UINT8 *region_base = (region != NULL) ? region->base() : NULL;
UINT32 xscale = (gfxdecode->xscale == 0) ? 1 : gfxdecode->xscale;
@ -200,11 +231,94 @@ void gfx_init(running_machine &machine)
glcopy.total = total;
// allocate the graphics
machine.gfx[curgfx] = auto_alloc(machine, gfx_element(machine, glcopy, (region_base != NULL) ? region_base + gfxdecode->start : NULL, gfxdecode->total_color_codes, gfxdecode->color_codes_start));
m_gfx[curgfx] = auto_alloc(machine(), gfx_element(machine(), glcopy, (region_base != NULL) ? region_base + gfxdecode->start : NULL, gfxdecode->total_color_codes, gfxdecode->color_codes_start));
}
}
//-------------------------------------------------
// device_validity_check - validate graphics decoding
// configuration
//-------------------------------------------------/
void gfxdecode_device::device_validity_check(validity_checker &valid) const
{
// bail if no gfx
if (!m_gfxdecodeinfo)
return;
// iterate over graphics decoding entries
for (int gfxnum = 0; gfxnum < MAX_GFX_ELEMENTS && m_gfxdecodeinfo[gfxnum].gfxlayout != NULL; gfxnum++)
{
const gfx_decode_entry &gfx = m_gfxdecodeinfo[gfxnum];
const gfx_layout &layout = *gfx.gfxlayout;
// make sure the region exists
const char *region = gfx.memory_region;
if (region != NULL)
{
// resolve the region
astring gfxregion;
owner()->subtag(gfxregion, region);
// loop over gfx regions
UINT32 region_length = valid.region_length(gfxregion);
if (region_length == 0)
mame_printf_error("gfx[%d] references non-existent region '%s'\n", gfxnum, gfxregion.cstr());
// if we have a valid region, and we're not using auto-sizing, check the decode against the region length
else if (!IS_FRAC(layout.total))
{
// determine which plane is at the largest offset
int start = 0;
for (int plane = 0; plane < layout.planes; plane++)
if (layout.planeoffset[plane] > start)
start = layout.planeoffset[plane];
start &= ~(layout.charincrement - 1);
// determine the total length based on this info
int len = layout.total * layout.charincrement;
// do we have enough space in the region to cover the whole decode?
int avail = region_length - (gfx.start & ~(layout.charincrement / 8 - 1));
// if not, this is an error
if ((start + len) / 8 > avail)
mame_printf_error("gfx[%d] extends past allocated memory of region '%s'\n", gfxnum, region);
}
}
int xscale = (m_gfxdecodeinfo[gfxnum].xscale == 0) ? 1 : m_gfxdecodeinfo[gfxnum].xscale;
int yscale = (m_gfxdecodeinfo[gfxnum].yscale == 0) ? 1 : m_gfxdecodeinfo[gfxnum].yscale;
// verify raw decode, which can only be full-region and have no scaling
if (layout.planeoffset[0] == GFX_RAW)
{
if (layout.total != RGN_FRAC(1,1))
mame_printf_error("gfx[%d] with unsupported layout total\n", gfxnum);
if (xscale != 1 || yscale != 1)
mame_printf_error("gfx[%d] with unsupported xscale/yscale\n", gfxnum);
}
// verify traditional decode doesn't have too many planes or is not too large
else
{
if (layout.planes > MAX_GFX_PLANES)
mame_printf_error("gfx[%d] with invalid planes\n", gfxnum);
if (xscale * layout.width > MAX_ABS_GFX_SIZE || yscale * layout.height > MAX_ABS_GFX_SIZE)
mame_printf_error("gfx[%d] with invalid xscale/yscale\n", gfxnum);
}
}
}
/***************************************************************************
GRAPHICS ELEMENTS
***************************************************************************/
//-------------------------------------------------
// gfx_element - constructor
@ -2190,3 +2304,6 @@ void copyrozbitmap_trans(bitmap_rgb32 &dest, const rectangle &cliprect, bitmap_r
DECLARE_NO_PRIORITY;
COPYROZBITMAP_CORE(UINT32, PIXEL_OP_COPY_TRANSPEN, NO_PRIORITY);
}
GFXDECODE_START( empty )
GFXDECODE_END

View File

@ -19,6 +19,22 @@
#define __DRAWGFX_H__
//**************************************************************************
// DEVICE CONFIGURATION MACROS
//**************************************************************************
#define MCFG_GFXDECODE_ADD(_tag, _info) \
MCFG_DEVICE_ADD(_tag, GFXDECODE, 0) \
MCFG_GFXDECODE_INFO(_info) \
#define MCFG_GFXDECODE_INFO(_info) \
gfxdecode_device::static_set_gfxdecodeinfo(*device, GFXDECODE_NAME(_info));
#define MCFG_GFXDECODE_MODIFY(_tag, _info) \
MCFG_DEVICE_MODIFY(_tag) \
MCFG_GFXDECODE_INFO(_info) \
/***************************************************************************
CONSTANTS
@ -288,12 +304,6 @@ struct gfx_decode_entry
FUNCTION PROTOTYPES
***************************************************************************/
// ----- graphics elements -----
// allocate memory for the graphics elements referenced by a machine
void gfx_init(running_machine &machine);
// ----- scanline copying -----
// copy pixels from an 8bpp buffer to a single scanline of a bitmap
@ -426,5 +436,43 @@ inline UINT32 alpha_blend_r32(UINT32 d, UINT32 s, UINT8 level)
((((s & 0xff0000) * level + (d & 0xff0000) * alphad) >> 8) & 0xff0000);
}
//**************************************************************************
// TYPE DEFINITIONS
//**************************************************************************
// ======================> gfxdecode_device
// device type definition
extern const device_type GFXDECODE;
class gfxdecode_device : public device_t
{
public:
// construction/destruction
gfxdecode_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
// static configuration
static void static_set_gfxdecodeinfo(device_t &device, const gfx_decode_entry *info);
gfx_element * gfx(int index) { assert(index < MAX_GFX_ELEMENTS); return m_gfx[index]; }
gfx_element ** gfx() { return m_gfx; }
void set_gfx(int index, gfx_element * val) { assert(index < MAX_GFX_ELEMENTS); m_gfx[index] = val; }
protected:
// device-level overrides
virtual void device_validity_check(validity_checker &valid) const;
virtual void device_start();
virtual void device_stop();
private:
// configuration state
const gfx_decode_entry *m_gfxdecodeinfo; // pointer to array of graphics decoding information
gfx_element * m_gfx[MAX_GFX_ELEMENTS]; // array of pointers to graphic sets (chars, sprites)
};
// device type iterator
typedef device_type_iterator<&device_creator<gfxdecode_device>, gfxdecode_device> gfxdecode_device_iterator;
GFXDECODE_EXTERN(empty);
#endif // __DRAWGFX_H__

View File

@ -35,6 +35,7 @@ driver_device::driver_device(const machine_config &mconfig, device_type type, co
: device_t(mconfig, type, "Driver Device", tag, NULL, 0, "", __FILE__),
device_memory_interface(mconfig, *this),
m_screen(*this, "screen"),
m_gfxdecode(*this, "gfxdecode"),
m_generic_paletteram_8(*this, "paletteram"),
m_generic_paletteram2_8(*this, "paletteram2"),
m_generic_paletteram_16(*this, "paletteram"),

View File

@ -103,6 +103,9 @@
// TYPE DEFINITIONS
//**************************************************************************
// forward declarations
class gfxdecode_device;
typedef delegate<void ()> driver_callback_delegate;
// legacy callback functions
@ -375,6 +378,7 @@ protected:
public:
// generic devices
optional_device<screen_device> m_screen;
optional_device<gfxdecode_device> m_gfxdecode;
// generic pointers
optional_shared_ptr<UINT8> m_generic_paletteram_8;

View File

@ -186,7 +186,6 @@ running_machine::running_machine(const machine_config &_config, osd_interface &o
m_scheduler(*this),
m_lua_engine(*this)
{
memset(gfx, 0, sizeof(gfx));
memset(&m_base_time, 0, sizeof(m_base_time));
// set the machine on all devices
@ -305,9 +304,6 @@ void running_machine::start()
save().save_item(NAME(m_watchdog_enabled));
save().save_item(NAME(m_watchdog_counter));
// allocate the gfx elements prior to device initialization
gfx_init(*this);
// initialize image devices
image_init(*this);
m_tilemap = auto_alloc(*this, tilemap_manager(*this));

View File

@ -268,7 +268,6 @@ public:
cpu_device * firstcpu; // first CPU
// video-related information
gfx_element * gfx[MAX_GFX_ELEMENTS];// array of pointers to graphic sets (chars, sprites)
screen_device * primary_screen; // the primary screen device, or NULL if screenless
palette_t * palette; // global palette object

View File

@ -85,7 +85,7 @@ READ8_MEMBER(tc0091lvc_device::tc0091lvc_pcg1_r)
WRITE8_MEMBER(tc0091lvc_device::tc0091lvc_pcg1_w)
{
m_pcg1_ram[offset] = data;
machine().gfx[m_gfx_index]->mark_dirty((offset+0x4000) / 32);
m_gfxdecode->gfx(m_gfx_index)->mark_dirty((offset+0x4000) / 32);
tx_tilemap->mark_all_dirty();
}
@ -97,7 +97,7 @@ READ8_MEMBER(tc0091lvc_device::tc0091lvc_pcg2_r)
WRITE8_MEMBER(tc0091lvc_device::tc0091lvc_pcg2_w)
{
m_pcg2_ram[offset] = data;
machine().gfx[m_gfx_index]->mark_dirty((offset+0xc000) / 32);
m_gfxdecode->gfx(m_gfx_index)->mark_dirty((offset+0xc000) / 32);
tx_tilemap->mark_all_dirty();
}
@ -110,7 +110,7 @@ WRITE8_MEMBER(tc0091lvc_device::tc0091lvc_vram0_w)
{
m_vram0[offset] = data;
bg0_tilemap->mark_tile_dirty(offset/2);
machine().gfx[m_gfx_index]->mark_dirty((offset+0x8000) / 32);
m_gfxdecode->gfx(m_gfx_index)->mark_dirty((offset+0x8000) / 32);
tx_tilemap->mark_all_dirty();
}
@ -124,7 +124,7 @@ WRITE8_MEMBER(tc0091lvc_device::tc0091lvc_vram1_w)
{
m_vram1[offset] = data;
bg1_tilemap->mark_tile_dirty(offset/2);
machine().gfx[m_gfx_index]->mark_dirty((offset+0x9000) / 32);
m_gfxdecode->gfx(m_gfx_index)->mark_dirty((offset+0x9000) / 32);
tx_tilemap->mark_all_dirty();
}
@ -137,7 +137,7 @@ WRITE8_MEMBER(tc0091lvc_device::tc0091lvc_tvram_w)
{
m_tvram[offset] = data;
tx_tilemap->mark_tile_dirty(offset/2);
machine().gfx[m_gfx_index]->mark_dirty((offset+0xa000) / 32);
m_gfxdecode->gfx(m_gfx_index)->mark_dirty((offset+0xa000) / 32);
tx_tilemap->mark_all_dirty();
}
@ -149,7 +149,7 @@ READ8_MEMBER(tc0091lvc_device::tc0091lvc_spr_r)
WRITE8_MEMBER(tc0091lvc_device::tc0091lvc_spr_w)
{
m_sprram[offset] = data;
machine().gfx[m_gfx_index]->mark_dirty((offset+0xb000) / 32);
m_gfxdecode->gfx(m_gfx_index)->mark_dirty((offset+0xb000) / 32);
tx_tilemap->mark_all_dirty();
}
@ -167,10 +167,22 @@ ADDRESS_MAP_END
tc0091lvc_device::tc0091lvc_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
: device_t(mconfig, TC0091LVC, "TC0091LVC", tag, owner, clock, "tc0091lvc", __FILE__),
device_memory_interface(mconfig, *this),
m_space_config("tc0091lvc", ENDIANNESS_LITTLE, 8,20, 0, NULL, *ADDRESS_MAP_NAME(tc0091lvc_map8))
m_space_config("tc0091lvc", ENDIANNESS_LITTLE, 8,20, 0, NULL, *ADDRESS_MAP_NAME(tc0091lvc_map8)),
m_gfxdecode(*this)
{
}
//-------------------------------------------------
// static_set_gfxdecode_tag: Set the tag of the
// gfx decoder
//-------------------------------------------------
void tc0091lvc_device::static_set_gfxdecode_tag(device_t &device, const char *tag)
{
downcast<tc0091lvc_device &>(device).m_gfxdecode.set_tag(tag);
}
void tc0091lvc_device::device_config_complete()
{
@ -192,6 +204,7 @@ TILE_GET_INFO_MEMBER(tc0091lvc_device::get_bg0_tile_info)
// | (state->m_horshoes_gfxbank << 12);
SET_TILE_INFO_MEMBER(
*m_gfxdecode,
0,
code,
(attr & 0xf0) >> 4,
@ -207,6 +220,7 @@ TILE_GET_INFO_MEMBER(tc0091lvc_device::get_bg1_tile_info)
// | (state->m_horshoes_gfxbank << 12);
SET_TILE_INFO_MEMBER(
*m_gfxdecode,
0,
code,
(attr & 0xf0) >> 4,
@ -220,6 +234,7 @@ TILE_GET_INFO_MEMBER(tc0091lvc_device::get_tx_tile_info)
| ((attr & 0x07) << 8);
SET_TILE_INFO_MEMBER(
*m_gfxdecode,
m_gfx_index,
code,
(attr & 0xf0) >> 4,
@ -270,12 +285,12 @@ void tc0091lvc_device::device_start()
bg1_tilemap->set_scrolldx(38, -21);
for (m_gfx_index = 0; m_gfx_index < MAX_GFX_ELEMENTS; m_gfx_index++)
if (machine().gfx[m_gfx_index] == 0)
if (m_gfxdecode->gfx(m_gfx_index) == 0)
break;
//printf("m_gfx_index %d\n", m_gfx_index);
machine().gfx[m_gfx_index] = auto_alloc(machine(), gfx_element(machine(), char_layout, (UINT8 *)m_pcg_ram, machine().total_colors() / 16, 0));
m_gfxdecode->set_gfx(m_gfx_index, auto_alloc(machine(), gfx_element(machine(), char_layout, (UINT8 *)m_pcg_ram, machine().total_colors() / 16, 0)));
}
void tc0091lvc_device::device_reset()
@ -290,7 +305,7 @@ const address_space_config *tc0091lvc_device::memory_space_config(address_spacen
void tc0091lvc_device::draw_sprites( screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect, UINT8 global_flip )
{
gfx_element *gfx = screen.machine().gfx[1];
gfx_element *gfx = m_gfxdecode->gfx(1);
int count;
for(count=0;count<0x3e7;count+=8)

View File

@ -17,6 +17,9 @@ class tc0091lvc_device : public device_t,
public:
tc0091lvc_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
// static configuration
static void static_set_gfxdecode_tag(device_t &device, const char *tag);
DECLARE_READ8_MEMBER( vregs_r );
DECLARE_WRITE8_MEMBER( vregs_w );
@ -76,8 +79,13 @@ protected:
virtual void device_reset();
virtual const address_space_config *memory_space_config(address_spacenum spacenum = AS_0) const;
address_space_config m_space_config;
required_device<gfxdecode_device> m_gfxdecode;
};
extern const device_type TC0091LVC;
#define MCFG_TC0091LVC_GFXDECODE(_gfxtag) \
tc0091lvc_device::static_set_gfxdecode_tag(*device, "^" _gfxtag);
#endif

View File

@ -28,7 +28,6 @@ machine_config::machine_config(const game_driver &gamedrv, emu_options &options)
m_nvram_handler(NULL),
m_memcard_handler(NULL),
m_video_attributes(0),
m_gfxdecodeinfo(NULL),
m_total_colors(0),
m_default_layout(NULL),
m_gamedrv(gamedrv),

View File

@ -117,7 +117,6 @@ public:
// other parameters
UINT32 m_video_attributes; // flags describing the video system
const gfx_decode_entry *m_gfxdecodeinfo; // pointer to array of graphics decoding information
UINT32 m_total_colors; // total number of colors in the palette
const char * m_default_layout; // default layout for this machine
@ -199,8 +198,6 @@ ATTR_COLD device_t *MACHINE_CONFIG_NAME(_name)(machine_config &config, device_t
// core video parameters
#define MCFG_VIDEO_ATTRIBUTES(_flags) \
config.m_video_attributes = _flags;
#define MCFG_GFXDECODE(_gfx) \
config.m_gfxdecodeinfo = GFXDECODE_NAME(_gfx);
#define MCFG_PALETTE_LENGTH(_length) \
config.m_total_colors = _length;
#define MCFG_DEFAULT_LAYOUT(_layout) \

View File

@ -85,9 +85,9 @@ inline bool tilemap_t::gfx_elements_changed()
// iterate over all used gfx types and set the dirty flag if any of them have changed
for (int gfxnum = 0; usedmask != 0; usedmask >>= 1, gfxnum++)
if ((usedmask & 1) != 0)
if (m_gfx_dirtyseq[gfxnum] != machine().gfx[gfxnum]->dirtyseq())
if (m_gfx_dirtyseq[gfxnum] != m_tileinfo.decoder->gfx(gfxnum)->dirtyseq())
{
m_gfx_dirtyseq[gfxnum] = machine().gfx[gfxnum]->dirtyseq();
m_gfx_dirtyseq[gfxnum] = m_tileinfo.decoder->gfx(gfxnum)->dirtyseq();
isdirty = true;
}
@ -754,7 +754,7 @@ g_profiler.start(PROFILER_TILEMAP_UPDATE);
if (m_tileinfo.gfxnum != 0xff && (m_gfx_used & (1 << m_tileinfo.gfxnum)) == 0)
{
m_gfx_used |= 1 << m_tileinfo.gfxnum;
m_gfx_dirtyseq[m_tileinfo.gfxnum] = machine().gfx[m_tileinfo.gfxnum]->dirtyseq();
m_gfx_dirtyseq[m_tileinfo.gfxnum] = m_tileinfo.decoder->gfx(m_tileinfo.gfxnum)->dirtyseq();
}
g_profiler.stop();

View File

@ -169,7 +169,7 @@
// set the common info for the tile
SET_TILE_INFO(
1, // use machine.gfx[1] for tile graphics
1, // use m_gfxdecode->gfx(1) for tile graphics
code, // the index of the graphics for this tile
color, // the color to use for this tile
(flipx ? TILE_FLIPX : 0) | // flags for this tile; also
@ -431,10 +431,12 @@ struct tile_data
UINT8 flags; // defaults to 0; one or more of TILE_* flags above
UINT8 pen_mask; // defaults to 0xff; mask to apply to pen_data while rendering the tile
UINT8 gfxnum; // defaults to 0xff; specify index of machine.gfx for auto-invalidation on dirty
void set(running_machine &machine, int _gfxnum, int rawcode, int rawcolor, int _flags)
gfxdecode_device *decoder;
void set(running_machine &machine, gfxdecode_device &_decoder, int _gfxnum, int rawcode, int rawcolor, int _flags)
{
gfx_element *gfx = machine.gfx[_gfxnum];
decoder = &_decoder;
gfx_element *gfx = _decoder.gfx(_gfxnum);
int code = rawcode % gfx->elements();
pen_data = gfx->get_data(code);
palette_base = gfx->colorbase() + gfx->granularity() * rawcolor;
@ -772,7 +774,7 @@ private:
#define TILEMAP_MAPPER_MEMBER(_name) tilemap_memory_index _name(UINT32 col, UINT32 row, UINT32 num_cols, UINT32 num_rows)
// useful macro inside of a TILE_GET_INFO callback to set tile information
#define SET_TILE_INFO_MEMBER(GFX,CODE,COLOR,FLAGS) tileinfo.set(machine(), GFX, CODE, COLOR, FLAGS)
#define SET_TILE_INFO_MEMBER(DECODER,GFX,CODE,COLOR,FLAGS) tileinfo.set(machine(), DECODER, GFX, CODE, COLOR, FLAGS)
// Macros for setting tile attributes in the TILE_GET_INFO callback:
// TILE_FLIP_YX assumes that flipy is in bit 1 and flipx is in bit 0

View File

@ -151,9 +151,11 @@ static void ui_gfx_exit(running_machine &machine)
bool ui_gfx_is_relevant(running_machine &machine)
{
gfxdecode_device_iterator gfx_deviter(machine.root_device());
return machine.total_colors() != 0
|| machine.colortable != NULL
|| machine.gfx[0] != NULL
|| gfx_deviter.first() != NULL
|| machine.tilemap().count() != 0;
}
@ -165,6 +167,7 @@ bool ui_gfx_is_relevant(running_machine &machine)
UINT32 ui_gfx_ui_handler(running_machine &machine, render_container *container, UINT32 uistate)
{
ui_gfx_state *state = &ui_gfx;
gfxdecode_device_iterator gfx_deviter(machine.root_device());
// if we have nothing, implicitly cancel
if (!ui_gfx_is_relevant(machine))
@ -191,7 +194,7 @@ again:
case 1:
// if we have graphics sets, display them
if (machine.gfx[0] != NULL)
if (gfx_deviter.first() != NULL)
{
gfxset_handler(machine, container, state);
break;
@ -440,9 +443,11 @@ static void palette_handle_keys(running_machine &machine, ui_gfx_state *state)
static void gfxset_handler(running_machine &machine, render_container *container, ui_gfx_state *state)
{
gfxdecode_device_iterator gfx_deviter(machine.root_device());
gfxdecode_device *m_gfxdecode = gfx_deviter.first();
render_font *ui_font = machine.ui().get_font();
int set = state->gfxset.set;
gfx_element *gfx = machine.gfx[set];
gfx_element *gfx = m_gfxdecode->gfx(set);
float fullwidth, fullheight;
float cellwidth, cellheight;
float chwidth, chheight;
@ -525,7 +530,7 @@ static void gfxset_handler(running_machine &machine, render_container *container
boxbounds.y1 = boxbounds.y0 + fullheight;
// figure out the title and expand the outer box to fit
for (x = 0; x < MAX_GFX_ELEMENTS && machine.gfx[x] != NULL; x++) ;
for (x = 0; x < MAX_GFX_ELEMENTS && m_gfxdecode->gfx(x) != NULL; x++) ;
sprintf(title, "GFX %d/%d %dx%d COLOR %X", state->gfxset.set, x - 1, gfx->width(), gfx->height(), state->gfxset.color[set]);
titlewidth = ui_font->string_width(chheight, machine.render().ui_aspect(), title);
x0 = 0.0f;
@ -604,6 +609,8 @@ static void gfxset_handler(running_machine &machine, render_container *container
static void gfxset_handle_keys(running_machine &machine, ui_gfx_state *state, int xcells, int ycells)
{
gfxdecode_device_iterator gfx_deviter(machine.root_device());
gfxdecode_device *m_gfxdecode = gfx_deviter.first();
ui_gfx_state oldstate = *state;
gfx_element *gfx;
int temp, set;
@ -612,7 +619,7 @@ static void gfxset_handle_keys(running_machine &machine, ui_gfx_state *state, in
if (ui_input_pressed(machine, IPT_UI_PREV_GROUP))
{
for (temp = state->gfxset.set - 1; temp >= 0; temp--)
if (machine.gfx[temp] != NULL)
if (m_gfxdecode->gfx(temp) != NULL)
break;
if (temp >= 0)
state->gfxset.set = temp;
@ -620,7 +627,7 @@ static void gfxset_handle_keys(running_machine &machine, ui_gfx_state *state, in
if (ui_input_pressed(machine, IPT_UI_NEXT_GROUP))
{
for (temp = state->gfxset.set + 1; temp < MAX_GFX_ELEMENTS; temp++)
if (machine.gfx[temp] != NULL)
if (m_gfxdecode->gfx(temp) != NULL)
break;
if (temp < MAX_GFX_ELEMENTS)
state->gfxset.set = temp;
@ -628,7 +635,7 @@ static void gfxset_handle_keys(running_machine &machine, ui_gfx_state *state, in
// cache some info in locals
set = state->gfxset.set;
gfx = machine.gfx[set];
gfx = m_gfxdecode->gfx(set);
// handle cells per line (minus,plus)
if (ui_input_pressed(machine, IPT_UI_ZOOM_OUT))

View File

@ -284,7 +284,6 @@ void validity_checker::validate_one(const game_driver &driver)
validate_roms();
validate_inputs();
validate_display();
validate_gfx();
validate_devices();
}
catch (emu_fatalerror &err)
@ -715,82 +714,6 @@ void validity_checker::validate_display()
}
//-------------------------------------------------
// validate_gfx - validate graphics decoding
// configuration
//-------------------------------------------------
void validity_checker::validate_gfx()
{
// bail if no gfx
if (!m_current_config->m_gfxdecodeinfo)
return;
// iterate over graphics decoding entries
for (int gfxnum = 0; gfxnum < MAX_GFX_ELEMENTS && m_current_config->m_gfxdecodeinfo[gfxnum].gfxlayout != NULL; gfxnum++)
{
const gfx_decode_entry &gfx = m_current_config->m_gfxdecodeinfo[gfxnum];
const gfx_layout &layout = *gfx.gfxlayout;
// make sure the region exists
const char *region = gfx.memory_region;
if (region != NULL)
{
// resolve the region
astring gfxregion;
m_current_config->root_device().subtag(gfxregion, region);
// loop over gfx regions
UINT32 region_length = m_region_map.find(gfxregion);
if (region_length == 0)
mame_printf_error("gfx[%d] references non-existent region '%s'\n", gfxnum, region);
// if we have a valid region, and we're not using auto-sizing, check the decode against the region length
else if (!IS_FRAC(layout.total))
{
// determine which plane is at the largest offset
int start = 0;
for (int plane = 0; plane < layout.planes; plane++)
if (layout.planeoffset[plane] > start)
start = layout.planeoffset[plane];
start &= ~(layout.charincrement - 1);
// determine the total length based on this info
int len = layout.total * layout.charincrement;
// do we have enough space in the region to cover the whole decode?
int avail = region_length - (gfx.start & ~(layout.charincrement / 8 - 1));
// if not, this is an error
if ((start + len) / 8 > avail)
mame_printf_error("gfx[%d] extends past allocated memory of region '%s'\n", gfxnum, region);
}
}
int xscale = (m_current_config->m_gfxdecodeinfo[gfxnum].xscale == 0) ? 1 : m_current_config->m_gfxdecodeinfo[gfxnum].xscale;
int yscale = (m_current_config->m_gfxdecodeinfo[gfxnum].yscale == 0) ? 1 : m_current_config->m_gfxdecodeinfo[gfxnum].yscale;
// verify raw decode, which can only be full-region and have no scaling
if (layout.planeoffset[0] == GFX_RAW)
{
if (layout.total != RGN_FRAC(1,1))
mame_printf_error("gfx[%d] with unsupported layout total\n", gfxnum);
if (xscale != 1 || yscale != 1)
mame_printf_error("gfx[%d] with unsupported xscale/yscale\n", gfxnum);
}
// verify traditional decode doesn't have too many planes or is not too large
else
{
if (layout.planes > MAX_GFX_PLANES)
mame_printf_error("gfx[%d] with invalid planes\n", gfxnum);
if (xscale * layout.width > MAX_ABS_GFX_SIZE || yscale * layout.height > MAX_ABS_GFX_SIZE)
mame_printf_error("gfx[%d] with invalid xscale/yscale\n", gfxnum);
}
}
}
//-------------------------------------------------
// validate_analog_input_field - validate an
// analog input field

View File

@ -46,7 +46,8 @@ public:
// helpers for devices
void validate_tag(const char *tag);
int region_length(const char *tag) { return m_region_map.find(tag); }
private:
// internal helpers
const char *ioport_string_from_index(UINT32 index);
@ -63,7 +64,6 @@ private:
void validate_driver();
void validate_roms();
void validate_display();
void validate_gfx();
void validate_analog_input_field(ioport_field &field);
void validate_dip_settings(ioport_field &field);
void validate_condition(ioport_condition &condition, device_t &device, int_map &port_map);

View File

@ -509,10 +509,6 @@ void video_manager::exit()
// stop recording any movie
end_recording();
// free all the graphics elements
for (int i = 0; i < MAX_GFX_ELEMENTS; i++)
auto_free(machine(), machine().gfx[i]);
// free the snapshot target
machine().render().target_free(m_snap_target);
m_snap_bitmap.reset();

View File

@ -4048,10 +4048,10 @@ void saturn_state::stv_vdp2_draw_basic_tilemap(bitmap_rgb32 &bitmap, const recta
else
{
/* normal */
stv_vdp2_drawgfxzoom(bitmap,cliprect,machine().gfx[gfx],tilecode+(0+(flipyx&1)+(flipyx&2))*tilecodespacing,pal,flipyx&1,flipyx&2,drawxpos >> 16, drawypos >> 16,stv2_current_tilemap.transparency,0,scalex,scaley,SCR_TILESIZE_X, SCR_TILESIZE_Y,stv2_current_tilemap.alpha);
stv_vdp2_drawgfxzoom(bitmap,cliprect,machine().gfx[gfx],tilecode+(1-(flipyx&1)+(flipyx&2))*tilecodespacing,pal,flipyx&1,flipyx&2,(drawxpos+tilesizex) >> 16,drawypos >> 16,stv2_current_tilemap.transparency,0,scalex,scaley,SCR_TILESIZE_X1(tilesizex), SCR_TILESIZE_Y,stv2_current_tilemap.alpha);
stv_vdp2_drawgfxzoom(bitmap,cliprect,machine().gfx[gfx],tilecode+(2+(flipyx&1)-(flipyx&2))*tilecodespacing,pal,flipyx&1,flipyx&2,drawxpos >> 16,(drawypos+tilesizey) >> 16,stv2_current_tilemap.transparency,0,scalex,scaley,SCR_TILESIZE_X, SCR_TILESIZE_Y1(tilesizey),stv2_current_tilemap.alpha);
stv_vdp2_drawgfxzoom(bitmap,cliprect,machine().gfx[gfx],tilecode+(3-(flipyx&1)-(flipyx&2))*tilecodespacing,pal,flipyx&1,flipyx&2,(drawxpos+tilesizex)>> 16,(drawypos+tilesizey) >> 16,stv2_current_tilemap.transparency,0,scalex,scaley,SCR_TILESIZE_X1(tilesizex), SCR_TILESIZE_Y1(tilesizey),stv2_current_tilemap.alpha);
stv_vdp2_drawgfxzoom(bitmap,cliprect,m_gfxdecode->gfx(gfx),tilecode+(0+(flipyx&1)+(flipyx&2))*tilecodespacing,pal,flipyx&1,flipyx&2,drawxpos >> 16, drawypos >> 16,stv2_current_tilemap.transparency,0,scalex,scaley,SCR_TILESIZE_X, SCR_TILESIZE_Y,stv2_current_tilemap.alpha);
stv_vdp2_drawgfxzoom(bitmap,cliprect,m_gfxdecode->gfx(gfx),tilecode+(1-(flipyx&1)+(flipyx&2))*tilecodespacing,pal,flipyx&1,flipyx&2,(drawxpos+tilesizex) >> 16,drawypos >> 16,stv2_current_tilemap.transparency,0,scalex,scaley,SCR_TILESIZE_X1(tilesizex), SCR_TILESIZE_Y,stv2_current_tilemap.alpha);
stv_vdp2_drawgfxzoom(bitmap,cliprect,m_gfxdecode->gfx(gfx),tilecode+(2+(flipyx&1)-(flipyx&2))*tilecodespacing,pal,flipyx&1,flipyx&2,drawxpos >> 16,(drawypos+tilesizey) >> 16,stv2_current_tilemap.transparency,0,scalex,scaley,SCR_TILESIZE_X, SCR_TILESIZE_Y1(tilesizey),stv2_current_tilemap.alpha);
stv_vdp2_drawgfxzoom(bitmap,cliprect,m_gfxdecode->gfx(gfx),tilecode+(3-(flipyx&1)-(flipyx&2))*tilecodespacing,pal,flipyx&1,flipyx&2,(drawxpos+tilesizex)>> 16,(drawypos+tilesizey) >> 16,stv2_current_tilemap.transparency,0,scalex,scaley,SCR_TILESIZE_X1(tilesizex), SCR_TILESIZE_Y1(tilesizey),stv2_current_tilemap.alpha);
}
}
else
@ -4063,7 +4063,7 @@ void saturn_state::stv_vdp2_draw_basic_tilemap(bitmap_rgb32 &bitmap, const recta
stv_vdp2_drawgfxzoom_rgb555(bitmap,cliprect,tilecode,pal,flipyx&1,flipyx&2, drawxpos >> 16, drawypos >> 16,stv2_current_tilemap.transparency,0,scalex,scaley,SCR_TILESIZE_X,SCR_TILESIZE_Y,stv2_current_tilemap.alpha);
}
else
stv_vdp2_drawgfxzoom(bitmap,cliprect,machine().gfx[gfx],tilecode,pal,flipyx&1,flipyx&2, drawxpos >> 16, drawypos >> 16,stv2_current_tilemap.transparency,0,scalex,scaley,SCR_TILESIZE_X,SCR_TILESIZE_Y,stv2_current_tilemap.alpha);
stv_vdp2_drawgfxzoom(bitmap,cliprect,m_gfxdecode->gfx(gfx),tilecode,pal,flipyx&1,flipyx&2, drawxpos >> 16, drawypos >> 16,stv2_current_tilemap.transparency,0,scalex,scaley,SCR_TILESIZE_X,SCR_TILESIZE_Y,stv2_current_tilemap.alpha);
}
}
else
@ -4092,18 +4092,18 @@ void saturn_state::stv_vdp2_draw_basic_tilemap(bitmap_rgb32 &bitmap, const recta
else if (stv2_current_tilemap.transparency == STV_TRANSPARENCY_ALPHA)
{
/* alpha */
stv_vdp2_drawgfx_alpha(bitmap,cliprect,machine().gfx[gfx],tilecode+(0+(flipyx&1)+(flipyx&2))*tilecodespacing,pal,flipyx&1,flipyx&2,drawxpos, drawypos,0,stv2_current_tilemap.alpha);
stv_vdp2_drawgfx_alpha(bitmap,cliprect,machine().gfx[gfx],tilecode+(1-(flipyx&1)+(flipyx&2))*tilecodespacing,pal,flipyx&1,flipyx&2,drawxpos+8,drawypos,0,stv2_current_tilemap.alpha);
stv_vdp2_drawgfx_alpha(bitmap,cliprect,machine().gfx[gfx],tilecode+(2+(flipyx&1)-(flipyx&2))*tilecodespacing,pal,flipyx&1,flipyx&2,drawxpos,drawypos+8,0,stv2_current_tilemap.alpha);
stv_vdp2_drawgfx_alpha(bitmap,cliprect,machine().gfx[gfx],tilecode+(3-(flipyx&1)-(flipyx&2))*tilecodespacing,pal,flipyx&1,flipyx&2,drawxpos+8,drawypos+8,0,stv2_current_tilemap.alpha);
stv_vdp2_drawgfx_alpha(bitmap,cliprect,m_gfxdecode->gfx(gfx),tilecode+(0+(flipyx&1)+(flipyx&2))*tilecodespacing,pal,flipyx&1,flipyx&2,drawxpos, drawypos,0,stv2_current_tilemap.alpha);
stv_vdp2_drawgfx_alpha(bitmap,cliprect,m_gfxdecode->gfx(gfx),tilecode+(1-(flipyx&1)+(flipyx&2))*tilecodespacing,pal,flipyx&1,flipyx&2,drawxpos+8,drawypos,0,stv2_current_tilemap.alpha);
stv_vdp2_drawgfx_alpha(bitmap,cliprect,m_gfxdecode->gfx(gfx),tilecode+(2+(flipyx&1)-(flipyx&2))*tilecodespacing,pal,flipyx&1,flipyx&2,drawxpos,drawypos+8,0,stv2_current_tilemap.alpha);
stv_vdp2_drawgfx_alpha(bitmap,cliprect,m_gfxdecode->gfx(gfx),tilecode+(3-(flipyx&1)-(flipyx&2))*tilecodespacing,pal,flipyx&1,flipyx&2,drawxpos+8,drawypos+8,0,stv2_current_tilemap.alpha);
}
else
{
/* normal */
stv_vdp2_drawgfx_transpen(bitmap,cliprect,machine().gfx[gfx],tilecode+(0+(flipyx&1)+(flipyx&2))*tilecodespacing,pal,flipyx&1,flipyx&2,drawxpos, drawypos,(stv2_current_tilemap.transparency==STV_TRANSPARENCY_PEN)?0:-1);
stv_vdp2_drawgfx_transpen(bitmap,cliprect,machine().gfx[gfx],tilecode+(1-(flipyx&1)+(flipyx&2))*tilecodespacing,pal,flipyx&1,flipyx&2,drawxpos+8,drawypos,(stv2_current_tilemap.transparency==STV_TRANSPARENCY_PEN)?0:-1);
stv_vdp2_drawgfx_transpen(bitmap,cliprect,machine().gfx[gfx],tilecode+(2+(flipyx&1)-(flipyx&2))*tilecodespacing,pal,flipyx&1,flipyx&2,drawxpos,drawypos+8,(stv2_current_tilemap.transparency==STV_TRANSPARENCY_PEN)?0:-1);
stv_vdp2_drawgfx_transpen(bitmap,cliprect,machine().gfx[gfx],tilecode+(3-(flipyx&1)-(flipyx&2))*tilecodespacing,pal,flipyx&1,flipyx&2,drawxpos+8,drawypos+8,(stv2_current_tilemap.transparency==STV_TRANSPARENCY_PEN)?0:-1);
stv_vdp2_drawgfx_transpen(bitmap,cliprect,m_gfxdecode->gfx(gfx),tilecode+(0+(flipyx&1)+(flipyx&2))*tilecodespacing,pal,flipyx&1,flipyx&2,drawxpos, drawypos,(stv2_current_tilemap.transparency==STV_TRANSPARENCY_PEN)?0:-1);
stv_vdp2_drawgfx_transpen(bitmap,cliprect,m_gfxdecode->gfx(gfx),tilecode+(1-(flipyx&1)+(flipyx&2))*tilecodespacing,pal,flipyx&1,flipyx&2,drawxpos+8,drawypos,(stv2_current_tilemap.transparency==STV_TRANSPARENCY_PEN)?0:-1);
stv_vdp2_drawgfx_transpen(bitmap,cliprect,m_gfxdecode->gfx(gfx),tilecode+(2+(flipyx&1)-(flipyx&2))*tilecodespacing,pal,flipyx&1,flipyx&2,drawxpos,drawypos+8,(stv2_current_tilemap.transparency==STV_TRANSPARENCY_PEN)?0:-1);
stv_vdp2_drawgfx_transpen(bitmap,cliprect,m_gfxdecode->gfx(gfx),tilecode+(3-(flipyx&1)-(flipyx&2))*tilecodespacing,pal,flipyx&1,flipyx&2,drawxpos+8,drawypos+8,(stv2_current_tilemap.transparency==STV_TRANSPARENCY_PEN)?0:-1);
}
}
else
@ -4119,9 +4119,9 @@ void saturn_state::stv_vdp2_draw_basic_tilemap(bitmap_rgb32 &bitmap, const recta
else
{
if (stv2_current_tilemap.transparency == STV_TRANSPARENCY_ALPHA)
stv_vdp2_drawgfx_alpha(bitmap,cliprect,machine().gfx[gfx],tilecode,pal,flipyx&1,flipyx&2, drawxpos, drawypos,0,stv2_current_tilemap.alpha);
stv_vdp2_drawgfx_alpha(bitmap,cliprect,m_gfxdecode->gfx(gfx),tilecode,pal,flipyx&1,flipyx&2, drawxpos, drawypos,0,stv2_current_tilemap.alpha);
else
stv_vdp2_drawgfx_transpen(bitmap,cliprect,machine().gfx[gfx],tilecode,pal,flipyx&1,flipyx&2, drawxpos, drawypos,(stv2_current_tilemap.transparency==STV_TRANSPARENCY_PEN)?0:-1);
stv_vdp2_drawgfx_transpen(bitmap,cliprect,m_gfxdecode->gfx(gfx),tilecode,pal,flipyx&1,flipyx&2, drawxpos, drawypos,(stv2_current_tilemap.transparency==STV_TRANSPARENCY_PEN)?0:-1);
}
}
drawxpos = olddrawxpos;
@ -5635,16 +5635,16 @@ WRITE32_MEMBER ( saturn_state::saturn_vdp2_vram_w )
gfxdata[offset*4+2] = (data & 0x0000ff00) >> 8;
gfxdata[offset*4+3] = (data & 0x000000ff) >> 0;
space.machine().gfx[0]->mark_dirty(offset/8);
space.machine().gfx[1]->mark_dirty(offset/8);
space.machine().gfx[2]->mark_dirty(offset/8);
space.machine().gfx[3]->mark_dirty(offset/8);
m_gfxdecode->gfx(0)->mark_dirty(offset/8);
m_gfxdecode->gfx(1)->mark_dirty(offset/8);
m_gfxdecode->gfx(2)->mark_dirty(offset/8);
m_gfxdecode->gfx(3)->mark_dirty(offset/8);
/* 8-bit tiles overlap, so this affects the previous one as well */
if (offset/8 != 0)
{
space.machine().gfx[2]->mark_dirty(offset/8 - 1);
space.machine().gfx[3]->mark_dirty(offset/8 - 1);
m_gfxdecode->gfx(2)->mark_dirty(offset/8 - 1);
m_gfxdecode->gfx(3)->mark_dirty(offset/8 - 1);
}
if ( stv_rbg_cache_data.watch_vdp2_vram_writes )
@ -6064,16 +6064,16 @@ void saturn_state::stv_vdp2_state_save_postload( void )
gfxdata[offset*4+2] = (data & 0x0000ff00) >> 8;
gfxdata[offset*4+3] = (data & 0x000000ff) >> 0;
machine().gfx[0]->mark_dirty(offset/8);
machine().gfx[1]->mark_dirty(offset/8);
machine().gfx[2]->mark_dirty(offset/8);
machine().gfx[3]->mark_dirty(offset/8);
m_gfxdecode->gfx(0)->mark_dirty(offset/8);
m_gfxdecode->gfx(1)->mark_dirty(offset/8);
m_gfxdecode->gfx(2)->mark_dirty(offset/8);
m_gfxdecode->gfx(3)->mark_dirty(offset/8);
/* 8-bit tiles overlap, so this affects the previous one as well */
if (offset/8 != 0)
{
machine().gfx[2]->mark_dirty(offset/8 - 1);
machine().gfx[3]->mark_dirty(offset/8 - 1);
m_gfxdecode->gfx(2)->mark_dirty(offset/8 - 1);
m_gfxdecode->gfx(3)->mark_dirty(offset/8 - 1);
}
}
@ -6100,8 +6100,8 @@ int saturn_state::stv_vdp2_start ( void )
m_vdp2_cram = auto_alloc_array_clear(machine(), UINT32, 0x080000/4 );
m_vdp2.gfx_decode = auto_alloc_array(machine(), UINT8, 0x100000 );
// machine().gfx[0]->granularity()=4;
// machine().gfx[1]->granularity()=4;
// m_gfxdecode->gfx(0)->granularity()=4;
// m_gfxdecode->gfx(1)->granularity()=4;
memset( &stv_rbg_cache_data, 0, sizeof(stv_rbg_cache_data));
stv_rbg_cache_data.is_cache_dirty = 3;
@ -6123,10 +6123,10 @@ VIDEO_START_MEMBER(saturn_state,stv_vdp2)
stv_vdp2_start();
stv_vdp1_start();
m_vdpdebug_roz = 0;
machine().gfx[0]->set_source(m_vdp2.gfx_decode);
machine().gfx[1]->set_source(m_vdp2.gfx_decode);
machine().gfx[2]->set_source(m_vdp2.gfx_decode);
machine().gfx[3]->set_source(m_vdp2.gfx_decode);
m_gfxdecode->gfx(0)->set_source(m_vdp2.gfx_decode);
m_gfxdecode->gfx(1)->set_source(m_vdp2.gfx_decode);
m_gfxdecode->gfx(2)->set_source(m_vdp2.gfx_decode);
m_gfxdecode->gfx(3)->set_source(m_vdp2.gfx_decode);
/* calc V counter offsets */
/* 224 mode */

View File

@ -540,7 +540,7 @@ static MACHINE_CONFIG_START( 1942, _1942_state )
/* video hardware */
MCFG_GFXDECODE(1942)
MCFG_GFXDECODE_ADD("gfxdecode", 1942)
MCFG_PALETTE_LENGTH(64*4+4*32*8+16*16)
MCFG_SCREEN_ADD("screen", RASTER)
@ -597,7 +597,7 @@ static MACHINE_CONFIG_START( 1942p, _1942_state )
/* video hardware */
MCFG_GFXDECODE(1942p)
MCFG_GFXDECODE_ADD("gfxdecode", 1942p)
MCFG_PALETTE_LENGTH(0x500)
MCFG_PALETTE_INIT_OVERRIDE(_1942_state, 1942p)
MCFG_VIDEO_START_OVERRIDE(_1942_state,c1942p)

View File

@ -320,7 +320,7 @@ static MACHINE_CONFIG_START( 1943, _1943_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(_1943_state, screen_update_1943)
MCFG_GFXDECODE(1943)
MCFG_GFXDECODE_ADD("gfxdecode", 1943)
MCFG_PALETTE_LENGTH(32*4+16*16+16*16+16*16)
// sound hardware

View File

@ -93,7 +93,7 @@ WRITE16_MEMBER(k3_state::k3_bgram_w)
TILE_GET_INFO_MEMBER(k3_state::get_k3_bg_tile_info)
{
int tileno = m_bgram[tile_index];
SET_TILE_INFO_MEMBER(1, tileno, 0, 0);
SET_TILE_INFO_MEMBER(m_gfxdecode, 1, tileno, 0, 0);
}
void k3_state::video_start()
@ -103,7 +103,7 @@ void k3_state::video_start()
void k3_state::draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect)
{
gfx_element *gfx = machine().gfx[0];
gfx_element *gfx = m_gfxdecode->gfx(0);
UINT16 *source = m_spriteram_1;
UINT16 *source2 = m_spriteram_2;
UINT16 *finish = source + 0x1000 / 2;
@ -262,7 +262,7 @@ static MACHINE_CONFIG_START( k3, k3_state )
MCFG_CPU_VBLANK_INT_DRIVER("screen", k3_state, irq4_line_hold)
MCFG_GFXDECODE(1945kiii)
MCFG_GFXDECODE_ADD("gfxdecode", 1945kiii)
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)

View File

@ -450,7 +450,7 @@ static MACHINE_CONFIG_START( drill, _2mindril_state )
MCFG_CPU_PROGRAM_MAP(drill_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", _2mindril_state, drill_vblank_irq)
//MCFG_CPU_PERIODIC_INT_DRIVER(_2mindril_state, drill_device_irq, 60)
MCFG_GFXDECODE(2mindril)
MCFG_GFXDECODE_ADD("gfxdecode", 2mindril)
MCFG_MACHINE_START_OVERRIDE(_2mindril_state,drill)
MCFG_MACHINE_RESET_OVERRIDE(_2mindril_state,drill)

View File

@ -99,7 +99,7 @@ protected:
TILE_GET_INFO_MEMBER(_3x3puzzle_state::get_tile1_info)
{
UINT16 code = m_videoram1_buffer[tile_index];
SET_TILE_INFO_MEMBER(
SET_TILE_INFO_MEMBER(m_gfxdecode,
0,
code,
0,
@ -109,7 +109,7 @@ TILE_GET_INFO_MEMBER(_3x3puzzle_state::get_tile1_info)
TILE_GET_INFO_MEMBER(_3x3puzzle_state::get_tile2_info)
{
UINT16 code = m_videoram2_buffer[tile_index];
SET_TILE_INFO_MEMBER(
SET_TILE_INFO_MEMBER(m_gfxdecode,
1,
code,
1,
@ -119,7 +119,7 @@ TILE_GET_INFO_MEMBER(_3x3puzzle_state::get_tile2_info)
TILE_GET_INFO_MEMBER(_3x3puzzle_state::get_tile3_info)
{
UINT16 code = m_videoram3_buffer[tile_index];
SET_TILE_INFO_MEMBER(
SET_TILE_INFO_MEMBER(m_gfxdecode,
2,
code,
2,
@ -390,7 +390,7 @@ static MACHINE_CONFIG_START( _3x3puzzle, _3x3puzzle_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 30*8-1)
MCFG_GFXDECODE(_3x3puzzle)
MCFG_GFXDECODE_ADD("gfxdecode", _3x3puzzle)
MCFG_PALETTE_LENGTH(0x600/2)

View File

@ -1074,7 +1074,7 @@ static MACHINE_CONFIG_START( 40love, fortyl_state )
MCFG_SCREEN_VISIBLE_AREA(128,128+255, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(fortyl_state, screen_update_fortyl)
MCFG_GFXDECODE(40love)
MCFG_GFXDECODE_ADD("gfxdecode", 40love)
MCFG_PALETTE_LENGTH(1024)
@ -1129,7 +1129,7 @@ static MACHINE_CONFIG_START( undoukai, fortyl_state )
MCFG_SCREEN_VISIBLE_AREA(128,128+255, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(fortyl_state, screen_update_fortyl)
MCFG_GFXDECODE(40love)
MCFG_GFXDECODE_ADD("gfxdecode", 40love)
MCFG_PALETTE_LENGTH(1024)

View File

@ -327,7 +327,7 @@ static MACHINE_CONFIG_START( 4enraya, _4enraya_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(_4enraya_state, screen_update_4enraya)
MCFG_GFXDECODE(4enraya)
MCFG_GFXDECODE_ADD("gfxdecode", 4enraya)
MCFG_PALETTE_LENGTH(8)

View File

@ -399,7 +399,7 @@ static MACHINE_CONFIG_START( 4roses, _4roses_state )
MCFG_SCREEN_VISIBLE_AREA(0*4, 96*4-1, 0*8, 29*8-1) /* guess. taken from funworld games */
MCFG_SCREEN_UPDATE_DRIVER(_4roses_state, screen_update_funworld)
MCFG_GFXDECODE(4roses)
MCFG_GFXDECODE_ADD("gfxdecode", 4roses)
MCFG_PALETTE_LENGTH(0x1000)
MCFG_PALETTE_INIT_OVERRIDE(_4roses_state,funworld)

View File

@ -534,7 +534,7 @@ TILE_GET_INFO_MEMBER(_5clown_state::get_fclown_tile_info)
int bank = (attr & 0x02) >> 1; /* bit 1 switch the gfx banks */
int color = (attr & 0x3c) >> 2 | ((attr & 0x80) >> 3); /* bits 2-3-4-5-7 for color */
SET_TILE_INFO_MEMBER(bank, code, color, 0);
SET_TILE_INFO_MEMBER(m_gfxdecode, bank, code, color, 0);
}
@ -1061,7 +1061,7 @@ static MACHINE_CONFIG_START( fclown, _5clown_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(_5clown_state, screen_update_fclown)
MCFG_GFXDECODE(fclown)
MCFG_GFXDECODE_ADD("gfxdecode", fclown)
MCFG_PALETTE_LENGTH(256)

View File

@ -370,9 +370,14 @@ static MACHINE_CONFIG_START( 88games, _88games_state )
MCFG_PALETTE_LENGTH(2048)
MCFG_GFXDECODE_ADD("gfxdecode", empty)
MCFG_K052109_ADD("k052109", _88games_k052109_intf)
MCFG_K052109_GFXDECODE("gfxdecode")
MCFG_K051960_ADD("k051960", _88games_k051960_intf)
MCFG_K051960_GFXDECODE("gfxdecode")
MCFG_K051316_ADD("k051316", _88games_k051316_intf)
MCFG_K051316_GFXDECODE("gfxdecode")
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")

View File

@ -83,10 +83,10 @@ WRITE8_MEMBER(aceal_state::ace_objpos_w)
void aceal_state::video_start()
{
machine().gfx[1]->set_source(m_characterram);
machine().gfx[2]->set_source(m_characterram);
machine().gfx[3]->set_source(m_characterram);
machine().gfx[4]->set_source(m_scoreram);
m_gfxdecode->gfx(1)->set_source(m_characterram);
m_gfxdecode->gfx(2)->set_source(m_characterram);
m_gfxdecode->gfx(3)->set_source(m_characterram);
m_gfxdecode->gfx(4)->set_source(m_scoreram);
}
UINT32 aceal_state::screen_update_ace(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
@ -96,19 +96,19 @@ UINT32 aceal_state::screen_update_ace(screen_device &screen, bitmap_ind16 &bitma
/* first of all, fill the screen with the background color */
bitmap.fill(0, cliprect);
machine().gfx[1]->opaque(bitmap,cliprect,
m_gfxdecode->gfx(1)->opaque(bitmap,cliprect,
0,
0,
0, 0,
m_objpos[0], m_objpos[1]);
machine().gfx[2]->opaque(bitmap,cliprect,
m_gfxdecode->gfx(2)->opaque(bitmap,cliprect,
0,
0,
0, 0,
m_objpos[2], m_objpos[3]);
machine().gfx[3]->opaque(bitmap,cliprect,
m_gfxdecode->gfx(3)->opaque(bitmap,cliprect,
0,
0,
0, 0,
@ -116,7 +116,7 @@ UINT32 aceal_state::screen_update_ace(screen_device &screen, bitmap_ind16 &bitma
for (offs = 0; offs < 8; offs++)
{
machine().gfx[4]->opaque(bitmap,/* ?? */
m_gfxdecode->gfx(4)->opaque(bitmap,/* ?? */
cliprect,
offs,
0,
@ -144,16 +144,16 @@ WRITE8_MEMBER(aceal_state::ace_characterram_w)
popmessage("write to %04x data = %02x\n", 0x8000 + offset, data);
}
m_characterram[offset] = data;
machine().gfx[1]->mark_dirty(0);
machine().gfx[2]->mark_dirty(0);
machine().gfx[3]->mark_dirty(0);
m_gfxdecode->gfx(1)->mark_dirty(0);
m_gfxdecode->gfx(2)->mark_dirty(0);
m_gfxdecode->gfx(3)->mark_dirty(0);
}
}
WRITE8_MEMBER(aceal_state::ace_scoreram_w)
{
m_scoreram[offset] = data;
machine().gfx[4]->mark_dirty(offset / 32);
m_gfxdecode->gfx(4)->mark_dirty(offset / 32);
}
READ8_MEMBER(aceal_state::unk_r)
@ -323,10 +323,10 @@ GFXDECODE_END
void aceal_state::ace_postload()
{
machine().gfx[1]->mark_dirty(0);
machine().gfx[2]->mark_dirty(0);
machine().gfx[3]->mark_dirty(0);
machine().gfx[4]->mark_dirty(0);
m_gfxdecode->gfx(1)->mark_dirty(0);
m_gfxdecode->gfx(2)->mark_dirty(0);
m_gfxdecode->gfx(3)->mark_dirty(0);
m_gfxdecode->gfx(4)->mark_dirty(0);
}
void aceal_state::machine_start()
@ -357,7 +357,7 @@ static MACHINE_CONFIG_START( ace, aceal_state )
MCFG_SCREEN_VISIBLE_AREA(4*8, 32*8-1, 2*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(aceal_state, screen_update_ace)
MCFG_GFXDECODE(ace)
MCFG_GFXDECODE_ADD("gfxdecode", ace)
MCFG_PALETTE_LENGTH(2)
/* sound hardware */

View File

@ -128,7 +128,7 @@ UINT32 acefruit_state::screen_update_acefruit(screen_device &screen, bitmap_ind1
if( color < 0x4 )
{
machine().gfx[ 1 ]->opaque(bitmap,cliprect, code, color, 0, 0, col * 16, row * 8 );
m_gfxdecode->gfx(1)->opaque(bitmap,cliprect, code, color, 0, 0, col * 16, row * 8 );
}
else if( color >= 0x5 && color <= 0x7 )
{
@ -136,7 +136,7 @@ UINT32 acefruit_state::screen_update_acefruit(screen_device &screen, bitmap_ind1
int x;
static const int spriteskip[] = { 1, 2, 4 };
int spritesize = spriteskip[ color - 5 ];
gfx_element *gfx = machine().gfx[ 0 ];
gfx_element *gfx = m_gfxdecode->gfx(0);
for( x = 0; x < 16; x++ )
{
@ -600,9 +600,10 @@ static MACHINE_CONFIG_START( acefruit, acefruit_state )
MCFG_CPU_ADD("maincpu", Z80, 2500000) /* 2.5MHz */
MCFG_CPU_PROGRAM_MAP(acefruit_map)
MCFG_CPU_IO_MAP(acefruit_io)
MCFG_GFXDECODE(acefruit)
MCFG_CPU_VBLANK_INT_DRIVER("screen", acefruit_state, acefruit_vblank)
MCFG_GFXDECODE_ADD("gfxdecode", acefruit)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)

View File

@ -117,7 +117,7 @@ TILEMAP_MAPPER_MEMBER(acommand_state::bg_scan)
TILE_GET_INFO_MEMBER(acommand_state::ac_get_bg_tile_info)
{
int code = m_ac_bgvram[tile_index];
SET_TILE_INFO_MEMBER(
SET_TILE_INFO_MEMBER(m_gfxdecode,
1,
code & 0xfff,
(code & 0xf000) >> 12,
@ -127,7 +127,7 @@ TILE_GET_INFO_MEMBER(acommand_state::ac_get_bg_tile_info)
TILE_GET_INFO_MEMBER(acommand_state::ac_get_tx_tile_info)
{
int code = m_ac_txvram[tile_index];
SET_TILE_INFO_MEMBER(
SET_TILE_INFO_MEMBER(m_gfxdecode,
0,
code & 0xfff,
(code & 0xf000) >> 12,
@ -175,7 +175,7 @@ void acommand_state::draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprec
xx = w;
do
{
machine().gfx[2]->transpen(bitmap,cliprect,
m_gfxdecode->gfx(2)->transpen(bitmap,cliprect,
code,
color,
flipx, flipy,
@ -617,7 +617,7 @@ static MACHINE_CONFIG_START( acommand, acommand_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(acommand_state, screen_update_acommand)
MCFG_GFXDECODE(acommand)
MCFG_GFXDECODE_ADD("gfxdecode", acommand)
MCFG_PALETTE_LENGTH(0x4000)

View File

@ -325,17 +325,19 @@ static MACHINE_CONFIG_START( actfancr, actfancr_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(actfancr_state, screen_update_actfancr)
MCFG_GFXDECODE(actfan)
MCFG_GFXDECODE_ADD("gfxdecode", actfan)
MCFG_PALETTE_LENGTH(768)
MCFG_DEVICE_ADD("tilegen1", DECO_BAC06, 0)
deco_bac06_device::set_gfx_region_wide(*device,2,2,2);
MCFG_DECO_BAC06_GFXDECODE("gfxdecode")
MCFG_DEVICE_ADD("tilegen2", DECO_BAC06, 0)
deco_bac06_device::set_gfx_region_wide(*device,0,0,0);
MCFG_DECO_BAC06_GFXDECODE("gfxdecode")
MCFG_DEVICE_ADD("spritegen", DECO_MXC06, 0)
deco_mxc06_device::set_gfx_region(*device, 1);
MCFG_DECO_MXC06_GFXDECODE("gfxdecode")
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
@ -375,17 +377,19 @@ static MACHINE_CONFIG_START( triothep, actfancr_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(actfancr_state, screen_update_actfancr)
MCFG_GFXDECODE(triothep)
MCFG_GFXDECODE_ADD("gfxdecode", triothep)
MCFG_PALETTE_LENGTH(768)
MCFG_DEVICE_ADD("tilegen1", DECO_BAC06, 0)
deco_bac06_device::set_gfx_region_wide(*device,2,2,0);
MCFG_DECO_BAC06_GFXDECODE("gfxdecode")
MCFG_DEVICE_ADD("tilegen2", DECO_BAC06, 0)
deco_bac06_device::set_gfx_region_wide(*device,0,0,0);
MCFG_DECO_BAC06_GFXDECODE("gfxdecode")
MCFG_DEVICE_ADD("spritegen", DECO_MXC06, 0)
deco_mxc06_device::set_gfx_region(*device, 1);
MCFG_DECO_MXC06_GFXDECODE("gfxdecode")
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")

View File

@ -261,7 +261,7 @@ static MACHINE_CONFIG_START( formatz, aeroboto_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 31*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(aeroboto_state, screen_update_aeroboto)
MCFG_GFXDECODE(aeroboto)
MCFG_GFXDECODE_ADD("gfxdecode", aeroboto)
MCFG_PALETTE_LENGTH(256)

View File

@ -1326,12 +1326,13 @@ static MACHINE_CONFIG_START( pspikes, aerofgt_state )
MCFG_SCREEN_VISIBLE_AREA(0*8+4, 44*8+4-1, 0*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(aerofgt_state, screen_update_pspikes)
MCFG_GFXDECODE(pspikes)
MCFG_GFXDECODE_ADD("gfxdecode", pspikes)
MCFG_PALETTE_LENGTH(2048)
MCFG_DEVICE_ADD("vsystem_spr_old", VSYSTEM_SPR2, 0)
MCFG_VSYSTEM_SPR2_SET_TILE_INDIRECT( aerofgt_state, aerofgt_old_tile_callback )
MCFG_VSYSTEM_SPR2_SET_GFXREGION(1)
MCFG_VSYSTEM_SPR2_GFXDECODE("gfxdecode")
MCFG_VIDEO_START_OVERRIDE(aerofgt_state,pspikes)
@ -1367,7 +1368,7 @@ static MACHINE_CONFIG_START( spikes91, aerofgt_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 320-1, 0*8+4, 224+4-1)
MCFG_SCREEN_UPDATE_DRIVER(aerofgt_state, screen_update_spikes91)
MCFG_GFXDECODE(spikes91)
MCFG_GFXDECODE_ADD("gfxdecode", spikes91)
MCFG_PALETTE_LENGTH(2048)
MCFG_VIDEO_START_OVERRIDE(aerofgt_state,pspikes)
@ -1399,7 +1400,7 @@ static MACHINE_CONFIG_START( pspikesb, aerofgt_state )
MCFG_SCREEN_VISIBLE_AREA(0*8+4, 44*8+4-1, 0*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(aerofgt_state, screen_update_pspikesb)
MCFG_GFXDECODE(pspikesb)
MCFG_GFXDECODE_ADD("gfxdecode", pspikesb)
MCFG_PALETTE_LENGTH(2048)
MCFG_VIDEO_START_OVERRIDE(aerofgt_state,pspikes)
@ -1429,12 +1430,13 @@ static MACHINE_CONFIG_START( pspikesc, aerofgt_state )
MCFG_SCREEN_VISIBLE_AREA(0*8+4, 44*8+4-1, 0*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(aerofgt_state, screen_update_pspikes)
MCFG_GFXDECODE(pspikes)
MCFG_GFXDECODE_ADD("gfxdecode", pspikes)
MCFG_PALETTE_LENGTH(2048)
MCFG_DEVICE_ADD("vsystem_spr_old", VSYSTEM_SPR2, 0)
MCFG_VSYSTEM_SPR2_SET_TILE_INDIRECT( aerofgt_state, aerofgt_old_tile_callback )
MCFG_VSYSTEM_SPR2_SET_GFXREGION(1)
MCFG_VSYSTEM_SPR2_GFXDECODE("gfxdecode")
MCFG_VIDEO_START_OVERRIDE(aerofgt_state,pspikes)
@ -1468,15 +1470,18 @@ static MACHINE_CONFIG_START( karatblz, aerofgt_state )
MCFG_SCREEN_VISIBLE_AREA(1*8, 45*8-1, 0*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(aerofgt_state, screen_update_karatblz)
MCFG_GFXDECODE(turbofrc)
MCFG_GFXDECODE_ADD("gfxdecode", turbofrc)
MCFG_PALETTE_LENGTH(1024)
MCFG_DEVICE_ADD("vsystem_spr_old", VSYSTEM_SPR2, 0)
MCFG_VSYSTEM_SPR2_SET_TILE_INDIRECT( aerofgt_state, aerofgt_old_tile_callback )
MCFG_VSYSTEM_SPR2_SET_GFXREGION(2)
MCFG_VSYSTEM_SPR2_GFXDECODE("gfxdecode")
MCFG_DEVICE_ADD("vsystem_spr_ol2", VSYSTEM_SPR2, 0)
MCFG_VSYSTEM_SPR2_SET_TILE_INDIRECT( aerofgt_state, aerofgt_ol2_tile_callback )
MCFG_VSYSTEM_SPR2_SET_GFXREGION(3)
MCFG_VSYSTEM_SPR2_GFXDECODE("gfxdecode")
MCFG_VIDEO_START_OVERRIDE(aerofgt_state,karatblz)
@ -1514,16 +1519,19 @@ static MACHINE_CONFIG_START( spinlbrk, aerofgt_state )
MCFG_SCREEN_VISIBLE_AREA(1*8, 45*8-1, 0*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(aerofgt_state, screen_update_spinlbrk)
MCFG_GFXDECODE(turbofrc)
MCFG_GFXDECODE_ADD("gfxdecode", turbofrc)
MCFG_PALETTE_LENGTH(1024)
MCFG_DEVICE_ADD("vsystem_spr_old", VSYSTEM_SPR2, 0)
MCFG_VSYSTEM_SPR2_SET_PRITYPE(1)
MCFG_VSYSTEM_SPR2_SET_GFXREGION(2)
MCFG_VSYSTEM_SPR2_GFXDECODE("gfxdecode")
MCFG_DEVICE_ADD("vsystem_spr_ol2", VSYSTEM_SPR2, 0)
MCFG_VSYSTEM_SPR2_SET_TILE_INDIRECT( aerofgt_state, aerofgt_ol2_tile_callback ) // rom lookup
MCFG_VSYSTEM_SPR2_SET_PRITYPE(1)
MCFG_VSYSTEM_SPR2_SET_GFXREGION(3)
MCFG_VSYSTEM_SPR2_GFXDECODE("gfxdecode")
MCFG_VIDEO_START_OVERRIDE(aerofgt_state,spinlbrk)
@ -1561,15 +1569,18 @@ static MACHINE_CONFIG_START( turbofrc, aerofgt_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 44*8-1, 0*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(aerofgt_state, screen_update_turbofrc)
MCFG_GFXDECODE(turbofrc)
MCFG_GFXDECODE_ADD("gfxdecode", turbofrc)
MCFG_PALETTE_LENGTH(1024)
MCFG_DEVICE_ADD("vsystem_spr_old", VSYSTEM_SPR2, 0)
MCFG_VSYSTEM_SPR2_SET_TILE_INDIRECT( aerofgt_state, aerofgt_old_tile_callback )
MCFG_VSYSTEM_SPR2_SET_GFXREGION(2)
MCFG_VSYSTEM_SPR2_GFXDECODE("gfxdecode")
MCFG_DEVICE_ADD("vsystem_spr_ol2", VSYSTEM_SPR2, 0)
MCFG_VSYSTEM_SPR2_SET_TILE_INDIRECT( aerofgt_state, aerofgt_ol2_tile_callback )
MCFG_VSYSTEM_SPR2_SET_GFXREGION(3)
MCFG_VSYSTEM_SPR2_GFXDECODE("gfxdecode")
MCFG_VIDEO_START_OVERRIDE(aerofgt_state,turbofrc)
@ -1608,15 +1619,18 @@ static MACHINE_CONFIG_START( aerofgtb, aerofgt_state )
MCFG_SCREEN_VISIBLE_AREA(0*8+12, 40*8-1+12, 0*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(aerofgt_state, screen_update_turbofrc)
MCFG_GFXDECODE(aerofgtb)
MCFG_GFXDECODE_ADD("gfxdecode", aerofgtb)
MCFG_PALETTE_LENGTH(1024)
MCFG_DEVICE_ADD("vsystem_spr_old", VSYSTEM_SPR2, 0)
MCFG_VSYSTEM_SPR2_SET_TILE_INDIRECT( aerofgt_state, aerofgt_old_tile_callback )
MCFG_VSYSTEM_SPR2_SET_GFXREGION(2)
MCFG_DEVICE_ADD("vsystem_spr_ol2", VSYSTEM_SPR2, 0)
MCFG_VSYSTEM_SPR2_GFXDECODE("gfxdecode")
MCFG_DEVICE_ADD("vsystem_spr_ol2", VSYSTEM_SPR2, 0)
MCFG_VSYSTEM_SPR2_SET_TILE_INDIRECT( aerofgt_state, aerofgt_ol2_tile_callback )
MCFG_VSYSTEM_SPR2_SET_GFXREGION(3)
MCFG_VSYSTEM_SPR2_GFXDECODE("gfxdecode")
MCFG_VIDEO_START_OVERRIDE(aerofgt_state,turbofrc)
@ -1655,12 +1669,13 @@ static MACHINE_CONFIG_START( aerofgt, aerofgt_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(aerofgt_state, screen_update_aerofgt)
MCFG_GFXDECODE(aerofgt)
MCFG_GFXDECODE_ADD("gfxdecode", aerofgt)
MCFG_PALETTE_LENGTH(1024)
MCFG_DEVICE_ADD("vsystem_spr", VSYSTEM_SPR, 0)
MCFG_VSYSTEM_SPR_SET_TILE_INDIRECT( aerofgt_state, aerofgt_tile_callback )
MCFG_VSYSTEM_SPR_SET_GFXREGION(2)
MCFG_VSYSTEM_SPR_GFXDECODE("gfxdecode")
MCFG_VIDEO_START_OVERRIDE(aerofgt_state,turbofrc)
@ -1697,7 +1712,7 @@ static MACHINE_CONFIG_START( aerfboot, aerofgt_state )
MCFG_SCREEN_VISIBLE_AREA(0*8+12, 40*8-1+12, 0*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(aerofgt_state, screen_update_aerfboot)
MCFG_GFXDECODE(aerfboot)
MCFG_GFXDECODE_ADD("gfxdecode", aerfboot)
MCFG_PALETTE_LENGTH(1024)
MCFG_VIDEO_START_OVERRIDE(aerofgt_state,turbofrc)
@ -1728,7 +1743,7 @@ static MACHINE_CONFIG_START( aerfboo2, aerofgt_state )
MCFG_SCREEN_VISIBLE_AREA(0*8+12, 40*8-1+12, 0*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(aerofgt_state, screen_update_aerfboo2)
MCFG_GFXDECODE(aerfboo2)
MCFG_GFXDECODE_ADD("gfxdecode", aerfboo2)
MCFG_PALETTE_LENGTH(1024)
MCFG_VIDEO_START_OVERRIDE(aerofgt_state,turbofrc)
@ -1761,12 +1776,13 @@ static MACHINE_CONFIG_START( wbbc97, aerofgt_state )
MCFG_SCREEN_VISIBLE_AREA(0*8+14, 44*8-1+4, 0*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(aerofgt_state, screen_update_wbbc97)
MCFG_GFXDECODE(wbbc97)
MCFG_GFXDECODE_ADD("gfxdecode", wbbc97)
MCFG_PALETTE_LENGTH(2048)
MCFG_DEVICE_ADD("vsystem_spr_old", VSYSTEM_SPR2, 0)
MCFG_VSYSTEM_SPR2_SET_TILE_INDIRECT( aerofgt_state, aerofgt_old_tile_callback )
MCFG_VSYSTEM_SPR2_SET_GFXREGION(1)
MCFG_VSYSTEM_SPR2_GFXDECODE("gfxdecode")
MCFG_VIDEO_START_OVERRIDE(aerofgt_state,wbbc97)

View File

@ -636,11 +636,11 @@ static MACHINE_CONFIG_START( airbustr, airbustr_state )
MCFG_SCREEN_UPDATE_DRIVER(airbustr_state, screen_update_airbustr)
MCFG_SCREEN_VBLANK_DRIVER(airbustr_state, screen_eof_airbustr)
MCFG_GFXDECODE(airbustr)
MCFG_GFXDECODE_ADD("gfxdecode", airbustr)
MCFG_PALETTE_LENGTH(768)
MCFG_KANEKO_PANDORA_ADD("pandora", airbustr_pandora_config)
MCFG_KANEKO_PANDORA_GFXDECODE("gfxdecode")
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")

View File

@ -230,10 +230,14 @@ static MACHINE_CONFIG_START( ajax, ajax_state )
MCFG_PALETTE_LENGTH(2048)
MCFG_GFXDECODE_ADD("gfxdecode", empty)
MCFG_K052109_ADD("k052109", ajax_k052109_intf)
MCFG_K052109_GFXDECODE("gfxdecode")
MCFG_K051960_ADD("k051960", ajax_k051960_intf)
MCFG_K051960_GFXDECODE("gfxdecode")
MCFG_K051316_ADD("k051316", ajax_k051316_intf)
MCFG_K051316_GFXDECODE("gfxdecode")
/* sound hardware */
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")

View File

@ -85,7 +85,7 @@ void albazc_state::draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect)
flipy = !flipy;
}
machine().gfx[0]->transpen(bitmap,cliprect, code, color, flipx, flipy,
m_gfxdecode->gfx(0)->transpen(bitmap,cliprect, code, color, flipx, flipy,
sx, sy, 0);
}
}
@ -282,7 +282,7 @@ static MACHINE_CONFIG_START( hanaroku, albazc_state )
MCFG_SCREEN_VISIBLE_AREA(0, 48*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(albazc_state, screen_update_hanaroku)
MCFG_GFXDECODE(hanaroku)
MCFG_GFXDECODE_ADD("gfxdecode", hanaroku)
MCFG_PALETTE_LENGTH(0x200)

View File

@ -88,7 +88,7 @@ TILE_GET_INFO_MEMBER(albazg_state::y_get_bg_tile_info)
int code = m_videoram[tile_index];
int color = m_colorram[tile_index];
SET_TILE_INFO_MEMBER(
SET_TILE_INFO_MEMBER(m_gfxdecode,
0,
code + ((color & 0xf8) << 3),
color & 0x7,
@ -403,7 +403,7 @@ static MACHINE_CONFIG_START( yumefuda, albazg_state )
MCFG_MC6845_ADD("crtc", H46505, "screen", MASTER_CLOCK/16, mc6845_intf) /* hand tuned to get ~60 fps */
MCFG_GFXDECODE( yumefuda )
MCFG_GFXDECODE_ADD("gfxdecode", yumefuda )
MCFG_PALETTE_LENGTH(0x80)

View File

@ -252,9 +252,11 @@ static MACHINE_CONFIG_START( aliens, aliens_state )
MCFG_PALETTE_LENGTH(512)
MCFG_GFXDECODE_ADD("gfxdecode", empty)
MCFG_K052109_ADD("k052109", aliens_k052109_intf)
MCFG_K052109_GFXDECODE("gfxdecode")
MCFG_K051960_ADD("k051960", aliens_k051960_intf)
MCFG_K051960_GFXDECODE("gfxdecode")
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")

View File

@ -1963,7 +1963,7 @@ static MACHINE_CONFIG_START( sstingry, alpha68k_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(alpha68k_state, screen_update_sstingry)
MCFG_GFXDECODE(sstingry)
MCFG_GFXDECODE_ADD("gfxdecode", sstingry)
MCFG_PALETTE_LENGTH(256 + 1)
MCFG_PALETTE_INIT_OVERRIDE(alpha68k_state,kyros)
@ -2008,7 +2008,7 @@ static MACHINE_CONFIG_START( kyros, alpha68k_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(alpha68k_state, screen_update_kyros)
MCFG_GFXDECODE(kyros)
MCFG_GFXDECODE_ADD("gfxdecode", kyros)
MCFG_PALETTE_LENGTH(256 + 1)
MCFG_PALETTE_INIT_OVERRIDE(alpha68k_state,kyros)
@ -2053,7 +2053,7 @@ static MACHINE_CONFIG_START( jongbou, alpha68k_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(alpha68k_state, screen_update_kyros)
MCFG_GFXDECODE(jongbou)
MCFG_GFXDECODE_ADD("gfxdecode", jongbou)
MCFG_PALETTE_LENGTH(256 + 1)
MCFG_PALETTE_INIT_OVERRIDE(alpha68k_state,kyros)
@ -2087,7 +2087,7 @@ static MACHINE_CONFIG_START( alpha68k_I, alpha68k_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(alpha68k_state, screen_update_alpha68k_I)
MCFG_GFXDECODE(paddle)
MCFG_GFXDECODE_ADD("gfxdecode", paddle)
MCFG_PALETTE_LENGTH(1024)
MCFG_PALETTE_INIT_OVERRIDE(alpha68k_state,paddlem)
@ -2129,7 +2129,7 @@ static MACHINE_CONFIG_START( alpha68k_II, alpha68k_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(alpha68k_state, screen_update_alpha68k_II)
MCFG_GFXDECODE(alpha68k_II)
MCFG_GFXDECODE_ADD("gfxdecode", alpha68k_II)
MCFG_PALETTE_LENGTH(2048)
MCFG_VIDEO_START_OVERRIDE(alpha68k_state,alpha68k)
@ -2178,7 +2178,7 @@ static MACHINE_CONFIG_START( alpha68k_II_gm, alpha68k_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(alpha68k_state, screen_update_alpha68k_II)
MCFG_GFXDECODE(alpha68k_II)
MCFG_GFXDECODE_ADD("gfxdecode", alpha68k_II)
MCFG_PALETTE_LENGTH(2048)
MCFG_VIDEO_START_OVERRIDE(alpha68k_state,alpha68k)
@ -2221,7 +2221,7 @@ static MACHINE_CONFIG_START( alpha68k_V, alpha68k_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(alpha68k_state, screen_update_alpha68k_V)
MCFG_GFXDECODE(alpha68k_V)
MCFG_GFXDECODE_ADD("gfxdecode", alpha68k_V)
MCFG_PALETTE_LENGTH(4096)
MCFG_VIDEO_START_OVERRIDE(alpha68k_state,alpha68k)
@ -2263,7 +2263,7 @@ static MACHINE_CONFIG_START( alpha68k_V_sb, alpha68k_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(alpha68k_state, screen_update_alpha68k_V_sb)
MCFG_GFXDECODE(alpha68k_V)
MCFG_GFXDECODE_ADD("gfxdecode", alpha68k_V)
MCFG_PALETTE_LENGTH(4096)
MCFG_VIDEO_START_OVERRIDE(alpha68k_state,alpha68k)
@ -2304,7 +2304,7 @@ static MACHINE_CONFIG_START( tnextspc, alpha68k_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(alpha68k_state, screen_update_alpha68k_I)
MCFG_GFXDECODE(tnextspc)
MCFG_GFXDECODE_ADD("gfxdecode", tnextspc)
MCFG_PALETTE_LENGTH(1024)
MCFG_PALETTE_INIT_OVERRIDE(alpha68k_state,paddlem)

View File

@ -471,7 +471,7 @@ void amaticmg_state::video_start()
UINT32 amaticmg_state::screen_update_amaticmg(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
{
gfx_element *gfx = machine().gfx[0];
gfx_element *gfx = m_gfxdecode->gfx(0);
int y,x;
int count = 0;
@ -496,7 +496,7 @@ UINT32 amaticmg_state::screen_update_amaticmg(screen_device &screen, bitmap_ind1
UINT32 amaticmg_state::screen_update_amaticmg2(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
{
gfx_element *gfx = machine().gfx[0];
gfx_element *gfx = m_gfxdecode->gfx(0);
int y,x;
int count = 16;
@ -880,7 +880,7 @@ static MACHINE_CONFIG_START( amaticmg, amaticmg_state )
MCFG_MC6845_ADD("crtc", MC6845, "screen", CRTC_CLOCK, mc6845_intf)
MCFG_GFXDECODE(amaticmg)
MCFG_GFXDECODE_ADD("gfxdecode", amaticmg)
MCFG_PALETTE_LENGTH(0x200)
@ -913,7 +913,7 @@ static MACHINE_CONFIG_DERIVED( amaticmg2, amaticmg )
MCFG_SCREEN_MODIFY("screen")
MCFG_SCREEN_UPDATE_DRIVER(amaticmg_state, screen_update_amaticmg2)
MCFG_GFXDECODE(amaticmg2)
MCFG_GFXDECODE_MODIFY("gfxdecode", amaticmg2)
MCFG_PALETTE_INIT_OVERRIDE(amaticmg_state,amaticmg2)
MCFG_PALETTE_LENGTH(0x10000)
MACHINE_CONFIG_END

View File

@ -242,7 +242,7 @@ static MACHINE_CONFIG_START( ambush, ambush_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-3) /* The -3 makes the cocktail mode perfect */
MCFG_SCREEN_UPDATE_DRIVER(ambush_state, screen_update_ambush)
MCFG_GFXDECODE(ambush)
MCFG_GFXDECODE_ADD("gfxdecode", ambush)
MCFG_PALETTE_LENGTH(256)

View File

@ -1184,7 +1184,7 @@ static MACHINE_CONFIG_START( ampoker2, ampoker2_state )
MCFG_SCREEN_VISIBLE_AREA(20*8, 56*8-1, 2*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(ampoker2_state, screen_update_ampoker2)
MCFG_GFXDECODE(ampoker2)
MCFG_GFXDECODE_ADD("gfxdecode", ampoker2)
MCFG_PALETTE_LENGTH(512)
@ -1200,7 +1200,7 @@ static MACHINE_CONFIG_DERIVED( sigma2k, ampoker2 )
/* basic machine hardware */
/* video hardware */
MCFG_GFXDECODE(sigma2k)
MCFG_GFXDECODE_MODIFY("gfxdecode", sigma2k)
MCFG_VIDEO_START_OVERRIDE(ampoker2_state,sigma2k)
MACHINE_CONFIG_END

View File

@ -273,7 +273,7 @@ static MACHINE_CONFIG_START( amspdwy, amspdwy_state )
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 0+16, 256-16-1)
MCFG_SCREEN_UPDATE_DRIVER(amspdwy_state, screen_update_amspdwy)
MCFG_GFXDECODE(amspdwy)
MCFG_GFXDECODE_ADD("gfxdecode", amspdwy)
MCFG_PALETTE_LENGTH(32)

View File

@ -612,7 +612,7 @@ static MACHINE_CONFIG_START( angelkds, angelkds_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(angelkds_state, screen_update_angelkds)
MCFG_GFXDECODE(angelkds)
MCFG_GFXDECODE_ADD("gfxdecode", angelkds)
MCFG_PALETTE_LENGTH(0x100)

View File

@ -455,7 +455,7 @@ static MACHINE_CONFIG_DERIVED( appoooh, appoooh_common )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(appoooh_state, screen_update_appoooh)
MCFG_GFXDECODE(appoooh)
MCFG_GFXDECODE_ADD("gfxdecode", appoooh)
MCFG_PALETTE_LENGTH(32*8+32*8)
MCFG_PALETTE_INIT_OVERRIDE(appoooh_state,appoooh)
@ -473,7 +473,7 @@ static MACHINE_CONFIG_DERIVED( robowres, appoooh_common )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(appoooh_state, screen_update_robowres)
MCFG_GFXDECODE(robowres)
MCFG_GFXDECODE_ADD("gfxdecode", robowres)
MCFG_PALETTE_LENGTH(32*8+32*8)
MCFG_PALETTE_INIT_OVERRIDE(appoooh_state,robowres)

View File

@ -315,7 +315,7 @@ static MACHINE_CONFIG_START( aquarium, aquarium_state )
MCFG_SCREEN_VISIBLE_AREA(2*8, 42*8-1, 2*8, 34*8-1)
MCFG_SCREEN_UPDATE_DRIVER(aquarium_state, screen_update_aquarium)
MCFG_GFXDECODE(aquarium)
MCFG_GFXDECODE_ADD("gfxdecode", aquarium)
MCFG_PALETTE_LENGTH(0x1000/2)

View File

@ -327,10 +327,11 @@ static MACHINE_CONFIG_START( arcadecl, arcadecl_state )
/* video hardware */
MCFG_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MCFG_GFXDECODE(arcadecl)
MCFG_GFXDECODE_ADD("gfxdecode", arcadecl)
MCFG_PALETTE_LENGTH(512)
MCFG_ATARI_MOTION_OBJECTS_ADD("mob", "screen", arcadecl_state::s_mob_config)
MCFG_ATARI_MOTION_OBJECTS_GFXDECODE("gfxdecode")
MCFG_SCREEN_ADD("screen", RASTER)
/* note: these parameters are from published specs, not derived */

View File

@ -558,7 +558,7 @@ static MACHINE_CONFIG_START( argus, argus_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(argus_state, screen_update_argus)
MCFG_GFXDECODE(argus)
MCFG_GFXDECODE_ADD("gfxdecode", argus)
MCFG_PALETTE_LENGTH(896)
MCFG_VIDEO_START_OVERRIDE(argus_state,argus)
@ -603,7 +603,7 @@ static MACHINE_CONFIG_START( valtric, argus_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(argus_state, screen_update_valtric)
MCFG_GFXDECODE(valtric)
MCFG_GFXDECODE_ADD("gfxdecode", valtric)
MCFG_PALETTE_LENGTH(768)
MCFG_VIDEO_START_OVERRIDE(argus_state,valtric)
@ -648,7 +648,7 @@ static MACHINE_CONFIG_START( butasan, argus_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(argus_state, screen_update_butasan)
MCFG_GFXDECODE(butasan)
MCFG_GFXDECODE_ADD("gfxdecode", butasan)
MCFG_PALETTE_LENGTH(768)
MCFG_VIDEO_START_OVERRIDE(argus_state,butasan)

View File

@ -361,9 +361,9 @@ static const UINT8 cashcade_p[] ={0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0
void aristmk4_state::video_start()
{
int tile;
for (tile = 0; tile < machine().gfx[0]->elements(); tile++)
for (tile = 0; tile < m_gfxdecode->gfx(0)->elements(); tile++)
{
machine().gfx[0]->decode(tile);
m_gfxdecode->gfx(0)->decode(tile);
}
}
@ -402,7 +402,7 @@ void aristmk4_state::uBackgroundColour()
UINT32 aristmk4_state::screen_update_aristmk4(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
{
gfx_element *gfx = machine().gfx[0];
gfx_element *gfx = m_gfxdecode->gfx(0);
int x,y;
int count = 0;
int color;
@ -1694,11 +1694,11 @@ static MACHINE_CONFIG_START( aristmk4, aristmk4_state )
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MCFG_SCREEN_SIZE(320, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 304-1, 0, 216-1) /* from the crtc registers... updated by crtc */
MCFG_SCREEN_UPDATE_DRIVER(aristmk4_state, screen_update_aristmk4)
MCFG_GFXDECODE(aristmk4)
MCFG_GFXDECODE_ADD("gfxdecode", aristmk4)
MCFG_PALETTE_LENGTH(512)
MCFG_SCREEN_UPDATE_DRIVER(aristmk4_state, screen_update_aristmk4)
MCFG_I8255A_ADD( "ppi8255_0", ppi8255_intf )
MCFG_DEVICE_ADD("via6522_0", VIA6522, 0) /* 1 MHz.(only 1 or 2 MHz.are valid) */

View File

@ -1219,7 +1219,7 @@ static MACHINE_CONFIG_START( arkanoid, arkanoid_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(arkanoid_state, screen_update_arkanoid)
MCFG_GFXDECODE(arkanoid)
MCFG_GFXDECODE_ADD("gfxdecode", arkanoid)
MCFG_PALETTE_LENGTH(512)
MCFG_PALETTE_INIT_OVERRIDE(driver_device, RRRR_GGGG_BBBB)
@ -1252,7 +1252,7 @@ static MACHINE_CONFIG_START( hexa, arkanoid_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(arkanoid_state, screen_update_hexa)
MCFG_GFXDECODE(hexa)
MCFG_GFXDECODE_ADD("gfxdecode", hexa)
MCFG_PALETTE_LENGTH(256)
MCFG_PALETTE_INIT_OVERRIDE(driver_device, RRRR_GGGG_BBBB)
@ -1297,7 +1297,7 @@ static MACHINE_CONFIG_START( brixian, arkanoid_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(arkanoid_state, screen_update_hexa)
MCFG_GFXDECODE(arkanoid)
MCFG_GFXDECODE_ADD("gfxdecode", arkanoid)
MCFG_PALETTE_LENGTH(512)
MCFG_PALETTE_INIT_OVERRIDE(driver_device, RRRR_GGGG_BBBB)

View File

@ -1187,7 +1187,7 @@ static MACHINE_CONFIG_START( terraf, armedf_state )
MCFG_SCREEN_UPDATE_DRIVER(armedf_state, screen_update_armedf)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram16_device, vblank_copy_rising)
MCFG_GFXDECODE(armedf)
MCFG_GFXDECODE_ADD("gfxdecode", armedf)
MCFG_PALETTE_LENGTH(2048)
@ -1236,7 +1236,7 @@ static MACHINE_CONFIG_START( terrafjb, armedf_state )
MCFG_SCREEN_UPDATE_DRIVER(armedf_state, screen_update_armedf)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram16_device, vblank_copy_rising)
MCFG_GFXDECODE(armedf)
MCFG_GFXDECODE_ADD("gfxdecode", armedf)
MCFG_PALETTE_LENGTH(2048)
MCFG_BUFFERED_SPRITERAM16_ADD("spriteram")
@ -1280,7 +1280,7 @@ static MACHINE_CONFIG_START( kozure, armedf_state )
MCFG_SCREEN_UPDATE_DRIVER(armedf_state, screen_update_armedf)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram16_device, vblank_copy_rising)
MCFG_GFXDECODE(armedf)
MCFG_GFXDECODE_ADD("gfxdecode", armedf)
MCFG_PALETTE_LENGTH(2048)
MCFG_BUFFERED_SPRITERAM16_ADD("spriteram")
@ -1324,7 +1324,7 @@ static MACHINE_CONFIG_START( armedf, armedf_state )
MCFG_SCREEN_UPDATE_DRIVER(armedf_state, screen_update_armedf)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram16_device, vblank_copy_rising)
MCFG_GFXDECODE(armedf)
MCFG_GFXDECODE_ADD("gfxdecode", armedf)
MCFG_PALETTE_LENGTH(2048)
MCFG_BUFFERED_SPRITERAM16_ADD("spriteram")
@ -1368,7 +1368,7 @@ static MACHINE_CONFIG_START( cclimbr2, armedf_state )
MCFG_SCREEN_UPDATE_DRIVER(armedf_state, screen_update_armedf)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram16_device, vblank_copy_rising)
MCFG_GFXDECODE(armedf)
MCFG_GFXDECODE_ADD("gfxdecode", armedf)
MCFG_PALETTE_LENGTH(2048)
MCFG_BUFFERED_SPRITERAM16_ADD("spriteram")
@ -1412,7 +1412,7 @@ static MACHINE_CONFIG_START( legion, armedf_state )
MCFG_SCREEN_UPDATE_DRIVER(armedf_state, screen_update_armedf)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram16_device, vblank_copy_rising)
MCFG_GFXDECODE(armedf)
MCFG_GFXDECODE_ADD("gfxdecode", armedf)
MCFG_PALETTE_LENGTH(2048)
MCFG_BUFFERED_SPRITERAM16_ADD("spriteram")
@ -1456,7 +1456,7 @@ static MACHINE_CONFIG_START( legiono, armedf_state )
MCFG_SCREEN_UPDATE_DRIVER(armedf_state, screen_update_armedf)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram16_device, vblank_copy_rising)
MCFG_GFXDECODE(armedf)
MCFG_GFXDECODE_ADD("gfxdecode", armedf)
MCFG_PALETTE_LENGTH(2048)
MCFG_BUFFERED_SPRITERAM16_ADD("spriteram")
@ -1511,7 +1511,7 @@ static MACHINE_CONFIG_START( bigfghtr, bigfghtr_state )
MCFG_SCREEN_UPDATE_DRIVER(armedf_state, screen_update_armedf)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram16_device, vblank_copy_rising)
MCFG_GFXDECODE(armedf)
MCFG_GFXDECODE_ADD("gfxdecode", armedf)
MCFG_PALETTE_LENGTH(2048)
MCFG_BUFFERED_SPRITERAM16_ADD("spriteram")

View File

@ -356,7 +356,7 @@ static MACHINE_CONFIG_START( ashnojoe, ashnojoe_state )
MCFG_SCREEN_VISIBLE_AREA(14*8, 50*8-1, 3*8, 29*8-1)
MCFG_SCREEN_UPDATE_DRIVER(ashnojoe_state, screen_update_ashnojoe)
MCFG_GFXDECODE(ashnojoe)
MCFG_GFXDECODE_ADD("gfxdecode", ashnojoe)
MCFG_PALETTE_LENGTH(0x1000/2)

View File

@ -292,8 +292,11 @@ static MACHINE_CONFIG_START( asterix, asterix_state )
MCFG_PALETTE_LENGTH(2048)
MCFG_GFXDECODE_ADD("gfxdecode", empty)
MCFG_K056832_ADD("k056832", asterix_k056832_intf)
MCFG_K056832_GFXDECODE("gfxdecode")
MCFG_K053244_ADD("k053244", asterix_k05324x_intf)
MCFG_K053244_GFXDECODE("gfxdecode")
MCFG_K053251_ADD("k053251")
/* sound hardware */

View File

@ -147,7 +147,7 @@ void astrocorp_state::draw_sprites(bitmap_ind16 &bitmap, const rectangle &clipre
{
for (xwrap = 0 ; xwrap <= 0x200 ; xwrap += 0x200)
{
machine().gfx[0]->transpen(bitmap,cliprect,
m_gfxdecode->gfx(0)->transpen(bitmap,cliprect,
code, 0,
0, 0,
sx + x * 16 - xwrap, sy + y * 16 - ywrap, 0xff);
@ -491,7 +491,7 @@ static MACHINE_CONFIG_START( showhand, astrocorp_state )
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 240-1)
MCFG_SCREEN_UPDATE_DRIVER(astrocorp_state, screen_update_astrocorp)
MCFG_GFXDECODE(astrocorp)
MCFG_GFXDECODE_ADD("gfxdecode", astrocorp)
MCFG_PALETTE_LENGTH(0x100)
MCFG_VIDEO_START_OVERRIDE(astrocorp_state,astrocorp)
@ -542,7 +542,7 @@ static MACHINE_CONFIG_START( skilldrp, astrocorp_state )
MCFG_SCREEN_VISIBLE_AREA(0, 0x200-1, 0, 0xf0-1)
MCFG_SCREEN_UPDATE_DRIVER(astrocorp_state, screen_update_astrocorp)
MCFG_GFXDECODE(astrocorp)
MCFG_GFXDECODE_ADD("gfxdecode", astrocorp)
MCFG_PALETTE_LENGTH(0x100)
MCFG_VIDEO_START_OVERRIDE(astrocorp_state,astrocorp)

View File

@ -894,11 +894,13 @@ static MACHINE_CONFIG_START( bonzeadv, asuka_state )
MCFG_SCREEN_UPDATE_DRIVER(asuka_state, screen_update_bonzeadv)
MCFG_SCREEN_VBLANK_DRIVER(asuka_state, screen_eof_asuka)
MCFG_GFXDECODE(asuka)
MCFG_GFXDECODE_ADD("gfxdecode", asuka)
MCFG_PALETTE_LENGTH(4096)
MCFG_PC090OJ_ADD("pc090oj", bonzeadv_pc090oj_intf)
MCFG_PC090OJ_GFXDECODE("gfxdecode")
MCFG_TC0100SCN_ADD("tc0100scn", asuka_tc0100scn_intf)
MCFG_TC0100SCN_GFXDECODE("gfxdecode")
MCFG_TC0110PCR_ADD("tc0110pcr", asuka_tc0110pcr_intf)
/* sound hardware */
@ -937,11 +939,13 @@ static MACHINE_CONFIG_START( asuka, asuka_state )
MCFG_SCREEN_UPDATE_DRIVER(asuka_state, screen_update_asuka)
MCFG_SCREEN_VBLANK_DRIVER(asuka_state, screen_eof_asuka)
MCFG_GFXDECODE(asuka)
MCFG_GFXDECODE_ADD("gfxdecode", asuka)
MCFG_PALETTE_LENGTH(4096)
MCFG_PC090OJ_ADD("pc090oj", asuka_pc090oj_intf)
MCFG_PC090OJ_GFXDECODE("gfxdecode")
MCFG_TC0100SCN_ADD("tc0100scn", asuka_tc0100scn_intf)
MCFG_TC0100SCN_GFXDECODE("gfxdecode")
MCFG_TC0110PCR_ADD("tc0110pcr", asuka_tc0110pcr_intf)
/* sound hardware */
@ -988,11 +992,13 @@ static MACHINE_CONFIG_START( cadash, asuka_state )
MCFG_SCREEN_UPDATE_DRIVER(asuka_state, screen_update_bonzeadv)
MCFG_SCREEN_VBLANK_DRIVER(asuka_state, screen_eof_asuka)
MCFG_GFXDECODE(asuka)
MCFG_GFXDECODE_ADD("gfxdecode", asuka)
MCFG_PALETTE_LENGTH(4096)
MCFG_PC090OJ_ADD("pc090oj", asuka_pc090oj_intf)
MCFG_PC090OJ_GFXDECODE("gfxdecode")
MCFG_TC0100SCN_ADD("tc0100scn", cadash_tc0100scn_intf)
MCFG_TC0100SCN_GFXDECODE("gfxdecode")
MCFG_TC0110PCR_ADD("tc0110pcr", asuka_tc0110pcr_intf)
/* sound hardware */
@ -1031,11 +1037,13 @@ static MACHINE_CONFIG_START( mofflott, asuka_state )
MCFG_SCREEN_UPDATE_DRIVER(asuka_state, screen_update_asuka)
MCFG_SCREEN_VBLANK_DRIVER(asuka_state, screen_eof_asuka)
MCFG_GFXDECODE(asuka)
MCFG_GFXDECODE_ADD("gfxdecode", asuka)
MCFG_PALETTE_LENGTH(4096) /* only Mofflott uses full palette space */
MCFG_PC090OJ_ADD("pc090oj", bonzeadv_pc090oj_intf)
MCFG_PC090OJ_GFXDECODE("gfxdecode")
MCFG_TC0100SCN_ADD("tc0100scn", cadash_tc0100scn_intf)
MCFG_TC0100SCN_GFXDECODE("gfxdecode")
MCFG_TC0110PCR_ADD("tc0110pcr", asuka_tc0110pcr_intf)
/* sound hardware */
@ -1078,11 +1086,13 @@ static MACHINE_CONFIG_START( galmedes, asuka_state )
MCFG_SCREEN_UPDATE_DRIVER(asuka_state, screen_update_asuka)
MCFG_SCREEN_VBLANK_DRIVER(asuka_state, screen_eof_asuka)
MCFG_GFXDECODE(asuka)
MCFG_GFXDECODE_ADD("gfxdecode", asuka)
MCFG_PALETTE_LENGTH(4096) /* only Mofflott uses full palette space */
MCFG_PC090OJ_ADD("pc090oj", bonzeadv_pc090oj_intf)
MCFG_PC090OJ_GFXDECODE("gfxdecode")
MCFG_TC0100SCN_ADD("tc0100scn", cadash_tc0100scn_intf)
MCFG_TC0100SCN_GFXDECODE("gfxdecode")
MCFG_TC0110PCR_ADD("tc0110pcr", asuka_tc0110pcr_intf)
/* sound hardware */
@ -1121,11 +1131,13 @@ static MACHINE_CONFIG_START( eto, asuka_state )
MCFG_SCREEN_UPDATE_DRIVER(asuka_state, screen_update_asuka)
MCFG_SCREEN_VBLANK_DRIVER(asuka_state, screen_eof_asuka)
MCFG_GFXDECODE(asuka)
MCFG_GFXDECODE_ADD("gfxdecode", asuka)
MCFG_PALETTE_LENGTH(4096)
MCFG_PC090OJ_ADD("pc090oj", bonzeadv_pc090oj_intf)
MCFG_PC090OJ_GFXDECODE("gfxdecode")
MCFG_TC0100SCN_ADD("tc0100scn", cadash_tc0100scn_intf)
MCFG_TC0100SCN_GFXDECODE("gfxdecode")
MCFG_TC0110PCR_ADD("tc0110pcr", asuka_tc0110pcr_intf)
/* sound hardware */

View File

@ -562,7 +562,7 @@ static MACHINE_CONFIG_START( atarifb, atarifb_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 38*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(atarifb_state, screen_update_atarifb)
MCFG_GFXDECODE(atarifb)
MCFG_GFXDECODE_ADD("gfxdecode", atarifb)
MCFG_PALETTE_LENGTH(12)
@ -610,7 +610,7 @@ static MACHINE_CONFIG_DERIVED( soccer, atarifb )
MCFG_SCREEN_MODIFY("screen")
MCFG_SCREEN_VISIBLE_AREA(0*8, 38*8-1, 2*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(atarifb_state, screen_update_soccer)
MCFG_GFXDECODE(soccer)
MCFG_GFXDECODE_MODIFY("gfxdecode", soccer)
MACHINE_CONFIG_END

View File

@ -435,7 +435,7 @@ static MACHINE_CONFIG_START( atarig1, atarig1_state )
/* video hardware */
MCFG_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MCFG_GFXDECODE(atarig1)
MCFG_GFXDECODE_ADD("gfxdecode", atarig1)
MCFG_PALETTE_LENGTH(1280)
/* initialize the playfield */

View File

@ -545,7 +545,7 @@ static MACHINE_CONFIG_START( atarig42, atarig42_state )
/* video hardware */
MCFG_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MCFG_GFXDECODE(atarig42)
MCFG_GFXDECODE_ADD("gfxdecode", atarig42)
MCFG_PALETTE_LENGTH(2048)
MCFG_TILEMAP_ADD_CUSTOM("playfield", 2, atarig42_state, get_playfield_tile_info, 8,8, atarig42_playfield_scan, 128,64)

View File

@ -831,7 +831,7 @@ static MACHINE_CONFIG_START( atarigt, atarigt_state )
/* video hardware */
MCFG_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MCFG_GFXDECODE(atarigt)
MCFG_GFXDECODE_ADD("gfxdecode", atarigt)
MCFG_PALETTE_LENGTH(32768)
MCFG_TILEMAP_ADD_CUSTOM("playfield", 2, atarigt_state, get_playfield_tile_info, 8,8, atarigt_playfield_scan, 128,64)

View File

@ -1413,7 +1413,7 @@ static MACHINE_CONFIG_START( atarigx2, atarigx2_state )
/* video hardware */
MCFG_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MCFG_GFXDECODE(atarigx2)
MCFG_GFXDECODE_ADD("gfxdecode", atarigx2)
MCFG_PALETTE_LENGTH(2048)
MCFG_TILEMAP_ADD_CUSTOM("playfield", 2, atarigx2_state, get_playfield_tile_info, 8,8, atarigx2_playfield_scan, 128,64)

View File

@ -728,13 +728,14 @@ static MACHINE_CONFIG_START( atarisy1, atarisy1_state )
/* video hardware */
MCFG_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MCFG_GFXDECODE(atarisy1)
MCFG_GFXDECODE_ADD("gfxdecode", atarisy1)
MCFG_PALETTE_LENGTH(1024)
MCFG_TILEMAP_ADD_STANDARD("playfield", 2, atarisy1_state, get_playfield_tile_info, 8,8, SCAN_ROWS, 64,64)
MCFG_TILEMAP_ADD_STANDARD_TRANSPEN("alpha", 2, atarisy1_state, get_alpha_tile_info, 8,8, SCAN_ROWS, 64,32, 0)
MCFG_ATARI_MOTION_OBJECTS_ADD("mob", "screen", atarisy1_state::s_mob_config)
MCFG_ATARI_MOTION_OBJECTS_GFXDECODE("gfxdecode")
MCFG_SCREEN_ADD("screen", RASTER)
/* note: these parameters are from published specs, not derived */

View File

@ -1236,13 +1236,14 @@ static MACHINE_CONFIG_START( atarisy2, atarisy2_state )
/* video hardware */
MCFG_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MCFG_GFXDECODE(atarisy2)
MCFG_GFXDECODE_ADD("gfxdecode", atarisy2)
MCFG_PALETTE_LENGTH(256)
MCFG_TILEMAP_ADD_STANDARD("playfield", 2, atarisy2_state, get_playfield_tile_info, 8,8, SCAN_ROWS, 128,64)
MCFG_TILEMAP_ADD_STANDARD_TRANSPEN("alpha", 2, atarisy2_state, get_alpha_tile_info, 8,8, SCAN_ROWS, 64,48, 0)
MCFG_ATARI_MOTION_OBJECTS_ADD("mob", "screen", atarisy2_state::s_mob_config)
MCFG_ATARI_MOTION_OBJECTS_GFXDECODE("gfxdecode")
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(VIDEO_CLOCK/2, 640, 0, 512, 416, 0, 384)

View File

@ -331,7 +331,7 @@ static MACHINE_CONFIG_START( atetris, atetris_state )
MCFG_NVRAM_ADD_1FILL("nvram")
/* video hardware */
MCFG_GFXDECODE(atetris)
MCFG_GFXDECODE_ADD("gfxdecode", atetris)
MCFG_PALETTE_LENGTH(256)
MCFG_SCREEN_ADD("screen", RASTER)
@ -363,7 +363,7 @@ static MACHINE_CONFIG_START( atetrisb2, atetris_state )
MCFG_NVRAM_ADD_1FILL("nvram")
/* video hardware */
MCFG_GFXDECODE(atetris)
MCFG_GFXDECODE_ADD("gfxdecode", atetris)
MCFG_PALETTE_LENGTH(256)
MCFG_SCREEN_ADD("screen", RASTER)

View File

@ -496,7 +496,7 @@ TILE_GET_INFO_MEMBER(avt_state::get_bg_tile_info)
int code = m_videoram[tile_index] | ((attr & 1) << 8);
int color = (attr & 0xf0)>>4;
SET_TILE_INFO_MEMBER( 0, code, color, 0);
SET_TILE_INFO_MEMBER(m_gfxdecode, 0, code, color, 0);
}
@ -510,7 +510,7 @@ UINT32 avt_state::screen_update_avt(screen_device &screen, bitmap_ind16 &bitmap,
{
int x,y;
int count;
gfx_element *gfx = machine().gfx[0];
gfx_element *gfx = m_gfxdecode->gfx(0);
count = 0;
@ -904,7 +904,7 @@ static MACHINE_CONFIG_START( avt, avt_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1) /* 240x224 (through CRTC) */
MCFG_SCREEN_UPDATE_DRIVER(avt_state, screen_update_avt)
MCFG_GFXDECODE(avt)
MCFG_GFXDECODE_ADD("gfxdecode", avt)
MCFG_PALETTE_LENGTH(8*16)

View File

@ -504,7 +504,7 @@ static MACHINE_CONFIG_START( backfire, backfire_state )
/* video hardware */
MCFG_PALETTE_LENGTH(2048)
MCFG_GFXDECODE(backfire)
MCFG_GFXDECODE_ADD("gfxdecode", backfire)
MCFG_DEFAULT_LAYOUT(layout_dualhsxs)
MCFG_SCREEN_ADD("lscreen", RASTER)
@ -522,20 +522,25 @@ static MACHINE_CONFIG_START( backfire, backfire_state )
MCFG_SCREEN_UPDATE_DRIVER(backfire_state, screen_update_backfire_right)
MCFG_DECO16IC_ADD("tilegen1", backfire_deco16ic_tilegen1_intf)
MCFG_DECO16IC_ADD("tilegen1", backfire_deco16ic_tilegen1_intf)
MCFG_DECO16IC_SET_SCREEN("lscreen")
MCFG_DECO16IC_GFXDECODE("gfxdecode")
MCFG_DECO16IC_ADD("tilegen2", backfire_deco16ic_tilegen2_intf)
MCFG_DECO16IC_SET_SCREEN("lscreen")
MCFG_DECO16IC_GFXDECODE("gfxdecode")
MCFG_DEVICE_ADD("spritegen", DECO_SPRITE, 0)
MCFG_VIDEO_SET_SCREEN("lscreen")
decospr_device::set_gfx_region(*device, 4);
decospr_device::set_pri_callback(*device, backfire_pri_callback);
MCFG_DECO_SPRITE_GFXDECODE("gfxdecode")
MCFG_DEVICE_ADD("spritegen2", DECO_SPRITE, 0)
MCFG_VIDEO_SET_SCREEN("rscreen")
decospr_device::set_gfx_region(*device, 5);
decospr_device::set_pri_callback(*device, backfire_pri_callback);
MCFG_DECO_SPRITE_GFXDECODE("gfxdecode")
/* sound hardware */

View File

@ -510,11 +510,12 @@ static MACHINE_CONFIG_START( badlands, badlands_state )
/* video hardware */
MCFG_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MCFG_GFXDECODE(badlands)
MCFG_GFXDECODE_ADD("gfxdecode", badlands)
MCFG_PALETTE_LENGTH(256)
MCFG_TILEMAP_ADD_STANDARD("playfield", 2, badlands_state, get_playfield_tile_info, 8,8, SCAN_ROWS, 64,32)
MCFG_ATARI_MOTION_OBJECTS_ADD("mob", "screen", badlands_state::s_mob_config)
MCFG_ATARI_MOTION_OBJECTS_GFXDECODE("gfxdecode")
MCFG_SCREEN_ADD("screen", RASTER)
/* note: these parameters are from published specs, not derived */
@ -712,11 +713,12 @@ static MACHINE_CONFIG_START( badlandsb, badlands_state )
/* video hardware */
MCFG_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MCFG_GFXDECODE(badlandsb)
MCFG_GFXDECODE_ADD("gfxdecode", badlandsb)
MCFG_PALETTE_LENGTH(256)
MCFG_TILEMAP_ADD_STANDARD("playfield", 2, badlands_state, get_playfield_tile_info, 8,8, SCAN_ROWS, 64,32)
MCFG_ATARI_MOTION_OBJECTS_ADD("mob", "screen", badlands_state::s_mob_config)
MCFG_ATARI_MOTION_OBJECTS_GFXDECODE("gfxdecode")
MCFG_SCREEN_ADD("screen", RASTER)
/* note: these parameters are from published specs, not derived */

View File

@ -483,7 +483,7 @@ static MACHINE_CONFIG_START( bagman, bagman_state )
MCFG_SCREEN_RAW_PARAMS(BAGMAN_HCLK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(bagman_state, screen_update_bagman)
MCFG_GFXDECODE(bagman)
MCFG_GFXDECODE_ADD("gfxdecode", bagman)
MCFG_PALETTE_LENGTH(64)
MCFG_PALETTE_INIT_OVERRIDE(bagman_state,bagman)
@ -519,7 +519,7 @@ static MACHINE_CONFIG_START( pickin, bagman_state )
MCFG_SCREEN_RAW_PARAMS(BAGMAN_HCLK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(bagman_state, screen_update_bagman)
MCFG_GFXDECODE(pickin)
MCFG_GFXDECODE_ADD("gfxdecode", pickin)
MCFG_PALETTE_LENGTH(64)
MCFG_PALETTE_INIT_OVERRIDE(bagman_state,bagman)
@ -571,7 +571,7 @@ static MACHINE_CONFIG_START( botanic, bagman_state )
MCFG_SCREEN_RAW_PARAMS(BAGMAN_HCLK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(bagman_state, screen_update_bagman)
MCFG_GFXDECODE(bagman)
MCFG_GFXDECODE_ADD("gfxdecode", bagman)
MCFG_PALETTE_LENGTH(64)
MCFG_PALETTE_INIT_OVERRIDE(bagman_state,bagman)

View File

@ -299,7 +299,7 @@ static MACHINE_CONFIG_START( bankp, bankp_state )
MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(bankp_state, screen_update_bankp)
MCFG_GFXDECODE(bankp)
MCFG_GFXDECODE_ADD("gfxdecode", bankp)
MCFG_PALETTE_LENGTH(32*4+16*8)

View File

@ -395,7 +395,7 @@ static MACHINE_CONFIG_START( baraduke, baraduke_state )
MCFG_SCREEN_UPDATE_DRIVER(baraduke_state, screen_update_baraduke)
MCFG_SCREEN_VBLANK_DRIVER(baraduke_state, screen_eof_baraduke)
MCFG_GFXDECODE(baraduke)
MCFG_GFXDECODE_ADD("gfxdecode", baraduke)
MCFG_PALETTE_LENGTH(2048)

View File

@ -207,14 +207,14 @@ static MACHINE_CONFIG_START( batman, batman_state )
/* video hardware */
MCFG_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MCFG_GFXDECODE(batman)
MCFG_GFXDECODE_ADD("gfxdecode", batman)
MCFG_PALETTE_LENGTH(2048)
MCFG_ATARI_VAD_ADD("vad", "screen", WRITELINE(atarigen_state, scanline_int_write_line))
MCFG_ATARI_VAD_PLAYFIELD(batman_state, get_playfield_tile_info)
MCFG_ATARI_VAD_PLAYFIELD2(batman_state, get_playfield2_tile_info)
MCFG_ATARI_VAD_ALPHA(batman_state, get_alpha_tile_info)
MCFG_ATARI_VAD_MOB(batman_state::s_mob_config)
MCFG_ATARI_VAD_MOB(batman_state::s_mob_config, "gfxdecode")
MCFG_SCREEN_ADD("screen", RASTER)
/* note: these parameters are from published specs, not derived */

View File

@ -285,7 +285,7 @@ static MACHINE_CONFIG_START( battlane, battlane_state )
MCFG_SCREEN_VISIBLE_AREA(1 * 8, 31 * 8 - 1, 0 * 8, 32 * 8 - 1)
MCFG_SCREEN_UPDATE_DRIVER(battlane_state, screen_update_battlane)
MCFG_GFXDECODE(battlane)
MCFG_GFXDECODE_ADD("gfxdecode", battlane)
MCFG_PALETTE_LENGTH(64)

View File

@ -244,7 +244,7 @@ static MACHINE_CONFIG_START( battlera, battlera_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(battlera_state, screen_update_battlera)
MCFG_GFXDECODE(battlera)
MCFG_GFXDECODE_ADD("gfxdecode", battlera)
MCFG_PALETTE_LENGTH(512)

View File

@ -258,7 +258,7 @@ static MACHINE_CONFIG_START( battlex, battlex_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(battlex_state, screen_update_battlex)
MCFG_GFXDECODE(battlex)
MCFG_GFXDECODE_ADD("gfxdecode", battlex)
MCFG_PALETTE_LENGTH(64)
/* sound hardware */

View File

@ -255,10 +255,12 @@ static MACHINE_CONFIG_START( battlnts, battlnts_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(battlnts_state, screen_update_battlnts)
MCFG_GFXDECODE(battlnts)
MCFG_GFXDECODE_ADD("gfxdecode", battlnts)
MCFG_PALETTE_LENGTH(128)
MCFG_K007342_ADD("k007342", bladestl_k007342_intf)
MCFG_K007342_GFXDECODE("gfxdecode")
MCFG_K007420_ADD("k007420", bladestl_k007420_intf)
/* sound hardware */

View File

@ -681,7 +681,7 @@ static MACHINE_CONFIG_START( bbusters, bbusters_state )
MCFG_SCREEN_UPDATE_DRIVER(bbusters_state, screen_update_bbuster)
MCFG_SCREEN_VBLANK_DRIVER(bbusters_state, screen_eof_bbuster)
MCFG_GFXDECODE(bbusters)
MCFG_GFXDECODE_ADD("gfxdecode", bbusters)
MCFG_PALETTE_LENGTH(2048)
MCFG_VIDEO_START_OVERRIDE(bbusters_state,bbuster)
@ -719,7 +719,7 @@ static MACHINE_CONFIG_START( mechatt, bbusters_state )
MCFG_SCREEN_UPDATE_DRIVER(bbusters_state, screen_update_mechatt)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram16_device, vblank_copy_rising)
MCFG_GFXDECODE(mechatt)
MCFG_GFXDECODE_ADD("gfxdecode", mechatt)
MCFG_PALETTE_LENGTH(1024)
MCFG_VIDEO_START_OVERRIDE(bbusters_state,mechatt)

View File

@ -70,7 +70,7 @@ TILE_GET_INFO_MEMBER(bestleag_state::get_tx_tile_info)
{
int code = m_txram[tile_index];
SET_TILE_INFO_MEMBER(
SET_TILE_INFO_MEMBER(m_gfxdecode,
0,
(code & 0x0fff)|0x8000,
(code & 0xf000) >> 12,
@ -81,7 +81,7 @@ TILE_GET_INFO_MEMBER(bestleag_state::get_bg_tile_info)
{
int code = m_bgram[tile_index];
SET_TILE_INFO_MEMBER(
SET_TILE_INFO_MEMBER(m_gfxdecode,
1,
(code & 0x0fff),
(code & 0xf000) >> 12,
@ -92,7 +92,7 @@ TILE_GET_INFO_MEMBER(bestleag_state::get_fg_tile_info)
{
int code = m_fgram[tile_index];
SET_TILE_INFO_MEMBER(
SET_TILE_INFO_MEMBER(m_gfxdecode,
1,
(code & 0x0fff)|0x1000,
((code & 0xf000) >> 12)|0x10,
@ -153,26 +153,26 @@ void bestleag_state::draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprec
if(m_vregs[0x00/2] & 0x1000)
color &= 7;
machine().gfx[2]->transpen(bitmap,cliprect,
m_gfxdecode->gfx(2)->transpen(bitmap,cliprect,
code,
color,
flipx, 0,
flipx ? (sx+16) : (sx),sy,15);
machine().gfx[2]->transpen(bitmap,cliprect,
m_gfxdecode->gfx(2)->transpen(bitmap,cliprect,
code+1,
color,
flipx, 0,
flipx ? (sx) : (sx+16),sy,15);
/* wraparound x */
machine().gfx[2]->transpen(bitmap,cliprect,
m_gfxdecode->gfx(2)->transpen(bitmap,cliprect,
code,
color,
flipx, 0,
flipx ? (sx+16 - 512) : (sx - 512),sy,15);
machine().gfx[2]->transpen(bitmap,cliprect,
m_gfxdecode->gfx(2)->transpen(bitmap,cliprect,
code+1,
color,
flipx, 0,
@ -378,7 +378,7 @@ static MACHINE_CONFIG_START( bestleag, bestleag_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(bestleag_state, screen_update_bestleag)
MCFG_GFXDECODE(bestleag)
MCFG_GFXDECODE_ADD("gfxdecode", bestleag)
MCFG_PALETTE_LENGTH(0x800)

View File

@ -1093,7 +1093,10 @@ static MACHINE_CONFIG_DERIVED( scorpion1_adder2, scorpion1 )
MCFG_DEFAULT_LAYOUT(layout_sc1_vid)
MCFG_GFXDECODE_ADD("gfxdecode", empty)
MCFG_BFM_ADDER2_ADD("adder2")
MCFG_BFM_ADDER2_GFXDECODE("gfxdecode")
MACHINE_CONFIG_END
/////////////////////////////////////////////////////////////////////////////////////

View File

@ -2128,7 +2128,10 @@ static MACHINE_CONFIG_START( scorpion2_vid, bfm_sc2_state )
MCFG_NVRAM_ADD_CUSTOM_DRIVER("e2ram", bfm_sc2_state, e2ram_init)
MCFG_DEFAULT_LAYOUT(layout_sc2_vid)
MCFG_GFXDECODE_ADD("gfxdecode", empty)
MCFG_BFM_ADDER2_ADD("adder2")
MCFG_BFM_ADDER2_GFXDECODE("gfxdecode")
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_SOUND_ADD("upd", UPD7759, UPD7759_STANDARD_CLOCK)

View File

@ -510,7 +510,7 @@ static MACHINE_CONFIG_START( bigevglf, bigevglf_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(bigevglf_state, screen_update_bigevglf)
MCFG_GFXDECODE(bigevglf)
MCFG_GFXDECODE_ADD("gfxdecode", bigevglf)
MCFG_PALETTE_LENGTH(0x800)
/* sound hardware */

View File

@ -200,7 +200,7 @@ static MACHINE_CONFIG_START( bigstrkb, bigstrkb_state )
MCFG_CPU_PROGRAM_MAP(bigstrkb_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", bigstrkb_state, irq6_line_hold)
MCFG_GFXDECODE(bigstrkb)
MCFG_GFXDECODE_ADD("gfxdecode", bigstrkb)
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)

View File

@ -383,7 +383,7 @@ static MACHINE_CONFIG_START( bingoman, bingoman_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
MCFG_GFXDECODE(bingoman)
MCFG_GFXDECODE_ADD("gfxdecode", bingoman)
MCFG_PALETTE_LENGTH(8)

View File

@ -632,7 +632,7 @@ static MACHINE_CONFIG_START( bingor, bingor_state )
MCFG_CPU_IO_MAP(pic_io_map)
MCFG_GFXDECODE(bingor)
MCFG_GFXDECODE_ADD("gfxdecode", bingor)
//MCFG_NVRAM_ADD_0FILL("nvram")
MCFG_SCREEN_ADD("screen", RASTER)

View File

@ -367,7 +367,7 @@ static MACHINE_CONFIG_START( bionicc, bionicc_state )
MCFG_SCREEN_UPDATE_DRIVER(bionicc_state, screen_update_bionicc)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram16_device, vblank_copy_rising)
MCFG_GFXDECODE(bionicc)
MCFG_GFXDECODE_ADD("gfxdecode", bionicc)
MCFG_PALETTE_LENGTH(1024)

View File

@ -410,8 +410,9 @@ static MACHINE_CONFIG_START( bishi, bishi_state )
MCFG_PALETTE_LENGTH(4096)
MCFG_GFXDECODE_ADD("gfxdecode", empty)
MCFG_K056832_ADD("k056832", bishi_k056832_intf)
MCFG_K056832_GFXDECODE("gfxdecode")
MCFG_K054338_ADD("k054338", bishi_k054338_intf)
MCFG_K055555_ADD("k055555")

View File

@ -480,7 +480,7 @@ static MACHINE_CONFIG_START( bking, bking_state )
MCFG_SCREEN_UPDATE_DRIVER(bking_state, screen_update_bking)
MCFG_SCREEN_VBLANK_DRIVER(bking_state, screen_eof_bking)
MCFG_GFXDECODE(bking)
MCFG_GFXDECODE_ADD("gfxdecode", bking)
MCFG_PALETTE_LENGTH(4*8+4*4+4*2+4*2)
/* sound hardware */

View File

@ -161,7 +161,7 @@ public:
int flipyx = (ram[tile_index*2+1] & 0xc000)>>14; \
int col = (ram[tile_index*2] & 0x00ff); \
if (rgn==1) col >>=4; \
SET_TILE_INFO_MEMBER(1-rgn, tileno, col, TILE_FLIPYX(flipyx));
SET_TILE_INFO_MEMBER(m_gfxdecode, 1-rgn, tileno, col, TILE_FLIPYX(flipyx));
TILE_GET_INFO_MEMBER(blackt96_state::get_bg0_tile_info){ GET_INFO(m_spriteram0); }
TILE_GET_INFO_MEMBER(blackt96_state::get_bg1_tile_info){ GET_INFO(m_spriteram1); }
@ -205,8 +205,8 @@ void blackt96_state::video_start()
void blackt96_state::draw_strip(bitmap_ind16 &bitmap, const rectangle &cliprect, int page, int column)
{
/* the very first 'page' in the spriteram contains the x/y positions for each tile strip */
gfx_element *gfxbg = machine().gfx[0];
gfx_element *gfxspr = machine().gfx[1];
gfx_element *gfxbg = m_gfxdecode->gfx(0);
gfx_element *gfxspr = m_gfxdecode->gfx(1);
int base = column * (0x80/2);
base += page * 2;
@ -265,7 +265,7 @@ UINT32 blackt96_state::screen_update_blackt96(screen_device &screen, bitmap_ind1
/* Text Layer */
int count = 0;
int x,y;
gfx_element *gfx = machine().gfx[2];
gfx_element *gfx = m_gfxdecode->gfx(2);
for (x=0;x<64;x++)
{
@ -600,7 +600,7 @@ static MACHINE_CONFIG_START( blackt96, blackt96_state )
MCFG_CPU_ADD("audiocpu", PIC16C57, 8000000) /* ? */
MCFG_CPU_IO_MAP(sound_io_map)
MCFG_GFXDECODE(blackt96)
MCFG_GFXDECODE_ADD("gfxdecode", blackt96)
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)

View File

@ -334,10 +334,12 @@ static MACHINE_CONFIG_START( bladestl, bladestl_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(bladestl_state, screen_update_bladestl)
MCFG_GFXDECODE(bladestl)
MCFG_GFXDECODE_ADD("gfxdecode", bladestl)
MCFG_PALETTE_LENGTH(32 + 16*16)
MCFG_K007342_ADD("k007342", bladestl_k007342_intf)
MCFG_K007342_GFXDECODE("gfxdecode")
MCFG_K007420_ADD("k007420", bladestl_k007420_intf)
MCFG_K051733_ADD("k051733")

View File

@ -353,7 +353,7 @@ TILE_GET_INFO_MEMBER(blitz_state::get_bg_tile_info)
int bank = (attr & 0x02) >> 1; /* bit 1 switch the gfx banks */
int color = (attr & 0x3c) >> 2; /* bits 2-3-4-5 for color */
SET_TILE_INFO_MEMBER(bank, code, color, 0);
SET_TILE_INFO_MEMBER(m_gfxdecode, bank, code, color, 0);
}
@ -786,7 +786,7 @@ static MACHINE_CONFIG_START( megadpkr, blitz_state )
MCFG_MC6845_ADD("crtc", MC6845, "screen", CPU_CLOCK, mc6845_intf)
MCFG_GFXDECODE(megadpkr)
MCFG_GFXDECODE_ADD("gfxdecode", megadpkr)
MCFG_PALETTE_LENGTH(256)
MACHINE_CONFIG_END

View File

@ -328,7 +328,7 @@ static MACHINE_CONFIG_START( blktiger, blktiger_state )
MCFG_SCREEN_UPDATE_DRIVER(blktiger_state, screen_update_blktiger)
MCFG_SCREEN_VBLANK_DEVICE("spriteram", buffered_spriteram8_device, vblank_copy_rising)
MCFG_GFXDECODE(blktiger)
MCFG_GFXDECODE_ADD("gfxdecode", blktiger)
MCFG_PALETTE_LENGTH(1024)

View File

@ -363,7 +363,7 @@ static MACHINE_CONFIG_START( blmbycar, blmbycar_state )
MCFG_SCREEN_VISIBLE_AREA(0, 0x180-1, 0, 0x100-1)
MCFG_SCREEN_UPDATE_DRIVER(blmbycar_state, screen_update_blmbycar)
MCFG_GFXDECODE(blmbycar)
MCFG_GFXDECODE_ADD("gfxdecode", blmbycar)
MCFG_PALETTE_LENGTH(0x300)
@ -404,7 +404,7 @@ static MACHINE_CONFIG_START( watrball, blmbycar_state )
MCFG_SCREEN_VISIBLE_AREA(0, 0x180-1, 16, 0x100-1)
MCFG_SCREEN_UPDATE_DRIVER(blmbycar_state, screen_update_blmbycar)
MCFG_GFXDECODE(blmbycar)
MCFG_GFXDECODE_ADD("gfxdecode", blmbycar)
MCFG_PALETTE_LENGTH(0x300)

View File

@ -479,7 +479,7 @@ static MACHINE_CONFIG_START( blockade, blockade_state )
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(blockade_state, screen_update_blockade)
MCFG_GFXDECODE(blockade)
MCFG_GFXDECODE_ADD("gfxdecode", blockade)
MCFG_PALETTE_LENGTH(2)
@ -495,7 +495,7 @@ static MACHINE_CONFIG_START( blockade, blockade_state )
MACHINE_CONFIG_END
static MACHINE_CONFIG_DERIVED( blasto, blockade )
MCFG_GFXDECODE(blasto)
MCFG_GFXDECODE_MODIFY("gfxdecode", blasto)
MACHINE_CONFIG_END
/*************************************

View File

@ -220,9 +220,11 @@ static MACHINE_CONFIG_START( blockhl, blockhl_state )
MCFG_PALETTE_LENGTH(1024)
MCFG_GFXDECODE_ADD("gfxdecode", empty)
MCFG_K052109_ADD("k052109", blockhl_k052109_intf)
MCFG_K052109_GFXDECODE("gfxdecode")
MCFG_K051960_ADD("k051960", blockhl_k051960_intf)
MCFG_K051960_GFXDECODE("gfxdecode")
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")

View File

@ -477,7 +477,7 @@ static MACHINE_CONFIG_START( bloodbro, bloodbro_state )
MCFG_SEIBU_CRTC_ADD("crtc",crtc_intf,0)
MCFG_GFXDECODE(bloodbro)
MCFG_GFXDECODE_ADD("gfxdecode", bloodbro)
MCFG_PALETTE_LENGTH(2048)
// sound hardware
@ -490,7 +490,7 @@ static MACHINE_CONFIG_DERIVED( weststry, bloodbro )
MCFG_CPU_PROGRAM_MAP(weststry_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", bloodbro_state, irq6_line_hold)
MCFG_GFXDECODE(weststry)
MCFG_GFXDECODE_MODIFY("gfxdecode", weststry)
MCFG_PALETTE_LENGTH(1024)
MCFG_SCREEN_MODIFY("screen")

View File

@ -183,11 +183,12 @@ static MACHINE_CONFIG_START( blstroid, blstroid_state )
/* video hardware */
MCFG_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
MCFG_GFXDECODE(blstroid)
MCFG_GFXDECODE_ADD("gfxdecode", blstroid)
MCFG_PALETTE_LENGTH(512)
MCFG_TILEMAP_ADD_STANDARD("playfield", 2, blstroid_state, get_playfield_tile_info, 16,8, SCAN_ROWS, 64,64)
MCFG_ATARI_MOTION_OBJECTS_ADD("mob", "screen", blstroid_state::s_mob_config)
MCFG_ATARI_MOTION_OBJECTS_GFXDECODE("gfxdecode")
MCFG_SCREEN_ADD("screen", RASTER)
/* note: these parameters are from published specs, not derived */

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