32x: sh2 wip, main SH2 BIOS passes
[picodrive.git] / pico / pico_int.h
index 3cdd997..e50d468 100644 (file)
@@ -226,6 +226,13 @@ extern unsigned long z80_write_map[0x10000 >> Z80_MEM_SHIFT];
 typedef unsigned char (z80_read_f)(unsigned short a);\r
 typedef void (z80_write_f)(unsigned int a, unsigned char data);\r
 \r
+// ----------------------- SH2 CPU -----------------------\r
+\r
+#include "cpu/sh2mame/sh2.h"\r
+\r
+SH2 msh2, ssh2;\r
+#define ash2_pc() msh2.ppc\r
+\r
 // ---------------------------------------------------------\r
 \r
 // main oscillator clock which controls timing\r
@@ -389,15 +396,18 @@ typedef struct
 #define Pico_mcd ((mcd_state *)Pico.rom)\r
 \r
 // 32X\r
-#define P32XV_nPAL (1<<15)\r
-#define P32XV_PRI  (1<< 7)\r
-#define P32XV_Mx   (3<< 0)\r
+#define P32XS_FM    (1<<15)\r
+#define P32XS2_ADEN (1<< 9)\r
+\r
+#define P32XV_nPAL  (1<<15)\r
+#define P32XV_PRI   (1<< 7)\r
+#define P32XV_Mx    (3<< 0)\r
 \r
-#define P32XV_VBLK (1<<15)\r
-#define P32XV_HBLK (1<<14)\r
-#define P32XV_PEN  (1<<13)\r
-#define P32XV_nFEN (1<< 1)\r
-#define P32XV_FS   (1<< 0)\r
+#define P32XV_VBLK  (1<<15)\r
+#define P32XV_HBLK  (1<<14)\r
+#define P32XV_PEN   (1<<13)\r
+#define P32XV_nFEN  (1<< 1)\r
+#define P32XV_FS    (1<< 0)\r
 \r
 struct Pico32x\r
 {\r
@@ -413,6 +423,8 @@ struct Pico32xMem
   unsigned char  sdram[0x40000];\r
   unsigned short dram[2][0x20000/2]; // AKA fb\r
   unsigned char  m68k_rom[0x10000]; // 0x100; using M68K_BANK_SIZE\r
+  unsigned char  sh2_rom_m[0x800];\r
+  unsigned char  sh2_rom_s[0x400];\r
   unsigned short pal[0x100];\r
   unsigned short pal_native[0x100]; // converted to native (for renderer)\r
 };\r