39 #ifndef COL_VIDEO_INCLUDE 40 #define COL_VIDEO_INCLUDE 47 #define FNTBOLD_ITALIC (FNTITALIC | FNTBOLD) 52 #define chrtab2 0x1B00 66 #define COLDRKYELLOW 10 67 #define COLLITYELLOW 11 68 #define COLDRKGREEN 12 165 void vdp_setcharex(u8 first,u8 count,
unsigned offset,u8 flags);
197 void vdp_getarea (
void *table, u8 x, u8 y, u8 width, u8 height);
209 void vdp_putarea (
void *table, u8 x, u8 y, u8 width, u8 height);
268 void vdp_putvram (
unsigned offset,
void *data,
unsigned count);
278 void vdp_getvram (
unsigned offset,
void *data,
unsigned count);
311 #define vdp_blocknmi() { __asm__("\tpush hl\n\tld hl,#_no_nmi\n\tset 0,(hl)\n\tpop hl"); } 316 #define vdp_releasenmi() { __asm__("\tpush hl\n\tld hl,#_no_nmi\n\tbit 7,(hl)\n\tjp z,.+6\n\tcall _nmi_direct\n\tres 0,(hl)\n\tpop hl"); } void vdp_putvram_repeat(unsigned offset, void *table, u8 count, u8 times)
Repeat n times an area of chars to screen.
void vdp_enablevdp(void)
Allows VDP to work (so screen is now active)
void vdp_fillvram(u16 offset, u8 value, u16 count)
Change VRAM with a specific value.
void vdp_enablescr(void)
Allows VDP to work and NMI to be catch.
void vdp_waitvblank(u16 numtime)
Waits for a vertical blank interrupt a number of time.
void vdp_setcharex(u8 first, u8 count, unsigned offset, u8 flags)
Put some chars of default font.
void vdp_setreg(u8 reg, u8 val)
Set a value to a TMS9918 register.
void vdp_setmode1txt(void)
Activate mode 1 in text mode Activate Mode 1 of TMS in text mode, 16K of VRAM, sprites 16x16 1 VRAM...
void vdp_putstring(u8 x, u8 y, char *text)
Put a string on screen at coordinates x,y.
void * vdp_rle2vram(void *rledata, unsigned offset)
Fill the VRAM with some RLE compressed data.
void vdp_disablescr(void)
Disallows VDP to work and NMI to occur.
void vdp_enablenmi(void)
Enable NMI interruption.
void vdp_disablevdp(void)
Disallows VDP to work (so screen is not active)
Custom types used by pvcollib.
void vdp_duplicatevram(void)
Put 1st area of pattern vram to the 2nd and 3rd one.
void vdp_putarea(void *table, u8 x, u8 y, u8 width, u8 height)
Put an area of chars to screen.
void vdp_getarea(void *table, u8 x, u8 y, u8 width, u8 height)
Get an area of chars from screen.
void vdp_setdefaultchar(u8 flags)
Put default font.
void vdp_putchar(u8 x, u8 y, char value)
Put a single char on screen.
void vdp_ple2vram(void *pledata, unsigned offset)
Put data in VRAM with some Pletter compressed data.
void vdp_setmode2txt(void)
Activate mode 2 in text mode Activate Mode 2 of TMS in text mode, 16K of VRAM, sprites 16x16 3 VRAM...
u8 vdp_getchar(u8 x, u8 y)
Get a single char from screen.
void vdp_disablenmi(void)
Disable NMI interruption.
void vdp_dan2vram(void *dandata, unsigned offset)
Put data in VRAM with some DAN1 compressed data.
void vdp_putvram(unsigned offset, void *data, unsigned count)
Fill the VRAM with some non compressed data.
void vdp_setmode2bmp(void)
Activate mode 2 in bitmap mode Activate Mode 2 of TMS in bitmap mode, 16K of VRAM, sprites 16x16 1 VRAM area (complete screen of 24 lines) that can be populate