9 #define SAFE_BORDER (4)
12 #define DEFAULT_MODE G320x200x256
14 extern void drawgfx(void);
16 long xmin,xmax,ymin,ymax;
17 int winx,winy,iniline,minimax=1,xcur,ycur;
22 void wl_line(long x,long y)
26 if (minimax) { xmin=xmax=x; ymin=ymax=y; }
28 xcur=rint(coefx*(x-xmin))+SAFE_BORDER;
29 ycur=winy-SAFE_BORDER-rint(coefy*(y-ymin));
34 if (x<xmin) xmin=x; if (x>xmax) xmax=x;
35 if (y<ymin) ymin=y; if (y>ymax) ymax=y;
39 vga_drawline(xcur,ycur,
40 xcur2=rint(coefx*(x-xmin))+SAFE_BORDER,ycur2=winy-SAFE_BORDER-rint(coefy*(y-ymin)));
41 xcur=xcur2; ycur=ycur2;
51 if (xmax==xmin) xmax++;
52 if (ymax==ymin) ymax++;
54 coefx=(float)(winx-2*SAFE_BORDER-1)/(xmax-xmin);
55 coefy=(float)(winy-2*SAFE_BORDER-1)/(ymax-ymin);
60 static void wl_cleanup(void)
65 void wl_init(int *argcp,char **argv,const char *class)
70 if ((pname=rindex(*argv,'/'))) pname++;
72 for (j=i=1;i<*argcp;i++)
73 if (!strcmp(argv[i],"-m")||!strcmp(argv[i],"--mode")) {
76 else argv[j++]=argv[i];
77 if (s) mode=vga_getmodenumber(s);
78 if (mode==-1) if ((mode=vga_getdefaultmode())==-1) mode=DEFAULT_MODE;
79 if (vga_setmode(mode)==-1) {
80 fprintf(stderr,"%s: Mode \"%s\" [%d] not available!\n",pname,
81 vga_getmodename(mode),mode);
85 winx=vga_getxdim(); winy=vga_getydim();
86 vga_setcolor(vga_white());