home *** CD-ROM | disk | FTP | other *** search
- /*
- ** AGA FloodFill Demo
- ** -------------------
- **
- ** A demo of how you should use the FLOOD raster command.
- **
- ** To exit the demo, press the left mouse button.
- */
-
- #include <proto/games.h>
- #include <proto/exec.h>
-
- struct GMSBase *GMSBase;
- extern struct ExecBase *SysBase;
-
- #define AMT_PLANES 7
-
- ULONG Palette[] =
- {
- 0x000000,0xFFFFFF,0xFAF5F2,0xFAE8E7,0xEEDED5,0xE8D4C8,0xDDC0AF,0xD7B5A2,
- 0xD1AC96,0xDCA491,0xCBA38B,0xC5997E,0xBD8E74,0xB5846A,0xAD7A5F,0xA57056,
- 0x9D674D,0x955D44,0x8C533B,0x844B34,0x7C432D,0x743B26,0x6C3320,0x642D1B,
- 0x5C2616,0x532010,0x4A1D0C,0x411A09,0x381606,0x2F1204,0x260F02,0x1D0C00,
- 0xAC783A,0xA67139,0xA06C39,0x986638,0x995F36,0x906037,0x8C5C36,0x945733,
- 0x865735,0x905030,0x7E5133,0x8D4B2E,0x764B31,0x6E4630,0x8A462D,0x64412B,
- 0x5D3D27,0x593A24,0x543822,0x50351F,0x4B341D,0x47301A,0x592218,0x402D17,
- 0x382813,0x3B2007,0x302310,0x2B200D,0x331100,0x430907,0x3C0504,0x2E0202,
- 0xB48038,0xB7743D,0xAE6350,0xA85D4A,0xA35644,0x9E503E,0x994A39,0x944534,
- 0x9F4336,0x8E3F30,0x87412B,0x87382A,0x823628,0x803226,0x792C21,0x72251C,
- 0xE1AB98,0xDBA28C,0xD79C89,0xD29582,0xCD8D7A,0xC88672,0xC27E6B,0xBD7764,
- 0xB8705D,0xB36A57,0xBB5244,0xAD4A3D,0xC8594A,0x7F7444,0x847D49,0x67271E,
- 0x6C2219,0x651D15,0x5E1711,0x57130E,0x500F0B,0x4A0C09,0x350303,0x270000,
- 0x89874E,0x8C8E53,0x8C9358,0x8E9D62,0xC6904A,0x9AA467,0xCD9E51,0xAFAE6F,
- 0xE3D765,0xD5AE58,0xBCAD78,0xC1AC7C,0xCBAA82,0xD5A588,0xEAA09B,0xECA7A2,
- 0xEDADA9,0xEFB5B1,0xF0BBB8,0xF2C2BF,0xF4CBC8,0xF5D1CF,0xF7D9D7,0xFDF7F7
- };
-
- ULONG RasterList[] =
- {
- WAITLINE(0),
- FLOOD,
- RASTEND
- };
-
- /*=========================================================================*/
-
- void main(void)
- {
- int i;
- struct GameScreen *GameScreen;
-
- if (GMSBase = (struct GMSBase *) OpenLibrary("games.library", 0)) {
- SetUserPrefs(0);
-
- if (GameScreen = AddScreenTags(TAGS,NULL,
- GSA_Planes,AMT_PLANES,
- GSA_Palette,Palette,
- GSA_RasterList,RasterList,
- GSA_ScrMode,LORES|COL24BIT,
- GSA_ScrWidth,320,
- GSA_ScrHeight,256,
- GSA_ScrType,INTERLEAVED,
- TAGEND)) {
-
- SmartLoad("GAMESLIB:data/Yattering128.pak",GameScreen->MemPtr1,0);
- ShowScreen(GameScreen);
-
- for (i=0; i<256; i++) {
- WaitSVBL();
- RasterList[0] += 1;
- UpdateRasterList(GameScreen);
- }
-
- WaitLMB();
-
- i = 0;
- do {
- WaitSVBL();
- i = PaletteToColour(GameScreen,i,2,0,128,&Palette,0x000000);
- } while (i != 0);
-
- DeleteScreen(GameScreen);
- }
- CloseLibrary((struct Library *)GMSBase);
- }
- }
-
- /*=========================================================================*/
-
-