inline void M68K_Reset(void) { #ifdef CPU68K_USE_MUSASHI m68k_pulse_reset(); #endif #ifdef CPU68K_USE_C68K C68k_Reset(&C68K); #endif }
int WinX68k_Reset(void) { OPM_Reset(); #ifdef CYCLONE m68000_reset(); m68000_set_reg(M68K_A7, (IPL[0x30001]<<24)|(IPL[0x30000]<<16)|(IPL[0x30003]<<8)|IPL[0x30002]); m68000_set_reg(M68K_PC, (IPL[0x30005]<<24)|(IPL[0x30004]<<16)|(IPL[0x30007]<<8)|IPL[0x30006]); #else C68k_Reset(&C68K); /* C68k_Set_Reg(&C68K, C68K_A7, (IPL[0x30001]<<24)|(IPL[0x30000]<<16)|(IPL[0x30003]<<8)|IPL[0x30002]); C68k_Set_Reg(&C68K, C68K_PC, (IPL[0x30005]<<24)|(IPL[0x30004]<<16)|(IPL[0x30007]<<8)|IPL[0x30006]); */ C68k_Set_AReg(&C68K, 7, (IPL[0x30001]<<24)|(IPL[0x30000]<<16)|(IPL[0x30003]<<8)|IPL[0x30002]); C68k_Set_PC(&C68K, (IPL[0x30005]<<24)|(IPL[0x30004]<<16)|(IPL[0x30007]<<8)|IPL[0x30006]); #endif Memory_Init(); CRTC_Init(); DMA_Init(); MFP_Init(); FDC_Init(); FDD_Reset(); SASI_Init(); SCSI_Init(); IOC_Init(); SCC_Init(); PIA_Init(); RTC_Init(); TVRAM_Init(); GVRAM_Init(); BG_Init(); Pal_Init(); IRQH_Init(); MIDI_Init(); //WinDrv_Init(); //C68K.ICount = 0; m68000_ICountBk = 0; ICount = 0; DSound_Stop(); SRAM_VirusCheck(); //CDROM_Init(); DSound_Play(); return TRUE; }
void gen_reset(void) { /* Clear RAM */ #ifndef MEM2 memset(work_ram, 0, sizeof(work_ram)); memset(zram, 0, sizeof(zram)); #else memset(work_ram, 0, 0x10000); memset(zram, 0, 0x2000); #endif gen_running = 1; zreset = 0; /* Z80 is reset */ zbusreq = 0; /* Z80 has control of the Z bus */ zbusack = 1; /* Z80 is busy using the Z bus */ zbank = 0; /* Assume default bank is 000000-007FFF */ zirq = 0; /* No interrupts occuring */ gen_io_reset(); C68k_Reset(&Main68K); z80_reset(); }
inline void M68K_Init(void) { #ifdef CPU68K_USE_MUSASHI // MUSASHI m68k_set_cpu_type(M68K_CPU_TYPE_68000); m68k_pulse_reset(); #endif #ifdef CPU68K_USE_C68K // C68K C68k_Init(&C68K, NULL); C68k_Set_ReadB(&C68K, m68k_read_memory_8); C68k_Set_ReadW(&C68K, m68k_read_memory_16); C68k_Set_WriteB(&C68K, m68k_write_memory_8); C68k_Set_WriteW(&C68K, m68k_write_memory_16); C68k_Set_Fetch(&C68K, 0x000000, 0x1FFFFF, (u32) neogeo_prg_memory); C68k_Set_Fetch(&C68K, 0xC00000, 0xC7FFFF, (u32) neogeo_rom_memory); C68k_Reset(&C68K); #endif }
void m68000_reset(void) { C68k_Reset(&C68K); }
static void M68KC68KReset(void) { C68k_Reset(&C68K); }