[editor : Carl T. Helmers Jr.] [publisher : Virginia Londoner (Virginia Londner), Gordon R Williamson] [art : Ellen Bingham, Wai Chiu Li, Christine Dixon] [cover : Robert Tinney] #Magazine
#Abstract
The Heath H8 is part of the family of Heath computer kits. Dr Paul R Poduska describes his experience of assembling this well-documented kit in Building the Heath H8 Computer. page 12
One way to see what the Texas Instruments TMS-9900 processor can do is to cover the instruction set using A Map of the TMS-9900 Instruction Space by Henry Melton as a guide. His short article gives a summary of the available operations plus details for all the possible operation codes of the machine. page 14
After setting up a computer system with the hardware and software to handle files, how do you use it? In part 2 of Files on Parade, Mark Klein describes file management and programming techniques using files. page 32
In A Microprocessor for the Revolution: The 6809, Part 3: Final Thoughts, 6809 architects Terry Ritter and Joel Boney of Motorola discuss clock speed, timing signals, condition codes and software design philosophy as they apply to the 6809. page 46
In Cryptography in the Field, Part 1, Dr J P Costas gives a brief history of the fascinating world of cryptography, to be concluded next month with a programmable calculator encryption and decryption program. page 56
Robert V Meushaw's article describes the workings of and some of the theory involved with The Standard Data Encryption Algorithm, one of a class of algorithms known as "trap door" algorithms. page 66
The Z-8000 is Zilog's new entry into the field of 16 bit processors. In addition to its impressive speed, the Z-8000 in conjunction with an outboard memory management device allows programmers to employ virtual memory techniques. Read about it in Ira Rampil's Preview of the Z-8000. page 80
If you'd like to double your pleasure and double your fun, try designing with two printed circuit board sides instead of one. David Lamkins shows you how to get more for your money in Designing with Double Sided Printed Circuit Boards. Perhaps that topology course you took might come in handy after all . page 94
Andrew Filo concludes his article Designing a Robot from Nature with an overall description of the system as well as construction details for building a net convexity detector, which mimics the frog's ability to detect insect flight patterns. page 114
This month Paul Giacomo concludes his 2 part Stepping Motor Primer with a look at interfacing the stepping motor to a computer as well as a discussion of damping, inertia and other related topics. page 142
This month Steve Ciarcia completes his 3 part article Build a Computer Controlled Security System for Your Home with a discussion of burglar alarms, intrusion detectors, and the rest of the circuitry you'll need to make your home secure. page 150
First time users of Warnier-Orr diagrams consistently have many questions about the correct usage of the technique. David A Higgins describes some conceptual errors and other Common Mistakes Using Warnier-Orr Diagrams. page 170
If many people have access to your computer, you may want to protect the information contained within it. One way is to implement Password Protection for Your Computer as described by R Jordan Kreindler. page 194
This month Robert C Arp Jr begins a 2 part article about The Power of the HP-67 Programmable Calculator. Part 1 is a review of the features and performance of this powerful desk top wonder. page 196
What Is an Interrupt? In brief, it is the act of safely stopping one process and causing your computer to start (resume) another process. For some background information on interrupt processing, see R Travis Atkins' tutorial in this issue. page 230
Keith S Reid-Green continues his History of Computers with a discussion of one of the early minicomputers, The IBM 650. page 238
[author : John R Allen] #Edito #Book
Extract : « Pascal has reached critical mass; it has flashed through the mainframe, minicomputer, and now the microcomputer field. It has much to support its popularity; however, it represents but one point of view about computing.
This discussion offers a contrasting position, as "personified" by LISP. I will discuss not relative expressive power or syntax, but rather that the forces and attitudes which shaped the languages (and the kinds of problems which the languages address) represent diverse views of computation. In the 1969 Software Engineering Conference, Niklaus Wirth (creator of Pascal) said:
I would like to discuss the trend towards conversationality in our tools. There has been, since the development of timesharing and on line consoles, a very hectic trend towards development of systems which allow the interactive development of programs. Now this is certainly nice in a way, but It has its dangers, and I am particularly wary of them because this conversational usage has not only gained acceptance among software engineers but also in universities where students are trained in programming. My worry is that the facility of quick response leads to sloppy working habits and, since the students are going to be our future software engineers, this might be rather detrimental to the field as a whole. [...] »
A detailed description of a "trap door" algorithm
[author : Robert V Meushaw] #Cryptography #Algorithm #HowItWorks
Extract : « Recently, I have seen many articles describing new commercial encryption equipment using the Standard Data Encryption Algorithm. There have also been recent announcements of integrated circuits, like the Intel 8294, which implement the standard. The Standard Data Encryption Algorithm has been published by the National Bureau of Standards for use in the protection of computer data. The algorithm is described in FIPS Publication 46, available from the US Department of Commerce. After months of being bombarded with publicity regarding the encryption method, it finally struck me that I had found a perfect project for my KIM. The challenge became to implement the algorithm with the basic memory provided and to achieve sufficient processing speed to make it practical for use by others. Along the way, I hoped to investigate the advantages and disadvantages of the 6502 in performing the necessary tasks. [...] »
This do-it-yourself technique can save you space
[author : David Lamkins] #Electronic
Extract : « Magazines for electronic hobbyists sometimes run articles about do-it-yourself printed circuit layout and construction. Unfortunately I never saw an article which presented a unified printed circuit design strategy for large and very large systems (eg: a board with 20 or more integrated circuits).
Consequently, when the time came for me to design the printed circuit boards for a system involving more than 900 semiconductors, with greater than 60 percent of that count being integrated circuits, I didn't know where to begin.
Determination is the prime motive force in a project that large, so I went ahead and started. Along the way I took notes about what I learned. Using the methods I developed, you should be able to design double sided printed circuits for your own behemoth kluge without undue anger or frustration.
To undertake a large printed circuit project, you should be properly equipped. Simple "pen and ink on grid paper" techniques may be adequate for small boards, but on a larger layout, even with only 20 integrated circuits, you will have an absolute minimum of almost 300 integrated circuit leads. Try drawing that many pads on 0.1 inch centers, not to mention interconnecting traces and associated components, and you will end up in a sobbing heap on your workshop floor. [...] »
Design details of the robot's eye in the second of this 2 part article
[author : Andrew Filo] #Robotics #Book
Extract : « The first piece of hardware to be built in my system was the manipulator. From the start it was obvious that a tongue-manipulator concept would be impractical; I chose remote operator control over the manipulator arm because I wanted to program manipulator motion by "teaching," and also to assist the system during its operation if necessary.
The manipulator I designed was roughly modeled after a human arm, with regard to its actions and dimensions. The manipulator is capable of five degrees of freedom, making it suitable for control by the motion of joints in a remote operator's arm. The prototype arm was originally designed to be pneumatically operated, but electric motors were substituted for convenience during testing. The motors (which accurately simulate the actions of pneumatic pistons and their servo valves) are electro-optically controlled. [...] »
Interfacing to your computer, and other considerations
[author : Paul Giacomo] #Interface #Electronic
Extract : « Interface Circuitry
Part 1 of this article ("A Stepping Motor Primer," February 1979 BYTE, page 90) described the theory of operation of the stepping motor. Part 2 concludes the discussion with a description of how to interface stepping motors to microcomputers. The interface can be accomplished in several different ways. The most common methods are to either decode the control sequence in software, outputting it to a parallel port with buffers and connecting the output of the buffers to the drive transistors, or use the output ports of the computer to feed into an external decoder that will sequence the drive. Since personal preference and individual application dictate how much or how little of this will be in the program, I will first describe a hardware version for a 4-phase, full-step drive, then describe how to transfer it to software.
Let us assume that two control lines from an input/output (IO) port are used to control the stepper. One line is for direction and the other is for a step command. The program can then control the speed of the motor by controlling the frequency of pulses on the control line. Figure 17 shows a simple interface circuit. The control lines coming from an output port are buffered and sent over a cable to this circuit, which is in close proximity to the motor. (Avoid high voltage and current spikes near the processor.) The first thing to be done is to clean up the signals and then feed them into an up-down counter. The counter determines in which of the four excitation stages the motor is to be. The outputs of the counter are fed into a decoder section that activates the driver transistors at the correct time. [...] »
Ultrasonics, infrared beams and other exotic ways to make your home secure
[author : Steve Ciarcia] #Electronic #Interface #Listing #Assembly
Extract : « There are many security systems on the market. From the simple $10 door buzzers which signal forced entry to elaborate professionally installed Rollins and ADT systems, their purpose is singular: give the occupant advance warning of an emergency condition. Protection of property is a secondary benefit of the more sophisticated alarms. Ultimately it is the overall complexity of the security system that defines how much coverage is attained in each of these areas.
Forced entry, prowler, and fire detection are but three possible events for which people buy alarms. A $15 smoke alarm alerts the occupants, who rush out of the house in the nick of time but stand watching the house burn because they didn't have time to call the fire department. Similarly, a prowler breaks into a home when the family is out. He has grown accustomed to the regular pattern of timer controlled lights after observing the house for a few nights and immediately disables the alarm horn upon entry. Had the occupants been home they of course would have been alerted to the break-in, but that was not the thief's intention.
To provide full protection, the ultimate security system should discourage intrusion, monitor all potential emergency situations and have the intelligence to initiate a preset series of actions should the alarming event ever occur. Combining all these elements into a single computer controlled security system is the subject of this and the two preceding articles (January 1979 BYTE, page 56; February 1979 BYTE, page 162). [...] »
Learn to use one of the most powerful programmables
[author : Robert C Arp Jr] #ComputerPortable #Review
Extract : « This article is not a simple product review. Rather, it is the presentation of a complex programming example designed to illustrate the exploitation of a computing system composed of the HP-67 and its accessories, and worksheets that reduce the task of programming the calculator to a systematic exercise. The HP-67 is a pocket- sized version of the HP-97. The built-in thermal printer of the HP-97 is the major difference between the calculators. The HP-67 is shown in photo 1.
In addition to the HP-67, there are other sophisticated programmable calculators available at price levels which attracted consumers to the first scientific calculators in 1972 and the years following. I purchased my HP-35 early, and until the introduction of the HP-67 I considered it to be the finest calculator ever manufactured.
I must admit that I was intrigued by the features of the SR-52 when it was introduced. However, three of the Hewlett- Packard features force me to vote for the HP-67: choice of display format (fixed decimal, scientific and engineering; all with number of digits control), reverse Polish notation (RPN), and my previous experience with Hewlett-Packard. (Since 1972 I have experienced zero down time with the HP-35. Therefore, I am properly impressed with HP quality.)
Although I expect to see calculators with more memory capacity and some increase in programming capability in the future, I think the HP-67 represents a plateau of sophistication that will satisfy the needs of a large percentage of users. The HP-67 has 26 data storage registers, 224 steps of program memory (each step can hold as many as three keystrokes), unconditional and conditional branching, three levels of subroutines, four flags, 20 labels, indirect addressing, and, if that isn't enough, it accepts magnetic cards that record data or programs. In addition, each of the 35 keys control up to four separate operations, and, of course, it is completely portable with the rechargable battery pack. [...] »
A review of a popular computer kit
[author : Dr Paul R Poduska] #ComputerKit #Experience #Listing #Assembly #BASIC
Extract : « In response to growing public interest in microcomputing during the past several years, a number of microcomputer kits have been marketed.
The Heathkit H8 microcomputer represents a departure from the S-100 bus design mainstream. It has the full instruction set capabilities of other 8080A systems as well as an innovative, user oriented front panel control subsystem and a 10 position mother board; yet it does not use the type of large power supply found in some larger systems.
It was the kind of design I was hoping for. I was seriously considering the purchase of a computer for some time, and prior to the introduction of the H8, I almost did buy one. But I had a hunch that the Heath Company might resolve some of the design drawbacks that discouraged me from buying other 8 bit kits.
What follows are my experiences, thus far, of building, testing, and running this computer kit. By the time you've finished reading this article you should have a good feel for what the H8 is, what it can do, and how it compares with other kits on the market. In addition, I'll give you a few pointers and short programs that will enable you to take advantage of some of the H8's many features. [...] »
Organizing one's approach to a machine with 2^15.95 legal instructions
[author : Henry Melton] #Microprocessor #Programming
Extract : « Now that the TMS-9900 16 bit computer is being marketed to the computer experimenter, some easy way to handle its 63,480 individual op codes at a level of "hand assembly" is going to be necessary. The standard method of programming the 16 bit machine involves higher level languages, or at the very least, a good symbolic assembler. The op codes of an 8 bit machine are smaller in number and can be fairly easily memorized by a machine level programmer confined to the limited resources of hand assembly. But nearly every instruction on the TMS-9900 has to be constructed, calculated from the instruction's format, depending on the selected options of the moment. That is the essence of the machine's power, but it makes building and analyzing programs at a machine language level difficult. The charts in this article should help simplify the matter. [...] »
File protection systems and sundry other matters
[author : Mark Klein] #Storage #DataManagement #OperatingSystem #Listing #BASIC
Extract : « In part 1 we discussed the concept of the file. In part 2 we conclude with some practical techniques for using files.
Getting a list of the files on your system is a task you probably perform often. Table 6 is a sample directory (which also appeared in part 1 as table 4a). Notice the command string used to produce the table just above the directory itself. In table 6 the first asterisk is the prompt, the computer's signal to enter a command. The letter Q is the Query command, used to produce file directories. The next asterisk is a wild card name instead of the file name: it means "give me (a list of) all the files on this device." Finally there is a software switch, /1, specifying floppy disk drive number 1.
Depending on the operating system, wild card characters can also be used. The PerSci controller, for example, allows a command string like: QFIL???.MPK/1 which means:
List [Q] all files on drive number 1 whose extension (version) is MPK, and whose file name begins with the letters FIL, regardless of what the next few letters are.
This article was produced on a text editor and for convenience the different parts were given different file names: FILFIG.MPK held the list of figures; FILCAP.MPK held the figure captions; FILAR1, FILAR2, etc, held text proper. The extension .MPK identified the files as belonging to me. Thus the command string above would produce a directory listing of all files holding parts of this article. [...] »
Final thoughts about the successor to the Motorola 6800 processor
[author : Terry Ritter and Joel Boney] #Review #Microprocessor
Extract : « In part 3 we conclude our discussion of the Motorola 6809 processor with some thoughts on clock speed, timing signals, condition codes and software design philosophy for the 6809.
We expect that our logic and circuit design cohorts will be able to get significant production at a 2 MHz bus rate (and possibly faster) with the 6809. But this value alone means next to nothing as a figure of processor merit (we did consider using a very high frequency on chip oscillator so we could win the clock rate race, but decided at the last minute that a resonant cavity would not be acceptable to most users).
Other processors use an internal state machine to implement the required internal operations. These processors frequently require multiple states and multiple clock edges to implement operations which are done in one cycle on 6800 class processors. [...] »
A brief historical look at cryptography
[author : John P Costas, Phd] #Cryptography #Hystory #HowItWorks
Extract : « Cryptography could be described as the science or art of transforming messages into forms that render them unintelligible to outsiders. This is an old and fascinating field and the interested reader could hardly do better than to read a most remarkable book on this subject by David Kahn called The Codebreakers.
A few definitions are needed before proceeding. Plaintext is the message to be put into secret form. The message, after cryptographic transformation, is known as a cryptogram . An authorized individual who is privy to the secrets of the system is said to decode or decipher the message when converting the cryptogram to plaintext. Cryptanalysis is the science or art of extracting the meaning of a cryptogram without the key. Cryptology is the science or art encompassing both cryptography and cryptanalysis.
A code is a cryptographic transformation in which no fixed relationship is maintained between the number of symbols in the plain-text and the corresponding cryptographic transformation or codetext. [...] »
A look at Zilog's new 16 bit processor
[author : Ira Rampil] #Microprocessor #Review
Extract : « The Z-8000 (shown in figure 1) is Zilog's new entry in the field of 16 bit processors. It is a single chip processor with more raw processing power than many popular minicomputers. Benchmarked against the popular PDP-11 family, the Z-8000 is between the 11/45 and the 11/70 in speed for many simple instructions. The processor also introduces several sophisticated minicomputer hardware techniques such as memory management, separate system/user operation modes, separate memory space for data, stack contents and code, and long word instructions. The remainder of this review will offer a very brief description of the Z-8000 so that future thinking personal computer experimenters can begin planning applications for it. [...] »
Avoiding pitfalls when using this alternate flowcharting method
[author : David Higgins] #Method #Tips
Extract : « In my opinion, one of the best program and system design methods is the Warnier- Orr structured systems design approach, which I described previously ("Structured Program Design," page 146, October 1977 BYTE; "Structured Programming with Warnier-Orr Diagrams," page 104, December 1977 and page 122, January 1978 BYTE). This article is being presented because of the interest expressed in this subject, and because a lot of people will be trying these techniques for the first time. Newcomers to this methodology often have many questions about their work, and want to know whether or not what they are doing is correct. The purpose of this article is to outline a few of the more common mistakes that beginners make when using this technique. [...] »
How to keep data and information "for your eyes only"
[author : R Jordan Kreindler] #Listing #Assembly #Algorithm
Extract : « Is your computer available via the telephone? Do you plan to leave it in a public area but want to limit its use? Will your system be used in a school environment where access must be controlled?
If the answer to any of the above questions is "yes," this article should interest you.
A Simple Password Procedure
One way to restrict system access is by lock and key. An easier method is to setup a password requirement. [...] »
Learn how to use peripherals efficiently with interrupts
[author : R Travis Atkins] #HowItWorks #Algorithm #Initiation #Programming
Extract : « Busy work! It's a terrible thing to inflict on people or computers. Wait loops in input or output operations are busy work for computers, and unless you learn how to tap your computer on the shoulder when you need it, it will probably spend most of its time doing busy work.
As hobbyists, we are always concerned about squeezing the greatest value out of our investments. We want our computers to run as efficiently as possible. Since it is likely that we will be involved in designing and building some of our own 10 devices, we should develop an understanding of the concept of interrupts. To efficiently program peripherals for 10 purposes it is often necessary to use interrupts.
This article introduces the basic concepts of interrupts, defines the terminology that applies to interrupt mechanisms, and describes the processing events that must occur during the time from the receipt of an interrupt to the return from that interrupt. [...] »
A glance at a past favorite
[author : Keith S Reid-Green] #Computer #History
Extract : « The 650 was the most popular IBM computer during the 1950s until it was supplanted by the 1401 at the end of the decade. The machine was used widely by small banking, accounting and insurance companies which did not require the capabilities of the relatively powerful 705, and it is safe to say that IBM's current share of the commercial data processing market got its initial impetus from the successful marketing of the 650. However, the sophisticated personal computer user of today wouldn't give a passing glance to a machine of its capabilities. [...] »
#Book
Extract : « Your Own Computer by Mitchell Waite and Michael Pardee Howard Sams Co Inc Indianapolis IN, 1977 80 pages $1.95 [...] »
#Association