int cps1_driver_init(void) { m68000_init(); z80_init(); z80_bank = -1; if (machine_driver_type == MACHINE_qsound) { EEPROM_init(&qsound_eeprom_interface); cps1_nvram_read_write(0); } else if (machine_driver_type == MACHINE_wofhfh) { EEPROM_init(&qsound_eeprom_interface); cps1_nvram_read_write(0); } else if (machine_driver_type == MACHINE_pang3) { EEPROM_init(&pang3_eeprom_interface); cps1_nvram_read_write(0); } return 1; }
void neogeo_driver_init(void) { memcpy(neogeo_game_vectors, memory_region_cpu1, 0x80); neogeo_vectors[0] = memory_region_user1; neogeo_vectors[1] = neogeo_game_vectors; m68k_second_bank = 0xffffffff; z80_bank[0] = 0xffffffff; z80_bank[1] = 0xffffffff; z80_bank[2] = 0xffffffff; z80_bank[3] = 0xffffffff; if (memory_length_cpu1 > 0x100000) neogeo_set_cpu1_second_bank(0x100000); else neogeo_set_cpu1_second_bank(0x000000); neogeo_set_cpu2_bank(0, 0x8000); neogeo_set_cpu2_bank(1, 0xc000); neogeo_set_cpu2_bank(2, 0xe000); neogeo_set_cpu2_bank(3, 0xf000); m68000_init(); z80_init(); }
void cps2_driver_init(void) { if (memory_length_user1) { m68000_init(); m68000_set_encrypted_range(0, memory_length_user1 - 1, memory_region_user1); } else { m68000_init(); } z80_init(); z80_bank = -1; EEPROM_init(); cps2_nvram_read_write(0); //SFA3 patch if (!strcmp(driver->name, "sfa3")) EEPROM_write_data(0x75, 0x04); }
void neogeo_driver_init(void) { if (neogeo_boot_bios) memcpy(neogeo_game_vectors, memory_region_user1, 0x100); memcpy(memory_region_cpu1, memory_region_user1, 0x100); neogeo_vectors[0] = memory_region_user1; neogeo_vectors[1] = neogeo_game_vectors; memset(memory_region_hctrl, 0, sizeof(memory_region_hctrl)); z80_cdda_offset = 0; m68000_init(); z80_init(); }
int WinX68k_Init(void) { #ifdef PSP #define MEM_SIZE 0x400000 #else #define MEM_SIZE 0xc00000 #endif IPL = (BYTE*)malloc(0x40000); MEM = (BYTE*)malloc(MEM_SIZE); FONT = (BYTE*)malloc(0xc0000); if (MEM) ZeroMemory(MEM, MEM_SIZE); if (MEM && FONT && IPL) { m68000_init(); return TRUE; } else return FALSE; }