mirror of
https://github.com/holub/mame
synced 2025-07-07 10:58:41 +03:00
Fully modernised the TLC34076 device [Phil Bennett]
This commit is contained in:
parent
2b27972b79
commit
21f48e8f14
@ -10,6 +10,11 @@
|
||||
#include "emu.h"
|
||||
#include "tlc34076.h"
|
||||
|
||||
|
||||
//**************************************************************************
|
||||
// MACROS
|
||||
//**************************************************************************
|
||||
|
||||
#define PALETTE_WRITE_ADDR 0x00
|
||||
#define PALETTE_DATA 0x01
|
||||
#define PIXEL_READ_MASK 0x02
|
||||
@ -22,60 +27,89 @@
|
||||
#define TEST_REGISTER 0x0e
|
||||
#define RESET_STATE 0x0f
|
||||
|
||||
struct tlc34076_state
|
||||
|
||||
//**************************************************************************
|
||||
// LIVE DEVICE
|
||||
//**************************************************************************
|
||||
|
||||
// device type definition
|
||||
const device_type TLC34076 = &device_creator<tlc34076_device>;
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
// tlc34076_device - constructor
|
||||
//-------------------------------------------------
|
||||
tlc34076_device::tlc34076_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
|
||||
: device_t(mconfig, TLC34076, "TLC34076", tag, owner, clock),
|
||||
m_dacbits(6)
|
||||
{
|
||||
UINT8 local_paletteram[0x300];
|
||||
UINT8 regs[0x10];
|
||||
UINT8 palettedata[3];
|
||||
UINT8 writeindex;
|
||||
UINT8 readindex;
|
||||
UINT8 dacbits;
|
||||
|
||||
rgb_t pens[0x100];
|
||||
};
|
||||
|
||||
const tlc34076_config tlc34076_6_bit_intf =
|
||||
{
|
||||
TLC34076_6_BIT
|
||||
};
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Inline functions
|
||||
*
|
||||
*************************************/
|
||||
|
||||
INLINE tlc34076_state *get_safe_token( device_t *device )
|
||||
{
|
||||
assert(device != NULL);
|
||||
assert(device->type() == TLC34076);
|
||||
|
||||
return (tlc34076_state *)downcast<tlc34076_device *>(device)->token();
|
||||
}
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Retrieve Current Palette
|
||||
*
|
||||
*************************************/
|
||||
|
||||
const pen_t *tlc34076_get_pens(device_t *device)
|
||||
//-------------------------------------------------
|
||||
// static_set_bits - set DAC resolution
|
||||
//-------------------------------------------------
|
||||
void tlc34076_device::static_set_bits(device_t &device, tlc34076_bits bits)
|
||||
{
|
||||
tlc34076_device &tlc = downcast<tlc34076_device &>(device);
|
||||
tlc.m_dacbits = bits;
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
// device_start - device-specific startup
|
||||
//-------------------------------------------------
|
||||
void tlc34076_device::device_start()
|
||||
{
|
||||
save_item(NAME(m_local_paletteram));
|
||||
save_item(NAME(m_regs));
|
||||
save_item(NAME(m_pens));
|
||||
|
||||
save_item(NAME(m_writeindex));
|
||||
save_item(NAME(m_readindex));
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
// device_reset - device-specific reset
|
||||
//-------------------------------------------------
|
||||
|
||||
void tlc34076_device::device_reset()
|
||||
{
|
||||
m_regs[PIXEL_READ_MASK] = 0xff;
|
||||
m_regs[GENERAL_CONTROL] = 0x03;
|
||||
m_regs[INPUT_CLOCK_SEL] = 0x00;
|
||||
m_regs[OUTPUT_CLOCK_SEL] = 0x3f;
|
||||
m_regs[MUX_CONTROL] = 0x2d;
|
||||
m_regs[PALETTE_PAGE] = 0x00;
|
||||
m_regs[TEST_REGISTER] = 0x00;
|
||||
m_regs[RESET_STATE] = 0x00;
|
||||
}
|
||||
|
||||
|
||||
//**************************************************************************
|
||||
// PUBLIC INTERFACE
|
||||
//**************************************************************************
|
||||
|
||||
//-------------------------------------------------
|
||||
// get_pens - retrieve current palette
|
||||
//-------------------------------------------------
|
||||
|
||||
const pen_t *tlc34076_device::get_pens()
|
||||
{
|
||||
tlc34076_state *state = get_safe_token(device);
|
||||
offs_t i;
|
||||
|
||||
for (i = 0; i < 0x100; i++)
|
||||
{
|
||||
int r, g, b;
|
||||
|
||||
if ((i & state->regs[PIXEL_READ_MASK]) == i)
|
||||
if ((i & m_regs[PIXEL_READ_MASK]) == i)
|
||||
{
|
||||
r = state->local_paletteram[3 * i + 0];
|
||||
g = state->local_paletteram[3 * i + 1];
|
||||
b = state->local_paletteram[3 * i + 2];
|
||||
r = m_local_paletteram[3 * i + 0];
|
||||
g = m_local_paletteram[3 * i + 1];
|
||||
b = m_local_paletteram[3 * i + 2];
|
||||
|
||||
if (state->dacbits == 6)
|
||||
if (m_dacbits == 6)
|
||||
{
|
||||
r = pal6bit(r);
|
||||
g = pal6bit(g);
|
||||
@ -89,66 +123,40 @@ const pen_t *tlc34076_get_pens(device_t *device)
|
||||
b = 0;
|
||||
}
|
||||
|
||||
state->pens[i] = MAKE_RGB(r, g, b);
|
||||
m_pens[i] = MAKE_RGB(r, g, b);
|
||||
}
|
||||
|
||||
return state->pens;
|
||||
return m_pens;
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
// read - read access
|
||||
//-------------------------------------------------
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* State reset
|
||||
*
|
||||
*************************************/
|
||||
|
||||
static DEVICE_RESET( tlc34076 )
|
||||
READ8_MEMBER( tlc34076_device::read )
|
||||
{
|
||||
tlc34076_state *state = get_safe_token(device);
|
||||
|
||||
/* reset the registers */
|
||||
state->regs[PIXEL_READ_MASK] = 0xff;
|
||||
state->regs[GENERAL_CONTROL] = 0x03;
|
||||
state->regs[INPUT_CLOCK_SEL] = 0x00;
|
||||
state->regs[OUTPUT_CLOCK_SEL] = 0x3f;
|
||||
state->regs[MUX_CONTROL] = 0x2d;
|
||||
state->regs[PALETTE_PAGE] = 0x00;
|
||||
state->regs[TEST_REGISTER] = 0x00;
|
||||
state->regs[RESET_STATE] = 0x00;
|
||||
}
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Read access
|
||||
*
|
||||
*************************************/
|
||||
|
||||
READ8_DEVICE_HANDLER( tlc34076_r )
|
||||
{
|
||||
tlc34076_state *state = get_safe_token(device);
|
||||
UINT8 result;
|
||||
|
||||
/* keep in range */
|
||||
offset &= 0x0f;
|
||||
result = state->regs[offset];
|
||||
result = m_regs[offset];
|
||||
|
||||
/* switch off the offset */
|
||||
switch (offset)
|
||||
{
|
||||
case PALETTE_DATA:
|
||||
if (state->readindex == 0)
|
||||
if (m_readindex == 0)
|
||||
{
|
||||
state->palettedata[0] = state->local_paletteram[3 * state->regs[PALETTE_READ_ADDR] + 0];
|
||||
state->palettedata[1] = state->local_paletteram[3 * state->regs[PALETTE_READ_ADDR] + 1];
|
||||
state->palettedata[2] = state->local_paletteram[3 * state->regs[PALETTE_READ_ADDR] + 2];
|
||||
m_palettedata[0] = m_local_paletteram[3 * m_regs[PALETTE_READ_ADDR] + 0];
|
||||
m_palettedata[1] = m_local_paletteram[3 * m_regs[PALETTE_READ_ADDR] + 1];
|
||||
m_palettedata[2] = m_local_paletteram[3 * m_regs[PALETTE_READ_ADDR] + 2];
|
||||
}
|
||||
result = state->palettedata[state->readindex++];
|
||||
if (state->readindex == 3)
|
||||
result = m_palettedata[m_readindex++];
|
||||
if (m_readindex == 3)
|
||||
{
|
||||
state->readindex = 0;
|
||||
state->regs[PALETTE_READ_ADDR]++;
|
||||
m_readindex = 0;
|
||||
m_regs[PALETTE_READ_ADDR]++;
|
||||
}
|
||||
break;
|
||||
}
|
||||
@ -157,44 +165,40 @@ READ8_DEVICE_HANDLER( tlc34076_r )
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
// write - write access
|
||||
//-------------------------------------------------
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Write access
|
||||
*
|
||||
*************************************/
|
||||
|
||||
WRITE8_DEVICE_HANDLER( tlc34076_w )
|
||||
WRITE8_MEMBER( tlc34076_device::write )
|
||||
{
|
||||
tlc34076_state *state = get_safe_token(device);
|
||||
// UINT8 oldval;
|
||||
|
||||
/* keep in range */
|
||||
offset &= 0x0f;
|
||||
// oldval = state->regs[offset];
|
||||
state->regs[offset] = data;
|
||||
// oldval = m_regs[offset];
|
||||
m_regs[offset] = data;
|
||||
|
||||
/* switch off the offset */
|
||||
switch (offset)
|
||||
{
|
||||
case PALETTE_WRITE_ADDR:
|
||||
state->writeindex = 0;
|
||||
m_writeindex = 0;
|
||||
break;
|
||||
|
||||
case PALETTE_DATA:
|
||||
state->palettedata[state->writeindex++] = data;
|
||||
if (state->writeindex == 3)
|
||||
m_palettedata[m_writeindex++] = data;
|
||||
if (m_writeindex == 3)
|
||||
{
|
||||
state->local_paletteram[3 * state->regs[PALETTE_WRITE_ADDR] + 0] = state->palettedata[0];
|
||||
state->local_paletteram[3 * state->regs[PALETTE_WRITE_ADDR] + 1] = state->palettedata[1];
|
||||
state->local_paletteram[3 * state->regs[PALETTE_WRITE_ADDR] + 2] = state->palettedata[2];
|
||||
state->writeindex = 0;
|
||||
state->regs[PALETTE_WRITE_ADDR]++;
|
||||
m_local_paletteram[3 * m_regs[PALETTE_WRITE_ADDR] + 0] = m_palettedata[0];
|
||||
m_local_paletteram[3 * m_regs[PALETTE_WRITE_ADDR] + 1] = m_palettedata[1];
|
||||
m_local_paletteram[3 * m_regs[PALETTE_WRITE_ADDR] + 2] = m_palettedata[2];
|
||||
m_writeindex = 0;
|
||||
m_regs[PALETTE_WRITE_ADDR]++;
|
||||
}
|
||||
break;
|
||||
|
||||
case PALETTE_READ_ADDR:
|
||||
state->readindex = 0;
|
||||
m_readindex = 0;
|
||||
break;
|
||||
|
||||
case GENERAL_CONTROL:
|
||||
@ -251,67 +255,7 @@ WRITE8_DEVICE_HANDLER( tlc34076_w )
|
||||
break;
|
||||
|
||||
case RESET_STATE:
|
||||
DEVICE_RESET_CALL(tlc34076);
|
||||
device_reset();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Device interface
|
||||
*
|
||||
*************************************/
|
||||
|
||||
static DEVICE_START( tlc34076 )
|
||||
{
|
||||
tlc34076_config *config = (tlc34076_config *)device->static_config();
|
||||
tlc34076_state *state = get_safe_token(device);
|
||||
|
||||
state->dacbits = config->res_sel ? 8 : 6;
|
||||
|
||||
state_save_register_global_array(device->machine(), state->local_paletteram);
|
||||
state_save_register_global_array(device->machine(), state->regs);
|
||||
state_save_register_global_array(device->machine(), state->pens);
|
||||
|
||||
state_save_register_global(device->machine(), state->writeindex);
|
||||
state_save_register_global(device->machine(), state->readindex);
|
||||
state_save_register_global(device->machine(), state->dacbits);
|
||||
}
|
||||
|
||||
const device_type TLC34076 = &device_creator<tlc34076_device>;
|
||||
|
||||
tlc34076_device::tlc34076_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
|
||||
: device_t(mconfig, TLC34076, "TLC34076", tag, owner, clock)
|
||||
{
|
||||
m_token = global_alloc_clear(tlc34076_state);
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
// device_config_complete - perform any
|
||||
// operations now that the configuration is
|
||||
// complete
|
||||
//-------------------------------------------------
|
||||
|
||||
void tlc34076_device::device_config_complete()
|
||||
{
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
// device_start - device-specific startup
|
||||
//-------------------------------------------------
|
||||
|
||||
void tlc34076_device::device_start()
|
||||
{
|
||||
DEVICE_START_NAME( tlc34076 )(this);
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
// device_reset - device-specific reset
|
||||
//-------------------------------------------------
|
||||
|
||||
void tlc34076_device::device_reset()
|
||||
{
|
||||
DEVICE_RESET_NAME( tlc34076 )(this);
|
||||
}
|
||||
|
@ -7,57 +7,68 @@
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
#define TLC34076_6_BIT 0
|
||||
#define TLC34076_8_BIT 1
|
||||
#pragma once
|
||||
|
||||
const pen_t *tlc34076_get_pens(device_t *device);
|
||||
#ifndef __TLC34076_H__
|
||||
#define __TLC34076_H__
|
||||
|
||||
|
||||
/***************************************************************************
|
||||
CONSTANTS
|
||||
***************************************************************************/
|
||||
|
||||
enum tlc34076_bits
|
||||
{
|
||||
TLC34076_6_BIT = 6,
|
||||
TLC34076_8_BIT = 8
|
||||
};
|
||||
|
||||
|
||||
/***************************************************************************
|
||||
TYPE DEFINITIONS
|
||||
***************************************************************************/
|
||||
|
||||
struct tlc34076_config
|
||||
{
|
||||
int res_sel;
|
||||
};
|
||||
|
||||
extern const tlc34076_config tlc34076_6_bit_intf;
|
||||
|
||||
class tlc34076_device : public device_t
|
||||
{
|
||||
public:
|
||||
// construction/destruction
|
||||
tlc34076_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
|
||||
~tlc34076_device() { global_free(m_token); }
|
||||
|
||||
// access to legacy token
|
||||
void *token() const { assert(m_token != NULL); return m_token; }
|
||||
// static configuration helpers
|
||||
static void static_set_bits(device_t &device, tlc34076_bits bits);
|
||||
|
||||
// public interface
|
||||
const pen_t *get_pens();
|
||||
DECLARE_READ8_MEMBER(read);
|
||||
DECLARE_WRITE8_MEMBER(write);
|
||||
|
||||
protected:
|
||||
// device-level overrides
|
||||
virtual void device_config_complete();
|
||||
virtual void device_start();
|
||||
virtual void device_reset();
|
||||
|
||||
private:
|
||||
// internal state
|
||||
void *m_token;
|
||||
UINT8 m_local_paletteram[0x300];
|
||||
UINT8 m_regs[0x10];
|
||||
UINT8 m_palettedata[3];
|
||||
UINT8 m_writeindex;
|
||||
UINT8 m_readindex;
|
||||
UINT8 m_dacbits;
|
||||
rgb_t m_pens[0x100];
|
||||
};
|
||||
|
||||
extern const device_type TLC34076;
|
||||
|
||||
|
||||
|
||||
/***************************************************************************
|
||||
DEVICE CONFIGURATION MACROS
|
||||
***************************************************************************/
|
||||
|
||||
#define MCFG_TLC34076_ADD(_tag, _config) \
|
||||
#define MCFG_TLC34076_ADD(_tag, _bits) \
|
||||
MCFG_DEVICE_ADD(_tag, TLC34076, 0) \
|
||||
MCFG_DEVICE_CONFIG(_config)
|
||||
tlc34076_device::static_set_bits(*device, _bits);
|
||||
|
||||
|
||||
/***************************************************************************
|
||||
DEVICE I/O FUNCTIONS
|
||||
***************************************************************************/
|
||||
extern const device_type TLC34076;
|
||||
|
||||
DECLARE_WRITE8_DEVICE_HANDLER( tlc34076_w );
|
||||
DECLARE_READ8_DEVICE_HANDLER( tlc34076_r );
|
||||
|
||||
#endif /* __TLC34076_H__ */
|
||||
|
@ -503,7 +503,7 @@ static ADDRESS_MAP_START( tms_map, AS_PROGRAM, 16, artmagic_state )
|
||||
AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_SHARE("vram0")
|
||||
AM_RANGE(0x00400000, 0x005fffff) AM_RAM AM_SHARE("vram1")
|
||||
AM_RANGE(0x00800000, 0x0080007f) AM_READWRITE(artmagic_blitter_r, artmagic_blitter_w)
|
||||
AM_RANGE(0x00c00000, 0x00c000ff) AM_DEVREADWRITE8_LEGACY("tlc34076", tlc34076_r, tlc34076_w, 0x00ff)
|
||||
AM_RANGE(0x00c00000, 0x00c000ff) AM_DEVREADWRITE8("tlc34076", tlc34076_device, read, write, 0x00ff)
|
||||
AM_RANGE(0xc0000000, 0xc00001ff) AM_READWRITE_LEGACY(tms34010_io_register_r, tms34010_io_register_w)
|
||||
AM_RANGE(0xffe00000, 0xffffffff) AM_RAM
|
||||
ADDRESS_MAP_END
|
||||
@ -513,7 +513,7 @@ static ADDRESS_MAP_START( stonebal_tms_map, AS_PROGRAM, 16, artmagic_state )
|
||||
AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_SHARE("vram0")
|
||||
AM_RANGE(0x00400000, 0x005fffff) AM_RAM AM_SHARE("vram1")
|
||||
AM_RANGE(0x00800000, 0x0080007f) AM_READWRITE(artmagic_blitter_r, artmagic_blitter_w)
|
||||
AM_RANGE(0x00c00000, 0x00c000ff) AM_DEVREADWRITE8_LEGACY("tlc34076", tlc34076_r, tlc34076_w, 0x00ff)
|
||||
AM_RANGE(0x00c00000, 0x00c000ff) AM_DEVREADWRITE8("tlc34076", tlc34076_device, read, write, 0x00ff)
|
||||
AM_RANGE(0xc0000000, 0xc00001ff) AM_READWRITE_LEGACY(tms34010_io_register_r, tms34010_io_register_w)
|
||||
AM_RANGE(0xffc00000, 0xffffffff) AM_RAM
|
||||
ADDRESS_MAP_END
|
||||
@ -844,7 +844,7 @@ static MACHINE_CONFIG_START( artmagic, artmagic_state )
|
||||
MCFG_NVRAM_ADD_1FILL("nvram")
|
||||
|
||||
/* video hardware */
|
||||
MCFG_TLC34076_ADD("tlc34076", tlc34076_6_bit_intf)
|
||||
MCFG_TLC34076_ADD("tlc34076", TLC34076_6_BIT)
|
||||
|
||||
|
||||
MCFG_SCREEN_ADD("screen", RASTER)
|
||||
|
@ -332,7 +332,7 @@ static MACHINE_CONFIG_START( btoads, btoads_state )
|
||||
MCFG_NVRAM_ADD_1FILL("nvram")
|
||||
|
||||
/* video hardware */
|
||||
MCFG_TLC34076_ADD("tlc34076", tlc34076_6_bit_intf)
|
||||
MCFG_TLC34076_ADD("tlc34076", TLC34076_6_BIT)
|
||||
|
||||
MCFG_SCREEN_ADD("screen", RASTER)
|
||||
MCFG_SCREEN_RAW_PARAMS(VIDEO_CLOCK/2, 640, 0, 512, 257, 0, 224)
|
||||
|
@ -89,7 +89,7 @@ static void coolpool_scanline(screen_device &screen, bitmap_rgb32 &bitmap, int s
|
||||
|
||||
UINT16 *vram = &state->m_vram_base[(params->rowaddr << 8) & 0x1ff00];
|
||||
UINT32 *dest = &bitmap.pix32(scanline);
|
||||
const rgb_t *pens = tlc34076_get_pens(screen.machine().device("tlc34076"));
|
||||
const rgb_t *pens = state->m_tlc34076->get_pens();
|
||||
int coladdr = params->coladdr;
|
||||
int x;
|
||||
|
||||
@ -632,7 +632,7 @@ ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( coolpool_map, AS_PROGRAM, 16, coolpool_state )
|
||||
AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_SHARE("vram_base")
|
||||
AM_RANGE(0x01000000, 0x010000ff) AM_DEVREADWRITE8_LEGACY("tlc34076", tlc34076_r, tlc34076_w, 0x00ff) // IMSG176P-40
|
||||
AM_RANGE(0x01000000, 0x010000ff) AM_DEVREADWRITE8("tlc34076", tlc34076_device, read, write, 0x00ff) // IMSG176P-40
|
||||
AM_RANGE(0x02000000, 0x020000ff) AM_READWRITE(coolpool_iop_r, coolpool_iop_w)
|
||||
AM_RANGE(0x03000000, 0x0300000f) AM_WRITE(coolpool_misc_w)
|
||||
AM_RANGE(0x03000000, 0x03ffffff) AM_ROM AM_REGION("gfx1", 0)
|
||||
@ -646,7 +646,7 @@ static ADDRESS_MAP_START( nballsht_map, AS_PROGRAM, 16, coolpool_state )
|
||||
AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_SHARE("vram_base")
|
||||
AM_RANGE(0x02000000, 0x020000ff) AM_READWRITE(coolpool_iop_r, coolpool_iop_w)
|
||||
AM_RANGE(0x03000000, 0x0300000f) AM_WRITE(coolpool_misc_w)
|
||||
AM_RANGE(0x04000000, 0x040000ff) AM_DEVREADWRITE8_LEGACY("tlc34076", tlc34076_r, tlc34076_w, 0x00ff) // IMSG176P-40
|
||||
AM_RANGE(0x04000000, 0x040000ff) AM_DEVREADWRITE8("tlc34076", tlc34076_device, read, write, 0x00ff) // IMSG176P-40
|
||||
AM_RANGE(0x06000000, 0x0601ffff) AM_MIRROR(0x00020000) AM_RAM_WRITE(nvram_thrash_data_w) AM_SHARE("nvram")
|
||||
AM_RANGE(0xc0000000, 0xc00001ff) AM_READWRITE_LEGACY(tms34010_io_register_r, tms34010_io_register_w)
|
||||
AM_RANGE(0xff000000, 0xff7fffff) AM_ROM AM_REGION("gfx1", 0)
|
||||
@ -879,7 +879,7 @@ static MACHINE_CONFIG_START( coolpool, coolpool_state )
|
||||
MCFG_TIMER_DRIVER_ADD("nvram_timer", coolpool_state, nvram_write_timeout)
|
||||
|
||||
/* video hardware */
|
||||
MCFG_TLC34076_ADD("tlc34076", tlc34076_6_bit_intf)
|
||||
MCFG_TLC34076_ADD("tlc34076", TLC34076_6_BIT)
|
||||
|
||||
MCFG_SCREEN_ADD("screen", RASTER)
|
||||
MCFG_SCREEN_RAW_PARAMS(XTAL_40MHz/6, 424, 0, 320, 262, 0, 240)
|
||||
|
@ -1691,7 +1691,7 @@ static MACHINE_CONFIG_START( itech8_core_lo, itech8_state )
|
||||
MCFG_TICKET_DISPENSER_ADD("ticket", attotime::from_msec(200), TICKET_MOTOR_ACTIVE_HIGH, TICKET_STATUS_ACTIVE_LOW)
|
||||
|
||||
/* video hardware */
|
||||
MCFG_TLC34076_ADD("tlc34076", tlc34076_6_bit_intf)
|
||||
MCFG_TLC34076_ADD("tlc34076", TLC34076_6_BIT)
|
||||
|
||||
MCFG_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
|
||||
|
||||
|
@ -2,7 +2,8 @@
|
||||
|
||||
Dynamo Skeet Shot
|
||||
|
||||
Notes: Pop Shot is a prototype sequal (or upgrade) to Skeet Shot
|
||||
Notes:
|
||||
Pop Shot is a prototype sequal (or upgrade) to Skeet Shot
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
@ -24,8 +25,10 @@ class skeetsht_state : public driver_device
|
||||
public:
|
||||
skeetsht_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag) ,
|
||||
m_tlc34076(*this, "tlc34076"),
|
||||
m_tms_vram(*this, "tms_vram"){ }
|
||||
|
||||
required_device<tlc34076_device> m_tlc34076;
|
||||
required_shared_ptr<UINT16> m_tms_vram;
|
||||
UINT8 m_porta_latch;
|
||||
UINT8 m_ay_sel;
|
||||
@ -71,7 +74,7 @@ void skeetsht_state::video_start()
|
||||
static void skeetsht_scanline_update(screen_device &screen, bitmap_rgb32 &bitmap, int scanline, const tms34010_display_params *params)
|
||||
{
|
||||
skeetsht_state *state = screen.machine().driver_data<skeetsht_state>();
|
||||
const rgb_t *const pens = tlc34076_get_pens(screen.machine().device("tlc34076"));
|
||||
const rgb_t *const pens = state->m_tlc34076->get_pens();
|
||||
UINT16 *vram = &state->m_tms_vram[(params->rowaddr << 8) & 0x3ff00];
|
||||
UINT32 *dest = &bitmap.pix32(scanline);
|
||||
int coladdr = params->coladdr;
|
||||
@ -92,7 +95,7 @@ READ16_MEMBER(skeetsht_state::ramdac_r)
|
||||
if (offset & 8)
|
||||
offset = (offset & ~8) | 4;
|
||||
|
||||
return tlc34076_r(machine().device("tlc34076"), space, offset);
|
||||
return m_tlc34076->read(space, offset);
|
||||
}
|
||||
|
||||
WRITE16_MEMBER(skeetsht_state::ramdac_w)
|
||||
@ -102,7 +105,7 @@ WRITE16_MEMBER(skeetsht_state::ramdac_w)
|
||||
if (offset & 8)
|
||||
offset = (offset & ~8) | 4;
|
||||
|
||||
tlc34076_w(machine().device("tlc34076"), space, offset, data);
|
||||
m_tlc34076->write(space, offset, data);
|
||||
}
|
||||
|
||||
|
||||
@ -259,7 +262,7 @@ static MACHINE_CONFIG_START( skeetsht, skeetsht_state )
|
||||
MCFG_CPU_PROGRAM_MAP(tms_program_map)
|
||||
|
||||
|
||||
MCFG_TLC34076_ADD("tlc34076", tlc34076_6_bit_intf)
|
||||
MCFG_TLC34076_ADD("tlc34076", TLC34076_6_BIT)
|
||||
|
||||
MCFG_SCREEN_ADD("screen", RASTER)
|
||||
MCFG_SCREEN_RAW_PARAMS(48000000 / 8, 156*4, 0, 100*4, 328, 0, 300) // FIXME
|
||||
|
@ -33,9 +33,11 @@ class tickee_state : public driver_device
|
||||
public:
|
||||
tickee_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag) ,
|
||||
m_tlc34076(*this, "tlc34076"),
|
||||
m_vram(*this, "vram"),
|
||||
m_control(*this, "control"){ }
|
||||
|
||||
required_device<tlc34076_device> m_tlc34076;
|
||||
required_shared_ptr<UINT16> m_vram;
|
||||
optional_shared_ptr<UINT16> m_control;
|
||||
emu_timer *m_setup_gun_timer;
|
||||
@ -160,7 +162,7 @@ static void scanline_update(screen_device &screen, bitmap_rgb32 &bitmap, int sca
|
||||
tickee_state *state = screen.machine().driver_data<tickee_state>();
|
||||
UINT16 *src = &state->m_vram[(params->rowaddr << 8) & 0x3ff00];
|
||||
UINT32 *dest = &bitmap.pix32(scanline);
|
||||
const rgb_t *pens = tlc34076_get_pens(screen.machine().device("tlc34076"));
|
||||
const rgb_t *pens = state->m_tlc34076->get_pens();
|
||||
int coladdr = params->coladdr << 1;
|
||||
int x;
|
||||
|
||||
@ -186,7 +188,7 @@ static void rapidfir_scanline_update(screen_device &screen, bitmap_rgb32 &bitmap
|
||||
tickee_state *state = screen.machine().driver_data<tickee_state>();
|
||||
UINT16 *src = &state->m_vram[(params->rowaddr << 8) & 0x3ff00];
|
||||
UINT32 *dest = &bitmap.pix32(scanline);
|
||||
const rgb_t *pens = tlc34076_get_pens(screen.machine().device("tlc34076"));
|
||||
const rgb_t *pens = state->m_tlc34076->get_pens();
|
||||
int coladdr = params->coladdr << 1;
|
||||
int x;
|
||||
|
||||
@ -388,7 +390,7 @@ static ADDRESS_MAP_START( tickee_map, AS_PROGRAM, 16, tickee_state )
|
||||
AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("vram")
|
||||
AM_RANGE(0x02000000, 0x02ffffff) AM_ROM AM_REGION("user1", 0)
|
||||
AM_RANGE(0x04000000, 0x04003fff) AM_RAM AM_SHARE("nvram")
|
||||
AM_RANGE(0x04100000, 0x041000ff) AM_DEVREADWRITE8_LEGACY("tlc34076", tlc34076_r, tlc34076_w, 0x00ff)
|
||||
AM_RANGE(0x04100000, 0x041000ff) AM_DEVREADWRITE8("tlc34076", tlc34076_device, read, write, 0x00ff)
|
||||
AM_RANGE(0x04200000, 0x0420000f) AM_DEVREAD8_LEGACY("ym1", ay8910_r, 0x00ff)
|
||||
AM_RANGE(0x04200000, 0x0420001f) AM_DEVWRITE8_LEGACY("ym1", ay8910_address_data_w, 0x00ff)
|
||||
AM_RANGE(0x04200100, 0x0420010f) AM_DEVREAD8_LEGACY("ym2", ay8910_r, 0x00ff)
|
||||
@ -406,7 +408,7 @@ static ADDRESS_MAP_START( ghoshunt_map, AS_PROGRAM, 16, tickee_state )
|
||||
AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("vram")
|
||||
AM_RANGE(0x02000000, 0x02ffffff) AM_ROM AM_REGION("user1", 0)
|
||||
AM_RANGE(0x04100000, 0x04103fff) AM_RAM AM_SHARE("nvram")
|
||||
AM_RANGE(0x04200000, 0x042000ff) AM_DEVREADWRITE8_LEGACY("tlc34076", tlc34076_r, tlc34076_w, 0x00ff)
|
||||
AM_RANGE(0x04200000, 0x042000ff) AM_DEVREADWRITE8("tlc34076", tlc34076_device, read, write, 0x00ff)
|
||||
AM_RANGE(0x04300000, 0x0430000f) AM_DEVREAD8_LEGACY("ym1", ay8910_r, 0x00ff)
|
||||
AM_RANGE(0x04300000, 0x0430001f) AM_DEVWRITE8_LEGACY("ym1", ay8910_address_data_w, 0x00ff)
|
||||
AM_RANGE(0x04300100, 0x0430010f) AM_DEVREAD8_LEGACY("ym2", ay8910_r, 0x00ff)
|
||||
@ -422,7 +424,7 @@ static ADDRESS_MAP_START( mouseatk_map, AS_PROGRAM, 16, tickee_state )
|
||||
AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("vram")
|
||||
AM_RANGE(0x02000000, 0x02ffffff) AM_ROM AM_REGION("user1", 0)
|
||||
AM_RANGE(0x04000000, 0x04003fff) AM_RAM AM_SHARE("nvram")
|
||||
AM_RANGE(0x04100000, 0x041000ff) AM_DEVREADWRITE8_LEGACY("tlc34076", tlc34076_r, tlc34076_w, 0x00ff)
|
||||
AM_RANGE(0x04100000, 0x041000ff) AM_DEVREADWRITE8("tlc34076", tlc34076_device, read, write, 0x00ff)
|
||||
AM_RANGE(0x04200000, 0x0420000f) AM_DEVREAD8_LEGACY("ym", ay8910_r, 0x00ff)
|
||||
AM_RANGE(0x04200000, 0x0420000f) AM_DEVWRITE8_LEGACY("ym", ay8910_address_data_w, 0x00ff)
|
||||
AM_RANGE(0x04200100, 0x0420010f) AM_DEVREADWRITE8("oki", okim6295_device, read, write, 0x00ff)
|
||||
@ -451,7 +453,7 @@ static ADDRESS_MAP_START( rapidfir_map, AS_PROGRAM, 16, tickee_state )
|
||||
AM_RANGE(0xfc000b00, 0xfc000b0f) AM_READ_PORT("DSW0")
|
||||
AM_RANGE(0xfc000c00, 0xfc000c1f) AM_READ_PORT("DSW1")
|
||||
AM_RANGE(0xfc000e00, 0xfc000e1f) AM_READ(watchdog_reset16_r)
|
||||
AM_RANGE(0xfc100000, 0xfc1000ff) AM_MIRROR(0x80000) AM_DEVREADWRITE8_LEGACY("tlc34076", tlc34076_r, tlc34076_w, 0x00ff)
|
||||
AM_RANGE(0xfc100000, 0xfc1000ff) AM_MIRROR(0x80000) AM_DEVREADWRITE8("tlc34076", tlc34076_device, read, write, 0x00ff)
|
||||
AM_RANGE(0xfc200000, 0xfc207fff) AM_RAM AM_SHARE("nvram")
|
||||
AM_RANGE(0xfc300000, 0xfc30000f) AM_DEVREADWRITE8("oki", okim6295_device, read, write, 0x00ff)
|
||||
AM_RANGE(0xfc400010, 0xfc40001f) AM_READWRITE(ff7f_r, ff7f_w)
|
||||
@ -775,7 +777,7 @@ static MACHINE_CONFIG_START( tickee, tickee_state )
|
||||
MCFG_TICKET_DISPENSER_ADD("ticket2", attotime::from_msec(100), TICKET_MOTOR_ACTIVE_LOW, TICKET_STATUS_ACTIVE_HIGH)
|
||||
|
||||
/* video hardware */
|
||||
MCFG_TLC34076_ADD("tlc34076", tlc34076_6_bit_intf)
|
||||
MCFG_TLC34076_ADD("tlc34076", TLC34076_6_BIT)
|
||||
|
||||
MCFG_VIDEO_START_OVERRIDE(tickee_state,tickee)
|
||||
|
||||
@ -815,7 +817,7 @@ static MACHINE_CONFIG_START( rapidfir, tickee_state )
|
||||
MCFG_NVRAM_ADD_1FILL("nvram")
|
||||
|
||||
/* video hardware */
|
||||
MCFG_TLC34076_ADD("tlc34076", tlc34076_6_bit_intf)
|
||||
MCFG_TLC34076_ADD("tlc34076", TLC34076_6_BIT)
|
||||
|
||||
MCFG_VIDEO_START_OVERRIDE(tickee_state,tickee)
|
||||
|
||||
@ -845,7 +847,7 @@ static MACHINE_CONFIG_START( mouseatk, tickee_state )
|
||||
MCFG_TICKET_DISPENSER_ADD("ticket2", attotime::from_msec(100), TICKET_MOTOR_ACTIVE_LOW, TICKET_STATUS_ACTIVE_HIGH)
|
||||
|
||||
/* video hardware */
|
||||
MCFG_TLC34076_ADD("tlc34076", tlc34076_6_bit_intf)
|
||||
MCFG_TLC34076_ADD("tlc34076", TLC34076_6_BIT)
|
||||
|
||||
MCFG_SCREEN_ADD("screen", RASTER)
|
||||
MCFG_SCREEN_RAW_PARAMS(VIDEO_CLOCK/2, 444, 0, 320, 233, 0, 200)
|
||||
|
@ -95,12 +95,14 @@ class vcombat_state : public driver_device
|
||||
public:
|
||||
vcombat_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag) ,
|
||||
m_tlc34076(*this, "tlc34076"),
|
||||
m_vid_0_shared_ram(*this, "vid_0_ram"),
|
||||
m_vid_1_shared_ram(*this, "vid_1_ram"),
|
||||
m_framebuffer_ctrl(*this, "fb_control"){ }
|
||||
|
||||
UINT16* m_m68k_framebuffer[2];
|
||||
UINT16* m_i860_framebuffer[2][2];
|
||||
required_device<tlc34076_device> m_tlc34076;
|
||||
required_shared_ptr<UINT16> m_vid_0_shared_ram;
|
||||
required_shared_ptr<UINT16> m_vid_1_shared_ram;
|
||||
required_shared_ptr<UINT16> m_framebuffer_ctrl;
|
||||
@ -132,7 +134,7 @@ static UINT32 update_screen(screen_device &screen, bitmap_rgb32 &bitmap, const r
|
||||
{
|
||||
vcombat_state *state = screen.machine().driver_data<vcombat_state>();
|
||||
int y;
|
||||
const rgb_t *const pens = tlc34076_get_pens(screen.machine().device("tlc34076"));
|
||||
const rgb_t *const pens = state->m_tlc34076->get_pens();
|
||||
|
||||
UINT16 *m68k_buf = state->m_m68k_framebuffer[(*state->m_framebuffer_ctrl & 0x20) ? 1 : 0];
|
||||
UINT16 *i860_buf = state->m_i860_framebuffer[index][0];
|
||||
@ -368,7 +370,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, vcombat_state )
|
||||
//AM_RANGE(0x703000, 0x703001) /* Headset rotation axis? */
|
||||
//AM_RANGE(0x704000, 0x704001) /* Headset rotation axis? */
|
||||
|
||||
AM_RANGE(0x706000, 0x70601f) AM_DEVREADWRITE8_LEGACY("tlc34076", tlc34076_r, tlc34076_w, 0x00ff)
|
||||
AM_RANGE(0x706000, 0x70601f) AM_DEVREADWRITE8("tlc34076", tlc34076_device, read, write, 0x00ff)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
@ -607,7 +609,7 @@ static MACHINE_CONFIG_START( vcombat, vcombat_state )
|
||||
MCFG_QUANTUM_PERFECT_CPU("maincpu")
|
||||
#endif
|
||||
|
||||
MCFG_TLC34076_ADD("tlc34076", tlc34076_6_bit_intf)
|
||||
MCFG_TLC34076_ADD("tlc34076", TLC34076_6_BIT)
|
||||
|
||||
/* Disabled for now as it can't handle multiple screens */
|
||||
// MCFG_MC6845_ADD("crtc", MC6845, 6000000 / 16, mc6845_intf)
|
||||
@ -644,7 +646,7 @@ static MACHINE_CONFIG_START( shadfgtr, vcombat_state )
|
||||
MCFG_NVRAM_ADD_0FILL("nvram")
|
||||
MCFG_MACHINE_RESET_OVERRIDE(vcombat_state,shadfgtr)
|
||||
|
||||
MCFG_TLC34076_ADD("tlc34076", tlc34076_6_bit_intf)
|
||||
MCFG_TLC34076_ADD("tlc34076", TLC34076_6_BIT)
|
||||
|
||||
MCFG_MC6845_ADD("crtc", MC6845, XTAL_20MHz / 4 / 16, mc6845_intf)
|
||||
|
||||
|
@ -19,9 +19,12 @@ class xtheball_state : public driver_device
|
||||
public:
|
||||
xtheball_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag) ,
|
||||
m_vram_bg(*this, "vrabg"),
|
||||
m_vram_fg(*this, "vrafg"){ }
|
||||
m_tlc34076(*this, "tlc34076"),
|
||||
m_vram_bg(*this, "vrabg"),
|
||||
m_vram_fg(*this, "vrafg")
|
||||
{ }
|
||||
|
||||
required_device<tlc34076_device> m_tlc34076;
|
||||
required_shared_ptr<UINT16> m_vram_bg;
|
||||
required_shared_ptr<UINT16> m_vram_fg;
|
||||
UINT8 m_bitvals[32];
|
||||
@ -44,7 +47,7 @@ static void xtheball_scanline_update(screen_device &screen, bitmap_rgb32 &bitmap
|
||||
xtheball_state *state = screen.machine().driver_data<xtheball_state>();
|
||||
UINT16 *srcbg = &state->m_vram_bg[(params->rowaddr << 8) & 0xff00];
|
||||
UINT32 *dest = &bitmap.pix32(scanline);
|
||||
const rgb_t *pens = tlc34076_get_pens(screen.machine().device("tlc34076"));
|
||||
const rgb_t *pens = state->m_tlc34076->get_pens();
|
||||
int coladdr = params->coladdr;
|
||||
int x;
|
||||
|
||||
@ -214,7 +217,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, xtheball_state )
|
||||
AM_RANGE(0x00000000, 0x0001ffff) AM_RAM AM_SHARE("nvram")
|
||||
AM_RANGE(0x01000000, 0x010fffff) AM_RAM AM_SHARE("vrabg")
|
||||
AM_RANGE(0x02000000, 0x020fffff) AM_RAM AM_SHARE("vrafg")
|
||||
AM_RANGE(0x03000000, 0x030000ff) AM_DEVREADWRITE8_LEGACY("tlc34076", tlc34076_r, tlc34076_w, 0x00ff)
|
||||
AM_RANGE(0x03000000, 0x030000ff) AM_DEVREADWRITE8("tlc34076", tlc34076_device, read, write, 0x00ff)
|
||||
AM_RANGE(0x03040000, 0x030401ff) AM_WRITE(bit_controls_w)
|
||||
AM_RANGE(0x03040080, 0x0304008f) AM_READ_PORT("DSW")
|
||||
AM_RANGE(0x03040100, 0x0304010f) AM_READ(analogx_r)
|
||||
@ -345,7 +348,7 @@ static MACHINE_CONFIG_START( xtheball, xtheball_state )
|
||||
MCFG_TICKET_DISPENSER_ADD("ticket", attotime::from_msec(100), TICKET_MOTOR_ACTIVE_HIGH, TICKET_STATUS_ACTIVE_HIGH)
|
||||
|
||||
/* video hardware */
|
||||
MCFG_TLC34076_ADD("tlc34076", tlc34076_6_bit_intf)
|
||||
MCFG_TLC34076_ADD("tlc34076", TLC34076_6_BIT)
|
||||
|
||||
MCFG_SCREEN_ADD("screen", RASTER)
|
||||
MCFG_SCREEN_RAW_PARAMS(10000000, 640, 114, 626, 257, 24, 248)
|
||||
|
@ -8,11 +8,13 @@ class artmagic_state : public driver_device
|
||||
{
|
||||
public:
|
||||
artmagic_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag) ,
|
||||
: driver_device(mconfig, type, tag),
|
||||
m_tlc34076(*this, "tlc34076"),
|
||||
m_control(*this, "control"),
|
||||
m_vram0(*this, "vram0"),
|
||||
m_vram1(*this, "vram1"){ }
|
||||
|
||||
required_device<tlc34076_device> m_tlc34076;
|
||||
required_shared_ptr<UINT16> m_control;
|
||||
UINT8 m_tms_irq;
|
||||
UINT8 m_hack_irq;
|
||||
|
@ -5,9 +5,11 @@ class coolpool_state : public driver_device
|
||||
public:
|
||||
coolpool_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag) ,
|
||||
m_tlc34076(*this, "tlc34076"),
|
||||
m_vram_base(*this, "vram_base"),
|
||||
m_nvram(*this, "nvram"){ }
|
||||
|
||||
optional_device<tlc34076_device> m_tlc34076;
|
||||
required_shared_ptr<UINT16> m_vram_base;
|
||||
required_shared_ptr<UINT16> m_nvram;
|
||||
|
||||
|
@ -5,6 +5,7 @@
|
||||
|
||||
**************************************************************************/
|
||||
|
||||
#include "video/tlc34076.h"
|
||||
#include "video/tms34061.h"
|
||||
|
||||
#define YBUFFER_COUNT 15
|
||||
@ -14,8 +15,11 @@ class itech8_state : public driver_device
|
||||
public:
|
||||
itech8_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag),
|
||||
m_tlc34076(*this, "tlc34076"),
|
||||
m_visarea(0, 0, 0, 0){ }
|
||||
|
||||
required_device<tlc34076_device> m_tlc34076;
|
||||
|
||||
rectangle m_visarea;
|
||||
UINT8 m_grom_bank;
|
||||
|
||||
|
@ -341,7 +341,7 @@ void artmagic_scanline(screen_device &screen, bitmap_rgb32 &bitmap, int scanline
|
||||
offs_t offset = (params->rowaddr << 12) & 0x7ff000;
|
||||
UINT16 *vram = address_to_vram(state, &offset);
|
||||
UINT32 *dest = &bitmap.pix32(scanline);
|
||||
const rgb_t *pens = tlc34076_get_pens(screen.machine().device("tlc34076"));
|
||||
const rgb_t *pens = state->m_tlc34076->get_pens();
|
||||
int coladdr = params->coladdr << 1;
|
||||
int x;
|
||||
|
||||
|
@ -123,13 +123,13 @@ WRITE16_MEMBER( btoads_state::scroll1_w )
|
||||
|
||||
WRITE16_MEMBER( btoads_state::paletteram_w )
|
||||
{
|
||||
tlc34076_w(m_tlc34076, space, offset/2, data);
|
||||
m_tlc34076->write(space, offset/2, data);
|
||||
}
|
||||
|
||||
|
||||
READ16_MEMBER( btoads_state::paletteram_r )
|
||||
{
|
||||
return tlc34076_r(m_tlc34076, space, offset/2);
|
||||
return m_tlc34076->read(space, offset/2);
|
||||
}
|
||||
|
||||
|
||||
@ -323,7 +323,7 @@ void btoads_state::scanline_update(screen_device &screen, bitmap_rgb32 &bitmap,
|
||||
UINT16 *bg1_base = &m_vram_bg1[(fulladdr + (m_yscroll1 << 10)) & 0x3fc00];
|
||||
UINT8 *spr_base = &m_vram_fg_display[fulladdr & 0x3fc00];
|
||||
UINT32 *dst = &bitmap.pix32(scanline);
|
||||
const rgb_t *pens = tlc34076_get_pens(m_tlc34076);
|
||||
const rgb_t *pens = m_tlc34076->get_pens();
|
||||
int coladdr = fulladdr & 0x3ff;
|
||||
int x;
|
||||
|
||||
|
@ -188,7 +188,7 @@ void itech8_state::video_start()
|
||||
|
||||
WRITE8_MEMBER(itech8_state::itech8_palette_w)
|
||||
{
|
||||
tlc34076_w(machine().device("tlc34076"), space, offset/2, data);
|
||||
m_tlc34076->write(space, offset/2, data);
|
||||
}
|
||||
|
||||
|
||||
@ -605,7 +605,7 @@ UINT32 itech8_state::screen_update_itech8_2layer(screen_device &screen, bitmap_r
|
||||
struct tms34061_display &tms_state = m_tms_state;
|
||||
UINT32 page_offset;
|
||||
int x, y;
|
||||
const rgb_t *pens = tlc34076_get_pens(machine().device("tlc34076"));
|
||||
const rgb_t *pens = m_tlc34076->get_pens();
|
||||
|
||||
/* first get the current display state */
|
||||
tms34061_get_display_state(&tms_state);
|
||||
@ -690,7 +690,7 @@ UINT32 itech8_state::screen_update_itech8_2page(screen_device &screen, bitmap_rg
|
||||
struct tms34061_display &tms_state = m_tms_state;
|
||||
UINT32 page_offset;
|
||||
int x, y;
|
||||
const rgb_t *pens = tlc34076_get_pens(machine().device("tlc34076"));
|
||||
const rgb_t *pens = m_tlc34076->get_pens();
|
||||
|
||||
/* first get the current display state */
|
||||
tms34061_get_display_state(&tms_state);
|
||||
@ -722,7 +722,7 @@ UINT32 itech8_state::screen_update_itech8_2page_large(screen_device &screen, bit
|
||||
struct tms34061_display &tms_state = m_tms_state;
|
||||
UINT32 page_offset;
|
||||
int x, y;
|
||||
const rgb_t *pens = tlc34076_get_pens(machine().device("tlc34076"));
|
||||
const rgb_t *pens = m_tlc34076->get_pens();
|
||||
|
||||
/* first get the current display state */
|
||||
tms34061_get_display_state(&tms_state);
|
||||
|
Loading…
Reference in New Issue
Block a user