[comp.sys.ibm.pc] Holiday entertainment part one

wtm@neoucom.UUCP (Bill Mayhew) (12/23/87)

Following is a bit of lighter hearted stuff for use with BASICA or
GWBASIC.  Please note that a CGA display and approximately 128K of
memory is required for optimum performance.  Note that I didn't
write this.  Attribution is given at the end of the program source.

Download this to your P.C. and name it tree.bas.  Part two will
follow shortly.  Save part two to your P.C. and name it tree3.bas.
Invoke with "GWBASIC TREE".  Tree.bas chains tree3.bas.

--Bill

--------- cut here --------
10 DEFINT A-Z : CLS
15 PI!=3.141593
20 SCREEN 1,0 :COLOR 0,0 :KEY OFF
57 CIRCLE (200,10),160,2,-235*PI!/180,-305*PI!/180
58 PAINT (200,30),1,2
59 LINE (100,130)-(120,165),2,BF
60 LINE (190,144)-(230,169),2,BF
70 LINE (235,140)-(260,172),3,BF
80 LINE (160,155)-(190,185),3,BF
140 LINE (279,30)-(310,101),3,B
150 LINE (276,27)-(313,104),3,B
160 PAINT (311,102),2,3
180 LINE (282,115)-(320,115),3
190 LINE (285,125)-(315,145),2,BF
200 CIRCLE (36,32),30,2,0,2*PI!
209 CIRCLE (36,32),13,2,0,2*PI!
210 RESTORE 219
211 FOR I=1 TO 8
212 READ X,Y
213 PSET (X,Y),2
214 PSET (X,Y+1),2
215 PSET (X,Y-1),2
216 PSET (X-1,Y),2
217 PSET (X+1,Y),2
218 NEXT I
219 DATA 56,37,36,55,11,32,46,52,26,47,53,25,64,31,19,27
220 PAINT (61,32),1,2
300 LINE (26,10)-(46,19),3,B
305 PAINT (31,12),2,3
310 LINE (16,2)-(26,10),3
320 LINE (16,27)-(26,19),3
330 LINE (16,2)-(16,27),3
340 LINE (46,10)-(56,2),3
350 LINE (46,19)-(56,27),3
360 LINE (56,2)-(56,27),3
370 PAINT (17,14),2,3
380 PAINT (47,14),2,3
390 LINE (285,135)-(315,135),1
400 LINE (300,125)-(300,145),1
410 LINE (100,147)-(120,147),3
420 LINE (110,130)-(110,165),3
430 LINE (190,156)-(230,156),3
440 LINE (210,144)-(210,169),3
450 LINE (235,156)-(260,156),2
460 LINE (247,140)-(247,172),2
470 LINE (160,170)-(190,170),1
480 LINE (175,155)-(175,185),1
490 LINE (2,60)-(70,120),3,B
500 LINE (0,115)-(2,115),3
510 LINE (70,115)-(92,115),3
520 LINE (15,95)-(57,120),3,B
530 LINE (0,60)-(72,70),3,BF
540 LINE (20,114)-(52,120),3,BF
550 FOR X=4 TO 68 STEP 11
560 LINE (X,72)-(X+9,76),2,BF
570 LINE (X,78)-(X+9,82),2,BF
580 LINE (X,84)-(X+9,88),2,BF
590 LINE (X,90)-(X+9,93),2,BF
600 NEXT X
610 FOR Y=95 TO 117 STEP 6
620 LINE (4,Y)-(13,Y+4),2,BF
630 LINE (59,Y)-(68,Y+4),2,BF
640 NEXT Y
641 LINE(4,118)-(13,118),2
642 LINE(59,118)-(68,118),2
650 CIRCLE (41,140),30,3,0,2*PI!,5/18
660 CIRCLE (41,140),37,1,0,2*PI!,5/18
670 CIRCLE (41,140),23,2,0,2*PI!,5/18
680 LINE(125,127)-(155,160),3,BF
690 LINE(140,127)-(140,160),2
700 LINE(125,143)-(155,143),2
710 LINE(18,45)-(18,59),2
720 LINE(54,45)-(54,59),2
730 LINE(19,45)-(19,59),2
740 LINE(53,45)-(53,59),2
741 LINE(16,57)-(21,59),1,BF
742 LINE(51,57)-(56,59),1,BF
743 CIRCLE(14,56),2,1,0,2*PI!
744 CIRCLE(58,56),2,1,0,2*PI!
750 CIRCLE(19,41),2,0
755 PAINT(19,41),3,0
760 PSET(19,38),0
770 CIRCLE(53,41),2,0
775 PAINT(53,41),3,0
780 PSET(53,38),0
910 LINE(280,142)-(290,150),3,BF
920 LINE(280,146)-(290,146),0
930 LINE(285,142)-(285,150),0
940 LINE(279,141)-(291,151),0,B
950 LINE(97,34)-(131,112),2,B
960 CIRCLE(114,34),15,2,0,PI!
970 LINE(92,112)-(135,112),2
980 LINE(92,112)-(92,117),2
990 LINE-(131,117),2
1000 LINE(101,38)-(127,58),2,B
1010 LINE(101,61)-(127,108),2,B
1020 CIRCLE(114,48),11,3,0,2*PI!
1030 LINE(106,67)-(109,92),3,BF
1040 LINE(112,67)-(115,87),3,BF
1050 LINE(119,67)-(122,92),3,BF
1060 CIRCLE(114,99),2,2,0,2*PI!
1070 LINE(114,87)-(114,97),3
1080 PAINT(114,99),3,2
1090 PAINT(129,90),3,2
1100 PAINT(108,115),3,2
1120 PAINT(108,27),3,2
1125 LINE(132,96)-(114,119),0 :LINE-(136,119),0 :LINE-(136,91),0 :PAINT(134,108),1,0 :LINE(136,91)-(136,119),1 :LINE-(114,119),1 :LINE(132,117)-(117,117),1
1130 CIRCLE(114,31),8,0,-2*PI!,-PI!
1140 PAINT(115,29),2,0
1150 LINE(166,134)-(188,154),2,BF
1160 LINE(177,134)-(177,154),0
1170 LINE(166,150)-(188,150),0
1180 LINE(115,155)-(132,170),1,BF
1190 LINE(115,163)-(132,163),2
1200 LINE(124,155)-(124,170),2
1210 LINE(254,126)-(273,147),2,BF
1220 LINE(254,140)-(260,147),3,BF
1230 LINE(254,136)-(273,136),3
1240 LINE(263,126)-(263,147),3
1250 LINE(200,166)-(253,174),1,BF
1260 LINE(200,170)-(253,170),0
1270 LINE(226,166)-(226,174),0
1280 LINE(136,158)-(159,166),2,BF
1290 LINE(136,162)-(159,162),1
1300 LINE(157,158)-(157,166),1
1310 CIRCLE(189,39),10,2,PI!,11/6*PI!
1320 CIRCLE(211,39),13,2,7/6*PI!,2*PI!
1330 CIRCLE(175,66),18,2,PI!,11/6*PI!
1340 CIRCLE(200,66),12,2,5/4*PI!,11/6*PI!
1350 CIRCLE(231,64),22,2,20/18*PI!,11/6*PI!
1360 CIRCLE(150,95),17,2,PI!,34/18*PI!
1370 CIRCLE(180,95),15,2,7/6*PI!,11/6*PI!
1380 CIRCLE(216,90),27,2,7/6*PI!,11/6*PI!
1390 CIRCLE(250,97),10,2,7/6*PI!,7/4*PI!
1400 CIRCLE(265,97),11,2,5/4*PI!,7/4*PI!
1410 CIRCLE(131,115),12,2,PI!,7/4*PI!
1420 CIRCLE(155,115),18,2,7/6*PI!,335/180*PI!
1430 CIRCLE(200,113),28,2,20/18*PI!,11/6*PI!
1440 CIRCLE(237,121),12,2,7/6*PI!,11/6*PI!
1450 CIRCLE(259,117),13,2,5/4*PI!,11/6*PI!
1460 CIRCLE(278,117),7,2,7/6*PI!,2*PI!
1470 CIRCLE(286,23),3,2
1475 CIRCLE(286+4,23-3),2,2
1480 LINE(286-7,23-2)-(286-3,23),2
1485 LINE(286+6,23-3)-(286+8,23-3),2
1490 PAINT(286,23),3,2
1495 PAINT(286+4,23-3),3,2
1500 CIRCLE(304,23),3,2
1505 CIRCLE(304-4,23-3),2,2
1510 LINE(304+7,23-2)-(304+3,23),2
1515 LINE(304-6,23-3)-(304-8,23-3),2
1520 PAINT(304,23),3,2
1525 PAINT(304-4,23-3),3,2
1527 PSET(290,20),0 :PSET(300,20),0
1530 RESTORE 1580
1540 FOR I=1 TO 4 'CANDY CANES
1545 READ X,Y
1550 CIRCLE(X,Y),2,2,2*PI!,PI!
1560 LINE(X+2,Y+2)-(X+2,Y+7),2
1570 NEXT I
1580 DATA 173,69,213,101,200,126,132,113
1590 RESTORE 1650
1600 FOR I=1 TO 10 'DIAMONDS
1610 READ X,Y,C
1620 CIRCLE(X,Y),3,0,0,2*PI!,4
1630 PAINT(X,Y),C,0
1640 NEXT I
1650 DATA 195,32,2,224,55,3,199,70,2,152,87,3,195,116,2,179,98,3,226,101,2,252,85,3,258,114,2,225,135,3
1660 RESTORE 1730
1670 FOR I=1 TO 8 'BALLS
1680 READ X,Y,C
1690 CIRCLE(X,Y),2,0
1700 PSET(X,Y-3),0
1710 PAINT(X,Y),C,0
1720 NEXT I
1730 DATA 208,36,2,227,70,3,177,55,2,152,100,2,207,85,2,259,96,3,237,122,2,158,116,3
1740 CIRCLE(178,167),2,1
1750 CIRCLE(172,173),2,1
1760 CIRCLE(172,167),2,1
1770 CIRCLE(178,173),2,1
1780 LINE(141,127)-(155,142),3,BF
1790 CIRCLE(143,140),2,2
1800 CIRCLE(143,146),2,2
1810 CIRCLE(137,146),2,2
1820 CIRCLE(137,140),2,2
1830 CIRCLE(250,153),2,2
1840 CIRCLE(250,158),2,2
1850 CIRCLE(244,158),2,2
1860 CIRCLE(244,153),2,2
1870 CIRCLE(303,132),2,1
1880 CIRCLE(303,138),2,1
1890 CIRCLE(297,132),2,1
1900 CIRCLE(297,138),2,1
1910 CIRCLE(108,128),2,3
1920 CIRCLE(113,128),2,3
1930 CIRCLE(108,128),1,3
1940 CIRCLE(113,128),1,3
1950 CIRCLE(207,153),2,3
1960 CIRCLE(207,159),2,3
1970 CIRCLE(213,153),2,3
1980 CIRCLE(213,159),2,3
32767 CHAIN"TREE3.BAS"
32770   '       PROGRAM NAME:   TREE.BAS                                                '       WRITTEN BY:     CATHLEEN HORNE                                          '       EDIT DATE:      29-NOV-1983