summaryrefslogtreecommitdiff
path: root/gba_memory.c
diff options
context:
space:
mode:
authortwinaphex2014-12-10 17:06:09 +0100
committertwinaphex2014-12-10 17:06:09 +0100
commit51d78afa091d296e5545e69ed11201ee436053a1 (patch)
treede64f89c9c353493b471db18f32d10b89ba6733f /gba_memory.c
parent512f7f5b275ec011ff0bf406771fcbeada1caf29 (diff)
downloadpicogpsp-51d78afa091d296e5545e69ed11201ee436053a1.tar.gz
picogpsp-51d78afa091d296e5545e69ed11201ee436053a1.tar.bz2
picogpsp-51d78afa091d296e5545e69ed11201ee436053a1.zip
Add HAVE_DYNAREC ifdef
Diffstat (limited to 'gba_memory.c')
-rw-r--r--gba_memory.c42
1 files changed, 24 insertions, 18 deletions
diff --git a/gba_memory.c b/gba_memory.c
index 106a342..98a025c 100644
--- a/gba_memory.c
+++ b/gba_memory.c
@@ -2280,23 +2280,26 @@ s32 load_game_config(char *gamepak_title, char *gamepak_code, char *gamepak_make
return 0;
}
- if(!strcmp(current_variable, "idle_loop_eliminate_target"))
- idle_loop_target_pc = strtol(current_value, NULL, 16);
-
- if(!strcmp(current_variable, "translation_gate_target"))
+ if (dynarec_enable)
{
- if(translation_gate_targets < MAX_TRANSLATION_GATES)
- {
- translation_gate_target_pc[translation_gate_targets] =
- strtol(current_value, NULL, 16);
- translation_gate_targets++;
- }
- }
+ if(!strcmp(current_variable, "idle_loop_eliminate_target"))
+ idle_loop_target_pc = strtol(current_value, NULL, 16);
- if(!strcmp(current_variable, "iwram_stack_optimize") &&
- !strcmp(current_value, "no\0")) /* \0 for broken toolchain workaround */
- {
- iwram_stack_optimize = 0;
+ if(!strcmp(current_variable, "translation_gate_target"))
+ {
+ if(translation_gate_targets < MAX_TRANSLATION_GATES)
+ {
+ translation_gate_target_pc[translation_gate_targets] =
+ strtol(current_value, NULL, 16);
+ translation_gate_targets++;
+ }
+ }
+
+ if(!strcmp(current_variable, "iwram_stack_optimize") &&
+ !strcmp(current_value, "no\0")) /* \0 for broken toolchain workaround */
+ {
+ iwram_stack_optimize = 0;
+ }
}
if(!strcmp(current_variable, "flash_rom_type") &&
@@ -3381,9 +3384,12 @@ void gba_load_state(const void* src)
state_mem_read_ptr = src;
savestate_block(read);
- flush_translation_cache_ram();
- flush_translation_cache_rom();
- flush_translation_cache_bios();
+ if (dynarec_enable)
+ {
+ flush_translation_cache_ram();
+ flush_translation_cache_rom();
+ flush_translation_cache_bios();
+ }
oam_update = 1;
gbc_sound_update = 1;