Previous 15994 Revisions Next

r14016 Friday 13th January, 2012 at 22:09:55 UTC by Aaron Giles
MESS equivalent of MAME 15022:

Some cleanup of the previous change. Added new template
device_delegate which wraps a regular delegate and includes
a string pointer to a device tag, which can be simply
resolved later. Converted the screen_update delegates to
to be based on this. Changed the mechanism by which screen
formats are auto-deduced. Converted SCREEN_EOF to use these
delegates as well, so now there is MCFG_SCREEN_EOF_STATIC/
DRIVER/DEVICE just like MCFG_SCREEN_UPDATE.
[src/emu]delegate.h device.h screen.c screen.h
[src/emu/machine]laserdsc.c laserdsc.h
[src/mame/drivers]2mindril.c airbustr.c alg.c armedf.c asuka.c atarig1.c atarig42.c atarigt.c atarigx2.c baraduke.c bbusters.c bionicc.c bking.c blktiger.c carpolo.c cchance.c champbas.c champbwl.c cliffhgr.c commando.c cps1.c cps2.c crshrace.c crystal.c cubeqst.c ddz.c dec8.c deco32.c deco_ld.c deco_mlc.c djboy.c dlair.c dooyong.c dreamwld.c dynduke.c esh.c exedexes.c fcrash.c firefox.c fuukifg3.c gaelco2.c galaga.c galpanic.c gaplus.c gng.c goal92.c gottlieb.c gpworld.c hng64.c homedata.c hvyunit.c igs011.c istellar.c ladybug.c lastduel.c lemmings.c lgp.c lockon.c lwings.c macrossp.c maygayv1.c mcatadv.c megaplay.c megasys1.c megatech.c mermaid.c mirage.c model1.c mw8080bw.c n8080.c namcos1.c namcos86.c ninjakd2.c nmk16.c othldrby.c pgm.c pgm2.c photon2.c psattack.c psikyo.c psikyosh.c raiden.c redclash.c sandscrp.c segac2.c segald.c seta.c seta2.c shadfrce.c sidearms.c sigmab98.c slapfght.c slapshot.c snowbros.c sprint2.c sprint4.c sprint8.c srumbler.c sspeedr.c ssrj.c starshp1.c superdq.c suprnova.c taito_b.c taito_f2.c taito_f3.c taito_l.c tank8.c taotaido.c tceptor.c tigeroad.c tmnt.c tnzs.c toaplan1.c toaplan2.c toki.c twin16.c twincobr.c tx1.c ultratnk.c wardner.c wheelfir.c wolfpack.c wwfwfest.c xmen.c
[src/mame/machine]megadriv.c segamsys.c
[src/mess/drivers]amstrad.c elwro800.c mbc55x.c pdp1.c rmnimbus.c spectrum.c super80.c thomson.c ti990_10.c tx0.c z88.c zx.c

src/mame/machine/megadriv.c
r14015r14016
95659565   MCFG_SCREEN_SIZE(64*8, 64*8)
95669566   MCFG_SCREEN_VISIBLE_AREA(0, 32*8-1, 0, 28*8-1)
95679567   MCFG_SCREEN_UPDATE_STATIC(megadriv) /* Copies a bitmap */
9568   MCFG_SCREEN_EOF(megadriv) /* Used to Sync the timing */
9568   MCFG_SCREEN_EOF_STATIC(megadriv) /* Used to Sync the timing */
95699569
95709570   MCFG_NVRAM_HANDLER(megadriv)
95719571
r14015r14016
96139613   MCFG_SCREEN_SIZE(64*8, 64*8)
96149614   MCFG_SCREEN_VISIBLE_AREA(0, 32*8-1, 0, 28*8-1)
96159615   MCFG_SCREEN_UPDATE_STATIC(megadriv) /* Copies a bitmap */
9616   MCFG_SCREEN_EOF(megadriv) /* Used to Sync the timing */
9616   MCFG_SCREEN_EOF_STATIC(megadriv) /* Used to Sync the timing */
96179617
96189618   MCFG_NVRAM_HANDLER(megadriv)
96199619
src/mame/machine/segamsys.c
r14015r14016
17291729   MCFG_SCREEN_VISIBLE_AREA(0, 255, 0, 223)
17301730//  MCFG_SCREEN_VISIBLE_AREA(0, 255, 0, 191)
17311731   MCFG_SCREEN_UPDATE_STATIC(megatech_md_sms) /* Copies a bitmap */
1732   MCFG_SCREEN_EOF(sms) /* Used to Sync the timing */
1732   MCFG_SCREEN_EOF_STATIC(sms) /* Used to Sync the timing */
17331733
17341734   MCFG_PALETTE_LENGTH(0x200)
17351735
src/mame/drivers/dynduke.c
r14015r14016
295295   MCFG_SCREEN_SIZE(32*8, 32*8)
296296   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
297297   MCFG_SCREEN_UPDATE_STATIC(dynduke)
298   MCFG_SCREEN_EOF(dynduke)
298   MCFG_SCREEN_EOF_STATIC(dynduke)
299299
300300   MCFG_GFXDECODE(dynduke)
301301   MCFG_PALETTE_LENGTH(2048)
src/mame/drivers/blktiger.c
r14015r14016
345345   MCFG_SCREEN_SIZE(32*8, 32*8)
346346   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
347347   MCFG_SCREEN_UPDATE_STATIC(blktiger)
348   MCFG_SCREEN_EOF(blktiger)
348   MCFG_SCREEN_EOF_STATIC(blktiger)
349349
350350   MCFG_GFXDECODE(blktiger)
351351   MCFG_PALETTE_LENGTH(1024)
src/mame/drivers/deco_mlc.c
r14015r14016
396396   MCFG_SCREEN_SIZE(40*8, 32*8)
397397   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
398398   MCFG_SCREEN_UPDATE_STATIC(mlc)
399   MCFG_SCREEN_EOF(mlc)
399   MCFG_SCREEN_EOF_STATIC(mlc)
400400
401401   MCFG_GFXDECODE(deco_mlc)
402402   MCFG_PALETTE_LENGTH(2048)
r14015r14016
428428   MCFG_SCREEN_SIZE(40*8, 32*8)
429429   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
430430   MCFG_SCREEN_UPDATE_STATIC(mlc)
431   MCFG_SCREEN_EOF(mlc)
431   MCFG_SCREEN_EOF_STATIC(mlc)
432432
433433   MCFG_GFXDECODE(deco_mlc)
434434   MCFG_PALETTE_LENGTH(2048)
src/mame/drivers/snowbros.c
r14015r14016
14851485   MCFG_SCREEN_SIZE(32*8, 262)
14861486   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
14871487   MCFG_SCREEN_UPDATE_STATIC(snowbros)
1488   MCFG_SCREEN_EOF(snowbros)
1488   MCFG_SCREEN_EOF_STATIC(snowbros)
14891489
14901490   MCFG_GFXDECODE(snowbros)
14911491   MCFG_PALETTE_LENGTH(256)
r14015r14016
15141514   MCFG_GFXDECODE(wb)
15151515   MCFG_SCREEN_MODIFY("screen")
15161516   MCFG_SCREEN_UPDATE_STATIC(wintbob)
1517   MCFG_SCREEN_EOF(0)
1517   MCFG_SCREEN_EOF_NONE()
15181518MACHINE_CONFIG_END
15191519
15201520
src/mame/drivers/bking.c
r14015r14016
504504   MCFG_SCREEN_SIZE(32*8, 32*8)
505505   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
506506   MCFG_SCREEN_UPDATE_STATIC(bking)
507   MCFG_SCREEN_EOF(bking)
507   MCFG_SCREEN_EOF_STATIC(bking)
508508
509509   MCFG_GFXDECODE(bking)
510510   MCFG_PALETTE_LENGTH(4*8+4*4+4*2+4*2)
src/mame/drivers/gaplus.c
r14015r14016
591591   MCFG_SCREEN_SIZE(36*8, 28*8)
592592   MCFG_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 0*8, 28*8-1)
593593   MCFG_SCREEN_UPDATE_STATIC(gaplus)
594   MCFG_SCREEN_EOF(gaplus)
594   MCFG_SCREEN_EOF_STATIC(gaplus)
595595
596596   MCFG_GFXDECODE(gaplus)
597597   MCFG_PALETTE_LENGTH(64*4+64*8)
src/mame/drivers/carpolo.c
r14015r14016
267267   MCFG_SCREEN_SIZE(256, 256)
268268   MCFG_SCREEN_VISIBLE_AREA(0, 239, 0, 255)
269269   MCFG_SCREEN_UPDATE_STATIC(carpolo)
270   MCFG_SCREEN_EOF(carpolo)
270   MCFG_SCREEN_EOF_STATIC(carpolo)
271271
272272   MCFG_GFXDECODE(carpolo)
273273   MCFG_PALETTE_LENGTH(12*2+2*16+4*2)
src/mame/drivers/exedexes.c
r14015r14016
239239   MCFG_SCREEN_SIZE(32*8, 32*8)
240240   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
241241   MCFG_SCREEN_UPDATE_STATIC(exedexes)
242   MCFG_SCREEN_EOF(exedexes)
242   MCFG_SCREEN_EOF_STATIC(exedexes)
243243
244244   MCFG_GFXDECODE(exedexes)
245245   MCFG_PALETTE_LENGTH(64*4+64*4+16*16+16*16)
src/mame/drivers/seta2.c
r14015r14016
20322032   MCFG_SCREEN_SIZE(0x200, 0x200)
20332033   MCFG_SCREEN_VISIBLE_AREA(0x40, 0x1c0-1, 0x80, 0x170-1)
20342034   MCFG_SCREEN_UPDATE_STATIC(seta2)
2035   MCFG_SCREEN_EOF(seta2)
2035   MCFG_SCREEN_EOF_STATIC(seta2)
20362036
20372037   MCFG_GFXDECODE(seta2)
20382038   MCFG_PALETTE_LENGTH(0x8000+0xf0)   // extra 0xf0 because we might draw 256-color object with 16-color granularity
r14015r14016
22282228   MCFG_SCREEN_SIZE(0x200, 0x200)
22292229   MCFG_SCREEN_VISIBLE_AREA(0x0, 0x140-1, 0x80, 0x170-1)
22302230   MCFG_SCREEN_UPDATE_STATIC(seta2)
2231   MCFG_SCREEN_EOF(seta2)
2231   MCFG_SCREEN_EOF_STATIC(seta2)
22322232
22332233   MCFG_GFXDECODE(funcube)
22342234   MCFG_PALETTE_LENGTH(0x8000+0xf0)   // extra 0xf0 because we might draw 256-color object with 16-color granularity
r14015r14016
22642264   MCFG_SCREEN_SIZE(0x200, 0x200)
22652265   MCFG_SCREEN_VISIBLE_AREA(0x40, 0x1c0-1, 0x80, 0x170-1)
22662266   MCFG_SCREEN_UPDATE_STATIC(seta2)
2267   MCFG_SCREEN_EOF(seta2)
2267   MCFG_SCREEN_EOF_STATIC(seta2)
22682268
22692269   MCFG_GFXDECODE(funcube)
22702270   MCFG_PALETTE_LENGTH(0x8000+0xf0)   // extra 0xf0 because we might draw 256-color object with 16-color granularity
src/mame/drivers/deco32.c
r14015r14016
17711771   MCFG_SCREEN_SIZE(42*8, 32*8)
17721772   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
17731773   MCFG_SCREEN_UPDATE_STATIC(captaven)
1774   MCFG_SCREEN_EOF(captaven)
1774   MCFG_SCREEN_EOF_STATIC(captaven)
17751775
17761776   MCFG_GFXDECODE(captaven)
17771777   MCFG_PALETTE_LENGTH(2048)
r14015r14016
19831983   MCFG_SCREEN_SIZE(42*8, 32*8)
19841984   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
19851985   MCFG_SCREEN_UPDATE_STATIC(dragngun)
1986   MCFG_SCREEN_EOF(dragngun)
1986   MCFG_SCREEN_EOF_STATIC(dragngun)
19871987
19881988   MCFG_DECO16IC_ADD("tilegen1", dragngun_deco16ic_tilegen1_intf)
19891989   MCFG_DECO16IC_ADD("tilegen2", dragngun_deco16ic_tilegen2_intf)
r14015r14016
20562056   MCFG_SCREEN_SIZE(42*8, 32*8+22)
20572057   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
20582058   MCFG_SCREEN_UPDATE_STATIC(dragngun)
2059   MCFG_SCREEN_EOF(dragngun)
2059   MCFG_SCREEN_EOF_STATIC(dragngun)
20602060
20612061   MCFG_DECO16IC_ADD("tilegen1", lockload_deco16ic_tilegen1_intf)
20622062   MCFG_DECO16IC_ADD("tilegen2", lockload_deco16ic_tilegen2_intf)
src/mame/drivers/superdq.c
r14015r14016
332332   MCFG_MACHINE_RESET(superdq)
333333
334334   MCFG_LASERDISC_LDV1000_ADD("laserdisc")
335   MCFG_LASERDISC_OVERLAY(256, 256, superdq)
335   MCFG_LASERDISC_OVERLAY_STATIC(256, 256, superdq)
336336
337337   /* video hardware */
338338   MCFG_LASERDISC_SCREEN_ADD_NTSC("screen", "laserdisc")
src/mame/drivers/lwings.c
r14015r14016
809809   MCFG_SCREEN_SIZE(32*8, 32*8)
810810   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
811811   MCFG_SCREEN_UPDATE_STATIC(lwings)
812   MCFG_SCREEN_EOF(lwings)
812   MCFG_SCREEN_EOF_STATIC(lwings)
813813
814814   MCFG_GFXDECODE(lwings)
815815   MCFG_PALETTE_LENGTH(1024)
src/mame/drivers/taito_b.c
r14015r14016
20692069   MCFG_SCREEN_SIZE(64*8, 32*8)
20702070   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
20712071   MCFG_SCREEN_UPDATE_STATIC(taitob)
2072   MCFG_SCREEN_EOF(taitob)
2072   MCFG_SCREEN_EOF_STATIC(taitob)
20732073
20742074   MCFG_GFXDECODE(taito_b)
20752075   MCFG_PALETTE_LENGTH(4096)
r14015r14016
21152115   MCFG_SCREEN_SIZE(64*8, 32*8)
21162116   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
21172117   MCFG_SCREEN_UPDATE_STATIC(taitob)
2118   MCFG_SCREEN_EOF(taitob)
2118   MCFG_SCREEN_EOF_STATIC(taitob)
21192119
21202120   MCFG_GFXDECODE(taito_b)
21212121   MCFG_PALETTE_LENGTH(4096)
r14015r14016
21612161   MCFG_SCREEN_SIZE(64*8, 32*8)
21622162   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
21632163   MCFG_SCREEN_UPDATE_STATIC(taitob)
2164   MCFG_SCREEN_EOF(taitob)
2164   MCFG_SCREEN_EOF_STATIC(taitob)
21652165
21662166   MCFG_GFXDECODE(taito_b)
21672167   MCFG_PALETTE_LENGTH(4096)
r14015r14016
22072207   MCFG_SCREEN_SIZE(64*8, 32*8)
22082208   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
22092209   MCFG_SCREEN_UPDATE_STATIC(taitob)
2210   MCFG_SCREEN_EOF(taitob)
2210   MCFG_SCREEN_EOF_STATIC(taitob)
22112211
22122212   MCFG_GFXDECODE(taito_b)
22132213   MCFG_PALETTE_LENGTH(4096)
r14015r14016
22522252   MCFG_SCREEN_SIZE(64*8, 32*8)
22532253   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
22542254   MCFG_SCREEN_UPDATE_STATIC(taitob)
2255   MCFG_SCREEN_EOF(taitob)
2255   MCFG_SCREEN_EOF_STATIC(taitob)
22562256
22572257   MCFG_GFXDECODE(taito_b)
22582258   MCFG_PALETTE_LENGTH(4096)
r14015r14016
22982298   MCFG_SCREEN_SIZE(64*8, 32*8)
22992299   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
23002300   MCFG_SCREEN_UPDATE_STATIC(taitob)
2301   MCFG_SCREEN_EOF(taitob)
2301   MCFG_SCREEN_EOF_STATIC(taitob)
23022302
23032303   MCFG_GFXDECODE(taito_b)
23042304   MCFG_PALETTE_LENGTH(4096)
r14015r14016
23492349   MCFG_SCREEN_SIZE(64*8, 32*8)
23502350   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
23512351   MCFG_SCREEN_UPDATE_STATIC(taitob)
2352   MCFG_SCREEN_EOF(taitob)
2352   MCFG_SCREEN_EOF_STATIC(taitob)
23532353
23542354   MCFG_GFXDECODE(rambo3)
23552355   MCFG_PALETTE_LENGTH(4096)
r14015r14016
23952395   MCFG_SCREEN_SIZE(64*8, 32*8)
23962396   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
23972397   MCFG_SCREEN_UPDATE_STATIC(taitob)
2398   MCFG_SCREEN_EOF(taitob)
2398   MCFG_SCREEN_EOF_STATIC(taitob)
23992399
24002400   MCFG_GFXDECODE(taito_b)
24012401   MCFG_PALETTE_LENGTH(4096)
r14015r14016
24442444   MCFG_SCREEN_SIZE(64*8, 32*8)
24452445   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
24462446   MCFG_SCREEN_UPDATE_STATIC(taitob)
2447   MCFG_SCREEN_EOF(taitob)
2447   MCFG_SCREEN_EOF_STATIC(taitob)
24482448
24492449   MCFG_GFXDECODE(taito_b)
24502450   MCFG_PALETTE_LENGTH(4096)
r14015r14016
24942494   MCFG_SCREEN_SIZE(64*8, 32*8)
24952495   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
24962496   MCFG_SCREEN_UPDATE_STATIC(taitob)
2497   MCFG_SCREEN_EOF(taitob)
2497   MCFG_SCREEN_EOF_STATIC(taitob)
24982498
24992499   MCFG_GFXDECODE(taito_b)
25002500   MCFG_PALETTE_LENGTH(4096)
r14015r14016
25402540   MCFG_SCREEN_SIZE(64*8, 32*8)
25412541   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
25422542   MCFG_SCREEN_UPDATE_STATIC(taitob)
2543   MCFG_SCREEN_EOF(taitob)
2543   MCFG_SCREEN_EOF_STATIC(taitob)
25442544
25452545   MCFG_GFXDECODE(taito_b)
25462546   MCFG_PALETTE_LENGTH(4096)
r14015r14016
25902590   MCFG_SCREEN_SIZE(64*8, 32*8)
25912591   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
25922592   MCFG_SCREEN_UPDATE_STATIC(taitob)
2593   MCFG_SCREEN_EOF(taitob)
2593   MCFG_SCREEN_EOF_STATIC(taitob)
25942594
25952595   MCFG_GFXDECODE(taito_b)
25962596   MCFG_PALETTE_LENGTH(4096)
r14015r14016
26362636   MCFG_SCREEN_SIZE(64*8, 32*8)
26372637   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
26382638   MCFG_SCREEN_UPDATE_STATIC(taitob)
2639   MCFG_SCREEN_EOF(taitob)
2639   MCFG_SCREEN_EOF_STATIC(taitob)
26402640
26412641   MCFG_GFXDECODE(taito_b)
26422642   MCFG_PALETTE_LENGTH(4096)
r14015r14016
26852685   MCFG_SCREEN_SIZE(64*8, 32*8)
26862686   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
26872687   MCFG_SCREEN_UPDATE_STATIC(taitob)
2688   MCFG_SCREEN_EOF(taitob)
2688   MCFG_SCREEN_EOF_STATIC(taitob)
26892689
26902690   MCFG_GFXDECODE(taito_b)
26912691   MCFG_PALETTE_LENGTH(4096)
r14015r14016
27322732   MCFG_SCREEN_SIZE(64*8, 32*8)
27332733   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
27342734   MCFG_SCREEN_UPDATE_STATIC(taitob)
2735   MCFG_SCREEN_EOF(taitob)
2735   MCFG_SCREEN_EOF_STATIC(taitob)
27362736
27372737   MCFG_GFXDECODE(taito_b)
27382738   MCFG_PALETTE_LENGTH(4096)
r14015r14016
27782778   MCFG_SCREEN_SIZE(64*8, 32*8)
27792779   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
27802780   MCFG_SCREEN_UPDATE_STATIC(taitob)
2781   MCFG_SCREEN_EOF(taitob)
2781   MCFG_SCREEN_EOF_STATIC(taitob)
27822782
27832783   MCFG_GFXDECODE(taito_b)
27842784   MCFG_PALETTE_LENGTH(4096)
r14015r14016
28332833   MCFG_SCREEN_SIZE(64*8, 32*8)
28342834   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
28352835   MCFG_SCREEN_UPDATE_STATIC(taitob)
2836   MCFG_SCREEN_EOF(taitob)
2836   MCFG_SCREEN_EOF_STATIC(taitob)
28372837
28382838   MCFG_GFXDECODE(taito_b)
28392839   MCFG_PALETTE_LENGTH(4096)
r14015r14016
28862886   MCFG_SCREEN_SIZE(64*8, 32*8)
28872887   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
28882888   MCFG_SCREEN_UPDATE_STATIC(taitob)
2889   MCFG_SCREEN_EOF(taitob)
2889   MCFG_SCREEN_EOF_STATIC(taitob)
28902890
28912891   MCFG_GFXDECODE(taito_b)
28922892   MCFG_PALETTE_LENGTH(4096)
r14015r14016
29372937   MCFG_SCREEN_SIZE(64*8, 32*8)
29382938   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
29392939   MCFG_SCREEN_UPDATE_STATIC(taitob)
2940   MCFG_SCREEN_EOF(taitob)
2940   MCFG_SCREEN_EOF_STATIC(taitob)
29412941
29422942   MCFG_GFXDECODE(taito_b)
29432943   MCFG_PALETTE_LENGTH(4096)
src/mame/drivers/mw8080bw.c
r14015r14016
23742374   /* video hardware */
23752375   MCFG_SCREEN_MODIFY("screen")
23762376   MCFG_SCREEN_UPDATE_STATIC(phantom2)
2377   MCFG_SCREEN_EOF(phantom2)
2377   MCFG_SCREEN_EOF_STATIC(phantom2)
23782378
23792379   /* add shifter */
23802380   MCFG_MB14241_ADD("mb14241")
src/mame/drivers/namcos86.c
r14015r14016
10161016   MCFG_SCREEN_SIZE(64*8, 32*8)
10171017   MCFG_SCREEN_VISIBLE_AREA(3 + 8*8, 3 + 44*8-1, 2*8, 30*8-1)
10181018   MCFG_SCREEN_UPDATE_STATIC(namcos86)
1019   MCFG_SCREEN_EOF(namcos86)
1019   MCFG_SCREEN_EOF_STATIC(namcos86)
10201020
10211021   MCFG_GFXDECODE(namcos86)
10221022   MCFG_PALETTE_LENGTH(4096)
src/mame/drivers/mermaid.c
r14015r14016
472472   MCFG_SCREEN_SIZE(32*8, 32*8)
473473   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
474474   MCFG_SCREEN_UPDATE_STATIC(mermaid)
475   MCFG_SCREEN_EOF(mermaid)
475   MCFG_SCREEN_EOF_STATIC(mermaid)
476476
477477   MCFG_GFXDECODE(mermaid)
478478   MCFG_PALETTE_LENGTH(4*16+2*2)
src/mame/drivers/photon2.c
r14015r14016
325325   MCFG_SCREEN_SIZE(SPEC_SCREEN_WIDTH, SPEC_SCREEN_HEIGHT)
326326   MCFG_SCREEN_VISIBLE_AREA(0, SPEC_SCREEN_WIDTH-1, 0, SPEC_SCREEN_HEIGHT-1)
327327   MCFG_SCREEN_UPDATE_STATIC( spectrum )
328   MCFG_SCREEN_EOF( spectrum )
328   MCFG_SCREEN_EOF_STATIC( spectrum )
329329
330330   MCFG_PALETTE_LENGTH(16)
331331   MCFG_PALETTE_INIT( spectrum )
src/mame/drivers/fcrash.c
r14015r14016
746746   MCFG_SCREEN_SIZE(64*8, 32*8)
747747   MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 2*8, 30*8-1 )
748748   MCFG_SCREEN_UPDATE_STATIC(fcrash)
749   MCFG_SCREEN_EOF(cps1)
749   MCFG_SCREEN_EOF_STATIC(cps1)
750750
751751   MCFG_GFXDECODE(cps1)
752752   MCFG_PALETTE_LENGTH(4096)
r14015r14016
796796   MCFG_SCREEN_SIZE(64*8, 32*8)
797797   MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 2*8, 30*8-1 )
798798   MCFG_SCREEN_UPDATE_STATIC(kodb)
799   MCFG_SCREEN_EOF(cps1)
799   MCFG_SCREEN_EOF_STATIC(cps1)
800800
801801   MCFG_GFXDECODE(cps1)
802802   MCFG_PALETTE_LENGTH(0xc00)
src/mame/drivers/cps2.c
r14015r14016
12271227   MCFG_SCREEN_ADD("screen", RASTER)
12281228   MCFG_SCREEN_RAW_PARAMS(XTAL_8MHz, 518, 64, 448, 259, 16, 240)
12291229   MCFG_SCREEN_UPDATE_STATIC(cps1)
1230   MCFG_SCREEN_EOF(cps1)
1230   MCFG_SCREEN_EOF_STATIC(cps1)
12311231/*
12321232    Measured clocks:
12331233        V = 59.6376Hz
src/mame/drivers/bionicc.c
r14015r14016
383383   MCFG_SCREEN_SIZE(32*8, 32*8)
384384   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
385385   MCFG_SCREEN_UPDATE_STATIC(bionicc)
386   MCFG_SCREEN_EOF(bionicc)
386   MCFG_SCREEN_EOF_STATIC(bionicc)
387387
388388   MCFG_GFXDECODE(bionicc)
389389   MCFG_PALETTE_LENGTH(1024)
src/mame/drivers/pgm.c
r14015r14016
11541154   MCFG_SCREEN_SIZE(64*8, 64*8)
11551155   MCFG_SCREEN_VISIBLE_AREA(0*8, 56*8-1, 0*8, 28*8-1)
11561156   MCFG_SCREEN_UPDATE_STATIC(pgm)
1157   MCFG_SCREEN_EOF(pgm)
1157   MCFG_SCREEN_EOF_STATIC(pgm)
11581158
11591159   MCFG_GFXDECODE(pgm)
11601160   MCFG_PALETTE_LENGTH(0x1200/2)
r14015r14016
13251325   MCFG_SCREEN_SIZE(64*8, 64*8)
13261326   MCFG_SCREEN_VISIBLE_AREA(0*8, 56*8-1, 0*8, 28*8-1)
13271327   MCFG_SCREEN_UPDATE_STATIC(pgm)
1328   MCFG_SCREEN_EOF(pgm)
1328   MCFG_SCREEN_EOF_STATIC(pgm)
13291329
13301330   MCFG_GFXDECODE(pgm)
13311331   MCFG_PALETTE_LENGTH(0x1200/2)
src/mame/drivers/mcatadv.c
r14015r14016
461461   MCFG_SCREEN_SIZE(320, 256)
462462   MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 224-1)
463463   MCFG_SCREEN_UPDATE_STATIC(mcatadv)
464   MCFG_SCREEN_EOF(mcatadv) // Buffer Spriteram
464   MCFG_SCREEN_EOF_STATIC(mcatadv) // Buffer Spriteram
465465
466466   MCFG_GFXDECODE(mcatadv)
467467   MCFG_PALETTE_LENGTH(0x2000/2)
src/mame/drivers/toaplan2.c
r14015r14016
30473047   MCFG_SCREEN_SIZE(432, 262)
30483048   MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
30493049   MCFG_SCREEN_UPDATE_STATIC(toaplan2)
3050   MCFG_SCREEN_EOF(toaplan2)
3050   MCFG_SCREEN_EOF_STATIC(toaplan2)
30513051
30523052   MCFG_GFXDECODE(toaplan2)
30533053   MCFG_PALETTE_LENGTH(T2PALETTE_LENGTH)
r14015r14016
30883088   MCFG_SCREEN_SIZE(432, 262)
30893089   MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
30903090   MCFG_SCREEN_UPDATE_STATIC(toaplan2)
3091   MCFG_SCREEN_EOF(toaplan2)
3091   MCFG_SCREEN_EOF_STATIC(toaplan2)
30923092
30933093   MCFG_GFXDECODE(toaplan2)
30943094   MCFG_PALETTE_LENGTH(T2PALETTE_LENGTH)
r14015r14016
31783178   MCFG_SCREEN_SIZE(432, 262)
31793179   MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
31803180   MCFG_SCREEN_UPDATE_STATIC(dogyuun)
3181   MCFG_SCREEN_EOF(toaplan2)
3181   MCFG_SCREEN_EOF_STATIC(toaplan2)
31823182
31833183   MCFG_GFXDECODE(t2dualvdp)
31843184   MCFG_PALETTE_LENGTH(T2PALETTE_LENGTH)
r14015r14016
32223222   MCFG_SCREEN_SIZE(432, 262)
32233223   MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
32243224   MCFG_SCREEN_UPDATE_STATIC(toaplan2)
3225   MCFG_SCREEN_EOF(toaplan2)
3225   MCFG_SCREEN_EOF_STATIC(toaplan2)
32263226
32273227   MCFG_GFXDECODE(toaplan2)
32283228   MCFG_PALETTE_LENGTH(T2PALETTE_LENGTH)
r14015r14016
32593259   MCFG_SCREEN_SIZE(432, 262)
32603260   MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
32613261   MCFG_SCREEN_UPDATE_STATIC(toaplan2)
3262   MCFG_SCREEN_EOF(toaplan2)
3262   MCFG_SCREEN_EOF_STATIC(toaplan2)
32633263
32643264   MCFG_GFXDECODE(toaplan2)
32653265   MCFG_PALETTE_LENGTH(T2PALETTE_LENGTH)
r14015r14016
32963296   MCFG_SCREEN_SIZE(432, 262)
32973297   MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
32983298   MCFG_SCREEN_UPDATE_STATIC(truxton2)
3299   MCFG_SCREEN_EOF(toaplan2)
3299   MCFG_SCREEN_EOF_STATIC(toaplan2)
33003300
33013301   MCFG_GFXDECODE(truxton2)
33023302   MCFG_PALETTE_LENGTH(T2PALETTE_LENGTH)
r14015r14016
33513351   MCFG_SCREEN_SIZE(432, 262)
33523352   MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
33533353   MCFG_SCREEN_UPDATE_STATIC(toaplan2)
3354   MCFG_SCREEN_EOF(toaplan2)
3354   MCFG_SCREEN_EOF_STATIC(toaplan2)
33553355
33563356   MCFG_GFXDECODE(toaplan2)
33573357   MCFG_PALETTE_LENGTH(T2PALETTE_LENGTH)
r14015r14016
33923392   MCFG_SCREEN_SIZE(432, 262)
33933393   MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
33943394   MCFG_SCREEN_UPDATE_STATIC(toaplan2)
3395   MCFG_SCREEN_EOF(toaplan2)
3395   MCFG_SCREEN_EOF_STATIC(toaplan2)
33963396
33973397   MCFG_GFXDECODE(toaplan2)
33983398   MCFG_PALETTE_LENGTH(T2PALETTE_LENGTH)
r14015r14016
34733473   MCFG_SCREEN_SIZE(432, 262)
34743474   MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
34753475   MCFG_SCREEN_UPDATE_STATIC(truxton2)
3476   MCFG_SCREEN_EOF(toaplan2)
3476   MCFG_SCREEN_EOF_STATIC(toaplan2)
34773477
34783478   MCFG_GFXDECODE(truxton2)
34793479   MCFG_PALETTE_LENGTH(T2PALETTE_LENGTH)
r14015r14016
35103510   MCFG_SCREEN_SIZE(432, 262)
35113511   MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
35123512   MCFG_SCREEN_UPDATE_STATIC(truxton2)
3513   MCFG_SCREEN_EOF(toaplan2)
3513   MCFG_SCREEN_EOF_STATIC(toaplan2)
35143514
35153515   MCFG_GFXDECODE(fixeightbl)
35163516   MCFG_PALETTE_LENGTH(T2PALETTE_LENGTH)
r14015r14016
35503550   MCFG_SCREEN_SIZE(432, 262)
35513551   MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
35523552   MCFG_SCREEN_UPDATE_STATIC(toaplan2)
3553   MCFG_SCREEN_EOF(toaplan2)
3553   MCFG_SCREEN_EOF_STATIC(toaplan2)
35543554
35553555   MCFG_GFXDECODE(toaplan2)
35563556   MCFG_PALETTE_LENGTH(T2PALETTE_LENGTH)
r14015r14016
35883588   MCFG_SCREEN_SIZE(432, 262)
35893589   MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
35903590   MCFG_SCREEN_UPDATE_STATIC(batsugun)
3591   MCFG_SCREEN_EOF(toaplan2)
3591   MCFG_SCREEN_EOF_STATIC(toaplan2)
35923592
35933593   MCFG_GFXDECODE(t2dualvdp)
35943594   MCFG_PALETTE_LENGTH(T2PALETTE_LENGTH)
r14015r14016
36263626   MCFG_SCREEN_SIZE(432, 262)
36273627   MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
36283628   MCFG_SCREEN_UPDATE_STATIC(toaplan2)
3629   MCFG_SCREEN_EOF(toaplan2)
3629   MCFG_SCREEN_EOF_STATIC(toaplan2)
36303630
36313631   MCFG_GFXDECODE(toaplan2)
36323632   MCFG_PALETTE_LENGTH(T2PALETTE_LENGTH)
r14015r14016
36693669   MCFG_SCREEN_SIZE(432, 262)
36703670   MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
36713671   MCFG_SCREEN_UPDATE_STATIC(truxton2)
3672   MCFG_SCREEN_EOF(toaplan2)
3672   MCFG_SCREEN_EOF_STATIC(toaplan2)
36733673
36743674   MCFG_GFXDECODE(raizing)
36753675   MCFG_PALETTE_LENGTH(T2PALETTE_LENGTH)
r14015r14016
37123712   MCFG_SCREEN_SIZE(432, 262)
37133713   MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
37143714   MCFG_SCREEN_UPDATE_STATIC(truxton2)
3715   MCFG_SCREEN_EOF(toaplan2)
3715   MCFG_SCREEN_EOF_STATIC(toaplan2)
37163716
37173717   MCFG_GFXDECODE(raizing)
37183718   MCFG_PALETTE_LENGTH(T2PALETTE_LENGTH)
r14015r14016
37663766   MCFG_SCREEN_SIZE(432, 262)
37673767   MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
37683768   MCFG_SCREEN_UPDATE_STATIC(truxton2)
3769   MCFG_SCREEN_EOF(toaplan2)
3769   MCFG_SCREEN_EOF_STATIC(toaplan2)
37703770
37713771   MCFG_GFXDECODE(raizing)
37723772   MCFG_PALETTE_LENGTH(T2PALETTE_LENGTH)
src/mame/drivers/lastduel.c
r14015r14016
520520   MCFG_SCREEN_SIZE(64*8, 32*8)
521521   MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
522522   MCFG_SCREEN_UPDATE_STATIC(lastduel)
523   MCFG_SCREEN_EOF(lastduel)
523   MCFG_SCREEN_EOF_STATIC(lastduel)
524524
525525   MCFG_GFXDECODE(lastduel)
526526   MCFG_PALETTE_LENGTH(1024)
r14015r14016
562562   MCFG_SCREEN_SIZE(64*8, 32*8)
563563   MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
564564   MCFG_SCREEN_UPDATE_STATIC(madgear)
565   MCFG_SCREEN_EOF(lastduel)
565   MCFG_SCREEN_EOF_STATIC(lastduel)
566566
567567   MCFG_GFXDECODE(madgear)
568568   MCFG_PALETTE_LENGTH(1024)
src/mame/drivers/redclash.c
r14015r14016
370370   MCFG_SCREEN_SIZE(32*8, 32*8)
371371   MCFG_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 4*8, 28*8-1)
372372   MCFG_SCREEN_UPDATE_STATIC(redclash)
373   MCFG_SCREEN_EOF(redclash)
373   MCFG_SCREEN_EOF_STATIC(redclash)
374374
375375   MCFG_GFXDECODE(redclash)
376376   MCFG_PALETTE_LENGTH(4*8+4*16+32)
r14015r14016
398398   MCFG_SCREEN_SIZE(32*8, 32*8)
399399   MCFG_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 4*8, 28*8-1)
400400   MCFG_SCREEN_UPDATE_STATIC(redclash)
401   MCFG_SCREEN_EOF(redclash)
401   MCFG_SCREEN_EOF_STATIC(redclash)
402402
403403   MCFG_GFXDECODE(redclash)
404404   MCFG_PALETTE_LENGTH(4*8+4*16+32)
src/mame/drivers/tceptor.c
r14015r14016
421421   MCFG_SCREEN_SIZE(38*8, 32*8)
422422   MCFG_SCREEN_VISIBLE_AREA(2*8, 34*8-1 + 2*8, 0*8, 28*8-1 + 0)
423423   MCFG_SCREEN_UPDATE_STATIC(tceptor_3d_right)
424   MCFG_SCREEN_EOF(tceptor)
424   MCFG_SCREEN_EOF_STATIC(tceptor)
425425
426426   MCFG_PALETTE_INIT(tceptor)
427427
src/mame/drivers/maygayv1.c
r14015r14016
10471047   MCFG_SCREEN_SIZE(640, 300)
10481048   MCFG_SCREEN_VISIBLE_AREA(0, 640 - 1, 0, 300 - 1)
10491049   MCFG_SCREEN_UPDATE_STATIC(maygayv1)
1050   MCFG_SCREEN_EOF(maygayv1)
1050   MCFG_SCREEN_EOF_STATIC(maygayv1)
10511051
10521052   MCFG_PALETTE_LENGTH(16)
10531053
src/mame/drivers/commando.c
r14015r14016
267267   MCFG_SCREEN_SIZE(32*8, 32*8)
268268   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
269269   MCFG_SCREEN_UPDATE_STATIC(commando)
270   MCFG_SCREEN_EOF(commando)
270   MCFG_SCREEN_EOF_STATIC(commando)
271271
272272   MCFG_GFXDECODE(commando)
273273   MCFG_PALETTE_LENGTH(256)
src/mame/drivers/ninjakd2.c
r14015r14016
956956   MCFG_SCREEN_SIZE(32*8, 32*8)
957957   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 4*8, 28*8-1)
958958   MCFG_SCREEN_UPDATE_STATIC(ninjakd2)
959   MCFG_SCREEN_EOF(ninjakd2)
959   MCFG_SCREEN_EOF_STATIC(ninjakd2)
960960
961961   MCFG_GFXDECODE(ninjakd2)
962962   MCFG_PALETTE_LENGTH(0x300)
src/mame/drivers/wheelfir.c
r14015r14016
821821   MCFG_SCREEN_SIZE(336, NUM_SCANLINES+NUM_VBLANK_LINES)
822822   MCFG_SCREEN_VISIBLE_AREA(0,335, 0, NUM_SCANLINES-1)
823823   MCFG_SCREEN_UPDATE_STATIC(wheelfir)
824   MCFG_SCREEN_EOF(wheelfir)
824   MCFG_SCREEN_EOF_STATIC(wheelfir)
825825
826826   MCFG_PALETTE_LENGTH(NUM_COLORS)
827827
src/mame/drivers/gng.c
r14015r14016
363363   MCFG_SCREEN_SIZE(32*8, 32*8)
364364   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
365365   MCFG_SCREEN_UPDATE_STATIC(gng)
366   MCFG_SCREEN_EOF(gng)
366   MCFG_SCREEN_EOF_STATIC(gng)
367367
368368   MCFG_GFXDECODE(gng)
369369   MCFG_PALETTE_LENGTH(256)
src/mame/drivers/seta.c
r14015r14016
76657665   MCFG_SCREEN_SIZE(64*8, 32*8)
76667666   MCFG_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
76677667   MCFG_SCREEN_UPDATE_STATIC(seta)
7668   MCFG_SCREEN_EOF(seta_buffer_sprites)      /* Blandia uses sprite buffering */
7668   MCFG_SCREEN_EOF_STATIC(seta_buffer_sprites)      /* Blandia uses sprite buffering */
76697669
76707670   MCFG_GFXDECODE(blandia)
76717671   MCFG_PALETTE_LENGTH((16*32+64*32*4)*2)   /* sprites, layer1, layer2, palette effect */
r14015r14016
76987698   MCFG_SCREEN_SIZE(64*8, 32*8)
76997699   MCFG_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
77007700   MCFG_SCREEN_UPDATE_STATIC(seta)
7701   MCFG_SCREEN_EOF(seta_buffer_sprites)      /* Blandia uses sprite buffering */
7701   MCFG_SCREEN_EOF_STATIC(seta_buffer_sprites)      /* Blandia uses sprite buffering */
77027702
77037703   MCFG_GFXDECODE(blandia)
77047704   MCFG_PALETTE_LENGTH((16*32+64*32*4)*2)   /* sprites, layer1, layer2, palette effect */
r14015r14016
78137813   MCFG_SCREEN_SIZE(64*8, 32*8)
78147814   MCFG_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
78157815   MCFG_SCREEN_UPDATE_STATIC(seta)
7816   MCFG_SCREEN_EOF(seta_buffer_sprites)   /* qzkklogy uses sprite buffering */
7816   MCFG_SCREEN_EOF_STATIC(seta_buffer_sprites)   /* qzkklogy uses sprite buffering */
78177817
78187818   MCFG_GFXDECODE(downtown)
78197819   MCFG_PALETTE_LENGTH(512)
r14015r14016
78487848   MCFG_SCREEN_SIZE(64*8, 32*8)
78497849   MCFG_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
78507850   MCFG_SCREEN_UPDATE_STATIC(seta)
7851   MCFG_SCREEN_EOF(seta_buffer_sprites)   /* qzkklogy uses sprite buffering */
7851   MCFG_SCREEN_EOF_STATIC(seta_buffer_sprites)   /* qzkklogy uses sprite buffering */
78527852
78537853   MCFG_GFXDECODE(qzkklgy2)
78547854   MCFG_PALETTE_LENGTH(512)
r14015r14016
78997899   MCFG_SCREEN_SIZE(64*8, 32*8)
79007900   MCFG_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
79017901   MCFG_SCREEN_UPDATE_STATIC(setaroul)
7902   MCFG_SCREEN_EOF(setaroul)   /* qzkklogy uses sprite buffering */
7902   MCFG_SCREEN_EOF_STATIC(setaroul)   /* qzkklogy uses sprite buffering */
79037903
79047904   MCFG_GFXDECODE(setaroul)
79057905   MCFG_PALETTE_LENGTH(512)
r14015r14016
83528352   MCFG_SCREEN_SIZE(64*8, 32*8)
83538353   MCFG_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
83548354   MCFG_SCREEN_UPDATE_STATIC(seta)
8355   MCFG_SCREEN_EOF(seta_buffer_sprites)   /* msgundam uses sprite buffering */
8355   MCFG_SCREEN_EOF_STATIC(seta_buffer_sprites)   /* msgundam uses sprite buffering */
83568356
83578357   MCFG_GFXDECODE(msgundam)
83588358   MCFG_PALETTE_LENGTH(512 * 3)   /* sprites, layer2, layer1 */
src/mame/drivers/megatech.c
r14015r14016
494494   MCFG_SCREEN_SIZE(342,262)
495495   MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 0, 224-1)
496496   MCFG_SCREEN_UPDATE_STATIC(megatech_bios)
497   MCFG_SCREEN_EOF(megatech_bios)
497   MCFG_SCREEN_EOF_STATIC(megatech_bios)
498498
499499   MCFG_SCREEN_MODIFY("megadriv")
500500   MCFG_SCREEN_UPDATE_STATIC(mtnew)
501   MCFG_SCREEN_EOF(mtnew)
501   MCFG_SCREEN_EOF_STATIC(mtnew)
502502
503503   /* sound hardware */
504504   MCFG_SOUND_ADD("sn2", SN76496, MASTER_CLOCK/15)
src/mame/drivers/champbwl.c
r14015r14016
487487   MCFG_SCREEN_SIZE(64*8, 32*8)
488488   MCFG_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1)
489489   MCFG_SCREEN_UPDATE_STATIC(champbwl)
490   MCFG_SCREEN_EOF(champbwl)
490   MCFG_SCREEN_EOF_STATIC(champbwl)
491491
492492   MCFG_GFXDECODE(champbwl)
493493   MCFG_PALETTE_LENGTH(512)
r14015r14016
548548   MCFG_SCREEN_SIZE(320, 256)
549549   MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 16, 256-16-1)
550550   MCFG_SCREEN_UPDATE_STATIC(doraemon)
551   MCFG_SCREEN_EOF(doraemon)
551   MCFG_SCREEN_EOF_STATIC(doraemon)
552552
553553   MCFG_GFXDECODE(champbwl)
554554   MCFG_PALETTE_LENGTH(512)
src/mame/drivers/raiden.c
r14015r14016
274274   MCFG_SCREEN_SIZE(32*8, 32*8)
275275   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
276276   MCFG_SCREEN_UPDATE_STATIC(raiden)
277   MCFG_SCREEN_EOF(raiden)
277   MCFG_SCREEN_EOF_STATIC(raiden)
278278
279279   MCFG_GFXDECODE(raiden)
280280   MCFG_PALETTE_LENGTH(2048)
src/mame/drivers/namcos1.c
r14015r14016
11161116   MCFG_SCREEN_SIZE(64*8, 64*8)
11171117   MCFG_SCREEN_VISIBLE_AREA(9 + 8*8, 9 + 44*8-1, 2*8, 30*8-1)
11181118   MCFG_SCREEN_UPDATE_STATIC(namcos1)
1119   MCFG_SCREEN_EOF(namcos1)
1119   MCFG_SCREEN_EOF_STATIC(namcos1)
11201120
11211121   MCFG_GFXDECODE(namcos1)
11221122   MCFG_PALETTE_LENGTH(0x2000)
src/mame/drivers/firefox.c
r14015r14016
705705   MCFG_VIDEO_START(firefox)
706706
707707   MCFG_LASERDISC_22VP931_ADD("laserdisc")
708   MCFG_LASERDISC_OVERLAY(64*8, 525, firefox)
708   MCFG_LASERDISC_OVERLAY_STATIC(64*8, 525, firefox)
709709   MCFG_LASERDISC_OVERLAY_CLIP(7*8, 53*8-1, 44, 480+44)
710710
711711   MCFG_LASERDISC_SCREEN_ADD_NTSC("screen", "laserdisc")
src/mame/drivers/toki.c
r14015r14016
432432   MCFG_SCREEN_SIZE(32*8, 32*8)
433433   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)   /* verified */
434434   MCFG_SCREEN_UPDATE_STATIC(toki)
435   MCFG_SCREEN_EOF(toki)
435   MCFG_SCREEN_EOF_STATIC(toki)
436436
437437   MCFG_GFXDECODE(toki)
438438   MCFG_PALETTE_LENGTH(1024)
r14015r14016
462462   MCFG_SCREEN_SIZE(32*8, 32*8)
463463   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)   /* verified */
464464   MCFG_SCREEN_UPDATE_STATIC(tokib)
465   MCFG_SCREEN_EOF(tokib)
465   MCFG_SCREEN_EOF_STATIC(tokib)
466466
467467   MCFG_GFXDECODE(tokib)
468468   MCFG_PALETTE_LENGTH(1024)
src/mame/drivers/slapshot.c
r14015r14016
569569   MCFG_SCREEN_SIZE(40*8, 32*8)
570570   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
571571   MCFG_SCREEN_UPDATE_STATIC(slapshot)
572   MCFG_SCREEN_EOF(taito_no_buffer)
572   MCFG_SCREEN_EOF_STATIC(taito_no_buffer)
573573
574574   MCFG_GFXDECODE(slapshot)
575575   MCFG_PALETTE_LENGTH(8192)
r14015r14016
617617   MCFG_SCREEN_SIZE(40*8, 32*8)
618618   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
619619   MCFG_SCREEN_UPDATE_STATIC(slapshot)
620   MCFG_SCREEN_EOF(taito_no_buffer)
620   MCFG_SCREEN_EOF_STATIC(taito_no_buffer)
621621
622622   MCFG_GFXDECODE(slapshot)
623623   MCFG_PALETTE_LENGTH(8192)
src/mame/drivers/wardner.c
r14015r14016
432432   MCFG_SCREEN_ADD("screen", RASTER)
433433   MCFG_SCREEN_RAW_PARAMS(XTAL_14MHz/2, 446, 0, 320, 286, 0, 240)
434434   MCFG_SCREEN_UPDATE_STATIC(toaplan0)
435   MCFG_SCREEN_EOF(toaplan0)
435   MCFG_SCREEN_EOF_STATIC(toaplan0)
436436
437437   MCFG_GFXDECODE(wardner)
438438   MCFG_PALETTE_LENGTH(1792)
src/mame/drivers/pgm2.c
r14015r14016
115115   MCFG_SCREEN_SIZE(64*8, 64*8)
116116   MCFG_SCREEN_VISIBLE_AREA(0*8, 56*8-1, 0*8, 28*8-1)
117117   MCFG_SCREEN_UPDATE_STATIC(pgm2)
118   MCFG_SCREEN_EOF(pgm2)
118   MCFG_SCREEN_EOF_STATIC(pgm2)
119119
120120   MCFG_PALETTE_LENGTH(0x1000)
121121
src/mame/drivers/megaplay.c
r14015r14016
666666   MCFG_VIDEO_START(megplay)
667667   MCFG_SCREEN_MODIFY("megadriv")
668668   MCFG_SCREEN_UPDATE_STATIC(megplay)
669   MCFG_SCREEN_EOF( megaplay )
669   MCFG_SCREEN_EOF_STATIC( megaplay )
670670MACHINE_CONFIG_END
671671
672672
src/mame/drivers/atarig1.c
r14015r14016
472472   /* note: these parameters are from published specs, not derived */
473473   MCFG_SCREEN_RAW_PARAMS(ATARI_CLOCK_14MHz/2, 456, 0, 336, 262, 0, 240)
474474   MCFG_SCREEN_UPDATE_STATIC(atarig1)
475   MCFG_SCREEN_EOF(atarig1)
475   MCFG_SCREEN_EOF_STATIC(atarig1)
476476
477477   MCFG_VIDEO_START(atarig1)
478478
src/mame/drivers/ultratnk.c
r14015r14016
305305   MCFG_SCREEN_ADD("screen", RASTER)
306306   MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, 0, 256, VTOTAL, 0, 224)
307307   MCFG_SCREEN_UPDATE_STATIC(ultratnk)
308   MCFG_SCREEN_EOF(ultratnk)
308   MCFG_SCREEN_EOF_STATIC(ultratnk)
309309
310310   MCFG_GFXDECODE(ultratnk)
311311   MCFG_PALETTE_LENGTH(10)
src/mame/drivers/lockon.c
r14015r14016
543543   MCFG_SCREEN_ADD("screen", RASTER)
544544   MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART)
545545   MCFG_SCREEN_UPDATE_STATIC(lockon)
546   MCFG_SCREEN_EOF(lockon)
546   MCFG_SCREEN_EOF_STATIC(lockon)
547547
548548   MCFG_GFXDECODE(lockon)
549549   MCFG_PALETTE_INIT(lockon)
src/mame/drivers/tigeroad.c
r14015r14016
537537   MCFG_SCREEN_SIZE(32*8, 32*8)
538538   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
539539   MCFG_SCREEN_UPDATE_STATIC(tigeroad)
540   MCFG_SCREEN_EOF(tigeroad)
540   MCFG_SCREEN_EOF_STATIC(tigeroad)
541541
542542   MCFG_GFXDECODE(tigeroad)
543543   MCFG_PALETTE_LENGTH(576)
src/mame/drivers/slapfght.c
r14015r14016
774774   MCFG_SCREEN_SIZE(64*8, 32*8)
775775   MCFG_SCREEN_VISIBLE_AREA(1*8, 34*8-1, 2*8, 32*8-1)
776776   MCFG_SCREEN_UPDATE_STATIC(perfrman)
777   MCFG_SCREEN_EOF(perfrman)
777   MCFG_SCREEN_EOF_STATIC(perfrman)
778778
779779   MCFG_GFXDECODE(perfrman)
780780   MCFG_PALETTE_LENGTH(256)
r14015r14016
820820   MCFG_SCREEN_SIZE(64*8, 32*8)
821821   MCFG_SCREEN_VISIBLE_AREA(1*8, 36*8-1, 2*8, 32*8-1)
822822   MCFG_SCREEN_UPDATE_STATIC(slapfight)
823   MCFG_SCREEN_EOF(perfrman)
823   MCFG_SCREEN_EOF_STATIC(perfrman)
824824
825825   MCFG_GFXDECODE(slapfght)
826826   MCFG_PALETTE_LENGTH(256)
r14015r14016
868868   MCFG_SCREEN_SIZE(64*8, 32*8)
869869   MCFG_SCREEN_VISIBLE_AREA(1*8, 36*8-1, 2*8, 32*8-1)
870870   MCFG_SCREEN_UPDATE_STATIC(slapfight)
871   MCFG_SCREEN_EOF(perfrman)
871   MCFG_SCREEN_EOF_STATIC(perfrman)
872872
873873   MCFG_GFXDECODE(slapfght)
874874   MCFG_PALETTE_LENGTH(256)
r14015r14016
917917   MCFG_SCREEN_SIZE(64*8, 32*8)
918918   MCFG_SCREEN_VISIBLE_AREA(1*8, 36*8-1, 2*8, 32*8-1)
919919   MCFG_SCREEN_UPDATE_STATIC(slapfight)
920   MCFG_SCREEN_EOF(perfrman)
920   MCFG_SCREEN_EOF_STATIC(perfrman)
921921
922922   MCFG_GFXDECODE(slapfght)
923923   MCFG_PALETTE_LENGTH(256)
src/mame/drivers/psikyosh.c
r14015r14016
827827   MCFG_SCREEN_SIZE(64*8, 32*8)
828828   MCFG_SCREEN_VISIBLE_AREA(0, 40*8-1, 0, 28*8-1)
829829   MCFG_SCREEN_UPDATE_STATIC(psikyosh)
830   MCFG_SCREEN_EOF(psikyosh)
830   MCFG_SCREEN_EOF_STATIC(psikyosh)
831831
832832   MCFG_GFXDECODE(psikyosh)
833833   MCFG_PALETTE_LENGTH(0x5000/4)
src/mame/drivers/esh.c
r14015r14016
301301   MCFG_MACHINE_START(esh)
302302
303303   MCFG_LASERDISC_LDV1000_ADD("laserdisc")
304   MCFG_LASERDISC_OVERLAY(256, 256, esh)
304   MCFG_LASERDISC_OVERLAY_STATIC(256, 256, esh)
305305
306306   /* video hardware */
307307   MCFG_LASERDISC_SCREEN_ADD_NTSC("screen", "laserdisc")
src/mame/drivers/ladybug.c
r14015r14016
828828   MCFG_SCREEN_SIZE(32*8, 32*8)
829829   MCFG_SCREEN_VISIBLE_AREA(1*8, 31*8-1, 4*8, 28*8-1)
830830   MCFG_SCREEN_UPDATE_STATIC(sraider)
831   MCFG_SCREEN_EOF(sraider)
831   MCFG_SCREEN_EOF_STATIC(sraider)
832832
833833   MCFG_GFXDECODE(sraider)
834834   MCFG_PALETTE_LENGTH(4*8+4*16+32+2)
src/mame/drivers/starshp1.c
r14015r14016
312312   MCFG_SCREEN_ADD("screen", RASTER)
313313   MCFG_SCREEN_RAW_PARAMS(STARSHP1_PIXEL_CLOCK, STARSHP1_HTOTAL, STARSHP1_HBEND, STARSHP1_HBSTART, STARSHP1_VTOTAL, STARSHP1_VBEND, STARSHP1_VBSTART)
314314   MCFG_SCREEN_UPDATE_STATIC(starshp1)
315   MCFG_SCREEN_EOF(starshp1)
315   MCFG_SCREEN_EOF_STATIC(starshp1)
316316
317317   MCFG_GFXDECODE(starshp1)
318318   MCFG_PALETTE_LENGTH(19)
src/mame/drivers/taito_f2.c
r14015r14016
30423042   MCFG_SCREEN_SIZE(40*8, 32*8)
30433043   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
30443044   MCFG_SCREEN_UPDATE_STATIC(taitof2)
3045   MCFG_SCREEN_EOF(taitof2_no_buffer)
3045   MCFG_SCREEN_EOF_STATIC(taitof2_no_buffer)
30463046
30473047   MCFG_GFXDECODE(taitof2)
30483048   MCFG_PALETTE_LENGTH(4096)
r14015r14016
30873087   MCFG_GFXDECODE(finalb)
30883088   MCFG_VIDEO_START(taitof2_finalb)
30893089   MCFG_SCREEN_MODIFY("screen")
3090   MCFG_SCREEN_EOF(taitof2_partial_buffer_delayed)
3090   MCFG_SCREEN_EOF_STATIC(taitof2_partial_buffer_delayed)
30913091
30923092   MCFG_TC0100SCN_ADD("tc0100scn", finalb_tc0100scn_intf)
30933093   MCFG_TC0110PCR_ADD("tc0110pcr", taitof2_tc0110pcr_intf)
r14015r14016
31043104   MCFG_GFXDECODE(pivot)
31053105   MCFG_VIDEO_START(taitof2_dondokod)
31063106   MCFG_SCREEN_MODIFY("screen")
3107   MCFG_SCREEN_EOF(taitof2_partial_buffer_delayed)
3107   MCFG_SCREEN_EOF_STATIC(taitof2_partial_buffer_delayed)
31083108   MCFG_SCREEN_UPDATE_STATIC(taitof2_pri_roz)
31093109
31103110   MCFG_TC0100SCN_ADD("tc0100scn", dondokod_tc0100scn_intf)
r14015r14016
31403140   MCFG_VIDEO_START(taitof2_thundfox)
31413141   MCFG_SCREEN_MODIFY("screen")
31423142   MCFG_SCREEN_UPDATE_STATIC(taitof2_thundfox)
3143   MCFG_SCREEN_EOF(taitof2_partial_buffer_delayed_thundfox)
3143   MCFG_SCREEN_EOF_STATIC(taitof2_partial_buffer_delayed_thundfox)
31443144
31453145   MCFG_TC0100SCN_ADD("tc0100scn_1", thundfox_tc0100scn_intf_1)
31463146   MCFG_TC0100SCN_ADD("tc0100scn_2", thundfox_tc0100scn_intf_2)
r14015r14016
31753175   /* video hardware */
31763176   MCFG_GFXDECODE(yuyugogo)
31773177   MCFG_SCREEN_MODIFY("screen")
3178   MCFG_SCREEN_EOF(taitof2_partial_buffer_delayed)
3178   MCFG_SCREEN_EOF_STATIC(taitof2_partial_buffer_delayed)
31793179
31803180   MCFG_TC0100SCN_ADD("tc0100scn", taitof2_tc0100scn_intf)
31813181   MCFG_TC0110PCR_ADD("tc0110pcr", taitof2_tc0110pcr_intf)
r14015r14016
31923192   MCFG_VIDEO_START(taitof2_megab)
31933193   MCFG_SCREEN_MODIFY("screen")
31943194   MCFG_SCREEN_UPDATE_STATIC(taitof2_pri)
3195   MCFG_SCREEN_EOF(taitof2_partial_buffer_delayed)
3195   MCFG_SCREEN_EOF_STATIC(taitof2_partial_buffer_delayed)
31963196
31973197   MCFG_TC0100SCN_ADD("tc0100scn", liquidk_tc0100scn_intf)
31983198   MCFG_TC0360PRI_ADD("tc0360pri")
r14015r14016
32083208   /* video hardware */
32093209   MCFG_GFXDECODE(yuyugogo)
32103210   MCFG_SCREEN_MODIFY("screen")
3211   MCFG_SCREEN_EOF(taitof2_partial_buffer_delayed)
3211   MCFG_SCREEN_EOF_STATIC(taitof2_partial_buffer_delayed)
32123212
32133213   MCFG_TC0100SCN_ADD("tc0100scn", taitof2_tc0100scn_intf)
32143214   MCFG_TC0110PCR_ADD("tc0110pcr", taitof2_tc0110pcr_intf)
r14015r14016
32253225   MCFG_VIDEO_START(taitof2_ssi)
32263226   MCFG_SCREEN_MODIFY("screen")
32273227   MCFG_SCREEN_UPDATE_STATIC(taitof2_ssi)
3228   MCFG_SCREEN_EOF(taitof2_partial_buffer_delayed_thundfox)   // buffer_delayed_thundfox instead of buffer_delayed fixes the butterfly powerup
3228   MCFG_SCREEN_EOF_STATIC(taitof2_partial_buffer_delayed_thundfox)   // buffer_delayed_thundfox instead of buffer_delayed fixes the butterfly powerup
32293229
32303230   MCFG_TC0100SCN_ADD("tc0100scn", liquidk_tc0100scn_intf)
32313231MACHINE_CONFIG_END
r14015r14016
32413241   MCFG_VIDEO_START(taitof2_gunfront)
32423242   MCFG_SCREEN_MODIFY("screen")
32433243   MCFG_SCREEN_UPDATE_STATIC(taitof2_pri)
3244   MCFG_SCREEN_EOF(taitof2_partial_buffer_delayed)
3244   MCFG_SCREEN_EOF_STATIC(taitof2_partial_buffer_delayed)
32453245
32463246   MCFG_TC0100SCN_ADD("tc0100scn", liquidk_tc0100scn_intf)
32473247   MCFG_TC0360PRI_ADD("tc0360pri")
r14015r14016
32893289   MCFG_VIDEO_START(taitof2_footchmp)
32903290   MCFG_SCREEN_MODIFY("screen")
32913291   MCFG_SCREEN_UPDATE_STATIC(taitof2_deadconx)
3292   MCFG_SCREEN_EOF(taitof2_full_buffer_delayed)
3292   MCFG_SCREEN_EOF_STATIC(taitof2_full_buffer_delayed)
32933293
32943294   MCFG_TC0480SCP_ADD("tc0480scp", footchmp_tc0480scp_intf)
32953295   MCFG_TC0360PRI_ADD("tc0360pri")
r14015r14016
33133313   MCFG_VIDEO_START(taitof2_hthero)
33143314   MCFG_SCREEN_MODIFY("screen")
33153315   MCFG_SCREEN_UPDATE_STATIC(taitof2_deadconx)
3316   MCFG_SCREEN_EOF(taitof2_full_buffer_delayed)
3316   MCFG_SCREEN_EOF_STATIC(taitof2_full_buffer_delayed)
33173317
33183318   MCFG_TC0360PRI_ADD("tc0360pri")
33193319   MCFG_TC0480SCP_ADD("tc0480scp", hthero_tc0480scp_intf)
r14015r14016
33923392
33933393   /* video hardware */
33943394   MCFG_SCREEN_MODIFY("screen")
3395   MCFG_SCREEN_EOF(taitof2_partial_buffer_delayed)
3395   MCFG_SCREEN_EOF_STATIC(taitof2_partial_buffer_delayed)
33963396
33973397   MCFG_TC0100SCN_ADD("tc0100scn", taitof2_tc0100scn_intf)
33983398MACHINE_CONFIG_END
r14015r14016
34433443   /* video hardware */
34443444   MCFG_VIDEO_START(taitof2_qzchikyu)
34453445   MCFG_SCREEN_MODIFY("screen")
3446   MCFG_SCREEN_EOF(taitof2_partial_buffer_delayed_qzchikyu)
3446   MCFG_SCREEN_EOF_STATIC(taitof2_partial_buffer_delayed_qzchikyu)
34473447
34483448   MCFG_TC0100SCN_ADD("tc0100scn", qzchikyu_tc0100scn_intf)
34493449MACHINE_CONFIG_END
r14015r14016
36023602   MCFG_SCREEN_SIZE(40*8, 32*8)
36033603   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
36043604   MCFG_SCREEN_UPDATE_STATIC(taitof2_pri_roz)
3605   MCFG_SCREEN_EOF(taitof2_no_buffer)
3605   MCFG_SCREEN_EOF_STATIC(taitof2_no_buffer)
36063606
36073607   MCFG_GFXDECODE(pivot)
36083608   MCFG_PALETTE_LENGTH(4096)
r14015r14016
36513651   MCFG_SCREEN_SIZE(40*8, 32*8)
36523652   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
36533653   MCFG_SCREEN_UPDATE_STATIC(taitof2_pri_roz)
3654   MCFG_SCREEN_EOF(taitof2_no_buffer)
3654   MCFG_SCREEN_EOF_STATIC(taitof2_no_buffer)
36553655
36563656   MCFG_GFXDECODE(pivot)
36573657   MCFG_PALETTE_LENGTH(4096)
src/mame/drivers/gottlieb.c
r14015r14016
18821882
18831883   MCFG_LASERDISC_PR8210_ADD("laserdisc")
18841884   MCFG_LASERDISC_AUDIO(laserdisc_audio_delegate(FUNC(laserdisc_audio_process), device))
1885   MCFG_LASERDISC_OVERLAY(GOTTLIEB_VIDEO_HCOUNT, GOTTLIEB_VIDEO_VCOUNT, gottlieb)
1885   MCFG_LASERDISC_OVERLAY_STATIC(GOTTLIEB_VIDEO_HCOUNT, GOTTLIEB_VIDEO_VCOUNT, gottlieb)
18861886   MCFG_LASERDISC_OVERLAY_CLIP(0, GOTTLIEB_VIDEO_HBLANK-1, 0, GOTTLIEB_VIDEO_VBLANK-8)
18871887
18881888   MCFG_DEVICE_REMOVE("screen")
r14015r14016
19341934
19351935   MCFG_LASERDISC_PR8210_ADD("laserdisc")
19361936   MCFG_LASERDISC_AUDIO(laserdisc_audio_delegate(FUNC(laserdisc_audio_process), device))
1937   MCFG_LASERDISC_OVERLAY(GOTTLIEB_VIDEO_HCOUNT, GOTTLIEB_VIDEO_VCOUNT, gottlieb)
1937   MCFG_LASERDISC_OVERLAY_STATIC(GOTTLIEB_VIDEO_HCOUNT, GOTTLIEB_VIDEO_VCOUNT, gottlieb)
19381938   MCFG_LASERDISC_OVERLAY_CLIP(0, GOTTLIEB_VIDEO_HBLANK-1, 0, GOTTLIEB_VIDEO_VBLANK-8)
19391939
19401940   MCFG_DEVICE_REMOVE("screen")
src/mame/drivers/psattack.c
r14015r14016
184184   MCFG_SCREEN_SIZE(320, 240)
185185   MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
186186   MCFG_SCREEN_UPDATE_STATIC(psattack)
187   MCFG_SCREEN_EOF(psattack)
187   MCFG_SCREEN_EOF_STATIC(psattack)
188188
189189   MCFG_VIDEO_START(psattack)
190190
src/mame/drivers/taito_l.c
r14015r14016
19001900   MCFG_SCREEN_SIZE(40*8, 32*8)
19011901   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
19021902   MCFG_SCREEN_UPDATE_STATIC(taitol)
1903   MCFG_SCREEN_EOF(taitol)
1903   MCFG_SCREEN_EOF_STATIC(taitol)
19041904
19051905   MCFG_GFXDECODE(2)
19061906   MCFG_PALETTE_LENGTH(256)
r14015r14016
19961996   MCFG_SCREEN_SIZE(40*8, 32*8)
19971997   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
19981998   MCFG_SCREEN_UPDATE_STATIC(taitol)
1999   MCFG_SCREEN_EOF(taitol)
1999   MCFG_SCREEN_EOF_STATIC(taitol)
20002000
20012001   MCFG_GFXDECODE(2)
20022002   MCFG_PALETTE_LENGTH(256)
r14015r14016
20422042   MCFG_SCREEN_SIZE(40*8, 32*8)
20432043   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
20442044   MCFG_SCREEN_UPDATE_STATIC(taitol)
2045   MCFG_SCREEN_EOF(taitol)
2045   MCFG_SCREEN_EOF_STATIC(taitol)
20462046
20472047   MCFG_GFXDECODE(1)
20482048   MCFG_PALETTE_LENGTH(256)
r14015r14016
21352135   MCFG_SCREEN_SIZE(40*8, 32*8)
21362136   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
21372137   MCFG_SCREEN_UPDATE_STATIC(taitol)
2138   MCFG_SCREEN_EOF(taitol)
2138   MCFG_SCREEN_EOF_STATIC(taitol)
21392139
21402140   MCFG_GFXDECODE(2)
21412141   MCFG_PALETTE_LENGTH(256)
src/mame/drivers/segald.c
r14015r14016
370370   MCFG_MACHINE_START(astron)
371371
372372   MCFG_LASERDISC_LDV1000_ADD("laserdisc")
373   MCFG_LASERDISC_OVERLAY(256, 256, astron)
373   MCFG_LASERDISC_OVERLAY_STATIC(256, 256, astron)
374374
375375   /* video hardware */
376376   MCFG_LASERDISC_SCREEN_ADD_NTSC("screen", "laserdisc")
src/mame/drivers/wwfwfest.c
r14015r14016
408408   MCFG_SCREEN_ADD("screen", RASTER)
409409   MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, 384, 0, 320, 272, 8, 248)   /* HTOTAL and VTOTAL are guessed */
410410   MCFG_SCREEN_UPDATE_STATIC(wwfwfest)
411   MCFG_SCREEN_EOF(wwfwfest)
411   MCFG_SCREEN_EOF_STATIC(wwfwfest)
412412
413413   MCFG_GFXDECODE(wwfwfest)
414414   MCFG_PALETTE_LENGTH(8192)
src/mame/drivers/baraduke.c
r14015r14016
397397   MCFG_SCREEN_SIZE(64*8, 32*8)
398398   MCFG_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 2*8, 30*8-1)
399399   MCFG_SCREEN_UPDATE_STATIC(baraduke)
400   MCFG_SCREEN_EOF(baraduke)
400   MCFG_SCREEN_EOF_STATIC(baraduke)
401401
402402   MCFG_GFXDECODE(baraduke)
403403   MCFG_PALETTE_LENGTH(2048)
src/mame/drivers/dooyong.c
r14015r14016
884884   MCFG_SCREEN_SIZE(64*8, 32*8)
885885   MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
886886   MCFG_SCREEN_UPDATE_STATIC(lastday)
887   MCFG_SCREEN_EOF(dooyong)
887   MCFG_SCREEN_EOF_STATIC(dooyong)
888888
889889   MCFG_GFXDECODE(lastday)
890890   MCFG_PALETTE_LENGTH(1024)
r14015r14016
926926   MCFG_SCREEN_SIZE(64*8, 32*8)
927927   MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
928928   MCFG_SCREEN_UPDATE_STATIC(gulfstrm)
929   MCFG_SCREEN_EOF(dooyong)
929   MCFG_SCREEN_EOF_STATIC(dooyong)
930930
931931   MCFG_GFXDECODE(lastday)
932932   MCFG_PALETTE_LENGTH(1024)
r14015r14016
959959   MCFG_SCREEN_SIZE(64*8, 32*8)
960960   MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
961961   MCFG_SCREEN_UPDATE_STATIC(pollux)
962   MCFG_SCREEN_EOF(dooyong)
962   MCFG_SCREEN_EOF_STATIC(dooyong)
963963
964964   MCFG_GFXDECODE(lastday)
965965   MCFG_PALETTE_LENGTH(1024)
r14015r14016
991991   MCFG_SCREEN_SIZE(64*8, 32*8)
992992   MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
993993   MCFG_SCREEN_UPDATE_STATIC(bluehawk)
994   MCFG_SCREEN_EOF(dooyong)
994   MCFG_SCREEN_EOF_STATIC(dooyong)
995995
996996   MCFG_GFXDECODE(bluehawk)
997997   MCFG_PALETTE_LENGTH(1024)
r14015r14016
10231023   MCFG_SCREEN_SIZE(64*8, 32*8)
10241024   MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
10251025   MCFG_SCREEN_UPDATE_STATIC(flytiger)
1026   MCFG_SCREEN_EOF(dooyong)
1026   MCFG_SCREEN_EOF_STATIC(dooyong)
10271027
10281028   MCFG_GFXDECODE(flytiger)
10291029   MCFG_PALETTE_LENGTH(1024)
r14015r14016
10531053   MCFG_SCREEN_SIZE(64*8, 32*8)
10541054   MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 0*8, 32*8-1 )
10551055   MCFG_SCREEN_UPDATE_STATIC(primella)
1056   MCFG_SCREEN_EOF(dooyong)
1056   MCFG_SCREEN_EOF_STATIC(dooyong)
10571057
10581058   MCFG_GFXDECODE(primella)
10591059   MCFG_PALETTE_LENGTH(1024)
r14015r14016
10951095   MCFG_SCREEN_SIZE(64*8, 32*8)
10961096   MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
10971097   MCFG_SCREEN_UPDATE_STATIC(rshark)
1098   MCFG_SCREEN_EOF(rshark)
1098   MCFG_SCREEN_EOF_STATIC(rshark)
10991099
11001100   MCFG_GFXDECODE(rshark)
11011101   MCFG_PALETTE_LENGTH(2048)
r14015r14016
11251125   MCFG_SCREEN_SIZE(64*8, 32*8)
11261126   MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
11271127   MCFG_SCREEN_UPDATE_STATIC(rshark)
1128   MCFG_SCREEN_EOF(rshark)
1128   MCFG_SCREEN_EOF_STATIC(rshark)
11291129
11301130   MCFG_GFXDECODE(rshark)
11311131   MCFG_PALETTE_LENGTH(2048)
r14015r14016
11551155   MCFG_SCREEN_SIZE(64*8, 32*8)
11561156   MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
11571157   MCFG_SCREEN_UPDATE_STATIC(popbingo)
1158   MCFG_SCREEN_EOF(rshark)
1158   MCFG_SCREEN_EOF_STATIC(rshark)
11591159
11601160   MCFG_GFXDECODE(popbingo)
11611161   MCFG_PALETTE_LENGTH(2048)
src/mame/drivers/cubeqst.c
r14015r14016
526526   MCFG_NVRAM_ADD_0FILL("nvram")
527527
528528   MCFG_LASERDISC_SIMUTREK_ADD("laserdisc")
529   MCFG_LASERDISC_OVERLAY(CUBEQST_HBLANK, CUBEQST_VCOUNT, cubeqst)
529   MCFG_LASERDISC_OVERLAY_STATIC(CUBEQST_HBLANK, CUBEQST_VCOUNT, cubeqst)
530530   MCFG_LASERDISC_OVERLAY_CLIP(0, 320-1, 0, 256-8)
531531   MCFG_LASERDISC_OVERLAY_POSITION(0.002, -0.018)
532532   MCFG_LASERDISC_OVERLAY_SCALE(1.0, 1.030)
src/mame/drivers/crystal.c
r14015r14016
834834   MCFG_SCREEN_SIZE(320, 240)
835835   MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
836836   MCFG_SCREEN_UPDATE_STATIC(crystal)
837   MCFG_SCREEN_EOF(crystal)
837   MCFG_SCREEN_EOF_STATIC(crystal)
838838
839839   MCFG_VIDEO_VRENDER0_ADD("vr0", vr0video_config)
840840
src/mame/drivers/lgp.c
r14015r14016
367367   MCFG_MACHINE_START(lgp)
368368
369369   MCFG_LASERDISC_LDV1000_ADD("laserdisc")
370   MCFG_LASERDISC_OVERLAY(256, 256, lgp)
370   MCFG_LASERDISC_OVERLAY_STATIC(256, 256, lgp)
371371
372372   /* video hardware */
373373   MCFG_LASERDISC_SCREEN_ADD_NTSC("screen", "laserdisc")
src/mame/drivers/cliffhgr.c
r14015r14016
701701   MCFG_NVRAM_ADD_0FILL("nvram")
702702
703703   MCFG_LASERDISC_PR8210_ADD("laserdisc")
704   MCFG_LASERDISC_OVERLAY(TMS9928A_TOTAL_HORZ, TMS9928A_TOTAL_VERT_NTSC, cliffhgr)
704   MCFG_LASERDISC_OVERLAY_STATIC(TMS9928A_TOTAL_HORZ, TMS9928A_TOTAL_VERT_NTSC, cliffhgr)
705705   MCFG_LASERDISC_OVERLAY_CLIP(TMS9928A_HORZ_DISPLAY_START-12, TMS9928A_HORZ_DISPLAY_START+32*8+12-1, TMS9928A_VERT_DISPLAY_START_NTSC - 12, TMS9928A_VERT_DISPLAY_START_NTSC+24*8+12-1)
706706
707707   /* start with the TMS9928a video configuration */
src/mame/drivers/twincobr.c
r14015r14016
584584   MCFG_SCREEN_ADD("screen", RASTER)
585585   MCFG_SCREEN_RAW_PARAMS(XTAL_28MHz/4, 446, 0, 320, 286, 0, 240)
586586   MCFG_SCREEN_UPDATE_STATIC(toaplan0)
587   MCFG_SCREEN_EOF(toaplan0)
587   MCFG_SCREEN_EOF_STATIC(toaplan0)
588588
589589   MCFG_GFXDECODE(twincobr)
590590   MCFG_PALETTE_LENGTH(1792)
src/mame/drivers/sprint2.c
r14015r14016
516516   MCFG_SCREEN_SIZE(512, 262)
517517   MCFG_SCREEN_VISIBLE_AREA(0, 511, 0, 223)
518518   MCFG_SCREEN_UPDATE_STATIC(sprint2)
519   MCFG_SCREEN_EOF(sprint2)
519   MCFG_SCREEN_EOF_STATIC(sprint2)
520520
521521   MCFG_GFXDECODE(sprint2)
522522   MCFG_PALETTE_LENGTH(12)
src/mame/drivers/suprnova.c
r14015r14016
784784   MCFG_SCREEN_SIZE(340,262)
785785   MCFG_SCREEN_VISIBLE_AREA(0,319,0,239)
786786   MCFG_SCREEN_UPDATE_STATIC(skns)
787   MCFG_SCREEN_EOF(skns)
787   MCFG_SCREEN_EOF_STATIC(skns)
788788
789789   MCFG_PALETTE_LENGTH(32768)
790790   MCFG_GFXDECODE(skns_bg)
src/mame/drivers/sigmab98.c
r14015r14016
17411741   MCFG_SCREEN_SIZE(0x140, 0x100)
17421742   MCFG_SCREEN_VISIBLE_AREA(0, 0x140-1, 0, 0xf0-1)
17431743   MCFG_SCREEN_UPDATE_STATIC(sigmab98)
1744   MCFG_SCREEN_EOF(sammymdl)
1744   MCFG_SCREEN_EOF_STATIC(sammymdl)
17451745
17461746   MCFG_GFXDECODE(sigmab98)
17471747   MCFG_PALETTE_LENGTH(0x100)
src/mame/drivers/sspeedr.c
r14015r14016
201201   MCFG_SCREEN_SIZE(376, 256)
202202   MCFG_SCREEN_VISIBLE_AREA(0, 375, 0, 247)
203203   MCFG_SCREEN_UPDATE_STATIC(sspeedr)
204   MCFG_SCREEN_EOF(sspeedr)
204   MCFG_SCREEN_EOF_STATIC(sspeedr)
205205
206206   MCFG_GFXDECODE(sspeedr)
207207   MCFG_PALETTE_LENGTH(16)
src/mame/drivers/galpanic.c
r14015r14016
577577   MCFG_SCREEN_SIZE(256, 256)
578578   MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 0, 224-1)
579579   MCFG_SCREEN_UPDATE_STATIC(galpanic)
580   MCFG_SCREEN_EOF( galpanic )
580   MCFG_SCREEN_EOF_STATIC( galpanic )
581581
582582   MCFG_GFXDECODE(galpanic)
583583   MCFG_PALETTE_LENGTH(1024 + 32768)
r14015r14016
615615   /* video hardware */
616616   MCFG_SCREEN_MODIFY("screen")
617617   MCFG_SCREEN_UPDATE_STATIC(comad)
618   MCFG_SCREEN_EOF(0)
618   MCFG_SCREEN_EOF_NONE()
619619MACHINE_CONFIG_END
620620
621621static MACHINE_CONFIG_DERIVED( supmodel, comad )
r14015r14016
629629   /* video hardware */
630630   MCFG_SCREEN_MODIFY("screen")
631631   MCFG_SCREEN_UPDATE_STATIC(comad)
632   MCFG_SCREEN_EOF(0)
632   MCFG_SCREEN_EOF_NONE()
633633
634634   /* sound hardware */
635635   MCFG_OKIM6295_REPLACE("oki", 1584000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
r14015r14016
647647   /* video hardware */
648648   MCFG_SCREEN_MODIFY("screen")
649649   MCFG_SCREEN_UPDATE_STATIC(comad)
650   MCFG_SCREEN_EOF(0)
650   MCFG_SCREEN_EOF_NONE()
651651MACHINE_CONFIG_END
652652
653653static MACHINE_CONFIG_DERIVED( galhustl, comad )
r14015r14016
662662   /* video hardware */
663663   MCFG_SCREEN_MODIFY("screen")
664664   MCFG_SCREEN_UPDATE_STATIC(comad)
665   MCFG_SCREEN_EOF(0)
665   MCFG_SCREEN_EOF_NONE()
666666
667667   /* sound hardware */
668668   MCFG_OKIM6295_REPLACE("oki", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
src/mame/drivers/armedf.c
r14015r14016
12141214
12151215   MCFG_VIDEO_START(terraf)
12161216   MCFG_SCREEN_UPDATE_STATIC(armedf)
1217   MCFG_SCREEN_EOF(armedf)
1217   MCFG_SCREEN_EOF_STATIC(armedf)
12181218
12191219   MCFG_GFXDECODE(armedf)
12201220
r14015r14016
12631263
12641264   MCFG_VIDEO_START(terraf)
12651265   MCFG_SCREEN_UPDATE_STATIC(armedf)
1266   MCFG_SCREEN_EOF(armedf)
1266   MCFG_SCREEN_EOF_STATIC(armedf)
12671267
12681268   MCFG_GFXDECODE(armedf)
12691269   MCFG_PALETTE_LENGTH(2048)
r14015r14016
13071307
13081308   MCFG_VIDEO_START(terraf)
13091309   MCFG_SCREEN_UPDATE_STATIC(armedf)
1310   MCFG_SCREEN_EOF(armedf)
1310   MCFG_SCREEN_EOF_STATIC(armedf)
13111311
13121312   MCFG_GFXDECODE(armedf)
13131313   MCFG_PALETTE_LENGTH(2048)
r14015r14016
13511351
13521352   MCFG_VIDEO_START(armedf)
13531353   MCFG_SCREEN_UPDATE_STATIC(armedf)
1354   MCFG_SCREEN_EOF(armedf)
1354   MCFG_SCREEN_EOF_STATIC(armedf)
13551355
13561356   MCFG_GFXDECODE(armedf)
13571357   MCFG_PALETTE_LENGTH(2048)
r14015r14016
13951395
13961396   MCFG_VIDEO_START(terraf)
13971397   MCFG_SCREEN_UPDATE_STATIC(armedf)
1398   MCFG_SCREEN_EOF(armedf)
1398   MCFG_SCREEN_EOF_STATIC(armedf)
13991399
14001400   MCFG_GFXDECODE(armedf)
14011401   MCFG_PALETTE_LENGTH(2048)
r14015r14016
14391439
14401440   MCFG_VIDEO_START(terraf)
14411441   MCFG_SCREEN_UPDATE_STATIC(armedf)
1442   MCFG_SCREEN_EOF(armedf)
1442   MCFG_SCREEN_EOF_STATIC(armedf)
14431443
14441444   MCFG_GFXDECODE(armedf)
14451445   MCFG_PALETTE_LENGTH(2048)
r14015r14016
14831483
14841484   MCFG_VIDEO_START(terraf)
14851485   MCFG_SCREEN_UPDATE_STATIC(armedf)
1486   MCFG_SCREEN_EOF(armedf)
1486   MCFG_SCREEN_EOF_STATIC(armedf)
14871487
14881488   MCFG_GFXDECODE(armedf)
14891489   MCFG_PALETTE_LENGTH(2048)
r14015r14016
15421542
15431543   MCFG_VIDEO_START(armedf)
15441544   MCFG_SCREEN_UPDATE_STATIC(armedf)
1545   MCFG_SCREEN_EOF(armedf)
1545   MCFG_SCREEN_EOF_STATIC(armedf)
15461546
15471547   MCFG_GFXDECODE(armedf)
15481548   MCFG_PALETTE_LENGTH(2048)
src/mame/drivers/sprint4.c
r14015r14016
408408   MCFG_SCREEN_ADD("screen", RASTER)
409409   MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, 0, 256, VTOTAL, 0, 224)
410410   MCFG_SCREEN_UPDATE_STATIC(sprint4)
411   MCFG_SCREEN_EOF(sprint4)
411   MCFG_SCREEN_EOF_STATIC(sprint4)
412412
413413   MCFG_GFXDECODE(sprint4)
414414   MCFG_PALETTE_LENGTH(10)
src/mame/drivers/model1.c
r14015r14016
15221522   MCFG_SCREEN_ADD("screen", RASTER)
15231523   MCFG_SCREEN_RAW_PARAMS(XTAL_16MHz, 656, 0/*+69*/, 496/*+69*/, 424, 0/*+25*/, 384/*+25*/)
15241524   MCFG_SCREEN_UPDATE_STATIC(model1)
1525   MCFG_SCREEN_EOF(model1)
1525   MCFG_SCREEN_EOF_STATIC(model1)
15261526
15271527   MCFG_PALETTE_LENGTH(8192)
15281528
r14015r14016
15671567   MCFG_SCREEN_ADD("screen", RASTER)
15681568   MCFG_SCREEN_RAW_PARAMS(XTAL_16MHz, 656, 0/*+69*/, 496/*+69*/, 424, 0/*+25*/, 384/*+25*/)
15691569   MCFG_SCREEN_UPDATE_STATIC(model1)
1570   MCFG_SCREEN_EOF(model1)
1570   MCFG_SCREEN_EOF_STATIC(model1)
15711571
15721572   MCFG_PALETTE_LENGTH(8192)
15731573
src/mame/drivers/tank8.c
r14015r14016
344344   MCFG_SCREEN_SIZE(512, 524)
345345   MCFG_SCREEN_VISIBLE_AREA(16, 495, 0, 463)
346346   MCFG_SCREEN_UPDATE_STATIC(tank8)
347   MCFG_SCREEN_EOF(tank8)
347   MCFG_SCREEN_EOF_STATIC(tank8)
348348
349349   MCFG_GFXDECODE(tank8)
350350   MCFG_PALETTE_LENGTH(20)
src/mame/drivers/cps1.c
r14015r14016
30563056   MCFG_SCREEN_SIZE(64*8, 32*8)
30573057   MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 2*8, 30*8-1 )
30583058   MCFG_SCREEN_UPDATE_STATIC(cps1)
3059   MCFG_SCREEN_EOF(cps1)
3059   MCFG_SCREEN_EOF_STATIC(cps1)
30603060
30613061   MCFG_GFXDECODE(cps1)
30623062   MCFG_PALETTE_LENGTH(0xc00)
r14015r14016
31403140   MCFG_SCREEN_SIZE(64*8, 32*8)
31413141   MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 2*8, 30*8-1 )
31423142   MCFG_SCREEN_UPDATE_STATIC(cps1)
3143   MCFG_SCREEN_EOF(cps1)
3143   MCFG_SCREEN_EOF_STATIC(cps1)
31443144
31453145   MCFG_GFXDECODE(cps1)
31463146   MCFG_PALETTE_LENGTH(0xc00)
r14015r14016
32143214   MCFG_SCREEN_SIZE(64*8, 32*8)
32153215   MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 2*8, 30*8-1 )
32163216   MCFG_SCREEN_UPDATE_STATIC(cps1)
3217   MCFG_SCREEN_EOF(cps1)
3217   MCFG_SCREEN_EOF_STATIC(cps1)
32183218
32193219   MCFG_GFXDECODE(cps1)
32203220   MCFG_PALETTE_LENGTH(0xc00)
r14015r14016
32983298   MCFG_SCREEN_SIZE(64*8, 32*8)
32993299   MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 2*8, 30*8-1 )
33003300   MCFG_SCREEN_UPDATE_STATIC(cps1)
3301   MCFG_SCREEN_EOF(cps1)
3301   MCFG_SCREEN_EOF_STATIC(cps1)
33023302
33033303   MCFG_GFXDECODE(cps1)
33043304   MCFG_PALETTE_LENGTH(0xc00)
src/mame/drivers/othldrby.c
r14015r14016
254254   MCFG_SCREEN_SIZE(64*8, 32*8)
255255   MCFG_SCREEN_VISIBLE_AREA(12*8, (64-12)*8-1, 1*8, 31*8-1 )
256256   MCFG_SCREEN_UPDATE_STATIC(othldrby)
257   MCFG_SCREEN_EOF(othldrby)
257   MCFG_SCREEN_EOF_STATIC(othldrby)
258258
259259   MCFG_GFXDECODE(othldrby)
260260   MCFG_PALETTE_LENGTH(0x800)
src/mame/drivers/bbusters.c
r14015r14016
699699   MCFG_SCREEN_SIZE(64*8, 32*8)
700700   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
701701   MCFG_SCREEN_UPDATE_STATIC(bbuster)
702   MCFG_SCREEN_EOF(bbuster)
702   MCFG_SCREEN_EOF_STATIC(bbuster)
703703
704704   MCFG_GFXDECODE(bbusters)
705705   MCFG_PALETTE_LENGTH(2048)
r14015r14016
736736   MCFG_SCREEN_SIZE(64*8, 32*8)
737737   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
738738   MCFG_SCREEN_UPDATE_STATIC(mechatt)
739   MCFG_SCREEN_EOF(mechatt)
739   MCFG_SCREEN_EOF_STATIC(mechatt)
740740
741741   MCFG_GFXDECODE(mechatt)
742742   MCFG_PALETTE_LENGTH(1024)
src/mame/drivers/lemmings.c
r14015r14016
283283   MCFG_SCREEN_SIZE(40*8, 32*8)
284284   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
285285   MCFG_SCREEN_UPDATE_STATIC(lemmings)
286   MCFG_SCREEN_EOF(lemmings)
286   MCFG_SCREEN_EOF_STATIC(lemmings)
287287
288288   MCFG_GFXDECODE(lemmings)
289289   MCFG_PALETTE_LENGTH(1024)
src/mame/drivers/toaplan1.c
r14015r14016
15301530   MCFG_SCREEN_SIZE(512, 512)   /* 512x288 active */
15311531   MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
15321532   MCFG_SCREEN_UPDATE_STATIC(rallybik)
1533   MCFG_SCREEN_EOF(rallybik)
1533   MCFG_SCREEN_EOF_STATIC(rallybik)
15341534
15351535   MCFG_GFXDECODE(rallybik)
15361536   MCFG_PALETTE_LENGTH((64*16)+(64*16))
r14015r14016
15691569   MCFG_SCREEN_SIZE(512, 512)   /* 512x320 active */
15701570   MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
15711571   MCFG_SCREEN_UPDATE_STATIC(toaplan1)
1572   MCFG_SCREEN_EOF(toaplan1)
1572   MCFG_SCREEN_EOF_STATIC(toaplan1)
15731573
15741574   MCFG_GFXDECODE(toaplan1)
15751575   MCFG_PALETTE_LENGTH((64*16)+(64*16))
r14015r14016
16081608   MCFG_SCREEN_SIZE(512, 512)   /* 512x240 active */
16091609   MCFG_SCREEN_VISIBLE_AREA(0, 319, 16, 255)
16101610   MCFG_SCREEN_UPDATE_STATIC(toaplan1)
1611   MCFG_SCREEN_EOF(toaplan1)
1611   MCFG_SCREEN_EOF_STATIC(toaplan1)
16121612
16131613   MCFG_GFXDECODE(toaplan1)
16141614   MCFG_PALETTE_LENGTH((64*16)+(64*16))
r14015r14016
16471647   MCFG_SCREEN_SIZE(512, 512)   /* 512x240 mostly active, 512x512 actually used */
16481648   MCFG_SCREEN_VISIBLE_AREA(0, 319, 16, 255)
16491649   MCFG_SCREEN_UPDATE_STATIC(toaplan1)
1650   MCFG_SCREEN_EOF(toaplan1)
1650   MCFG_SCREEN_EOF_STATIC(toaplan1)
16511651
16521652   MCFG_GFXDECODE(toaplan1)
16531653   MCFG_PALETTE_LENGTH((64*16)+(64*16))
r14015r14016
16901690   MCFG_SCREEN_SIZE(512, 512)   /* 512x240 active */
16911691   MCFG_SCREEN_VISIBLE_AREA(0, 319, 16, 255)
16921692   MCFG_SCREEN_UPDATE_STATIC(toaplan1)
1693   MCFG_SCREEN_EOF(toaplan1)
1693   MCFG_SCREEN_EOF_STATIC(toaplan1)
16941694
16951695   MCFG_GFXDECODE(toaplan1)
16961696   MCFG_PALETTE_LENGTH((64*16)+(64*16))
r14015r14016
17271727   MCFG_SCREEN_SIZE(512, 512)   /* 512x320 active */
17281728   MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
17291729   MCFG_SCREEN_UPDATE_STATIC(toaplan1)
1730   MCFG_SCREEN_EOF(samesame)
1730   MCFG_SCREEN_EOF_STATIC(samesame)
17311731
17321732   MCFG_GFXDECODE(toaplan1)
17331733   MCFG_PALETTE_LENGTH((64*16)+(64*16))
r14015r14016
17661766   MCFG_SCREEN_SIZE(512, 512)   /* 512x256 active */
17671767   MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
17681768   MCFG_SCREEN_UPDATE_STATIC(toaplan1)
1769   MCFG_SCREEN_EOF(toaplan1)
1769   MCFG_SCREEN_EOF_STATIC(toaplan1)
17701770
17711771   MCFG_GFXDECODE(outzone)
17721772   MCFG_PALETTE_LENGTH((64*16)+(64*16))
r14015r14016
18031803   MCFG_SCREEN_SIZE(512, 512)   /* 512x256 active */
18041804   MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
18051805   MCFG_SCREEN_UPDATE_STATIC(toaplan1)
1806   MCFG_SCREEN_EOF(toaplan1)
1806   MCFG_SCREEN_EOF_STATIC(toaplan1)
18071807
18081808   MCFG_GFXDECODE(vm)
18091809   MCFG_PALETTE_LENGTH((64*16)+(64*16))
src/mame/drivers/tmnt.c
r14015r14016
25812581   MCFG_SCREEN_SIZE(64*8, 32*8)
25822582   MCFG_SCREEN_VISIBLE_AREA(14*8, (64-15)*8-1, 2*8, 30*8-1 )
25832583   MCFG_SCREEN_UPDATE_STATIC(lgtnfght)
2584   MCFG_SCREEN_EOF( blswhstl )
2584   MCFG_SCREEN_EOF_STATIC( blswhstl )
25852585
25862586   MCFG_PALETTE_LENGTH(2048)
25872587
src/mame/drivers/psikyo.c
r14015r14016
10811081   MCFG_SCREEN_SIZE(320, 256)
10821082   MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 256-32-1)
10831083   MCFG_SCREEN_UPDATE_STATIC(psikyo)
1084   MCFG_SCREEN_EOF(psikyo)
1084   MCFG_SCREEN_EOF_STATIC(psikyo)
10851085
10861086   MCFG_GFXDECODE(psikyo)
10871087   MCFG_PALETTE_LENGTH(0x1000)
r14015r14016
11321132   MCFG_SCREEN_SIZE(320, 256)
11331133   MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 256-32-1)
11341134   MCFG_SCREEN_UPDATE_STATIC(psikyo)
1135   MCFG_SCREEN_EOF(psikyo)
1135   MCFG_SCREEN_EOF_STATIC(psikyo)
11361136
11371137   MCFG_GFXDECODE(psikyo)
11381138   MCFG_PALETTE_LENGTH(0x1000)
r14015r14016
11671167   MCFG_SCREEN_SIZE(320, 256)
11681168   MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 256-32-1)
11691169   MCFG_SCREEN_UPDATE_STATIC(psikyo_bootleg)
1170   MCFG_SCREEN_EOF(psikyo)
1170   MCFG_SCREEN_EOF_STATIC(psikyo)
11711171
11721172   MCFG_GFXDECODE(psikyo)
11731173   MCFG_PALETTE_LENGTH(0x1000)
r14015r14016
12231223   MCFG_SCREEN_SIZE(320, 256)
12241224   MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 256-32-1)
12251225   MCFG_SCREEN_UPDATE_STATIC(psikyo)
1226   MCFG_SCREEN_EOF(psikyo)
1226   MCFG_SCREEN_EOF_STATIC(psikyo)
12271227
12281228   MCFG_GFXDECODE(psikyo)
12291229   MCFG_PALETTE_LENGTH(0x1000)
src/mame/drivers/ddz.c
r14015r14016
7575   MCFG_SCREEN_SIZE(320, 240)
7676   MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239)
7777   MCFG_SCREEN_UPDATE_STATIC(ddz)
78   MCFG_SCREEN_EOF(ddz)
78   MCFG_SCREEN_EOF_STATIC(ddz)
7979
8080   MCFG_PALETTE_LENGTH(8192)
8181
src/mame/drivers/sprint8.c
r14015r14016
469469   MCFG_SCREEN_SIZE(512, 261)
470470   MCFG_SCREEN_VISIBLE_AREA(0, 495, 0, 231)
471471   MCFG_SCREEN_UPDATE_STATIC(sprint8)
472   MCFG_SCREEN_EOF(sprint8)
472   MCFG_SCREEN_EOF_STATIC(sprint8)
473473
474474   MCFG_GFXDECODE(sprint8)
475475   MCFG_PALETTE_LENGTH(36)
src/mame/drivers/atarig42.c
r14015r14016
582582   /* the board uses an SOS chip to generate video signals */
583583   MCFG_SCREEN_RAW_PARAMS(ATARI_CLOCK_14MHz/2, 456, 0, 336, 262, 0, 240)
584584   MCFG_SCREEN_UPDATE_STATIC(atarig42)
585   MCFG_SCREEN_EOF(atarig42)
585   MCFG_SCREEN_EOF_STATIC(atarig42)
586586
587587   MCFG_VIDEO_START(atarig42)
588588
src/mame/drivers/shadfrce.c
r14015r14016
568568   MCFG_SCREEN_ADD("screen", RASTER)
569569   MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, 432, 0, 320, 272, 8, 248)   /* HTOTAL and VTOTAL are guessed */
570570   MCFG_SCREEN_UPDATE_STATIC(shadfrce)
571   MCFG_SCREEN_EOF(shadfrce)
571   MCFG_SCREEN_EOF_STATIC(shadfrce)
572572
573573   MCFG_GFXDECODE(shadfrce)
574574   MCFG_PALETTE_LENGTH(0x4000)
src/mame/drivers/n8080.c
r14015r14016
583583   MCFG_SCREEN_SIZE(256, 256)
584584   MCFG_SCREEN_VISIBLE_AREA(0, 255, 16, 239)
585585   MCFG_SCREEN_UPDATE_STATIC(helifire)
586   MCFG_SCREEN_EOF(helifire)
586   MCFG_SCREEN_EOF_STATIC(helifire)
587587
588588   MCFG_PALETTE_LENGTH(8 + 0x400)
589589   MCFG_PALETTE_INIT(helifire)
src/mame/drivers/deco_ld.c
r14015r14016
527527   MCFG_CPU_PERIODIC_INT(sound_interrupt, 640)
528528
529529   MCFG_LASERDISC_LDV1000_ADD("laserdisc") //Sony LDP-1000A, is it truly compatible with the Pioneer?
530   MCFG_LASERDISC_OVERLAY(256, 256, rblaster)
530   MCFG_LASERDISC_OVERLAY_STATIC(256, 256, rblaster)
531531
532532   /* video hardware */
533533   MCFG_LASERDISC_SCREEN_ADD_NTSC("screen", "laserdisc")
src/mame/drivers/tnzs.c
r14015r14016
16391639   MCFG_SCREEN_SIZE(32*8, 32*8)
16401640   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
16411641   MCFG_SCREEN_UPDATE_STATIC(tnzs)
1642   MCFG_SCREEN_EOF(tnzs)
1642   MCFG_SCREEN_EOF_STATIC(tnzs)
16431643
16441644   MCFG_GFXDECODE(tnzs)
16451645   MCFG_PALETTE_LENGTH(512)
r14015r14016
16801680   MCFG_SCREEN_SIZE(32*8, 32*8)
16811681   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
16821682   MCFG_SCREEN_UPDATE_STATIC(tnzs)
1683   MCFG_SCREEN_EOF(tnzs)
1683   MCFG_SCREEN_EOF_STATIC(tnzs)
16841684
16851685   MCFG_GFXDECODE(tnzs)
16861686   MCFG_PALETTE_LENGTH(512)
r14015r14016
17241724   MCFG_SCREEN_SIZE(32*8, 32*8)
17251725   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
17261726   MCFG_SCREEN_UPDATE_STATIC(tnzs)
1727   MCFG_SCREEN_EOF(tnzs)
1727   MCFG_SCREEN_EOF_STATIC(tnzs)
17281728
17291729   MCFG_GFXDECODE(tnzs)
17301730   MCFG_PALETTE_LENGTH(512)
r14015r14016
17641764   MCFG_SCREEN_SIZE(32*8, 32*8)
17651765   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
17661766   MCFG_SCREEN_UPDATE_STATIC(tnzs)
1767   MCFG_SCREEN_EOF(tnzs)
1767   MCFG_SCREEN_EOF_STATIC(tnzs)
17681768
17691769   MCFG_GFXDECODE(insectx)
17701770   MCFG_PALETTE_LENGTH(512)
r14015r14016
18031803   MCFG_SCREEN_SIZE(32*8, 32*8)
18041804   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
18051805   MCFG_SCREEN_UPDATE_STATIC(tnzs)
1806   MCFG_SCREEN_EOF(tnzs)
1806   MCFG_SCREEN_EOF_STATIC(tnzs)
18071807
18081808   MCFG_GFXDECODE(tnzs)
18091809   MCFG_PALETTE_LENGTH(512)
r14015r14016
18531853   MCFG_SCREEN_SIZE(32*8, 32*8)
18541854   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
18551855   MCFG_SCREEN_UPDATE_STATIC(tnzs)
1856   MCFG_SCREEN_EOF(tnzs)
1856   MCFG_SCREEN_EOF_STATIC(tnzs)
18571857
18581858   MCFG_GFXDECODE(tnzs)
18591859   MCFG_PALETTE_LENGTH(512)
r14015r14016
19161916   MCFG_SCREEN_SIZE(32*8, 32*8)
19171917   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
19181918   MCFG_SCREEN_UPDATE_STATIC(tnzs)
1919   MCFG_SCREEN_EOF(tnzs)
1919   MCFG_SCREEN_EOF_STATIC(tnzs)
19201920
19211921   MCFG_GFXDECODE(tnzs)
19221922   MCFG_PALETTE_LENGTH(1024)
src/mame/drivers/goal92.c
r14015r14016
334334   MCFG_SCREEN_SIZE(40*8, 32*8)
335335   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1) // black border at bottom is a game bug...
336336   MCFG_SCREEN_UPDATE_STATIC(goal92)
337   MCFG_SCREEN_EOF(goal92)
337   MCFG_SCREEN_EOF_STATIC(goal92)
338338
339339   MCFG_GFXDECODE(goal92)
340340   MCFG_PALETTE_LENGTH(128*16)
src/mame/drivers/alg.c
r14015r14016
438438   MCFG_NVRAM_ADD_0FILL("nvram")
439439
440440   MCFG_LASERDISC_LDP1450_ADD("laserdisc")
441   MCFG_LASERDISC_OVERLAY(512*2, 262, amiga)
441   MCFG_LASERDISC_OVERLAY_STATIC(512*2, 262, amiga)
442442   MCFG_LASERDISC_OVERLAY_CLIP((129-8)*2, (449+8-1)*2, 44-8, 244+8-1)
443443
444444   /* video hardware */
src/mame/drivers/dreamwld.c
r14015r14016
587587   MCFG_SCREEN_SIZE(512,256)
588588   MCFG_SCREEN_VISIBLE_AREA(0, 304-1, 0, 224-1)
589589   MCFG_SCREEN_UPDATE_STATIC(dreamwld)
590   MCFG_SCREEN_EOF(dreamwld)
590   MCFG_SCREEN_EOF_STATIC(dreamwld)
591591
592592   MCFG_PALETTE_LENGTH(0x1000)
593593   MCFG_GFXDECODE(dreamwld)
src/mame/drivers/galaga.c
r14015r14016
16891689   MCFG_SCREEN_ADD("screen", RASTER)
16901690   MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK/3, 384, 0, 288, 264, 16, 224+16)
16911691   MCFG_SCREEN_UPDATE_STATIC(bosco)
1692   MCFG_SCREEN_EOF(bosco)
1692   MCFG_SCREEN_EOF_STATIC(bosco)
16931693
16941694   MCFG_GFXDECODE(bosco)
16951695   MCFG_PALETTE_LENGTH(64*4+64*4+4+64)
r14015r14016
17401740   MCFG_SCREEN_ADD("screen", RASTER)
17411741   MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK/3, 384, 0, 288, 264, 0, 224)
17421742   MCFG_SCREEN_UPDATE_STATIC(galaga)
1743   MCFG_SCREEN_EOF(galaga)
1743   MCFG_SCREEN_EOF_STATIC(galaga)
17441744
17451745   MCFG_GFXDECODE(galaga)
17461746   MCFG_PALETTE_LENGTH(64*4+64*4+64)
src/mame/drivers/istellar.c
r14015r14016
354354   MCFG_MACHINE_START(istellar)
355355
356356   MCFG_LASERDISC_LDV1000_ADD("laserdisc")
357   MCFG_LASERDISC_OVERLAY(256, 256, istellar)
357   MCFG_LASERDISC_OVERLAY_STATIC(256, 256, istellar)
358358
359359   /* video hardware */
360360   MCFG_LASERDISC_SCREEN_ADD_NTSC("screen", "laserdisc")
src/mame/drivers/mirage.c
r14015r14016
333333   MCFG_SCREEN_SIZE(40*8, 32*8)
334334   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1)
335335   MCFG_SCREEN_UPDATE_STATIC(mirage)
336   MCFG_SCREEN_EOF(mirage)
336   MCFG_SCREEN_EOF_STATIC(mirage)
337337
338338   MCFG_VIDEO_START(mirage)
339339
src/mame/drivers/djboy.c
r14015r14016
614614   MCFG_SCREEN_SIZE(256, 256)
615615   MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 16, 256-16-1)
616616   MCFG_SCREEN_UPDATE_STATIC(djboy)
617   MCFG_SCREEN_EOF(djboy)
617   MCFG_SCREEN_EOF_STATIC(djboy)
618618
619619   MCFG_GFXDECODE(djboy)
620620   MCFG_PALETTE_LENGTH(0x200)
src/mame/drivers/sidearms.c
r14015r14016
671671   MCFG_SCREEN_SIZE(64*8, 32*8)
672672   MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 2*8, 30*8-1 )
673673   MCFG_SCREEN_UPDATE_STATIC(sidearms)
674   MCFG_SCREEN_EOF(sidearms)
674   MCFG_SCREEN_EOF_STATIC(sidearms)
675675
676676   MCFG_GFXDECODE(sidearms)
677677   MCFG_PALETTE_LENGTH(1024)
r14015r14016
714714   MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
715715   MCFG_SCREEN_SIZE(64*8, 32*8)
716716   MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 2*8, 30*8-1 )
717   MCFG_SCREEN_EOF(sidearms)
717   MCFG_SCREEN_EOF_STATIC(sidearms)
718718   MCFG_SCREEN_UPDATE_STATIC(sidearms)
719719
720720   MCFG_GFXDECODE(turtship)
r14015r14016
762762   MCFG_SCREEN_SIZE(64*8, 32*8)
763763   MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 2*8, 30*8-1 )
764764   MCFG_SCREEN_UPDATE_STATIC(sidearms)
765   MCFG_SCREEN_EOF(sidearms)
765   MCFG_SCREEN_EOF_STATIC(sidearms)
766766
767767   MCFG_GFXDECODE(turtship)
768768   MCFG_PALETTE_LENGTH(1024)
src/mame/drivers/tx1.c
r14015r14016
728728   MCFG_SCREEN_ADD("rscreen", RASTER)
729729   MCFG_SCREEN_RAW_PARAMS(TX1_PIXEL_CLOCK, TX1_HTOTAL, TX1_HBEND, TX1_HBSTART, TX1_VTOTAL, TX1_VBEND, TX1_VBSTART)
730730   MCFG_SCREEN_UPDATE_STATIC(tx1_right)
731   MCFG_SCREEN_EOF(tx1)
731   MCFG_SCREEN_EOF_STATIC(tx1)
732732
733733   MCFG_VIDEO_START(tx1)
734734
r14015r14016
777777   MCFG_SCREEN_ADD("rscreen", RASTER)
778778   MCFG_SCREEN_RAW_PARAMS(BB_PIXEL_CLOCK, BB_HTOTAL, BB_HBEND, BB_HBSTART, BB_VTOTAL, BB_VBEND, BB_VBSTART)
779779   MCFG_SCREEN_UPDATE_STATIC(buggyboy_right)
780   MCFG_SCREEN_EOF(buggyboy)
780   MCFG_SCREEN_EOF_STATIC(buggyboy)
781781
782782   MCFG_PALETTE_LENGTH(256)
783783   MCFG_PALETTE_INIT(buggyboy)
r14015r14016
819819   MCFG_SCREEN_ADD("screen", RASTER)
820820   MCFG_SCREEN_RAW_PARAMS(BB_PIXEL_CLOCK, BB_HTOTAL, BB_HBEND, BB_HBSTART, BB_VTOTAL, BB_VBEND, BB_VBSTART)
821821   MCFG_SCREEN_UPDATE_STATIC(buggybjr)
822   MCFG_SCREEN_EOF(buggyboy)
822   MCFG_SCREEN_EOF_STATIC(buggyboy)
823823
824824   MCFG_PALETTE_LENGTH(256)
825825   MCFG_PALETTE_INIT(buggyboy)
src/mame/drivers/ssrj.c
r14015r14016
155155   MCFG_SCREEN_SIZE(40*8, 32*8)
156156   MCFG_SCREEN_VISIBLE_AREA(0*8, 34*8-1, 1*8, 31*8-1) // unknown res
157157   MCFG_SCREEN_UPDATE_STATIC(ssrj)
158   MCFG_SCREEN_EOF(ssrj)
158   MCFG_SCREEN_EOF_STATIC(ssrj)
159159
160160   MCFG_GFXDECODE(ssrj)
161161   MCFG_PALETTE_LENGTH(128)
src/mame/drivers/cchance.c
r14015r14016
234234   MCFG_SCREEN_SIZE(32*8, 32*8)
235235   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
236236   MCFG_SCREEN_UPDATE_STATIC(tnzs)
237   MCFG_SCREEN_EOF(tnzs)
237   MCFG_SCREEN_EOF_STATIC(tnzs)
238238
239239   MCFG_PALETTE_LENGTH(512)
240240   MCFG_PALETTE_INIT(arknoid2)
src/mame/drivers/srumbler.c
r14015r14016
256256   MCFG_SCREEN_SIZE(64*8, 32*8)
257257   MCFG_SCREEN_VISIBLE_AREA(10*8, (64-10)*8-1, 1*8, 31*8-1 )
258258   MCFG_SCREEN_UPDATE_STATIC(srumbler)
259   MCFG_SCREEN_EOF(srumbler)
259   MCFG_SCREEN_EOF_STATIC(srumbler)
260260
261261   MCFG_GFXDECODE(srumbler)
262262   MCFG_PALETTE_LENGTH(512)
src/mame/drivers/xmen.c
r14015r14016
455455   MCFG_SCREEN_SIZE(64*8, 32*8)
456456   MCFG_SCREEN_VISIBLE_AREA(16*8, 52*8-1, 2*8, 30*8-1)
457457   MCFG_SCREEN_UPDATE_STATIC(xmen6p_right)
458   MCFG_SCREEN_EOF(xmen6p)
458   MCFG_SCREEN_EOF_STATIC(xmen6p)
459459
460460   MCFG_VIDEO_START(xmen6p)
461461
src/mame/drivers/2mindril.c
r14015r14016
451451   MCFG_SCREEN_SIZE(40*8+48*2, 32*8)
452452   MCFG_SCREEN_VISIBLE_AREA(46, 40*8-1 + 46, 24, 24+224-1)
453453   MCFG_SCREEN_UPDATE_STATIC(f3)
454   MCFG_SCREEN_EOF(f3)
454   MCFG_SCREEN_EOF_STATIC(f3)
455455
456456   MCFG_PALETTE_LENGTH(0x2000)
457457
src/mame/drivers/dlair.c
r14015r14016
766766   MCFG_MACHINE_RESET(dlair)
767767
768768   MCFG_LASERDISC_22VP932_ADD("ld_22vp932")
769   MCFG_LASERDISC_OVERLAY(256, 256, dleuro)
769   MCFG_LASERDISC_OVERLAY_STATIC(256, 256, dleuro)
770770
771771   /* video hardware */
772772   MCFG_LASERDISC_SCREEN_ADD_PAL("screen", "ld_22vp932")
src/mame/drivers/segac2.c
r14015r14016
12971297   MCFG_SCREEN_SIZE(64*8, 64*8)
12981298   MCFG_SCREEN_VISIBLE_AREA(0, 32*8-1, 0, 28*8-1)
12991299   MCFG_SCREEN_UPDATE_STATIC(segac2_new)
1300   MCFG_SCREEN_EOF( megadriv )
1300   MCFG_SCREEN_EOF_STATIC( megadriv )
13011301
13021302   MCFG_PALETTE_LENGTH(2048)
13031303
src/mame/drivers/sandscrp.c
r14015r14016
483483   MCFG_SCREEN_SIZE(256, 256)
484484   MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 0+16, 256-16-1)
485485   MCFG_SCREEN_UPDATE_STATIC(sandscrp)
486   MCFG_SCREEN_EOF(sandscrp)
486   MCFG_SCREEN_EOF_STATIC(sandscrp)
487487
488488   MCFG_GFXDECODE(sandscrp)
489489   MCFG_PALETTE_LENGTH(2048)
src/mame/drivers/gpworld.c
r14015r14016
471471   MCFG_MACHINE_START(gpworld)
472472
473473   MCFG_LASERDISC_LDV1000_ADD("laserdisc")
474   MCFG_LASERDISC_OVERLAY(512, 256, gpworld)
474   MCFG_LASERDISC_OVERLAY_STATIC(512, 256, gpworld)
475475
476476   /* video hardware */
477477   MCFG_LASERDISC_SCREEN_ADD_NTSC("screen", "laserdisc")
src/mame/drivers/homedata.c
r14015r14016
12741274   // visible area can be changed at runtime
12751275   MCFG_SCREEN_VISIBLE_AREA(0*8, 54*8-1, 2*8, 30*8-1)
12761276   MCFG_SCREEN_UPDATE_STATIC(mrokumei)
1277   MCFG_SCREEN_EOF(homedata)
1277   MCFG_SCREEN_EOF_STATIC(homedata)
12781278
12791279   MCFG_GFXDECODE(mrokumei)
12801280   MCFG_PALETTE_LENGTH(0x8000)
r14015r14016
13421342   MCFG_SCREEN_SIZE(256, 256)
13431343   MCFG_SCREEN_VISIBLE_AREA(0, 255, 16, 256-1-16)
13441344   MCFG_SCREEN_UPDATE_STATIC(reikaids)
1345   MCFG_SCREEN_EOF(homedata)
1345   MCFG_SCREEN_EOF_STATIC(homedata)
13461346
13471347   MCFG_GFXDECODE(reikaids)
13481348   MCFG_PALETTE_LENGTH(0x8000)
r14015r14016
13931393   // visible area can be changed at runtime
13941394   MCFG_SCREEN_VISIBLE_AREA(0*8, 54*8-1, 2*8, 30*8-1)
13951395   MCFG_SCREEN_UPDATE_STATIC(pteacher)
1396   MCFG_SCREEN_EOF(homedata)
1396   MCFG_SCREEN_EOF_STATIC(homedata)
13971397
13981398   MCFG_GFXDECODE(pteacher)
13991399   MCFG_PALETTE_LENGTH(0x8000)
src/mame/drivers/hng64.c
r14015r14016
17461746   MCFG_PALETTE_LENGTH(0x1000)
17471747
17481748   MCFG_VIDEO_START(hng64)
1749   MCFG_SCREEN_EOF(hng64)
1749   MCFG_SCREEN_EOF_STATIC(hng64)
17501750MACHINE_CONFIG_END
17511751
17521752
src/mame/drivers/macrossp.c
r14015r14016
645645   MCFG_SCREEN_SIZE(32*16, 16*16)
646646   MCFG_SCREEN_VISIBLE_AREA(0*16, 24*16-1, 0*16, 15*16-1)
647647   MCFG_SCREEN_UPDATE_STATIC(macrossp)
648   MCFG_SCREEN_EOF(macrossp)
648   MCFG_SCREEN_EOF_STATIC(macrossp)
649649
650650   MCFG_GFXDECODE(macrossp)
651651   MCFG_PALETTE_LENGTH(0x1000)
src/mame/drivers/atarigx2.c
r14015r14016
14531453   /* the board uses a pair of GALs to determine H and V parameters */
14541454   MCFG_SCREEN_RAW_PARAMS(ATARI_CLOCK_14MHz/2, 456, 0, 336, 262, 0, 240)
14551455   MCFG_SCREEN_UPDATE_STATIC(atarigx2)
1456   MCFG_SCREEN_EOF(atarigx2)
1456   MCFG_SCREEN_EOF_STATIC(atarigx2)
14571457
14581458   MCFG_VIDEO_START(atarigx2)
14591459
src/mame/drivers/taotaido.c
r14015r14016
350350   MCFG_SCREEN_SIZE(40*8, 32*8)
351351   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 28*8-1)
352352   MCFG_SCREEN_UPDATE_STATIC(taotaido)
353   MCFG_SCREEN_EOF( taotaido )
353   MCFG_SCREEN_EOF_STATIC( taotaido )
354354
355355   MCFG_PALETTE_LENGTH(0x800)
356356
src/mame/drivers/taito_f3.c
r14015r14016
446446   MCFG_SCREEN_SIZE(40*8+48*2, 32*8)
447447   MCFG_SCREEN_VISIBLE_AREA(46, 40*8-1 + 46, 24, 24+232-1)
448448   MCFG_SCREEN_UPDATE_STATIC(f3)
449   MCFG_SCREEN_EOF(f3)
449   MCFG_SCREEN_EOF_STATIC(f3)
450450
451451   MCFG_GFXDECODE(taito_f3)
452452   MCFG_PALETTE_LENGTH(0x2000)
r14015r14016
540540   MCFG_SCREEN_SIZE(40*8+48*2, 32*8)
541541   MCFG_SCREEN_VISIBLE_AREA(46, 40*8-1 + 46, 31, 31+224-1)
542542   MCFG_SCREEN_UPDATE_STATIC(f3)
543   MCFG_SCREEN_EOF(f3)
543   MCFG_SCREEN_EOF_STATIC(f3)
544544
545545   MCFG_GFXDECODE(bubsympb)
546546   MCFG_PALETTE_LENGTH(8192)
src/mame/drivers/gaelco2.c
r14015r14016
169169   MCFG_SCREEN_SIZE(64*16, 32*16)
170170   MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 16, 256-1)
171171   MCFG_SCREEN_UPDATE_STATIC(gaelco2)
172   MCFG_SCREEN_EOF(gaelco2)
172   MCFG_SCREEN_EOF_STATIC(gaelco2)
173173
174174   MCFG_GFXDECODE(0x0080000)
175175   MCFG_PALETTE_LENGTH(4096*16 - 16)   /* game's palette is 4096 but we allocate 15 more for shadows & highlights */
r14015r14016
302302   MCFG_SCREEN_SIZE(64*16, 32*16)
303303   MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 16, 256-1)
304304   MCFG_SCREEN_UPDATE_STATIC(gaelco2)
305   MCFG_SCREEN_EOF(gaelco2)
305   MCFG_SCREEN_EOF_STATIC(gaelco2)
306306
307307   MCFG_GFXDECODE(0x0200000)
308308   MCFG_PALETTE_LENGTH(4096*16 - 16)   /* game's palette is 4096 but we allocate 15 more for shadows & highlights */
r14015r14016
543543   MCFG_SCREEN_SIZE(64*16, 32*16)
544544   MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 16, 256-1)
545545   MCFG_SCREEN_UPDATE_STATIC(gaelco2)
546   MCFG_SCREEN_EOF(gaelco2)
546   MCFG_SCREEN_EOF_STATIC(gaelco2)
547547
548548   MCFG_GFXDECODE(0x0400000)
549549   MCFG_PALETTE_LENGTH(4096*16 - 16)   /* game's palette is 4096 but we allocate 15 more for shadows & highlights */
r14015r14016
795795   MCFG_SCREEN_SIZE(64*16, 32*16)
796796   MCFG_SCREEN_VISIBLE_AREA(0, 480-1, 16, 256-1)
797797   MCFG_SCREEN_UPDATE_STATIC(gaelco2_right)
798   MCFG_SCREEN_EOF(gaelco2)
798   MCFG_SCREEN_EOF_STATIC(gaelco2)
799799
800800   MCFG_VIDEO_START(gaelco2_dual)
801801
r14015r14016
979979   MCFG_SCREEN_SIZE(64*16, 32*16)
980980   MCFG_SCREEN_VISIBLE_AREA(0, 384-1, 16, 256-1)
981981   MCFG_SCREEN_UPDATE_STATIC(gaelco2)
982   MCFG_SCREEN_EOF(gaelco2)
982   MCFG_SCREEN_EOF_STATIC(gaelco2)
983983
984984   MCFG_GFXDECODE(0x0400000)
985985   MCFG_PALETTE_LENGTH(4096*16 - 16)   /* game's palette is 4096 but we allocate 15 more for shadows & highlights */
r14015r14016
12301230   MCFG_SCREEN_SIZE(384, 32*16)
12311231   MCFG_SCREEN_VISIBLE_AREA(0, 384-1, 16, 256-1)
12321232   MCFG_SCREEN_UPDATE_STATIC(gaelco2_right)
1233   MCFG_SCREEN_EOF(gaelco2)
1233   MCFG_SCREEN_EOF_STATIC(gaelco2)
12341234
12351235
12361236   MCFG_VIDEO_START(gaelco2_dual)
src/mame/drivers/champbas.c
r14015r14016
625625   MCFG_SCREEN_SIZE(32*8, 32*8)
626626   MCFG_SCREEN_VISIBLE_AREA(0, 32*8-1, 2*8, 30*8-1)
627627   MCFG_SCREEN_UPDATE_STATIC(champbas)
628   MCFG_SCREEN_EOF(champbas)
628   MCFG_SCREEN_EOF_STATIC(champbas)
629629
630630   MCFG_GFXDECODE(talbot)
631631   MCFG_PALETTE_LENGTH(0x200)
r14015r14016
660660   MCFG_SCREEN_SIZE(32*8, 32*8)
661661   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
662662   MCFG_SCREEN_UPDATE_STATIC(champbas)
663   MCFG_SCREEN_EOF(champbas)
663   MCFG_SCREEN_EOF_STATIC(champbas)
664664
665665   MCFG_GFXDECODE(champbas)
666666   MCFG_PALETTE_LENGTH(0x200)
r14015r14016
717717   MCFG_SCREEN_SIZE(32*8, 32*8)
718718   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
719719   MCFG_SCREEN_UPDATE_STATIC(exctsccr)
720   MCFG_SCREEN_EOF(champbas)
720   MCFG_SCREEN_EOF_STATIC(champbas)
721721
722722   MCFG_GFXDECODE(exctsccr)
723723   MCFG_PALETTE_LENGTH(0x200)
r14015r14016
768768   MCFG_SCREEN_SIZE(32*8, 32*8)
769769   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
770770   MCFG_SCREEN_UPDATE_STATIC(exctsccr)
771   MCFG_SCREEN_EOF(champbas)
771   MCFG_SCREEN_EOF_STATIC(champbas)
772772
773773   MCFG_GFXDECODE(exctsccr)
774774   MCFG_PALETTE_LENGTH(0x200)
src/mame/drivers/twin16.c
r14015r14016
754754   MCFG_SCREEN_SIZE(40*8, 32*8)
755755   MCFG_SCREEN_VISIBLE_AREA(0, 40*8-1, 2*8, 30*8-1)
756756   MCFG_SCREEN_UPDATE_STATIC(twin16)
757   MCFG_SCREEN_EOF(twin16)
757   MCFG_SCREEN_EOF_STATIC(twin16)
758758
759759   MCFG_GFXDECODE(twin16)
760760   MCFG_PALETTE_LENGTH(0x400)
r14015r14016
807807   MCFG_SCREEN_SIZE(40*8, 32*8)
808808   MCFG_SCREEN_VISIBLE_AREA(0, 40*8-1, 2*8, 30*8-1)
809809   MCFG_SCREEN_UPDATE_STATIC(twin16)
810   MCFG_SCREEN_EOF(twin16)
810   MCFG_SCREEN_EOF_STATIC(twin16)
811811
812812   MCFG_GFXDECODE(twin16)
813813   MCFG_PALETTE_LENGTH(0x400)
src/mame/drivers/megasys1.c
r14015r14016
14801480   MCFG_SCREEN_SIZE(32*8, 32*8)
14811481   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
14821482   MCFG_SCREEN_UPDATE_STATIC(megasys1)
1483   MCFG_SCREEN_EOF(megasys1)
1483   MCFG_SCREEN_EOF_STATIC(megasys1)
14841484
14851485   MCFG_GFXDECODE(ABC)
14861486   MCFG_PALETTE_LENGTH(1024)
r14015r14016
15401540   MCFG_SCREEN_SIZE(32*8, 32*8)
15411541   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
15421542   MCFG_SCREEN_UPDATE_STATIC(megasys1)
1543   MCFG_SCREEN_EOF(megasys1)
1543   MCFG_SCREEN_EOF_STATIC(megasys1)
15441544
15451545   MCFG_GFXDECODE(ABC)
15461546   MCFG_PALETTE_LENGTH(1024)
r14015r14016
16121612   MCFG_SCREEN_SIZE(32*8, 32*8)
16131613   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
16141614   MCFG_SCREEN_UPDATE_STATIC(megasys1)
1615   MCFG_SCREEN_EOF(megasys1)
1615   MCFG_SCREEN_EOF_STATIC(megasys1)
16161616
16171617   MCFG_GFXDECODE(ABC)
16181618   MCFG_PALETTE_LENGTH(1024)
src/mame/drivers/crshrace.c
r14015r14016
489489   MCFG_SCREEN_SIZE(64*8, 32*8)
490490   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 28*8-1)
491491   MCFG_SCREEN_UPDATE_STATIC(crshrace)
492   MCFG_SCREEN_EOF(crshrace)
492   MCFG_SCREEN_EOF_STATIC(crshrace)
493493
494494   MCFG_GFXDECODE(crshrace)
495495   MCFG_PALETTE_LENGTH(2048)
src/mame/drivers/airbustr.c
r14015r14016
661661   MCFG_SCREEN_SIZE(32*8, 32*8)
662662   MCFG_SCREEN_VISIBLE_AREA(0, 32*8-1, 2*8, 30*8-1)
663663   MCFG_SCREEN_UPDATE_STATIC(airbustr)
664   MCFG_SCREEN_EOF(airbustr)
664   MCFG_SCREEN_EOF_STATIC(airbustr)
665665
666666   MCFG_GFXDECODE(airbustr)
667667   MCFG_PALETTE_LENGTH(768)
src/mame/drivers/igs011.c
r14015r14016
36963696   // irq 4 points to an apparently unneeded routine
36973697
36983698   MCFG_SCREEN_MODIFY("screen")
3699   MCFG_SCREEN_EOF(vbowl)   // trackball
3699   MCFG_SCREEN_EOF_STATIC(vbowl)   // trackball
37003700//  MCFG_GFXDECODE(igs011_hi)
37013701
37023702   MCFG_DEVICE_REMOVE("oki")
src/mame/drivers/dec8.c
r14015r14016
20752075   MCFG_SCREEN_SIZE(32*8, 32*8)
20762076   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
20772077   MCFG_SCREEN_UPDATE_STATIC(ghostb)
2078   MCFG_SCREEN_EOF(dec8)
2078   MCFG_SCREEN_EOF_STATIC(dec8)
20792079
20802080   MCFG_GFXDECODE(ghostb)
20812081   MCFG_PALETTE_LENGTH(1024)
r14015r14016
22242224   MCFG_SCREEN_SIZE(32*8, 32*8)
22252225   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
22262226   MCFG_SCREEN_UPDATE_STATIC(gondo)
2227   MCFG_SCREEN_EOF(dec8)
2227   MCFG_SCREEN_EOF_STATIC(dec8)
22282228
22292229   MCFG_GFXDECODE(gondo)
22302230   MCFG_PALETTE_LENGTH(1024)
r14015r14016
24232423   MCFG_SCREEN_SIZE(32*8, 32*8)
24242424   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
24252425   MCFG_SCREEN_UPDATE_STATIC(garyoret)
2426   MCFG_SCREEN_EOF(dec8)
2426   MCFG_SCREEN_EOF_STATIC(dec8)
24272427
24282428   MCFG_GFXDECODE(gondo)
24292429   MCFG_PALETTE_LENGTH(1024)
src/mame/drivers/fuukifg3.c
r14015r14016
618618   MCFG_SCREEN_SIZE(64*8, 32*8)
619619   MCFG_SCREEN_VISIBLE_AREA(0, 40*8-1, 0, 30*8-1)
620620   MCFG_SCREEN_UPDATE_STATIC(fuuki32)
621   MCFG_SCREEN_EOF(fuuki32)
621   MCFG_SCREEN_EOF_STATIC(fuuki32)
622622
623623   MCFG_GFXDECODE(fuuki32)
624624   MCFG_PALETTE_LENGTH(0x4000/2)
src/mame/drivers/atarigt.c
r14015r14016
833833   /* the board uses a pair of GALs to determine H and V parameters */
834834   MCFG_SCREEN_RAW_PARAMS(ATARI_CLOCK_14MHz/2, 456, 0, 336, 262, 0, 240)
835835   MCFG_SCREEN_UPDATE_STATIC(atarigt)
836   MCFG_SCREEN_EOF(atarigt)
836   MCFG_SCREEN_EOF_STATIC(atarigt)
837837
838838   MCFG_VIDEO_START(atarigt)
839839
src/mame/drivers/asuka.c
r14015r14016
914914   MCFG_SCREEN_SIZE(40*8, 32*8)
915915   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 3*8, 31*8-1)
916916   MCFG_SCREEN_UPDATE_STATIC(bonzeadv)
917   MCFG_SCREEN_EOF(asuka)
917   MCFG_SCREEN_EOF_STATIC(asuka)
918918
919919   MCFG_GFXDECODE(asuka)
920920   MCFG_PALETTE_LENGTH(4096)
r14015r14016
959959   MCFG_SCREEN_SIZE(40*8, 32*8)
960960   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 32*8-1)
961961   MCFG_SCREEN_UPDATE_STATIC(asuka)
962   MCFG_SCREEN_EOF(asuka)
962   MCFG_SCREEN_EOF_STATIC(asuka)
963963
964964   MCFG_GFXDECODE(asuka)
965965   MCFG_PALETTE_LENGTH(4096)
r14015r14016
10111011   MCFG_SCREEN_SIZE(40*8, 32*8)
10121012   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 32*8-1)
10131013   MCFG_SCREEN_UPDATE_STATIC(bonzeadv)
1014   MCFG_SCREEN_EOF(asuka)
1014   MCFG_SCREEN_EOF_STATIC(asuka)
10151015
10161016   MCFG_GFXDECODE(asuka)
10171017   MCFG_PALETTE_LENGTH(4096)
r14015r14016
10551055   MCFG_SCREEN_SIZE(40*8, 32*8)
10561056   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 32*8-1)
10571057   MCFG_SCREEN_UPDATE_STATIC(asuka)
1058   MCFG_SCREEN_EOF(asuka)
1058   MCFG_SCREEN_EOF_STATIC(asuka)
10591059
10601060   MCFG_GFXDECODE(asuka)
10611061   MCFG_PALETTE_LENGTH(4096)   /* only Mofflott uses full palette space */
r14015r14016
11031103   MCFG_SCREEN_SIZE(40*8, 32*8)
11041104   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 32*8-1)
11051105   MCFG_SCREEN_UPDATE_STATIC(asuka)
1106   MCFG_SCREEN_EOF(asuka)
1106   MCFG_SCREEN_EOF_STATIC(asuka)
11071107
11081108   MCFG_GFXDECODE(asuka)
11091109   MCFG_PALETTE_LENGTH(4096)   /* only Mofflott uses full palette space */
r14015r14016
11471147   MCFG_SCREEN_SIZE(40*8, 32*8)
11481148   MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 2*8, 32*8-1)
11491149   MCFG_SCREEN_UPDATE_STATIC(asuka)
1150   MCFG_SCREEN_EOF(asuka)
1150   MCFG_SCREEN_EOF_STATIC(asuka)
11511151
11521152   MCFG_GFXDECODE(asuka)
11531153   MCFG_PALETTE_LENGTH(4096)
src/mame/drivers/hvyunit.c
r14015r14016
672672   MCFG_SCREEN_SIZE(256, 256)
673673   MCFG_SCREEN_VISIBLE_AREA(0, 256-1, 16, 240-1)
674674   MCFG_SCREEN_UPDATE_STATIC(hvyunit)
675   MCFG_SCREEN_EOF(hvyunit)
675   MCFG_SCREEN_EOF_STATIC(hvyunit)
676676
677677   MCFG_GFXDECODE(hvyunit)
678678   MCFG_PALETTE_LENGTH(0x800)
src/mame/drivers/wolfpack.c
r14015r14016
302302   MCFG_SCREEN_SIZE(512, 262)
303303   MCFG_SCREEN_VISIBLE_AREA(0, 511, 16, 239)
304304   MCFG_SCREEN_UPDATE_STATIC(wolfpack)
305   MCFG_SCREEN_EOF(wolfpack)
305   MCFG_SCREEN_EOF_STATIC(wolfpack)
306306
307307   MCFG_GFXDECODE(wolfpack)
308308   MCFG_PALETTE_LENGTH(12)
src/mame/drivers/nmk16.c
r14015r14016
35703570   MCFG_SCREEN_SIZE(256, 256)
35713571   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
35723572   MCFG_SCREEN_UPDATE_STATIC(tharrier)
3573   MCFG_SCREEN_EOF(nmk)
3573   MCFG_SCREEN_EOF_STATIC(nmk)
35743574
35753575   MCFG_GFXDECODE(tharrier)
35763576   MCFG_PALETTE_LENGTH(512)
r14015r14016
36133613   MCFG_SCREEN_SIZE(256, 256)
36143614   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
36153615   MCFG_SCREEN_UPDATE_STATIC(manybloc)
3616   MCFG_SCREEN_EOF(nmk)
3616   MCFG_SCREEN_EOF_STATIC(nmk)
36173617
36183618   MCFG_GFXDECODE(tharrier)
36193619   MCFG_PALETTE_LENGTH(512)
r14015r14016
36543654   MCFG_SCREEN_SIZE(256, 256)
36553655   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
36563656   MCFG_SCREEN_UPDATE_STATIC(macross)
3657   MCFG_SCREEN_EOF(nmk)
3657   MCFG_SCREEN_EOF_STATIC(nmk)
36583658
36593659   MCFG_GFXDECODE(macross)
36603660   MCFG_PALETTE_LENGTH(1024)
r14015r14016
36973697   MCFG_SCREEN_SIZE(256, 256)
36983698   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
36993699   MCFG_SCREEN_UPDATE_STATIC(macross)
3700   MCFG_SCREEN_EOF(nmk)
3700   MCFG_SCREEN_EOF_STATIC(nmk)
37013701
37023702   MCFG_GFXDECODE(macross)
37033703   MCFG_PALETTE_LENGTH(1024)
r14015r14016
37293729   MCFG_SCREEN_SIZE(256, 256)
37303730   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
37313731   MCFG_SCREEN_UPDATE_STATIC(bioship)
3732   MCFG_SCREEN_EOF(nmk)
3732   MCFG_SCREEN_EOF_STATIC(nmk)
37333733
37343734   MCFG_GFXDECODE(bioship)
37353735   MCFG_PALETTE_LENGTH(1024)
r14015r14016
37703770   MCFG_SCREEN_SIZE(256, 256)
37713771   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
37723772   MCFG_SCREEN_UPDATE_STATIC(macross)
3773   MCFG_SCREEN_EOF(nmk)
3773   MCFG_SCREEN_EOF_STATIC(nmk)
37743774
37753775   MCFG_GFXDECODE(macross)
37763776   MCFG_PALETTE_LENGTH(1024)
r14015r14016
38143814   MCFG_SCREEN_SIZE(256, 256)
38153815   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
38163816   MCFG_SCREEN_UPDATE_STATIC(macross)
3817   MCFG_SCREEN_EOF(nmk)
3817   MCFG_SCREEN_EOF_STATIC(nmk)
38183818
38193819   MCFG_GFXDECODE(macross)
38203820   MCFG_PALETTE_LENGTH(1024)
r14015r14016
38453845   MCFG_SCREEN_SIZE(256, 256)
38463846   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
38473847   MCFG_SCREEN_UPDATE_STATIC(macross)
3848   MCFG_SCREEN_EOF(nmk)
3848   MCFG_SCREEN_EOF_STATIC(nmk)
38493849
38503850   MCFG_GFXDECODE(macross)
38513851   MCFG_PALETTE_LENGTH(1024)
r14015r14016
38903890   MCFG_SCREEN_SIZE(256, 256)
38913891   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
38923892   MCFG_SCREEN_UPDATE_STATIC(macross)
3893   MCFG_SCREEN_EOF(nmk)
3893   MCFG_SCREEN_EOF_STATIC(nmk)
38943894
38953895   MCFG_GFXDECODE(macross)
38963896   MCFG_PALETTE_LENGTH(1024)
r14015r14016
39193919   MCFG_SCREEN_SIZE(256, 256)
39203920   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
39213921   MCFG_SCREEN_UPDATE_STATIC(tdragon)
3922   MCFG_SCREEN_EOF(nmk)
3922   MCFG_SCREEN_EOF_STATIC(nmk)
39233923
39243924   MCFG_GFXDECODE(macross)
39253925   MCFG_PALETTE_LENGTH(1024)
r14015r14016
39623962   MCFG_SCREEN_SIZE(256, 256)
39633963   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
39643964   MCFG_SCREEN_UPDATE_STATIC(macross)
3965   MCFG_SCREEN_EOF(nmk)
3965   MCFG_SCREEN_EOF_STATIC(nmk)
39663966
39673967   MCFG_GFXDECODE(macross)
39683968   MCFG_PALETTE_LENGTH(1024)
r14015r14016
39943994   MCFG_SCREEN_SIZE(256, 256)
39953995   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
39963996   MCFG_SCREEN_UPDATE_STATIC(strahl)
3997   MCFG_SCREEN_EOF(strahl)
3997   MCFG_SCREEN_EOF_STATIC(strahl)
39983998
39993999   MCFG_GFXDECODE(strahl)
40004000   MCFG_PALETTE_LENGTH(1024)
r14015r14016
40354035   MCFG_SCREEN_SIZE(256, 256)
40364036   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
40374037   MCFG_SCREEN_UPDATE_STATIC(hachamf)
4038   MCFG_SCREEN_EOF(nmk)
4038   MCFG_SCREEN_EOF_STATIC(nmk)
40394039
40404040   MCFG_GFXDECODE(macross)
40414041   MCFG_PALETTE_LENGTH(1024)
r14015r14016
40774077   MCFG_SCREEN_SIZE(256, 256)
40784078   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
40794079   MCFG_SCREEN_UPDATE_STATIC(macross)
4080   MCFG_SCREEN_EOF(nmk)
4080   MCFG_SCREEN_EOF_STATIC(nmk)
40814081
40824082   MCFG_GFXDECODE(macross)
40834083   MCFG_PALETTE_LENGTH(1024)
r14015r14016
41184118   MCFG_SCREEN_SIZE(256, 256)
41194119   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
41204120   MCFG_SCREEN_UPDATE_STATIC(macross)
4121   MCFG_SCREEN_EOF(nmk)
4121   MCFG_SCREEN_EOF_STATIC(nmk)
41224122
41234123   MCFG_GFXDECODE(macross)
41244124   MCFG_PALETTE_LENGTH(1024)
r14015r14016
41594159   MCFG_SCREEN_SIZE(512, 256)
41604160   MCFG_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 2*8, 30*8-1)
41614161   MCFG_SCREEN_UPDATE_STATIC(gunnail)
4162   MCFG_SCREEN_EOF(nmk)
4162   MCFG_SCREEN_EOF_STATIC(nmk)
41634163
41644164   MCFG_GFXDECODE(macross)
41654165   MCFG_PALETTE_LENGTH(1024)
r14015r14016
42024202   MCFG_SCREEN_SIZE(512, 256)
42034203   MCFG_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 2*8, 30*8-1)
42044204   MCFG_SCREEN_UPDATE_STATIC(gunnail)
4205   MCFG_SCREEN_EOF(nmk)
4205   MCFG_SCREEN_EOF_STATIC(nmk)
42064206
42074207   MCFG_GFXDECODE(macross2)
42084208   MCFG_PALETTE_LENGTH(1024)
r14015r14016
42444244   MCFG_SCREEN_SIZE(512, 256)
42454245   MCFG_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 2*8, 30*8-1)
42464246   MCFG_SCREEN_UPDATE_STATIC(gunnail)
4247   MCFG_SCREEN_EOF(nmk)
4247   MCFG_SCREEN_EOF_STATIC(nmk)
42484248
42494249   MCFG_GFXDECODE(macross2)
42504250   MCFG_PALETTE_LENGTH(1024)
r14015r14016
42854285   MCFG_SCREEN_SIZE(512, 256)
42864286   MCFG_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 2*8, 30*8-1)
42874287   MCFG_SCREEN_UPDATE_STATIC(gunnail)
4288   MCFG_SCREEN_EOF(nmk)
4288   MCFG_SCREEN_EOF_STATIC(nmk)
42894289
42904290   MCFG_GFXDECODE(macross2)
42914291   MCFG_PALETTE_LENGTH(1024)
r14015r14016
43234323   MCFG_SCREEN_SIZE(512, 256)
43244324   MCFG_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 2*8, 30*8-1)
43254325   MCFG_SCREEN_UPDATE_STATIC(bjtwin)
4326   MCFG_SCREEN_EOF(nmk)
4326   MCFG_SCREEN_EOF_STATIC(nmk)
43274327
43284328   MCFG_GFXDECODE(bjtwin)
43294329   MCFG_PALETTE_LENGTH(1024)
r14015r14016
48344834   MCFG_SCREEN_SIZE(256, 256)
48354835   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
48364836   MCFG_SCREEN_UPDATE_STATIC(afega)
4837   MCFG_SCREEN_EOF(nmk)
4837   MCFG_SCREEN_EOF_STATIC(nmk)
48384838
48394839   MCFG_GFXDECODE(stagger1)
48404840   MCFG_PALETTE_LENGTH(768)
r14015r14016
49184918   MCFG_SCREEN_SIZE(256, 256)
49194919   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
49204920   MCFG_SCREEN_UPDATE_STATIC(firehawk)
4921   MCFG_SCREEN_EOF(nmk)
4921   MCFG_SCREEN_EOF_STATIC(nmk)
49224922
49234923   MCFG_GFXDECODE(grdnstrm)
49244924   MCFG_PALETTE_LENGTH(768)
r14015r14016
49534953   MCFG_SCREEN_SIZE(256, 256)
49544954   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
49554955   MCFG_SCREEN_UPDATE_STATIC(macross)
4956   MCFG_SCREEN_EOF(nmk)
4956   MCFG_SCREEN_EOF_STATIC(nmk)
49574957
49584958   MCFG_GFXDECODE(macross)
49594959   MCFG_PALETTE_LENGTH(1024)
src/emu/device.h
r14015r14016
9797typedef struct _input_device_default input_device_default;
9898
9999
100// ======================> device_delegate
101
102// device_delegate is a delegate that wraps with a device tag and can be easily
103// late bound without replicating logic everywhere
104template<typename _Signature>
105class device_delegate : public delegate<_Signature>
106{
107   typedef delegate<_Signature> basetype;
108
109public:
110   // provide same set of constructors as the base class, with additional device name
111   // parameter
112   device_delegate() : basetype(), m_device_name(NULL) { }
113   device_delegate(const basetype &src) : basetype(src), m_device_name(src.m_device_name) { }
114   device_delegate(const basetype &src, delegate_late_bind &object) : basetype(src, object), m_device_name(src.m_device_name) { }
115   template<class _FunctionClass> device_delegate(typename basetype::template traits<_FunctionClass>::member_func_type funcptr, const char *name, const char *devname) : basetype(funcptr, name, (_FunctionClass *)0), m_device_name(devname) { }
116   template<class _FunctionClass> device_delegate(typename basetype::template traits<_FunctionClass>::member_func_type funcptr, const char *name, _FunctionClass *object, const char *devname) : basetype(funcptr, name, (_FunctionClass *)0), m_device_name(devname) { }
117   template<class _FunctionClass> device_delegate(typename basetype::template traits<_FunctionClass>::static_func_type funcptr, const char *name, _FunctionClass *object, const char *devname) : basetype(funcptr, name, (_FunctionClass *)0), m_device_name(devname) { }
118   template<class _FunctionClass> device_delegate(typename basetype::template traits<_FunctionClass>::static_ref_func_type funcptr, const char *name, _FunctionClass *object, const char *devname) : basetype(funcptr, name, (_FunctionClass *)0), m_device_name(devname) { }
119   device_delegate &operator=(const basetype &src) { *static_cast<basetype *>(this) = src; m_device_name = src.m_device_name; return *this; }
120
121   // perform the binding
122   void bind_relative_to(device_t &search_root);
123
124private:
125   // internal state
126   const char *m_device_name;
127};
128
129
100130// exception classes
101131class device_missing_dependencies : public emu_exception { };
102132
r14015r14016
542572   return false;
543573}
544574
575
576template<typename _Signature>
577void device_delegate<_Signature>::bind_relative_to(device_t &search_root)
578{
579   if (!basetype::isnull())
580   {
581      device_t *device = search_root.subdevice(m_device_name);
582      assert(device != NULL);
583      basetype::late_bind(*device);
584   }
585}
586
545587#endif   /* __DEVINTRF_H__ */
src/emu/machine/laserdsc.c
r14015r14016
9292     m_overwidth(0),
9393     m_overheight(0),
9494     m_overclip(0, -1, 0, -1),
95     m_overupdate_device(NULL),
9695     m_disc(NULL),
9796     m_vbidata(NULL),
9897     m_width(0),
r14015r14016
183182{
184183   // handle the overlay if present
185184   screen_bitmap &overbitmap = m_overbitmap[m_overindex];
186   if (overbitmap.valid() && !m_overupdate.isnull())
185   if (overbitmap.valid() && (!m_overupdate_ind16.isnull() || !m_overupdate_rgb32.isnull()))
187186   {
188187      // scale the cliprect to the overlay size
189188      rectangle clip(m_overclip);
r14015r14016
193192      clip.max_y = (cliprect.max_y + 1) * overbitmap.height() / bitmap.height() - 1;
194193
195194      // call the update callback
196      switch (m_overupdate.format())
197      {
198         case BITMAP_FORMAT_IND16:   m_overupdate(screen, overbitmap.as_ind16(), clip);   break;
199         case BITMAP_FORMAT_RGB32:      m_overupdate(screen, overbitmap.as_rgb32(), clip);      break;
200         default: throw emu_fatalerror("Invalid bitmap format!");
201      }
195      if (!m_overupdate_ind16.isnull())
196         m_overupdate_ind16(screen, overbitmap.as_ind16(), clip);
197      else
198         m_overupdate_rgb32(screen, overbitmap.as_rgb32(), clip);
202199   }
203200
204201   // if this is the last update, do the rendering
r14015r14016
272269//  static_set_overlay - set the overlay parameters
273270//-------------------------------------------------
274271
275void laserdisc_device::static_set_overlay(device_t &device, UINT32 width, UINT32 height, screen_update_delegate update, const char *update_device)
272void laserdisc_device::static_set_overlay(device_t &device, UINT32 width, UINT32 height, screen_update_ind16_delegate update)
276273{
277274   laserdisc_device &ld = downcast<laserdisc_device &>(device);
278275   ld.m_overwidth = width;
279276   ld.m_overheight = height;
280277   ld.m_overclip.set(0, width - 1, 0, height - 1);
281   ld.m_overupdate = update;
282   ld.m_overupdate_device = update_device;
278   ld.m_overupdate_ind16 = update;
279   ld.m_overupdate_rgb32 = screen_update_rgb32_delegate();
283280}
284281
282void laserdisc_device::static_set_overlay(device_t &device, UINT32 width, UINT32 height, screen_update_rgb32_delegate update)
283{
284   laserdisc_device &ld = downcast<laserdisc_device &>(device);
285   ld.m_overwidth = width;
286   ld.m_overheight = height;
287   ld.m_overclip.set(0, width - 1, 0, height - 1);
288   ld.m_overupdate_ind16 = screen_update_ind16_delegate();
289   ld.m_overupdate_rgb32 = update;
290}
285291
292
286293//-------------------------------------------------
287294//  static_set_overlay - set the overlay visible
288295//   subregion
r14015r14016
846853   if (m_overenable)
847854   {
848855      // bind our handlers
849      device_t *device = (m_overupdate_device == NULL) ? machine().driver_data() : machine().device(m_overupdate_device);
850      if (device == NULL) throw emu_fatalerror("Unable to find overlay update device '%s' for laserdisc '%s'\n", m_overupdate_device, tag());
851      m_overupdate.late_bind(*device);
856      m_overupdate_ind16.bind_relative_to(*owner());
857      m_overupdate_rgb32.bind_relative_to(*owner());
852858   
853859      // configure bitmap formats
854      texture_format texformat;
855      switch (m_overupdate.format())
856      {
857         default:
858         case BITMAP_FORMAT_IND16:   texformat = TEXFORMAT_PALETTEA16;   break;
859         case BITMAP_FORMAT_RGB32:      texformat = TEXFORMAT_ARGB32;      break;
860      }
860      bitmap_format format = !m_overupdate_ind16.isnull() ? BITMAP_FORMAT_IND16 : BITMAP_FORMAT_RGB32;
861      texture_format texformat = !m_overupdate_ind16.isnull() ? TEXFORMAT_PALETTEA16 : TEXFORMAT_ARGB32;
861862
862863      // allocate overlay bitmaps
863864      for (int index = 0; index < ARRAY_LENGTH(m_overbitmap); index++)
864865      {
865         m_overbitmap[index].set_format(m_overupdate.format(), texformat);
866         m_overbitmap[index].set_format(format, texformat);
866867         m_overbitmap[index].allocate(m_overwidth, m_overheight);
867868         m_overbitmap[index].set_palette(machine().palette);
868869      }
src/emu/machine/laserdsc.h
r14015r14016
9191#define MCFG_LASERDISC_AUDIO(_func) \
9292   laserdisc_device::static_set_audio(*device, _func); \
9393
94#define MCFG_LASERDISC_OVERLAY(_width, _height, _func) \
95   laserdisc_device::static_set_overlay(*device, _width, _height, screen_update_delegate(&screen_update_##_func, "screen_update_" #_func), device->tag()); \
94#define MCFG_LASERDISC_OVERLAY_STATIC(_width, _height, _func) \
95   laserdisc_device::static_set_overlay(*device, _width, _height, screen_update_delegate_smart(&screen_update_##_func, "screen_update_" #_func, device->tag())); \
9696
9797#define MCFG_LASERDISC_OVERLAY_DRIVER(_width, _height, _class, _method) \
98   laserdisc_device::static_set_overlay(*device, _width, _height, screen_update_delegate(&_class::_method, #_class "::" #_method)); \
98   laserdisc_device::static_set_overlay(*device, _width, _height, screen_update_delegate_smart(&_class::_method, #_class "::" #_method, NULL)); \
9999
100100#define MCFG_LASERDISC_OVERLAY_DEVICE(_width, _height, _device, _class, _method) \
101   laserdisc_device::static_set_overlay(*device, _width, _height, screen_update_delegate(&_class::_method, #_class "::" #_method), _device); \
101   laserdisc_device::static_set_overlay(*device, _width, _height, screen_update_delegate_smart(&_class::_method, #_class "::" #_method, _device)); \
102102
103103#define MCFG_LASERDISC_OVERLAY_CLIP(_minx, _maxx, _miny, _maxy) \
104104   laserdisc_device::static_set_overlay_clip(*device, _minx, _maxx, _miny, _maxy); \
r14015r14016
189189   UINT32 screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
190190
191191   // configuration
192   bool overlay_configured() const { return (m_overwidth > 0 && m_overheight > 0 && !m_overupdate.isnull()); }
192   bool overlay_configured() const { return (m_overwidth > 0 && m_overheight > 0 && (!m_overupdate_ind16.isnull() || !m_overupdate_rgb32.isnull())); }
193193   void get_overlay_config(laserdisc_overlay_config &config) { config = static_cast<laserdisc_overlay_config &>(*this); }
194194   void set_overlay_config(const laserdisc_overlay_config &config) { static_cast<laserdisc_overlay_config &>(*this) = config; }
195195
r14015r14016
197197   static void static_set_screen(device_t &device, const char *screen);
198198   static void static_set_get_disc(device_t &device, laserdisc_get_disc_delegate callback);
199199   static void static_set_audio(device_t &device, laserdisc_audio_delegate callback);
200   static void static_set_overlay(device_t &device, UINT32 width, UINT32 height, screen_update_delegate update, const char *update_device = NULL);
200   static void static_set_overlay(device_t &device, UINT32 width, UINT32 height, screen_update_ind16_delegate update);
201   static void static_set_overlay(device_t &device, UINT32 width, UINT32 height, screen_update_rgb32_delegate update);
201202   static void static_set_overlay_clip(device_t &device, INT32 minx, INT32 maxx, INT32 miny, INT32 maxy);
202203   static void static_set_overlay_position(device_t &device, float posx, float posy);
203204   static void static_set_overlay_scale(device_t &device, float scalex, float scaley);
r14015r14016
325326   UINT32            m_overwidth;         // overlay screen width
326327   UINT32            m_overheight;         // overlay screen height
327328   rectangle         m_overclip;            // overlay visarea
328   screen_update_delegate m_overupdate;      // overlay update delegate
329   const char *      m_overupdate_device;   // device for the overlay update
329   screen_update_ind16_delegate m_overupdate_ind16; // overlay update delegate
330   screen_update_rgb32_delegate m_overupdate_rgb32; // overlay update delegate
330331
331332   // disc parameters
332333   chd_file *         m_disc;               // handle to the disc itself
src/emu/screen.c
r14015r14016
8282     m_yoffset(0.0f),
8383     m_xscale(1.0f),
8484     m_yscale(1.0f),
85     m_screen_update_device(NULL),
86     m_screen_eof(NULL),
8785     m_container(NULL),
8886     m_width(100),
8987     m_height(100),
r14015r14016
125123
126124void screen_device::static_set_type(device_t &device, screen_type_enum type)
127125{
128   screen_device &screen = downcast<screen_device &>(device);
129   screen.m_type = type;
126   downcast<screen_device &>(device).m_type = type;
130127}
131128
132129
r14015r14016
156153
157154void screen_device::static_set_refresh(device_t &device, attoseconds_t rate)
158155{
159   screen_device &screen = downcast<screen_device &>(device);
160   screen.m_refresh = rate;
156   downcast<screen_device &>(device).m_refresh = rate;
161157}
162158
163159
r14015r14016
194190
195191void screen_device::static_set_visarea(device_t &device, INT16 minx, INT16 maxx, INT16 miny, INT16 maxy)
196192{
197   screen_device &screen = downcast<screen_device &>(device);
198   screen.m_visarea.min_x = minx;
199   screen.m_visarea.max_x = maxx;
200   screen.m_visarea.min_y = miny;
201   screen.m_visarea.max_y = maxy;
193   downcast<screen_device &>(device).m_visarea.set(minx, maxx, miny, maxy);
202194}
203195
204196
r14015r14016
224216//  configuration
225217//-------------------------------------------------
226218
227void screen_device::static_set_screen_update(device_t &device, screen_update_delegate callback, const char *devicename)
219void screen_device::static_set_screen_update(device_t &device, screen_update_ind16_delegate callback)
228220{
229221   screen_device &screen = downcast<screen_device &>(device);
230   screen.m_screen_update = callback;
231   screen.m_screen_update_device = devicename;
222   screen.m_screen_update_ind16 = callback;
223   screen.m_screen_update_rgb32 = screen_update_rgb32_delegate();
232224}
233225
226void screen_device::static_set_screen_update(device_t &device, screen_update_rgb32_delegate callback)
227{
228   screen_device &screen = downcast<screen_device &>(device);
229   screen.m_screen_update_ind16 = screen_update_ind16_delegate();
230   screen.m_screen_update_rgb32 = callback;
231}
234232
233
235234//-------------------------------------------------
236235//  static_set_screen_eof - set the legacy
237236//  screen eof callback in the device
238237//  configuration
239238//-------------------------------------------------
240239
241void screen_device::static_set_screen_eof(device_t &device, screen_eof_func callback)
240void screen_device::static_set_screen_eof(device_t &device, screen_eof_delegate callback)
242241{
243242   downcast<screen_device &>(device).m_screen_eof = callback;
244243}
r14015r14016
273272      }
274273
275274      // sanity check screen formats
276      if (m_screen_update.format() != BITMAP_FORMAT_IND16 &&
277         m_screen_update.format() != BITMAP_FORMAT_RGB32)
275      if (m_screen_update_ind16.isnull() && m_screen_update_rgb32.isnull())
278276      {
279         mame_printf_error("%s: %s screen '%s' has unsupported format\n", driver.source_file, driver.name, tag());
277         mame_printf_error("%s: %s screen '%s' has no SCREEN_UPDATE function\n", driver.source_file, driver.name, tag());
280278         error = true;
281279      }
282280   }
r14015r14016
299297void screen_device::device_start()
300298{
301299   // bind our handlers
302   if (!m_screen_update.isnull())
303   {
304      device_t *device = (m_screen_update_device == NULL) ? machine().driver_data() : machine().device(m_screen_update_device);
305      if ((device == NULL) && (m_screen_update_device!=NULL)) device = siblingdevice(m_screen_update_device);
306      if (device == NULL) throw emu_fatalerror("Unable to find screen update device '%s' for screen '%s'\n", m_screen_update_device, tag());
307      m_screen_update.late_bind(*device);
308   }
300   m_screen_update_ind16.bind_relative_to(*owner());
301   m_screen_update_rgb32.bind_relative_to(*owner());
302   m_screen_eof.bind_relative_to(*owner());
309303   
310304   // configure bitmap formats
311   texture_format texformat;
312   switch (m_screen_update.format())
313   {
314      default:
315      case BITMAP_FORMAT_IND16:   texformat = TEXFORMAT_PALETTE16;   break;
316      case BITMAP_FORMAT_RGB32:      texformat = TEXFORMAT_RGB32;      break;
317   }
305   texture_format texformat = !m_screen_update_ind16.isnull() ? TEXFORMAT_PALETTE16 : TEXFORMAT_RGB32;
318306   for (int index = 0; index < ARRAY_LENGTH(m_bitmap); index++)
319      m_bitmap[index].set_format(m_screen_update.format(), texformat);
307      m_bitmap[index].set_format(format(), texformat);
320308
321309   // configure the default cliparea
322310   render_container::user_settings settings;
r14015r14016
612600      switch (curbitmap.format())
613601      {
614602         default:
615         case BITMAP_FORMAT_IND16:   flags = m_screen_update(*this, curbitmap.as_ind16(), clip);   break;
616         case BITMAP_FORMAT_RGB32:      flags = m_screen_update(*this, curbitmap.as_rgb32(), clip);      break;
603         case BITMAP_FORMAT_IND16:   flags = m_screen_update_ind16(*this, curbitmap.as_ind16(), clip);   break;
604         case BITMAP_FORMAT_RGB32:   flags = m_screen_update_rgb32(*this, curbitmap.as_rgb32(), clip);   break;
617605      }
618606
619607      m_partial_updates_this_frame++;
r14015r14016
10611049
10621050void screen_device::screen_eof()
10631051{
1064   if (m_screen_eof != NULL)
1065      return (*m_screen_eof)(*this);
1052   if (!m_screen_eof.isnull())
1053      m_screen_eof(*this);
10661054}
src/emu/screen.h
r14015r14016
153153   // internal state
154154   bitmap_format      m_format;
155155   texture_format      m_texformat;
156   bitmap_ind16   m_ind16;
156   bitmap_ind16      m_ind16;
157157   bitmap_rgb32      m_rgb32;
158158};
159159
160160
161// ======================> screen_update_delegate
161// ======================> other delegate types
162162
163// composite "smart" delegate with late binding
164class screen_update_delegate
165{
166public:
167   // construction
168   screen_update_delegate() { }
169
170   screen_update_delegate(UINT32 (*callback)(screen_device *, screen_device &, bitmap_ind16 &, const rectangle &), const char *name)
171      : m_ind16(callback, name, (screen_device *)0) { }
172
173   screen_update_delegate(UINT32 (*callback)(screen_device *, screen_device &, bitmap_rgb32 &, const rectangle &), const char *name)
174      : m_rgb32(callback, name, (screen_device *)0) { }
175   
176   template<class _FunctionClass>
177   screen_update_delegate(UINT32 (_FunctionClass::*callback)(screen_device &, bitmap_ind16 &, const rectangle &), const char *name)
178      : m_ind16(callback, name, (_FunctionClass *)0) { }
179
180   template<class _FunctionClass>
181   screen_update_delegate(UINT32 (_FunctionClass::*callback)(screen_device &, bitmap_rgb32 &, const rectangle &), const char *name)
182      : m_rgb32(callback, name, (_FunctionClass *)0) { }
183
184   // queries
185   bool isnull() const { return m_ind16.isnull() && m_rgb32.isnull(); }
186   bitmap_format format() const { return (!m_ind16.isnull()) ? BITMAP_FORMAT_IND16 : (!m_rgb32.isnull()) ? BITMAP_FORMAT_RGB32 : BITMAP_FORMAT_INVALID; }
187   
188   // binding
189   void late_bind(delegate_late_bind &object)
190   {
191      if (!m_ind16.isnull()) m_ind16.late_bind(object);
192      if (!m_rgb32.isnull()) m_rgb32.late_bind(object);
193   }
194
195   // calling
196   UINT32 operator()(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &rectangle) const
197   {
198      return m_ind16.isnull() ? UPDATE_HAS_NOT_CHANGED : m_ind16(screen, bitmap, rectangle);
199   }
200   
201   UINT32 operator()(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &rectangle) const
202   {
203      return m_rgb32.isnull() ? UPDATE_HAS_NOT_CHANGED : m_rgb32(screen, bitmap, rectangle);
204   }
205
206private:
207   delegate<UINT32 (screen_device &, bitmap_ind16 &, const rectangle &)> m_ind16;
208   delegate<UINT32 (screen_device &, bitmap_rgb32 &, const rectangle &)> m_rgb32;
209};
210
211
212// callback that is called to notify of a change in the VBLANK state
213163typedef delegate<void (screen_device &, bool)> vblank_state_delegate;
164typedef device_delegate<void (screen_device &)> screen_eof_delegate;
165typedef device_delegate<UINT32 (screen_device &, bitmap_ind16 &, const rectangle &)> screen_update_ind16_delegate;
166typedef device_delegate<UINT32 (screen_device &, bitmap_rgb32 &, const rectangle &)> screen_update_rgb32_delegate;
214167
215typedef delegate<void (screen_device &)> screen_eof_delegate;
216168
217typedef void (*screen_eof_func)(screen_device &screen);
218
219
220169// ======================> screen_device
221170
222171class screen_device : public device_t
r14015r14016
236185   bool oldstyle_vblank_supplied() const { return m_oldstyle_vblank_supplied; }
237186   attoseconds_t refresh_attoseconds() const { return m_refresh; }
238187   attoseconds_t vblank_attoseconds() const { return m_vblank; }
239   bitmap_format format() const { return m_screen_update.format(); }
188   bitmap_format format() const { return !m_screen_update_ind16.isnull() ? BITMAP_FORMAT_IND16 : BITMAP_FORMAT_RGB32; }
240189   float xoffset() const { return m_xoffset; }
241190   float yoffset() const { return m_yoffset; }
242191   float xscale() const { return m_xscale; }
243192   float yscale() const { return m_yscale; }
244   bool have_screen_update() const { return !m_screen_update.isnull(); }
193   bool have_screen_update() const { return !m_screen_update_ind16.isnull() && !m_screen_update_rgb32.isnull(); }
245194
246195   // inline configuration helpers
247196   static void static_set_type(device_t &device, screen_type_enum type);
r14015r14016
251200   static void static_set_size(device_t &device, UINT16 width, UINT16 height);
252201   static void static_set_visarea(device_t &device, INT16 minx, INT16 maxx, INT16 miny, INT16 maxy);
253202   static void static_set_default_position(device_t &device, double xscale, double xoffs, double yscale, double yoffs);
254   static void static_set_screen_update(device_t &device, screen_update_delegate callback, const char *devicename = NULL);
255   static void static_set_screen_eof(device_t &device, screen_eof_func callback);
203   static void static_set_screen_update(device_t &device, screen_update_ind16_delegate callback);
204   static void static_set_screen_update(device_t &device, screen_update_rgb32_delegate callback);
205   static void static_set_screen_eof(device_t &device, screen_eof_delegate callback);
256206
257207   // information getters
258208   screen_device *next_screen() const { return downcast<screen_device *>(typenext()); }
r14015r14016
330280   attoseconds_t      m_vblank;               // duration of a VBLANK
331281   float            m_xoffset, m_yoffset;      // default X/Y offsets
332282   float            m_xscale, m_yscale;         // default X/Y scale factor
333   screen_update_delegate m_screen_update;         // screen update callback (16-bit palette)
334   const char *      m_screen_update_device;      // device for resolving the screen update
335   screen_eof_func      m_screen_eof;            // screen eof callback
283   screen_update_ind16_delegate m_screen_update_ind16; // screen update callback (16-bit palette)
284   screen_update_rgb32_delegate m_screen_update_rgb32; // screen update callback (32-bit RGB)
285   screen_eof_delegate   m_screen_eof;            // screen eof callback
336286
337287   // internal state
338288   render_container *   m_container;            // pointer to our container
r14015r14016
391341//**************************************************************************
392342
393343#define SCREEN_UPDATE_NAME(name)      screen_update_##name
394#define SCREEN_UPDATE_IND16(name)   UINT32 SCREEN_UPDATE_NAME(name)(screen_device *__dummy, screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
344#define SCREEN_UPDATE_IND16(name)      UINT32 SCREEN_UPDATE_NAME(name)(screen_device *__dummy, screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
395345#define SCREEN_UPDATE_RGB32(name)      UINT32 SCREEN_UPDATE_NAME(name)(screen_device *__dummy, screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
396346#define SCREEN_UPDATE16_CALL(name)      SCREEN_UPDATE_NAME(name)(__dummy, screen, bitmap, cliprect)
397347#define SCREEN_UPDATE32_CALL(name)      SCREEN_UPDATE_NAME(name)(__dummy, screen, bitmap, cliprect)
398348
399349#define SCREEN_EOF_NAME(name)         screen_eof_##name
400#define SCREEN_EOF(name)            void SCREEN_EOF_NAME(name)(screen_device &screen)
401#define SCREEN_EOF_CALL(name)         SCREEN_EOF_NAME(name)(screen)
350#define SCREEN_EOF(name)            void SCREEN_EOF_NAME(name)(screen_device *__dummy, screen_device &screen)
351#define SCREEN_EOF_CALL(name)         SCREEN_EOF_NAME(name)(__dummy, screen)
402352
403353#define screen_eof_0               NULL
404354
r14015r14016
431381   screen_device::static_set_default_position(*device, _xscale, _xoffs, _yscale, _yoffs); \
432382
433383#define MCFG_SCREEN_UPDATE_STATIC(_func) \
434   screen_device::static_set_screen_update(*device, screen_update_delegate(&screen_update_##_func, "screen_update_" #_func), device->tag()); \
384   screen_device::static_set_screen_update(*device, screen_update_delegate_smart(&screen_update_##_func, "screen_update_" #_func, device->tag())); \
435385
436386#define MCFG_SCREEN_UPDATE_DRIVER(_class, _method) \
437   screen_device::static_set_screen_update(*device, screen_update_delegate(&_class::_method, #_class "::" #_method)); \
387   screen_device::static_set_screen_update(*device, screen_update_delegate_smart(&_class::_method, #_class "::" #_method, NULL)); \
438388
439389#define MCFG_SCREEN_UPDATE_DEVICE(_device, _class, _method) \
440   screen_device::static_set_screen_update(*device, screen_update_delegate(&_class::_method, #_class "::" #_method), _device); \
390   screen_device::static_set_screen_update(*device, screen_update_delegate_smart(&_class::_method, #_class "::" #_method, _device)); \
441391
442#define MCFG_SCREEN_EOF(_func) \
443   screen_device::static_set_screen_eof(*device, SCREEN_EOF_NAME(_func)); \
392#define MCFG_SCREEN_EOF_NONE() \
393   screen_device::static_set_screen_eof(*device, screen_eof_delegate()); \
444394
395#define MCFG_SCREEN_EOF_STATIC(_func) \
396   screen_device::static_set_screen_eof(*device, screen_eof_delegate(&screen_eof_##_func, "screen_eof_" #_func, (screen_device *)0, device->tag())); \
445397
398#define MCFG_SCREEN_EOF_DRIVER(_class, _method) \
399   screen_device::static_set_screen_eof(*device, screen_eof_delegate(&_class::_method, #_class "::" #_method, NULL)); \
400
401#define MCFG_SCREEN_EOF_DEVICE(_device, _class, _method) \
402   screen_device::static_set_screen_eof(*device, screen_eof_delegate(&_class::_method, #_class "::" #_method, _device)); \
403
404
405
406//**************************************************************************
407//  INLINE HELPERS
408//**************************************************************************
409
410//-------------------------------------------------
411//  screen_update_delegate_smart - collection of
412//   inline helpers which create the appropriate
413//   screen_update_delegate based on the input
414//   function type
415//-------------------------------------------------
416
417inline screen_update_ind16_delegate screen_update_delegate_smart(UINT32 (*callback)(screen_device *, screen_device &, bitmap_ind16 &, const rectangle &), const char *name, const char *devname)
418{
419   return screen_update_ind16_delegate(callback, name, (screen_device *)0, devname);
420}
421
422inline screen_update_rgb32_delegate screen_update_delegate_smart(UINT32 (*callback)(screen_device *, screen_device &, bitmap_rgb32 &, const rectangle &), const char *name, const char *devname)
423{
424   return screen_update_rgb32_delegate(callback, name, (screen_device *)0, devname);
425}
426
427template<class _FunctionClass>
428inline screen_update_ind16_delegate screen_update_delegate_smart(UINT32 (_FunctionClass::*callback)(screen_device &, bitmap_ind16 &, const rectangle &), const char *name, const char *devname)
429{
430   return screen_update_ind16_delegate(callback, name, (_FunctionClass *)0, devname);
431}
432
433template<class _FunctionClass>
434inline screen_update_rgb32_delegate screen_update_delegate_smart(UINT32 (_FunctionClass::*callback)(screen_device &, bitmap_rgb32 &, const rectangle &), const char *name, const char *devname)
435{
436   return screen_update_rgb32_delegate(callback, name, (_FunctionClass *)0, devname);
437}
438
439
446440#endif   /* __SCREEN_H__ */
src/emu/delegate.h
r14015r14016
268268};
269269
270270
271// ======================> delegate
271// ======================> delegate_base
272272
273273// general delegate class template supporting up to 4 parameters
274274template<typename _ReturnType, typename _P1Type = _noparam, typename _P2Type = _noparam, typename _P3Type = _noparam, typename _P4Type = _noparam, typename _P5Type = _noparam>
275275class delegate_base
276276{
277277   typedef delegate_generic_class *(*late_bind_func)(delegate_late_bind &object);
278   typedef typename delegate_traits<delegate_generic_class, _ReturnType, _P1Type, _P2Type, _P3Type, _P4Type, _P5Type>::static_func_type generic_static_func;
279278
280279public:
280   // define our traits
281   template<class _FunctionClass>
282   struct traits
283   {
284      typedef typename delegate_traits<_FunctionClass, _ReturnType, _P1Type, _P2Type, _P3Type, _P4Type, _P5Type>::member_func_type member_func_type;
285      typedef typename delegate_traits<_FunctionClass, _ReturnType, _P1Type, _P2Type, _P3Type, _P4Type, _P5Type>::static_func_type static_func_type;
286      typedef typename delegate_traits<_FunctionClass, _ReturnType, _P1Type, _P2Type, _P3Type, _P4Type, _P5Type>::static_ref_func_type static_ref_func_type;
287   };
288   typedef typename traits<delegate_generic_class>::static_func_type generic_static_func;
289
281290   // generic constructor
282291   delegate_base()
283292      : m_name(NULL),
r14015r14016
306315
307316   // construct from member function with object pointer
308317   template<class _FunctionClass>
309   delegate_base(typename delegate_traits<_FunctionClass, _ReturnType, _P1Type, _P2Type, _P3Type, _P4Type, _P5Type>::member_func_type funcptr, const char *name, _FunctionClass *object)
318   delegate_base(typename traits<_FunctionClass>::member_func_type funcptr, const char *name, _FunctionClass *object)
310319      : m_name(name),
311320        m_object(NULL),
312321        m_callobject(reinterpret_cast<delegate_generic_class *>(this)),
r14015r14016
316325
317326   // construct from static function with object pointer
318327   template<class _FunctionClass>
319   delegate_base(typename delegate_traits<_FunctionClass, _ReturnType, _P1Type, _P2Type, _P3Type, _P4Type, _P5Type>::static_func_type funcptr, const char *name, _FunctionClass *object)
328   delegate_base(typename traits<_FunctionClass>::static_func_type funcptr, const char *name, _FunctionClass *object)
320329      : m_name(name),
321330        m_object(NULL),
322331        m_callobject(NULL),
r14015r14016
325334
326335   // construct from static reference function with object pointer
327336   template<class _FunctionClass>
328   delegate_base(typename delegate_traits<_FunctionClass, _ReturnType, _P1Type, _P2Type, _P3Type, _P4Type, _P5Type>::static_ref_func_type funcptr, const char *name, _FunctionClass *object)
337   delegate_base(typename traits<_FunctionClass>::static_ref_func_type funcptr, const char *name, _FunctionClass *object)
329338      : m_name(name),
330339        m_object(NULL),
331340        m_callobject(NULL),
r14015r14016
512521};
513522
514523
515// ======================> delegate
524// ======================> delegate_base
516525
517526template<typename _ReturnType, typename _P1Type = _noparam, typename _P2Type = _noparam, typename _P3Type = _noparam, typename _P4Type = _noparam, typename _P5Type = _noparam>
518527class delegate_base
519528{
520529   typedef delegate_generic_class *(*late_bind_func)(delegate_late_bind &object);
521   typedef typename delegate_traits<delegate_generic_class, _ReturnType, _P1Type, _P2Type, _P3Type, _P4Type, _P5Type>::static_func_type generic_static_func;
522530
523531public:
532   // define our traits
533   template<class _FunctionClass>
534   struct traits
535   {
536      typedef typename delegate_traits<_FunctionClass, _ReturnType, _P1Type, _P2Type, _P3Type, _P4Type, _P5Type>::member_func_type member_func_type;
537      typedef typename delegate_traits<_FunctionClass, _ReturnType, _P1Type, _P2Type, _P3Type, _P4Type, _P5Type>::static_func_type static_func_type;
538      typedef typename delegate_traits<_FunctionClass, _ReturnType, _P1Type, _P2Type, _P3Type, _P4Type, _P5Type>::static_ref_func_type static_ref_func_type;
539   };
540   typedef typename traits<delegate_generic_class>::static_func_type generic_static_func;
541
524542   // generic constructor
525543   delegate_base()
526544      : m_name(NULL),
r14015r14016
546564
547565   // construct from member function with object pointer
548566   template<class _FunctionClass>
549   delegate_base(typename delegate_traits<_FunctionClass, _ReturnType, _P1Type, _P2Type, _P3Type, _P4Type, _P5Type>::member_func_type funcptr, const char *name, _FunctionClass *object)
567   delegate_base(typename traits<_FunctionClass>::member_func_type funcptr, const char *name, _FunctionClass *object)
550568      : m_name(name),
551569        m_object(NULL),
552570        m_function(NULL),
r14015r14016
555573
556574   // construct from static function with object pointer
557575   template<class _FunctionClass>
558   delegate_base(typename delegate_traits<_FunctionClass, _ReturnType, _P1Type, _P2Type, _P3Type, _P4Type, _P5Type>::static_func_type funcptr, const char *name, _FunctionClass *object)
576   delegate_base(typename traits<_FunctionClass>::static_func_type funcptr, const char *name, _FunctionClass *object)
559577      : m_name(name),
560578        m_object(NULL),
561579        m_function(reinterpret_cast<generic_static_func>(funcptr)),
r14015r14016
563581
564582   // construct from static reference function with object pointer
565583   template<class _FunctionClass>
566   delegate_base(typename delegate_traits<_FunctionClass, _ReturnType, _P1Type, _P2Type, _P3Type, _P4Type, _P5Type>::static_ref_func_type funcptr, const char *name, _FunctionClass *object)
584   delegate_base(typename traits<_FunctionClass>::static_ref_func_type funcptr, const char *name, _FunctionClass *object)
567585      : m_name(name),
568586        m_object(NULL),
569587        m_function(reinterpret_cast<generic_static_func>(funcptr)),
r14015r14016
646664class delegate<_ReturnType ()> : public delegate_base<_ReturnType>
647665{
648666   typedef delegate_base<_ReturnType> basetype;
667
649668public:
669   // create a standard set of constructors
650670   delegate() : basetype() { }
651671   delegate(const basetype &src) : basetype(src) { }
652672   delegate(const basetype &src, delegate_late_bind &object) : basetype(src, object) { }
653   template<class _FunctionClass> delegate(typename delegate_traits<_FunctionClass, _ReturnType, _noparam, _noparam, _noparam, _noparam, _noparam>::member_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
654   template<class _FunctionClass> delegate(typename delegate_traits<_FunctionClass, _ReturnType, _noparam, _noparam, _noparam, _noparam, _noparam>::static_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
655   template<class _FunctionClass> delegate(typename delegate_traits<_FunctionClass, _ReturnType, _noparam, _noparam, _noparam, _noparam, _noparam>::static_ref_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
673   template<class _FunctionClass> delegate(typename basetype::template traits<_FunctionClass>::member_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
674   template<class _FunctionClass> delegate(typename basetype::template traits<_FunctionClass>::static_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
675   template<class _FunctionClass> delegate(typename basetype::template traits<_FunctionClass>::static_ref_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
656676   delegate &operator=(const basetype &src) { *static_cast<basetype *>(this) = src; return *this; }
657677};
658678
r14015r14016
661681class delegate<_ReturnType (_P1Type)> : public delegate_base<_ReturnType, _P1Type>
662682{
663683   typedef delegate_base<_ReturnType, _P1Type> basetype;
684
664685public:
686   // create a standard set of constructors
665687   delegate() : basetype() { }
666688   delegate(const basetype &src) : basetype(src) { }
667689   delegate(const basetype &src, delegate_late_bind &object) : basetype(src, object) { }
668   template<class _FunctionClass> delegate(typename delegate_traits<_FunctionClass, _ReturnType, _P1Type, _noparam, _noparam, _noparam, _noparam>::member_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
669   template<class _FunctionClass> delegate(typename delegate_traits<_FunctionClass, _ReturnType, _P1Type, _noparam, _noparam, _noparam, _noparam>::static_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
670   template<class _FunctionClass> delegate(typename delegate_traits<_FunctionClass, _ReturnType, _P1Type, _noparam, _noparam, _noparam, _noparam>::static_ref_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
690   template<class _FunctionClass> delegate(typename basetype::template traits<_FunctionClass>::member_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
691   template<class _FunctionClass> delegate(typename basetype::template traits<_FunctionClass>::static_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
692   template<class _FunctionClass> delegate(typename basetype::template traits<_FunctionClass>::static_ref_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
671693   delegate &operator=(const basetype &src) { *static_cast<basetype *>(this) = src; return *this; }
672694};
673695
r14015r14016
676698class delegate<_ReturnType (_P1Type, _P2Type)> : public delegate_base<_ReturnType, _P1Type, _P2Type>
677699{
678700   typedef delegate_base<_ReturnType, _P1Type, _P2Type> basetype;
701
679702public:
703   // create a standard set of constructors
680704   delegate() : basetype() { }
681705   delegate(const basetype &src) : basetype(src) { }
682706   delegate(const basetype &src, delegate_late_bind &object) : basetype(src, object) { }
683   template<class _FunctionClass> delegate(typename delegate_traits<_FunctionClass, _ReturnType, _P1Type, _P2Type, _noparam, _noparam, _noparam>::member_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
684   template<class _FunctionClass> delegate(typename delegate_traits<_FunctionClass, _ReturnType, _P1Type, _P2Type, _noparam, _noparam, _noparam>::static_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
685   template<class _FunctionClass> delegate(typename delegate_traits<_FunctionClass, _ReturnType, _P1Type, _P2Type, _noparam, _noparam, _noparam>::static_ref_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
707   template<class _FunctionClass> delegate(typename basetype::template traits<_FunctionClass>::member_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
708   template<class _FunctionClass> delegate(typename basetype::template traits<_FunctionClass>::static_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
709   template<class _FunctionClass> delegate(typename basetype::template traits<_FunctionClass>::static_ref_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
686710   delegate &operator=(const basetype &src) { *static_cast<basetype *>(this) = src; return *this; }
687711};
688712
r14015r14016
691715class delegate<_ReturnType (_P1Type, _P2Type, _P3Type)> : public delegate_base<_ReturnType, _P1Type, _P2Type, _P3Type>
692716{
693717   typedef delegate_base<_ReturnType, _P1Type, _P2Type, _P3Type> basetype;
718
694719public:
720   // create a standard set of constructors
695721   delegate() : basetype() { }
696722   delegate(const basetype &src) : basetype(src) { }
697723   delegate(const basetype &src, delegate_late_bind &object) : basetype(src, object) { }
698   template<class _FunctionClass> delegate(typename delegate_traits<_FunctionClass, _ReturnType, _P1Type, _P2Type, _P3Type, _noparam, _noparam>::member_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
699   template<class _FunctionClass> delegate(typename delegate_traits<_FunctionClass, _ReturnType, _P1Type, _P2Type, _P3Type, _noparam, _noparam>::static_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
700   template<class _FunctionClass> delegate(typename delegate_traits<_FunctionClass, _ReturnType, _P1Type, _P2Type, _P3Type, _noparam, _noparam>::static_ref_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
724   template<class _FunctionClass> delegate(typename basetype::template traits<_FunctionClass>::member_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
725   template<class _FunctionClass> delegate(typename basetype::template traits<_FunctionClass>::static_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
726   template<class _FunctionClass> delegate(typename basetype::template traits<_FunctionClass>::static_ref_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
701727   delegate &operator=(const basetype &src) { *static_cast<basetype *>(this) = src; return *this; }
702728};
703729
r14015r14016
706732class delegate<_ReturnType (_P1Type, _P2Type, _P3Type, _P4Type)> : public delegate_base<_ReturnType, _P1Type, _P2Type, _P3Type, _P4Type>
707733{
708734   typedef delegate_base<_ReturnType, _P1Type, _P2Type, _P3Type, _P4Type> basetype;
735
709736public:
737   // create a standard set of constructors
710738   delegate() : basetype() { }
711739   delegate(const basetype &src) : basetype(src) { }
712740   delegate(const basetype &src, delegate_late_bind &object) : basetype(src, object) { }
713   template<class _FunctionClass> delegate(typename delegate_traits<_FunctionClass, _ReturnType, _P1Type, _P2Type, _P3Type, _P4Type, _noparam>::member_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
714   template<class _FunctionClass> delegate(typename delegate_traits<_FunctionClass, _ReturnType, _P1Type, _P2Type, _P3Type, _P4Type, _noparam>::static_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
715   template<class _FunctionClass> delegate(typename delegate_traits<_FunctionClass, _ReturnType, _P1Type, _P2Type, _P3Type, _P4Type, _noparam>::static_ref_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
741   template<class _FunctionClass> delegate(typename basetype::template traits<_FunctionClass>::member_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
742   template<class _FunctionClass> delegate(typename basetype::template traits<_FunctionClass>::static_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
743   template<class _FunctionClass> delegate(typename basetype::template traits<_FunctionClass>::static_ref_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
716744   delegate &operator=(const basetype &src) { *static_cast<basetype *>(this) = src; return *this; }
717745};
718746
r14015r14016
721749class delegate<_ReturnType (_P1Type, _P2Type, _P3Type, _P4Type, _P5Type)> : public delegate_base<_ReturnType, _P1Type, _P2Type, _P3Type, _P4Type, _P5Type>
722750{
723751   typedef delegate_base<_ReturnType, _P1Type, _P2Type, _P3Type, _P4Type, _P5Type> basetype;
752
724753public:
754   // create a standard set of constructors
725755   delegate() : basetype() { }
726756   delegate(const basetype &src) : basetype(src) { }
727757   delegate(const basetype &src, delegate_late_bind &object) : basetype(src, object) { }
728   template<class _FunctionClass> delegate(typename delegate_traits<_FunctionClass, _ReturnType, _P1Type, _P2Type, _P3Type, _P4Type, _P5Type>::member_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
729   template<class _FunctionClass> delegate(typename delegate_traits<_FunctionClass, _ReturnType, _P1Type, _P2Type, _P3Type, _P4Type, _P5Type>::static_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
730   template<class _FunctionClass> delegate(typename delegate_traits<_FunctionClass, _ReturnType, _P1Type, _P2Type, _P3Type, _P4Type, _P5Type>::static_ref_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
758   template<class _FunctionClass> delegate(typename basetype::template traits<_FunctionClass>::member_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
759   template<class _FunctionClass> delegate(typename basetype::template traits<_FunctionClass>::static_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
760   template<class _FunctionClass> delegate(typename basetype::template traits<_FunctionClass>::static_ref_func_type funcptr, const char *name, _FunctionClass *object) : basetype(funcptr, name, object) { }
731761   delegate &operator=(const basetype &src) { *static_cast<basetype *>(this) = src; return *this; }
732762};
733763
src/mess/drivers/pdp1.c
r14015r14016
19231923   MCFG_SCREEN_SIZE(virtual_width, virtual_height)
19241924   MCFG_SCREEN_VISIBLE_AREA(0, virtual_width-1, 0, virtual_height-1)
19251925   MCFG_SCREEN_UPDATE_STATIC(pdp1)
1926   MCFG_SCREEN_EOF(pdp1)
1926   MCFG_SCREEN_EOF_STATIC(pdp1)
19271927
19281928   MCFG_CRT_ADD( "crt", pdp1_crt_interface )
19291929   MCFG_DEVICE_ADD("readt", PDP1_READTAPE, 0)
src/mess/drivers/thomson.c
r14015r14016
631631     MCFG_SCREEN_VISIBLE_AREA ( 0, THOM_TOTAL_WIDTH * 2 - 1,
632632            0, THOM_TOTAL_HEIGHT - 1 )
633633     MCFG_SCREEN_UPDATE_STATIC ( thom )
634     MCFG_SCREEN_EOF ( thom )
634     MCFG_SCREEN_EOF_STATIC ( thom )
635635
636636     MCFG_PALETTE_LENGTH ( 4097 ) /* 12-bit color + transparency */
637637     MCFG_PALETTE_INIT ( thom )
src/mess/drivers/spectrum.c
r14015r14016
723723   MCFG_SCREEN_SIZE(SPEC_SCREEN_WIDTH, SPEC_SCREEN_HEIGHT)
724724   MCFG_SCREEN_VISIBLE_AREA(0, SPEC_SCREEN_WIDTH-1, 0, SPEC_SCREEN_HEIGHT-1)
725725   MCFG_SCREEN_UPDATE_STATIC( spectrum )
726   MCFG_SCREEN_EOF( spectrum )
726   MCFG_SCREEN_EOF_STATIC( spectrum )
727727
728728   MCFG_PALETTE_LENGTH(16)
729729   MCFG_PALETTE_INIT( spectrum )
src/mess/drivers/tx0.c
r14015r14016
15741574   MCFG_SCREEN_SIZE(virtual_width, virtual_height)
15751575   MCFG_SCREEN_VISIBLE_AREA(0, virtual_width-1, 0, virtual_height-1)
15761576   MCFG_SCREEN_UPDATE_STATIC(tx0)
1577   MCFG_SCREEN_EOF(tx0)
1577   MCFG_SCREEN_EOF_STATIC(tx0)
15781578
15791579   MCFG_CRT_ADD( "crt", tx0_crt_interface )
15801580   MCFG_DEVICE_ADD("readt", TX0_READTAPE, 0)
src/mess/drivers/ti990_10.c
r14015r14016
224224   MCFG_SCREEN_SIZE(560, 280)
225225   MCFG_SCREEN_VISIBLE_AREA(0, 560-1, 0, /*250*/280-1)
226226   MCFG_SCREEN_UPDATE_STATIC(ti990_10)
227   /*MCFG_SCREEN_EOF(name)*/
227   /*MCFG_SCREEN_EOF_STATIC(name)*/
228228
229229   MCFG_GFXDECODE(vdt911)
230230   MCFG_PALETTE_LENGTH(8)
src/mess/drivers/amstrad.c
r14015r14016
893893   MCFG_SCREEN_ADD("screen", RASTER)
894894   MCFG_SCREEN_RAW_PARAMS( XTAL_16MHz, 1024, 32, 32 + 640 + 64, 312, 56 + 15, 200 + 15 )
895895   MCFG_SCREEN_UPDATE_STATIC(amstrad)
896   MCFG_SCREEN_EOF(amstrad)
896   MCFG_SCREEN_EOF_STATIC(amstrad)
897897
898898   MCFG_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)
899899
r14015r14016
959959   MCFG_SCREEN_ADD("screen", RASTER)
960960   MCFG_SCREEN_RAW_PARAMS( ( XTAL_40MHz * 2 ) / 5, 1024, 32, 32 + 640 + 64, 312, 56 + 15, 200 + 15 )
961961   MCFG_SCREEN_UPDATE_STATIC(amstrad)
962   MCFG_SCREEN_EOF(amstrad)
962   MCFG_SCREEN_EOF_STATIC(amstrad)
963963
964964   MCFG_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)
965965
r14015r14016
10171017   MCFG_SCREEN_ADD("screen", RASTER)
10181018   MCFG_SCREEN_RAW_PARAMS( ( XTAL_40MHz * 2 ) / 5, 1024, 32, 32 + 640 + 64, 312, 56 + 15, 200 + 15 )
10191019   MCFG_SCREEN_UPDATE_STATIC(amstrad)
1020   MCFG_SCREEN_EOF(amstrad)
1020   MCFG_SCREEN_EOF_STATIC(amstrad)
10211021
10221022   MCFG_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE)
10231023
src/mess/drivers/zx.c
r14015r14016
395395   MCFG_SCREEN_UPDATE_DRIVER(zx_state, screen_update)
396396   MCFG_SCREEN_SIZE(ZX81_PIXELS_PER_SCANLINE, ZX81_PAL_SCANLINES)
397397   MCFG_SCREEN_VISIBLE_AREA(0, ZX81_PIXELS_PER_SCANLINE-1, 0, ZX81_PAL_SCANLINES-1)
398   MCFG_SCREEN_EOF(zx)
398   MCFG_SCREEN_EOF_STATIC(zx)
399399
400400   MCFG_GFXDECODE(zx80)
401401   MCFG_PALETTE_LENGTH(4)
src/mess/drivers/z88.c
r14015r14016
630630   MCFG_SCREEN_SIZE(Z88_SCREEN_WIDTH, 480)
631631   MCFG_SCREEN_VISIBLE_AREA(0, (Z88_SCREEN_WIDTH - 1), 0, (480 - 1))
632632   MCFG_SCREEN_UPDATE_STATIC( z88 )
633   MCFG_SCREEN_EOF( z88 )
633   MCFG_SCREEN_EOF_STATIC( z88 )
634634
635635   MCFG_PALETTE_LENGTH(Z88_NUM_COLOURS)
636636   MCFG_PALETTE_INIT( z88 )
src/mess/drivers/super80.c
r14015r14016
693693
694694   MCFG_SCREEN_MODIFY("screen")
695695   MCFG_SCREEN_UPDATE_STATIC(super80m)
696   MCFG_SCREEN_EOF(super80m)
696   MCFG_SCREEN_EOF_STATIC(super80m)
697697MACHINE_CONFIG_END
698698
699699static MACHINE_CONFIG_START( super80v, super80_state )
r14015r14016
710710   MCFG_SCREEN_SIZE(SUPER80V_SCREEN_WIDTH, SUPER80V_SCREEN_HEIGHT)
711711   MCFG_SCREEN_VISIBLE_AREA(0, SUPER80V_SCREEN_WIDTH-1, 0, SUPER80V_SCREEN_HEIGHT-1)
712712   MCFG_SCREEN_UPDATE_STATIC(super80v)
713   MCFG_SCREEN_EOF(super80m)
713   MCFG_SCREEN_EOF_STATIC(super80m)
714714
715715   MCFG_PALETTE_LENGTH(16)
716716   MCFG_PALETTE_INIT(super80m)
src/mess/drivers/mbc55x.c
r14015r14016
242242   MCFG_SCREEN_ADD(SCREEN_TAG, RASTER)
243243   MCFG_SCREEN_RAW_PARAMS(XTAL_14_31818MHz,896,0,300,262,0,200)
244244   MCFG_SCREEN_UPDATE_DEVICE(VID_MC6845_NAME, mc6845_device, screen_update)
245   MCFG_SCREEN_EOF(mbc55x)
245   MCFG_SCREEN_EOF_STATIC(mbc55x)
246246
247247   MCFG_PALETTE_LENGTH(SCREEN_NO_COLOURS * 3)
248248   MCFG_PALETTE_INIT( mbc55x )
src/mess/drivers/elwro800.c
r14015r14016
587587   MCFG_SCREEN_SIZE(SPEC_SCREEN_WIDTH, SPEC_SCREEN_HEIGHT)
588588   MCFG_SCREEN_VISIBLE_AREA(0, SPEC_SCREEN_WIDTH-1, 0, SPEC_SCREEN_HEIGHT-1)
589589   MCFG_SCREEN_UPDATE_STATIC( spectrum )
590   MCFG_SCREEN_EOF( spectrum )
590   MCFG_SCREEN_EOF_STATIC( spectrum )
591591
592592   MCFG_PALETTE_LENGTH(16)
593593   MCFG_PALETTE_INIT( spectrum )
src/mess/drivers/rmnimbus.c
r14015r14016
317317    MCFG_SCREEN_REFRESH_RATE(50)
318318    MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(100))
319319    MCFG_SCREEN_UPDATE_STATIC(nimbus)
320    MCFG_SCREEN_EOF(nimbus)
320    MCFG_SCREEN_EOF_STATIC(nimbus)
321321
322322    MCFG_VIDEO_ATTRIBUTES(VIDEO_UPDATE_SCANLINE)
323323

Previous 15994 Revisions Next


© 1998-2018 The MESS Team