comparison src/vdp.h @ 19:04fc17376999

Sort of working tile rendering and tile test ROM
author Michael Pavone <pavone@retrodev.com>
date Mon, 28 Mar 2016 23:43:31 -0700
parents 04d8efe7a1f0
children 407725d9a02f
comparison
equal deleted inserted replaced
18:cc885122e9e3 19:04fc17376999
17 uint16_t hcounter; 17 uint16_t hcounter;
18 18
19 uint16_t vscroll; 19 uint16_t vscroll;
20 uint16_t hscroll; 20 uint16_t hscroll;
21 21
22 uint16_t draw_source;
23 uint16_t draw_dest;
24
22 uint16_t vram[32*512]; 25 uint16_t vram[32*512];
23 uint8_t linebuffers[320*2]; 26 uint8_t linebuffers[328*2];
24 uint16_t sram[64*2]; 27 uint16_t sram[64*2];
25 uint16_t cram[64]; 28 uint16_t cram[64];
26 29
27 uint8_t fifo_dest; 30 uint8_t fifo_dest;
31 uint8_t draw_counter;
32 uint8_t palpriority;
28 } vdp; 33 } vdp;
29 34
30 enum { 35 enum {
31 FIFO_DEST_INVALID, 36 FIFO_DEST_INVALID,
32 FIFO_DEST_VRAM, 37 FIFO_DEST_VRAM,
41 46
42 void vdp_init(vdp *context, uint32_t clock_div); 47 void vdp_init(vdp *context, uint32_t clock_div);
43 void vdp_run(vdp *context, uint32_t target); 48 void vdp_run(vdp *context, uint32_t target);
44 void vdp_write_address(vdp *context, uint16_t value); 49 void vdp_write_address(vdp *context, uint16_t value);
45 void vdp_write_data(vdp *context, uint16_t value); 50 void vdp_write_data(vdp *context, uint16_t value);
51 void vdp_write_hscroll(vdp *context, uint16_t value);
46 52
47 #endif //VDP_H_ 53 #endif //VDP_H_