mirror of
https://github.com/holub/mame
synced 2025-05-04 13:33:05 +03:00
From: Atari Ace [mailto:atari_ace@verizon.net]
Subject: [patch] More reset/multisession cleanup Hi mamedev, This patch eliminates more cases of .data objects, in an effort to make more drivers multisession/reset safe. The changes should not change the first time run behavior at all, except perhaps the ygv608.c change, which had a suspicious use of a static rectangle. ~aa
This commit is contained in:
parent
384422ee09
commit
cf07a5a784
@ -231,6 +231,10 @@ VIDEO_START( cadash );
|
|||||||
VIDEO_UPDATE( asuka );
|
VIDEO_UPDATE( asuka );
|
||||||
VIDEO_UPDATE( bonzeadv );
|
VIDEO_UPDATE( bonzeadv );
|
||||||
|
|
||||||
|
static int adpcm_pos;
|
||||||
|
static int adpcm_data;
|
||||||
|
|
||||||
|
|
||||||
/***********************************************************
|
/***********************************************************
|
||||||
INTERRUPTS
|
INTERRUPTS
|
||||||
***********************************************************/
|
***********************************************************/
|
||||||
@ -258,12 +262,8 @@ static WRITE8_HANDLER( sound_bankswitch_w )
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
static int adpcm_pos;
|
|
||||||
|
|
||||||
static void asuka_msm5205_vck(running_machine *machine, int chip)
|
static void asuka_msm5205_vck(running_machine *machine, int chip)
|
||||||
{
|
{
|
||||||
static int adpcm_data = -1;
|
|
||||||
|
|
||||||
if (adpcm_data != -1)
|
if (adpcm_data != -1)
|
||||||
{
|
{
|
||||||
msm5205_data_w(0, adpcm_data & 0x0f);
|
msm5205_data_w(0, adpcm_data & 0x0f);
|
||||||
@ -304,6 +304,11 @@ static MACHINE_START( asuka )
|
|||||||
state_save_register_global(adpcm_pos);
|
state_save_register_global(adpcm_pos);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static MACHINE_RESET( asuka )
|
||||||
|
{
|
||||||
|
adpcm_pos = 0;
|
||||||
|
adpcm_data = -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/***********************************************************
|
/***********************************************************
|
||||||
@ -803,6 +808,7 @@ static MACHINE_DRIVER_START( bonzeadv )
|
|||||||
MDRV_PALETTE_LENGTH(4096)
|
MDRV_PALETTE_LENGTH(4096)
|
||||||
|
|
||||||
MDRV_MACHINE_START(asuka)
|
MDRV_MACHINE_START(asuka)
|
||||||
|
MDRV_MACHINE_RESET(asuka)
|
||||||
|
|
||||||
MDRV_VIDEO_START(asuka)
|
MDRV_VIDEO_START(asuka)
|
||||||
MDRV_VIDEO_EOF(asuka)
|
MDRV_VIDEO_EOF(asuka)
|
||||||
@ -841,6 +847,7 @@ static MACHINE_DRIVER_START( asuka )
|
|||||||
MDRV_PALETTE_LENGTH(4096)
|
MDRV_PALETTE_LENGTH(4096)
|
||||||
|
|
||||||
MDRV_MACHINE_START(asuka)
|
MDRV_MACHINE_START(asuka)
|
||||||
|
MDRV_MACHINE_RESET(asuka)
|
||||||
|
|
||||||
MDRV_VIDEO_START(asuka)
|
MDRV_VIDEO_START(asuka)
|
||||||
MDRV_VIDEO_EOF(asuka)
|
MDRV_VIDEO_EOF(asuka)
|
||||||
@ -882,6 +889,7 @@ static MACHINE_DRIVER_START( cadash )
|
|||||||
MDRV_PALETTE_LENGTH(4096)
|
MDRV_PALETTE_LENGTH(4096)
|
||||||
|
|
||||||
MDRV_MACHINE_START(asuka)
|
MDRV_MACHINE_START(asuka)
|
||||||
|
MDRV_MACHINE_RESET(asuka)
|
||||||
|
|
||||||
MDRV_VIDEO_START(cadash)
|
MDRV_VIDEO_START(cadash)
|
||||||
MDRV_VIDEO_EOF(asuka)
|
MDRV_VIDEO_EOF(asuka)
|
||||||
@ -919,6 +927,7 @@ static MACHINE_DRIVER_START( mofflott )
|
|||||||
MDRV_PALETTE_LENGTH(4096) /* only Mofflott uses full palette space */
|
MDRV_PALETTE_LENGTH(4096) /* only Mofflott uses full palette space */
|
||||||
|
|
||||||
MDRV_MACHINE_START(asuka)
|
MDRV_MACHINE_START(asuka)
|
||||||
|
MDRV_MACHINE_RESET(asuka)
|
||||||
|
|
||||||
MDRV_VIDEO_START(galmedes)
|
MDRV_VIDEO_START(galmedes)
|
||||||
MDRV_VIDEO_EOF(asuka)
|
MDRV_VIDEO_EOF(asuka)
|
||||||
@ -960,6 +969,7 @@ static MACHINE_DRIVER_START( galmedes )
|
|||||||
MDRV_PALETTE_LENGTH(4096) /* only Mofflott uses full palette space */
|
MDRV_PALETTE_LENGTH(4096) /* only Mofflott uses full palette space */
|
||||||
|
|
||||||
MDRV_MACHINE_START(asuka)
|
MDRV_MACHINE_START(asuka)
|
||||||
|
MDRV_MACHINE_RESET(asuka)
|
||||||
|
|
||||||
MDRV_VIDEO_START(galmedes)
|
MDRV_VIDEO_START(galmedes)
|
||||||
MDRV_VIDEO_EOF(asuka)
|
MDRV_VIDEO_EOF(asuka)
|
||||||
@ -997,6 +1007,7 @@ static MACHINE_DRIVER_START( eto )
|
|||||||
MDRV_PALETTE_LENGTH(4096)
|
MDRV_PALETTE_LENGTH(4096)
|
||||||
|
|
||||||
MDRV_MACHINE_START(asuka)
|
MDRV_MACHINE_START(asuka)
|
||||||
|
MDRV_MACHINE_RESET(asuka)
|
||||||
|
|
||||||
MDRV_VIDEO_START(galmedes)
|
MDRV_VIDEO_START(galmedes)
|
||||||
MDRV_VIDEO_EOF(asuka)
|
MDRV_VIDEO_EOF(asuka)
|
||||||
|
@ -19,22 +19,7 @@ DIP Locations verified for:
|
|||||||
#include "cpu/m6805/m6805.h"
|
#include "cpu/m6805/m6805.h"
|
||||||
#include "sound/ay8910.h"
|
#include "sound/ay8910.h"
|
||||||
#include "sound/dac.h"
|
#include "sound/dac.h"
|
||||||
|
#include "includes/buggychl.h"
|
||||||
|
|
||||||
/* bking3 mcu communication */
|
|
||||||
extern MACHINE_RESET( buggychl );
|
|
||||||
extern READ8_HANDLER( buggychl_68705_portA_r );
|
|
||||||
extern WRITE8_HANDLER( buggychl_68705_portA_w );
|
|
||||||
extern WRITE8_HANDLER( buggychl_68705_ddrA_w );
|
|
||||||
extern READ8_HANDLER( buggychl_68705_portB_r );
|
|
||||||
extern WRITE8_HANDLER( buggychl_68705_portB_w );
|
|
||||||
extern WRITE8_HANDLER( buggychl_68705_ddrB_w );
|
|
||||||
extern READ8_HANDLER( buggychl_68705_portC_r );
|
|
||||||
extern WRITE8_HANDLER( buggychl_68705_portC_w );
|
|
||||||
extern WRITE8_HANDLER( buggychl_68705_ddrC_w );
|
|
||||||
extern WRITE8_HANDLER( buggychl_mcu_w );
|
|
||||||
extern READ8_HANDLER( buggychl_mcu_r );
|
|
||||||
extern READ8_HANDLER( buggychl_mcu_status_r );
|
|
||||||
|
|
||||||
extern PALETTE_INIT( bking );
|
extern PALETTE_INIT( bking );
|
||||||
|
|
||||||
@ -62,7 +47,7 @@ extern READ8_HANDLER( bking_pos_r );
|
|||||||
UINT8 *bking_playfield_ram;
|
UINT8 *bking_playfield_ram;
|
||||||
|
|
||||||
static int bking3_addr_h, bking3_addr_l;
|
static int bking3_addr_h, bking3_addr_l;
|
||||||
static int sndnmi_enable = 1;
|
static int sndnmi_enable;
|
||||||
|
|
||||||
static READ8_HANDLER( bking_sndnmi_disable_r )
|
static READ8_HANDLER( bking_sndnmi_disable_r )
|
||||||
{
|
{
|
||||||
@ -789,6 +774,11 @@ ROM_START( bking3 )
|
|||||||
ROM_LOAD( "a24-21.25", 0x0000, 0x1000, CRC(3106fcac) SHA1(08454adfb58e5df84140d86ed52fa4ef684df9f1) ) /* extra rom on the same SUB PCB where is the mcu */
|
ROM_LOAD( "a24-21.25", 0x0000, 0x1000, CRC(3106fcac) SHA1(08454adfb58e5df84140d86ed52fa4ef684df9f1) ) /* extra rom on the same SUB PCB where is the mcu */
|
||||||
ROM_END
|
ROM_END
|
||||||
|
|
||||||
GAME( 1982, bking, 0, bking, bking, 0, ROT270, "Taito Corporation", "Birdie King", 0 )
|
static DRIVER_INIT( bking )
|
||||||
GAME( 1983, bking2, 0, bking, bking2, 0, ROT90, "Taito Corporation", "Birdie King 2", 0 )
|
{
|
||||||
GAME( 1984, bking3, 0, bking3, bking2, 0, ROT90, "Taito Corporation", "Birdie King 3", 0 )
|
sndnmi_enable = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
GAME( 1982, bking, 0, bking, bking, bking, ROT270, "Taito Corporation", "Birdie King", 0 )
|
||||||
|
GAME( 1983, bking2, 0, bking, bking2, bking, ROT90, "Taito Corporation", "Birdie King 2", 0 )
|
||||||
|
GAME( 1984, bking3, 0, bking3, bking2, bking, ROT90, "Taito Corporation", "Birdie King 3", 0 )
|
||||||
|
@ -393,7 +393,7 @@ static INTERRUPT_GEN(adpcm_int)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static msm5205_interface msm_interface =
|
static const msm5205_interface msm_interface =
|
||||||
{
|
{
|
||||||
adpcm_int, /* interrupt function */
|
adpcm_int, /* interrupt function */
|
||||||
MSM5205_S96_4B /* 1 / 96 = 3906.25Hz playback - guess */
|
MSM5205_S96_4B /* 1 / 96 = 3906.25Hz playback - guess */
|
||||||
|
@ -97,14 +97,13 @@ extern UINT8 technos_video_hw;
|
|||||||
/* end of extern code & data */
|
/* end of extern code & data */
|
||||||
|
|
||||||
static emu_timer *scanline_timer;
|
static emu_timer *scanline_timer;
|
||||||
static MACHINE_START( ddragon );
|
|
||||||
static WRITE8_HANDLER( ddragon_bankswitch_w );
|
|
||||||
|
|
||||||
/* private globals */
|
/* private globals */
|
||||||
static UINT8 dd_sub_cpu_busy;
|
static UINT8 dd_sub_cpu_busy;
|
||||||
static UINT8 sprite_irq, sound_irq, ym_irq, snd_cpu;
|
static UINT8 sprite_irq, sound_irq, ym_irq, snd_cpu;
|
||||||
static UINT32 adpcm_pos[2], adpcm_end[2];
|
static UINT32 adpcm_pos[2], adpcm_end[2];
|
||||||
static UINT8 adpcm_idle[2];
|
static UINT8 adpcm_idle[2];
|
||||||
|
static int adpcm_data[2];
|
||||||
static UINT8 *darktowr_mcu_ports;
|
static UINT8 *darktowr_mcu_ports;
|
||||||
static UINT8 *rambase;
|
static UINT8 *rambase;
|
||||||
/* end of private globals */
|
/* end of private globals */
|
||||||
@ -196,7 +195,10 @@ static MACHINE_START( ddragon )
|
|||||||
static MACHINE_RESET( ddragon )
|
static MACHINE_RESET( ddragon )
|
||||||
{
|
{
|
||||||
dd_sub_cpu_busy = 1;
|
dd_sub_cpu_busy = 1;
|
||||||
|
adpcm_pos[0] = adpcm_pos[1] = 0;
|
||||||
|
adpcm_end[0] = adpcm_end[1] = 0;
|
||||||
adpcm_idle[0] = adpcm_idle[1] = 1;
|
adpcm_idle[0] = adpcm_idle[1] = 1;
|
||||||
|
adpcm_data[0] = adpcm_data[1] = -1;
|
||||||
timer_adjust_oneshot(scanline_timer, video_screen_get_time_until_pos(machine->primary_screen, 0, 0), 0);
|
timer_adjust_oneshot(scanline_timer, video_screen_get_time_until_pos(machine->primary_screen, 0, 0), 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -463,8 +465,6 @@ static WRITE8_HANDLER( dd_adpcm_w )
|
|||||||
|
|
||||||
static void dd_adpcm_int(running_machine *machine, int chip)
|
static void dd_adpcm_int(running_machine *machine, int chip)
|
||||||
{
|
{
|
||||||
static int adpcm_data[2] = { -1, -1 };
|
|
||||||
|
|
||||||
if (adpcm_pos[chip] >= adpcm_end[chip] || adpcm_pos[chip] >= 0x10000)
|
if (adpcm_pos[chip] >= adpcm_end[chip] || adpcm_pos[chip] >= 0x10000)
|
||||||
{
|
{
|
||||||
adpcm_idle[chip] = 1;
|
adpcm_idle[chip] = 1;
|
||||||
|
@ -49,6 +49,7 @@ static UINT8* discoboy_ram_att;
|
|||||||
static UINT8 discoboy_ram_bank;
|
static UINT8 discoboy_ram_bank;
|
||||||
static UINT8 port_00;
|
static UINT8 port_00;
|
||||||
static UINT8 discoboy_gfxbank;
|
static UINT8 discoboy_gfxbank;
|
||||||
|
static int adpcm_data;
|
||||||
|
|
||||||
static VIDEO_START( discoboy )
|
static VIDEO_START( discoboy )
|
||||||
{
|
{
|
||||||
@ -330,8 +331,6 @@ ADDRESS_MAP_END
|
|||||||
|
|
||||||
/* Sound */
|
/* Sound */
|
||||||
|
|
||||||
static int adpcm_data = 0x80;
|
|
||||||
|
|
||||||
//static WRITE8_HANDLER( splash_adpcm_data_w ){
|
//static WRITE8_HANDLER( splash_adpcm_data_w ){
|
||||||
// adpcm_data = data;
|
// adpcm_data = data;
|
||||||
//}
|
//}
|
||||||
@ -460,7 +459,6 @@ static const gfx_layout tiles8x8_layout2 =
|
|||||||
static GFXDECODE_START( discoboy )
|
static GFXDECODE_START( discoboy )
|
||||||
GFXDECODE_ENTRY( "gfx1", 0, tiles8x8_layout, 0x000, 128 )
|
GFXDECODE_ENTRY( "gfx1", 0, tiles8x8_layout, 0x000, 128 )
|
||||||
GFXDECODE_ENTRY( "gfx2", 0, tiles8x8_layout2, 0x000, 128 )
|
GFXDECODE_ENTRY( "gfx2", 0, tiles8x8_layout2, 0x000, 128 )
|
||||||
|
|
||||||
GFXDECODE_END
|
GFXDECODE_END
|
||||||
|
|
||||||
|
|
||||||
@ -471,6 +469,13 @@ static const msm5205_interface discoboy_msm5205_interface =
|
|||||||
MSM5205_S48_4B /* ??? unknown hz */
|
MSM5205_S48_4B /* ??? unknown hz */
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static MACHINE_RESET( discoboy )
|
||||||
|
{
|
||||||
|
discoboy_ram_bank = 0;
|
||||||
|
port_00 = 0;
|
||||||
|
discoboy_gfxbank = 0;
|
||||||
|
adpcm_data = 0x80;
|
||||||
|
}
|
||||||
|
|
||||||
static MACHINE_DRIVER_START( discoboy )
|
static MACHINE_DRIVER_START( discoboy )
|
||||||
/* basic machine hardware */
|
/* basic machine hardware */
|
||||||
@ -499,6 +504,8 @@ static MACHINE_DRIVER_START( discoboy )
|
|||||||
MDRV_VIDEO_START(discoboy)
|
MDRV_VIDEO_START(discoboy)
|
||||||
MDRV_VIDEO_UPDATE(discoboy)
|
MDRV_VIDEO_UPDATE(discoboy)
|
||||||
|
|
||||||
|
MDRV_MACHINE_RESET( discoboy )
|
||||||
|
|
||||||
/* sound hardware */
|
/* sound hardware */
|
||||||
MDRV_SPEAKER_STANDARD_MONO("mono")
|
MDRV_SPEAKER_STANDARD_MONO("mono")
|
||||||
|
|
||||||
|
@ -159,14 +159,16 @@ Dip locations verified with manual for docastle, dorunrun and dowild.
|
|||||||
#include "includes/docastle.h"
|
#include "includes/docastle.h"
|
||||||
|
|
||||||
|
|
||||||
|
static int adpcm_pos, adpcm_idle;
|
||||||
|
static int adpcm_data;
|
||||||
|
static int adpcm_status;
|
||||||
|
|
||||||
|
|
||||||
/* Read/Write Handlers */
|
/* Read/Write Handlers */
|
||||||
|
|
||||||
static int adpcm_pos, adpcm_idle;
|
|
||||||
|
|
||||||
static void idsoccer_adpcm_int(running_machine *machine, int chip)
|
static void idsoccer_adpcm_int(running_machine *machine, int chip)
|
||||||
{
|
{
|
||||||
static int adpcm_data = -1;
|
|
||||||
|
|
||||||
if (adpcm_pos >= memory_region_length(machine, "adpcm"))
|
if (adpcm_pos >= memory_region_length(machine, "adpcm"))
|
||||||
{
|
{
|
||||||
adpcm_idle = 1;
|
adpcm_idle = 1;
|
||||||
@ -187,9 +189,8 @@ static void idsoccer_adpcm_int(running_machine *machine, int chip)
|
|||||||
static READ8_HANDLER( idsoccer_adpcm_status_r )
|
static READ8_HANDLER( idsoccer_adpcm_status_r )
|
||||||
{
|
{
|
||||||
// this is wrong, but the samples work anyway!!
|
// this is wrong, but the samples work anyway!!
|
||||||
static int i;
|
adpcm_status ^= 0x80;
|
||||||
i ^= 0x80;
|
return adpcm_status;
|
||||||
return i;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static WRITE8_HANDLER( idsoccer_adpcm_w )
|
static WRITE8_HANDLER( idsoccer_adpcm_w )
|
||||||
@ -571,6 +572,14 @@ static const msm5205_interface msm5205_config =
|
|||||||
|
|
||||||
/* Machine Drivers */
|
/* Machine Drivers */
|
||||||
|
|
||||||
|
static MACHINE_RESET( docastle )
|
||||||
|
{
|
||||||
|
adpcm_pos = adpcm_idle = 0;
|
||||||
|
adpcm_data = -1;
|
||||||
|
adpcm_status = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
static MACHINE_DRIVER_START( docastle )
|
static MACHINE_DRIVER_START( docastle )
|
||||||
// basic machine hardware
|
// basic machine hardware
|
||||||
// MDRV_CPU_ADD("main", Z80, 4000000) // 4 MHz
|
// MDRV_CPU_ADD("main", Z80, 4000000) // 4 MHz
|
||||||
@ -603,6 +612,8 @@ static MACHINE_DRIVER_START( docastle )
|
|||||||
MDRV_VIDEO_START(docastle)
|
MDRV_VIDEO_START(docastle)
|
||||||
MDRV_VIDEO_UPDATE(docastle)
|
MDRV_VIDEO_UPDATE(docastle)
|
||||||
|
|
||||||
|
MDRV_MACHINE_RESET( docastle )
|
||||||
|
|
||||||
// sound hardware
|
// sound hardware
|
||||||
MDRV_SPEAKER_STANDARD_MONO("mono")
|
MDRV_SPEAKER_STANDARD_MONO("mono")
|
||||||
|
|
||||||
|
@ -17,6 +17,9 @@ static bitmap_t *ml_bitmap[8];
|
|||||||
#define ML_CHARS 0x2000
|
#define ML_CHARS 0x2000
|
||||||
static UINT8 dirtychar[ML_CHARS];
|
static UINT8 dirtychar[ML_CHARS];
|
||||||
static int status_bit;
|
static int status_bit;
|
||||||
|
static int adpcm_pos;
|
||||||
|
static int adpcm_data;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
static const gfx_layout tiles8x8_layout =
|
static const gfx_layout tiles8x8_layout =
|
||||||
@ -87,12 +90,8 @@ static WRITE8_HANDLER( sound_bankswitch_w )
|
|||||||
memory_set_bankptr( 1, memory_region(machine, "z80") + ((data) & 0x03) * 0x4000 + 0x10000 );
|
memory_set_bankptr( 1, memory_region(machine, "z80") + ((data) & 0x03) * 0x4000 + 0x10000 );
|
||||||
}
|
}
|
||||||
|
|
||||||
static int adpcm_pos;
|
|
||||||
|
|
||||||
static void ml_msm5205_vck(running_machine *machine, int chip)
|
static void ml_msm5205_vck(running_machine *machine, int chip)
|
||||||
{
|
{
|
||||||
static int adpcm_data = -1;
|
|
||||||
|
|
||||||
if (adpcm_data != -1)
|
if (adpcm_data != -1)
|
||||||
{
|
{
|
||||||
msm5205_data_w(0, adpcm_data & 0x0f);
|
msm5205_data_w(0, adpcm_data & 0x0f);
|
||||||
@ -352,6 +351,12 @@ static const ym2151_interface ym2151_config =
|
|||||||
sound_bankswitch_w
|
sound_bankswitch_w
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static MACHINE_RESET( mlanding )
|
||||||
|
{
|
||||||
|
status_bit = 0;
|
||||||
|
adpcm_pos = 0;
|
||||||
|
adpcm_data = -1;
|
||||||
|
}
|
||||||
|
|
||||||
static MACHINE_DRIVER_START( mlanding )
|
static MACHINE_DRIVER_START( mlanding )
|
||||||
|
|
||||||
@ -385,6 +390,8 @@ static MACHINE_DRIVER_START( mlanding )
|
|||||||
MDRV_VIDEO_START(mlanding)
|
MDRV_VIDEO_START(mlanding)
|
||||||
MDRV_VIDEO_UPDATE(mlanding)
|
MDRV_VIDEO_UPDATE(mlanding)
|
||||||
|
|
||||||
|
MDRV_MACHINE_RESET(mlanding)
|
||||||
|
|
||||||
/* sound hardware */
|
/* sound hardware */
|
||||||
MDRV_SPEAKER_STANDARD_MONO("mono")
|
MDRV_SPEAKER_STANDARD_MONO("mono")
|
||||||
|
|
||||||
|
@ -131,17 +131,6 @@ GFXDECODE_END
|
|||||||
|
|
||||||
/* Machine Initialization */
|
/* Machine Initialization */
|
||||||
|
|
||||||
static TIMER_CALLBACK( nitedrvr_crash_toggle_callback )
|
|
||||||
{
|
|
||||||
nitedrvr_crash_toggle(machine);
|
|
||||||
}
|
|
||||||
|
|
||||||
static MACHINE_RESET( nitedrvr )
|
|
||||||
{
|
|
||||||
timer_pulse(PERIOD_OF_555_ASTABLE(RES_K(180), 330, CAP_U(1)), NULL, 0, nitedrvr_crash_toggle_callback);
|
|
||||||
nitedrvr_register_machine_vars();
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Machine Driver */
|
/* Machine Driver */
|
||||||
|
|
||||||
static MACHINE_DRIVER_START( nitedrvr )
|
static MACHINE_DRIVER_START( nitedrvr )
|
||||||
@ -151,6 +140,7 @@ static MACHINE_DRIVER_START( nitedrvr )
|
|||||||
MDRV_CPU_VBLANK_INT("main", irq0_line_hold)
|
MDRV_CPU_VBLANK_INT("main", irq0_line_hold)
|
||||||
MDRV_WATCHDOG_VBLANK_INIT(3)
|
MDRV_WATCHDOG_VBLANK_INIT(3)
|
||||||
|
|
||||||
|
MDRV_MACHINE_START(nitedrvr)
|
||||||
MDRV_MACHINE_RESET(nitedrvr)
|
MDRV_MACHINE_RESET(nitedrvr)
|
||||||
|
|
||||||
// video hardware
|
// video hardware
|
||||||
|
@ -119,6 +119,9 @@ int opwolf_region;
|
|||||||
static UINT8 *cchip_ram;
|
static UINT8 *cchip_ram;
|
||||||
static UINT8 adpcm_b[0x08];
|
static UINT8 adpcm_b[0x08];
|
||||||
static UINT8 adpcm_c[0x08];
|
static UINT8 adpcm_c[0x08];
|
||||||
|
static UINT32 adpcm_pos[2],adpcm_end[2];
|
||||||
|
static int adpcm_data[2];
|
||||||
|
|
||||||
static int opwolf_gun_xoffs, opwolf_gun_yoffs;
|
static int opwolf_gun_xoffs, opwolf_gun_yoffs;
|
||||||
|
|
||||||
WRITE16_HANDLER( rainbow_spritectrl_w );
|
WRITE16_HANDLER( rainbow_spritectrl_w );
|
||||||
@ -291,8 +294,6 @@ static ADDRESS_MAP_START( z80_readmem, ADDRESS_SPACE_PROGRAM, 8 )
|
|||||||
ADDRESS_MAP_END
|
ADDRESS_MAP_END
|
||||||
|
|
||||||
|
|
||||||
static UINT32 adpcm_pos[2],adpcm_end[2];
|
|
||||||
|
|
||||||
//static UINT8 adpcm_d[0x08];
|
//static UINT8 adpcm_d[0x08];
|
||||||
//0 - start ROM offset LSB
|
//0 - start ROM offset LSB
|
||||||
//1 - start ROM offset MSB
|
//1 - start ROM offset MSB
|
||||||
@ -313,14 +314,18 @@ static MACHINE_START( opwolf )
|
|||||||
|
|
||||||
static MACHINE_RESET( opwolf )
|
static MACHINE_RESET( opwolf )
|
||||||
{
|
{
|
||||||
|
adpcm_b[0] = adpcm_b[1] = 0;
|
||||||
|
adpcm_c[0] = adpcm_c[1] = 0;
|
||||||
|
adpcm_pos[0] = adpcm_pos[1] = 0;
|
||||||
|
adpcm_end[0] = adpcm_end[1] = 0;
|
||||||
|
adpcm_data[0] = adpcm_data[1] = -1;
|
||||||
|
|
||||||
msm5205_reset_w(0, 1);
|
msm5205_reset_w(0, 1);
|
||||||
msm5205_reset_w(1, 1);
|
msm5205_reset_w(1, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void opwolf_msm5205_vck(running_machine *machine, int chip)
|
static void opwolf_msm5205_vck(running_machine *machine, int chip)
|
||||||
{
|
{
|
||||||
static int adpcm_data[2] = { -1, -1 };
|
|
||||||
|
|
||||||
if (adpcm_data[chip] != -1)
|
if (adpcm_data[chip] != -1)
|
||||||
{
|
{
|
||||||
msm5205_data_w(chip, adpcm_data[chip] & 0x0f);
|
msm5205_data_w(chip, adpcm_data[chip] & 0x0f);
|
||||||
|
@ -170,6 +170,10 @@ VIDEO_START( rastan );
|
|||||||
VIDEO_UPDATE( rastan );
|
VIDEO_UPDATE( rastan );
|
||||||
|
|
||||||
|
|
||||||
|
static int adpcm_pos;
|
||||||
|
static int adpcm_data;
|
||||||
|
|
||||||
|
|
||||||
static WRITE8_HANDLER( rastan_bankswitch_w )
|
static WRITE8_HANDLER( rastan_bankswitch_w )
|
||||||
{
|
{
|
||||||
int offs;
|
int offs;
|
||||||
@ -182,12 +186,8 @@ static WRITE8_HANDLER( rastan_bankswitch_w )
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static int adpcm_pos;
|
|
||||||
|
|
||||||
static void rastan_msm5205_vck(running_machine *machine, int chip)
|
static void rastan_msm5205_vck(running_machine *machine, int chip)
|
||||||
{
|
{
|
||||||
static int adpcm_data = -1;
|
|
||||||
|
|
||||||
if (adpcm_data != -1)
|
if (adpcm_data != -1)
|
||||||
{
|
{
|
||||||
msm5205_data_w(0, adpcm_data & 0x0f);
|
msm5205_data_w(0, adpcm_data & 0x0f);
|
||||||
@ -373,6 +373,11 @@ static const msm5205_interface msm5205_config =
|
|||||||
MSM5205_S48_4B /* 8 kHz */
|
MSM5205_S48_4B /* 8 kHz */
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static MACHINE_RESET( rastan )
|
||||||
|
{
|
||||||
|
adpcm_pos = 0;
|
||||||
|
adpcm_data = -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
static MACHINE_DRIVER_START( rastan )
|
static MACHINE_DRIVER_START( rastan )
|
||||||
@ -401,6 +406,8 @@ static MACHINE_DRIVER_START( rastan )
|
|||||||
MDRV_VIDEO_START(rastan)
|
MDRV_VIDEO_START(rastan)
|
||||||
MDRV_VIDEO_UPDATE(rastan)
|
MDRV_VIDEO_UPDATE(rastan)
|
||||||
|
|
||||||
|
MDRV_MACHINE_RESET(rastan)
|
||||||
|
|
||||||
/* sound hardware */
|
/* sound hardware */
|
||||||
MDRV_SPEAKER_STANDARD_MONO("mono")
|
MDRV_SPEAKER_STANDARD_MONO("mono")
|
||||||
|
|
||||||
|
@ -41,6 +41,13 @@ WRITE8_HANDLER( spdodgeb_videoram_w );
|
|||||||
/* private globals */
|
/* private globals */
|
||||||
static int toggle=0;//, soundcode = 0;
|
static int toggle=0;//, soundcode = 0;
|
||||||
static int adpcm_pos[2],adpcm_end[2],adpcm_idle[2];
|
static int adpcm_pos[2],adpcm_end[2],adpcm_idle[2];
|
||||||
|
static int adpcm_data[2];
|
||||||
|
static int mcu63701_command;
|
||||||
|
static int inputs[4];
|
||||||
|
|
||||||
|
static UINT8 tapc[4] = {0,0,0,0}; // R1, R2, L1, L2
|
||||||
|
static UINT8 last_port[2] = {0,0};
|
||||||
|
static UINT8 last_dash[2] = {0,0};
|
||||||
/* end of private globals */
|
/* end of private globals */
|
||||||
|
|
||||||
|
|
||||||
@ -78,8 +85,6 @@ static WRITE8_HANDLER( spd_adpcm_w )
|
|||||||
|
|
||||||
static void spd_adpcm_int(running_machine *machine, int chip)
|
static void spd_adpcm_int(running_machine *machine, int chip)
|
||||||
{
|
{
|
||||||
static int adpcm_data[2] = { -1, -1 };
|
|
||||||
|
|
||||||
if (adpcm_pos[chip] >= adpcm_end[chip] || adpcm_pos[chip] >= 0x10000)
|
if (adpcm_pos[chip] >= adpcm_end[chip] || adpcm_pos[chip] >= 0x10000)
|
||||||
{
|
{
|
||||||
adpcm_idle[chip] = 1;
|
adpcm_idle[chip] = 1;
|
||||||
@ -100,9 +105,6 @@ static void spd_adpcm_int(running_machine *machine, int chip)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static int mcu63701_command;
|
|
||||||
static int inputs[4];
|
|
||||||
|
|
||||||
#if 0 // default - more sensitive (state change and timing measured on real board?)
|
#if 0 // default - more sensitive (state change and timing measured on real board?)
|
||||||
static void mcu63705_update_inputs(running_machine *machine)
|
static void mcu63705_update_inputs(running_machine *machine)
|
||||||
{
|
{
|
||||||
@ -178,9 +180,6 @@ static void mcu63705_update_inputs(running_machine *machine)
|
|||||||
#define A 0x10
|
#define A 0x10
|
||||||
#define D 0x20
|
#define D 0x20
|
||||||
|
|
||||||
static UINT8 tapc[4] = {0,0,0,0}; // R1, R2, L1, L2
|
|
||||||
static UINT8 last_port[2] = {0,0};
|
|
||||||
static UINT8 last_dash[2] = {0,0};
|
|
||||||
UINT8 curr_port[2];
|
UINT8 curr_port[2];
|
||||||
UINT8 curr_dash[2];
|
UINT8 curr_dash[2];
|
||||||
int p;
|
int p;
|
||||||
@ -429,6 +428,19 @@ static const msm5205_interface msm5205_config =
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
static MACHINE_RESET( spdodgeb )
|
||||||
|
{
|
||||||
|
toggle = 0;
|
||||||
|
adpcm_pos[0] = adpcm_pos[1] = 0;
|
||||||
|
adpcm_end[0] = adpcm_end[0] = 0;
|
||||||
|
adpcm_idle[0] = adpcm_data[1] = 0;
|
||||||
|
adpcm_data[0] = adpcm_data[1] = -1;
|
||||||
|
mcu63701_command = 0;
|
||||||
|
memset(inputs, 0, sizeof(inputs));
|
||||||
|
memset(tapc, 0, sizeof(tapc));
|
||||||
|
last_port[0] = last_port[1] = 0;
|
||||||
|
last_dash[0] = last_dash[1] = 0;
|
||||||
|
}
|
||||||
|
|
||||||
static MACHINE_DRIVER_START( spdodgeb )
|
static MACHINE_DRIVER_START( spdodgeb )
|
||||||
|
|
||||||
@ -455,6 +467,8 @@ static MACHINE_DRIVER_START( spdodgeb )
|
|||||||
MDRV_VIDEO_START(spdodgeb)
|
MDRV_VIDEO_START(spdodgeb)
|
||||||
MDRV_VIDEO_UPDATE(spdodgeb)
|
MDRV_VIDEO_UPDATE(spdodgeb)
|
||||||
|
|
||||||
|
MDRV_MACHINE_RESET( spdodgeb )
|
||||||
|
|
||||||
/* sound hardware */
|
/* sound hardware */
|
||||||
MDRV_SPEAKER_STANDARD_STEREO("left", "right")
|
MDRV_SPEAKER_STANDARD_STEREO("left", "right")
|
||||||
|
|
||||||
|
@ -56,6 +56,8 @@ extern UINT16 *splash_spriteram;
|
|||||||
extern UINT16 *splash_pixelram;
|
extern UINT16 *splash_pixelram;
|
||||||
extern UINT16 *roldfrog_bitmap_mode;
|
extern UINT16 *roldfrog_bitmap_mode;
|
||||||
static UINT16 *roldfrog_protdata;
|
static UINT16 *roldfrog_protdata;
|
||||||
|
static int adpcm_data;
|
||||||
|
static int ret;
|
||||||
|
|
||||||
extern int splash_bitmap_type;
|
extern int splash_bitmap_type;
|
||||||
extern int splash_sprite_attr2_shift;
|
extern int splash_sprite_attr2_shift;
|
||||||
@ -137,8 +139,6 @@ static ADDRESS_MAP_START( splash_readmem_sound, ADDRESS_SPACE_PROGRAM, 8 )
|
|||||||
AM_RANGE(0xf800, 0xffff) AM_READ(SMH_RAM) /* RAM */
|
AM_RANGE(0xf800, 0xffff) AM_READ(SMH_RAM) /* RAM */
|
||||||
ADDRESS_MAP_END
|
ADDRESS_MAP_END
|
||||||
|
|
||||||
static int adpcm_data;
|
|
||||||
|
|
||||||
static WRITE8_HANDLER( splash_adpcm_data_w ){
|
static WRITE8_HANDLER( splash_adpcm_data_w ){
|
||||||
adpcm_data = data;
|
adpcm_data = data;
|
||||||
}
|
}
|
||||||
@ -165,7 +165,6 @@ ADDRESS_MAP_END
|
|||||||
|
|
||||||
static READ16_HANDLER( roldfrog_bombs_r )
|
static READ16_HANDLER( roldfrog_bombs_r )
|
||||||
{
|
{
|
||||||
static int ret = 0x100;
|
|
||||||
ret ^= 0x100;
|
ret ^= 0x100;
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
@ -429,6 +428,11 @@ static const msm5205_interface splash_msm5205_interface =
|
|||||||
MSM5205_S48_4B /* 8KHz */
|
MSM5205_S48_4B /* 8KHz */
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static MACHINE_RESET( splash )
|
||||||
|
{
|
||||||
|
adpcm_data = 0;
|
||||||
|
ret = 0x100;
|
||||||
|
}
|
||||||
|
|
||||||
static MACHINE_DRIVER_START( splash )
|
static MACHINE_DRIVER_START( splash )
|
||||||
|
|
||||||
@ -455,6 +459,8 @@ static MACHINE_DRIVER_START( splash )
|
|||||||
MDRV_VIDEO_START(splash)
|
MDRV_VIDEO_START(splash)
|
||||||
MDRV_VIDEO_UPDATE(splash)
|
MDRV_VIDEO_UPDATE(splash)
|
||||||
|
|
||||||
|
MDRV_MACHINE_RESET( splash )
|
||||||
|
|
||||||
/* sound hardware */
|
/* sound hardware */
|
||||||
MDRV_SPEAKER_STANDARD_MONO("mono")
|
MDRV_SPEAKER_STANDARD_MONO("mono")
|
||||||
|
|
||||||
@ -508,6 +514,8 @@ static MACHINE_DRIVER_START( roldfrog )
|
|||||||
MDRV_VIDEO_START(splash)
|
MDRV_VIDEO_START(splash)
|
||||||
MDRV_VIDEO_UPDATE(splash)
|
MDRV_VIDEO_UPDATE(splash)
|
||||||
|
|
||||||
|
MDRV_MACHINE_RESET( splash )
|
||||||
|
|
||||||
MDRV_SPEAKER_STANDARD_MONO("mono")
|
MDRV_SPEAKER_STANDARD_MONO("mono")
|
||||||
|
|
||||||
MDRV_SOUND_ADD("ym", YM2203, 3000000)
|
MDRV_SOUND_ADD("ym", YM2203, 3000000)
|
||||||
@ -544,6 +552,8 @@ static MACHINE_DRIVER_START( funystrp )
|
|||||||
MDRV_VIDEO_START(splash)
|
MDRV_VIDEO_START(splash)
|
||||||
MDRV_VIDEO_UPDATE(funystrp)
|
MDRV_VIDEO_UPDATE(funystrp)
|
||||||
|
|
||||||
|
MDRV_MACHINE_RESET( splash )
|
||||||
|
|
||||||
/* sound hardware */
|
/* sound hardware */
|
||||||
// MDRV_SPEAKER_STANDARD_MONO("mono")
|
// MDRV_SPEAKER_STANDARD_MONO("mono")
|
||||||
|
|
||||||
|
@ -119,6 +119,20 @@ static read8_machine_func porte1_r;
|
|||||||
static read8_machine_func portf0_r;
|
static read8_machine_func portf0_r;
|
||||||
static read8_machine_func portf1_r;
|
static read8_machine_func portf1_r;
|
||||||
|
|
||||||
|
static int adpcm_pos;
|
||||||
|
static int adpcm_data;
|
||||||
|
static int trackx,tracky;
|
||||||
|
static int mux_ctrl = 0;
|
||||||
|
static int extport;
|
||||||
|
static int last_irq_level;
|
||||||
|
static int high = 0;
|
||||||
|
static int high2 = 0;
|
||||||
|
|
||||||
|
static const UINT8 *mcu_reply;
|
||||||
|
static int mcu_pos = 0, mcu_reply_len = 0;
|
||||||
|
static int last_data_adr, last_data;
|
||||||
|
static int cur_bank = 0;
|
||||||
|
|
||||||
static void palette_notifier(int addr)
|
static void palette_notifier(int addr)
|
||||||
{
|
{
|
||||||
UINT8 *p = palette_ram + (addr & ~1);
|
UINT8 *p = palette_ram + (addr & ~1);
|
||||||
@ -166,6 +180,19 @@ static void machine_init(running_machine *machine)
|
|||||||
decodechar(machine->gfx[2], i, taitol_rambanks);
|
decodechar(machine->gfx[2], i, taitol_rambanks);
|
||||||
decodechar(machine->gfx[2], i+512, taitol_rambanks + 0x4000);
|
decodechar(machine->gfx[2], i+512, taitol_rambanks + 0x4000);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
adpcm_pos = 0;
|
||||||
|
adpcm_data = -1;
|
||||||
|
trackx = tracky = 0;
|
||||||
|
mux_ctrl = 0;
|
||||||
|
extport = 0;
|
||||||
|
last_irq_level = 0;
|
||||||
|
high = 0;
|
||||||
|
high2 = 0;
|
||||||
|
|
||||||
|
mcu_pos = mcu_reply_len = 0;
|
||||||
|
last_data_adr = last_data = 0;
|
||||||
|
cur_bank = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -261,8 +288,6 @@ static MACHINE_RESET( horshoes )
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static int last_irq_level;
|
|
||||||
|
|
||||||
static IRQ_CALLBACK(irq_callback)
|
static IRQ_CALLBACK(irq_callback)
|
||||||
{
|
{
|
||||||
return irq_adr_table[last_irq_level];
|
return irq_adr_table[last_irq_level];
|
||||||
@ -323,7 +348,6 @@ static READ8_HANDLER( irq_enable_r )
|
|||||||
|
|
||||||
static WRITE8_HANDLER( rombankswitch_w )
|
static WRITE8_HANDLER( rombankswitch_w )
|
||||||
{
|
{
|
||||||
static int high = 0;
|
|
||||||
if(cur_rombank != data)
|
if(cur_rombank != data)
|
||||||
{
|
{
|
||||||
if(data>high)
|
if(data>high)
|
||||||
@ -340,16 +364,14 @@ static WRITE8_HANDLER( rombankswitch_w )
|
|||||||
|
|
||||||
static WRITE8_HANDLER( rombank2switch_w )
|
static WRITE8_HANDLER( rombank2switch_w )
|
||||||
{
|
{
|
||||||
static int high = 0;
|
|
||||||
|
|
||||||
data &= 0xf;
|
data &= 0xf;
|
||||||
|
|
||||||
if(cur_rombank2 != data)
|
if(cur_rombank2 != data)
|
||||||
{
|
{
|
||||||
if(data>high)
|
if(data>high2)
|
||||||
{
|
{
|
||||||
high = data;
|
high2 = data;
|
||||||
logerror("New rom2 size : %x\n", (high+1)*0x4000);
|
logerror("New rom2 size : %x\n", (high2+1)*0x4000);
|
||||||
}
|
}
|
||||||
|
|
||||||
// logerror("robs2 %02x (%04x)\n", data, activecpu_get_pc());
|
// logerror("robs2 %02x (%04x)\n", data, activecpu_get_pc());
|
||||||
@ -449,8 +471,6 @@ static WRITE8_HANDLER( control2_w )
|
|||||||
coin_counter_w(1,data & 0x08);
|
coin_counter_w(1,data & 0x08);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int extport;
|
|
||||||
|
|
||||||
static READ8_HANDLER( portA_r )
|
static READ8_HANDLER( portA_r )
|
||||||
{
|
{
|
||||||
if (extport == 0) return porte0_r(machine,0);
|
if (extport == 0) return porte0_r(machine,0);
|
||||||
@ -475,10 +495,6 @@ static READ8_HANDLER( ym2203_data1_r )
|
|||||||
return ym2203_read_port_0_r(machine,offset);
|
return ym2203_read_port_0_r(machine,offset);
|
||||||
}
|
}
|
||||||
|
|
||||||
static const UINT8 *mcu_reply;
|
|
||||||
static int mcu_pos = 0, mcu_reply_len = 0;
|
|
||||||
static int last_data_adr, last_data;
|
|
||||||
|
|
||||||
static const UINT8 puzznic_mcu_reply[] = { 0x50, 0x1f, 0xb6, 0xba, 0x06, 0x03, 0x47, 0x05, 0x00 };
|
static const UINT8 puzznic_mcu_reply[] = { 0x50, 0x1f, 0xb6, 0xba, 0x06, 0x03, 0x47, 0x05, 0x00 };
|
||||||
|
|
||||||
static WRITE8_HANDLER( mcu_data_w )
|
static WRITE8_HANDLER( mcu_data_w )
|
||||||
@ -533,8 +549,6 @@ static WRITE8_HANDLER( shared_w )
|
|||||||
shared_ram[offset] = data;
|
shared_ram[offset] = data;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int mux_ctrl = 0;
|
|
||||||
|
|
||||||
static READ8_HANDLER( mux_r )
|
static READ8_HANDLER( mux_r )
|
||||||
{
|
{
|
||||||
switch(mux_ctrl)
|
switch(mux_ctrl)
|
||||||
@ -575,12 +589,8 @@ static WRITE8_HANDLER( mux_ctrl_w )
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
static int adpcm_pos;
|
|
||||||
|
|
||||||
static void champwr_msm5205_vck(running_machine *machine, int chip)
|
static void champwr_msm5205_vck(running_machine *machine, int chip)
|
||||||
{
|
{
|
||||||
static int adpcm_data = -1;
|
|
||||||
|
|
||||||
if (adpcm_data != -1)
|
if (adpcm_data != -1)
|
||||||
{
|
{
|
||||||
msm5205_data_w(0, adpcm_data & 0x0f);
|
msm5205_data_w(0, adpcm_data & 0x0f);
|
||||||
@ -622,8 +632,6 @@ static WRITE8_HANDLER( champwr_msm5205_volume_w )
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
static int trackx,tracky;
|
|
||||||
|
|
||||||
static READ8_HANDLER( horshoes_tracky_reset_r )
|
static READ8_HANDLER( horshoes_tracky_reset_r )
|
||||||
{
|
{
|
||||||
/* reset the trackball counter */
|
/* reset the trackball counter */
|
||||||
@ -2105,8 +2113,6 @@ static void irqhandler(running_machine *machine, int irq)
|
|||||||
|
|
||||||
static WRITE8_HANDLER( portA_w )
|
static WRITE8_HANDLER( portA_w )
|
||||||
{
|
{
|
||||||
static int cur_bank = 0;
|
|
||||||
|
|
||||||
if (cur_bank != (data & 0x03) )
|
if (cur_bank != (data & 0x03) )
|
||||||
{
|
{
|
||||||
int bankaddress;
|
int bankaddress;
|
||||||
|
@ -171,7 +171,7 @@ TODO:
|
|||||||
#include "includes/taitosj.h"
|
#include "includes/taitosj.h"
|
||||||
|
|
||||||
|
|
||||||
static UINT8 sndnmi_disable = 1;
|
static UINT8 sndnmi_disable;
|
||||||
|
|
||||||
static WRITE8_HANDLER( taitosj_sndnmi_msk_w )
|
static WRITE8_HANDLER( taitosj_sndnmi_msk_w )
|
||||||
{
|
{
|
||||||
@ -2697,14 +2697,45 @@ ROM_START( kikstart )
|
|||||||
ROM_LOAD( "pal16l8.28", 0x0000, 0x0104, NO_DUMP ) /* PAL is read protected */
|
ROM_LOAD( "pal16l8.28", 0x0000, 0x0104, NO_DUMP ) /* PAL is read protected */
|
||||||
ROM_END
|
ROM_END
|
||||||
|
|
||||||
|
static void reset_common(running_machine *machine)
|
||||||
|
{
|
||||||
|
sndnmi_disable = 1;
|
||||||
|
input_port_4_f0 = 0;
|
||||||
|
/* start in 1st gear */
|
||||||
|
kikstart_gears[0] = 0x02;
|
||||||
|
kikstart_gears[1] = 0x02;
|
||||||
|
dac_out = 0;
|
||||||
|
dac_vol = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void init_common(running_machine *machine)
|
||||||
|
{
|
||||||
|
state_save_register_global(sndnmi_disable);
|
||||||
|
state_save_register_global(input_port_4_f0);
|
||||||
|
state_save_register_global_array(kikstart_gears);
|
||||||
|
state_save_register_global(dac_out);
|
||||||
|
state_save_register_global(dac_vol);
|
||||||
|
|
||||||
|
add_reset_callback(machine, reset_common);
|
||||||
|
}
|
||||||
|
|
||||||
|
static DRIVER_INIT( taitosj )
|
||||||
|
{
|
||||||
|
init_common(machine);
|
||||||
|
}
|
||||||
|
|
||||||
static DRIVER_INIT( spacecr )
|
static DRIVER_INIT( spacecr )
|
||||||
{
|
{
|
||||||
|
init_common(machine);
|
||||||
|
|
||||||
/* install protection handler */
|
/* install protection handler */
|
||||||
memory_install_read8_handler(machine, 0, ADDRESS_SPACE_PROGRAM, 0xd48b, 0xd48b, 0, 0, spacecr_prot_r);
|
memory_install_read8_handler(machine, 0, ADDRESS_SPACE_PROGRAM, 0xd48b, 0xd48b, 0, 0, spacecr_prot_r);
|
||||||
}
|
}
|
||||||
|
|
||||||
static DRIVER_INIT( alpine )
|
static DRIVER_INIT( alpine )
|
||||||
{
|
{
|
||||||
|
init_common(machine);
|
||||||
|
|
||||||
/* install protection handlers */
|
/* install protection handlers */
|
||||||
memory_install_read8_handler(machine, 0, ADDRESS_SPACE_PROGRAM, 0xd40b, 0xd40b, 0, 0, alpine_port_2_r);
|
memory_install_read8_handler(machine, 0, ADDRESS_SPACE_PROGRAM, 0xd40b, 0xd40b, 0, 0, alpine_port_2_r);
|
||||||
memory_install_write8_handler(machine, 0, ADDRESS_SPACE_PROGRAM, 0xd50f, 0xd50f, 0, 0, alpine_protection_w);
|
memory_install_write8_handler(machine, 0, ADDRESS_SPACE_PROGRAM, 0xd50f, 0xd50f, 0, 0, alpine_protection_w);
|
||||||
@ -2712,6 +2743,8 @@ static DRIVER_INIT( alpine )
|
|||||||
|
|
||||||
static DRIVER_INIT( alpinea )
|
static DRIVER_INIT( alpinea )
|
||||||
{
|
{
|
||||||
|
init_common(machine);
|
||||||
|
|
||||||
/* install protection handlers */
|
/* install protection handlers */
|
||||||
memory_install_read8_handler(machine, 0, ADDRESS_SPACE_PROGRAM, 0xd40b, 0xd40b, 0, 0, alpine_port_2_r);
|
memory_install_read8_handler(machine, 0, ADDRESS_SPACE_PROGRAM, 0xd40b, 0xd40b, 0, 0, alpine_port_2_r);
|
||||||
memory_install_write8_handler(machine, 0, ADDRESS_SPACE_PROGRAM, 0xd50e, 0xd50e, 0, 0, alpinea_bankswitch_w);
|
memory_install_write8_handler(machine, 0, ADDRESS_SPACE_PROGRAM, 0xd50e, 0xd50e, 0, 0, alpinea_bankswitch_w);
|
||||||
@ -2719,45 +2752,31 @@ static DRIVER_INIT( alpinea )
|
|||||||
|
|
||||||
static DRIVER_INIT( junglhbr )
|
static DRIVER_INIT( junglhbr )
|
||||||
{
|
{
|
||||||
|
init_common(machine);
|
||||||
|
|
||||||
/* inverter on bits 0 and 1 */
|
/* inverter on bits 0 and 1 */
|
||||||
memory_install_write8_handler(machine, 0, ADDRESS_SPACE_PROGRAM, 0x9000, 0xbfff, 0, 0, junglhbr_characterram_w);
|
memory_install_write8_handler(machine, 0, ADDRESS_SPACE_PROGRAM, 0x9000, 0xbfff, 0, 0, junglhbr_characterram_w);
|
||||||
}
|
}
|
||||||
|
|
||||||
static DRIVER_INIT( kikstart )
|
GAME( 1981, spaceskr, 0, nomcu, spaceskr, taitosj, ROT0, "Taito Corporation", "Space Seeker", GAME_SUPPORTS_SAVE )
|
||||||
{
|
|
||||||
/* start in 1st gear */
|
|
||||||
kikstart_gears[0] = 0x02;
|
|
||||||
kikstart_gears[1] = 0x02;
|
|
||||||
}
|
|
||||||
|
|
||||||
void taitosj_register_main_savestate(void)
|
|
||||||
{
|
|
||||||
state_save_register_global(sndnmi_disable);
|
|
||||||
state_save_register_global(input_port_4_f0);
|
|
||||||
state_save_register_global_array(kikstart_gears);
|
|
||||||
state_save_register_global(dac_out);
|
|
||||||
state_save_register_global(dac_vol);
|
|
||||||
}
|
|
||||||
|
|
||||||
GAME( 1981, spaceskr, 0, nomcu, spaceskr, 0, ROT0, "Taito Corporation", "Space Seeker", GAME_SUPPORTS_SAVE )
|
|
||||||
GAME( 1981, spacecr, 0, nomcu, spacecr, spacecr, ROT90, "Taito Corporation", "Space Cruiser", GAME_SUPPORTS_SAVE )
|
GAME( 1981, spacecr, 0, nomcu, spacecr, spacecr, ROT90, "Taito Corporation", "Space Cruiser", GAME_SUPPORTS_SAVE )
|
||||||
GAME( 1982, junglek, 0, nomcu, junglek, 0, ROT180, "Taito Corporation", "Jungle King (Japan)", GAME_SUPPORTS_SAVE )
|
GAME( 1982, junglek, 0, nomcu, junglek, taitosj, ROT180, "Taito Corporation", "Jungle King (Japan)", GAME_SUPPORTS_SAVE )
|
||||||
GAME( 1982, junglkj2, junglek, nomcu, junglek, 0, ROT180, "Taito Corporation", "Jungle King (Japan, earlier)", GAME_SUPPORTS_SAVE )
|
GAME( 1982, junglkj2, junglek, nomcu, junglek, taitosj, ROT180, "Taito Corporation", "Jungle King (Japan, earlier)", GAME_SUPPORTS_SAVE )
|
||||||
GAME( 1982, jungleh, junglek, nomcu, junglek, 0, ROT180, "Taito America Corporation", "Jungle Hunt (US)", GAME_SUPPORTS_SAVE )
|
GAME( 1982, jungleh, junglek, nomcu, junglek, taitosj, ROT180, "Taito America Corporation", "Jungle Hunt (US)", GAME_SUPPORTS_SAVE )
|
||||||
GAME( 1983, junglhbr, junglek, nomcu, junglek, junglhbr,ROT180, "Taito do Brasil", "Jungle Hunt (Brazil)", GAME_SUPPORTS_SAVE )
|
GAME( 1983, junglhbr, junglek, nomcu, junglek, junglhbr,ROT180, "Taito do Brasil", "Jungle Hunt (Brazil)", GAME_SUPPORTS_SAVE )
|
||||||
GAME( 1982, piratpet, junglek, nomcu, piratpet, 0, ROT180, "Taito America Corporation", "Pirate Pete", GAME_SUPPORTS_SAVE )
|
GAME( 1982, piratpet, junglek, nomcu, piratpet, taitosj, ROT180, "Taito America Corporation", "Pirate Pete", GAME_SUPPORTS_SAVE )
|
||||||
GAME( 1982, alpine, 0, nomcu, alpine, alpine, ROT270, "Taito Corporation", "Alpine Ski (set 1)", GAME_SUPPORTS_SAVE )
|
GAME( 1982, alpine, 0, nomcu, alpine, alpine, ROT270, "Taito Corporation", "Alpine Ski (set 1)", GAME_SUPPORTS_SAVE )
|
||||||
GAME( 1982, alpinea, alpine, nomcu, alpinea, alpinea, ROT270, "Taito Corporation", "Alpine Ski (set 2)", GAME_SUPPORTS_SAVE )
|
GAME( 1982, alpinea, alpine, nomcu, alpinea, alpinea, ROT270, "Taito Corporation", "Alpine Ski (set 2)", GAME_SUPPORTS_SAVE )
|
||||||
GAME( 1982, timetunl, 0, nomcu, timetunl, 0, ROT0, "Taito Corporation", "Time Tunnel", GAME_SUPPORTS_SAVE )
|
GAME( 1982, timetunl, 0, nomcu, timetunl, taitosj, ROT0, "Taito Corporation", "Time Tunnel", GAME_SUPPORTS_SAVE )
|
||||||
GAME( 1982, wwestern, 0, nomcu, wwestern, 0, ROT270, "Taito Corporation", "Wild Western (set 1)", GAME_SUPPORTS_SAVE )
|
GAME( 1982, wwestern, 0, nomcu, wwestern, taitosj, ROT270, "Taito Corporation", "Wild Western (set 1)", GAME_SUPPORTS_SAVE )
|
||||||
GAME( 1982, wwester1, wwestern, nomcu, wwestern, 0, ROT270, "Taito Corporation", "Wild Western (set 2)", GAME_SUPPORTS_SAVE )
|
GAME( 1982, wwester1, wwestern, nomcu, wwestern, taitosj, ROT270, "Taito Corporation", "Wild Western (set 2)", GAME_SUPPORTS_SAVE )
|
||||||
GAME( 1982, frontlin, 0, mcu, frontlin, 0, ROT270, "Taito Corporation", "Front Line", GAME_SUPPORTS_SAVE )
|
GAME( 1982, frontlin, 0, mcu, frontlin, taitosj, ROT270, "Taito Corporation", "Front Line", GAME_SUPPORTS_SAVE )
|
||||||
GAME( 1983, elevator, 0, mcu, elevator, 0, ROT0, "Taito Corporation", "Elevator Action", GAME_SUPPORTS_SAVE )
|
GAME( 1983, elevator, 0, mcu, elevator, taitosj, ROT0, "Taito Corporation", "Elevator Action", GAME_SUPPORTS_SAVE )
|
||||||
GAME( 1983, elevatob, elevator, nomcu, elevator, 0, ROT0, "bootleg", "Elevator Action (bootleg)", GAME_SUPPORTS_SAVE )
|
GAME( 1983, elevatob, elevator, nomcu, elevator, taitosj, ROT0, "bootleg", "Elevator Action (bootleg)", GAME_SUPPORTS_SAVE )
|
||||||
GAME( 1983, tinstar, 0, mcu, tinstar, 0, ROT0, "Taito Corporation", "The Tin Star (set 1)", GAME_SUPPORTS_SAVE )
|
GAME( 1983, tinstar, 0, mcu, tinstar, taitosj, ROT0, "Taito Corporation", "The Tin Star (set 1)", GAME_SUPPORTS_SAVE )
|
||||||
GAME( 1983, tinstar2, tinstar, mcu, tinstar, 0, ROT0, "Taito Corporation", "The Tin Star (set 2)", GAME_SUPPORTS_SAVE )
|
GAME( 1983, tinstar2, tinstar, mcu, tinstar, taitosj, ROT0, "Taito Corporation", "The Tin Star (set 2)", GAME_SUPPORTS_SAVE )
|
||||||
GAME( 1983, waterski, 0, nomcu, waterski, 0, ROT270, "Taito Corporation", "Water Ski", GAME_SUPPORTS_SAVE )
|
GAME( 1983, waterski, 0, nomcu, waterski, taitosj, ROT270, "Taito Corporation", "Water Ski", GAME_SUPPORTS_SAVE )
|
||||||
GAME( 1983, bioatack, 0, nomcu, bioatack, 0, ROT270, "Taito Corporation (Fox Video Games license)", "Bio Attack", GAME_SUPPORTS_SAVE )
|
GAME( 1983, bioatack, 0, nomcu, bioatack, taitosj, ROT270, "Taito Corporation (Fox Video Games license)", "Bio Attack", GAME_SUPPORTS_SAVE )
|
||||||
GAME( 1984, sfposeid, 0, mcu, sfposeid, 0, ROT0, "Taito Corporation", "Sea Fighter Poseidon", GAME_SUPPORTS_SAVE )
|
GAME( 1984, sfposeid, 0, mcu, sfposeid, taitosj, ROT0, "Taito Corporation", "Sea Fighter Poseidon", GAME_SUPPORTS_SAVE )
|
||||||
GAME( 1983, hwrace, 0, nomcu, hwrace, 0, ROT270, "Taito Corporation", "High Way Race", GAME_SUPPORTS_SAVE )
|
GAME( 1983, hwrace, 0, nomcu, hwrace, taitosj, ROT270, "Taito Corporation", "High Way Race", GAME_SUPPORTS_SAVE )
|
||||||
GAME( 1984, kikstart, 0, kikstart, kikstart, kikstart,ROT0, "Taito Corporation", "Kick Start Wheelie King", GAME_SUPPORTS_SAVE )
|
GAME( 1984, kikstart, 0, kikstart, kikstart, taitosj, ROT0, "Taito Corporation", "Kick Start Wheelie King", GAME_SUPPORTS_SAVE )
|
||||||
|
@ -18,6 +18,10 @@ Might be some priority glitches
|
|||||||
#include "sound/msm5205.h"
|
#include "sound/msm5205.h"
|
||||||
#include "rendlay.h"
|
#include "rendlay.h"
|
||||||
|
|
||||||
|
static int adpcm_pos[2],adpcm_end[2];
|
||||||
|
static int adpcm_data[2];
|
||||||
|
static UINT8 *shared_ram;
|
||||||
|
|
||||||
/* in video/tbowl.c */
|
/* in video/tbowl.c */
|
||||||
extern UINT8 *tbowl_txvideoram, *tbowl_bgvideoram, *tbowl_bg2videoram;
|
extern UINT8 *tbowl_txvideoram, *tbowl_bgvideoram, *tbowl_bg2videoram;
|
||||||
extern UINT8 *tbowl_spriteram;
|
extern UINT8 *tbowl_spriteram;
|
||||||
@ -71,8 +75,6 @@ static WRITE8_HANDLER( tbowlc_bankswitch_w )
|
|||||||
|
|
||||||
***/
|
***/
|
||||||
|
|
||||||
static UINT8 *shared_ram;
|
|
||||||
|
|
||||||
static READ8_HANDLER( shared_r )
|
static READ8_HANDLER( shared_r )
|
||||||
{
|
{
|
||||||
return shared_ram[offset];
|
return shared_ram[offset];
|
||||||
@ -159,8 +161,6 @@ ADDRESS_MAP_END
|
|||||||
|
|
||||||
/* Board A */
|
/* Board A */
|
||||||
|
|
||||||
static int adpcm_pos[2],adpcm_end[2];
|
|
||||||
|
|
||||||
static WRITE8_HANDLER( tbowl_adpcm_start_w )
|
static WRITE8_HANDLER( tbowl_adpcm_start_w )
|
||||||
{
|
{
|
||||||
adpcm_pos[offset & 1] = data << 8;
|
adpcm_pos[offset & 1] = data << 8;
|
||||||
@ -179,8 +179,6 @@ static WRITE8_HANDLER( tbowl_adpcm_vol_w )
|
|||||||
|
|
||||||
static void tbowl_adpcm_int(running_machine *machine, int num)
|
static void tbowl_adpcm_int(running_machine *machine, int num)
|
||||||
{
|
{
|
||||||
static int adpcm_data[2] = { -1, -1 };
|
|
||||||
|
|
||||||
if (adpcm_pos[num] >= adpcm_end[num] ||
|
if (adpcm_pos[num] >= adpcm_end[num] ||
|
||||||
adpcm_pos[num] >= memory_region_length(machine, "adpcm")/2)
|
adpcm_pos[num] >= memory_region_length(machine, "adpcm")/2)
|
||||||
msm5205_reset_w(num,1);
|
msm5205_reset_w(num,1);
|
||||||
@ -559,6 +557,13 @@ The game is displayed on 2 monitors
|
|||||||
|
|
||||||
***/
|
***/
|
||||||
|
|
||||||
|
static MACHINE_RESET( tbowl )
|
||||||
|
{
|
||||||
|
adpcm_pos[0] = adpcm_pos[1] = 0;
|
||||||
|
adpcm_end[0] = adpcm_end[1] = 0;
|
||||||
|
adpcm_data[0] = adpcm_data[1] = -1;
|
||||||
|
}
|
||||||
|
|
||||||
static MACHINE_DRIVER_START( tbowl )
|
static MACHINE_DRIVER_START( tbowl )
|
||||||
|
|
||||||
/* CPU on Board '6206B' */
|
/* CPU on Board '6206B' */
|
||||||
@ -599,6 +604,8 @@ static MACHINE_DRIVER_START( tbowl )
|
|||||||
MDRV_VIDEO_START(tbowl)
|
MDRV_VIDEO_START(tbowl)
|
||||||
MDRV_VIDEO_UPDATE(tbowl)
|
MDRV_VIDEO_UPDATE(tbowl)
|
||||||
|
|
||||||
|
MDRV_MACHINE_RESET( tbowl )
|
||||||
|
|
||||||
/* sound hardware */
|
/* sound hardware */
|
||||||
MDRV_SPEAKER_STANDARD_MONO("mono")
|
MDRV_SPEAKER_STANDARD_MONO("mono")
|
||||||
|
|
||||||
|
@ -64,6 +64,8 @@ WRITE8_HANDLER( tecmo_flipscreen_w );
|
|||||||
VIDEO_START( tecmo );
|
VIDEO_START( tecmo );
|
||||||
VIDEO_UPDATE( tecmo );
|
VIDEO_UPDATE( tecmo );
|
||||||
|
|
||||||
|
static int adpcm_pos,adpcm_end;
|
||||||
|
static int adpcm_data;
|
||||||
|
|
||||||
|
|
||||||
static WRITE8_HANDLER( tecmo_bankswitch_w )
|
static WRITE8_HANDLER( tecmo_bankswitch_w )
|
||||||
@ -82,8 +84,6 @@ static WRITE8_HANDLER( tecmo_sound_command_w )
|
|||||||
cpunum_set_input_line(machine, 1,INPUT_LINE_NMI,PULSE_LINE);
|
cpunum_set_input_line(machine, 1,INPUT_LINE_NMI,PULSE_LINE);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int adpcm_pos,adpcm_end;
|
|
||||||
|
|
||||||
static WRITE8_HANDLER( tecmo_adpcm_start_w )
|
static WRITE8_HANDLER( tecmo_adpcm_start_w )
|
||||||
{
|
{
|
||||||
adpcm_pos = data << 8;
|
adpcm_pos = data << 8;
|
||||||
@ -99,8 +99,6 @@ static WRITE8_HANDLER( tecmo_adpcm_vol_w )
|
|||||||
}
|
}
|
||||||
static void tecmo_adpcm_int(running_machine *machine, int num)
|
static void tecmo_adpcm_int(running_machine *machine, int num)
|
||||||
{
|
{
|
||||||
static int adpcm_data = -1;
|
|
||||||
|
|
||||||
if (adpcm_pos >= adpcm_end ||
|
if (adpcm_pos >= adpcm_end ||
|
||||||
adpcm_pos >= memory_region_length(machine, "adpcm"))
|
adpcm_pos >= memory_region_length(machine, "adpcm"))
|
||||||
msm5205_reset_w(0,1);
|
msm5205_reset_w(0,1);
|
||||||
@ -561,6 +559,12 @@ static const msm5205_interface msm5205_config =
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
static MACHINE_RESET( rygar )
|
||||||
|
{
|
||||||
|
adpcm_pos = 0;
|
||||||
|
adpcm_end = 0;
|
||||||
|
adpcm_data = -1;
|
||||||
|
}
|
||||||
|
|
||||||
static MACHINE_DRIVER_START( rygar )
|
static MACHINE_DRIVER_START( rygar )
|
||||||
|
|
||||||
@ -586,6 +590,8 @@ static MACHINE_DRIVER_START( rygar )
|
|||||||
MDRV_VIDEO_START(tecmo)
|
MDRV_VIDEO_START(tecmo)
|
||||||
MDRV_VIDEO_UPDATE(tecmo)
|
MDRV_VIDEO_UPDATE(tecmo)
|
||||||
|
|
||||||
|
MDRV_MACHINE_RESET( rygar )
|
||||||
|
|
||||||
/* sound hardware */
|
/* sound hardware */
|
||||||
MDRV_SPEAKER_STANDARD_MONO("mono")
|
MDRV_SPEAKER_STANDARD_MONO("mono")
|
||||||
|
|
||||||
|
@ -29,9 +29,9 @@ static int cop_data_latch_enable;
|
|||||||
static UINT8 cop_l;
|
static UINT8 cop_l;
|
||||||
static UINT8 cop_cmd_latch;
|
static UINT8 cop_cmd_latch;
|
||||||
|
|
||||||
static int timer_int = 1;
|
static int timer_int;
|
||||||
static int data_rdy_int = 1;
|
static int data_rdy_int;
|
||||||
static int ssi_data_request = 1;
|
static int ssi_data_request;
|
||||||
|
|
||||||
static int cart_present;
|
static int cart_present;
|
||||||
static int pr7820_enter;
|
static int pr7820_enter;
|
||||||
@ -724,7 +724,26 @@ static MACHINE_START( thayers )
|
|||||||
|
|
||||||
static MACHINE_RESET( thayers )
|
static MACHINE_RESET( thayers )
|
||||||
{
|
{
|
||||||
int newtype = (input_port_read(machine, "DSWB") & 0x18) ? LASERDISC_TYPE_PIONEER_LDV1000 : LASERDISC_TYPE_PIONEER_PR7820;
|
int newtype;
|
||||||
|
|
||||||
|
laserdisc_data = 0;
|
||||||
|
|
||||||
|
rx_bit = 0;
|
||||||
|
keylatch = 0;
|
||||||
|
|
||||||
|
cop_data_latch = 0;
|
||||||
|
cop_data_latch_enable = 0;
|
||||||
|
cop_l = 0;
|
||||||
|
cop_cmd_latch = 0;
|
||||||
|
|
||||||
|
timer_int = 1;
|
||||||
|
data_rdy_int = 1;
|
||||||
|
ssi_data_request = 1;
|
||||||
|
|
||||||
|
cart_present = 0;
|
||||||
|
pr7820_enter = 0;
|
||||||
|
|
||||||
|
newtype = (input_port_read(machine, "DSWB") & 0x18) ? LASERDISC_TYPE_PIONEER_LDV1000 : LASERDISC_TYPE_PIONEER_PR7820;
|
||||||
device_set_info_int(laserdisc, LDINFO_INT_TYPE, newtype);
|
device_set_info_int(laserdisc, LDINFO_INT_TYPE, newtype);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -243,8 +243,11 @@ WRITE16_HANDLER( rastan_spriteflip_w );
|
|||||||
VIDEO_START( topspeed );
|
VIDEO_START( topspeed );
|
||||||
VIDEO_UPDATE( topspeed );
|
VIDEO_UPDATE( topspeed );
|
||||||
|
|
||||||
static UINT16 cpua_ctrl = 0xff;
|
static UINT16 cpua_ctrl;
|
||||||
static INT32 ioc220_port = 0;
|
static INT32 ioc220_port = 0;
|
||||||
|
static INT32 banknum;
|
||||||
|
static int adpcm_pos;
|
||||||
|
static int adpcm_data;
|
||||||
|
|
||||||
extern UINT16 *topspeed_spritemap;
|
extern UINT16 *topspeed_spritemap;
|
||||||
|
|
||||||
@ -400,8 +403,6 @@ logerror("CPU #0 PC %06x: warning - write %04x to motor cpu %03x\n",activecpu_ge
|
|||||||
SOUND
|
SOUND
|
||||||
*****************************************************/
|
*****************************************************/
|
||||||
|
|
||||||
static INT32 banknum = -1;
|
|
||||||
|
|
||||||
static void reset_sound_region(running_machine *machine)
|
static void reset_sound_region(running_machine *machine)
|
||||||
{
|
{
|
||||||
memory_set_bankptr( 10, memory_region(machine, "audio") + (banknum * 0x4000) + 0x10000 );
|
memory_set_bankptr( 10, memory_region(machine, "audio") + (banknum * 0x4000) + 0x10000 );
|
||||||
@ -413,12 +414,8 @@ static WRITE8_HANDLER( sound_bankswitch_w ) /* assumes Z80 sandwiched between 68
|
|||||||
reset_sound_region(machine);
|
reset_sound_region(machine);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int adpcm_pos;
|
|
||||||
|
|
||||||
static void topspeed_msm5205_vck(running_machine *machine, int chip)
|
static void topspeed_msm5205_vck(running_machine *machine, int chip)
|
||||||
{
|
{
|
||||||
static int adpcm_data = -1;
|
|
||||||
|
|
||||||
if (adpcm_data != -1)
|
if (adpcm_data != -1)
|
||||||
{
|
{
|
||||||
msm5205_data_w(0, adpcm_data & 0x0f);
|
msm5205_data_w(0, adpcm_data & 0x0f);
|
||||||
@ -692,6 +689,15 @@ static MACHINE_START( topspeed )
|
|||||||
state_save_register_postload(machine, topspeed_postload, NULL);
|
state_save_register_postload(machine, topspeed_postload, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static MACHINE_RESET( topspeed )
|
||||||
|
{
|
||||||
|
cpua_ctrl = 0xff;
|
||||||
|
ioc220_port = 0;
|
||||||
|
banknum = -1;
|
||||||
|
adpcm_pos = 0;
|
||||||
|
adpcm_data = -1;
|
||||||
|
}
|
||||||
|
|
||||||
static MACHINE_DRIVER_START( topspeed )
|
static MACHINE_DRIVER_START( topspeed )
|
||||||
|
|
||||||
/* basic machine hardware */
|
/* basic machine hardware */
|
||||||
@ -707,6 +713,7 @@ static MACHINE_DRIVER_START( topspeed )
|
|||||||
MDRV_CPU_VBLANK_INT("main", topspeed_cpub_interrupt)
|
MDRV_CPU_VBLANK_INT("main", topspeed_cpub_interrupt)
|
||||||
|
|
||||||
MDRV_MACHINE_START(topspeed)
|
MDRV_MACHINE_START(topspeed)
|
||||||
|
MDRV_MACHINE_RESET(topspeed)
|
||||||
|
|
||||||
/* video hardware */
|
/* video hardware */
|
||||||
MDRV_SCREEN_ADD("main", RASTER)
|
MDRV_SCREEN_ADD("main", RASTER)
|
||||||
|
@ -24,8 +24,8 @@ WRITE8_HANDLER( nitedrvr_steering_reset_w );
|
|||||||
WRITE8_HANDLER( nitedrvr_out0_w );
|
WRITE8_HANDLER( nitedrvr_out0_w );
|
||||||
WRITE8_HANDLER( nitedrvr_out1_w );
|
WRITE8_HANDLER( nitedrvr_out1_w );
|
||||||
|
|
||||||
void nitedrvr_crash_toggle(running_machine *machine);
|
MACHINE_RESET( nitedrvr );
|
||||||
void nitedrvr_register_machine_vars(void);
|
MACHINE_START( nitedrvr );
|
||||||
|
|
||||||
|
|
||||||
/*----------- defined in audio/nitedrvr.c -----------*/
|
/*----------- defined in audio/nitedrvr.c -----------*/
|
||||||
|
@ -8,12 +8,12 @@
|
|||||||
#include "nitedrvr.h"
|
#include "nitedrvr.h"
|
||||||
#include "sound/discrete.h"
|
#include "sound/discrete.h"
|
||||||
|
|
||||||
static UINT8 nitedrvr_gear = 1;
|
static UINT8 nitedrvr_gear;
|
||||||
static UINT8 nitedrvr_track;
|
static UINT8 nitedrvr_track;
|
||||||
static INT32 nitedrvr_steering_buf;
|
static INT32 nitedrvr_steering_buf;
|
||||||
static INT32 nitedrvr_steering_val;
|
static INT32 nitedrvr_steering_val;
|
||||||
static UINT8 nitedrvr_crash_en;
|
static UINT8 nitedrvr_crash_en;
|
||||||
static UINT8 nitedrvr_crash_data = 0x0f;
|
static UINT8 nitedrvr_crash_data;
|
||||||
static UINT8 nitedrvr_crash_data_en; // IC D8
|
static UINT8 nitedrvr_crash_data_en; // IC D8
|
||||||
static UINT8 ac_line;
|
static UINT8 ac_line;
|
||||||
static INT32 last_steering_val;
|
static INT32 last_steering_val;
|
||||||
@ -247,7 +247,7 @@ WRITE8_HANDLER( nitedrvr_out1_w )
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void nitedrvr_crash_toggle(running_machine *machine)
|
static TIMER_CALLBACK( nitedrvr_crash_toggle_callback )
|
||||||
{
|
{
|
||||||
if (nitedrvr_crash_en && nitedrvr_crash_data_en)
|
if (nitedrvr_crash_en && nitedrvr_crash_data_en)
|
||||||
{
|
{
|
||||||
@ -269,8 +269,8 @@ void nitedrvr_crash_toggle(running_machine *machine)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void nitedrvr_register_machine_vars(void)
|
MACHINE_START( nitedrvr )
|
||||||
{/* save all the statics in this file. */
|
{
|
||||||
state_save_register_global(nitedrvr_gear);
|
state_save_register_global(nitedrvr_gear);
|
||||||
state_save_register_global(nitedrvr_track);
|
state_save_register_global(nitedrvr_track);
|
||||||
state_save_register_global(nitedrvr_steering_buf);
|
state_save_register_global(nitedrvr_steering_buf);
|
||||||
@ -281,3 +281,18 @@ void nitedrvr_register_machine_vars(void)
|
|||||||
state_save_register_global(ac_line);
|
state_save_register_global(ac_line);
|
||||||
state_save_register_global(last_steering_val);
|
state_save_register_global(last_steering_val);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
MACHINE_RESET( nitedrvr )
|
||||||
|
{
|
||||||
|
nitedrvr_gear = 1;
|
||||||
|
nitedrvr_track = 0;
|
||||||
|
nitedrvr_steering_buf = 0;
|
||||||
|
nitedrvr_steering_val = 0;
|
||||||
|
nitedrvr_crash_en = 0;
|
||||||
|
nitedrvr_crash_data = 0x0f;
|
||||||
|
nitedrvr_crash_data_en = 0;
|
||||||
|
ac_line = 0;
|
||||||
|
last_steering_val = 0;
|
||||||
|
|
||||||
|
timer_pulse(PERIOD_OF_555_ASTABLE(RES_K(180), 330, CAP_U(1)), NULL, 0, nitedrvr_crash_toggle_callback);
|
||||||
|
}
|
||||||
|
@ -36,6 +36,16 @@ Encryption PAL 16R4 on CPU board
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
static UINT8 *decrypt;
|
static UINT8 *decrypt;
|
||||||
|
static int adpcm_data_offs;
|
||||||
|
static int adpcm_data_end;
|
||||||
|
static int toggle;
|
||||||
|
static UINT8 fm_data;
|
||||||
|
|
||||||
|
static int coin_mech_latch[2];
|
||||||
|
static int stfight_coin_mech_query_active = 0;
|
||||||
|
static int stfight_coin_mech_query;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
DRIVER_INIT( empcity )
|
DRIVER_INIT( empcity )
|
||||||
{
|
{
|
||||||
@ -82,6 +92,15 @@ DRIVER_INIT( stfight )
|
|||||||
|
|
||||||
MACHINE_RESET( stfight )
|
MACHINE_RESET( stfight )
|
||||||
{
|
{
|
||||||
|
adpcm_data_offs = adpcm_data_end = 0;
|
||||||
|
toggle = 0;
|
||||||
|
fm_data = 0;
|
||||||
|
coin_mech_latch[0] = 0x02;
|
||||||
|
coin_mech_latch[1] = 0x01;
|
||||||
|
|
||||||
|
stfight_coin_mech_query_active = 0;
|
||||||
|
stfight_coin_mech_query = 0;
|
||||||
|
|
||||||
// initialise rom bank
|
// initialise rom bank
|
||||||
stfight_bank_w( machine, 0, 0 );
|
stfight_bank_w( machine, 0, 0 );
|
||||||
}
|
}
|
||||||
@ -109,7 +128,7 @@ INTERRUPT_GEN( stfight_vb_interrupt )
|
|||||||
{
|
{
|
||||||
// Do a RST10
|
// Do a RST10
|
||||||
cpunum_set_input_line_and_vector(machine, 0,0,HOLD_LINE,0xd7);
|
cpunum_set_input_line_and_vector(machine, 0,0,HOLD_LINE,0xd7);
|
||||||
timer_set(ATTOTIME_IN_HZ(120), NULL, 0, stfight_interrupt_1);
|
timer_set(ATTOTIME_IN_HZ(120), NULL, 0, stfight_interrupt_1);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -122,13 +141,8 @@ READ8_HANDLER( stfight_dsw_r )
|
|||||||
return( ~input_port_read(machine, offset ? "DSW1" : "DSW0") );
|
return( ~input_port_read(machine, offset ? "DSW1" : "DSW0") );
|
||||||
}
|
}
|
||||||
|
|
||||||
static int stfight_coin_mech_query_active = 0;
|
|
||||||
static int stfight_coin_mech_query;
|
|
||||||
|
|
||||||
READ8_HANDLER( stfight_coin_r )
|
READ8_HANDLER( stfight_coin_r )
|
||||||
{
|
{
|
||||||
static int coin_mech_latch[2] = { 0x02, 0x01 };
|
|
||||||
|
|
||||||
int coin_mech_data;
|
int coin_mech_data;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
@ -180,12 +194,9 @@ static const int sampleLimits[] =
|
|||||||
0x5400, // girl getting shot
|
0x5400, // girl getting shot
|
||||||
0x7200 // (end of samples)
|
0x7200 // (end of samples)
|
||||||
};
|
};
|
||||||
static int adpcm_data_offs;
|
|
||||||
static int adpcm_data_end;
|
|
||||||
|
|
||||||
void stfight_adpcm_int( running_machine *machine, int data )
|
void stfight_adpcm_int( running_machine *machine, int data )
|
||||||
{
|
{
|
||||||
static int toggle;
|
|
||||||
UINT8 *SAMPLES = memory_region(machine, "adpcm");
|
UINT8 *SAMPLES = memory_region(machine, "adpcm");
|
||||||
int adpcm_data = SAMPLES[adpcm_data_offs & 0x7fff];
|
int adpcm_data = SAMPLES[adpcm_data_offs & 0x7fff];
|
||||||
|
|
||||||
@ -226,8 +237,6 @@ WRITE8_HANDLER( stfight_e800_w )
|
|||||||
* Machine hardware for YM2303 fm sound control
|
* Machine hardware for YM2303 fm sound control
|
||||||
*/
|
*/
|
||||||
|
|
||||||
static UINT8 fm_data;
|
|
||||||
|
|
||||||
WRITE8_HANDLER( stfight_fm_w )
|
WRITE8_HANDLER( stfight_fm_w )
|
||||||
{
|
{
|
||||||
// the sound cpu ignores any fm data without bit 7 set
|
// the sound cpu ignores any fm data without bit 7 set
|
||||||
|
@ -24,15 +24,11 @@ static UINT8 spacecr_prot_value;
|
|||||||
static UINT8 protection_value;
|
static UINT8 protection_value;
|
||||||
static UINT32 address;
|
static UINT32 address;
|
||||||
|
|
||||||
void taitosj_register_main_savestate(void);
|
|
||||||
|
|
||||||
MACHINE_START( taitosj )
|
MACHINE_START( taitosj )
|
||||||
{
|
{
|
||||||
memory_configure_bank(1, 0, 1, memory_region(machine, "main") + 0x6000, 0);
|
memory_configure_bank(1, 0, 1, memory_region(machine, "main") + 0x6000, 0);
|
||||||
memory_configure_bank(1, 1, 1, memory_region(machine, "main") + 0x10000, 0);
|
memory_configure_bank(1, 1, 1, memory_region(machine, "main") + 0x10000, 0);
|
||||||
|
|
||||||
taitosj_register_main_savestate();
|
|
||||||
|
|
||||||
state_save_register_global(fromz80);
|
state_save_register_global(fromz80);
|
||||||
state_save_register_global(toz80);
|
state_save_register_global(toz80);
|
||||||
state_save_register_global(zaccept);
|
state_save_register_global(zaccept);
|
||||||
@ -50,7 +46,7 @@ MACHINE_RESET( taitosj )
|
|||||||
{
|
{
|
||||||
/* set the default ROM bank (many games only have one bank and */
|
/* set the default ROM bank (many games only have one bank and */
|
||||||
/* never write to the bank selector register) */
|
/* never write to the bank selector register) */
|
||||||
taitosj_bankswitch_w(machine, 0, 0);
|
taitosj_bankswitch_w(machine, 0, 0);
|
||||||
|
|
||||||
|
|
||||||
zaccept = 1;
|
zaccept = 1;
|
||||||
|
@ -27,7 +27,7 @@ static UINT8 crtc_register;
|
|||||||
static UINT8 crtc_data[0x10];
|
static UINT8 crtc_data[0x10];
|
||||||
static emu_timer *crtc_timer;
|
static emu_timer *crtc_timer;
|
||||||
|
|
||||||
static UINT8 flipscreen_old = -1;
|
static UINT8 flipscreen_old;
|
||||||
|
|
||||||
static tilemap *bg_tilemap, *fg_tilemap;
|
static tilemap *bg_tilemap, *fg_tilemap;
|
||||||
|
|
||||||
@ -73,11 +73,9 @@ static TILE_GET_INFO( get_nekkyoku_fg_tile_info ) { get_nekkyoku_tile_info(machi
|
|||||||
*
|
*
|
||||||
*************************************/
|
*************************************/
|
||||||
|
|
||||||
VIDEO_START( fromance )
|
static void init_common(void)
|
||||||
{
|
{
|
||||||
/* allocate tilemaps */
|
flipscreen_old = -1;
|
||||||
bg_tilemap = tilemap_create(get_fromance_bg_tile_info, tilemap_scan_rows, 8,4, 64,64);
|
|
||||||
fg_tilemap = tilemap_create(get_fromance_fg_tile_info, tilemap_scan_rows, 8,4, 64,64);
|
|
||||||
|
|
||||||
/* allocate local videoram */
|
/* allocate local videoram */
|
||||||
local_videoram[0] = auto_malloc(0x1000 * 3);
|
local_videoram[0] = auto_malloc(0x1000 * 3);
|
||||||
@ -112,43 +110,22 @@ VIDEO_START( fromance )
|
|||||||
state_save_register_global_pointer(local_paletteram, 0x800 * 2);
|
state_save_register_global_pointer(local_paletteram, 0x800 * 2);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
VIDEO_START( fromance )
|
||||||
|
{
|
||||||
|
/* allocate tilemaps */
|
||||||
|
bg_tilemap = tilemap_create(get_fromance_bg_tile_info, tilemap_scan_rows, 8,4, 64,64);
|
||||||
|
fg_tilemap = tilemap_create(get_fromance_fg_tile_info, tilemap_scan_rows, 8,4, 64,64);
|
||||||
|
|
||||||
|
init_common();
|
||||||
|
}
|
||||||
|
|
||||||
VIDEO_START( nekkyoku )
|
VIDEO_START( nekkyoku )
|
||||||
{
|
{
|
||||||
/* allocate tilemaps */
|
/* allocate tilemaps */
|
||||||
bg_tilemap = tilemap_create(get_nekkyoku_bg_tile_info, tilemap_scan_rows, 8,4, 64,64);
|
bg_tilemap = tilemap_create(get_nekkyoku_bg_tile_info, tilemap_scan_rows, 8,4, 64,64);
|
||||||
fg_tilemap = tilemap_create(get_nekkyoku_fg_tile_info, tilemap_scan_rows, 8,4, 64,64);
|
fg_tilemap = tilemap_create(get_nekkyoku_fg_tile_info, tilemap_scan_rows, 8,4, 64,64);
|
||||||
|
|
||||||
/* allocate local videoram */
|
init_common();
|
||||||
local_videoram[0] = auto_malloc(0x1000 * 3);
|
|
||||||
local_videoram[1] = auto_malloc(0x1000 * 3);
|
|
||||||
|
|
||||||
/* allocate local palette RAM */
|
|
||||||
local_paletteram = auto_malloc(0x800 * 2);
|
|
||||||
|
|
||||||
/* configure tilemaps */
|
|
||||||
tilemap_set_transparent_pen(fg_tilemap,15);
|
|
||||||
|
|
||||||
/* reset the timer */
|
|
||||||
crtc_timer = timer_alloc(crtc_interrupt_gen, NULL);
|
|
||||||
|
|
||||||
scrollx_ofs = 0x159;
|
|
||||||
scrolly_ofs = 0x10;
|
|
||||||
|
|
||||||
/* state save */
|
|
||||||
state_save_register_global(selected_videoram);
|
|
||||||
state_save_register_global_pointer(local_videoram[0], 0x1000 * 3);
|
|
||||||
state_save_register_global_pointer(local_videoram[1], 0x1000 * 3);
|
|
||||||
state_save_register_global(selected_paletteram);
|
|
||||||
state_save_register_global_array(scrollx);
|
|
||||||
state_save_register_global_array(scrolly);
|
|
||||||
state_save_register_global(gfxreg);
|
|
||||||
state_save_register_global(flipscreen);
|
|
||||||
state_save_register_global(flipscreen_old);
|
|
||||||
state_save_register_global(scrollx_ofs);
|
|
||||||
state_save_register_global(scrolly_ofs);
|
|
||||||
state_save_register_global(crtc_register);
|
|
||||||
state_save_register_global_array(crtc_data);
|
|
||||||
state_save_register_global_pointer(local_paletteram, 0x800 * 2);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
VIDEO_START( pipedrm )
|
VIDEO_START( pipedrm )
|
||||||
|
@ -19,7 +19,7 @@ static tilemap *quizdna_fg_tilemap;
|
|||||||
|
|
||||||
static UINT8 quizdna_bg_xscroll[2];
|
static UINT8 quizdna_bg_xscroll[2];
|
||||||
|
|
||||||
static int quizdna_flipscreen = -1;
|
static int quizdna_flipscreen;
|
||||||
static int quizdna_video_enable;
|
static int quizdna_video_enable;
|
||||||
|
|
||||||
|
|
||||||
@ -56,6 +56,11 @@ static TILE_GET_INFO( get_fg_tile_info )
|
|||||||
|
|
||||||
VIDEO_START( quizdna )
|
VIDEO_START( quizdna )
|
||||||
{
|
{
|
||||||
|
quizdna_flipscreen = -1;
|
||||||
|
quizdna_video_enable = 0;
|
||||||
|
quizdna_bg_xscroll[0] = 0;
|
||||||
|
quizdna_bg_xscroll[1] = 0;
|
||||||
|
|
||||||
quizdna_bg_ram = auto_malloc(0x2000);
|
quizdna_bg_ram = auto_malloc(0x2000);
|
||||||
quizdna_fg_ram = auto_malloc(0x1000);
|
quizdna_fg_ram = auto_malloc(0x1000);
|
||||||
|
|
||||||
|
@ -57,6 +57,7 @@ UINT16 *rocknms_sub_vram_rot, *rocknms_sub_rotregs;
|
|||||||
|
|
||||||
UINT16 *rocknms_sub_priority;
|
UINT16 *rocknms_sub_priority;
|
||||||
|
|
||||||
|
static int flipscreen_old;
|
||||||
|
|
||||||
/***************************************************************************
|
/***************************************************************************
|
||||||
|
|
||||||
@ -270,6 +271,8 @@ WRITE16_HANDLER( rocknms_sub_vram_rot_w )
|
|||||||
|
|
||||||
VIDEO_START( tetrisp2 )
|
VIDEO_START( tetrisp2 )
|
||||||
{
|
{
|
||||||
|
flipscreen_old = -1;
|
||||||
|
|
||||||
tilemap_bg = tilemap_create( get_tile_info_bg,tilemap_scan_rows,
|
tilemap_bg = tilemap_create( get_tile_info_bg,tilemap_scan_rows,
|
||||||
|
|
||||||
16,16,NX_0,NY_0);
|
16,16,NX_0,NY_0);
|
||||||
@ -295,6 +298,8 @@ VIDEO_START( nndmseal )
|
|||||||
|
|
||||||
VIDEO_START( rockntread )
|
VIDEO_START( rockntread )
|
||||||
{
|
{
|
||||||
|
flipscreen_old = -1;
|
||||||
|
|
||||||
tilemap_bg = tilemap_create( get_tile_info_bg,tilemap_scan_rows,
|
tilemap_bg = tilemap_create( get_tile_info_bg,tilemap_scan_rows,
|
||||||
|
|
||||||
16, 16, 256, 16); // rockn ms(main),1,2,3,4
|
16, 16, 256, 16); // rockn ms(main),1,2,3,4
|
||||||
@ -315,17 +320,7 @@ VIDEO_START( rockntread )
|
|||||||
|
|
||||||
VIDEO_START( rocknms )
|
VIDEO_START( rocknms )
|
||||||
{
|
{
|
||||||
tilemap_bg = tilemap_create(get_tile_info_bg,tilemap_scan_rows,
|
VIDEO_START_CALL( rockntread );
|
||||||
|
|
||||||
16, 16, 256, 16); // rockn ms(main),1,2,3,4
|
|
||||||
|
|
||||||
tilemap_fg = tilemap_create(get_tile_info_fg,tilemap_scan_rows,
|
|
||||||
|
|
||||||
8, 8, 64, 64);
|
|
||||||
|
|
||||||
tilemap_rot = tilemap_create(get_tile_info_rot,tilemap_scan_rows,
|
|
||||||
|
|
||||||
16, 16, 128, 128);
|
|
||||||
|
|
||||||
tilemap_sub_bg = tilemap_create(get_tile_info_rocknms_sub_bg,tilemap_scan_rows,
|
tilemap_sub_bg = tilemap_create(get_tile_info_rocknms_sub_bg,tilemap_scan_rows,
|
||||||
|
|
||||||
@ -339,10 +334,6 @@ VIDEO_START( rocknms )
|
|||||||
|
|
||||||
16, 16, 128, 128);
|
16, 16, 128, 128);
|
||||||
|
|
||||||
tilemap_set_transparent_pen(tilemap_bg, 0);
|
|
||||||
tilemap_set_transparent_pen(tilemap_fg, 0);
|
|
||||||
tilemap_set_transparent_pen(tilemap_rot, 0);
|
|
||||||
|
|
||||||
tilemap_set_transparent_pen(tilemap_sub_bg, 0);
|
tilemap_set_transparent_pen(tilemap_sub_bg, 0);
|
||||||
tilemap_set_transparent_pen(tilemap_sub_fg, 0);
|
tilemap_set_transparent_pen(tilemap_sub_fg, 0);
|
||||||
tilemap_set_transparent_pen(tilemap_sub_rot, 0);
|
tilemap_set_transparent_pen(tilemap_sub_rot, 0);
|
||||||
@ -518,7 +509,6 @@ static void draw_sprites(running_machine *machine, bitmap_t *bitmap, const recta
|
|||||||
|
|
||||||
VIDEO_UPDATE( tetrisp2 )
|
VIDEO_UPDATE( tetrisp2 )
|
||||||
{
|
{
|
||||||
static int flipscreen_old = -1;
|
|
||||||
int flipscreen;
|
int flipscreen;
|
||||||
int asc_pri;
|
int asc_pri;
|
||||||
int scr_pri;
|
int scr_pri;
|
||||||
@ -603,7 +593,6 @@ VIDEO_UPDATE( tetrisp2 )
|
|||||||
|
|
||||||
VIDEO_UPDATE( rockntread )
|
VIDEO_UPDATE( rockntread )
|
||||||
{
|
{
|
||||||
static int flipscreen_old = -1;
|
|
||||||
int flipscreen;
|
int flipscreen;
|
||||||
int asc_pri;
|
int asc_pri;
|
||||||
int scr_pri;
|
int scr_pri;
|
||||||
|
@ -538,13 +538,13 @@ VIDEO_START( ygv608 )
|
|||||||
add_exit_callback(machine, ygv608_exit);
|
add_exit_callback(machine, ygv608_exit);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void draw_sprites(running_machine *machine, bitmap_t *bitmap, const rectangle *cliprect )
|
static void draw_sprites(running_machine *machine, bitmap_t *bitmap, const rectangle *cliprect)
|
||||||
{
|
{
|
||||||
#ifdef _ENABLE_SPRITES
|
#ifdef _ENABLE_SPRITES
|
||||||
|
|
||||||
// sprites are always clipped to 512x512
|
// sprites are always clipped to 512x512
|
||||||
// - regardless of the visible display dimensions
|
// - regardless of the visible display dimensions
|
||||||
static rectangle spriteClip = { 0, 512, 0, 512 };
|
rectangle spriteClip = { 0, 512, 0, 512 };
|
||||||
|
|
||||||
PSPRITE_ATTR sa;
|
PSPRITE_ATTR sa;
|
||||||
int flipx = 0, flipy = 0;
|
int flipx = 0, flipy = 0;
|
||||||
|
Loading…
Reference in New Issue
Block a user