summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--src/mame/drivers/kaneko16.c33
1 files changed, 23 insertions, 10 deletions
diff --git a/src/mame/drivers/kaneko16.c b/src/mame/drivers/kaneko16.c
index 5e224e43ca5..e9b1eabbac0 100644
--- a/src/mame/drivers/kaneko16.c
+++ b/src/mame/drivers/kaneko16.c
@@ -598,10 +598,20 @@ ADDRESS_MAP_END
static READ16_HANDLER( gtmr_wheel_r )
{
- if ( (input_port_read(machine, "DSW1") & 0x1800) == 0x10) // DSW setting
- return input_port_read(machine, "WHEEL0")<<8; // 360' Wheel
- else
- return input_port_read(machine, "WHEEL0"); // 270' Wheel
+ // check 'Controls' dip switch
+ switch (input_port_read(machine, "DSW1") & 0x1000)
+ {
+ case 0x0000: // 'Both Sides' = 270deg Wheel
+ return (input_port_read(machine, "WHEEL0"));
+ break;
+
+ case 0x1000: // '1P Side' = 360' Wheel
+ return (input_port_read(machine, "WHEEL1"));
+ break;
+ default:
+ return (0);
+ break;
+ }
}
static WRITE16_HANDLER( gtmr_oki_0_bank_w )
@@ -1339,8 +1349,11 @@ static INPUT_PORTS_START( gtmr )
PORT_DIPSETTING( 0x4000, "Flag Only" )
PORT_DIPSETTING( 0x0000, DEF_STR( None ) )
- PORT_START_TAG("WHEEL0") // IN5 - Wheel - 100015.b <- ffffe.b
- PORT_BIT ( 0x00ff, 0x0080, IPT_PADDLE ) PORT_SENSITIVITY(30) PORT_KEYDELTA(1)
+ PORT_START_TAG("WHEEL0") // IN5 - Wheel (270deg) - 100015.b <- ffffe.b
+ PORT_BIT ( 0x00ff, 0x0080, IPT_PADDLE ) PORT_SENSITIVITY(30) PORT_KEYDELTA(25)
+
+ PORT_START_TAG("WHEEL1") // IN6 - Wheel (360deg)
+ PORT_BIT ( 0x00ff, 0x0000, IPT_DIAL ) PORT_SENSITIVITY(70) PORT_KEYDELTA(25) PORT_PLAYER(1)
INPUT_PORTS_END
@@ -1403,12 +1416,12 @@ static INPUT_PORTS_START( gtmr2 )
*/
PORT_DIPNAME( 0x1800, 0x1800, DEF_STR( Controls ) ) PORT_DIPLOCATION("SW1:4,5")
PORT_DIPSETTING( 0x1800, DEF_STR( Joystick ) )
- PORT_DIPSETTING( 0x0800, "Wheel (360)" ) // Not working correctly in race
- PORT_DIPSETTING( 0x1000, "Wheel (270D)" ) // Not working correctly !
- PORT_DIPSETTING( 0x0000, "Wheel (270A)" ) // Not working correctly in race
+ PORT_DIPSETTING( 0x0800, "Wheel (360)" ) // Not working correctly in race }
+ PORT_DIPSETTING( 0x1000, "Wheel (270D)" ) // Not working correctly ! } seems to work ok to me! (minwah)
+ PORT_DIPSETTING( 0x0000, "Wheel (270A)" ) // Not working correctly in race }
PORT_DIPNAME( 0x2000, 0x2000, "Optional Mode Of Pedal Function" ) PORT_DIPLOCATION("SW1:3")
PORT_DIPSETTING( 0x2000, "Microswitch" ) // "This mode also corresponds to the two buttons used with joystick."
- PORT_DIPSETTING( 0x0000, "Potentiometer" ) // Not implemented yet
+ PORT_DIPSETTING( 0x0000, "Potentiometer" ) // Not implemented yet
PORT_DIPNAME( 0x4000, 0x4000, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION("SW1:2")
PORT_DIPSETTING( 0x4000, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )