Ejemplo n.º 1
0
void ResetNES(void) {
	FCEUMOV_AddCommand(FCEUNPCMD_RESET);
	if (!FCEUGameInfo) return;
	GameInterface(GI_RESETM2);
	FCEUSND_Reset();
	FCEUPPU_Reset();
	X6502_Reset();
}
Ejemplo n.º 2
0
void FCEU_FDSInsert(void) {
	if (FCEUI_EmulationPaused()) EmulationPaused |= 2;

	if (FCEUMOV_Mode(MOVIEMODE_RECORD))
		FCEUMOV_AddCommand(FCEUNPCMD_FDSINSERT);

	if (TotalSides == 0) {
		FCEU_DispMessage("Not FDS; can't eject disk.", 0);
		return;
	}
	if (InDisk == 255) {
		FCEU_DispMessage("Disk %d Side %s Inserted", 0, SelectDisk >> 1, (SelectDisk & 1) ? "B" : "A");
		InDisk = SelectDisk;
	} else {
Ejemplo n.º 3
0
void PowerNES(void) {
	FCEUMOV_AddCommand(FCEUNPCMD_POWER);
	if (!FCEUGameInfo) return;

	FCEU_CheatResetRAM();
	FCEU_CheatAddRAM(2, 0, RAM);

	FCEU_GeniePower();

#ifndef COPYFAMI
	FCEU_MemoryRand(RAM, 0x800);
#endif

	SetReadHandler(0x0000, 0xFFFF, ANull);
	SetWriteHandler(0x0000, 0xFFFF, BNull);

#ifdef COPYFAMI
	SetReadHandler(0, 0x3FFF, ARAML);
	SetWriteHandler(0, 0x3FFF, BRAML);
#else
	SetReadHandler(0, 0x7FF, ARAML);
	SetWriteHandler(0, 0x7FF, BRAML);

	SetReadHandler(0x800, 0x1FFF, ARAMH);  /* Part of a little */
	SetWriteHandler(0x800, 0x1FFF, BRAMH); /* hack for a small speed boost. */
#endif
	InitializeInput();
	FCEUSND_Power();
	FCEUPPU_Power();

	/* Have the external game hardware "powered" after the internal NES stuff.
			Needed for the NSF code and VS System code.
	*/
	GameInterface(GI_POWER);
	if (FCEUGameInfo->type == GIT_VSUNI)
		FCEU_VSUniPower();


	timestampbase = 0;
	X6502_Power();
	FCEU_PowerCheats();
}