⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 zgv_io.h

📁 一个利用SDL语言来实现svgalib函数的示例程序
💻 H
字号:
/* zgv 5.8 - GIF, JPEG and PBM/PGM/PPM viewer, for VGA PCs running Linux. * Copyright (C) 1993-2003 Russell Marks. See README for license details. * * zgv_io.h */#ifndef BACKEND_SVGALIB#ifndef BACKEND_SDL#error "you need to choose a backend in config.mk"#endif#endifextern int current_colour;extern volatile int zgv_io_timer_flag;extern void zgv_io_screen_update(void);extern void zgv_io_timer_start(int delay_in_hundredths);extern void zgv_io_timer_stop(void);#ifdef BACKEND_SVGALIB#include <vga.h>#include <vgagl.h>#include <vgamouse.h>/* vgadrawtext_bmp() needs to know what the current colour is, so... */#define vga_setcolor(x) vga_setcolor(current_colour=(x))#else	/* !BACKEND_SVGALIB */#define vga_modeinfo zvga_modeinfo#define gl_fillbox zgl_fillbox#define gl_getbox zgl_getbox#define gl_putbox zgl_putbox#define gl_putboxmask zgl_putboxmask#define gl_putboxpart zgl_putboxpart#define gl_setcontextvga zgl_setcontextvga#define mouse_close zmouse_close#define mouse_getbutton zmouse_getbutton#define mouse_getx zmouse_getx#define mouse_gety zmouse_gety#define mouse_init_return_fd zmouse_init_return_fd#define mouse_setposition zmouse_setposition#define mouse_setscale zmouse_setscale#define mouse_setxrange zmouse_setxrange#define mouse_setyrange zmouse_setyrange#define mouse_update zmouse_update#define vga_clear zvga_clear#define vga_disabledriverreport zvga_disabledriverreport#define vga_drawline zvga_drawline#define vga_drawpixel zvga_drawpixel#define vga_drawscanline zvga_drawscanline#define vga_drawscansegment zvga_drawscansegment#define vga_getcolors zvga_getcolors#define vga_getcurrentmode zvga_getcurrentmode#define vga_getmodeinfo zvga_getmodeinfo#define vga_getmousetype zvga_getmousetype#define vga_getpalvec zvga_getpalvec#define vga_getscansegment zvga_getscansegment#define vga_getxdim zvga_getxdim#define vga_getydim zvga_getydim#define vga_hasmode zvga_hasmode#define vga_init zvga_init#define vga_lastmodenumber zvga_lastmodenumber#define vga_lockvc zvga_lockvc#define vga_oktowrite zvga_oktowrite#define vga_runinbackground zvga_runinbackground#define vga_setcolor zvga_setcolor#define vga_setmode zvga_setmode#define vga_setpalette zvga_setpalette#define vga_setpalvec zvga_setpalvec#define vga_setrgbcolor zvga_setrgbcolor#define vga_unlockvc zvga_unlockvc#define TEXT		0#define G640x480x16	1#define G320x200x256	2#define G320x240x256	3#define G320x400x256	4#define G360x480x256	5#define G640x480x256	6#define G800x600x256	7#define G1024x768x256	8#define G1280x1024x256	9#define G1152x864x256	10#define G1600x1200x256	11#define G320x200x32K	12#define G320x240x32K	13#define G640x480x32K	14#define G800x600x32K	15#define G1024x768x32K	16#define G1280x1024x32K	17#define G1152x864x32K	18#define G1600x1200x32K	19#define G320x200x64K	20#define G320x240x64K	21#define G640x480x64K	22#define G800x600x64K	23#define G1024x768x64K	24#define G1280x1024x64K	25#define G1152x864x64K	26#define G1600x1200x64K	27#define G320x200x16M32	28#define G320x240x16M32	29#define G640x480x16M32	30#define G800x600x16M32	31#define G1024x768x16M32	32#define G1280x1024x16M32 33#define G1152x864x16M32	34#define G1600x1200x16M32 35#define G320x200x16M	36#define G320x240x16M	37#define G640x480x16M	38#define G800x600x16M	39#define G1024x768x16M	40#define G1280x1024x16M	41#define G1152x864x16M	42#define G1600x1200x16M	43#define GLASTMODE	43#define MOUSE_NONE		0#define MOUSE_DEFAULTSAMPLERATE	0#define MOUSE_LEFTBUTTON	1#define MOUSE_MIDDLEBUTTON	2#define MOUSE_RIGHTBUTTON	4  typedef struct  {  int width,height,bitsperpixel,bytesperpixel,colors,has_mode;  }zvga_modeinfo;extern void zgl_fillbox(int x,int y,int w,int h,int c);extern void zgl_getbox(int x,int y,int w,int h,void *dp);extern void zgl_putbox(int x,int y,int w,int h,void *dp);extern void zgl_putboxmask(int x,int y,int w,int h,void *dp);extern void zgl_putboxpart(int x,int y,int w,int h,int bw,int bh,void *b,                   int xo,int yo);extern int zgl_setcontextvga(int m);extern void zmouse_close(void);extern int zmouse_getbutton(void);extern int zmouse_getx(void);extern int zmouse_gety(void);extern int zmouse_init_return_fd(char *dev,int type,int samplerate);extern void zmouse_setposition(int x,int y);extern void zmouse_setscale(int s);extern void zmouse_setxrange(int x1,int x2);extern void zmouse_setyrange(int y1,int y2);extern int zmouse_update(void);extern int zvga_clear(void);extern void zvga_disabledriverreport(void);extern int zvga_drawline(int x1,int y1,int x2,int y2);extern int zvga_drawpixel(int x,int y);extern int zvga_drawscanline(int line,unsigned char *cols);extern int zvga_drawscansegment(unsigned char *cols,int x,int y,int len);extern int zvga_getcolors(void);extern int zvga_getcurrentmode(void);extern zvga_modeinfo *zvga_getmodeinfo(int mode);extern int zvga_getmousetype(void);extern int zvga_getpalvec(int start,int num,int *pal);extern int zvga_getscansegment(unsigned char *cols,int x,int y,int len);extern int zvga_getxdim(void);extern int zvga_getydim(void);extern int zvga_hasmode(int mode);extern int zvga_init(void);extern int zvga_lastmodenumber(void);extern void zvga_lockvc(void);extern int zvga_oktowrite(void);extern void zvga_runinbackground(int stat);extern int zvga_setcolor(int col);extern int zvga_setmode(int mode);extern int zvga_setpalette(int idx,int r,int g,int b);extern int zvga_setpalvec(int start,int num,int *pal);extern int zvga_setrgbcolor(int r,int g,int b);extern void zvga_unlockvc(void);extern int zgv_io_readnbkey(void);extern int zgv_io_waitkey(void);extern int zgv_io_waitevent(void);extern void zgv_io_fixfsmode(int *mode);#endif	/* !BACKEND_SVGALIB */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -