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;
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)))
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);