mirror of
https://github.com/holub/mame
synced 2025-10-05 08:41:31 +03:00
Amusco driver improvements: Added button-lamps
and coin counter support [Roberto Fresca]
This commit is contained in:
parent
0b2d6c47f4
commit
5ef3fe31e7
@ -66,7 +66,7 @@
|
||||
- Make the 6845 transparent videoram addressing actually transparent.
|
||||
(IRQ1 changes the 6845 address twice but neither reads nor writes data?)
|
||||
- Add NVRAM in a way that won't trigger POST error message (needs NMI on shutdown?)
|
||||
- Identify outputs from first PPI (these include button lamps?)
|
||||
- Identify remaining outputs from first PPI (button lamps and coin counter are identified and implemented)
|
||||
|
||||
*******************************************************************************/
|
||||
|
||||
@ -87,6 +87,7 @@
|
||||
#include "machine/pic8259.h"
|
||||
#include "machine/pit8253.h"
|
||||
#include "machine/msm5832.h"
|
||||
#include "amusco.lh"
|
||||
|
||||
|
||||
class amusco_state : public driver_device
|
||||
@ -236,17 +237,50 @@ WRITE8_MEMBER( amusco_state::mc6845_w)
|
||||
|
||||
WRITE8_MEMBER(amusco_state::output_a_w)
|
||||
{
|
||||
//logerror("Writing %02Xh to PPI output A\n", data);
|
||||
/* Lamps from port A
|
||||
|
||||
7654 3210
|
||||
---- ---x Bet lamp.
|
||||
---- --x- Hold/Discard 5 lamp.
|
||||
---- -x-- Hold/Discard 3 lamp.
|
||||
---- x--- Hold/Discard 1 lamp.
|
||||
---x ---- Hold/Discard 2 lamp.
|
||||
--x- ---- Hold/Discard 4 lamp.
|
||||
xx-- ---- Unknown.
|
||||
|
||||
*/
|
||||
output().set_lamp_value(0, (data) & 1); // Lamp 0 (Bet)
|
||||
output().set_lamp_value(1, (data >> 1) & 1); // Lamp 1 (Hold/Disc 5)
|
||||
output().set_lamp_value(2, (data >> 2) & 1); // Lamp 2 (Hold/Disc 3)
|
||||
output().set_lamp_value(3, (data >> 3) & 1); // Lamp 3 (Hold/Disc 1)
|
||||
output().set_lamp_value(4, (data >> 4) & 1); // Lamp 4 (Hold/Disc 2)
|
||||
output().set_lamp_value(5, (data >> 5) & 1); // Lamp 5 (Hold/Disc 4)
|
||||
|
||||
// logerror("Writing %02Xh to PPI output A\n", data);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(amusco_state::output_b_w)
|
||||
{
|
||||
//logerror("Writing %02Xh to PPI output B\n", data);
|
||||
/* Lamps and counters from port B
|
||||
|
||||
7654 3210
|
||||
---- --x- Unknown lamp (lits when all holds/disc are ON).
|
||||
---- -x-- Start/Draw lamp.
|
||||
---x ---- Coin counter.
|
||||
xxx- x--x Unknown.
|
||||
|
||||
*/
|
||||
output().set_lamp_value(6, (data >> 2) & 1); // Lamp 6 (Start/Draw)
|
||||
output().set_lamp_value(7, (data >> 1) & 1); // Lamp 7 (Unknown)
|
||||
|
||||
machine().bookkeeping().coin_counter_w(0, ~data & 0x10); // Coin counter
|
||||
|
||||
// logerror("Writing %02Xh to PPI output B\n", data);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(amusco_state::output_c_w)
|
||||
{
|
||||
//logerror("Writing %02Xh to PPI output C\n", data);
|
||||
// logerror("Writing %02Xh to PPI output C\n", data);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(amusco_state::vram_w)
|
||||
@ -502,6 +536,6 @@ ROM_END
|
||||
* Game Drivers *
|
||||
*************************/
|
||||
|
||||
/* YEAR NAME PARENT MACHINE INPUT STATE INIT ROT COMPANY FULLNAME FLAGS */
|
||||
GAME( 1987, amusco, 0, amusco, amusco, driver_device, 0, ROT0, "Amusco", "American Music Poker (V1.4)", MACHINE_IMPERFECT_COLORS | MACHINE_NODEVICE_PRINTER ) // runs much too fast; palette totally wrong
|
||||
GAME( 1988, draw88pkr, 0, amusco, amusco, driver_device, 0, ROT0, "BTE, Inc.", "Draw 88 Poker (V2.0)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_COLORS | MACHINE_NODEVICE_PRINTER )
|
||||
/* YEAR NAME PARENT MACHINE INPUT STATE INIT ROT COMPANY FULLNAME FLAGS LAYOUT */
|
||||
GAMEL( 1987, amusco, 0, amusco, amusco, driver_device, 0, ROT0, "Amusco", "American Music Poker (V1.4)", MACHINE_IMPERFECT_COLORS | MACHINE_NODEVICE_PRINTER, layout_amusco ) // runs much too fast; palette totally wrong
|
||||
GAME( 1988, draw88pkr, 0, amusco, amusco, driver_device, 0, ROT0, "BTE, Inc.", "Draw 88 Poker (V2.0)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_COLORS | MACHINE_NODEVICE_PRINTER )
|
||||
|
124
src/mame/layout/amusco.lay
Normal file
124
src/mame/layout/amusco.lay
Normal file
@ -0,0 +1,124 @@
|
||||
<?xml version="1.0"?>
|
||||
<mamelayout version="2">
|
||||
<element name="hold1" defstate="0">
|
||||
<rect state="1">
|
||||
<color red="1.0" green="0.0" blue="0.0" />
|
||||
</rect>
|
||||
<rect state="0">
|
||||
<color red="0.3" green="0.0" blue="0.0" />
|
||||
</rect>
|
||||
<text string="HOLD 1">
|
||||
<color red="0.0" green="0.0" blue="0.0" />
|
||||
<bounds x="0" y="0.2" width="1" height="0.6" />
|
||||
</text>
|
||||
</element>
|
||||
|
||||
<element name="hold2" defstate="0">
|
||||
<rect state="1">
|
||||
<color red="1.0" green="0.0" blue="0.0" />
|
||||
</rect>
|
||||
<rect state="0">
|
||||
<color red="0.3" green="0.0" blue="0.0" />
|
||||
</rect>
|
||||
<text string="HOLD 2">
|
||||
<color red="0.0" green="0.0" blue="0.0" />
|
||||
<bounds x="0" y="0.2" width="1" height="0.6" />
|
||||
</text>
|
||||
</element>
|
||||
|
||||
<element name="hold3" defstate="0">
|
||||
<rect state="1">
|
||||
<color red="1.0" green="0.0" blue="0.0" />
|
||||
</rect>
|
||||
<rect state="0">
|
||||
<color red="0.3" green="0.0" blue="0.0" />
|
||||
</rect>
|
||||
<text string="HOLD 3">
|
||||
<color red="0.0" green="0.0" blue="0.0" />
|
||||
<bounds x="0" y="0.2" width="1" height="0.6" />
|
||||
</text>
|
||||
</element>
|
||||
|
||||
<element name="hold4" defstate="0">
|
||||
<rect state="1">
|
||||
<color red="1.0" green="0.0" blue="0.0" />
|
||||
</rect>
|
||||
<rect state="0">
|
||||
<color red="0.3" green="0.0" blue="0.0" />
|
||||
</rect>
|
||||
<text string="HOLD 4">
|
||||
<color red="0.0" green="0.0" blue="0.0" />
|
||||
<bounds x="0" y="0.2" width="1" height="0.6" />
|
||||
</text>
|
||||
</element>
|
||||
|
||||
<element name="hold5" defstate="0">
|
||||
<rect state="1">
|
||||
<color red="1.0" green="0.0" blue="0.0" />
|
||||
</rect>
|
||||
<rect state="0">
|
||||
<color red="0.3" green="0.0" blue="0.0" />
|
||||
</rect>
|
||||
<text string="HOLD 5">
|
||||
<color red="0.0" green="0.0" blue="0.0" />
|
||||
<bounds x="0" y="0.2" width="1" height="0.6" />
|
||||
</text>
|
||||
</element>
|
||||
|
||||
<element name="bet" defstate="0">
|
||||
<rect state="1">
|
||||
<color red="0.0" green="1.0" blue="0.0" />
|
||||
</rect>
|
||||
<rect state="0">
|
||||
<color red="0.0" green="0.3" blue="0.0" />
|
||||
</rect>
|
||||
<text string="BET">
|
||||
<color red="0.0" green="0.0" blue="0.0" />
|
||||
<bounds x="0" y="0.2" width="1" height="0.6" />
|
||||
</text>
|
||||
</element>
|
||||
|
||||
<element name="startdraw" defstate="0">
|
||||
<rect state="1">
|
||||
<color red="0.0" green="1.0" blue="0.0" />
|
||||
</rect>
|
||||
<rect state="0">
|
||||
<color red="0.0" green="0.3" blue="0.0" />
|
||||
</rect>
|
||||
<text string="START">
|
||||
<color red="0.0" green="0.0" blue="0.0" />
|
||||
<bounds x="0" y="0.1" width="1" height="0.4" />
|
||||
</text>
|
||||
<text string="DRAW">
|
||||
<color red="0.0" green="0.0" blue="0.0" />
|
||||
<bounds x="0" y="0.5" width="1" height="0.4" />
|
||||
</text>
|
||||
</element>
|
||||
|
||||
<view name="Button Lamps">
|
||||
<screen index="0">
|
||||
<bounds left="0" top="0" right="4" bottom="3" />
|
||||
</screen>
|
||||
<bezel name="lamp3" element="hold1">
|
||||
<bounds x="0.15" y="3.13" width="0.55" height="0.24" />
|
||||
</bezel>
|
||||
<bezel name="lamp4" element="hold2">
|
||||
<bounds x="0.80" y="3.13" width="0.55" height="0.24" />
|
||||
</bezel>
|
||||
<bezel name="lamp2" element="hold3">
|
||||
<bounds x="1.45" y="3.13" width="0.55" height="0.24" />
|
||||
</bezel>
|
||||
<bezel name="lamp5" element="hold4">
|
||||
<bounds x="2.10" y="3.13" width="0.55" height="0.24" />
|
||||
</bezel>
|
||||
<bezel name="lamp1" element="hold5">
|
||||
<bounds x="2.75" y="3.13" width="0.55" height="0.24" />
|
||||
</bezel>
|
||||
<bezel name="lamp0" element="bet">
|
||||
<bounds x="3.45" y="3.02" width="0.55" height="0.24" />
|
||||
</bezel>
|
||||
<bezel name="lamp6" element="startdraw">
|
||||
<bounds x="3.45" y="3.28" width="0.55" height="0.24" />
|
||||
</bezel>
|
||||
</view>
|
||||
</mamelayout>
|
Loading…
Reference in New Issue
Block a user