** Far in advance to any other similar product on the market ** TEACHING YOUR SPECTRUM TO SPEAK WITH S U P E R T A L K Enables your spectrum to READ A SENTENCE aloud as easily as printing it! Features a unique and powerful `Sentence Scanner'. ADD SPEECH TO YOUR OWN PROGRAMS (Basic or Machine code). Sound effects can also be created. NO EXTRA HARDWARE REQUIRED. Uses spectrum speaker and top area of ram. The size of this area can be adjusted depending on the size of the vocabulary. UNLIMITED VOCABULARY. Build your own vocabulary or use the one provided. The vocabulary can be modified to suit your requirements. Words can be deleted and new ones learnt. SIMPLE TO USE. No numbers or addresses to worry about; Each word's sound is identified by its letters. 100% MACHINE CODE. Includes full editor with `Learn', `Delete', `List' and `Speak' facilities. This enables you to build up your own vocabulary. (C) Dr David Aubrey Jones TEACHING YOUR SPECTRUM TO SPEAK - WITH SUPERTALK....... SUPERTALK will enable you to teach your Spectrum to speak simply and easily with no extra hardware. Using the program your Spectrum can read a sentence as easily as printing it! It is written in 100% machine code and includes a full editor with Learn, Delete, List and Speak facilities. GETTING STARTED There are two versions of SUPERTALK recorded on the cassette. The Side 1 version includes a basic vocabulary of words and a short Basic program that demonstrates its use. The Side 2 version contains no previously learnt words. To use the demonstration program on Side 1 put the cassette in the tape recorder, type LOAD "SUPERTALK" or LOAD"", start the tape and press ENTER. Once the program has loaded your Spectrum will start speaking to you! The sound quality from the Spectrum's speaker leaves much to be desired, but it can be significantly improved by connecting an external amplifier and loudspeaker via the MIC socket (see Chapter 19, Page 138 of the Spectrum manual). If this has tone controls the best results will probably be obtained by setting the treble at minimum and the bass near maximum. After a while, break out of the program (by pressing the CAPS SHIFT, EDIT and BREAK keys all at once). List the program from line 50 onward Lines 50-90 get the computer to speak some phrases that might be used in a Startrek or Blake's 7 type of program (Orac!). Random numbers are generated in lines 100 onwards and these are then spoken. Such a system would enable a financial or mathematical type program to speak as well as display results. The computer is made to speak by first putting your word, phrase or sentence in the string array S$, and then calling USR SPEAK. Try altering the DEMO by deleting some of the words in lines 60, 70 and 80 and replacing them with others that are present. Re-start the program by GOTO 40. It should be noted that there must always be at least one space between two words, and at least 5 spaces at the end of a sentence. If you enter a word that your Spectrum has not been taught, ERROR Q will result. PUTTING WORDS INTO THE SPECTRUM'S MOUTH - THE EDITOR In addition to or instead of the words in the demonstration program on side 1 , SUPERTALK enables you to teach your Spectrum any other words you wish. These may be in any language, or they could be various sound effects. At this point load either version of SUPERTALK into your Spectrum. If you use side 2 the Editor will be called automatically once the program has loaded successfully, and a menu of options will be displayed on the screen. To call this editor from the side 1 demonstration, break out of it as descibed earlier under 'GETTING STARTED', and then type RAND USR EDIT and press ENTER. You may return to Basic at any time the menu is displayed by pressing the '5' key (EXIT). Select option 3 (LIST). All the words currently in the SUPERTALK vocabulary ( if any ) will be displayed. If you loaded the demonstration program you will see the digits 0 to 9, a full stop ( point ) and a number of words. To return to the option menu press EDIT ( keys CAPS SHIFT and 1 ). Lets now try entering a new word into your Spectrum's vocabulary. Select option 1 (LEARN). If you loaded the demonstration error message 4, 'out of memory', will immediatly appear. This is because all the currently available memory space for words is full. Space for new words can be created by one of two methods :- (1) Starting afresh with a new vocabulary. Enter RAND USR RAM from Basic and then recall the editor by entering RAND USR EDIT. (2) Deleting some words already present in the vocabulary. Recall the editor with RAND USR EDIT, and then select the DELETE option ( no. 2 ). Type a word you wish to delete exactly as it appears in the vocabulary, and press ENTER. Further words may now be deleted in the same way, or you can return to the option menu by pressing EDIT. Having created space for new words in memory, select option 1 (LEARN) again. This time no error message should appear. Now type a word exactly as you would like it entered into the vocabulary. Auto repeat will operate on all keys, and any upper or lower case letter can be selected, as can any symbol shift key. If you make a mistake the standard DELETE key can be used to correct it. It should be noted that the SPACE key is disabled since SUPERTALK uses spaces as separators between words so that it knows where one starts and another finishes. In addition a comma (,) should not be entered - more about this later. With the word typed in, put a blank tape in your tape recorder and record the word you wish your Spectrum to learn. Speak clearly, and leave a short silent period both before and after the word. Now rewind the tape to just before the start of the word and set the playback volume initially to slightly below that used for loading. The volume level can later be adjusted for optimum results by experimenting with different settings. Check that the ear leads to your Spectrum are plugged in and press the ENTER key. The word you entered will scroll up the screen and after a pause you will hear 3 pips. Press the 'play' button on the recorder on the last pip. If you listen carefully you can hear the output from the tape recorder through the Spectrum's speaker. Press the space key after the word you entered has been played. That's it! Your Spectrum should now have learnt the new word. Return to the option menu by pressing EDIT, and check that the new word is now in the vocabulary by using option 3 (LIST). If all is well select the SPEAK option ( no.4 ), type in your word, and press the ENTER key. You should now hear the word spoken by your Spectrum. This may well not be perfect at the first attempt however. If this is the case read the section below 'IMPROVING THE QUALITY', and delete the word using the DELETE option. Note that it is possible for two or more copies of the same word to coexist in SUPERTALK but the version that was entered first will always be selected in any operation. IMPROVING THE QUALITY The first word you taught your Spectrum may be faulty in several ways. One important factor determining quality is the volume level the tape recorder is set at in LEARN. If this is too high the sound will be very distorted ( and there could be a lot of static before and after it ), and if too low only part of the word may be captured. The optimum level will be discovered by experimenting. It is obviously desirable to reduce any silent period before and after a word to a minimum. This is a waste of memory space and it disturbs the pattern of speech. SUPERTALK has two routines to help eliminate this. Firstly, after the pips when learning a word it will pause indefinitely if no input is recieved from the ear socket. In practice you will probably find that just pressing the play button on the recorder will cause a large enough 'click' sound to set learning in motion. It is therefore best to always start the cassette recorder playing during the pips and not after them. A long silent period at this point during LEARN should also be avoided; try and time things to make it as short as possible. Secondly, after a word has been played in LEARN and you have pressed the SPACE key any silent period at its end will be automatically erased. This can sometimes result in the last part of a quiet word being 'LOST'. This may be corrected by:- (1) Making a new clearer recording of the word. (2) Setting a higher volume level on the tape recorder. (3) Decreasing the level of the auto delete routine by POKEing address 64132 with a value below 5. The lower the value, the lower the level. e.g. POKE 64132,2 FORMING SENTENCES We have already seen how speech can be generated in a Basic program by putting words in the string array S$ and calling RAND USR SPEAK. The same routine can also be called by selecting the SPEAK option in the editor. In this case the sentence is entered directly and the Spectrum will speak when the ENTER key is pressed. Any of the words present in the vocabulary can be entered, but they should always be separated by at least one space. Thus if you want to say 'six-five' and the computer has learnt 6 and 5 as separate words, you must type in '6 5', not '65'. The limit to the length of a sentence is 100 characters. SUPERTALK will automatically end a sentence at this point, but it can be terminated earlier by 5 or more consecutive spaces. It is not,however,necessary to enter these when using SPEAK directly from the editor. Commas (,) can be included in a phrase or sentence to add expression. When these are encountered SUPERTALK will pause for a moment. Remember, however, to separate words and commas by a space ( see DEMO for examples ). For a longer pause several commas can be entered consecutively, or the length can be altered by POKEing address 64621 with different values. In a similar way spaces between words cause a very short pause, and the value in address 64595 controls its length. SAVING WORDS After you have taught your Spectrum some words with SUPERTALK you may wish to save these for future use. This is done in Basic by GOTO 2 ( line 2 ). You will be asked for the tape name ( which should be no longer than 10 letters ), and the vocabulary will then be saved. To load this back into your Spectrum at a later date first load the side 2 version of SUPERTALK. Exit from the editor and GOTO 3 ( line 3 ). ALTERING THE SIZE OF MEMORY SUPERTALK was written with flexibility in mind and one of its features is that it will let one alter how much memory space there is for 'words', and how much there is left for your Basic program. The default setting ( with RAMTOP set at 32599 ) will allow one to enter a Basic program of the same length as if you had a 16K machine. If you have only a very short Basic program and want as many words as possible, RAMTOP can be reset down to about 26000. Alternatively, if you have a very long program and need only a few words, RAMTOP can be set up to about 55000. To change the memory size load the side 2 version of SUPERTALK and exit from the editor. Then edit line 1 of the program, entering the new RAMTOP value ( a number between 26000 and 55000 ) after the CLEAR command, and deleting the two LOAD instructions. Entering RUN will now set SUPERTALK up for the new RAMTOP value. Note that a vocabulary saved on tape with RAMTOP set to one value cannot be loaded into SUPERTALK with RAMTOP set to a different value. ERROR MESSAGES 2 Variable not found: Array S$ (100) incorrectly dimensioned or not present at start of variable area. Solution is to CLEAR and then DIM S$ (100) immediately afterwards. 4 Out of memory: Memory space for words full. Space for a new word can be made by deleting some already present. E Out of data: No word entered in LEARN or DELETE modes. Q Parameter error: Word not present in vocabulary. Check that the words entered are exactly the same as those in the vocabulary, and that there are spaces between words. N.B. Capital letters are counted as different from lower-case letters by SUPERTALK. SUPERTALK (C) Copyright David Aubrey Jones 2/1983. Unauthorised copying, hiring, lending use of either the whole or just part of this program is prohibited. All rights reserved. It is sold on this understanding.