added save state suport to Konami CPU & Aliens

This commit is contained in:
Nicola Salmoria 2008-07-14 14:56:20 +00:00
parent 484efe776b
commit 89675377ca
2 changed files with 21 additions and 27 deletions

View File

@ -387,6 +387,19 @@ static void konami_set_context(void *src)
static void konami_init(int index, int clock, const void *config, int (*irqcallback)(int)) static void konami_init(int index, int clock, const void *config, int (*irqcallback)(int))
{ {
konami.irq_callback = irqcallback; konami.irq_callback = irqcallback;
state_save_register_item("KONAMI", index, PC);
state_save_register_item("KONAMI", index, U);
state_save_register_item("KONAMI", index, S);
state_save_register_item("KONAMI", index, X);
state_save_register_item("KONAMI", index, Y);
state_save_register_item("KONAMI", index, D);
state_save_register_item("KONAMI", index, DP);
state_save_register_item("KONAMI", index, CC);
state_save_register_item("KONAMI", index, konami.int_state);
state_save_register_item("KONAMI", index, konami.nmi_state);
state_save_register_item("KONAMI", index, konami.irq_state[0]);
state_save_register_item("KONAMI", index, konami.irq_state[1]);
} }
static void konami_reset(void) static void konami_reset(void)
@ -458,27 +471,6 @@ static void set_irq_line(int irqline, int state)
} }
} }
#if 0
/****************************************************************************
* Save CPU state
****************************************************************************/
static void state_save(void *file, const char *module)
{
int cpu = cpu_getactivecpu();
state_save_register_item(file, cpu, module, PC);
state_save_register_item(file, cpu, module, U);
state_save_register_item(file, cpu, module, S);
state_save_register_item(file, cpu, module, X);
state_save_register_item(file, cpu, module, Y);
state_save_register_item(file, cpu, module, DP);
state_save_register_item(file, cpu, module, CC);
state_save_register_item(file, cpu, module, konami.int_state);
state_save_register_item(file, cpu, module, konami.nmi_state);
state_save_register_item(file, cpu, module, konami.irq_state[0]);
state_save_register_item(file, cpu, module, konami.irq_state[1]);
}
#endif
/* includes the static function prototypes and the master opcode table */ /* includes the static function prototypes and the master opcode table */
#include "konamtbl.c" #include "konamtbl.c"

View File

@ -507,13 +507,15 @@ static DRIVER_INIT( aliens )
{ {
konami_rom_deinterleave_2(REGION_GFX1); konami_rom_deinterleave_2(REGION_GFX1);
konami_rom_deinterleave_2(REGION_GFX2); konami_rom_deinterleave_2(REGION_GFX2);
state_save_register_global(palette_selected);
} }
GAME( 1990, aliens, 0, aliens, aliens, aliens, ROT0, "Konami", "Aliens (World set 1)", 0 ) GAME( 1990, aliens, 0, aliens, aliens, aliens, ROT0, "Konami", "Aliens (World set 1)", GAME_SUPPORTS_SAVE )
GAME( 1990, aliens2, aliens, aliens, aliens, aliens, ROT0, "Konami", "Aliens (World set 2)", 0 ) GAME( 1990, aliens2, aliens, aliens, aliens, aliens, ROT0, "Konami", "Aliens (World set 2)", GAME_SUPPORTS_SAVE )
GAME( 1990, aliens3, aliens, aliens, aliens, aliens, ROT0, "Konami", "Aliens (World set 3)", 0 ) GAME( 1990, aliens3, aliens, aliens, aliens, aliens, ROT0, "Konami", "Aliens (World set 3)", GAME_SUPPORTS_SAVE )
GAME( 1990, aliensu, aliens, aliens, aliens, aliens, ROT0, "Konami", "Aliens (US)", 0 ) GAME( 1990, aliensu, aliens, aliens, aliens, aliens, ROT0, "Konami", "Aliens (US)", GAME_SUPPORTS_SAVE )
GAME( 1990, aliensj, aliens, aliens, aliens, aliens, ROT0, "Konami", "Aliens (Japan set 1)", 0 ) GAME( 1990, aliensj, aliens, aliens, aliens, aliens, ROT0, "Konami", "Aliens (Japan set 1)", GAME_SUPPORTS_SAVE )
GAME( 1990, aliensj2, aliens, aliens, aliens, aliens, ROT0, "Konami", "Aliens (Japan set 2)", 0 ) GAME( 1990, aliensj2, aliens, aliens, aliens, aliens, ROT0, "Konami", "Aliens (Japan set 2)", GAME_SUPPORTS_SAVE )