Core / Android: Add dynarec to per-game config
This commit is contained in:
parent
31fb575165
commit
2c66bf3b3a
|
@ -286,28 +286,28 @@ void dc_stop()
|
|||
void LoadSettings()
|
||||
{
|
||||
#ifndef _ANDROID
|
||||
settings.dynarec.Enable = cfgLoadInt("config","Dynarec.Enabled", 1)!=0;
|
||||
settings.dynarec.idleskip = cfgLoadInt("config","Dynarec.idleskip",1)!=0;
|
||||
settings.dynarec.unstable_opt = cfgLoadInt("config","Dynarec.unstable-opt",0);
|
||||
settings.dynarec.safemode = cfgLoadInt("config","Dynarec.safemode",0);
|
||||
settings.dynarec.Enable = cfgLoadInt("config", "Dynarec.Enabled", 1) != 0;
|
||||
settings.dynarec.idleskip = cfgLoadInt("config", "Dynarec.idleskip", 1) != 0;
|
||||
settings.dynarec.unstable_opt = cfgLoadInt("config", "Dynarec.unstable-opt", 0);
|
||||
settings.dynarec.safemode = cfgLoadInt("config", "Dynarec.safemode", 0);
|
||||
//disable_nvmem can't be loaded, because nvmem init is before cfg load
|
||||
settings.dreamcast.cable = cfgLoadInt("config","Dreamcast.Cable",3);
|
||||
settings.dreamcast.RTC = cfgLoadInt("config","Dreamcast.RTC",GetRTC_now());
|
||||
settings.dreamcast.region = cfgLoadInt("config","Dreamcast.Region",3);
|
||||
settings.dreamcast.broadcast = cfgLoadInt("config","Dreamcast.Broadcast",4);
|
||||
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.rend.UseMipmaps = cfgLoadInt("config","rend.UseMipmaps",1);
|
||||
settings.rend.WideScreen = cfgLoadInt("config","rend.WideScreen",0);
|
||||
settings.rend.ModifierVolumes = cfgLoadInt("config","rend.ModifierVolumes",1);
|
||||
settings.rend.Clipping = cfgLoadInt("config","rend.Clipping",1);
|
||||
settings.dreamcast.cable = cfgLoadInt("config", "Dreamcast.Cable", 3);
|
||||
settings.dreamcast.RTC = cfgLoadInt("config", "Dreamcast.RTC", GetRTC_now());
|
||||
settings.dreamcast.region = cfgLoadInt("config", "Dreamcast.Region", 3);
|
||||
settings.dreamcast.broadcast = cfgLoadInt("config", "Dreamcast.Broadcast", 4);
|
||||
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.rend.UseMipmaps = cfgLoadInt("config", "rend.UseMipmaps", 1);
|
||||
settings.rend.WideScreen = cfgLoadInt("config", "rend.WideScreen", 0);
|
||||
settings.rend.ModifierVolumes = cfgLoadInt("config", "rend.ModifierVolumes", 1);
|
||||
settings.rend.Clipping = cfgLoadInt("config", "rend.Clipping", 1);
|
||||
|
||||
settings.pvr.subdivide_transp = cfgLoadInt("config","pvr.Subdivide",0);
|
||||
settings.pvr.subdivide_transp = cfgLoadInt("config", "pvr.Subdivide", 0);
|
||||
|
||||
settings.pvr.ta_skip = cfgLoadInt("config","ta.skip",0);
|
||||
settings.pvr.rend = cfgLoadInt("config","pvr.rend",0);
|
||||
settings.pvr.ta_skip = cfgLoadInt("config", "ta.skip", 0);
|
||||
settings.pvr.rend = cfgLoadInt("config", "pvr.rend", 0);
|
||||
|
||||
settings.pvr.MaxThreads = cfgLoadInt("config", "pvr.MaxThreads", 3);
|
||||
settings.pvr.SynchronousRender = cfgLoadInt("config", "pvr.SynchronousRendering", 0);
|
||||
|
@ -354,6 +354,7 @@ void LoadCustom()
|
|||
char *reios_id = reios_disk_id();
|
||||
|
||||
cfgSaveStr(reios_id, "software.name", reios_software_name);
|
||||
settings.dynarec.Enable = cfgLoadInt(reios_id,"Dynarec.Enabled", settings.dynarec.Enable ? 1 : 0) != 0;
|
||||
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);
|
||||
|
|
|
@ -110,6 +110,7 @@ public class Emulator extends Application {
|
|||
|
||||
public void loadGameConfiguration(String gameId) {
|
||||
SharedPreferences mPrefs = getSharedPreferences(gameId, Activity.MODE_PRIVATE);
|
||||
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);
|
||||
|
|
|
@ -45,6 +45,7 @@ public class PGConfigFragment extends Fragment {
|
|||
|
||||
private Spinner mSpnrConfigs;
|
||||
|
||||
private CompoundButton dynarec_opt;
|
||||
private CompoundButton unstable_opt;
|
||||
private CompoundButton safemode_opt;
|
||||
private EditText mainFrames;
|
||||
|
@ -82,6 +83,7 @@ public class PGConfigFragment extends Fragment {
|
|||
new LocateConfigs(PGConfigFragment.this).execute("/data/data/"
|
||||
+ getActivity().getPackageName() + "/shared_prefs/");
|
||||
|
||||
dynarec_opt = (CompoundButton) getView().findViewById(R.id.dynarec_option);
|
||||
unstable_opt = (CompoundButton) getView().findViewById(R.id.unstable_option);
|
||||
safemode_opt = (CompoundButton) getView().findViewById(R.id.dynarec_safemode);
|
||||
mainFrames = (EditText) getView().findViewById(R.id.current_frames);
|
||||
|
@ -94,7 +96,9 @@ public class PGConfigFragment extends Fragment {
|
|||
}
|
||||
|
||||
private void saveSettings(SharedPreferences mPrefs) {
|
||||
mPrefs.edit().putBoolean(Emulator.pref_unstable, unstable_opt.isChecked())
|
||||
mPrefs.edit()
|
||||
.putBoolean(Emulator.pref_dynarecopt, dynarec_opt.isChecked())
|
||||
.putBoolean(Emulator.pref_unstable, unstable_opt.isChecked())
|
||||
.putBoolean(Emulator.pref_dynsafemode, safemode_opt.isChecked())
|
||||
.putInt(Emulator.pref_frameskip, frameSeek.getProgress())
|
||||
.putBoolean(Emulator.pref_pvrrender, pvr_render.isChecked())
|
||||
|
@ -109,6 +113,7 @@ public class PGConfigFragment extends Fragment {
|
|||
private void configureViewByGame(String gameId) {
|
||||
final SharedPreferences mPrefs = getActivity()
|
||||
.getSharedPreferences(gameId, Activity.MODE_PRIVATE);
|
||||
dynarec_opt.setChecked(mPrefs.getBoolean(Emulator.pref_dynarecopt, Emulator.dynarecopt));
|
||||
unstable_opt.setChecked(mPrefs.getBoolean(Emulator.pref_unstable, Emulator.unstableopt));
|
||||
safemode_opt.setChecked(mPrefs.getBoolean(Emulator.pref_dynsafemode, Emulator.dynsafemode));
|
||||
|
||||
|
|
|
@ -273,34 +273,6 @@
|
|||
</LinearLayout>
|
||||
</TableRow>
|
||||
|
||||
<TableRow
|
||||
android:layout_marginTop="10dp"
|
||||
android:gravity="center_vertical" >
|
||||
|
||||
<TextView
|
||||
android:id="@+id/safemode_text"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="0.5"
|
||||
android:ems="10"
|
||||
android:gravity="center_vertical|left"
|
||||
android:text="@string/select_safemode" />
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:gravity="right"
|
||||
android:orientation="vertical" >
|
||||
|
||||
<Switch
|
||||
android:id="@+id/dynarec_safemode"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:focusable="true" />
|
||||
</LinearLayout>
|
||||
</TableRow>
|
||||
|
||||
<TableRow
|
||||
android:layout_marginTop="10dp"
|
||||
android:gravity="center_vertical" >
|
||||
|
@ -575,6 +547,34 @@
|
|||
android:focusable="true" />
|
||||
</LinearLayout>
|
||||
</TableRow>
|
||||
|
||||
<TableRow
|
||||
android:layout_marginTop="10dp"
|
||||
android:gravity="center_vertical" >
|
||||
|
||||
<TextView
|
||||
android:id="@+id/safemode_text"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="0.5"
|
||||
android:ems="10"
|
||||
android:gravity="center_vertical|left"
|
||||
android:text="@string/select_safemode" />
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:gravity="right"
|
||||
android:orientation="vertical" >
|
||||
|
||||
<Switch
|
||||
android:id="@+id/dynarec_safemode"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:focusable="true" />
|
||||
</LinearLayout>
|
||||
</TableRow>
|
||||
|
||||
<TableRow
|
||||
android:layout_marginTop="10dp"
|
||||
|
|
|
@ -83,34 +83,6 @@
|
|||
</LinearLayout>
|
||||
</TableRow>
|
||||
|
||||
<TableRow
|
||||
android:layout_marginTop="10dp"
|
||||
android:gravity="center_vertical" >
|
||||
|
||||
<TextView
|
||||
android:id="@+id/safemode_text"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="0.5"
|
||||
android:ems="10"
|
||||
android:gravity="center_vertical|left"
|
||||
android:text="@string/select_safemode" />
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:gravity="right"
|
||||
android:orientation="vertical" >
|
||||
|
||||
<Switch
|
||||
android:id="@+id/dynarec_safemode"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:focusable="true" />
|
||||
</LinearLayout>
|
||||
</TableRow>
|
||||
|
||||
<TableRow
|
||||
android:layout_marginTop="10dp"
|
||||
android:gravity="center_vertical" >
|
||||
|
@ -170,6 +142,62 @@
|
|||
android:layout_height="2dp"
|
||||
android:background="@drawable/list_item_border" />
|
||||
|
||||
<TableRow
|
||||
android:layout_marginTop="20dp"
|
||||
android:gravity="center_vertical" >
|
||||
|
||||
<TextView
|
||||
android:id="@+id/dynarec_text"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="0.5"
|
||||
android:ems="10"
|
||||
android:gravity="center_vertical|left"
|
||||
android:text="@string/select_dynarec" />
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:gravity="right"
|
||||
android:orientation="vertical" >
|
||||
|
||||
<Switch
|
||||
android:id="@+id/dynarec_option"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:focusable="true" />
|
||||
</LinearLayout>
|
||||
</TableRow>
|
||||
|
||||
<TableRow
|
||||
android:layout_marginTop="10dp"
|
||||
android:gravity="center_vertical" >
|
||||
|
||||
<TextView
|
||||
android:id="@+id/safemode_text"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="0.5"
|
||||
android:ems="10"
|
||||
android:gravity="center_vertical|left"
|
||||
android:text="@string/select_safemode" />
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:gravity="right"
|
||||
android:orientation="vertical" >
|
||||
|
||||
<Switch
|
||||
android:id="@+id/dynarec_safemode"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:focusable="true" />
|
||||
</LinearLayout>
|
||||
</TableRow>
|
||||
|
||||
<TableRow
|
||||
android:layout_marginTop="10dp"
|
||||
android:gravity="center_vertical" >
|
||||
|
|
|
@ -273,34 +273,6 @@
|
|||
</LinearLayout>
|
||||
</TableRow>
|
||||
|
||||
<TableRow
|
||||
android:layout_marginTop="10dp"
|
||||
android:gravity="center_vertical" >
|
||||
|
||||
<TextView
|
||||
android:id="@+id/safemode_text"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="0.5"
|
||||
android:ems="10"
|
||||
android:gravity="center_vertical|left"
|
||||
android:text="@string/select_safemode" />
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:gravity="right"
|
||||
android:orientation="vertical" >
|
||||
|
||||
<Checkbox
|
||||
android:id="@+id/dynarec_safemode"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:focusable="true" />
|
||||
</LinearLayout>
|
||||
</TableRow>
|
||||
|
||||
<TableRow
|
||||
android:layout_marginTop="10dp"
|
||||
android:gravity="center_vertical" >
|
||||
|
@ -575,6 +547,34 @@
|
|||
android:focusable="true" />
|
||||
</LinearLayout>
|
||||
</TableRow>
|
||||
|
||||
<TableRow
|
||||
android:layout_marginTop="10dp"
|
||||
android:gravity="center_vertical" >
|
||||
|
||||
<TextView
|
||||
android:id="@+id/safemode_text"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="0.5"
|
||||
android:ems="10"
|
||||
android:gravity="center_vertical|left"
|
||||
android:text="@string/select_safemode" />
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:gravity="right"
|
||||
android:orientation="vertical" >
|
||||
|
||||
<Checkbox
|
||||
android:id="@+id/dynarec_safemode"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:focusable="true" />
|
||||
</LinearLayout>
|
||||
</TableRow>
|
||||
|
||||
<TableRow
|
||||
android:layout_marginTop="10dp"
|
||||
|
|
|
@ -83,34 +83,6 @@
|
|||
</LinearLayout>
|
||||
</TableRow>
|
||||
|
||||
<TableRow
|
||||
android:layout_marginTop="10dp"
|
||||
android:gravity="center_vertical" >
|
||||
|
||||
<TextView
|
||||
android:id="@+id/safemode_text"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="0.5"
|
||||
android:ems="10"
|
||||
android:gravity="center_vertical|left"
|
||||
android:text="@string/select_safemode" />
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:gravity="right"
|
||||
android:orientation="vertical" >
|
||||
|
||||
<Checkbox
|
||||
android:id="@+id/dynarec_safemode"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:focusable="true" />
|
||||
</LinearLayout>
|
||||
</TableRow>
|
||||
|
||||
<TableRow
|
||||
android:layout_marginTop="10dp"
|
||||
android:gravity="center_vertical" >
|
||||
|
@ -170,6 +142,62 @@
|
|||
android:layout_height="2dp"
|
||||
android:background="@drawable/list_item_border" />
|
||||
|
||||
<TableRow
|
||||
android:layout_marginTop="20dp"
|
||||
android:gravity="center_vertical" >
|
||||
|
||||
<TextView
|
||||
android:id="@+id/dynarec_text"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="0.5"
|
||||
android:ems="10"
|
||||
android:gravity="center_vertical|left"
|
||||
android:text="@string/select_dynarec" />
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:gravity="right"
|
||||
android:orientation="vertical" >
|
||||
|
||||
<Checkbox
|
||||
android:id="@+id/dynarec_option"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:focusable="true" />
|
||||
</LinearLayout>
|
||||
</TableRow>
|
||||
|
||||
<TableRow
|
||||
android:layout_marginTop="10dp"
|
||||
android:gravity="center_vertical" >
|
||||
|
||||
<TextView
|
||||
android:id="@+id/safemode_text"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="0.5"
|
||||
android:ems="10"
|
||||
android:gravity="center_vertical|left"
|
||||
android:text="@string/select_safemode" />
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:gravity="right"
|
||||
android:orientation="vertical" >
|
||||
|
||||
<Checkbox
|
||||
android:id="@+id/dynarec_safemode"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:focusable="true" />
|
||||
</LinearLayout>
|
||||
</TableRow>
|
||||
|
||||
<TableRow
|
||||
android:layout_marginTop="10dp"
|
||||
android:gravity="center_vertical" >
|
||||
|
|
Loading…
Reference in New Issue