public void handler() {
            PORT_START();       /* IN0 */

            PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_COIN3);
            PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_BUTTON1);
            PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_4WAY);
            PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_4WAY);
            PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_4WAY);
            PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_4WAY);
            PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_START1);
            PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_COIN1);

            PORT_START();       /* IN1 */

            PORT_DIPNAME(0x01, 0x01, DEF_STR("Cabinet"));
            PORT_DIPSETTING(0x01, DEF_STR("Upright"));
            PORT_DIPSETTING(0x00, DEF_STR("Cocktail"));
            PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_COCKTAIL);
            PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_4WAY | IPF_COCKTAIL);
            PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_4WAY | IPF_COCKTAIL);
            PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_4WAY | IPF_COCKTAIL);
            PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_4WAY | IPF_COCKTAIL);
            PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_START2);
            PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_COIN2);

            PORT_START();       /* DSW0 */

            PORT_SERVICE(0x01, IP_ACTIVE_LOW);
            /* TODO: the bonus score depends on the number of lives */
            PORT_DIPNAME(0x06, 0x02, DEF_STR("Bonus_Life"));
            PORT_DIPSETTING(0x02, "A");
            PORT_DIPSETTING(0x04, "B");
            PORT_DIPSETTING(0x06, "C");
            PORT_DIPSETTING(0x00, "None");
            PORT_DIPNAME(0x38, 0x00, DEF_STR("Difficulty"));
            PORT_DIPSETTING(0x10, "1 Car, Medium");
            PORT_DIPSETTING(0x28, "1 Car, Hard");
            PORT_DIPSETTING(0x18, "2 Cars, Medium");
            PORT_DIPSETTING(0x30, "2 Cars, Hard");
            PORT_DIPSETTING(0x00, "3 Cars, Easy");
            PORT_DIPSETTING(0x20, "3 Cars, Medium");
            PORT_DIPSETTING(0x38, "3 Cars, Hard");
            PORT_DIPSETTING(0x08, "4 Cars, Easy");
            PORT_DIPNAME(0xc0, 0xc0, DEF_STR("Coinage"));
            PORT_DIPSETTING(0x40, DEF_STR("2C_1C"));
            PORT_DIPSETTING(0xc0, DEF_STR("1C_1C"));
            PORT_DIPSETTING(0x80, DEF_STR("1C_2C"));
            PORT_DIPSETTING(0x00, DEF_STR("Free_Play"));
            INPUT_PORTS_END();
        }