home *** CD-ROM | disk | FTP | other *** search
- /* Fade Demo
- ** ---------
- */
-
- MODULE 'games','games/games'
-
- PROC main()
- DEF screen:PTR TO gamescreen, palette:PTR TO INT, state=0:LONG,
- loadpic:PTR TO picture
-
- palette := [
- $000,$130,$FCB,$FA9,$D88,$965,$644,$211,$400,$444,$FF0,$432,$CC0,$150,$501,$880,
- $261,$271,$382,$492,$5A3,$5B4,$677,$6C4,$788,$9AA,$BCC,$801,$901,$A02,$701,$601
- ]:INT;
-
- loadpic := [
- PCV1,0, -> Version header.
- 0, -> Destination.
- 320,0,256, -> Width, Height.
- 5, -> Amount of Planes.
- 32, -> Amount of colours.
- palette, -> Palette (remap).
- LORES OR COL12BIT, -> Screen mode.
- ILBM, -> Destination.
- 0, -> Parameters.
- 'GAMESLIB:data/IFF.Pic320'
- ]:picture;
-
- /***************************************************************************/
-
- IF gmsbase := OpenLibrary('games.library',0)
- SetUserPrefs(0)
- IF (screen := AddScreen([TAGS,0,
- GSA_SCRWIDTH,320,
- GSA_SCRHEIGHT,256,
- GSA_PLANES,5,
- GSA_SCRMODE,LORES OR COL12BIT,
- GSA_SCRTYPE,ILBM,
- TAGEND]))
-
- loadpic.data := screen.memptr1
- IF (LoadPic(loadpic) = ERR_OK)
- ShowScreen(screen)
- WaitTime(10)
-
- REPEAT
- WaitVBL()
- WaitSVBL()
- state := ColourToPalette(screen,state,1,0,32,palette,$000)
- UNTIL (state = 0)
-
- WaitLMB()
-
- REPEAT
- WaitVBL()
- WaitSVBL()
- state := PaletteToColour(screen,state,1,0,32,palette,$FFF)
- UNTIL (state = 0)
-
- WaitTime(30)
-
- REPEAT
- WaitVBL()
- WaitSVBL();
- state := ColourMorph(screen,state,1,0,32,$FFF,$000);
- UNTIL (state = 0)
-
- WaitTime(50)
- ENDIF
- DeleteScreen(screen)
- ENDIF
- CloseLibrary(gmsbase)
- ENDIF
- ENDPROC
-
-