X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=src%2Fdos%2Fgfx.h;fp=src%2Fdos%2Fgfx.h;h=0000000000000000000000000000000000000000;hb=4e4ac855a9d53fd7dee3d640f3ab46740b991b5c;hp=0c1fe865c29ffb6b0efbf0cd0a5d466dfdcd0ff4;hpb=f87f51babcc2d9c15e1ecaca19c26acf58292bf7;p=retroray diff --git a/src/dos/gfx.h b/src/dos/gfx.h deleted file mode 100644 index 0c1fe86..0000000 --- a/src/dos/gfx.h +++ /dev/null @@ -1,81 +0,0 @@ -#ifndef GFX_H_ -#define GFX_H_ - -#include "sizeint.h" - -struct video_mode { - uint16_t mode; - short xsz, ysz, bpp, pitch; - short rbits, gbits, bbits; - short rshift, gshift, bshift; - uint32_t rmask, gmask, bmask; - uint32_t fb_addr; - short max_pages; - short win_gran, win_gran_shift, win_64k_step; -}; - -#ifdef __cplusplus -extern "C" { -#endif - -int init_video(void); -void cleanup_video(void); - -struct video_mode *video_modes(void); -int num_video_modes(void); - -#define VMODE_CURRENT (-1) -struct video_mode *get_video_mode(int idx); - -int match_video_mode(int xsz, int ysz, int bpp); -int find_video_mode(int mode); - -/* argument is the mode list index [0, nmodes-1] */ -void *set_video_mode(int idx, int nbuf); -int set_text_mode(void); - -void set_palette(int idx, int r, int g, int b); - -enum { - FLIP_NOW, - FLIP_VBLANK -}; -/* page flip and return pointer to the start of the display area (front buffer) */ -void *page_flip(int vsync); -extern void (*blit_frame)(void *pixels, int vsync); - -#ifdef __WATCOMC__ -void wait_vsync(void); -#pragma aux wait_vsync = \ - "mov dx, 0x3da" \ - "l1:" \ - "in al, dx" \ - "and al, 0x8" \ - "jnz l1" \ - "l2:" \ - "in al, dx" \ - "and al, 0x8" \ - "jz l2" \ - modify[al dx]; -#endif - -#ifdef __DJGPP__ -#define wait_vsync() asm volatile ( \ - "mov $0x3da, %%dx\n\t" \ - "0:\n\t" \ - "in %%dx, %%al\n\t" \ - "and $8, %%al\n\t" \ - "jnz 0b\n\t" \ - "0:\n\t" \ - "in %%dx, %%al\n\t" \ - "and $8, %%al\n\t" \ - "jz 0b\n\t" \ - :::"%eax","%edx") -#endif - - -#ifdef __cplusplus -} -#endif - -#endif /* GFX_H_ */