diff --git a/src/mess/drivers/mbdtower.c b/src/mess/drivers/mbdtower.c
index 802db8e59dd..412cbf3a6a7 100644
--- a/src/mess/drivers/mbdtower.c
+++ b/src/mess/drivers/mbdtower.c
@@ -92,7 +92,7 @@ TIMER_DEVICE_CALLBACK_MEMBER(mbdtower_state::motor_sim_tick)
// give it some time to spin out when it's turned off
if (m_r & 0x200)
- m_motor_decay += (m_motor_decay < 6);
+ m_motor_decay += (m_motor_decay < 4);
else if (m_motor_decay > 0)
m_motor_decay--;
else
@@ -112,11 +112,11 @@ TIMER_DEVICE_CALLBACK_MEMBER(mbdtower_state::motor_sim_tick)
/* 3 display cards per hole, like this:
- (0) <---- display increments this way <---- (7)
+ (0) <---- display increments this way <---- (7)
- VICTORY WIZARD DRAGON GOLD KEY SCOUT WARRIOR (void) CURSED
- WARRIORS BAZAAR CLOSED SWORD SILVER KEY HEALER FOOD (void) LOST
- BRIGANDS KEY MISSING PEGASUS BRASS KEY GOLD BEAST (void) PLAGUE
+ CURSED VICTORY WIZARD DRAGON GOLD KEY SCOUT WARRIOR (void)
+ LOST WARRIORS BAZAAR CLOSED SWORD SILVER KEY HEALER FOOD (void)
+ PLAGUE BRIGANDS KEY MISSING PEGASUS BRASS KEY GOLD BEAST (void)
*/
int card_pos = m_motor_pos >> 4 & 7;
if (card_pos != (m_motor_pos_prev >> 4 & 7))
@@ -281,4 +281,4 @@ ROM_START( mbdtower )
ROM_END
-CONS( 1981, mbdtower, 0, 0, mbdtower, mbdtower, driver_device, 0, "Milton Bradley", "Dark Tower (Milton Bradley)", GAME_SUPPORTS_SAVE | GAME_MECHANICAL | GAME_NOT_WORKING )
+CONS( 1981, mbdtower, 0, 0, mbdtower, mbdtower, driver_device, 0, "Milton Bradley", "Dark Tower (Milton Bradley)", GAME_SUPPORTS_SAVE | GAME_MECHANICAL )
diff --git a/src/mess/layout/mbdtower.lay b/src/mess/layout/mbdtower.lay
index aff46ef4eff..98bbfc231a4 100644
--- a/src/mess/layout/mbdtower.lay
+++ b/src/mess/layout/mbdtower.lay
@@ -4,22 +4,111 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
+
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+