Skip to main content

197610 Byte Magazine Vol 00 14 Ham Radio

  • PublicationBYTE
  • Pages148
  • Source197610_Byte_Magazine_Vol_00-14_Ham_Radio.pdf
← Magazines 197610 Byte Magazine Vol 00 14 Ham Radio
/ 148
Source: VintageApple.org — Complete 1975–1998 run, restored by Steve M.
Page 1
Loading…
Text content (OCR)
ISSUE NUMBER 14 $1.50 IN NORTH AMERICA ($2.50 elsewhere) OCTOBER 1976 the small systems journal PRINTED IN USA Eh Our computer There is simply no point in trying to hide it, everyone is going to find out sooner or later anyway. The Southwest Technical Products 6800 computer is a big bore. Discussions with customers and dealers have confirmed our worse suspicions. At first people thought that perhaps owners of our system were just a bit shy because they were outnumbered at local computer club meetings. But then as the number of owners rose it be- came clear that this was not the pro- blem. And it wasn’t that they were un- sociable or anything like that; they were simply just bored because they had nothing to talk about. Here they were, just sitting there while all the other members with other brands of computers exchanged data on circuit board errors, secret schemes of adding extra bypass capacitors to make the thing reliable, tricks to keep the clock phases from overlapping, cor- rections to manual errors and other fun subjects. Can you imagine the frustra- tion this caused? All our customers could do was to sit and be bored. They had nothing to talk about. Our 6800 has an internal monitor ROM that automatically puts the boot- strap loader in memory and refers con- trol to the terminal, when you power up. This feature deprives you of the chance to tell sad stories of how many Vi same 6800 S270" § NO OU is a bore— times you had to go back and flip the console switches before you got the loader program in right. Since you can do machine language programs direct- ly from your video terminal or teletype in hexidecimal form, you will not have a chance to exchange horror stories with your friends about how you for- got the last zero when you entered 10100110 from the console on your 374th Byte and messed up the program that had just taken you two hours to put into memory. It just isn’t fair. Since we use full buffering on all data, address and control lines on all boards in our system and since we use low power 2102 static memories in our system, there are no noise sensitivity problems that can lead to hours of fun trying to figure out why a program “bombed”. Dynamic memories that some others use can drop bits, fail to refresh random cells, cause programs to do crazy things by going into a refresh cycle at the wrong moment and all kinds of interesting things. Our poor customers will never have a chance to have these interesting experiences. Even our documentation and software is no help. Not only do we have the most complete and thorough set of instructions available for any system, we are supplying software either free, or at crazy low prices. Our big documentation notebook for instance a H i H H ing” computers. NAME ESUTON is just full of information on the sys- stem. There are complete sections on software with sample programs and information on programming. We have no assembly instructions in that big yellow notebook. They are packed with the kits themselves. The note- book is completely devoted to instruc- tion on using your computer system. You are therefore not going to be spending day after jolly day trying to find out how to put a program into your machine; researching all available outside literature in an attempt to dis- cover just how you write software for the beast. Sorry about that folks, we didn’t mean to spoil all your fun. So please, have a heart, when you see those poor lonely souls that have pur- chased our systems say “hello’’. All they have to keep them interested in computers is writing and running pro- grams. Our editor, assembler, 4K and 8K BASIC programs work so well that even this is quick and easy. So be kind to those poor bored SwTPC-6800 owners, it’s not their fault that they have nothing to talk about. Sule! SS00 Computer System with serial interface and 2,048 words $395.00 of memory. 1 | don’t like puzzles anyway and have no free time to be bored so send information on your 6800 computer system and peripherals. (© Thanks for warning me. Send names of manufacturers of “interest- ADDRESS. city STATE, ZIP, Southwest Technical Products Corp., Box 32040, San Antonio, Texas 78284 ae oe crime waar The 2 or 4 MHz clock fis cull icracacate te anu ate above has some ‘of its own. Ams - Yes, the new ZPU is plug-com- - romemco Specialists in computer peripherals — 2432 Charleston Rd., Mountain View, CA 94043 © (415) 964-7400 —— —— ee 4 MHz speed The only CPUcard to give you About the Cover As a way to highlight the history of electronic digital signalling, we dug up a picture of one of Joseph Henry’s original telegraphy keys, circa the early 1800s. Robert Tinney then placed the key in the frame and wall setting you see on the cover, using a photo supplied by Brian McCarthy. In This The problem of decoding arbitrary hand generated Morse code is not a trivial one, It requires some care and thought in the design of adaptive algorithms. As one contribution to this issue’s sub theme of computerized Morse code, Lt William A Hickey, USN, provides some background infor- mation and suggestions on the subject. W J Hosking, W7JSW, is an amateur radio operator in search of applica- tions hardware and software. Read about A Ham's Application Dreams and find out how to implement one aspect of his dream with the Morse code input and output conversion technology described in detail in the balance of this issue... . A theme of this October issue is the application of microcomputers to the decoding of Morse code. One approach to the problem is detailed in Robert Grappel and Jack Hemenway’s article on MORSER...a program to read Morse code, implemented with a Motorola 6800 computer. BUTE Lawrence Krakauer describes a tech- nique to store Morse characters as a packed table of bit patterns for ma- chine generated outputs — or for machine decoded inputs. If Only Sam Morse Could See Us Now. He’d have a fistful of problems trying to copy radio transmissions at 1000 wpm generated by programs such as Wayne Sewell’s CWBUFFER subroutine. But, using one of Wayne’s set of sundry drivers for CVBUFFER, Mr Morse could potentially learn to copy — or at least have his computer copy — in a code practice mode. One application of the Morse code problem solvers is documented in Bruce Filgate’s article on Morse Code Station Data Handler. This is an appli- cation program which handles direct sending of Morse outputs, from character text, adaptive interpretation of Morse inputs, storing of fixed mes- sages (eg: ‘CQ CQ CQ DE WIAW’) in a message buffer for later transmission or repetitive transmission, etc. Bruce has put it all together in the form of a comprehensive 1536 byte program for an 8008. In the Queue is on page 7 this month. Once you sit down and Build This Mathematical Function Unit as de- scribed in part one of R Scott Guthrie’s two part article, the world of high level mathematical functions is opened to your microcomputer. In part two this month, the software needed to interface with the calculator is described, as well as several test loops used to adjust timing parameters with an oscilloscope. As a final illustra- tion of the calculator’s use, the author provides a program called CALCULA which enables a Teletype (or other ASCIl) port to drive the calculator and print results, simulating the ordinary hand calculator level of operation. National Semiconductor announced the PACE computer some time ago, but until recently it has been some- what hard to obtain. Now that this 16 bit minicomputer is beginning to enter its volume production stage, we Keep PACE With the Times by offering Robert Baker’s Microprocessor Update on this processor. If you missed the convenience of your familiar 16 bit minicomputer when you started reading about and “dry run program- ming” for personal computing, then the PACE processor might be a logical choice for a homebrew or kit system. The advent of the personal system portends a fundamental change in the ways computers are used. In Home- brewery vs the Software Priesthood, David Fylstra and Mike Wilber make some comments about the impact of widespread use and knowledge of com- puters. Looking for ideas for meetings of your local computer group? Dr Charles F Douds has a few suggestions to make in his background article on the subject this month, KIT-A-MONTH The Altair kit-a-month plan allows you to own an Altair mainframe without taxing your pocketbook. Mits has made it easy for you to purchase an 8800a, 8800b or 680b computer in monthly installments where you receive compon- ents with each payment. There are no financial charges because we have made each monthly shipment a kit in itself. This will give you time to read up on com- puters and/or gain knowledge from friends. We have set up an Altair kit-a-month payment desk to service your needs. When writing or calling the factory for information about your shipment or account, just refer to the “kit-a-month payment desk*’ wr *< NU & MTS OG OO © OWN YOUR 680b IN FIVE EASY PAYMENTS. ist month 680b Manuals, Main and Display PC Boards, and membership in users group 2nd month 680b Case and Power Supply 3rd month —_- Parts for 680b Display Board 4th month Parts for 680b Main Board less Integrated Circuits 5th month 680b Chips $93.20 plus $2.00 per month make your payments $95.20 per month and you have your complete kit in five easy payments. This plan gives you the full 680b with memory and I/O. The BAUDOT Option ts still $42.00 extra and may be purchased with Time Payment #4 or #5. Remittance of $95.20 will start you on your way to owning your own computer. Alaska, Hawaii, APO and FPO customers include $3.00 per month for Air Parcel Post charges instead of $2.00 for regular Parcel Post shipment. This would make your payment $96.20 per month. Canadian customers include $3.00 per each month for postage and handling fees. NOTE: This pian does not apply to foreign sales other than Canada. NEW ALTAIR 8800B Available on Time Payment Plan $105.00 payment per month plus $2.00 postage and handling for each kit makes an easy $107.00 per month to own the newest of the Altair processors. Send in your first $107.00 money order and start receiving your 8800B Kit by August 1, 1976. 8800B Month #1 Manuals #2 EcC-18 #3. Power Supply Board & Parts #4 Transformer #5 Display Board & Parts #600 «Case #7 Main Chips #8 CPU Board & Parts Less 8080A Alaska, Hawail, APO and FPO customers please include $4.00 for shipping charges (making $109 per month payments) for Air Parcel Post shipment. Otherwise, shipment will come Parcel Post, not insured. Canadian customers must accept month #6 Emery Airfreight Collect. All other months must include $4.00 postage and handling making monthly payments of $109.00. $79.00 / Month ALTAIR 8800A TIME PAYMENT PLAN 8800A Time Payment #1 8800A Manuals and Users Group Membership #2 EC-18, PC Board and Hardware #3 8800A Power Supply Kit #4 8800A Case #5 CPU PC Board and Bag of Parts less the main chip #6 © Main Processor Chip #7 Display Control Board and Parts The price of the Altair 8800A mainframe is $539.00. Seven easy payments plus $2.00 per month for postage and handling charges make this plan equal $79.00 per month. Upon receipt of your first $79.00 payment you are on your way to owning your own 8O80A basic computer system. A list of available com- patible peripherals is enclosed to let you plan your system as you learn about your microprocessor. By 8800A Time Payment #7 you're ready to go. Alaska, Hawali, APO and FPO customers please include $4.00 for shipping charges (making $81 per month payments) for Air Parcel Post shipment. Otherwise. shipment will come Parcel Post. not insured. Canadian customers must accept month #4 Emery Airfreight Collect. All other months must include $4.00 postage and handling making monthly payments of $81.00. KIT-A-MONTH ORDERING INSTRUCTIONS In order to smoothly and efficiently expedite your orders, we ask that you note the following helpful hints: 1. Send all payments other than BankAmericard or Master Charge in the form of a cashier’s check or money order. Personal checks are acceptable, but clearance time will delay your order by 2-3 weeks. 2. The kit-a-month plan has been set up to proceed in order and we cannot deviate from that order. You can help us by noting with your payment what month you are on. 3. When calling or sending in orders, refer to your customer name on the original order and also your Mits order number. 4. If you change your address, keep your name as it is on the original order to keep records straight. 5. Please note special instructions for Alaska, Hawaii, APO, FPO and Canadian customers. If these are not followed, it could result in delays in proc- essing your order. 6. The Kit-a-Month desk has been set up to help expedite your orders because of the overwhelming response we've had with previous time payment plans. Please feel free to use this service whenever you have questions. When writing letters to Mits, simply note “Kit-a-Month desk” on the outside of the envelope. NOTE: Once you start the Kit-a-Month plan you are guaranteed the existing price at the time of your first order. You will not be affected by price increases. Enclosed is my payment of ______ for the first shipment of my Altair kit-a-month. Master Charge #______-———S or BankAmericard #~ >> Altair 680bC] Altair 8800a7] OAltair 8800b ! 1 1 1 1 1 1 1 1 ! | | ! | | 1 NAME. if 1 1 1 ADDRESS. 1 ! I 1 ! ' 1 I 1 ! 1 ! 1 1 1 I 1 CITY STATE & ZIP Ps) GOBS3/2450 Alamo SE/Albuquerque, NM 87106 505-243-7821 In the Queue < BUTE #14 OCTOBER 1976 staff Foreground 30 ADD THIS 6800 MORSER TO YOUR AMATEUR RADIO STATION Applications — Grappel-Hemenway 42 IF ONLY SAM MORSE COULD SEE US NOW Applications — Sewell 52 A MORSE CODE STATION DATA HANDLER Applications — Filgate 74 BUILD THIS MATHEMATICAL FUNCTION UNIT—Part 2 Software — Guthrie Background 12 THE COMPUTER ... VERSUS... HAND SENT MORSE CODE Applications — Hickey 26 A HAM'S APPLICATION DREAMS Speculation — Hosking 36 EFFICIENT STORAGE OF MORSE CHARACTER CODES Applications — Krakauer 82 KEEP PACE WITH THE TIMES Hardware — Baker 90 HOMEBREWERY VS THE SOFTWARE PRIESTHOOD Philosophy — Fylstra-Wilber 118 MEETING ACTIVITIES FOR COMPUTER CLUBS Organizations — Douds Nucleus 2 In This BYTE 9 The Concertina System 16 Letters 41 Software Bug of the Month 5 81 Some Historical Notes a 86, 110, 126 What's New? Romthiy by BYTE. Publica 95 BYTE’s Bits nr rae eae 96 Classified Ads See ee ee eee tor tae 99 Programming Quickies yours, e004 for three years Jn 0S Book/Reviews $53 twee secre, Second class ie ml oprs SEUSS St eaaitona 107 Travelogue mailing offices: Ehone 116 Excerpts from Future History tents copyright 1976 BYTE Publications Inc, Peterborough 130 Clubs, Newsletters NH 03458. Address editorial 144 Boma BYTE TO Main st, Peter 144 Reader Service borough NH 03458. ———» PUBLISHERS Virginia Peschke Manfred Peschke EDITOR Carl T Helmers, Jr GENERAL MANAGER Manfred Peschke PRODUCTION MANAGER Judith Havey CIRCULATION Deborah R Luhrs DEALER CIRCULATION Deena Zealy PUBLISHERS ASSISTANTS Cheryl Hurd Julie Nelson Carol Nyland Kim Place ADVERTISING Elizabeth Alpaugh Virginia Peschke TYPOGRAPHY Custom Marketing Resources, Inc Goodway Graphics Mary Lavoie Taimi Woodward PHOTOGRAPHY Ed Crabtree Custom Marketing Resources, Inc ART Matthew Arnold Mary Jane Frohlich Lynn Malo Bill Morello PRINTING The George Banta Company Custom Marketing Resources, Inc ASSOCIATES Bob Baker Dan Fyistra Harold A Mauch Chris Ryland PRODUCTS COORDINATOR Floyd W Rehling TECHNICIAN Melvin G Weir CONSTRUCTION Walter Pence If you thought a rugged, professional yet affordable computer didn't exist, think IMSAI 8080. Sure there are other commercial, high-quality computers that can perform like the 8080. But their prices are 5 times as high. There is a rugged, reliable, industrial com- puter, with high commercial-type performance. The IMSAI 8080. Fully assembled, it’s $931. Unassembled, it’s $599. And ours is available now. In our case, you can tell a computer by its cabinet. The IMSAI 8080 is made for commer- cial users. And it looks it. Inside and out! The cabinet is attractive, heavy-gauge aluminum. The heavy-duty lucite front panel has an extra 8 program controlled LED's. It plugs directly into the Mother Board without a wire harness. And rugged commercial grade paddle switches that are backed up by reliable debouncing circuits. But higher aesthetics on the outside is only the beginning. The guts of the IMSAI 8080 is where its true beauty lies. The 8080 is optionally expandable to a substantial system with 22 card slots in a single printed circuit board. And the durable card cage is made of commercial-grade anodized aluminum. The IMSAI 8080 power supply produces a true 28 amp current, enough to power a full system. You can expand to a powerful system with 64K of memory, plus a floppy disk con- troller, with its own on-board 8080-and a DOS. A floppy disk drive, an audio tape cassette input device, a printer, plus a video terminal and a teleprinter. These peripherals will function with an 8-level priority interrupt system. IMSAI BASIC software is avail- able in 4K, that you can get in PROM. And a new $139 4K RAM board with software IMSAI 8080 memory protect. For the ultimate in flexibility, you can design the system for low-cost multiprocessor, shared memory capability. Find out more about the computer you thought didn’t exist. Get a complete illustrated brochure describing the IMSAI 8080, options, peripherals, soft- ware, prices and specifications. Send one dollar to cover handling. Call us for the name of the IMSAI dealer nearest you. Dealer inquiries invited. IMSAl IMS Associates, Inc. 14860 Wicks Boulevard San Leandro, CA 94577 (415) 483-2093, Dept. B-10 The Concertina System Editorial by Carl Helmers The often asked question of the personal systems cynic is ‘What on earth do people do with home computers?” In many ways this question is analogous to what might have been asked by automotive skeptics in the early part of this century: “What on earth do you expect people to do with automobiles?” Fifty to 60 years of history have answered the latter question in numerous concrete demonstrations, and one can only expect the coming decades of computer evolution to answer the former question in numerous ways. Of course the simplest reply to the first question is “Compute!” and is as empty of content as the analogous reply for auto- mobiles, “Drive!”. Computing without a purpose is like driving without a destination, an intrinsically enjoyable pastime on occasion but hardly touching upon the set of possibilities inherent in digital computation and control. The key to a broadened per- spective on the computer and its place in human activities is the concept of the application. An application for the computer is like a destination for an automotive trip. If | set in my mind the goal of driving down to Boston for an evening in Symphony Hall with Arthur Fiedler, the Boston Pops and company, my automobile has now acquired an “application.” Similarly, if | decide to customize my computer system as a vehicle for editing and playing music, a very ordinary and garden variety Motorola 6800 plus memory and peripherals has acquired an “application” whenever | choose to use it for that purpose. (Like an automobile that can be driven anywhere without reason, the true general purpose computer need not be exclusively dedicated to one applications goal.) The concept of music played using com- puters is an excellent focal point to demonstrate practical uses for personal computers. Here is a specific application of the computer technology for very human purposes, a concrete argument to throw at the skeptic and cynic. The choice of a musical application goal, like the decision to drive to a concert with an automobile, makes the technology come alive with human values. The traditional concertina is a simple pneumatic acoustical instrument similar to an accordion. The pneumatic concertina is hardly a widely known or used instrument. In a hand held package with control buttons, it gives the player an ability to create a fairly rich timbre similar to a reed organ or a harmonica. Like all instruments, it requires an element of virtuosity to play at all well, but within its limitations it makes an interesting vehicle for musical expression. The relative obscurity of the original concertina instrument, the harmonically rich nature of its timbre, noting its use by a single (good) artist in creating a polyphonic output, and most of all, falling in love with the smooth sound and etymological roots of its name leads me to propose the name “concertina system” for a musical instru- ment based on a personal computing system integrated with musical software and peripherals. The concept of the digitally controlled musical instrument is not new, but the technology which makes it possible at a reasonable price is as new as the whole LSI computer technology. For about the same price that you or | would pay for a virtuoso quality home electronic organ, it is possible to add a music playing peripheral to a computer system which will allow the owner to accomplish musical performance feats unheard of on an organ or traditional instruments. As of this writing, | know of two companies which are in the process of preparing products which can simply convert an existing computer system into a polyphonic synthesizer with the potential (with software) of becoming a truly playable concertina system, One company is located in Arizona and is said to be designing an Altair compatible plug-in card with several polyphonic channels of digitally controlled music output. Another company, ALF Products, 2130 Bell Ct, Lakewood CO 80215, is in the preproduction prototype stages of preparation to market a modular computer controlled synthesizer which inter- faces to any existing computer by using the two programmable ports of a single PIA chip. (Most existing computers have pro- visions for a “PIA card” with one or more such “parallel interface adapters” together with appropriate plugs.) The ALF design has 8 fully programmable music channels with an option to add 8 less versatile ‘‘back- ground” channels to achieve the potential for a truly orchestral sound, There are undoubtedly additional in- dividuals and companies working on similar systems and products which can simply and inexpensively (relative to costs two to three years ago) add a minimal concertina system capability to the typical home computer system. Readers will find more information on this subject as the products become better defined and reach the marketplace; we also expect to publish articles on the technology of computer controlled musical instruments (experimenters and potential authors: take note). If you have a computer, you have 75 to 90% of such a “concertina system” already available. All the contro! and data manage- ment power needed to implement a rela- tively simple and quite functional polyphonic music interpreter is present in a microprocessor system using chips such as the 8080, Z-80, 6800 or 6502 with several K of applications program memory (I use 12 K myself for interpreter and text area, but it would certainly be possible to program a usable system with as little as 4 K memory.) The system also requires a video output Word Gets Around... The personal computing field is getting some attention as the amount of activity creates some micro ripples in the big pond of things people do. An article in the July 12 issue of Business Week featured Paul Terrell’s Byte Shop computer store in Mountain View CA. Paul’s shop is one of the largest retail outlets among the more than 250 stores coast to coast which regularly stock BYTE. Also, lvan Berger, electronics and photog- raphy editor of Popular Mechanics magazine, reports in phone conversation that he has scheduled a short feature article on home computers, their present and future prospects, in the September Popular Mechanics. There have of course been several local and national newspaper stories lately. As products improve and the market expands, we should see more and more examples of public awareness of computers documented in the press and other media, a welcome trend indeed.™ display, ASCII text keyboard and a pair of audio cassette drives with motor control via relays and a data rate of at least 300 baud. Obtaining better mass storage peripherals such as floppy disks, 3M cartridge drives or high speed electronically controlled Philips cassette decks is of course highly desirable. This use of the computer system, while requiring a dedicated peripheral, is com- pletely consistent with the concept of the general purpose personal system, for when the system is not being used for music, programs with other purposes can be employed. Many typical uses require such a peripheral specific to the application; many other applications such as record keeping, calculation, text processing, mathematical and simulation games, and so on merely require the general purpose computing sys- tem composed of processor, programmable memory, text keyboard, video display and mass storage on magnetic media. The “concertina system” concept is but one of innumerable answers to the critic’s question of “What do you really do with a home computer?”’™ Size and Finesse Perhaps you’ve noted a moderate expan- sion in the size of your monthly mouthful of BYTE, along with the addition of some colorful spices to make each BYTE more flavorful. Switching metaphors, a magazine such as BYTE is in many respects like a very large and complicated program design. The first concern was and is to fill a high quality technical magazine with good useful infor- mation and fun, once a month. This is the algorithm we have used very successfully and continue to use. But, like the large program, although the basic algorithm design is not subject to major changes there are always new features, incremental improvements and parameters to adjust. Striving for the “best possible BYTE” is an ingrained part of our philoso- phy, where ‘‘best’’ is defined as serving the needs of our customers in this specialized field. In the area of improving the product, recent increases in the size of each BYTE reflects a synergistic combination of sub- scriber and advertiser support. The added spice of color printing on interior pages is directly a result of support from advertisers, who make such support possible because of our readership. We’re still experimenting with this new possibility of highlighting and enhancing technical articles but the presenta- tion should continue to improve.# 10 _ And now minis too! All from a catalog, at discount prices. Digital’s Direct Sales Catalog — the first catalog to offer com- puter products by mail with off-the-shelf delivery — was sucha success, we've come out with an expanded second edi- tion that includes the PDP-8A, the newest member of the world’s most popular mini- computer family. We’ve also added the LA180 line printer and expanded the sections on microcomputers, logic modules, terminals, cab- inets, connectors, accessories, and supplies from the first edition. Of course, you still get our 5% catalog discount, plus another 4% for cash with your order. You also get a 10-day free trial period, plus our stand- ard 90-warranty. (Since we're selling by mail, you do have to install the equipment yourself.) If you were among the thou- sands who ordered our original catalog, you'll get the new one automatically by mail. If you weren't, why not sign up now? For your free copy, call 800- 225-9480 (Mass. 617-481-7400 ext. 6608). Or write: Components Group, Digital Equipment Corp., MR2-2/M59, One Iron Way, Marlborough, MA 01752. (Catalog sales to U.S. only.) The Computer... Versus... Hand Sent orse Code sy ieur FROM RECEIVER 4 2700 LEVEL NES67 8 S300 ae ourpur PPL LE fe 6200 S000 FREQUENCY AbwusT are ming AIIMERAENTT on oe { PLLLOCKUP i { TIME DELAY—+! fo Hi i ‘SPACE TTL OUTPUT MARK [LJ INTERRUPTS REQUIRED TT T J Figure 1: A suggested circuit to decode the audio output of an amateur radio receiver, The receiver produces an audio tone burst corresponding to the keyed continuous wave (CW) signal being received. This tone has a frequency which depends on the tuning of the receiver. The 567 PLL circuit is a tone decoder, which can have its center frequency adjusted by R1. The receiver output frequency and the NE 567 frequency should be the same for the desired signals. Noise and garbage (such as other stations nearby) will complicate the actual receiver output waveform. 12 Lt William A Hickey USN c/o US NSGA Edzell FPO New York NY 09518 So you’ve been reading all about these marvelous new microcomputers, and think- ing about how nice it would be to have one that would translate Morse code for you. Well, it certainly sounds reasonable; it really depends upon what you expect from your computer. If you are expecting error free code translation under even the best signal conditions, you are in for a rude awakening. First of all, a computer (by today’s standards anyway) cannot beat or even meet the standards set by a good human operator receiving code. You say you'll concede that point? Why should it be so difficult to design a translator that would work most of the time? That’s the purpose of this article! | am not trying to discourage all the code copying enthusiasts out there; | am trying to prepare you for some of the not so obvious problems you might expect. For the purpose of this article, | will have to assume that you have somehow managed to translate the audio (code signal plus noise plus garbage) into a digital format of 1’s and 0’s. There are many ways to do this, but probably the most simple is shown in figure 1. This is a straightforward tone decoder using a 567 integrated circuit. (Remember that when a tone is present and decoded, the output is a zero.) Now that you have this nice (hopefully free of noise) digital signal, what do you do with it? The answer to this one is sim- ple.... Anything you want to do! In all seriousness, | will now branch into a discus- sion of hand sent Morse code characteristics. Assuming that you all know that a dot is assigned a relative time duration of (1.0), it follows that you also know that the dash is ideally (3.0), the letter space is (3.0) and the word space is (7.0). (If you are a ham, you do know that, don’t you?) At this point | can safely say that the problem of transla- ting machine sent Morse code is relatively trivial. | use the word trivial because it is really just one machine talking to another machine; the intervals are all fixed and are constant, making translation merely a matter of a table lookup assuming both machines use the same Morse code data rate. At this point, it will be convenient to illustrate the hand sent Morse translation problem. Figure 2 is a histogram of a very short message sent with a hand key. CQ CQ CQ DE OPERATOR NUMBER ONE The largest single distribution in the shorter mark group has been assigned the relative time value of (1.0). Keeping in mind the very small size of this sample, you can see that there is a wide variation in mark lengths. (This variation will increase pro- portionately with an increase in sample size.) Space lengths are not as clearly defined, and it is very difficult to decide where the decision should be made between letter spaces and word spaces. This won’t be a serious problem though, since an extra space or the lack of a space between words rarely damages the message context. The decision problem will become acute when the space interval within characters begins to spread toward the lower boundary of the space interval between characters. This will be one of the primary sources for decoding errors. This article will not and should not specifically address such problems as: (1) gradual frequency drift from either the transmitter or receiver, (2) rapid transmitter frequency drift (“chirp”), (3) atmospheric fading, (4) noise from natural or human made sources, or (5) the presence of many other Morse and non-Morse (SSB, RTTY, etc) signals in the same receiver passband. The reason for this is simple: These factors are just too complex to be within the correction capability of simple algorithms. Remember that these problems are common to machine sent and hand sent Morse code signals. Translating hand sent code really begins to get sticky when the sending operator gets sloppy. (He or she might send a “special” signal like -......- [73,@ signoff greeting] which tends to give receiving operators problems too!) Let’s face it, there are a lot of really bad “fists” out there. Of course, there are some pretty good ones too, but frequently the contact you want falls into the bad group! The reason automatic decoders are usual- ly unsuccessful at decoding hand sent Morse code is: they are unable to adapt to the time MARK “AVERAGE” OCCURRENCE AVERAGE = 1.13 SPACE varying properties of the statistical Morse signal. (This means the signals change charac- teristics from time to time... . usually just as the machine was ready to adapt to the previous change.) These statistical changes are reflected only partly in the mark and space timing characteristics of different operators or those of the same operator over an extended time. One of the advantages a human has is the ability to make contextual analysis on what is sent. For example, an operator might hear Cc? Q? oS N N M A and understand the signal [“CQ’]; the machine would translate NNMA (just as it was sent), Examples of this phenomenon are endless and are available on the airwaves daily. There are three primary approaches to a solution of the hand sent Morse translation problem: 1, Macro: You can accumulate statistical information on a particular operator and use this data to make decoding decisions. 2. Micro: You can make your decisions ona mark to mark basis. 3. Averaging: You can compromise these two methods and come up with a hybrid algorithm. Approach (1) requires a long sample time to develop the statistical information, and during this time the decoded output would probably be unacceptable. Even after the statistics become valid, the decoder would operate only on operators with similar 13 AVERAGE = 3.81 AVERAGE = 4.97 Figure 2: A histogram of a typical hand sent message, the text “CQ CQ CQ DE OPERATOR NUMBER ONE”. The terms “mark” and “space” refer to the low and high TTL levels out of the detector of fi- gure 1, respectively. ENTRY FOLLOWING | vTeRRUPT aT | CHANGE OF [STATE (he CL (MORSREG) CLEAR MORSREG ———7] AND SPACE REAI Data Definitions: 8 bit registers or programmable memory x Duration of the previous input state. Running average of the previous “n" dot times. AVGDOT COMPUTE Xe (DURATION OF PREVIOUS STATE) INTERRUPTS, MORSE DECODER EXECUTION PREVSTATE OUTCH*0 =STATE; OUTCH¥O STATE INPUT Yes SPACE | MORSE; MARK OUTCH Output ASCII character tempo- rary buffer. MORSREG — Morse code pattern input shift register. PREVSTATE Previous mark or space input state. STATE Current mark or space input state feAvcoor be-—+ie 5 + AVGDOT Hi i i PULA. TO) es REAL TIME—» ‘ S-—END OF CHARACTER DETECTED BY X> 2 * AVGDOT Note: This routine is intended to be executed following an interrupt generated by both ‘the rising and falling edges of the TTL Morse code input from a detector. An applica- --------) [ror an avepot | | INcLUOING DasH | READ- + —By INGS INSERT CALCU] AVGDOT: © (NEW Ri AVERAGE); (UNNING tion routine to receive the output of this routine must have a wait loop which con- tinually tests OUTCH for zero. | LATIONS HERE Lati ERE RETURN After .an interrupt is com- pleted, a non zero character will be in QUTCH and the application routine will leave its idling loop and can use the character after copying it and setting OUTCH back to zero. Figure 3: The flow diagram of a relatively unsophisticated Morse decoder program. The adaptive features of this program are contained in the calculation of a new running average of the dot length whenever a dot is detected. The speed of the algorithm's response to a change in the keying rate of the Morse input is a function of the number of dots maintained in the running average. A more complex algorithm could take into account the nominal dash spacing of three dots as part of the average, as well as the spacing between signal elements within characters. idiosyncracies. This is a nice idea, and it works well for individual operators; but it is not very workable for a broad collection of operator characteristics. Approach (2) is the easiest method — sometimes called the “ideal dot” method — but it is very suscep- tible to noise pulses and rapid code speed changes. (It tends to generate an excessive number of errors and is not really that good for decoded output.) For now, approach (3) seems to offer the best chance of working. 14 Many individuals and commercial manu- facturers have tried variations on approach (3); but they all boil down to: Sample from four to eight characters, average the lengths of the dots, and use that average to make decoding decisions. After the initial average is set, you can update the average each time a dot is detected; or you can average both dot and dash lengths and settle on a median Continued on page 106 Cabinets clockwise from top: CPU, Dual-cassette drive, Keyboard, 9” Monitor. The Digital Group covers up. (Beautifully) For many months the Digital Group has been hard at work on the heart of our microcomputer system, insisting on quality where it counts in every product we’ve designed. Now, we have turned our attention to the outside and cov- ered up... with a complete line of custom cabinetry that will enhance your Digital Group system for all the world to see. The result is beautiful. Sleek and sophisticated, but rugged enough to take all the hard knocks you hand out, Digital Group cabinets are made to be used and not just admired. Extra-heavy-duty eighth-inch aluminum is utilized throughout with a special tough-texture commercial-grade paint in Computer Beige. All front panels are anodized aluminum in dark brown. Even the front panel switches are lighted. The Digital Group offers a beautiful cover-up for each part of your system — from the CPU to the video monitor. What's more, every new Digital Group product will get cov- ered, too, so each piece will maintain that unmistakable Digital Group image. We're sure you’ve already fallen madly in love with our cover-ups, but just wait until you take a peek inside. That’s where the real beauty lies. Our video-based systems, including 8080, 6800 and the super new Z-80, are state-of-the-art, high quality and totally integrated designs. Digital Group systems are com- plete and fully featured and are specifically designed to be easy to use. Merely power on, load cassette and go! (And with our new cover-ups, you go in style.) Best of all, Digital Group systems are available now. And affordable. Prices for a complete Z-80 based CPU start as low as $645, including the cover-up. So write or call us for all the beautiful details. And then head for cover! (the digital group ) The Digital Group P.O. Box 6528 Denver, Colorado 80206 (303) 777-7133 Letters TTT | mia MORSE CONVERSION BACKGROUND INFORMATION A letter from W A Hickey regarding Morse translators appeared on pages 92-93 of your July issue. For the further edifica- tion of your readers, perhaps including Mr Hickey, | provide the following additional references on this topic: Althoff, W A, An Automatic Radio- telegraph Translator and Transcriber for Manually Sent Morse, NTIS AD-772 745, Dec 1973. Ball, Edison L, Processing of the Manual Morse Signal Using Optimal Linear Filtering, Smoothing, and Decoding, NTIS AD-A019 493, Sept ASUS: Bedzyk, W L, Machine Translation of Morse Code Using a Microprocessor, NTIS AD-785 130, June 1974. Guenther, J} A, Machine Recognition of Hand-Sent Morse Code Using the PDP-12 Computer, NTIS AD-786-492, Dec 1973. McElwain, D K and M B Evens, “The Degarbler — A Program for Correcting Machine Read Morse Code,” /nforma- tion and Control, March 1959. McNaney, J T, and Richard R Tice, System for Converting Telegraphic Code into Characters, US Patent 2,840,637, June 1958. Powers, B L, and F R Scalf, The Design of a Morse-to-Teletype Signal Converter Using Integrated Micrologic Circuitry, NTIS AD-840 255, June 1968. 16 Shenk, E R, and J C Phelps, Auto- matic Code Signal Discriminating Device, US Patent 2,534,388, Dec 1950. Smith-Vaniz, W R, and E T Barret, “Morse to Teleprinter Converter,” Electronics, July 1 1957. Tevis, R, Printing Telegraph Receiver, US Patent 1,805,114, May 1931. Thomas L A, Morse Code Printing System, US Patent 2,534,387, Dec 1950. Winter, A C, Code-Controlled Appa- ratus, US Patent 2,384,513 Sept 1945. | doubt that this list is complete; | have not been interested enough to do a really thorough literature search. On a different topic: May | suggest that you provide the magazine name, the volume number, and the date, at the bottom of each page. Despite your predominantly hobbyist readership, this small professionalism would be useful. E Douglas Jensen Principal Research Engineer Computer Systems Technology Section Research Department Honeywell Aerospace & Defense Group Minneapolis MN 55413 The current issue of BYTE adds a bit to the applications literature. Thanks for sending along an excellent list of further sources. MORE ON MAKING PC BOARDS | would like to add a few things to James Hogenson’s article on making printed circuit boards [July 1976 BYTE, page 58]. Readers who wish to make their own PC boards will find that the spray resists are messy and often difficult to use. We have found that a dry film resist made by Dynachem Corporation, Santa Fe Springs CA 90670, works very well and is easy to use. The material is called Laminar and comes in various thicknesses. The one mil thickness is the best for general use. One of the nice things about it is that it is developed in a water solution of sodium carbonate (Arm and Hammer washing soda) made to a concentration of 2 to 3%. It is moderately sensitive to light and may be used in room lighting without difficulty. It is easily ap- plied by heating the PC board and rolling it on with heating. A hard rubber roller works the best. These are available from art supply How you can cook up hot programs on your own “8080” Scelbi offers you a gourmet’s delight of all new second generation soft- ware for your own “8080”. Now you can cook up delectable pro- grams to satisfy your own appetite for “8080” mouthwatering applications. Best of all, Scelbi’s “8080” Software Gourmet, Guide & Cook Book can be yours for only $9.95 ppd. OVER 200 PAGES... only $9.95! You'll eat up everything that’s in this action- : packed, information-crammed book. Gobble up practical “how to” facts. The description of the “8080” instruction set. How to manipulate the “8080” stack. Flow charts and source listings. General purpose routines for multiple precision operation. Programming time delays for real time applica- tions. Random number generators. And many other basic pro- gramming function comestibles. Master Charge, Postal and Bank Money Orders preferred. Personal checks delay shipping up to 4 weeks. Pricing, specifications, availability subject to change without notice. Prices for U.S. and Canadian delivery at book mailing rate. ‘Add $2.50 for each publication if Priority Alr Service (U.S.) desired. Foreign orders add $6.00 for each publication. FLOATING POINT ARITHMETIC ROUTINES The Scelbi “Cook Book” even includes a com- pletely assembled floating point arithmetic pro- gram... plus input/output processing for your basic I/O programming through interrupt proc- . essing. There are code and numeric conversion routines. Real time pro- gramming. Search and sort routines. And too many more finger-lickin’ goodies to mention here. If you’re into the “8080”, you must own this complete, compact book. It has everything the e good computer chef needs And, you can’t beat the price! Only $9.95 ppd. Order your copy of Scelbi’s “8080” Software Gourmet Guide & Cook Book today. Read it over. Then start cookin’ on all four burners! Bon appetite! \4 SCELBE COMPUTER CONSULTING ING 1322 Rear Boston Post Rd., Milford, CT 06460 Telephone: 203/874-1573 If we credit Charles Bab- bage with the first pro- grammable digital com- puter design, we should likewise consider Lady Lovelace as the first programmer. stores. The Laminar also has protective plastic coatings on both sides. The soft, flexible coating is removed before laminating to the clean copper clad. The inflexible coating is removed before developing. The E | du Pont Company also has a similar type of resist material. The PC boards must be very clean before resist is put down on the copper surface. A dip in dilute hydrochloric acid or muriatic acid followed by a scrubbing with Ajax or steel wool will prepare the surface. Hogen- son’s photo 9 looks like the result of resist put on a dirty board. Printed circuit boards shouldn’t be drilled with regular steel drills. They will wear out quickly and will leave ragged holes. Try carbide drills made for PC drilling. Most PC material houses should stock these. The type with an eighth inch shaft will fit in most tools. Bishop Graphics Inc, 20450 Plummer St, Chatsworth CA 91311, has a wide variety of PC layout and tape-up aids. | would suggest that readers get a copy of their catalog since the last 32 pages are a technical manual on PC layout and related techniques. | hope this will help your readers to improve their PC board technique. Jonathan A Titus Tychon Inc POB 242 Blacksburg VA 24060 ON BLANKS, CHARACTERS AND WOMEN IN COMPUTING lam glad to see BYTE is developing as a stable but flexible medium for the computer hobbyist. There are, however, three points which should be addressed early in your history: 1, Invent a “blank character.” Variable spacing for uniform column width is fine for reading, but poor for showing significant blanks. Programmers have long used special symbols to represent spaces or blanks, much as zeros act as placeholders for Arabic numerals. Examples are the lower-case b with overstruck slash or dash, and a square- cornered U. If no special character is available, perhaps just a lower-case b would do (eg: “LIMb+1” to show a blank as necessary) [Only necessary in the limited context of character text string examples... CH] 2. Publish your character set. Testing the character set is often one of the first acts performed with a new medium (such as a keyboard, video display, or 18 printer). It appears that you do not have, for example, Greek letters, although you have quite a variety of fonts and styles. (This suggests using a different typeface to spell out symbols that may be single characters in the original, such as THETA or UP- ARROW). Many of us are no longer limited to 47 computer symbols, but use 128 character ASCII. [Our text character set is published by IBM, in its literature on Selectric Composer balls; for computer graphics we gener- ally assume 7 bit ASCII unless nated. | 3. While it is awkward in English to avoid masculine pronouns (he, him, etc), | do think we should try to avoid the masculine assumption about readers (eg: having a wife). This is a new field, which is developing at a time in our history when women (and men) are outgrowing their traditional roles. 1 think we can expect to see a gradual increase in the number of women interested in computers, and should encourage the trend. In this light, it may be relevant that if we credit Charles Babbage with the first pro- grammable digital computer design, we should likewise consider one of his chief advocates, the Lady Lovelace, as the first programmer. She wrote instructions for set- ting up the Analytical Engine to perform certain calculations. (This was, of course, working in the abstract, as the machine was never completed.) Zhahai Stewart POB 1637 Boulder CO 80302 As to the Jast point, we're all for it. But it is a fact that most BYTE readers are male. Where is the other 50% of the human race in computing? As a rule, we try to keep things relatively free of stereotypes in the hopes that the other 50% will start finding out about the wonderful attractions of com- puters and computing. ... CH IDENTITY CRISIS This is just a short note to say that | am enjoying BYTE and to offer a suggestion in the form of a question: “What do we call ourselves ?”” Radio amateurs call themselves hams and | am sure other people have other names for them. However, in BYTE to date, | find that writers are grasping for words to use to describe the computer hobby. Perhaps you Microcomputers are highly complicated devices. When you buy one you want to make sure the manufacturer has a solid repu- tation for reliability and support. You want to make sure he'll be in your corner a year or two down the road. The Altair“8800 from MITS was the first general-purpose microcomputer. Today, there are more Altair computers up and running than all the other general-purpose microcomputers combined. Today, Altairs are successfully used for literally hun- dreds of personal, business, scientific, and industrial applications. Because we are so popular, many people have tried to copy us. The pages of microcomputer magazines are full of advertisements for Altair compatible devices and Altair imitation computers. Because we are NUMBER ONE, we offer a much broader range of products and services than any of our competitors. One manufacturer might be able to copy one of our computers. Another might be able to produce a working memory card. But no one can copy the overall Altair concept. The Altair concept is a system concept aimed at practical, cost effective applications. That's why we offer three mainframes includ- ing the Altair 680b, Altair 8800a, and Altair 8800b; ten peripherals including a multi-disk system; and over 20 plug compatible modules including our new, low power 16K static memory board. That's why we are the only microcomputer manu- facturer to go to the extra expense of providing our customers with quality, higher language software. When you buy an Altair, you're not just buying a piece of equip- ment. You're buying years of reli- able, low-cost computing. You're buying the support of the NUMBER ONE manufacturer in the micro- computer field. ms) nts 2450 Alamo SE/Albuquerque, NM 87106/505-243-7821 could run a contest of sorts to promote a name for those active in the small computer hobby. Looking through some past BYTEs | find words such as microists, kluge, hacker, amateur computer, digital, analytical engine, cyber(nuts) that may be altered, adapted or crossed to coin some new word to describe a computer hobbyist. Then we can say: Do you suppose this will help people under- stand what we are up to? Bryan Patterson Box 1726 Port Elgin Ontario CANADA NOH2CO Well, if we wanted to sound self aggran- dizing, we could of course suggest “‘Byters” as a term. Actually, in spite of the negative connotations in computer science circles, | [CH] tend to prefer the traditional term “hacker.” At the start of amateur radio, “ham” as used previously also had somewhat negative connotations. (1 make an etymo- logical assumption here that the term as used in radio circles evolved from the tendency to “ham it up” on the air as in the usage of “ham actor.”) | like hacker as a term for the serious amateur computer nut (who is also typically professionally involved as well) because it has implications of digging into the subject matter and really learning it at multiple levels of detail. The “compleat modern hacker” is the renaissance man (oops... person) of computing. WHO SAYS THEY AREN'T? With respect to BYTE covers, you blew it. The phrase “Computers — the world’s greatest toys” told it like it was and still is. Truly, the only difference between men and boys is the price of their toys. A co-worker commented, “If computers. are the world’s greatest toys, then are programmers the world’s biggest kids?” How can | argue with logic like that? Julius T Marinaro 725 Cricklewood Dr State College PA 16801 VIDEO TAPE AND COMPUTERS? | was very pleased to find out about the existence of your journal, | have had an interest in small system uses for several years. At present | am working with video tape systems within a school district in Flint 20 Michigan. | am interested in finding various smal} computing systems to use in video tape editing and special effects for CRT displays. Enclosed is my check for a three year subscription to BYTE. | am looking forward to my subscription. Also | would like to ask for your assistance in answering two ques- tions. | would like to find out if | could obtain back issues of BYTE since it was first published, and | would also like to find out if you can give me any information on the use of small computing systems with video tape systems. Any information that you can give in these areas would be greatly appre- ciated. Thank you for your time and trouble. William D Wolverton 10320 Henderson Rd Otisville MI 48463 September, October and November 1975 BYTE back issues are sold out at present, as is May 1976. Remaining back issues are now being serviced at a price of $1.50 per copy, plus 25¢ for postage and handling. Send in your requests, but send no money with your request. If we have what you're looking for, we'll bill you for what we ship. As to the use of computers with video tape applications, it sounds like an excellent use. However, we have no articles in house on the subject.... Yet. Perhaps you'd like to write about your results, HELP! | have some surplus ICs from our local IBM factory and would like to identify them. | hope you can help me. | have three types: 2709400 JUQ Mii V 721304 7324FQ 2709401 Q Korea Mi 721304 7432FO 2709170 JUK Mi V 721186 733180 They are all ceramic chip with 14 pins gold plated in each side and in the top a gold square with the numbers and a ground line to pin one like in the MOS devices, Jose Vincente Caiza Postal 764 13100 Campinas SP Brazil Rickey’ tackling t microcomputer kit for his next science project. Rickey likes soccer, lizards, hot fudge sundaes, skateboards and microscopes. He can’t decide if he'd rather be Franco Harris, Bobby Fischer or Jonas Salk. When his Dad brought home the Intel SDK-80 microcomputer systems kit, Rickey helped him put it together. It took only four hours. Everything was there. The 8080 CPU, RAM, PROM, programmable, I/O, a printed circuit board with all those capacitors and resistors and the other things that go with it. The best part was the instruction manu: Every step was clearly explained. It wa easy. The programming part looked especially interesting. So simple. Just imagine talking to a computer. The big thrill came on Saturday when they went to his Dad's office to use a terminal. When they connected the SDK-80 to the teletypewriter they got a printout. That was e: ing. Within an hour they were to the computer, then inventing games. They E he SDK-80 computer of his own. He may be the first kid on his block with nis own computer. Thanks to a $350 low interest loan from his Dad. If youre interested in being the first on your block to have a micro- computer, contact your Intel distri- butor: Almac/Stroum, Component Specialties, Components Plus, Cramer, Elmar, Hamilton/Avnet, Industrial Components, Liberty, Pioneer, Sheridan, or L. A. Varah. Microcomputers. First from the beginni 3065 Bowers Ave , SantaClara,C: ABIT OF CIRCULATION Attention: Circulation Dear Ms Luhrs: Thank you very kindly for making avail- able the lifetime subscription to BYTE magazine which | won at the First World Altair Convention in New Mexico. Of all the door prizes given, | firmly believe | won the best. It was generous of your firm to make it available. | would appreciate your conveying my gratitude to Mr and Mrs Peschke and Mr Helmers. Since | already have a subscription to your fine magazine, | am presently receiving two copies. | am passing one along to non-subscribers and hopefully it will gen- erate additional subscriptions. 1 commend you on the many fine articles which have appeared in past issues. Being a novice in hardware applications, | parti- cularly look forward to tutorial type hard- ware articles. Gene Straub 5723 Shasta Cir Littleton CO 80123 THE IEEE 488 BUS Regarding your comments about a stan- dard interface for microprocessors, etc, on page 96 of the April issue: | imagine you are familiar with the IEEE 488 which is being used by HP, Tektronix, Fluke and many others to interface microprocessors, calcula- tors, disks, cassettes, DVMs, counters, etc. 488 is not as complex as the standards document would lead you to believe. It is achieving rapid acceptance because it is well suited to microprocessor manipulation, For various reasons it may not be ideal for personal computing, but it seems to be an excellent starting point, One drawback is that HP has the handshake patented. Their license fee is quite reasonable for some organizations but perhaps not for hobbyists, Other drawbacks include the question of common availability of the connector, etc. However it would be nice if there could be some degree of commonality between 488 and any hobbyist standard that might evolve. Bob Huenemann 4209 Armand Dr Concord CA 94128 Yes, 488 might be a good place to start. For those unfamiliar with the issue, the full name is \EEE Standard Digital Interface for Programmable Instrumentation, published by the Institute of Electrical and Electronic 22 Engineers, Inc, document number IEEE Std 488-1975. Quoting from the IEEE standards document, “The Hewlett-Packard Company has assured the [EEE that it is willing to grant a license under these patents on reasonable and nondiscriminatory terms and conditions to anyone wishing to obtain such a license.” To obtain a copy of the 80 page standards document write IEEE Service Cen- ter, 445 Hoes Ln, Piscataway NJ 08854. TEXT PROCESSING OUTPUT VIA CONVERTED TYPEWRITERS? Jim Lang’s letter in the August BYTE on hard copy and IBM Selectric typewriters aroused a responsive chord. | too have been interested for some time in using the ubiqui- tous Selectric typewriter to obtain high quality hard copy. \t seems to me that any- one familiar with both Selectrics and Tele- types would prefer the former — half again higher speed, much higher print quality, and both upper and lower case. The clincher would seem to be that most XYLs would look more favorably on the idea of spending half a kilobuck or so on something that can also be used as a good typewriter instead of something that can’t. As some readers are probably aware, there is a commercial firm that markets a (rather expensive) applique that attaches to a standard Selectric and makes it into a terminal. (Tycom Systems Corp, 26 Just Rd, Fairfield NJ 07006.) In this connection, I’d like to point out that the US Patent Office is a veritable gold mine of technical information that can be obtained for a very modest price. For example, the patent documentation covering the Tycom system consists of 26 pages of diagrams and 50 fine print pages of descrip- tive text. An appreciable fraction of this consists of a very detailed description of the internal workings of the Selectric type- writer — it seems to collect details from the myriad of IBM patents on the Selectric into a single place. A copy of the printed version of this (or any) US patent can be obtained by speci- fying the patent number (#3,453,379 for the one mentioned above) and remitting 50 cents to ‘Commissioner of Patents, Wash- ington DC 20231.” Obviously one cannot duplicate a patented item in making a product for sale. Nor, in this case, would one want to, since with new ICs and components, the circuitry involved is verging on obsolescence, Never- Continued on page 136 altair 8800a TECHNICAL INFORMATION The Altair 8800a is a parallel 8-bit word/16-bit address computer with an instruction cycle time of 2 .s. Its central processing unit is the 8080 LSI chip. It can accommodate 256 inputs and 256 outputs, all directly addressable, and has 78 basic machine instructions. It is capable of directly addressing up to 65,000 bytes of memory. As well as the LSI chip, the CPU board contains the two-phase clock, status latch, buffers and the various lines going to the bus. (The buffers are tri-state devices.) The CPU contains six general-purpose registers, P counter, arithmetic unit, accumulator, stack pointer, instruction decoder, and miscellaneous timing and control circuits. The arithmetic unit contains the circuitry required to perform arithmetic in both decimal and binary forms. The stack pointer defines the current address of the external stack, which resides in memory. The stack is used to service interrupts and provides virtually unlimited subroutine nesting. The instruction decoder decodes the instructions and sets up the various registers, gates, etc., in the CPU for proper functioning. There are 36 LED status indicators on the front panel, 16 of which are used for the address bus, 8 for the system status latches, and 8 for the data bus. The four remaining LEDs are used for indicating memory-protect, interrupt-enable, system-wait and hold status. Address line inputs AO through A15, data lines DO through D7, and the various status lines originate on the CPU board. The front panel control board contains the circuitry for interfacing between the control switches located on the front panel and the CPU. In addition to the interconnections to the actual processor, this board accepts memory address switches AO through A15 (also on the front panel). The first eight of these switches (DO to D7) are used to put data into the CPU. The front panel logic permits the following functions: STOP—stops the processor immediately after it completes the current instruction; RUN—starts the processor at the current address; EXAMINE-—causes the data stored at the location (set by the switches) to be displayed in binary by LEDs; EXAMINE NEXT— steps the P counter once and displays the word stored at the next location; DEPOSIT —causes the information preset by the switches (AO-A7) to be stored in memory; DEPOSIT NEXT—steps the P counter and loads the memory; SINGLE STEP —steps the program one machine cycle; RESET—clears the CPU and sets up a starting address of O; PROTECT/UNPROTECT—allows selective write protection of blocks of memory. When a block of memory is protected, it is impossible to write over that block, but its contents can be read out. With proper adjustments, any memory speed can be used in the 8800a computer, although memory access time must be 500 nanoseconds or less if it is to be run without wait states. In addition to semiconductor RAMs, the processor will also service ROMs and PROMs. NEW FEATURES POWER SUPPLY The power supply provides three voltages to the 8800a bus: +8V pre-regulated at 8 amps; +15V at 500mA; -15V at 500mA. FAN A fan has been mounted on the back panel of the 8800a to provide cooler operating temperatures. 18 SLOT MOTHERBOARD The four-slot expander cards in the Altair 8800 have been replaced with a single-piece 18-slot motherboard. The 18-slot motherboard contains the 100 solder lands that comprise the 100 pin bus. FRONT PANEL SWITCHES The front panel toggle switches have 50% longer, handles that are flat (instead of round) for easier use. An assembled Altair 8800a may be ordered with six, twelve, or eighteen sets of edge connectors. The Altair 8800a kits include an edge connector with every plug-in module purchased. Fan New 18-Slot Motherboard New Front Panel Switches The four boards, along with the power supply, mount in an 18" deep x 17" wide x 7" high (45.7 x 43.2 x 17.7-cm) metal cabinet. SPECIFICATIONS Number of Boards Up to 18 Microprocessor Model 8080A Technology NMOS Data Word Size, Bits 8 Instruction Word Size, Bits 8 Clock Frequency, 2MHz Add Time, Register to Register, Microsec. Per Data Word 2 Number of Instructions 78 Input/Output Control 1/O Word Size, Bits 8 Number of I/O Channels 256 Direct Memory Access Optional Interrupt Capability Std. one level Vectored Interrupt (8 priority levels) Optional Software Resident Assembler Yes Cross Assembler No Simulator No Higher-level Language BASIC Monitor or Executive Sys. mon.; text edit. Software Separately Priced Yes 0 monies 2450 Alamo S.E. Albuquerque, New Mexico 87106 Consider . eh at Seahee f POSTERS OF CHARLI€ CHAN well buy 12 COCKTAILS ON AN AIRPLAINE ; 1996: FLIGHT (PRETZELS EXTRA} TEN HOURS OF PARKING IN DOWNTOWN WASHINGTON, Dc, ONE FULL-YEAR or MEMBERSHIP IN THE IEEE COMPUTER SOCIETY and with it, an automatic subscription to COMPUTER magazine. Special introductory offer: join now and receive FREE the one-volume collection of COMPUTER reprints, “Microprocessor Architecture and Applications.” Fill out and mail the form below. Find out why membership in the IEEE Computer Society is one of the wisest investments you'll ever make. (At 24 bucks, can you afford NOT to?) Quick—send me everything | need to know about joining the IEEE Computer Society." | You can send me my free copy of “Microprocessor Architecture and Applications” 25 YEARS OF SERVICE when | join. Name IEEE COMPUTER SOCIETY MAIL THIS FORM TO: \EEE Computer Society 5855 Naples Plaza @ Long Beach, California 90803 ! I I | | V address | l ! | ° WJ Hosking W7JSW 8626 E Clarendon Scottsdale AZ 85251 A Ham’s Application D '’m writing this article for a selfish motive. | want to build some things and the construction articles aren’t here yet, parti- cularly in state of the art. I just finished a television typewriter (TVT) which has alphanumeric character generation and storage capacity plus capa- bility of serial or parallel ASCII (plus con- trol) interface. Now that it is finished, | want more than a plaything. | would like to have the following capabilities: a) Keyboard Morse code (CW) transmit and receive encoding with CRT dis- play. b) Keyboard RTTY transmit and CRT RTTY read. c) Alphanumeric slow scan TV transmit and receive. d) Computer terminal operation with a telephone coupled to a timeshared computer system. Description My envisioned system is shown in figure 1, Let’s tackle that drawing block by block, considering the TVT and CRT to already exist and applying the constraint of a mini- mum hardware (low cost) implementation. FASTTO. =F SLOW SCAN ——P} CONVERTER fe VIDEO CW KEYER KEY ¥ Bite yy F i tL reve KEYBOARD SOFTWARE SERIAL ACOUSTIC COUPLER PHONE Fsk 4 KEYER AND CONVERTER }q—__J Figure 1; An ideal ham station configuration, where “ideal” is defined by the author in the ac- companying text. Pub. price, $8.95, Club price, $7.60 Club price, $11.40 Pub. price, $11.95 Club price, $9.95 770/271 BUCHSBAUM'S 768/641 COMPLETE ~ MINICOMPUTER HANDBOOK OF SYSTEMS: PRACTICAL | Organization & ELECTRONIC / Fiscrauaag REFERENCE Phuhotse at H. ] Pub. price, $15.95 Buchsbaum 3. Club price, $12.50 Pub. price $17.95 ‘ Club price, $13.50 BOOK CLUB on introductory offer ma ') salve: to new members of the CaaS LD. H. vier | GOMPUTER PROFESSIONALS’ Pe loys Pub. price, $29,95 Club price, $21,50 787/98X THE 787/661 PROGRAMMER’S INTERACTIVE fee ert by D. Maurer r= | n y ¢ yr ? e by B. §. Walker, Pub. price, $13.50 E. A. Drawneck of these great Pub, price, $14.50 Club price, $12.30 767/246 = A COMPUTER rof ional books PERSPECTIVE Pp ge itl 7ee/t79 by C. Eames COMPUTER Eames Pub. price, $15.00 isuayer Club price, $12.75, Market Power by G. W. Brock 768/03X Pub. price, $15.00 MICROPRO- Club price, $12.50 GRAMMABLE oe oe TER wae values up TO ENGINEERS Salisbury AND SCIENTISTS Pub. price, $13.50 ice) $29.95 by G. A. Korn Club price, $11.40 Pub, price, $23.45 Club price, $15.50 768/307 CONTENT ADDRESSABLE 767/088 PARALLEL Special $1.00 bonus book comes to you THE SUN NEVER a with your first club selection a Pub. price, $7.95 Club price, $6.75 767/815 GAMES & 766/053 PROGRAMS: ‘SYSTEMS Mathematics ‘tren ‘SIMULATION: for Modeling } Methods and by RB Applications ngieton ‘A. re SW. Tyndall M4 Sisufivans &D. J. Carlino Pub. price, $13.00 Club price, $10.75 Pub. Price, $16.00 Club price, $12.95 save time and money " ! by joining McGraw-Hill’s new A COMPUTER PROFESSIONALS’ ait BOOK CLUB TT HIS new professional club is designed to meet your day-to-day, on-the-job needs by providing practical books in your field on a regular basis at below publisher prices. If you're missing out on important technical literature—if today's high cost of reading curbs the growth of your library—here's the solution to your problem. The Computer Professionals’ Book Club was organized for you, to provide an economical reading program that cannot fail to be of value. Administered by the McGraw-Hill Book Company, all books are chosen by qualified editors and consultants. Their understanding of the standards and values of the literature in your field guarantees the appropriateness of the selections. How the Club operates: Every month you receive free of charge The Computer Professionals’ Book Club Bulietin. This announces and describes the Club’s featured book of the month as well as alternate selections available at special members’ prices. If you want to examine the Club's feature of the month, you do nothing. If you prefer one of the alternate selections—or if you want no book at all—you notify the Club by returning the card enclosed with each Bulletin. ‘As a Club Member, you agree only to the purchase of four books (including your first selection) over a two-year period. Considering the many books published annually, there will surely be at least four you would want to own anyway. By Joining the club, you save both money and the trouble of searching for the best Oks. ———— MAIL THIS COUPON TODA + COMPUTER PROFESSIONALS/Book Club P.O. Box 582 Princeton Road, Hightstown, New Jersey 08520 Plaaso enroll me as « member of the Computer Professionals’ Book Club and sand me the two books indicated below. | am to receive the bonus Book for lust §1, and my trst selection af the special Club price. Actual postage, plus 25¢ handling charge will be added (sales tax, also, if appli- gable), These books are to be shipped on approval. and | may relurn them both without cost or further obligation. If | (0 keep the books, I agree to. purchase as few as four additional books (including this fist selection) during the noxt two years at special Club prices (guaranteed 45% discount often more), This order subject 10 acceptance by McGrew- Hill. Orders trom outside the continental U.S. must be. prepaid. All prices Subject to change without notice. Offer good for new members only. Write Code # of $1.00 Write Code 3 of bonus book selection here selection here NAME, ‘ADDRESS. city. STATE. ZIP. P39161 41 Morse (CW) Transmit and Receive Looking back through previously existing magazines on electronics and amateur radio, | have found several articles on Morse keyboards, most using bulky diode matrices. The literature on Morse code readers is much harder to find, and as this is written | found nothing approaching state of the art. It would seem that, with the rapidly dropping prices of microprocessors and their associated memories and peripherals, the way to go on this project would be a computer using minimum hardware imple- mented with an LSI microprocessor. | have presented a very basic approach to such a system in figure 2. All that would be required from the hardware standpoint would be the microprocessor, a read only memory for permanent program storage, a programmable random access memory for MICROPROCESSOR: Figure 2. For a dedicated “black box” ham radio data processor, the use of POWER SUPPLY @ microprocessor system DATA JapoR| 216x8 ROM with as much as 2 K by 8 bits of program ROM with perhaps 256 bytes of pro- clocks CONTROL, grammable memory for 256X8 PROGR. MEMOR’ 17/0 (Pia) gair DATA AND. CONTROL, Editor’s Note AMMABLE Y data buffering. [Exact amounts of ROM will depend upon the com- plexity and features of the software foaded; 2K should be reasonable for Morse and_ radioteletype support .... CH] working storage, and a peripheral interface adapter (PIA) for input and output. Some other items such as power supplies and clocks are also required. | would hope that the microprocessor interface unit cost could be kept under $100. Now for the required design work. This black box | am planning would have to accept a seven bit ASCI! code (serial or parallel) plus a data present strobe. The box would convert the input character to serial Morse code and output the code over some suitable keying circuit to the station trans- mitter. Since we are talking about a small computer, the Morse code speed desired could be ordered by an appropriate input code sequence from the keyboard. The box then has to send a character or flag back to the TVT to say it is ready for a new character. The reverse or receive mode is the Morse to ASCII conversion. However, here a special conversion device will be needed to change the audio out of the receiver to some kind of signal that the computer can recognize and convert. The software which drives the converter must also recognize intercharacter versus interword spacing and provide space characters to the TVT where required in the received text. The end result would be Morse code sent by the keyboard through your transmitter and the Morse code heard by your receiver being displayed on the TVT CRT. This is a job for both hardware and software de- signers. [See the articles elsewhere in this BYTE for technical details... CH] Radioteletype (RTTY) Transmit and Receive The same basic microprocessor described above could be used to provide the radio- teletype function instead of or, with more Here isa short article on a theme of “wouldn’t it be nice to have X” where X is defined as some automation applications for the amateur radio station, It is timely, in the context of this month’s Morse code theme, in that one of the author’s application goals is detailed in several different technical articles in this issue. There’s still plenty of room for further explorations of computer application to amateur radio technology of course.... CH 28 ROM, in addition to the Morse code function. Here, the transmit conversion would be from parallel ASCII (or serial) to serial Baudot at a transmission speed programmed into the computer. The system could easily include niceties such as automatic line feed, etc. The Baudot output would be serial signals sent to an FSK transmit terminal unit. When the FCC finally gets around to approving ASCII on the air, a simple ROM change would reconfigure the hardware to reflect this improvement. On the receive side, a standard RTTY terminal unit would be used to convert the received FSK signal to a serial binary signal for the microprocessor. This keying signal would be routed to the processor which would convert it to either serial or parallel ASCII, whichever your TVT or terminal interface requires. This system would work just as a regular teleprinter does, except that the received copy would be on a CRT instead of hard copy on a printer. For those desiring hard copy, a printer can easily be interfaced to the computer system. The development here is mostly software since really good terminal unit and keyer designs are readily available. Slow Scan TV This is another area eagerly awaiting new developments. The TVT already has fast scan composite video as an output and the CRT involved accepts composite video. The problems and areas for new development are mostly in the area of conversion from fast scan to slow scan and reverse. It is highly likely that the microprocessor box we have already discussed can do at least part of this job for us. | think this one is really ripe for new breakthroughs. Computer Terminal Operation This is probably the easiest task. There are those out there who, had they the terminal, could make use of one or another timeshared computer system. This use re- quires coupling in one way or another to a telephone line. The easiest way to do this without angering Ma Bell is with an acoustic coupler. Conclusion As | said earlier, this was an idea article and now I’m going to sit back and eagerly await the neat ideas generated by all you experts out there. There’s room for much development in both hardware and software. If you have designed something to do one of these jobs, then publish it for the rest of us. Meet the new OSI 400 Computer System. Now more performance and more flexibility actually cost you less. Ask yourself how much system you need. Or how little. Whatever the answer, even if you want to change it later, you get more system for less money with the OS! 400. Start with the OSI Superboard. Add your choice (!) of a 6502, 6512 or 6800 microprocessor; eight 2102s for 1024 bytes of RAM; and an external front panel. Power it up and you havea working CPU. Or populate the board with a processor, system clock, 512 bytes of PROM, 1024 of RAM, an ACIA with RS-232 or 20 ma loop interface, a PIA with 16 I/O lines and full buffer- ing to as many as 250 system boards for system expansion. Even fully populated, Superboard costs less than $140 with a 6502, less than $160 with a 6800. But take a look at what you can have for $29. Our special offer includes a plated-through-hole G-10 epoxy Superboard, bare, plus a 50-page theory of operation and construction manual including complete chip documentation in an attrac- tive OSI binder. And Superboard is just the beginning of the OS! 400 system. You can expand its memory; interface to many I/Os including plotters, cas- settes, FSK, ASCII, Baudot and more; go video, including graph- ics; even add floppy disk. And bare boards are just $29 each, com- plete with in-depth manuals. But first things first. — ——-—-—--—-, 400 me now! SPECIAL —$29 postpaid with this coupon only. Name Address City State Phone = eS Enclose check or money order or supply FT onier >) Be 4 Bank Card information below. Card No. (include all digits) ______________ Good thru Interbank No. (Master Charge) Sign your name Ohio Scientific Instruments Ohio residents, 11679 Hayden Street please add tax, am, Ohio 44234 Dept. B = I | | | I I I 1 I | ! l | \ l ———— ee Add This 6800 MORSER to Your Amateur Radio Station Robert D Grappel 148 Wood St Lexington MA 02173 Jack Hemenway 151 Tremont St Boston MA 02111 A great many amateur radio operators find Morse code operation a nuisance. It isn’t easy to develop proficiency in copying code, and it often seems that those stations one wants to work are just those whose operators send code too fast to readily copy. There must be hundreds of Morse coding aids developed over the years, ranging from mechanical keys and paper tape transmitters to fancy code memories and typewriter like automatic transmitters. Nearly every ad- vance in electronic componentry has spawned a new series of Morse code aids. Nearly all have been designed to help the operator send more effectively; the problem of reception has been more difficult to solve. Some complex circuits have been devised which can copy code, provided that it follows strict timing requirements. Truly general code followers, circuits which can Development of MORSER The program for MORSER shown in this article was pro relocating assembler designed and written by Jack Hemenway and described. somewhat humorously in the August BYTE article “Jack and the Machine Talk” [page 52). by authors Grappel and Hemenway, The i feature allows one to put assembled code anywhere in mel reassembly, a feature which is most useful for building large programs. One drawback of this is that relocatable addresses (denoted “‘R” in the listing) are always. two bytes, so the programmer cannot generally make use of Motorola’s direct addressing mode, which requires addresses to be in the base page; the first 256 bytes of memory address space. Since MORSER was programmed so that both data and program code are relocatable, it is not the most compact form in which the algorithm could be expressed on a 6800, If “one rewrote the program to keep all the variables in the first page of memory “and used direct addressing wherever possible, about 75 bytes of storage could 30 copy code with performance approaching that of a skilled human operator, are rare. They are very complex, using dozens of integrated circuits, large diode matrices, etc. The recent advent of inexpensive yet power- ful microcomputers can make the dream of a relatively simple yet very general code fol- lower possible. Why a computer? First of all, it allows one to develop and improve an algorithm by simply changing program, instead of rebuilding complicated circuitry. Second, since the computer is not restricted to running only the Morse programs, one can use the computing power for any number of other uses, limited only by the operator’s creativity. This article describes a code fol- lowing computer program as implemented on a Motorola 6800 microcomputer. It can copy any code speed from 3 to 60 words per minute, and can adjust to the irregularities of hand sent code. A minimal amount of external hardware is needed, ahd the program only takes about 600 bytes of memory. The algorithm can be converted to run on almost any 8 bit microprocessor. Since you are still reading this, you are hooked. Let’s begin to dissect the program. MORSER consists of five segments: initialization, decoding, delay timer, sampler, and terminal driver. In the program listing, lines 001-068 are initialization, lines 069-200 are decoding, 200-213 form the delay timer, 214-250 form the audio sampler, and lines 251-277 drive the output terminal. Each segment will be described in turn. The major function of initialization is to define the variables in the program and to give them appropriate initial values. The operating system of Jack Hemenway’s machine performs some of the initialization automatically at loading time, such as clear- ing the peripheral registers and setting the stack pointer. If the program is to be run on a system without these features, then state- ments to perform these functions must be added to initialization. The values of DTIME | and MAXCNT must be set, based on the computer running the program. DTIME adjusts the program timing to the processor cycle time, and MAXCNT adjusts the ter- minal driver to the data rate of the terminal in use for output. These values are not very critical, and the program comments list typical values for these constants. As assem- bled, MORSER assumes a 6820 PIA at addresses 8040-8043 (hexadecimal). The peripheral interface can be relocated to suit the particular hardware configuration in use. Only one input bit is needed; the rest of the PIA may be used for other functions. The listing also shows that an external sub- routine, OUTCRT, is being used to drive a CRT terminal for output. This program is part of Jack Hemenway’s system. The user of MORSER must provide a suitable routine for his or her own system. For example, the OUTEEE routine in Motorola’s MIKBUG will work. The idea is that some way must be found to take a character from the A accumulator and place it appropriately on the output device. An automatic carriage return and line feed is required, as MORSER does not count the characters in a line. Initialization also sets up the decoding table DECTAB. The ordering of this table is the heart of MORSER. The ASCII repre- sentation of a character is placed in DECTAB at an offset generated as follows: Generate a byte with a binary 1 for every dot and 0 otherwise; generate another byte with a binary 1 for every dash and 0 otherwise. For example, the letter A (Morse +—) generates 00000010 and 00000001 respectively. Multiply the dash byte by two with a left shift and add the bytes. The result is the character offset. Using this algorithm, it is seen that A is at an offset of 4, All other Morse characters are generated in the same manner, and the rest of the table is filled with blanks. It is the function of the remainder of MORSER to convert the incoming audio signal into offsets into DECTAB, and to transfer the character representations found there to the output device, MORSER decides which inputs are dots, dashes or word spaces by sampling the audio 31 Photo 1: Author Robert Grappel, shown at the con- sole of Jack Hemenway's computer system with a hand held switch used to test Morse code inputs to MORSER during the de- velopment of the program. Listing 1: The MORSER program, as assembled for the 6800 at location 0000 hexadecimal using Jack Hemenway's assembler. The program is written in a relocatable fashion, so no data references are made to page O of the 6800 address space. In Jack’s assembler, the col- umn immediately follow- ing the hexadecimal code output sometimes has the letter “R” in it. This indi- cates a reference to a re- locatable symbol. input at intervals. The delay timer section controls the period of the sampling. This tiny section of code (only six instructions) actually consumes more than 75% of the running time of MORSER. In fact, the time spent in all other parts of MORSER is considered negligible in the design. A rough “rule of thumb’ states that one word per minute of Morse code is equivalent to one dot length per second. All other code cle- ments have lengths nominally equal to integer multiples of the dot length. MORSER is designed to sample each dot length time unit four times. Since the range of code speeds is 3 to 60 words per minute, this implies that the sampling period should 2801 e800 7F OES K RFGIN JMP INIT FFCIN INITIALIZATION ona woe . 09 e203 e462 72Fe OUICRT FOU S72FH SYSTEM CRT HANDLER e084 POA 7 e202 0003 8040 FIAL EGU $8040 PERIPHERAL LOCATIONS eS AOFD Ze 2885 e003 S940 DRI FOL sean 0086 OCF TF 26 ees Beat CkKI FEU eset ves? ouce 7D 2987 9803 BeAr Flee FEU senae GRE ACS PA wees e683 Beaz npRe FUL Seer eo89 @ec? TE 28e9 2003 6e23 CkKe RGU s6 Ben 090 weCA ES eo1e + suDIO INFUT ON SIDE 1, FIT @ 91 coc as 11 vao2 ee2e PUFFL | RMF 32 NFCODEN OUTFIT FUFFER e92 ocr Et cord * 693 wanl 2F 13 6029 0@ COUNT «FCB OUTFUT_ TIMER e094 Capa ES opie eo2e FF DFLAG OFCE SFF “RPTA-RRANY" FLAL 995 aane 27 e215 ened a2 DIIME FCF 66 —OFLAY LOOF TIMFK 96 anD7 EI 016 + ADJUST DIIMF FOR FRUCESSOR CYCLE IMF 097 Bane 26 e17 + DTIMF#165 FOR 166 USFC PROCESEOR we98 eeDc 70 18 © DIMES B88 FO 2.8 USFC ROCF: ee99 Hunk 26 ees + DUIMF= 66 FOR 265 USEC FROCE e100 aazy ono6 FF Loaie oo FCE SPF CLAS] DATA wet earl a6 9021 4027 FF MARK CE SPF LAST MAK TYRE bers BT 022 ous 6C LUMEN FCF 12 LAST MPrK Lewcin were Ee 229 0¢29 09 Likse RCE 090 LFTIFR-SReCF LF VCTM bord Fe neze waza 12 mAKCNT FCE 26 TFRMINAL CUNSIBNT OFC 48 oes + MAKCNT= 6% FOR 110 FAUD GUTRUT TERRI NAL OED 25 en26 + MANGNT=2@ FOR 366 EAUD QUTFUT TERMINAL eure 58 ewe? + MEXCVT= @ FOR FASTER TFRMINAL cern 25 pare ene ce MLN OFC & MARK LENGTH were ac eH29 aweC we OLDSTA FCE & OLD MehK/SFACE STATUS ors ET 2930 neen ce OUTACY FCF & FURFFF POINTER wore FT ee31 g@eF ec SPLEN FCF 12 SFATF LENGTH Bors Fe ees weer oe stkoui FCF DOT RFCISTFR Har CO ee33 30 oH STLOAS FCF © DASH KFCISTFR err 2c ee34 we3! Ct Tcwik FCE IMF COUNTER: eon 7A eas #e32 14 TIKFR FOR 2 © CLOCK ADJUST VeLUE B103 oF pose vOI3 13 NOSe -FCE 2a WORD-SFACE LewCT4 4105 7F a7 were Be unsxey FCF © FURFER FOIVIER 2108 7C e038. : hor en 239 S OFCODING TALE CENFRATED eS FULLUDS: ergo ct cea0 = TAKE MURSE CODF FUR CHPKACI Frees Wier PF Peat * CENFRAIE €-E11 VALUF, I=u7y &2De ein 7 fear © CENFRATE 6-FIT VALUF. 1=DASH E elle Fe 0.03 + SHIFT SPOON VALUF LEFT ONF FLACr ony er wena POD VALUFE.++THE RESULT 1S THF UFESFT w1i9 en eras OF THAT CHARACTER IN DFCTAE erik ce e046 + FLANKS OCCUR WAFRF THERE TS 0" VALID erin FT e947 + CHARACIFR e12@ 75 ence % ORFFE JORCENSON, HOM KANIOs MAY 72 £0.49 . e129 Fe ese 8235 20 DECIAR FCG tt e126 a7 2851 Fes6 45 Foc TANMSURKDK OMY? 127 16 52 CO26 26 Fe 'F LJP Lacie 54° e128 57 p53 vase oe Foc 1 8 e ee vies te 9054 0066 2F Fee ty 7 et 21D BT 855 ee76 20 Foc tt e120 66 2056 0879 04 FOE $02 END OF TRANS. CHAhe ier e7 057 087A 20 Feo tt £132 BE 2058 e7F 20 Foc +? : : 15 Fé 0059 HBF 20 Foc ¢ : 6138 46 2060 0a9F 3E Fee) 6 : a1ag 25 61 Bear 20 Foc #136 58 eee . e1ac 25 263 + CONFIGURE PERIFHFROL INTERFACE w1aF 8c rece . e13F &7 O65 HUFS G6 RA INIT LOA Ansa 866 OFF FT BEAL STA ® CkhI 67 + ease = END OF INITIALIZETION SPCTION eees . e078 * DECODING PLCOAITHY HAS FIVE AULFS: 671 * 1s TR NER MARK TS AT LFAST IkICF e072 . THF LAST ONE. THEN IT IS @ Dest 73 + 2. TR NFW MARK TS LFSS INAN HALF ee74 . THE LAST ONF, THEN 17 TS 8 DOT e275 © as TF MBhK TS MOR THAN M@LFs FUT 2276 . LESS THAN TICF, 11 1S SOMF eS 277 . THE LAST MARK evs + AL TF A SPACE IS MORE THAN 974 OF 9279 . LAST DASH LFNCIH, IT 15 LFITFR SPACE e08e 5. TF A SPACF 1S MOKF IMAN TWICE THF eee . LAST DASH LFNCTHs 11 1S WORD SPACE 32 eure wics, we2e 23 e166 08 veee eves ever 0@27 a o 0027 aor eae 06.29 FF eT ener op3e range from 100 to 4 ms. The delay timer is adjusted by DTIME to count time in milli- second intervals. The variable TIMER de- termines how many milliseconds will be spent in the delay loops. This time is roughly the sampling period, since the longest path through the rest of the program is at most 0.3 ms. TIMER is adjusted in the decoding section to suit the speed of the code being processed. The formula 250/TIMER gives the approximate input code speed in words per minute, after the program has been running for several characters and has ad- justed itself to the code. The sampling section repeatedly tests the status of the audio input signal against its © REF: FRIDYs GS1s Ja 1971 fk START 181 DFLAC —NFW DATA KFAnY? FRO te & UMP WAT) wall FOR DATE RJie 181 LDATE LAST RATA KERK UR SHACE? FR Jt R Jur Skece RJ1E LDA ALMLEN LEN «(Fe PeLMLeN? ASL @ Re CHF A LEN FLE DASH & LOA PB LMLEN MLN sLTe LaLeN72? SKB kK GMP & MLEN PPL 901 kK 187 LMARK —LASI DAIA MARK Oh SFACE? bMI DASH pol Le a at f S18 ® Lmekk FUT 001 INTO KFLISTFR & Coa A S1Lbur K LOA & STLDAS cars BCS LFAFRR 100 MANY BITS FOR REGISTFR asl ECS LENFRR Ine & INSERT 101 K STA ® STLDOT r STA B SILAS Loe FHLEN RECENFKATE CLOCK RATE SUF ES FASED ON DOT LENCTH BOE NFAST TF LESS THAN 3, CLOCK SLOW k DEG TIMER IF MOKF THAN Sy CLOCK FAST BCT FUT IF EFTUFFN 3 AND So Deke K CLR TIMER R INC TIMER ERA FUT MAST CHE B92 FUE FUT h Ist TIMER RFUL LOAF IIMFR LIMIT TIMFA 10 1-126 CHEF #Ize FLT RFLnan Lor F #120 hk RFLOED STA E TIMER ie IMP Soke Kh DPSH LOA A MLEN SPT LTRSFEO7 s0ML FW bSk & TAP PSh & Pe b S18 LIRSE Loe A #EFF FUT DASH INTO RFCISTER R STA A LMAKK r Line @ StLnoT R Loa & StL nes ast 8 ECS LENFRR 100 MANY FITS FOR RFCLSTFR ASL BCE LENERE ING & INSPRT pasH bs S1é 6 SILPOT F S18 & STLDAS oy LOA BMLEN SFI KNSP=2eMLEN PSL e BRL 12 LOA # #127 Ryi2 STA 6 sosF ROSTORF Loe 6 mew F S10 LMLEN RPSFI LOE @ #SFF RESET “DATA-RFADY™ FLAG ke STA A DFLAG R SME WAIT kh LENFKA CLK STLO1 ELIMINATE Be oFTA F CLR STLNeS BRA FFSFT CVE Uk ON CHARACTER £255 0256 257 vese 0259 0260 e261 262 9263, o2ea e265, 266 267 e268 0269 e270 eT) 272 9273 e278 0275 e716 e277 eres, eice eice eee aice e1cr e232 208 e230 e230 bee e243 e246 24g eae ear e251 ese pose 257 BF 86 be eI 76 Td ec ce Fr 1 ce FT Fe 10 26 FT 1 7 70 26 FT 1 ce Fr BT 7 1 a Fe a 20 EL 2c 1 1 * 6 26 1 Fe oF a 66 pp a Fe ca 77 1 ose anes, kK K SHACE LOA Ph EPLEN IS SPLEN CFs LTASP? GMb LIRSF PLY RRSET LDA F SILDAS NFCORR LETIFR FRUY RFCS. fun F N€AF KFSTRICT WU € EITS Lee @ s1L007 AND A #SaF SL F aPh ANI A ACTF RESTRICT 10 7 FITS Lox #neciee STA A INDFRIFY ANDEAT LIB BF & RFIRLEVE ASCII cope k LDP A MDSACY FUFFFI: FULL? CMe eo #32 ECE RESE] IF 0s FINT.e ADD A GUTXCY CFNERATE FUFFFA FUINIRA AND A #SIF RESTRICT RANCE INC wOSKCV LOx «BUFF STA A INDFRP+L weer x25 B® a pane om INDFA2 STA F rh FUT CHAK. IN10_EUFFFR CLR STLDOT CLARK REGISTERS Lk S1LOAS LOA A SFLEN IS SPLEN .UF. WOSr? CMF A wOSE FLT RESET NOTA WOAD SFRCE LOA A WDSKCY INSFRT ELANK FOR KORD SPACE cur a 1S EURFFR FULL? EGF IF SOs PUNT. ADD A OUTACY GFNFRATF EUFFFR POLVIER AND h ASIF RESTRICT KASCF 1Nc Loa F PSCII BLANK CHAKACTEE Lox STA A INDFA3 SIA & FUT FLANK INTD EUFFFR © FNP OF MAIN PROGRAM + BFGIN DELAY Ime + CEWERATF "TIMER" MSFCS. OF FLeY Wald Lpe 6 TIMFR PLODPL Loe & MTIMe OLOOFe DRC & NE pLOOPe Dec A ENE pLOOF! END OF DELAY TIMER TEST AUDIO INPUT AFRE AOADLF OUTFUT TO TERMINAL, Loa a Fler CeY @UCLD INFUT OND A EEL ELI ZERO OF FIA CMF @ OLDSTA FI1#0 TE MarK ENF DIFFER INC TCVIR TST 16N1K Key #120 TONTR TRANS OVERFLOW OF 1eNIR? FIX OVFRFLOM okey DIFFER n SFT NDATACRRADY" FLAC DFLAL STORF ITEM LENCIK A MARK OF SEACE? SPACE, ZERO mae "1 SFI Lopate 10 oLnsie TIESPACEs T=MeRK Neuse ontRa RESET OLosTA RESFT TIME COUNTER TRANS CHECK FOR TFPRINEL FFADY LY 10 SFEFO TFRMIWAL s1 orb & BoE ING MP PAKCNT ouTeHK cousT S16R1 TERMINAL KFADY BEIURN TO FECINNING oureHK cL Loa e ENF Pilg coud wosxey wouut START Loa + ovtacy LDA PUFF STA & INDEXA®t INDEXA LOe # 4% OUTPUT CHAK. IN AECL A © USF SYSTEM SUBROUTINE 10 OUTFUT CHAKACTEK Jan ANY DATA IN FIIFFER? TF NOs RETURY wou GENERATE FUFFFR FOINTFR bec La & ING E ann & ste & Me END wosxey avTacy ante ouixcy START KFSTAICT KANCE FACK 10 THF BECINNING 33 previously sampled value. If no change is found, the time counter is incremented to indicate the increased length of the signal. If a change is found, then a series of processes are done. The data ready flag is set to tell the decoder that a pulse is complete, the time counter is stored into the mark length or space length variable, the data type (mark or space) is recorded, and the time counter is reset to one. A few notes are in order about sampling. First, the sampler assumes that an input level zero (ground) indicates the pres- ence of an audio tone (mark), and that a one level input (high voltage) indicates no tone (space). This setup coincides with the audio processing hardware described later; but if one wishes to have a one input signify mark instead, only two simple program changes are necessary. Changing the BNE (branch on not equal to zero) instructions on lines 236 and 241 to BEQ (branch on equal to zero) instructions will accomplish the inversion. This illustrates the ease of modifying the system when it is based on a program instead of hardware. One other note: One must protect against overflows of the time coun- ter. This occurs when long marks or long spaces cause the counter value to exceed the maximum value representable as a positive byte. MORSER checks for such occurrences, and resets the time counter to a large positive value whenever an overflow is detected. We come now to the decoding section. The section is a software version of algo- rithms abstracted from several hardware designs. It can be described by a set of five decoding rules. The length (time counter value) of the last mark received is used to determine the type of the present mark. The length of the last dash received is used to determine the type of space being received. RULE 1. If the new mark length is at least twice the length of the last mark received, then the new mark is a dash. If the new mark length is less than one half of the length of the last mark received, then the new mark is a dot. If the new mark length is more than one half but less than twice the length of the last mark received, then the new mark is the same type as the old mark was. If the new space length is more than 3/4 of the last dash length received, then the new space is a letter space. If the new space length is RULE 2. RULE 3. RULE 4. RULE 5. AupI0 INPUT O.1MF FROM RECEIVER longer than twice the last dash length received, then the new space is a word space, Any other space is an element space. These rules determine the processing path of each data item returned by the sampling section. The dots and dashes are stored in memory (STLDOT and STLDAS) until a letter space is detected. Then the memory contents are converted to an offset in DECTAB, follow- ing the process previously described. The character code found in DECTAB is then transferred to the output buffer. The buffer is arranged as a 32 character first in, first out store which allows the decoding to get ahead of the output device for short periods. The detection of a word space causes the latest letter to be decoded and an extra blank character is inserted into the output buffer to provide a space between output words. The decoding section also adjusts the TIMER value each time a dot is detected. Dots are nominally four samples long. If a dot is declared shorter than three samples, the sampling period is reduced. If a dot is declared longer than five samples, the sampling period is increased, This mech- anism helps MORSER to follow changes in code speed during a message or even within characters. The flexibility of the decoding rules will allow code far from the proper timing to be decoded correctly during the adjustment process. Most de- coding errors will result either in no charac- ter at all being output, or a blank being +12v +5V 4 5K NES67 2k To Pia 2 # <S INPUT P TUNE m 6, z + aa ; FR l00pF tk 25 nF ar [ l Te Figure 1: A suggested audio input processing circuit designed to be used with an amateur radio receiver. The tuning adjustment sets the frequency of the signal which is to be interpreted as a dot or dash by the program. The receiver tuning and BFO should be adjusted so that the desired station will have its dots and dashes at the frequency set by R1. 34 INosay RMB 2 INDEX substituted for the garbled character. MORSER can handle code with wild speed variations and weightings from 10% to 90%, but it can be fooled by sufficiently erratic code. So too, however, can most human operators. MORSER uses a programming “‘trick” in conjunction with indexed addressing to facilitate the decoding and output process. This occurs on lines 174, 183, 198, and 267. The problem is to retrieve or store data at a particular location within a table or buffer. The starting address of the area is known, and the desired offset is calculated each time. MORSER uses the technique of modifying itself during execution. Since the program is stored in programmable memory, it can be changed just as the variables can be changed. In Motorola systems, the second byte of an instruction using indexed address- ing stores an offset to be added to the index register contents to generate the final effec- tive address for the instruction. MORSER loads the index register with the beginning of the desired table and then writes the calculated offset into the second byte of the indexed instruction. The processor adds the two, making the desired address. This works well, as long as the program is stored in programmable memory, and one is careful where one writes. If this type of trickery is to be avoided (for example, if the program is to be put into read only memory), the process of adding the offset to the base address must be done explicitly. The follow- ing code will perform the function, where X contains the starting address of the table, and accumulator A contains the offset: Programmabie memory area for computation st inosav Starting addvess PSH 8 Save contents of B sccumulitor CLR 8 ADD A INDSAV#1 Add tow order part of address with ltset ia & ADC 8 ~—INDSAV. Add high avd part of audress wth carey STA A IN

Showing the first 100000 of 507255 characters.

mp.ls