Mercurial > repos > blastem
diff vdp.h @ 413:36fbbced25c2
Initial work on interlace
author | Mike Pavone <pavone@retrodev.com> |
---|---|
date | Sat, 22 Jun 2013 21:19:43 -0700 |
parents | f8c6f8684cd6 |
children | 7e8e179116af |
line wrap: on
line diff
--- a/vdp.h Wed Jun 19 00:40:13 2013 -0700 +++ b/vdp.h Sat Jun 22 21:19:43 2013 -0700 @@ -67,6 +67,29 @@ REG_DMASRC_H } vdp_regs; +//Mode reg 1 +#define BIT_HINT_EN 0x10 +#define BIT_PAL_SEL 0x04 +#define BIT_HVC_LATCH 0x02 +#define BIT_DISP_DIS 0x01 + +//Mode reg 2 +#define BIT_DISP_EN 0x40 +#define BIT_VINT_EN 0x20 +#define BIT_DMA_ENABLE 0x10 +#define BIT_PAL 0x08 +#define BIT_MODE_5 0x04 + +//Mode reg 3 +#define BIT_EINT_EN 0x10 +#define BIT_VSCROLL 0x04 + +//Mode reg 4 +#define BIT_H40 0x01 +#define BIT_HILIGHT 0x8 +#define BIT_DOUBLE_RES 0x4 +#define BIT_INTERLACE 0x2 + typedef struct { uint16_t address; int16_t x_pos; @@ -102,6 +125,8 @@ uint8_t *linebuf; //stores 12-bit color + shadow/highlight bits uint16_t *framebuf; + uint16_t *oddbuf; + uint16_t *evenbuf; uint16_t cram[CRAM_SIZE]; uint16_t vsram[VSRAM_SIZE]; uint8_t latched_mode; @@ -120,6 +145,7 @@ uint8_t dma_cd; uint8_t hint_counter; uint8_t flags2; + uint8_t double_res; uint8_t *tmp_buf_a; uint8_t *tmp_buf_b; } vdp_context;