home *** CD-ROM | disk | FTP | other *** search
- 100 PRINT CHR$(14);:IF PEEK(118)=173 THEN POKE 59468,14
- 110 PRINT "[147] [195]OMMODORE 64 [198]AST [199]ARBAGE [195]OLLECTOR"
- 120 PRINT " [195]OPYRIGHT ([195]) [196]AVID [215]ILLIAMS, 1987"
- 130 PRINT "[193]UTHOR'S ADDRESS: [208].[207]. [194]OX 174"
- 140 PRINT " [211]TATION '[218]'"
- 150 PRINT " [212]ORONTO, [207]NTARIO"
- 160 PRINT " [195]ANADA. [205]5[206] 2[218]4"
- 170 PRINT "[208]ERMISSION IS GIVEN FOR THIS PROGRAM"
- 180 PRINT "TO BE COPIED FOR NON-COMMERCIAL"
- 190 PRINT "PURPOSES, PROVIDING IT IS KEPT INTACT,"
- 200 PRINT "INCLUDING THIS COPYRIGHT NOTICE."
- 210 PRINT "[195]HOOSE:": PRINT " 1. [210]EAD [196]OCUMENTATION ([196]O THIS FIRST!)"
- 220 PRINT " 2. [195]REATE [205]ACHINE [204]ANGUAGE [198]ILE"
- 230 PRINT " 3. [209]UIT"
- 240 PRINT "[217]OUR [195]HOICE ([194]Y [206]UMBER)? ";
- 250 GET X$:IF X$<>"" THEN 250
- 260 GET X$:IF X$<"1" OR X$>"3" THEN 260
- 270 PRINT X$:PRINT
- 280 ON VAL(X$) GOTO 860,290:END:RUN
- 290 OPEN 15,8,15
- 300 PRINT "[212]HIS ROUTINE RECORDS THE MACHINE"
- 310 PRINT "LANGUAGE PROGRAM INTO A DISK FILE."
- 320 PRINT "[208]UT THE DISK ONTO WHICH YOU WANT THE"
- 330 PRINT "FILE TO BE RECORDED INTO DRIVE 0. [212]HE"
- 340 PRINT "FILE WILL BE NAMED 'GARB COLLECT ML'."
- 350 GOSUB 800
- 360 OPEN 1,8,5,"0:GARB COLLECT ML,P,W"
- 370 INPUT#15,E,E$:IF E THEN PRINT E$:CLOSE1:CLOSE15:STOP:RUN
- 380 RESTORE:C=0:D=0
- 390 READ X$:IF X$<>"START ML" THEN 390
- 400 READ X
- 410 FOR I=0 TO -1 STEP -1:C=C+X:D=D+C:PRINT#1,CHR$(X);:READ X:I=X:NEXT
- 420 CLOSE 1
- 430 IF C=65667 AND D=18043554 THEN CLOSE 15:RUN
- 440 PRINT "[197]RROR IN [205][204] [196]ATA [211]TATEMENTS!":PRINT "[217]OU HAVE A BAD COPY OF THIS PROGRAM!"
- 450 PRINT#15,"S0:GARB COLLECT ML"
- 460 INPUT#15,E,E$:PRINT E$:CLOSE 15:STOP:RUN
- 470 DATA START ML
- 480 DATA 10,206,169,0,44,169,255,216,88,240,12,165,51,197,49,165
- 490 DATA 52,229,50,201,4,176,21,162,5,181,32,72,202,16,250,32
- 500 DATA 53,206,162,0,104,149,32,232,224,6,208,248,96,165,1,41
- 510 DATA 254,133,1,165,55,141,246,207,141,251,207,165,56,141,247,207
- 520 DATA 141,252,207,169,0,141,255,207,173,246,207,141,244,207,56,173
- 530 DATA 247,207,233,31,144,15,141,245,207,165,51,205,244,207,165,52
- 540 DATA 237,245,207,144,13,206,255,207,165,51,141,244,207,165,52,141
- 550 DATA 245,207,173,242,207,133,34,173,243,207,133,35,32,92,207,173
- 560 DATA 244,207,141,253,207,173,245,207,141,254,207,165,34,141,244,207
- 570 DATA 165,35,141,245,207,173,242,207,141,246,207,173,243,207,141,247
- 580 DATA 207,173,251,207,133,34,173,252,207,133,35,32,92,207,173,255
- 590 DATA 207,208,25,165,34,141,251,207,165,35,141,252,207,173,253,207
- 600 DATA 141,246,207,173,254,207,141,247,207,76,80,206,165,34,133,51
- 610 DATA 133,53,165,35,133,52,133,54,165,1,9,1,133,1,96,160
- 620 DATA 0,177,32,208,8,200,145,32,200,145,32,208,75,141,248,207
- 630 DATA 200,177,32,133,36,200,177,32,133,37,165,36,205,246,207,165
- 640 DATA 37,237,247,207,176,50,165,36,205,244,207,165,37,237,245,207
- 650 DATA 144,38,56,165,34,237,248,207,133,34,176,2,198,35,172,248
- 660 DATA 207,136,192,255,240,7,177,36,145,34,76,41,207,160,1,165
- 670 DATA 34,145,32,200,165,35,145,32,96,32,73,207,133,32,134,33
- 680 DATA 96,24,101,32,72,138,101,33,170,104,96,160,3,177,32,170
- 690 DATA 136,177,32,96,165,45,133,32,165,46,133,33,165,32,197,47
- 700 DATA 165,33,229,48,176,41,160,0,177,32,48,5,200,177,32,48
- 710 DATA 10,162,0,169,7,32,65,207,76,100,207,162,0,169,2,32
- 720 DATA 65,207,32,231,206,162,0,169,5,32,65,207,76,100,207,165
- 730 DATA 32,197,49,165,33,229,50,176,79,160,0,177,32,48,5,200
- 740 DATA 177,32,48,9,32,83,207,32,65,207,76,151,207,32,83,207
- 750 DATA 32,73,207,141,249,207,142,250,207,160,4,177,32,72,162,0
- 760 DATA 169,5,32,65,207,104,162,0,10,144,1,232,32,65,207,165
- 770 DATA 32,205,249,207,165,33,237,250,207,176,180,32,231,206,162,0
- 780 DATA 169,3,32,65,207,76,215,207,96,44,0,192,0,0,0,0
- 790 DATA 0,0,0,0,0,0,0,0,-1
- 800 PRINT:PRINT "TO CONTINUE: PRESS 'RETURN'[146]";
- 810 GET X$:IF X$<>"" THEN 810
- 820 GET X$:IF X$<>CHR$(13) THEN 820
- 830 PRINT:RETURN
- 840 IF D=4 THEN RETURN
- 850 PRINT:GOSUB 800:PRINT "[147]";:RETURN
- 860 PRINT "OUTPUT TO S[146]CREEN OR P[146]RINTER? ";
- 870 GET X$:IF X$<>"" THEN 870
- 880 GET X$:IF X$<>"S" AND X$<>"P" THEN 880
- 890 PRINT X$:PRINT:D=4+(X$="S")
- 900 OPEN 1,D:CR$=CHR$(13):IF D=4 THEN CR$=CR$+""
- 910 A=61+3*(PEEK(118)=173):GOSUB 1020
- 920 IF D=3 THEN TW=40:GOTO 940
- 930 INPUT "PRINTER TEXT WIDTH (40-120) 80[157][157][157][157]";TW:IF TW<40 OR TW>120 THEN 930
- 940 POKE 902,TW
- 950 POKE 251,(A+66)AND255:POKE 252,(A+66)/256
- 960 L=0:PRINT#1,CR$;CR$;:IF D=3 THEN PRINT "[147]";
- 970 SYS A:PRINT#1,CR$;
- 980 IF PEEK(901)=0 THEN GOSUB 840:PRINT#1,CR$;CR$;:CLOSE 1:RUN
- 990 L=L+1
- 1000 IF L>=20 THEN L=0:GOSUB 840
- 1010 GOTO 970
- 1020 A=256*PEEK(A+1)+PEEK(A)+30:RETURN
-