diff --git a/core/hw/aica/aica_if.cpp b/core/hw/aica/aica_if.cpp index c92bce9b8..3bf48ae49 100644 --- a/core/hw/aica/aica_if.cpp +++ b/core/hw/aica/aica_if.cpp @@ -246,12 +246,12 @@ void Write_SB_ADST(u32 addr, u32 data) SB_ADSTAR+=len; SB_ADSTAG+=len; total_bytes+=len; - SB_ADST = settings.aica.InterruptHack ? 1 : 0x00000000;//dma done + SB_ADST = settings.aica.DelayInterrupt ? 1 : 0x00000000;//dma done SB_ADLEN = 0x00000000; aica_pending_dma = ((total_bytes * 200000000) / 65536) + 1; - if (!settings.aica.InterruptHack) + if (!settings.aica.DelayInterrupt) asic_RaiseInterruptWait(holly_SPU_DMA); } } @@ -334,4 +334,4 @@ void aica_sb_Reset(bool Manual) void aica_sb_Term() { -} \ No newline at end of file +} diff --git a/core/hw/sh4/interpr/sh4_interpreter.cpp b/core/hw/sh4/interpr/sh4_interpreter.cpp index 91c100159..ab47385be 100644 --- a/core/hw/sh4/interpr/sh4_interpreter.cpp +++ b/core/hw/sh4/interpr/sh4_interpreter.cpp @@ -210,7 +210,7 @@ int AicaUpdate(int tag, int c, int j) //aica_sample_cycles-=AICA_SAMPLE_CYCLES; } - if (settings.aica.InterruptHack) + if (settings.aica.DelayInterrupt) aica_periodical(3584); return AICA_TICK; diff --git a/core/nullDC.cpp b/core/nullDC.cpp index db05e160d..7fdc28116 100755 --- a/core/nullDC.cpp +++ b/core/nullDC.cpp @@ -298,7 +298,7 @@ void LoadSettings() settings.aica.LimitFPS = cfgLoadInt("config", "aica.LimitFPS", 1); settings.aica.NoBatch = cfgLoadInt("config", "aica.NoBatch", 0); settings.aica.NoSound = cfgLoadInt("config", "aica.NoSound", 0); - settings.aica.InterruptHack = cfgLoadInt("config", "aica.InterruptHack", 0); + settings.aica.DelayInterrupt = cfgLoadInt("config", "aica.DelayInterrupt", 0); settings.rend.UseMipmaps = cfgLoadInt("config", "rend.UseMipmaps", 1); settings.rend.WideScreen = cfgLoadInt("config", "rend.WideScreen", 0); settings.rend.ModifierVolumes = cfgLoadInt("config", "rend.ModifierVolumes", 1); @@ -358,7 +358,7 @@ void LoadCustom() settings.dynarec.idleskip = cfgGameInt(reios_id,"Dynarec.idleskip", settings.dynarec.idleskip ? 1 : 0) != 0; settings.dynarec.unstable_opt = cfgGameInt(reios_id,"Dynarec.unstable-opt", settings.dynarec.unstable_opt); settings.dynarec.safemode = cfgGameInt(reios_id,"Dynarec.safemode", settings.dynarec.safemode); - settings.aica.InterruptHack = cfgLoadInt(reios_id,"aica.InterruptHack", settings.aica.InterruptHack); + settings.aica.DelayInterrupt = cfgLoadInt(reios_id,"aica.DelayInterrupt", settings.aica.DelayInterrupt); settings.rend.ModifierVolumes = cfgGameInt(reios_id,"rend.ModifierVolumes", settings.rend.ModifierVolumes); settings.rend.Clipping = cfgGameInt(reios_id,"rend.Clipping", settings.rend.Clipping); diff --git a/core/types.h b/core/types.h index 6e7a4a1cf..0dd5865ec 100644 --- a/core/types.h +++ b/core/types.h @@ -653,7 +653,7 @@ struct settings_t u32 DSPEnabled; //0 -> no, 1 -> yes u32 NoBatch; u32 NoSound; //0 ->sound, 1 -> no sound - u32 InterruptHack; + u32 DelayInterrupt; } aica; #if USE_OMX diff --git a/shell/android-studio/reicast/src/main/java/com/reicast/emulator/Emulator.java b/shell/android-studio/reicast/src/main/java/com/reicast/emulator/Emulator.java index e72146144..8dce5f646 100644 --- a/shell/android-studio/reicast/src/main/java/com/reicast/emulator/Emulator.java +++ b/shell/android-studio/reicast/src/main/java/com/reicast/emulator/Emulator.java @@ -19,7 +19,7 @@ public class Emulator extends Application { public static final String pref_broadcast = "dc_broadcast"; public static final String pref_limitfps = "limit_fps"; public static final String pref_nosound = "sound_disabled"; - public static final String pref_interrupt = "interrupt_hack"; + public static final String pref_interrupt = "delay_interrupt"; public static final String pref_mipmaps = "use_mipmaps"; public static final String pref_widescreen = "stretch_view"; public static final String pref_frameskip = "frame_skip"; @@ -94,7 +94,7 @@ public class Emulator extends Application { JNIdc.limitfps(Emulator.limitfps ? 1 : 0); JNIdc.nobatch(Emulator.nobatch ? 1 : 0); JNIdc.nosound(Emulator.nosound ? 1 : 0); - JNIdc.interrupthack(Emulator.interrupt ? 1 : 0); + JNIdc.delayinterrupt(Emulator.interrupt ? 1 : 0); JNIdc.mipmaps(Emulator.mipmaps ? 1 : 0); JNIdc.widescreen(Emulator.widescreen ? 1 : 0); JNIdc.subdivide(Emulator.subdivide ? 1 : 0); @@ -113,7 +113,7 @@ public class Emulator extends Application { JNIdc.dynarec(mPrefs.getBoolean(pref_dynarecopt, dynarecopt) ? 1 : 0); JNIdc.unstable(mPrefs.getBoolean(pref_unstable, unstableopt) ? 1 : 0); JNIdc.safemode(mPrefs.getBoolean(pref_dynsafemode, dynsafemode) ? 1 : 0); - JNIdc.interrupthack(mPrefs.getBoolean(pref_interrupt, interrupt) ? 1 : 0); + JNIdc.delayinterrupt(mPrefs.getBoolean(pref_interrupt, interrupt) ? 1 : 0); JNIdc.frameskip(mPrefs.getInt(pref_frameskip, frameskip)); JNIdc.pvrrender(mPrefs.getBoolean(pref_pvrrender, pvrrender) ? 1 : 0); JNIdc.syncedrender(mPrefs.getBoolean(pref_syncedrender, syncedrender) ? 1 : 0); diff --git a/shell/android-studio/reicast/src/main/java/com/reicast/emulator/config/OptionsFragment.java b/shell/android-studio/reicast/src/main/java/com/reicast/emulator/config/OptionsFragment.java index 89c4f8db0..54457eb33 100644 --- a/shell/android-studio/reicast/src/main/java/com/reicast/emulator/config/OptionsFragment.java +++ b/shell/android-studio/reicast/src/main/java/com/reicast/emulator/config/OptionsFragment.java @@ -475,14 +475,14 @@ public class OptionsFragment extends Fragment { modifier_volumes.setOnCheckedChangeListener(mod_volumes); CompoundButton interrupt_opt = (CompoundButton) getView().findViewById(R.id.interrupt_option); - OnCheckedChangeListener interrupthack = new OnCheckedChangeListener() { + OnCheckedChangeListener delayinterrupt = new OnCheckedChangeListener() { public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { mPrefs.edit().putBoolean(Emulator.pref_interrupt, isChecked).apply(); } }; interrupt_opt.setChecked(mPrefs.getBoolean(Emulator.pref_interrupt, false)); - interrupt_opt.setOnCheckedChangeListener(interrupthack); + interrupt_opt.setOnCheckedChangeListener(delayinterrupt); // final EditText bootdiskEdit = (EditText) getView().findViewById(R.id.boot_disk); // String disk = Emulator.bootdisk; diff --git a/shell/android-studio/reicast/src/main/java/com/reicast/emulator/emu/JNIdc.java b/shell/android-studio/reicast/src/main/java/com/reicast/emulator/emu/JNIdc.java index 57443c69d..a4f91cd6c 100644 --- a/shell/android-studio/reicast/src/main/java/com/reicast/emulator/emu/JNIdc.java +++ b/shell/android-studio/reicast/src/main/java/com/reicast/emulator/emu/JNIdc.java @@ -39,7 +39,7 @@ public final class JNIdc public static native void limitfps(int limiter); public static native void nobatch(int nobatch); public static native void nosound(int noaudio); - public static native void interrupthack(int interrupt); + public static native void delayinterrupt(int delayed); public static native void mipmaps(int mipmaps); public static native void widescreen(int stretch); public static native void subdivide(int subdivide); diff --git a/shell/android-studio/reicast/src/main/jni/src/Android.cpp b/shell/android-studio/reicast/src/main/jni/src/Android.cpp index 743931f1b..e32c8da48 100644 --- a/shell/android-studio/reicast/src/main/jni/src/Android.cpp +++ b/shell/android-studio/reicast/src/main/jni/src/Android.cpp @@ -54,7 +54,7 @@ JNIEXPORT void JNICALL Java_com_reicast_emulator_emu_JNIdc_broadcast(JNIEnv *env JNIEXPORT void JNICALL Java_com_reicast_emulator_emu_JNIdc_limitfps(JNIEnv *env,jobject obj, jint limiter) __attribute__((visibility("default"))); JNIEXPORT void JNICALL Java_com_reicast_emulator_emu_JNIdc_nobatch(JNIEnv *env,jobject obj, jint nobatch) __attribute__((visibility("default"))); JNIEXPORT void JNICALL Java_com_reicast_emulator_emu_JNIdc_nosound(JNIEnv *env,jobject obj, jint noaudio) __attribute__((visibility("default"))); -JNIEXPORT void JNICALL Java_com_reicast_emulator_emu_JNIdc_interrupthack(JNIEnv *env,jobject obj, jint interrupt) __attribute__((visibility("default"))); +JNIEXPORT void JNICALL Java_com_reicast_emulator_emu_JNIdc_delayinterrupt(JNIEnv *env,jobject obj, jint delayed) __attribute__((visibility("default"))); JNIEXPORT void JNICALL Java_com_reicast_emulator_emu_JNIdc_mipmaps(JNIEnv *env,jobject obj, jint mipmaps) __attribute__((visibility("default"))); JNIEXPORT void JNICALL Java_com_reicast_emulator_emu_JNIdc_widescreen(JNIEnv *env,jobject obj, jint stretch) __attribute__((visibility("default"))); JNIEXPORT void JNICALL Java_com_reicast_emulator_emu_JNIdc_subdivide(JNIEnv *env,jobject obj, jint subdivide) __attribute__((visibility("default"))); @@ -118,9 +118,9 @@ JNIEXPORT void JNICALL Java_com_reicast_emulator_emu_JNIdc_nosound(JNIEnv *env,j settings.aica.NoSound = noaudio; } -JNIEXPORT void JNICALL Java_com_reicast_emulator_emu_JNIdc_interrupthack(JNIEnv *env,jobject obj, jint interrupt) +JNIEXPORT void JNICALL Java_com_reicast_emulator_emu_JNIdc_delayinterrupt(JNIEnv *env,jobject obj, jint delayed) { - settings.aica.InterruptHack = interrupt; + settings.aica.DelayInterrupt = delayed; } JNIEXPORT void JNICALL Java_com_reicast_emulator_emu_JNIdc_mipmaps(JNIEnv *env,jobject obj, jint mipmaps) diff --git a/shell/android-studio/reicast/src/main/res/values/strings.xml b/shell/android-studio/reicast/src/main/res/values/strings.xml index 2c34ada08..b9d475c3a 100644 --- a/shell/android-studio/reicast/src/main/res/values/strings.xml +++ b/shell/android-studio/reicast/src/main/res/values/strings.xml @@ -50,7 +50,7 @@ Synchronous Rendering Force Queue Rendering Enable Modifier Volumes - Enable Interrupt Hack + Enable Delay Interrupt Show On-Screen FPS Use Software Layer Disable Emulator Sound