summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers
diff options
context:
space:
mode:
author Aaron Giles <aaron@aarongiles.com>2010-09-02 09:13:01 +0000
committer Aaron Giles <aaron@aarongiles.com>2010-09-02 09:13:01 +0000
commit420e1e0ad52e1e0341d9ca2d1745e413a47fe6c0 (patch)
treea5a8c7eb86a2a9cc70028e60bb8a3345ec0f3c6c /src/mame/drivers
parenta7313263b31b101fcc422c3ed2880d0b6b5e99b1 (diff)
Added include files for all remaining drivers with multiple source files.
[Atari Ace] ---------- Forwarded message ---------- From: Atari Ace <atari_ace@frontier.com> Date: Sun, Aug 29, 2010 at 10:35 PM Subject: [patch] Add missing include files for multi-file drivers To: submit@mamedev.org Cc: atariace@hotmail.com Hi mamdev, Converting a driver to use driver_data requires that multi-file drivers have a common include file to host the driver_data class. Thus this patch, which gets ahead of the curve and adds missing include files to all multi-file drivers (minus ones covered by my last driver_data patch). The first patch is include-related cleanup of the existing drivers. The second patch then adds ~100 files to mame/includes. ~aa
Diffstat (limited to 'src/mame/drivers')
-rw-r--r--src/mame/drivers/4roses.c12
-rw-r--r--src/mame/drivers/ampoker2.c9
-rw-r--r--src/mame/drivers/aristmk5.c1
-rw-r--r--src/mame/drivers/baraduke.c17
-rw-r--r--src/mame/drivers/battlera.c14
-rw-r--r--src/mame/drivers/bloodbro.c15
-rw-r--r--src/mame/drivers/calomega.c11
-rw-r--r--src/mame/drivers/clshroad.c24
-rw-r--r--src/mame/drivers/darkmist.c8
-rw-r--r--src/mame/drivers/darkseal.c14
-rw-r--r--src/mame/drivers/dcon.c15
-rw-r--r--src/mame/drivers/deadang.c10
-rw-r--r--src/mame/drivers/deco_mlc.c6
-rw-r--r--src/mame/drivers/djmain.c9
-rw-r--r--src/mame/drivers/dynduke.c13
-rw-r--r--src/mame/drivers/eolith.c8
-rw-r--r--src/mame/drivers/exzisus.c20
-rw-r--r--src/mame/drivers/funworld.c13
-rw-r--r--src/mame/drivers/galastrm.c6
-rw-r--r--src/mame/drivers/galpanic.c12
-rw-r--r--src/mame/drivers/gatron.c8
-rw-r--r--src/mame/drivers/gladiatr.c17
-rw-r--r--src/mame/drivers/goodejan.c3
-rw-r--r--src/mame/drivers/groundfx.c5
-rw-r--r--src/mame/drivers/gsword.c18
-rw-r--r--src/mame/drivers/gunbustr.c5
-rw-r--r--src/mame/drivers/harddriv.c7
-rw-r--r--src/mame/drivers/hexion.c11
-rw-r--r--src/mame/drivers/hyhoo.c10
-rw-r--r--src/mame/drivers/lucky74.c11
-rw-r--r--src/mame/drivers/lvcards.c11
-rw-r--r--src/mame/drivers/m90.c12
-rw-r--r--src/mame/drivers/magmax.c9
-rw-r--r--src/mame/drivers/mustache.c9
-rw-r--r--src/mame/drivers/mystwarr.c20
-rw-r--r--src/mame/drivers/namcofl.c6
-rw-r--r--src/mame/drivers/namcos86.c21
-rw-r--r--src/mame/drivers/nbmj8900.c14
-rw-r--r--src/mame/drivers/opwolf.c1
-rw-r--r--src/mame/drivers/pacland.c15
-rw-r--r--src/mame/drivers/pastelg.c13
-rw-r--r--src/mame/drivers/pcktgal.c8
-rw-r--r--src/mame/drivers/pingpong.c11
-rw-r--r--src/mame/drivers/pirates.c12
-rw-r--r--src/mame/drivers/pokechmp.c8
-rw-r--r--src/mame/drivers/popeye.c20
-rw-r--r--src/mame/drivers/portrait.c13
-rw-r--r--src/mame/drivers/powerins.c20
-rw-r--r--src/mame/drivers/psychic5.c23
-rw-r--r--src/mame/drivers/punchout.c26
-rw-r--r--src/mame/drivers/qdrmfgp.c9
-rw-r--r--src/mame/drivers/quizdna.c13
-rw-r--r--src/mame/drivers/quizpani.c11
-rw-r--r--src/mame/drivers/raiden.c11
-rw-r--r--src/mame/drivers/rainbow.c1
-rw-r--r--src/mame/drivers/renegade.c11
-rw-r--r--src/mame/drivers/rollrace.c16
-rw-r--r--src/mame/drivers/route16.c11
-rw-r--r--src/mame/drivers/rpunch.c17
-rw-r--r--src/mame/drivers/runaway.c13
-rw-r--r--src/mame/drivers/segag80r.c2
-rw-r--r--src/mame/drivers/sengokmj.c3
-rw-r--r--src/mame/drivers/shangkid.c12
-rw-r--r--src/mame/drivers/skykid.c16
-rw-r--r--src/mame/drivers/snookr10.c14
-rw-r--r--src/mame/drivers/spdodgeb.c12
-rw-r--r--src/mame/drivers/speedbal.c10
-rw-r--r--src/mame/drivers/speedspn.c12
-rw-r--r--src/mame/drivers/speglsht.c1
-rw-r--r--src/mame/drivers/sprint4.c10
-rw-r--r--src/mame/drivers/srmp5.c2
-rw-r--r--src/mame/drivers/srumbler.c13
-rw-r--r--src/mame/drivers/sshangha.c13
-rw-r--r--src/mame/drivers/st0016.c2
-rw-r--r--src/mame/drivers/stadhero.c13
-rw-r--r--src/mame/drivers/strnskil.c12
-rw-r--r--src/mame/drivers/superchs.c5
-rw-r--r--src/mame/drivers/superqix.c19
-rw-r--r--src/mame/drivers/suprloco.c13
-rw-r--r--src/mame/drivers/tagteam.c17
-rw-r--r--src/mame/drivers/taitojc.c2
-rw-r--r--src/mame/drivers/tankbatt.c10
-rw-r--r--src/mame/drivers/tankbust.c19
-rw-r--r--src/mame/drivers/targeth.c11
-rw-r--r--src/mame/drivers/tbowl.c17
-rw-r--r--src/mame/drivers/tceptor.c17
-rw-r--r--src/mame/drivers/tecmo.c15
-rw-r--r--src/mame/drivers/tecmo16.c27
-rw-r--r--src/mame/drivers/tehkanwc.c19
-rw-r--r--src/mame/drivers/terracre.c12
-rw-r--r--src/mame/drivers/thepit.c20
-rw-r--r--src/mame/drivers/thief.c17
-rw-r--r--src/mame/drivers/thoop2.c11
-rw-r--r--src/mame/drivers/tigeroad.c9
-rw-r--r--src/mame/drivers/timelimt.c15
-rw-r--r--src/mame/drivers/toki.c16
-rw-r--r--src/mame/drivers/tp84.c19
-rw-r--r--src/mame/drivers/truco.c5
-rw-r--r--src/mame/drivers/trucocl.c12
-rw-r--r--src/mame/drivers/tryout.c13
-rw-r--r--src/mame/drivers/tsamurai.c22
-rw-r--r--src/mame/drivers/undrfire.c6
-rw-r--r--src/mame/drivers/usgames.c11
-rw-r--r--src/mame/drivers/vigilant.c12
-rw-r--r--src/mame/drivers/vulgus.c15
-rw-r--r--src/mame/drivers/wc90b.c18
-rw-r--r--src/mame/drivers/wecleman.c21
-rw-r--r--src/mame/drivers/wiz.c18
-rw-r--r--src/mame/drivers/wolfpack.c24
-rw-r--r--src/mame/drivers/xain.c14
-rw-r--r--src/mame/drivers/xorworld.c8
-rw-r--r--src/mame/drivers/xxmissio.c18
-rw-r--r--src/mame/drivers/zac2650.c9
-rw-r--r--src/mame/drivers/zaccaria.c12
114 files changed, 108 insertions, 1304 deletions
diff --git a/src/mame/drivers/4roses.c b/src/mame/drivers/4roses.c
index 2cf9c4b715c..a0628318c55 100644
--- a/src/mame/drivers/4roses.c
+++ b/src/mame/drivers/4roses.c
@@ -176,17 +176,7 @@
#include "cpu/m6502/m6502.h"
#include "video/mc6845.h"
#include "sound/ay8910.h"
-
-/* from video */
-extern UINT8 *funworld_videoram;
-extern UINT8 *funworld_colorram;
-
-WRITE8_HANDLER( funworld_videoram_w );
-WRITE8_HANDLER( funworld_colorram_w );
-PALETTE_INIT( funworld );
-VIDEO_START( funworld );
-VIDEO_UPDATE( funworld );
-
+#include "includes/funworld.h"
/**********************
* Read/Write Handlers *
diff --git a/src/mame/drivers/ampoker2.c b/src/mame/drivers/ampoker2.c
index 1db26cb00d3..d664bfbc14c 100644
--- a/src/mame/drivers/ampoker2.c
+++ b/src/mame/drivers/ampoker2.c
@@ -369,14 +369,7 @@
#include "sound/ay8910.h"
#include "ampoker2.lh"
#include "sigmapkr.lh"
-
-/* from video */
-extern WRITE8_HANDLER( ampoker2_videoram_w );
-extern PALETTE_INIT( ampoker2 );
-extern VIDEO_START( ampoker2 );
-extern VIDEO_START( sigma2k );
-extern VIDEO_UPDATE( ampoker2 );
-
+#include "includes/ampoker2.h"
/**********************
* Read/Write Handlers *
diff --git a/src/mame/drivers/aristmk5.c b/src/mame/drivers/aristmk5.c
index 927bac6c45e..f63c72afd22 100644
--- a/src/mame/drivers/aristmk5.c
+++ b/src/mame/drivers/aristmk5.c
@@ -63,7 +63,6 @@
#include "includes/archimds.h"
#include "machine/i2cmem.h"
-extern void archimedes_request_irq_a(running_machine *machine, int mask);
static emu_timer *mk5_2KHz_timer;
static UINT8 ext_latch;
diff --git a/src/mame/drivers/baraduke.c b/src/mame/drivers/baraduke.c
index 2b86fc811b7..870bc084832 100644
--- a/src/mame/drivers/baraduke.c
+++ b/src/mame/drivers/baraduke.c
@@ -108,22 +108,7 @@ DIP locations verified for:
#include "cpu/m6809/m6809.h"
#include "cpu/m6800/m6800.h"
#include "sound/namco.h"
-
-extern UINT8 *baraduke_textram, *baraduke_videoram, *baraduke_spriteram;
-
-/* from video/baraduke.c */
-VIDEO_START( baraduke );
-VIDEO_UPDATE( baraduke );
-VIDEO_EOF( baraduke );
-READ8_HANDLER( baraduke_videoram_r );
-WRITE8_HANDLER( baraduke_videoram_w );
-READ8_HANDLER( baraduke_textram_r );
-WRITE8_HANDLER( baraduke_textram_w );
-WRITE8_HANDLER( baraduke_scroll0_w );
-WRITE8_HANDLER( baraduke_scroll1_w );
-READ8_HANDLER( baraduke_spriteram_r );
-WRITE8_HANDLER( baraduke_spriteram_w );
-PALETTE_INIT( baraduke );
+#include "includes/baraduke.h"
static int inputport_selected;
diff --git a/src/mame/drivers/battlera.c b/src/mame/drivers/battlera.c
index f6422b1f52a..9fe0983e9da 100644
--- a/src/mame/drivers/battlera.c
+++ b/src/mame/drivers/battlera.c
@@ -26,19 +26,7 @@
#include "sound/2203intf.h"
#include "sound/msm5205.h"
#include "sound/c6280.h"
-
-VIDEO_UPDATE( battlera );
-VIDEO_START( battlera );
-INTERRUPT_GEN( battlera_interrupt );
-
-READ8_HANDLER( HuC6270_register_r );
-WRITE8_HANDLER( HuC6270_register_w );
-//READ8_HANDLER( HuC6270_data_r );
-WRITE8_HANDLER( HuC6270_data_w );
-WRITE8_HANDLER( battlera_palette_w );
-
-READ8_HANDLER( HuC6270_debug_r );
-WRITE8_HANDLER( HuC6270_debug_w );
+#include "includes/battlera.h"
static int control_port_select;
diff --git a/src/mame/drivers/bloodbro.c b/src/mame/drivers/bloodbro.c
index 1a6333ec9d7..d0f606d062d 100644
--- a/src/mame/drivers/bloodbro.c
+++ b/src/mame/drivers/bloodbro.c
@@ -110,20 +110,7 @@ DIP locations verified for:
#include "audio/seibu.h"
#include "cpu/z80/z80.h"
#include "sound/3812intf.h"
-
-
-extern UINT16 *bloodbro_bgvideoram, *bloodbro_fgvideoram;
-extern UINT16 *bloodbro_txvideoram;
-extern UINT16 *bloodbro_scroll;
-
-WRITE16_HANDLER( bloodbro_bgvideoram_w );
-WRITE16_HANDLER( bloodbro_fgvideoram_w );
-WRITE16_HANDLER( bloodbro_txvideoram_w );
-
-extern VIDEO_UPDATE( bloodbro );
-extern VIDEO_UPDATE( weststry );
-extern VIDEO_UPDATE( skysmash );
-extern VIDEO_START( bloodbro );
+#include "includes/bloodbro.h"
/* Memory Maps */
diff --git a/src/mame/drivers/calomega.c b/src/mame/drivers/calomega.c
index 7163249c211..7b7e5af2bbf 100644
--- a/src/mame/drivers/calomega.c
+++ b/src/mame/drivers/calomega.c
@@ -649,6 +649,7 @@
#include "machine/6821pia.h"
#include "machine/6850acia.h"
#include "sound/ay8910.h"
+#include "includes/calomega.h"
/* UART */
@@ -656,16 +657,6 @@ static UINT8 tx_line;
static UINT8 rx_line;
-/* from video */
-extern UINT8 *calomega_videoram;
-extern UINT8 *calomega_colorram;
-WRITE8_HANDLER( calomega_videoram_w );
-WRITE8_HANDLER( calomega_colorram_w );
-PALETTE_INIT( calomega );
-VIDEO_START( calomega );
-VIDEO_UPDATE( calomega );
-
-
/**************************************************
* Read/Write Handlers *
**************************************************/
diff --git a/src/mame/drivers/clshroad.c b/src/mame/drivers/clshroad.c
index 906df18ebda..175e5ffefc8 100644
--- a/src/mame/drivers/clshroad.c
+++ b/src/mame/drivers/clshroad.c
@@ -20,29 +20,7 @@ XTAL : 18.432 MHz
#include "emu.h"
#include "cpu/z80/z80.h"
#include "includes/wiping.h"
-
-/* Variables & functions defined in video: */
-
-extern UINT8 *clshroad_vram_0, *clshroad_vram_1;
-extern UINT8 *clshroad_vregs;
-
-WRITE8_HANDLER( clshroad_vram_0_w );
-WRITE8_HANDLER( clshroad_vram_1_w );
-WRITE8_HANDLER( clshroad_flipscreen_w );
-
-PALETTE_INIT( firebatl );
-PALETTE_INIT( clshroad );
-VIDEO_START( firebatl );
-VIDEO_START( clshroad );
-VIDEO_UPDATE( clshroad );
-
-extern UINT8 *wiping_soundregs;
-
-DEVICE_GET_INFO( wiping_sound );
-
-WRITE8_HANDLER( wiping_sound_w );
-
-
+#include "includes/clshroad.h"
static MACHINE_RESET( clshroad )
{
diff --git a/src/mame/drivers/darkmist.c b/src/mame/drivers/darkmist.c
index 2a8f353f4ff..d361f2ca6f2 100644
--- a/src/mame/drivers/darkmist.c
+++ b/src/mame/drivers/darkmist.c
@@ -27,14 +27,8 @@ TODO:
#include "cpu/z80/z80.h"
#include "deprecat.h"
#include "audio/t5182.h"
+#include "includes/darkmist.h"
-
-VIDEO_START(darkmist);
-VIDEO_UPDATE(darkmist);
-PALETTE_INIT(darkmist);
-
-extern UINT8 *darkmist_scroll;
-extern UINT8 *darkmist_spritebank;
static UINT8 * darkmist_workram;
int darkmist_hw;
diff --git a/src/mame/drivers/darkseal.c b/src/mame/drivers/darkseal.c
index 331b5f70c44..71027e8b45d 100644
--- a/src/mame/drivers/darkseal.c
+++ b/src/mame/drivers/darkseal.c
@@ -19,20 +19,8 @@
#include "sound/2203intf.h"
#include "sound/2151intf.h"
#include "sound/okim6295.h"
+#include "includes/darkseal.h"
-VIDEO_START( darkseal );
-VIDEO_UPDATE( darkseal );
-
-WRITE16_HANDLER( darkseal_pf1_data_w );
-WRITE16_HANDLER( darkseal_pf2_data_w );
-WRITE16_HANDLER( darkseal_pf3_data_w );
-WRITE16_HANDLER( darkseal_pf3b_data_w );
-WRITE16_HANDLER( darkseal_control_0_w );
-WRITE16_HANDLER( darkseal_control_1_w );
-WRITE16_HANDLER( darkseal_palette_24bit_rg_w );
-WRITE16_HANDLER( darkseal_palette_24bit_b_w );
-extern UINT16 *darkseal_pf12_row, *darkseal_pf34_row;
-extern UINT16 *darkseal_pf1_data,*darkseal_pf2_data,*darkseal_pf3_data;
static UINT16 *darkseal_ram;
/******************************************************************************/
diff --git a/src/mame/drivers/dcon.c b/src/mame/drivers/dcon.c
index a5312c9464d..f105f985e96 100644
--- a/src/mame/drivers/dcon.c
+++ b/src/mame/drivers/dcon.c
@@ -16,20 +16,7 @@
#include "cpu/m68000/m68000.h"
#include "cpu/z80/z80.h"
#include "audio/seibu.h"
-
-WRITE16_HANDLER( dcon_gfxbank_w );
-WRITE16_HANDLER( dcon_background_w );
-WRITE16_HANDLER( dcon_foreground_w );
-WRITE16_HANDLER( dcon_midground_w );
-WRITE16_HANDLER( dcon_text_w );
-WRITE16_HANDLER( dcon_control_w );
-READ16_HANDLER( dcon_control_r );
-
-VIDEO_START( dcon );
-VIDEO_UPDATE( dcon );
-VIDEO_UPDATE( sdgndmps );
-
-extern UINT16 *dcon_back_data,*dcon_fore_data,*dcon_mid_data,*dcon_scroll_ram,*dcon_textram;
+#include "includes/dcon.h"
/***************************************************************************/
diff --git a/src/mame/drivers/deadang.c b/src/mame/drivers/deadang.c
index 639e6f31f38..811ca1fd8ba 100644
--- a/src/mame/drivers/deadang.c
+++ b/src/mame/drivers/deadang.c
@@ -42,15 +42,7 @@ Dip locations and factory settings verified with US manual
#include "audio/seibu.h"
#include "sound/2203intf.h"
#include "sound/msm5205.h"
-
-extern UINT16 *deadang_video_data, *deadang_scroll_ram;
-
-extern WRITE16_HANDLER( deadang_foreground_w );
-extern WRITE16_HANDLER( deadang_text_w );
-extern WRITE16_HANDLER( deadang_bank_w );
-
-extern VIDEO_START( deadang );
-extern VIDEO_UPDATE( deadang );
+#include "includes/deadang.h"
/* Read/Write Handlers */
diff --git a/src/mame/drivers/deco_mlc.c b/src/mame/drivers/deco_mlc.c
index fb1402d6a71..c511ccd257b 100644
--- a/src/mame/drivers/deco_mlc.c
+++ b/src/mame/drivers/deco_mlc.c
@@ -102,12 +102,8 @@
#include "includes/decoprot.h"
#include "cpu/arm/arm.h"
#include "cpu/sh2/sh2.h"
+#include "includes/deco_mlc.h"
-VIDEO_START( mlc );
-VIDEO_UPDATE( mlc );
-VIDEO_EOF( mlc );
-
-extern UINT32 *mlc_vram, *mlc_clip_ram;
static UINT32 *mlc_ram, *irq_ram;
static timer_device *raster_irq_timer;
static int mainCpuIsArm;
diff --git a/src/mame/drivers/djmain.c b/src/mame/drivers/djmain.c
index ec1d4fab3d0..d1f3801c8b1 100644
--- a/src/mame/drivers/djmain.c
+++ b/src/mame/drivers/djmain.c
@@ -69,14 +69,7 @@ hard drive 3.5 adapter long 3.5 IDE cable 3.5 adapter PCB
#include "machine/idectrl.h"
#include "sound/k054539.h"
#include "video/konicdev.h"
-
-
-extern UINT32 *djmain_obj_ram;
-
-VIDEO_UPDATE( djmain );
-VIDEO_START( djmain );
-extern void djmain_tile_callback(running_machine* machine, int layer, int *code, int *color, int *flags);
-
+#include "includes/djmain.h"
static int sndram_bank;
static UINT8 *sndram;
diff --git a/src/mame/drivers/dynduke.c b/src/mame/drivers/dynduke.c
index 031a4772213..7b2ffdd96f4 100644
--- a/src/mame/drivers/dynduke.c
+++ b/src/mame/drivers/dynduke.c
@@ -68,18 +68,7 @@ Also, implemented conditional port for Coin Mode (SW1:1)
#include "audio/seibu.h"
#include "sound/3812intf.h"
#include "sound/okim6295.h"
-
-WRITE16_HANDLER( dynduke_background_w );
-WRITE16_HANDLER( dynduke_foreground_w );
-WRITE16_HANDLER( dynduke_text_w );
-WRITE16_HANDLER( dynduke_gfxbank_w );
-WRITE16_HANDLER( dynduke_control_w );
-WRITE16_HANDLER( dynduke_paletteram_w );
-VIDEO_START( dynduke );
-VIDEO_UPDATE( dynduke );
-VIDEO_EOF( dynduke );
-
-extern UINT16 *dynduke_back_data, *dynduke_fore_data, *dynduke_scroll_ram;
+#include "includes/dynduke.h"
/* Memory Maps */
diff --git a/src/mame/drivers/eolith.c b/src/mame/drivers/eolith.c
index 79df461b373..bc6a33686fa 100644
--- a/src/mame/drivers/eolith.c
+++ b/src/mame/drivers/eolith.c
@@ -55,13 +55,7 @@
#include "cpu/e132xs/e132xs.h"
#include "deprecat.h"
#include "machine/eeprom.h"
-
-READ32_HANDLER(eolith_vram_r);
-WRITE32_HANDLER(eolith_vram_w);
-VIDEO_START(eolith);
-VIDEO_UPDATE(eolith);
-
-extern int eolith_buffer;
+#include "includes/eolith.h"
static int coin_counter_bit = 0;
diff --git a/src/mame/drivers/exzisus.c b/src/mame/drivers/exzisus.c
index 551631f590e..01cf1b4df80 100644
--- a/src/mame/drivers/exzisus.c
+++ b/src/mame/drivers/exzisus.c
@@ -37,6 +37,7 @@ TODO:
#include "includes/taitoipt.h"
#include "audio/taitosnd.h"
#include "sound/2151intf.h"
+#include "includes/exzisus.h"
/***************************************************************************
@@ -48,25 +49,6 @@ TODO:
static UINT8 *exzisus_sharedram_ab;
static UINT8 *exzisus_sharedram_ac;
-extern UINT8 *exzisus_videoram0;
-extern UINT8 *exzisus_videoram1;
-extern UINT8 *exzisus_objectram0;
-extern UINT8 *exzisus_objectram1;
-extern size_t exzisus_objectram_size0;
-extern size_t exzisus_objectram_size1;
-
-READ8_HANDLER ( exzisus_videoram_0_r );
-READ8_HANDLER ( exzisus_videoram_1_r );
-READ8_HANDLER ( exzisus_objectram_0_r );
-READ8_HANDLER ( exzisus_objectram_1_r );
-WRITE8_HANDLER( exzisus_videoram_0_w );
-WRITE8_HANDLER( exzisus_videoram_1_w );
-WRITE8_HANDLER( exzisus_objectram_0_w );
-WRITE8_HANDLER( exzisus_objectram_1_w );
-
-VIDEO_UPDATE( exzisus );
-
-
/***************************************************************************
Memory Handler(s)
diff --git a/src/mame/drivers/funworld.c b/src/mame/drivers/funworld.c
index 2a561aca66e..54481fd8912 100644
--- a/src/mame/drivers/funworld.c
+++ b/src/mame/drivers/funworld.c
@@ -746,18 +746,7 @@
#include "jollycrd.lh"
#include "bigdeal.lh"
#include "royalcrd.lh"
-
-/* from video */
-extern UINT8* funworld_videoram;
-extern UINT8* funworld_colorram;
-
-WRITE8_HANDLER( funworld_videoram_w );
-WRITE8_HANDLER( funworld_colorram_w );
-PALETTE_INIT( funworld );
-VIDEO_START( funworld );
-VIDEO_START( magicrd2 );
-VIDEO_UPDATE( funworld );
-
+#include "includes/funworld.h"
/**********************
* Read/Write Handlers *
diff --git a/src/mame/drivers/galastrm.c b/src/mame/drivers/galastrm.c
index 1ace790cd2e..ab2be7a382e 100644
--- a/src/mame/drivers/galastrm.c
+++ b/src/mame/drivers/galastrm.c
@@ -44,14 +44,10 @@ $305.b invincibility
#include "sound/es5506.h"
#include "includes/taito_f3.h"
#include "audio/taito_en.h"
-
-
-VIDEO_START( galastrm );
-VIDEO_UPDATE( galastrm );
+#include "includes/galastrm.h"
static UINT16 coin_word, frame_counter=0;
static UINT32 *galastrm_ram;
-extern INT16 galastrm_tc0610_ctrl_reg[2][8];
/*********************************************************************/
diff --git a/src/mame/drivers/galpanic.c b/src/mame/drivers/galpanic.c
index 04a73c2de60..186a3d6bf82 100644
--- a/src/mame/drivers/galpanic.c
+++ b/src/mame/drivers/galpanic.c
@@ -123,17 +123,7 @@ The current set of Super Model is an example of type C
#include "includes/kaneko16.h"
#include "sound/okim6295.h"
#include "video/kan_pand.h"
-
-extern UINT16 *galpanic_bgvideoram,*galpanic_fgvideoram;
-extern size_t galpanic_fgvideoram_size;
-
-PALETTE_INIT( galpanic );
-WRITE16_HANDLER( galpanic_bgvideoram_w );
-WRITE16_HANDLER( galpanic_paletteram_w );
-VIDEO_START( galpanic );
-VIDEO_UPDATE( galpanic );
-VIDEO_UPDATE( comad );
-
+#include "includes/galpanic.h"
static VIDEO_EOF( galpanic )
{
diff --git a/src/mame/drivers/gatron.c b/src/mame/drivers/gatron.c
index c1bf042040a..c548188793b 100644
--- a/src/mame/drivers/gatron.c
+++ b/src/mame/drivers/gatron.c
@@ -230,15 +230,9 @@
#include "cpu/z80/z80.h"
#include "sound/sn76496.h"
#include "machine/8255ppi.h"
-
#include "poker41.lh"
#include "pulltabs.lh"
-
-/* from video */
-WRITE8_HANDLER( gat_videoram_w );
-PALETTE_INIT( gat );
-VIDEO_START( gat );
-VIDEO_UPDATE( gat );
+#include "includes/gatron.h"
/****************************
diff --git a/src/mame/drivers/gladiatr.c b/src/mame/drivers/gladiatr.c
index dd08915e2b5..4d2c9d6dedb 100644
--- a/src/mame/drivers/gladiatr.c
+++ b/src/mame/drivers/gladiatr.c
@@ -187,22 +187,7 @@ TODO:
#include "cpu/z80/z80.h"
#include "sound/2203intf.h"
#include "sound/msm5205.h"
-
-
-/*Video functions*/
-extern UINT8 *gladiatr_videoram, *gladiatr_colorram,*gladiatr_textram;
-WRITE8_HANDLER( gladiatr_videoram_w );
-WRITE8_HANDLER( gladiatr_colorram_w );
-WRITE8_HANDLER( gladiatr_textram_w );
-WRITE8_HANDLER( gladiatr_paletteram_w );
-WRITE8_HANDLER( ppking_video_registers_w );
-WRITE8_HANDLER( gladiatr_video_registers_w );
-WRITE8_HANDLER( gladiatr_spritebuffer_w );
-WRITE8_HANDLER( gladiatr_spritebank_w );
-VIDEO_START( ppking );
-VIDEO_UPDATE( ppking );
-VIDEO_START( gladiatr );
-VIDEO_UPDATE( gladiatr );
+#include "includes/gladiatr.h"
/*Rom bankswitching*/
diff --git a/src/mame/drivers/goodejan.c b/src/mame/drivers/goodejan.c
index 40fd7a4285c..041f59bfc23 100644
--- a/src/mame/drivers/goodejan.c
+++ b/src/mame/drivers/goodejan.c
@@ -60,9 +60,6 @@ Notes:
#define GOODEJAN_MHZ2 16000000
#define GOODEJAN_MHZ3 12000000
-extern UINT16 *seibucrtc_sc0vram,*seibucrtc_sc1vram,*seibucrtc_sc2vram,*seibucrtc_sc3vram;
-extern UINT16 *seibucrtc_vregs;
-extern UINT16 seibucrtc_sc0bank;
static UINT16 goodejan_mux_data;
static WRITE16_HANDLER( goodejan_gfxbank_w )
diff --git a/src/mame/drivers/groundfx.c b/src/mame/drivers/groundfx.c
index 1980717f372..912e0dcdc79 100644
--- a/src/mame/drivers/groundfx.c
+++ b/src/mame/drivers/groundfx.c
@@ -69,13 +69,10 @@
#include "sound/es5506.h"
#include "includes/taito_f3.h"
#include "audio/taito_en.h"
-
-VIDEO_START( groundfx );
-VIDEO_UPDATE( groundfx );
+#include "includes/groundfx.h"
static UINT16 coin_word, frame_counter=0;
static UINT16 port_sel = 0;
-extern UINT16 groundfx_rotate_ctrl[8];
static UINT32 *groundfx_ram;
/***********************************************************
diff --git a/src/mame/drivers/gsword.c b/src/mame/drivers/gsword.c
index d75e70f3325..15df58e0058 100644
--- a/src/mame/drivers/gsword.c
+++ b/src/mame/drivers/gsword.c
@@ -147,23 +147,7 @@ reg: 0->1 (main->2nd) / : (1->0) 2nd->main :
#include "machine/tait8741.h"
#include "sound/ay8910.h"
#include "sound/msm5205.h"
-
-
-extern WRITE8_HANDLER( gsword_charbank_w );
-extern WRITE8_HANDLER( gsword_videoctrl_w );
-extern WRITE8_HANDLER( gsword_videoram_w );
-extern WRITE8_HANDLER( gsword_scroll_w );
-
-extern PALETTE_INIT( josvolly );
-extern PALETTE_INIT( gsword );
-extern VIDEO_START( gsword );
-extern VIDEO_UPDATE( gsword );
-
-extern size_t gsword_spritexy_size;
-
-extern UINT8 *gsword_spritexy_ram;
-extern UINT8 *gsword_spritetile_ram;
-extern UINT8 *gsword_spriteattrib_ram;
+#include "includes/gsword.h"
static int coins;
static int fake8910_0,fake8910_1;
diff --git a/src/mame/drivers/gunbustr.c b/src/mame/drivers/gunbustr.c
index 76af00e33d0..3f267e5647f 100644
--- a/src/mame/drivers/gunbustr.c
+++ b/src/mame/drivers/gunbustr.c
@@ -51,10 +51,7 @@
#include "sound/es5506.h"
#include "includes/taito_f3.h"
#include "audio/taito_en.h"
-
-
-VIDEO_START( gunbustr );
-VIDEO_UPDATE( gunbustr );
+#include "includes/gunbustr.h"
static UINT16 coin_word;
static UINT32 *gunbustr_ram;
diff --git a/src/mame/drivers/harddriv.c b/src/mame/drivers/harddriv.c
index 6c0347d6ed0..65ed0d1fb5d 100644
--- a/src/mame/drivers/harddriv.c
+++ b/src/mame/drivers/harddriv.c
@@ -328,12 +328,9 @@ Notes:
#include "machine/atarigen.h"
#include "machine/asic65.h"
#include "audio/atarijsa.h"
-#include "includes/harddriv.h"
#include "sound/dac.h"
-
-/* from slapstic.c */
-void slapstic_init(running_machine *machine, int chip);
-
+#include "includes/slapstic.h"
+#include "includes/harddriv.h"
/*************************************
diff --git a/src/mame/drivers/hexion.c b/src/mame/drivers/hexion.c
index 4472166d635..b772e63df51 100644
--- a/src/mame/drivers/hexion.c
+++ b/src/mame/drivers/hexion.c
@@ -84,16 +84,7 @@ Notes:
#include "sound/okim6295.h"
#include "sound/k051649.h"
#include "includes/konamipt.h"
-
-VIDEO_START( hexion );
-VIDEO_UPDATE( hexion );
-
-WRITE8_HANDLER( hexion_bankswitch_w );
-READ8_HANDLER( hexion_bankedram_r );
-WRITE8_HANDLER( hexion_bankedram_w );
-WRITE8_HANDLER( hexion_bankctrl_w );
-WRITE8_HANDLER( hexion_gfxrom_select_w );
-
+#include "includes/hexion.h"
static WRITE8_HANDLER( coincntr_w )
diff --git a/src/mame/drivers/hyhoo.c b/src/mame/drivers/hyhoo.c
index 0a29fb4e24d..315b57d1790 100644
--- a/src/mame/drivers/hyhoo.c
+++ b/src/mame/drivers/hyhoo.c
@@ -26,7 +26,7 @@ Memo:
#include "includes/nb1413m3.h"
#include "sound/ay8910.h"
#include "sound/dac.h"
-
+#include "includes/hyhoo.h"
#define SIGNED_DAC 0 // 0:unsigned DAC, 1:signed DAC
#if SIGNED_DAC
@@ -36,14 +36,6 @@ Memo:
#endif
-VIDEO_UPDATE( hyhoo );
-VIDEO_START( hyhoo );
-
-extern UINT8 *hyhoo_clut;
-WRITE8_HANDLER( hyhoo_blitter_w );
-WRITE8_HANDLER( hyhoo_romsel_w );
-
-
static DRIVER_INIT( hyhoo )
{
nb1413m3_type = NB1413M3_HYHOO;
diff --git a/src/mame/drivers/lucky74.c b/src/mame/drivers/lucky74.c
index 2db3fc574bd..4d1c708598c 100644
--- a/src/mame/drivers/lucky74.c
+++ b/src/mame/drivers/lucky74.c
@@ -673,16 +673,7 @@
#include "sound/msm5205.h"
#include "machine/8255ppi.h"
#include "lucky74.lh"
-
-/* from video hardware */
-extern UINT8 *lucky74_fg_videoram, *lucky74_fg_colorram, *lucky74_bg_videoram, *lucky74_bg_colorram;
-WRITE8_HANDLER( lucky74_fg_videoram_w );
-WRITE8_HANDLER( lucky74_fg_colorram_w );
-WRITE8_HANDLER( lucky74_bg_videoram_w );
-WRITE8_HANDLER( lucky74_bg_colorram_w );
-PALETTE_INIT( lucky74 );
-VIDEO_START( lucky74 );
-VIDEO_UPDATE( lucky74 );
+#include "includes/lucky74.h"
static UINT8 ym2149_portb;
static UINT8 usart_8251;
diff --git a/src/mame/drivers/lvcards.c b/src/mame/drivers/lvcards.c
index 2bae3b22608..782058119e6 100644
--- a/src/mame/drivers/lvcards.c
+++ b/src/mame/drivers/lvcards.c
@@ -76,16 +76,7 @@ TODO:
#include "emu.h"
#include "cpu/z80/z80.h"
#include "sound/ay8910.h"
-
-extern UINT8 *lvcards_videoram;
-extern UINT8 *lvcards_colorram;
-extern WRITE8_HANDLER( lvcards_videoram_w );
-extern WRITE8_HANDLER( lvcards_colorram_w );
-
-extern PALETTE_INIT( lvcards );
-extern PALETTE_INIT( ponttehk );
-extern VIDEO_START( lvcards );
-extern VIDEO_UPDATE( lvcards );
+#include "includes/lvcards.h"
static UINT8 payout;
static UINT8 pulse;
diff --git a/src/mame/drivers/m90.c b/src/mame/drivers/m90.c
index 37dcc8c8e5f..88e57b205ee 100644
--- a/src/mame/drivers/m90.c
+++ b/src/mame/drivers/m90.c
@@ -33,20 +33,10 @@ Notes:
#include "audio/m72.h"
#include "sound/dac.h"
#include "sound/2151intf.h"
+#include "includes/m90.h"
static UINT32 bankaddress;
-extern UINT16 *m90_video_data;
-
-VIDEO_START( m90 );
-VIDEO_START( dynablsb );
-VIDEO_START( bomblord );
-VIDEO_UPDATE( m90 );
-VIDEO_UPDATE( dynablsb );
-VIDEO_UPDATE( bomblord );
-WRITE16_HANDLER( m90_video_w );
-WRITE16_HANDLER( m90_video_control_w );
-
/***************************************************************************/
static void set_m90_bank(running_machine *machine)
diff --git a/src/mame/drivers/magmax.c b/src/mame/drivers/magmax.c
index f5967fd2429..e47b7b157f9 100644
--- a/src/mame/drivers/magmax.c
+++ b/src/mame/drivers/magmax.c
@@ -27,14 +27,7 @@ Stephh's notes (based on the game M68000 code and some tests) :
#include "cpu/z80/z80.h"
#include "cpu/m68000/m68000.h"
#include "sound/ay8910.h"
-
-PALETTE_INIT( magmax );
-VIDEO_UPDATE( magmax );
-VIDEO_START( magmax );
-
-extern UINT16 *magmax_vreg;
-extern UINT16 *magmax_scroll_x;
-extern UINT16 *magmax_scroll_y;
+#include "includes/magmax.h"
static UINT8 sound_latch = 0;
diff --git a/src/mame/drivers/mustache.c b/src/mame/drivers/mustache.c
index bdd6e2d48c6..222daeb623a 100644
--- a/src/mame/drivers/mustache.c
+++ b/src/mame/drivers/mustache.c
@@ -31,6 +31,7 @@ YM2151:
#include "cpu/z80/z80.h"
#include "audio/seibu.h" // for seibu_sound_decrypt on the MAIN cpu (not sound)
#include "audio/t5182.h"
+#include "includes/mustache.h"
#define XTAL1 14318180
#define XTAL2 18432000
@@ -41,14 +42,6 @@ YM2151:
#define YM_CLOCK (XTAL1/4)
-WRITE8_HANDLER( mustache_videoram_w );
-WRITE8_HANDLER( mustache_scroll_w );
-WRITE8_HANDLER ( mustache_video_control_w);
-VIDEO_START( mustache );
-VIDEO_UPDATE( mustache );
-PALETTE_INIT( mustache );
-
-
static READ8_HANDLER(t5182shared_r)
{
return t5182_sharedram[offset];
diff --git a/src/mame/drivers/mystwarr.c b/src/mame/drivers/mystwarr.c
index 9d6f6d54378..c0b011ed3ab 100644
--- a/src/mame/drivers/mystwarr.c
+++ b/src/mame/drivers/mystwarr.c
@@ -31,25 +31,7 @@
#include "machine/eeprom.h"
#include "sound/k054539.h"
#include "includes/konamipt.h"
-
-VIDEO_START(gaiapols);
-VIDEO_START(dadandrn);
-VIDEO_START(viostorm);
-VIDEO_START(metamrph);
-VIDEO_START(martchmp);
-VIDEO_START(mystwarr);
-VIDEO_UPDATE(dadandrn);
-VIDEO_UPDATE(mystwarr);
-VIDEO_UPDATE(metamrph);
-VIDEO_UPDATE(martchmp);
-
-WRITE16_HANDLER(ddd_053936_enable_w);
-WRITE16_HANDLER(ddd_053936_clip_w);
-READ16_HANDLER(gai_053936_tilerom_0_r);
-READ16_HANDLER(ddd_053936_tilerom_0_r);
-READ16_HANDLER(ddd_053936_tilerom_1_r);
-READ16_HANDLER(gai_053936_tilerom_2_r);
-READ16_HANDLER(ddd_053936_tilerom_2_r);
+#include "includes/mystwarr.h"
static UINT16 *gx_workram;
diff --git a/src/mame/drivers/namcofl.c b/src/mame/drivers/namcofl.c
index 8366c80b206..20fa87bd1cf 100644
--- a/src/mame/drivers/namcofl.c
+++ b/src/mame/drivers/namcofl.c
@@ -164,15 +164,11 @@ OSC3: 48.384MHz
#include "cpu/m37710/m37710.h"
#include "sound/c352.h"
#include "namcofl.lh"
+#include "includes/namcofl.h"
static emu_timer *raster_interrupt_timer;
-VIDEO_START( namcofl );
-VIDEO_UPDATE( namcofl );
-
-extern WRITE32_HANDLER(namcofl_spritebank_w);
-
static UINT32 *namcofl_workram;
static UINT16 *namcofl_shareram;
static UINT8 mcu_port6;
diff --git a/src/mame/drivers/namcos86.c b/src/mame/drivers/namcos86.c
index 6328023f3c5..779625150ee 100644
--- a/src/mame/drivers/namcos86.c
+++ b/src/mame/drivers/namcos86.c
@@ -180,26 +180,7 @@ TODO:
#include "sound/2151intf.h"
#include "sound/namco.h"
#include "sound/n63701x.h"
-
-extern UINT8 *rthunder_videoram1, *rthunder_videoram2, *rthunder_spriteram;
-
-PALETTE_INIT( namcos86 );
-VIDEO_START( namcos86 );
-VIDEO_UPDATE( namcos86 );
-VIDEO_EOF( namcos86 );
-READ8_HANDLER( rthunder_videoram1_r );
-WRITE8_HANDLER( rthunder_videoram1_w );
-READ8_HANDLER( rthunder_videoram2_r );
-WRITE8_HANDLER( rthunder_videoram2_w );
-WRITE8_HANDLER( rthunder_scroll0_w );
-WRITE8_HANDLER( rthunder_scroll1_w );
-WRITE8_HANDLER( rthunder_scroll2_w );
-WRITE8_HANDLER( rthunder_scroll3_w );
-WRITE8_HANDLER( rthunder_backcolor_w );
-WRITE8_HANDLER( rthunder_tilebank_select_w );
-READ8_HANDLER( rthunder_spriteram_r );
-WRITE8_HANDLER( rthunder_spriteram_w );
-
+#include "includes/namcos86.h"
static WRITE8_HANDLER( bankswitch1_w )
{
diff --git a/src/mame/drivers/nbmj8900.c b/src/mame/drivers/nbmj8900.c
index d5353950203..1e4895b4786 100644
--- a/src/mame/drivers/nbmj8900.c
+++ b/src/mame/drivers/nbmj8900.c
@@ -29,6 +29,7 @@ TODO:
#include "sound/dac.h"
#include "sound/ay8910.h"
#include "sound/3812intf.h"
+#include "includes/nbmj8900.h"
#define SIGNED_DAC 0 // 0:unsigned DAC, 1:signed DAC
@@ -40,19 +41,6 @@ TODO:
-extern VIDEO_UPDATE( nbmj8900 );
-extern VIDEO_START( nbmj8900_2layer );
-
-extern READ8_HANDLER( nbmj8900_palette_type1_r );
-extern WRITE8_HANDLER( nbmj8900_palette_type1_w );
-extern WRITE8_HANDLER( nbmj8900_blitter_w );
-extern WRITE8_HANDLER( nbmj8900_scrolly_w );
-extern WRITE8_HANDLER( nbmj8900_vramsel_w );
-extern WRITE8_HANDLER( nbmj8900_romsel_w );
-extern WRITE8_HANDLER( nbmj8900_clutsel_w );
-extern READ8_HANDLER( nbmj8900_clut_r );
-extern WRITE8_HANDLER( nbmj8900_clut_w );
-
static DRIVER_INIT( ohpaipee )
{
diff --git a/src/mame/drivers/opwolf.c b/src/mame/drivers/opwolf.c
index 3175f8c9e93..4fa1d2fe48d 100644
--- a/src/mame/drivers/opwolf.c
+++ b/src/mame/drivers/opwolf.c
@@ -282,6 +282,7 @@ register. So what is controlling priority.
#include "audio/taitosnd.h"
#include "sound/2151intf.h"
#include "sound/msm5205.h"
+#include "includes/rastan.h"
#include "includes/opwolf.h"
static READ16_HANDLER( cchip_r )
diff --git a/src/mame/drivers/pacland.c b/src/mame/drivers/pacland.c
index ac979e7eaeb..416aea9a45f 100644
--- a/src/mame/drivers/pacland.c
+++ b/src/mame/drivers/pacland.c
@@ -176,20 +176,7 @@ Notes:
#include "cpu/m6809/m6809.h"
#include "cpu/m6800/m6800.h"
#include "sound/namco.h"
-
-
-extern UINT8 *pacland_videoram,*pacland_videoram2,*pacland_spriteram;
-
-WRITE8_HANDLER( pacland_videoram_w );
-WRITE8_HANDLER( pacland_videoram2_w );
-WRITE8_HANDLER( pacland_scroll0_w );
-WRITE8_HANDLER( pacland_scroll1_w );
-WRITE8_HANDLER( pacland_bankswitch_w );
-
-PALETTE_INIT( pacland );
-VIDEO_START( pacland );
-VIDEO_UPDATE( pacland );
-
+#include "includes/pacland.h"
static WRITE8_HANDLER( pacland_subreset_w )
{
diff --git a/src/mame/drivers/pastelg.c b/src/mame/drivers/pastelg.c
index 20356dedd89..8bd5cb91d4c 100644
--- a/src/mame/drivers/pastelg.c
+++ b/src/mame/drivers/pastelg.c
@@ -25,6 +25,7 @@ Memo:
#include "includes/nb1413m3.h"
#include "sound/ay8910.h"
#include "sound/dac.h"
+#include "includes/pastelg.h"
#define SIGNED_DAC 0 // 0:unsigned DAC, 1:signed DAC
@@ -35,18 +36,6 @@ Memo:
#endif
-extern PALETTE_INIT( pastelg );
-extern VIDEO_UPDATE( pastelg );
-extern VIDEO_START( pastelg );
-
-extern WRITE8_HANDLER( pastelg_clut_w );
-extern WRITE8_HANDLER( pastelg_romsel_w );
-extern WRITE8_HANDLER( threeds_romsel_w );
-extern WRITE8_HANDLER( threeds_output_w );
-extern WRITE8_HANDLER( pastelg_blitter_w );
-extern READ8_HANDLER( threeds_rom_readback_r );
-extern int pastelg_blitter_src_addr_r(void);
-
static DRIVER_INIT( pastelg )
{
diff --git a/src/mame/drivers/pcktgal.c b/src/mame/drivers/pcktgal.c
index 8f2f21691a4..6a210bebe1f 100644
--- a/src/mame/drivers/pcktgal.c
+++ b/src/mame/drivers/pcktgal.c
@@ -17,13 +17,7 @@
#include "sound/2203intf.h"
#include "sound/3812intf.h"
#include "sound/msm5205.h"
-
-extern WRITE8_HANDLER( pcktgal_videoram_w );
-extern WRITE8_HANDLER( pcktgal_flipscreen_w );
-
-extern PALETTE_INIT( pcktgal );
-extern VIDEO_START( pcktgal );
-extern VIDEO_UPDATE( pcktgal );
+#include "includes/pcktgal.h"
/***************************************************************************/
diff --git a/src/mame/drivers/pingpong.c b/src/mame/drivers/pingpong.c
index 5a14de574f7..d6a3641ffba 100644
--- a/src/mame/drivers/pingpong.c
+++ b/src/mame/drivers/pingpong.c
@@ -8,16 +8,7 @@ Ping Pong (c) 1985 Konami
#include "cpu/z80/z80.h"
#include "deprecat.h"
#include "sound/sn76496.h"
-
-extern UINT8 *pingpong_videoram;
-extern UINT8 *pingpong_colorram;
-
-extern WRITE8_HANDLER( pingpong_videoram_w );
-extern WRITE8_HANDLER( pingpong_colorram_w );
-
-extern PALETTE_INIT( pingpong );
-extern VIDEO_START( pingpong );
-extern VIDEO_UPDATE( pingpong );
+#include "includes/pingpong.h"
static int intenable;
diff --git a/src/mame/drivers/pirates.c b/src/mame/drivers/pirates.c
index 5c97f009c51..2077b43ac51 100644
--- a/src/mame/drivers/pirates.c
+++ b/src/mame/drivers/pirates.c
@@ -91,17 +91,7 @@ Notes:
#include "cpu/m68000/m68000.h"
#include "machine/eeprom.h"
#include "sound/okim6295.h"
-
-extern UINT16 *pirates_tx_tileram, *pirates_spriteram;
-extern UINT16 *pirates_fg_tileram, *pirates_bg_tileram;
-extern UINT16 *pirates_scroll;
-
-VIDEO_START(pirates);
-WRITE16_HANDLER( pirates_tx_tileram_w );
-WRITE16_HANDLER( pirates_fg_tileram_w );
-WRITE16_HANDLER( pirates_bg_tileram_w );
-VIDEO_UPDATE(pirates);
-
+#include "includes/pirates.h"
static const eeprom_interface eeprom_intf =
diff --git a/src/mame/drivers/pokechmp.c b/src/mame/drivers/pokechmp.c
index 6510dc94436..32b529e13e1 100644
--- a/src/mame/drivers/pokechmp.c
+++ b/src/mame/drivers/pokechmp.c
@@ -49,13 +49,7 @@ ClawGrip, Jul 2006
#include "sound/2203intf.h"
#include "sound/3812intf.h"
#include "sound/okim6295.h"
-
-extern WRITE8_HANDLER( pokechmp_videoram_w );
-extern WRITE8_HANDLER( pokechmp_flipscreen_w );
-
-extern VIDEO_START( pokechmp );
-extern VIDEO_UPDATE( pokechmp );
-
+#include "includes/pokechmp.h"
static WRITE8_HANDLER( pokechmp_bank_w )
{
diff --git a/src/mame/drivers/popeye.c b/src/mame/drivers/popeye.c
index 99ab44829f8..28642c7140e 100644
--- a/src/mame/drivers/popeye.c
+++ b/src/mame/drivers/popeye.c
@@ -19,25 +19,7 @@ Notes:
#include "emu.h"
#include "cpu/z80/z80.h"
#include "sound/ay8910.h"
-
-
-extern UINT8 *popeye_videoram;
-extern UINT8 *popeye_colorram;
-extern UINT8 *popeye_background_pos;
-extern UINT8 *popeye_palettebank;
-
-extern WRITE8_HANDLER( popeye_videoram_w );
-extern WRITE8_HANDLER( popeye_colorram_w );
-extern WRITE8_HANDLER( popeye_bitmap_w );
-extern WRITE8_HANDLER( skyskipr_bitmap_w );
-
-extern PALETTE_INIT( popeye );
-extern PALETTE_INIT( popeyebl );
-extern VIDEO_START( skyskipr );
-extern VIDEO_START( popeye );
-extern VIDEO_UPDATE( popeye );
-
-
+#include "includes/popeye.h"
static INTERRUPT_GEN( popeye_interrupt )
{
diff --git a/src/mame/drivers/portrait.c b/src/mame/drivers/portrait.c
index c3f02f8c845..07a1f3e3f00 100644
--- a/src/mame/drivers/portrait.c
+++ b/src/mame/drivers/portrait.c
@@ -87,18 +87,7 @@ DM81LS95 = TriState buffer
#include "cpu/z80/z80.h"
#include "cpu/mcs48/mcs48.h"
#include "sound/tms5220.h"
-
-extern PALETTE_INIT(portrait);
-
-extern UINT8 *portrait_bgvideoram,*portrait_fgvideoram;
-
-extern int portrait_scroll;
-
-//PALETTE_INIT( portrait );
-VIDEO_START( portrait );
-VIDEO_UPDATE( portrait );
-WRITE8_HANDLER( portrait_bgvideo_write );
-WRITE8_HANDLER( portrait_fgvideo_write );
+#include "includes/portrait.h"
static WRITE8_HANDLER( portrait_ctrl_w )
{
diff --git a/src/mame/drivers/powerins.c b/src/mame/drivers/powerins.c
index f136adbf54c..56678e9f220 100644
--- a/src/mame/drivers/powerins.c
+++ b/src/mame/drivers/powerins.c
@@ -34,25 +34,7 @@ TODO:
#include "machine/nmk112.h"
#include "sound/okim6295.h"
#include "sound/2203intf.h"
-
-/* Variables that video has access to */
-
-/* Variables defined in video */
-extern UINT16 *powerins_vram_0, *powerins_vctrl_0;
-extern UINT16 *powerins_vram_1, *powerins_vctrl_1;
-
-/* Functions defined in video */
-
-WRITE16_HANDLER( powerins_flipscreen_w );
-WRITE16_HANDLER( powerins_tilebank_w );
-
-WRITE16_HANDLER( powerins_paletteram16_w );
-
-WRITE16_HANDLER( powerins_vram_0_w );
-WRITE16_HANDLER( powerins_vram_1_w );
-
-VIDEO_START( powerins );
-VIDEO_UPDATE( powerins );
+#include "includes/powerins.h"
/***************************************************************************
diff --git a/src/mame/drivers/psychic5.c b/src/mame/drivers/psychic5.c
index ad0eab2092d..24069c89fa9 100644
--- a/src/mame/drivers/psychic5.c
+++ b/src/mame/drivers/psychic5.c
@@ -313,28 +313,7 @@ The first sprite data is located at f20b,then f21b and so on.
#include "cpu/z80/z80.h"
#include "deprecat.h"
#include "sound/2203intf.h"
-
-
-WRITE8_HANDLER( psychic5_paged_ram_w );
-WRITE8_HANDLER( psychic5_vram_page_select_w );
-WRITE8_HANDLER( psychic5_title_screen_w );
-
-READ8_HANDLER( psychic5_paged_ram_r );
-READ8_HANDLER( psychic5_vram_page_select_r );
-
-VIDEO_START( psychic5 );
-VIDEO_RESET( psychic5 );
-VIDEO_UPDATE( psychic5 );
-
-
-extern UINT8 *bombsa_paletteram;
-WRITE8_HANDLER( bombsa_paged_ram_w );
-WRITE8_HANDLER( bombsa_unknown_w );
-
-VIDEO_START( bombsa );
-VIDEO_RESET( bombsa );
-VIDEO_UPDATE( bombsa );
-
+#include "includes/psychic5.h"
static UINT8 psychic5_bank_latch;
diff --git a/src/mame/drivers/punchout.c b/src/mame/drivers/punchout.c
index 9c0da8b8485..037ce14ae5f 100644
--- a/src/mame/drivers/punchout.c
+++ b/src/mame/drivers/punchout.c
@@ -114,32 +114,8 @@ DIP locations verified for:
#include "cpu/m6502/m6502.h"
#include "sound/vlm5030.h"
#include "sound/nes_apu.h"
-
#include "rendlay.h"
-
-extern UINT8 *punchout_bg_top_videoram;
-extern UINT8 *punchout_bg_bot_videoram;
-extern UINT8 *armwrest_fg_videoram;
-extern UINT8 *punchout_spr1_videoram;
-extern UINT8 *punchout_spr2_videoram;
-extern UINT8 *punchout_spr1_ctrlram;
-extern UINT8 *punchout_spr2_ctrlram;
-extern UINT8 *punchout_palettebank;
-WRITE8_HANDLER( punchout_bg_top_videoram_w );
-WRITE8_HANDLER( punchout_bg_bot_videoram_w );
-WRITE8_HANDLER( armwrest_fg_videoram_w );
-WRITE8_HANDLER( punchout_spr1_videoram_w );
-WRITE8_HANDLER( punchout_spr2_videoram_w );
-VIDEO_START( punchout );
-VIDEO_START( armwrest );
-VIDEO_UPDATE( punchout );
-VIDEO_UPDATE( armwrest );
-
-DRIVER_INIT( punchout );
-DRIVER_INIT( spnchout );
-DRIVER_INIT( spnchotj );
-DRIVER_INIT( armwrest );
-
+#include "includes/punchout.h"
static CUSTOM_INPUT( punchout_vlm5030_busy_r )
diff --git a/src/mame/drivers/qdrmfgp.c b/src/mame/drivers/qdrmfgp.c
index 96a19211142..0786d39d05d 100644
--- a/src/mame/drivers/qdrmfgp.c
+++ b/src/mame/drivers/qdrmfgp.c
@@ -25,14 +25,7 @@ GP1 HDD data contents:
#include "machine/idectrl.h"
#include "sound/k054539.h"
#include "video/konicdev.h"
-
-VIDEO_START( qdrmfgp );
-VIDEO_START( qdrmfgp2 );
-VIDEO_UPDATE( qdrmfgp );
-
-extern void qdrmfgp_tile_callback(running_machine *machine, int layer, int *code, int *color, int *flags);
-extern void qdrmfgp2_tile_callback(running_machine *machine, int layer, int *code, int *color, int *flags);
-
+#include "includes/qdrmfgp.h"
static UINT8 *sndram;
static UINT16 *workram;
diff --git a/src/mame/drivers/quizdna.c b/src/mame/drivers/quizdna.c
index 4370680ccba..5db01af75a8 100644
--- a/src/mame/drivers/quizdna.c
+++ b/src/mame/drivers/quizdna.c
@@ -12,21 +12,10 @@ Quiz Gekiretsu Scramble (Gakuen Paradise 2) (c) 1993 Face
#include "cpu/z80/z80.h"
#include "sound/2203intf.h"
#include "sound/okim6295.h"
+#include "includes/quizdna.h"
#define MCLK 16000000
-VIDEO_START( quizdna );
-VIDEO_UPDATE( quizdna );
-
-WRITE8_HANDLER( quizdna_fg_ram_w );
-WRITE8_HANDLER( quizdna_bg_ram_w );
-WRITE8_HANDLER( quizdna_bg_yscroll_w );
-WRITE8_HANDLER( quizdna_bg_xscroll_w );
-WRITE8_HANDLER( quizdna_screen_ctrl_w );
-
-WRITE8_HANDLER( paletteram_xBGR_RRRR_GGGG_BBBB_w );
-
-
static WRITE8_HANDLER( quizdna_rombank_w )
{
UINT8 *ROM = memory_region(space->machine, "maincpu");
diff --git a/src/mame/drivers/quizpani.c b/src/mame/drivers/quizpani.c
index 081b80cdf21..bb39217a9a2 100644
--- a/src/mame/drivers/quizpani.c
+++ b/src/mame/drivers/quizpani.c
@@ -36,16 +36,7 @@
#include "cpu/m68000/m68000.h"
#include "machine/nmk112.h"
#include "sound/okim6295.h"
-
-extern UINT16 *quizpani_bg_videoram, *quizpani_txt_videoram;
-extern UINT16 *quizpani_scrollreg;
-
-extern WRITE16_HANDLER( quizpani_bg_videoram_w );
-extern WRITE16_HANDLER( quizpani_txt_videoram_w );
-extern WRITE16_HANDLER( quizpani_tilesbank_w );
-
-extern VIDEO_START( quizpani );
-extern VIDEO_UPDATE( quizpani );
+#include "includes/quizpani.h"
static ADDRESS_MAP_START( quizpani_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x000000, 0x07ffff) AM_ROM
diff --git a/src/mame/drivers/raiden.c b/src/mame/drivers/raiden.c
index 077305ef2c6..27db93287e2 100644
--- a/src/mame/drivers/raiden.c
+++ b/src/mame/drivers/raiden.c
@@ -41,18 +41,9 @@
#include "audio/seibu.h"
#include "sound/3812intf.h"
#include "sound/okim6295.h"
-
-WRITE16_HANDLER( raiden_background_w );
-WRITE16_HANDLER( raiden_foreground_w );
-WRITE16_HANDLER( raiden_text_w );
-VIDEO_START( raiden );
-VIDEO_START( raidena );
-WRITE16_HANDLER( raiden_control_w );
-WRITE16_HANDLER( raidena_control_w );
-VIDEO_UPDATE( raiden );
+#include "includes/raiden.h"
static UINT16 *raiden_shared_ram;
-extern UINT16 *raiden_back_data,*raiden_fore_data,*raiden_scroll_ram;
/******************************************************************************/
diff --git a/src/mame/drivers/rainbow.c b/src/mame/drivers/rainbow.c
index e73aa4dc397..6beaa219d39 100644
--- a/src/mame/drivers/rainbow.c
+++ b/src/mame/drivers/rainbow.c
@@ -325,6 +325,7 @@ Stephh's notes (based on the game M68000 code and some tests) :
#include "audio/taitosnd.h"
#include "sound/2203intf.h"
#include "sound/2151intf.h"
+#include "includes/rastan.h"
#include "includes/rainbow.h"
diff --git a/src/mame/drivers/renegade.c b/src/mame/drivers/renegade.c
index 871efceae1b..2b27519f4db 100644
--- a/src/mame/drivers/renegade.c
+++ b/src/mame/drivers/renegade.c
@@ -108,16 +108,7 @@ $8000 - $ffff ROM
#include "cpu/m6805/m6805.h"
#include "sound/3526intf.h"
#include "sound/okim6295.h"
-
-extern VIDEO_UPDATE( renegade );
-extern VIDEO_START( renegade );
-WRITE8_HANDLER( renegade_scroll0_w );
-WRITE8_HANDLER( renegade_scroll1_w );
-WRITE8_HANDLER( renegade_videoram_w );
-WRITE8_HANDLER( renegade_videoram2_w );
-WRITE8_HANDLER( renegade_flipscreen_w );
-
-extern UINT8 *renegade_videoram2;
+#include "includes/renegade.h"
static UINT8 bank;
static int mcu_sim;
diff --git a/src/mame/drivers/rollrace.c b/src/mame/drivers/rollrace.c
index 01c40da275f..8db825b0b56 100644
--- a/src/mame/drivers/rollrace.c
+++ b/src/mame/drivers/rollrace.c
@@ -11,20 +11,8 @@ Issues:
#include "deprecat.h"
#include "cpu/z80/z80.h"
#include "sound/ay8910.h"
-
-
-extern UINT8 *rollrace_videoram;
-extern UINT8 *rollrace_colorram;
-VIDEO_UPDATE( rollrace );
-PALETTE_INIT( wiz );
-
-WRITE8_HANDLER( rollrace_charbank_w );
-WRITE8_HANDLER( rollrace_backgroundpage_w);
-WRITE8_HANDLER( rollrace_backgroundcolor_w);
-WRITE8_HANDLER( rollrace_bkgpen_w );
-WRITE8_HANDLER( rollrace_flipy_w );
-WRITE8_HANDLER( rollrace_spritebank_w );
-WRITE8_HANDLER( rollrace_flipx_w );
+#include "includes/wiz.h"
+#include "includes/rollrace.h"
static READ8_HANDLER( ra_fake_d800_r )
{
diff --git a/src/mame/drivers/route16.c b/src/mame/drivers/route16.c
index 0ee26824b77..b242fc84e4a 100644
--- a/src/mame/drivers/route16.c
+++ b/src/mame/drivers/route16.c
@@ -73,18 +73,9 @@
#include "sound/dac.h"
#include "sound/sn76477.h"
#include "sound/ay8910.h"
+#include "includes/route16.h"
-extern UINT8 *route16_videoram1;
-extern UINT8 *route16_videoram2;
-extern size_t route16_videoram_size;
-
-WRITE8_HANDLER( route16_out0_w );
-WRITE8_HANDLER( route16_out1_w );
-VIDEO_UPDATE( route16 );
-VIDEO_UPDATE( stratvox );
-VIDEO_UPDATE( ttmahjng );
-
static READ8_HANDLER( routex_prot_read );
diff --git a/src/mame/drivers/rpunch.c b/src/mame/drivers/rpunch.c
index 0b9c7f1842e..8628c55c192 100644
--- a/src/mame/drivers/rpunch.c
+++ b/src/mame/drivers/rpunch.c
@@ -110,32 +110,17 @@
#include "cpu/m6809/m6809.h"
#include "sound/2151intf.h"
#include "sound/upd7759.h"
-
+#include "includes/rpunch.h"
#define MASTER_CLOCK 16000000
-/* video driver data & functions */
-VIDEO_START( rpunch );
-VIDEO_UPDATE( rpunch );
-
-extern UINT16 *rpunch_bitmapram;
-extern size_t rpunch_bitmapram_size;
-extern int rpunch_sprite_palette;
-
static UINT8 sound_data;
static UINT8 sound_busy;
static UINT8 ym2151_irq;
static UINT8 upd_rom_bank;
-WRITE16_HANDLER( rpunch_videoram_w );
-WRITE16_HANDLER( rpunch_videoreg_w );
-WRITE16_HANDLER( rpunch_scrollreg_w );
-WRITE16_HANDLER( rpunch_ins_w );
-WRITE16_HANDLER( rpunch_crtc_data_w );
-WRITE16_HANDLER( rpunch_crtc_register_w );
-
/*************************************
diff --git a/src/mame/drivers/runaway.c b/src/mame/drivers/runaway.c
index c604cfd8dc1..cc62ceadbdc 100644
--- a/src/mame/drivers/runaway.c
+++ b/src/mame/drivers/runaway.c
@@ -14,18 +14,7 @@
#include "cpu/m6502/m6502.h"
#include "machine/atari_vg.h"
#include "sound/pokey.h"
-
-extern VIDEO_START( runaway );
-extern VIDEO_START( qwak );
-extern VIDEO_UPDATE( runaway );
-extern VIDEO_UPDATE( qwak );
-
-extern UINT8* runaway_video_ram;
-extern UINT8* runaway_sprite_ram;
-
-extern WRITE8_HANDLER( runaway_paletteram_w );
-extern WRITE8_HANDLER( runaway_video_ram_w );
-extern WRITE8_HANDLER( runaway_tile_bank_w );
+#include "includes/runaway.h"
static emu_timer *interrupt_timer;
diff --git a/src/mame/drivers/segag80r.c b/src/mame/drivers/segag80r.c
index 83085a94411..4e50b1a04da 100644
--- a/src/mame/drivers/segag80r.c
+++ b/src/mame/drivers/segag80r.c
@@ -145,8 +145,6 @@
*
*************************************/
-extern UINT8 (*sega_decrypt)(offs_t, UINT8);
-
static UINT8 *mainram;
diff --git a/src/mame/drivers/sengokmj.c b/src/mame/drivers/sengokmj.c
index eac4e00fabd..69b3633ace5 100644
--- a/src/mame/drivers/sengokmj.c
+++ b/src/mame/drivers/sengokmj.c
@@ -57,9 +57,6 @@ RSSENGO2.72 chr.
#include "sound/3812intf.h"
#include "includes/sei_crtc.h"
-extern UINT16 *seibucrtc_sc0vram,*seibucrtc_sc1vram,*seibucrtc_sc2vram,*seibucrtc_sc3vram;
-extern UINT16 *seibucrtc_vregs;
-
static UINT16 sengokumj_mux_data;
static UINT8 hopper_io;
diff --git a/src/mame/drivers/shangkid.c b/src/mame/drivers/shangkid.c
index c4412182d93..3f2ac0df4da 100644
--- a/src/mame/drivers/shangkid.c
+++ b/src/mame/drivers/shangkid.c
@@ -52,17 +52,7 @@ Games by Nihon Game/Culture Brain:
#include "cpu/z80/z80.h"
#include "sound/ay8910.h"
#include "sound/dac.h"
-
-/* from video/shangkid.c */
-extern UINT8 *shangkid_videoreg;
-extern int shangkid_gfx_type;
-
-VIDEO_START( shangkid );
-VIDEO_UPDATE( shangkid );
-WRITE8_HANDLER( shangkid_videoram_w );
-
-PALETTE_INIT( dynamski );
-VIDEO_UPDATE( dynamski );
+#include "includes/shangkid.h"
/***************************************************************************************/
diff --git a/src/mame/drivers/skykid.c b/src/mame/drivers/skykid.c
index 54363138f52..163bc415718 100644
--- a/src/mame/drivers/skykid.c
+++ b/src/mame/drivers/skykid.c
@@ -17,21 +17,7 @@ Notes:
#include "cpu/m6809/m6809.h"
#include "cpu/m6800/m6800.h"
#include "sound/namco.h"
-
-extern UINT8 *skykid_textram, *skykid_videoram, *skykid_spriteram;
-
-/* from video/skykid.c */
-VIDEO_START( skykid );
-READ8_HANDLER( skykid_videoram_r );
-WRITE8_HANDLER( skykid_videoram_w );
-READ8_HANDLER( skykid_textram_r );
-WRITE8_HANDLER( skykid_textram_w );
-WRITE8_HANDLER( skykid_scroll_x_w );
-WRITE8_HANDLER( skykid_scroll_y_w );
-WRITE8_HANDLER( skykid_flipscreen_priority_w );
-VIDEO_UPDATE( skykid );
-PALETTE_INIT( skykid );
-
+#include "includes/skykid.h"
static UINT8 inputport_selected;
diff --git a/src/mame/drivers/snookr10.c b/src/mame/drivers/snookr10.c
index f22cfebc54b..de99f514205 100644
--- a/src/mame/drivers/snookr10.c
+++ b/src/mame/drivers/snookr10.c
@@ -365,19 +365,7 @@
#include "cpu/m6502/m6502.h"
#include "sound/okim6295.h"
#include "snookr10.lh"
-
-
-/* from video */
-extern UINT8 *snookr10_videoram;
-extern UINT8 *snookr10_colorram;
-
-WRITE8_HANDLER( snookr10_videoram_w );
-WRITE8_HANDLER( snookr10_colorram_w );
-PALETTE_INIT( snookr10 );
-PALETTE_INIT( apple10 );
-VIDEO_START( snookr10 );
-VIDEO_START( apple10 );
-VIDEO_UPDATE( snookr10 );
+#include "includes/snookr10.h"
static int outportl, outporth;
static int bit0, bit1, bit2, bit3, bit4, bit5;
diff --git a/src/mame/drivers/spdodgeb.c b/src/mame/drivers/spdodgeb.c
index f6936f24c9a..cc00ea8b1e3 100644
--- a/src/mame/drivers/spdodgeb.c
+++ b/src/mame/drivers/spdodgeb.c
@@ -27,17 +27,7 @@ Notes:
#include "cpu/m6809/m6809.h"
#include "sound/3812intf.h"
#include "sound/msm5205.h"
-
-extern UINT8 *spdodgeb_videoram;
-
-PALETTE_INIT( spdodgeb );
-VIDEO_START( spdodgeb );
-VIDEO_UPDATE( spdodgeb );
-INTERRUPT_GEN( spdodgeb_interrupt );
-WRITE8_HANDLER( spdodgeb_scrollx_lo_w );
-WRITE8_HANDLER( spdodgeb_ctrl_w );
-WRITE8_HANDLER( spdodgeb_videoram_w );
-
+#include "includes/spdodgeb.h"
/* private globals */
static int toggle=0;//, soundcode = 0;
diff --git a/src/mame/drivers/speedbal.c b/src/mame/drivers/speedbal.c
index 4911393fbba..c0846ce6fbf 100644
--- a/src/mame/drivers/speedbal.c
+++ b/src/mame/drivers/speedbal.c
@@ -54,15 +54,7 @@ c1 ??
#include "cpu/z80/z80.h"
#include "deprecat.h"
#include "sound/3812intf.h"
-
-
-extern UINT8 *speedbal_background_videoram;
-extern UINT8 *speedbal_foreground_videoram;
-
-VIDEO_START( speedbal );
-VIDEO_UPDATE( speedbal );
-WRITE8_HANDLER( speedbal_foreground_videoram_w );
-WRITE8_HANDLER( speedbal_background_videoram_w );
+#include "includes/speedbal.h"
static WRITE8_HANDLER( speedbal_coincounter_w )
{
diff --git a/src/mame/drivers/speedspn.c b/src/mame/drivers/speedspn.c
index 1f28fa713af..519e993b4c1 100644
--- a/src/mame/drivers/speedspn.c
+++ b/src/mame/drivers/speedspn.c
@@ -23,6 +23,7 @@ TODO:
#include "emu.h"
#include "cpu/z80/z80.h"
#include "sound/okim6295.h"
+#include "includes/speedspn.h"
/*** README INFO **************************************************************
@@ -54,17 +55,6 @@ TCH-SS9.u34 " / AB2Bh
******************************************************************************/
-/* in video */
-extern UINT8 *speedspn_attram;
-
-WRITE8_HANDLER( speedspn_vidram_w );
-WRITE8_HANDLER( speedspn_attram_w );
-READ8_HANDLER( speedspn_vidram_r );
-VIDEO_START(speedspn);
-VIDEO_UPDATE(speedspn);
-WRITE8_HANDLER(speedspn_banked_vidram_change);
-WRITE8_HANDLER(speedspn_global_display_w);
-
static READ8_HANDLER(speedspn_irq_ack_r)
{
// I think this simply acknowledges the IRQ #0, it's read within the handler and the
diff --git a/src/mame/drivers/speglsht.c b/src/mame/drivers/speglsht.c
index 818eb7f9250..b93e45c5628 100644
--- a/src/mame/drivers/speglsht.c
+++ b/src/mame/drivers/speglsht.c
@@ -109,7 +109,6 @@ Notes:
#include "sound/st0016.h"
#include "includes/st0016.h"
-READ8_HANDLER(st0016_dma_r);
static UINT8 *shared;
UINT32 *speglsht_framebuffer;
diff --git a/src/mame/drivers/sprint4.c b/src/mame/drivers/sprint4.c
index 5cf12559399..c2403ce03e0 100644
--- a/src/mame/drivers/sprint4.c
+++ b/src/mame/drivers/sprint4.c
@@ -7,6 +7,7 @@ Atari Sprint 4 driver
#include "emu.h"
#include "cpu/m6502/m6502.h"
#include "audio/sprint4.h"
+#include "includes/sprint4.h"
#define MASTER_CLOCK 12096000
@@ -16,15 +17,6 @@ Atari Sprint 4 driver
#define PIXEL_CLOCK (MASTER_CLOCK / 2)
-PALETTE_INIT( sprint4 );
-
-VIDEO_EOF( sprint4 );
-VIDEO_START( sprint4 );
-VIDEO_UPDATE( sprint4 );
-
-extern int sprint4_collision[4];
-
-WRITE8_HANDLER( sprint4_video_ram_w );
static int da_latch;
diff --git a/src/mame/drivers/srmp5.c b/src/mame/drivers/srmp5.c
index b74539f3f59..ccfdabb4475 100644
--- a/src/mame/drivers/srmp5.c
+++ b/src/mame/drivers/srmp5.c
@@ -384,8 +384,6 @@ static ADDRESS_MAP_START( st0016_mem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xf000, 0xffff) AM_RAM
ADDRESS_MAP_END
-READ8_HANDLER(st0016_dma_r);
-
static READ8_HANDLER(cmd1_r)
{
srmp5_state *state = space->machine->driver_data<srmp5_state>();
diff --git a/src/mame/drivers/srumbler.c b/src/mame/drivers/srumbler.c
index c1d5f9ed071..3d3ebb32273 100644
--- a/src/mame/drivers/srumbler.c
+++ b/src/mame/drivers/srumbler.c
@@ -15,18 +15,7 @@
#include "deprecat.h"
#include "cpu/m6809/m6809.h"
#include "sound/2203intf.h"
-
-extern UINT8 *srumbler_backgroundram,*srumbler_foregroundram;
-
-WRITE8_HANDLER( srumbler_background_w );
-WRITE8_HANDLER( srumbler_foreground_w );
-WRITE8_HANDLER( srumbler_scroll_w );
-WRITE8_HANDLER( srumbler_4009_w );
-
-VIDEO_START( srumbler );
-VIDEO_UPDATE( srumbler );
-VIDEO_EOF( srumbler );
-
+#include "includes/srumbler.h"
static WRITE8_HANDLER( srumbler_bankswitch_w )
diff --git a/src/mame/drivers/sshangha.c b/src/mame/drivers/sshangha.c
index 09b98482b80..bdebcdbf107 100644
--- a/src/mame/drivers/sshangha.c
+++ b/src/mame/drivers/sshangha.c
@@ -56,21 +56,10 @@ Stephh's notes (based on the games M68000 code and some tests) :
#include "cpu/m68000/m68000.h"
#include "sound/2203intf.h"
#include "sound/okim6295.h"
+#include "includes/sshangha.h"
#define SSHANGHA_HACK 0
-VIDEO_START( sshangha );
-VIDEO_UPDATE( sshangha );
-
-WRITE16_HANDLER( sshangha_pf2_data_w );
-WRITE16_HANDLER( sshangha_pf1_data_w );
-WRITE16_HANDLER( sshangha_control_0_w );
-WRITE16_HANDLER( sshangha_video_w );
-
-extern UINT16 *sshangha_pf1_data;
-extern UINT16 *sshangha_pf2_data;
-extern UINT16 *sshangha_pf1_rowscroll, *sshangha_pf2_rowscroll;
-
static UINT16 *sshangha_prot_data;
static UINT16 *sshangha_sound_shared_ram;
diff --git a/src/mame/drivers/st0016.c b/src/mame/drivers/st0016.c
index 7212278759a..19cd633e579 100644
--- a/src/mame/drivers/st0016.c
+++ b/src/mame/drivers/st0016.c
@@ -73,8 +73,6 @@ WRITE8_HANDLER(st0016_rom_bank_w)
st0016_rom_bank=data;
}
-READ8_HANDLER(st0016_dma_r);
-
static ADDRESS_MAP_START( st0016_io, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0xbf) AM_READ(st0016_vregs_r) AM_WRITE(st0016_vregs_w) /* video/crt regs ? */
diff --git a/src/mame/drivers/stadhero.c b/src/mame/drivers/stadhero.c
index 2c0807e1d6a..86c9139c0d8 100644
--- a/src/mame/drivers/stadhero.c
+++ b/src/mame/drivers/stadhero.c
@@ -12,18 +12,7 @@
#include "sound/2203intf.h"
#include "sound/3812intf.h"
#include "sound/okim6295.h"
-
-/* Video emulation definitions */
-VIDEO_START( stadhero );
-VIDEO_UPDATE( stadhero );
-
-extern UINT16 *stadhero_pf1_data;
-extern UINT16 *stadhero_pf2_control_0;
-extern UINT16 *stadhero_pf2_control_1;
-
-WRITE16_HANDLER( stadhero_pf1_data_w );
-READ16_HANDLER( stadhero_pf2_data_r );
-WRITE16_HANDLER( stadhero_pf2_data_w );
+#include "includes/stadhero.h"
/******************************************************************************/
diff --git a/src/mame/drivers/strnskil.c b/src/mame/drivers/strnskil.c
index d99965c1ac6..3ac9aeb355a 100644
--- a/src/mame/drivers/strnskil.c
+++ b/src/mame/drivers/strnskil.c
@@ -18,20 +18,10 @@ Notes:
#include "cpu/z80/z80.h"
#include "deprecat.h"
#include "sound/sn76496.h"
+#include "includes/strnskil.h"
/****************************************************************************/
-WRITE8_HANDLER( strnskil_videoram_w );
-WRITE8_HANDLER( strnskil_scrl_ctrl_w );
-
-PALETTE_INIT( strnskil );
-VIDEO_START( strnskil );
-VIDEO_UPDATE( strnskil );
-
-extern UINT8 *strnskil_xscroll;
-
-
-
static READ8_HANDLER( strnskil_d800_r )
{
/* bit0: interrupt type?, bit1: CPU2 busack? */
diff --git a/src/mame/drivers/superchs.c b/src/mame/drivers/superchs.c
index 1590a6cf971..b302a85aa35 100644
--- a/src/mame/drivers/superchs.c
+++ b/src/mame/drivers/superchs.c
@@ -42,10 +42,7 @@
#include "audio/taito_en.h"
#include "superchs.lh"
-
-
-VIDEO_START( superchs );
-VIDEO_UPDATE( superchs );
+#include "includes/superchs.h"
static UINT16 coin_word;
static UINT32 *superchs_ram;
diff --git a/src/mame/drivers/superqix.c b/src/mame/drivers/superqix.c
index 24e063dd9b5..7aeedeb31e2 100644
--- a/src/mame/drivers/superqix.c
+++ b/src/mame/drivers/superqix.c
@@ -111,24 +111,7 @@ DSW2 stored @ $f237
#include "cpu/mcs51/mcs51.h"
#include "sound/ay8910.h"
#include "sound/samples.h"
-
-
-extern UINT8 *superqix_videoram;
-extern UINT8 *superqix_bitmapram,*superqix_bitmapram2;
-extern int pbillian_show_power;
-
-
-WRITE8_HANDLER( superqix_videoram_w );
-WRITE8_HANDLER( superqix_bitmapram_w );
-WRITE8_HANDLER( superqix_bitmapram2_w );
-WRITE8_HANDLER( pbillian_0410_w );
-WRITE8_HANDLER( superqix_0410_w );
-
-VIDEO_START( pbillian );
-VIDEO_UPDATE( pbillian );
-VIDEO_START( superqix );
-VIDEO_UPDATE( superqix );
-
+#include "includes/superqix.h"
/* pbillian sample playback */
static INT16 *samplebuf;
diff --git a/src/mame/drivers/suprloco.c b/src/mame/drivers/suprloco.c
index cef0621c774..17891feb8b0 100644
--- a/src/mame/drivers/suprloco.c
+++ b/src/mame/drivers/suprloco.c
@@ -17,18 +17,7 @@ TODO:
#include "cpu/z80/z80.h"
#include "machine/segacrpt.h"
#include "sound/sn76496.h"
-
-extern UINT8 *suprloco_videoram;
-extern UINT8 *suprloco_scrollram;
-
-PALETTE_INIT( suprloco );
-VIDEO_START( suprloco );
-VIDEO_UPDATE( suprloco );
-WRITE8_HANDLER( suprloco_videoram_w );
-WRITE8_HANDLER( suprloco_scrollram_w );
-WRITE8_HANDLER( suprloco_control_w );
-READ8_HANDLER( suprloco_control_r );
-
+#include "includes/suprloco.h"
static WRITE8_HANDLER( suprloco_soundport_w )
{
diff --git a/src/mame/drivers/tagteam.c b/src/mame/drivers/tagteam.c
index 894371c7199..fa36948aec7 100644
--- a/src/mame/drivers/tagteam.c
+++ b/src/mame/drivers/tagteam.c
@@ -29,22 +29,7 @@ TODO:
#include "cpu/m6502/m6502.h"
#include "sound/ay8910.h"
#include "sound/dac.h"
-
-extern UINT8 *tagteam_videoram;
-extern UINT8 *tagteam_colorram;
-
-extern WRITE8_HANDLER( tagteam_videoram_w );
-extern WRITE8_HANDLER( tagteam_colorram_w );
-extern READ8_HANDLER( tagteam_mirrorvideoram_r );
-extern WRITE8_HANDLER( tagteam_mirrorvideoram_w );
-extern READ8_HANDLER( tagteam_mirrorcolorram_r );
-extern WRITE8_HANDLER( tagteam_mirrorcolorram_w );
-extern WRITE8_HANDLER( tagteam_control_w );
-extern WRITE8_HANDLER( tagteam_flipscreen_w );
-
-extern PALETTE_INIT( tagteam );
-extern VIDEO_START( tagteam );
-extern VIDEO_UPDATE( tagteam );
+#include "includes/tagteam.h"
static WRITE8_HANDLER( sound_command_w )
{
diff --git a/src/mame/drivers/taitojc.c b/src/mame/drivers/taitojc.c
index 86a25146dd6..a589ebccba7 100644
--- a/src/mame/drivers/taitojc.c
+++ b/src/mame/drivers/taitojc.c
@@ -359,8 +359,6 @@ Notes:
#include "audio/taito_en.h"
#include "includes/taitojc.h"
-extern UINT32 *f3_shared_ram;
-
#define POLYGON_FIFO_SIZE 100000
static READ32_HANDLER( taitojc_palette_r )
diff --git a/src/mame/drivers/tankbatt.c b/src/mame/drivers/tankbatt.c
index 77488f998b1..9d71e32265f 100644
--- a/src/mame/drivers/tankbatt.c
+++ b/src/mame/drivers/tankbatt.c
@@ -59,19 +59,11 @@ Known issues:
#include "emu.h"
#include "cpu/m6502/m6502.h"
#include "sound/samples.h"
-
-extern UINT8 *tankbatt_bulletsram;
-extern size_t tankbatt_bulletsram_size;
+#include "includes/tankbatt.h"
static int tankbatt_nmi_enable; /* No need to init this - the game will set it on reset */
static int tankbatt_sound_enable;
-extern WRITE8_HANDLER( tankbatt_videoram_w );
-
-extern PALETTE_INIT( tankbatt );
-extern VIDEO_START( tankbatt );
-extern VIDEO_UPDATE( tankbatt );
-
static WRITE8_HANDLER( tankbatt_led_w )
{
set_led_status(space->machine, offset,data & 1);
diff --git a/src/mame/drivers/tankbust.c b/src/mame/drivers/tankbust.c
index d7c9a02ddb3..35f0ee28fc6 100644
--- a/src/mame/drivers/tankbust.c
+++ b/src/mame/drivers/tankbust.c
@@ -19,24 +19,7 @@ To do:
#include "emu.h"
#include "cpu/z80/z80.h"
#include "sound/ay8910.h"
-
-
-VIDEO_START( tankbust );
-VIDEO_UPDATE( tankbust );
-
-extern UINT8 *tankbust_txtram;
-extern UINT8 *tankbust_videoram;
-extern UINT8 *tankbust_colorram;
-
-WRITE8_HANDLER( tankbust_background_videoram_w );
-READ8_HANDLER ( tankbust_background_videoram_r );
-WRITE8_HANDLER( tankbust_background_colorram_w );
-READ8_HANDLER ( tankbust_background_colorram_r );
-WRITE8_HANDLER( tankbust_txtram_w );
-READ8_HANDLER ( tankbust_txtram_r );
-
-WRITE8_HANDLER( tankbust_xscroll_w );
-WRITE8_HANDLER( tankbust_yscroll_w );
+#include "includes/tankbust.h"
//port A of ay8910#0
diff --git a/src/mame/drivers/targeth.c b/src/mame/drivers/targeth.c
index 1b8111ffc93..834a3aa3e3f 100644
--- a/src/mame/drivers/targeth.c
+++ b/src/mame/drivers/targeth.c
@@ -12,16 +12,7 @@ The DS5002FP has 32KB undumped gameplay code making the game unplayable :_(
#include "deprecat.h"
#include "cpu/m68000/m68000.h"
#include "sound/okim6295.h"
-
-extern UINT16 *targeth_vregs;
-extern UINT16 *targeth_videoram;
-extern UINT16 *targeth_spriteram;
-
-/* from video/targeth.c */
-WRITE16_HANDLER( targeth_vram_w );
-VIDEO_START( targeth );
-VIDEO_UPDATE( targeth );
-
+#include "includes/targeth.h"
static const gfx_layout tilelayout16_0x080000 =
{
diff --git a/src/mame/drivers/tbowl.c b/src/mame/drivers/tbowl.c
index 26d2444cdf9..07888fee697 100644
--- a/src/mame/drivers/tbowl.c
+++ b/src/mame/drivers/tbowl.c
@@ -17,27 +17,12 @@ Might be some priority glitches
#include "sound/3812intf.h"
#include "sound/msm5205.h"
#include "rendlay.h"
+#include "includes/tbowl.h"
static int adpcm_pos[2],adpcm_end[2];
static int adpcm_data[2];
static UINT8 *shared_ram;
-/* in video/tbowl.c */
-extern UINT8 *tbowl_txvideoram, *tbowl_bgvideoram, *tbowl_bg2videoram;
-extern UINT8 *tbowl_spriteram;
-
-WRITE8_HANDLER (tbowl_bg2videoram_w);
-WRITE8_HANDLER (tbowl_bgvideoram_w);
-WRITE8_HANDLER (tbowl_txvideoram_w);
-
-WRITE8_HANDLER (tbowl_bg2xscroll_lo); WRITE8_HANDLER (tbowl_bg2xscroll_hi);
-WRITE8_HANDLER (tbowl_bg2yscroll_lo); WRITE8_HANDLER (tbowl_bg2yscroll_hi);
-WRITE8_HANDLER (tbowl_bgxscroll_lo); WRITE8_HANDLER (tbowl_bgxscroll_hi);
-WRITE8_HANDLER (tbowl_bgyscroll_lo); WRITE8_HANDLER (tbowl_bgyscroll_hi);
-
-VIDEO_START( tbowl );
-VIDEO_UPDATE( tbowl );
-
static WRITE8_HANDLER( tbowl_coin_counter_w )
{
coin_counter_w(space->machine, 0, data & 1);
diff --git a/src/mame/drivers/tceptor.c b/src/mame/drivers/tceptor.c
index db02e05b41b..dbd3e809b9f 100644
--- a/src/mame/drivers/tceptor.c
+++ b/src/mame/drivers/tceptor.c
@@ -17,22 +17,7 @@
#include "sound/namco.h"
#include "rendlay.h"
#include "tceptor2.lh"
-
-PALETTE_INIT( tceptor );
-VIDEO_START( tceptor );
-VIDEO_UPDATE( tceptor );
-VIDEO_EOF( tceptor );
-
-WRITE8_HANDLER( tceptor_tile_ram_w );
-WRITE8_HANDLER( tceptor_tile_attr_w );
-WRITE8_HANDLER( tceptor_bg_ram_w );
-WRITE8_HANDLER( tceptor_bg_scroll_w );
-
-extern UINT8 *tceptor_tile_ram;
-extern UINT8 *tceptor_tile_attr;
-extern UINT8 *tceptor_bg_ram;
-extern UINT16 *tceptor_sprite_ram;
-
+#include "includes/tceptor.h"
/*******************************************************************/
diff --git a/src/mame/drivers/tecmo.c b/src/mame/drivers/tecmo.c
index 2b48ea5cced..7adaf02a5cb 100644
--- a/src/mame/drivers/tecmo.c
+++ b/src/mame/drivers/tecmo.c
@@ -49,20 +49,7 @@ f80b ????
#include "cpu/z80/z80.h"
#include "sound/3812intf.h"
#include "sound/msm5205.h"
-
-
-extern int tecmo_video_type;
-extern UINT8 *tecmo_txvideoram,*tecmo_fgvideoram,*tecmo_bgvideoram;
-
-WRITE8_HANDLER( tecmo_txvideoram_w );
-WRITE8_HANDLER( tecmo_fgvideoram_w );
-WRITE8_HANDLER( tecmo_bgvideoram_w );
-WRITE8_HANDLER( tecmo_fgscroll_w );
-WRITE8_HANDLER( tecmo_bgscroll_w );
-WRITE8_HANDLER( tecmo_flipscreen_w );
-
-VIDEO_START( tecmo );
-VIDEO_UPDATE( tecmo );
+#include "includes/tecmo.h"
static int adpcm_pos,adpcm_end;
static int adpcm_data;
diff --git a/src/mame/drivers/tecmo16.c b/src/mame/drivers/tecmo16.c
index 85951d372b0..797e8c2f192 100644
--- a/src/mame/drivers/tecmo16.c
+++ b/src/mame/drivers/tecmo16.c
@@ -28,32 +28,7 @@ Notes:
#include "cpu/z80/z80.h"
#include "sound/2151intf.h"
#include "sound/okim6295.h"
-
-
-extern UINT16 *tecmo16_videoram;
-extern UINT16 *tecmo16_colorram;
-extern UINT16 *tecmo16_videoram2;
-extern UINT16 *tecmo16_colorram2;
-extern UINT16 *tecmo16_charram;
-
-WRITE16_HANDLER( tecmo16_videoram_w );
-WRITE16_HANDLER( tecmo16_colorram_w );
-WRITE16_HANDLER( tecmo16_videoram2_w );
-WRITE16_HANDLER( tecmo16_colorram2_w );
-WRITE16_HANDLER( tecmo16_charram_w );
-WRITE16_HANDLER( tecmo16_flipscreen_w );
-
-WRITE16_HANDLER( tecmo16_scroll_x_w );
-WRITE16_HANDLER( tecmo16_scroll_y_w );
-WRITE16_HANDLER( tecmo16_scroll2_x_w );
-WRITE16_HANDLER( tecmo16_scroll2_y_w );
-WRITE16_HANDLER( tecmo16_scroll_char_x_w );
-WRITE16_HANDLER( tecmo16_scroll_char_y_w );
-
-VIDEO_START( fstarfrc );
-VIDEO_START( ginkun );
-VIDEO_START( riot );
-VIDEO_UPDATE( tecmo16 );
+#include "includes/tecmo16.h"
/******************************************************************************/
diff --git a/src/mame/drivers/tehkanwc.c b/src/mame/drivers/tehkanwc.c
index 12fe33f4d3d..d2160b7a89b 100644
--- a/src/mame/drivers/tehkanwc.c
+++ b/src/mame/drivers/tehkanwc.c
@@ -93,24 +93,7 @@ TO DO :
#include "sound/ay8910.h"
#include "sound/msm5205.h"
#include "gridiron.lh"
-
-extern UINT8 *tehkanwc_videoram;
-extern UINT8 *tehkanwc_colorram;
-extern UINT8 *tehkanwc_videoram2;
-
-extern WRITE8_HANDLER( tehkanwc_videoram_w );
-extern WRITE8_HANDLER( tehkanwc_colorram_w );
-extern WRITE8_HANDLER( tehkanwc_videoram2_w );
-extern WRITE8_HANDLER( tehkanwc_scroll_x_w );
-extern WRITE8_HANDLER( tehkanwc_scroll_y_w );
-extern WRITE8_HANDLER( tehkanwc_flipscreen_x_w );
-extern WRITE8_HANDLER( tehkanwc_flipscreen_y_w );
-extern WRITE8_HANDLER( gridiron_led0_w );
-extern WRITE8_HANDLER( gridiron_led1_w );
-
-extern VIDEO_START( tehkanwc );
-extern VIDEO_UPDATE( tehkanwc );
-
+#include "includes/tehkanwc.h"
static WRITE8_HANDLER( sub_cpu_halt_w )
{
diff --git a/src/mame/drivers/terracre.c b/src/mame/drivers/terracre.c
index c6760777750..64615150eea 100644
--- a/src/mame/drivers/terracre.c
+++ b/src/mame/drivers/terracre.c
@@ -87,22 +87,12 @@ AT-2
#include "sound/dac.h"
#include "sound/2203intf.h"
#include "sound/3526intf.h"
+#include "includes/terracre.h"
static const UINT16 *mpProtData;
static UINT8 mAmazonProtCmd;
static UINT8 mAmazonProtReg[6];
-extern UINT16 *amazon_videoram;
-
-PALETTE_INIT( amazon );
-WRITE16_HANDLER( amazon_background_w );
-WRITE16_HANDLER( amazon_foreground_w );
-WRITE16_HANDLER( amazon_scrolly_w );
-WRITE16_HANDLER( amazon_scrollx_w );
-WRITE16_HANDLER( amazon_flipscreen_w );
-VIDEO_START( amazon );
-VIDEO_UPDATE( amazon );
-
static const UINT16 mAmazonProtData[] =
{
/* default high scores (0x40db4) - wrong data ? */
diff --git a/src/mame/drivers/thepit.c b/src/mame/drivers/thepit.c
index 8e8bf994e71..9d56671fef5 100644
--- a/src/mame/drivers/thepit.c
+++ b/src/mame/drivers/thepit.c
@@ -117,6 +117,7 @@ HT-01B
#include "emu.h"
#include "cpu/z80/z80.h"
#include "sound/ay8910.h"
+#include "includes/thepit.h"
#define MASTER_CLOCK (18432000)
@@ -134,25 +135,6 @@ HT-01B
#define VBSTART (224+16)
-
-
-extern UINT8 *thepit_videoram;
-extern UINT8 *thepit_colorram;
-extern UINT8 *thepit_attributesram;
-extern UINT8 *thepit_spriteram;
-extern size_t thepit_spriteram_size;
-
-PALETTE_INIT( thepit );
-PALETTE_INIT( suprmous );
-VIDEO_START( thepit );
-VIDEO_UPDATE( thepit );
-WRITE8_HANDLER( thepit_videoram_w );
-WRITE8_HANDLER( thepit_colorram_w );
-WRITE8_HANDLER( thepit_flip_screen_x_w );
-WRITE8_HANDLER( thepit_flip_screen_y_w );
-READ8_HANDLER( thepit_input_port_0_r );
-WRITE8_HANDLER( intrepid_graphics_bank_w );
-
static READ8_HANDLER( thepit_colorram_r )
{
return thepit_colorram[offset];
diff --git a/src/mame/drivers/thief.c b/src/mame/drivers/thief.c
index 5eac44348a3..95d962882e9 100644
--- a/src/mame/drivers/thief.c
+++ b/src/mame/drivers/thief.c
@@ -27,28 +27,13 @@ Credits:
#include "sound/ay8910.h"
#include "sound/samples.h"
#include "video/tms9927.h"
+#include "includes/thief.h"
#define MASTER_CLOCK XTAL_20MHz
static UINT8 thief_input_select;
-READ8_HANDLER( thief_context_ram_r );
-WRITE8_HANDLER( thief_context_ram_w );
-WRITE8_HANDLER( thief_context_bank_w );
-WRITE8_HANDLER( thief_video_control_w );
-WRITE8_HANDLER( thief_color_map_w );
-WRITE8_HANDLER( thief_color_plane_w );
-READ8_HANDLER( thief_videoram_r );
-WRITE8_HANDLER( thief_videoram_w );
-WRITE8_HANDLER( thief_blit_w );
-READ8_HANDLER( thief_coprocessor_r );
-WRITE8_HANDLER( thief_coprocessor_w );
-
-VIDEO_START( thief );
-VIDEO_UPDATE( thief );
-
-
static INTERRUPT_GEN( thief_interrupt )
{
/* SLAM switch causes an NMI if it's pressed */
diff --git a/src/mame/drivers/thoop2.c b/src/mame/drivers/thoop2.c
index c73d11e8832..f76f849455b 100644
--- a/src/mame/drivers/thoop2.c
+++ b/src/mame/drivers/thoop2.c
@@ -16,16 +16,7 @@ pf: but some gameplay bugs - sprite positioning is incorrect, no enemies, jump a
#include "emu.h"
#include "cpu/m68000/m68000.h"
#include "sound/okim6295.h"
-
-extern UINT16 *thoop2_vregs;
-extern UINT16 *thoop2_videoram;
-extern UINT16 *thoop2_spriteram;
-
-/* from video/thoop2.c */
-WRITE16_HANDLER( thoop2_vram_w );
-VIDEO_START( thoop2 );
-VIDEO_UPDATE( thoop2 );
-
+#include "includes/thoop2.h"
static const gfx_layout thoop2_tilelayout =
{
diff --git a/src/mame/drivers/tigeroad.c b/src/mame/drivers/tigeroad.c
index e405c4caf47..4425d88d841 100644
--- a/src/mame/drivers/tigeroad.c
+++ b/src/mame/drivers/tigeroad.c
@@ -24,14 +24,7 @@ Memory Overview:
#include "cpu/z80/z80.h"
#include "sound/2203intf.h"
#include "sound/msm5205.h"
-
-
-extern WRITE16_HANDLER( tigeroad_videoram_w );
-extern WRITE16_HANDLER( tigeroad_videoctrl_w );
-extern WRITE16_HANDLER( tigeroad_scroll_w );
-extern VIDEO_START( tigeroad );
-extern VIDEO_UPDATE( tigeroad );
-extern VIDEO_EOF( tigeroad );
+#include "includes/tigeroad.h"
static UINT16 *ram16;
diff --git a/src/mame/drivers/timelimt.c b/src/mame/drivers/timelimt.c
index 27572e1a297..e31a15214f9 100644
--- a/src/mame/drivers/timelimt.c
+++ b/src/mame/drivers/timelimt.c
@@ -13,20 +13,7 @@ Notes:
#include "emu.h"
#include "cpu/z80/z80.h"
#include "sound/ay8910.h"
-
-/* from video */
-extern VIDEO_START( timelimt );
-extern PALETTE_INIT( timelimt );
-extern VIDEO_UPDATE( timelimt );
-
-extern WRITE8_HANDLER( timelimt_videoram_w );
-extern WRITE8_HANDLER( timelimt_bg_videoram_w );
-extern WRITE8_HANDLER( timelimt_scroll_y_w );
-extern WRITE8_HANDLER( timelimt_scroll_x_msb_w );
-extern WRITE8_HANDLER( timelimt_scroll_x_lsb_w );
-
-extern UINT8 *timelimt_bg_videoram;
-extern size_t timelimt_bg_videoram_size;
+#include "includes/timelimt.h"
/***************************************************************************/
diff --git a/src/mame/drivers/toki.c b/src/mame/drivers/toki.c
index 228ffa34837..0d272263e74 100644
--- a/src/mame/drivers/toki.c
+++ b/src/mame/drivers/toki.c
@@ -41,21 +41,7 @@ for now. Even at 12 this slowdown still happens a little.
#include "sound/3812intf.h"
#include "sound/msm5205.h"
#include "sound/3812intf.h"
-
-extern UINT16 *toki_background1_videoram16;
-extern UINT16 *toki_background2_videoram16;
-extern UINT16 *toki_scrollram16;
-
-VIDEO_START( toki );
-VIDEO_EOF( toki );
-VIDEO_EOF( tokib );
-VIDEO_UPDATE( toki );
-VIDEO_UPDATE( tokib );
-WRITE16_HANDLER( toki_background1_videoram16_w );
-WRITE16_HANDLER( toki_background2_videoram16_w );
-WRITE16_HANDLER( toki_control_w );
-WRITE16_HANDLER( toki_foreground_videoram16_w );
-
+#include "includes/toki.h"
static WRITE16_HANDLER( tokib_soundcommand16_w )
{
diff --git a/src/mame/drivers/tp84.c b/src/mame/drivers/tp84.c
index 09c8c79978b..705de99967a 100644
--- a/src/mame/drivers/tp84.c
+++ b/src/mame/drivers/tp84.c
@@ -70,24 +70,7 @@ C004 76489 #4 trigger
#include "sound/sn76496.h"
#include "sound/flt_rc.h"
#include "includes/konamipt.h"
-
-extern UINT8 *tp84_bg_videoram;
-extern UINT8 *tp84_bg_colorram;
-extern UINT8 *tp84_fg_videoram;
-extern UINT8 *tp84_fg_colorram;
-extern UINT8 *tp84_spriteram;
-extern UINT8 *tp84_scroll_x;
-extern UINT8 *tp84_scroll_y;
-extern UINT8 *tp84_palette_bank;
-extern UINT8 *tp84_flipscreen_x;
-extern UINT8 *tp84_flipscreen_y;
-
-WRITE8_HANDLER( tp84_spriteram_w );
-READ8_HANDLER( tp84_scanline_r );
-
-PALETTE_INIT( tp84 );
-VIDEO_START( tp84 );
-VIDEO_UPDATE( tp84 );
+#include "includes/tp84.h"
static cpu_device *audiocpu;
diff --git a/src/mame/drivers/truco.c b/src/mame/drivers/truco.c
index be3317d25a3..d0ef968508e 100644
--- a/src/mame/drivers/truco.c
+++ b/src/mame/drivers/truco.c
@@ -18,13 +18,10 @@
#include "emu.h"
#include "cpu/m6809/m6809.h"
#include "sound/dac.h"
+#include "includes/truco.h"
static UINT8 *battery_ram;
-/* from video */
-VIDEO_UPDATE( truco );
-PALETTE_INIT( truco );
-
/***************************************************************************/
diff --git a/src/mame/drivers/trucocl.c b/src/mame/drivers/trucocl.c
index 829304a1a86..f4895cc62f5 100644
--- a/src/mame/drivers/trucocl.c
+++ b/src/mame/drivers/trucocl.c
@@ -35,17 +35,7 @@ Daughterboard: Custom made, plugged in the 2 roms and Z80 mainboard sockets.
#include "emu.h"
#include "cpu/z80/z80.h"
#include "sound/dac.h"
-
-/* from video */
-extern UINT8 *trucocl_videoram;
-extern UINT8 *trucocl_colorram;
-
-WRITE8_HANDLER( trucocl_videoram_w );
-WRITE8_HANDLER( trucocl_colorram_w );
-PALETTE_INIT( trucocl );
-VIDEO_START( trucocl );
-VIDEO_UPDATE( trucocl );
-
+#include "includes/trucocl.h"
static WRITE8_HANDLER( irq_enable_w )
{
diff --git a/src/mame/drivers/tryout.c b/src/mame/drivers/tryout.c
index 2a2e3f53949..14f193ccb04 100644
--- a/src/mame/drivers/tryout.c
+++ b/src/mame/drivers/tryout.c
@@ -23,18 +23,7 @@ $208 strikes count
#include "emu.h"
#include "cpu/m6502/m6502.h"
#include "sound/2203intf.h"
-
-extern UINT8 *tryout_gfx_control;
-
-extern READ8_HANDLER( tryout_vram_r );
-extern WRITE8_HANDLER( tryout_videoram_w );
-extern WRITE8_HANDLER( tryout_vram_w );
-extern WRITE8_HANDLER( tryout_vram_bankswitch_w );
-extern WRITE8_HANDLER( tryout_flipscreen_w );
-
-extern PALETTE_INIT( tryout );
-extern VIDEO_START( tryout );
-extern VIDEO_UPDATE( tryout );
+#include "includes/tryout.h"
static WRITE8_HANDLER( tryout_nmi_ack_w )
{
diff --git a/src/mame/drivers/tsamurai.c b/src/mame/drivers/tsamurai.c
index cd975667de9..318738f78af 100644
--- a/src/mame/drivers/tsamurai.c
+++ b/src/mame/drivers/tsamurai.c
@@ -46,27 +46,7 @@ TODO:
#include "cpu/z80/z80.h"
#include "sound/ay8910.h"
#include "sound/dac.h"
-
-extern UINT8 *tsamurai_videoram;
-extern UINT8 *tsamurai_colorram;
-extern UINT8 *tsamurai_bg_videoram;
-
-WRITE8_HANDLER( vsgongf_color_w );
-
-WRITE8_HANDLER( tsamurai_bgcolor_w );
-WRITE8_HANDLER( tsamurai_textbank1_w );
-WRITE8_HANDLER( tsamurai_textbank2_w );
-
-WRITE8_HANDLER( tsamurai_scrolly_w );
-WRITE8_HANDLER( tsamurai_scrollx_w );
-VIDEO_UPDATE( tsamurai );
-WRITE8_HANDLER( tsamurai_bg_videoram_w );
-WRITE8_HANDLER( tsamurai_fg_videoram_w );
-WRITE8_HANDLER( tsamurai_fg_colorram_w );
-extern VIDEO_START( tsamurai );
-
-extern VIDEO_START( vsgongf );
-extern VIDEO_UPDATE( vsgongf );
+#include "includes/tsamurai.h"
static int nmi_enabled;
static int sound_command1, sound_command2, sound_command3;
diff --git a/src/mame/drivers/undrfire.c b/src/mame/drivers/undrfire.c
index 38ad7616352..a1ab499a899 100644
--- a/src/mame/drivers/undrfire.c
+++ b/src/mame/drivers/undrfire.c
@@ -193,16 +193,12 @@ Board contains only 29 ROMs and not much else.
#include "sound/es5506.h"
#include "includes/taito_f3.h"
#include "audio/taito_en.h"
+#include "includes/undrfire.h"
#include "cbombers.lh"
-VIDEO_START( undrfire );
-VIDEO_UPDATE( undrfire );
-VIDEO_UPDATE( cbombers );
-
static UINT16 coin_word;
static UINT16 port_sel = 0;
-extern UINT16 undrfire_rotate_ctrl[8];
static int frame_counter=0;
static UINT32 *undrfire_ram; /* will be read in video for gun target calcs */
diff --git a/src/mame/drivers/usgames.c b/src/mame/drivers/usgames.c
index 070f24f8a0c..058a5b2b1f3 100644
--- a/src/mame/drivers/usgames.c
+++ b/src/mame/drivers/usgames.c
@@ -27,16 +27,7 @@ Sound: AY-3-8912
#include "cpu/m6809/m6809.h"
#include "video/mc6845.h"
#include "sound/ay8910.h"
-
-/* video */
-WRITE8_HANDLER( usgames_videoram_w );
-WRITE8_HANDLER( usgames_charram_w );
-VIDEO_START(usgames);
-PALETTE_INIT(usgames);
-VIDEO_UPDATE(usgames);
-
-
-extern UINT8 *usgames_videoram,*usgames_charram;
+#include "includes/usgames.h"
static WRITE8_HANDLER( usgames_rombank_w )
diff --git a/src/mame/drivers/vigilant.c b/src/mame/drivers/vigilant.c
index bf7c4b7d243..0c32ed57aed 100644
--- a/src/mame/drivers/vigilant.c
+++ b/src/mame/drivers/vigilant.c
@@ -21,17 +21,7 @@ Buccaneers has a 5.6888 Mhz and a 18.432 Mhz OSC
#include "sound/dac.h"
#include "sound/2203intf.h"
#include "sound/2151intf.h"
-
-/* video/vigilant.c */
-VIDEO_START( vigilant );
-VIDEO_RESET( vigilant );
-WRITE8_HANDLER( vigilant_paletteram_w );
-WRITE8_HANDLER( vigilant_horiz_scroll_w );
-WRITE8_HANDLER( vigilant_rear_horiz_scroll_w );
-WRITE8_HANDLER( vigilant_rear_color_w );
-VIDEO_UPDATE( vigilant );
-VIDEO_UPDATE( kikcubic );
-
+#include "includes/vigilant.h"
static WRITE8_HANDLER( vigilant_bank_select_w )
{
diff --git a/src/mame/drivers/vulgus.c b/src/mame/drivers/vulgus.c
index 58c894f6817..d60cf472ee6 100644
--- a/src/mame/drivers/vulgus.c
+++ b/src/mame/drivers/vulgus.c
@@ -43,20 +43,7 @@ c001 YM2203 #2 write
#include "cpu/z80/z80.h"
#include "deprecat.h"
#include "sound/ay8910.h"
-
-
-extern UINT8 *vulgus_fgvideoram;
-extern UINT8 *vulgus_bgvideoram;
-extern UINT8 *vulgus_scroll_low,*vulgus_scroll_high;
-
-WRITE8_HANDLER( vulgus_fgvideoram_w );
-WRITE8_HANDLER( vulgus_bgvideoram_w );
-WRITE8_HANDLER( vulgus_c804_w );
-WRITE8_HANDLER( vulgus_palette_bank_w );
-VIDEO_START( vulgus );
-PALETTE_INIT( vulgus );
-VIDEO_UPDATE( vulgus );
-
+#include "includes/vulgus.h"
static INTERRUPT_GEN( vulgus_interrupt )
diff --git a/src/mame/drivers/wc90b.c b/src/mame/drivers/wc90b.c
index 5fe0b9f14d5..4dd549bd8ec 100644
--- a/src/mame/drivers/wc90b.c
+++ b/src/mame/drivers/wc90b.c
@@ -86,7 +86,7 @@ Noted added by ClawGrip 28-Mar-2008:
#include "cpu/z80/z80.h"
#include "sound/2203intf.h"
#include "sound/msm5205.h"
-
+#include "includes/wc90b.h"
#define TEST_DIPS false /* enable to test unmapped dip switches */
@@ -95,22 +95,6 @@ Noted added by ClawGrip 28-Mar-2008:
#define YM2203_CLOCK XTAL_20MHz/16
#define MSM5205_CLOCK XTAL_384kHz
-extern UINT8 *wc90b_fgvideoram,*wc90b_bgvideoram,*wc90b_txvideoram;
-
-extern UINT8 *wc90b_scroll1x;
-extern UINT8 *wc90b_scroll2x;
-
-extern UINT8 *wc90b_scroll1y;
-extern UINT8 *wc90b_scroll2y;
-
-extern UINT8 *wc90b_scroll_x_lo;
-
-VIDEO_START( wc90b );
-WRITE8_HANDLER( wc90b_bgvideoram_w );
-WRITE8_HANDLER( wc90b_fgvideoram_w );
-WRITE8_HANDLER( wc90b_txvideoram_w );
-VIDEO_UPDATE( wc90b );
-
static int msm5205next;
static WRITE8_HANDLER( wc90b_bankswitch_w )
diff --git a/src/mame/drivers/wecleman.c b/src/mame/drivers/wecleman.c
index 17f45695807..ccdbb5f4821 100644
--- a/src/mame/drivers/wecleman.c
+++ b/src/mame/drivers/wecleman.c
@@ -277,8 +277,8 @@ TODO:
#include "cpu/m6809/m6809.h"
#include "sound/2151intf.h"
#include "sound/k007232.h"
-
#include "wecleman.lh"
+#include "includes/wecleman.h"
/* Variables only used here: */
static UINT16 *blitter_regs;
@@ -289,25 +289,6 @@ static int spr_color_offs;
/* Variables that video has acces to: */
int wecleman_selected_ip, wecleman_irqctrl;
-/* Variables defined in video: */
-extern UINT16 *wecleman_videostatus;
-extern UINT16 *wecleman_pageram, *wecleman_txtram, *wecleman_roadram;
-extern size_t wecleman_roadram_size;
-
-/* Functions defined in video: */
-WRITE16_HANDLER( hotchase_paletteram16_SBGRBBBBGGGGRRRR_word_w );
-WRITE16_HANDLER( wecleman_paletteram16_SSSSBBBBGGGGRRRR_word_w );
-WRITE16_HANDLER( wecleman_videostatus_w );
-WRITE16_HANDLER( wecleman_pageram_w );
-WRITE16_HANDLER( wecleman_txtram_w );
-VIDEO_UPDATE( wecleman );
-VIDEO_START( wecleman );
-VIDEO_UPDATE( hotchase );
-VIDEO_START( hotchase );
-
-extern void hotchase_zoom_callback_0(running_machine *machine, int *code,int *color,int *flags);
-extern void hotchase_zoom_callback_1(running_machine *machine, int *code,int *color,int *flags);
-
/***************************************************************************
Common Routines
***************************************************************************/
diff --git a/src/mame/drivers/wiz.c b/src/mame/drivers/wiz.c
index 9bc5f595077..6977665be5d 100644
--- a/src/mame/drivers/wiz.c
+++ b/src/mame/drivers/wiz.c
@@ -162,23 +162,7 @@ Stephh's notes (based on the games Z80 code and some tests) :
#include "deprecat.h"
#include "sound/ay8910.h"
#include "sound/discrete.h"
-
-extern UINT8 *wiz_videoram2;
-extern UINT8 *wiz_colorram2;
-extern UINT8 *wiz_attributesram;
-extern UINT8 *wiz_attributesram2;
-extern UINT8 *wiz_sprite_bank;
-
-WRITE8_HANDLER( wiz_char_bank_select_w );
-WRITE8_HANDLER( wiz_palettebank_w );
-WRITE8_HANDLER( wiz_bgcolor_w );
-WRITE8_HANDLER( wiz_flipx_w );
-WRITE8_HANDLER( wiz_flipy_w );
-VIDEO_START( wiz );
-PALETTE_INIT( wiz );
-VIDEO_UPDATE( wiz );
-VIDEO_UPDATE( stinger );
-VIDEO_UPDATE( kungfut );
+#include "includes/wiz.h"
#define STINGER_SHOT_EN1 NODE_01
#define STINGER_SHOT_EN2 NODE_02
diff --git a/src/mame/drivers/wolfpack.c b/src/mame/drivers/wolfpack.c
index cdc25a8fd21..6473b5a6197 100644
--- a/src/mame/drivers/wolfpack.c
+++ b/src/mame/drivers/wolfpack.c
@@ -7,29 +7,7 @@ Atari Wolf Pack (prototype) driver
#include "emu.h"
#include "cpu/m6502/m6502.h"
#include "sound/s14001a.h"
-
-extern int wolfpack_collision;
-
-extern UINT8* wolfpack_alpha_num_ram;
-
-PALETTE_INIT( wolfpack );
-VIDEO_UPDATE( wolfpack );
-VIDEO_START( wolfpack );
-VIDEO_EOF( wolfpack );
-
-WRITE8_HANDLER( wolfpack_video_invert_w );
-WRITE8_HANDLER( wolfpack_ship_reflect_w );
-WRITE8_HANDLER( wolfpack_pt_pos_select_w );
-WRITE8_HANDLER( wolfpack_pt_horz_w );
-WRITE8_HANDLER( wolfpack_pt_pic_w );
-WRITE8_HANDLER( wolfpack_ship_h_w );
-WRITE8_HANDLER( wolfpack_torpedo_pic_w );
-WRITE8_HANDLER( wolfpack_ship_size_w );
-WRITE8_HANDLER( wolfpack_ship_h_precess_w );
-WRITE8_HANDLER( wolfpack_ship_pic_w );
-WRITE8_HANDLER( wolfpack_torpedo_h_w );
-WRITE8_HANDLER( wolfpack_torpedo_v_w );
-
+#include "includes/wolfpack.h"
static TIMER_CALLBACK( periodic_callback )
{
diff --git a/src/mame/drivers/xain.c b/src/mame/drivers/xain.c
index 625ccf23d42..34ee9b16ae6 100644
--- a/src/mame/drivers/xain.c
+++ b/src/mame/drivers/xain.c
@@ -141,6 +141,7 @@ Updates by Bryan McPhail, 12/12/2004:
#include "cpu/m6809/m6809.h"
#include "cpu/m6805/m6805.h"
#include "sound/2203intf.h"
+#include "includes/xain.h"
#define MASTER_CLOCK XTAL_12MHz
#define CPU_CLOCK MASTER_CLOCK / 8
@@ -149,19 +150,6 @@ Updates by Bryan McPhail, 12/12/2004:
static int vblank;
-VIDEO_UPDATE( xain );
-VIDEO_START( xain );
-WRITE8_HANDLER( xain_scrollxP0_w );
-WRITE8_HANDLER( xain_scrollyP0_w );
-WRITE8_HANDLER( xain_scrollxP1_w );
-WRITE8_HANDLER( xain_scrollyP1_w );
-WRITE8_HANDLER( xain_charram_w );
-WRITE8_HANDLER( xain_bgram0_w );
-WRITE8_HANDLER( xain_bgram1_w );
-WRITE8_HANDLER( xain_flipscreen_w );
-
-extern UINT8 *xain_charram, *xain_bgram0, *xain_bgram1, xain_pri;
-
/* MCU */
static int from_main;
static int from_mcu;
diff --git a/src/mame/drivers/xorworld.c b/src/mame/drivers/xorworld.c
index 0403586537c..55885e94d8a 100644
--- a/src/mame/drivers/xorworld.c
+++ b/src/mame/drivers/xorworld.c
@@ -35,13 +35,7 @@ EEPROM chip: 93C46
#include "machine/eeprom.h"
#include "cpu/m68000/m68000.h"
#include "sound/saa1099.h"
-
-
-extern WRITE16_HANDLER(xorworld_videoram16_w);
-
-extern PALETTE_INIT( xorworld );
-extern VIDEO_START( xorworld );
-extern VIDEO_UPDATE( xorworld );
+#include "includes/xorworld.h"
/****************************************************************
diff --git a/src/mame/drivers/xxmissio.c b/src/mame/drivers/xxmissio.c
index 2f5e344c73b..f0d2c448d00 100644
--- a/src/mame/drivers/xxmissio.c
+++ b/src/mame/drivers/xxmissio.c
@@ -12,26 +12,10 @@ XX Mission (c) 1986 UPL
#include "cpu/z80/z80.h"
#include "deprecat.h"
#include "sound/2203intf.h"
-
-VIDEO_START( xxmissio );
-VIDEO_UPDATE( xxmissio );
-
-extern UINT8 *xxmissio_bgram;
-extern UINT8 *xxmissio_fgram;
-extern UINT8 *xxmissio_spriteram;
+#include "includes/xxmissio.h"
static UINT8 xxmissio_status;
-
-WRITE8_DEVICE_HANDLER( xxmissio_scroll_x_w );
-WRITE8_DEVICE_HANDLER( xxmissio_scroll_y_w );
-WRITE8_HANDLER( xxmissio_flipscreen_w );
-
-READ8_HANDLER( xxmissio_bgram_r );
-WRITE8_HANDLER( xxmissio_bgram_w );
-
-WRITE8_HANDLER( xxmissio_paletteram_w );
-
static WRITE8_HANDLER( xxmissio_bank_sel_w )
{
memory_set_bank(space->machine, "bank1", data & 7);
diff --git a/src/mame/drivers/zac2650.c b/src/mame/drivers/zac2650.c
index 2caa657fd2a..5155f7a27b9 100644
--- a/src/mame/drivers/zac2650.c
+++ b/src/mame/drivers/zac2650.c
@@ -13,16 +13,9 @@
#include "sound/s2636.h"
#include "tinv2650.lh"
+#include "includes/zac2650.h"
-extern UINT8 *zac2650_s2636_0_ram;
-WRITE8_HANDLER( tinvader_videoram_w );
static WRITE8_HANDLER( tinvader_sound_w );
-READ8_HANDLER( zac_s2636_r );
-WRITE8_HANDLER( zac_s2636_w );
-READ8_HANDLER( tinvader_port_0_r );
-
-VIDEO_START( tinvader );
-VIDEO_UPDATE( tinvader );
static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x17ff) AM_ROM
diff --git a/src/mame/drivers/zaccaria.c b/src/mame/drivers/zaccaria.c
index 1c86bf9b54e..114f19a1de0 100644
--- a/src/mame/drivers/zaccaria.c
+++ b/src/mame/drivers/zaccaria.c
@@ -45,17 +45,7 @@ Notes:
#include "sound/ay8910.h"
#include "sound/dac.h"
#include "sound/tms5220.h"
-
-
-extern UINT8 *zaccaria_videoram,*zaccaria_attributesram;
-
-PALETTE_INIT( zaccaria );
-VIDEO_START( zaccaria );
-WRITE8_HANDLER( zaccaria_videoram_w );
-WRITE8_HANDLER( zaccaria_attributes_w );
-WRITE8_HANDLER( zaccaria_flip_screen_x_w );
-WRITE8_HANDLER( zaccaria_flip_screen_y_w );
-VIDEO_UPDATE( zaccaria );
+#include "includes/zaccaria.h"
static int dsw;