home *** CD-ROM | disk | FTP | other *** search
- #include <stdio.h>
- #include <dos.h>
-
- struct BITRECT {
- unsigned char far *buff;
- unsigned char pagenumber,reserve;
- int x1,y1,x2,y2;
- };
-
- extern unsigned char gds_fshift;
- extern unsigned gds_wrkoff;
- extern unsigned gds_wrkseg;
-
- void g_get(unsigned char far *readbuff,unsigned char readpage,
- int startx,int starty,int endx,int endy)
- {
- union REGS reg;
- struct SREGS seg;
- struct BITRECT rimg;
-
- segread(&seg);
- reg.h.ah=gds_fshift+5;
- reg.x.di=(unsigned)&rimg;
- seg.ds=seg.ss;
- rimg.buff=readbuff;
- rimg.pagenumber=readpage;
- rimg.reserve=0;
- rimg.x1=startx;
- rimg.y1=starty;
- rimg.x2=endx;
- rimg.y2=endy;
- reg.x.bx=gds_wrkoff;
- seg.es=gds_wrkseg;
- int86x(0x92,®,®,&seg);
- }