summaryrefslogtreecommitdiffstatshomepage
path: root/src/mess
diff options
context:
space:
mode:
author Miodrag Milanovic <mmicko@gmail.com>2014-03-14 14:39:34 +0000
committer Miodrag Milanovic <mmicko@gmail.com>2014-03-14 14:39:34 +0000
commitb5a348c7c1a37b55dc9bb2c57da9120dcb29cd15 (patch)
tree8cbf4677543966e90688ac82c01da72f745aa14d /src/mess
parent1c837826c7ab6f7a84c5ca358aca9aff9cca2b62 (diff)
Made palette settings for screen explicit and mandatory for ind16 mode (nw)
Diffstat (limited to 'src/mess')
-rw-r--r--src/mess/drivers/a51xx.c1
-rw-r--r--src/mess/drivers/a7150.c1
-rw-r--r--src/mess/drivers/a7800.c3
-rw-r--r--src/mess/drivers/ac1.c1
-rw-r--r--src/mess/drivers/ace.c2
-rw-r--r--src/mess/drivers/advision.c1
-rw-r--r--src/mess/drivers/alesis.c1
-rw-r--r--src/mess/drivers/alphasma.c2
-rw-r--r--src/mess/drivers/amiga.c4
-rw-r--r--src/mess/drivers/amstrad.c3
-rw-r--r--src/mess/drivers/apexc.c1
-rw-r--r--src/mess/drivers/apple1.c2
-rw-r--r--src/mess/drivers/apple2.c1
-rw-r--r--src/mess/drivers/apple2gs.c1
-rw-r--r--src/mess/drivers/apple3.c1
-rw-r--r--src/mess/drivers/apricotf.c2
-rw-r--r--src/mess/drivers/apricotp.c3
-rw-r--r--src/mess/drivers/aquarius.c1
-rw-r--r--src/mess/drivers/arcadia.c1
-rw-r--r--src/mess/drivers/argo.c2
-rw-r--r--src/mess/drivers/astrocde.c1
-rw-r--r--src/mess/drivers/atari400.c1
-rw-r--r--src/mess/drivers/avigo.c2
-rw-r--r--src/mess/drivers/ax20.c1
-rw-r--r--src/mess/drivers/b16.c1
-rw-r--r--src/mess/drivers/b2m.c1
-rw-r--r--src/mess/drivers/bcs3.c2
-rw-r--r--src/mess/drivers/beehive.c2
-rw-r--r--src/mess/drivers/binbug.c4
-rw-r--r--src/mess/drivers/bk.c1
-rw-r--r--src/mess/drivers/bmjr.c2
-rw-r--r--src/mess/drivers/busicom.c1
-rw-r--r--src/mess/drivers/bw2.c1
-rw-r--r--src/mess/drivers/c10.c1
-rw-r--r--src/mess/drivers/casloopy.c1
-rw-r--r--src/mess/drivers/cat.c2
-rw-r--r--src/mess/drivers/cd2650.c1
-rw-r--r--src/mess/drivers/cdc721.c1
-rw-r--r--src/mess/drivers/cfx9850.c1
-rw-r--r--src/mess/drivers/cgenie.c1
-rw-r--r--src/mess/drivers/channelf.c4
-rw-r--r--src/mess/drivers/clcd.c1
-rw-r--r--src/mess/drivers/comquest.c1
-rw-r--r--src/mess/drivers/concept.c1
-rw-r--r--src/mess/drivers/d6800.c2
-rw-r--r--src/mess/drivers/dai.c1
-rw-r--r--src/mess/drivers/dct11em.c2
-rw-r--r--src/mess/drivers/dm7000.c1
-rw-r--r--src/mess/drivers/dms5000.c2
-rw-r--r--src/mess/drivers/electron.c1
-rw-r--r--src/mess/drivers/elwro800.c1
-rw-r--r--src/mess/drivers/exelv.c2
-rw-r--r--src/mess/drivers/fk1.c2
-rw-r--r--src/mess/drivers/fm7.c9
-rw-r--r--src/mess/drivers/fp200.c1
-rw-r--r--src/mess/drivers/fp6000.c1
-rw-r--r--src/mess/drivers/galaxy.c2
-rw-r--r--src/mess/drivers/galeb.c1
-rw-r--r--src/mess/drivers/gamecom.c1
-rw-r--r--src/mess/drivers/gamepock.c1
-rw-r--r--src/mess/drivers/gb.c4
-rw-r--r--src/mess/drivers/gba.c1
-rw-r--r--src/mess/drivers/geniusiq.c4
-rw-r--r--src/mess/drivers/gmaster.c1
-rw-r--r--src/mess/drivers/grfd2301.c2
-rw-r--r--src/mess/drivers/hec2hrp.c7
-rw-r--r--src/mess/drivers/homelab.c6
-rw-r--r--src/mess/drivers/homez80.c2
-rw-r--r--src/mess/drivers/hp48.c1
-rw-r--r--src/mess/drivers/hp9k.c2
-rw-r--r--src/mess/drivers/hprot1.c2
-rw-r--r--src/mess/drivers/hunter2.c2
-rw-r--r--src/mess/drivers/hx20.c3
-rw-r--r--src/mess/drivers/ibm6580.c2
-rw-r--r--src/mess/drivers/ie15.c4
-rw-r--r--src/mess/drivers/interact.c2
-rw-r--r--src/mess/drivers/intv.c3
-rw-r--r--src/mess/drivers/ip20.c1
-rw-r--r--src/mess/drivers/iq151.c2
-rw-r--r--src/mess/drivers/irisha.c2
-rw-r--r--src/mess/drivers/itt3030.c1
-rw-r--r--src/mess/drivers/jonos.c2
-rw-r--r--src/mess/drivers/jr100.c1
-rw-r--r--src/mess/drivers/jr200.c1
-rw-r--r--src/mess/drivers/jtc.c3
-rw-r--r--src/mess/drivers/jupiter.c3
-rw-r--r--src/mess/drivers/k8915.c2
-rw-r--r--src/mess/drivers/kaypro.c5
-rw-r--r--src/mess/drivers/kc.c2
-rw-r--r--src/mess/drivers/konin.c2
-rw-r--r--src/mess/drivers/kramermc.c1
-rw-r--r--src/mess/drivers/lcmate2.c2
-rw-r--r--src/mess/drivers/lisa.c1
-rw-r--r--src/mess/drivers/llc.c4
-rw-r--r--src/mess/drivers/lviv.c1
-rw-r--r--src/mess/drivers/lynx.c1
-rw-r--r--src/mess/drivers/m79152pc.c1
-rw-r--r--src/mess/drivers/mac.c10
-rw-r--r--src/mess/drivers/macpci.c1
-rw-r--r--src/mess/drivers/mbc200.c2
-rw-r--r--src/mess/drivers/mc80.c4
-rw-r--r--src/mess/drivers/mes.c2
-rw-r--r--src/mess/drivers/micronic.c1
-rw-r--r--src/mess/drivers/microtan.c1
-rw-r--r--src/mess/drivers/microvsn.c1
-rw-r--r--src/mess/drivers/mikro80.c1
-rw-r--r--src/mess/drivers/mk85.c2
-rw-r--r--src/mess/drivers/mk90.c2
-rw-r--r--src/mess/drivers/mmodular.c1
-rw-r--r--src/mess/drivers/modellot.c2
-rw-r--r--src/mess/drivers/molecular.c1
-rw-r--r--src/mess/drivers/ms0515.c1
-rw-r--r--src/mess/drivers/mstation.c1
-rw-r--r--src/mess/drivers/multi16.c2
-rw-r--r--src/mess/drivers/multi8.c2
-rw-r--r--src/mess/drivers/myb3k.c2
-rw-r--r--src/mess/drivers/mz2000.c1
-rw-r--r--src/mess/drivers/mz2500.c1
-rw-r--r--src/mess/drivers/mz700.c1
-rw-r--r--src/mess/drivers/mz80.c2
-rw-r--r--src/mess/drivers/nakajies.c2
-rw-r--r--src/mess/drivers/nanos.c2
-rw-r--r--src/mess/drivers/nascom1.c1
-rw-r--r--src/mess/drivers/nc.c1
-rw-r--r--src/mess/drivers/nes.c1
-rw-r--r--src/mess/drivers/octopus.c2
-rw-r--r--src/mess/drivers/odyssey2.c4
-rw-r--r--src/mess/drivers/okean240.c1
-rw-r--r--src/mess/drivers/ondra.c1
-rw-r--r--src/mess/drivers/orao.c1
-rw-r--r--src/mess/drivers/oric.c1
-rw-r--r--src/mess/drivers/orion.c3
-rw-r--r--src/mess/drivers/osbexec.c1
-rw-r--r--src/mess/drivers/osborne1.c1
-rw-r--r--src/mess/drivers/p112.c1
-rw-r--r--src/mess/drivers/p2000t.c2
-rw-r--r--src/mess/drivers/palm.c2
-rw-r--r--src/mess/drivers/paso1600.c2
-rw-r--r--src/mess/drivers/pasogo.c1
-rw-r--r--src/mess/drivers/pasopia7.c4
-rw-r--r--src/mess/drivers/pb1000.c2
-rw-r--r--src/mess/drivers/pc100.c2
-rw-r--r--src/mess/drivers/pc1500.c2
-rw-r--r--src/mess/drivers/pc2000.c1
-rw-r--r--src/mess/drivers/pc4.c2
-rw-r--r--src/mess/drivers/pc6001.c2
-rw-r--r--src/mess/drivers/pc8801.c1
-rw-r--r--src/mess/drivers/pce220.c2
-rw-r--r--src/mess/drivers/pcm.c2
-rw-r--r--src/mess/drivers/pcw.c3
-rw-r--r--src/mess/drivers/pcw16.c1
-rw-r--r--src/mess/drivers/pda600.c2
-rw-r--r--src/mess/drivers/pdp1.c1
-rw-r--r--src/mess/drivers/pegasus.c1
-rw-r--r--src/mess/drivers/phunsy.c2
-rw-r--r--src/mess/drivers/pitagjr.c1
-rw-r--r--src/mess/drivers/pk8000.c1
-rw-r--r--src/mess/drivers/pk8020.c1
-rw-r--r--src/mess/drivers/plan80.c2
-rw-r--r--src/mess/drivers/pmd85.c1
-rw-r--r--src/mess/drivers/pocketc.c2
-rw-r--r--src/mess/drivers/pokemini.c1
-rw-r--r--src/mess/drivers/poly88.c1
-rw-r--r--src/mess/drivers/portfoli.c3
-rw-r--r--src/mess/drivers/pp01.c2
-rw-r--r--src/mess/drivers/prestige.c1
-rw-r--r--src/mess/drivers/primo.c1
-rw-r--r--src/mess/drivers/psion.c2
-rw-r--r--src/mess/drivers/ptcsol.c2
-rw-r--r--src/mess/drivers/pv1000.c1
-rw-r--r--src/mess/drivers/pv9234.c1
-rw-r--r--src/mess/drivers/px4.c1
-rw-r--r--src/mess/drivers/px8.c1
-rw-r--r--src/mess/drivers/rd110.c2
-rw-r--r--src/mess/drivers/replicator.c1
-rw-r--r--src/mess/drivers/rex6000.c2
-rw-r--r--src/mess/drivers/rm380z.c3
-rw-r--r--src/mess/drivers/rmnimbus.c1
-rw-r--r--src/mess/drivers/rmt32.c2
-rw-r--r--src/mess/drivers/rx78.c2
-rw-r--r--src/mess/drivers/samcoupe.c1
-rw-r--r--src/mess/drivers/sapi1.c3
-rw-r--r--src/mess/drivers/sbrain.c2
-rw-r--r--src/mess/drivers/scv.c1
-rw-r--r--src/mess/drivers/smc777.c1
-rw-r--r--src/mess/drivers/socrates.c4
-rw-r--r--src/mess/drivers/sorcerer.c2
-rw-r--r--src/mess/drivers/special.c4
-rw-r--r--src/mess/drivers/spectrum.c1
-rw-r--r--src/mess/drivers/ssystem3.c1
-rw-r--r--src/mess/drivers/super80.c3
-rw-r--r--src/mess/drivers/supracan.c2
-rw-r--r--src/mess/drivers/svision.c2
-rw-r--r--src/mess/drivers/svmu.c2
-rw-r--r--src/mess/drivers/sys2900.c1
-rw-r--r--src/mess/drivers/terak.c1
-rw-r--r--src/mess/drivers/thomson.c1
-rw-r--r--src/mess/drivers/ti85.c1
-rw-r--r--src/mess/drivers/ti89.c2
-rw-r--r--src/mess/drivers/ti99_2.c1
-rw-r--r--src/mess/drivers/tim011.c2
-rw-r--r--src/mess/drivers/tk80bs.c2
-rw-r--r--src/mess/drivers/trs80.c1
-rw-r--r--src/mess/drivers/tx0.c1
-rw-r--r--src/mess/drivers/uknc.c2
-rw-r--r--src/mess/drivers/unistar.c2
-rw-r--r--src/mess/drivers/univac.c2
-rw-r--r--src/mess/drivers/unixpc.c1
-rw-r--r--src/mess/drivers/ut88.c2
-rw-r--r--src/mess/drivers/vboy.c2
-rw-r--r--src/mess/drivers/vc4000.c1
-rw-r--r--src/mess/drivers/vector06.c2
-rw-r--r--src/mess/drivers/vt220.c2
-rw-r--r--src/mess/drivers/vt320.c2
-rw-r--r--src/mess/drivers/vt520.c2
-rw-r--r--src/mess/drivers/vta2000.c4
-rw-r--r--src/mess/drivers/vtech2.c1
-rw-r--r--src/mess/drivers/wswan.c2
-rw-r--r--src/mess/drivers/x07.c2
-rw-r--r--src/mess/drivers/x68k.c2
-rw-r--r--src/mess/drivers/xavix.c1
-rw-r--r--src/mess/drivers/ymmu100.c2
-rw-r--r--src/mess/drivers/z100.c2
-rw-r--r--src/mess/drivers/z1013.c2
-rw-r--r--src/mess/drivers/z88.c1
-rw-r--r--src/mess/drivers/z9001.c2
-rw-r--r--src/mess/drivers/zorba.c2
-rw-r--r--src/mess/drivers/zx.c1
-rw-r--r--src/mess/video/kyocera.c2
-rw-r--r--src/mess/video/osi.c5
-rw-r--r--src/mess/video/pc8401a.c3
231 files changed, 402 insertions, 21 deletions
diff --git a/src/mess/drivers/a51xx.c b/src/mess/drivers/a51xx.c
index cc597df63f6..8897f8629e0 100644
--- a/src/mess/drivers/a51xx.c
+++ b/src/mess/drivers/a51xx.c
@@ -122,6 +122,7 @@ static MACHINE_CONFIG_START( a5120, a51xx_state )
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
MCFG_SCREEN_UPDATE_DRIVER(a51xx_state, screen_update_a5120)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", a51xx)
diff --git a/src/mess/drivers/a7150.c b/src/mess/drivers/a7150.c
index 13009999317..82a313613bd 100644
--- a/src/mess/drivers/a7150.c
+++ b/src/mess/drivers/a7150.c
@@ -63,6 +63,7 @@ static MACHINE_CONFIG_START( a7150, a7150_state )
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
MCFG_SCREEN_UPDATE_DRIVER(a7150_state, screen_update_a7150)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/a7800.c b/src/mess/drivers/a7800.c
index 18ef362fae3..33347e22638 100644
--- a/src/mess/drivers/a7800.c
+++ b/src/mess/drivers/a7800.c
@@ -1031,8 +1031,9 @@ static MACHINE_CONFIG_START( a7800_ntsc, a7800_state )
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
- MCFG_SCREEN_RAW_PARAMS( 7159090, 456, 0, 320, 262, 26, 26 + 192 + 30 )
+ MCFG_SCREEN_RAW_PARAMS( 7159090, 456, 0, 320, 262, 26, 26 + 192 + 30 )
MCFG_SCREEN_UPDATE_DRIVER(a7800_state, screen_update_a7800)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", ARRAY_LENGTH(a7800_palette) / 3)
MCFG_PALETTE_INIT_OWNER(a7800_state, a7800)
diff --git a/src/mess/drivers/ac1.c b/src/mess/drivers/ac1.c
index ff1354e1725..a51e7886558 100644
--- a/src/mess/drivers/ac1.c
+++ b/src/mess/drivers/ac1.c
@@ -135,6 +135,7 @@ static MACHINE_CONFIG_START( ac1, ac1_state )
MCFG_SCREEN_SIZE(64*6, 16*8)
MCFG_SCREEN_VISIBLE_AREA(0, 64*6-1, 0, 16*8-1)
MCFG_SCREEN_UPDATE_DRIVER(ac1_state, screen_update_ac1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ac1 )
diff --git a/src/mess/drivers/ace.c b/src/mess/drivers/ace.c
index 24bf7309d80..ad850a4b71b 100644
--- a/src/mess/drivers/ace.c
+++ b/src/mess/drivers/ace.c
@@ -725,6 +725,8 @@ static MACHINE_CONFIG_START( ace, ace_state )
MCFG_SCREEN_ADD(SCREEN_TAG, RASTER)
MCFG_SCREEN_UPDATE_DRIVER(ace_state, screen_update)
MCFG_SCREEN_RAW_PARAMS(XTAL_6_5MHz, 416, 0, 336, 312, 0, 304)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_TIMER_DRIVER_ADD_SCANLINE("set_irq", ace_state, set_irq, SCREEN_TAG, 31*8, 264)
MCFG_TIMER_DRIVER_ADD_SCANLINE("clear_irq", ace_state, clear_irq, SCREEN_TAG, 32*8, 264)
diff --git a/src/mess/drivers/advision.c b/src/mess/drivers/advision.c
index b1cb11f3358..0f28d583f35 100644
--- a/src/mess/drivers/advision.c
+++ b/src/mess/drivers/advision.c
@@ -79,6 +79,7 @@ static MACHINE_CONFIG_START( advision, advision_state )
MCFG_SCREEN_UPDATE_DRIVER(advision_state, screen_update)
MCFG_SCREEN_SIZE(320, 200)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 200-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 8)
MCFG_PALETTE_INIT_OWNER(advision_state, advision)
diff --git a/src/mess/drivers/alesis.c b/src/mess/drivers/alesis.c
index 87808e78308..eefa0527c7d 100644
--- a/src/mess/drivers/alesis.c
+++ b/src/mess/drivers/alesis.c
@@ -266,6 +266,7 @@ static MACHINE_CONFIG_START( hr16, alesis_state )
MCFG_SCREEN_VISIBLE_AREA(0, 6*16-1, 0, 9*2-1)
MCFG_DEFAULT_LAYOUT(layout_lcd)
MCFG_SCREEN_UPDATE_DEVICE("hd44780", hd44780_device, screen_update)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
MCFG_PALETTE_INIT_OWNER(alesis_state, alesis)
diff --git a/src/mess/drivers/alphasma.c b/src/mess/drivers/alphasma.c
index 036eda171f9..d8a34417288 100644
--- a/src/mess/drivers/alphasma.c
+++ b/src/mess/drivers/alphasma.c
@@ -397,6 +397,8 @@ static MACHINE_CONFIG_START( alphasmart, alphasmart_state )
MCFG_SCREEN_UPDATE_DRIVER(alphasmart_state, screen_update)
MCFG_SCREEN_SIZE(6*40, 9*4)
MCFG_SCREEN_VISIBLE_AREA(0, (6*40)-1, 0, (9*4)-1)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(alphasmart_state, alphasmart)
MCFG_DEFAULT_LAYOUT(layout_lcd)
diff --git a/src/mess/drivers/amiga.c b/src/mess/drivers/amiga.c
index b49409e410b..2b887c850f6 100644
--- a/src/mess/drivers/amiga.c
+++ b/src/mess/drivers/amiga.c
@@ -652,6 +652,7 @@ static MACHINE_CONFIG_START( ntsc, amiga_state )
// MCFG_SCREEN_VISIBLE_AREA(214, (228*4)-1, 34, 262-1)
MCFG_SCREEN_RAW_PARAMS(AMIGA_68000_NTSC_CLOCK*2,228*4,214,228*4,262,34,262)
MCFG_SCREEN_UPDATE_DRIVER(amiga_state, screen_update_amiga)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 4096)
MCFG_PALETTE_INIT_OWNER(amiga_state, amiga )
@@ -854,7 +855,7 @@ static MACHINE_CONFIG_START( a1200n, a1200_state )
// MCFG_SCREEN_RAW_PARAMS(AMIGA_68EC020_NTSC_CLOCK,512*2,(129-8-8)*2,(449+8-1+8)*2,312,44-8,300+8)
MCFG_SCREEN_RAW_PARAMS(AMIGA_68EC020_NTSC_CLOCK,228*4,214,228*4,262,34,262)
- MCFG_SCREEN_UPDATE_DRIVER(a1200_state, screen_update_amiga_aga)
+ MCFG_SCREEN_UPDATE_DRIVER(a1200_state, screen_update_amiga_aga)
MCFG_VIDEO_START_OVERRIDE(a1200_state,amiga_aga)
@@ -966,6 +967,7 @@ static MACHINE_CONFIG_START( a3000n, amiga_state )
// MCFG_SCREEN_SIZE(228*4, 262)
// MCFG_SCREEN_VISIBLE_AREA(214, (228*4)-1, 34, 262-1)
MCFG_SCREEN_UPDATE_DRIVER(amiga_state, screen_update_amiga)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 4096)
MCFG_PALETTE_INIT_OWNER(amiga_state, amiga )
diff --git a/src/mess/drivers/amstrad.c b/src/mess/drivers/amstrad.c
index 085f4b03cd8..d792949136b 100644
--- a/src/mess/drivers/amstrad.c
+++ b/src/mess/drivers/amstrad.c
@@ -891,6 +891,7 @@ static MACHINE_CONFIG_START( amstrad_nofdc, amstrad_state )
MCFG_SCREEN_UPDATE_DRIVER(amstrad_state, screen_update_amstrad)
MCFG_SCREEN_VBLANK_DRIVER(amstrad_state, screen_eof_amstrad)
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 32)
MCFG_PALETTE_INIT_OWNER(amstrad_state,amstrad_cpc)
@@ -966,6 +967,7 @@ static MACHINE_CONFIG_START( cpcplus, amstrad_state )
MCFG_SCREEN_UPDATE_DRIVER(amstrad_state, screen_update_amstrad)
MCFG_SCREEN_VBLANK_DRIVER(amstrad_state, screen_eof_amstrad)
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 4096)
MCFG_PALETTE_INIT_OWNER(amstrad_state,amstrad_plus)
@@ -1025,6 +1027,7 @@ static MACHINE_CONFIG_START( gx4000, amstrad_state )
MCFG_SCREEN_UPDATE_DRIVER(amstrad_state, screen_update_amstrad)
MCFG_SCREEN_VBLANK_DRIVER(amstrad_state, screen_eof_amstrad)
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 4096)
MCFG_PALETTE_INIT_OWNER(amstrad_state,amstrad_plus)
diff --git a/src/mess/drivers/apexc.c b/src/mess/drivers/apexc.c
index 32e1c3be1ed..63a8c5fdd14 100644
--- a/src/mess/drivers/apexc.c
+++ b/src/mess/drivers/apexc.c
@@ -890,6 +890,7 @@ static MACHINE_CONFIG_START( apexc, apexc_state )
MCFG_SCREEN_SIZE(256, 192)
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 0, 192-1)
MCFG_SCREEN_UPDATE_DRIVER(apexc_state, screen_update_apexc)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", apexc)
MCFG_PALETTE_ADD("palette", APEXC_PALETTE_SIZE)
diff --git a/src/mess/drivers/apple1.c b/src/mess/drivers/apple1.c
index feeaa3a96cb..342502415ea 100644
--- a/src/mess/drivers/apple1.c
+++ b/src/mess/drivers/apple1.c
@@ -298,7 +298,7 @@ static MACHINE_CONFIG_START( apple1, apple1_state )
MCFG_SCREEN_SIZE(40 * 7, 24 * 8)
MCFG_SCREEN_VISIBLE_AREA(0, 40 * 7 - 1, 0, 24 * 8 - 1)
MCFG_SCREEN_UPDATE_DRIVER(apple1_state, screen_update_apple1)
-
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", apple1)
diff --git a/src/mess/drivers/apple2.c b/src/mess/drivers/apple2.c
index c77365f6006..846814c5c16 100644
--- a/src/mess/drivers/apple2.c
+++ b/src/mess/drivers/apple2.c
@@ -1020,6 +1020,7 @@ static MACHINE_CONFIG_START( apple2_common, apple2_state )
MCFG_SCREEN_SIZE(280*2, 192)
MCFG_SCREEN_VISIBLE_AREA(0, (280*2)-1,0,192-1)
MCFG_SCREEN_UPDATE_DRIVER(apple2_state, screen_update_apple2)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", ARRAY_LENGTH(apple2_palette))
MCFG_PALETTE_INIT_OWNER(apple2_state,apple2)
diff --git a/src/mess/drivers/apple2gs.c b/src/mess/drivers/apple2gs.c
index c08b2593373..d1b7b261009 100644
--- a/src/mess/drivers/apple2gs.c
+++ b/src/mess/drivers/apple2gs.c
@@ -343,6 +343,7 @@ static MACHINE_CONFIG_START( apple2gs, apple2gs_state )
MCFG_SCREEN_SIZE(704, 262) // 640+32+32 for the borders
MCFG_SCREEN_VISIBLE_AREA(0,703,0,230)
MCFG_SCREEN_UPDATE_DRIVER(apple2gs_state, screen_update_apple2gs)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD( "palette", 16+256 )
MCFG_PALETTE_INIT_OWNER(apple2gs_state, apple2gs )
diff --git a/src/mess/drivers/apple3.c b/src/mess/drivers/apple3.c
index fc4f9492cc0..b129b72cbfa 100644
--- a/src/mess/drivers/apple3.c
+++ b/src/mess/drivers/apple3.c
@@ -71,6 +71,7 @@ static MACHINE_CONFIG_START( apple3, apple3_state )
MCFG_SCREEN_SIZE(280*2, 224)
MCFG_SCREEN_VISIBLE_AREA(0, (280*2)-1,0,192-1)
MCFG_SCREEN_UPDATE_DRIVER(apple3_state, screen_update_apple3)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 32)
MCFG_PALETTE_INIT_OWNER(apple3_state, apple3 )
diff --git a/src/mess/drivers/apricotf.c b/src/mess/drivers/apricotf.c
index 41f87c0ab26..3568190cc0e 100644
--- a/src/mess/drivers/apricotf.c
+++ b/src/mess/drivers/apricotf.c
@@ -332,6 +332,8 @@ static MACHINE_CONFIG_START( act_f1, f1_state )
MCFG_SCREEN_UPDATE_DRIVER(f1_state, screen_update)
MCFG_SCREEN_SIZE(640, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 256-1)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD("palette", 16)
MCFG_GFXDECODE_ADD("gfxdecode", act_f1)
diff --git a/src/mess/drivers/apricotp.c b/src/mess/drivers/apricotp.c
index fd1f641dbff..7c005899edf 100644
--- a/src/mess/drivers/apricotp.c
+++ b/src/mess/drivers/apricotp.c
@@ -594,13 +594,14 @@ static MACHINE_CONFIG_START( fp, fp_state )
MCFG_SCREEN_UPDATE_DRIVER(fp_state, screen_update)
MCFG_SCREEN_SIZE(640, 200)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 200-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_SCREEN_ADD(SCREEN_CRT_TAG, RASTER)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
MCFG_SCREEN_UPDATE_DEVICE(MC6845_TAG, mc6845_device, screen_update)
MCFG_SCREEN_SIZE(640, 256)
- MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 256-1)
+ MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 256-1)
MCFG_PALETTE_ADD("palette", 16)
MCFG_GFXDECODE_ADD("gfxdecode", act_f1)
diff --git a/src/mess/drivers/aquarius.c b/src/mess/drivers/aquarius.c
index f6e8b9732fb..2b60e59cc57 100644
--- a/src/mess/drivers/aquarius.c
+++ b/src/mess/drivers/aquarius.c
@@ -370,6 +370,7 @@ static MACHINE_CONFIG_START( aquarius, aquarius_state )
MCFG_SCREEN_SIZE(40 * 8, 25 * 8)
MCFG_SCREEN_VISIBLE_AREA(0, 40 * 8 - 1, 0 * 8, 25 * 8 - 1)
MCFG_SCREEN_UPDATE_DRIVER(aquarius_state, screen_update_aquarius)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", aquarius )
MCFG_PALETTE_ADD("palette", 512)
diff --git a/src/mess/drivers/arcadia.c b/src/mess/drivers/arcadia.c
index 14288fe8e99..0e8940024db 100644
--- a/src/mess/drivers/arcadia.c
+++ b/src/mess/drivers/arcadia.c
@@ -538,6 +538,7 @@ static MACHINE_CONFIG_START( arcadia, arcadia_state )
MCFG_SCREEN_SIZE(128+2*XPOS, 262)
MCFG_SCREEN_VISIBLE_AREA(0, 2*XPOS+128-1, 0, 262-1)
MCFG_SCREEN_UPDATE_DRIVER(arcadia_state, screen_update_arcadia)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", arcadia )
MCFG_PALETTE_ADD("palette", ARRAY_LENGTH(arcadia_palette))
diff --git a/src/mess/drivers/argo.c b/src/mess/drivers/argo.c
index f69030b6b54..69b0d96c57a 100644
--- a/src/mess/drivers/argo.c
+++ b/src/mess/drivers/argo.c
@@ -358,6 +358,8 @@ static MACHINE_CONFIG_START( argo, argo_state )
MCFG_SCREEN_UPDATE_DRIVER(argo_state, screen_update)
MCFG_SCREEN_SIZE(640, 250)
MCFG_SCREEN_VISIBLE_AREA(0, 639, 0, 249)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
MACHINE_CONFIG_END
diff --git a/src/mess/drivers/astrocde.c b/src/mess/drivers/astrocde.c
index 3eb79d68eb7..21d6c19e719 100644
--- a/src/mess/drivers/astrocde.c
+++ b/src/mess/drivers/astrocde.c
@@ -259,6 +259,7 @@ static MACHINE_CONFIG_START( astrocde, astrocde_mess_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(ASTROCADE_CLOCK, 455, 0, 352, 262, 0, 240)
MCFG_SCREEN_UPDATE_DRIVER(astrocde_state, screen_update_astrocde)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 512)
MCFG_PALETTE_INIT_OWNER(astrocde_state, astrocde)
diff --git a/src/mess/drivers/atari400.c b/src/mess/drivers/atari400.c
index 74fabf6492b..46b92ffda35 100644
--- a/src/mess/drivers/atari400.c
+++ b/src/mess/drivers/atari400.c
@@ -2482,6 +2482,7 @@ static MACHINE_CONFIG_START( atari_common_nodac, a400_state )
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(1))
MCFG_SCREEN_VISIBLE_AREA(MIN_X, MAX_X, MIN_Y, MAX_Y)
MCFG_SCREEN_UPDATE_STATIC(atari)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", sizeof(atari_palette) / 3)
MCFG_PALETTE_INIT_OWNER(a400_state, a400)
diff --git a/src/mess/drivers/avigo.c b/src/mess/drivers/avigo.c
index 7fec9b8cbf8..ca368a3fe61 100644
--- a/src/mess/drivers/avigo.c
+++ b/src/mess/drivers/avigo.c
@@ -899,6 +899,8 @@ static MACHINE_CONFIG_START( avigo, avigo_state )
MCFG_SCREEN_UPDATE_DRIVER(avigo_state, screen_update)
MCFG_SCREEN_SIZE(AVIGO_SCREEN_WIDTH, AVIGO_SCREEN_HEIGHT + AVIGO_PANEL_HEIGHT)
MCFG_SCREEN_VISIBLE_AREA(0, AVIGO_SCREEN_WIDTH-1, 0, AVIGO_SCREEN_HEIGHT + AVIGO_PANEL_HEIGHT -1)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_DEFAULT_LAYOUT(layout_avigo)
MCFG_GFXDECODE_ADD("gfxdecode", avigo)
diff --git a/src/mess/drivers/ax20.c b/src/mess/drivers/ax20.c
index 7576c1a78cd..2f2f88144f2 100644
--- a/src/mess/drivers/ax20.c
+++ b/src/mess/drivers/ax20.c
@@ -120,6 +120,7 @@ static MACHINE_CONFIG_START( ax20, ax20_state )
MCFG_SCREEN_UPDATE_DRIVER(ax20_state, screen_update)
MCFG_SCREEN_SIZE(80*8, 24*12)
MCFG_SCREEN_VISIBLE_AREA(0, 80*8-1, 0, 24*12-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ax20)
MCFG_PALETTE_ADD_MONOCHROME_GREEN("palette")
diff --git a/src/mess/drivers/b16.c b/src/mess/drivers/b16.c
index bf2990237cf..1dff4d681b6 100644
--- a/src/mess/drivers/b16.c
+++ b/src/mess/drivers/b16.c
@@ -310,6 +310,7 @@ static MACHINE_CONFIG_START( b16, b16_state )
MCFG_SCREEN_UPDATE_DRIVER(b16_state, screen_update)
MCFG_SCREEN_SIZE(640, 400)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 400-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_MC6845_ADD("crtc", H46505, "screen", XTAL_14_31818MHz/5, mc6845_intf) /* unknown clock, hand tuned to get ~60 fps */
MCFG_I8237_ADD("8237dma", XTAL_14_31818MHz/2, b16_dma8237_interface)
diff --git a/src/mess/drivers/b2m.c b/src/mess/drivers/b2m.c
index c29c06dbfae..ee887786bcd 100644
--- a/src/mess/drivers/b2m.c
+++ b/src/mess/drivers/b2m.c
@@ -195,6 +195,7 @@ static MACHINE_CONFIG_START( b2m, b2m_state )
MCFG_SCREEN_SIZE(384, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 384-1, 0, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(b2m_state, screen_update_b2m)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 4)
MCFG_PALETTE_INIT_OWNER(b2m_state, b2m)
diff --git a/src/mess/drivers/bcs3.c b/src/mess/drivers/bcs3.c
index 38d3d45c769..bb7846e4c76 100644
--- a/src/mess/drivers/bcs3.c
+++ b/src/mess/drivers/bcs3.c
@@ -426,6 +426,8 @@ static MACHINE_CONFIG_START( bcs3, bcs3_state )
MCFG_SCREEN_SIZE(28*8, 12*10)
MCFG_SCREEN_VISIBLE_AREA(0,28*8-1,0,12*10-1)
MCFG_SCREEN_UPDATE_DRIVER(bcs3_state, screen_update_bcs3)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", bcs3)
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
MACHINE_CONFIG_END
diff --git a/src/mess/drivers/beehive.c b/src/mess/drivers/beehive.c
index 284dc692d69..16fe0dc7ea9 100644
--- a/src/mess/drivers/beehive.c
+++ b/src/mess/drivers/beehive.c
@@ -299,6 +299,8 @@ static MACHINE_CONFIG_START( beehive, beehive_state )
MCFG_SCREEN_UPDATE_DRIVER(beehive_state, screen_update)
MCFG_SCREEN_SIZE(640, 250)
MCFG_SCREEN_VISIBLE_AREA(0, 639, 0, 249)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD_MONOCHROME_GREEN("palette")
MACHINE_CONFIG_END
diff --git a/src/mess/drivers/binbug.c b/src/mess/drivers/binbug.c
index 5a6ace253ad..630ca705b6b 100644
--- a/src/mess/drivers/binbug.c
+++ b/src/mess/drivers/binbug.c
@@ -310,6 +310,8 @@ static MACHINE_CONFIG_START( binbug, binbug_state )
MCFG_SCREEN_UPDATE_DRIVER(binbug_state, screen_update)
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 511, 0, 255)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", dg640)
MCFG_PALETTE_ADD_MONOCHROME_AMBER("palette")
@@ -568,6 +570,8 @@ static MACHINE_CONFIG_START( dg680, dg680_state )
MCFG_SCREEN_UPDATE_DRIVER(binbug_state, screen_update)
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 511, 0, 255)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", dg640)
MCFG_PALETTE_ADD_MONOCHROME_AMBER("palette")
diff --git a/src/mess/drivers/bk.c b/src/mess/drivers/bk.c
index 6018ba0275a..8e07c185091 100644
--- a/src/mess/drivers/bk.c
+++ b/src/mess/drivers/bk.c
@@ -180,6 +180,7 @@ static MACHINE_CONFIG_START( bk0010, bk_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(bk_state, screen_update_bk0010)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/bmjr.c b/src/mess/drivers/bmjr.c
index 21b08379eaf..491f1e141da 100644
--- a/src/mess/drivers/bmjr.c
+++ b/src/mess/drivers/bmjr.c
@@ -359,6 +359,8 @@ static MACHINE_CONFIG_START( bmjr, bmjr_state )
MCFG_SCREEN_SIZE(256, 192)
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 0, 192-1)
MCFG_SCREEN_UPDATE_DRIVER(bmjr_state, screen_update_bmjr)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD("palette", 8)
MCFG_PALETTE_INIT_OWNER(bmjr_state, bmjr)
MCFG_GFXDECODE_ADD("gfxdecode", bmjr)
diff --git a/src/mess/drivers/busicom.c b/src/mess/drivers/busicom.c
index ff79db2d429..4f9915f92c7 100644
--- a/src/mess/drivers/busicom.c
+++ b/src/mess/drivers/busicom.c
@@ -223,6 +223,7 @@ static MACHINE_CONFIG_START( busicom, busicom_state )
MCFG_SCREEN_SIZE(40*17, 44*11)
MCFG_SCREEN_VISIBLE_AREA(0, 40*17-1, 0, 44*11-1)
MCFG_SCREEN_UPDATE_DRIVER(busicom_state, screen_update_busicom)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 16)
MCFG_PALETTE_INIT_OWNER(busicom_state, busicom)
diff --git a/src/mess/drivers/bw2.c b/src/mess/drivers/bw2.c
index a44d5c3136e..47ee53d3bc4 100644
--- a/src/mess/drivers/bw2.c
+++ b/src/mess/drivers/bw2.c
@@ -615,6 +615,7 @@ static MACHINE_CONFIG_START( bw2, bw2_state )
MCFG_SCREEN_UPDATE_DEVICE( MSM6255_TAG, msm6255_device, screen_update )
MCFG_SCREEN_SIZE(640, 200)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 200-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(bw2_state, bw2)
diff --git a/src/mess/drivers/c10.c b/src/mess/drivers/c10.c
index 1db7924cfdc..4df3bae5fb7 100644
--- a/src/mess/drivers/c10.c
+++ b/src/mess/drivers/c10.c
@@ -163,6 +163,7 @@ static MACHINE_CONFIG_START( c10, c10_state )
MCFG_SCREEN_UPDATE_DRIVER(c10_state, screen_update)
MCFG_SCREEN_SIZE(640, 250)
MCFG_SCREEN_VISIBLE_AREA(0, 639, 0, 249)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", c10)
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
MACHINE_CONFIG_END
diff --git a/src/mess/drivers/casloopy.c b/src/mess/drivers/casloopy.c
index 3b5ae2191af..e19d0a5dd5f 100644
--- a/src/mess/drivers/casloopy.c
+++ b/src/mess/drivers/casloopy.c
@@ -494,6 +494,7 @@ static MACHINE_CONFIG_START( casloopy, casloopy_state )
// MCFG_SCREEN_SIZE(444, 263)
// MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(casloopy_state, screen_update_casloopy)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 512)
diff --git a/src/mess/drivers/cat.c b/src/mess/drivers/cat.c
index cae76c16f94..30ad30b4151 100644
--- a/src/mess/drivers/cat.c
+++ b/src/mess/drivers/cat.c
@@ -1233,6 +1233,7 @@ static MACHINE_CONFIG_START( cat, cat_state )
MCFG_SCREEN_SIZE(672, 344)
MCFG_SCREEN_VISIBLE_AREA(0, 672-1, 0, 344-1)
MCFG_SCREEN_UPDATE_DRIVER(cat_state, screen_update_cat)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
@@ -1571,6 +1572,7 @@ static MACHINE_CONFIG_START( swyft, cat_state )
MCFG_SCREEN_SIZE(320, 242)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 242-1)
MCFG_SCREEN_UPDATE_DRIVER(cat_state, screen_update_swyft)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/cd2650.c b/src/mess/drivers/cd2650.c
index 176cb6ded7f..4f640881ad4 100644
--- a/src/mess/drivers/cd2650.c
+++ b/src/mess/drivers/cd2650.c
@@ -291,6 +291,7 @@ static MACHINE_CONFIG_START( cd2650, cd2650_state )
MCFG_SCREEN_UPDATE_DRIVER(cd2650_state, screen_update)
MCFG_SCREEN_SIZE(640, 160)
MCFG_SCREEN_VISIBLE_AREA(0, 639, 0, 159)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cd2650)
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/cdc721.c b/src/mess/drivers/cdc721.c
index 783b789c67e..fd9c12e62f0 100644
--- a/src/mess/drivers/cdc721.c
+++ b/src/mess/drivers/cdc721.c
@@ -122,6 +122,7 @@ static MACHINE_CONFIG_START( cdc721, cdc721_state )
MCFG_SCREEN_UPDATE_DRIVER(cdc721_state, screen_update)
MCFG_SCREEN_SIZE(640, 240)
MCFG_SCREEN_VISIBLE_AREA(0, 639, 0, 239)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 3)
MCFG_PALETTE_INIT_OWNER(cdc721_state, cdc721)
MCFG_GFXDECODE_ADD("gfxdecode", cdc721)
diff --git a/src/mess/drivers/cfx9850.c b/src/mess/drivers/cfx9850.c
index 756de4b8e49..3b2593b8d9b 100644
--- a/src/mess/drivers/cfx9850.c
+++ b/src/mess/drivers/cfx9850.c
@@ -265,6 +265,7 @@ static MACHINE_CONFIG_START( cfx9850, cfx9850_state )
MCFG_SCREEN_SIZE( 128, 64 )
MCFG_SCREEN_VISIBLE_AREA( 0, 127, 0, 63 )
MCFG_SCREEN_UPDATE_DRIVER(cfx9850_state, screen_update_cfx9850)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_DEFAULT_LAYOUT(layout_lcd)
diff --git a/src/mess/drivers/cgenie.c b/src/mess/drivers/cgenie.c
index 4bda8b70e83..39040fff5c0 100644
--- a/src/mess/drivers/cgenie.c
+++ b/src/mess/drivers/cgenie.c
@@ -531,6 +531,7 @@ static MACHINE_CONFIG_START( cgenie_common, cgenie_state )
MCFG_SCREEN_SIZE(48*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 48*8-1,0*8,32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(cgenie_state, screen_update_cgenie)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", cgenie )
MCFG_PALETTE_ADD("palette", 108)
diff --git a/src/mess/drivers/channelf.c b/src/mess/drivers/channelf.c
index 22d87263264..ba9fc22e88b 100644
--- a/src/mess/drivers/channelf.c
+++ b/src/mess/drivers/channelf.c
@@ -271,6 +271,7 @@ static MACHINE_CONFIG_START( channelf, channelf_state )
MCFG_SCREEN_SIZE(128, 64)
MCFG_SCREEN_VISIBLE_AREA(4, 112 - 7, 4, 64 - 3)
MCFG_SCREEN_UPDATE_DRIVER(channelf_state, screen_update_channelf)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 8)
MCFG_PALETTE_INIT_OWNER(channelf_state, channelf)
@@ -297,6 +298,7 @@ static MACHINE_CONFIG_START( sabavdpl, channelf_state )
MCFG_SCREEN_SIZE(128, 64)
MCFG_SCREEN_VISIBLE_AREA(4, 112 - 7, 4, 64 - 3)
MCFG_SCREEN_UPDATE_DRIVER(channelf_state, screen_update_channelf)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 8)
MCFG_PALETTE_INIT_OWNER(channelf_state, channelf)
@@ -324,6 +326,7 @@ static MACHINE_CONFIG_START( channlf2, channelf_state )
MCFG_SCREEN_SIZE(128, 64)
MCFG_SCREEN_VISIBLE_AREA(4, 112 - 7, 4, 64 - 3)
MCFG_SCREEN_UPDATE_DRIVER(channelf_state, screen_update_channelf)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 8)
MCFG_PALETTE_INIT_OWNER(channelf_state, channelf)
@@ -351,6 +354,7 @@ static MACHINE_CONFIG_START( sabavpl2, channelf_state )
MCFG_SCREEN_SIZE(128, 64)
MCFG_SCREEN_VISIBLE_AREA(4, 112 - 7, 4, 64 - 3)
MCFG_SCREEN_UPDATE_DRIVER(channelf_state, screen_update_channelf)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 8)
MCFG_PALETTE_INIT_OWNER(channelf_state, channelf)
diff --git a/src/mess/drivers/clcd.c b/src/mess/drivers/clcd.c
index b6396185f74..808b071020c 100644
--- a/src/mess/drivers/clcd.c
+++ b/src/mess/drivers/clcd.c
@@ -780,6 +780,7 @@ static MACHINE_CONFIG_START(clcd, clcd_state)
MCFG_SCREEN_UPDATE_DRIVER(clcd_state, screen_update)
MCFG_SCREEN_SIZE(480, 128)
MCFG_SCREEN_VISIBLE_AREA(0, 480-1, 0, 128-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_DEFAULT_LAYOUT(layout_lcd)
MCFG_PALETTE_ADD("palette", 2)
diff --git a/src/mess/drivers/comquest.c b/src/mess/drivers/comquest.c
index e57291e4c8a..627965a8ccc 100644
--- a/src/mess/drivers/comquest.c
+++ b/src/mess/drivers/comquest.c
@@ -253,6 +253,7 @@ static MACHINE_CONFIG_START( comquest, comquest_state )
MCFG_SCREEN_SIZE(64*4, 128) /* 160 x 102 */
MCFG_SCREEN_VISIBLE_AREA(0, 64*4-1, 0, 128-1)
MCFG_SCREEN_UPDATE_DRIVER(comquest_state, screen_update_comquest)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", comquest )
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/concept.c b/src/mess/drivers/concept.c
index 3dbba15451b..f45c8455995 100644
--- a/src/mess/drivers/concept.c
+++ b/src/mess/drivers/concept.c
@@ -220,6 +220,7 @@ static MACHINE_CONFIG_START( concept, concept_state )
MCFG_SCREEN_SIZE(720, 560)
MCFG_SCREEN_VISIBLE_AREA(0, 720-1, 0, 560-1)
MCFG_SCREEN_UPDATE_DRIVER(concept_state, screen_update_concept)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/d6800.c b/src/mess/drivers/d6800.c
index aa201dd7128..815f888844b 100644
--- a/src/mess/drivers/d6800.c
+++ b/src/mess/drivers/d6800.c
@@ -401,6 +401,8 @@ static MACHINE_CONFIG_START( d6800, d6800_state )
MCFG_SCREEN_VISIBLE_AREA(0, 63, 0, 31)
MCFG_SCREEN_UPDATE_DRIVER(d6800_state, screen_update_d6800)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(25))
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
/* sound hardware */
diff --git a/src/mess/drivers/dai.c b/src/mess/drivers/dai.c
index 1ddb2b86c6c..3b93d74af61 100644
--- a/src/mess/drivers/dai.c
+++ b/src/mess/drivers/dai.c
@@ -219,6 +219,7 @@ static MACHINE_CONFIG_START( dai, dai_state )
MCFG_SCREEN_SIZE(1056, 542)
MCFG_SCREEN_VISIBLE_AREA(0, 1056-1, 0, 302-1)
MCFG_SCREEN_UPDATE_DRIVER(dai_state, screen_update_dai)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", dai)
MCFG_PALETTE_ADD("palette", sizeof (dai_palette) / 3)
diff --git a/src/mess/drivers/dct11em.c b/src/mess/drivers/dct11em.c
index 8da94a6ab21..5000ea1bee8 100644
--- a/src/mess/drivers/dct11em.c
+++ b/src/mess/drivers/dct11em.c
@@ -61,6 +61,8 @@ static MACHINE_CONFIG_START( dct11em, dct11em_state )
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
MCFG_SCREEN_UPDATE_DRIVER(dct11em_state, screen_update_dct11em)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
MACHINE_CONFIG_END
diff --git a/src/mess/drivers/dm7000.c b/src/mess/drivers/dm7000.c
index ddf8d66c083..42faa18b8de 100644
--- a/src/mess/drivers/dm7000.c
+++ b/src/mess/drivers/dm7000.c
@@ -323,6 +323,7 @@ static MACHINE_CONFIG_START( dm7000, dm7000_state )
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
MCFG_SCREEN_UPDATE_DRIVER(dm7000_state, screen_update_dm7000)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/dms5000.c b/src/mess/drivers/dms5000.c
index d4e13922a3c..3ef5440ab42 100644
--- a/src/mess/drivers/dms5000.c
+++ b/src/mess/drivers/dms5000.c
@@ -66,6 +66,8 @@ static MACHINE_CONFIG_START( dms5000, dms5000_state )
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
MCFG_SCREEN_UPDATE_DRIVER(dms5000_state, screen_update_dms5000)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
MACHINE_CONFIG_END
diff --git a/src/mess/drivers/electron.c b/src/mess/drivers/electron.c
index 515ff23d504..b6d5916eaf1 100644
--- a/src/mess/drivers/electron.c
+++ b/src/mess/drivers/electron.c
@@ -190,6 +190,7 @@ static MACHINE_CONFIG_START( electron, electron_state )
MCFG_SCREEN_VISIBLE_AREA( 0, 640-1, 0, 256-1 )
MCFG_SCREEN_UPDATE_DRIVER(electron_state, screen_update_electron)
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_UPDATE_SCANLINE)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD( "palette", 16 )
MCFG_PALETTE_INIT_OWNER(electron_state, electron)
diff --git a/src/mess/drivers/elwro800.c b/src/mess/drivers/elwro800.c
index 96dd15fb39d..d791639ba3b 100644
--- a/src/mess/drivers/elwro800.c
+++ b/src/mess/drivers/elwro800.c
@@ -574,6 +574,7 @@ static MACHINE_CONFIG_START( elwro800, elwro800_state )
MCFG_SCREEN_VISIBLE_AREA(0, SPEC_SCREEN_WIDTH-1, 0, SPEC_SCREEN_HEIGHT-1)
MCFG_SCREEN_UPDATE_DRIVER(elwro800_state, screen_update_spectrum )
MCFG_SCREEN_VBLANK_DRIVER(elwro800_state, screen_eof_spectrum)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 16)
MCFG_PALETTE_INIT_OWNER(elwro800_state, spectrum )
diff --git a/src/mess/drivers/exelv.c b/src/mess/drivers/exelv.c
index a351c6d3d1b..46fc896b25d 100644
--- a/src/mess/drivers/exelv.c
+++ b/src/mess/drivers/exelv.c
@@ -537,6 +537,7 @@ static MACHINE_CONFIG_START( exl100, exelv_state )
#endif
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 8)
MCFG_PALETTE_INIT_OWNER(exelv_state, exelv)
@@ -580,6 +581,7 @@ static MACHINE_CONFIG_START( exeltel, exelv_state )
#endif
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 8)
MCFG_PALETTE_INIT_OWNER(exelv_state, exelv)
diff --git a/src/mess/drivers/fk1.c b/src/mess/drivers/fk1.c
index 84f9b6aa398..ae0f5316cf1 100644
--- a/src/mess/drivers/fk1.c
+++ b/src/mess/drivers/fk1.c
@@ -446,6 +446,8 @@ static MACHINE_CONFIG_START( fk1, fk1_state )
MCFG_SCREEN_UPDATE_DRIVER(fk1_state, screen_update)
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-1)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD_MONOCHROME_GREEN("palette")
MCFG_DEVICE_ADD("pit8253", PIT8253, 0)
diff --git a/src/mess/drivers/fm7.c b/src/mess/drivers/fm7.c
index efbdbd5a880..4a6669db541 100644
--- a/src/mess/drivers/fm7.c
+++ b/src/mess/drivers/fm7.c
@@ -2042,12 +2042,12 @@ static MACHINE_CONFIG_START( fm7, fm7_state )
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
-
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
MCFG_SCREEN_SIZE(640, 200)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 200-1)
MCFG_SCREEN_UPDATE_DRIVER(fm7_state, screen_update_fm7)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 8)
MCFG_PALETTE_INIT_OWNER(fm7_state, fm7)
@@ -2091,12 +2091,12 @@ static MACHINE_CONFIG_START( fm8, fm7_state )
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
-
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
MCFG_SCREEN_SIZE(640, 200)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 200-1)
MCFG_SCREEN_UPDATE_DRIVER(fm7_state, screen_update_fm7)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 8)
MCFG_PALETTE_INIT_OWNER(fm7_state, fm7)
@@ -2146,6 +2146,7 @@ static MACHINE_CONFIG_START( fm77av, fm7_state )
MCFG_SCREEN_SIZE(640, 200)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 200-1)
MCFG_SCREEN_UPDATE_DRIVER(fm7_state, screen_update_fm7)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 8 + 4096)
MCFG_PALETTE_INIT_OWNER(fm7_state, fm7)
@@ -2193,12 +2194,12 @@ static MACHINE_CONFIG_START( fm11, fm7_state )
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
-
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
MCFG_SCREEN_SIZE(640, 200)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 200-1)
MCFG_SCREEN_UPDATE_DRIVER(fm7_state, screen_update_fm7)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 8)
MCFG_PALETTE_INIT_OWNER(fm7_state, fm7)
@@ -2240,12 +2241,12 @@ static MACHINE_CONFIG_START( fm16beta, fm7_state )
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
-
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
MCFG_SCREEN_SIZE(640, 200)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 200-1)
MCFG_SCREEN_UPDATE_DRIVER(fm7_state, screen_update_fm7)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 8)
MCFG_PALETTE_INIT_OWNER(fm7_state, fm7)
diff --git a/src/mess/drivers/fp200.c b/src/mess/drivers/fp200.c
index b4ac4f97aab..274536fe8a6 100644
--- a/src/mess/drivers/fp200.c
+++ b/src/mess/drivers/fp200.c
@@ -593,6 +593,7 @@ static MACHINE_CONFIG_START( fp200, fp200_state )
MCFG_SCREEN_UPDATE_DRIVER(fp200_state, screen_update)
MCFG_SCREEN_SIZE(20*8, 8*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 20*8-1, 0*8, 8*8-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", fp200)
diff --git a/src/mess/drivers/fp6000.c b/src/mess/drivers/fp6000.c
index 9a8bdc6aa92..e360d6745b6 100644
--- a/src/mess/drivers/fp6000.c
+++ b/src/mess/drivers/fp6000.c
@@ -317,6 +317,7 @@ static MACHINE_CONFIG_START( fp6000, fp6000_state )
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
MCFG_SCREEN_UPDATE_DRIVER(fp6000_state, screen_update_fp6000)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_MC6845_ADD("crtc", H46505, "screen", 16000000/5, mc6845_intf) /* unknown clock, hand tuned to get ~60 fps */
diff --git a/src/mess/drivers/galaxy.c b/src/mess/drivers/galaxy.c
index fe0b506baf3..91b427a6793 100644
--- a/src/mess/drivers/galaxy.c
+++ b/src/mess/drivers/galaxy.c
@@ -190,6 +190,7 @@ static MACHINE_CONFIG_START( galaxy, galaxy_state )
MCFG_CPU_VBLANK_INT_DRIVER("screen", galaxy_state, galaxy_interrupt)
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(50)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_MACHINE_RESET_OVERRIDE(galaxy_state, galaxy )
@@ -226,6 +227,7 @@ static MACHINE_CONFIG_START( galaxyp, galaxy_state )
MCFG_CPU_VBLANK_INT_DRIVER("screen", galaxy_state, galaxy_interrupt)
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(50)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_MACHINE_RESET_OVERRIDE(galaxy_state, galaxyp )
diff --git a/src/mess/drivers/galeb.c b/src/mess/drivers/galeb.c
index a55917cc292..cf022007121 100644
--- a/src/mess/drivers/galeb.c
+++ b/src/mess/drivers/galeb.c
@@ -137,6 +137,7 @@ static MACHINE_CONFIG_START( galeb, galeb_state )
MCFG_SCREEN_SIZE(48*8, 16*8)
MCFG_SCREEN_VISIBLE_AREA(0, 48*8-1, 0, 16*8-1)
MCFG_SCREEN_UPDATE_DRIVER(galeb_state, screen_update_galeb)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", galeb )
diff --git a/src/mess/drivers/gamecom.c b/src/mess/drivers/gamecom.c
index b9b723ae6f0..64aa9ecf103 100644
--- a/src/mess/drivers/gamecom.c
+++ b/src/mess/drivers/gamecom.c
@@ -112,6 +112,7 @@ static MACHINE_CONFIG_START( gamecom, gamecom_state )
MCFG_SCREEN_UPDATE_DRIVER(gamecom_state, screen_update)
MCFG_SCREEN_SIZE( 200, 200 )
MCFG_SCREEN_VISIBLE_AREA( 0, 199, 0, 159 )
+ MCFG_SCREEN_PALETTE("palette")
MCFG_DEFAULT_LAYOUT(layout_lcd)
MCFG_PALETTE_ADD("palette", 5)
diff --git a/src/mess/drivers/gamepock.c b/src/mess/drivers/gamepock.c
index 1674ba44de7..ef2358b5add 100644
--- a/src/mess/drivers/gamepock.c
+++ b/src/mess/drivers/gamepock.c
@@ -73,6 +73,7 @@ static MACHINE_CONFIG_START( gamepock, gamepock_state )
MCFG_SCREEN_SIZE( 75, 64 )
MCFG_SCREEN_VISIBLE_AREA( 0, 74, 0, 63 )
MCFG_SCREEN_UPDATE_DRIVER(gamepock_state, screen_update_gamepock)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_DEFAULT_LAYOUT(layout_lcd)
diff --git a/src/mess/drivers/gb.c b/src/mess/drivers/gb.c
index e4c061b7849..703d4ae62b1 100644
--- a/src/mess/drivers/gb.c
+++ b/src/mess/drivers/gb.c
@@ -755,6 +755,8 @@ static MACHINE_CONFIG_START( gameboy, gb_state )
MCFG_SCREEN_REFRESH_RATE(DMG_FRAMES_PER_SECOND)
MCFG_SCREEN_VBLANK_TIME(0)
MCFG_SCREEN_UPDATE_DEVICE("lcd", gb_lcd_device, screen_update)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_DEFAULT_LAYOUT(layout_lcd)
// MCFG_SCREEN_SIZE(20*8, 18*8)
MCFG_SCREEN_SIZE( 458, 154 )
@@ -857,6 +859,8 @@ static MACHINE_CONFIG_START( megaduck, megaduck_state )
MCFG_SCREEN_ADD("screen", LCD)
MCFG_SCREEN_REFRESH_RATE(DMG_FRAMES_PER_SECOND)
MCFG_SCREEN_VBLANK_TIME(0)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_QUANTUM_TIME(attotime::from_hz(60))
MCFG_MACHINE_START_OVERRIDE(megaduck_state, megaduck )
diff --git a/src/mess/drivers/gba.c b/src/mess/drivers/gba.c
index 832bda32868..7bf449a7f45 100644
--- a/src/mess/drivers/gba.c
+++ b/src/mess/drivers/gba.c
@@ -2255,6 +2255,7 @@ static MACHINE_CONFIG_START( gbadv, gba_state )
MCFG_SCREEN_ADD("gbalcd", RASTER) // htot hst vwid vtot vst vis
MCFG_SCREEN_RAW_PARAMS(16777216/4, 308, 0, 240, 228, 0, 160)
MCFG_SCREEN_UPDATE_DRIVER(gba_state, screen_update)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_DEFAULT_LAYOUT(layout_lcd)
MCFG_PALETTE_ADD("palette", 32768)
diff --git a/src/mess/drivers/geniusiq.c b/src/mess/drivers/geniusiq.c
index 7d60282ea57..3161200cece 100644
--- a/src/mess/drivers/geniusiq.c
+++ b/src/mess/drivers/geniusiq.c
@@ -810,6 +810,8 @@ static MACHINE_CONFIG_START( iq128, geniusiq_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-1)
MCFG_SCREEN_UPDATE_DRIVER( geniusiq_state, screen_update )
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD("palette", 16)
MCFG_PALETTE_INIT_OWNER(geniusiq_state, geniusiq)
@@ -845,7 +847,7 @@ static MACHINE_CONFIG_START( gl8008cx, gl8008cx_state )
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-1)
- MCFG_SCREEN_UPDATE_DRIVER( gl8008cx_state, screen_update )
+ MCFG_SCREEN_UPDATE_DRIVER( gl8008cx_state, screen_update )
MACHINE_CONFIG_END
/* ROM definition */
diff --git a/src/mess/drivers/gmaster.c b/src/mess/drivers/gmaster.c
index 08cc5a7e6d0..bc7835b83cd 100644
--- a/src/mess/drivers/gmaster.c
+++ b/src/mess/drivers/gmaster.c
@@ -298,6 +298,7 @@ static MACHINE_CONFIG_START( gmaster, gmaster_state )
MCFG_SCREEN_SIZE(64, 64)
MCFG_SCREEN_VISIBLE_AREA(0, 64-1-3, 0, 64-1)
MCFG_SCREEN_UPDATE_DRIVER(gmaster_state, screen_update_gmaster)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", sizeof(gmaster_palette)/sizeof(gmaster_palette[0]))
MCFG_PALETTE_INIT_OWNER(gmaster_state, gmaster)
diff --git a/src/mess/drivers/grfd2301.c b/src/mess/drivers/grfd2301.c
index a8aff5d9524..9dcd6451878 100644
--- a/src/mess/drivers/grfd2301.c
+++ b/src/mess/drivers/grfd2301.c
@@ -122,6 +122,8 @@ static MACHINE_CONFIG_START( grfd2301, grfd2301_state )
MCFG_SCREEN_UPDATE_DRIVER(grfd2301_state, screen_update)
MCFG_SCREEN_SIZE(640, 240)
MCFG_SCREEN_VISIBLE_AREA(0, 639, 0, 239)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
MACHINE_CONFIG_END
diff --git a/src/mess/drivers/hec2hrp.c b/src/mess/drivers/hec2hrp.c
index 8550fdab257..497abfc92b9 100644
--- a/src/mess/drivers/hec2hrp.c
+++ b/src/mess/drivers/hec2hrp.c
@@ -445,6 +445,7 @@ static MACHINE_CONFIG_START( hec2hr, hec2hrp_state )
MCFG_SCREEN_SIZE(512, 230)
MCFG_SCREEN_VISIBLE_AREA(0, 243, 0, 227)
MCFG_SCREEN_UPDATE_DRIVER(hec2hrp_state, screen_update_hec2hrp)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 16)
MCFG_VIDEO_START_OVERRIDE(hec2hrp_state,hec2hrp)
@@ -488,6 +489,7 @@ static MACHINE_CONFIG_START( hec2hrp, hec2hrp_state )
MCFG_SCREEN_SIZE(512, 230)
MCFG_SCREEN_VISIBLE_AREA(0, 243, 0, 227)
MCFG_SCREEN_UPDATE_DRIVER(hec2hrp_state, screen_update_hec2hrp)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 16)
MCFG_VIDEO_START_OVERRIDE(hec2hrp_state,hec2hrp)
@@ -543,6 +545,7 @@ static MACHINE_CONFIG_START( hec2mx40, hec2hrp_state )
MCFG_SCREEN_SIZE(512, 230)
MCFG_SCREEN_VISIBLE_AREA(0, 243, 0, 227)
MCFG_SCREEN_UPDATE_DRIVER(hec2hrp_state, screen_update_hec2hrp)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 16)
MCFG_VIDEO_START_OVERRIDE(hec2hrp_state,hec2hrp)
@@ -593,6 +596,7 @@ static MACHINE_CONFIG_START( hec2hrx, hec2hrp_state )
MCFG_SCREEN_SIZE(512, 230)
MCFG_SCREEN_VISIBLE_AREA(0, 243, 0, 227)
MCFG_SCREEN_UPDATE_DRIVER(hec2hrp_state, screen_update_hec2hrp)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 16)
MCFG_VIDEO_START_OVERRIDE(hec2hrp_state,hec2hrp)
@@ -640,6 +644,8 @@ static MACHINE_CONFIG_START( hec2mdhrx, hec2hrp_state )
MCFG_SCREEN_SIZE(512, 230)
MCFG_SCREEN_VISIBLE_AREA(0, 243, 0, 227)
MCFG_SCREEN_UPDATE_DRIVER(hec2hrp_state, screen_update_hec2hrp)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_VIDEO_START_OVERRIDE(hec2hrp_state,hec2hrp)
MCFG_PALETTE_ADD("palette", 16)
MCFG_VIDEO_START_OVERRIDE(hec2hrp_state,hec2hrp)
@@ -691,6 +697,7 @@ static MACHINE_CONFIG_START( hec2mx80, hec2hrp_state )
MCFG_SCREEN_SIZE(512, 230)
MCFG_SCREEN_VISIBLE_AREA(0, 243, 0, 227)
MCFG_SCREEN_UPDATE_DRIVER(hec2hrp_state, screen_update_hec2hrp)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 16)
MCFG_VIDEO_START_OVERRIDE(hec2hrp_state,hec2hrp)
diff --git a/src/mess/drivers/homelab.c b/src/mess/drivers/homelab.c
index 7f5decce481..00c3bded063 100644
--- a/src/mess/drivers/homelab.c
+++ b/src/mess/drivers/homelab.c
@@ -760,6 +760,8 @@ static MACHINE_CONFIG_START( homelab, homelab_state )
MCFG_SCREEN_VISIBLE_AREA(0, 40*8-1, 0, 25*8-1)
MCFG_VIDEO_START_OVERRIDE(homelab_state,homelab2)
MCFG_SCREEN_UPDATE_DRIVER(homelab_state, screen_update_homelab2)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", homelab)
MCFG_PALETTE_ADD_MONOCHROME_GREEN("palette")
@@ -789,6 +791,8 @@ static MACHINE_CONFIG_START( homelab3, homelab_state )
MCFG_SCREEN_VISIBLE_AREA(0, 64*8-1, 0, 32*8-1)
MCFG_VIDEO_START_OVERRIDE(homelab_state,homelab3)
MCFG_SCREEN_UPDATE_DRIVER(homelab_state, screen_update_homelab3)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", homelab)
MCFG_PALETTE_ADD_MONOCHROME_GREEN("palette")
@@ -818,6 +822,8 @@ static MACHINE_CONFIG_START( brailab4, homelab_state )
MCFG_SCREEN_VISIBLE_AREA(0, 64*8-1, 0, 32*8-1)
MCFG_VIDEO_START_OVERRIDE(homelab_state,brailab4)
MCFG_SCREEN_UPDATE_DRIVER(homelab_state, screen_update_homelab3)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", homelab)
MCFG_PALETTE_ADD_MONOCHROME_GREEN("palette")
diff --git a/src/mess/drivers/homez80.c b/src/mess/drivers/homez80.c
index 6937b35964e..62bba494564 100644
--- a/src/mess/drivers/homez80.c
+++ b/src/mess/drivers/homez80.c
@@ -292,6 +292,8 @@ static MACHINE_CONFIG_START( homez80, homez80_state )
MCFG_SCREEN_UPDATE_DRIVER(homez80_state, screen_update)
MCFG_SCREEN_SIZE(344, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0, 344-1, 0, 32*8-1)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", homez80 )
MACHINE_CONFIG_END
diff --git a/src/mess/drivers/hp48.c b/src/mess/drivers/hp48.c
index 1f72e352016..eb519c457f0 100644
--- a/src/mess/drivers/hp48.c
+++ b/src/mess/drivers/hp48.c
@@ -946,6 +946,7 @@ static MACHINE_CONFIG_START( hp48_common, hp48_state )
MCFG_SCREEN_SIZE ( 131, 64 )
MCFG_SCREEN_VISIBLE_AREA( 0, 130, 0, 63 )
MCFG_SCREEN_UPDATE_DRIVER(hp48_state, screen_update_hp48)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD( "palette", 256 ) /* monochrome, but with varying contrast and grayscale */
MCFG_PALETTE_INIT_OWNER(hp48_state, hp48)
diff --git a/src/mess/drivers/hp9k.c b/src/mess/drivers/hp9k.c
index 6467d946ef6..d614df0e13d 100644
--- a/src/mess/drivers/hp9k.c
+++ b/src/mess/drivers/hp9k.c
@@ -416,8 +416,8 @@ static MACHINE_CONFIG_START( hp9k, hp9k_state )
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
MCFG_SCREEN_SIZE(HP9816_ROWX*HP9816_CHDIMX, HP9816_ROWY*HP9816_CHDIMY)
MCFG_SCREEN_VISIBLE_AREA(0, (HP9816_ROWX*HP9816_CHDIMX)-1, 0, (HP9816_ROWY*HP9816_CHDIMY)-1)
-
MCFG_SCREEN_UPDATE_DRIVER(hp9k_state, screen_update)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", hp9k)
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/hprot1.c b/src/mess/drivers/hprot1.c
index 724c5fcfe71..fd6f401ac71 100644
--- a/src/mess/drivers/hprot1.c
+++ b/src/mess/drivers/hprot1.c
@@ -244,6 +244,8 @@ static MACHINE_CONFIG_START( hprot1, hprot1_state )
MCFG_SCREEN_UPDATE_DEVICE("hd44780", hd44780_device, screen_update)
MCFG_SCREEN_SIZE(6*16, 9*2)
MCFG_SCREEN_VISIBLE_AREA(0, 6*16-1, 0, 9*2-1)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_DEFAULT_LAYOUT(layout_lcd)
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(hprot1_state, hprot1)
diff --git a/src/mess/drivers/hunter2.c b/src/mess/drivers/hunter2.c
index 23b379a1d58..1ad4f8c5e96 100644
--- a/src/mess/drivers/hunter2.c
+++ b/src/mess/drivers/hunter2.c
@@ -400,6 +400,8 @@ static MACHINE_CONFIG_START( hunter2, hunter2_state )
MCFG_SCREEN_UPDATE_DEVICE("lcdc", hd61830_device, screen_update)
MCFG_SCREEN_SIZE(240, 128)
MCFG_SCREEN_VISIBLE_AREA(0, 239, 0, 63)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_DEFAULT_LAYOUT(layout_lcd)
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(hunter2_state, hunter2)
diff --git a/src/mess/drivers/hx20.c b/src/mess/drivers/hx20.c
index 56ee88c4fc8..c003fd8d855 100644
--- a/src/mess/drivers/hx20.c
+++ b/src/mess/drivers/hx20.c
@@ -832,8 +832,11 @@ static MACHINE_CONFIG_START( hx20, hx20_state )
MCFG_SCREEN_SIZE(120, 32)
MCFG_SCREEN_VISIBLE_AREA(0, 120-1, 0, 32-1)
MCFG_SCREEN_UPDATE_DRIVER(hx20_state, screen_update)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(hx20_state, hx20)
+
MCFG_UPD7227_ADD(UPD7227_0_TAG, 0, 0)
MCFG_UPD7227_ADD(UPD7227_1_TAG, 40, 0)
MCFG_UPD7227_ADD(UPD7227_2_TAG, 80, 0)
diff --git a/src/mess/drivers/ibm6580.c b/src/mess/drivers/ibm6580.c
index c77b74573b5..9acd539cb6a 100644
--- a/src/mess/drivers/ibm6580.c
+++ b/src/mess/drivers/ibm6580.c
@@ -82,6 +82,8 @@ static MACHINE_CONFIG_START( ibm6580, ibm6580_state )
MCFG_SCREEN_UPDATE_DRIVER(ibm6580_state, screen_update)
MCFG_SCREEN_SIZE(640, 240)
MCFG_SCREEN_VISIBLE_AREA(0, 639, 0, 239)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD("palette", 3)
MCFG_PALETTE_INIT_OWNER(ibm6580_state, ibm6580)
MACHINE_CONFIG_END
diff --git a/src/mess/drivers/ie15.c b/src/mess/drivers/ie15.c
index 8215a532880..2eea54fee74 100644
--- a/src/mess/drivers/ie15.c
+++ b/src/mess/drivers/ie15.c
@@ -633,7 +633,9 @@ static MACHINE_CONFIG_START( ie15, ie15_state )
MCFG_SCREEN_RAW_PARAMS(XTAL_30_8MHz/2,IE15_TOTAL_HORZ,IE15_HORZ_START,
IE15_HORZ_START+IE15_DISP_HORZ,IE15_TOTAL_VERT,IE15_VERT_START,
IE15_VERT_START+IE15_DISP_VERT);
- MCFG_GFXDECODE_ADD("gfxdecode", ie15)
+ MCFG_SCREEN_PALETTE("palette")
+
+ MCFG_GFXDECODE_ADD("gfxdecode", ie15)
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(ie15_state, ie15)
diff --git a/src/mess/drivers/interact.c b/src/mess/drivers/interact.c
index 40d39fe8c0e..e48e6998634 100644
--- a/src/mess/drivers/interact.c
+++ b/src/mess/drivers/interact.c
@@ -154,6 +154,7 @@ static MACHINE_CONFIG_START( interact, interact_state )
MCFG_SCREEN_SIZE(256, 79)
MCFG_SCREEN_VISIBLE_AREA(0, 112, 0, 77)
MCFG_SCREEN_UPDATE_DRIVER(interact_state, screen_update_interact)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 16) /* 8 colours, but only 4 at a time*/
@@ -196,6 +197,7 @@ static MACHINE_CONFIG_START( hector1, interact_state )
MCFG_SCREEN_SIZE(256, 79)
MCFG_SCREEN_VISIBLE_AREA(0, 112, 0, 77)
MCFG_SCREEN_UPDATE_DRIVER(interact_state, screen_update_interact)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 16) /* 8 colours, but only 4 at a time*/
diff --git a/src/mess/drivers/intv.c b/src/mess/drivers/intv.c
index 8597b7497c9..d04679ec0b8 100644
--- a/src/mess/drivers/intv.c
+++ b/src/mess/drivers/intv.c
@@ -816,7 +816,8 @@ static MACHINE_CONFIG_START( intv, intv_state )
MCFG_SCREEN_UPDATE_DRIVER(intv_state, screen_update_intv)
MCFG_SCREEN_SIZE((STIC_OVERSCAN_LEFT_WIDTH+STIC_BACKTAB_WIDTH*STIC_CARD_WIDTH-1+STIC_OVERSCAN_RIGHT_WIDTH)*STIC_X_SCALE*INTV_X_SCALE, (STIC_OVERSCAN_TOP_HEIGHT+STIC_BACKTAB_HEIGHT*STIC_CARD_HEIGHT+STIC_OVERSCAN_BOTTOM_HEIGHT)*STIC_Y_SCALE*INTV_Y_SCALE)
MCFG_SCREEN_VISIBLE_AREA(0, (STIC_OVERSCAN_LEFT_WIDTH+STIC_BACKTAB_WIDTH*STIC_CARD_WIDTH-1+STIC_OVERSCAN_RIGHT_WIDTH)*STIC_X_SCALE*INTV_X_SCALE-1, 0, (STIC_OVERSCAN_TOP_HEIGHT+STIC_BACKTAB_HEIGHT*STIC_CARD_HEIGHT+STIC_OVERSCAN_BOTTOM_HEIGHT)*STIC_Y_SCALE*INTV_Y_SCALE-1)
-
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD("palette", 0x400)
MCFG_PALETTE_INDIRECT_ENTRIES(32)
MCFG_PALETTE_INIT_OWNER(intv_state, intv)
diff --git a/src/mess/drivers/ip20.c b/src/mess/drivers/ip20.c
index 04a6770f4b8..b74f49e8ec2 100644
--- a/src/mess/drivers/ip20.c
+++ b/src/mess/drivers/ip20.c
@@ -602,6 +602,7 @@ static MACHINE_CONFIG_START( ip204415, ip20_state )
MCFG_SCREEN_SIZE(800, 600)
MCFG_SCREEN_VISIBLE_AREA(0, 799, 0, 599)
MCFG_SCREEN_UPDATE_DRIVER(ip20_state, screen_update_ip204415)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 65536)
diff --git a/src/mess/drivers/iq151.c b/src/mess/drivers/iq151.c
index ff53a8ca15d..3546f3e47f5 100644
--- a/src/mess/drivers/iq151.c
+++ b/src/mess/drivers/iq151.c
@@ -433,6 +433,8 @@ static MACHINE_CONFIG_START( iq151, iq151_state )
MCFG_SCREEN_UPDATE_DRIVER(iq151_state, screen_update)
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0, 32*8-1, 0, 32*8-1)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD_MONOCHROME_GREEN("palette")
/* sound hardware */
diff --git a/src/mess/drivers/irisha.c b/src/mess/drivers/irisha.c
index 481c82e2360..01bed74936d 100644
--- a/src/mess/drivers/irisha.c
+++ b/src/mess/drivers/irisha.c
@@ -406,6 +406,8 @@ static MACHINE_CONFIG_START( irisha, irisha_state )
MCFG_SCREEN_SIZE(320, 200)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 200-1)
MCFG_SCREEN_UPDATE_DRIVER(irisha_state, screen_update_irisha)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", irisha)
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/itt3030.c b/src/mess/drivers/itt3030.c
index 917f851b1f7..689e9ca6c33 100644
--- a/src/mess/drivers/itt3030.c
+++ b/src/mess/drivers/itt3030.c
@@ -612,6 +612,7 @@ static MACHINE_CONFIG_START( itt3030, itt3030_state )
MCFG_SCREEN_UPDATE_DRIVER(itt3030_state, screen_update)
MCFG_SCREEN_SIZE(80*8, 24*16)
MCFG_SCREEN_VISIBLE_AREA(0, 80*8-1, 0, 24*16-1)
+ MCFG_SCREEN_PALETTE("palette")
/* devices */
MCFG_DEVICE_ADD("lowerbank", ADDRESS_MAP_BANK, 0)
diff --git a/src/mess/drivers/jonos.c b/src/mess/drivers/jonos.c
index 0bc8a8a9422..b246397fe11 100644
--- a/src/mess/drivers/jonos.c
+++ b/src/mess/drivers/jonos.c
@@ -130,6 +130,8 @@ static MACHINE_CONFIG_START( jonos, jonos_state )
MCFG_SCREEN_UPDATE_DRIVER(jonos_state, screen_update)
MCFG_SCREEN_SIZE(640, 300)
MCFG_SCREEN_VISIBLE_AREA(0, 639, 0, 299)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", jonos)
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
MACHINE_CONFIG_END
diff --git a/src/mess/drivers/jr100.c b/src/mess/drivers/jr100.c
index d7d1f424866..fecc2f4fe1e 100644
--- a/src/mess/drivers/jr100.c
+++ b/src/mess/drivers/jr100.c
@@ -383,6 +383,7 @@ static MACHINE_CONFIG_START( jr100, jr100_state )
MCFG_SCREEN_SIZE(256, 192) /* border size not accurate */
MCFG_SCREEN_VISIBLE_AREA(0, 256 - 1, 0, 192 - 1)
MCFG_SCREEN_UPDATE_DRIVER(jr100_state, screen_update_jr100)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", jr100)
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/jr200.c b/src/mess/drivers/jr200.c
index f8120b83b7a..a806cb7f4f7 100644
--- a/src/mess/drivers/jr200.c
+++ b/src/mess/drivers/jr200.c
@@ -556,6 +556,7 @@ static MACHINE_CONFIG_START( jr200, jr200_state )
MCFG_SCREEN_SIZE(16 + 256 + 16, 16 + 192 + 16) /* border size not accurate */
MCFG_SCREEN_VISIBLE_AREA(0, 16 + 256 + 16 - 1, 0, 16 + 192 + 16 - 1)
MCFG_SCREEN_UPDATE_DRIVER(jr200_state, screen_update_jr200)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", jr200)
MCFG_PALETTE_ADD("palette", 8)
diff --git a/src/mess/drivers/jtc.c b/src/mess/drivers/jtc.c
index 4d6486d4056..a9260417cdc 100644
--- a/src/mess/drivers/jtc.c
+++ b/src/mess/drivers/jtc.c
@@ -755,6 +755,7 @@ static MACHINE_CONFIG_DERIVED( jtc, basic )
MCFG_SCREEN_UPDATE_DRIVER(jtc_state, screen_update)
MCFG_SCREEN_SIZE(64, 64)
MCFG_SCREEN_VISIBLE_AREA(0, 64-1, 0, 64-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
@@ -785,6 +786,7 @@ static MACHINE_CONFIG_DERIVED_CLASS( jtces23, basic, jtces23_state )
MCFG_SCREEN_UPDATE_DRIVER(jtc_state, screen_update)
MCFG_SCREEN_SIZE(128, 128)
MCFG_SCREEN_VISIBLE_AREA(0, 128-1, 0, 128-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", jtces23)
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
@@ -806,6 +808,7 @@ static MACHINE_CONFIG_DERIVED_CLASS( jtces40, basic, jtces40_state )
MCFG_SCREEN_UPDATE_DRIVER(jtc_state, screen_update)
MCFG_SCREEN_SIZE(320, 192)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 192-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", jtces40)
MCFG_PALETTE_ADD("palette", 16)
diff --git a/src/mess/drivers/jupiter.c b/src/mess/drivers/jupiter.c
index 6601c56edcc..1ef238eced3 100644
--- a/src/mess/drivers/jupiter.c
+++ b/src/mess/drivers/jupiter.c
@@ -289,6 +289,9 @@ static MACHINE_CONFIG_START( jupiter3, jupiter3_state )
MCFG_SCREEN_UPDATE_DRIVER(jupiter3_state, screen_update)
MCFG_SCREEN_SIZE(512, 320)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 320-1)
+ MCFG_SCREEN_PALETTE("palette")
+
+
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
// devices
diff --git a/src/mess/drivers/k8915.c b/src/mess/drivers/k8915.c
index 55d405d5205..e6e06332e39 100644
--- a/src/mess/drivers/k8915.c
+++ b/src/mess/drivers/k8915.c
@@ -167,6 +167,8 @@ static MACHINE_CONFIG_START( k8915, k8915_state )
MCFG_SCREEN_UPDATE_DRIVER(k8915_state, screen_update)
MCFG_SCREEN_SIZE(640, 250)
MCFG_SCREEN_VISIBLE_AREA(0, 639, 0, 249)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD_MONOCHROME_GREEN("palette")
MCFG_ASCII_KEYBOARD_ADD(KEYBOARD_TAG, keyboard_intf)
diff --git a/src/mess/drivers/kaypro.c b/src/mess/drivers/kaypro.c
index fc7899bcc31..d4189e24b60 100644
--- a/src/mess/drivers/kaypro.c
+++ b/src/mess/drivers/kaypro.c
@@ -209,6 +209,8 @@ static MACHINE_CONFIG_START( kayproii, kaypro_state )
MCFG_SCREEN_VISIBLE_AREA(0,80*7-1,0,24*10-1)
MCFG_VIDEO_START_OVERRIDE(kaypro_state, kaypro )
MCFG_SCREEN_UPDATE_DRIVER(kaypro_state, screen_update_kayproii)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", kayproii)
MCFG_PALETTE_ADD_MONOCHROME_GREEN("palette")
@@ -262,7 +264,8 @@ static MACHINE_CONFIG_START( kaypro2x, kaypro_state )
MCFG_SCREEN_SIZE(80*8, 25*16)
MCFG_SCREEN_VISIBLE_AREA(0,80*8-1,0,25*16-1)
MCFG_VIDEO_START_OVERRIDE(kaypro_state, kaypro )
- MCFG_SCREEN_UPDATE_DRIVER(kaypro_state, screen_update_kaypro2x)
+ MCFG_SCREEN_UPDATE_DRIVER(kaypro_state, screen_update_kaypro2x)
+
MCFG_GFXDECODE_ADD("gfxdecode", kaypro2x)
MCFG_PALETTE_ADD("palette", 3)
MCFG_PALETTE_INIT_OWNER(kaypro_state,kaypro)
diff --git a/src/mess/drivers/kc.c b/src/mess/drivers/kc.c
index 3201cfffdad..dfdaa63e6da 100644
--- a/src/mess/drivers/kc.c
+++ b/src/mess/drivers/kc.c
@@ -142,6 +142,7 @@ static MACHINE_CONFIG_START( kc85_3, kc_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(XTAL_28_37516MHz/2, 908, 0, 320, 312, 0, 256)
MCFG_SCREEN_UPDATE_DRIVER(kc_state, screen_update)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", kc_state, kc_scanline, "screen", 0, 1)
MCFG_PALETTE_ADD("palette", KC85_PALETTE_SIZE)
@@ -194,6 +195,7 @@ static MACHINE_CONFIG_START( kc85_4, kc85_4_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(XTAL_28_37516MHz/2, 908, 0, 320, 312, 0, 256)
MCFG_SCREEN_UPDATE_DRIVER(kc85_4_state, screen_update)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", kc85_4_state, kc_scanline, "screen", 0, 1)
MCFG_PALETTE_ADD("palette", KC85_PALETTE_SIZE)
diff --git a/src/mess/drivers/konin.c b/src/mess/drivers/konin.c
index a47a2158161..46ff0182510 100644
--- a/src/mess/drivers/konin.c
+++ b/src/mess/drivers/konin.c
@@ -89,6 +89,8 @@ static MACHINE_CONFIG_START( konin, konin_state )
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
MCFG_SCREEN_UPDATE_DRIVER(konin_state, screen_update_konin)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
MACHINE_CONFIG_END
diff --git a/src/mess/drivers/kramermc.c b/src/mess/drivers/kramermc.c
index 10c3d39b818..d5341da2020 100644
--- a/src/mess/drivers/kramermc.c
+++ b/src/mess/drivers/kramermc.c
@@ -119,6 +119,7 @@ static MACHINE_CONFIG_START( kramermc, kramermc_state )
MCFG_SCREEN_SIZE(64*8, 16*8)
MCFG_SCREEN_VISIBLE_AREA(0, 64*8-1, 0, 16*8-1)
MCFG_SCREEN_UPDATE_DRIVER(kramermc_state, screen_update_kramermc)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", kramermc )
diff --git a/src/mess/drivers/lcmate2.c b/src/mess/drivers/lcmate2.c
index d53bced8526..1ce13a05e96 100644
--- a/src/mess/drivers/lcmate2.c
+++ b/src/mess/drivers/lcmate2.c
@@ -240,6 +240,8 @@ static MACHINE_CONFIG_START( lcmate2, lcmate2_state )
MCFG_SCREEN_UPDATE_DEVICE("hd44780", hd44780_device, screen_update)
MCFG_SCREEN_SIZE(120, 18)
MCFG_SCREEN_VISIBLE_AREA(0, 120-1, 0, 18-1)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(lcmate2_state, lcmate2)
MCFG_DEFAULT_LAYOUT(layout_lcd)
diff --git a/src/mess/drivers/lisa.c b/src/mess/drivers/lisa.c
index 8d256191a8d..a2e8c649c12 100644
--- a/src/mess/drivers/lisa.c
+++ b/src/mess/drivers/lisa.c
@@ -151,6 +151,7 @@ static MACHINE_CONFIG_START( lisa, lisa_state )
MCFG_SCREEN_SIZE(880, 380)
MCFG_SCREEN_VISIBLE_AREA(0, 720-1, 0, 364-1)
MCFG_SCREEN_UPDATE_DRIVER(lisa_state, screen_update_lisa)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/llc.c b/src/mess/drivers/llc.c
index f6475f15514..af56492c65a 100644
--- a/src/mess/drivers/llc.c
+++ b/src/mess/drivers/llc.c
@@ -216,6 +216,8 @@ static MACHINE_CONFIG_START( llc1, llc_state )
MCFG_SCREEN_SIZE(64*8, 16*8)
MCFG_SCREEN_VISIBLE_AREA(0, 64*8-1, 0, 16*8-1)
MCFG_SCREEN_UPDATE_DRIVER(llc_state, screen_update_llc1)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", llc1)
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
MCFG_DEFAULT_LAYOUT(layout_llc1)
@@ -242,6 +244,8 @@ static MACHINE_CONFIG_START( llc2, llc_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0, 64*8-1, 0, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(llc_state, screen_update_llc2)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", llc2)
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/lviv.c b/src/mess/drivers/lviv.c
index b88fc17a612..29a1ec5f2a8 100644
--- a/src/mess/drivers/lviv.c
+++ b/src/mess/drivers/lviv.c
@@ -446,6 +446,7 @@ static MACHINE_CONFIG_START( lviv, lviv_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 0, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(lviv_state, screen_update_lviv)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", sizeof (lviv_palette) / 3)
MCFG_PALETTE_INIT_OWNER(lviv_state, lviv)
diff --git a/src/mess/drivers/lynx.c b/src/mess/drivers/lynx.c
index 2ed2030acae..060bbbefba3 100644
--- a/src/mess/drivers/lynx.c
+++ b/src/mess/drivers/lynx.c
@@ -85,6 +85,7 @@ static MACHINE_CONFIG_START( lynx, lynx_state )
MCFG_SCREEN_UPDATE_DRIVER(lynx_state, screen_update)
MCFG_SCREEN_SIZE(160, 102)
MCFG_SCREEN_VISIBLE_AREA(0, 160-1, 0, 102-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_DEFAULT_LAYOUT(layout_lynx)
MCFG_PALETTE_ADD("palette", 0x1000)
diff --git a/src/mess/drivers/m79152pc.c b/src/mess/drivers/m79152pc.c
index c54629b210d..711f50f765e 100644
--- a/src/mess/drivers/m79152pc.c
+++ b/src/mess/drivers/m79152pc.c
@@ -122,6 +122,7 @@ static MACHINE_CONFIG_START( m79152pc, m79152pc_state )
MCFG_SCREEN_SIZE(640, 300)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 300-1)
MCFG_SCREEN_UPDATE_DRIVER(m79152pc_state, screen_update_m79152pc)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", m79152pc)
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
MACHINE_CONFIG_END
diff --git a/src/mess/drivers/mac.c b/src/mess/drivers/mac.c
index a7f59e27ee8..810e3c49175 100644
--- a/src/mess/drivers/mac.c
+++ b/src/mess/drivers/mac.c
@@ -933,6 +933,7 @@ static MACHINE_CONFIG_START( mac512ke, mac_state )
MCFG_SCREEN_SIZE(MAC_H_TOTAL, MAC_V_TOTAL)
MCFG_SCREEN_VISIBLE_AREA(0, MAC_H_VIS-1, 0, MAC_V_VIS-1)
MCFG_SCREEN_UPDATE_DRIVER(mac_state, screen_update_mac)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(mac_state,mac)
@@ -1058,6 +1059,7 @@ static MACHINE_CONFIG_START( macprtb, mac_state )
MCFG_SCREEN_SIZE(700, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 639, 0, 399)
MCFG_SCREEN_UPDATE_DRIVER(mac_state, screen_update_macprtb)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(mac_state,mac)
@@ -1411,6 +1413,7 @@ static MACHINE_CONFIG_START( macse30, mac_state )
MCFG_SCREEN_SIZE(MAC_H_TOTAL, MAC_V_TOTAL)
MCFG_SCREEN_VISIBLE_AREA(0, MAC_H_VIS-1, 0, MAC_V_VIS-1)
MCFG_SCREEN_UPDATE_DRIVER(mac_state, screen_update_macse30)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(mac_state,mac)
@@ -1475,6 +1478,7 @@ static MACHINE_CONFIG_START( macpb140, mac_state )
MCFG_SCREEN_SIZE(700, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 639, 0, 399)
MCFG_SCREEN_UPDATE_DRIVER(mac_state, screen_update_macpb140)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(mac_state,mac)
@@ -1555,6 +1559,7 @@ static MACHINE_CONFIG_START( macpb160, mac_state )
MCFG_SCREEN_SIZE(700, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 639, 0, 399)
MCFG_SCREEN_UPDATE_DRIVER(mac_state, screen_update_macpb160)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 16)
MCFG_PALETTE_INIT_OWNER(mac_state,macgsc)
@@ -1619,6 +1624,7 @@ static MACHINE_CONFIG_DERIVED( macpb180c, macpb160 )
MCFG_SCREEN_SIZE(800, 525)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
MCFG_SCREEN_UPDATE_DRIVER(mac_state, screen_update_macpbwd)
+ MCFG_SCREEN_NO_PALETTE
MCFG_RAM_MODIFY(RAM_TAG)
MCFG_RAM_DEFAULT_SIZE("4M")
@@ -1683,7 +1689,7 @@ static MACHINE_CONFIG_DERIVED( maciici, macii )
MCFG_SCREEN_RAW_PARAMS(25175000, 800, 0, 640, 525, 0, 480)
MCFG_SCREEN_SIZE(640, 870)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
- MCFG_SCREEN_UPDATE_DRIVER(mac_state, screen_update_macrbv)
+ MCFG_SCREEN_UPDATE_DRIVER(mac_state, screen_update_macrbv)
MCFG_DEFAULT_LAYOUT(layout_mac)
/* internal ram */
@@ -1809,7 +1815,7 @@ static MACHINE_CONFIG_START( macqd700, mac_state )
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(1260))
MCFG_SCREEN_SIZE(1152, 870)
MCFG_SCREEN_VISIBLE_AREA(0, 1152-1, 0, 870-1)
- MCFG_SCREEN_UPDATE_DRIVER(mac_state, screen_update_macdafb)
+ MCFG_SCREEN_UPDATE_DRIVER(mac_state, screen_update_macdafb)
MCFG_VIDEO_START_OVERRIDE(mac_state,macdafb)
MCFG_VIDEO_RESET_OVERRIDE(mac_state,macdafb)
diff --git a/src/mess/drivers/macpci.c b/src/mess/drivers/macpci.c
index af1e2e10ba1..e4c7cf26c48 100644
--- a/src/mess/drivers/macpci.c
+++ b/src/mess/drivers/macpci.c
@@ -104,6 +104,7 @@ static MACHINE_CONFIG_START( pippin, macpci_state )
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
MCFG_SCREEN_UPDATE_DRIVER(macpci_state, screen_update_pippin)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/mbc200.c b/src/mess/drivers/mbc200.c
index e2d347fc1e5..a274a2459c7 100644
--- a/src/mess/drivers/mbc200.c
+++ b/src/mess/drivers/mbc200.c
@@ -270,6 +270,8 @@ static MACHINE_CONFIG_START( mbc200, mbc200_state )
MCFG_SCREEN_SIZE(640, 400)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 400-1)
MCFG_SCREEN_UPDATE_DRIVER(mbc200_state, screen_update_mbc200)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", mbc200)
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/mc80.c b/src/mess/drivers/mc80.c
index f0ffa655137..06f89648bf5 100644
--- a/src/mess/drivers/mc80.c
+++ b/src/mess/drivers/mc80.c
@@ -173,6 +173,8 @@ static MACHINE_CONFIG_START( mc8020, mc80_state )
MCFG_SCREEN_VISIBLE_AREA(0, 32*6-1, 0, 16*8-1)
MCFG_VIDEO_START_OVERRIDE(mc80_state,mc8020)
MCFG_SCREEN_UPDATE_DRIVER(mc80_state, screen_update_mc8020)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
/* Devices */
@@ -198,6 +200,8 @@ static MACHINE_CONFIG_START( mc8030, mc80_state )
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-1)
MCFG_VIDEO_START_OVERRIDE(mc80_state,mc8030)
MCFG_SCREEN_UPDATE_DRIVER(mc80_state, screen_update_mc8030)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
/* Devices */
diff --git a/src/mess/drivers/mes.c b/src/mess/drivers/mes.c
index e15a1c9cefc..f822ef2f88a 100644
--- a/src/mess/drivers/mes.c
+++ b/src/mess/drivers/mes.c
@@ -116,6 +116,8 @@ static MACHINE_CONFIG_START( mes, mes_state )
MCFG_SCREEN_UPDATE_DRIVER(mes_state, screen_update)
MCFG_SCREEN_SIZE(640, 250)
MCFG_SCREEN_VISIBLE_AREA(0, 639, 0, 249)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
MACHINE_CONFIG_END
diff --git a/src/mess/drivers/micronic.c b/src/mess/drivers/micronic.c
index 67aac409c30..c83ee8c5890 100644
--- a/src/mess/drivers/micronic.c
+++ b/src/mess/drivers/micronic.c
@@ -368,6 +368,7 @@ static MACHINE_CONFIG_START( micronic, micronic_state )
MCFG_SCREEN_UPDATE_DEVICE(HD61830_TAG, hd61830_device, screen_update)
MCFG_SCREEN_SIZE(120, 64) //6x20, 8x8
MCFG_SCREEN_VISIBLE_AREA(0, 120-1, 0, 64-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_DEFAULT_LAYOUT(layout_lcd)
diff --git a/src/mess/drivers/microtan.c b/src/mess/drivers/microtan.c
index 421b0c9ac75..74e250c376f 100644
--- a/src/mess/drivers/microtan.c
+++ b/src/mess/drivers/microtan.c
@@ -228,6 +228,7 @@ static MACHINE_CONFIG_START( microtan, microtan_state )
MCFG_SCREEN_SIZE(32*8, 16*16)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*16, 16*16-1)
MCFG_SCREEN_UPDATE_DRIVER(microtan_state, screen_update_microtan)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", microtan)
diff --git a/src/mess/drivers/microvsn.c b/src/mess/drivers/microvsn.c
index ac56206472a..dbe6d43013c 100644
--- a/src/mess/drivers/microvsn.c
+++ b/src/mess/drivers/microvsn.c
@@ -654,6 +654,7 @@ static MACHINE_CONFIG_START( microvision, microvision_state )
MCFG_SCREEN_VBLANK_DRIVER(microvision_state, screen_vblank)
MCFG_SCREEN_SIZE(16, 16)
MCFG_SCREEN_VISIBLE_AREA(0, 15, 0, 15)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 16)
MCFG_PALETTE_INIT_OWNER(microvision_state,microvision)
diff --git a/src/mess/drivers/mikro80.c b/src/mess/drivers/mikro80.c
index 9a2a2850308..cada431dbaa 100644
--- a/src/mess/drivers/mikro80.c
+++ b/src/mess/drivers/mikro80.c
@@ -182,6 +182,7 @@ static MACHINE_CONFIG_START( mikro80, mikro80_state )
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0, 64*8-1, 0, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(mikro80_state, screen_update_mikro80)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", mikro80)
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/mk85.c b/src/mess/drivers/mk85.c
index dc5ffa142da..36e5b6ce4bb 100644
--- a/src/mess/drivers/mk85.c
+++ b/src/mess/drivers/mk85.c
@@ -73,6 +73,8 @@ static MACHINE_CONFIG_START( mk85, mk85_state )
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
MCFG_SCREEN_UPDATE_DRIVER(mk85_state, screen_update_mk85)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
MACHINE_CONFIG_END
diff --git a/src/mess/drivers/mk90.c b/src/mess/drivers/mk90.c
index 875588140fc..5a561ebc3b8 100644
--- a/src/mess/drivers/mk90.c
+++ b/src/mess/drivers/mk90.c
@@ -78,6 +78,8 @@ static MACHINE_CONFIG_START( mk90, mk90_state )
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
MCFG_SCREEN_UPDATE_DRIVER(mk90_state, screen_update_mk90)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
MACHINE_CONFIG_END
diff --git a/src/mess/drivers/mmodular.c b/src/mess/drivers/mmodular.c
index 20f3169922c..746c349116b 100644
--- a/src/mess/drivers/mmodular.c
+++ b/src/mess/drivers/mmodular.c
@@ -1521,6 +1521,7 @@ static MACHINE_CONFIG_FRAGMENT ( chess_common )
MCFG_SCREEN_SIZE(100, 22)
MCFG_SCREEN_VISIBLE_AREA(0, 100-1, 0, 22-3)
MCFG_SCREEN_UPDATE_DEVICE("hd44780", hd44780_device, screen_update)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(polgar_state,chess_lcd)
MCFG_QUANTUM_TIME(attotime::from_hz(60))
diff --git a/src/mess/drivers/modellot.c b/src/mess/drivers/modellot.c
index e6a146926c9..787af5ebfc2 100644
--- a/src/mess/drivers/modellot.c
+++ b/src/mess/drivers/modellot.c
@@ -166,6 +166,8 @@ static MACHINE_CONFIG_START( modellot, modellot_state )
MCFG_SCREEN_SIZE(64*8, 16*16)
MCFG_SCREEN_VISIBLE_AREA(0, 64*8-1, 0, 16*16-1)
MCFG_SCREEN_UPDATE_DRIVER(modellot_state, screen_update_modellot)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", modellot )
MCFG_PALETTE_ADD_MONOCHROME_GREEN("palette")
diff --git a/src/mess/drivers/molecular.c b/src/mess/drivers/molecular.c
index 0f85ab67416..8d097ce65e6 100644
--- a/src/mess/drivers/molecular.c
+++ b/src/mess/drivers/molecular.c
@@ -306,6 +306,7 @@ static MACHINE_CONFIG_START( molecula, molecula_state )
MCFG_SCREEN_UPDATE_DRIVER(molecula_state, screen_update)
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", molecula)
diff --git a/src/mess/drivers/ms0515.c b/src/mess/drivers/ms0515.c
index 67dea5d0316..ef9b8447275 100644
--- a/src/mess/drivers/ms0515.c
+++ b/src/mess/drivers/ms0515.c
@@ -264,6 +264,7 @@ static MACHINE_CONFIG_START( ms0515, ms0515_state )
MCFG_SCREEN_SIZE(640, 200)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 200-1)
MCFG_SCREEN_UPDATE_DRIVER(ms0515_state, screen_update_ms0515)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 16)
MCFG_PALETTE_INIT_OWNER(ms0515_state, ms0515)
diff --git a/src/mess/drivers/mstation.c b/src/mess/drivers/mstation.c
index 11fd04ee215..fb963ea2764 100644
--- a/src/mess/drivers/mstation.c
+++ b/src/mess/drivers/mstation.c
@@ -526,6 +526,7 @@ static MACHINE_CONFIG_START( mstation, mstation_state )
MCFG_SCREEN_UPDATE_DRIVER(mstation_state, screen_update)
MCFG_SCREEN_SIZE(320, 128)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 128-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(mstation_state, mstation)
diff --git a/src/mess/drivers/multi16.c b/src/mess/drivers/multi16.c
index 987c49ad2dd..213e1fb522c 100644
--- a/src/mess/drivers/multi16.c
+++ b/src/mess/drivers/multi16.c
@@ -170,6 +170,8 @@ static MACHINE_CONFIG_START( multi16, multi16_state )
MCFG_SCREEN_SIZE(640, 200)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 200-1)
MCFG_SCREEN_UPDATE_DRIVER(multi16_state, screen_update_multi16)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD("palette", 8)
/* Devices */
diff --git a/src/mess/drivers/multi8.c b/src/mess/drivers/multi8.c
index d0e93261cbf..5c5dcc93961 100644
--- a/src/mess/drivers/multi8.c
+++ b/src/mess/drivers/multi8.c
@@ -673,6 +673,8 @@ static MACHINE_CONFIG_START( multi8, multi8_state )
MCFG_SCREEN_SIZE(640, 200)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 200-1)
MCFG_SCREEN_UPDATE_DRIVER(multi8_state, screen_update_multi8)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD("palette", 8)
MCFG_PALETTE_INIT_OWNER(multi8_state, multi8)
MCFG_GFXDECODE_ADD("gfxdecode", multi8)
diff --git a/src/mess/drivers/myb3k.c b/src/mess/drivers/myb3k.c
index 3d0d0f4d8b6..2039d27bec2 100644
--- a/src/mess/drivers/myb3k.c
+++ b/src/mess/drivers/myb3k.c
@@ -285,6 +285,8 @@ static MACHINE_CONFIG_START( myb3k, myb3k_state )
MCFG_SCREEN_SIZE(320, 200)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 200-1)
MCFG_SCREEN_UPDATE_DRIVER(myb3k_state, screen_update_myb3k)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", myb3k)
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/mz2000.c b/src/mess/drivers/mz2000.c
index 1f09ec7ef6f..4b18b8f4aaf 100644
--- a/src/mess/drivers/mz2000.c
+++ b/src/mess/drivers/mz2000.c
@@ -868,6 +868,7 @@ static MACHINE_CONFIG_START( mz2000, mz2000_state )
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 400-1)
MCFG_SCREEN_UPDATE_DRIVER(mz2000_state, screen_update_mz2000)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", mz2000)
MCFG_PALETTE_ADD("palette", 8)
diff --git a/src/mess/drivers/mz2500.c b/src/mess/drivers/mz2500.c
index 2aa2048fe35..7da7effb3a6 100644
--- a/src/mess/drivers/mz2500.c
+++ b/src/mess/drivers/mz2500.c
@@ -2148,6 +2148,7 @@ static MACHINE_CONFIG_START( mz2500, mz2500_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(XTAL_21_4772MHz, 640+108, 0, 640, 480, 0, 200) //unknown clock / divider
MCFG_SCREEN_UPDATE_DRIVER(mz2500_state, screen_update_mz2500)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x200)
MCFG_PALETTE_INIT_OWNER(mz2500_state, mz2500)
diff --git a/src/mess/drivers/mz700.c b/src/mess/drivers/mz700.c
index 58ca38dd1fc..51439332da8 100644
--- a/src/mess/drivers/mz700.c
+++ b/src/mess/drivers/mz700.c
@@ -338,6 +338,7 @@ static MACHINE_CONFIG_START( mz700, mz_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(XTAL_17_73447MHz/2, 568, 0, 40*8, 312, 0, 25*8)
MCFG_SCREEN_UPDATE_DRIVER(mz_state, screen_update_mz700)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", mz700)
MCFG_PALETTE_ADD("palette", 256*2)
diff --git a/src/mess/drivers/mz80.c b/src/mess/drivers/mz80.c
index 3f3d4b1f9ee..44c8d413fbc 100644
--- a/src/mess/drivers/mz80.c
+++ b/src/mess/drivers/mz80.c
@@ -289,6 +289,8 @@ static MACHINE_CONFIG_START( mz80k, mz80_state )
MCFG_SCREEN_SIZE(320, 200)
MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 199)
MCFG_SCREEN_UPDATE_DRIVER(mz80_state, screen_update_mz80k)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", mz80k)
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/nakajies.c b/src/mess/drivers/nakajies.c
index c6695842159..56c839d2889 100644
--- a/src/mess/drivers/nakajies.c
+++ b/src/mess/drivers/nakajies.c
@@ -749,6 +749,8 @@ static MACHINE_CONFIG_START( nakajies210, nakajies_state )
MCFG_SCREEN_UPDATE_DRIVER( nakajies_state, screen_update )
MCFG_SCREEN_SIZE( 80 * 6, 8 * 8 )
MCFG_SCREEN_VISIBLE_AREA( 0, 6 * 80 - 1, 0, 8 * 8 - 1 )
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", wales210)
MCFG_PALETTE_ADD( "palette", 2 )
MCFG_PALETTE_INIT_OWNER(nakajies_state, nakajies)
diff --git a/src/mess/drivers/nanos.c b/src/mess/drivers/nanos.c
index adb5ce1120d..ef8df5fb021 100644
--- a/src/mess/drivers/nanos.c
+++ b/src/mess/drivers/nanos.c
@@ -569,6 +569,8 @@ static MACHINE_CONFIG_START( nanos, nanos_state )
MCFG_SCREEN_UPDATE_DRIVER(nanos_state, screen_update)
MCFG_SCREEN_SIZE(80*8, 25*10)
MCFG_SCREEN_VISIBLE_AREA(0,80*8-1,0,25*10-1)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", nanos)
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/nascom1.c b/src/mess/drivers/nascom1.c
index acd67335b3d..09af10f30bc 100644
--- a/src/mess/drivers/nascom1.c
+++ b/src/mess/drivers/nascom1.c
@@ -294,6 +294,7 @@ static MACHINE_CONFIG_START( nascom1, nascom1_state )
MCFG_SCREEN_SIZE(48 * 8, 16 * 16)
MCFG_SCREEN_VISIBLE_AREA(0, 48 * 8 - 1, 0, 16 * 16 - 1)
MCFG_SCREEN_UPDATE_DRIVER(nascom1_state, screen_update_nascom1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", nascom1)
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/nc.c b/src/mess/drivers/nc.c
index 3fb0f29ad74..694abc90338 100644
--- a/src/mess/drivers/nc.c
+++ b/src/mess/drivers/nc.c
@@ -1438,6 +1438,7 @@ static MACHINE_CONFIG_START( nc100, nc_state )
MCFG_SCREEN_SIZE(480, 64)
MCFG_SCREEN_VISIBLE_AREA(0, 480-1, 0, 64-1)
MCFG_SCREEN_UPDATE_DRIVER(nc_state, screen_update_nc)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", NC_NUM_COLOURS)
MCFG_PALETTE_INIT_OWNER(nc_state, nc)
diff --git a/src/mess/drivers/nes.c b/src/mess/drivers/nes.c
index c82be42ce15..b06b10a4f0d 100644
--- a/src/mess/drivers/nes.c
+++ b/src/mess/drivers/nes.c
@@ -704,6 +704,7 @@ static MACHINE_CONFIG_START( nes, nes_state )
MCFG_SCREEN_SIZE(32*8, 262)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(nes_state, screen_update_nes)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 4*16*8)
diff --git a/src/mess/drivers/octopus.c b/src/mess/drivers/octopus.c
index 99cd6989e41..3d26bd37456 100644
--- a/src/mess/drivers/octopus.c
+++ b/src/mess/drivers/octopus.c
@@ -177,6 +177,8 @@ static MACHINE_CONFIG_START( octopus, octopus_state )
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
MCFG_SCREEN_UPDATE_DRIVER(octopus_state, screen_update_octopus)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
MACHINE_CONFIG_END
diff --git a/src/mess/drivers/odyssey2.c b/src/mess/drivers/odyssey2.c
index 8a40f503f8d..d47dc9d7d4e 100644
--- a/src/mess/drivers/odyssey2.c
+++ b/src/mess/drivers/odyssey2.c
@@ -768,6 +768,7 @@ static MACHINE_CONFIG_START( odyssey2, odyssey2_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS( XTAL_7_15909MHz/2 * 2, i8244_device::LINE_CLOCKS, i8244_device::START_ACTIVE_SCAN, i8244_device::END_ACTIVE_SCAN, i8244_device::LINES, i8244_device::START_Y, i8244_device::START_Y + i8244_device::SCREEN_HEIGHT )
MCFG_SCREEN_UPDATE_DRIVER(odyssey2_state, screen_update_odyssey2)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", odyssey2 )
MCFG_PALETTE_ADD("palette", 32)
@@ -798,6 +799,7 @@ static MACHINE_CONFIG_START( videopac, odyssey2_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS( XTAL_17_73447MHz/5 * 2, i8244_device::LINE_CLOCKS, i8244_device::START_ACTIVE_SCAN, i8244_device::END_ACTIVE_SCAN, i8245_device::LINES, i8244_device::START_Y, i8244_device::START_Y + i8244_device::SCREEN_HEIGHT )
MCFG_SCREEN_UPDATE_DRIVER(odyssey2_state, screen_update_odyssey2)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", odyssey2 )
MCFG_PALETTE_ADD("palette", 16)
@@ -827,6 +829,7 @@ static MACHINE_CONFIG_START( g7400, g7400_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS( 3540000 * 2, i8244_device::LINE_CLOCKS, i8244_device::START_ACTIVE_SCAN, i8244_device::END_ACTIVE_SCAN, i8245_device::LINES, i8244_device::START_Y, i8244_device::START_Y + i8244_device::SCREEN_HEIGHT )
MCFG_SCREEN_UPDATE_DRIVER(odyssey2_state, screen_update_odyssey2)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", odyssey2 )
MCFG_PALETTE_ADD("palette", 16)
@@ -862,6 +865,7 @@ static MACHINE_CONFIG_START( odyssey3, g7400_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS( 3540000 * 2, i8244_device::LINE_CLOCKS, i8244_device::START_ACTIVE_SCAN, i8244_device::END_ACTIVE_SCAN, i8244_device::LINES, i8244_device::START_Y, i8244_device::START_Y + i8244_device::SCREEN_HEIGHT )
MCFG_SCREEN_UPDATE_DRIVER(odyssey2_state, screen_update_odyssey2)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", odyssey2 )
MCFG_PALETTE_ADD("palette", 16)
diff --git a/src/mess/drivers/okean240.c b/src/mess/drivers/okean240.c
index f02e8b70259..b256a8b3c66 100644
--- a/src/mess/drivers/okean240.c
+++ b/src/mess/drivers/okean240.c
@@ -491,6 +491,7 @@ static MACHINE_CONFIG_START( okean240t, okean240_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 255, 0, 255)
MCFG_SCREEN_UPDATE_DRIVER(okean240_state, screen_update_okean240)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/ondra.c b/src/mess/drivers/ondra.c
index f1fd37d35fb..15892f342cd 100644
--- a/src/mess/drivers/ondra.c
+++ b/src/mess/drivers/ondra.c
@@ -135,6 +135,7 @@ static MACHINE_CONFIG_START( ondra, ondra_state )
MCFG_SCREEN_SIZE(320, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(ondra_state, screen_update_ondra)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/orao.c b/src/mess/drivers/orao.c
index f62fbc9e8e7..7f8b8a2235d 100644
--- a/src/mess/drivers/orao.c
+++ b/src/mess/drivers/orao.c
@@ -184,6 +184,7 @@ static MACHINE_CONFIG_START( orao, orao_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 0, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(orao_state, screen_update_orao)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/oric.c b/src/mess/drivers/oric.c
index e3e9c8e05c5..8483734482d 100644
--- a/src/mess/drivers/oric.c
+++ b/src/mess/drivers/oric.c
@@ -380,6 +380,7 @@ static MACHINE_CONFIG_START( oric, oric_state )
MCFG_SCREEN_SIZE(40*6, 28*8)
MCFG_SCREEN_VISIBLE_AREA(0, 40*6-1, 0, 28*8-1)
MCFG_SCREEN_UPDATE_DRIVER(oric_state, screen_update_oric)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 8)
MCFG_PALETTE_INIT_OWNER(oric_state, oric)
diff --git a/src/mess/drivers/orion.c b/src/mess/drivers/orion.c
index b4bc1a26293..a4d40f9f10b 100644
--- a/src/mess/drivers/orion.c
+++ b/src/mess/drivers/orion.c
@@ -110,6 +110,7 @@ static MACHINE_CONFIG_START( orion128, orion_state )
MCFG_SCREEN_SIZE(384, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 384-1, 0, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(orion_state, screen_update_orion128)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 18)
MCFG_PALETTE_INIT_OWNER(orion_state, orion128 )
@@ -173,6 +174,7 @@ static MACHINE_CONFIG_START( orionz80, orion_state )
MCFG_SCREEN_SIZE(384, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 384-1, 0, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(orion_state, screen_update_orion128)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 18)
MCFG_PALETTE_INIT_OWNER(orion_state, orion128 )
@@ -235,6 +237,7 @@ static MACHINE_CONFIG_START( orionpro, orion_state )
MCFG_SCREEN_SIZE(384, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 384-1, 0, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(orion_state, screen_update_orion128)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 18)
MCFG_PALETTE_INIT_OWNER(orion_state, orion128 )
diff --git a/src/mess/drivers/osbexec.c b/src/mess/drivers/osbexec.c
index 7a232d1aea0..32c782ef0c1 100644
--- a/src/mess/drivers/osbexec.c
+++ b/src/mess/drivers/osbexec.c
@@ -610,6 +610,7 @@ static MACHINE_CONFIG_START( osbexec, osbexec_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_UPDATE_DRIVER(osbexec_state, screen_update)
MCFG_SCREEN_RAW_PARAMS( MAIN_CLOCK/2, 768, 0, 640, 260, 0, 240 ) /* May not be correct */
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD( "palette", 3 )
MCFG_PALETTE_INIT_OWNER(osbexec_state, osbexec)
diff --git a/src/mess/drivers/osborne1.c b/src/mess/drivers/osborne1.c
index ce73cd56640..9ea3cab0977 100644
--- a/src/mess/drivers/osborne1.c
+++ b/src/mess/drivers/osborne1.c
@@ -242,6 +242,7 @@ static MACHINE_CONFIG_START( osborne1, osborne1_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_UPDATE_DRIVER(osborne1_state, screen_update)
MCFG_SCREEN_RAW_PARAMS( MAIN_CLOCK/2, 512, 0, 416, 260, 0, 240 )
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", osborne1)
MCFG_PALETTE_ADD( "palette", 3 )
MCFG_PALETTE_INIT_OWNER(osborne1_state, osborne1)
diff --git a/src/mess/drivers/p112.c b/src/mess/drivers/p112.c
index fa744747a8f..03b8cae2baa 100644
--- a/src/mess/drivers/p112.c
+++ b/src/mess/drivers/p112.c
@@ -94,6 +94,7 @@ static MACHINE_CONFIG_START( p112, p112_state )
MCFG_SCREEN_SIZE(240, 320)
MCFG_SCREEN_VISIBLE_AREA(0, 240-1, 0, 320-1)
MCFG_SCREEN_UPDATE_DRIVER(p112_state, screen_update_p112)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/p2000t.c b/src/mess/drivers/p2000t.c
index f6d99182931..c609b23aec4 100644
--- a/src/mess/drivers/p2000t.c
+++ b/src/mess/drivers/p2000t.c
@@ -260,6 +260,8 @@ static MACHINE_CONFIG_START( p2000m, p2000t_state )
MCFG_SCREEN_VISIBLE_AREA(0, 80 * 12 - 1, 0, 24 * 20 - 1)
MCFG_VIDEO_START_OVERRIDE(p2000t_state,p2000m)
MCFG_SCREEN_UPDATE_DRIVER(p2000t_state, screen_update_p2000m)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", p2000m )
MCFG_PALETTE_ADD("palette", 4)
MCFG_PALETTE_INIT_OWNER(p2000t_state,p2000m)
diff --git a/src/mess/drivers/palm.c b/src/mess/drivers/palm.c
index df7f779e4fe..d5b14ab804a 100644
--- a/src/mess/drivers/palm.c
+++ b/src/mess/drivers/palm.c
@@ -235,6 +235,8 @@ static MACHINE_CONFIG_START( palm, palm_state )
MCFG_SCREEN_SIZE( 160, 220 )
MCFG_SCREEN_VISIBLE_AREA( 0, 159, 0, 219 )
MCFG_SCREEN_UPDATE_DEVICE(MC68328_TAG, mc68328_device, screen_update)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD( "palette", 2 )
MCFG_PALETTE_INIT_OWNER(palm_state, palm)
MCFG_DEFAULT_LAYOUT(layout_lcd)
diff --git a/src/mess/drivers/paso1600.c b/src/mess/drivers/paso1600.c
index ec1546cb3f2..f7c69fc9c4e 100644
--- a/src/mess/drivers/paso1600.c
+++ b/src/mess/drivers/paso1600.c
@@ -351,6 +351,8 @@ static MACHINE_CONFIG_START( paso1600, paso1600_state )
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
MCFG_SCREEN_UPDATE_DRIVER(paso1600_state, screen_update_paso1600)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", paso1600)
MCFG_PALETTE_ADD("palette", 8)
// MCFG_PALETTE_INIT(black_and_white)
diff --git a/src/mess/drivers/pasogo.c b/src/mess/drivers/pasogo.c
index cdcf270781b..e2b84858cd2 100644
--- a/src/mess/drivers/pasogo.c
+++ b/src/mess/drivers/pasogo.c
@@ -978,6 +978,7 @@ static MACHINE_CONFIG_START( pasogo, pasogo_state )
MCFG_SCREEN_SIZE(640, 400)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 400-1)
MCFG_SCREEN_UPDATE_DRIVER(pasogo_state, screen_update_pasogo)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", ARRAY_LENGTH(pasogo_palette))
MCFG_PALETTE_INIT_OWNER(pasogo_state, pasogo)
diff --git a/src/mess/drivers/pasopia7.c b/src/mess/drivers/pasopia7.c
index 78fc2b5a9d2..74e1248977b 100644
--- a/src/mess/drivers/pasopia7.c
+++ b/src/mess/drivers/pasopia7.c
@@ -1016,6 +1016,8 @@ static MACHINE_CONFIG_DERIVED( p7_raster, p7_base )
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 32-1)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_VIDEO_START_OVERRIDE(pasopia7_state,pasopia7)
MCFG_SCREEN_UPDATE_DRIVER(pasopia7_state, screen_update_pasopia7)
MCFG_PALETTE_ADD("palette", 8)
@@ -1034,6 +1036,8 @@ static MACHINE_CONFIG_DERIVED( p7_lcd, p7_base )
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 200-1)
MCFG_VIDEO_START_OVERRIDE(pasopia7_state,pasopia7)
MCFG_SCREEN_UPDATE_DRIVER(pasopia7_state, screen_update_pasopia7)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD("palette", 8)
MCFG_PALETTE_INIT_OWNER(pasopia7_state,p7_lcd)
MCFG_GFXDECODE_ADD("gfxdecode", pasopia7 )
diff --git a/src/mess/drivers/pb1000.c b/src/mess/drivers/pb1000.c
index 7ba27db5b46..ef98b5fc3c3 100644
--- a/src/mess/drivers/pb1000.c
+++ b/src/mess/drivers/pb1000.c
@@ -518,6 +518,8 @@ static MACHINE_CONFIG_START( pb1000, pb1000_state )
MCFG_SCREEN_UPDATE_DEVICE("hd44352", hd44352_device, screen_update)
MCFG_SCREEN_SIZE(192, 32)
MCFG_SCREEN_VISIBLE_AREA(0, 192-1, 0, 32-1)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_DEFAULT_LAYOUT(layout_lcd)
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(pb1000_state, pb1000)
diff --git a/src/mess/drivers/pc100.c b/src/mess/drivers/pc100.c
index 196b42521d0..e99eb4298e6 100644
--- a/src/mess/drivers/pc100.c
+++ b/src/mess/drivers/pc100.c
@@ -533,6 +533,8 @@ static MACHINE_CONFIG_START( pc100, pc100_state )
/* TODO: Unknown Pixel Clock and CRTC is dynamic */
MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK*4, 1024, 0, 768, 264*2, 0, 512)
MCFG_SCREEN_UPDATE_DRIVER(pc100_state, screen_update_pc100)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", pc100)
MCFG_PALETTE_ADD("palette", 16)
// MCFG_PALETTE_INIT(black_and_white)
diff --git a/src/mess/drivers/pc1500.c b/src/mess/drivers/pc1500.c
index 8c84a58ef1a..995443354ee 100644
--- a/src/mess/drivers/pc1500.c
+++ b/src/mess/drivers/pc1500.c
@@ -286,6 +286,8 @@ static MACHINE_CONFIG_START( pc1500, pc1500_state )
MCFG_SCREEN_UPDATE_DRIVER(pc1500_state, screen_update)
MCFG_SCREEN_SIZE(156, 8)
MCFG_SCREEN_VISIBLE_AREA(0, 156-1, 0, 7-1)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_DEFAULT_LAYOUT(layout_pc1500)
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(pc1500_state, pc1500)
diff --git a/src/mess/drivers/pc2000.c b/src/mess/drivers/pc2000.c
index ee9ba3de1cb..5abc87f7474 100644
--- a/src/mess/drivers/pc2000.c
+++ b/src/mess/drivers/pc2000.c
@@ -810,6 +810,7 @@ static MACHINE_CONFIG_START( pc2000, pc2000_state )
MCFG_SCREEN_UPDATE_DEVICE("hd44780", hd44780_device, screen_update)
MCFG_SCREEN_SIZE(120, 18) //2x20 chars
MCFG_SCREEN_VISIBLE_AREA(0, 120-1, 0, 18-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(pc2000_state, pc2000)
diff --git a/src/mess/drivers/pc4.c b/src/mess/drivers/pc4.c
index b1669919ad7..5365284bb43 100644
--- a/src/mess/drivers/pc4.c
+++ b/src/mess/drivers/pc4.c
@@ -229,6 +229,8 @@ static MACHINE_CONFIG_START( pc4, pc4_state )
MCFG_SCREEN_UPDATE_DRIVER(pc4_state, screen_update)
MCFG_SCREEN_SIZE(240, 36)
MCFG_SCREEN_VISIBLE_AREA(0, 240-1, 0, 36-1)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_DEFAULT_LAYOUT(layout_lcd)
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(pc4_state, pc4)
diff --git a/src/mess/drivers/pc6001.c b/src/mess/drivers/pc6001.c
index aa655c63f34..2a3f5554015 100644
--- a/src/mess/drivers/pc6001.c
+++ b/src/mess/drivers/pc6001.c
@@ -2329,7 +2329,7 @@ static MACHINE_CONFIG_START( pc6001, pc6001_state )
// MCFG_SCREEN_UPDATE_STATIC(m6847)
MCFG_SCREEN_SIZE(320, 25+192+26)
MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
-
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 16+4)
MCFG_PALETTE_INIT_OWNER(pc6001_state, pc6001)
diff --git a/src/mess/drivers/pc8801.c b/src/mess/drivers/pc8801.c
index 91c5380f5c4..d69b57eb63f 100644
--- a/src/mess/drivers/pc8801.c
+++ b/src/mess/drivers/pc8801.c
@@ -2670,6 +2670,7 @@ static MACHINE_CONFIG_START( pc8801, pc8801_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK_24KHz,848,0,640,448,0,400)
MCFG_SCREEN_UPDATE_DRIVER(pc8801_state, screen_update)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", pc8801 )
MCFG_PALETTE_ADD("palette", 0x10)
diff --git a/src/mess/drivers/pce220.c b/src/mess/drivers/pce220.c
index 49676c1f5b1..89b1cce69c6 100644
--- a/src/mess/drivers/pce220.c
+++ b/src/mess/drivers/pce220.c
@@ -934,6 +934,7 @@ static MACHINE_CONFIG_START( pce220, pce220_state )
MCFG_SCREEN_UPDATE_DRIVER(pce220_state, screen_update)
MCFG_SCREEN_SIZE(24*6, 4*8)
MCFG_SCREEN_VISIBLE_AREA(0, 24*6-1, 0, 4*8-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(pce220_state,pce220)
@@ -969,6 +970,7 @@ static MACHINE_CONFIG_START( pcg850v, pcg850v_state )
MCFG_SCREEN_UPDATE_DRIVER(pcg850v_state, screen_update)
MCFG_SCREEN_SIZE(144, 48)
MCFG_SCREEN_VISIBLE_AREA(0, 144-1, 0, 48-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(pce220_state,pce220)
diff --git a/src/mess/drivers/pcm.c b/src/mess/drivers/pcm.c
index 24e51879c36..7d20f35ce1a 100644
--- a/src/mess/drivers/pcm.c
+++ b/src/mess/drivers/pcm.c
@@ -326,6 +326,8 @@ static MACHINE_CONFIG_START( pcm, pcm_state )
MCFG_SCREEN_UPDATE_DRIVER(pcm_state, screen_update)
MCFG_SCREEN_SIZE(64*8, 16*8)
MCFG_SCREEN_VISIBLE_AREA(0, 64*8-1, 0, 16*8-1)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", pcm)
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/pcw.c b/src/mess/drivers/pcw.c
index 79d09673eda..79478a93161 100644
--- a/src/mess/drivers/pcw.c
+++ b/src/mess/drivers/pcw.c
@@ -1283,6 +1283,7 @@ static MACHINE_CONFIG_START( pcw, pcw_state )
MCFG_SCREEN_SIZE(PCW_SCREEN_WIDTH, PCW_SCREEN_HEIGHT)
MCFG_SCREEN_VISIBLE_AREA(0, PCW_SCREEN_WIDTH-1, 0, PCW_SCREEN_HEIGHT-1)
MCFG_SCREEN_UPDATE_DRIVER(pcw_state, screen_update_pcw)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", PCW_NUM_COLOURS)
MCFG_PALETTE_INIT_OWNER(pcw_state, pcw)
@@ -1312,6 +1313,7 @@ static MACHINE_CONFIG_DERIVED( pcw8256, pcw )
MCFG_SCREEN_SIZE( PCW_PRINTER_WIDTH, PCW_PRINTER_HEIGHT )
MCFG_SCREEN_VISIBLE_AREA(0, PCW_PRINTER_WIDTH-1, 0, PCW_PRINTER_HEIGHT-1)
MCFG_SCREEN_UPDATE_DRIVER(pcw_state, screen_update_pcw_printer)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_DEFAULT_LAYOUT( layout_pcw )
@@ -1323,6 +1325,7 @@ static MACHINE_CONFIG_DERIVED( pcw8512, pcw )
MCFG_SCREEN_SIZE( PCW_PRINTER_WIDTH, PCW_PRINTER_HEIGHT )
MCFG_SCREEN_VISIBLE_AREA(0, PCW_PRINTER_WIDTH-1, 0, PCW_PRINTER_HEIGHT-1)
MCFG_SCREEN_UPDATE_DRIVER(pcw_state, screen_update_pcw_printer)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_DEFAULT_LAYOUT( layout_pcw )
diff --git a/src/mess/drivers/pcw16.c b/src/mess/drivers/pcw16.c
index fe9b6bac082..fc1e8432d37 100644
--- a/src/mess/drivers/pcw16.c
+++ b/src/mess/drivers/pcw16.c
@@ -1050,6 +1050,7 @@ static MACHINE_CONFIG_START( pcw16, pcw16_state )
MCFG_SCREEN_SIZE(PCW16_SCREEN_WIDTH, PCW16_SCREEN_HEIGHT)
MCFG_SCREEN_VISIBLE_AREA(0, PCW16_SCREEN_WIDTH-1, 0, PCW16_SCREEN_HEIGHT-1)
MCFG_SCREEN_UPDATE_DRIVER(pcw16_state, screen_update_pcw16)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", PCW16_NUM_COLOURS)
MCFG_PALETTE_INIT_OWNER(pcw16_state, pcw16)
diff --git a/src/mess/drivers/pda600.c b/src/mess/drivers/pda600.c
index 6ce7eeb6dee..30e456b2bc5 100644
--- a/src/mess/drivers/pda600.c
+++ b/src/mess/drivers/pda600.c
@@ -213,6 +213,8 @@ static MACHINE_CONFIG_START( pda600, pda600_state )
MCFG_SCREEN_SIZE(240, 320)
MCFG_SCREEN_VISIBLE_AREA(0, 240-1, 0, 320-1)
MCFG_SCREEN_UPDATE_DRIVER( pda600_state, screen_update )
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", pda600)
MCFG_DEFAULT_LAYOUT(layout_lcd)
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/pdp1.c b/src/mess/drivers/pdp1.c
index c805d6aa6b3..510b8292e32 100644
--- a/src/mess/drivers/pdp1.c
+++ b/src/mess/drivers/pdp1.c
@@ -1954,6 +1954,7 @@ static MACHINE_CONFIG_START( pdp1, pdp1_state )
MCFG_SCREEN_VISIBLE_AREA(0, virtual_width-1, 0, virtual_height-1)
MCFG_SCREEN_UPDATE_DRIVER(pdp1_state, screen_update_pdp1)
MCFG_SCREEN_VBLANK_DRIVER(pdp1_state, screen_eof_pdp1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_CRT_ADD( "crt", pdp1_crt_interface )
MCFG_DEVICE_ADD("readt", PDP1_READTAPE, 0)
diff --git a/src/mess/drivers/pegasus.c b/src/mess/drivers/pegasus.c
index e33f5a13739..7842d8a276b 100644
--- a/src/mess/drivers/pegasus.c
+++ b/src/mess/drivers/pegasus.c
@@ -477,6 +477,7 @@ static MACHINE_CONFIG_START( pegasus, pegasus_state )
MCFG_SCREEN_UPDATE_DRIVER(pegasus_state, screen_update)
MCFG_SCREEN_SIZE(32*8, 16*16)
MCFG_SCREEN_VISIBLE_AREA(0, 32*8-1, 0, 16*16-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", pegasus)
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/phunsy.c b/src/mess/drivers/phunsy.c
index ab41e317263..57811cd4a84 100644
--- a/src/mess/drivers/phunsy.c
+++ b/src/mess/drivers/phunsy.c
@@ -363,6 +363,8 @@ static MACHINE_CONFIG_START( phunsy, phunsy_state )
*/
MCFG_SCREEN_RAW_PARAMS(XTAL_8MHz, 480, 0, 64*6, 313, 0, 256)
MCFG_SCREEN_UPDATE_DRIVER(phunsy_state, screen_update)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", phunsy)
MCFG_PALETTE_ADD("palette", 8)
MCFG_PALETTE_INIT_OWNER(phunsy_state, phunsy)
diff --git a/src/mess/drivers/pitagjr.c b/src/mess/drivers/pitagjr.c
index 962920fb4bb..b372f1046d3 100644
--- a/src/mess/drivers/pitagjr.c
+++ b/src/mess/drivers/pitagjr.c
@@ -209,6 +209,7 @@ static MACHINE_CONFIG_START( pitajr, pitagjr_state )
MCFG_SCREEN_UPDATE_DRIVER(pitagjr_state, screen_update)
MCFG_SCREEN_SIZE( 200, 100 ) // FIXME
MCFG_SCREEN_VISIBLE_AREA( 0, 200-1, 0, 100-1 )
+ MCFG_SCREEN_PALETTE("palette")
MCFG_DEFAULT_LAYOUT(layout_lcd)
diff --git a/src/mess/drivers/pk8000.c b/src/mess/drivers/pk8000.c
index e84a87444fd..c27fcc8334b 100644
--- a/src/mess/drivers/pk8000.c
+++ b/src/mess/drivers/pk8000.c
@@ -389,6 +389,7 @@ static MACHINE_CONFIG_START( pk8000, pk8000_state )
MCFG_SCREEN_SIZE(256+32, 192+32)
MCFG_SCREEN_VISIBLE_AREA(0, 256+32-1, 0, 192+32-1)
MCFG_SCREEN_UPDATE_DRIVER(pk8000_state, screen_update_pk8000)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 16)
MCFG_PALETTE_INIT_OWNER(pk8000_base_state, pk8000)
diff --git a/src/mess/drivers/pk8020.c b/src/mess/drivers/pk8020.c
index cc94ac9e415..180066eedbf 100644
--- a/src/mess/drivers/pk8020.c
+++ b/src/mess/drivers/pk8020.c
@@ -215,6 +215,7 @@ static MACHINE_CONFIG_START( pk8020, pk8020_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(pk8020_state, screen_update_pk8020)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", pk8020)
MCFG_PALETTE_ADD("palette", 16)
diff --git a/src/mess/drivers/plan80.c b/src/mess/drivers/plan80.c
index f495bab29b1..a60b69f9a3f 100644
--- a/src/mess/drivers/plan80.c
+++ b/src/mess/drivers/plan80.c
@@ -241,6 +241,8 @@ static MACHINE_CONFIG_START( plan80, plan80_state )
MCFG_SCREEN_UPDATE_DRIVER(plan80_state, screen_update)
MCFG_SCREEN_SIZE(48*6, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0, 48*6-1, 0, 32*8-1)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", plan80)
MCFG_PALETTE_ADD_MONOCHROME_GREEN("palette")
MACHINE_CONFIG_END
diff --git a/src/mess/drivers/pmd85.c b/src/mess/drivers/pmd85.c
index 48d6326d9f7..4ec4369270b 100644
--- a/src/mess/drivers/pmd85.c
+++ b/src/mess/drivers/pmd85.c
@@ -584,6 +584,7 @@ static MACHINE_CONFIG_START( pmd85, pmd85_state )
MCFG_SCREEN_SIZE(288, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 288-1, 0, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(pmd85_state, screen_update_pmd85)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", sizeof (pmd85_palette) / 3)
MCFG_PALETTE_INIT_OWNER(pmd85_state, pmd85)
diff --git a/src/mess/drivers/pocketc.c b/src/mess/drivers/pocketc.c
index e5e00c5dfdd..38ef963d0d8 100644
--- a/src/mess/drivers/pocketc.c
+++ b/src/mess/drivers/pocketc.c
@@ -726,6 +726,8 @@ static MACHINE_CONFIG_START( pocketc, pocketc_state)
MCFG_SCREEN_VISIBLE_AREA(0, 594-1, 0, 273-1)
// MCFG_SCREEN_SIZE(640, 273)
// MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 273-1)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", pc1401 )
MCFG_PALETTE_ADD("palette", 8*2)
MCFG_PALETTE_INDIRECT_ENTRIES(6)
diff --git a/src/mess/drivers/pokemini.c b/src/mess/drivers/pokemini.c
index cbd6fa16e23..37b8ccbe2fa 100644
--- a/src/mess/drivers/pokemini.c
+++ b/src/mess/drivers/pokemini.c
@@ -1787,6 +1787,7 @@ static MACHINE_CONFIG_START( pokemini, pokemini_state )
MCFG_SCREEN_SIZE( 96, 64 )
MCFG_SCREEN_VISIBLE_AREA( 0, 95, 0, 63 )
MCFG_SCREEN_REFRESH_RATE( 72 )
+ MCFG_SCREEN_PALETTE("palette")
MCFG_DEFAULT_LAYOUT(layout_lcd)
diff --git a/src/mess/drivers/poly88.c b/src/mess/drivers/poly88.c
index 93b3469d78d..db7780e51fa 100644
--- a/src/mess/drivers/poly88.c
+++ b/src/mess/drivers/poly88.c
@@ -181,6 +181,7 @@ static MACHINE_CONFIG_START( poly88, poly88_state )
MCFG_SCREEN_SIZE(64*10, 16*15)
MCFG_SCREEN_VISIBLE_AREA(0, 64*10-1, 0, 16*15-1)
MCFG_SCREEN_UPDATE_DRIVER(poly88_state, screen_update_poly88)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", poly88)
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/portfoli.c b/src/mess/drivers/portfoli.c
index ada4e45863f..65f7a7ccb49 100644
--- a/src/mess/drivers/portfoli.c
+++ b/src/mess/drivers/portfoli.c
@@ -843,7 +843,8 @@ static MACHINE_CONFIG_START( portfolio, portfolio_state )
MCFG_SCREEN_UPDATE_DEVICE(HD61830_TAG, hd61830_device, screen_update)
MCFG_SCREEN_SIZE(240, 64)
MCFG_SCREEN_VISIBLE_AREA(0, 240-1, 0, 64-1)
-
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_DEFAULT_LAYOUT(layout_lcd)
MCFG_PALETTE_ADD("palette", 2)
diff --git a/src/mess/drivers/pp01.c b/src/mess/drivers/pp01.c
index 1fdedbec344..e7945d0e07a 100644
--- a/src/mess/drivers/pp01.c
+++ b/src/mess/drivers/pp01.c
@@ -208,6 +208,8 @@ static MACHINE_CONFIG_START( pp01, pp01_state )
MCFG_SCREEN_SIZE(256, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 0, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(pp01_state, screen_update_pp01)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD("palette", 8)
MCFG_PALETTE_INIT_OWNER(pp01_state, pp01)
diff --git a/src/mess/drivers/prestige.c b/src/mess/drivers/prestige.c
index 7406d9a749e..d4211e5a3e5 100644
--- a/src/mess/drivers/prestige.c
+++ b/src/mess/drivers/prestige.c
@@ -492,6 +492,7 @@ static MACHINE_CONFIG_START( prestige, prestige_state )
MCFG_SCREEN_UPDATE_DRIVER(prestige_state, screen_update)
MCFG_SCREEN_SIZE( 240, 100 )
MCFG_SCREEN_VISIBLE_AREA( 0, 240-1, 0, 100-1 )
+ MCFG_SCREEN_PALETTE("palette")
MCFG_DEFAULT_LAYOUT( layout_lcd )
diff --git a/src/mess/drivers/primo.c b/src/mess/drivers/primo.c
index 3d08e32999b..7b401d06487 100644
--- a/src/mess/drivers/primo.c
+++ b/src/mess/drivers/primo.c
@@ -262,6 +262,7 @@ static MACHINE_CONFIG_START( primoa32, primo_state )
MCFG_SCREEN_SIZE( 256, 192 )
MCFG_SCREEN_VISIBLE_AREA( 0, 256-1, 0, 192-1 )
MCFG_SCREEN_UPDATE_DRIVER(primo_state, screen_update_primo)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/psion.c b/src/mess/drivers/psion.c
index c4bb185a606..008ca76aac2 100644
--- a/src/mess/drivers/psion.c
+++ b/src/mess/drivers/psion.c
@@ -484,6 +484,8 @@ static MACHINE_CONFIG_START( psion_2lines, psion_state )
MCFG_SCREEN_UPDATE_DEVICE("hd44780", hd44780_device, screen_update)
MCFG_SCREEN_SIZE(6*16, 9*2)
MCFG_SCREEN_VISIBLE_AREA(0, 6*16-1, 0, 9*2-1)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_DEFAULT_LAYOUT(layout_lcd)
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(psion_state, psion)
diff --git a/src/mess/drivers/ptcsol.c b/src/mess/drivers/ptcsol.c
index 9206bddfdd7..91f756dab59 100644
--- a/src/mess/drivers/ptcsol.c
+++ b/src/mess/drivers/ptcsol.c
@@ -757,6 +757,8 @@ static MACHINE_CONFIG_START( sol20, sol20_state )
MCFG_SCREEN_UPDATE_DRIVER(sol20_state, screen_update)
MCFG_SCREEN_SIZE(576, 208)
MCFG_SCREEN_VISIBLE_AREA(0, 575, 0, 207)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", sol20)
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/pv1000.c b/src/mess/drivers/pv1000.c
index 76bb47c619a..a0c6e2cb397 100644
--- a/src/mess/drivers/pv1000.c
+++ b/src/mess/drivers/pv1000.c
@@ -466,6 +466,7 @@ static MACHINE_CONFIG_START( pv1000, pv1000_state )
MCFG_SCREEN_ADD( "screen", RASTER )
MCFG_SCREEN_RAW_PARAMS( 17897725/3, 380, 0, 256, 262, 0, 192 )
MCFG_SCREEN_UPDATE_DRIVER(pv1000_state, screen_update_pv1000)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD( "palette", 8 )
MCFG_PALETTE_INIT_OWNER(pv1000_state, pv1000)
diff --git a/src/mess/drivers/pv9234.c b/src/mess/drivers/pv9234.c
index 62378f31e57..fd20421e033 100644
--- a/src/mess/drivers/pv9234.c
+++ b/src/mess/drivers/pv9234.c
@@ -147,6 +147,7 @@ static MACHINE_CONFIG_START( pv9234, pv9234_state )
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
MCFG_SCREEN_UPDATE_DRIVER(pv9234_state, screen_update_pv9234)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/px4.c b/src/mess/drivers/px4.c
index b19f008687c..94fb24d7d8e 100644
--- a/src/mess/drivers/px4.c
+++ b/src/mess/drivers/px4.c
@@ -1380,6 +1380,7 @@ static MACHINE_CONFIG_START( px4, px4_state )
MCFG_SCREEN_SIZE(240, 64)
MCFG_SCREEN_VISIBLE_AREA(0, 239, 0, 63)
MCFG_SCREEN_UPDATE_DRIVER(px4_state, screen_update_px4)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_DEFAULT_LAYOUT(layout_px4)
diff --git a/src/mess/drivers/px8.c b/src/mess/drivers/px8.c
index 6a35b38de7e..f9ef59967d8 100644
--- a/src/mess/drivers/px8.c
+++ b/src/mess/drivers/px8.c
@@ -791,6 +791,7 @@ static MACHINE_CONFIG_START( px8, px8_state )
MCFG_SCREEN_UPDATE_DRIVER(px8_state, screen_update)
MCFG_SCREEN_SIZE(480, 64)
MCFG_SCREEN_VISIBLE_AREA(0, 479, 0, 63)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", px8)
MCFG_PALETTE_ADD("palette", 2)
diff --git a/src/mess/drivers/rd110.c b/src/mess/drivers/rd110.c
index 90a49b72142..fb9aa78d7ef 100644
--- a/src/mess/drivers/rd110.c
+++ b/src/mess/drivers/rd110.c
@@ -240,6 +240,8 @@ static MACHINE_CONFIG_START( d110, d110_state )
// MCFG_SCREEN_SIZE(20*6-1, 2*9-1)
MCFG_SCREEN_SIZE(16*6-1, (16*6-1)*3/4)
MCFG_SCREEN_VISIBLE_AREA(0, 16*6-2, 0, (16*6-1)*3/4-1)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(d110_state, d110)
diff --git a/src/mess/drivers/replicator.c b/src/mess/drivers/replicator.c
index 9bac9135673..17ae620ee8f 100644
--- a/src/mess/drivers/replicator.c
+++ b/src/mess/drivers/replicator.c
@@ -666,6 +666,7 @@ static MACHINE_CONFIG_START( replicator, replicator_state )
MCFG_SCREEN_UPDATE_DEVICE("hd44780", hd44780_device, screen_update)
MCFG_SCREEN_SIZE(120, 18*2) //4x20 chars
MCFG_SCREEN_VISIBLE_AREA(0, 120-1, 0, 18*2-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(replicator_state, replicator)
diff --git a/src/mess/drivers/rex6000.c b/src/mess/drivers/rex6000.c
index c348e19feae..b9bb9a7cd9e 100644
--- a/src/mess/drivers/rex6000.c
+++ b/src/mess/drivers/rex6000.c
@@ -656,6 +656,8 @@ static MACHINE_CONFIG_START( rex6000, rex6000_state )
MCFG_SCREEN_UPDATE_DRIVER(rex6000_state, screen_update)
MCFG_SCREEN_SIZE(240, 120)
MCFG_SCREEN_VISIBLE_AREA(0, 240-1, 0, 120-1)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_DEFAULT_LAYOUT(layout_lcd)
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(rex6000_state, rex6000)
diff --git a/src/mess/drivers/rm380z.c b/src/mess/drivers/rm380z.c
index 38a21af4814..332965f6930 100644
--- a/src/mess/drivers/rm380z.c
+++ b/src/mess/drivers/rm380z.c
@@ -156,8 +156,9 @@ static MACHINE_CONFIG_START( rm380z, rm380z_state )
// and there is at least 1 pixel between each row of characters
MCFG_SCREEN_SIZE((RM380Z_SCREENCOLS*(RM380Z_CHDIMX+1)), (RM380Z_SCREENROWS*(RM380Z_CHDIMY+1)))
MCFG_SCREEN_VISIBLE_AREA(0, (RM380Z_SCREENCOLS*(RM380Z_CHDIMX+1))-1, 0, (RM380Z_SCREENROWS*(RM380Z_CHDIMY+1))-1)
-
MCFG_SCREEN_UPDATE_DRIVER(rm380z_state, screen_update_rm380z)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
/* RAM configurations */
diff --git a/src/mess/drivers/rmnimbus.c b/src/mess/drivers/rmnimbus.c
index b8559d7cedd..850d575af50 100644
--- a/src/mess/drivers/rmnimbus.c
+++ b/src/mess/drivers/rmnimbus.c
@@ -292,6 +292,7 @@ static MACHINE_CONFIG_START( nimbus, rmnimbus_state )
MCFG_SCREEN_UPDATE_DRIVER(rmnimbus_state, screen_update_nimbus)
MCFG_SCREEN_VBLANK_DRIVER(rmnimbus_state, screen_eof_nimbus)
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_UPDATE_SCANLINE)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", SCREEN_NO_COLOURS)
MCFG_PALETTE_INIT_OWNER(rmnimbus_state, rmnimbus)
diff --git a/src/mess/drivers/rmt32.c b/src/mess/drivers/rmt32.c
index dab0fa2d545..531a13e06ac 100644
--- a/src/mess/drivers/rmt32.c
+++ b/src/mess/drivers/rmt32.c
@@ -359,6 +359,8 @@ static MACHINE_CONFIG_START( mt32, mt32_state )
// MCFG_SCREEN_SIZE(20*6-1, 9)
MCFG_SCREEN_SIZE(20*6-1, (20*6-1)*3/4)
MCFG_SCREEN_VISIBLE_AREA(0, 20*6-2, 0, (20*6-1)*3/4-1)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(mt32_state, mt32)
diff --git a/src/mess/drivers/rx78.c b/src/mess/drivers/rx78.c
index 496feb1cf59..1929da6ca47 100644
--- a/src/mess/drivers/rx78.c
+++ b/src/mess/drivers/rx78.c
@@ -471,6 +471,8 @@ static MACHINE_CONFIG_START( rx78, rx78_state )
MCFG_SCREEN_UPDATE_DRIVER(rx78_state, screen_update)
MCFG_SCREEN_SIZE(192, 184)
MCFG_SCREEN_VISIBLE_AREA(0, 192-1, 0, 184-1)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD("palette", 16+1) //+1 for the background color
MCFG_GFXDECODE_ADD("gfxdecode", rx78)
diff --git a/src/mess/drivers/samcoupe.c b/src/mess/drivers/samcoupe.c
index 9da4081fddf..d60ffa23fc1 100644
--- a/src/mess/drivers/samcoupe.c
+++ b/src/mess/drivers/samcoupe.c
@@ -546,6 +546,7 @@ static MACHINE_CONFIG_START( samcoupe, samcoupe_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(SAMCOUPE_XTAL_X1/2, SAM_TOTAL_WIDTH, 0, SAM_BORDER_LEFT + SAM_SCREEN_WIDTH + SAM_BORDER_RIGHT, SAM_TOTAL_HEIGHT, 0, SAM_BORDER_TOP + SAM_SCREEN_HEIGHT + SAM_BORDER_BOTTOM)
MCFG_SCREEN_UPDATE_DRIVER(samcoupe_state, screen_update)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 128)
MCFG_PALETTE_INIT_OWNER(samcoupe_state, samcoupe)
diff --git a/src/mess/drivers/sapi1.c b/src/mess/drivers/sapi1.c
index f68ec32d47e..9ed36feaf5f 100644
--- a/src/mess/drivers/sapi1.c
+++ b/src/mess/drivers/sapi1.c
@@ -568,6 +568,8 @@ static MACHINE_CONFIG_START( sapi1, sapi1_state )
MCFG_SCREEN_SIZE(40*6, 24*9)
MCFG_SCREEN_VISIBLE_AREA(0, 40*6-1, 0, 24*9-1)
MCFG_SCREEN_UPDATE_DRIVER(sapi1_state, screen_update_sapi1)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
/* internal ram */
@@ -602,6 +604,7 @@ static MACHINE_CONFIG_DERIVED( sapi3b, sapi3 )
MCFG_MC6845_ADD("crtc", MC6845, "screen", 1008000, mc6845_intf) // guess
MCFG_SCREEN_MODIFY("screen")
MCFG_SCREEN_UPDATE_DEVICE("crtc", mc6845_device, screen_update)
+ MCFG_SCREEN_NO_PALETTE
MACHINE_CONFIG_END
static MACHINE_CONFIG_START( sapi3a, sapi1_state )
diff --git a/src/mess/drivers/sbrain.c b/src/mess/drivers/sbrain.c
index ea0be212b3c..58de817d6ce 100644
--- a/src/mess/drivers/sbrain.c
+++ b/src/mess/drivers/sbrain.c
@@ -339,6 +339,8 @@ static MACHINE_CONFIG_START( sbrain, sbrain_state )
MCFG_SCREEN_UPDATE_DRIVER(sbrain_state, screen_update)
MCFG_SCREEN_SIZE(640, 240)
MCFG_SCREEN_VISIBLE_AREA(0, 639, 0, 239)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD_MONOCHROME_AMBER("palette")
/* sound hardware */
diff --git a/src/mess/drivers/scv.c b/src/mess/drivers/scv.c
index 097f551f52e..1fe3b61a648 100644
--- a/src/mess/drivers/scv.c
+++ b/src/mess/drivers/scv.c
@@ -826,6 +826,7 @@ static MACHINE_CONFIG_START( scv, scv_state )
MCFG_SCREEN_ADD( "screen", RASTER )
MCFG_SCREEN_RAW_PARAMS( XTAL_14_31818MHz/2, 456, 24, 24+192, 262, 23, 23+222 ) /* TODO: Verify */
MCFG_SCREEN_UPDATE_DRIVER(scv_state, screen_update_scv)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", scv)
MCFG_PALETTE_ADD( "palette", 16 )
diff --git a/src/mess/drivers/smc777.c b/src/mess/drivers/smc777.c
index 626c4cb18d4..51879882d0f 100644
--- a/src/mess/drivers/smc777.c
+++ b/src/mess/drivers/smc777.c
@@ -1089,6 +1089,7 @@ static MACHINE_CONFIG_START( smc777, smc777_state )
MCFG_SCREEN_SIZE(0x400, 400)
MCFG_SCREEN_VISIBLE_AREA(0, 660-1, 0, 220-1) //normal 640 x 200 + 20 pixels for border color
MCFG_SCREEN_UPDATE_DRIVER(smc777_state, screen_update_smc777)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 0x20) // 16 + 8 colors (SMC-777 + SMC-70) + 8 empty entries (SMC-70)
MCFG_PALETTE_INIT_OWNER(smc777_state, smc777)
diff --git a/src/mess/drivers/socrates.c b/src/mess/drivers/socrates.c
index cc24bef9423..085b70adc3b 100644
--- a/src/mess/drivers/socrates.c
+++ b/src/mess/drivers/socrates.c
@@ -1376,6 +1376,7 @@ static MACHINE_CONFIG_START( socrates, socrates_state )
MCFG_SCREEN_SIZE(264, 228) // technically the screen size is 256x228 but super painter abuses what I suspect is a hardware bug to display repeated pixels of the very last pixel beyond this horizontal space, well into hblank
MCFG_SCREEN_VISIBLE_AREA(0, 263, 0, 219) // the last few rows are usually cut off by the screen bottom but are indeed displayed if you mess with v-hold
MCFG_SCREEN_UPDATE_DRIVER(socrates_state, screen_update_socrates)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 256)
MCFG_PALETTE_INIT_OWNER(socrates_state, socrates)
@@ -1410,6 +1411,7 @@ static MACHINE_CONFIG_START( socrates_pal, socrates_state )
MCFG_SCREEN_SIZE(264, 238) // technically the screen size is 256x228 but super painter abuses what I suspect is a hardware bug to display repeated pixels of the very last pixel beyond this horizontal space, well into hblank
MCFG_SCREEN_VISIBLE_AREA(0, 263, 0, 229) // the last few rows are usually cut off by the screen bottom but are indeed displayed if you mess with v-hold
MCFG_SCREEN_UPDATE_DRIVER(socrates_state, screen_update_socrates)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 256)
MCFG_PALETTE_INIT_OWNER(socrates_state, socrates)
@@ -1456,6 +1458,8 @@ static MACHINE_CONFIG_START( iqunlimz, iqunlim_state )
MCFG_SCREEN_UPDATE_DRIVER(iqunlim_state, screen_update)
MCFG_SCREEN_SIZE(256, 224)
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 0, 224-1)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD("palette", 256)
MCFG_PALETTE_INIT_OWNER(socrates_state, socrates)
diff --git a/src/mess/drivers/sorcerer.c b/src/mess/drivers/sorcerer.c
index 5f7b4003f84..7d9a5d8c81a 100644
--- a/src/mess/drivers/sorcerer.c
+++ b/src/mess/drivers/sorcerer.c
@@ -433,6 +433,8 @@ static MACHINE_CONFIG_START( sorcerer, sorcerer_state )
MCFG_SCREEN_SIZE(64*8, 30*8)
MCFG_SCREEN_VISIBLE_AREA(0, 64*8-1, 0, 30*8-1)
MCFG_SCREEN_UPDATE_DRIVER(sorcerer_state, screen_update)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", sorcerer)
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/special.c b/src/mess/drivers/special.c
index b80113e0741..b4753cc4ca7 100644
--- a/src/mess/drivers/special.c
+++ b/src/mess/drivers/special.c
@@ -374,6 +374,8 @@ static MACHINE_CONFIG_START( special, special_state )
MCFG_SCREEN_VISIBLE_AREA(0, 384-1, 0, 256-1)
MCFG_VIDEO_START_OVERRIDE(special_state,special)
MCFG_SCREEN_UPDATE_DRIVER(special_state, screen_update_special)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD("palette", 2)
/* audio hardware */
@@ -463,6 +465,8 @@ static MACHINE_CONFIG_START( erik, special_state )
MCFG_SCREEN_VISIBLE_AREA(0, 384-1, 0, 256-1)
MCFG_VIDEO_START_OVERRIDE(special_state,erik)
MCFG_SCREEN_UPDATE_DRIVER(special_state, screen_update_erik)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD("palette", 8)
MCFG_PALETTE_INIT_OWNER(special_state,erik)
diff --git a/src/mess/drivers/spectrum.c b/src/mess/drivers/spectrum.c
index 40a4267da6e..7e256f16d52 100644
--- a/src/mess/drivers/spectrum.c
+++ b/src/mess/drivers/spectrum.c
@@ -703,6 +703,7 @@ MACHINE_CONFIG_START( spectrum_common, spectrum_state )
MCFG_SCREEN_UPDATE_DRIVER(spectrum_state, screen_update_spectrum)
MCFG_SCREEN_VBLANK_DRIVER(spectrum_state, screen_eof_spectrum)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 16)
MCFG_PALETTE_INIT_OWNER(spectrum_state, spectrum )
diff --git a/src/mess/drivers/ssystem3.c b/src/mess/drivers/ssystem3.c
index 8008912e769..ee4a97bc058 100644
--- a/src/mess/drivers/ssystem3.c
+++ b/src/mess/drivers/ssystem3.c
@@ -299,6 +299,7 @@ static MACHINE_CONFIG_START( ssystem3, ssystem3_state )
MCFG_SCREEN_SIZE(728, 437)
MCFG_SCREEN_VISIBLE_AREA(0, 728-1, 0, 437-1)
MCFG_SCREEN_UPDATE_DRIVER(ssystem3_state, screen_update_ssystem3)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 242 + 32768)
MCFG_PALETTE_INIT_OWNER(ssystem3_state, ssystem3)
diff --git a/src/mess/drivers/super80.c b/src/mess/drivers/super80.c
index d908f0f669f..faca5ec7bed 100644
--- a/src/mess/drivers/super80.c
+++ b/src/mess/drivers/super80.c
@@ -648,6 +648,7 @@ static MACHINE_CONFIG_START( super80, super80_state )
MCFG_SCREEN_REFRESH_RATE(48.8)
MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
MCFG_SCREEN_UPDATE_DRIVER(super80_state, screen_update_super80)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_MONOCHROME_GREEN("palette")
@@ -720,7 +721,7 @@ static MACHINE_CONFIG_START( super80v, super80_state )
MCFG_SCREEN_SIZE(SUPER80V_SCREEN_WIDTH, SUPER80V_SCREEN_HEIGHT)
MCFG_SCREEN_VISIBLE_AREA(0, SUPER80V_SCREEN_WIDTH-1, 0, SUPER80V_SCREEN_HEIGHT-1)
MCFG_SCREEN_UPDATE_DRIVER(super80_state, screen_update_super80v)
- MCFG_SCREEN_VBLANK_DRIVER(super80_state, screen_eof_super80m)
+ MCFG_SCREEN_VBLANK_DRIVER(super80_state, screen_eof_super80m)
MCFG_PALETTE_ADD("palette", 16)
MCFG_PALETTE_INIT_OWNER(super80_state,super80m)
diff --git a/src/mess/drivers/supracan.c b/src/mess/drivers/supracan.c
index 6ce0924db4e..fcc450c53e0 100644
--- a/src/mess/drivers/supracan.c
+++ b/src/mess/drivers/supracan.c
@@ -1924,6 +1924,8 @@ static MACHINE_CONFIG_START( supracan, supracan_state )
MCFG_SCREEN_ADD( "screen", RASTER )
MCFG_SCREEN_RAW_PARAMS(XTAL_10_738635MHz/2, 348, 0, 256, 256, 0, 240 ) /* No idea if this is correct */
MCFG_SCREEN_UPDATE_DRIVER(supracan_state, screen_update_supracan)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD( "palette", 32768 )
MCFG_PALETTE_FORMAT(xBBBBBGGGGGRRRRR)
MCFG_PALETTE_INIT_OWNER(supracan_state, supracan)
diff --git a/src/mess/drivers/svision.c b/src/mess/drivers/svision.c
index 4eb17678a74..e4cf17354d7 100644
--- a/src/mess/drivers/svision.c
+++ b/src/mess/drivers/svision.c
@@ -549,6 +549,7 @@ static MACHINE_CONFIG_START( svision, svision_state )
MCFG_SCREEN_SIZE(3+160+3, 160)
MCFG_SCREEN_VISIBLE_AREA(3+0, 3+160-1, 0, 160-1)
MCFG_SCREEN_UPDATE_DRIVER(svision_state, screen_update_svision)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", ARRAY_LENGTH(svision_palette) * 3)
MCFG_PALETTE_INIT_OWNER(svision_state, svision )
@@ -601,6 +602,7 @@ static MACHINE_CONFIG_DERIVED( tvlinkp, svisionp )
MCFG_MACHINE_RESET_OVERRIDE(svision_state, tvlink )
MCFG_SCREEN_MODIFY("screen")
+ MCFG_SCREEN_NO_PALETTE
MCFG_SCREEN_UPDATE_DRIVER(svision_state, screen_update_tvlink)
MACHINE_CONFIG_END
diff --git a/src/mess/drivers/svmu.c b/src/mess/drivers/svmu.c
index 76b7c82c965..e7ad33117f2 100644
--- a/src/mess/drivers/svmu.c
+++ b/src/mess/drivers/svmu.c
@@ -313,6 +313,8 @@ static MACHINE_CONFIG_START( svmu, svmu_state )
MCFG_SCREEN_SIZE(48 * (PIXEL_SIZE + PIXEL_DISTANCE), 32 * (PIXEL_SIZE + PIXEL_DISTANCE))
MCFG_SCREEN_VISIBLE_AREA(0, 48*(PIXEL_SIZE + PIXEL_DISTANCE) - 1, 0, 32*(PIXEL_SIZE + PIXEL_DISTANCE) - 1)
MCFG_SCREEN_UPDATE_DEVICE("maincpu", lc8670_cpu_device, screen_update)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_DEFAULT_LAYOUT(layout_svmu)
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(svmu_state, svmu)
diff --git a/src/mess/drivers/sys2900.c b/src/mess/drivers/sys2900.c
index 2678546bbdf..00cbe8fbc86 100644
--- a/src/mess/drivers/sys2900.c
+++ b/src/mess/drivers/sys2900.c
@@ -126,6 +126,7 @@ static MACHINE_CONFIG_START( sys2900, sys2900_state )
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
MCFG_SCREEN_UPDATE_DRIVER(sys2900_state, screen_update_sys2900)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/terak.c b/src/mess/drivers/terak.c
index e9d69c18572..1015b3ec3bd 100644
--- a/src/mess/drivers/terak.c
+++ b/src/mess/drivers/terak.c
@@ -100,6 +100,7 @@ static MACHINE_CONFIG_START( terak, terak_state )
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
MCFG_SCREEN_UPDATE_DRIVER(terak_state, screen_update_terak)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/thomson.c b/src/mess/drivers/thomson.c
index cec38441fdc..80cdf4533e1 100644
--- a/src/mess/drivers/thomson.c
+++ b/src/mess/drivers/thomson.c
@@ -622,6 +622,7 @@ static MACHINE_CONFIG_START( to7, thomson_state )
0, THOM_TOTAL_HEIGHT - 1 )
MCFG_SCREEN_UPDATE_DRIVER( thomson_state, screen_update_thom )
MCFG_SCREEN_VBLANK_DRIVER( thomson_state, thom_vblank )
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD ( "palette", 4097 ) /* 12-bit color + transparency */
MCFG_PALETTE_INIT_OWNER(thomson_state, thom)
diff --git a/src/mess/drivers/ti85.c b/src/mess/drivers/ti85.c
index 297c538aca5..8b209fa5ab1 100644
--- a/src/mess/drivers/ti85.c
+++ b/src/mess/drivers/ti85.c
@@ -503,6 +503,7 @@ static MACHINE_CONFIG_START( ti81, ti85_state )
MCFG_SCREEN_SIZE(96, 64)
MCFG_SCREEN_VISIBLE_AREA(0, 96-1, 0, 64-1)
MCFG_SCREEN_UPDATE_DRIVER(ti85_state, screen_update_ti85)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 224)
MCFG_PALETTE_INDIRECT_ENTRIES(224)
diff --git a/src/mess/drivers/ti89.c b/src/mess/drivers/ti89.c
index e6169a4ff0b..70911281917 100644
--- a/src/mess/drivers/ti89.c
+++ b/src/mess/drivers/ti89.c
@@ -528,6 +528,8 @@ static MACHINE_CONFIG_START( ti89, ti68k_state )
MCFG_SCREEN_UPDATE_DRIVER(ti68k_state, screen_update)
MCFG_SCREEN_SIZE(240, 128)
MCFG_SCREEN_VISIBLE_AREA(0, 160-1, 0, 100-1)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(ti68k_state, ti68k)
MCFG_DEFAULT_LAYOUT(layout_lcd)
diff --git a/src/mess/drivers/ti99_2.c b/src/mess/drivers/ti99_2.c
index 0d4efc4a693..ac3381b632e 100644
--- a/src/mess/drivers/ti99_2.c
+++ b/src/mess/drivers/ti99_2.c
@@ -391,6 +391,7 @@ static MACHINE_CONFIG_START( ti99_2, ti99_2_state )
MCFG_SCREEN_SIZE(256, 192)
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 0, 192-1)
MCFG_SCREEN_UPDATE_DRIVER(ti99_2_state, screen_update_ti99_2)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ti99_2)
MCFG_PALETTE_ADD_WHITE_AND_BLACK("palette")
diff --git a/src/mess/drivers/tim011.c b/src/mess/drivers/tim011.c
index c696ad7eff1..69b3c212288 100644
--- a/src/mess/drivers/tim011.c
+++ b/src/mess/drivers/tim011.c
@@ -157,6 +157,8 @@ static MACHINE_CONFIG_START( tim011,tim011_state )
MCFG_SCREEN_SIZE(512, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-1)
MCFG_SCREEN_UPDATE_DRIVER(tim011_state, screen_update_tim011)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
MACHINE_CONFIG_END
diff --git a/src/mess/drivers/tk80bs.c b/src/mess/drivers/tk80bs.c
index 20310b72232..d9b2c64adcb 100644
--- a/src/mess/drivers/tk80bs.c
+++ b/src/mess/drivers/tk80bs.c
@@ -195,6 +195,8 @@ static MACHINE_CONFIG_START( tk80bs, tk80bs_state )
MCFG_SCREEN_SIZE(256, 128)
MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 0, 128-1)
MCFG_SCREEN_UPDATE_DRIVER(tk80bs_state, screen_update_tk80bs)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", tk80bs)
diff --git a/src/mess/drivers/trs80.c b/src/mess/drivers/trs80.c
index 77e1777b7ed..076ab9207f0 100644
--- a/src/mess/drivers/trs80.c
+++ b/src/mess/drivers/trs80.c
@@ -590,6 +590,7 @@ static MACHINE_CONFIG_START( trs80, trs80_state ) // the original model I,
MCFG_SCREEN_SIZE(64*6, 16*12)
MCFG_SCREEN_VISIBLE_AREA(0,64*6-1,0,16*12-1)
MCFG_SCREEN_UPDATE_DRIVER(trs80_state, screen_update_trs80)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", trs80)
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/tx0.c b/src/mess/drivers/tx0.c
index dfc8037e208..e6a7ddc2d49 100644
--- a/src/mess/drivers/tx0.c
+++ b/src/mess/drivers/tx0.c
@@ -1588,6 +1588,7 @@ static MACHINE_CONFIG_START( tx0_64kw, tx0_state )
MCFG_SCREEN_VISIBLE_AREA(0, virtual_width-1, 0, virtual_height-1)
MCFG_SCREEN_UPDATE_DRIVER(tx0_state, screen_update_tx0)
MCFG_SCREEN_VBLANK_DRIVER(tx0_state, screen_eof_tx0)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_CRT_ADD( "crt", tx0_crt_interface )
MCFG_DEVICE_ADD("readt", TX0_READTAPE, 0)
diff --git a/src/mess/drivers/uknc.c b/src/mess/drivers/uknc.c
index 7c6d425e4be..e64a776ddb0 100644
--- a/src/mess/drivers/uknc.c
+++ b/src/mess/drivers/uknc.c
@@ -72,6 +72,8 @@ static MACHINE_CONFIG_START( uknc, uknc_state )
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
MCFG_SCREEN_UPDATE_DRIVER(uknc_state, screen_update_uknc)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
MACHINE_CONFIG_END
diff --git a/src/mess/drivers/unistar.c b/src/mess/drivers/unistar.c
index d62d378fba0..22b8f20170e 100644
--- a/src/mess/drivers/unistar.c
+++ b/src/mess/drivers/unistar.c
@@ -99,6 +99,8 @@ static MACHINE_CONFIG_START( unistar, unistar_state )
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
MCFG_SCREEN_UPDATE_DRIVER(unistar_state, screen_update_unistar)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", unistar)
MCFG_PALETTE_ADD("palette", 3)
MCFG_PALETTE_INIT_OWNER(unistar_state, unistar)
diff --git a/src/mess/drivers/univac.c b/src/mess/drivers/univac.c
index e4ac8240cc9..ae8e13f8944 100644
--- a/src/mess/drivers/univac.c
+++ b/src/mess/drivers/univac.c
@@ -148,6 +148,8 @@ static MACHINE_CONFIG_START( uts20, univac_state )
MCFG_SCREEN_UPDATE_DRIVER(univac_state, screen_update)
MCFG_SCREEN_SIZE(640, 250)
MCFG_SCREEN_VISIBLE_AREA(0, 639, 0, 249)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
MACHINE_CONFIG_END
diff --git a/src/mess/drivers/unixpc.c b/src/mess/drivers/unixpc.c
index adf55de672d..c0c460a06f0 100644
--- a/src/mess/drivers/unixpc.c
+++ b/src/mess/drivers/unixpc.c
@@ -208,6 +208,7 @@ static MACHINE_CONFIG_START( unixpc, unixpc_state )
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_UPDATE_DRIVER(unixpc_state, screen_update)
MCFG_SCREEN_RAW_PARAMS(XTAL_20MHz, 896, 0, 720, 367, 0, 348)
+ MCFG_SCREEN_PALETTE("palette")
// vsync should actually last 17264 pixels
MCFG_DEFAULT_LAYOUT(layout_unixpc)
diff --git a/src/mess/drivers/ut88.c b/src/mess/drivers/ut88.c
index 61471a5b027..a8b28107c9b 100644
--- a/src/mess/drivers/ut88.c
+++ b/src/mess/drivers/ut88.c
@@ -200,6 +200,8 @@ static MACHINE_CONFIG_START( ut88, ut88_state )
MCFG_SCREEN_VISIBLE_AREA(0, 64*8-1, 0, 28*8-1)
MCFG_VIDEO_START_OVERRIDE(ut88_state,ut88)
MCFG_SCREEN_UPDATE_DRIVER(ut88_state, screen_update_ut88)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", ut88 )
diff --git a/src/mess/drivers/vboy.c b/src/mess/drivers/vboy.c
index 8684caca2ea..d7628618a57 100644
--- a/src/mess/drivers/vboy.c
+++ b/src/mess/drivers/vboy.c
@@ -1439,11 +1439,13 @@ static MACHINE_CONFIG_START( vboy, vboy_state )
MCFG_SCREEN_ADD("3dleft", RASTER)
MCFG_SCREEN_RAW_PARAMS(XTAL_20MHz/2,757,0,384,264,0,224)
MCFG_SCREEN_UPDATE_DRIVER(vboy_state, screen_update_vboy_left)
+ MCFG_SCREEN_PALETTE("palette")
/* Right screen */
MCFG_SCREEN_ADD("3dright", RASTER)
MCFG_SCREEN_RAW_PARAMS(XTAL_20MHz/2,757,0,384,264,0,224)
MCFG_SCREEN_UPDATE_DRIVER(vboy_state, screen_update_vboy_right)
+ MCFG_SCREEN_PALETTE("palette")
/* cartridge */
MCFG_CARTSLOT_ADD("cart")
diff --git a/src/mess/drivers/vc4000.c b/src/mess/drivers/vc4000.c
index 14dc4c1ee88..de42f8a6c72 100644
--- a/src/mess/drivers/vc4000.c
+++ b/src/mess/drivers/vc4000.c
@@ -423,6 +423,7 @@ static MACHINE_CONFIG_START( vc4000, vc4000_state )
MCFG_SCREEN_SIZE(226, 312)
MCFG_SCREEN_VISIBLE_AREA(8, 184, 0, 269)
MCFG_SCREEN_UPDATE_DRIVER(vc4000_state, screen_update_vc4000)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 8)
MCFG_PALETTE_INIT_OWNER(vc4000_state, vc4000)
diff --git a/src/mess/drivers/vector06.c b/src/mess/drivers/vector06.c
index eac86093689..4ada3fcd1b6 100644
--- a/src/mess/drivers/vector06.c
+++ b/src/mess/drivers/vector06.c
@@ -175,6 +175,8 @@ static MACHINE_CONFIG_START( vector06, vector06_state )
MCFG_SCREEN_SIZE(256+64, 256+64)
MCFG_SCREEN_VISIBLE_AREA(0, 256+64-1, 0, 256+64-1)
MCFG_SCREEN_UPDATE_DRIVER(vector06_state, screen_update_vector06)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD("palette", 16)
MCFG_PALETTE_INIT_OWNER(vector06_state, vector06)
diff --git a/src/mess/drivers/vt220.c b/src/mess/drivers/vt220.c
index 3c26c8735f7..29f62f67732 100644
--- a/src/mess/drivers/vt220.c
+++ b/src/mess/drivers/vt220.c
@@ -67,6 +67,8 @@ static MACHINE_CONFIG_START( vt220, vt220_state )
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
MCFG_SCREEN_UPDATE_DRIVER(vt220_state, screen_update_vt220)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
/* internal ram */
diff --git a/src/mess/drivers/vt320.c b/src/mess/drivers/vt320.c
index 88bfb15e198..8ddab90488f 100644
--- a/src/mess/drivers/vt320.c
+++ b/src/mess/drivers/vt320.c
@@ -93,6 +93,8 @@ static MACHINE_CONFIG_START( vt320, vt320_state )
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
MCFG_SCREEN_UPDATE_DRIVER(vt320_state, screen_update_vt320)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
/* internal ram */
diff --git a/src/mess/drivers/vt520.c b/src/mess/drivers/vt520.c
index 2627ee36b2d..9cee1d95e64 100644
--- a/src/mess/drivers/vt520.c
+++ b/src/mess/drivers/vt520.c
@@ -84,6 +84,8 @@ static MACHINE_CONFIG_START( vt520, vt520_state )
MCFG_SCREEN_SIZE(802, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 802-1, 0, 480-1)
MCFG_SCREEN_UPDATE_DRIVER(vt520_state, screen_update_vt520)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
// On the board there are two M5M44256BJ-7 chips
diff --git a/src/mess/drivers/vta2000.c b/src/mess/drivers/vta2000.c
index 27e38c7144f..890d54aed80 100644
--- a/src/mess/drivers/vta2000.c
+++ b/src/mess/drivers/vta2000.c
@@ -170,7 +170,9 @@ static MACHINE_CONFIG_START( vta2000, vta2000_state )
MCFG_SCREEN_SIZE(80*8, 25*12)
MCFG_SCREEN_VISIBLE_AREA(0, 80*8-1, 0, 25*12-1)
MCFG_SCREEN_UPDATE_DRIVER(vta2000_state, screen_update_vta2000)
- MCFG_PALETTE_ADD("palette", 3)
+ MCFG_SCREEN_PALETTE("palette")
+
+ MCFG_PALETTE_ADD("palette", 3)
MCFG_PALETTE_INIT_OWNER(vta2000_state, vta2000)
MCFG_GFXDECODE_ADD("gfxdecode", vta2000)
MACHINE_CONFIG_END
diff --git a/src/mess/drivers/vtech2.c b/src/mess/drivers/vtech2.c
index 5ae4db5b4d3..dcb27989121 100644
--- a/src/mess/drivers/vtech2.c
+++ b/src/mess/drivers/vtech2.c
@@ -439,6 +439,7 @@ static MACHINE_CONFIG_START( laser350, vtech2_state )
MCFG_SCREEN_SIZE(88*8, 24*8+32)
MCFG_SCREEN_VISIBLE_AREA(0*8, 88*8-1, 0*8, 24*8+32-1)
MCFG_SCREEN_UPDATE_DRIVER(vtech2_state, screen_update_laser)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", vtech2 )
MCFG_PALETTE_ADD("palette", 512+16)
diff --git a/src/mess/drivers/wswan.c b/src/mess/drivers/wswan.c
index 77b8f3af339..7625b2cf56f 100644
--- a/src/mess/drivers/wswan.c
+++ b/src/mess/drivers/wswan.c
@@ -134,6 +134,8 @@ static MACHINE_CONFIG_START( wswan, wswan_state )
MCFG_SCREEN_UPDATE_DRIVER(wswan_state, screen_update)
MCFG_SCREEN_SIZE( WSWAN_X_PIXELS, WSWAN_Y_PIXELS )
MCFG_SCREEN_VISIBLE_AREA(0*8, WSWAN_X_PIXELS - 1, 0, WSWAN_Y_PIXELS - 1)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_DEFAULT_LAYOUT(layout_wswan)
MCFG_QUANTUM_TIME(attotime::from_hz(60))
diff --git a/src/mess/drivers/x07.c b/src/mess/drivers/x07.c
index 920bc222059..e619a3e29f8 100644
--- a/src/mess/drivers/x07.c
+++ b/src/mess/drivers/x07.c
@@ -1506,6 +1506,8 @@ static MACHINE_CONFIG_START( x07, x07_state )
MCFG_SCREEN_UPDATE_DRIVER(x07_state, screen_update)
MCFG_SCREEN_SIZE(120, 32)
MCFG_SCREEN_VISIBLE_AREA(0, 120-1, 0, 32-1)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(x07_state, x07)
MCFG_DEFAULT_LAYOUT(layout_lcd)
diff --git a/src/mess/drivers/x68k.c b/src/mess/drivers/x68k.c
index 60fe96a8716..7ae94f98fcb 100644
--- a/src/mess/drivers/x68k.c
+++ b/src/mess/drivers/x68k.c
@@ -1949,6 +1949,8 @@ static MACHINE_CONFIG_FRAGMENT( x68000_base )
MCFG_SCREEN_SIZE(1096, 568) // inital setting
MCFG_SCREEN_VISIBLE_AREA(0, 767, 0, 511)
MCFG_SCREEN_UPDATE_DRIVER(x68k_state, screen_update_x68000)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", empty)
MCFG_PALETTE_ADD("palette", 65536)
diff --git a/src/mess/drivers/xavix.c b/src/mess/drivers/xavix.c
index 8810443894d..9fbc612de03 100644
--- a/src/mess/drivers/xavix.c
+++ b/src/mess/drivers/xavix.c
@@ -152,6 +152,7 @@ static MACHINE_CONFIG_START( xavix, xavix_state )
MCFG_SCREEN_UPDATE_DRIVER(xavix_state, screen_update)
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", xavix)
diff --git a/src/mess/drivers/ymmu100.c b/src/mess/drivers/ymmu100.c
index 00b2d4712ce..29ee4524f85 100644
--- a/src/mess/drivers/ymmu100.c
+++ b/src/mess/drivers/ymmu100.c
@@ -173,6 +173,8 @@ static MACHINE_CONFIG_START( mu100, mu100_state )
MCFG_SCREEN_UPDATE_DEVICE("lcd", hd44780_device, screen_update)
MCFG_SCREEN_SIZE(20*6, 4*9)
MCFG_SCREEN_VISIBLE_AREA(0, 20*6-1, 0, 4*9-1)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD_WHITE_AND_BLACK("palette")
MCFG_DEFAULT_LAYOUT(layout_lcd)
diff --git a/src/mess/drivers/z100.c b/src/mess/drivers/z100.c
index 8746ce1912c..0ce1dc9dbfa 100644
--- a/src/mess/drivers/z100.c
+++ b/src/mess/drivers/z100.c
@@ -736,6 +736,8 @@ static MACHINE_CONFIG_START( z100, z100_state )
MCFG_SCREEN_SIZE(640, 480)
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
MCFG_SCREEN_UPDATE_DRIVER(z100_state, screen_update_z100)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD("palette", 8)
/* Devices */
diff --git a/src/mess/drivers/z1013.c b/src/mess/drivers/z1013.c
index 37b3340b691..e3ae786d613 100644
--- a/src/mess/drivers/z1013.c
+++ b/src/mess/drivers/z1013.c
@@ -408,6 +408,8 @@ static MACHINE_CONFIG_START( z1013, z1013_state )
MCFG_SCREEN_SIZE(32*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0, 32*8-1, 0, 32*8-1)
MCFG_SCREEN_UPDATE_DRIVER(z1013_state, screen_update_z1013)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", z1013)
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
diff --git a/src/mess/drivers/z88.c b/src/mess/drivers/z88.c
index f823d572e06..4467c32a223 100644
--- a/src/mess/drivers/z88.c
+++ b/src/mess/drivers/z88.c
@@ -656,6 +656,7 @@ static MACHINE_CONFIG_START( z88, z88_state )
MCFG_SCREEN_SIZE(Z88_SCREEN_WIDTH, Z88_SCREEN_HEIGHT)
MCFG_SCREEN_VISIBLE_AREA(0, (Z88_SCREEN_WIDTH - 1), 0, (Z88_SCREEN_HEIGHT - 1))
MCFG_SCREEN_UPDATE_DEVICE("blink", upd65031_device, screen_update)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", Z88_NUM_COLOURS)
MCFG_PALETTE_INIT_OWNER(z88_state, z88)
diff --git a/src/mess/drivers/z9001.c b/src/mess/drivers/z9001.c
index 5cf49ff70b8..17dada0798d 100644
--- a/src/mess/drivers/z9001.c
+++ b/src/mess/drivers/z9001.c
@@ -250,6 +250,8 @@ static MACHINE_CONFIG_START( z9001, z9001_state )
MCFG_SCREEN_SIZE(40*8, 24*8)
MCFG_SCREEN_VISIBLE_AREA(0, 40*8-1, 0, 24*8-1)
MCFG_SCREEN_UPDATE_DRIVER(z9001_state, screen_update_z9001)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_GFXDECODE_ADD("gfxdecode", z9001)
MCFG_PALETTE_ADD("palette", 16)
diff --git a/src/mess/drivers/zorba.c b/src/mess/drivers/zorba.c
index 2342fdef044..0cb12d4e04e 100644
--- a/src/mess/drivers/zorba.c
+++ b/src/mess/drivers/zorba.c
@@ -356,6 +356,8 @@ static MACHINE_CONFIG_START( zorba, zorba_state )
MCFG_SCREEN_UPDATE_DRIVER(zorba_state, screen_update)
MCFG_SCREEN_SIZE(640, 276)
MCFG_SCREEN_VISIBLE_AREA(0, 639, 0, 275)
+ MCFG_SCREEN_PALETTE("palette")
+
MCFG_PALETTE_ADD("palette", 3)
MCFG_PALETTE_INIT_OWNER(zorba_state, zorba)
diff --git a/src/mess/drivers/zx.c b/src/mess/drivers/zx.c
index d03066a1fff..c179a4867a9 100644
--- a/src/mess/drivers/zx.c
+++ b/src/mess/drivers/zx.c
@@ -396,6 +396,7 @@ static MACHINE_CONFIG_START( zx80, zx_state )
MCFG_SCREEN_SIZE(ZX81_PIXELS_PER_SCANLINE, ZX81_PAL_SCANLINES)
MCFG_SCREEN_VISIBLE_AREA(0, ZX81_PIXELS_PER_SCANLINE-1, 0, ZX81_PAL_SCANLINES-1)
MCFG_SCREEN_VBLANK_DRIVER(zx_state, screen_eof_zx)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", zx80)
MCFG_PALETTE_ADD("palette", 4)
diff --git a/src/mess/video/kyocera.c b/src/mess/video/kyocera.c
index 13c6088d43c..34c3d60f95d 100644
--- a/src/mess/video/kyocera.c
+++ b/src/mess/video/kyocera.c
@@ -48,6 +48,7 @@ MACHINE_CONFIG_FRAGMENT( kc85_video )
MCFG_SCREEN_UPDATE_DRIVER(kc85_state, screen_update)
MCFG_SCREEN_SIZE(240, 64)
MCFG_SCREEN_VISIBLE_AREA(0, 240-1, 0, 64-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_DEFAULT_LAYOUT(layout_lcd)
@@ -75,6 +76,7 @@ MACHINE_CONFIG_FRAGMENT( tandy200_video )
MCFG_SCREEN_UPDATE_DRIVER(tandy200_state, screen_update)
MCFG_SCREEN_SIZE(240, 128)
MCFG_SCREEN_VISIBLE_AREA(0, 240-1, 0, 128-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_DEFAULT_LAYOUT(layout_lcd)
diff --git a/src/mess/video/osi.c b/src/mess/video/osi.c
index f8a494b11c1..3125460f18b 100644
--- a/src/mess/video/osi.c
+++ b/src/mess/video/osi.c
@@ -149,6 +149,7 @@ MACHINE_CONFIG_FRAGMENT( osi600_video )
MCFG_SCREEN_UPDATE_DRIVER(sb2m600_state, screen_update)
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0, 32*8-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
MACHINE_CONFIG_END
@@ -157,8 +158,9 @@ MACHINE_CONFIG_FRAGMENT( uk101_video )
MCFG_SCREEN_ADD(SCREEN_TAG, RASTER)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_UPDATE_DRIVER(uk101_state, screen_update)
- MCFG_SCREEN_SIZE(64*8, 16*16)
+ MCFG_SCREEN_SIZE(64*8, 16*16)
MCFG_SCREEN_VISIBLE_AREA(0, 64*8-1, 0, 16*16-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_BLACK_AND_WHITE("palette")
MACHINE_CONFIG_END
@@ -169,6 +171,7 @@ MACHINE_CONFIG_FRAGMENT( osi630_video )
MCFG_SCREEN_UPDATE_DRIVER(sb2m600_state, screen_update)
MCFG_SCREEN_SIZE(64*8, 16*16)
MCFG_SCREEN_VISIBLE_AREA(0, 64*8-1, 0, 16*16-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD("palette", 8+2)
MCFG_PALETTE_INIT_OWNER(sb2m600_state, osi630)
diff --git a/src/mess/video/pc8401a.c b/src/mess/video/pc8401a.c
index c4c4e71e9a8..2d2d0889d60 100644
--- a/src/mess/video/pc8401a.c
+++ b/src/mess/video/pc8401a.c
@@ -85,6 +85,7 @@ MACHINE_CONFIG_FRAGMENT( pc8401a_video )
MCFG_SCREEN_UPDATE_DEVICE(SED1330_TAG, sed1330_device, screen_update)
MCFG_SCREEN_SIZE(480, 128)
MCFG_SCREEN_VISIBLE_AREA(0, 480-1, 0, 128-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_SED1330_ADD(SED1330_TAG, 0, SCREEN_TAG, pc8401a_lcdc)
MACHINE_CONFIG_END
@@ -101,6 +102,7 @@ MACHINE_CONFIG_FRAGMENT( pc8500_video )
MCFG_SCREEN_UPDATE_DEVICE(SED1330_TAG, sed1330_device, screen_update)
MCFG_SCREEN_SIZE(480, 208)
MCFG_SCREEN_VISIBLE_AREA(0, 480-1, 0, 200-1)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_SED1330_ADD(SED1330_TAG, 0, SCREEN_TAG, pc8500_lcdc)
@@ -111,6 +113,7 @@ MACHINE_CONFIG_FRAGMENT( pc8500_video )
MCFG_SCREEN_VISIBLE_AREA(0, 80*8-1, 0, 24*8-1)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500))
MCFG_SCREEN_REFRESH_RATE(50)
+ MCFG_SCREEN_PALETTE("palette")
MCFG_MC6845_ADD(MC6845_TAG, MC6845, CRT_SCREEN_TAG, 400000, pc8441a_mc6845_interface)
MACHINE_CONFIG_END