8-Bit Software Online Conversion

:0.$.XMAS2 - Listing

20MODE2:GCOL0,129:CLG:VDU5:GCOL0,2 30MOVE120,600:PRINT"MERRY CHRISTMAS" 40GCOL0,7:MOVE128,604:PRINT"MERRY CHR ISTMAS" 50W%=INKEY(500) 60R$="2,1630,2,1720,4,1810,3,1840" 70MODE1:V%=0:S%=1:PROCrestore 90VDU23,224,&FFFF;&FFFF;&FFFF;&FFFFF; 100VDU23,225,&0;&2020;&3030;&7870; 110VDU23,226,&FCF8;&7CFC;&3C7C;&1818; 120VDU23,227,&0;&0404;&0C0C;&1E0E; 130VDU23,228,&3F1F;&3E3F;&3C3E;&1818; 140VDU23,229,&1000;&3010;&7830;&FCFC; 150VDU23,230,&7EFE;&3E7E;&1C3C;&1818; 160VDU23,231,&800;&C08;&1E0C;&3F3F; 170VDU23,232,&7E7F;&7C7E;&383C;&1818; 180VDU23,233,&1808;&3C18;&7C3C;&FE7E; 190VDU23,234,&FFFF;&FFFF;&3E7F;&181C; 200DIMF$(5),Q%(35),R%(35),S%(35),S(7), C(7) 220FORI%=1TO5:F$(I%)=CHR$(223+I%*2)+CH R$(10)+CHR$(8)+CHR$(224+I%*2):NEXT 230ONERRORGOTO830 240VDU19,3,2,0,0,0,23;11,0;0;0;0 250PROCHOLLY(1000,950,140,50,0.8) 260PROCHOLLY(1200,820,60,100,1.3) 270PROCBERRY(1050,880,24) 280PROCBERRY(1100,850,24) 290PROCBERRY(1040,825,20) 300COLOUR1 310FORY%=30TO10STEP-1 320X%=0:REPEAT:X%=X%+5 330PRINTTAB(X%,Y%)CHR$(224) 340UNTILX%DIV5=(Y%-7)DIV3:NEXT 350PROCMUSIC:COLOUR3 370FORX%=1TO38:PRINTTAB(X%,31)CHR$(224 );:NEXT 380COLOUR2:REPEAT:PROCMUSIC 390PROCFLAME(7) 400UNTILADVAL(-6)=15 410W%=INKEY(20):SOUND0,-8,4,25 420FORL%=7TO1STEP-1 430FORM%=0TO3:PROCFLAME(L%):NEXT 440PROCSNUFF(L%):NEXT 450CLS:W%=INKEY(100):PROCrestore 460A%=0:I%=20:C(1)=1:C(2)=2:C(3)=3:PRO CMUSIC 470REPEAT:PROCMUSIC 490X%=RND(1279):Y%=RND(1023):Z%=RND(60 )+30 500PROCSTAR(X%,Y%,Z%,RND(3)) 510I%=I%-1:IFI%=0THENI%=RND(25)+5:REPE AT:C%=RND(7):K%=RND(3):UNTIL(C%<>C(1)AND C%<>C(2)ANDC%<>C(3)):VDU19,K%,C%,0,0,0:C (K%)=C% 520PROCSTAR(Q%(A%),R%(A%),S%(A%)+12,0) 530Q%(A%)=X%:R%(A%)=Y%:S%(A%)=Z% 540A%=A%+1:IFA%>35THENA%=0 550UNTILADVAL(-6)=15 560FORA%=0TO35:PROCSTAR(Q%(A%),R%(A%), S%(A%)+12,0):NEXT 570PROCrestore 580VDU26,20,19,1,4,0,0,0,19,2,2,0,0,0 590GCOL0,129:CLG:GCOL0,2 600MOVE0,650:DRAW300,680:DRAW550,680:D RAW850,740:DRAW900,740:DRAW1279,690 610FORY%=0TO740STEP4 620PLOT77,900,Y%:NEXT 630PROCSTAR(300,950,50,3) 640FORY%=580TO140STEP-40 650PROCSHEEP(150+RND(950),Y%+RND(50),2 *RND(2)-3):NEXT 660C%=1:REPEAT:PROCRAY:PROCMUSIC:UNTIL ADVAL(-6)=15 670CLS:A=-PI/3:W%=INKEY(100):PROCresto re 680FORI%=0TO7:S(I%)=SIN(A):C(I%)=COS(A ):A=A+PI/3:NEXT 690VDU20,19,1,6,0,0,0:X%=350:Y%=750 700REPEAT:VDU29,X%;Y%; 710A%=250:B=RND(1)*0.4+0.3 720FORI%=0TO240STEP15:FORK%=1TO6 730MOVE0,0:MOVEI%*S(K%),I%*C(K%) 740PLOT1,A%*S(K%-1),A%*C(K%-1) 750PLOT1,-A%*S(K%-1),-A%*C(K%-1) 760PLOT1,A%*S(K%+1),A%*C(K%+1):NEXT 770PROCMUSIC:A%=RND(240-I%)*B:NEXT 780X%=X%+500+RND(100):IFX%>1000THENX%= 300+RND(100) 790FORI%=0TO7:W%=INKEY(15):PRINTTAB(0, 0);:VDU11:NEXT 800GCOL0,RND(3):UNTILFALSE 810END 830MODE7 840IFERR=17ELSEREPORT:PRINT'"Error no. ";ERR;" in line ";ERL 850END 860DEFPROCHOLLY(X%,Y%,E%,F%,R) 870VDU29,X%;Y%;:GCOL0,3:L%=8 880MOVE0,0:MOVE0.9*E%,0 890FORA=0TO6.4STEP0.2 900PROCMUSIC:MOVE0,0 910X%=E%*COS(A)-R*E%/L%*COS(A*L%) 920Y%=F%*SIN(A)+1.04/R*F%/L%*SIN(A*L%) 930PLOT85,X%,Y%:NEXT 940ENDPROC 960DEFPROCBERRY(X%,Y%,B%) 970GCOL0,1:VDU29,X%;Y%; 980FORA=0TO6.5STEP0.5:PROCMUSIC 990MOVE0,0:MOVEB%*1.2*SINA,B%*COSA 1000PLOT85,B%*1.2*SIN(A+0.5),B%*COS(A+0 .5) 1010NEXT:ENDPROC 1030DEFPROCSTAR(X%,Y%,Z%,C%) 1040VDU29,X%;Y%;:GCOL0,C% 1050MOVE-0.59*Z%,-0.8*Z%:MOVE0,Z%:PLOT8 5,0,-0.37*Z%:PLOT85,0.59*Z%,-0.8*Z% 1060MOVE0.95*Z%,0.3*Z%:MOVE-0.95*Z%,0.3 *Z%:PLOT85,0,-0.37*Z% 1070ENDPROC 1090DEFPROCMUSIC 1100IFADVAL(-6)<3ORV%=0THENENDPROC 1110READP%,Q%,R%,D% 1120IFD%>50THENPRINTTAB(0,20)P%,Q%,R%,D %:STOP 1130IFD%>1THEN1150ELSESOUND1,0,0,(1+30* D%) 1140IFD%=1THENPROCrestore:ENDPROC 1150SOUND&201,-5,P%,D%:SOUND&202,-3,Q%, D%:SOUND&203,-2,R%,D% 1160ENDPROC 1180DEFPROCrestore 1190IFV%<>0THEN1230 1200B$=MID$(R$,S%,2):V%=VAL(B$)+1 1210B$=MID$(R$,S%+2,5):T%=VAL(B$) 1220S%=S%+7 1230V%=V%-1 1240RESTORET%:ENDPROC 1260DEFPROCFLAME(K%) 1270IFK%=0THENENDPROC 1280FORJ%=7TO8-K%STEP-1 1290PRINTTAB(J%*5,5+J%*3)F$(RND(5)) 1300NEXT:ENDPROC 1320DEFPROCSNUFF(K%) 1330COLOUR0 1340PRINTTAB((8-K%)*5,(8-K%)*3+5)CHR$(2 24):PRINTTAB((8-K%)*5,(8-K%)*3+6)CHR$(22 4) 1350COLOUR2:ENDPROC 1370DEFPROCSHEEP(X%,Y%,H%) 1380VDU29,X%;Y%;:E%=40+RND(20)+(13E3)DI VY%:F%=E%/2+RND(10):L%=11 1390X0%=E%:Y0%=-F%/4:MOVEX0%,Y0% 1400FORA=0TO6.3STEP0.15:PROCMUSIC 1410X%=E%*COSA+E%/L%*COS(A*L%):Y%=F%*SI NA+F%/L%*SIN(A*L%) 1420GCOL0,3:MOVE0,0:PLOT85,X%,Y% 1430MOVEX0%,Y0%:GCOL0,0:DRAWX%,Y% 1440X0%=X%:Y0%=Y%:NEXT 1450PROCMUSIC:FORZ%=0TO16STEP4 1460IFZ%=0ORZ%=16THENGCOL0,0ELSEGCOL0,3 1470MOVE0.65*E%+Z%,-0.7*F%:DRAW0.8*E%+Z %,-1.4*F% 1480MOVE-0.65*E%-Z%,-0.7*F%:DRAW-0.8*E% -Z%,-1.4*F% 1490MOVEH%*(-E%+4-Z%),0:DRAWH%*(-E%-Z%) ,-F%/3 1500NEXT:PROCMUSIC 1510GCOL0,3:E%=E%-6:F%=F%/2.3 1520MOVEH%*(E%-6),F%:MOVEH%*(E%+F%),8+F %:PLOT85,H%*(E%-6),0 1530PLOT85,H%*(E%+2*F%),0:PLOT85,H%*(E% +F%),-F%:PLOT85,H%*(E%+2*F%),-6-F% 1540GCOL0,0:MOVEH%*E%,F%:DRAWH%*(E%+F%) ,8+F%:DRAWH%*(E%+2*F%),0:DRAWH%*(E%+2*F% ),-6-F%:DRAWH%*(E%+F%),-F% 1550PLOT69,H%*(E%+F%*1.2),0 1560PROCMUSIC:ENDPROC 1580DEFPROCRAY 1590C%=(C%+2)MOD4:GCOL0,C%:VDU29,300;90 0; 1600MOVE0,0:DRAW0,-180:MOVE20,10:DRAW60 ,-100:MOVE-20,10:DRAW-60,-100 1610ENDPROC 1630DATA117,117,69,7,117,81,69,7,145,12 9,69,7,145,125,77,7,137,113,97,7,129,117 ,97,7,125,109,97,7,117,101,81,7 1640DATA109,97,81,7,117,117,81,7,125,11 3,97,7,129,117,97,7,137,117,69,7,145,113 ,77,21 1650DATA117,117,69,7,117,81,69,7,145,12 9,69,7,145,125,77,7,137,113,97,7,129,117 ,97,7,125,109,97,7,117,101,81,7 1660DATA109,97,81,7,117,117,81,7,125,11 3,97,7,129,117,97,7,137,117,69,7,145,113 ,77,21 1670DATA145,117,85,7,149,117,89,7,137,1 09,89,7,145,109,81,7,149,129,81,7,157,12 1,81,7,165,117,81,7,145,109,81,7 1680DATA137,113,77,7,129,117,81,7,117,1 05,81,7,125,109,89,7,129,129,109,7,137,1 25,109,7,137,125,101,7 1690DATA129,129,97,7,137,109,89,7,145,1 09,81,14,149,117,81,7,145,109,81,7,145,1 29,109,7,137,125,101,7,129,117,97,7,125, 113,97,7,117,117,81,14,129,97,81,4,125,9 7,81,4,117,105,81,7 1700DATA137,109,77,7,137,109,89,7,129,1 17,109,7,137,125,101,7,145,129,97,7,149, 129,81,7,157,129,109,7,165,129,101,7,145 ,129,109,7,137,125,101,7,129,117,97,7,12 5,113,97,7,117,117,81,21,0,0,0,1 1720DATA101,81,69,12,121,101,89,12,121, 109,93,12,121,101,89,12,129,109,93,6,129 ,117,93,6,137,121,101,6,129,121,101,6,13 7,121,73,6,141,121,73,6,149,117,81,12 1730DATA137,109,73,12,141,109,93,12,137 ,121,101,6,121,121,101,6,129,121,109,12, 129,117,101,6,129,117,93,6,121,89,73,36, 0,0,0,0 1740DATA101,81,69,12,121,101,89,12,121, 109,93,12,121,101,89,12,129,109,93,6,129 ,117,93,6,137,121,101,6,129,121,101,6,13 7,121,73,6,141,121,73,6,149,117,81,12 1750DATA137,109,73,12,141,109,93,12,137 ,121,101,6,121,121,101,6,129,121,109,12, 129,117,101,6,129,117,93,6,121,89,73,36, 0,0,0,0 1760DATA121,89,61,6,137,89,61,6,149,117 ,89,18,157,109,73,6,149,117,101,6,141,11 7,101,6,137,101,61,6,129,101,97,6,121,10 1,89,6,129,101,89,6,137,121,73,6,141,121 ,73,6,149,117,81,12 1770DATA101,69,53,6,101,69,45,6,121,101 ,73,12,137,101,73,12,129,93,61,6,129,93, 69,6,121,89,73,6,121,93,73,6,101,69,53,2 4,0,0,0,0 1780DATA101,73,61,12,101,81,69,12,121,1 01,89,12,121,109,93,12,121,101,89,12,129 ,109,93,6,129,117,93,6,137,121,101,6,129 ,121,101,6,137,121,73,6,141,121,73,6,149 ,117,81,12 1790DATA137,109,73,12,141,109,93,12,137 ,121,101,6,121,121,89,6,129,121,101,12,1 29,117,101,6,129,117,93,6,121,89,73,36,0 ,0,0,1 1810DATA121,101,89,12,137,121,101,18,13 7,121,101,6,129,117,101,12,121,109,89,12 ,141,109,93,12,141,121,109,12,137,121,10 1,12,129,117,101,12,137,121,101,12,149,1 17,101,12,149,129,109,12,145,129,109,12, 149,117,101,36 1820DATA137,121,101,12,157,121,93,18,14 9,121,89,6,141,121,93,12,137,121,101,12, 129,117,101,12,121,109,89,12,117,105,89, 12,137,101,89,12,129,117,101,12,121,109, 89,12,121,109,93,12,117,101,81,12,121,10 1,89,36,0,0,0,1 1840DATA129,97,81,18,137,97,81,6,129,10 1,81,12,125,109,61,12,117,81,69,12,117,8 9,77,6,109,89,73,6,109,97,81,12,109,101, 89,12 1850DATA129,109,97,12,137,109,77,12,149 ,129,117,12,145,129,109,12,145,129,109,1 2,145,129,105,6,137,129,105,6,137,125,10 9,24 1860DATA129,109,81,12,129,97,81,6,137,9 7,81,6,129,101,81,12,125,109,61,12,117,8 1,69,12,117,89,77,6,109,89,77,6,109,97,8 1,12,109,89,73,12 1870DATA129,97,81,12,137,101,81,12,145, 109,81,12,149,117,81,12,137,101,81,12,13 7,101,77,6,129,101,77,6,129,97,81,24,157 ,129,97,17,0,0,0,0 1880DATA157,129,97,6,149,129,117,12,145 ,129,109,12,137,109,101,12,129,109,97,12 ,125,109,89,24,157,109,81,17,0,0,0,0,157 ,129,81,6,149,129,117,12,145,129,109,12, 137,117,101,12,129,109,97,12,125,109,89, 24 1890DATA129,97,81,18,137,97,81,6,129,10 5,69,12,125,109,69,12,117,109,97,12,117, 101,89,6,109,101,81,6,109,77,61,12,109,7 7,53,12,157,109,81,18,145,109,81,6,129,1 17,81,12,149,129,117,12,145,125,109,12,1 37,125,101,12,129,97,33,24,0,0,0,1