sh2 drc comments and missing pandora file
authornotaz <notasas@gmail.com>
Thu, 7 Jan 2010 20:16:22 +0000 (20:16 +0000)
committernotaz <notasas@gmail.com>
Thu, 7 Jan 2010 20:16:22 +0000 (20:16 +0000)
git-svn-id: file:///home/notaz/opt/svn/PicoDrive@854 be3aeb3a-fb24-0410-a615-afba39da0efa

cpu/sh2/compiler.c
platform/pandora/menu.c [new file with mode: 0644]

index f84aa3a..cb35c52 100644 (file)
@@ -4,7 +4,20 @@
  * notes:
  * - tcache, block descriptor, link buffer overflows result in sh2_translate()
  *   failure, followed by full tcache invalidation for that region
- * - jumps between blocks are tracked for SMC handling (in block_links[])
+ * - jumps between blocks are tracked for SMC handling (in block_links[]),
+ *   except jumps between different tcaches
+ *
+ * implemented:
+ * - static register allocation
+ * - remaining register caching and tracking in temporaries
+ * - block-local branch linking
+ * - block linking (except between tcaches)
+ *
+ * TODO:
+ * - proper SMC handling
+ * - constant propagation
+ * - stack caching?
+ * - bug fixing
  */
 #include <stddef.h>
 #include <stdio.h>
@@ -2521,10 +2534,11 @@ void sh2_execute(SH2 *sh2c, int cycles)
 }
 
 #if (DRC_DEBUG & 1)
-static void block_stats(void)
+void block_stats(void)
 {
   int c, b, i, total = 0;
 
+  printf("block stats:\n");
   for (b = 0; b < ARRAY_SIZE(block_tables); b++)
     for (i = 0; i < block_counts[b]; i++)
       if (block_tables[b][i].addr != 0)
diff --git a/platform/pandora/menu.c b/platform/pandora/menu.c
new file mode 100644 (file)
index 0000000..fa33f3d
--- /dev/null
@@ -0,0 +1,9 @@
+#define MENU_OPTIONS_GFX \
+       mee_onoff     ("Vsync",                    MA_OPT2_VSYNC,         currentConfig.EmuOpt, EOPT_VSYNC),
+
+#define MENU_OPTIONS_ADV \
+       mee_onoff     ("SVP dynarec",              MA_OPT2_SVP_DYNAREC,   PicoOpt, POPT_EN_SVP_DRC), \
+       mee_onoff     ("Status line in main menu", MA_OPT2_STATUS_LINE,   currentConfig.EmuOpt, EOPT_SHOW_RTC),
+
+#define menu_main_plat_draw NULL
+#define mgn_opt_renderer NULL