📄 astrof.c
字号:
ROM_LOAD( "kei2", 0xd000, 0x0400, 0x9f0bd355 )
ROM_LOAD( "keii", 0xd400, 0x0400, 0x71f229f0 )
ROM_LOAD( "kei0", 0xd800, 0x0400, 0x88114f7c )
ROM_LOAD( "ke9", 0xdc00, 0x0400, 0x29cbaea6 )
ROM_LOAD( "ke8", 0xe000, 0x0400, 0x08e44b12 )
ROM_LOAD( "ke7", 0xe400, 0x0400, 0x8a42d62c )
ROM_LOAD( "ke6", 0xe800, 0x0400, 0x3e9aa743 )
ROM_LOAD( "ke5", 0xec00, 0x0400, 0x712a4557 )
ROM_LOAD( "ke4", 0xf000, 0x0400, 0xad06f306 )
ROM_LOAD( "ke3", 0xf400, 0x0400, 0x680b91b4 )
ROM_LOAD( "ke2", 0xf800, 0x0400, 0x2c4cab1a )
ROM_LOAD( "kei", 0xfc00, 0x0400, 0xfce4718d )
ROM_REGION(0x0020) /* 32 bytes for the color PROM */
ROM_LOAD( "astrf.clr", 0x0000, 0x0020, 0x61329fd1 )
ROM_END
ROM_START( tomahawk_rom )
ROM_REGION(0x10000) /* 64k for code */
ROM_LOAD( "l8-1", 0xdc00, 0x0400, 0x7c911661 )
ROM_LOAD( "l7-1", 0xe000, 0x0400, 0xadeffb69 )
ROM_LOAD( "l6-1", 0xe400, 0x0400, 0x9116e59d )
ROM_LOAD( "l5-1", 0xe800, 0x0400, 0x01e4c7c4 )
ROM_LOAD( "l4-1", 0xec00, 0x0400, 0xd9f69cb0 )
ROM_LOAD( "l3-1", 0xf000, 0x0400, 0x7ce7183f )
ROM_LOAD( "l2-1", 0xf400, 0x0400, 0x43fea29d )
ROM_LOAD( "l1-1", 0xf800, 0x0400, 0xf2096ba9 )
ROM_LOAD( "l0-1", 0xfc00, 0x0400, 0x42edbc28 )
ROM_REGION(0x0020) /* 32 bytes for the color PROM */
ROM_LOAD( "t777.clr", 0x0000, 0x0020, 0xd6a528fd )
ROM_END
ROM_START( tomahaw5_rom )
ROM_REGION(0x10000) /* 64k for code */
ROM_LOAD( "thawk.l8", 0xdc00, 0x0400, 0xb01dab4b )
ROM_LOAD( "thawk.l7", 0xe000, 0x0400, 0x3a6549e8 )
ROM_LOAD( "thawk.l6", 0xe400, 0x0400, 0x863e47f7 )
ROM_LOAD( "thawk.l5", 0xe800, 0x0400, 0xde0183bc )
ROM_LOAD( "thawk.l4", 0xec00, 0x0400, 0x11e9c7ea )
ROM_LOAD( "thawk.l3", 0xf000, 0x0400, 0xec44d388 )
ROM_LOAD( "thawk.l2", 0xf400, 0x0400, 0xdc0a0f54 )
ROM_LOAD( "thawk.l1", 0xf800, 0x0400, 0x1d9dab9c )
ROM_LOAD( "thawk.l0", 0xfc00, 0x0400, 0xd21a1eba )
ROM_REGION(0x0020) /* 32 bytes for the color PROM */
ROM_LOAD( "t777.clr", 0x0000, 0x0020, 0xd6a528fd )
ROM_END
static int astrof_hiload(void)
{
unsigned char *RAM = Machine->memory_region[Machine->drv->cpu[0].memory_region];
static int firsttime = 0;
/* check if the hi score table has already been initialized */
/* the high score table is intialized to all 0, so first of all */
/* we dirty it, then we wait for it to be cleared again */
if (firsttime == 0)
{
memset(&RAM[0x0084],0xff,2);
firsttime = 1;
}
/* check if the hi score table has already been initialized */
if (memcmp(&RAM[0x0084],"\x00\x00",2) == 0)
{
void *f;
if ((f = osd_fopen(Machine->gamedrv->name,0,OSD_FILETYPE_HIGHSCORE,0)) != 0)
{
osd_fread(f,&RAM[0x0084],2);
osd_fclose(f);
}
firsttime = 0 ;
return 1;
}
else return 0; /* we can't load the hi scores yet */
}
static void astrof_hisave(void)
{
void *f;
unsigned char *RAM = Machine->memory_region[Machine->drv->cpu[0].memory_region];
if ((f = osd_fopen(Machine->gamedrv->name,0,OSD_FILETYPE_HIGHSCORE,1)) != 0)
{
osd_fwrite(f,&RAM[0x0084],2);
osd_fclose(f);
}
}
static int tomahawk_hiload(void)
{
unsigned char *RAM = Machine->memory_region[Machine->drv->cpu[0].memory_region];
static int firsttime = 0;
/* check if the hi score table has already been initialized */
/* the high score table is intialized to all 0, so first of all */
/* we dirty it, then we wait for it to be cleared again */
if (firsttime == 0)
{
memset(&RAM[0x000d],0xff,2);
firsttime = 1;
}
/* check if the hi score table has already been initialized */
if (memcmp(&RAM[0x000d],"\x00\x00",2) == 0)
{
void *f;
if ((f = osd_fopen(Machine->gamedrv->name,0,OSD_FILETYPE_HIGHSCORE,0)) != 0)
{
osd_fread(f,&RAM[0x000d],2);
osd_fclose(f);
}
firsttime = 0 ;
return 1;
}
else return 0; /* we can't load the hi scores yet */
}
static void tomahawk_hisave(void)
{
void *f;
unsigned char *RAM = Machine->memory_region[Machine->drv->cpu[0].memory_region];
if ((f = osd_fopen(Machine->gamedrv->name,0,OSD_FILETYPE_HIGHSCORE,1)) != 0)
{
osd_fwrite(f,&RAM[0x000d],2);
osd_fclose(f);
}
}
/* Make sure that the #define's in sndhrdw/astrof.c matches these */
static const char *astrof_sample_names[] =
{
"*astrof",
"fire.sam",
"ekilled.sam",
"wave1.sam",
"wave2.sam",
"wave3.sam",
"wave4.sam",
"bossfire.sam",
"fuel.sam",
"death.sam",
"bosshit.sam",
"bosskill.sam",
0 /* end of array */
};
static const char *tomahawk_sample_names[] =
{
"*tomahawk",
/* We don't have these yet */
0 /* end of array */
};
#define CREDITS "Lee Taylor\ndedicated to Lucy Anne Taylor\nZsolt Vasvari"
struct GameDriver astrof_driver =
{
__FILE__,
0,
"astrof",
"Astro Fighter",
"1980",
"Data East",
CREDITS,
0,
&astrof_machine_driver,
0,
astrof_rom,
0, 0,
astrof_sample_names,
0, /* sound_prom */
astrof_input_ports,
PROM_MEMORY_REGION(1), 0, 0,
ORIENTATION_DEFAULT,
astrof_hiload, astrof_hisave
};
struct GameDriver astrof2_driver =
{
__FILE__,
&astrof_driver,
"astrof2",
"Astro Fighter (set 2)",
"1980",
"Data East",
CREDITS,
0,
&astrof_machine_driver,
0,
astrof2_rom,
0, 0,
astrof_sample_names,
0, /* sound_prom */
astrof_input_ports,
PROM_MEMORY_REGION(1), 0, 0,
ORIENTATION_DEFAULT,
astrof_hiload, astrof_hisave
};
struct GameDriver astrof3_driver =
{
__FILE__,
&astrof_driver,
"astrof3",
"Astro Fighter (set 3)",
"1980",
"Data East",
CREDITS,
0,
&astrof_machine_driver,
0,
astrof3_rom,
0, 0,
astrof_sample_names,
0, /* sound_prom */
astrof_input_ports,
PROM_MEMORY_REGION(1), 0, 0,
ORIENTATION_DEFAULT,
astrof_hiload, astrof_hisave
};
struct GameDriver tomahawk_driver =
{
__FILE__,
0,
"tomahawk",
"Tomahawk 777 (Revision 1)",
"1980",
"Data East",
CREDITS,
0,
&tomahawk_machine_driver,
0,
tomahawk_rom,
0, 0,
tomahawk_sample_names,
0, /* sound_prom */
tomahawk_input_ports,
PROM_MEMORY_REGION(1), 0, 0,
ORIENTATION_DEFAULT,
tomahawk_hiload, tomahawk_hisave
};
struct GameDriver tomahaw5_driver =
{
__FILE__,
&tomahawk_driver,
"tomahaw5",
"Tomahawk 777 (Revision 5)",
"1980",
"Data East",
CREDITS,
0,
&tomahawk_machine_driver,
0,
tomahaw5_rom,
0, 0,
tomahawk_sample_names,
0, /* sound_prom */
tomahawk_input_ports,
PROM_MEMORY_REGION(1), 0, 0,
ORIENTATION_DEFAULT,
tomahawk_hiload, tomahawk_hisave
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -