aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornotaz2011-10-01 01:13:43 +0300
committernotaz2011-10-02 03:09:13 +0300
commitd3f3bf09b5b3f1d8b025cc9dbd902eb157aae0b7 (patch)
treed25b4ece781d0dcd60fdaac68636043e9fdffade
parent0c2ca3ba2ca8a191fc3f6d9782dc2420537b1964 (diff)
downloadpcsx_rearmed-d3f3bf09b5b3f1d8b025cc9dbd902eb157aae0b7.tar.gz
pcsx_rearmed-d3f3bf09b5b3f1d8b025cc9dbd902eb157aae0b7.tar.bz2
pcsx_rearmed-d3f3bf09b5b3f1d8b025cc9dbd902eb157aae0b7.zip
yet more random armv5 tweaks
-rw-r--r--frontend/main.c3
-rw-r--r--frontend/menu.c3
-rw-r--r--frontend/plat_pollux.c4
-rw-r--r--frontend/plugin_lib.c2
-rw-r--r--libpcsxcore/new_dynarec/assem_arm.h6
-rw-r--r--libpcsxcore/new_dynarec/emu_if.c3
-rw-r--r--libpcsxcore/new_dynarec/emu_if.h4
-rw-r--r--libpcsxcore/new_dynarec/new_dynarec.c2
8 files changed, 21 insertions, 6 deletions
diff --git a/frontend/main.c b/frontend/main.c
index 37a72ac..0a9bed6 100644
--- a/frontend/main.c
+++ b/frontend/main.c
@@ -121,6 +121,9 @@ static void set_default_paths(void)
strcpy(Config.Pad1, "builtin_pad");
strcpy(Config.Pad2, "builtin_pad");
strcpy(Config.Net, "Disabled");
+#if defined(__arm__) && !defined(__ARM_ARCH_7A__) /* XXX */
+ strcpy(Config.Gpu, "gpuPCSX4ALL.so");
+#endif
Config.PsxAuto = 1;
snprintf(Config.PatchesDir, sizeof(Config.PatchesDir), "." PATCHES_DIR);
diff --git a/frontend/menu.c b/frontend/menu.c
index ce65ccf..36c9f91 100644
--- a/frontend/menu.c
+++ b/frontend/menu.c
@@ -192,6 +192,9 @@ static void menu_set_defconfig(void)
iXAPitch = 0;
iSPUIRQWait = 1;
iUseTimer = 2;
+#ifndef __ARM_ARCH_7A__ /* XXX */
+ iUseReverb = 0;
+#endif
menu_sync_config();
}
diff --git a/frontend/plat_pollux.c b/frontend/plat_pollux.c
index d214b63..4983ec7 100644
--- a/frontend/plat_pollux.c
+++ b/frontend/plat_pollux.c
@@ -24,6 +24,7 @@
#include "main.h"
#include "menu.h"
#include "plat.h"
+#include "pcnt.h"
static int fbdev = -1, memdev = -1, battdev = -1;
static volatile unsigned short *memregs;
@@ -320,6 +321,7 @@ static void raw_flip_dma(int x, int y)
int i;
warm_cache_op_all(WOP_D_CLEAN);
+ pcnt_start(PCNT_BLIT);
dst &= ~7;
len &= ~7;
@@ -354,6 +356,8 @@ static void raw_flip_dma(int x, int y)
g_menuscreen_ptr = fb_flip();
pl_flip_cnt++;
+
+ pcnt_end(PCNT_BLIT);
}
static void raw_flip_soft(int x, int y)
diff --git a/frontend/plugin_lib.c b/frontend/plugin_lib.c
index 239e852..c719f48 100644
--- a/frontend/plugin_lib.c
+++ b/frontend/plugin_lib.c
@@ -410,7 +410,7 @@ static void *watchdog_thread(void *unused)
int seen_dead = 0;
int sleep_time = 5;
-#ifndef NDEBUG
+#if !defined(NDEBUG) || defined(DRC_DBG)
// don't interfere with debug
return NULL;
#endif
diff --git a/libpcsxcore/new_dynarec/assem_arm.h b/libpcsxcore/new_dynarec/assem_arm.h
index a289aa1..917d276 100644
--- a/libpcsxcore/new_dynarec/assem_arm.h
+++ b/libpcsxcore/new_dynarec/assem_arm.h
@@ -16,6 +16,12 @@
#define PCSX 1
#define RAM_SIZE 0x200000
+#ifndef __ARM_ARCH_7A__
+#define ARMv5_ONLY
+//#undef CORTEX_A8_BRANCH_PREDICTION_HACK
+//#undef USE_MINI_HT
+#endif
+
#ifdef FORCE32
#define REG_SHIFT 2
#else
diff --git a/libpcsxcore/new_dynarec/emu_if.c b/libpcsxcore/new_dynarec/emu_if.c
index 39bbf2a..02433f1 100644
--- a/libpcsxcore/new_dynarec/emu_if.c
+++ b/libpcsxcore/new_dynarec/emu_if.c
@@ -201,6 +201,9 @@ static int ari64_init()
gte_handlers[0x12] = gte_handlers_nf[0x12] = gteMVMVA_neon;
#endif
#endif
+#ifdef DRC_DBG
+ memcpy(gte_handlers_nf, gte_handlers, sizeof(gte_handlers_nf));
+#endif
psxH_ptr = psxH;
return 0;
diff --git a/libpcsxcore/new_dynarec/emu_if.h b/libpcsxcore/new_dynarec/emu_if.h
index 88749be..7f625a7 100644
--- a/libpcsxcore/new_dynarec/emu_if.h
+++ b/libpcsxcore/new_dynarec/emu_if.h
@@ -1,10 +1,6 @@
#include "new_dynarec.h"
#include "../r3000a.h"
-#ifndef __ARM_ARCH_7A__
-#define ARMv5_ONLY
-#endif
-
extern char invalid_code[0x100000];
/* weird stuff */
diff --git a/libpcsxcore/new_dynarec/new_dynarec.c b/libpcsxcore/new_dynarec/new_dynarec.c
index 716b1d4..cbc289e 100644
--- a/libpcsxcore/new_dynarec/new_dynarec.c
+++ b/libpcsxcore/new_dynarec/new_dynarec.c
@@ -8601,7 +8601,7 @@ int new_recompile_block(int addr)
case 0x04: gte_rt[i]=1ll<<gr; break; // MTC2
case 0x02: gte_rs[i]=1ll<<(gr+32); // CFC2
if(gr==31&&!gte_reads_flags) {
- printf("gte flag read encountered @%08x\n",addr + i*4);
+ assem_debug("gte flag read encountered @%08x\n",addr + i*4);
gte_reads_flags=1;
}
break;