mirror of
https://github.com/holub/mame
synced 2025-04-25 09:50:04 +03:00
Misc changes / notes
This commit is contained in:
parent
903fd0980a
commit
84f2c31f7d
@ -205,7 +205,7 @@ static INPUT_CHANGED( coin_inserted )
|
||||
|
||||
static INPUT_CHANGED( tilt_pressed )
|
||||
{
|
||||
cputag_set_input_line(field->port->machine(), "maincpu", M6809_FIRQ_LINE, newval ? CLEAR_LINE : ASSERT_LINE);
|
||||
cputag_set_input_line(field->port->machine(), "maincpu", M6809_FIRQ_LINE, newval ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static INPUT_PORTS_START( bwing )
|
||||
@ -289,7 +289,7 @@ static INPUT_PORTS_START( bwing )
|
||||
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_VBLANK )
|
||||
|
||||
PORT_START("IN3")
|
||||
PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_TILT ) PORT_CHANGED(tilt_pressed,0)
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_TILT ) PORT_CHANGED(tilt_pressed,0)
|
||||
|
||||
PORT_START("VBLANK")
|
||||
PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_VBLANK )
|
||||
|
@ -116,7 +116,6 @@
|
||||
|
||||
#include "emu.h"
|
||||
#include "cpu/m6502/m6502.h"
|
||||
#include "deprecat.h"
|
||||
#include "sound/pokey.h"
|
||||
#include "machine/nvram.h"
|
||||
#include "includes/cloak.h"
|
||||
|
@ -1375,7 +1375,13 @@ static DRIVER_INIT( loverboy )
|
||||
I replace the startup jump with another jump to what appears to be
|
||||
the start of the game code.
|
||||
|
||||
ToDo: Figure out what's really going on */
|
||||
ToDo: Figure out what's really going on
|
||||
EDIT: this is fun, it's in im0 and trips ei ... my best guess is that
|
||||
there's a protection device enabled at 0xf000-0xf001-0xf002-0xf008 that
|
||||
sends a custom irq (either ld hl,$019d or jp $019d). After the initial
|
||||
code, the protection device is disabled or changes behaviour via
|
||||
writes at 0xf000 and 0xf008. -AS
|
||||
*/
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
ROM[0x13] = 0x01;
|
||||
ROM[0x12] = 0x9d;
|
||||
|
@ -282,10 +282,9 @@ ADDRESS_MAP_END
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
static INTERRUPT_GEN( naughtyb_interrupt )
|
||||
static INPUT_CHANGED( coin_inserted )
|
||||
{
|
||||
if (input_port_read(device->machine(), "FAKE") & 1)
|
||||
device_set_input_line(device, INPUT_LINE_NMI, PULSE_LINE);
|
||||
cputag_set_input_line(field->port->machine(), "maincpu", INPUT_LINE_NMI, newval ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static INPUT_PORTS_START( naughtyb )
|
||||
@ -333,12 +332,7 @@ static INPUT_PORTS_START( naughtyb )
|
||||
PORT_DIPSETTING( 0x80, DEF_STR( Cocktail ) )
|
||||
|
||||
PORT_START( "FAKE" )
|
||||
// The coin slots are not memory mapped.
|
||||
// This fake input port is used by the interrupt
|
||||
// handler to be notified of coin insertions. We use IMPULSE to
|
||||
// trigger exactly one interrupt, without having to check when the
|
||||
// user releases the key.
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_COIN1 ) PORT_IMPULSE(1)
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_COIN1 ) PORT_CHANGED(coin_inserted, 0)
|
||||
// when reading DSW0, bit 7 doesn't read cabinet, but vblank
|
||||
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_VBLANK )
|
||||
INPUT_PORTS_END
|
||||
@ -386,12 +380,7 @@ static INPUT_PORTS_START( trvmstr )
|
||||
PORT_DIPSETTING( 0x80, DEF_STR( Cocktail ) )
|
||||
|
||||
PORT_START( "FAKE" )
|
||||
// The coin slots are not memory mapped.
|
||||
// This fake input port is used by the interrupt
|
||||
// handler to be notified of coin insertions. We use IMPULSE to
|
||||
// trigger exactly one interrupt, without having to check when the
|
||||
// user releases the key.
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_COIN1 ) PORT_IMPULSE(1)
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_COIN1 ) PORT_CHANGED(coin_inserted, 0)
|
||||
// when reading DSW0, bit 7 doesn't read cabinet, but vblank
|
||||
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_VBLANK )
|
||||
INPUT_PORTS_END
|
||||
@ -438,7 +427,6 @@ static MACHINE_CONFIG_START( naughtyb, naughtyb_state )
|
||||
/* basic machine hardware */
|
||||
MCFG_CPU_ADD("maincpu", Z80, CLOCK_XTAL / 4) /* 12 MHz clock, divided by 4. CPU is a Z80A */
|
||||
MCFG_CPU_PROGRAM_MAP(naughtyb_map)
|
||||
MCFG_CPU_VBLANK_INT("screen", naughtyb_interrupt)
|
||||
|
||||
/* video hardware */
|
||||
MCFG_SCREEN_ADD("screen", RASTER)
|
||||
@ -474,7 +462,6 @@ static MACHINE_CONFIG_START( popflame, naughtyb_state )
|
||||
/* basic machine hardware */
|
||||
MCFG_CPU_ADD("maincpu", Z80, CLOCK_XTAL / 4) /* 12 MHz clock, divided by 4. CPU is a Z80A */
|
||||
MCFG_CPU_PROGRAM_MAP(popflame_map)
|
||||
MCFG_CPU_VBLANK_INT("screen", naughtyb_interrupt)
|
||||
|
||||
/* video hardware */
|
||||
MCFG_SCREEN_ADD("screen", RASTER)
|
||||
|
Loading…
Reference in New Issue
Block a user