gpulib: yet another frameskip hack
[pcsx_rearmed.git] / plugins / gpu_neon / psx_gpu / psx_gpu.h
index 137dda9..53a8717 100644 (file)
@@ -53,6 +53,12 @@ typedef enum
   RENDER_STATE_MASK_EVALUATE   = 0x20,
 } render_state_enum;
 
+typedef enum
+{
+  RENDER_INTERLACE_ENABLED     = 0x1,
+  RENDER_INTERLACE_ODD         = 0x2
+} render_interlace_enum;
+
 typedef struct
 {
   u16 left_x;
@@ -172,10 +178,11 @@ typedef struct
   u8 texture_window_y;
 
   u8 primitive_type;
+  u8 interlace_mode;
 
   // Align up to 64 byte boundary to keep the upcoming buffers cache line
   // aligned
-  u8 reserved_a[1];
+  //u8 reserved_a[0];
 
   // 8KB
   block_struct blocks[MAX_BLOCKS_PER_ROW];
@@ -224,7 +231,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, u16 *vram);
-void gpu_parse(psx_gpu_struct *psx_gpu, u32 *list, u32 size);
+u32 gpu_parse(psx_gpu_struct *psx_gpu, u32 *list, u32 size, u32 *last_command);
 
 void triangle_benchmark(psx_gpu_struct *psx_gpu);