Added simple built-in layout for polepos showing the position of the shifter

(this works thanks to recent changes from Nathan; in fact, any input can
affect the state of an artwork element). Removed debug build hack to popmessage
the shifter state.
This commit is contained in:
Aaron Giles 2009-01-03 00:47:44 +00:00
parent 81d05dc866
commit e71d65e896
5 changed files with 74 additions and 14 deletions

1
.gitattributes vendored
View file

@ -2544,6 +2544,7 @@ src/mame/layout/pmpoker.lay svneol=native#text/plain
src/mame/layout/pmroulet.lay -text svneol=native#plain/text
src/mame/layout/poker41.lay svneol=native#text/plain
src/mame/layout/pokio.lay svneol=native#text/plain
src/mame/layout/polepos.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

View file

@ -223,6 +223,8 @@ Notes:
#include "polepos.h"
#include "nam_cust.h"
#include "polepos.lh"
#define POLEPOS_TOGGLE PORT_TOGGLE
@ -874,6 +876,7 @@ static MACHINE_DRIVER_START( polepos )
MDRV_GFXDECODE(polepos)
MDRV_PALETTE_LENGTH(0x0f00)
MDRV_DEFAULT_LAYOUT(layout_polepos)
MDRV_PALETTE_INIT(polepos)
MDRV_VIDEO_START(polepos)
@ -1772,4 +1775,3 @@ GAME( 1983, topracrb, polepos, polepos, polepos, polepos, ROT0, "bootleg", "To
GAME( 1983, polepos2, 0, polepos, polepos2, polepos2, ROT0, "Namco", "Pole Position II", 0 )
GAME( 1983, poleps2a, polepos2, polepos, polepos2, polepos2, ROT0, "Namco (Atari license)", "Pole Position II (Atari)", 0 )
GAME( 1983, poleps2b, polepos2, polepos, polepos2, polepos, ROT0, "bootleg", "Pole Position II (bootleg)", 0 )

View file

@ -0,0 +1,68 @@
<?xml version="1.0"?>
<mamelayout version="2">
<element name="shifter" defstate="0">
<rect>
<bounds left="5" top="0" right="35" bottom="40" />
<color red="0.0" green="0.0" blue="0.0" />
</rect>
<disk>
<bounds left="18" right="22" top="9" bottom="11" />
<color red="0.25" green="0.25" blue="0.25" />
</disk>
<rect>
<bounds left="18" right="22" top="10" bottom="30" />
<color red="0.25" green="0.25" blue="0.25" />
</rect>
<disk>
<bounds left="18" right="22" top="29" bottom="31" />
<color red="0.25" green="0.25" blue="0.25" />
</disk>
<text string="L">
<bounds left="15" right="25" top="2" bottom="8" />
<color red="1" green="1" blue="1" />
</text>
<text string="H">
<bounds left="15" right="25" top="32" bottom="38" />
<color red="1" green="1" blue="1" />
</text>
<rect state="0">
<bounds left="10" right="30" top="10" bottom="15" />
<color red="0.75" green="0.0" blue="0.0" />
</rect>
<disk state="0">
<bounds left="7.5" right="12.5" top="10" bottom="15" />
<color red="0.75" green="0.0" blue="0.0" />
</disk>
<disk state="0">
<bounds left="27.5" right="32.5" top="10" bottom="15" />
<color red="0.75" green="0.0" blue="0.0" />
</disk>
<rect state="1">
<bounds left="10" right="30" top="25" bottom="30" />
<color red="0.75" green="0.0" blue="0.0" />
</rect>
<disk state="1">
<bounds left="7.5" right="12.5" top="25" bottom="30" />
<color red="0.75" green="0.0" blue="0.0" />
</disk>
<disk state="1">
<bounds left="27.5" right="32.5" top="25" bottom="30" />
<color red="0.75" green="0.0" blue="0.0" />
</disk>
</element>
<view name="Shifter">
<screen index="0">
<bounds left="0" top="0" right="4" bottom="3" />
</screen>
<bezel element="shifter" inputtag="IN0" inputmask="0x02">
<bounds x="3.7" y="2.45" width="0.25" height="0.5" />
<color alpha="0.9" />
</bezel>
</view>
</mamelayout>

View file

@ -1771,6 +1771,8 @@ $(DRIVERS)/peplus.o: $(LAYOUT)/peplus.lh \
$(LAYOUT)/pe_keno.lh \
$(LAYOUT)/pe_slots.lh
$(DRIVERS)/polepos.o: $(LAYOUT)/polepos.lh
$(DRIVERS)/qix.o: $(LAYOUT)/elecyoyo.lh
$(DRIVERS)/re900.o: $(LAYOUT)/re900.lh

View file

@ -515,18 +515,5 @@ VIDEO_UPDATE( polepos )
draw_road(screen->machine, bitmap);
draw_sprites(screen->machine, bitmap,cliprect);
tilemap_draw(bitmap,cliprect,tx_tilemap,0,0);
/* following code should be enabled only in a debug build */
/* original arcade doesn't work in this way */
#ifdef MAME_DEBUG
{
int in = input_port_read(screen->machine, "IN0");
static int lastin;
if ((in ^ lastin) & polepos_gear_bit)
popmessage((in & polepos_gear_bit) ? "LO" : "HI");
lastin = in;
}
#endif
return 0;
}