Esempio n. 1
0
bool emu_load_cart(const char *file_name) {
	FILE *f = fopen(file_name, "rb");
	if (f) {
		// Détermine la taille du fichier
		unsigned size = get_file_size(f);
		// Garde pour les sauvegardes d'état
		strcpy(emu_file_name, file_name);
		// Au moins un tableau couvrant la map 0000-7FFF...
		size = max(size, 0x8000);
		// Et multiple d'une page (arrondissement à la page supérieure)
		size = ((size + 0x3FFF) / 0x4000) * 0x4000;
		mem_rom = malloc(size);
		// La cartouche préparée, prépare le CPU
		cpu_init();
		lcd_init();
		sound_init();
		mem_init();
		// Charge le contenu
		fread(mem_rom, size, 1, f);
		fclose(f);
		// Démarrage
		mbc_init(size);
		load_sram();
		// Color-It
		ColorIt_init(file_name, mem_rom);
		return true;
	}
	return false;
}
Esempio n. 2
0
File: gb.c Progetto: BelmonduS/rin
void gb_init(void)
{
	lcd_init();
	rom_init();
	apu_init();// ROMより後に作られたし
	mbc_init();
	cpu_init();
	sgb_init();
	cheat_init();
	
	apu_reset();
	mbc_reset();
	//target=NULL;
	
	renderer_init();

	gb_reset();

	hook_ext=false;
	use_gba=false;
}
Esempio n. 3
0
void gb_init(void)
{
	lcd_init();
	rom_init();
	apu_init();// ROMより後に作られたし
	mbc_init();
	cpu_init();
	sgb_init();
	#ifdef CHEAT_SUPPORT
		cheat_init();
	#endif
	
	apu_reset();
	mbc_reset();
	//target=NULL;
	
	gbe_init();

	gb_reset();

	hook_ext=false;
	use_gba=false;
}