1 REM SKETCHPAD PROGRAM FOR THE AMIGA 2 REM 3 REM WRITTEN BY RICK SCHAEFFER [70120,174] 4 REM 5 REM TO DRAW, CLICK ON A COLOR AND GO FOR IT! 6 REM TO DRAW A LINE, FIRST SELECT A COLOR AND THEN CLICK ON "L" 7 REM AND THEN MOVE TO THE STARTING LOCATION FOR THE LINE... 8 REM THEN HOLD THE BUTTON DOWN WHILE DRAWING THE LINE. 9 REM 10 REM TO DRAW A BOX, DO LIKE A LINE EXCEPT CLICK ON "B". 11 REM TO DRAW AN ELIPSE, DO LIKE A BOX EXCEPT CLICK ON "E". 12 REM 13 REM TO FILL A SHAPE...FIRST CLICK ON THE DESIRED COLOR... 14 REM THEN CLICK ON "F"... 15 REM THEN MOVE THE POINTER INSIDE THE SHAPE TO FILL... 16 REM THEN CLICK THE MOUSE ONCE AND THE SHAPE WILL BE FILLED. 17 REM 18 REM TO CLEAR THE SCREEN, CLICK ON "C". 19 REM TO QUIT, CLICK ON "Q". 20 REM 200 OUTLINE 0 210 ASK WINDOW S1%,S2% 220 IF S1%>320 THEN SCREEN 0,4,0 230 ASK RGB 0,R0%,G0%,B0% 240 ASK RGB 1,R1%,G1%,B1% 250 WINDOW #1,0,0,320,240,"SKETCHPAD" 260 X1%=-1:Y1%=-1 270 GOSUB 470 280 ASK MOUSE X%,Y%,B% 290 X1%=X%:Y1%=Y% 300 IF B%=0 THEN 280 310 IF Y%<=10 AND B%=4 AND X%<160 THEN 320 ELSE 360 320 C=INT(X%*.1) 330 IF C<0 THEN C=0 340 PENA C 350 GOTO 280 360 IF Y%>10 THEN 430 370 IF X%>=192 AND X%<=199 AND B%=4 THEN SCNCLR:GOTO 270 380 IF X%>=272 AND X%<=279 AND B%=4 THEN 660 390 IF X%>=208 AND X%<=215 AND B%=4 THEN GOSUB 710:GOTO 280 400 IF X%>=224 AND X%<=231 AND B%=4 THEN GOSUB 850:GOTO 280 410 IF X%>=240 AND X%<=247 AND B%=4 THEN GOSUB 970:GOTO 280 420 IF X%>=256 AND X%<=263 AND B%=4 THEN GOSUB 1030:GOTO 280 430 DRAW(X1%,Y1% TO X%,Y%):X1%=X%:Y1%=Y% 440 ASK MOUSE X%,Y%,B% 450 IF B%=4 THEN 430 460 GOTO 280 470 CMD 1 480 OUTLINE 0 490 RGB 0,0,0,0 500 RGB 1,6,9,15 510 PRINT AT (25,0);INVERSE(1);"C"; 520 PRINT AT (27,0);INVERSE(1);"L"; 530 PRINT AT (29,0);INVERSE(1);"B"; 540 PRINT AT (31,0);INVERSE(1);"F"; 550 PRINT AT(33,0);INVERSE(1);"E"; 560 FOR X=0 TO 15 570 PENA X 580 BOX(X*10,0;X*10+9,10),1 590 NEXT X 600 PRINT AT (35,0);INVERSE(1);"Q";INVERSE(0);" "; 610 PENA 0 620 BOX(288,0;288+9,10),1 630 PENA 0 640 OUTLINE 1 650 RETURN 660 CLOSE #1 670 RGB 0,R0%,G0%,B0% 680 RGB 1,R1%,G1%,B1% 690 IF S1%>320 THEN SCREEN 1,3,0 700 END 710 REM DRAW A LINE 720 ASK MOUSE X%,Y%,B%:IF B%=4 THEN 720 730 ASK MOUSE X%,Y%,B%:IF B%=0 THEN 730 740 X2%=X%:Y2%=Y% 750 X1%=X%:Y1%=Y% 760 DRAWMODE 2 770 ASK MOUSE X%,Y%,B% 780 IF B%=0 THEN DRAWMODE 0:DRAW(X1%,Y1% TO X2%,Y2%):RETURN 790 PENA 0 800 DRAW(X1%,Y1% TO X2%,Y2%) 810 PENA C 820 DRAW(X1%,Y1% TO X%,Y%) 830 X2%=X%:Y2%=Y% 840 GOTO 770 850 REM DRAW A BOX 860 ASK MOUSE X%,Y%,B%:IF B%=4 THEN 860 870 ASK MOUSE X%,Y%,B%:IF B%=0 THEN 870 880 X2%=X%:Y2%=Y% 890 X1%=X%:Y1%=Y% 900 DRAWMODE 2 910 ASK MOUSE X%,Y%,B% 920 IF B%=0 THEN DRAWMODE 0:PENO C:BOX(X1%,Y1% ; X2%,Y2%):PENO 0:RETURN 930 BOX(X1%,Y1% ; X2%,Y2%) 940 BOX(X1%,Y1% ; X%,Y%) 950 X2%=X%:Y2%=Y% 960 GOTO 910 970 REM FILL 980 ASK MOUSE X%,Y%,B%:IF B%=4 THEN 980 990 ASK MOUSE X%,Y%,B%:IF B%=0 THEN 990 1000 ASK MOUSE X%,Y%,B%:IF B%=0 THEN 1000 1010 PAINT (X%,Y%),1 1020 RETURN 1030 REM DRAW A CIRCLE 1040 ASK MOUSE X%,Y%,B%:IF B%=4 THEN 1040 1050 ASK MOUSE X%,Y%,B%:IF B%=0 THEN 1050 1060 CX%=X%:CY%=Y% 1070 X1%=X%:Y1%=Y% 1080 CA=0:CR=0 1090 DRAWMODE 2 1100 ASK MOUSE X%,Y%,B% 1110 IF B%=0 THEN DRAWMODE 0:PENO C:CIRCLE(CX%,CY%),CR,CA:PENO 0:RETURN 1120 CIRCLE(CX%,CY%),CR,CA 1130 REM DRAW THE NEW CIRCLE 1140 CX%=(X1%+X%)/2:CY%=(Y1%+Y%)/2 1150 CR=ABS(X1%-X%)/2 1160 IF ABS(X1%-X%)=0 THEN CA=1 ELSE CA=ABS(Y1%-Y%)/ABS(X1%-X%) 1170 CIRCLE(CX%,CY%),CR,CA 1180 GOTO 1100