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=71b99cd953bddc390ad6fbcb82aa102c9dd270d6;hp=53a87177095a1ee486fabb01431e1322f81c1d07;hb=f1359c5758c2e745b1cbec63e21445fa65f7cafe;hpb=b243416b907e6ce366b051e77ed8a434f7668d5d diff --git a/plugins/gpu_neon/psx_gpu/psx_gpu.h b/plugins/gpu_neon/psx_gpu/psx_gpu.h index 53a87177..71b99cd9 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,7 @@ typedef struct vec_4x32u g_block_span; vec_4x32u b_block_span; - // 72 bytes + // 76 bytes u32 b; u32 b_dy; @@ -143,6 +144,7 @@ typedef struct void *texture_page_base; u16 *clut_ptr; u16 *vram_ptr; + u16 *vram_out_ptr; // 26 bytes u16 render_state_base; @@ -178,11 +180,18 @@ typedef struct u8 texture_window_y; u8 primitive_type; - u8 interlace_mode; + u8 render_mode; + + // enhancement stuff + u16 *enhancement_buf_ptr; + s16 saved_viewport_start_x; + s16 saved_viewport_start_y; + s16 saved_viewport_end_x; + s16 saved_viewport_end_y; // Align up to 64 byte boundary to keep the upcoming buffers cache line - // aligned - //u8 reserved_a[0]; + // aligned, also make reachable with single immediate addition + u8 reserved_a[240]; // 8KB block_struct blocks[MAX_BLOCKS_PER_ROW];