yet more random armv5 tweaks
authornotaz <notasas@gmail.com>
Fri, 30 Sep 2011 22:13:43 +0000 (01:13 +0300)
committernotaz <notasas@gmail.com>
Sun, 2 Oct 2011 00:09:13 +0000 (03:09 +0300)
frontend/main.c
frontend/menu.c
frontend/plat_pollux.c
frontend/plugin_lib.c
libpcsxcore/new_dynarec/assem_arm.h
libpcsxcore/new_dynarec/emu_if.c
libpcsxcore/new_dynarec/emu_if.h
libpcsxcore/new_dynarec/new_dynarec.c

index 37a72ac..0a9bed6 100644 (file)
@@ -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);
index ce65ccf..36c9f91 100644 (file)
@@ -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();
 }
index d214b63..4983ec7 100644 (file)
@@ -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)
index 239e852..c719f48 100644 (file)
@@ -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
index a289aa1..917d276 100644 (file)
 #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
index 39bbf2a..02433f1 100644 (file)
@@ -200,6 +200,9 @@ static int ari64_init()
        gte_handlers[0x30] = gte_handlers_nf[0x30] = gteRTPT_neon;
        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;
 
index 88749be..7f625a7 100644 (file)
@@ -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 */
index 716b1d4..cbc289e 100644 (file)
@@ -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;