home *** CD-ROM | disk | FTP | other *** search
- 10 REM SPEECH DEMO PROGRAM
- 20 REM By Dave Ebert (10/13/85)
- 30 screen 0,4,0
- 40 SCNCLR
- 50 HOW%(0)=110:HOW%(1)=0:HOW%(2)=150:HOW%(3)=0:HOW%(4)=22200:HOW%(5)=64:HOW%(6)=10:HOW%(7)=0:HOW%(8)=0
- 60 TEXT$="HELLO"
- 70 GOSUB 320
- 80 SCNCLR
- 90 PRINT " THE AMIGA SPEECH DEMONSTRATION"
- 100 PRINT:PRINT "Options:"
- 110 PRINT "========"
- 120 PRINT " [A] Voice Pitch"
- 130 PRINT " [B] Inflection"
- 140 PRINT " [C] Speaking Rate"
- 150 PRINT " [D] Male or Female"
- 160 PRINT " [E] Sampling Frequency"
- 170 PRINT " [F] Volume
- 180 PRINT " [G] Input Text for Speech"
- 190 PRINT " [H] End Program"
- 200 PRINT:PRINT "Choice ==>";
- 210 GETKEY C$
- 220 IF C$="a" or C$="A" THEN GOSUB 360
- 230 if C$="b" OR C$="B" THEN GOSUB 530
- 240 IF C$="c" OR C$="C" THEN GOSUB 710
- 250 IF C$="d" OR C$="D" THEN GOSUB 880
- 260 IF C$="e" OR C$="E" THEN GOSUB 1060
- 270 IF C$="f" OR C$="F" THEN GOSUB 1200
- 280 IF C$="g" OR C$="G" THEN GOSUB 1360
- 290 IF C$="h" OR C$="H" THEN GOTO 310
- 300 GOTO 80
- 310 END
- 320 REM SPEECH SUBROUTINE
- 330 A$=TRANSLATE$(TEXT$)
- 340 X%=NARRATE(A$,HOW%())
- 350 RETURN
- 360 REM VOICE PITCH
- 370 SCNCLR
- 380 PRINT " VOICE PITCH"
- 390 PRINT " ==========="
- 400 PRINT:PRINT
- 410 PRINT "Pitch Value (65-320)";
- 420 INPUT HOW%(0)
- 430 IF HOW%(0)<65 THEN GOTO 370
- 440 IF HOW%(0)>320 THEN GOTO 370
- 450 TEXT$="HELLO"
- 460 GOSUB 320
- 470 PRINT
- 480 PRINT "Finished";
- 490 INPUT F$
- 500 IF F$="Y" OR F$="y" THEN GOTO 520
- 510 GOTO 370
- 520 RETURN
- 530 REM INFLECTION
- 540 SCNCLR
- 550 PRINT " VOICE INFLECTION"
- 560 PRINT " ================"
- 570 PRINT:PRINT
- 580 PRINT "[0] - Inflection"
- 590 PRINT "[1] - Monotone"
- 600 PRINT:PRINT "Your Choice";
- 610 INPUT HOW%(1)
- 620 IF HOW%(1)<0 GOTO 540
- 630 IF HOW%(1)>1 GOTO 540
- 640 TEXT$="HELLO"
- 650 GOSUB 320
- 660 PRINT:PRINT "Finished";
- 670 INPUT F$
- 680 IF F$="Y" OR F$="y" THEN GOTO 700
- 690 GOTO 540
- 700 RETURN
- 710 REM SPEAKING RATE
- 720 SCNCLR
- 730 PRINT " SPEAKING RATE"
- 740 PRINT " ============="
- 750 PRINT:PRINT
- 760 PRINT "Words per minute (40-400)";
- 770 INPUT HOW%(2)
- 780 IF HOW%(2)<40 THEN GOTO 720
- 790 IF HOW%(2)>400 THEN GOTO 720
- 800 TEXT$="HELLO"
- 810 GOSUB 320
- 820 PRINT
- 830 PRINT "Finished";
- 840 INPUT F$
- 850 IF F$="Y" OR F$="y" THEN GOTO 870
- 860 GOTO 720
- 870 RETURN
- 880 REM SEX
- 890 SCNCLR
- 900 PRINT " VOICE SEX"
- 910 PRINT " ========="
- 920 PRINT:PRINT
- 930 PRINT "[0] - Male"
- 940 PRINT "[1] - Female"
- 950 PRINT:PRINT "Your choice";
- 960 INPUT HOW%(3)
- 970 IF HOW%(3)<0 GOTO 890
- 980 IF HOW%(3)>1 GOTO 890
- 990 TEXT$="HELLO"
- 1000 GOSUB 320
- 1010 PRINT:PRINT "Finished";
- 1020 INPUT F$
- 1030 IF F$="Y" OR F$="y" THEN GOTO 1050
- 1040 GOTO 890
- 1050 RETURN
- 1060 REM SAMPLING FREQUENCY
- 1070 SCNCLR
- 1080 PRINT " SAMPLING FREQUENCY"
- 1090 PRINT " =================="
- 1100 PRINT:PRINT "Desired Frequency (5000-28000)";:INPUT HOW%(4)
- 1110 IF HOW%(4)<5000 goto 1070
- 1120 IF HOW%(4)>28000 GOTO 1070
- 1130 TEXT$="HELLO"
- 1140 GOSUB 320
- 1150 PRINT:PRINT "Finished";
- 1160 INPUT F$
- 1170 IF F$="Y" OR F$="y" THEN GOTO 1190
- 1180 GOTO 1070
- 1190 RETURN
- 1200 REM VOICE VOLUME
- 1210 SCNCLR
- 1220 PRINT " VOICE VOLUME"
- 1230 PRINT " ============"
- 1240 PRINT:PRINT
- 1250 PRINT "Volume (0-64)";
- 1260 INPUT HOW%(5)
- 1270 IF HOW%(5)<0 GOTO 1210
- 1280 IF HOW%(5)>64 GOTO 1210
- 1290 TEXT$="HELLO"
- 1300 GOSUB 320
- 1310 PRINT:PRINT"Finished";
- 1320 INPUT F$
- 1330 IF F$="Y" OR F$="y" THEN GOTO 1350
- 1340 GOTO 1210
- 1350 RETURN
- 1360 REM TEXT INPUT SUBROUTINE
- 1370 SCNCLR
- 1380 INPUT "TEXT==>";TEXT$
- 1390 IF TEXT$="" THEN GOTO 1420
- 1400 GOSUB 320
- 1410 GOTO 1380
- 1420 RETURN
-