home *** CD-ROM | disk | FTP | other *** search
Wrap
10 REM ************************* 20 REM * SOUND.WIZ.DEMO * 30 REM * BY JOSEPH J. STROUT * 40 REM * COPYRIGHT (C) 1990 * 50 REM * MINDCRAFT PUBL. CORP. * 60 REM * CONCORD, MA 01742 * 70 REM ************************* 80 PRINT CHR$(21): TEXT : HOME :WT = 12 90 IF PEEK(1014) = 6 AND PEEK(1015) = 145 THEN 140 100 POKE 216,0: ONERR GOTO 120 110 PRINT CHR$(4)"BRUN SOUND.WIZARD": GOTO 140 120 E = PEEK(222): PRINT "ERROR LOADING SOUND.WIZARD: ": IF E = 6 THEN PRINT "FILE NOT FOUND": END 130 PRINT "NUMBER "E: END 140 POKE 216,0 150 PRINT : VTAB 24:A$ = "PRESS ANY KEY TO BEGIN.": GOSUB 370: WAIT 49152,128: GET A$ 160 HOME :B$ = "########################################": REM 40 #'S 170 PRINT B$; LEFT$(B$,1);: FOR I = 1 TO 22: HTAB 40: PRINT LEFT$(B$,2);: NEXT : PRINT LEFT$(B$,38); 180 POKE 2039, ASC(B$) +128 190 VTAB WT: PRINT : PRINT B$ 200 A$ = "SOUND WIZARD DEMO BY JOSEPH J. STROUT": VTAB 2: GOSUB 370:A$ = "(C) 1990 MINDCRAFT PUBL. CORP.": VTAB 3: GOSUB 370 210 FOR X = 1 TO 2: FOR Y = 1 TO 6: READ M$(X,Y): GOSUB 330: NEXT : NEXT :X = 1:Y = 1: INVERSE : GOSUB 330: NORMAL : GOTO 360 220 DATA "1. BEEP","2. WHITE NOISE","3. TRILL","4. FADE","5. SYNTH","6. VOLUME" 230 DATA "A. CRICKETS","B. SPACE POPCORN","C. CLOSE ENCOUNTER","D. BEAM ME UP","E. MACHINE GUN","F. BOUNCING BALL" 240 WAIT 49152,128: GET A$:A = ASC(A$) -32 *(A$ >"Z"): IF A = 13 THEN C = Y +6 *(X -1): GOTO 340 250 IF A = 27 THEN 350 260 GOSUB 330: IF A >48 AND A <55 THEN X = 1:Y = VAL(A$): GOTO 320 270 IF A >64 AND A <71 THEN X = 2:Y = A -64: GOTO 320 280 X = X -(A = 8): IF X = 0 THEN X = 1 +(Y >1):Y = Y -1 290 X = X +(A = 21): IF X = 3 THEN X = 2 -(Y <6):Y = Y +1 300 Y = Y -(A = 11): IF Y = 0 THEN Y = 6:X = 1 + NOT (X -1) 310 Y = Y +(A = 10): IF Y = 7 THEN Y = 1:X = 1 + NOT (X -1) 320 INVERSE : GOSUB 330: NORMAL : GOTO 240 330 TEXT : VTAB 1: PRINT : HTAB 3 +16 *(X -1): VTAB 4 +Y: PRINT M$(X,Y): RETURN 340 GOSUB 380: ON C GOSUB 390,420,450,490,520,560,600,630,670,720,760,790: GOTO 360 350 GOSUB 380: PRINT : PRINT :A$ = "ARE YOU SURE YOU WANT TO QUIT?": GOSUB 370: WAIT 49152,128: GET A$: PRINT A$: IF A$ = "Y" OR A$ = "y" THEN TEXT : HOME : END 360 GOSUB 380: PRINT : PRINT :A$ = "PRESS KEY OR USE ARROWS.": GOSUB 370:A$ = "<RETURN> TO HEAR, <ESC> TO QUIT.": PRINT : GOSUB 370: GOTO 240 370 HTAB 21 - LEN(A$)/2: PRINT A$;: RETURN 380 POKE 32,1: POKE 33,38: POKE 34,WT +1: POKE 35,23: HOME : RETURN 390 PRINT "TYPE ANYTHING; HIT <ESC> WHEN DONE!": PRINT : LIST 400: REM BEEP 400 GET A$: IF A$ < > CHR$(27) THEN & BEEP ASC(A$) *2,100: GOTO 400 410 RETURN 420 PRINT : LIST 430: REM WHITE NOISE 430 FOR J = 1 TO 10: & WHITEJ *20,255: NEXT 440 GOTO 820 450 PRINT : PRINT " PRESS ANY KEY TO STOP:": PRINT : LIST 460: REM TRILL 460 & TRILL90,240,40,20 470 FOR J = 1 TO 100: IF PEEK(49152) <128 THEN NEXT : GOTO 460 480 POKE 49168,0: RETURN 490 PRINT "TYPE ANYTHING; HIT <ESC> WHEN DONE!": PRINT : LIST 500: REM FADE 500 GET A$: IF A$ < > CHR$(27) THEN A = ASC(A$): & VOLUME20: & FADE255 -A *2, INT(A/5), -1: GOTO 500 510 & VOLUME20: RETURN 520 PRINT "HIT 1 THROUGH 9; <ESC> WHEN DONE.": PRINT : LIST 530: REM SYNTH 530 GET A$:R = VAL(A$): IF R THEN & SYNTH0, -1,1,1,R,255: GOTO 530 540 IF A$ < > CHR$(27) THEN 530 550 RETURN 560 PRINT " PRESS ANY KEY TO STOP: ": LIST 570: REM VOLUME 570 V = 32: FOR J = 1 TO 5: & VOLUMEV: & BEEP200,190:V = V/2: NEXT : FOR J = 1 TO 5: & VOLUMEV: & BEEP200,190:V = V *2: NEXT 580 IF PEEK(49152) <128 THEN 570 590 & VOLUME20: GET A$: RETURN 600 PRINT : LIST 610: REM CRICKETS 610 FOR J = 1 TO 3: FOR K = 1 TO 255 STEP 4: & WHITE256 -K,50: NEXT K,J 620 GOTO 820 630 PRINT " PRESS ANY KEY TO STOP: ": PRINT : LIST 640: REM SPACE POPCORN 640 & VOLUME128:P = INT(256 * RND(1)):R = 1 +( RND(1) >.5): FOR J = 1 TO INT(5 * RND(1) +1): & FADEP,R, -2: NEXT 650 IF PEEK(49152) <128 THEN 640 660 GET A$: & VOLUME20: RETURN 670 PRINT : LIST 680 -700: REM CLOSE ENCOUNTER... 680 & VOLUME1: & FADE0,50,1: REM LANDING 690 & SYNTH0, -9,1,9,3,255: REM BEAM 700 & VOLUME100: & FADE255,40, -1: REM TAKE-OFF 710 GOTO 820 720 PRINT : LIST 730 -740: REM BEAM ME UP 730 FOR V = 20 TO 1 STEP -1: & VOLUMEV 740 & SYNTH0, -10,1,10,3,52: NEXT 750 GOTO 820 760 PRINT : LIST 770: REM MACHINE GUN 770 FOR L = 1 TO 20: & VOLUME20: & FADE20,10,50: NEXT 780 GOTO 820 790 PRINT : LIST 800 -810: REM BOUNCING BALL 800 FOR V = 15 TO 2 STEP -1: & VOLUMEV: FOR Z = 1 TO V *25: NEXT 810 & SYNTH100, -4,200, -8, INT(V/2),25: NEXT 820 & VOLUME20: TEXT : VTAB 23: PRINT : HTAB 12: PRINT " PRESS ANY KEY. ";: WAIT 49152,128: GET A$: HTAB 12: PRINT LEFT$(B$,16);: RETURN