home *** CD-ROM | disk | FTP | other *** search
/ C++ Games Programming / CPPGAMES.ISO / fgl / fglight / exc.arj / TEMP / 10-19.C < prev    next >
Text File  |  1995-01-20  |  1KB  |  59 lines

  1. #include <fastgraf.h>
  2. #include <stdio.h>
  3. #include <stdlib.h>
  4. #if defined(__TURBOC__)
  5. #include <alloc.h>
  6. #else
  7. #include <malloc.h>
  8. #endif
  9.  
  10. void main(void);
  11.  
  12. void main()
  13. {
  14.    int handle1, handle2;
  15. #ifdef FG32
  16.    char *buffer1, *buffer2;
  17. #else
  18.    char far *buffer1, far *buffer2;
  19. #endif
  20.  
  21.    fg_initpm();
  22.    fg_setmode(19);
  23.    fg_vbinit();
  24.  
  25. #ifdef FG32
  26.    buffer1 = (char *)malloc(320*200);
  27.    buffer2 = (char *)malloc(80*50);
  28. #elif defined(__TURBOC__)
  29.    buffer1 = (char far *)farmalloc(320L*200L);
  30.    buffer2 = (char far *)farmalloc(80L*50L);
  31. #else
  32.    buffer1 = (char far *)halloc(320L*200L,1);
  33.    buffer2 = (char far *)halloc(80L*50L,1);
  34. #endif
  35.    if (buffer1 == NULL || buffer2 == NULL)
  36.    {
  37.       fg_setmode(3);
  38.       fg_reset();
  39.       printf("Could not create the virtual buffers.\n");
  40.       exit(1);
  41.    }
  42.    handle1 = fg_vbdefine(buffer1,320,200);
  43.    handle2 = fg_vbdefine(buffer2,80,50);
  44.  
  45.    fg_vbopen(handle1);
  46.    fg_loadpcx("CORAL.PCX",0);
  47.    fg_vbpaste(0,319,0,199,0,199);
  48.    fg_waitkey();
  49.  
  50.    fg_scale(buffer1,buffer2,320,200,80,50);
  51.    fg_vbopen(handle2);
  52.    fg_vbpaste(0,79,0,49,0,199);
  53.    fg_waitkey();
  54.  
  55.    fg_vbclose();
  56.    fg_setmode(3);
  57.    fg_reset();
  58. }
  59.