summaryrefslogtreecommitdiff
path: root/vdp.h
diff options
context:
space:
mode:
authorMike Pavone <pavone@retrodev.com>2013-06-30 11:45:58 -0700
committerMike Pavone <pavone@retrodev.com>2013-06-30 11:45:58 -0700
commitd19f26c98cbfb48124eb1c40876cceba4971cd96 (patch)
tree63f3e2ca16f0f89b5b10df5e6b952d4d090af7cd /vdp.h
parent3cccd34a707323c1f96cda28552dc497c005182c (diff)
Make VDP render in native pixel format of the renderer for a modest performance gain and to make it easier to use OpenGL for rendering
Diffstat (limited to 'vdp.h')
-rw-r--r--vdp.h9
1 files changed, 5 insertions, 4 deletions
diff --git a/vdp.h b/vdp.h
index d547397..c43a2d9 100644
--- a/vdp.h
+++ b/vdp.h
@@ -10,7 +10,6 @@
#define VRAM_SIZE (64*1024)
#define LINEBUF_SIZE 320
#define FRAMEBUF_ENTRIES (320+27)*(240+27) //PAL active display + full border
-#define FRAMEBUF_SIZE (FRAMEBUF_ENTRIES*sizeof(uint16_t))
#define MAX_DRAWS 40
#define MAX_DRAWS_H32 32
#define MAX_SPRITES_LINE 20
@@ -124,10 +123,11 @@ typedef struct {
//stores 2-bit palette + 4-bit palette index + priority for current sprite line
uint8_t *linebuf;
//stores 12-bit color + shadow/highlight bits
- uint16_t *framebuf;
- uint16_t *oddbuf;
- uint16_t *evenbuf;
+ void *framebuf;
+ void *oddbuf;
+ void *evenbuf;
uint16_t cram[CRAM_SIZE];
+ uint32_t colors[CRAM_SIZE*3];
uint16_t vsram[VSRAM_SIZE];
uint8_t latched_mode;
uint16_t hscroll_a;
@@ -146,6 +146,7 @@ typedef struct {
uint8_t hint_counter;
uint8_t flags2;
uint8_t double_res;
+ uint8_t b32;
uint8_t *tmp_buf_a;
uint8_t *tmp_buf_b;
} vdp_context;