X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?p=pcsx_rearmed.git;a=blobdiff_plain;f=plugins%2Fgpu_neon%2Fpsx_gpu%2Fpsx_gpu.h;h=7252dc2b835cf977908d600b5391f61891eaeaaa;hp=7ed56220ed93413172e2289729a22343eca0cbc2;hb=c6063f8985c69362a89a12111f393229ab65d05f;hpb=c1817bd9249ee616cf9545a57136d6dd3669ce34 diff --git a/plugins/gpu_neon/psx_gpu/psx_gpu.h b/plugins/gpu_neon/psx_gpu/psx_gpu.h index 7ed56220..7252dc2b 100644 --- a/plugins/gpu_neon/psx_gpu/psx_gpu.h +++ b/plugins/gpu_neon/psx_gpu/psx_gpu.h @@ -56,8 +56,9 @@ typedef enum typedef enum { RENDER_INTERLACE_ENABLED = 0x1, - RENDER_INTERLACE_ODD = 0x2 -} render_interlace_enum; + RENDER_INTERLACE_ODD = 0x2, + RENDER_DOUBLE_MODE = 0x4, +} render_mode_enum; typedef struct { @@ -122,7 +123,6 @@ typedef struct vec_4x32u g_block_span; vec_4x32u b_block_span; - // 76 bytes u32 b; u32 b_dy; @@ -138,6 +138,8 @@ typedef struct u32 triangle_color; u32 dither_table[4]; + u32 uvrgb_phase; + struct render_block_handler_struct *render_block_handler; void *texture_page_ptr; void *texture_page_base; @@ -145,19 +147,12 @@ typedef struct u16 *vram_ptr; u16 *vram_out_ptr; - // 26 bytes u16 render_state_base; u16 render_state; u16 num_spans; u16 num_blocks; - s16 offset_x; - s16 offset_y; - - u16 clut_settings; - u16 texture_settings; - s16 viewport_start_x; s16 viewport_start_y; s16 viewport_end_x; @@ -165,7 +160,6 @@ typedef struct u16 mask_msb; - // 8 bytes u8 triangle_winding; u8 display_area_draw_enable; @@ -179,7 +173,13 @@ typedef struct u8 texture_window_y; u8 primitive_type; - u8 interlace_mode; + u8 render_mode; + + s16 offset_x; + s16 offset_y; + + u16 clut_settings; + u16 texture_settings; // enhancement stuff u16 *enhancement_buf_ptr; @@ -190,7 +190,7 @@ typedef struct // Align up to 64 byte boundary to keep the upcoming buffers cache line // aligned, also make reachable with single immediate addition - u8 reserved_a[240]; + u8 reserved_a[236]; // 8KB block_struct blocks[MAX_BLOCKS_PER_ROW];