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

  1. $INCLUDE: 'C:\FG\FASTGRAF.FI'
  2.  
  3.       PROGRAM MAIN
  4.  
  5.       INTEGER*1 PIXEL_RUNS(20000)
  6.       INTEGER FILE_SIZE, RUN_COUNT
  7.       INTEGER OLD_MODE, NEW_MODE
  8.       INTEGER FILELENGTH
  9.       INTEGER FG_BESTMODE, FG_GETMODE
  10.  
  11.       CALL FG_INITPM
  12.       NEW_MODE = FG_BESTMODE(320,200,1)
  13.       IF (NEW_MODE .LT. 0 .OR. NEW_MODE .EQ. 12) THEN
  14.          STOP 'This program requires a 320 x 200 color graphics mode.'
  15.       END IF
  16.  
  17.       OLD_MODE = FG_GETMODE()
  18.       CALL FG_SETMODE(NEW_MODE)
  19.  
  20.       OPEN(UNIT=1,STATUS='OLD',FILE='CORAL.SPR',FORM='BINARY',RECL=1)
  21.       FILE_SIZE = FILELENGTH(1)
  22.       READ(1) (PIXEL_RUNS(I),I=1,FILE_SIZE)
  23.       CLOSE(UNIT=1)
  24.       RUN_COUNT = FILE_SIZE / 2
  25.       CALL FG_MOVE(0,199)
  26.       CALL FG_DISPLAY(PIXEL_RUNS,RUN_COUNT,320)
  27.       CALL FG_WAITKEY
  28.  
  29.       OPEN(UNIT=1,STATUS='OLD',FILE='CORAL.PPR',FORM='BINARY',RECL=1)
  30.       FILE_SIZE = FILELENGTH(1)
  31.       READ(1) (PIXEL_RUNS(I),I=1,FILE_SIZE)
  32.       CLOSE(UNIT=1)
  33.       RUN_COUNT = FILE_SIZE / 3 * 2
  34.       CALL FG_ERASE
  35.       CALL FG_DISPLAYP(PIXEL_RUNS,RUN_COUNT,320)
  36.       CALL FG_WAITKEY
  37.  
  38.       CALL FG_SETMODE(OLD_MODE)
  39.       CALL FG_RESET
  40.  
  41.       STOP ' '
  42.       END
  43.  
  44.       INTEGER FUNCTION FILELENGTH(UNIT)
  45.       INTEGER UNIT
  46.  
  47.       INTEGER*1 CH
  48.  
  49.       FILELENGTH = 0
  50. 10    READ(UNIT,END=99) CH
  51.       FILELENGTH = FILELENGTH + 1
  52.       GO TO 10
  53.  
  54. 99    REWIND UNIT
  55.       RETURN
  56.       END
  57.