'SPEAK.BAS '8/29/98 'SENDS A STRING TO THE SPEECH SYNTHESIZER. 'SIMPLIFIES USE OF SPEECH SYNTHESIZER 'BUT CAN BE USED WITH ANY DEVICE ATTACHED TO 'THE AUX SERIAL PORT. 'OPEN THE SERIAL PORT. '(MAY BE NECESSARY TO CHANGE THIS) OPEN "COM1:9600,N,8,1" FOR RANDOM AS #1 'SEND CR, CR (NEEDED TO SET BAUD RATE FOR SPEECH SYNTHESIZER) PRINT #1, "!1PA10D"; A$ = INPUT$(1, #1) 'Get A. PRINT #1, "!1PA10D"; A$ = INPUT$(1, #1) 'Get A. CLS 'THIS LOOP LETS THE USER ENTER A STRING WHICH 'IS THEN SENT TO THE AUX SERIAL PORT. ' ENTRYLOOP: PRINT INPUT "Enter string to speak (or END)"; SS$ IF UCASE$(SS$) = "END" THEN END GOSUB SPEAK GOTO ENTRYLOOP '------------------------------------------ 'COPY THIS SUBROUTINE OVER TO YOUR PROGRAM. '------------------------------------------ '------------------------------------------ 'SEND SS$ STRING TO SPEECH SYNTHESIZER. ' SPEAK: 'SEND EACH CHARACTER OF STRING. IF LEN(SS$) = 0 THEN RETURN FOR I = 1 TO LEN(SS$) PRINT #1, "!1PA1" + HEX$(ASC(MID$(SS$, I, 1))); A$ = INPUT$(1, #1) 'Get A. FOR j = 1 TO 500: NEXT j NEXT I 'FINAL CR. PRINT #1, "!1PA10D"; A$ = INPUT$(1, #1) 'Get A. RETURN