1976 2.05 1978

Vol.2 n°5 may 1977

Vol.2 n°5 may 1977

(byte_1977_05.jpg)

[editor : Carl T. Helmers Jr.] [publisher : Virginia Peschke, Manfred Peschke] [art : Noreen Bardsley, Mary Jane Frohlich, Ellen Shamonsky] [cover : Birgit Quednau] #Magazine

p.4 In This BYTE

p.4 In This BYTE

#Abstract

About the Cover : Birgit Quednau, a student of biomedical technique at the university in Giessen, Germany, who is interested in small computer systems and batik, combined both fascinations to produce this month's cover, another winning entry in BYTE's Computer Art Contest.

Ideas and imagination are the inputs to creative uses of computers. Ted M Lau has set down some of his thoughts on potential personalized uses of computers in his Catalog of Liberating Home Computer Concepts. Some of his suggestions can be implemented with present technology. Some will have to await further development. In either case the prospects are exciting.

Artificial intelligence has intrigued people for many years. The possibility that computers may be able to "think on their own" is one of the recurring themes of science fiction. Artificial intelligence is starting to pervade reality, not the super thinking beasts of fiction, but the machines that perform tasks normally thought to require intelligence. In his article, Artificial Intelligence, an Evolutionary Idea, Michael Wimble describes one type of artificial intelligence technique which readers may find quite useful.

What does it take to make a computer system complete to the point of plugging it into the wall, plugging it into a color television, and turning it on? Stephen Wozniak of Apple Computer describes the design of such a system in his product description article on the Apple-II.

Now that you have your microprocessor up and running you surely want to parade it before some of your friends and relatives. Your cluttered basement or garage workshop, however, may not be the best place to demonstrate your brainchild. In his article, Come Upstairs and Be Respectable, Steve Ciarcia describes his solution to this dilemma by installing a remote keyboard and video monitor in his den. This arrangement is great for parties and other gatherings since the vital components of the processor cannot be subjected to the whims of some unknowledgeable person.

Joseph J Carr , in his first of a two part article on interfacing With an Analog World, gives us an insight in to transducers and some of the problems of processing their outputs into signals which can be digitized by an analog to digital converter.

Adding floating point calculation abilities to your microprocessor can represent a quantum leap forward in performance. The floating point functions discussed by Sheldon Linker in his article, What's in a Floating Point Package? , will allow you to perform addition, subtraction, multiplication and division with extremely large or small numbers, using software exclusively.

How can you convert one of those surplus keyboards with out encoders into a usable text input? Find out by reading Bob Brehm's Using a Keyboard ROM.

Jack Emmerichs' Tiny Assembler presentation is completed in the second part of his article in this issue: Implementing the Tiny Assembler. Readers will find a discussion of structured code details for a 6800 as well as complete object code and sufficient information to get Tiny Assembler 6800 up and running in any machine with MIKBUG and at least 4 K of memory starting at address 0000.

Last month Michael S McNatt described the various types of Baudot teleprinters that are available on the surplus market today. This month he describes various ways in which these devices can be interfaced to a microprocessor using both hardware and software techniques in his article, A Guide to Baudot Machines: Part 2, Interfacing Techniques.

Using someone else's interpreter or compiler is the normal mode of operation for anyone contemplating a high level language. But with any complicated piece of software, use sometimes requires a bit of ingenuity on the part of the user as David Chapman points out in his description of a nit in many a BASIC interpreter. Turn to All This Just to Print a Quotation Mark? You'll also find a short glossary including some very important terms in the world of applications software.

The 8080 microprocessor generally performs operations using 8 bit words. There are, however, several ways in which 16 bit words can be manipulated on the 8080. In the article, 8080 Programming Notes, John McCarty and Paul Krystosek elucidate on 16 bit data manipulation.

p.6 Surveying the Field

p.6 Surveying the Field

[author : Carl Helmers] #Edito

Extract : «  Who Uses Personal Computers?

In the fall of 1976 Mike O'Brian, who is a second year student in the MBA program of the Tuck School at Dartmouth College, approached us with the idea of doing a reader survey of BYTE's circulation as an independent study project. For those among our readers who contemplate starting a magazine (or any other business for that matter) you should be aware of one fact: There are so many things to be done which are never anticipated until you get into the project that priorities have to be made and various "neat" ideas put off on occasion. This reader survey task is one such "neat" thing to do from our point of view, but of lower priority than such obvious high priority items as preparing the magazine once a month, attending to circulation matters, etc. As a result, the idea had languished. When Mike made his suggestion that we fund the mailing and printing and administrative costs with he himself providing the statistical analysis and data reduction for his course work through facilities at Dartmouth, the response was somewhat predictable: We now had a way to do a survey. [...]  »

TABLE OF CONTENTS

Foreground

Foreground

p.17 A CATALOG OF LIBERATING HOME COMPUTER CONCEPTS

p.17 A CATALOG OF LIBERATING HOME COMPUTER CONCEPTS

[theme : Speculations] [author : Lau] #GeneralQuestions

Extract : «  Unlike commercially developed systems, home grown computer systems are not required to justify themselves directly in terms of dollars and cents, which means that home grown systems can be put to a wide variety of uses, from whimsical games for pure enjoyment to public services for helping people, uses that are certainly worthwhile but whose worth cannot be quantified. I suspect the computer hobby will continue to address itself to a broader range of applications even after prepackaged consumer oriented systems have filled the marketplace in the next few years. [...]  »

p.34 THE APPLE-II

p.34 THE APPLE-II

[theme : System Description] [author : Wozniak] #Review #ComputerDesktop

(byte_1977_05_p034.jpg)

Extract : «  To me, a personal computer should be small, reliable, convenient to use and inexpensive.

The Apple-I, my first video oriented single board computer, was designed late in 1975 and sold by word of mouth throughout California and later nationwide through retail computer stores. I think that the Apple-I computer was the first microprocessor system product on the market to completely integrate the display generation circuitry, microprocessor, memory and power supply on the same board. This meant that its owner could run the Apple BASIC interpreter with no additional electronics other than a keyboard and video monitor. The Apple-I video computer board was originally intended as a television terminal product which could also operate in a stand alone mode without much in the way of memory, although it did have a processor, space for 8 K bytes of 4 K dynamic memory chips, and its shared video generation and dynamic memory refresh logic. Apple-I was sold as a completely assembled and tested processor board with a price under $700 at the retail level.

The latest result of my design activities is the Apple-II which is the main subject of this system description article. The Apple-II builds upon this idea by providing a computer with more memory capability, a read only memory (ROM) BASIC interpreter, color video graphics as well as point graphics and character graphics, and extended systems software. [...]  »

p.56 INTERFACING WITH AN ANALOG WORLD-Part 1

p.56 INTERFACING WITH AN ANALOG WORLD-Part 1

[theme : Peripherals] [author : Carr] #Interface #Electronic

Extract : «  The jobs which a computer can perform require some method for interfacing with the outside world. Most of us are familiar with the requirements and abilities of the many digital peripherals, but lack any practical insight into the use of analog 10 signals. To many, especially those oriented toward software, doing anything in the analog world seems like an anachronistic art form, or from a technical point of view, a lot like trying to skin an amoeba. However, the analog world exists, and some means must be provided for interfacing the computer with it. Since most devices and machines in our world are analog, this will extend your computer horizons more than you may appreciate. So if you want to put your machine to the task of some really serious work, the time has come to learn about some of the requirements of analog electronics.

Several problems present themselves in this area. We must understand something of the measurement of physical and electrical parameters from the real world, amplification and signal processing, analog readout devices, and conversions from analog to digital or vice versa. [...]  »

p.62 WHAT'S IN A FLOATING POINT PACKAGE?

p.62 WHAT'S IN A FLOATING POINT PACKAGE?

[theme : Software] [author : Linker] #Algorithm

Extract : «  If you have been using computers for any length of time, or have used a calculator, you know the value of floating point numbers. In this article, I will endeavor to show how floating point works and how to use it.

Initially, you must understand the representation of real numbers. In the decimal system, a real number may have a sign, a decimal point, digits to the left or right of the decimal point, and an exponent. The general form is commonly referred to as scientific notation. This form is: ±N.NNNNNNX10±MM where N.NNNNNN is the "mantissa" and MM is the "exponent." Unfortunately, decimal numbers are hard to deal with, even with the decimal add or adjust instructions of some microprocessors. There are some simplifications that can be made without serious loss of precision:

1. It is easier to handle the numbers if all of the digits are on the same side of the decimal point. This simplifies the shifting used to "normalize" results after a multiply or divide instruction. The decimal form of this is: ±.NNNNNNNX10±MM

2. The exponent base should, for simplicity of programming, be a power of 2. Assuming that a 6 bit (excluding sign) exponent is to be used, table 1 helps in selecting the base by giving the magnitude range (in decimal) for a 6 bit positive exponent. [...]  »

p.98 A GUIDE TO BAUDOT MACHINES: Part 2

p.98 A GUIDE TO BAUDOT MACHINES: Part 2

[theme : Interfaces] [author : McNatt] #Interface #Overview #Keyboard #Printer #DataEntry #Encoding

Extract : «  To use a Baudot page printer or keyboard with your computer system, some method must be devised to enable communications between the processor and the serial Baudot device. Traditionally, these interface methods have been classified as either software or hardware. Both methods seem to have supporters who are radically convinced that the method they've chosen is the best. Strictly speaking, none of the Baudot machine interface methods can be called purely software or purely hardware; they all lie somewhere in between. However, the hardware code converter obviously requires the least amount of new software generation. [...]  »

p.132 ALL THIS JUST TO PRINT A QUOTATION MARK?

p.132 ALL THIS JUST TO PRINT A QUOTATION MARK?

[theme : Software] [author : Chapman] #Listing #BASIC #Programming

Extract : «  It is remarkable how much trouble a minor fault in the design of a computer system can cause. An example that I have run up against is the virtual impossibility of printing a quotation mark in several versions of BASIC with any degree of efficiency. The version of BASIC I presently use is Digital Equipment Corp's EDUSYSTEM 25 BASIC, but I've found the same nit in several other BASIC interpreters.

Suppose it is necessary that the following string be output:

IN BASIC, THE QUOTATION MARK (") IS A DELIMITER. [...]  »

p.136 8080 PROGRAMMING NOTES

p.136 8080 PROGRAMMING NOTES

[theme : Software] [author : Krystosek-McCarty] #Listing #Assembly #Programming

Extract : «  With a couple of exceptions the 8080 microprocessor instruction set primarily operates on eight bits at a time. But with some imagination several 16 bit operations can be performed by using these exceptions. The basic technique is to use the HL register pair as an accumulator rather than as an address and index register. The simplest 16 bit extension is just a different name for the DAD H instruction. The effect of this operation can be stated in three ways:

A Add the HL register pair to itself.

B Multiply the HL register pair by two. (We might rename it M2HL.)

C Shift the HL register pair left one bit position. (We might rename it ASLHL for "arithmetic shift left HL") [...]  »

Background

Background

p.26 ARTIFICIAL INTELLIGENCE, AN EVOLUTIONARY IDEA: Part 1

p.26 ARTIFICIAL INTELLIGENCE, AN EVOLUTIONARY IDEA: Part 1

[theme : Software] [author : Wimble] #Initiation #ArtificialIntelligence

Extract : «  Artificial intelligence is a subject that has fascinated people the world over for many years, but with the introduction of the computer this fascination is becoming a reality. I do not mean the intelligence depicted in so many science fiction books and sensational movies, but rather the slow and methodical application of computers to perform tasks formerly thought to require intelligence. To attempt to even briefly describe the areas and techniques of artificial intelligence research would certainly occupy several text books. The small computer user can, however, enter this exciting field and perform personal research and experiments by using the technique described in this article.

The technique is called "Artificial Intelligence Through Simulated Evolution" and its early use and implementation is described very well by Fogel, Owens and Walsh in their book of the same name, published by John Wiley and Sons, New York, 1966. I have chosen the technique for several reasons:

1. It can be simple to implement.

2. It is a powerful technique.

3. It is readily programmable on any small general purpose system.

4. It gives the user a quick and simple introduction to the realm of artificial intelligence. [...]  »

p.50 COME UPSTAIRS AND BE RESPECTABLE

p.50 COME UPSTAIRS AND BE RESPECTABLE

[theme : Hardware] [author : Ciarcia] #Electronic #Interface

Extract : «  For those of you who remember about Walt and Ralph in "Having a Private Affair With Your Computer" [April 1977 issue of BYTE] , I suppose I can say that with friends like that I am not in any great need of enemies. What may have appeared as a losing situation on my part did have some beneficial side effects — namely, the remote terminal which I installed in my den to accommodate the comings and goings of people using my system. [...]  »

p.76 USING A KEYBOARD ROM

p.76 USING A KEYBOARD ROM

[theme : Hardware] [author : Brehm] #Electronic #Keyboard #Memory #Encoding

Extract : «  The keyboard encoder read only memory has become more plentiful in the experimenters' market recently. This versatile device can be used to generate the full ASCII character set thus allowing the hobbyist to easily and economically convert unencoded or non-ASCII keyboards to ASCII. This article presents both the logic theory and a general description of one such encoder, the SMC KR2376 MOS keyboard ROM, so you will know how it works as well as the features that are available. Addition of a repeat key and LED code readouts are also shown and explained. After reading this, you should be able to take any keyboard, strip it of unknown encoding and convert it to an ASCII keyboard for use with your computer. [...]  »

p.84 IMPLEMENTING THE TINY ASSEMBLER

p.84 IMPLEMENTING THE TINY ASSEMBLER

[theme : Software] [author : Emmerichs] #Method #Programming

Extract : «  When all the functional requirements for Tiny Assembler had been described in a well structured format, the final structural network of the program was realized, as given at the end of last month's introduction to this program. Combining figure 3 of page 66, April 1977 BYTE, with detailed table definitions, I was at long last ready to begin actual coding of the assembler itself. [...]  »

Nucleus

Nucleus

p.10 Letters

p.10 Letters

p.46 p.121 p.143 What's New?

p.46 p.121 p.143 What's New?

p.68 p.142 Technical Forum

p.68 p.142 Technical Forum

p.116 p.127 p.152 BYTE's Bits

p.116 p.127 p.152 BYTE's Bits

p.117 New ASCII Standards

p.117 New ASCII Standards

p.120 Classified Ads

p.120 Classified Ads

p.128 BYTE'S Bugs

p.128 BYTE'S Bugs

p.145 Solution to 8080 Bug in the Stack

p.145 Solution to 8080 Bug in the Stack

p.145 Answer to Bar Code Puzzle

p.145 Answer to Bar Code Puzzle

p.146 Book Reviews

p.146 Book Reviews

#Book

Extract : «  Content Addressable Parallel Processors by Caxton C Foster, Van Nostrand Reinhold, New York, 1976, 233 pages, $11.95. [...]  »

p.148 Ask BYTE

p.148 Ask BYTE

p.156 Clubs, Newsletters

p.156 Clubs, Newsletters

#Association

p.176 BOMB

p.176 BOMB

p.176 Reader Service

p.176 Reader Service

ADS (content taken from the reader service p.176)

ADS (content taken from the reader service p.176)

p.147 Abbott Computer Co

p.147 Abbott Computer Co

p.165 Advanced Microcomputer Products

p.165 Advanced Microcomputer Products

p.161 Aldelco

p.161 Aldelco

p.147 Alpha Digital Systems

p.147 Alpha Digital Systems

p.48 Anderson Jacobson

p.48 Anderson Jacobson

p.147 Bay Area Time Share

p.147 Bay Area Time Share

p.129 BITS Inc

p.129 BITS Inc

p.130 BITS Inc

p.130 BITS Inc

p.131 BITS Inc

p.131 BITS Inc

p.147 BITS Inc

p.147 BITS Inc

p.148 BITS Inc

p.148 BITS Inc

p.155 BITS Inc

p.155 BITS Inc

p.151 Bits and Bytes

p.151 Bits and Bytes

p.67 BPI

p.67 BPI

p.151 Byte Shop East Inc

p.151 Byte Shop East Inc

p.151 Cheap Inc

p.151 Cheap Inc

p.160 Comptek

p.160 Comptek

p.14 Compucolor

p.14 Compucolor

p.151 Computalker

p.151 Computalker

p.151 Computer Corner

p.151 Computer Corner

p.159 Computer Electronics

p.159 Computer Electronics

p.160 Computer Enterprises

p.160 Computer Enterprises

p.104 Computer Kits

p.104 Computer Kits

p.157 Computer Mart of NH

p.157 Computer Mart of NH

p.152 Computer Mart of NY, LI

p.152 Computer Mart of NY, LI

p.157 Computer Place

p.157 Computer Place

p.114 Computer Room

p.114 Computer Room

p.97 Computer Shack

p.97 Computer Shack

p.157 Computer Shoppe (NY)

p.157 Computer Shoppe (NY)

p.157 Computer Systems

p.157 Computer Systems

p.166 Computer Warehouse

p.166 Computer Warehouse

p.73 Continental Specialties

p.73 Continental Specialties

p.117 CRC Engineering

p.117 CRC Engineering

p.139 Creative Computing

p.139 Creative Computing

p.1 Cromemco

p.1 Cromemco

p.2 Cromemco

p.2 Cromemco

p.7 Cybercom

p.7 Cybercom

p.157 DAJEN Electronics

p.157 DAJEN Electronics

p.150 Datasearch

p.150 Datasearch

p.19 Digital Group

p.19 Digital Group

p.157 M W Dunton

p.157 M W Dunton

(p.CIII) ECD

(p.CIII) ECD

p.45 Economy Co

p.45 Economy Co

p.159 Economy Terminals

p.159 Economy Terminals

p.159 Electravalue

p.159 Electravalue

p.159 Electronic Control Technology

p.159 Electronic Control Technology

p.159 Electronic Discount Sales

p.159 Electronic Discount Sales

p.151 Expandor

p.151 Expandor

p.45 Franklin Electronics

p.45 Franklin Electronics

p.167 Godbout

p.167 Godbout

p.125 HAL Communications

p.125 HAL Communications

p.115 IEEE

p.115 IEEE

p.13 IMSAI

p.13 IMSAI

p.49 IMSAI

p.49 IMSAI

p.106 Interface Age

p.106 Interface Age

p.128 International Data Systems

p.128 International Data Systems

p.169 James

p.169 James

p.159 Lillipute

p.159 Lillipute

p.161 Logic Design Inc

p.161 Logic Design Inc

p.142 London Conference

p.142 London Conference

p.149 MACC

p.149 MACC

p.25 McGraw-Hill

p.25 McGraw-Hill

p.171 Meshna

p.171 Meshna

p.110 Micromation

p.110 Micromation

p.161 Micronics

p.161 Micronics

p.69 Micro-Term

p.69 Micro-Term

p.154 Microware

p.154 Microware

p.161 Microtex

p.161 Microtex

p.161 Microtronics

p.161 Microtronics

p.83 Midwestern Scientific Inst

p.83 Midwestern Scientific Inst

p.172 Mikos

p.172 Mikos

p.105 Miniterm

p.105 Miniterm

p.107 Miniterm

p.107 Miniterm

p.109 Miniterm

p.109 Miniterm

p.111 Miniterm

p.111 Miniterm

(p.CIV) MITS

(p.CIV) MITS

p.164 Morrow

p.164 Morrow

p.161 Mountain Hardware

p.161 Mountain Hardware

p.158 mpi

p.158 mpi

p.158 Mullen

p.158 Mullen

p.134 NCC

p.134 NCC

p.116 North Star Computers

p.116 North Star Computers

p.47 Ohio Scientific Inst

p.47 Ohio Scientific Inst

p.9 OK Tool

p.9 OK Tool

p.121 OK Tool

p.121 OK Tool

p.163 Oliver Audio Eng

p.163 Oliver Audio Eng

p.156 Omni

p.156 Omni

p.127 Parasitic Eng

p.127 Parasitic Eng

p.156 Parasitic Eng

p.156 Parasitic Eng

p.140 PCC 77

p.140 PCC 77

p.12 PerCom Data

p.12 PerCom Data

p.143 PerCom Data

p.143 PerCom Data

p.61 Peripheral Vision

p.61 Peripheral Vision

p.141 Personal Computing Expo

p.141 Personal Computing Expo

p.11 Polymorphic Systems

p.11 Polymorphic Systems

p.31 Prime Radix

p.31 Prime Radix

p.5 Processor Technology

p.5 Processor Technology

p.16 Processor Technology

p.16 Processor Technology

p.21 Processor Technology

p.21 Processor Technology

p.27 Processor Technology

p.27 Processor Technology

p.112 Quay

p.112 Quay

p.163 Qubed3

p.163 Qubed3

p.150 Resco

p.150 Resco

p.118 RHS Marketing

p.118 RHS Marketing

p.153 Riverside Electronic

p.153 Riverside Electronic

p.163 Rotundra Cybernetics

p.163 Rotundra Cybernetics

p.23 Scelbi

p.23 Scelbi

p.36 Scientific Research

p.36 Scientific Research

p.173 SD Sales

p.173 SD Sales

p.29 Seals

p.29 Seals

p.108 Smoke Signal Broadcasting

p.108 Smoke Signal Broadcasting

p.174 Solid State Sales

p.174 Solid State Sales

(p.CII) Southwest Tech

(p.CII) Southwest Tech

p.163 Sunny Computer Stores

p.163 Sunny Computer Stores

p.74 Synchro-Sound Enterprises

p.74 Synchro-Sound Enterprises

p.163 Szerlip

p.163 Szerlip

p.154 Tarbell Electronics

p.154 Tarbell Electronics

p.33 Technical Design Labs

p.33 Technical Design Labs

p.133 Technical Systems Consul

p.133 Technical Systems Consul

p.55 Technico

p.55 Technico

p.175 Tri-Tek

p.175 Tri-Tek

p.163 VAMP Inc

p.163 VAMP Inc

p.8 Vector Graphic

p.8 Vector Graphic

p.122 Vector Graphic

p.122 Vector Graphic

p.145 Worldwide Electronics

p.145 Worldwide Electronics

p.152 Xybek

p.152 Xybek

p.71 Ximedia

p.71 Ximedia