Question: Is the Altair running the speech synthesis w/ panel lights simultaneously here? Super cool if so.
Hi,
Yes, the little SpeechBox takes RS-232 serial data at 9600 8N1 BAUD to talk an sing in almost any language. Somebody that knows Klingon might even make it talk in that language.
It's easy to create the program data:
This is the MBASIC program to send the data to the SpeechBox ... all you do is swap out the data in the end statements ... maybe change line 30 and 40 for your serial port addresses:
0 REM SPEECH2.BAS
10 REM EDIT THE NEXT LINES TO DEFINE THE DATA AND STATUS PORTS
20 REM THIS IS SET UP FOR ALTAIR SIO ON PORT 0/1
30 CTL=18
40 DAT=19
50 REM FOLLOWING IS MASK AND VALUE FOR STATUS
60 RCV=1:RV=1
70 REM ANI XMT, CPI XV (RCV/RV)
80 XMT=2:XV=2
90 REM JUMP TO MAIN
100 GOTO 290
110 REM DELAY ROUTINE
120 REM EDIT THE FOLLOWING LINE TO INCREASE OR DECREASE THE DELAY
130 FOR X=1 TO 500:NEXT X
140 RETURN
150 REM INPUT DATA FROM PORT (WAIT FOR DATA AVAILABLE)
160 W=INP(CTL):IF (W AND RCV) <> RV GOTO 160
170 V=INP(DAT)
180 RETURN
190 REM OUTPUT VALUE TO PORT - WAIT FOR DATA READY
200 W=INP(CTL):IF (W AND XMT) <> XV GOTO 200
210 OUT DAT,V
220 RETURN
230 REM ROUTINE TO PROCESS GROUP
240 READ V:IF V = -1 THEN RETURN
250 GOSUB 200:GOTO 240
290 REM MAIN - READ AND OUTPUT GROUP, THEN DELAY
300 READ G
310 FOR J=1 TO G
320 GOSUB 240
330 GOSUB 130
340 NEXT
345 GOTO 30
350 REM FIRST NUMBER IS NUMBER OF GROUPS
360 REM EACH GROUP IS DATA, FOLLOWED BY -1
370 DATA 4
500 DATA 20,96,21,114,22,125,23,5,22,135,157,22,125,132,132,140,22,120,132,132,1
41,-1
510 DATA 20,96,21,114,22,125,23,5,22,130,8,132,145,8,191,8,150,22,125,194,134,14
0,7,198,7,160,191,133,148,-1
520 DATA 20,96,21,114,22,125,23,5,22,130,157,22,125,145,7,136,7,155,196,22,120,8
,191,162,22,125,199,7,145,131,154,-1
530 DATA 20,96,21,114,22,125,23,5,22,120,170,154,22,125,8,187,8,129,196,8,178,15
4,140,167,-1
540 DATA 20,96,21,114,22,125,23,5,22,130,157,22,125,183,8,132,166,22,120,132,132
,141,-1
550 DATA 20,96,21,114,22,125,23,5,22,135,8,129,8,141,22,125,191,131,145,-1
560 DATA 20,96,21,114,22,125,23,5,22,125,154,4,191,128,154,4,191,128,198,148,135
,187,131,187,153,-1
570 DATA 20,96,21,114,22,125,23,5,22,135,8,191,162,22,125,178,129,178,135,8,183,
148,191,187,-1
580 DATA 20,96,21,114,22,125,23,5,22,125,8,129,167,8,135,8,146,22,135,157,22,125
,141,8,128,176,-1
590 DATA 20,96,21,114,22,125,23,5,22,125,8,191,162,140,154,196,8,160,22,135,8,18
3,132,132,132,22,125,8,198,128,-1
600 DATA 20,96,21,114,22,125,23,5,22,135,157,22,125,145,7,136,7,155,196,8,129,8,
191,22,120,185,8,131,8,141,8,160,-1
610 DATA 20,96,21,114,22,125,23,5,22,120,8,191,151,141,140,128,128,22,130,8,135,
135,22,115,8,141,-1
620 DATA 20,96,21,114,22,125,23,5,22,135,157,22,120,147,134,167,22,115,171,6,137
,148,141,-1
630 DATA 20,96,21,114,22,125,23,5,22,125,6,8,129,8,141,22,135,8,7,191,7,147,131,
141,7,191,128,-1
640 DATA 20,96,21,114,22,125,23,5,22,135,8,7,191,7,147,131,141,7,191,128,22,125,
147,14,136,8,141,-1
1000 DATA 20,96,21,114,22,88,23,5,22,196,8,8,155,2,2,132,132,140,6,132,132,141,6
,22,185,8,132,8,145,22,147,8,191,150,-1
1010 DATA 20,96,21,114,22,88,23,5,22,147,157,6,22,175,132,132,140,6,154,128,6,19
5,135,140,22,165,198,160,22,131,191,137,148,-1
1020 DATA 20,96,21,114,22,88,23,5,22,131,157,140,22,156,6,183,149,132,8,191,128,
153,22,147,8,6,198,8,145,131,6,22,117,8,167,148,-1
1030 DATA 20,96,21,114,22,123,23,5,22,110,8,188,7,164,7,147,145,131,191,187,22,1
23,199,7,145,131,154,22,98,154,128,22,110,8,178,154,140,-1
1040 DATA 20,96,21,114,22,88,23,5,22,196,8,8,155,2,2,132,132,140,6,132,132,141,6
,22,185,8,132,8,145,22,147,8,191,150,-1
1050 DATA 20,96,21,114,22,88,23,5,22,147,157,6,22,175,132,132,140,6,154,128,6,19
5,135,140,22,165,198,160,22,131,191,137,148,-1
1060 DATA 20,96,21,114,22,88,23,5,22,131,157,140,22,156,6,183,149,132,8,191,128,
153,22,147,8,6,198,8,145,131,6,22,117,8,167,148,-1
1070 DATA 20,96,21,114,22,88,23,5,22,110,8,188,7,164,7,147,145,131,191,187,22,12
3,199,7,145,131,154,22,110,154,128,22,98,8,178,154,140,-1
.