trunk/src/mame/machine/segas32.c
r17610 | r17611 | |
221 | 221 | } |
222 | 222 | } |
223 | 223 | |
224 | | |
225 | 224 | WRITE16_MEMBER(segas32_state::darkedge_protection_w) |
226 | 225 | { |
227 | 226 | logerror("%06x:darkedge_prot_w(%06X) = %04X & %04X\n", |
r17610 | r17611 | |
236 | 235 | return 0xffff; |
237 | 236 | } |
238 | 237 | |
| 238 | /****************************************************************************** |
| 239 | ****************************************************************************** |
| 240 | F1 Super Lap |
| 241 | ****************************************************************************** |
| 242 | ******************************************************************************/ |
239 | 243 | |
| 244 | void f1lap_fd1149_vblank(device_t *device) |
| 245 | { |
| 246 | address_space *space = device->memory().space(AS_PROGRAM); |
240 | 247 | |
| 248 | space->write_byte(0x20F7C6, 0); |
| 249 | |
| 250 | // needed to start a game |
| 251 | UINT8 val = space->read_byte(0x20EE81); |
| 252 | if (val == 0xff) space->write_byte(0x20EE81,0); |
| 253 | |
| 254 | } |
| 255 | |
| 256 | |
| 257 | |
241 | 258 | /****************************************************************************** |
242 | 259 | ****************************************************************************** |
243 | 260 | DBZ VRVS |
trunk/src/mame/drivers/segas32.c
r17610 | r17611 | |
1583 | 1583 | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_CODE(KEYCODE_SPACE) PORT_NAME("Gear Up") |
1584 | 1584 | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_CODE(KEYCODE_LSHIFT) PORT_NAME("Gear Down") |
1585 | 1585 | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_CODE(KEYCODE_Z) |
| 1586 | |
| 1587 | PORT_MODIFY("SERVICE34_A") |
| 1588 | PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unknown ) ) // service coin mirror |
| 1589 | PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) |
| 1590 | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1591 | PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unknown ) ) // seems to be a service switch mirror |
| 1592 | PORT_DIPSETTING( 0x20, DEF_STR( Off ) ) |
| 1593 | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1594 | PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) |
| 1595 | PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) |
| 1596 | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
| 1597 | |
1586 | 1598 | INPUT_PORTS_END |
1587 | 1599 | |
1588 | 1600 | |
r17610 | r17611 | |
2780 | 2792 | ************************************************************************************************************************** |
2781 | 2793 | ************************************************************************************************************************** |
2782 | 2794 | F1 Super Lap |
2783 | | Requires 2 linked system 32 boards to function |
2784 | 2795 | protected via FD1149 317-0210 |
2785 | 2796 | */ |
2786 | 2797 | ROM_START( f1lap ) |
r17610 | r17611 | |
4211 | 4222 | } |
4212 | 4223 | |
4213 | 4224 | |
| 4225 | |
| 4226 | |
4214 | 4227 | DRIVER_INIT_MEMBER(segas32_state,f1lap) |
4215 | 4228 | { |
4216 | 4229 | segas32_common_init(machine(), read16_delegate(FUNC(segas32_state::analog_custom_io_r),this), write16_delegate(FUNC(segas32_state::analog_custom_io_w),this)); |
| 4230 | |
| 4231 | m_dual_pcb_comms = auto_alloc_array(machine(), UINT16, 0x1000/2); |
| 4232 | machine().device("maincpu")->memory().space(AS_PROGRAM)->install_readwrite_handler(0x800000, 0x800fff, read16_delegate(FUNC(segas32_state::dual_pcb_comms_r),this), write16_delegate(FUNC(segas32_state::dual_pcb_comms_w),this)); |
| 4233 | machine().device("maincpu")->memory().space(AS_PROGRAM)->install_read_handler(0x801000, 0x801003, read16_delegate(FUNC(segas32_state::dual_pcb_masterslave),this)); |
| 4234 | |
| 4235 | // machine().device("maincpu")->memory().space(AS_PROGRAM)->install_write_handler(0x800048, 0x800049, write16_delegate(FUNC(segas32_state::f1en_comms_echo_w),this)); |
| 4236 | m_system32_prot_vblank = f1lap_fd1149_vblank; |
| 4237 | |
4217 | 4238 | m_sw1_output = f1lap_sw1_output; |
4218 | 4239 | } |
4219 | 4240 | |