home *** CD-ROM | disk | FTP | other *** search
/ Aminet 18 / aminetcdnumber181997.iso / Aminet / dev / misc / gms_dev.lha / GMS / Source / E / Screens / AGAFade.e next >
Encoding:
Text File  |  1997-01-29  |  1.3 KB  |  56 lines

  1. /* AGA Picture
  2. ** -----------
  3. ** Fades in a 32 colour AGA picture (24 bit colour).  And then fades it out.
  4. **
  5. ** Press left mouse button to exit.
  6. */
  7.  
  8. MODULE 'games','games/games'
  9.  
  10. PROC main()
  11.    DEF screen:PTR TO gamescreen, fstate:LONG, pic:PTR TO picture
  12.  
  13.    IF gmsbase := OpenLibrary('games.library',0)
  14.       SetUserPrefs(0)
  15.       IF (screen := AddScreen([TAGS,0,
  16.            GSA_SCRWIDTH,320,
  17.            GSA_SCRHEIGHT,256,
  18.            GSA_PLANES,5,
  19.            GSA_SCRMODE,LORES OR COL24BIT,
  20.            GSA_SCRTYPE,ILBM,
  21.            TAGEND]))
  22.  
  23.        IF (pic := LoadPic([TAGS,0,
  24.           PCA_DATA,screen.memptr1,
  25.           PCA_WIDTH,320,
  26.           PCA_HEIGHT,256,
  27.           PCA_PLANES,5,
  28.           PCA_SCRMODE,LORES OR COL24BIT,
  29.           PCA_SCRTYPE,ILBM,
  30.           PCA_OPTIONS,GETPALETTE,
  31.           PCA_FILE,'GAMESLIB:data/IFF.Loading',
  32.           TAGEND]))
  33.  
  34.        ShowScreen(screen)
  35.  
  36.        fstate := 0
  37.        REPEAT
  38.          WaitSVBL()
  39.          fstate := ColourToPalette(screen,fstate,2,0,32,pic.palette,$000000)
  40.        UNTIL (fstate = 0)
  41.  
  42.        WaitLMB()
  43.  
  44.        fstate := 0
  45.        REPEAT
  46.          WaitSVBL()
  47.          fstate := PaletteToColour(screen,fstate,2,0,32,pic.palette,$000000)
  48.        UNTIL (fstate = 0)
  49.  
  50.      ENDIF
  51.     DeleteScreen(screen)        
  52.     ENDIF
  53.    CloseLibrary(gmsbase)
  54.    ENDIF
  55. ENDPROC
  56.