summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/vegas.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/vegas.cpp')
-rw-r--r--src/mame/drivers/vegas.cpp30
1 files changed, 25 insertions, 5 deletions
diff --git a/src/mame/drivers/vegas.cpp b/src/mame/drivers/vegas.cpp
index bfa066e95b0..6bb868ee6ee 100644
--- a/src/mame/drivers/vegas.cpp
+++ b/src/mame/drivers/vegas.cpp
@@ -290,6 +290,7 @@
#include "video/voodoo_pci.h"
#include "screen.h"
+#include "sf2049.lh"
/*************************************
*
@@ -974,8 +975,27 @@ WRITE32_MEMBER(vegas_state::wheel_board_w)
uint8_t op = (data >> 8) & 0x3;
uint8_t arg = data & 0xff;
- if (valid && flag && op == 2)
- m_keypad_select = arg;
+ if (valid && flag)
+ {
+ switch (op)
+ {
+ case 0x0:
+ machine().output().set_value("wheel", arg); // target wheel angle. signed byte.
+ break;
+
+ case 0x1:
+ for (uint8_t bit = 0; bit < 8; bit++)
+ machine().output().set_lamp_value(bit, (arg >> bit) & 0x1);
+
+ /* leader lamp bit is included in every write, for some reason. */
+ machine().output().set_lamp_value(8, (data >> 12) & 0x1);
+ break;
+
+ case 0x2:
+ m_keypad_select = arg;
+ break;
+ }
+ }
}
CUSTOM_INPUT_MEMBER(vegas_state::keypad_r)
@@ -2186,9 +2206,9 @@ GAME( 2000, nbagold , 0, nbagold, nbashowt, vegas_state, nbanfl, ROT
/* Durango + Denver SIO + Voodoo 3 */
-GAME( 1998, sf2049, 0, sf2049, sf2049, vegas_state, sf2049, ROT0, "Atari Games", "San Francisco Rush 2049", MACHINE_NO_SOUND | MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE )
-GAME( 1998, sf2049se, sf2049, sf2049se, sf2049se, vegas_state, sf2049se, ROT0, "Atari Games", "San Francisco Rush 2049: Special Edition", MACHINE_NO_SOUND | MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE )
-GAME( 1998, sf2049te, sf2049, sf2049te, sf2049, vegas_state, sf2049te, ROT0, "Atari Games", "San Francisco Rush 2049: Tournament Edition", MACHINE_NO_SOUND | MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE)
+GAMEL( 1998, sf2049, 0, sf2049, sf2049, vegas_state, sf2049, ROT0, "Atari Games", "San Francisco Rush 2049", MACHINE_NO_SOUND | MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE, layout_sf2049 )
+GAMEL( 1998, sf2049se, sf2049, sf2049se, sf2049se, vegas_state, sf2049se, ROT0, "Atari Games", "San Francisco Rush 2049: Special Edition", MACHINE_NO_SOUND | MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE, layout_sf2049 )
+GAMEL( 1998, sf2049te, sf2049, sf2049te, sf2049, vegas_state, sf2049te, ROT0, "Atari Games", "San Francisco Rush 2049: Tournament Edition", MACHINE_NO_SOUND | MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE, layout_sf2049 )
/* Durango + Vegas SIO + Voodoo 3 */
GAME( 2000, cartfury, 0, cartfury, cartfury, vegas_state, cartfury, ROT0, "Midway Games", "Cart Fury", MACHINE_NO_SOUND | MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE )