GOGO The Buston Computer Society
SINCLAIR/TIMEX USER GROUP NEWSLETTER
Volume 1, Issue 6 December 1982
This newsletter is produced to inform group members of the agenda and logistics for future meetings, as well as to recap and amplify the information provided at the last meeting. It also provides a forum for members and interested parties to communicate what they have learned or developed relating to Sinclair and Timex computer products. Meetings are open to the public; however, attendees are encouraged to join the Boston Computer Society (BCS).
NEXT USER GROUP MEETING
Date: Wednesday, December 15, 1982 Time: 7:00 p.m. Place: Large Science Auditorium
UMass, Harbor Campus (Directions on last page)
ACTIVITIES FOR THE NEXT MEETING
As promised, Mindware will provide the group with an update of their product line. Specifically, they will describe the "QUICKLOADING" algorithn that you may have read about in the advertisements.
One of the members has also volunteered to demonstrate the Sinclair printer he ordered from Gladstone, if he receives it in time.
As in past meetings, we plan to break up into groups to discuss topics of special interest following the formal presentations. Tentatively, we will break into an advanced group and a beginner's group.
PLANS FOR FUTURE MEETINGS
The date for the meeting in January has been changed to the 12th of January, the second (net third) Wednesday of the month. Sue Mahoney: will report on the Consumer Electronics Show (CES) being held in Las Vegas, Nevada ending that week. Of direct interest to us, Timex, and several Sinclair—Timex related companies, will be there. This is the show where new products are normally introduced,
ANNOUNCEMENT
Sue Mahoney has accepted the position of Technical Support Manager with the Timex Computer Corporation in Waterbury, Connecticut. In this position, she will be supporting sales, marketing, and the internal product development groups. In addition, she will be supporting local user groups and consumers through projects such as the 800-24-TIMEX hotline and the Timex Computer Club. She plane to relocate to Connecticut, but will stay active in the local BCS user group.
HELP! SEND IN YOUR SUGGESTIONS FOR ESTABLISHING OUR SOFTWARE LIBRARY.
HIGHLIGHTS FROM THE NOVEMBER MEETING
Last month’s meeting was well attended. Surprisingly, most attendees were new members. This bodes well for the BCS, which is already the largest independent personal computer society in the world.
Sue Mahoney introduced the BCS and the User Group, stressing again that we need and depend on volunteer effort to keep going. Sue also gave a "plain English" introduction of computer terminology, the Sinclair-Timex computer, and peripherals. Particularly delectable was her description that “the computer weighs 12 ounces, just like a soft-drink can, and the flat keyboard can withstand peanut-butter sandwiches."
The main speaker last month was Bob Masters, who described the - Sinekatr-Fimex ¥U-CALC-program (see his article-in this-issue). Bob used the program at work to verify Blue Cross Claims forecasts. His illuminating talk demonstrated why the spead-sheet program is so popular.
Also last month J. Michael Coughlin described a new product, the non-volatile static memory kit from Hunter Products, 1630 Forest Hills Drive, Okemos, ME 48864. At $32.00 postpaid, it is not less expensive than other RAMs, but it has a special feature. Two transistors sense when power has been disconnected and switch memory to a Lithium battery. The kit comes with 2 K of RAM and sockets for up to 6 K more. The RAM chips it uses are the HM 6116 LP-4, which have 2 K bytes and can be purchased for five to seven dollars. Jumpers are provided to map the memory to any region. The kit is not compatible with 64 K RAMs, since it only decodes 32 K. Delivery time was two weeks.
George Peterson talked about a cart that he designed and built. He makes it out of sturdy metal tubing and pieces of kitchen counter top -- the part cut out for the sink! He claims that cart-building is just a hobby, but if you make him an offer, who knows?
John Kemeny (no relation to Dr. J. G. Kemeny, co-inventor of BASIC) spoke about the newsletter exchange program. In San Francisco, several user groups “~~ —~have-joined-in-preducing a very delightful newsletter, SyncLink. Since the last meeting, the ZX Users Group of New York has sent a newsletter; and the Triangle Users’ Group in North Carolina is getting organized.
TO ERR IS HUMAN
A dead insect caused a program on an early vacuum tube computer to crash. Since then flaws or errors in computers which cause results other than that desired have been called "bugs." Hence, the term "debugging." it is safe to say all large computer programs contain bugs. Bugs vary in severity from
minor annoyances to major flaws.
The ROM in the ZX-81 and TS-1000 contains a computer program. This program decodes keyboard entries, checks the syntax of BASIC statements, interprets statements when a program is run, and more. The 2X-81 ROM is identical to that in the TS-1000. The ROM has been around for a couple of years, so most of the bugs have been removed. Nonetheless, it contains bugs. In the article below and in articles in future issues of the newsletter, we will describe the bugs we’ve found. If you catch a bug, let us know.
BUG #1 (8 K ROM)
This bug will probably not sting you unless you are trying to interface circuits of your own design with the computer, and only then if you cause something to happen when you read from a particular address,
The bug occurs in ROM in the main display routine (which creates the TV picture). A variable called FRAMES is decremented 60 times a second whenever there is a display, In addition, code at 0229 hex loads FRAMES into the HL register; and code at 0237 hex loads the B register from the address contained in HL. The net effect is that the contents of each memory location is sequentially loaded into the B register. (All memory may be read, but I only verified that this occurs on the top 32 K.)
Why is this a bug? Remember our definition of a bug -- any program characteristic that caused a result other than that desired. Your editor designed a circuit which caused an external event whenever a particular address was. read. (What-I- was-trying to do is not revelent to the current discussion; perhaps it can be the subject of a future article.) I had planned to use PEEK( X ), where X was greater than 32,768, to cause the external circuit to perform its function. Since the computer reads from all memory locations, the circuit was activated erroneously about every 9 minutes.
We are calling this a bug because there is no reason we could find for the computer to be reading memory. If the instructions were selected for some critical timing purpose, other instructions, which don’t read all of memory, could have been used. It has also been conjectured that this code was inserted to help debug the hardware and was never removed.
THE ANSWER TO LIFE, THE UNIVERSE, AND EVERYTHING (8 K ROM)
Many people think computers are a black boxes with answers in them, and that programming is a way of extracting answers from the computer. On the TV series, Hitchhiker’s Guide to the Galaxy (a BBC production broadcast on PBS), the second greatest computer of all time answers "the" question. It took 7 1/2 million years to run the program to completion.
Fortunately, we had a monkey typing at random on our computer, and it came up with a program which answers "the" question in only a few minutes. I was frankly disappointed with the resuit. But, anyway, here is the program:
1 LET A$="I-SQR IDEXP(-PI*I)/PI**2" 10 PRINT "ENTER YOUR AGE™_ 20 INPUT I
40 PRINT ,,,,"THE ANSWER TO LIFE, THE UNIVERSE, AND EVERYTHING IS "; 42 LET I=vAL A$ (3 TO 4) 50 IF VAL A$ THEN GOTO 42 60 PRINT (STRS§ (VAL AS (6 TO 12))(3 TO 4) 70 PRINT "ENTER A FRIENDS AGE” 80 GOTO 20
The answer is, of course, a number. In case you do not believe that there is a number which answers the mysteries of the Universe, I refer you to Martin Gardner’s column in the November 1979 issue of Scientific American.
VU~CALC by Robert Masters
VU-CALC is Sinclair’s spread-sheet program. It essentially replaces the accountant’s analysis sheets. It is a table made up of boxes. Each box can contain a number, a label or title, or the result of a formula that is attached to the box. Each box has up to 8 characters of information.
The VU-CALC table is 36 columns across and 26 rows down, giving 936 boxes. Displayed on the screen is a window of 3 columns by 9 rows. It is easy to move around and change the location of the window by using the four arrow keys (unshifted 5-8).
Forty formulae are allowed on the table. This. sounds like a limited number until you understand the powerful use of formulae in VU-CALC. It took me several hours. A formula can be set in many boxes. A “relative” formula will act as a template and change the boxes it references as the formula is moved around. A single instruction will assign a formula to an entire row or column of boxes.
A formula can be up to 32 characters long. It can be constructed with numbers, box references, parentheses, and the four operations: +, -, *, and /.
After data, titles, and formulae have been assigned, a calculate instruction is entered. This evaluates all formulae and places the results into the boxes where the formulae are attached. The calculation time will vary from a few seconds to about a minute -- depending on the number and complexity of formulae. The calculation in VU-CALC is done sequentially by row, making it critical that a formula only references boxes above and to the left of the box it is attached to.
VU-CALC Strengths
1. Economical. $14.95 + postage from Sinclair, $19.95 from the local Timex retailer.
2. Reliable. Program loaded on first effort and has run reliably. I found
no bugs in the program (it’s mostly machine language). After a couple of
months, my copy of Sinclair VU-CALC had the tape bind in the cassette. it did --—----_not—load_after_that, but I had made other copies.
3. Easy to Use. Most instructions are single keystrokes that work logically and quickly. It tock me a while to get used to the instructions. There is good error trapping. TI have never had to unplug and load again.
4, Fast. The instructions, including calculate, work quickly. The performance is surprising. Entering your data and titles can take quite a while, but that is a function of the amount of information entered.
5. Good Utility. The program can be put to practical use.
6. Powerful. VU-CALC is suprisingly powerful, especially in its use of relative formulae.
VU-CALC Weaknesses
1. Small Window. I would like to be able to see more of the table at one time. The window is limited by the screen size.
2. Table Flexibility. Once data is set, it cannot be easily moved around the table. For example, data in rows or columns cannot be exchanged.
3. Titles. The window can not be made to keep titles over rows and columns. It was sometimes difficult to remember my position on the screen. Row and column numbers are maintained on the screen as location indicators.
4. Left Justification. I am used to seeing numbers with right justification or centered around a decimal point.
VU-CALC Example
The figures below show two screens from a budget. The cursor is in box AO] in Figure 1 and box DO4 in Figure 2. The "L" command loads numeric data or labels. Note the eight place accuracy (longer strings are truncated). Also note no dollar signs were used in the data. The formula attached to box DO4 is displayed at the bottom of Figure 2. This formula was declared "relative" and attached (in one operation) to all the boxes in the fourth column between rows D and I. After entering the values for columns 2 and 3, the CALCULATE command computes the balances.
Figure 1 Figure 2
VU-CALC Summary
VU-CALC is an excellent purchase that I recommend, Three actions should be taken to minimize the weaknesses and maximize the performance you get:
1. Carefully draw out and plan the table before entering data and formulae.
I developed a planning sheet which greatly aided data and formula entry by acting like a map.
2. Regularly repeat title boxes in order to have a reference that is always on the screen.
3. Work at fully understanding how formulae are used before developing the first serlous application.
Special Report by Robert H. Cushman With Thanks to David Grundy, Ferranti Electric (U.K.) Reprinted from EDN, November 1982 © CAHNERS Publishing Co.
Gate arrays eliminate TTL glue in a high-volume product
In some designs, a gate array can efficiently and economically re- place assorted SSI and MSI TTL. In the Sinclair personal computer, for example, designers had to combine 17 TTL parts in one Package to achieve a retail price of less than $100. Use of a gate
The functions to be integrated were unusually diverse, including an oscillator for the computer's 280 LP, a video interface (US and European TV standards), two cas- sette interfaces and memory- control circuitry. The designers
used a Ferranti bipolar gate array, partially because the Ferranti Process accommodates some lin- ear Circuits and partially because it's sufficiently simple to reliably turn out millions of units per year (it requires only six steps). According to Ferranti, this appli- Cation represents a design situa- tion where a gate array is as economical as a full-custom solu- tion, even if volume rises into the tens of millions of units. The reason? A large number of func- tions are being integrated, and each requires its own I/O. The
final chip size (130 mils square) was determined by the number of required pads, and even though using a fully custom design would have produced a 30 to 40% smaller active area than that of the gate array, the chip size would have remained the same.
Although Sinclair won't release actual cost figures, EDN specu- lates that the gate array costs $0.01 per gate. For 500 gates, this comes to $5. At the millions-of- units-per-year sales level, this price should drop below $5.
REGULATOR,
GATE ARRAY
(a). The redesigned unit (b) uses only four ICs: the Z80, the 24-pin ROM (in a @ 4718 byte-wide RAM and a Ferranti ULA 810 2 gate-array IC.
101
ROM TEST
Often I marvel at the amount of information stored in my computer -- both in RAM, a user changeable random-access memory, and in ROM, a fixed, read-only memory which makes user programs work. In the ROM, 8 K bytes of program and data are stored. This is 8 x 1024 = 8192 bytes or 65,536 bits of information. Each bit is either a 1 or 0 depending on what the designer wanted to do.
If one of those 64 K bits were in error, would the computer operate properly? It is conceivable that the error would be such that it would never be noticed. However, it could cause the computer to bomb. ROM errors don’t occur frequently, but I felt I needed a means of reassuring myself that my ROM did not contain an error. Thus, I devised a ROM checksum. This error checking technique is similar to "Syncsum" in Sync or "Syntactic Sum" in Syntax (which are used to verify correct program entry). The program is capable of running on any Sinclair or Timex computer.
5 LET K=8 seas HG, 10. LET A=0 20 LET B=0
30 FOR I=1 TO 1024*K
50 LET A=A+PEEK(I-1)
60 IF A<1000 THEN GOTO 90 70 LET B=Bt1
80 LET A=A~1000
90 NEXT I
100 PRINT B;A
Using this program, which takes a few minutes to run in FAST mode, I got the checksum, 855106. So did several of my friends. This indicates that we probably all have the same ROM (the test is not foolproof). If you have the old 6 K ROM (the one with known bugs in it), let us know what sum you get. This technique could be used to identify ROMs. Changing line 5 to LET K=4, the sum is 428876. With a 4 K ROM (ZX-80) and K=4, the sum is 390829.
G#L*S "SZ"!
If you publish programs, you will publish bugs. Well, there is one in the Tholean Web program from our last newsletter. In the second program, “three-dimensional looking...," you need to change line 50 to
50 LET X1=21 - LEN PS
Without the change, the program tries to write below line 20 and terminates with error 5. Also, we should have suggested that lines 115 and 135 on the bottom of the page be added to the original program. It is easier to observe the "bouncing" ball with the simplier pattern.
Finally, we forgot about people with 1 K RAM (sorry). Since a full display takes 768 bytes, it is nearly impossible to run any program in al K system which uses the entire screen. Delete all REM statements and modify lines 50 and 60 as follows:
50 LET X1=10-LEN PS 60 LET Y1=12
HINT: When memory is nearly full, a line that you EDIT will not be displayed (it is there, but the TV picture is cropped). To see what you are doing: LIST the line, then immediately EDIT.
ANY REVIEWERS OUT THERE?
There are many books coming out on the Sinclair-Timex computer. Wiley Publishing just introduced Byting Deeper into Your TS-1000/ZX=81 for $12.50. In addition, Thomas A. Bell, editor of the General Books Division of Addison-Wesley Publishing, said they are co~publishing, with the New American Library, an entire series of paperbacks in the $3.50 to $7.00 range.
FOR MORE INFORMATION
Sue Mahoney, Director of the Sinclair/Timex User Group c/o The Boston Computer Society or call (203) 573-5816.
Cliff Danielson, Newsletter Editor 14 Davis Road, Chelmsford, MA 01824, (617) 256-4638.
John Kemeny, Contributing Editor & Correspondent With Other User Groups 284 Great Road, Apt. D5, Acton, MA 01720.
DIRECTLONS TO THE MEETING
The Sinclair/Timex User Group meets in the Large Science Auditorium (Room 8/2/009) of the University of Massachussets of Boston, Harbor Campus. The Harbor Campus is only three miles from downtown Boston and easily accessible by public and private transportation. From the north or west, take the Southeast Expressway to Exit 17. Turn left onto Columbia Road. Enter the rotary and take the first right (Morrissey Boulevard). Bear right on the traffic island, following UMass/Boston sign. Turn left into the Campus. From the south, take Morrissey Boulevard northward to the campus. On the MBTA, take the Red Line (Ashmont Train) to Columbia Station. Transfer to the free University shuttlebus in the T parking lot.
IMPORTANT NOTICE ! 1! If the mailing label on this newsletter is handwritten, then you are not on the mailing list of the Sinclair-Timex User Group. You need to either join the BCS or, if you are a BCS member, contact Mary McCann in the BCS office to be added to the Sinclair-Timex mailing list.
OS'The Boston GOOComputer Society Three Center Plaza
Boston, MA 02108 617-367-8080