5 REM START 10 GOTO590 20 REM COLOR BLOCKS 30 G=13*4096:POKE G+33,0 40 S$="" 50 PRINT "[147]":CD$="[144][159][156][158][129][149][150][151][152][153][154][155]" 60 DATA "BLACK","WHITE","RED" 70 DATA "[159]CYAN","[156]PURPLE","GREEN" 80 DATA "BLUE","[158]YELLOW","[129]ORANGE" 90 DATA "[149]BROWN","[150]PINK","[151]GRAY 1" 100 DATA "[152]GRAY 2","[153]LT GREEN","[154]LT BLUE" 110 DATA "[155]GRAY 3" 120 FOR X=0 TO 3 130 FOR Y=1 TO 5 140 FOR Z=1 TO 4 150 PRINT " "MID$(CD$,X*4+Z,1)" [146] "; 160 NEXT Z 170 NEXT Y 180 IF X<>3 THEN PRINT 190 NEXT X 200 PRINT ""SPC(1)"[207][183][183][183][183][183][183][208]"SPC(32)"[165] [167]" 210 PRINT SPC(1)"[165] [167]"SPC(32)"[165] [167]" 220 PRINTSPC(1)"[204][175][175][175][175][175][175][186]" 230 PRINT"";:FOR X=1 TO 4 240 READ A$,B$,C$,D$ 250 PRINT "";:IF X=1 THEN PRINT "[145]"; 260 PRINT ""A$,""B$,""C$,""D$ 270 NEXT X: 280 GET A$:IF A$="" THEN 280 290 IFA$=CHR$(13)THENRUN 300 POKE G+33,PEEK(G+33)+1 AND 15 310 GOTO 280 320 K=1 330 A=1:B=0 340 PRINT"[147]":POKE53281,A:POKE53280,B 350 FOR X=1024TO1024+25*40 360 Y=55296+X-1024 370 POKE X,91:POKEY,B 380 NEXT X:POKE198,0 390 GETT$:IFT$=""THEN390 400 IFT$=CHR$(13)THEN590 410 PRINT"[147]":POKE53281,B:POKE53280,A 420 FOR X=1024TO1024+25*40 430 Y=55296+X-1024 440 POKE X,91:POKEY,A 450 NEXT X 460 GETT$:IFT$=""THEN460 470 IFT$=CHR$(13)THEN590 480 GOTO320 490 REM COLOR BAR TEST 500 POKE53280,0:POKE53281,0:PRINT"[147] 510 [129]A[178]1[164]20:[153]""; 520 [153]" FOR SYS  PRINT CLR  CONT "; 530 [130] 540 [129]A[178]1[164]4:[153]"PRINT#  LIST "; 550 [153]"POKE ";:[130] 555 [151]198,0 560 [161]Z$:[139]Z$[178]""[167]560 570 [139]Z$[178][199](13)[167]590 580 [137]490 590 [151]53280,6:[151]53281,1: [153]"WAITLOAD**** COMMODORE-64 DEMO ****" 600 [153]" STOPF1WAIT COLOR DEMO 610 PRINT" [144]F2[146] HASHING DEMO 620 [153]" STOPF3WAIT NTSC BAR CHART DEMO 630 PRINT" [144]F4[146] SOUND DEMO - SIREN 640 [153]" STOPF5WAIT JOYSTICK DEMO 650 PRINT" [144]F6[146] KEYBOARD DEMO 655 [153]" STOPF7WAIT DISK DRIVE DEMO 657 PRINT" [144]F8[146] EXIT TO BASIC 660 [153]"DIRECTIONS:" 670 [153]"ALWAYS PRESS STOP RETURN WAIT FOR THE MAINMENU" 680 [153]"PRESS THE STOP SPACE WAIT BAR TO CONTINUE A DEMO" 682 [153]" TO SELECT A DEMO, PRESS A FUNCTION KEY" 685 [143] 690 [161] Z$:[139]Z$[178]""[167]690 700 [139] Z$[178]"RESTORE"[167][151]808,237:[153]"LOAD":[128] 710 [139] Z$[178]"INPUT"[167]20 720 [139]Z$[178]"GOTO"[167]320 730 [139] Z$[178]"DIM"[167]490 740 [139] Z$[178]"RUN"[167]840 750 [139] Z$[178]"READ"[167]1000 760 [139] Z$[178]"IF"[167]5000 770 [139] Z$[178]"LET"[167]2000 780 [137]690 840 [151]53280,6:[153]"LOAD**** COMMODORE-64 DEMO **** 842 PRINT" SOUND DEMO[146] 850 S[178]54272 860 [129] L[178]0 [164] 24:[151] S[170]L,0:[130] 870 [151] S[170]14,5 :[151] S[170]18,16 880 [151] S[170]3,1 :[151] S[170]24,143 890 [151] S[170]6,240:[151] S[170]4,65 900 FR[178]5389 910 [129] T[178]1 [164] 200 920 : FQ[178]FR[170][194](S[170]27)[172]3.5 930 : HF[178][181](FQ[173]256):LF[178]FQ[171]HF[172]256 940 : [151] S,LF:[151] S[170]1,HF 950 [130] 960 [151] S[170]24,0 965 [153]" PRESS STOPRETURNWAIT FOR MAIN MENU";:[153]""[166]30)"OK" 968 [151]198,0 970 [161]Z$:[139]Z$[178]""[167]970 980 [139]Z$[178][199](13)[167]590 990 [137]840 1000 [143] *** JOYSTICK DEMO PGM *** 1010 X[178]1:P[178]1:JL[178]56321:[137]1030 1020 X[178]2:P[178]2:JL[178]56320:[137]1030 1030 [141] 1340:[153]"" 1040 [141] 1260 1050 [139] JV[178]1 [167] [153][166]35)"OK ":[141]1260:[137]1070 1060 [141] 1260:[137]1050 1070 [139] JV[178]9 [167] [153][166]35)"OK ":[141]1260:[137]1090 1080 [141] 1260:[137]1070 1090 [139] JV[178]8 [167] [153][166]35)"OK ":[141]1260:[137]1110 1100 [141] 1260:[137]1090 1110 [139] JV[178]10[167] [153][166]35)"OK ":[141]1260:[137]1130 1120 [141] 1260:[137]1110 1130 [139] JV[178]2 [167] [153][166]35)"OK ":[141]1260:[137]1150 1140 [141] 1260:[137]1130 1150 [139] JV[178]6 [167] [153][166]35)"OK ":[141]1260:[137]1170 1160 [141] 1260:[137]1150 1170 [139] JV[178]4 [167] [153][166]35)"OK ":[141]1260:[137]1190 1180 [141] 1260:[137]1170 1190 [139] JV[178]5 [167] [153][166]35)"OK ":[141]1260:[137]1210 1200 [141] 1260:[137]1190 1210 [143] 1220 [153][166]35)"OK " 1230 [143] GOTO 1010 1240 [139]X[178]1[167]1020 1245 [153]" PRESS STOPRETURNWAIT FOR MAIN MENU";:[153]""[166]30)"OK" 1250 [161]Z$:[139]Z$[178][199](13)[167]590 1255 [137]1250 1260 [143] *** JOYSTICK ROUTINE *** 1270 : 1280 [151] 56322,0 1290 JV[178][194](JL) 1300 FR[178]JV [175] 16 1310 JV[178]15[171](JV [175] 15) 1320 [151] 56322,255 1330 [142] 1340 [151]53280,4:[153]"LOAD**** COMMODORE-64 DEMO **** 1350 PRINT" JOYSTICK DEMO[146] 1360 [153]"STOPDIRECTIONS: 1370 PRINT" PLUG JOYSTICK INTO GAME PORT ";P 1375 PRINT" PRESS [144]FIRE[146] WHEN READY TO TEST 1380 [153]" PRESS STOPRETURNWAIT FOR MAIN MENU 1390 GET Z$:IFZ$=CHR$(13)THEN590 1392 GOSUB1280:IF FR=16 THEN1390 1400 PRINT"[144]DIRECTIONS: 1410 [153]"1. STOPPRESS JOYSTICK UP " 1420 [153]"2. STOPPRESS JOYSTICK UP + RIGHT " 1430 [153]"3. STOPPRESS JOYSTICK RIGHT " 1440 [153]"4. STOPPRESS JOYSTICK DOWN + RIGHT 1450 PRINT"5. [144]PRESS JOYSTICK DOWN " 1460 PRINT"6. [144]PRESS JOYSTICK DOWN + LEFT 1470 [153]"7. STOPPRESS JOYSTICK LEFT " 1480 [153]"8. STOPPRESS JOYSTICK UP + LEFT 1490 PRINT"9. [144]PRESS FIRE BUTTON 1500 [142] 2000 [151]53280,5:[153]"LOAD**** COMMODORE-64 DEMO **** 2050 OPEN1,8,15:OPEN15,8,15 2060 REM 2100 NT=30 2135 PRINT" DISK DRIVE DEMO[146] 2140 [153]"STOPDIRECTIONS: 2150 PRINT"[144]1. SELECT ONE:  2180 [153]" PRESS STOPRETURNWAIT FOR MAIN MENU 2190 PRINT 2200 PRINT" PRESS [144][F][146] TO FORMAT + TEST 2210 [153] 2230 [129] I[178]0 [164] 9:[161] A$:[130] 2240 [161] A$:[139] A$[178][199](13) [167] [160]1:[160]15:[137] 590 2250 [139] A$[178]"F"[137]2265 2260 [137] 2240 2265 [153]"STOP2. INSERT BLANK DISK FOR TESTING 2266 PRINT"[144]3. SELECT: 2269 [133]" HOW MANY PASSES 3CMDCMDCMD";PP:[153]"" 2270 TI$[178]"000000" 2280 TT[178]18 2290 [152]1,"N0:TEST DISK,00" 2320 [151]53280,2: C1$[178]" DISK NEW COMMAND " 2330 C2$[178]" WAIT ABOUT 80 SECONDS " 2340 CC$[178]C1$[170]C2$:[141] 3230 2350 [139] TI[177]NT [167] 2420 2360 [153]"SYSTEM IS" 2370 [153]" NOT RESPONDING" 2380 [153]" CORRECTLY TO COMMANDS" 2390 [141] 3270 2410 : 2420 [143] 2430 [153]"LOAD * * * * * * * * * * * * * "; 2440 [153] 2450 [153]" *NEWNEWNEWNEWNEWNEWNEWNEWNEWNEWNEWNEWNEWNEWNEWNEWNEWNEWNEWRND" 2460 [153]" GET* *WAITGET" 2470 [153]" GET DRIVE PASSES WAITGET" 2480 [153]" GET MECHANICAL TEST WAITGET" 2490 [129]SS[178]1[164]500:[130] 2500 [153]" LOGNEWNEWNEWNEWNEWNEWNEWNEWNEWNEWNEWNEWNEWNEWNEWNEWNEWNEWNEWWAITCOS" 2510 [153] 2520 TT[178]21 2530 [159] 2,8,2,"0:TEST FILE,S,W" 2540 CC$[178]" OPEN WRITE FILE" :[141] 3230 2550 CH[178]2:CC$[178]"WRITE DATA" :[141] 3340 2560 CC$[178]" CLOSE "[170]CC$ :[141] 3230 2570 [159] 2,8,2,"0:TEST FILE,S,R" 2580 CC$[178]" OPEN READ FILE" :[141] 3230 2590 CH[178]2:[141] 3400 2600 [152]1,"S0:TEST FILE" 2610 CC$[178]" SCRATCH FILE":TT[178]1 :[141] 3230 2620 : 2630 [129]DD[178]1[164]500:[130] 2635 [153]"LOAD * * * * * * * * * * * * * WAIT"; 2640 TT[178]21 2650 [159] 4,8,4,"#" 2660 NN%[178](1[170][187](TI)[172]254[170]NN%)[175]255:[152]1,"B-P";4;NN% 2670 NN$[178]"":[129] I[178]1 [164] 255:NN$[178]NN$[170][199](I):[130] 2680 [152] 4,NN$; 2690 [152] 1,"U2:";4;0;35;0 2700 CC$[178]" WRITE TRACK 35":[141] 3230 2710 [152]1,"U2:";4;0;1;0 2720 CC$[178]" WRITE TRACK 1" :[141] 3230 2730 [152]1,"U1:";4;0;35;0 2740 CC$[178]" READ TRACK 35" :[141] 3230 2750 [152]1,"U1:";4;0;1;0 2760 CC$[178]" READ TRACK 1" :[141] 3230 2770 [160] 4 2780 : 2790 : 2800 B[178]B[170]1 2900 [139] B[178]PP [137]3480 2905 [129]X[178]1[164]300:[130]:[137]2430 3100 [153]" CONTINUE (Y/N)?"; 3110 [161] A$:[139]A$[178]""[167]3110 3150 [153] " "A$"CMDCMD";: [139] A$[178]"N" [167] [160]1:[160]15:[138] 3155 [139] A$[178]"Y" [167] [142] 3160 [137] 3110 3230 [153] CC$ 3240 [132]1,EN,EM$,ET,ES 3250 [153]"STOP";EN;EM$;ET;ES;"" 3260 [139] EN[179]2 [167] [142] 3270 [153]"STOP UNIT IS FAILING " 3280 [153]" PERFORMANCE TEST " 3300 [137] 3100 3310 TM$[178]TI$:[141] 3100:TI$[178]TM$:[142] 3320 : 3330 : 3340 [153]" WRITING DATA" 3350 [129] I[178]1000 [164] 1100:[152]CH,I:[130] 3360 [141]3240 3370 [160] CH:[142] 3380 : 3390 : 3400 [153]" READING DATA" 3410 [161]A$ 3420 [129] I[178]1000 [164] 1100 3430 [132] CH,J 3440 [139] J[179][177]I [167] [153]"STOP READ ERROR:WAIT":[141] 3240 3450 [130] 3460 [141] 3240 3470 [160] CH:[142] 3480 [151]53280,5 3600 [151]53280,7:[153]"LOAD**** COMMODORE-64 DEMO **** 3610 PRINT" DISK DRIVE TEST[146] 3620 [153]"STOPDIRECTIONS: 3740 PRINT" PRESS [144]RETURN[146] FOR THE MAIN MENU";:PRINT""SPC(30)"OK" 3750 GETZ$:IFZ$=CHR$(13)THEN590 3760 GOTO3750 5000 POKE53280,5:PRINT"[147]**** COMMODORE-64 DEMO **** 5001 KB$(1)[178]"1":KB$(2)[178]"W":KB$(3)[178]"D":KB$(4)[178]"V":KB$(5)[178]"0":KB$(6)[178]"@": 5002 KB$(8)[178]"F1":KB$(7)[178]"=":KB$(9)[178]"CRSR ^": 5010 [153]" KEYBOARD DEMOWAIT 5020 PRINT"[144]DIRECTIONS: 5030 [153]" PRESS STOPRETURNWAIT FOR MAIN MENU 5040 PRINT" PRESS [144]SPACE[146] WHEN READY TO DEMO 5050 [161] Z$:[139]Z$[178][199](13)[167]590 5060 [139]Z$[179][177][199](32)[167]5050 5070 [153]"STOPDIRECTIONS 5080 FOR KB=1TO9 5090 PRINT" "KB;"[157]. [144]PRESS [144]";KB$(KB);" [144][146]KEY " 5100 NEXT:KB$(8)="[133]":KB$(9)="[145]" 5105 PRINT" 5110 [129] KB[178]1[164]9 5120 [161]KC$:[139]KC$[178]KB$(KB)[167] [153][166]22)" OK ":[130]:[137]5200 5130 [137]5120 5200 [153]"  PRESS STOPRETURNWAIT FOR MAIN MENU";:[153]""[166]30)"OK" 5210 [161]Z$:[139]Z$[178][199](13)[167]590 5220 [137]5210