diff --git a/.gitattributes b/.gitattributes
index 98c1fd07421..37315a5e04c 100644
--- a/.gitattributes
+++ b/.gitattributes
@@ -2474,8 +2474,10 @@ src/mame/layout/pe_schip.lay svneol=native#text/plain
src/mame/layout/pe_slots.lay svneol=native#text/plain
src/mame/layout/peplus.lay svneol=native#text/plain
src/mame/layout/pmpoker.lay svneol=native#text/plain
+src/mame/layout/poker41.lay svneol=native#text/plain
src/mame/layout/pokio.lay svneol=native#text/plain
src/mame/layout/pottnpkr.lay svneol=native#text/plain
+src/mame/layout/pulltabs.lay svneol=native#text/plain
src/mame/layout/pyramid.lay svneol=native#text/plain
src/mame/layout/quintoon.lay svneol=native#text/plain
src/mame/layout/rocknms.lay svneol=native#text/plain
@@ -2909,6 +2911,7 @@ src/mame/video/galpanic.c svneol=native#text/plain
src/mame/video/galspnbl.c svneol=native#text/plain
src/mame/video/gameplan.c svneol=native#text/plain
src/mame/video/gaplus.c svneol=native#text/plain
+src/mame/video/gatron.c svneol=native#text/plain
src/mame/video/gauntlet.c svneol=native#text/plain
src/mame/video/gberet.c svneol=native#text/plain
src/mame/video/gbusters.c svneol=native#text/plain
diff --git a/src/mame/drivers/gatron.c b/src/mame/drivers/gatron.c
index 5b71a6e1384..a0ad253518d 100644
--- a/src/mame/drivers/gatron.c
+++ b/src/mame/drivers/gatron.c
@@ -1,7 +1,7 @@
/******************************************************************************
- GAME-A-TRON gaming hardware
- ---------------------------
+ GAME-A-TRON gambling hardware
+ -----------------------------
Driver by Roberto Fresca.
@@ -12,10 +12,6 @@
* Pull Tabs, 1983, Game-A-Tron.
- The names of both games are not confirmed. We are calling them "Poker 4-1"
- and "Pull Tabs" till we can find some evidence of the real names.
-
-
*******************************************************************************
@@ -73,10 +69,13 @@
U30 VRAM HM6116LP-3 (2Kx8)
1x 16MHz Crystal
-
1x Duracell PX-2 I, 4.5V battery.
+ Identified the unknown writes as a init sequence for 1x PSG sound device.
+ The type/class is unknown due to almost all devices are plastic covered.
+
+
*******************************************************************************
@@ -88,6 +87,9 @@
The first time the machine is turned on, will show the legend "DATA ERROR".
You must to RESET (F3) the machine to initialize the NVRAM properly.
+ NOTE: These games are intended to be for amusement only.
+ There is not such a payout system, so...Dont ask about it!
+
* Poker 4-1:
@@ -143,6 +145,7 @@
*******************************************************************************
+
--------------------
*** Memory Map ***
--------------------
@@ -150,8 +153,20 @@
0x0000 - 0x5FFF ; ROM space.
0x6000 - 0x67FF ; Video RAM (only the first 0x300 bytes are used).
0x8000 - 0x87FF ; Main RAM.
- 0xA000 - 0xA000 ; Unknown Writes.
- 0xE000 - 0xE000 ; Unknown Writes (watchdog?).
+ 0xA000 - 0xA000 ; Sound (PSG).
+ 0xE000 - 0xE000 ; Output Port 0 (lamps).
+
+
+ * Z80 I/O ports *
+
+ 0x00 - 0x03 ; PPI 8255 (ports A & B as input, port C as output).
+
+
+ * 8255 I/O ports *
+
+ Port A (input) ; Input Port 0 (player buttons).
+ Port B (input) ; Input Port 1 (player & service buttons).
+ Port C (output) ; Output Port 1 (lamps & counters).
*******************************************************************************
@@ -160,9 +175,23 @@
DRIVER UPDATES:
+ [2008-08-21]
+
+ After an exhaustive analysis to the unknown writes, finally figured out the missing sound device.
+
+ - Added sound support to "Poker 4-1" and "Pull Tabs".
+ - Figured out the output ports. Documented each bit accessed.
+ - Added button lamps support. Created layouts for both games.
+ - Switched the 8255 port C to be used as output port.
+ - Adjusted the coin pulse timing.
+ - Updated technical notes.
+ - Splitted the driver to driver + video.
+ - Final clean-up.
+
+
[2008-05-31]
- - Renamed the games to "Poker 4-1" and "Pull Tabs"
+ - Renamed the games to "Poker 4-1" and "Pull Tabs".
as shown in the ROMs stickers.
- Renamed the ROMs in each set according to their own stickers.
- Moved the driver into gametron.a group.
@@ -170,6 +199,7 @@
Poker41 and pulltabs don't make use of it, but is present in the Test/Setting Mode.
- Updated technical notes.
+
[2008-05-10]
- Initial release.
@@ -183,8 +213,7 @@
TODO:
- - Outputs.
- - Sound.
+ - Nothing... :)
*******************************************************************************/
@@ -193,54 +222,98 @@
#define MASTER_CLOCK XTAL_16MHz
#include "driver.h"
+#include "sound/sn76496.h"
#include "machine/8255ppi.h"
+#include "poker41.lh"
+#include "pulltabs.lh"
-/*************************
-* Video Hardware *
-*************************/
-
-static tilemap *bg_tilemap;
+/* from video */
+WRITE8_HANDLER( gat_videoram_w );
+PALETTE_INIT( gat );
+VIDEO_START( gat );
+VIDEO_UPDATE( gat );
-static WRITE8_HANDLER( gat_videoram_w )
+/****************************
+* Read/Write Handlers *
+****************************/
+
+static WRITE8_HANDLER( output_port_0_w )
{
- videoram[offset] = data;
- tilemap_mark_tile_dirty(bg_tilemap, offset);
-}
+/* ---------------
+ Pull Tabs lamps
+ ---------------
+ 0x00 - Default State.
+ 0x01 - Hold3.
+ 0x04 - Hold5.
+ 0x08 - Ante/Bet.
-static TILE_GET_INFO( get_bg_tile_info )
-{
-/* - bits -
+ - bits -
7654 3210
- xxxx xxxx tiles code.
+ ---------
+ .... ...x ---> Hold3.
+ .... .x.. ---> Hold5.
+ .... x... ---> Ante/Bet.
+
+ Tab1 = Hold1
+ Tab2 = Hold3
+ Tab3 = Hold5
+
+
+ ---------------
+ Poker 4-1 lamps
+ ---------------
+
+ 0x00 - Default State.
+ 0x01 - Hold3.
+ 0x02 - Hold4.
+ 0x04 - Hold5/DDown.
+ 0x08 - Ante/Bet.
+ 0x10 - Start.
+ 0x20 - Deal/Hit.
+ 0x40 - Stand/FreeBonusDraw.
+
+ - bits -
+ 7654 3210
+ ---------
+ .... ...x --> Hold3.
+ .... ..x. --> Hold4.
+ .... .x.. --> Hold5/DDown.
+ .... x... --> Ante/Bet.
+ ...x .... --> Start.
+ ..x. .... --> Deal/Hit.
+ .x.. .... --> Stand/FreeBonusDraw.
- only one color code
*/
-
- int code = videoram[tile_index];
-
- SET_TILE_INFO(0, code, 0, 0);
+ output_set_lamp_value(0, (data) & 1); /* hold3 lamp */
+ output_set_lamp_value(1, (data >> 1) & 1); /* hold4 lamp */
+ output_set_lamp_value(2, (data >> 2) & 1); /* hold5 lamp */
+ output_set_lamp_value(3, (data >> 3) & 1); /* ante/bet lamp */
+ output_set_lamp_value(4, (data >> 4) & 1); /* start lamp */
+ output_set_lamp_value(5, (data >> 5) & 1); /* deal/hit lamp */
+ output_set_lamp_value(6, (data >> 6) & 1); /* stand/fbdraw lamp */
}
-static VIDEO_START( gat )
+static WRITE8_HANDLER( output_port_1_w )
{
- bg_tilemap = tilemap_create(get_bg_tile_info, tilemap_scan_cols, 8, 16, 48, 16);
-}
+/* ----------------
+ Lamps & Counters
+ ----------------
+ - bits -
+ 7654 3210
+ ---------
+ .... ...x --> Hold2 lamp.
+ .... ..x. --> Hold1 lamp.
+ .x.. .... --> Coin counter (inverted).
+ x... .... --> Inverted pulse. Related to counters.
-static VIDEO_UPDATE( gat )
-{
- tilemap_draw(bitmap, cliprect, bg_tilemap, 0, 0);
- return 0;
-}
-
-
-static PALETTE_INIT( gat )
-{
-
+*/
+ output_set_lamp_value(7, (data) & 1); /* hold2 lamp */
+ output_set_lamp_value(8, (data >> 1) & 1); /* hold1 lamp */
}
@@ -250,12 +323,12 @@ static PALETTE_INIT( gat )
static const ppi8255_interface ppi8255_intf =
{
- input_port_0_r, /* Port A read */
- input_port_1_r, /* Port B read */
- input_port_2_r, /* Port C read */
- NULL, /* Port A write */
- NULL, /* Port B write */
- NULL, /* Port C write */
+ input_port_0_r, /* Port A read */
+ input_port_1_r, /* Port B read */
+ NULL, /* Port C read */
+ NULL, /* Port A write */
+ NULL, /* Port B write */
+ output_port_1_w, /* Port C write */
};
@@ -267,8 +340,8 @@ static ADDRESS_MAP_START( gat_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x63ff) AM_RAM_WRITE(gat_videoram_w) AM_BASE(&videoram)
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_BASE(&generic_nvram) AM_SIZE(&generic_nvram_size) /* battery backed RAM */
- AM_RANGE(0xa000, 0xa000) AM_NOP /* unknown writes */
- AM_RANGE(0xe000, 0xe000) AM_NOP /* watchdog? */
+ AM_RANGE(0xa000, 0xa000) AM_WRITE(sn76496_0_w) /* PSG */
+ AM_RANGE(0xe000, 0xe000) AM_WRITE(output_port_0_w) /* lamps */
ADDRESS_MAP_END
static ADDRESS_MAP_START( gat_portmap, ADDRESS_SPACE_IO, 8 )
@@ -276,27 +349,6 @@ static ADDRESS_MAP_START( gat_portmap, ADDRESS_SPACE_IO, 8 )
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE(PPI8255, "ppi8255", ppi8255_r, ppi8255_w)
ADDRESS_MAP_END
-/* I/O byte R/W
-
- 0x0200 ;R ???!
-
- 0x9200 ;R
- 0x9201 ;R
- 0x9203 ;W (0x92)
-
- 0xC002 ;W (0xC0)
- 0xC202 ;W (0xC2)
-
- 0xFF01 ;R
-
- -----------------
-
- unknown writes:
-
- 0xA000 ;W (3 consecutive writes: 8x - Cx - 93)
- 0xE000 ;W (0x04)
-
-*/
/*************************
* Input Ports *
@@ -305,12 +357,12 @@ ADDRESS_MAP_END
static INPUT_PORTS_START( poker41 )
PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_NAME("Discard 4") PORT_CODE(KEYCODE_V)
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Bet/Ante") PORT_CODE(KEYCODE_N)
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Deal/Hit") PORT_CODE(KEYCODE_2)
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 )
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Stand") PORT_CODE(KEYCODE_A)
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Bet / Ante") PORT_CODE(KEYCODE_N)
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Deal / Hit") PORT_CODE(KEYCODE_2)
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(2) /* Coin A */
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Free Bonus Draw / Stand") PORT_CODE(KEYCODE_3)
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Start") PORT_CODE(KEYCODE_1)
- PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Discard 5") PORT_CODE(KEYCODE_B)
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_NAME("Discard 5 / High / Double Down") PORT_CODE(KEYCODE_B)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Discard 3") PORT_CODE(KEYCODE_C)
PORT_START("IN1")
@@ -321,17 +373,7 @@ static INPUT_PORTS_START( poker41 )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Service 1 (Test/Settings)") PORT_CODE(KEYCODE_9)
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Discard 1") PORT_CODE(KEYCODE_Z)
-
- PORT_START("IN2") /* disabled */
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Discard 1 / Low") PORT_CODE(KEYCODE_Z)
INPUT_PORTS_END
static INPUT_PORTS_START( pulltabs )
@@ -339,7 +381,7 @@ static INPUT_PORTS_START( pulltabs )
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Ante") PORT_CODE(KEYCODE_1)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 )
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(2) /* Coin A */
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Big Bar Ticket") PORT_CODE(KEYCODE_C)
@@ -349,21 +391,11 @@ static INPUT_PORTS_START( pulltabs )
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Service 2 (Test Mode Out / Coin Stuck)") PORT_CODE(KEYCODE_0)
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* Payout? */
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Service 1 (Test/Settings)") PORT_CODE(KEYCODE_9)
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Super Star Ticket") PORT_CODE(KEYCODE_Z)
-
- PORT_START("IN2") /* disabled */
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
INPUT_PORTS_END
@@ -402,7 +434,7 @@ GFXDECODE_END
static MACHINE_DRIVER_START( gat )
/* basic machine hardware */
- MDRV_CPU_ADD("main", Z80, MASTER_CLOCK/24) /* guess */
+ MDRV_CPU_ADD("main", Z80, MASTER_CLOCK/24) /* 666.66 kHz, guess */
MDRV_CPU_PROGRAM_MAP(gat_map, 0)
MDRV_CPU_IO_MAP(gat_portmap,0)
MDRV_CPU_VBLANK_INT("main", nmi_line_pulse)
@@ -421,13 +453,15 @@ static MACHINE_DRIVER_START( gat )
MDRV_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 0*8, 16*16-1)
MDRV_GFXDECODE(gat)
-
MDRV_PALETTE_INIT(gat)
MDRV_PALETTE_LENGTH(8)
-
MDRV_VIDEO_START(gat)
MDRV_VIDEO_UPDATE(gat)
+ /* sound hardware */
+ MDRV_SPEAKER_STANDARD_MONO("mono")
+ MDRV_SOUND_ADD("sn1", SN76496, MASTER_CLOCK/8 ) /* 2 MHz, guess */
+ MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 2.00)
MACHINE_DRIVER_END
@@ -461,6 +495,6 @@ ROM_END
* Game Drivers *
*************************/
-/* YEAR NAME PARENT MACHINE INPUT INIT ROT COMPANY FULLNAME FLAGS */
-GAME( 1983, poker41, 0, gat, poker41, 0, ROT0, "Game-A-Tron", "Poker 4-1", GAME_NO_SOUND )
-GAME( 1983, pulltabs, 0, gat, pulltabs, 0, ROT0, "Game-A-Tron", "Pull Tabs", GAME_NO_SOUND )
+/* YEAR NAME PARENT MACHINE INPUT INIT ROT COMPANY FULLNAME FLAGS LAYOUT */
+GAMEL( 1983, poker41, 0, gat, poker41, 0, ROT0, "Game-A-Tron", "Poker 4-1", 0, layout_poker41 )
+GAMEL( 1983, pulltabs, 0, gat, pulltabs, 0, ROT0, "Game-A-Tron", "Pull Tabs", 0, layout_pulltabs )
diff --git a/src/mame/layout/poker41.lay b/src/mame/layout/poker41.lay
new file mode 100644
index 00000000000..7ed66c17300
--- /dev/null
+++ b/src/mame/layout/poker41.lay
@@ -0,0 +1,135 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/mame/layout/pulltabs.lay b/src/mame/layout/pulltabs.lay
new file mode 100644
index 00000000000..1c9528b236b
--- /dev/null
+++ b/src/mame/layout/pulltabs.lay
@@ -0,0 +1,66 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/mame/mame.mak b/src/mame/mame.mak
index 54a4fb02fa5..2070d219081 100644
--- a/src/mame/mame.mak
+++ b/src/mame/mame.mak
@@ -742,7 +742,7 @@ $(MAMEOBJ)/gameplan.a: \
$(MAMEOBJ)/gametron.a: \
$(DRIVERS)/gotya.o $(AUDIO)/gotya.o $(VIDEO)/gotya.o \
$(DRIVERS)/sbugger.o $(VIDEO)/sbugger.o \
- $(DRIVERS)/gatron.o \
+ $(DRIVERS)/gatron.o $(VIDEO)/gatron.o \
$(MAMEOBJ)/gottlieb.a: \
$(DRIVERS)/exterm.o $(VIDEO)/exterm.o \
@@ -1711,6 +1711,9 @@ $(DRIVERS)/firebeat.o: $(LAYOUT)/firebeat.lh
$(DRIVERS)/funworld.o: $(LAYOUT)/funworld.lh
+$(DRIVERS)/gatron.o: $(LAYOUT)/poker41.lh \
+ $(LAYOUT)/pulltabs.lh
+
$(DRIVERS)/lazercmd.o: $(LAYOUT)/lazercmd.lh
$(DRIVERS)/lucky74.o: $(LAYOUT)/lucky74.lh
diff --git a/src/mame/video/gatron.c b/src/mame/video/gatron.c
new file mode 100644
index 00000000000..46d50d68e12
--- /dev/null
+++ b/src/mame/video/gatron.c
@@ -0,0 +1,59 @@
+/******************************************************************************
+
+ GAME-A-TRON gambling hardware
+ -----------------------------
+
+ *** Video Hardware ***
+
+ Written by Roberto Fresca.
+
+
+ Games running on this hardware:
+
+ * Poker 4-1, 1983, Game-A-Tron.
+ * Pull Tabs, 1983, Game-A-Tron.
+
+
+*******************************************************************************/
+
+
+#include "driver.h"
+
+static tilemap *bg_tilemap;
+
+
+WRITE8_HANDLER( gat_videoram_w )
+{
+ videoram[offset] = data;
+ tilemap_mark_tile_dirty(bg_tilemap, offset);
+}
+
+static TILE_GET_INFO( get_bg_tile_info )
+{
+/* - bits -
+ 7654 3210
+ xxxx xxxx tiles code.
+
+ only one color code
+*/
+
+ int code = videoram[tile_index];
+
+ SET_TILE_INFO(0, code, 0, 0);
+}
+
+VIDEO_START( gat )
+{
+ bg_tilemap = tilemap_create(get_bg_tile_info, tilemap_scan_cols, 8, 16, 48, 16);
+}
+
+VIDEO_UPDATE( gat )
+{
+ tilemap_draw(bitmap, cliprect, bg_tilemap, 0, 0);
+ return 0;
+}
+
+PALETTE_INIT( gat )
+{
+}
+