mirror of
https://github.com/holub/mame
synced 2025-04-27 02:33:13 +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 )
|
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 )
|
static INPUT_PORTS_START( bwing )
|
||||||
@ -289,7 +289,7 @@ static INPUT_PORTS_START( bwing )
|
|||||||
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_VBLANK )
|
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_VBLANK )
|
||||||
|
|
||||||
PORT_START("IN3")
|
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_START("VBLANK")
|
||||||
PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_VBLANK )
|
PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_VBLANK )
|
||||||
|
@ -116,7 +116,6 @@
|
|||||||
|
|
||||||
#include "emu.h"
|
#include "emu.h"
|
||||||
#include "cpu/m6502/m6502.h"
|
#include "cpu/m6502/m6502.h"
|
||||||
#include "deprecat.h"
|
|
||||||
#include "sound/pokey.h"
|
#include "sound/pokey.h"
|
||||||
#include "machine/nvram.h"
|
#include "machine/nvram.h"
|
||||||
#include "includes/cloak.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
|
I replace the startup jump with another jump to what appears to be
|
||||||
the start of the game code.
|
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();
|
UINT8 *ROM = machine.region("maincpu")->base();
|
||||||
ROM[0x13] = 0x01;
|
ROM[0x13] = 0x01;
|
||||||
ROM[0x12] = 0x9d;
|
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)
|
cputag_set_input_line(field->port->machine(), "maincpu", INPUT_LINE_NMI, newval ? ASSERT_LINE : CLEAR_LINE);
|
||||||
device_set_input_line(device, INPUT_LINE_NMI, PULSE_LINE);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static INPUT_PORTS_START( naughtyb )
|
static INPUT_PORTS_START( naughtyb )
|
||||||
@ -333,12 +332,7 @@ static INPUT_PORTS_START( naughtyb )
|
|||||||
PORT_DIPSETTING( 0x80, DEF_STR( Cocktail ) )
|
PORT_DIPSETTING( 0x80, DEF_STR( Cocktail ) )
|
||||||
|
|
||||||
PORT_START( "FAKE" )
|
PORT_START( "FAKE" )
|
||||||
// The coin slots are not memory mapped.
|
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_COIN1 ) PORT_CHANGED(coin_inserted, 0)
|
||||||
// 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)
|
|
||||||
// when reading DSW0, bit 7 doesn't read cabinet, but vblank
|
// when reading DSW0, bit 7 doesn't read cabinet, but vblank
|
||||||
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_VBLANK )
|
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_VBLANK )
|
||||||
INPUT_PORTS_END
|
INPUT_PORTS_END
|
||||||
@ -386,12 +380,7 @@ static INPUT_PORTS_START( trvmstr )
|
|||||||
PORT_DIPSETTING( 0x80, DEF_STR( Cocktail ) )
|
PORT_DIPSETTING( 0x80, DEF_STR( Cocktail ) )
|
||||||
|
|
||||||
PORT_START( "FAKE" )
|
PORT_START( "FAKE" )
|
||||||
// The coin slots are not memory mapped.
|
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_COIN1 ) PORT_CHANGED(coin_inserted, 0)
|
||||||
// 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)
|
|
||||||
// when reading DSW0, bit 7 doesn't read cabinet, but vblank
|
// when reading DSW0, bit 7 doesn't read cabinet, but vblank
|
||||||
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_VBLANK )
|
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_VBLANK )
|
||||||
INPUT_PORTS_END
|
INPUT_PORTS_END
|
||||||
@ -438,7 +427,6 @@ static MACHINE_CONFIG_START( naughtyb, naughtyb_state )
|
|||||||
/* basic machine hardware */
|
/* basic machine hardware */
|
||||||
MCFG_CPU_ADD("maincpu", Z80, CLOCK_XTAL / 4) /* 12 MHz clock, divided by 4. CPU is a Z80A */
|
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_PROGRAM_MAP(naughtyb_map)
|
||||||
MCFG_CPU_VBLANK_INT("screen", naughtyb_interrupt)
|
|
||||||
|
|
||||||
/* video hardware */
|
/* video hardware */
|
||||||
MCFG_SCREEN_ADD("screen", RASTER)
|
MCFG_SCREEN_ADD("screen", RASTER)
|
||||||
@ -474,7 +462,6 @@ static MACHINE_CONFIG_START( popflame, naughtyb_state )
|
|||||||
/* basic machine hardware */
|
/* basic machine hardware */
|
||||||
MCFG_CPU_ADD("maincpu", Z80, CLOCK_XTAL / 4) /* 12 MHz clock, divided by 4. CPU is a Z80A */
|
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_PROGRAM_MAP(popflame_map)
|
||||||
MCFG_CPU_VBLANK_INT("screen", naughtyb_interrupt)
|
|
||||||
|
|
||||||
/* video hardware */
|
/* video hardware */
|
||||||
MCFG_SCREEN_ADD("screen", RASTER)
|
MCFG_SCREEN_ADD("screen", RASTER)
|
||||||
|
Loading…
Reference in New Issue
Block a user