⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mcr68.c

📁 这个是延伸mame的在wince平台下的游戏模拟器的代码
💻 C
📖 第 1 页 / 共 2 页
字号:
};
#undef X
#undef Y
#undef Z


static struct GfxDecodeInfo xenophobe_gfxdecodeinfo[] =
{
	{ 1, 0x0000, &mcr68_charlayout_2048,  0, 4 },
	{ 1, 0x10000, &mcr3_spritelayout_512, 0, 4 },
	{ -1 } /* end of array */
};

/***************************************************************************

  Sound interfaces

***************************************************************************/

static struct DACinterface dac_interface =
{
	1,
	{ 255 }
};

/***************************************************************************

	Machine drivers

***************************************************************************/

static struct MachineDriver mcr68_machine_driver =
{
	/* basic machine hardware */
	{
		{
			CPU_M68000,
			8000000,	/* 8 Mhz */
			0,
			mcr68_readmem,mcr68_writemem,0,0,
			mcr68_interrupt,4
		},
		{
			CPU_M68000 | CPU_AUDIO_CPU,
			8000000,
			2,
			sg_readmem,sg_writemem,0,0,
			ignore_interrupt,0
		}
	},
	30, DEFAULT_30HZ_VBLANK_DURATION,	/* frames per second, vblank duration */
	1,	/* 1 CPU slice per frame - sound CPU synchronization is done via timers */
	mcr68_init_machine,

	/* video hardware */
	32*16, 30*16, { 0, 32*16-1, 0, 30*16-1 },
	xenophobe_gfxdecodeinfo,
	8*16, 8*16,
	mcr68_vh_convert_color_prom,

	VIDEO_TYPE_RASTER | VIDEO_MODIFIES_PALETTE | VIDEO_SUPPORTS_DIRTY,
	0,
	generic_vh_start,
	generic_vh_stop,
	xenophobe_vh_screenrefresh,

	/* sound hardware */
	0,0,0,0,
	{
		{
			SOUND_DAC,
			&dac_interface
		}
	}
};

static struct MachineDriver zwackery_machine_driver =
{
	/* basic machine hardware */
	{
		{
			CPU_M68000,
			8000000,	/* 5 Mhz */
			0,
			zwackery_readmem,zwackery_writemem,0,0,
			mcr68_interrupt,1
		},
		{
			CPU_M68000 | CPU_AUDIO_CPU,
			7500000,	/* 7.5 Mhz */
			2,
			sg_readmem,sg_writemem,0,0,
			ignore_interrupt,1
		}
	},
	30, DEFAULT_30HZ_VBLANK_DURATION,	/* frames per second, vblank duration */
	1,	/* 1 CPU slice per frame - sound CPU synchronization is done via timers */
	0, /* No INIT machine */

	/* video hardware */
	32*16, 30*16, { 0, 32*16-1, 0, 30*16-1 },
	xenophobe_gfxdecodeinfo,
	8*16, 8*16,
	mcr68_vh_convert_color_prom,

	VIDEO_TYPE_RASTER | VIDEO_MODIFIES_PALETTE,
	0,
	generic_vh_start,
	generic_vh_stop,
	xenophobe_vh_screenrefresh,

	/* sound hardware */
	0,0,0,0,
	{
		{
			SOUND_DAC,
			&dac_interface
		}
	}
};

/***************************************************************************

  Game driver(s)

***************************************************************************/

ROM_START( xenophob_rom )
	ROM_REGION(0x40000)
	ROM_LOAD_EVEN( "xeno_pro.3c",  0x00000, 0x10000, 0xf44c2e60 )
	ROM_LOAD_ODD ( "xeno_pro.3b",  0x00000, 0x10000, 0x01609a3b )
	ROM_LOAD_EVEN( "xeno_pro.2c",  0x20000, 0x10000, 0xe45bf669 )
	ROM_LOAD_ODD ( "xeno_pro.2b",  0x20000, 0x10000, 0xda5d39d5 )

	ROM_REGION_DISPOSE(0x50000)	/* temporary space for graphics (disposed after conversion) */
	ROM_LOAD( "xeno_bg.12d",  0x00000, 0x08000, 0xc32288b1 )
	ROM_LOAD( "xeno_bg.11d",  0x08000, 0x08000, 0x3d2cf284 )
	ROM_LOAD( "xeno_fg.10j",  0x10000, 0x10000, 0x6a7a3516 )
	ROM_LOAD( "xeno_fg.9j",   0x20000, 0x10000, 0x82fb3e09 )
	ROM_LOAD( "xeno_fg.8j",   0x30000, 0x10000, 0x20e682f5 )
	ROM_LOAD( "xeno_fg.7j",   0x40000, 0x10000, 0xb12eddb2 )

	ROM_REGION(0x40000)  /* Sounds Good board */
	ROM_LOAD_EVEN( "xeno_snd.u7",  0x00000, 0x10000, 0x77561d15 )
	ROM_LOAD_ODD ( "xeno_snd.u17", 0x00000, 0x10000, 0x837a1a71 )
	ROM_LOAD_EVEN( "xeno_snd.u8",  0x20000, 0x10000, 0x6e2915c7 )
	ROM_LOAD_ODD ( "xeno_snd.u18", 0x20000, 0x10000, 0x12492145 )
ROM_END

ROM_START( spyhunt2_rom )
	ROM_REGION(0x40000)
	ROM_LOAD_EVEN( "3c",           0x0000, 0x10000, 0x0 )
	ROM_LOAD_ODD ( "3b",           0x0000, 0x10000, 0x0 )
	ROM_LOAD_EVEN( "2c",           0x20000, 0x10000, 0x0 )
	ROM_LOAD_ODD ( "2b",           0x20000, 0x10000, 0x0 )

	ROM_REGION_DISPOSE(0x90000)	/* temporary space for graphics (disposed after conversion) */
	ROM_LOAD( "bg1.12d",      0x00000, 0x8000, 0x0 )
	ROM_LOAD( "bg0.11d",      0x08000, 0x8000, 0x0 )
	ROM_LOAD( "fg3.10j",      0x10000, 0x20000, 0x0 )
	ROM_LOAD( "fg2.9j",       0x30000, 0x20000, 0x0 )
	ROM_LOAD( "fg1.8j",       0x50000, 0x20000, 0x0 )
	ROM_LOAD( "fg0.7j",       0x70000, 0x20000, 0x0 )

	ROM_REGION(0x20000)  /* Sound */

ROM_END

ROM_START( blasted_rom )
	ROM_REGION(0x40000)
	ROM_LOAD_EVEN( "3c",           0x0000, 0x10000, 0x0 )
	ROM_LOAD_ODD ( "3b",           0x0000, 0x10000, 0x0 )
	ROM_LOAD_EVEN( "2c",           0x20000, 0x10000, 0x0 )
	ROM_LOAD_ODD ( "2b",           0x20000, 0x10000, 0x0 )

	ROM_REGION_DISPOSE(0x50000)	/* temporary space for graphics (disposed after conversion) */
	ROM_LOAD( "12d",          0x00000, 0x8000, 0x0 )
	ROM_LOAD( "11d",          0x08000, 0x8000, 0x0 )
	ROM_LOAD( "fg0",          0x10000, 0x10000, 0x0 )
	ROM_LOAD( "fg1",          0x20000, 0x10000, 0x0 )
	ROM_LOAD( "fg2",          0x30000, 0x10000, 0x0 )
	ROM_LOAD( "fg3",          0x40000, 0x10000, 0x0 )

	ROM_REGION(0x20000)  /* Unknown */

ROM_END

ROM_START( zwackery_rom )
	ROM_REGION(0x40000)
	ROM_LOAD_EVEN( "pro0.bin",     0x0000, 0x4000, 0x0 )
	ROM_LOAD_ODD ( "pro1.bin",     0x0000, 0x4000, 0x0 )
	ROM_LOAD_EVEN( "pro2.bin",     0x8000, 0x4000, 0x0 )
	ROM_LOAD_ODD ( "pro3.bin",     0x8000, 0x4000, 0x0 )
	ROM_LOAD_EVEN( "pro4.bin",     0x10000, 0x4000, 0x0 )
	ROM_LOAD_ODD ( "pro5.bin",     0x10000, 0x4000, 0x0 )
	ROM_LOAD_EVEN( "pro6.bin",     0x18000, 0x4000, 0x0 )
	ROM_LOAD_ODD ( "pro7.bin",     0x18000, 0x4000, 0x0 )
	ROM_LOAD_EVEN( "pro8.bin",     0x20000, 0x4000, 0x0 )
	ROM_LOAD_ODD ( "pro9.bin",     0x20000, 0x4000, 0x0 )
	ROM_LOAD_EVEN( "pro10.bin",    0x28000, 0x4000, 0x0 )
	ROM_LOAD_ODD ( "pro11.bin",    0x28000, 0x4000, 0x0 )
	ROM_LOAD_EVEN( "pro12.bin",    0x30000, 0x4000, 0x0 )
	ROM_LOAD_ODD ( "pro13.bin",    0x30000, 0x4000, 0x0 )

	ROM_REGION_DISPOSE(0x50000)	/* temporary space for graphics (disposed after conversion) */
	ROM_LOAD( "tilee.bin",    0x00000, 0x4000, 0x0 )
	ROM_LOAD( "tilef.bin",    0x04000, 0x4000, 0x0 )
	ROM_LOAD( "tileg.bin",    0x08000, 0x4000, 0x0 )
	ROM_LOAD( "tileh.bin",    0x0C000, 0x4000, 0x0 )

	ROM_LOAD( "spr6h.bin",    0x10000, 0x4000, 0x0 )
	ROM_LOAD( "spr6j.bin",    0x14000, 0x4000, 0x0 )
	ROM_LOAD( "spr7h.bin",    0x18000, 0x4000, 0x0 )
	ROM_LOAD( "spr7j.bin",    0x1C000, 0x4000, 0x0 )
	ROM_LOAD( "spr10h.bin",   0x20000, 0x4000, 0x0 )
	ROM_LOAD( "spr10j.bin",   0x24000, 0x4000, 0x0 )
	ROM_LOAD( "spr11h.bin",   0x28000, 0x4000, 0x0 )
	ROM_LOAD( "spr11j.bin",   0x2C000, 0x4000, 0x0 )

	ROM_REGION(0x20000)

	/* CSD roms */

ROM_END

struct GameDriver xenophob_driver =
{
	__FILE__,
	0,
	"xenophob",
	"Xenophobe",
	"1987",
	"Bally Midway",
	"Bryan McPhail\n",
	0,
	&mcr68_machine_driver,
	0,

	xenophob_rom,
	0, 0,
	0,
	0,	/* sound_prom */

	xenophobe_input_ports,

	0, 0,0,
	ORIENTATION_DEFAULT,

	0,0
};

struct GameDriver spyhunt2_driver =
{
	__FILE__,
	0,
	"spyhunt2",
	"Spy Hunter 2",
	"????",
	"?????",
	"Bryan McPhail\n",
	0,
	&mcr68_machine_driver,
	0,

	spyhunt2_rom,
	0, 0,
	0,
	0,	/* sound_prom */

	spyhunt2_input_ports,

	0, 0,0,
	ORIENTATION_DEFAULT,

	0,0
};

struct GameDriver blasted_driver =
{
	__FILE__,
	0,
	"blasted",
	"Blasted",
	"????",
	"?????",
	"Bryan McPhail\n",
	0,
	&mcr68_machine_driver,
	0,

	blasted_rom,
	0, 0,
	0,
	0,	/* sound_prom */

	xenophobe_input_ports,

	0, 0,0,
	ORIENTATION_DEFAULT,

	0,0
};

struct GameDriver zwackery_driver =
{
	__FILE__,
	0,
	"zwackery",
	"Zwackery",
	"????",
	"?????",
	"Bryan McPhail\n",
	0,
	&zwackery_machine_driver,
	0,

	zwackery_rom,
	0, 0,
	0,
	0,	/* sound_prom */

	xenophobe_input_ports,

	0, 0,0,
	ORIENTATION_DEFAULT,

	0,0
};

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -