static InputPortPtr input_ports_berzerk = new InputPortPtr(){ public void handler() { 
		PORT_START();       /* IN0 */
		PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT  | IPF_8WAY );
		PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY );
		PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP    | IPF_8WAY );
		PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN  | IPF_8WAY );
		PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 );
		PORT_BIT( 0xe0, IP_ACTIVE_LOW, IPT_UNUSED );
	
		PORT_START();       /* IN1 */
		PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 );
		PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 );
		PORT_BIT( 0x1c, IP_ACTIVE_LOW, IPT_UNUSED );
		PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN3 );
		PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 );
		PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 );
	
		PORT_START();       /* IN2 */
		PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT  | IPF_8WAY | IPF_COCKTAIL );
		PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY | IPF_COCKTAIL );
		PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP    | IPF_8WAY | IPF_COCKTAIL );
		PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN  | IPF_8WAY | IPF_COCKTAIL );
		PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_COCKTAIL );
		PORT_BIT( 0x60, IP_ACTIVE_LOW, IPT_UNUSED );
		PORT_DIPNAME( 0x80, 0x80, DEF_STR( "Cabinet") );
		PORT_DIPSETTING(    0x80, DEF_STR( "Upright") );
		PORT_DIPSETTING(    0x00, DEF_STR( "Cocktail") );
	
		PORT_START();       /* IN3 */
		PORT_BITX(    0x01, 0x00, IPT_DIPSWITCH_NAME | IPF_TOGGLE, "Input Test Mode", KEYCODE_F2, IP_JOY_NONE );
		PORT_DIPSETTING(    0x00, DEF_STR( "Off") );
		PORT_DIPSETTING(    0x01, DEF_STR( "On") );
		PORT_BITX(    0x02, 0x00, IPT_DIPSWITCH_NAME | IPF_TOGGLE, "Crosshair Pattern", KEYCODE_F4, IP_JOY_NONE );
		PORT_DIPSETTING(    0x00, DEF_STR( "Off") );
		PORT_DIPSETTING(    0x02, DEF_STR( "On") );
		PORT_BIT( 0x3c, IP_ACTIVE_LOW,  IPT_UNUSED );
		PORT_DIPNAME( 0xc0, 0x00, "Language" );
		PORT_DIPSETTING(    0x00, "English" );
		PORT_DIPSETTING(    0x40, "German" );
		PORT_DIPSETTING(    0x80, "French" );
		PORT_DIPSETTING(    0xc0, "Spanish" );
	
		PORT_START();       /* IN4 */
		PORT_BITX(    0x03, 0x00, IPT_DIPSWITCH_NAME | IPF_TOGGLE, "Color Test", KEYCODE_F5, IP_JOY_NONE );
		PORT_DIPSETTING(    0x00, DEF_STR( "Off") );
		PORT_DIPSETTING(    0x03, DEF_STR( "On") );
		PORT_BIT( 0x3c, IP_ACTIVE_LOW,  IPT_UNUSED );
		PORT_DIPNAME( 0xc0, 0xc0, DEF_STR( "Bonus_Life") );
		PORT_DIPSETTING(    0xc0, "5000 and 10000" );
		PORT_DIPSETTING(    0x40, "5000" );
		PORT_DIPSETTING(    0x80, "10000" );
		PORT_DIPSETTING(    0x00, "None" );
	
		PORT_START();       /* IN5 */
                PORT_DIPNAME( 0x0f, 0x00, "Coin 3" );
		PORT_DIPSETTING(    0x09, DEF_STR( "2C_1C") ); 
		PORT_DIPSETTING(    0x0d, DEF_STR( "4C_3C") ); 
		PORT_DIPSETTING(    0x00, DEF_STR( "1C_1C") ); 
		PORT_DIPSETTING(    0x0e, DEF_STR( "4C_5C") ); 
		PORT_DIPSETTING(    0x0a, DEF_STR( "2C_3C") ); 
		PORT_DIPSETTING(    0x0f, DEF_STR( "4C_7C") ); 
		PORT_DIPSETTING(    0x01, DEF_STR( "1C_2C") ); 
		PORT_DIPSETTING(    0x0b, DEF_STR( "2C_5C") ); 
		PORT_DIPSETTING(    0x02, DEF_STR( "1C_3C") ); 
		PORT_DIPSETTING(    0x0c, DEF_STR( "2C_7C") ); 
		PORT_DIPSETTING(    0x03, DEF_STR( "1C_4C") ); 
		PORT_DIPSETTING(    0x04, DEF_STR( "1C_5C") ); 
		PORT_DIPSETTING(    0x05, DEF_STR( "1C_6C") ); 
		PORT_DIPSETTING(    0x06, DEF_STR( "1C_7C") ); 
		PORT_DIPSETTING(    0x07, "1 Coin/10 Credits" );
		PORT_DIPSETTING(    0x08, "1 Coin/14 Credits" );
		PORT_BIT( 0xf0, IP_ACTIVE_LOW,  IPT_UNUSED );
	
		PORT_START();       /* IN6 */
		PORT_DIPNAME( 0x0f, 0x00, "Coin 2" );
		PORT_DIPSETTING(    0x09, DEF_STR( "2C_1C") ); 
		PORT_DIPSETTING(    0x0d, DEF_STR( "4C_3C") ); 
		PORT_DIPSETTING(    0x00, DEF_STR( "1C_1C") ); 
		PORT_DIPSETTING(    0x0e, DEF_STR( "4C_5C") ); 
		PORT_DIPSETTING(    0x0a, DEF_STR( "2C_3C") ); 
		PORT_DIPSETTING(    0x0f, DEF_STR( "4C_7C") ); 
		PORT_DIPSETTING(    0x01, DEF_STR( "1C_2C") ); 
		PORT_DIPSETTING(    0x0b, DEF_STR( "2C_5C") ); 
		PORT_DIPSETTING(    0x02, DEF_STR( "1C_3C") ); 
		PORT_DIPSETTING(    0x0c, DEF_STR( "2C_7C") ); 
		PORT_DIPSETTING(    0x03, DEF_STR( "1C_4C") ); 
		PORT_DIPSETTING(    0x04, DEF_STR( "1C_5C") ); 
		PORT_DIPSETTING(    0x05, DEF_STR( "1C_6C") ); 
		PORT_DIPSETTING(    0x06, DEF_STR( "1C_7C") ); 
		PORT_DIPSETTING(    0x07, "1 Coin/10 Credits" );
		PORT_DIPSETTING(    0x08, "1 Coin/14 Credits" );
		PORT_BIT( 0xf0, IP_ACTIVE_LOW,  IPT_UNUSED );
	
		PORT_START();       /* IN7 */
		PORT_DIPNAME( 0x0f, 0x00, "Coin 1" );
		PORT_DIPSETTING(    0x09, DEF_STR( "2C_1C") ); 
		PORT_DIPSETTING(    0x0d, DEF_STR( "4C_3C") ); 
		PORT_DIPSETTING(    0x00, DEF_STR( "1C_1C") ); 
		PORT_DIPSETTING(    0x0e, DEF_STR( "4C_5C") ); 
		PORT_DIPSETTING(    0x0a, DEF_STR( "2C_3C") ); 
		PORT_DIPSETTING(    0x0f, DEF_STR( "4C_7C") ); 
		PORT_DIPSETTING(    0x01, DEF_STR( "1C_2C") ); 
		PORT_DIPSETTING(    0x0b, DEF_STR( "2C_5C") ); 
		PORT_DIPSETTING(    0x02, DEF_STR( "1C_3C") ); 
		PORT_DIPSETTING(    0x0c, DEF_STR( "2C_7C") ); 
		PORT_DIPSETTING(    0x03, DEF_STR( "1C_4C") ); 
		PORT_DIPSETTING(    0x04, DEF_STR( "1C_5C") ); 
		PORT_DIPSETTING(    0x05, DEF_STR( "1C_6C") ); 
		PORT_DIPSETTING(    0x06, DEF_STR( "1C_7C") ); 
		PORT_DIPSETTING(    0x07, "1 Coin/10 Credits" );
		PORT_DIPSETTING(    0x08, "1 Coin/14 Credits" );
		PORT_BIT( 0xf0, IP_ACTIVE_LOW,  IPT_UNUSED );
	
		PORT_START();       /* IN8 */
		PORT_DIPNAME( 0x01, 0x00, DEF_STR( "Free_Play") );
		PORT_DIPSETTING(    0x00, DEF_STR( "Off") );
		PORT_DIPSETTING(    0x01, DEF_STR( "On") );
		PORT_BIT( 0x7e, IP_ACTIVE_LOW,  IPT_UNUSED );
		PORT_BITX(0x80, IP_ACTIVE_HIGH, 0, "Stats", KEYCODE_F1, IP_JOY_NONE );
	INPUT_PORTS_END(); }}