mirror of
https://github.com/holub/mame
synced 2025-05-28 08:33:05 +03:00
-z8000, tmpz84c015: Removed MCFG macros. [Ryan Holtz]
(nw) -tumbleb: Fixed compile.
This commit is contained in:
parent
2f43a53ee8
commit
55c8bf8e0e
@ -48,16 +48,16 @@ MACHINE_CONFIG_START(msx_cart_bm_012_device::device_add_mconfig)
|
||||
// - PIO
|
||||
// - CGC
|
||||
// - WDT
|
||||
MCFG_DEVICE_ADD("tmpz84c015af", TMPZ84C015, XTAL(12'000'000)/2) /* 6 MHz */
|
||||
MCFG_DEVICE_PROGRAM_MAP(bm_012_memory_map)
|
||||
TMPZ84C015(config, m_tmpz84c015af, XTAL(12'000'000)/2); /* 6 MHz */
|
||||
m_tmpz84c015af->set_addrmap(AS_PROGRAM, &msx_cart_bm_012_device::bm_012_memory_map);
|
||||
// PIO callbacks
|
||||
MCFG_TMPZ84C015_IN_PA_CB(READ8("bm012_pio", z80pio_device, pa_r))
|
||||
MCFG_TMPZ84C015_OUT_PA_CB(WRITE8("bm012_pio", z80pio_device, pa_w))
|
||||
MCFG_TMPZ84C015_IN_PB_CB(READ8("bm012_pio", z80pio_device, pb_r))
|
||||
MCFG_TMPZ84C015_OUT_PB_CB(WRITE8("bm012_pio", z80pio_device, pb_w))
|
||||
MCFG_TMPZ84C015_OUT_BRDY_CB(WRITELINE("bm012_pio", z80pio_device, strobe_b))
|
||||
m_tmpz84c015af->in_pa_callback().set("bm012_pio", FUNC(z80pio_device::pa_r));
|
||||
m_tmpz84c015af->out_pa_callback().set("bm012_pio", FUNC(z80pio_device::pa_w));
|
||||
m_tmpz84c015af->in_pb_callback().set("bm012_pio", FUNC(z80pio_device::pb_r));
|
||||
m_tmpz84c015af->out_pb_callback().set("bm012_pio", FUNC(z80pio_device::pb_w));
|
||||
m_tmpz84c015af->out_brdy_callback().set("bm012_pio", FUNC(z80pio_device::strobe_b));
|
||||
// SIO callbacks
|
||||
MCFG_TMPZ84C015_OUT_TXDA_CB(WRITELINE("mdout", midi_port_device, write_txd))
|
||||
m_tmpz84c015af->out_txda_callback().set("mdout", FUNC(midi_port_device::write_txd));
|
||||
|
||||
// Sony CXK5864BSP-10L (8KB ram)
|
||||
// Sharp LH0081A Z80A-PIO-0 - For communicating between the MSX and the TMP
|
||||
|
@ -18,88 +18,6 @@
|
||||
#include "machine/z80pio.h"
|
||||
|
||||
|
||||
/***************************************************************************
|
||||
DEVICE CONFIGURATION MACROS
|
||||
***************************************************************************/
|
||||
|
||||
// SIO callbacks
|
||||
#define MCFG_TMPZ84C015_OUT_TXDA_CB(_devcb) \
|
||||
downcast<tmpz84c015_device &>(*device).set_out_txda_callback(DEVCB_##_devcb);
|
||||
|
||||
#define MCFG_TMPZ84C015_OUT_DTRA_CB(_devcb) \
|
||||
downcast<tmpz84c015_device &>(*device).set_out_dtra_callback(DEVCB_##_devcb);
|
||||
|
||||
#define MCFG_TMPZ84C015_OUT_RTSA_CB(_devcb) \
|
||||
downcast<tmpz84c015_device &>(*device).set_out_rtsa_callback(DEVCB_##_devcb);
|
||||
|
||||
#define MCFG_TMPZ84C015_OUT_WRDYA_CB(_devcb) \
|
||||
downcast<tmpz84c015_device &>(*device).set_out_wrdya_callback(DEVCB_##_devcb);
|
||||
|
||||
#define MCFG_TMPZ84C015_OUT_SYNCA_CB(_devcb) \
|
||||
downcast<tmpz84c015_device &>(*device).set_out_synca_callback(DEVCB_##_devcb);
|
||||
|
||||
#define MCFG_TMPZ84C015_OUT_TXDB_CB(_devcb) \
|
||||
downcast<tmpz84c015_device &>(*device).set_out_txdb_callback(DEVCB_##_devcb);
|
||||
|
||||
#define MCFG_TMPZ84C015_OUT_DTRB_CB(_devcb) \
|
||||
downcast<tmpz84c015_device &>(*device).set_out_dtrb_callback(DEVCB_##_devcb);
|
||||
|
||||
#define MCFG_TMPZ84C015_OUT_RTSB_CB(_devcb) \
|
||||
downcast<tmpz84c015_device &>(*device).set_out_rtsb_callback(DEVCB_##_devcb);
|
||||
|
||||
#define MCFG_TMPZ84C015_OUT_WRDYB_CB(_devcb) \
|
||||
downcast<tmpz84c015_device &>(*device).set_out_wrdyb_callback(DEVCB_##_devcb);
|
||||
|
||||
#define MCFG_TMPZ84C015_OUT_SYNCB_CB(_devcb) \
|
||||
downcast<tmpz84c015_device &>(*device).set_out_syncb_callback(DEVCB_##_devcb);
|
||||
|
||||
#define MCFG_TMPZ84C015_OUT_RXDRQA_CB(_devcb) \
|
||||
downcast<tmpz84c015_device &>(*device).set_out_rxdrqa_callback(DEVCB_##_devcb);
|
||||
|
||||
#define MCFG_TMPZ84C015_OUT_TXDRQA_CB(_devcb) \
|
||||
downcast<tmpz84c015_device &>(*device).set_out_txdrqa_callback(DEVCB_##_devcb);
|
||||
|
||||
#define MCFG_TMPZ84C015_OUT_RXDRQB_CB(_devcb) \
|
||||
downcast<tmpz84c015_device &>(*device).set_out_rxdrqb_callback(DEVCB_##_devcb);
|
||||
|
||||
#define MCFG_TMPZ84C015_OUT_TXDRQB_CB(_devcb) \
|
||||
downcast<tmpz84c015_device &>(*device).set_out_txdrqb_callback(DEVCB_##_devcb);
|
||||
|
||||
|
||||
// CTC callbacks
|
||||
#define MCFG_TMPZ84C015_ZC0_CB(_devcb) \
|
||||
downcast<tmpz84c015_device &>(*device).set_zc_callback<0>(DEVCB_##_devcb);
|
||||
|
||||
#define MCFG_TMPZ84C015_ZC1_CB(_devcb) \
|
||||
downcast<tmpz84c015_device &>(*device).set_zc_callback<1>(DEVCB_##_devcb);
|
||||
|
||||
#define MCFG_TMPZ84C015_ZC2_CB(_devcb) \
|
||||
downcast<tmpz84c015_device &>(*device).set_zc_callback<2>(DEVCB_##_devcb);
|
||||
|
||||
#define MCFG_TMPZ84C015_ZC3_CB(_devcb) \
|
||||
downcast<tmpz84c015_device &>(*device).set_zc_callback<3>(DEVCB_##_devcb);
|
||||
|
||||
|
||||
// PIO callbacks
|
||||
#define MCFG_TMPZ84C015_IN_PA_CB(_devcb) \
|
||||
downcast<tmpz84c015_device &>(*device).set_in_pa_callback(DEVCB_##_devcb);
|
||||
|
||||
#define MCFG_TMPZ84C015_OUT_PA_CB(_devcb) \
|
||||
downcast<tmpz84c015_device &>(*device).set_out_pa_callback(DEVCB_##_devcb);
|
||||
|
||||
#define MCFG_TMPZ84C015_OUT_ARDY_CB(_devcb) \
|
||||
downcast<tmpz84c015_device &>(*device).set_out_ardy_callback(DEVCB_##_devcb);
|
||||
|
||||
#define MCFG_TMPZ84C015_IN_PB_CB(_devcb) \
|
||||
downcast<tmpz84c015_device &>(*device).set_in_pb_callback(DEVCB_##_devcb);
|
||||
|
||||
#define MCFG_TMPZ84C015_OUT_PB_CB(_devcb) \
|
||||
downcast<tmpz84c015_device &>(*device).set_out_pb_callback(DEVCB_##_devcb);
|
||||
|
||||
#define MCFG_TMPZ84C015_OUT_BRDY_CB(_devcb) \
|
||||
downcast<tmpz84c015_device &>(*device).set_out_brdy_callback(DEVCB_##_devcb);
|
||||
|
||||
|
||||
/***************************************************************************
|
||||
TYPE DEFINITIONS
|
||||
***************************************************************************/
|
||||
@ -110,50 +28,33 @@ public:
|
||||
tmpz84c015_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t);
|
||||
|
||||
// configuration helpers
|
||||
template<class Object> devcb_base &set_out_txda_callback(Object &&cb) { return m_out_txda_cb.set_callback(std::forward<Object>(cb)); }
|
||||
template<class Object> devcb_base &set_out_dtra_callback(Object &&cb) { return m_out_dtra_cb.set_callback(std::forward<Object>(cb)); }
|
||||
template<class Object> devcb_base &set_out_rtsa_callback(Object &&cb) { return m_out_rtsa_cb.set_callback(std::forward<Object>(cb)); }
|
||||
template<class Object> devcb_base &set_out_wrdya_callback(Object &&cb) { return m_out_wrdya_cb.set_callback(std::forward<Object>(cb)); }
|
||||
template<class Object> devcb_base &set_out_synca_callback(Object &&cb) { return m_out_synca_cb.set_callback(std::forward<Object>(cb)); }
|
||||
|
||||
// SIO callbacks
|
||||
auto out_txda_callback() { return m_out_txda_cb.bind(); }
|
||||
auto out_dtra_callback() { return m_out_dtra_cb.bind(); }
|
||||
auto out_rtsa_callback() { return m_out_rtsa_cb.bind(); }
|
||||
auto out_wrdya_callback() { return m_out_wrdya_cb.bind(); }
|
||||
auto out_synca_callback() { return m_out_synca_cb.bind(); }
|
||||
|
||||
template<class Object> devcb_base &set_out_txdb_callback(Object &&cb) { return m_out_txdb_cb.set_callback(std::forward<Object>(cb)); }
|
||||
template<class Object> devcb_base &set_out_dtrb_callback(Object &&cb) { return m_out_dtrb_cb.set_callback(std::forward<Object>(cb)); }
|
||||
template<class Object> devcb_base &set_out_rtsb_callback(Object &&cb) { return m_out_rtsb_cb.set_callback(std::forward<Object>(cb)); }
|
||||
template<class Object> devcb_base &set_out_wrdyb_callback(Object &&cb) { return m_out_wrdyb_cb.set_callback(std::forward<Object>(cb)); }
|
||||
template<class Object> devcb_base &set_out_syncb_callback(Object &&cb) { return m_out_syncb_cb.set_callback(std::forward<Object>(cb)); }
|
||||
auto out_txdb_callback() { return m_out_txdb_cb.bind(); }
|
||||
auto out_dtrb_callback() { return m_out_dtrb_cb.bind(); }
|
||||
auto out_rtsb_callback() { return m_out_rtsb_cb.bind(); }
|
||||
auto out_wrdyb_callback() { return m_out_wrdyb_cb.bind(); }
|
||||
auto out_syncb_callback() { return m_out_syncb_cb.bind(); }
|
||||
|
||||
template<class Object> devcb_base &set_out_rxdrqa_callback(Object &&cb) { return m_out_rxdrqa_cb.set_callback(std::forward<Object>(cb)); }
|
||||
template<class Object> devcb_base &set_out_txdrqa_callback(Object &&cb) { return m_out_txdrqa_cb.set_callback(std::forward<Object>(cb)); }
|
||||
template<class Object> devcb_base &set_out_rxdrqb_callback(Object &&cb) { return m_out_rxdrqb_cb.set_callback(std::forward<Object>(cb)); }
|
||||
template<class Object> devcb_base &set_out_txdrqb_callback(Object &&cb) { return m_out_txdrqb_cb.set_callback(std::forward<Object>(cb)); }
|
||||
auto out_rxdrqa_callback() { return m_out_rxdrqa_cb.bind(); }
|
||||
auto out_txdrqa_callback() { return m_out_txdrqa_cb.bind(); }
|
||||
auto out_rxdrqb_callback() { return m_out_rxdrqb_cb.bind(); }
|
||||
auto out_txdrqb_callback() { return m_out_txdrqb_cb.bind(); }
|
||||
|
||||
template<unsigned N, class Object> devcb_base &set_zc_callback(Object &&cb) { return m_zc_cb[N].set_callback(std::forward<Object>(cb)); }
|
||||
// CTC callbacks
|
||||
template<unsigned N> auto zc_callback() { return m_zc_cb[N].bind(); }
|
||||
|
||||
template<class Object> devcb_base &set_in_pa_callback(Object &&cb) { return m_in_pa_cb.set_callback(std::forward<Object>(cb)); }
|
||||
template<class Object> devcb_base &set_out_pa_callback(Object &&cb) { return m_out_pa_cb.set_callback(std::forward<Object>(cb)); }
|
||||
template<class Object> devcb_base &set_out_ardy_callback(Object &&cb) { return m_out_ardy_cb.set_callback(std::forward<Object>(cb)); }
|
||||
// PIO callbacks
|
||||
auto in_pa_callback() { return m_in_pa_cb.bind(); }
|
||||
auto out_pa_callback() { return m_out_pa_cb.bind(); }
|
||||
auto out_ardy_callback() { return m_out_ardy_cb.bind(); }
|
||||
|
||||
template<class Object> devcb_base &set_in_pb_callback(Object &&cb) { return m_in_pb_cb.set_callback(std::forward<Object>(cb)); }
|
||||
template<class Object> devcb_base &set_out_pb_callback(Object &&cb) { return m_out_pb_cb.set_callback(std::forward<Object>(cb)); }
|
||||
template<class Object> devcb_base &set_out_brdy_callback(Object &&cb) { return m_out_brdy_cb.set_callback(std::forward<Object>(cb)); }
|
||||
auto in_pb_callback() { return m_in_pb_cb.bind(); }
|
||||
auto out_pb_callback() { return m_out_pb_cb.bind(); }
|
||||
auto out_brdy_callback() { return m_out_brdy_cb.bind(); }
|
||||
|
@ -29,9 +29,6 @@ enum
|
||||
#define Z8000_SYSCALL 0x0200 /* system call (lsb is vector) */
|
||||
#define Z8000_HALT 0x0100 /* halted flag */
|
||||
|
||||
#define MCFG_Z8000_MO(_devcb) \
|
||||
downcast<z8002_device &>(*device).set_mo_callback(DEVCB_##_devcb);
|
||||
|
||||
class z8002_device : public cpu_device, public z8000_disassembler::config
|
||||
{
|
||||
public:
|
||||
@ -39,7 +36,7 @@ public:
|
||||
z8002_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
|
||||
~z8002_device();
|
||||
|
||||
template <class Object> devcb_base &set_mo_callback(Object &&cb) { return m_mo_out.set_callback(std::forward<Object>(cb)); }
|
||||
auto mo() { return m_mo_out.bind(); }
|
||||
DECLARE_WRITE_LINE_MEMBER(mi_w) { m_mi = state; } // XXX: this has to apply in the middle of an insn for now
|
||||
|
||||
protected:
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -4775,9 +4775,9 @@ MACHINE_CONFIG_END
|
||||
|
||||
MACHINE_CONFIG_START(dynax_state::mjelctrn)
|
||||
hnoridur(config);
|
||||
MCFG_DEVICE_REPLACE("maincpu", TMPZ84C015, XTAL(22'000'000) / 4)
|
||||
MCFG_DEVICE_PROGRAM_MAP(nanajign_mem_map)
|
||||
MCFG_DEVICE_IO_MAP(mjelctrn_io_map)
|
||||
TMPZ84C015(config.replace(), m_maincpu, XTAL(22'000'000) / 4);
|
||||
m_maincpu->set_addrmap(AS_PROGRAM, &dynax_state::nanajign_mem_map);
|
||||
m_maincpu->set_addrmap(AS_IO, &dynax_state::mjelctrn_io_map);
|
||||
|
||||
MCFG_DEVICE_MODIFY("bankdev")
|
||||
MCFG_DEVICE_PROGRAM_MAP(mjelctrn_banked_map)
|
||||
@ -4800,10 +4800,11 @@ MACHINE_CONFIG_END
|
||||
|
||||
MACHINE_CONFIG_START(dynax_state::mjembase)
|
||||
mjelctrn(config);
|
||||
MCFG_DEVICE_MODIFY("maincpu")
|
||||
MCFG_DEVICE_IO_MAP(mjembase_io_map)
|
||||
MCFG_TMPZ84C015_IN_PA_CB(IOPORT("DSW1"))
|
||||
MCFG_TMPZ84C015_IN_PB_CB(IOPORT("DSW2"))
|
||||
|
||||
tmpz84c015_device &maincpu(*subdevice<tmpz84c015_device>("maincpu"));
|
||||
maincpu.set_addrmap(AS_IO, &dynax_state::mjembase_io_map);
|
||||
maincpu.in_pa_callback().set_ioport("DSW1");
|
||||
maincpu.in_pb_callback().set_ioport("DSW2");
|
||||
|
||||
// 13C
|
||||
m_mainlatch->q_out_cb<3>().set(FUNC(dynax_state::coincounter_0_w));
|
||||
|
@ -3652,15 +3652,15 @@ MACHINE_CONFIG_START(royalmah_state::mjderngr)
|
||||
MCFG_PALETTE_INIT_OWNER(royalmah_state,mjderngr)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
MACHINE_CONFIG_START(royalmah_state::janptr96)
|
||||
void royalmah_state::janptr96(machine_config &config)
|
||||
{
|
||||
mjderngr(config);
|
||||
MCFG_DEVICE_REMOVE("maincpu")
|
||||
|
||||
MCFG_DEVICE_ADD("maincpu", TMPZ84C015, XTAL(16'000'000)/2) /* 8 MHz? */
|
||||
MCFG_DEVICE_PROGRAM_MAP(janptr96_map)
|
||||
MCFG_DEVICE_IO_MAP(janptr96_iomap)
|
||||
MCFG_TMPZ84C015_IN_PA_CB(READ8(*this, royalmah_state, janptr96_dsw_r))
|
||||
MCFG_TMPZ84C015_OUT_PB_CB(WRITE8(*this, royalmah_state, janptr96_dswsel_w))
|
||||
tmpz84c015_device &maincpu(TMPZ84C015(config.replace(), "maincpu", XTAL(16'000'000)/2)); /* 8 MHz? */
|
||||
maincpu.set_addrmap(AS_PROGRAM, &royalmah_state::janptr96_map);
|
||||
maincpu.set_addrmap(AS_IO, &royalmah_state::janptr96_iomap);
|
||||
maincpu.in_pa_callback().set(FUNC(royalmah_state::janptr96_dsw_r));
|
||||
maincpu.out_pb_callback().set(FUNC(royalmah_state::janptr96_dswsel_w));
|
||||
// internal CTC channels 0 & 1 have falling edge triggers
|
||||
|
||||
screen_device &screen(*subdevice<screen_device>("screen"));
|
||||
@ -3669,7 +3669,7 @@ MACHINE_CONFIG_START(royalmah_state::janptr96)
|
||||
|
||||
/* devices */
|
||||
MSM6242(config, m_rtc, 32.768_kHz_XTAL).out_int_handler().set(m_maincpu, FUNC(tmpz84c015_device::trg1)).invert();
|
||||
MACHINE_CONFIG_END
|
||||
}
|
||||
|
||||
|
||||
MACHINE_CONFIG_START(royalmah_state::mjifb)
|
||||
|
@ -2233,11 +2233,11 @@ MACHINE_CONFIG_START(tumbleb_state::magipur)
|
||||
MCFG_SCREEN_UPDATE_DRIVER(tumbleb_state, screen_update_fncywld)
|
||||
MCFG_SCREEN_PALETTE("palette")
|
||||
|
||||
MCFG_DEVICE_ADD("spritegen", DECO_SPRITE, 0)
|
||||
MCFG_DECO_SPRITE_GFX_REGION(3)
|
||||
MCFG_DECO_SPRITE_ISBOOTLEG(true)
|
||||
MCFG_DECO_SPRITE_TRANSPEN(15)
|
||||
MCFG_DECO_SPRITE_GFXDECODE("gfxdecode")
|
||||
DECO_SPRITE(config, m_sprgen, 0);
|
||||
m_sprgen->set_gfx_region(3);
|
||||
m_sprgen->set_is_bootleg(true);
|
||||
m_sprgen->set_transpen(15);
|
||||
m_sprgen->set_gfxdecode_tag(m_gfxdecode);
|
||||
|
||||
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_fncywld)
|
||||
MCFG_PALETTE_ADD("palette", 0x800)
|
||||
|
@ -68,13 +68,14 @@ void m24_z8000_device::z8000_io(address_map &map)
|
||||
map(0x80c1, 0x80c1).rw(FUNC(m24_z8000_device::handshake_r), FUNC(m24_z8000_device::handshake_w));
|
||||
}
|
||||
|
||||
MACHINE_CONFIG_START(m24_z8000_device::device_add_mconfig)
|
||||
MCFG_DEVICE_ADD("z8000", Z8001, XTAL(8'000'000)/2)
|
||||
MCFG_DEVICE_PROGRAM_MAP(z8000_prog)
|
||||
MCFG_DEVICE_DATA_MAP(z8000_data)
|
||||
MCFG_DEVICE_IO_MAP(z8000_io)
|
||||
MCFG_DEVICE_IRQ_ACKNOWLEDGE_DRIVER(m24_z8000_device, int_cb)
|
||||
MCFG_Z8000_MO(WRITELINE(*this, m24_z8000_device, mo_w))
|
||||
void m24_z8000_device::device_add_mconfig(machine_config &config)
|
||||
{
|
||||
Z8001(config, m_z8000, XTAL(8'000'000)/2);
|
||||
m_z8000->set_addrmap(AS_PROGRAM, &m24_z8000_device::z8000_prog);
|
||||
m_z8000->set_addrmap(AS_DATA, &m24_z8000_device::z8000_data);
|
||||
m_z8000->set_addrmap(AS_IO, &m24_z8000_device::z8000_io);
|
||||
m_z8000->set_irq_acknowledge_callback(FUNC(m24_z8000_device::int_cb));
|
||||
m_z8000->mo().set(FUNC(m24_z8000_device::mo_w));
|
||||
|
||||
pit8253_device &pit8253(PIT8253(config, "pit8253", 0));
|
||||
pit8253.set_clk<0>(19660000/15); //8251
|
||||
@ -85,7 +86,7 @@ MACHINE_CONFIG_START(m24_z8000_device::device_add_mconfig)
|
||||
pit8253.out_handler<2>().set(FUNC(m24_z8000_device::timer_irq_w));
|
||||
|
||||
I8251(config, "i8251", 0);
|
||||
MACHINE_CONFIG_END
|
||||
}
|
||||
|
||||
const uint8_t m24_z8000_device::pmem_table[16][4] =
|
||||
{{0, 1, 2, 3}, {1, 2, 3, 255}, {4, 5, 6, 7}, {46, 40, 41, 42},
|
||||
|
@ -632,24 +632,6 @@ WRITE16_MEMBER(midtunit_video_device::midtunit_dma_w)
|
||||
/* determine the offset */
|
||||
uint32_t gfxoffset = m_dma_register[DMA_OFFSETLO] | (m_dma_register[DMA_OFFSETHI] << 16);
|
||||
|
||||
if (LOG_DMA)
|
||||
{
|
||||
if (machine().input().code_pressed(KEYCODE_L))
|
||||
{
|
||||
logerror("DMA command %04X: (bpp=%d skip=%d xflip=%d yflip=%d preskip=%d postskip=%d)\n",
|
||||
command, (command >> 12) & 7, (command >> 7) & 1, (command >> 4) & 1, (command >> 5) & 1, (command >> 8) & 3, (command >> 10) & 3);
|
||||
logerror(" offset=%08X pos=(%d,%d) w=%d h=%d clip=(%d,%d)-(%d,%d)\n", gfxoffset, m_dma_register[DMA_XSTART], m_dma_register[DMA_YSTART],
|
||||
m_dma_register[DMA_WIDTH], m_dma_register[DMA_HEIGHT], m_dma_register[DMA_LEFTCLIP], m_dma_register[DMA_TOPCLIP], m_dma_register[DMA_RIGHTCLIP], m_dma_register[DMA_BOTCLIP]);
|
||||
logerror(" offset=%08X pos=(%d,%d) w=%d h=%d clip=(%d,%d)-(%d,%d)\n", gfxoffset, m_dma_state.xpos, m_dma_state.ypos,
|
||||
m_dma_state.width, m_dma_state.height, m_dma_state.leftclip, m_dma_state.topclip, m_dma_state.rightclip, m_dma_state.botclip);
|
||||
logerror(" palette=%04X color=%04X lskip=%02X rskip=%02X xstep=%04X ystep=%04X test=%04X config=%04X\n",
|
||||
m_dma_register[DMA_PALETTE], m_dma_register[DMA_COLOR],
|
||||
m_dma_register[DMA_LRSKIP] >> 8, m_dma_register[DMA_LRSKIP] & 0xff,
|
||||
m_dma_register[DMA_SCALE_X], m_dma_register[DMA_SCALE_Y], m_dma_register[DMA_UNKNOWN_E],
|
||||
m_dma_register[DMA_CONFIG]);
|
||||
logerror("----\n");
|
||||
}
|
||||
}
|
||||
/* special case: drawing mode C doesn't need to know about any pixel data */
|
||||
if ((command & 0x0f) == 0x0c)
|
||||
gfxoffset = 0;
|
||||
@ -667,6 +649,23 @@ if (LOG_DMA)
|
||||
goto skipdma;
|
||||
}
|
||||
|
||||
if (LOG_DMA || DEBUG_MIDTUNIT_BLITTER)
|
||||
{
|
||||
if (machine().input().code_pressed(KEYCODE_COLON))
|
||||
{
|
||||
logerror("DMA command %04X: (bpp=%d skip=%d xflip=%d yflip=%d preskip=%d postskip=%d)\n",
|
||||
command, (command >> 12) & 7, (command >> 7) & 1, (command >> 4) & 1, (command >> 5) & 1, (command >> 8) & 3, (command >> 10) & 3);
|
||||
logerror(" offset=%08X pos=(%d,%d) w=%d h=%d clip=(%d,%d)-(%d,%d)\n", gfxoffset, m_dma_state.xpos, m_dma_state.ypos,
|
||||
m_dma_state.width, m_dma_state.height, m_dma_state.leftclip, m_dma_state.topclip, m_dma_state.rightclip, m_dma_state.botclip);
|
||||
logerror(" palette=%04X color=%04X lskip=%02X rskip=%02X xstep=%04X ystep=%04X test=%04X config=%04X\n",
|
||||
m_dma_register[DMA_PALETTE], m_dma_register[DMA_COLOR],
|
||||
m_dma_register[DMA_LRSKIP] >> 8, m_dma_register[DMA_LRSKIP] & 0xff,
|
||||
m_dma_register[DMA_SCALE_X], m_dma_register[DMA_SCALE_Y], m_dma_register[DMA_UNKNOWN_E],
|
||||
m_dma_register[DMA_CONFIG]);
|
||||
logerror("----\n");
|
||||
}
|
||||
}
|
||||
|
||||
/* there seems to be two types of behavior for the DMA chip */
|
||||
/* for MK1 and MK2, the upper byte of the LRSKIP is the */
|
||||
/* starting skip value, and the lower byte is the ending */
|
||||
|
Loading…
Reference in New Issue
Block a user