trunk/src/mess/drivers/hh_hmcs40.c
| r244950 | r244951 | |
| 677 | 677 | |
| 678 | 678 | ***************************************************************************/ |
| 679 | 679 | |
| 680 | // hardware is identical to Galaxian 2, so we can use those handlers |
| 681 | // note: plate numbers are 0-23, not 1-24(with 0 always-on) |
| 682 | |
| 680 | 683 | static INPUT_PORTS_START( epacman2 ) |
| 684 | PORT_START("IN.0") // D1 port R0x |
| 685 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_16WAY // separate directional buttons, hence 16way |
| 686 | PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_16WAY // " |
| 687 | PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_16WAY // " |
| 688 | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_16WAY // " |
| 689 | |
| 690 | PORT_START("IN.1") // D2 port R0x |
| 691 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_PLAYER(2) PORT_16WAY // separate directional buttons, hence 16way |
| 692 | PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_PLAYER(2) PORT_16WAY // " |
| 693 | PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_PLAYER(2) PORT_16WAY // " |
| 694 | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(2) PORT_16WAY // " |
| 695 | |
| 696 | PORT_START("IN.2") // D3 port R0x |
| 697 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SELECT ) PORT_NAME("Skill Control") |
| 698 | PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_SERVICE ) PORT_NAME("Demo Light Test") |
| 699 | PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_UNUSED ) |
| 700 | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) |
| 701 | |
| 702 | PORT_START("IN.3") // D4 port R0x |
| 703 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED ) |
| 704 | PORT_CONFNAME( 0x02, 0x02, "Skill" ) |
| 705 | PORT_CONFSETTING( 0x02, "1" ) |
| 706 | PORT_CONFSETTING( 0x00, "2" ) |
| 707 | PORT_CONFNAME( 0x0c, 0x00, "Players" ) |
| 708 | PORT_CONFSETTING( 0x08, "0 (Demo)" ) |
| 709 | PORT_CONFSETTING( 0x00, "1" ) |
| 710 | PORT_CONFSETTING( 0x04, "2" ) |
| 681 | 711 | INPUT_PORTS_END |
| 682 | 712 | |
| 683 | 713 | |
| r244950 | r244951 | |
| 685 | 715 | |
| 686 | 716 | /* basic machine hardware */ |
| 687 | 717 | MCFG_CPU_ADD("maincpu", HD38820, 400000) // approximation - RC osc. |
| 718 | MCFG_HMCS40_READ_R_CB(0, READ8(hh_hmcs40_state, egalaxn2_input_r)) |
| 719 | MCFG_HMCS40_WRITE_R_CB(1, WRITE8(hh_hmcs40_state, egalaxn2_plate_w)) |
| 720 | MCFG_HMCS40_WRITE_R_CB(2, WRITE8(hh_hmcs40_state, egalaxn2_plate_w)) |
| 721 | MCFG_HMCS40_WRITE_R_CB(3, WRITE8(hh_hmcs40_state, egalaxn2_plate_w)) |
| 722 | MCFG_HMCS40_WRITE_R_CB(4, WRITE8(hh_hmcs40_state, egalaxn2_plate_w)) |
| 723 | MCFG_HMCS40_WRITE_R_CB(5, WRITE8(hh_hmcs40_state, egalaxn2_plate_w)) |
| 724 | MCFG_HMCS40_WRITE_R_CB(6, WRITE8(hh_hmcs40_state, egalaxn2_plate_w)) |
| 725 | MCFG_HMCS40_WRITE_D_CB(WRITE16(hh_hmcs40_state, egalaxn2_grid_w)) |
| 688 | 726 | |
| 689 | | // MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1)) |
| 727 | MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1)) |
| 690 | 728 | MCFG_DEFAULT_LAYOUT(layout_hh_hmcs40_test) |
| 691 | 729 | |
| 692 | 730 | /* no video! */ |