home *** CD-ROM | disk | FTP | other *** search
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- #include <math.h>
- #include <dos/dos.h>
- #include <exec/memory.h>
- #include <intuition/intuitionbase.h>
- #include <intuition/screens.h>
- #include <intuition/intuition.h>
- #include <proto/exec.h>
- #include <proto/intuition.h>
- #include <proto/graphics.h>
- #include <pragmas/blitzblank_pragmas.h>
-
- #include <BlitzBlank.h>
-
- struct Library *BlitzBlankBase;
- static const char version[]="$VER: BB.Melt 2.50 (25.12.94)";
-
- char *text[]={"\33c\33uMelt\33n\n\nModule for BlitzBlank\n\nCopyright 1994\nby\nThomas Börkel",
- "Sp_eed:",
- "Si_ze:",
- "R_efresh Cycle:",
- "_Brightness:",
- "_Delay:" };
-
- struct BB_Object object[]={ {&object[1],BB_VGroup,0,0,0,NULL,NULL},
- {&object[2],BB_Slider,1,150,100,NULL,NULL},
- {&object[3],BB_Slider,1,100,30,NULL,NULL},
- {&object[4],BB_Slider,10,500,100,NULL,NULL},
- {&object[5],BB_Slider,0,100,70,NULL,NULL},
- {&object[6],BB_Slider,0,20,1,NULL,NULL},
- {NULL,BB_VGroup_End,0,0,0,NULL,NULL} };
-
- struct BB_Message message;
- struct BB_Screeninfo *screeninfo;
-
-
- void blank (void)
- {
- int i,x,y,c;
- long a=0;
- struct RastPort *rp;
-
- rp=&screeninfo->bbscreen->RastPort;
-
- c=BBL_GetDarkestPen (screeninfo->bbscreen);
-
- ScreenToFront (screeninfo->bbscreen);
-
- if (!CheckSignal (SIGBREAKF_CTRL_C))
- {
- BBL_ModuleRunning ();
- if (BBL_FadeDown (screeninfo->bbscreen,object[4].set,object[5].set))
- {
- SetAPen (rp,c);
- Move (rp,0,0);
- Draw (rp,screeninfo->width-1,0);
- do
- {
- WaitTOF ();
- for (i=1;i<=object[1].set+30;i++)
- {
- x=drand48 ()*(screeninfo->width-object[2].set+1);
- y=drand48 ()*(screeninfo->height-3);
- // if (ReadPixel (rp,x,y))
- // {
- BltBitMap (rp->BitMap,x,y,rp->BitMap,x,y+1,object[2].set,1,0xc0,0xff,0);
- BltBitMap (rp->BitMap,x,y,rp->BitMap,x,y+2,object[2].set,1,0xc0,0xff,0);
- a++;
- // }
- if (a>10000*object[3].set)
- {
- a=0;
- BBL_CopyOriginalScreen (screeninfo->bbscreen);
- SetAPen (rp,c);
- Move (rp,0,0);
- Draw (rp,screeninfo->width-1,0);
- }
- }
- } while (!CheckSignal (SIGBREAKF_CTRL_C));
- }
- }
- return;
- }
-
-
- void main (int argc,char **argv)
- {
- int i;
-
- if (!(BlitzBlankBase=OpenLibrary ("blitzblank.library",BLITZBLANKLIB_VER)))
- exit (0);
-
- message.flags=BBF_CloneScreen|BBF_Interleaved;
- message.first=&object[0];
-
-
- if (strcmp (argv[1],"BLANK")==0)
- {
- StrToLong (argv[3],(long *) &screeninfo);
- BBL_SendMessage (&message,argv[2]);
- if (screeninfo->bbscreen)
- blank ();
- BBL_BlankDone ();
- }
- else
- {
- message.infotext=BBL_GetString (200,text[0]);
- for (i=1;i<=5;i++)
- object[i].label=BBL_GetString (200+i,text[i]);
- if (strcmp (argv[1],"CONFIG")==0)
- {
- BBL_SendMessage (&message,argv[2]);
- }
- else
- {
- message.first=NULL;
- BBL_SendMessage (&message,argv[2]);
- }
- }
- CloseLibrary (BlitzBlankBase);
- exit (0);
- }
-
-