summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author cam900 <dbtlrchl@naver.com>2019-03-20 14:20:29 +0900
committer cam900 <dbtlrchl@naver.com>2019-03-20 14:20:29 +0900
commitcd8d9575f72a89eb1b52457538df60ca282ce06c (patch)
tree1c5ba7e2d6a6230a580c470aedf73bc4940f7606
parentdd888d052d18af8293f10f37567c303bdb2ddc9d (diff)
deco16ic.cpp : Move cninja exclusive transmask function into cninja.cpp
-rw-r--r--src/mame/drivers/backfire.cpp2
-rw-r--r--src/mame/drivers/boogwing.cpp2
-rw-r--r--src/mame/drivers/cbuster.cpp2
-rw-r--r--src/mame/drivers/cninja.cpp14
-rw-r--r--src/mame/drivers/darkseal.cpp2
-rw-r--r--src/mame/drivers/dassault.cpp2
-rw-r--r--src/mame/drivers/dblewing.cpp1
-rw-r--r--src/mame/drivers/deco156.cpp2
-rw-r--r--src/mame/drivers/deco32.cpp12
-rw-r--r--src/mame/drivers/dietgo.cpp1
-rw-r--r--src/mame/drivers/dreambal.cpp1
-rw-r--r--src/mame/drivers/funkyjet.cpp1
-rw-r--r--src/mame/drivers/mirage.cpp1
-rw-r--r--src/mame/drivers/pktgaldx.cpp1
-rw-r--r--src/mame/drivers/rohga.cpp8
-rw-r--r--src/mame/drivers/simpl156.cpp1
-rw-r--r--src/mame/drivers/sshangha.cpp1
-rw-r--r--src/mame/drivers/supbtime.cpp1
-rw-r--r--src/mame/drivers/vaportra.cpp2
-rw-r--r--src/mame/includes/cninja.h1
-rw-r--r--src/mame/video/cninja.cpp5
-rw-r--r--src/mame/video/deco16ic.cpp19
-rw-r--r--src/mame/video/deco16ic.h5
23 files changed, 26 insertions, 61 deletions
diff --git a/src/mame/drivers/backfire.cpp b/src/mame/drivers/backfire.cpp
index 443da670dd9..c68d99bf60f 100644
--- a/src/mame/drivers/backfire.cpp
+++ b/src/mame/drivers/backfire.cpp
@@ -399,7 +399,6 @@ MACHINE_CONFIG_START(backfire_state::backfire)
DECO16IC(config, m_deco_tilegen[0], 0);
m_deco_tilegen[0]->set_screen(m_lscreen);
- m_deco_tilegen[0]->set_split(0);
m_deco_tilegen[0]->set_pf1_size(DECO_64x32);
m_deco_tilegen[0]->set_pf2_size(DECO_64x32);
m_deco_tilegen[0]->set_pf1_trans_mask(0x0f);
@@ -416,7 +415,6 @@ MACHINE_CONFIG_START(backfire_state::backfire)
DECO16IC(config, m_deco_tilegen[1], 0);
m_deco_tilegen[1]->set_screen(m_lscreen);
- m_deco_tilegen[1]->set_split(0);
m_deco_tilegen[1]->set_pf1_size(DECO_64x32);
m_deco_tilegen[1]->set_pf2_size(DECO_64x32);
m_deco_tilegen[1]->set_pf1_trans_mask(0x0f);
diff --git a/src/mame/drivers/boogwing.cpp b/src/mame/drivers/boogwing.cpp
index 689c35361e0..71196bdac61 100644
--- a/src/mame/drivers/boogwing.cpp
+++ b/src/mame/drivers/boogwing.cpp
@@ -362,7 +362,6 @@ MACHINE_CONFIG_START(boogwing_state::boogwing)
DECO_ACE(config, m_deco_ace, 0);
DECO16IC(config, m_deco_tilegen[0], 0);
- m_deco_tilegen[0]->set_split(0);
m_deco_tilegen[0]->set_pf1_size(DECO_64x32);
m_deco_tilegen[0]->set_pf2_size(DECO_64x32);
m_deco_tilegen[0]->set_pf1_trans_mask(0x0f);
@@ -378,7 +377,6 @@ MACHINE_CONFIG_START(boogwing_state::boogwing)
m_deco_tilegen[0]->set_gfxdecode_tag("gfxdecode");
DECO16IC(config, m_deco_tilegen[1], 0);
- m_deco_tilegen[1]->set_split(0);
m_deco_tilegen[1]->set_pf1_size(DECO_64x32);
m_deco_tilegen[1]->set_pf2_size(DECO_64x32);
m_deco_tilegen[1]->set_pf1_trans_mask(0x0f);
diff --git a/src/mame/drivers/cbuster.cpp b/src/mame/drivers/cbuster.cpp
index 188da21cdcf..df211dba2c4 100644
--- a/src/mame/drivers/cbuster.cpp
+++ b/src/mame/drivers/cbuster.cpp
@@ -323,7 +323,6 @@ MACHINE_CONFIG_START(cbuster_state::twocrude)
BUFFERED_SPRITERAM16(config, m_spriteram);
DECO16IC(config, m_deco_tilegen[0], 0);
- m_deco_tilegen[0]->set_split(0);
m_deco_tilegen[0]->set_pf1_size(DECO_64x32);
m_deco_tilegen[0]->set_pf2_size(DECO_64x32);
m_deco_tilegen[0]->set_pf1_trans_mask(0x0f);
@@ -339,7 +338,6 @@ MACHINE_CONFIG_START(cbuster_state::twocrude)
m_deco_tilegen[0]->set_gfxdecode_tag("gfxdecode");
DECO16IC(config, m_deco_tilegen[1], 0);
- m_deco_tilegen[1]->set_split(0);
m_deco_tilegen[1]->set_pf1_size(DECO_64x32);
m_deco_tilegen[1]->set_pf2_size(DECO_64x32);
m_deco_tilegen[1]->set_pf1_trans_mask(0x0f);
diff --git a/src/mame/drivers/cninja.cpp b/src/mame/drivers/cninja.cpp
index 754914d6e9f..2f245ebda31 100644
--- a/src/mame/drivers/cninja.cpp
+++ b/src/mame/drivers/cninja.cpp
@@ -819,7 +819,6 @@ MACHINE_CONFIG_START(cninja_state::cninja)
MCFG_DEVICE_ADD("spriteram1", BUFFERED_SPRITERAM16)
DECO16IC(config, m_deco_tilegen[0], 0);
- m_deco_tilegen[0]->set_split(1);
m_deco_tilegen[0]->set_pf1_size(DECO_64x32);
m_deco_tilegen[0]->set_pf2_size(DECO_64x32);
m_deco_tilegen[0]->set_pf1_trans_mask(0x0f);
@@ -833,7 +832,6 @@ MACHINE_CONFIG_START(cninja_state::cninja)
m_deco_tilegen[0]->set_gfxdecode_tag(m_gfxdecode);
DECO16IC(config, m_deco_tilegen[1], 0);
- m_deco_tilegen[1]->set_split(0);
m_deco_tilegen[1]->set_pf1_size(DECO_64x32);
m_deco_tilegen[1]->set_pf2_size(DECO_64x32);
m_deco_tilegen[1]->set_pf1_trans_mask(0x0f);
@@ -895,6 +893,8 @@ MACHINE_CONFIG_START(cninja_state::stoneage)
irq.raster2_irq_callback().set_inputline(m_maincpu, 4);
irq.vblank_irq_callback().set_inputline(m_maincpu, 5);
+ MCFG_VIDEO_START_OVERRIDE(cninja_state,cninja)
+
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(XTAL(24'000'000) / 4, 376, 0, 256, 274, 8, 248)
@@ -909,7 +909,6 @@ MACHINE_CONFIG_START(cninja_state::stoneage)
MCFG_DEVICE_ADD("spriteram1", BUFFERED_SPRITERAM16)
DECO16IC(config, m_deco_tilegen[0], 0);
- m_deco_tilegen[0]->set_split(1);
m_deco_tilegen[0]->set_pf1_size(DECO_64x32);
m_deco_tilegen[0]->set_pf2_size(DECO_64x32);
m_deco_tilegen[0]->set_pf1_trans_mask(0x0f);
@@ -923,7 +922,6 @@ MACHINE_CONFIG_START(cninja_state::stoneage)
m_deco_tilegen[0]->set_gfxdecode_tag(m_gfxdecode);
DECO16IC(config, m_deco_tilegen[1], 0);
- m_deco_tilegen[1]->set_split(0);
m_deco_tilegen[1]->set_pf1_size(DECO_64x32);
m_deco_tilegen[1]->set_pf2_size(DECO_64x32);
m_deco_tilegen[1]->set_pf1_trans_mask(0x0f);
@@ -1006,7 +1004,6 @@ MACHINE_CONFIG_START(cninja_state::cninjabl)
MCFG_DEVICE_ADD("spriteram1", BUFFERED_SPRITERAM16)
DECO16IC(config, m_deco_tilegen[0], 0);
- m_deco_tilegen[0]->set_split(1);
m_deco_tilegen[0]->set_pf1_size(DECO_64x32);
m_deco_tilegen[0]->set_pf2_size(DECO_64x32);
m_deco_tilegen[0]->set_pf1_trans_mask(0x0f);
@@ -1020,7 +1017,6 @@ MACHINE_CONFIG_START(cninja_state::cninjabl)
m_deco_tilegen[0]->set_gfxdecode_tag(m_gfxdecode);
DECO16IC(config, m_deco_tilegen[1], 0);
- m_deco_tilegen[1]->set_split(0);
m_deco_tilegen[1]->set_pf1_size(DECO_64x32);
m_deco_tilegen[1]->set_pf2_size(DECO_64x32);
m_deco_tilegen[1]->set_pf1_trans_mask(0x0f);
@@ -1079,7 +1075,6 @@ MACHINE_CONFIG_START(cninja_state::edrandy)
MCFG_DEVICE_ADD("spriteram1", BUFFERED_SPRITERAM16)
DECO16IC(config, m_deco_tilegen[0], 0);
- m_deco_tilegen[0]->set_split(0);
m_deco_tilegen[0]->set_pf1_size(DECO_64x32);
m_deco_tilegen[0]->set_pf2_size(DECO_64x32);
m_deco_tilegen[0]->set_pf1_trans_mask(0x0f);
@@ -1093,7 +1088,6 @@ MACHINE_CONFIG_START(cninja_state::edrandy)
m_deco_tilegen[0]->set_gfxdecode_tag(m_gfxdecode);
DECO16IC(config, m_deco_tilegen[1], 0);
- m_deco_tilegen[1]->set_split(0);
m_deco_tilegen[1]->set_pf1_size(DECO_64x32);
m_deco_tilegen[1]->set_pf2_size(DECO_64x32);
m_deco_tilegen[1]->set_pf1_trans_mask(0x0f);
@@ -1171,7 +1165,6 @@ MACHINE_CONFIG_START(cninja_state::robocop2)
MCFG_DEVICE_ADD("spriteram1", BUFFERED_SPRITERAM16)
DECO16IC(config, m_deco_tilegen[0], 0);
- m_deco_tilegen[0]->set_split(0);
m_deco_tilegen[0]->set_pf1_size(DECO_64x32);
m_deco_tilegen[0]->set_pf2_size(DECO_64x32);
m_deco_tilegen[0]->set_pf1_trans_mask(0x0f);
@@ -1186,7 +1179,6 @@ MACHINE_CONFIG_START(cninja_state::robocop2)
m_deco_tilegen[0]->set_gfxdecode_tag(m_gfxdecode);
DECO16IC(config, m_deco_tilegen[1], 0);
- m_deco_tilegen[1]->set_split(0);
m_deco_tilegen[1]->set_pf1_size(DECO_64x32);
m_deco_tilegen[1]->set_pf2_size(DECO_64x32);
m_deco_tilegen[1]->set_pf1_trans_mask(0x0f);
@@ -1265,7 +1257,6 @@ MACHINE_CONFIG_START(cninja_state::mutantf)
MCFG_DEVICE_ADD("spriteram2", BUFFERED_SPRITERAM16)
DECO16IC(config, m_deco_tilegen[0], 0);
- m_deco_tilegen[0]->set_split(0);
m_deco_tilegen[0]->set_pf1_size(DECO_64x32);
m_deco_tilegen[0]->set_pf2_size(DECO_64x32);
m_deco_tilegen[0]->set_pf1_trans_mask(0x0f);
@@ -1281,7 +1272,6 @@ MACHINE_CONFIG_START(cninja_state::mutantf)
m_deco_tilegen[0]->set_gfxdecode_tag(m_gfxdecode);
DECO16IC(config, m_deco_tilegen[1], 0);
- m_deco_tilegen[1]->set_split(0);
m_deco_tilegen[1]->set_pf1_size(DECO_64x32);
m_deco_tilegen[1]->set_pf2_size(DECO_64x32);
m_deco_tilegen[1]->set_pf1_trans_mask(0x0f);
diff --git a/src/mame/drivers/darkseal.cpp b/src/mame/drivers/darkseal.cpp
index 836a9e017b0..4fe87a7d095 100644
--- a/src/mame/drivers/darkseal.cpp
+++ b/src/mame/drivers/darkseal.cpp
@@ -227,7 +227,6 @@ MACHINE_CONFIG_START(darkseal_state::darkseal)
MCFG_DEVICE_ADD(m_spriteram, BUFFERED_SPRITERAM16)
DECO16IC(config, m_deco_tilegen[0], 0);
- m_deco_tilegen[0]->set_split(0);
m_deco_tilegen[0]->set_pf1_size(DECO_64x64);
m_deco_tilegen[0]->set_pf2_size(DECO_64x64); // both these tilemaps need to be twice the y size of usual!
m_deco_tilegen[0]->set_pf1_trans_mask(0x0f);
@@ -241,7 +240,6 @@ MACHINE_CONFIG_START(darkseal_state::darkseal)
m_deco_tilegen[0]->set_gfxdecode_tag("gfxdecode");
DECO16IC(config, m_deco_tilegen[1], 0);
- m_deco_tilegen[1]->set_split(0);
m_deco_tilegen[1]->set_pf1_size(DECO_64x32);
m_deco_tilegen[1]->set_pf2_size(DECO_64x32);
m_deco_tilegen[1]->set_pf1_trans_mask(0x0f);
diff --git a/src/mame/drivers/dassault.cpp b/src/mame/drivers/dassault.cpp
index 6addb4cf626..196ca3414ff 100644
--- a/src/mame/drivers/dassault.cpp
+++ b/src/mame/drivers/dassault.cpp
@@ -557,7 +557,6 @@ MACHINE_CONFIG_START(dassault_state::dassault)
MCFG_DEVICE_ADD("spriteram2", BUFFERED_SPRITERAM16)
DECO16IC(config, m_deco_tilegen[0], 0);
- m_deco_tilegen[0]->set_split(0);
m_deco_tilegen[0]->set_pf1_size(DECO_64x32);
m_deco_tilegen[0]->set_pf2_size(DECO_64x32);
m_deco_tilegen[0]->set_pf1_trans_mask(0x0f);
@@ -573,7 +572,6 @@ MACHINE_CONFIG_START(dassault_state::dassault)
m_deco_tilegen[0]->set_gfxdecode_tag("gfxdecode");
DECO16IC(config, m_deco_tilegen[1], 0);
- m_deco_tilegen[1]->set_split(0);
m_deco_tilegen[1]->set_pf1_size(DECO_64x32);
m_deco_tilegen[1]->set_pf2_size(DECO_64x32);
m_deco_tilegen[1]->set_pf1_trans_mask(0x0f);
diff --git a/src/mame/drivers/dblewing.cpp b/src/mame/drivers/dblewing.cpp
index dc7ae8b18f6..8795254b90b 100644
--- a/src/mame/drivers/dblewing.cpp
+++ b/src/mame/drivers/dblewing.cpp
@@ -382,7 +382,6 @@ MACHINE_CONFIG_START(dblewing_state::dblewing)
GFXDECODE(config, "gfxdecode", "palette", gfx_dblewing);
DECO16IC(config, m_deco_tilegen, 0);
- m_deco_tilegen->set_split(0);
m_deco_tilegen->set_pf1_size(DECO_64x32);
m_deco_tilegen->set_pf2_size(DECO_64x32);
m_deco_tilegen->set_pf1_trans_mask(0x0f);
diff --git a/src/mame/drivers/deco156.cpp b/src/mame/drivers/deco156.cpp
index 82ffa6910b2..32ae8514fe3 100644
--- a/src/mame/drivers/deco156.cpp
+++ b/src/mame/drivers/deco156.cpp
@@ -349,7 +349,6 @@ MACHINE_CONFIG_START(deco156_state::hvysmsh)
PALETTE(config, m_palette).set_format(palette_device::xBGR_888, 1024);
DECO16IC(config, m_deco_tilegen, 0);
- m_deco_tilegen->set_split(0);
m_deco_tilegen->set_pf1_size(DECO_64x32);
m_deco_tilegen->set_pf2_size(DECO_64x32);
m_deco_tilegen->set_pf1_trans_mask(0x0f);
@@ -402,7 +401,6 @@ MACHINE_CONFIG_START(deco156_state::wcvol95)
PALETTE(config, m_palette).set_format(palette_device::xBGR_555, 1024);
DECO16IC(config, m_deco_tilegen, 0);
- m_deco_tilegen->set_split(0);
m_deco_tilegen->set_pf1_size(DECO_64x32);
m_deco_tilegen->set_pf2_size(DECO_64x32);
m_deco_tilegen->set_pf1_trans_mask(0x0f);
diff --git a/src/mame/drivers/deco32.cpp b/src/mame/drivers/deco32.cpp
index 026b633b546..7d20995e28a 100644
--- a/src/mame/drivers/deco32.cpp
+++ b/src/mame/drivers/deco32.cpp
@@ -1881,7 +1881,6 @@ void captaven_state::captaven(machine_config &config)
PALETTE(config, m_palette).set_format(palette_device::xBGR_888, 2048);
DECO16IC(config, m_deco_tilegen[0], 0);
- m_deco_tilegen[0]->set_split(0);
m_deco_tilegen[0]->set_pf1_size(DECO_64x32);
m_deco_tilegen[0]->set_pf2_size(DECO_64x32);
m_deco_tilegen[0]->set_pf1_trans_mask(0x0f);
@@ -1895,7 +1894,6 @@ void captaven_state::captaven(machine_config &config)
m_deco_tilegen[0]->set_gfxdecode_tag(m_gfxdecode);
DECO16IC(config, m_deco_tilegen[1], 0); // pf3 is in 8bpp mode, pf4 is not used
- m_deco_tilegen[1]->set_split(0);
m_deco_tilegen[1]->set_pf1_size(DECO_32x32);
m_deco_tilegen[1]->set_pf2_size(DECO_32x32);
m_deco_tilegen[1]->set_pf1_trans_mask(0xff);
@@ -1962,7 +1960,6 @@ void fghthist_state::fghthist(machine_config &config)
PALETTE(config, m_palette).set_entries(2048);
DECO16IC(config, m_deco_tilegen[0], 0);
- m_deco_tilegen[0]->set_split(0);
m_deco_tilegen[0]->set_pf1_size(DECO_64x32);
m_deco_tilegen[0]->set_pf2_size(DECO_64x32);
m_deco_tilegen[0]->set_pf1_trans_mask(0x0f);
@@ -1978,7 +1975,6 @@ void fghthist_state::fghthist(machine_config &config)
m_deco_tilegen[0]->set_gfxdecode_tag(m_gfxdecode);
DECO16IC(config, m_deco_tilegen[1], 0);
- m_deco_tilegen[1]->set_split(0);
m_deco_tilegen[1]->set_pf1_size(DECO_64x32);
m_deco_tilegen[1]->set_pf2_size(DECO_64x32);
m_deco_tilegen[1]->set_pf1_trans_mask(0x0f);
@@ -2087,7 +2083,6 @@ void dragngun_state::dragngun(machine_config &config)
BUFFERED_SPRITERAM32(config, m_spriteram);
DECO16IC(config, m_deco_tilegen[0], 0);
- m_deco_tilegen[0]->set_split(0);
m_deco_tilegen[0]->set_pf1_size(DECO_64x32);
m_deco_tilegen[0]->set_pf2_size(DECO_64x32);
m_deco_tilegen[0]->set_pf1_trans_mask(0x0f);
@@ -2103,7 +2098,6 @@ void dragngun_state::dragngun(machine_config &config)
m_deco_tilegen[0]->set_gfxdecode_tag(m_gfxdecode);
DECO16IC(config, m_deco_tilegen[1], 0);
- m_deco_tilegen[1]->set_split(0);
m_deco_tilegen[1]->set_pf1_size(DECO_64x32);
m_deco_tilegen[1]->set_pf2_size(DECO_64x32);
m_deco_tilegen[1]->set_pf1_trans_mask(0xff);
@@ -2215,7 +2209,6 @@ void dragngun_state::lockload(machine_config &config)
PALETTE(config, m_palette).set_entries(2048);
DECO16IC(config, m_deco_tilegen[0], 0);
- m_deco_tilegen[0]->set_split(0);
m_deco_tilegen[0]->set_pf1_size(DECO_64x32);
m_deco_tilegen[0]->set_pf2_size(DECO_64x32);
m_deco_tilegen[0]->set_pf1_trans_mask(0x0f);
@@ -2231,7 +2224,6 @@ void dragngun_state::lockload(machine_config &config)
m_deco_tilegen[0]->set_gfxdecode_tag(m_gfxdecode);
DECO16IC(config, m_deco_tilegen[1], 0);
- m_deco_tilegen[1]->set_split(0);
m_deco_tilegen[1]->set_pf1_size(DECO_32x32);
m_deco_tilegen[1]->set_pf2_size(DECO_32x32); // lockload definitely wants pf34 half width..
m_deco_tilegen[1]->set_pf1_trans_mask(0xff);
@@ -2295,7 +2287,6 @@ void nslasher_state::tattass(machine_config &config)
DECO_ACE(config, m_deco_ace, 0);
DECO16IC(config, m_deco_tilegen[0], 0);
- m_deco_tilegen[0]->set_split(0);
m_deco_tilegen[0]->set_pf1_size(DECO_64x32);
m_deco_tilegen[0]->set_pf2_size(DECO_64x32);
m_deco_tilegen[0]->set_pf1_trans_mask(0x0f);
@@ -2311,7 +2302,6 @@ void nslasher_state::tattass(machine_config &config)
m_deco_tilegen[0]->set_gfxdecode_tag(m_gfxdecode);
DECO16IC(config, m_deco_tilegen[1], 0);
- m_deco_tilegen[1]->set_split(0);
m_deco_tilegen[1]->set_pf1_size(DECO_64x32);
m_deco_tilegen[1]->set_pf2_size(DECO_64x32);
m_deco_tilegen[1]->set_pf1_trans_mask(0x0f);
@@ -2371,7 +2361,6 @@ void nslasher_state::nslasher(machine_config &config)
DECO_ACE(config, m_deco_ace, 0);
DECO16IC(config, m_deco_tilegen[0], 0);
- m_deco_tilegen[0]->set_split(0);
m_deco_tilegen[0]->set_pf1_size(DECO_64x32);
m_deco_tilegen[0]->set_pf2_size(DECO_64x32);
m_deco_tilegen[0]->set_pf1_trans_mask(0x0f);
@@ -2387,7 +2376,6 @@ void nslasher_state::nslasher(machine_config &config)
m_deco_tilegen[0]->set_gfxdecode_tag(m_gfxdecode);
DECO16IC(config, m_deco_tilegen[1], 0);
- m_deco_tilegen[1]->set_split(0);
m_deco_tilegen[1]->set_pf1_size(DECO_64x32);
m_deco_tilegen[1]->set_pf2_size(DECO_64x32);
m_deco_tilegen[1]->set_pf1_trans_mask(0x0f);
diff --git a/src/mame/drivers/dietgo.cpp b/src/mame/drivers/dietgo.cpp
index 5243065a098..e22f4265fb3 100644
--- a/src/mame/drivers/dietgo.cpp
+++ b/src/mame/drivers/dietgo.cpp
@@ -231,7 +231,6 @@ MACHINE_CONFIG_START(dietgo_state::dietgo)
GFXDECODE(config, "gfxdecode", "palette", gfx_dietgo);
DECO16IC(config, m_deco_tilegen, 0);
- m_deco_tilegen->set_split(0);
m_deco_tilegen->set_pf1_size(DECO_64x32);
m_deco_tilegen->set_pf2_size(DECO_64x32);
m_deco_tilegen->set_pf1_trans_mask(0x0f);
diff --git a/src/mame/drivers/dreambal.cpp b/src/mame/drivers/dreambal.cpp
index 84da2840c07..63c94505bd8 100644
--- a/src/mame/drivers/dreambal.cpp
+++ b/src/mame/drivers/dreambal.cpp
@@ -338,7 +338,6 @@ MACHINE_CONFIG_START(dreambal_state::dreambal)
m_deco104->port_c_cb().set_ioport("DSW");
DECO16IC(config, m_deco_tilegen, 0);
- m_deco_tilegen->set_split(0);
m_deco_tilegen->set_pf1_size(DECO_64x32);
m_deco_tilegen->set_pf2_size(DECO_64x32);
m_deco_tilegen->set_pf1_trans_mask(0x0f);
diff --git a/src/mame/drivers/funkyjet.cpp b/src/mame/drivers/funkyjet.cpp
index 2c2b8f0cef0..00d81fe3716 100644
--- a/src/mame/drivers/funkyjet.cpp
+++ b/src/mame/drivers/funkyjet.cpp
@@ -334,7 +334,6 @@ void funkyjet_state::funkyjet(machine_config &config)
PALETTE(config, "palette").set_format(palette_device::xBGR_444, 1024);
DECO16IC(config, m_deco_tilegen, 0);
- m_deco_tilegen->set_split(0);
m_deco_tilegen->set_pf1_size(DECO_64x32);
m_deco_tilegen->set_pf2_size(DECO_64x32);
m_deco_tilegen->set_pf1_trans_mask(0x0f);
diff --git a/src/mame/drivers/mirage.cpp b/src/mame/drivers/mirage.cpp
index 49f970c0b9d..92107fedea7 100644
--- a/src/mame/drivers/mirage.cpp
+++ b/src/mame/drivers/mirage.cpp
@@ -315,7 +315,6 @@ void miragemj_state::mirage(machine_config &config)
PALETTE(config, "palette").set_format(palette_device::xBGR_555, 1024);
DECO16IC(config, m_deco_tilegen, 0);
- m_deco_tilegen->set_split(0);
m_deco_tilegen->set_pf1_size(DECO_64x32);
m_deco_tilegen->set_pf2_size(DECO_64x32);
m_deco_tilegen->set_pf1_trans_mask(0x0f);
diff --git a/src/mame/drivers/pktgaldx.cpp b/src/mame/drivers/pktgaldx.cpp
index 2bbb8596766..1c757dc4336 100644
--- a/src/mame/drivers/pktgaldx.cpp
+++ b/src/mame/drivers/pktgaldx.cpp
@@ -360,7 +360,6 @@ void pktgaldx_state::pktgaldx(machine_config &config)
GFXDECODE(config, m_gfxdecode, m_palette, gfx_pktgaldx);
DECO16IC(config, m_deco_tilegen, 0);
- m_deco_tilegen->set_split(0);
m_deco_tilegen->set_pf1_size(DECO_64x32);
m_deco_tilegen->set_pf2_size(DECO_64x32);
m_deco_tilegen->set_pf1_trans_mask(0x0f);
diff --git a/src/mame/drivers/rohga.cpp b/src/mame/drivers/rohga.cpp
index da1d4c8d39d..00b983b2e0a 100644
--- a/src/mame/drivers/rohga.cpp
+++ b/src/mame/drivers/rohga.cpp
@@ -901,7 +901,6 @@ void rohga_state::rohga(machine_config &config)
m_decocomn->set_palette_tag(m_palette);
DECO16IC(config, m_deco_tilegen[0], 0);
- m_deco_tilegen[0]->set_split(0);
m_deco_tilegen[0]->set_pf1_size(DECO_64x64);
m_deco_tilegen[0]->set_pf2_size(DECO_64x32);
m_deco_tilegen[0]->set_pf1_trans_mask(0x0f);
@@ -917,7 +916,6 @@ void rohga_state::rohga(machine_config &config)
m_deco_tilegen[0]->set_gfxdecode_tag("gfxdecode");
DECO16IC(config, m_deco_tilegen[1], 0);
- m_deco_tilegen[1]->set_split(0);
m_deco_tilegen[1]->set_pf1_size(DECO_64x32);
m_deco_tilegen[1]->set_pf2_size(DECO_64x32);
m_deco_tilegen[1]->set_pf1_trans_mask(0x0f);
@@ -993,7 +991,6 @@ void rohga_state::wizdfire(machine_config &config)
m_decocomn->set_palette_tag(m_palette);
DECO16IC(config, m_deco_tilegen[0], 0);
- m_deco_tilegen[0]->set_split(0);
m_deco_tilegen[0]->set_pf1_size(DECO_64x32);
m_deco_tilegen[0]->set_pf2_size(DECO_64x32);
m_deco_tilegen[0]->set_pf1_trans_mask(0x0f);
@@ -1009,7 +1006,6 @@ void rohga_state::wizdfire(machine_config &config)
m_deco_tilegen[0]->set_gfxdecode_tag("gfxdecode");
DECO16IC(config, m_deco_tilegen[1], 0);
- m_deco_tilegen[1]->set_split(0);
m_deco_tilegen[1]->set_pf1_size(DECO_64x32);
m_deco_tilegen[1]->set_pf2_size(DECO_64x32);
m_deco_tilegen[1]->set_pf1_trans_mask(0x0f);
@@ -1090,7 +1086,6 @@ void rohga_state::nitrobal(machine_config &config)
m_decocomn->set_palette_tag(m_palette);
DECO16IC(config, m_deco_tilegen[0], 0);
- m_deco_tilegen[0]->set_split(0);
m_deco_tilegen[0]->set_pf1_size(DECO_64x32);
m_deco_tilegen[0]->set_pf2_size(DECO_32x32);
m_deco_tilegen[0]->set_pf1_trans_mask(0x0f);
@@ -1106,7 +1101,6 @@ void rohga_state::nitrobal(machine_config &config)
m_deco_tilegen[0]->set_gfxdecode_tag("gfxdecode");
DECO16IC(config, m_deco_tilegen[1], 0);
- m_deco_tilegen[1]->set_split(0);
m_deco_tilegen[1]->set_pf1_size(DECO_32x32);
m_deco_tilegen[1]->set_pf2_size(DECO_32x32);
m_deco_tilegen[1]->set_pf1_trans_mask(0x0f);
@@ -1188,7 +1182,6 @@ void rohga_state::schmeisr(machine_config &config)
m_decocomn->set_palette_tag(m_palette);
DECO16IC(config, m_deco_tilegen[0], 0);
- m_deco_tilegen[0]->set_split(0);
m_deco_tilegen[0]->set_pf1_size(DECO_64x64);
m_deco_tilegen[0]->set_pf2_size(DECO_64x32);
m_deco_tilegen[0]->set_pf1_trans_mask(0x0f);
@@ -1204,7 +1197,6 @@ void rohga_state::schmeisr(machine_config &config)
m_deco_tilegen[0]->set_gfxdecode_tag("gfxdecode");
DECO16IC(config, m_deco_tilegen[1], 0);
- m_deco_tilegen[1]->set_split(0);
m_deco_tilegen[1]->set_pf1_size(DECO_64x32);
m_deco_tilegen[1]->set_pf2_size(DECO_64x32);
m_deco_tilegen[1]->set_pf1_trans_mask(0x0f);
diff --git a/src/mame/drivers/simpl156.cpp b/src/mame/drivers/simpl156.cpp
index a203d88f76d..afd62eb23c9 100644
--- a/src/mame/drivers/simpl156.cpp
+++ b/src/mame/drivers/simpl156.cpp
@@ -426,7 +426,6 @@ void simpl156_state::chainrec(machine_config &config)
GFXDECODE(config, "gfxdecode", m_palette, gfx_simpl156);
DECO16IC(config, m_deco_tilegen, 0);
- m_deco_tilegen->set_split(0);
m_deco_tilegen->set_pf1_size(DECO_64x32);
m_deco_tilegen->set_pf2_size(DECO_64x32);
m_deco_tilegen->set_pf1_trans_mask(0x0f);
diff --git a/src/mame/drivers/sshangha.cpp b/src/mame/drivers/sshangha.cpp
index 1200d740f49..e42e05a7436 100644
--- a/src/mame/drivers/sshangha.cpp
+++ b/src/mame/drivers/sshangha.cpp
@@ -434,7 +434,6 @@ void sshangha_state::sshangha(machine_config &config)
PALETTE(config, m_palette).set_format(palette_device::xBGR_888, 0x4000);
DECO16IC(config, m_tilegen, 0);
- m_tilegen->set_split(0);
m_tilegen->set_pf1_size(DECO_64x32);
m_tilegen->set_pf2_size(DECO_64x32);
m_tilegen->set_pf1_trans_mask(0x0f);
diff --git a/src/mame/drivers/supbtime.cpp b/src/mame/drivers/supbtime.cpp
index 11639322f48..261b06aee32 100644
--- a/src/mame/drivers/supbtime.cpp
+++ b/src/mame/drivers/supbtime.cpp
@@ -357,7 +357,6 @@ void supbtime_state::supbtime(machine_config &config)
PALETTE(config, "palette").set_format(palette_device::xBGR_444, 1024);
DECO16IC(config, m_deco_tilegen, 0);
- m_deco_tilegen->set_split(0);
m_deco_tilegen->set_pf1_size(DECO_64x32);
m_deco_tilegen->set_pf2_size(DECO_64x32);
m_deco_tilegen->set_pf1_trans_mask(0x0f);
diff --git a/src/mame/drivers/vaportra.cpp b/src/mame/drivers/vaportra.cpp
index 4f7015df8a4..373baa71c97 100644
--- a/src/mame/drivers/vaportra.cpp
+++ b/src/mame/drivers/vaportra.cpp
@@ -233,7 +233,6 @@ void vaportra_state::vaportra(machine_config &config)
PALETTE(config, m_palette).set_entries(1280);
DECO16IC(config, m_deco_tilegen[0], 0);
- m_deco_tilegen[0]->set_split(0);
m_deco_tilegen[0]->set_pf1_size(DECO_64x32);
m_deco_tilegen[0]->set_pf2_size(DECO_64x32);
m_deco_tilegen[0]->set_pf1_trans_mask(0x0f);
@@ -249,7 +248,6 @@ void vaportra_state::vaportra(machine_config &config)
m_deco_tilegen[0]->set_gfxdecode_tag("gfxdecode");
DECO16IC(config, m_deco_tilegen[1], 0);
- m_deco_tilegen[1]->set_split(0);
m_deco_tilegen[1]->set_pf1_size(DECO_64x32);
m_deco_tilegen[1]->set_pf2_size(DECO_64x32);
m_deco_tilegen[1]->set_pf1_trans_mask(0x0f);
diff --git a/src/mame/includes/cninja.h b/src/mame/includes/cninja.h
index 7c7113d5d65..c0a07a7999e 100644
--- a/src/mame/includes/cninja.h
+++ b/src/mame/includes/cninja.h
@@ -64,6 +64,7 @@ public:
void init_cninjabl2();
DECLARE_MACHINE_START(robocop2);
DECLARE_MACHINE_RESET(robocop2);
+ DECLARE_VIDEO_START(cninja);
DECLARE_VIDEO_START(stoneage);
DECLARE_VIDEO_START(mutantf);
uint32_t screen_update_cninja(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
diff --git a/src/mame/video/cninja.cpp b/src/mame/video/cninja.cpp
index aede19bd9c0..935c6c59304 100644
--- a/src/mame/video/cninja.cpp
+++ b/src/mame/video/cninja.cpp
@@ -11,6 +11,11 @@
/******************************************************************************/
+VIDEO_START_MEMBER(cninja_state,cninja)
+{
+ m_deco_tilegen[0]->set_transmask(1, 0, 0x00ff, 0xff01);
+}
+
VIDEO_START_MEMBER(cninja_state,stoneage)
{
/* The bootleg has broken scroll registers */
diff --git a/src/mame/video/deco16ic.cpp b/src/mame/video/deco16ic.cpp
index 0943f16d649..a52cac73971 100644
--- a/src/mame/video/deco16ic.cpp
+++ b/src/mame/video/deco16ic.cpp
@@ -191,7 +191,6 @@ deco16ic_device::deco16ic_device(const machine_config &mconfig, const char *tag,
m_pf12_last_small(0),
m_pf12_last_big(0),
m_pf1_8bpp_mode(0),
- m_split(0),
m_pf1_size(0),
m_pf2_size(0),
m_pf1_trans_mask(0xf),
@@ -248,9 +247,6 @@ void deco16ic_device::device_start()
m_pf1_tilemap_16x16->set_transparent_pen(0);
m_pf2_tilemap_16x16->set_transparent_pen(0);
- if (m_split) /* Caveman Ninja only */
- m_pf2_tilemap_16x16->set_transmask(0, 0x00ff, 0xff01);
-
m_pf1_8bpp_mode = 0;
m_pf1_data = make_unique_clear<uint16_t[]>(0x2000 / 2);
@@ -519,6 +515,21 @@ void deco16ic_device::custom_tilemap_draw(
/******************************************************************************/
+void deco16ic_device::set_transmask(int tmap, int group, u32 fgmask, u32 bgmask)
+{
+ switch (tmap)
+ {
+ case 0:
+ m_pf1_tilemap_16x16->set_transmask(group, fgmask, bgmask);
+ m_pf1_tilemap_8x8->set_transmask(group, fgmask, bgmask);
+ break;
+ case 1:
+ m_pf2_tilemap_16x16->set_transmask(group, fgmask, bgmask);
+ m_pf2_tilemap_8x8->set_transmask(group, fgmask, bgmask);
+ break;
+ }
+}
+
/* captain america seems to have a similar 8bpp feature to robocop2, investigate merging */
void deco16ic_device::set_pf1_8bpp_mode(int mode)
{
diff --git a/src/mame/video/deco16ic.h b/src/mame/video/deco16ic.h
index 8c19d469571..2c5fa213e03 100644
--- a/src/mame/video/deco16ic.h
+++ b/src/mame/video/deco16ic.h
@@ -37,7 +37,6 @@ public:
// void set_palette_tag(const char *tag);
template <typename... T> void set_bank1_callback(T &&... args) { m_bank1_cb = deco16_bank_cb_delegate(std::forward<T>(args)...); }
template <typename... T> void set_bank2_callback(T &&... args) { m_bank2_cb = deco16_bank_cb_delegate(std::forward<T>(args)...); }
- void set_split(int split) { m_split = split; }
void set_pf1_size(int size) { m_pf1_size = size; }
void set_pf2_size(int size) { m_pf2_size = size; }
void set_pf1_trans_mask(int mask) { m_pf1_trans_mask = mask; }
@@ -94,6 +93,9 @@ public:
/* used by captaven */
void set_pf1_8bpp_mode(int mode);
+ /* used by cninja */
+ void set_transmask(int tmap, int group, u32 fgmask, u32 bgmask);
+
/* used by stoneage */
void set_scrolldx(int tmap, int size, int dx, int dx_if_flipped);
@@ -146,7 +148,6 @@ private:
int m_pf12_last_small, m_pf12_last_big;
int m_pf1_8bpp_mode;
- int m_split;
int m_pf1_size;
int m_pf2_size;
int m_pf1_trans_mask, m_pf2_trans_mask;