Touch Tone Simulate By Chuck Thomka 1979 ARCADIAN, 1, no. 8 (July 1979): 65. Modification: ARCADIAN, 2, no. 10 (Sept 1980): 90. Documentation by Adam Trionfo "Touch Tone Simulate" allows the user to type in a phone number, and then dial it by placing a phone near the TV speaker and then pressing PRINT. The Bally Arcade will automatically dial the phone number. Make sure that when you use the program that your TV's volume is set to a high enough level so that your telephone can "hear" the TV. Program Commands are: PRINT - Play numbers in memory CLEAR - Clear memory ERASE - Erase one number Bell System's Required Frequency Guide: One column freq and one row freq per number pushed. Also I've added A to D if you have the 16 key keypad phone. Row Freqs +------+------+------+------+ Column Freqs | 1209 | 1336 | 1477 | 1633 | +------+------+------+------+-----+ | 1 | 2 | 3 | A | 697 | +------+------+------+------+-----+ | 4 | 5 | 6 | B | 772 | +------+------+------+------+-----+ | 7 | 8 | 9 | C | 852 | +------+------+------+------+-----+ | * | 0 | # | D | 941 | +------+------+------+------+-----+ Frequency Comments about line numbers: Line 300: 0= 1336.8Hz & 940.7Hz Line 301: 1= 1209.5Hz & 697.2Hz Line 302: 2= 1336.8Hz & 697.2Hz Line 303: 3= 1481.6Hz & 697.2Hz Line 304: 4= 1209.5Hz & 769.7Hz Line 305: 5= 1336.8Hz & 769.7Hz Line 306: 6= 1481.6Hz & 769.7Hz Line 307: 7= 1209.5Hz & 850.7Hz Line 308: 8= 1336.8Hz & 850.7Hz Line 309: 9= 1481.6Hz & 850.7Hz This program was typed-in on February 16, 2011 by Adam Trionfo. There were errors which have been fixed by Adam and Richard Degler. Also, this program will autorun when loaded into AstroBASIC with: :INPUT This document contains complete postings or excerpts of postings concerning "Touch Tone Simulate" made to the BallyAlley.com discussion group. The group is located here: http://tech.groups.yahoo.com/group/ballyalley/ Posted to on February 16, 2011 with the subject "Subject: "The Music Synthesizer" By Chuck Thomka:" The July 1979 issue of the Arcadian newsletter has the first part of a tutorial on pages 62-66 called "The Music Synthesizer" By Chuck Thomka. Part two of the tutorial is in the next issue of the Arcadian (August 1979, pages 71-73). Here is a direct link to the issue with the first part of the tutorial: http://tinyurl.com/4ptlc2r (or use the full URL:) http://www.ballyalley.com/newsletters/arcadian/arcadian_vol_1/arcadian_vol_1_is sue_08.pdf Here is a direct link to the issue with the second part of the tutorial: http://tinyurl.com/496gby9 (or use the full URL:) http://www.ballyalley.com/newsletters/arcadian/arcadian_vol_1/arcadian_vol_1_is sue_09.pdf In the past I've referred people interested in sound on the Bally to this tutorial because of its in-depth coverage of the "Music Synthesizer" chip and its ports. This article was written in the very early days of Bally BASIC and the understanding of the Bally Arcade was quite limited. I have a few questions concerning this article: 1) How accurate is it? Is it safe to say it's spot on, or did Chuck make some presumptions that were incorrect? 2) Is it an accurate presentation of the Astrocade's sound ports? I'm not sure if anybody will know this or not, but was this used for reference for long, or is there a better reference on the sound ports in the Arcadian? 3) Has anyone tried either of the two NON-archived programs that accompany the tutorials (perhaps way "back in the day)? The two non-archived programs are called: "Sound Graph" and "Touch Tone Simulate." Both of these programs were written for "old" Bally BASIC. "Touch Tone Simulate" accesses the sound ports directly and it allows you to make phone calls simply by putting your phone up to the TVs speaker (although ordinary NOW, that must have been extremely NEAT at the time the tutorial was written). Most BASIC programs created sound through loops or used the PRINT statement (okay, Brett Bilbrey and George Moses didn't use this method-- but these people were exceptions). Even AstroBASIC, which has sound variables, downplays the port method-- although it can still be used. I know that to use Bally BASIC sound programs in AstroBASIC you have to use NT=-1 to access the ports directly. Adam Posted to the BallyAlley.com discussion group on February 17, 2011 Paul Thacker wrote: >> you may recall that I have found one phone conversation with him so far-- Thomka_1-2-82_ (part_1) - A very technical discussion between Bob and Chuck Thomka about circuit frequencies. Time - 15:29 / Size - 15.1MB >> I just gave this a listen and Bob and Chuck are talking about this very tutorial that I've mentioned and the program "Touch Tone Simulate." So, good "find," Paul. Okay, really not a find, but you REMEMBERED it. I listened to about half the recording (maybe more), but I got frustrated and stopped listening to it as some places are hard to hear because of background noise such as phones ringing, people talking and dogs barking. If I HAD to transcribe it word for word then I suppose it could be done, but it wouldn't be easy. At one point Chuck explains that the frequency formula for the Master Oscillator in the Nutting Manual on page 103 will come up with frequencies that are three or four hertz off. He says that it probably won't mean anything, but if you use HIS formula "If you want to come up with a 1,000Hz frequency, then you'll come up with a 1,000Hz frequency." He said that his touch Tone program wouldn't work if he used the formula in the book, as you're only allowed 5Hz variation from standard frequency. Overall it is nice to have this recording and it might even have more useful information on there, but it's a little difficult for me to plow through. Also, they make references that are sometimes hard to follow. When Chuck referenced "the book," I knew that he meant "The Nutting Manual" because of the content of it and what they are talking about. If you just listened to the recording and were not familiar with the manual, you would have been lost for a couple of minutes as they reference page numbers and talk quite vaguely about what is on the page. I happen to have the "Nutting Manual" sitting on my desk so I was able to follow along quite smoothly. Thanks for pointing this recording out, Paul. Adam Posted to the BallyAlley.com discussion group on February 17, 2011 I finished typing in and debugging "Touch Tone Simulate" by Chuck Thomka. This program was written for Bally BASIC, but it works okay with AstroBASIC with the changes for NT=-1. I tried typing my cell phone's number from my home phone. I held my home phone up to the screen, and what do you know... my cell phone rang. It actually worked! The program DOES have some problems though. After the first number is dialed, there is still a very low sound leftover. Line 190 shuts off the volume for Voices A and B between touch tone pulses: 190 &(22)=0 After the phone number is dialed, there is still a slight tone. If I quit the program, the tone is still there. If I use NT=0, then the tone goes away. So, I tried adding NT=0 to the program, but for some reason it doesn't work (probably because it can't be used in conjunction with NT=-1, is my guess). I wasn't not sure what port needed quieting, so I hit them all with a sledgehammer and set all of them to zero in the program with this loop: FOR B=16TO23;&(B)=0;NEXT B This worked fine. So I tried turning off just the voices. Once I set the frequency of voices A and B to zero (ports 17 and 18), then the sound went away. I suppose this is because, even at the lowest volume of zero (port 22), the voice can still be heard-- this is what the article says. Is this correct? So I had to set the frequency of voices A and B to zero to correct for this. Using NT=0 would have been nice since I think it sets all of ports 16-23 to zero-- like my above loop. It would seem that a volume of zero doesn't mean ZERO. Whose crazy idea was that?!? This program was obviously put together in a quick and dirty manner by Chuck. The ERASE button, sorta works, but only in certain circumstances [Note that this was fixed by Richard Degler]. Also, there is no checking for valid input which has actually screwed me up a few times, as the program will crash when it tries to play a non-number. Rich Tietjens fixed some of these problems a year later with an update published in the Sept 1980 issue of the Arcadian. I'm going to incorporate these this program (plus my own fix, as the sound of voices A and B, even at a low level, is annoying to me). When I'm done I'll upload it after I digitally archive the program. Hey, I'm learning about sound and that is COOL! Next stop... Broadway! Posted to the BallyAlley.com discussion group on February 17, 2011 Oh, there was one other problem with "Touch Tone Simulate." Line 90 is: 90 TV=N, This should take what is in N and put it on the screen. Well, it does THAT, but then it chokes on the comma. I removed the comma and all is fine. I figured that after each number that was printed on the screen there would be a carriage return, but there isn't. It works just fine without the comma. With a PRINT statement, the comma would mean continuing printing on the same line. It seems to do this already with the TV statement, at least in AstroBASIC. Is there anything that I should know that the comma did in Bally BASIC when put after TV that might not occur with AstroBASIC? Oh, and this COULD be an error, as there was an error on line 60-- it was missing a semicolon. Man, it must have been frustrating to not know anything about BASIC when typing in a program. If it didn't work you probably ended up HATING computers! Adam This sums up all the discussion about "Touch Tone Simulate" that happened on the discussion group. The rest of the talk about the program happened between Richard Degler and I through private email. I will not be adding those messages to this document.