psx_gpu: texture cache fix, updates
[pcsx_rearmed.git] / plugins / gpu_neon / psx_gpu / psx_gpu.h
index 15d9469..137dda9 100644 (file)
@@ -130,12 +130,11 @@ typedef struct
   u32 dirty_textures_8bpp_alternate_mask;
 
   u32 triangle_color;
-  u32 primitive_color;
-
   u32 dither_table[4];
 
   struct render_block_handler_struct *render_block_handler;
   void *texture_page_ptr;
+  void *texture_page_base;
   u16 *clut_ptr;
   u16 *vram_ptr;
 
@@ -186,17 +185,9 @@ typedef struct
   edge_data_struct span_edge_data[MAX_SPANS];
   u32 span_b_offset[MAX_SPANS];
 
-  u16 _vram[1024 * 512];
   u8 texture_4bpp_cache[32][256 * 256];
   u8 texture_8bpp_even_cache[16][256 * 256];
   u8 texture_8bpp_odd_cache[16][256 * 256];
-
-  u32 pixel_count_mode;
-  u32 pixel_compare_mode;
-
-  u8 *vram_pixel_counts_a;
-  u8 *vram_pixel_counts_b;
-  u16 *compare_vram;
 } psx_gpu_struct;
 
 typedef struct __attribute__((aligned(16)))
@@ -232,7 +223,7 @@ u32 texture_region_mask(s32 x1, s32 y1, s32 x2, s32 y2);
 
 void flush_render_block_buffer(psx_gpu_struct *psx_gpu);
 
-void initialize_psx_gpu(psx_gpu_struct *psx_gpu);
+void initialize_psx_gpu(psx_gpu_struct *psx_gpu, u16 *vram);
 void gpu_parse(psx_gpu_struct *psx_gpu, u32 *list, u32 size);
 
 void triangle_benchmark(psx_gpu_struct *psx_gpu);