revive GP2X build, update
[picodrive.git] / pico / pico_int.h
index e71245a..6e4917b 100644 (file)
@@ -441,6 +441,7 @@ typedef struct
                unsigned char pcm_ram[0x10000];\r
                unsigned char pcm_ram_b[0x10][0x1000];\r
        };\r
+       // FIXME: should be short\r
        unsigned char s68k_regs[0x200];                 // 110000: GA, not CPU regs\r
        unsigned char bram[0x2000];                     // 110200: 8K\r
        struct mcd_misc m;                              // 112200: misc\r
@@ -482,8 +483,9 @@ typedef struct
 #define P32XP_FULL  (1<<15) // PWM pulse\r
 #define P32XP_EMPTY (1<<14)\r
 \r
-#define P32XF_68KCPOLL  (1 << 0)\r
-#define P32XF_68KVPOLL  (1 << 1)\r
+#define P32XF_68KCPOLL   (1 << 0)\r
+#define P32XF_68KVPOLL   (1 << 1)\r
+#define P32XF_Z80_32X_IO (1 << 7) // z80 does 32x io\r
 \r
 #define P32XI_VRES (1 << 14/2) // IRL/2\r
 #define P32XI_VINT (1 << 12/2)\r
@@ -542,12 +544,19 @@ struct Pico32xMem
 #ifdef DRC_SH2\r
   unsigned short drcblk_da[2][1 << (12 - SH2_DRCBLK_DA_SHIFT)];\r
 #endif\r
-  unsigned char  sh2_rom_m[0x800];\r
-  unsigned char  sh2_rom_s[0x400];\r
+  union {\r
+    unsigned char  b[0x800];\r
+    unsigned short w[0x800/2];\r
+  } sh2_rom_m;\r
+  union {\r
+    unsigned char  b[0x400];\r
+    unsigned short w[0x400/2];\r
+  } sh2_rom_s;\r
   unsigned short pal[0x100];\r
   unsigned short pal_native[0x100];     // converted to native (for renderer)\r
   signed short   pwm[2*PWM_BUFF_LEN];   // PWM buffer for current frame\r
-  signed short   pwm_fifo[2][4];        // [0] - current, others - fifo entries\r
+  signed short   pwm_current[2];        // current converted samples\r
+  unsigned short pwm_fifo[2][4];        // [0] - current raw, others - fifo entries\r
 };\r
 \r
 // area.c\r