home *** CD-ROM | disk | FTP | other *** search
/ C++ Games Programming / CPPGAMES.ISO / fgl / fglight / exfor.arj / TEMP / 13-08.FOR < prev    next >
Text File  |  1995-01-20  |  1KB  |  54 lines

  1. $INCLUDE: 'C:\FG\FASTGRAF.FI'
  2.  
  3.       PROGRAM MAIN
  4.  
  5.       INTEGER*1 KEY, AUX
  6.       INTEGER HANDLE, OLD_MODE, STATUS, X, Y
  7.       INTEGER FG_GETMODE, FG_LOADPCX, FG_VBALLOC, FG_VBOPEN
  8.  
  9.       CALL FG_INITPM
  10.       OLD_MODE = FG_GETMODE()
  11.       CALL FG_SETMODE(19)
  12.  
  13.       CALL FG_VBINIT
  14.       HANDLE = FG_VBALLOC(320,200)
  15.       IF (HANDLE .LT. 0) THEN
  16.          CALL FG_SETMODE(OLD_MODE)
  17.          CALL FG_RESET
  18.          STOP 'Could not create the virtual buffer.'
  19.       END IF
  20.       STATUS = FG_VBOPEN(HANDLE)
  21.       STATUS = FG_LOADPCX('CORAL.PCX'//CHAR(0),0)
  22.       CALL FG_VBCLOSE
  23.  
  24.       CALL FG_SETCOLOR(2)
  25.       CALL FG_FILLPAGE
  26.       CALL FG_SETCOLOR(15)
  27.       CALL FG_BOX(111,208,69,130)
  28.       CALL FG_LOCATE(3,8)
  29.       CALL FG_TEXT('Press arrow keys to pan.',24)
  30.  
  31.       X = 112
  32.       Y = 129
  33.       CALL FG_VBPASTE(X,X+95,Y-59,Y,112,129)
  34.  
  35. 10    CALL FG_GETKEY(KEY,AUX)
  36.       IF (AUX .EQ. 72 .AND. Y .LT. 199) THEN
  37.          Y = Y + 1
  38.       ELSE IF (AUX .EQ. 75 .AND. X .LT. 223) THEN
  39.          X = X + 1
  40.       ELSE IF (AUX .EQ. 77 .AND. X .GT. 0) THEN
  41.          X = X - 1
  42.       ELSE IF (AUX .EQ. 80 .AND. Y .GT. 59) THEN
  43.          Y = Y - 1
  44.       ENDIF
  45.       CALL FG_VBPASTE(X,X+95,Y-59,Y,112,129)
  46.       IF (KEY .NE. 27) GO TO 10
  47.  
  48.       CALL FG_VBFREE(HANDLE)
  49.       CALL FG_SETMODE(OLD_MODE)
  50.       CALL FG_RESET
  51.  
  52.       STOP ' '
  53.       END
  54.